/*!
   * 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,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;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; }

img.video_container {
  padding: 0 9px; }

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

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

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

.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; }
  h1.larger4, .larger4.h1 {
    font-size: 4rem;
    line-height: 4rem; }

h2, .h2 {
  font-size: 2.3rem;
  font-weight: 700; }
  h2.one_line, .one_line.h2 {
    line-height: 6rem; }

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

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

p strong {
  font-weight: 700; }

p.bold {
  font-weight: 700; }

p.larger {
  font-size: 1.1rem; }

p.xlarge {
  font-size: 1.4rem; }

sup {
  font-size: 0.65em;
  text-transform: lowercase; }

input[type=radio] {
  width: 30px;
  height: 30px; }
  input[type=radio]:checked {
    background-color: #4AA4DC; }

.radio_label {
  margin-left: 1rem;
  padding-top: 5px; }

.inline {
  display: inline-block; }

.black_box {
  border: solid 2px #00205C;
  padding: 1rem 1.5rem; }

.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.gray {
    background: #F5F0EC;
    color: black; }

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

.callout_img {
  height: 6rem;
  float: left;
  margin-right: 1.5rem; }

.home_callout {
  min-width: 580px; }

.support_callout {
  min-width: 725px; }

.ivig_callout {
  min-width: 480px; }

.patients_callout {
  min-width: 500px; }

.intext_chevron {
  padding-right: 1rem; }

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

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

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

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

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

ul.text_white li::marker {
  color: #ffffff; }

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

.text_white {
  color: #ffffff; }

.text_red {
  color: #E91D2D; }

.text_orange {
  color: #F58320; }

.text_blue {
  color: #00205C; }

.text_bold {
  font-weight: 700; }

.text_magneta {
  color: magenta !important; }
  .text_magneta span {
    color: magenta !important; }

.western_blot_mobile_wrapper {
  border-radius: 1rem; }

.text_08 {
  font-size: 0.8rem; }

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

.text_8x {
  font-size: 6rem;
  line-height: 6.5rem;
  font-weight: 800; }

.text-3x {
  font-size: 4rem;
  line-height: 4rem;
  font-weight: 800; }

.grid {
  display: grid; }

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

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

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

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

.full_height {
  height: 100%; }

.section_end {
  padding-bottom: 6rem; }

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

.download_box {
  padding: 1rem;
  background-color: white;
  margin: 0.5rem;
  width: auto !important;
  margin-top: -1rem !important;
  border-radius: 0 0 0.5rem 0.5rem; }

.orange-gradient-fill {
  background: #e91d2d;
  background: linear-gradient(50deg, #e91d2d 0%, #f58320 100%); }

.silver-fill {
  background: rgba(235, 237, 243, 0.7); }

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

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

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

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

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

.little_padding {
  padding: 1rem; }

.rounded_corners .dark {
  background-color: #CAC8D5;
  padding: 1.5rem 1rem;
  border-radius: 1rem 0 0 1rem; }

.rounded_corners .light {
  background-color: #EBEDF3;
  padding: 1.5rem 1rem;
  border-radius: 0 1rem 1rem 0; }

.orange_gradient {
  background: #EC1B2E;
  background: linear-gradient(90deg, #ec1b2e 0%, #f48032 100%); }

.orange_gradient_box {
  padding: 2.5rem 3.5rem 2.5rem 2rem;
  border-radius: 1rem;
  background: #EC1B2E;
  background: linear-gradient(90deg, #ec1b2e 0%, #f48032 100%); }

.gray_box {
  background-color: rgba(235, 235, 235, 0.85);
  padding: 2.5rem 3.5rem 2.5rem 2rem;
  border-radius: 1rem; }
  .gray_box.square_corners {
    border-radius: 0; }
  .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; }
  .gray_box.large_padding {
    padding: 3rem 5rem; }
  .gray_box.even_padding {
    padding: 2.5rem; }
  .gray_box.opaque {
    background-color: #ebebeb; }

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

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

.footer {
  margin-top: 1rem;
  font-size: 0.8rem;
  line-height: 130%;
  text-align: left; }
  .footer .text-left {
    text-align: left; }
  .footer .footer_logo {
    max-height: 32px; }
  .footer .pl-53 {
    padding-left: 2rem; }
  .footer .footer_link {
    font-size: 0.8rem;
    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: 0;
  padding-bottom: 1rem; }

.sub-nav-text {
  font-size: 0.8rem;
  font-style: italic; }

.sub-nav-link {
  font-weight: 600;
  font-size: 0.8rem;
  padding-left: 4rem; }

.for-hcp {
  float: left; }

#submitSuccessMessage {
  height: 80vh;
  min-height: 575px; }

.home_hero {
  height: 80vh;
  min-height: 575px;
  background-image: url(../img/home_hero.jpg);
  background-position: top center;
  background-size: cover; }
  .home_hero h1, .home_hero .h1 {
    text-shadow: 0 0 1em black, 0 0 0.2em black;
    font-size: 1.3rem; }
  .home_hero .glo_time {
    width: 22rem; }

.mavbar_offset {
  margin-top: 10rem; }

.caret {
  position: relative;
  top: -2.5rem; }
  .caret img {
    height: 1.2rem; }

.safety_hero {
  height: 80vh;
  min-height: 575px;
  background-image: url(../img/safety_bg.jpg);
  background-position: top center;
  background-size: cover; }
  .safety_hero h1, .safety_hero .h1 {
    text-shadow: 0 0 1em black, 0 0 0.2em black; }
  .safety_hero a {
    text-shadow: 0 0 1em black, 0 0 0.2em black;
    text-decoration: none; }
  .safety_hero sup {
    font-size: 0.5em;
    top: -.7em; }
  .safety_hero .sup {
    font-size: 0.7em;
    top: -.2em;
    position: relative; }

.why_alyglo_hero {
  height: 80vh;
  min-height: 575px;
  background-image: url(../img/why_alyglow_bg.jpg);
  background-position: top center;
  background-size: cover; }
  .why_alyglo_hero h1, .why_alyglo_hero .h1 {
    text-shadow: 0 0 1em black, 0 0 0.2em black; }
  .why_alyglo_hero a {
    text-shadow: 0 0 1em black, 0 0 0.2em black;
    text-decoration: none; }
  .why_alyglo_hero sup {
    font-size: 0.5em;
    top: -.7em; }
  .why_alyglo_hero .sup {
    font-size: 0.7em;
    top: -.2em;
    position: relative; }

.challenges_hero {
  height: 80vh;
  min-height: 575px;
  background-image: url(../img/challenges_bg.jpg);
  background-position: center center;
  background-size: cover; }
  .challenges_hero a {
    text-decoration: none; }

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

.starting_patients_hero {
  height: 80vh;
  min-height: 575px;
  background-image: url(../img/starting_patients_bg.jpg);
  background-position: center center;
  background-size: cover; }
  .starting_patients_hero a {
    text-decoration: none; }

.support_hero {
  height: 80vh;
  min-height: 575px;
  background-image: url(../img/starting_alyglo_bg.jpg);
  background-position: center center;
  background-size: cover; }
  .support_hero a {
    text-decoration: none; }

.coding_hero {
  height: 22vh;
  min-height: 175px;
  background: white; }
  .coding_hero a {
    text-decoration: none; }

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

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

nav #navbarNavM.hidden_on_desktop {
  display: none !important; }

nav .mobile_nav {
  background: white;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100vh; }
  nav .mobile_nav .nav-link {
    margin-top: 1rem;
    display: block;
    color: #00205C;
    font-size: 1rem;
    font-weight: 500; }
  nav .mobile_nav .subnav-link {
    display: block;
    margin-left: 1rem;
    color: #00205C;
    font-size: 1rem;
    font-weight: 400; }

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);
  z-index: 1000; }

nav ul .submenu {
  display: none;
  position: absolute;
  top: 2rem;
  left: -1.2rem;
  background: #ffffff;
  list-style: none;
  padding: 1.5rem 0 1rem 0;
  min-width: 270px;
  box-shadow: none;
  z-index: 999;
  border-radius: 0 0 1rem 1rem;
  /*box-shadow: 0px 10px 15px -3px rgba(0,0,0,0.5);   */ }
  nav ul .submenu.two {
    min-width: 220px;
    left: -80px; }
  nav ul .submenu.three {
    min-width: 300px;
    left: -110px; }
  nav ul .submenu.four {
    min-width: 220px;
    left: -70px; }

nav ul .submenu li {
  padding: 0.5rem 1rem;
  margin-left: 1.2rem;
  margin-right: 1.2rem; }

nav ul .submenu li a {
  text-decoration: none;
  color: #00205C;
  display: block;
  text-align: center; }

nav ul li:hover {
  color: #F58320; }

nav ul li:hover .submenu {
  display: block; }

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

nav ul li a {
  color: #00205C;
  text-decoration: none;
  font-weight: 500; }
  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 .site_logo {
    width: 140px; }
  #header.scrolled ul {
    background-color: none;
    box-shadow: none; }

.statistics-container {
  display: flex;
  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; }

a {
  text-decoration: underline;
  font-weight: 500;
  color: #4AA4DC; }

table.chart_formatting {
  width: 100%;
  border-collapse: collapse; }
  table.chart_formatting.large_padding th, table.chart_formatting.large_padding td {
    border: none;
    text-align: center;
    padding: 16px 8px; }
  table.chart_formatting tr.rounded th {
    padding-top: 1rem; }
  table.chart_formatting tr.rounded th:first-of-type {
    border-top-left-radius: 1rem; }
  table.chart_formatting tr.rounded th:last-of-type {
    border-top-right-radius: 1rem; }
  table.chart_formatting tr.rounded-bottom td:first-of-type {
    border-bottom-left-radius: 1rem; }
  table.chart_formatting tr.rounded-bottom td:last-of-type {
    border-bottom-right-radius: 1rem; }
  table.chart_formatting th, table.chart_formatting td {
    border: none;
    text-align: center;
    padding: 8px; }
    table.chart_formatting th.large_padding, table.chart_formatting td.large_padding {
      padding: 16px 8px; }
  table.chart_formatting th {
    background-color: #C3C9D9; }
  table.chart_formatting tr:nth-child(odd) {
    background-color: #EBEDF3; }
  table.chart_formatting thead td:first-child, table.chart_formatting thead th:first-child, table.chart_formatting tbody td:first-child, table.chart_formatting tbody th:first-child {
    text-align: left;
    font-weight: 700;
    padding-left: 2rem; }

.dosing_table td:first-child {
  text-align: left;
  padding-left: 2rem;
  font-weight: 700; }

.timeline {
  width: 70%;
  margin: 50px auto;
  position: relative;
  padding: 2rem 0; }

.timeline::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 4px;
  background: #c5c5c5; }

.timeline-item {
  width: 45%;
  padding: 20px;
  background: #C3C9D9;
  border-radius: 0.7rem;
  position: relative;
  margin: 20px 0; }

.timeline-item:nth-child(odd) {
  left: 0; }

.timeline-item:nth-child(even) {
  left: 100%;
  transform: translateX(-100%); }

.timeline-item::after {
  content: "";
  background-image: url(../img/left_dot.png);
  position: absolute;
  top: 0;
  right: -57px;
  width: 75px;
  height: 100%;
  border: 8px solid transparent;
  border-left-color: #C3C9D9;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center; }

.timeline-item:nth-child(even)::after {
  left: -53px;
  right: auto;
  border-left-color: transparent;
  border-right-color: #C3C9D9;
  background-image: url(../img/right_dot.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  z-index: -1; }

.modal {
  --bs-modal-width: 545px; }

.modal-body {
  padding: 2rem 2rem 2rem 2rem; }
  .modal-body button:nth-child(2) {
    width: 42%; }

h1 sup, .h1 sup, h2 sup, .h2 sup, h3 sup, .h3 sup, h4 sup, .h4 sup, h5 sup, .h5 sup, h6 sup, .h6 sup {
  font-size: 0.5em;
  top: -.7em; }

h3 a, .h3 a {
  color: inherit; }

p.large_footnote, li.large_footnote {
  font-size: 0.75rem;
  line-height: 120%; }

p.footnote, li.footnote {
  font-size: 0.65rem;
  line-height: 120%; }

.dots {
  border-top: dotted 4px #F58320;
  border-bottom: dotted 4px #F58320; }

.support-box {
  border: 2px solid #f29e7a;
  border-radius: 1rem;
  background-color: #fff8f5;
  box-shadow: 4px 4px 0 #f29e7a;
  padding: 2rem; }

.support-divider {
  border-left: 2px solid #f29e7a; }

.support-title {
  font-weight: 700;
  color: #d4472f;
  text-align: center; }

.support-text {
  font-size: 1.1rem;
  text-align: center;
  margin-top: 1rem; }

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

@media (max-width: 991px) {
  #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; }
  .timeline {
    width: 100%; }
  .timeline-item {
    width: 44%; }
  .mobile_icon {
    width: 7rem !important;
    margin-bottom: 1rem; }
  .callout_img.large_offset {
    top: -3rem; } }

@media (max-width: 768px) {
  .mt-4-768 {
    margin-top: 1.5rem; }
  .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; }
  .white_box.large_padding, .gray_box.large_padding {
    padding: 2.5rem 2.1rem; }
  .intext_chevron {
    padding-right: 0; } }

@media (max-width: 575px) {
  html, body {
    font-size: 16px; }
  .timeline {
    width: 80%; }
  .mavbar_offset {
    margin-bottom: 7rem; }
  .support-box > div {
    border-left: none; }
  .support-box > div .support-title {
    margin-top: 2rem; }
  .support-box > div:nth-child(1) .support-title {
    margin-top: 0px; }
  .home_callout {
    min-width: 330px; }
    .home_callout h3, .home_callout .h3 {
      margin-top: 5px !important; }
  .support_callout {
    min-width: 280px; }
    .support_callout h3, .support_callout .h3 {
      margin-top: 5px !important; }
    .support_callout .callout_img {
      margin-top: 2rem;
      margin-block: 2rem; }
  .ivig_callout {
    min-width: 260px; }
    .ivig_callout h3, .ivig_callout .h3 {
      margin-top: 5px !important; }
  .patients_callout {
    min-width: 280px; }
    .patients_callout h3, .patients_callout .h3 {
      margin-top: 5px !important; }
  .callout_img {
    height: 3rem;
    float: left;
    margin-right: 0.5rem; }
    .callout_img.large_offset {
      top: -2rem; }
  .intext_chevron {
    padding-right: 0; }
  .mobile_chevron_adjust {
    align-items: flex-start !important; }
  table.chart_formatting {
    font-size: 0.7rem !important;
    line-height: 0.9rem; }
  .modal-body {
    padding: 2rem 2rem 2rem 2rem; }
    .modal-body button:nth-child(1) {
      width: 100%; }
    .modal-body button:nth-child(2) {
      width: 100%;
      margin-top: 15px; }
  .for-hcp {
    float: none;
    width: 100%; }
  #header.scrolled {
    padding-top: 0;
    padding-bottom: 0.5rem; }
    #header.scrolled .site_logo {
      width: 115px; }
  .home_hero .full_height .align-items-center {
    align-items: flex-end !important; }
    .home_hero .full_height .align-items-center h1, .home_hero .full_height .align-items-center .h1 {
      margin-bottom: 2rem;
      text-shadow: 0 0 1em black, 0 0 0.2em black;
      font-size: 1.5rem; }
    .home_hero .full_height .align-items-center button {
      margin-bottom: 2rem; }
    .home_hero .full_height .align-items-center .glo_time {
      width: 20rem; }
  .why_alyglo_hero {
    background-position: -34rem; }
    .why_alyglo_hero h1, .why_alyglo_hero .h1 {
      text-shadow: 0 0 1em white, 0 0 0.2em white !important; }
  .starting_patients_hero {
    background-position: calc(50% - 90px) center; }
  .challenges_hero .full_height .align-items-center, .starting_patients_hero .full_height .align-items-center {
    align-items: flex-end !important; }
    .challenges_hero .full_height .align-items-center h1, .challenges_hero .full_height .align-items-center .h1, .starting_patients_hero .full_height .align-items-center h1, .starting_patients_hero .full_height .align-items-center .h1 {
      margin-bottom: 2rem;
      text-shadow: 0 0 1em white, 0 0 0.2em white; }
    .challenges_hero .full_height .align-items-center a, .starting_patients_hero .full_height .align-items-center a {
      text-shadow: 0 0 1em white, 0 0 0.2em white; }
    .challenges_hero .full_height .align-items-center a:last-child, .starting_patients_hero .full_height .align-items-center a:last-child {
      display: block;
      margin-bottom: 2rem; }
  .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; }
    .treating_pi_hero .full_height .align-items-center button, .why_alyglo_hero .full_height .align-items-center button {
      margin-bottom: 2rem; }
  .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; }
  .timeline-item::after {
    background: none; }
  .timeline-item:nth-child(even)::after {
    background: none; }
  .rounded_corners .dark {
    text-align: start !important;
    padding: 1rem;
    border-radius: 1rem 1rem 0 0; }
    .rounded_corners .dark h4, .rounded_corners .dark .h4 {
      margin-bottom: 0px; }
  .rounded_corners .light {
    border-radius: 0 0 1rem 1rem; }
  .width4 {
    width: 4rem !important; }
  .timeline-item {
    width: 100%; }
  .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: 115px; }
  h1, .h1, .h1 {
    font-size: 1.4rem; }
    h1.larger, .larger.h1, .h1.larger {
      font-size: 1.7rem; }
  h2, .h2, .h2 {
    font-size: 1.4rem; }
    h2 br, .h2 br, .h2 br {
      display: inline-block;
      content: " ";
      width: 0.3rem; }
  h2.one_line, .one_line.h2, .one_line.h2 {
    line-height: 3rem; }
  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, .orange_gradient_box {
    padding: 1rem; }
    .gray_box > img, .orange_gradient_box > img {
      width: 4rem !important; }
      .gray_box > img.full-width, .orange_gradient_box > img.full-width {
        width: 100% !important; }
    .gray_box .eyebrow, .orange_gradient_box .eyebrow {
      font-size: 1rem !important;
      margin-bottom: 5px; }
    .gray_box > div, .orange_gradient_box > div {
      padding-left: 0px !important; }
    .gray_box p.larger, .orange_gradient_box p.larger {
      font-size: 1rem; }
    .gray_box button, .orange_gradient_box button {
      width: 100%; }
    .gray_box.large_padding, .orange_gradient_box.large_padding {
      padding: 1rem; }
    .gray_box.even_padding, .orange_gradient_box.even_padding {
      padding: 1rem; }
    .gray_box.float_on_mobile > img, .orange_gradient_box.float_on_mobile > img {
      width: 5rem !important;
      float: left;
      padding-right: 0.5rem;
      padding-top: 0.3rem; }
  .white_box {
    padding: 1rem; }
    .white_box > div {
      padding-left: 0px !important; }
    .white_box button {
      font-size: 0.9rem;
      line-height: 110%;
      width: 100%; }
    .white_box.large_padding {
      padding: 1rem; }
    .white_box.border {
      border: solid 2px #C3C9D9; }
  #submitButton {
    width: 100% !important; }
  .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 .footnote {
      font-size: 0.65rem; }
    .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: 50% 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 !important; }
    .statistics-container .statistic {
      border-left: none;
      border-bottom: 1px solid #00205C;
      padding: 0.5rem 0; }
      .statistics-container .statistic:last-child {
        border-bottom: none; }
  table.chart_formatting {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.9rem; }
    table.chart_formatting tbody td:first-child {
      text-align: left;
      font-weight: 700;
      padding-left: 0.5rem; }
    table.chart_formatting thead th:first-child {
      text-align: left;
      font-weight: 700;
      padding-left: 0.5rem; }
  .text_8x {
    font-size: 4rem;
    line-height: 5.5rem; }
  .three_sizes {
    top: -1rem !important; }
  .full-width {
    width: 100% !important; }
  .mobile_icon {
    width: 5rem !important;
    margin-bottom: 1rem; }
  .mobile_table_reset td {
    display: block;
    padding: 5px !important; }
    .mobile_table_reset td:first-child {
      padding-top: 10px !important; }
    .mobile_table_reset td:last-child {
      padding-bottom: 10px !important; }
  .download_box {
    width: 95% !important; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlcyI6WyJzdHlsZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Jvb3RzdHJhcC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFubmVyLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Z1bmN0aW9ucy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL192YXJpYWJsZXMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdmFyaWFibGVzLWRhcmsuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbWFwcy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19taXhpbnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy92ZW5kb3IvX3Jmcy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZGVwcmVjYXRlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19icmVha3BvaW50cy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY29sb3ItbW9kZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY29sb3Itc2NoZW1lLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19pbWFnZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcmVzaXplLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL192aXN1YWxseS1oaWRkZW4uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtdHJ1bmNhdGUuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3V0aWxpdGllcy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFja2Ryb3Auc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2J1dHRvbnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NhcmV0LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19wYWdpbmF0aW9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19saXN0cy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZm9ybXMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RhYmxlLXZhcmlhbnRzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ib3gtc2hhZG93LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RyYW5zaXRpb24uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NsZWFyZml4LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jb250YWluZXIuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyaWQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdXRpbGl0aWVzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Jvb3Quc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcmVib290LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3R5cGUuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9faW1hZ2VzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2NvbnRhaW5lcnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZ3JpZC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190YWJsZXMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZm9ybXMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fbGFiZWxzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2Zvcm0tdGV4dC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mb3JtLWNvbnRyb2wuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZm9ybS1zZWxlY3Quc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZm9ybS1jaGVjay5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mb3JtLXJhbmdlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2Zsb2F0aW5nLWxhYmVscy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19pbnB1dC1ncm91cC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL192YWxpZGF0aW9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2J1dHRvbnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdHJhbnNpdGlvbnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZHJvcGRvd24uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnV0dG9uLWdyb3VwLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX25hdi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19uYXZiYXIuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2FyZC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19hY2NvcmRpb24uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnJlYWRjcnVtYi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wYWdpbmF0aW9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2JhZGdlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2FsZXJ0LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Byb2dyZXNzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2xpc3QtZ3JvdXAuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2xvc2Uuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdG9hc3RzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX21vZGFsLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Rvb2x0aXAuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcG9wb3Zlci5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jYXJvdXNlbC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19zcGlubmVycy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19vZmZjYW52YXMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcGxhY2Vob2xkZXJzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2hlbHBlcnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19jbGVhcmZpeC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX2NvbG9yLWJnLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fY29sb3JlZC1saW5rcy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX2ZvY3VzLXJpbmcuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19pY29uLWxpbmsuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19yYXRpby5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3Bvc2l0aW9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fc3RhY2tzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fdmlzdWFsbHktaGlkZGVuLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fc3RyZXRjaGVkLWxpbmsuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL190ZXh0LXRydW5jYXRpb24uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL192ci5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYXBpLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiJHRoZW1lLWNvbG9yczogKFxuICAgIFwicHJpbWFyeVwiOiBibHVlLFxuICAgIFwiZGFya1wiOiAjMDAwMDAwXG4pO1xuXG5AaW1wb3J0IFwibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Jvb3RzdHJhcFwiO1xuQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9UG9wcGluczppdGFsLHdnaHRAMCwxMDA7MCwyMDA7MCwzMDA7MCw0MDA7MCw1MDA7MCw2MDA7MCw3MDA7MCw4MDA7MCw5MDA7MSwxMDA7MSwyMDA7MSwzMDA7MSw0MDA7MSw1MDA7MSw2MDA7MSw3MDA7MSw4MDA7MSw5MDAmZGlzcGxheT1zd2FwJyk7XG5AaW1wb3J0IHVybCgnaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1NYXRlcmlhbCtTeW1ib2xzK091dGxpbmVkOm9wc3osd2dodCxGSUxMLEdSQURAMjAuLjQ4LDEwMC4uNzAwLDAuLjEsLTUwLi4yMDAnKTtcblxuLy9vdmVycmlkZXNcbkBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcbiAgICAuY29udGFpbmVyLCAuY29udGFpbmVyLXNtLCAuY29udGFpbmVyLW1kLCAuY29udGFpbmVyLWxnLCAuY29udGFpbmVyLXhsLCAuY29udGFpbmVyLXh4bCB7XG4gICAgICAgIG1heC13aWR0aDogMTE0MHB4O1xuICAgIH1cbn1cblxuLmNvbCB7XG4gICAgZmxleDogMCAwIGF1dG87XG59XG5cbi8vZm9udHMgXG4ubWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCB7XG4gIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOlxuICAnRklMTCcgMCxcbiAgJ3dnaHQnIDQwMCxcbiAgJ0dSQUQnIDAsXG4gICdvcHN6JyAyNFxufVxuXG5pbWcge1xuICAgICYudmlkZW9fY29udGFpbmVyIHtcbiAgICAgICAgcGFkZGluZzogMCA5cHg7XG4gICAgfVxufVxuXG5hLm5vdW5kZXJsaW5lIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnBvcHBpbnMtdGhpbiB7XG4gIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4ucG9wcGlucy1leHRyYWxpZ2h0IHtcbiAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogMjAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi5wb3BwaW5zLWxpZ2h0IHtcbiAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi5wb3BwaW5zLXJlZ3VsYXIge1xuICBmb250LWZhbWlseTogXCJQb3BwaW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLnBvcHBpbnMtbWVkaXVtIHtcbiAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi5wb3BwaW5zLXNlbWlib2xkIHtcbiAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi5wb3BwaW5zLWJvbGQge1xuICBmb250LWZhbWlseTogXCJQb3BwaW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLnBvcHBpbnMtZXh0cmFib2xkIHtcbiAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogODAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi5wb3BwaW5zLWJsYWNrIHtcbiAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogOTAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi5wb3BwaW5zLXRoaW4taXRhbGljIHtcbiAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogMTAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi5wb3BwaW5zLWV4dHJhbGlnaHQtaXRhbGljIHtcbiAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogMjAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi5wb3BwaW5zLWxpZ2h0LWl0YWxpYyB7XG4gIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4ucG9wcGlucy1yZWd1bGFyLWl0YWxpYyB7XG4gIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4ucG9wcGlucy1tZWRpdW0taXRhbGljIHtcbiAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi5wb3BwaW5zLXNlbWlib2xkLWl0YWxpYyB7XG4gIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4ucG9wcGlucy1ib2xkLWl0YWxpYyB7XG4gIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4ucG9wcGlucy1leHRyYWJvbGQtaXRhbGljIHtcbiAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogODAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi5wb3BwaW5zLWJsYWNrLWl0YWxpYyB7XG4gIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG5odG1sLCBib2R5IHtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgICBmb250LWZhbWlseTogXCJQb3BwaW5zXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgIFxufVxuXG5oMSB7XG4gICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBcbiAgICAmLmxhcmdlciB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi43cmVtO1xuICAgIH1cbiAgICBcbiAgICAmLmxhcmdlcjQge1xuICAgICAgICBmb250LXNpemU6IDRyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0cmVtO1xuICAgIH0gICAgXG59IFxuXG5oMiB7XG4gICAgZm9udC1zaXplOiAyLjNyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBcbiAgICAmLm9uZV9saW5lIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDZyZW07XG4gICAgfVxufSAgXG5cbmgzIHtcbiAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xufSBcblxuaDQge1xuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgXG4gICAgJi5zbWFsbGVyIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgfVxufSBcblxucCB7ICAgIFxuICAgIHN0cm9uZyB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgfVxuICAgIFxuICAgICYuYm9sZCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgfVxuICAgIFxuICAgICYubGFyZ2VyIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgfVxuXG4gICAgJi54bGFyZ2Uge1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICB9XG59XG5cbnN1cCB7XG4gICAgZm9udC1zaXplOiAgMC42NWVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG59XG5cbmlucHV0W3R5cGU9cmFkaW9dIHtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG5cbiAgICAmOmNoZWNrZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNEFBNERDO1xuICAgIH1cbn1cblxuLnJhZGlvX2xhYmVsIHtcbiAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICBwYWRkaW5nLXRvcDogNXB4OyAgICBcbn1cblxuXG4uaW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5ibGFja19ib3gge1xuICAgIGJvcmRlcjogc29saWQgMnB4ICMwMDIwNUM7XG4gICAgcGFkZGluZzogMXJlbSAxLjVyZW07XG59XG5cbi51cHBlcmNhc2Uge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDtcbn1cblxuLmdyYWRpZW50X2NpcmNsZSB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgbGluZWFyLWdyYWRpZW50KDI3MGRlZywgI0Y1ODMyMCAwJSwgI0U5MUQyRCAxMDAlKSAwJSAwJSBuby1yZXBlYXQgcGFkZGluZy1ib3g7XG4gICAgd2lkdGg6IDVyZW07XG4gICAgaGVpZ2h0OiA1cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDIuNXJlbTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDJyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiA1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgY29sb3I6IHdoaXRlO1xufVxuXG5idXR0b24ge1xuICAgIHBhZGRpbmc6IDE1cHggMzBweDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCAjRjU4MzIwIDAlLCAjRTkxRDJEIDEwMCUpIDAlIDAlIG5vLXJlcGVhdCBwYWRkaW5nLWJveDtcbiAgICBib3JkZXItcmFkaXVzOiA2MHB4O1xuICAgIG9wYWNpdHk6IDE7IFxuICAgIGJvcmRlcjogbm9uZTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC41cyBlYXNlLWluLW91dDtcbiAgICBcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjRjU4MzIwIDAlLCAjRTkxRDJEIDEwMCUpIDAlIDAlIG5vLXJlcGVhdCBwYWRkaW5nLWJveDsgICAgICAgIFxuICAgIH1cbiAgICBcbiAgICAmLmdyYXkge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjRjVGMEVDO1xuICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgfVxufVxuXG5idXR0b24uY2t5LWJ0bjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogaW5oZXJpdDtcbn1cblxuLmJvcmRlci10b3Age1xuICAgIGJvcmRlci10b3A6IHNvbGlkIDRweCAjQ0VDRUNFO1xuICAgIFxufVxuXG5idXR0b24uYmxhY2sge1xuICAgIHBhZGRpbmc6IDE1cHggMzBweDtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBib3JkZXItcmFkaXVzOiA2MHB4O1xuICAgIG9wYWNpdHk6IDE7IFxuICAgIGJvcmRlcjogc29saWQgMXB4ICMwMDAwMDA7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmdsb19pbWFnZSB7XG4gICAgd2lkdGg6IDIycmVtO1xuICAgIHRvcDogMTJyZW07XG4gICAgbGVmdDogOHJlbTsgICAgXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4uaGVyb190ZXh0IHtcbiAgICBmb250LXNpemU6IDRyZW07XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIHRvcDogMTguNXJlbTtcbiAgICBsZWZ0OiAxMHJlbTsgICAgXG4gICAgcG9zaXRpb246IGFic29sdXRlOyAgICBcbn1cblxuLmhlcm9fdGV4dDIge1xuICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgdG9wOiAyNXJlbTtcbiAgICBsZWZ0OiAyNS41cmVtOyAgICBcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7ICAgIFxufVxuXG4uY2FsbG91dF9pbWcge1xuICAgIGhlaWdodDogNnJlbTsgXG4gICAgZmxvYXQ6IGxlZnQ7IFxuICAgIG1hcmdpbi1yaWdodDogMS41cmVtOyBcbn1cblxuLmhvbWVfY2FsbG91dCB7XG4gICAgbWluLXdpZHRoOiA1ODBweDtcbn1cblxuLnN1cHBvcnRfY2FsbG91dCB7XG4gICAgbWluLXdpZHRoOiA3MjVweDtcbn1cblxuLml2aWdfY2FsbG91dCB7XG4gICAgbWluLXdpZHRoOiA0ODBweDtcbn1cblxuLnBhdGllbnRzX2NhbGxvdXQge1xuICAgIG1pbi13aWR0aDogNTAwcHg7XG59XG5cbi5pbnRleHRfY2hldnJvbiB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbTtcbn1cblxuLnByLTEwcCB7XG4gICAgcGFkZGluZy1yaWdodDogMyU7XG59XG5cbi5mdWxsLXdpZHRoIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4uZnVsbC1oZWlnaHQge1xuICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG5vbCB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBkZWNpbWFsO1xuICAgIHBhZGRpbmctbGVmdDogMWVtO1xufVxuXG51bCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxZW07XG4gICAgXG4gICAgbGkge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICAgICAgICBcbiAgICAgICAgJjo6bWFya2VyIHtcbiAgICAgICAgICBjb2xvcjogI0Y1ODMyMDtcbiAgICAgICAgfSAgICAgICAgXG4gICAgICAgIFxuICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxudWwudGV4dF93aGl0ZSB7XG4gICAgbGkge1xuICAgICAgICAmOjptYXJrZXIge1xuICAgICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICB9ICAgICAgICAgXG4gICAgfVxufVxuXG5vbCBsaTo6bWFya2VyIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnRleHRfd2hpdGUge1xuICAgIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4udGV4dF9yZWQge1xuICAgIGNvbG9yOiAjRTkxRDJEO1xufVxuXG4udGV4dF9vcmFuZ2Uge1xuICAgIGNvbG9yOiAjRjU4MzIwO1xufVxuXG4udGV4dF9ibHVlIHtcbiAgICBjb2xvcjogIzAwMjA1Qztcbn1cblxuLnRleHRfYm9sZCB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLnRleHRfbWFnbmV0YSB7XG4gICAgY29sb3I6IG1hZ2VudGEgIWltcG9ydGFudDtcbiAgICBcbiAgICBzcGFuIHtcbiAgICAgICAgY29sb3I6IG1hZ2VudGEgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi53ZXN0ZXJuX2Jsb3RfbW9iaWxlX3dyYXBwZXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDFyZW07XG59XG5cbi50ZXh0XzA4IHtcbiAgICBmb250LXNpemU6IDAuOHJlbTtcbn1cblxuLnRleHRfaW5kZW50IHtcbiAgICB0ZXh0LWluZGVudDogLTAuNXJlbTtcbn1cblxuLnRleHRfOHgge1xuICAgIGZvbnQtc2l6ZTogNnJlbTtcbiAgICBsaW5lLWhlaWdodDogNi41cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG59XG5cbi50ZXh0LTN4IHtcbiAgICBmb250LXNpemU6IDRyZW07XG4gICAgbGluZS1oZWlnaHQ6IDRyZW07XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcbn1cblxuLmdyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG59XG5cbi5wYWRkaW5nLXRvcC00IHtcbiAgICBwYWRkaW5nLXRvcDogNHJlbTtcbn1cblxuLnBhZGRpbmctdG9wLTIge1xuICAgIHBhZGRpbmctdG9wOiAycmVtO1xufVxuXG4ucGFkZGluZy1ib3R0b20tNCB7XG4gICAgcGFkZGluZy1ib3R0b206IDRyZW07XG59XG5cbi5wYWRkaW5nLWJvdHRvbS0yIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbn1cblxuLmZ1bGxfaGVpZ2h0IHtcbiAgICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5zZWN0aW9uX2VuZCB7XG4gICAgcGFkZGluZy1ib3R0b206IDZyZW07XG59XG5cbi5ncmF5LWZpbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGNUYwRUM7XG59XG5cbi5kb3dubG9hZF9ib3gge1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgbWFyZ2luOiAwLjVyZW07XG4gICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tdG9wOiAtMXJlbSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwLjVyZW0gMC41cmVtO1xufVxuXG4ub3JhbmdlLWdyYWRpZW50LWZpbGwge1xuICAgIGJhY2tncm91bmQ6IHJnYigyMzMsMjksNDUpO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg1MGRlZywgcmdiYSgyMzMsMjksNDUsMSkgMCUsIHJnYmEoMjQ1LDEzMSwzMiwxKSAxMDAlKTsgICAgXG59XG5cbi5zaWx2ZXItZmlsbCB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyMzUsIDIzNywgMjQzLCAwLjcpXG59XG5cbi5zdGF0aWMtYSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9haWNvbi5wbmcpO1xuICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMTAlO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIDE3MHB4O1xufVxuXG4uc3RhdGljLXMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvc3dvb3NoLnBuZyk7XG4gICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDExMCU7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgMTcwcHg7XG59XG5cbi5nY19iZ19ob21lIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2djX2JhY2tncm91bmQucG5nKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbn1cblxuLnRyZWF0aW5ncGlfZ2NfYmdfaG9tZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy90cmVhdGluZ19waV9nYl9iZy5wbmcpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xufVxuXG4uaW50cm9fdGV4dCB7XG4gICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE3MCU7XG59XG5cbi5saXR0bGVfcGFkZGluZyB7XG4gICAgcGFkZGluZzogMXJlbTtcbn1cblxuLnJvdW5kZWRfY29ybmVycyB7XG4gICAgXG4gICAgLmRhcmsge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQ0FDOEQ1O1xuICAgICAgICBwYWRkaW5nOiAxLjVyZW0gMXJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMXJlbSAwIDAgMXJlbTtcbiAgICB9XG4gICAgXG4gICAgLmxpZ2h0IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0VCRURGMztcbiAgICAgICAgcGFkZGluZzogMS41cmVtIDFyZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMXJlbSAxcmVtIDA7XG4gICAgfVxufVxuXG4ub3JhbmdlX2dyYWRpZW50IHtcbiAgICBiYWNrZ3JvdW5kOiAjRUMxQjJFO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZyxyZ2JhKDIzNiwgMjcsIDQ2LCAxKSAwJSwgcmdiYSgyNDQsIDEyOCwgNTAsIDEpIDEwMCUpOyAgICBcbn1cblxuLm9yYW5nZV9ncmFkaWVudF9ib3gge1xuICAgIHBhZGRpbmc6IDIuNXJlbSAzLjVyZW0gMi41cmVtIDJyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMXJlbTtcbiAgICBiYWNrZ3JvdW5kOiAjRUMxQjJFO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZyxyZ2JhKDIzNiwgMjcsIDQ2LCAxKSAwJSwgcmdiYSgyNDQsIDEyOCwgNTAsIDEpIDEwMCUpO1xufVxuXG4uZ3JheV9ib3gge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjM1LCAyMzUsIDIzNSwgMC44NSk7XG4gICAgcGFkZGluZzogMi41cmVtIDMuNXJlbSAyLjVyZW0gMnJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAxcmVtO1xuICAgIFxuICAgICYuc3F1YXJlX2Nvcm5lcnMge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIH1cbiAgICBcbiAgICBwLmxhcmdlciB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMTUwJTtcbiAgICB9XG4gICAgXG4gICAgLmV5ZWJyb3cge1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbSAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgfSBcbiAgICBcbiAgICAmLmxhcmdlX3BhZGRpbmcge1xuICAgICAgICBwYWRkaW5nOiAzcmVtIDVyZW07XG4gICAgfVxuICAgIFxuICAgICYuZXZlbl9wYWRkaW5nIHtcbiAgICAgICAgcGFkZGluZzogMi41cmVtO1xuICAgIH1cbiAgICBcbiAgICAmLm9wYXF1ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjM1LCAyMzUsIDIzNSwgMSk7XG4gICAgfVxufVxuXG4ub3JhbmdlX2JveCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y1ODMyMDtcbiAgICBwYWRkaW5nOiAyLjVyZW0gMy41cmVtIDIuNXJlbSAycmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDFyZW07XG59XG5cbi53aGl0ZV9ib3gge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbiAgICBwYWRkaW5nOiAyLjVyZW0gMi4xcmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDFyZW07XG4gICAgXG4gICAgJi5vcGFxdWUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICB9XG4gICAgXG4gICAgJi5sYXJnZV9wYWRkaW5nIHtcbiAgICAgICAgcGFkZGluZzogM3JlbSA1cmVtO1xuICAgIH0gICAgXG4gICAgXG4gICAgJi5iZzA5IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuICAgIH1cbn1cblxuXG5cbi5mb290ZXIge1xuICAgIG1hcmdpbi10b3A6MXJlbTtcbiAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICBsaW5lLWhlaWdodDogMTMwJTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIFxuICAgIC50ZXh0LWxlZnQge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cbiAgICBcbiAgICAuZm9vdGVyX2xvZ28ge1xuICAgICAgICBtYXgtaGVpZ2h0OiAzMnB4O1xuICAgIH1cbiAgICBcbiAgICAucGwtNTMge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gICAgfVxuICAgIFxuICAgIC5mb290ZXJfbGluayB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBjb2xvcjogIzRBQTREQztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgfVxuICAgIFxuICAgIC5mb2xsb3dfdXMge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgXG4gICAgICAgIC5saW5rZWRfaW5faWNvbiB7XG4gICAgICAgICAgICB3aWR0aDogM3JlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm5hdmJhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbn1cblxuLnN1Yi1uYXYtdGV4dCB7XG4gICAgZm9udC1zaXplOiAwLjhyZW07XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4uc3ViLW5hdi1saW5rIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgIHBhZGRpbmctbGVmdDogNHJlbTtcbn1cblxuLmZvci1oY3Age1xuICAgIGZsb2F0OiBsZWZ0O1xufVxuXG4jc3VibWl0U3VjY2Vzc01lc3NhZ2Uge1xuICAgIGhlaWdodDogODB2aDtcbiAgICBtaW4taGVpZ2h0OiA1NzVweDtcbn1cblxuLmhvbWVfaGVybyB7XG4gICAgaGVpZ2h0OiA4MHZoO1xuICAgIG1pbi1oZWlnaHQ6IDU3NXB4O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaG9tZV9oZXJvLmpwZyk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIFxuICAgIGgxIHtcbiAgICAgICAgdGV4dC1zaGFkb3c6IDAgMCAxZW0gYmxhY2ssIDAgMCAwLjJlbSBibGFjaztcbiAgICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgfVxuXG4gICAgLmdsb190aW1lIHtcbiAgICAgICAgd2lkdGg6IDIycmVtO1xuICAgIH0gICBcbn1cblxuLm1hdmJhcl9vZmZzZXQge1xuICAgIG1hcmdpbi10b3A6IDEwcmVtO1xufSBcblxuLmNhcmV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMi41cmVtO1xuICAgIGltZyB7XG4gICAgICAgIGhlaWdodDogMS4ycmVtO1xuICAgIH1cbn1cblxuLnNhZmV0eV9oZXJvIHtcbiAgICBoZWlnaHQ6IDgwdmg7XG4gICAgbWluLWhlaWdodDogNTc1cHg7ICAgIFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvc2FmZXR5X2JnLmpwZyk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIFxuICAgIGgxIHtcbiAgICAgICAgdGV4dC1zaGFkb3c6IDAgMCAxZW0gYmxhY2ssIDAgMCAwLjJlbSBibGFjaztcbiAgICB9XG4gICAgXG4gICAgYSB7XG4gICAgICAgIHRleHQtc2hhZG93OiAwIDAgMWVtIGJsYWNrLCAwIDAgMC4yZW0gYmxhY2s7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gICAgXG4gICAgc3VwIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjVlbTtcbiAgICAgICAgdG9wOiAtLjdlbTtcbiAgICB9XG4gICAgXG4gICAgLnN1cCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43ZW07XG4gICAgICAgIHRvcDogLS4yZW07XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG59XG5cbi53aHlfYWx5Z2xvX2hlcm8ge1xuICAgIGhlaWdodDogODB2aDtcbiAgICBtaW4taGVpZ2h0OiA1NzVweDsgICAgXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy93aHlfYWx5Z2xvd19iZy5qcGcpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBcbiAgICBoMSB7XG4gICAgICAgIHRleHQtc2hhZG93OiAwIDAgMWVtIGJsYWNrLCAwIDAgMC4yZW0gYmxhY2s7XG4gICAgfVxuICAgIFxuICAgIGEge1xuICAgICAgICB0ZXh0LXNoYWRvdzogMCAwIDFlbSBibGFjaywgMCAwIDAuMmVtIGJsYWNrO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICAgIFxuICAgIHN1cCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC41ZW07XG4gICAgICAgIHRvcDogLS43ZW07XG4gICAgfVxuICAgIFxuICAgIC5zdXAge1xuICAgICAgICBmb250LXNpemU6IDAuN2VtO1xuICAgICAgICB0b3A6IC0uMmVtO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxufVxuXG4uY2hhbGxlbmdlc19oZXJvIHtcbiAgICBoZWlnaHQ6IDgwdmg7XG4gICAgbWluLWhlaWdodDogNTc1cHg7ICAgIFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvY2hhbGxlbmdlc19iZy5qcGcpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBcbiAgICBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbn1cblxuLmNoYWxsZW5nZXMtYnJlYWtlciB7XG4gICAgaGVpZ2h0OiA4MHZoO1xuICAgIG1pbi1oZWlnaHQ6IDU3NXB4OyAgICBcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2NoYWxsZW5nZXMyX2JnLmpwZyk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyAgICBcbn1cblxuLnN0YXJ0aW5nX3BhdGllbnRzX2hlcm8ge1xuICAgIGhlaWdodDogODB2aDtcbiAgICBtaW4taGVpZ2h0OiA1NzVweDsgICAgXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9zdGFydGluZ19wYXRpZW50c19iZy5qcGcpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcbi8vICAgIFxuLy8gICAgaDEge1xuLy8gICAgICAgIHRleHQtc2hhZG93OiAwIDAgMWVtIHdoaXRlLCAwIDAgMC4yZW0gd2hpdGU7XG4vLyAgICB9XG4vLyAgICBcbi8vICAgIGEge1xuLy8gICAgICAgIHRleHQtc2hhZG93OiAwIDAgMWVtIHdoaXRlLCAwIDAgMC4yZW0gd2hpdGU7XG4vLyAgICB9ICBcbiAgICBcbiAgICAgICAgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG59XG5cbi5zdXBwb3J0X2hlcm8ge1xuICAgIGhlaWdodDogODB2aDtcbiAgICBtaW4taGVpZ2h0OiA1NzVweDsgICAgXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9zdGFydGluZ19hbHlnbG9fYmcuanBnKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4vLyAgICBcbi8vICAgIGgxIHtcbi8vICAgICAgICB0ZXh0LXNoYWRvdzogMCAwIDFlbSB3aGl0ZSwgMCAwIDAuMmVtIHdoaXRlO1xuLy8gICAgfVxuLy8gICAgXG4vLyAgICBhIHtcbi8vICAgICAgICB0ZXh0LXNoYWRvdzogMCAwIDFlbSB3aGl0ZSwgMCAwIDAuMmVtIHdoaXRlO1xuLy8gICAgfSAgXG4gICAgXG4gICAgICAgIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxufVxuXG4uY29kaW5nX2hlcm8ge1xuICAgIGhlaWdodDogMjJ2aDtcbiAgICBtaW4taGVpZ2h0OiAxNzVweDsgICAgXG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4vLyAgICBcbi8vICAgIGgxIHtcbi8vICAgICAgICB0ZXh0LXNoYWRvdzogMCAwIDFlbSB3aGl0ZSwgMCAwIDAuMmVtIHdoaXRlO1xuLy8gICAgfVxuLy8gICAgXG4vLyAgICBhIHtcbi8vICAgICAgICB0ZXh0LXNoYWRvdzogMCAwIDFlbSB3aGl0ZSwgMCAwIDAuMmVtIHdoaXRlO1xuLy8gICAgfSAgXG4gICAgXG4gICAgICAgIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxufVxuXG4uc2lnbnVwX2hlcm8ge1xuICAgIGhlaWdodDogMTB2aDtcbiAgICBtaW4taGVpZ2h0OiAxMjBweDsgICAgXG59XG5cbm5hdiB7XG4gICAgI25hdmJhck5hdiB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICB9XG4gICAgXG4gICAgI25hdmJhck5hdk0ge1xuICAgICAgICAmLmhpZGRlbl9vbl9kZXNrdG9wIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH0gICAgXG4gICAgXG4gICAgLm1vYmlsZV9uYXYge1xuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDBweDtcbiAgICAgICAgbGVmdDogMHB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgXG4gICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBjb2xvcjogIzAwMjA1QztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5zdWJuYXYtbGluayB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICAgICAgICAgICAgY29sb3I6ICMwMDIwNUM7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07IFxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxubmF2IHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwLjhyZW0gMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgYm9yZGVyLXJhZGl1czogMXJlbTtcbiAgICBib3gtc2hhZG93OiAwcHggMTBweCAxNXB4IC0zcHggcmdiYSgwLDAsMCwwLjUpOyAgIFxuICAgIHotaW5kZXg6IDEwMDA7XG59XG5cbm5hdiB1bCAuc3VibWVudSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAycmVtO1xuICAgIGxlZnQ6IC0xLjJyZW07XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDEuNXJlbSAwIDFyZW0gMDtcbiAgICBtaW4td2lkdGg6IDI3MHB4O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgei1pbmRleDogOTk5O1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAxcmVtIDFyZW07XG4gICAgLypib3gtc2hhZG93OiAwcHggMTBweCAxNXB4IC0zcHggcmdiYSgwLDAsMCwwLjUpOyAgICovXG5cbiAgICAmLnR3byB7XG4gICAgICAgIG1pbi13aWR0aDogMjIwcHg7XG4gICAgICAgIGxlZnQ6IC04MHB4O1xuICAgIH1cblxuICAgICYudGhyZWUge1xuICAgICAgICBtaW4td2lkdGg6IDMwMHB4O1xuICAgICAgICBsZWZ0OiAtMTEwcHg7XG4gICAgfSBcblxuICAgICYuZm91ciB7XG4gICAgICAgIG1pbi13aWR0aDogMjIwcHg7XG4gICAgICAgIGxlZnQ6IC03MHB4O1xuICAgIH0gICAgICAgXG4gIH1cblxubmF2IHVsIC5zdWJtZW51IGxpIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMS4ycmVtO1xuICAgIG1hcmdpbi1yaWdodDogMS4ycmVtO1xuICB9XG5cbm5hdiB1bCAuc3VibWVudSBsaSBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6ICMwMDIwNUM7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbm5hdiB1bCBsaTpob3ZlciB7XG4gICAgY29sb3I6ICNGNTgzMjA7XG59XG5cbm5hdiB1bCBsaTpob3ZlciAuc3VibWVudSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxubmF2IHVsIGxpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDIuNXJlbTtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEzMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAjMDAyMDVDO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBhZGRpbmctYm90dG9tOiAwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIFxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMS4ycmVtO1xuICAgIH1cblxuICAgICYubGFzdCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS4ycmVtO1xuICAgICAgICB6LWluZGV4OiA5OTk5O1xuICAgIH1cbn1cblxubmF2IHVsIGxpIGEge1xuICAgIGNvbG9yOiAjMDAyMDVDO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIFxuICAgICYuYWN0aXZlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgY29sb3I6ICNGNTgzMjAgIWltcG9ydGFudDtcbiAgICB9ICAgICBcbn1cblxuXG4jaGVhZGVyLnRyYW5zcGFyZW50IHtcbi8vICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvZ3JhZGllbnRfYmcucG5nKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xufVxuXG4jaGVhZGVyLnNjcm9sbGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpO1xuICAgIGJveC1zaGFkb3c6IDBweCAxMHB4IDE1cHggLTNweCByZ2JhKDAsMCwwLDAuNSk7XG4gICAgXG4gICAgLnNpdGVfbG9nbyB7XG4gICAgICAgIHdpZHRoOiAxNDBweDtcbiAgICB9XG4gICAgXG4gICAgdWwge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBub25lO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cbn1cblxuXG5cbi8vc3RhdHMgY29udGFpbmVyXG4uc3RhdGlzdGljcy1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG59XG5cbi5zdGF0aXN0aWMge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmbGV4OiAxO1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzAwMjA1QztcbiAgICBwYWRkaW5nOiAwIDFyZW07XG59XG5cbi5zdGF0aXN0aWM6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1sZWZ0OiBub25lO1xufVxuXG4udmFsdWUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxMDAlO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi5sYWJlbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGNvbG9yOiAjMDAyMDVDO1xufVxuXG4uaGFtYnVyZ2VyLCAuaGFtYnVyZ2VyOmhvdmVye1xuICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG4gICAgXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IDBweCBub25lICNmZmYgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbiNpc2kge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIFxuICAgIC5leHBhbmRfaXNpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9ICAgIFxuICAgIFxuICAgICYuZml4ZWQge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHRvcDogODB2aDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgXG4gICAgICAgIC5leHBhbmRfaXNpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9ICAgICAgICAgXG4gICAgfVxuICAgIFxuICAgIHVsIGxpOjptYXJrZXIge1xuICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgfVxufVxuXG5hIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgY29sb3I6ICM0QUE0REM7ICAgIFxufVxuXG50YWJsZS5jaGFydF9mb3JtYXR0aW5nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuXG4gICAgJi5sYXJnZV9wYWRkaW5nIHtcbiAgICAgICAgdGgsIHRkIHtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE2cHggOHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIHRyLnJvdW5kZWQge1xuICAgICAgICB0aCB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgdGg6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICB0aDpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxcmVtO1xuICAgICAgICB9ICAgICAgICAgXG4gICAgfSAgXG4gICAgXG4gICAgdHIucm91bmRlZC1ib3R0b20ge1xuICAgICAgICBcbiAgICAgICAgdGQ6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICB0ZDpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAxcmVtO1xuICAgICAgICB9ICAgICAgICAgXG4gICAgfSAgICAgIFxuXG4gICAgdGgsIHRkIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDhweDtcblxuICAgICAgICAmLmxhcmdlX3BhZGRpbmcge1xuICAgICAgICAgICAgcGFkZGluZzogMTZweCA4cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgdGgge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQzNDOUQ5O1xuICAgIH1cbiAgICB0cjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFQkVERjM7XG4gICAgfSAgXG4gICAgXG4gICAgdGhlYWQsIHRib2R5IHtcbiAgICAgICAgdGQ6Zmlyc3QtY2hpbGQsIHRoOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZG9zaW5nX3RhYmxlIHtcbiAgICB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG59XG5cbiAgICAgICAgLnRpbWVsaW5lIHtcbiAgICAgICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgICAgICBtYXJnaW46IDUwcHggYXV0bztcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDJyZW0gMDtcbiAgICAgICAgfVxuICAgICAgICAudGltZWxpbmU6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIHdpZHRoOiA0cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjYzVjNWM1O1xuICAgICAgICB9XG4gICAgICAgIC50aW1lbGluZS1pdGVtIHtcbiAgICAgICAgICAgIHdpZHRoOiA0NSU7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI0MzQzlEOTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuN3JlbTs7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBtYXJnaW46IDIwcHggMDtcbiAgICAgICAgfVxuICAgICAgICAudGltZWxpbmUtaXRlbTpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICAgIC50aW1lbGluZS1pdGVtOm50aC1jaGlsZChldmVuKSB7XG4gICAgICAgICAgICBsZWZ0OiAxMDAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICAgICAgfVxuICAgICAgICAudGltZWxpbmUtaXRlbTo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvbGVmdF9kb3QucG5nKTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAtNTdweDtcbiAgICAgICAgICAgIHdpZHRoOiA3NXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgYm9yZGVyOiA4cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogI0MzQzlEOTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgLnRpbWVsaW5lLWl0ZW06bnRoLWNoaWxkKGV2ZW4pOjphZnRlciB7XG4gICAgICAgICAgICBsZWZ0OiAtNTNweDtcbiAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjQzNDOUQ5O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9yaWdodF9kb3QucG5nKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7ICBcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICB9XG5cbi5tb2RhbCB7XG4gICAgLS1icy1tb2RhbC13aWR0aDogNTQ1cHg7XG59XG5cbi5tb2RhbC1ib2R5IHtcbiAgICBwYWRkaW5nOiAycmVtIDJyZW0gMnJlbSAycmVtO1xuICAgIFxuICAgIGJ1dHRvbjpudGgtY2hpbGQoMikge1xuICAgICAgICB3aWR0aDogNDIlO1xuICAgIH1cbn1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgc3VwIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjVlbTtcbiAgICAgICAgdG9wOiAtLjdlbTtcbiAgICB9XG59XG5cbmgzIGEge1xuICAgIGNvbG9yOiBpbmhlcml0O1xufVxuXG5wLmxhcmdlX2Zvb3Rub3RlLCBsaS5sYXJnZV9mb290bm90ZSB7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxMjAlO1xufSBcblxucC5mb290bm90ZSwgbGkuZm9vdG5vdGUge1xuICAgIGZvbnQtc2l6ZTogMC42NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTIwJTtcbn0gXG5cbi5kb3RzIHtcbiAgICBib3JkZXItdG9wOiBkb3R0ZWQgNHB4ICNGNTgzMjA7XG4gICAgYm9yZGVyLWJvdHRvbTogZG90dGVkIDRweCAjRjU4MzIwO1xufVxuXG4uc3VwcG9ydC1ib3gge1xuICBib3JkZXI6IDJweCBzb2xpZCAjZjI5ZTdhO1xuICBib3JkZXItcmFkaXVzOiAxcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOGY1O1xuICBib3gtc2hhZG93OiA0cHggNHB4IDAgI2YyOWU3YTtcbiAgcGFkZGluZzogMnJlbTtcbn1cbi5zdXBwb3J0LWRpdmlkZXIge1xuICBib3JkZXItbGVmdDogMnB4IHNvbGlkICNmMjllN2E7XG59XG4uc3VwcG9ydC10aXRsZSB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjZDQ0NzJmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uc3VwcG9ydC10ZXh0IHtcbiAgZm9udC1zaXplOiAxLjFyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbn1cblxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgI25hdmJhck5hdiB7XG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDEwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgbmF2IHVsIGxpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW07XG4gICAgICAgIFxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIFxuICAgICNuYXZiYXJOYXYge1xuICAgICAgICB6LWluZGV4OiA5OTk7XG4gICAgICAgIFxuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgcGFkZGluZzogMTVweCAzMHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuOTUpO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDhyZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgICAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwOyBcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0gICAgXG4gICAgXG4gICAgLnRpbWVsaW5lIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIFxuICAgIC50aW1lbGluZS1pdGVtIHtcbiAgICAgICAgd2lkdGg6IDQ0JTtcbiAgICB9XG4gICAgXG4gICAgLm1vYmlsZV9pY29uIHtcbiAgICAgICAgd2lkdGg6IDdyZW0gIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG4gICAgXG4gICAgLmNhbGxvdXRfaW1nLmxhcmdlX29mZnNldCB7XG4gICAgICAgIHRvcDogLTNyZW07XG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAubXQtNC03Njgge1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gICAgfVxuICAgIFxuICAgIC5oZXJvX3RleHQge1xuICAgICAgICB0b3A6IDI2LjVyZW07XG4gICAgICAgIGxlZnQ6IDVyZW07XG4gICAgfVxuXG4gICAgLmdsb19pbWFnZSB7XG4gICAgICAgIHRvcDogMjByZW07XG4gICAgICAgIGxlZnQ6IDNyZW07XG4gICAgfSAgIFxuICAgIFxuICAgIC5oZXJvX3RleHQyIHtcbiAgICAgICAgdG9wOiAzM3JlbTtcbiAgICAgICAgbGVmdDogMjAuNXJlbTtcbiAgICB9ICBcbiAgICBcbiAgICAjbmF2YmFyTmF2IHtcbiAgICAgICAgei1pbmRleDogOTk5O1xuICAgICAgICBcbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMzBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAjbmF2YmFyTmF2IHtcbiAgICAgICAgei1pbmRleDogOTk5O1xuICAgICAgICBcbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMzBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgdWwge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjk1KTtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA4cmVtO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMTAwdnc7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDsgXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwcHg7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9ICAgXG4gICAgXG4gICAgLndoaXRlX2JveC5sYXJnZV9wYWRkaW5nLCAuZ3JheV9ib3gubGFyZ2VfcGFkZGluZyB7XG4gICAgICAgIHBhZGRpbmc6IDIuNXJlbSAyLjFyZW07XG4gICAgfSAgIFxuICAgIFxuICAgIC5pbnRleHRfY2hldnJvbiB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfSAgICAgIFxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICBodG1sLCBib2R5IHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgIH1cbiAgICBcbiAgICAudGltZWxpbmUge1xuICAgICAgICB3aWR0aDogODAlO1xuICAgIH1cbiAgICBcbiAgICAubWF2YmFyX29mZnNldCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDdyZW07XG4gICAgfSAgICBcblxuICAgIC5zdXBwb3J0LWJveD5kaXYge1xuICAgICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICB9XG5cbiAgICAuc3VwcG9ydC1ib3g+ZGl2IC5zdXBwb3J0LXRpdGxlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICB9XG5cbiAgICAuc3VwcG9ydC1ib3g+ZGl2Om50aC1jaGlsZCgxKSAuc3VwcG9ydC10aXRsZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICB9XG4gICAgXG4gICAgLmhvbWVfY2FsbG91dCB7XG4gICAgICAgIG1pbi13aWR0aDogMzMwcHg7XG4gICAgICAgIFxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH0gICAgXG4gICAgXG4gICAgLnN1cHBvcnRfY2FsbG91dCB7XG4gICAgICAgIG1pbi13aWR0aDogMjgwcHg7XG4gICAgICAgIFxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmNhbGxvdXRfaW1nIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgICAgICAgICBtYXJnaW4tYmxvY2s6IDJyZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLml2aWdfY2FsbG91dCB7XG4gICAgICAgIG1pbi13aWR0aDogMjYwcHg7XG4gICAgICAgIFxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH0gICBcbiAgICBcbiAgICAucGF0aWVudHNfY2FsbG91dCB7XG4gICAgICAgIG1pbi13aWR0aDogMjgwcHg7XG4gICAgICAgIFxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH0gICAgIFxuICAgIFxuICAgIC5jYWxsb3V0X2ltZyB7XG4gICAgICAgIGhlaWdodDogM3JlbTsgXG4gICAgICAgIGZsb2F0OiBsZWZ0OyBcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07IFxuICAgICAgICBcbiAgICAgICAgJi5sYXJnZV9vZmZzZXQge1xuICAgICAgICAgICAgdG9wOiAtMnJlbTtcbiAgICAgICAgfVxuICAgIH0gICBcbiAgICBcbiAgICAuaW50ZXh0X2NoZXZyb24ge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH0gIFxuICAgIFxuICAgIC5tb2JpbGVfY2hldnJvbl9hZGp1c3Qge1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbiAgICB0YWJsZS5jaGFydF9mb3JtYXR0aW5nIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjdyZW0gIWltcG9ydGFudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDAuOXJlbTsgICAgICAgIFxuICAgIH1cbiAgICBcbi5tb2RhbC1ib2R5IHtcbiAgICBwYWRkaW5nOiAycmVtIDJyZW0gMnJlbSAycmVtO1xuICAgIFxuICAgIGJ1dHRvbjpudGgtY2hpbGQoMSkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gICAgXG4gICAgYnV0dG9uOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgIH0gICAgXG59ICAgIFxuICAgIFxuICAgIC5mb3ItaGNwIHtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH0gICAgXG4gICAgXG4gICAgI2hlYWRlci5zY3JvbGxlZCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICAgICAgICBcbiAgICAgICAgLnNpdGVfbG9nbyB7XG4gICAgICAgICAgICB3aWR0aDogMTE1cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmhvbWVfaGVybyB7XG4gICAgICAgIC5mdWxsX2hlaWdodCB7XG4gICAgICAgICAgICAuYWxpZ24taXRlbXMtY2VudGVyIHtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBoMSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgICAgICAgICAgICAgIHRleHQtc2hhZG93OiAwIDAgMWVtIGJsYWNrLCAwIDAgMC4yZW0gYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5nbG9fdGltZSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMHJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLndoeV9hbHlnbG9faGVybyB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNHJlbTtcbiAgICAgICAgXG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIHRleHQtc2hhZG93OiAwIDAgMWVtIHdoaXRlLCAwIDAgMC4yZW0gd2hpdGUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuc3RhcnRpbmdfcGF0aWVudHNfaGVybyB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNhbGMoNTAlIC0gOTBweCkgY2VudGVyO1xuICAgIH1cbiAgICBcbiAgICAuY2hhbGxlbmdlc19oZXJvLCAuc3RhcnRpbmdfcGF0aWVudHNfaGVybyB7XG4gICAgICAgIC5mdWxsX2hlaWdodCB7XG4gICAgICAgICAgICAuYWxpZ24taXRlbXMtY2VudGVyIHtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBoMSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgICAgICAgICAgICAgIHRleHQtc2hhZG93OiAwIDAgMWVtIHdoaXRlLCAwIDAgMC4yZW0gd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1zaGFkb3c6IDAgMCAxZW0gd2hpdGUsIDAgMCAwLjJlbSB3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgYTpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSAgICBcbiAgICBcbiAgICAudHJlYXRpbmdfcGlfaGVybywgLndoeV9hbHlnbG9faGVybyB7XG4gICAgICAgIC5mdWxsX2hlaWdodCB7XG4gICAgICAgICAgICAuYWxpZ24taXRlbXMtY2VudGVyIHtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBoMSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgICAgICAgICAgICAgIHRleHQtc2hhZG93OiAwIDAgMWVtIGJsYWNrLCAwIDAgMC4yZW0gYmxhY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5zdGFydGluZ19hbHlnbG9faGVybyB7XG4gICAgICAgIC5mdWxsX2hlaWdodCB7XG4gICAgICAgICAgICAuYWxpZ24taXRlbXMtY2VudGVyIHtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBoMSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgICAgICAgICAgICAgIHRleHQtc2hhZG93OiAwIDAgMWVtIHdoaXRlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSAgICAgICAgXG4gICAgfVxuICAgIFxuICAgIC50aW1lbGluZS1pdGVtOjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgfVxuICAgIC50aW1lbGluZS1pdGVtOm50aC1jaGlsZChldmVuKTo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIH1cbiAgICBcbiAgICAucm91bmRlZF9jb3JuZXJzIHtcbiAgICAgICAgLmRhcmsge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogc3RhcnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxcmVtIDFyZW0gMCAwIDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmxpZ2h0IHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAxcmVtIDFyZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLndpZHRoNCB7XG4gICAgICAgIHdpZHRoOiA0cmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgIC50aW1lbGluZS1pdGVtIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIFxuICAgIC5ncmFkaWVudF9jaXJjbGUge1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgd2lkdGg6IDNyZW07XG4gICAgICAgIGhlaWdodDogM3JlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDNyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgICAgICAgIFxuICAgIH1cbiAgICBcbiAgICAubnVtYmVyX2JveCB7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgPnAge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDRyZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4vLyAgICAuZml4ZWQtdG9wIHtcbi8vICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4vLyAgICB9XG4vLyAgICBcbiAgICAuc2l0ZV9sb2dvIHtcbiAgICAgICAgd2lkdGg6IDExNXB4O1xuICAgIH1cbiAgICBcbiAgICBoMSwgLmgxIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIFxuICAgICAgICAmLmxhcmdlciB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuN3JlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBoMiwgLmgyIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIFxuICAgICAgICBiciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgICAgIHdpZHRoOiAwLjNyZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgaDIub25lX2xpbmUsIC5vbmVfbGluZS5oMiB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzcmVtO1xuICAgIH0gICAgXG4gICAgXG4gICAgaDMsIC5oMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgIH1cbiAgICBcbiAgICBwIHtcbiAgICAgICAgJi5yZXNldF9tbCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5pbnRyb190ZXh0IHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gICAgICAgIFxuICAgICAgICBiciB7XG4gICAgICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6ICBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLnBhZGRpbmctdG9wLTQge1xuICAgICAgICBwYWRkaW5nLXRvcDogMnJlbTtcbiAgICB9XG4gICAgXG4gICAgLnBhZGRpbmctYm90dG9tLTQge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgICB9ICAgIFxuICAgIFxuICAgIC5ncmF5X2JveCwgLm9yYW5nZV9ncmFkaWVudF9ib3gge1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICBcbiAgICAgICAgPiBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDRyZW0gIWltcG9ydGFudDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJi5mdWxsLXdpZHRoIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZXllYnJvdyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW0gIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwcHggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgcCB7XG4gICAgICAgICAgICAmLmxhcmdlciB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IFxuICAgICAgICBcbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmLmxhcmdlX3BhZGRpbmcge1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJi5ldmVuX3BhZGRpbmcge1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJi5mbG9hdF9vbl9tb2JpbGUge1xuICAgICAgICAgICAgPmltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDAuM3JlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgXG4gICAgLndoaXRlX2JveCB7XG4gICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgIFxuICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDBweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTEwJTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmLmxhcmdlX3BhZGRpbmcge1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYm9yZGVyIHtcbiAgICAgICAgICAgIGJvcmRlcjogc29saWQgMnB4ICNDM0M5RDk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgI3N1Ym1pdEJ1dHRvbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgIC5vcmFuZ2VfYm94IHtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgXG4gICAgICAgID5kaXYge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmRpZF95b3Vfa25vdyB7XG4gICAgICAgID5pbWcge1xuICAgICAgICAgICAgd2lkdGg6IDRyZW0gIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAucHMtNSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1icy1ndXR0ZXIteCkgKiAuNSkgIWltcG9ydGFudDtcbiAgICB9XG4gICAgXG4gICAgLmNpcmNsZV9pY29uIHtcbiAgICAgICAgd2lkdGg6IDVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG4gICAgXG4gICAgLmVuZF9hcnJvdyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICBiciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgfVxuICAgIH0gICBcbiAgICBcbiAgICAuZm9vdGVyIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjhyZW0gIWltcG9ydGFudDtcbiAgICAgICAgXG4gICAgICAgIGEge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjhyZW0gIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmZvb3Rub3RlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC42NXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmZvb3Rlcl9saW5rIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5wbC01MyB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIH0gIFxuICAgICAgICAgICAgXG4gICAgICAgIC5mb2xsb3dfdXMge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgICAgICAgLmxpbmtlZF9pbl9pY29uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogM3JlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSAgICAgICAgXG4gICAgfVxuICAgIFxuICAgIC5ob21lX2hlcm8ge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgYm90dG9tO1xuICAgICAgICBcbiAgICAgICAgLmhlcm9fdGV4dCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDNyZW07XG4gICAgICAgICAgICB0b3A6IDE0LjVyZW07XG4gICAgICAgICAgICBsZWZ0OiAwcmVtOyAgICAgICAgICAgIFxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZ2xvX2ltYWdlIHtcbiAgICAgICAgICAgIHdpZHRoOiAxNHJlbTtcbiAgICAgICAgICAgIHRvcDogMTJyZW07XG4gICAgICAgICAgICBsZWZ0OiAtMXJlbTsgICAgICAgICAgICBcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmhlcm9fdGV4dDIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgICAgICAgICAgdG9wOiAyMC41cmVtO1xuICAgICAgICAgICAgbGVmdDogMTAuNXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAjbmF2YmFyTmF2IHtcbiAgICAgICAgei1pbmRleDogOTk5O1xuICAgICAgICBcbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMzBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgdWwge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjk1KTtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA4cmVtO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMTAwdnc7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDsgXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwcHg7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLnN0YXRpc3RpY3MtY29udGFpbmVyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgXG4gICAgICAgIC5zdGF0aXN0aWMge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzAwMjA1QztcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbSAwO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgdGFibGUuY2hhcnRfZm9ybWF0dGluZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOyBcbiAgICAgICAgZm9udC1zaXplOiAwLjlyZW07XG5cbiAgICAgICAgdGJvZHkge1xuICAgICAgICAgICAgdGQ6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgICAgICAgICAgIH0gICAgICAgICAgIFxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICB0aGVhZCB7XG4gICAgICAgICAgICB0aDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICAgICAgICAgICAgfSAgICAgICAgICAgICBcbiAgICAgICAgfVxuICAgIH0gXG4gICAgXG4gICAgXG4gICAgLnRleHRfOHgge1xuICAgICAgICBmb250LXNpemU6IDRyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA1LjVyZW07ICAgICAgICBcbiAgICB9XG4gICAgXG4gICAgLnRocmVlX3NpemVzIHtcbiAgICAgICAgdG9wOiAtMXJlbSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbiAgICAuZnVsbC13aWR0aCB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfSAgXG4gICAgXG4gICAgLm1vYmlsZV9pY29uIHtcbiAgICAgICAgd2lkdGg6IDVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9ICAgIFxuICAgIFxuICAgIC5tb2JpbGVfdGFibGVfcmVzZXQge1xuICAgICAgICB0ZCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMTBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9ICAgICAgICAgICAgXG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmRvd25sb2FkX2JveCB7XG4gICAgICAgIHdpZHRoOiA5NSUgIWltcG9ydGFudDtcbiAgICB9ICAgIFxufSIsIkBpbXBvcnQgXCJtaXhpbnMvYmFubmVyXCI7XG5AaW5jbHVkZSBic0Jhbm5lcihcIlwiKTtcblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgaW1wb3J0LXN0YWNrXG4vLyBDb25maWd1cmF0aW9uXG5AaW1wb3J0IFwiZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzLWRhcmtcIjtcbkBpbXBvcnQgXCJtYXBzXCI7XG5AaW1wb3J0IFwibWl4aW5zXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzXCI7XG5cbi8vIExheW91dCAmIGNvbXBvbmVudHNcbkBpbXBvcnQgXCJyb290XCI7XG5AaW1wb3J0IFwicmVib290XCI7XG5AaW1wb3J0IFwidHlwZVwiO1xuQGltcG9ydCBcImltYWdlc1wiO1xuQGltcG9ydCBcImNvbnRhaW5lcnNcIjtcbkBpbXBvcnQgXCJncmlkXCI7XG5AaW1wb3J0IFwidGFibGVzXCI7XG5AaW1wb3J0IFwiZm9ybXNcIjtcbkBpbXBvcnQgXCJidXR0b25zXCI7XG5AaW1wb3J0IFwidHJhbnNpdGlvbnNcIjtcbkBpbXBvcnQgXCJkcm9wZG93blwiO1xuQGltcG9ydCBcImJ1dHRvbi1ncm91cFwiO1xuQGltcG9ydCBcIm5hdlwiO1xuQGltcG9ydCBcIm5hdmJhclwiO1xuQGltcG9ydCBcImNhcmRcIjtcbkBpbXBvcnQgXCJhY2NvcmRpb25cIjtcbkBpbXBvcnQgXCJicmVhZGNydW1iXCI7XG5AaW1wb3J0IFwicGFnaW5hdGlvblwiO1xuQGltcG9ydCBcImJhZGdlXCI7XG5AaW1wb3J0IFwiYWxlcnRcIjtcbkBpbXBvcnQgXCJwcm9ncmVzc1wiO1xuQGltcG9ydCBcImxpc3QtZ3JvdXBcIjtcbkBpbXBvcnQgXCJjbG9zZVwiO1xuQGltcG9ydCBcInRvYXN0c1wiO1xuQGltcG9ydCBcIm1vZGFsXCI7XG5AaW1wb3J0IFwidG9vbHRpcFwiO1xuQGltcG9ydCBcInBvcG92ZXJcIjtcbkBpbXBvcnQgXCJjYXJvdXNlbFwiO1xuQGltcG9ydCBcInNwaW5uZXJzXCI7XG5AaW1wb3J0IFwib2ZmY2FudmFzXCI7XG5AaW1wb3J0IFwicGxhY2Vob2xkZXJzXCI7XG5cbi8vIEhlbHBlcnNcbkBpbXBvcnQgXCJoZWxwZXJzXCI7XG5cbi8vIFV0aWxpdGllc1xuQGltcG9ydCBcInV0aWxpdGllcy9hcGlcIjtcbi8vIHNjc3MtZG9jcy1lbmQgaW1wb3J0LXN0YWNrXG4iLCJAbWl4aW4gYnNCYW5uZXIoJGZpbGUpIHtcbiAgLyohXG4gICAqIEJvb3RzdHJhcCAjeyRmaWxlfSB2NS4zLjMgKGh0dHBzOi8vZ2V0Ym9vdHN0cmFwLmNvbS8pXG4gICAqIENvcHlyaWdodCAyMDExLTIwMjQgVGhlIEJvb3RzdHJhcCBBdXRob3JzXG4gICAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFpbi9MSUNFTlNFKVxuICAgKi9cbn1cbiIsIi8vIEJvb3RzdHJhcCBmdW5jdGlvbnNcbi8vXG4vLyBVdGlsaXR5IG1peGlucyBhbmQgZnVuY3Rpb25zIGZvciBldmFsdWF0aW5nIHNvdXJjZSBjb2RlIGFjcm9zcyBvdXIgdmFyaWFibGVzLCBtYXBzLCBhbmQgbWl4aW5zLlxuXG4vLyBBc2NlbmRpbmdcbi8vIFVzZWQgdG8gZXZhbHVhdGUgU2FzcyBtYXBzIGxpa2Ugb3VyIGdyaWQgYnJlYWtwb2ludHMuXG5AbWl4aW4gX2Fzc2VydC1hc2NlbmRpbmcoJG1hcCwgJG1hcC1uYW1lKSB7XG4gICRwcmV2LWtleTogbnVsbDtcbiAgJHByZXYtbnVtOiBudWxsO1xuICBAZWFjaCAka2V5LCAkbnVtIGluICRtYXAge1xuICAgIEBpZiAkcHJldi1udW0gPT0gbnVsbCBvciB1bml0KCRudW0pID09IFwiJVwiIG9yIHVuaXQoJHByZXYtbnVtKSA9PSBcIiVcIiB7XG4gICAgICAvLyBEbyBub3RoaW5nXG4gICAgfSBAZWxzZSBpZiBub3QgY29tcGFyYWJsZSgkcHJldi1udW0sICRudW0pIHtcbiAgICAgIEB3YXJuIFwiUG90ZW50aWFsbHkgaW52YWxpZCB2YWx1ZSBmb3IgI3skbWFwLW5hbWV9OiBUaGlzIG1hcCBtdXN0IGJlIGluIGFzY2VuZGluZyBvcmRlciwgYnV0IGtleSAnI3ska2V5fScgaGFzIHZhbHVlICN7JG51bX0gd2hvc2UgdW5pdCBtYWtlcyBpdCBpbmNvbXBhcmFibGUgdG8gI3skcHJldi1udW19LCB0aGUgdmFsdWUgb2YgdGhlIHByZXZpb3VzIGtleSAnI3skcHJldi1rZXl9JyAhXCI7XG4gICAgfSBAZWxzZSBpZiAkcHJldi1udW0gPj0gJG51bSB7XG4gICAgICBAd2FybiBcIkludmFsaWQgdmFsdWUgZm9yICN7JG1hcC1uYW1lfTogVGhpcyBtYXAgbXVzdCBiZSBpbiBhc2NlbmRpbmcgb3JkZXIsIGJ1dCBrZXkgJyN7JGtleX0nIGhhcyB2YWx1ZSAjeyRudW19IHdoaWNoIGlzbid0IGdyZWF0ZXIgdGhhbiAjeyRwcmV2LW51bX0sIHRoZSB2YWx1ZSBvZiB0aGUgcHJldmlvdXMga2V5ICcjeyRwcmV2LWtleX0nICFcIjtcbiAgICB9XG4gICAgJHByZXYta2V5OiAka2V5O1xuICAgICRwcmV2LW51bTogJG51bTtcbiAgfVxufVxuXG4vLyBTdGFydHMgYXQgemVyb1xuLy8gVXNlZCB0byBlbnN1cmUgdGhlIG1pbi13aWR0aCBvZiB0aGUgbG93ZXN0IGJyZWFrcG9pbnQgc3RhcnRzIGF0IDAuXG5AbWl4aW4gX2Fzc2VydC1zdGFydHMtYXQtemVybygkbWFwLCAkbWFwLW5hbWU6IFwiJGdyaWQtYnJlYWtwb2ludHNcIikge1xuICBAaWYgbGVuZ3RoKCRtYXApID4gMCB7XG4gICAgJHZhbHVlczogbWFwLXZhbHVlcygkbWFwKTtcbiAgICAkZmlyc3QtdmFsdWU6IG50aCgkdmFsdWVzLCAxKTtcbiAgICBAaWYgJGZpcnN0LXZhbHVlICE9IDAge1xuICAgICAgQHdhcm4gXCJGaXJzdCBicmVha3BvaW50IGluICN7JG1hcC1uYW1lfSBtdXN0IHN0YXJ0IGF0IDAsIGJ1dCBzdGFydHMgYXQgI3skZmlyc3QtdmFsdWV9LlwiO1xuICAgIH1cbiAgfVxufVxuXG4vLyBDb2xvcnNcbkBmdW5jdGlvbiB0by1yZ2IoJHZhbHVlKSB7XG4gIEByZXR1cm4gcmVkKCR2YWx1ZSksIGdyZWVuKCR2YWx1ZSksIGJsdWUoJHZhbHVlKTtcbn1cblxuLy8gc3R5bGVsaW50LWRpc2FibGUgc2Nzcy9kb2xsYXItdmFyaWFibGUtcGF0dGVyblxuQGZ1bmN0aW9uIHJnYmEtY3NzLXZhcigkaWRlbnRpZmllciwgJHRhcmdldCkge1xuICBAaWYgJGlkZW50aWZpZXIgPT0gXCJib2R5XCIgYW5kICR0YXJnZXQgPT0gXCJiZ1wiIHtcbiAgICBAcmV0dXJuIHJnYmEodmFyKC0tI3skcHJlZml4fSN7JGlkZW50aWZpZXJ9LWJnLXJnYiksIHZhcigtLSN7JHByZWZpeH0jeyR0YXJnZXR9LW9wYWNpdHkpKTtcbiAgfSBAaWYgJGlkZW50aWZpZXIgPT0gXCJib2R5XCIgYW5kICR0YXJnZXQgPT0gXCJ0ZXh0XCIge1xuICAgIEByZXR1cm4gcmdiYSh2YXIoLS0jeyRwcmVmaXh9I3skaWRlbnRpZmllcn0tY29sb3ItcmdiKSwgdmFyKC0tI3skcHJlZml4fSN7JHRhcmdldH0tb3BhY2l0eSkpO1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuIHJnYmEodmFyKC0tI3skcHJlZml4fSN7JGlkZW50aWZpZXJ9LXJnYiksIHZhcigtLSN7JHByZWZpeH0jeyR0YXJnZXR9LW9wYWNpdHkpKTtcbiAgfVxufVxuXG5AZnVuY3Rpb24gbWFwLWxvb3AoJG1hcCwgJGZ1bmMsICRhcmdzLi4uKSB7XG4gICRfbWFwOiAoKTtcblxuICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgLy8gYWxsb3cgdG8gcGFzcyB0aGUgJGtleSBhbmQgJHZhbHVlIG9mIHRoZSBtYXAgYXMgYW4gZnVuY3Rpb24gYXJndW1lbnRcbiAgICAkX2FyZ3M6ICgpO1xuICAgIEBlYWNoICRhcmcgaW4gJGFyZ3Mge1xuICAgICAgJF9hcmdzOiBhcHBlbmQoJF9hcmdzLCBpZigkYXJnID09IFwiJGtleVwiLCAka2V5LCBpZigkYXJnID09IFwiJHZhbHVlXCIsICR2YWx1ZSwgJGFyZykpKTtcbiAgICB9XG5cbiAgICAkX21hcDogbWFwLW1lcmdlKCRfbWFwLCAoJGtleTogY2FsbChnZXQtZnVuY3Rpb24oJGZ1bmMpLCAkX2FyZ3MuLi4pKSk7XG4gIH1cblxuICBAcmV0dXJuICRfbWFwO1xufVxuLy8gc3R5bGVsaW50LWVuYWJsZSBzY3NzL2RvbGxhci12YXJpYWJsZS1wYXR0ZXJuXG5cbkBmdW5jdGlvbiB2YXJpZnkoJGxpc3QpIHtcbiAgJHJlc3VsdDogbnVsbDtcbiAgQGVhY2ggJGVudHJ5IGluICRsaXN0IHtcbiAgICAkcmVzdWx0OiBhcHBlbmQoJHJlc3VsdCwgdmFyKC0tI3skcHJlZml4fSN7JGVudHJ5fSksIHNwYWNlKTtcbiAgfVxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbi8vIEludGVybmFsIEJvb3RzdHJhcCBmdW5jdGlvbiB0byB0dXJuIG1hcHMgaW50byBpdHMgbmVnYXRpdmUgdmFyaWFudC5cbi8vIEl0IHByZWZpeGVzIHRoZSBrZXlzIHdpdGggYG5gIGFuZCBtYWtlcyB0aGUgdmFsdWUgbmVnYXRpdmUuXG5AZnVuY3Rpb24gbmVnYXRpdmlmeS1tYXAoJG1hcCkge1xuICAkcmVzdWx0OiAoKTtcbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgIEBpZiAka2V5ICE9IDAge1xuICAgICAgJHJlc3VsdDogbWFwLW1lcmdlKCRyZXN1bHQsIChcIm5cIiArICRrZXk6ICgtJHZhbHVlKSkpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbi8vIEdldCBtdWx0aXBsZSBrZXlzIGZyb20gYSBzYXNzIG1hcFxuQGZ1bmN0aW9uIG1hcC1nZXQtbXVsdGlwbGUoJG1hcCwgJHZhbHVlcykge1xuICAkcmVzdWx0OiAoKTtcbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgIEBpZiAoaW5kZXgoJHZhbHVlcywgJGtleSkgIT0gbnVsbCkge1xuICAgICAgJHJlc3VsdDogbWFwLW1lcmdlKCRyZXN1bHQsICgka2V5OiAkdmFsdWUpKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkcmVzdWx0O1xufVxuXG4vLyBNZXJnZSBtdWx0aXBsZSBtYXBzXG5AZnVuY3Rpb24gbWFwLW1lcmdlLW11bHRpcGxlKCRtYXBzLi4uKSB7XG4gICRtZXJnZWQtbWFwczogKCk7XG5cbiAgQGVhY2ggJG1hcCBpbiAkbWFwcyB7XG4gICAgJG1lcmdlZC1tYXBzOiBtYXAtbWVyZ2UoJG1lcmdlZC1tYXBzLCAkbWFwKTtcbiAgfVxuICBAcmV0dXJuICRtZXJnZWQtbWFwcztcbn1cblxuLy8gUmVwbGFjZSBgJHNlYXJjaGAgd2l0aCBgJHJlcGxhY2VgIGluIGAkc3RyaW5nYFxuLy8gVXNlZCBvbiBvdXIgU1ZHIGljb24gYmFja2dyb3VuZHMgZm9yIGN1c3RvbSBmb3Jtcy5cbi8vXG4vLyBAYXV0aG9yIEtpdHR5IEdpcmF1ZGVsXG4vLyBAcGFyYW0ge1N0cmluZ30gJHN0cmluZyAtIEluaXRpYWwgc3RyaW5nXG4vLyBAcGFyYW0ge1N0cmluZ30gJHNlYXJjaCAtIFN1YnN0cmluZyB0byByZXBsYWNlXG4vLyBAcGFyYW0ge1N0cmluZ30gJHJlcGxhY2UgKCcnKSAtIE5ldyB2YWx1ZVxuLy8gQHJldHVybiB7U3RyaW5nfSAtIFVwZGF0ZWQgc3RyaW5nXG5AZnVuY3Rpb24gc3RyLXJlcGxhY2UoJHN0cmluZywgJHNlYXJjaCwgJHJlcGxhY2U6IFwiXCIpIHtcbiAgJGluZGV4OiBzdHItaW5kZXgoJHN0cmluZywgJHNlYXJjaCk7XG5cbiAgQGlmICRpbmRleCB7XG4gICAgQHJldHVybiBzdHItc2xpY2UoJHN0cmluZywgMSwgJGluZGV4IC0gMSkgKyAkcmVwbGFjZSArIHN0ci1yZXBsYWNlKHN0ci1zbGljZSgkc3RyaW5nLCAkaW5kZXggKyBzdHItbGVuZ3RoKCRzZWFyY2gpKSwgJHNlYXJjaCwgJHJlcGxhY2UpO1xuICB9XG5cbiAgQHJldHVybiAkc3RyaW5nO1xufVxuXG4vLyBTZWUgaHR0cHM6Ly9jb2RlcGVuLmlvL2tldmlud2ViZXIvcGVuL2RYV29Sd1xuLy9cbi8vIFJlcXVpcmVzIHRoZSB1c2Ugb2YgcXVvdGVzIGFyb3VuZCBkYXRhIFVSSXMuXG5cbkBmdW5jdGlvbiBlc2NhcGUtc3ZnKCRzdHJpbmcpIHtcbiAgQGlmIHN0ci1pbmRleCgkc3RyaW5nLCBcImRhdGE6aW1hZ2Uvc3ZnK3htbFwiKSB7XG4gICAgQGVhY2ggJGNoYXIsICRlbmNvZGVkIGluICRlc2NhcGVkLWNoYXJhY3RlcnMge1xuICAgICAgLy8gRG8gbm90IGVzY2FwZSB0aGUgdXJsIGJyYWNrZXRzXG4gICAgICBAaWYgc3RyLWluZGV4KCRzdHJpbmcsIFwidXJsKFwiKSA9PSAxIHtcbiAgICAgICAgJHN0cmluZzogdXJsKFwiI3tzdHItcmVwbGFjZShzdHItc2xpY2UoJHN0cmluZywgNiwgLTMpLCAkY2hhciwgJGVuY29kZWQpfVwiKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkc3RyaW5nOiBzdHItcmVwbGFjZSgkc3RyaW5nLCAkY2hhciwgJGVuY29kZWQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHN0cmluZztcbn1cblxuLy8gQ29sb3IgY29udHJhc3Rcbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8zMDE2OFxuXG4vLyBBIGxpc3Qgb2YgcHJlLWNhbGN1bGF0ZWQgbnVtYmVycyBvZiBwb3coZGl2aWRlKChkaXZpZGUoJHZhbHVlLCAyNTUpICsgLjA1NSksIDEuMDU1KSwgMi40KS4gKGZyb20gMCB0byAyNTUpXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdCwgc2Nzcy9kb2xsYXItdmFyaWFibGUtcGF0dGVyblxuJF9sdW1pbmFuY2UtbGlzdDogLjAwMDggLjAwMSAuMDAxMSAuMDAxMyAuMDAxNSAuMDAxNyAuMDAyIC4wMDIyIC4wMDI1IC4wMDI3IC4wMDMgLjAwMzMgLjAwMzcgLjAwNCAuMDA0NCAuMDA0OCAuMDA1MiAuMDA1NiAuMDA2IC4wMDY1IC4wMDcgLjAwNzUgLjAwOCAuMDA4NiAuMDA5MSAuMDA5NyAuMDEwMyAuMDExIC4wMTE2IC4wMTIzIC4wMTMgLjAxMzcgLjAxNDQgLjAxNTIgLjAxNiAuMDE2OCAuMDE3NiAuMDE4NSAuMDE5NCAuMDIwMyAuMDIxMiAuMDIyMiAuMDIzMiAuMDI0MiAuMDI1MiAuMDI2MiAuMDI3MyAuMDI4NCAuMDI5NiAuMDMwNyAuMDMxOSAuMDMzMSAuMDM0MyAuMDM1NiAuMDM2OSAuMDM4MiAuMDM5NSAuMDQwOSAuMDQyMyAuMDQzNyAuMDQ1MiAuMDQ2NyAuMDQ4MiAuMDQ5NyAuMDUxMyAuMDUyOSAuMDU0NSAuMDU2MSAuMDU3OCAuMDU5NSAuMDYxMiAuMDYzIC4wNjQ4IC4wNjY2IC4wNjg1IC4wNzA0IC4wNzIzIC4wNzQyIC4wNzYyIC4wNzgyIC4wODAyIC4wODIzIC4wODQ0IC4wODY1IC4wODg3IC4wOTA4IC4wOTMxIC4wOTUzIC4wOTc2IC4wOTk5IC4xMDIyIC4xMDQ2IC4xMDcgLjEwOTUgLjExMTkgLjExNDQgLjExNyAuMTE5NSAuMTIyMSAuMTI0OCAuMTI3NCAuMTMwMSAuMTMyOSAuMTM1NiAuMTM4NCAuMTQxMyAuMTQ0MSAuMTQ3IC4xNSAuMTUyOSAuMTU1OSAuMTU5IC4xNjIgLjE2NTEgLjE2ODMgLjE3MTQgLjE3NDYgLjE3NzkgLjE4MTIgLjE4NDUgLjE4NzggLjE5MTIgLjE5NDYgLjE5ODEgLjIwMTYgLjIwNTEgLjIwODYgLjIxMjIgLjIxNTkgLjIxOTUgLjIyMzIgLjIyNyAuMjMwNyAuMjM0NiAuMjM4NCAuMjQyMyAuMjQ2MiAuMjUwMiAuMjU0MiAuMjU4MiAuMjYyMyAuMjY2NCAuMjcwNSAuMjc0NyAuMjc4OSAuMjgzMSAuMjg3NCAuMjkxOCAuMjk2MSAuMzAwNSAuMzA1IC4zMDk1IC4zMTQgLjMxODUgLjMyMzEgLjMyNzggLjMzMjUgLjMzNzIgLjM0MTkgLjM0NjcgLjM1MTUgLjM1NjQgLjM2MTMgLjM2NjMgLjM3MTIgLjM3NjMgLjM4MTMgLjM4NjQgLjM5MTYgLjM5NjggLjQwMiAuNDA3MiAuNDEyNSAuNDE3OSAuNDIzMyAuNDI4NyAuNDM0MiAuNDM5NyAuNDQ1MiAuNDUwOCAuNDU2NCAuNDYyMSAuNDY3OCAuNDczNSAuNDc5MyAuNDg1MSAuNDkxIC40OTY5IC41MDI5IC41MDg5IC41MTQ5IC41MjEgLjUyNzEgLjUzMzMgLjUzOTUgLjU0NTcgLjU1MiAuNTU4MyAuNTY0NyAuNTcxMSAuNTc3NiAuNTg0MSAuNTkwNiAuNTk3MiAuNjAzOCAuNjEwNSAuNjE3MiAuNjI0IC42MzA4IC42Mzc2IC42NDQ1IC42NTE0IC42NTg0IC42NjU0IC42NzI0IC42Nzk1IC42ODY3IC42OTM5IC43MDExIC43MDg0IC43MTU3IC43MjMxIC43MzA1IC43Mzc5IC43NDU0IC43NTI5IC43NjA1IC43NjgyIC43NzU4IC43ODM1IC43OTEzIC43OTkxIC44MDcgLjgxNDggLjgyMjggLjgzMDggLjgzODggLjg0NjkgLjg1NSAuODYzMiAuODcxNCAuODc5NiAuODg3OSAuODk2MyAuOTA0NyAuOTEzMSAuOTIxNiAuOTMwMSAuOTM4NyAuOTQ3MyAuOTU2IC45NjQ3IC45NzM0IC45ODIzIC45OTExIDE7XG5cbkBmdW5jdGlvbiBjb2xvci1jb250cmFzdCgkYmFja2dyb3VuZCwgJGNvbG9yLWNvbnRyYXN0LWRhcms6ICRjb2xvci1jb250cmFzdC1kYXJrLCAkY29sb3ItY29udHJhc3QtbGlnaHQ6ICRjb2xvci1jb250cmFzdC1saWdodCwgJG1pbi1jb250cmFzdC1yYXRpbzogJG1pbi1jb250cmFzdC1yYXRpbykge1xuICAkZm9yZWdyb3VuZHM6ICRjb2xvci1jb250cmFzdC1saWdodCwgJGNvbG9yLWNvbnRyYXN0LWRhcmssICR3aGl0ZSwgJGJsYWNrO1xuICAkbWF4LXJhdGlvOiAwO1xuICAkbWF4LXJhdGlvLWNvbG9yOiBudWxsO1xuXG4gIEBlYWNoICRjb2xvciBpbiAkZm9yZWdyb3VuZHMge1xuICAgICRjb250cmFzdC1yYXRpbzogY29udHJhc3QtcmF0aW8oJGJhY2tncm91bmQsICRjb2xvcik7XG4gICAgQGlmICRjb250cmFzdC1yYXRpbyA+ICRtaW4tY29udHJhc3QtcmF0aW8ge1xuICAgICAgQHJldHVybiAkY29sb3I7XG4gICAgfSBAZWxzZSBpZiAkY29udHJhc3QtcmF0aW8gPiAkbWF4LXJhdGlvIHtcbiAgICAgICRtYXgtcmF0aW86ICRjb250cmFzdC1yYXRpbztcbiAgICAgICRtYXgtcmF0aW8tY29sb3I6ICRjb2xvcjtcbiAgICB9XG4gIH1cblxuICBAd2FybiBcIkZvdW5kIG5vIGNvbG9yIGxlYWRpbmcgdG8gI3skbWluLWNvbnRyYXN0LXJhdGlvfToxIGNvbnRyYXN0IHJhdGlvIGFnYWluc3QgI3skYmFja2dyb3VuZH0uLi5cIjtcblxuICBAcmV0dXJuICRtYXgtcmF0aW8tY29sb3I7XG59XG5cbkBmdW5jdGlvbiBjb250cmFzdC1yYXRpbygkYmFja2dyb3VuZCwgJGZvcmVncm91bmQ6ICRjb2xvci1jb250cmFzdC1saWdodCkge1xuICAkbDE6IGx1bWluYW5jZSgkYmFja2dyb3VuZCk7XG4gICRsMjogbHVtaW5hbmNlKG9wYXF1ZSgkYmFja2dyb3VuZCwgJGZvcmVncm91bmQpKTtcblxuICBAcmV0dXJuIGlmKCRsMSA+ICRsMiwgZGl2aWRlKCRsMSArIC4wNSwgJGwyICsgLjA1KSwgZGl2aWRlKCRsMiArIC4wNSwgJGwxICsgLjA1KSk7XG59XG5cbi8vIFJldHVybiBXQ0FHMi4xIHJlbGF0aXZlIGx1bWluYW5jZVxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9XQ0FHLyNkZm4tcmVsYXRpdmUtbHVtaW5hbmNlXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL1dDQUcvI2Rmbi1jb250cmFzdC1yYXRpb1xuQGZ1bmN0aW9uIGx1bWluYW5jZSgkY29sb3IpIHtcbiAgJHJnYjogKFxuICAgIFwiclwiOiByZWQoJGNvbG9yKSxcbiAgICBcImdcIjogZ3JlZW4oJGNvbG9yKSxcbiAgICBcImJcIjogYmx1ZSgkY29sb3IpXG4gICk7XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkcmdiIHtcbiAgICAkdmFsdWU6IGlmKGRpdmlkZSgkdmFsdWUsIDI1NSkgPCAuMDQwNDUsIGRpdmlkZShkaXZpZGUoJHZhbHVlLCAyNTUpLCAxMi45MiksIG50aCgkX2x1bWluYW5jZS1saXN0LCAkdmFsdWUgKyAxKSk7XG4gICAgJHJnYjogbWFwLW1lcmdlKCRyZ2IsICgkbmFtZTogJHZhbHVlKSk7XG4gIH1cblxuICBAcmV0dXJuIChtYXAtZ2V0KCRyZ2IsIFwiclwiKSAqIC4yMTI2KSArIChtYXAtZ2V0KCRyZ2IsIFwiZ1wiKSAqIC43MTUyKSArIChtYXAtZ2V0KCRyZ2IsIFwiYlwiKSAqIC4wNzIyKTtcbn1cblxuLy8gUmV0dXJuIG9wYXF1ZSBjb2xvclxuLy8gb3BhcXVlKCNmZmYsIHJnYmEoMCwgMCwgMCwgLjUpKSA9PiAjODA4MDgwXG5AZnVuY3Rpb24gb3BhcXVlKCRiYWNrZ3JvdW5kLCAkZm9yZWdyb3VuZCkge1xuICBAcmV0dXJuIG1peChyZ2JhKCRmb3JlZ3JvdW5kLCAxKSwgJGJhY2tncm91bmQsIG9wYWNpdHkoJGZvcmVncm91bmQpICogMTAwJSk7XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjb2xvci1mdW5jdGlvbnNcbi8vIFRpbnQgYSBjb2xvcjogbWl4IGEgY29sb3Igd2l0aCB3aGl0ZVxuQGZ1bmN0aW9uIHRpbnQtY29sb3IoJGNvbG9yLCAkd2VpZ2h0KSB7XG4gIEByZXR1cm4gbWl4KHdoaXRlLCAkY29sb3IsICR3ZWlnaHQpO1xufVxuXG4vLyBTaGFkZSBhIGNvbG9yOiBtaXggYSBjb2xvciB3aXRoIGJsYWNrXG5AZnVuY3Rpb24gc2hhZGUtY29sb3IoJGNvbG9yLCAkd2VpZ2h0KSB7XG4gIEByZXR1cm4gbWl4KGJsYWNrLCAkY29sb3IsICR3ZWlnaHQpO1xufVxuXG4vLyBTaGFkZSB0aGUgY29sb3IgaWYgdGhlIHdlaWdodCBpcyBwb3NpdGl2ZSwgZWxzZSB0aW50IGl0XG5AZnVuY3Rpb24gc2hpZnQtY29sb3IoJGNvbG9yLCAkd2VpZ2h0KSB7XG4gIEByZXR1cm4gaWYoJHdlaWdodCA+IDAsIHNoYWRlLWNvbG9yKCRjb2xvciwgJHdlaWdodCksIHRpbnQtY29sb3IoJGNvbG9yLCAtJHdlaWdodCkpO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBjb2xvci1mdW5jdGlvbnNcblxuLy8gUmV0dXJuIHZhbGlkIGNhbGNcbkBmdW5jdGlvbiBhZGQoJHZhbHVlMSwgJHZhbHVlMiwgJHJldHVybi1jYWxjOiB0cnVlKSB7XG4gIEBpZiAkdmFsdWUxID09IG51bGwge1xuICAgIEByZXR1cm4gJHZhbHVlMjtcbiAgfVxuXG4gIEBpZiAkdmFsdWUyID09IG51bGwge1xuICAgIEByZXR1cm4gJHZhbHVlMTtcbiAgfVxuXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZTEpID09IG51bWJlciBhbmQgdHlwZS1vZigkdmFsdWUyKSA9PSBudW1iZXIgYW5kIGNvbXBhcmFibGUoJHZhbHVlMSwgJHZhbHVlMikge1xuICAgIEByZXR1cm4gJHZhbHVlMSArICR2YWx1ZTI7XG4gIH1cblxuICBAcmV0dXJuIGlmKCRyZXR1cm4tY2FsYyA9PSB0cnVlLCBjYWxjKCN7JHZhbHVlMX0gKyAjeyR2YWx1ZTJ9KSwgJHZhbHVlMSArIHVucXVvdGUoXCIgKyBcIikgKyAkdmFsdWUyKTtcbn1cblxuQGZ1bmN0aW9uIHN1YnRyYWN0KCR2YWx1ZTEsICR2YWx1ZTIsICRyZXR1cm4tY2FsYzogdHJ1ZSkge1xuICBAaWYgJHZhbHVlMSA9PSBudWxsIGFuZCAkdmFsdWUyID09IG51bGwge1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIEBpZiAkdmFsdWUxID09IG51bGwge1xuICAgIEByZXR1cm4gLSR2YWx1ZTI7XG4gIH1cblxuICBAaWYgJHZhbHVlMiA9PSBudWxsIHtcbiAgICBAcmV0dXJuICR2YWx1ZTE7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkdmFsdWUxKSA9PSBudW1iZXIgYW5kIHR5cGUtb2YoJHZhbHVlMikgPT0gbnVtYmVyIGFuZCBjb21wYXJhYmxlKCR2YWx1ZTEsICR2YWx1ZTIpIHtcbiAgICBAcmV0dXJuICR2YWx1ZTEgLSAkdmFsdWUyO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJHZhbHVlMikgIT0gbnVtYmVyIHtcbiAgICAkdmFsdWUyOiB1bnF1b3RlKFwiKFwiKSArICR2YWx1ZTIgKyB1bnF1b3RlKFwiKVwiKTtcbiAgfVxuXG4gIEByZXR1cm4gaWYoJHJldHVybi1jYWxjID09IHRydWUsIGNhbGMoI3skdmFsdWUxfSAtICN7JHZhbHVlMn0pLCAkdmFsdWUxICsgdW5xdW90ZShcIiAtIFwiKSArICR2YWx1ZTIpO1xufVxuXG5AZnVuY3Rpb24gZGl2aWRlKCRkaXZpZGVuZCwgJGRpdmlzb3IsICRwcmVjaXNpb246IDEwKSB7XG4gICRzaWduOiBpZigkZGl2aWRlbmQgPiAwIGFuZCAkZGl2aXNvciA+IDAgb3IgJGRpdmlkZW5kIDwgMCBhbmQgJGRpdmlzb3IgPCAwLCAxLCAtMSk7XG4gICRkaXZpZGVuZDogYWJzKCRkaXZpZGVuZCk7XG4gICRkaXZpc29yOiBhYnMoJGRpdmlzb3IpO1xuICBAaWYgJGRpdmlkZW5kID09IDAge1xuICAgIEByZXR1cm4gMDtcbiAgfVxuICBAaWYgJGRpdmlzb3IgPT0gMCB7XG4gICAgQGVycm9yIFwiQ2Fubm90IGRpdmlkZSBieSAwXCI7XG4gIH1cbiAgJHJlbWFpbmRlcjogJGRpdmlkZW5kO1xuICAkcmVzdWx0OiAwO1xuICAkZmFjdG9yOiAxMDtcbiAgQHdoaWxlICgkcmVtYWluZGVyID4gMCBhbmQgJHByZWNpc2lvbiA+PSAwKSB7XG4gICAgJHF1b3RpZW50OiAwO1xuICAgIEB3aGlsZSAoJHJlbWFpbmRlciA+PSAkZGl2aXNvcikge1xuICAgICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAtICRkaXZpc29yO1xuICAgICAgJHF1b3RpZW50OiAkcXVvdGllbnQgKyAxO1xuICAgIH1cbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogMTAgKyAkcXVvdGllbnQ7XG4gICAgJGZhY3RvcjogJGZhY3RvciAqIC4xO1xuICAgICRyZW1haW5kZXI6ICRyZW1haW5kZXIgKiAxMDtcbiAgICAkcHJlY2lzaW9uOiAkcHJlY2lzaW9uIC0gMTtcbiAgICBAaWYgKCRwcmVjaXNpb24gPCAwIGFuZCAkcmVtYWluZGVyID49ICRkaXZpc29yICogNSkge1xuICAgICAgJHJlc3VsdDogJHJlc3VsdCArIDE7XG4gICAgfVxuICB9XG4gICRyZXN1bHQ6ICRyZXN1bHQgKiAkZmFjdG9yICogJHNpZ247XG4gICRkaXZpZGVuZC11bml0OiB1bml0KCRkaXZpZGVuZCk7XG4gICRkaXZpc29yLXVuaXQ6IHVuaXQoJGRpdmlzb3IpO1xuICAkdW5pdC1tYXA6IChcbiAgICBcInB4XCI6IDFweCxcbiAgICBcInJlbVwiOiAxcmVtLFxuICAgIFwiZW1cIjogMWVtLFxuICAgIFwiJVwiOiAxJVxuICApO1xuICBAaWYgKCRkaXZpZGVuZC11bml0ICE9ICRkaXZpc29yLXVuaXQgYW5kIG1hcC1oYXMta2V5KCR1bml0LW1hcCwgJGRpdmlkZW5kLXVuaXQpKSB7XG4gICAgJHJlc3VsdDogJHJlc3VsdCAqIG1hcC1nZXQoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCk7XG4gIH1cbiAgQHJldHVybiAkcmVzdWx0O1xufVxuIiwiLy8gVmFyaWFibGVzXG4vL1xuLy8gVmFyaWFibGVzIHNob3VsZCBmb2xsb3cgdGhlIGAkY29tcG9uZW50LXN0YXRlLXByb3BlcnR5LXNpemVgIGZvcm11bGEgZm9yXG4vLyBjb25zaXN0ZW50IG5hbWluZy4gRXg6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvciBhbmQgJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cy5cblxuLy8gQ29sb3Igc3lzdGVtXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBncmF5LWNvbG9yLXZhcmlhYmxlc1xuJHdoaXRlOiAgICAjZmZmICFkZWZhdWx0O1xuJGdyYXktMTAwOiAjZjhmOWZhICFkZWZhdWx0O1xuJGdyYXktMjAwOiAjZTllY2VmICFkZWZhdWx0O1xuJGdyYXktMzAwOiAjZGVlMmU2ICFkZWZhdWx0O1xuJGdyYXktNDAwOiAjY2VkNGRhICFkZWZhdWx0O1xuJGdyYXktNTAwOiAjYWRiNWJkICFkZWZhdWx0O1xuJGdyYXktNjAwOiAjNmM3NTdkICFkZWZhdWx0O1xuJGdyYXktNzAwOiAjNDk1MDU3ICFkZWZhdWx0O1xuJGdyYXktODAwOiAjMzQzYTQwICFkZWZhdWx0O1xuJGdyYXktOTAwOiAjMjEyNTI5ICFkZWZhdWx0O1xuJGJsYWNrOiAgICAjMDAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBncmF5LWNvbG9yLXZhcmlhYmxlc1xuXG4vLyBmdXN2LWRpc2FibGVcbi8vIHNjc3MtZG9jcy1zdGFydCBncmF5LWNvbG9ycy1tYXBcbiRncmF5czogKFxuICBcIjEwMFwiOiAkZ3JheS0xMDAsXG4gIFwiMjAwXCI6ICRncmF5LTIwMCxcbiAgXCIzMDBcIjogJGdyYXktMzAwLFxuICBcIjQwMFwiOiAkZ3JheS00MDAsXG4gIFwiNTAwXCI6ICRncmF5LTUwMCxcbiAgXCI2MDBcIjogJGdyYXktNjAwLFxuICBcIjcwMFwiOiAkZ3JheS03MDAsXG4gIFwiODAwXCI6ICRncmF5LTgwMCxcbiAgXCI5MDBcIjogJGdyYXktOTAwXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBncmF5LWNvbG9ycy1tYXBcbi8vIGZ1c3YtZW5hYmxlXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjb2xvci12YXJpYWJsZXNcbiRibHVlOiAgICAjMGQ2ZWZkICFkZWZhdWx0O1xuJGluZGlnbzogICM2NjEwZjIgIWRlZmF1bHQ7XG4kcHVycGxlOiAgIzZmNDJjMSAhZGVmYXVsdDtcbiRwaW5rOiAgICAjZDYzMzg0ICFkZWZhdWx0O1xuJHJlZDogICAgICNkYzM1NDUgIWRlZmF1bHQ7XG4kb3JhbmdlOiAgI2ZkN2UxNCAhZGVmYXVsdDtcbiR5ZWxsb3c6ICAjZmZjMTA3ICFkZWZhdWx0O1xuJGdyZWVuOiAgICMxOTg3NTQgIWRlZmF1bHQ7XG4kdGVhbDogICAgIzIwYzk5NyAhZGVmYXVsdDtcbiRjeWFuOiAgICAjMGRjYWYwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjb2xvci12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbG9ycy1tYXBcbiRjb2xvcnM6IChcbiAgXCJibHVlXCI6ICAgICAgICRibHVlLFxuICBcImluZGlnb1wiOiAgICAgJGluZGlnbyxcbiAgXCJwdXJwbGVcIjogICAgICRwdXJwbGUsXG4gIFwicGlua1wiOiAgICAgICAkcGluayxcbiAgXCJyZWRcIjogICAgICAgICRyZWQsXG4gIFwib3JhbmdlXCI6ICAgICAkb3JhbmdlLFxuICBcInllbGxvd1wiOiAgICAgJHllbGxvdyxcbiAgXCJncmVlblwiOiAgICAgICRncmVlbixcbiAgXCJ0ZWFsXCI6ICAgICAgICR0ZWFsLFxuICBcImN5YW5cIjogICAgICAgJGN5YW4sXG4gIFwiYmxhY2tcIjogICAgICAkYmxhY2ssXG4gIFwid2hpdGVcIjogICAgICAkd2hpdGUsXG4gIFwiZ3JheVwiOiAgICAgICAkZ3JheS02MDAsXG4gIFwiZ3JheS1kYXJrXCI6ICAkZ3JheS04MDBcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNvbG9ycy1tYXBcblxuLy8gVGhlIGNvbnRyYXN0IHJhdGlvIHRvIHJlYWNoIGFnYWluc3Qgd2hpdGUsIHRvIGRldGVybWluZSBpZiBjb2xvciBjaGFuZ2VzIGZyb20gXCJsaWdodFwiIHRvIFwiZGFya1wiLiBBY2NlcHRhYmxlIHZhbHVlcyBmb3IgV0NBRyAyLjAgYXJlIDMsIDQuNSBhbmQgNy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvV0NBRzIwLyN2aXN1YWwtYXVkaW8tY29udHJhc3QtY29udHJhc3RcbiRtaW4tY29udHJhc3QtcmF0aW86ICAgNC41ICFkZWZhdWx0O1xuXG4vLyBDdXN0b21pemUgdGhlIGxpZ2h0IGFuZCBkYXJrIHRleHQgY29sb3JzIGZvciB1c2UgaW4gb3VyIGNvbG9yIGNvbnRyYXN0IGZ1bmN0aW9uLlxuJGNvbG9yLWNvbnRyYXN0LWRhcms6ICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGNvbG9yLWNvbnRyYXN0LWxpZ2h0OiAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4vLyBmdXN2LWRpc2FibGVcbiRibHVlLTEwMDogdGludC1jb2xvcigkYmx1ZSwgODAlKSAhZGVmYXVsdDtcbiRibHVlLTIwMDogdGludC1jb2xvcigkYmx1ZSwgNjAlKSAhZGVmYXVsdDtcbiRibHVlLTMwMDogdGludC1jb2xvcigkYmx1ZSwgNDAlKSAhZGVmYXVsdDtcbiRibHVlLTQwMDogdGludC1jb2xvcigkYmx1ZSwgMjAlKSAhZGVmYXVsdDtcbiRibHVlLTUwMDogJGJsdWUgIWRlZmF1bHQ7XG4kYmx1ZS02MDA6IHNoYWRlLWNvbG9yKCRibHVlLCAyMCUpICFkZWZhdWx0O1xuJGJsdWUtNzAwOiBzaGFkZS1jb2xvcigkYmx1ZSwgNDAlKSAhZGVmYXVsdDtcbiRibHVlLTgwMDogc2hhZGUtY29sb3IoJGJsdWUsIDYwJSkgIWRlZmF1bHQ7XG4kYmx1ZS05MDA6IHNoYWRlLWNvbG9yKCRibHVlLCA4MCUpICFkZWZhdWx0O1xuXG4kaW5kaWdvLTEwMDogdGludC1jb2xvcigkaW5kaWdvLCA4MCUpICFkZWZhdWx0O1xuJGluZGlnby0yMDA6IHRpbnQtY29sb3IoJGluZGlnbywgNjAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tMzAwOiB0aW50LWNvbG9yKCRpbmRpZ28sIDQwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTQwMDogdGludC1jb2xvcigkaW5kaWdvLCAyMCUpICFkZWZhdWx0O1xuJGluZGlnby01MDA6ICRpbmRpZ28gIWRlZmF1bHQ7XG4kaW5kaWdvLTYwMDogc2hhZGUtY29sb3IoJGluZGlnbywgMjAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tNzAwOiBzaGFkZS1jb2xvcigkaW5kaWdvLCA0MCUpICFkZWZhdWx0O1xuJGluZGlnby04MDA6IHNoYWRlLWNvbG9yKCRpbmRpZ28sIDYwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTkwMDogc2hhZGUtY29sb3IoJGluZGlnbywgODAlKSAhZGVmYXVsdDtcblxuJHB1cnBsZS0xMDA6IHRpbnQtY29sb3IoJHB1cnBsZSwgODAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtMjAwOiB0aW50LWNvbG9yKCRwdXJwbGUsIDYwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTMwMDogdGludC1jb2xvcigkcHVycGxlLCA0MCUpICFkZWZhdWx0O1xuJHB1cnBsZS00MDA6IHRpbnQtY29sb3IoJHB1cnBsZSwgMjAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtNTAwOiAkcHVycGxlICFkZWZhdWx0O1xuJHB1cnBsZS02MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDIwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTcwMDogc2hhZGUtY29sb3IoJHB1cnBsZSwgNDAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtODAwOiBzaGFkZS1jb2xvcigkcHVycGxlLCA2MCUpICFkZWZhdWx0O1xuJHB1cnBsZS05MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDgwJSkgIWRlZmF1bHQ7XG5cbiRwaW5rLTEwMDogdGludC1jb2xvcigkcGluaywgODAlKSAhZGVmYXVsdDtcbiRwaW5rLTIwMDogdGludC1jb2xvcigkcGluaywgNjAlKSAhZGVmYXVsdDtcbiRwaW5rLTMwMDogdGludC1jb2xvcigkcGluaywgNDAlKSAhZGVmYXVsdDtcbiRwaW5rLTQwMDogdGludC1jb2xvcigkcGluaywgMjAlKSAhZGVmYXVsdDtcbiRwaW5rLTUwMDogJHBpbmsgIWRlZmF1bHQ7XG4kcGluay02MDA6IHNoYWRlLWNvbG9yKCRwaW5rLCAyMCUpICFkZWZhdWx0O1xuJHBpbmstNzAwOiBzaGFkZS1jb2xvcigkcGluaywgNDAlKSAhZGVmYXVsdDtcbiRwaW5rLTgwMDogc2hhZGUtY29sb3IoJHBpbmssIDYwJSkgIWRlZmF1bHQ7XG4kcGluay05MDA6IHNoYWRlLWNvbG9yKCRwaW5rLCA4MCUpICFkZWZhdWx0O1xuXG4kcmVkLTEwMDogdGludC1jb2xvcigkcmVkLCA4MCUpICFkZWZhdWx0O1xuJHJlZC0yMDA6IHRpbnQtY29sb3IoJHJlZCwgNjAlKSAhZGVmYXVsdDtcbiRyZWQtMzAwOiB0aW50LWNvbG9yKCRyZWQsIDQwJSkgIWRlZmF1bHQ7XG4kcmVkLTQwMDogdGludC1jb2xvcigkcmVkLCAyMCUpICFkZWZhdWx0O1xuJHJlZC01MDA6ICRyZWQgIWRlZmF1bHQ7XG4kcmVkLTYwMDogc2hhZGUtY29sb3IoJHJlZCwgMjAlKSAhZGVmYXVsdDtcbiRyZWQtNzAwOiBzaGFkZS1jb2xvcigkcmVkLCA0MCUpICFkZWZhdWx0O1xuJHJlZC04MDA6IHNoYWRlLWNvbG9yKCRyZWQsIDYwJSkgIWRlZmF1bHQ7XG4kcmVkLTkwMDogc2hhZGUtY29sb3IoJHJlZCwgODAlKSAhZGVmYXVsdDtcblxuJG9yYW5nZS0xMDA6IHRpbnQtY29sb3IoJG9yYW5nZSwgODAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtMjAwOiB0aW50LWNvbG9yKCRvcmFuZ2UsIDYwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTMwMDogdGludC1jb2xvcigkb3JhbmdlLCA0MCUpICFkZWZhdWx0O1xuJG9yYW5nZS00MDA6IHRpbnQtY29sb3IoJG9yYW5nZSwgMjAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtNTAwOiAkb3JhbmdlICFkZWZhdWx0O1xuJG9yYW5nZS02MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDIwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTcwMDogc2hhZGUtY29sb3IoJG9yYW5nZSwgNDAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtODAwOiBzaGFkZS1jb2xvcigkb3JhbmdlLCA2MCUpICFkZWZhdWx0O1xuJG9yYW5nZS05MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDgwJSkgIWRlZmF1bHQ7XG5cbiR5ZWxsb3ctMTAwOiB0aW50LWNvbG9yKCR5ZWxsb3csIDgwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTIwMDogdGludC1jb2xvcigkeWVsbG93LCA2MCUpICFkZWZhdWx0O1xuJHllbGxvdy0zMDA6IHRpbnQtY29sb3IoJHllbGxvdywgNDAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctNDAwOiB0aW50LWNvbG9yKCR5ZWxsb3csIDIwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTUwMDogJHllbGxvdyAhZGVmYXVsdDtcbiR5ZWxsb3ctNjAwOiBzaGFkZS1jb2xvcigkeWVsbG93LCAyMCUpICFkZWZhdWx0O1xuJHllbGxvdy03MDA6IHNoYWRlLWNvbG9yKCR5ZWxsb3csIDQwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTgwMDogc2hhZGUtY29sb3IoJHllbGxvdywgNjAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctOTAwOiBzaGFkZS1jb2xvcigkeWVsbG93LCA4MCUpICFkZWZhdWx0O1xuXG4kZ3JlZW4tMTAwOiB0aW50LWNvbG9yKCRncmVlbiwgODAlKSAhZGVmYXVsdDtcbiRncmVlbi0yMDA6IHRpbnQtY29sb3IoJGdyZWVuLCA2MCUpICFkZWZhdWx0O1xuJGdyZWVuLTMwMDogdGludC1jb2xvcigkZ3JlZW4sIDQwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tNDAwOiB0aW50LWNvbG9yKCRncmVlbiwgMjAlKSAhZGVmYXVsdDtcbiRncmVlbi01MDA6ICRncmVlbiAhZGVmYXVsdDtcbiRncmVlbi02MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgMjAlKSAhZGVmYXVsdDtcbiRncmVlbi03MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgNDAlKSAhZGVmYXVsdDtcbiRncmVlbi04MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgNjAlKSAhZGVmYXVsdDtcbiRncmVlbi05MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgODAlKSAhZGVmYXVsdDtcblxuJHRlYWwtMTAwOiB0aW50LWNvbG9yKCR0ZWFsLCA4MCUpICFkZWZhdWx0O1xuJHRlYWwtMjAwOiB0aW50LWNvbG9yKCR0ZWFsLCA2MCUpICFkZWZhdWx0O1xuJHRlYWwtMzAwOiB0aW50LWNvbG9yKCR0ZWFsLCA0MCUpICFkZWZhdWx0O1xuJHRlYWwtNDAwOiB0aW50LWNvbG9yKCR0ZWFsLCAyMCUpICFkZWZhdWx0O1xuJHRlYWwtNTAwOiAkdGVhbCAhZGVmYXVsdDtcbiR0ZWFsLTYwMDogc2hhZGUtY29sb3IoJHRlYWwsIDIwJSkgIWRlZmF1bHQ7XG4kdGVhbC03MDA6IHNoYWRlLWNvbG9yKCR0ZWFsLCA0MCUpICFkZWZhdWx0O1xuJHRlYWwtODAwOiBzaGFkZS1jb2xvcigkdGVhbCwgNjAlKSAhZGVmYXVsdDtcbiR0ZWFsLTkwMDogc2hhZGUtY29sb3IoJHRlYWwsIDgwJSkgIWRlZmF1bHQ7XG5cbiRjeWFuLTEwMDogdGludC1jb2xvcigkY3lhbiwgODAlKSAhZGVmYXVsdDtcbiRjeWFuLTIwMDogdGludC1jb2xvcigkY3lhbiwgNjAlKSAhZGVmYXVsdDtcbiRjeWFuLTMwMDogdGludC1jb2xvcigkY3lhbiwgNDAlKSAhZGVmYXVsdDtcbiRjeWFuLTQwMDogdGludC1jb2xvcigkY3lhbiwgMjAlKSAhZGVmYXVsdDtcbiRjeWFuLTUwMDogJGN5YW4gIWRlZmF1bHQ7XG4kY3lhbi02MDA6IHNoYWRlLWNvbG9yKCRjeWFuLCAyMCUpICFkZWZhdWx0O1xuJGN5YW4tNzAwOiBzaGFkZS1jb2xvcigkY3lhbiwgNDAlKSAhZGVmYXVsdDtcbiRjeWFuLTgwMDogc2hhZGUtY29sb3IoJGN5YW4sIDYwJSkgIWRlZmF1bHQ7XG4kY3lhbi05MDA6IHNoYWRlLWNvbG9yKCRjeWFuLCA4MCUpICFkZWZhdWx0O1xuXG4kYmx1ZXM6IChcbiAgXCJibHVlLTEwMFwiOiAkYmx1ZS0xMDAsXG4gIFwiYmx1ZS0yMDBcIjogJGJsdWUtMjAwLFxuICBcImJsdWUtMzAwXCI6ICRibHVlLTMwMCxcbiAgXCJibHVlLTQwMFwiOiAkYmx1ZS00MDAsXG4gIFwiYmx1ZS01MDBcIjogJGJsdWUtNTAwLFxuICBcImJsdWUtNjAwXCI6ICRibHVlLTYwMCxcbiAgXCJibHVlLTcwMFwiOiAkYmx1ZS03MDAsXG4gIFwiYmx1ZS04MDBcIjogJGJsdWUtODAwLFxuICBcImJsdWUtOTAwXCI6ICRibHVlLTkwMFxuKSAhZGVmYXVsdDtcblxuJGluZGlnb3M6IChcbiAgXCJpbmRpZ28tMTAwXCI6ICRpbmRpZ28tMTAwLFxuICBcImluZGlnby0yMDBcIjogJGluZGlnby0yMDAsXG4gIFwiaW5kaWdvLTMwMFwiOiAkaW5kaWdvLTMwMCxcbiAgXCJpbmRpZ28tNDAwXCI6ICRpbmRpZ28tNDAwLFxuICBcImluZGlnby01MDBcIjogJGluZGlnby01MDAsXG4gIFwiaW5kaWdvLTYwMFwiOiAkaW5kaWdvLTYwMCxcbiAgXCJpbmRpZ28tNzAwXCI6ICRpbmRpZ28tNzAwLFxuICBcImluZGlnby04MDBcIjogJGluZGlnby04MDAsXG4gIFwiaW5kaWdvLTkwMFwiOiAkaW5kaWdvLTkwMFxuKSAhZGVmYXVsdDtcblxuJHB1cnBsZXM6IChcbiAgXCJwdXJwbGUtMTAwXCI6ICRwdXJwbGUtMTAwLFxuICBcInB1cnBsZS0yMDBcIjogJHB1cnBsZS0yMDAsXG4gIFwicHVycGxlLTMwMFwiOiAkcHVycGxlLTMwMCxcbiAgXCJwdXJwbGUtNDAwXCI6ICRwdXJwbGUtNDAwLFxuICBcInB1cnBsZS01MDBcIjogJHB1cnBsZS01MDAsXG4gIFwicHVycGxlLTYwMFwiOiAkcHVycGxlLTYwMCxcbiAgXCJwdXJwbGUtNzAwXCI6ICRwdXJwbGUtNzAwLFxuICBcInB1cnBsZS04MDBcIjogJHB1cnBsZS04MDAsXG4gIFwicHVycGxlLTkwMFwiOiAkcHVycGxlLTkwMFxuKSAhZGVmYXVsdDtcblxuJHBpbmtzOiAoXG4gIFwicGluay0xMDBcIjogJHBpbmstMTAwLFxuICBcInBpbmstMjAwXCI6ICRwaW5rLTIwMCxcbiAgXCJwaW5rLTMwMFwiOiAkcGluay0zMDAsXG4gIFwicGluay00MDBcIjogJHBpbmstNDAwLFxuICBcInBpbmstNTAwXCI6ICRwaW5rLTUwMCxcbiAgXCJwaW5rLTYwMFwiOiAkcGluay02MDAsXG4gIFwicGluay03MDBcIjogJHBpbmstNzAwLFxuICBcInBpbmstODAwXCI6ICRwaW5rLTgwMCxcbiAgXCJwaW5rLTkwMFwiOiAkcGluay05MDBcbikgIWRlZmF1bHQ7XG5cbiRyZWRzOiAoXG4gIFwicmVkLTEwMFwiOiAkcmVkLTEwMCxcbiAgXCJyZWQtMjAwXCI6ICRyZWQtMjAwLFxuICBcInJlZC0zMDBcIjogJHJlZC0zMDAsXG4gIFwicmVkLTQwMFwiOiAkcmVkLTQwMCxcbiAgXCJyZWQtNTAwXCI6ICRyZWQtNTAwLFxuICBcInJlZC02MDBcIjogJHJlZC02MDAsXG4gIFwicmVkLTcwMFwiOiAkcmVkLTcwMCxcbiAgXCJyZWQtODAwXCI6ICRyZWQtODAwLFxuICBcInJlZC05MDBcIjogJHJlZC05MDBcbikgIWRlZmF1bHQ7XG5cbiRvcmFuZ2VzOiAoXG4gIFwib3JhbmdlLTEwMFwiOiAkb3JhbmdlLTEwMCxcbiAgXCJvcmFuZ2UtMjAwXCI6ICRvcmFuZ2UtMjAwLFxuICBcIm9yYW5nZS0zMDBcIjogJG9yYW5nZS0zMDAsXG4gIFwib3JhbmdlLTQwMFwiOiAkb3JhbmdlLTQwMCxcbiAgXCJvcmFuZ2UtNTAwXCI6ICRvcmFuZ2UtNTAwLFxuICBcIm9yYW5nZS02MDBcIjogJG9yYW5nZS02MDAsXG4gIFwib3JhbmdlLTcwMFwiOiAkb3JhbmdlLTcwMCxcbiAgXCJvcmFuZ2UtODAwXCI6ICRvcmFuZ2UtODAwLFxuICBcIm9yYW5nZS05MDBcIjogJG9yYW5nZS05MDBcbikgIWRlZmF1bHQ7XG5cbiR5ZWxsb3dzOiAoXG4gIFwieWVsbG93LTEwMFwiOiAkeWVsbG93LTEwMCxcbiAgXCJ5ZWxsb3ctMjAwXCI6ICR5ZWxsb3ctMjAwLFxuICBcInllbGxvdy0zMDBcIjogJHllbGxvdy0zMDAsXG4gIFwieWVsbG93LTQwMFwiOiAkeWVsbG93LTQwMCxcbiAgXCJ5ZWxsb3ctNTAwXCI6ICR5ZWxsb3ctNTAwLFxuICBcInllbGxvdy02MDBcIjogJHllbGxvdy02MDAsXG4gIFwieWVsbG93LTcwMFwiOiAkeWVsbG93LTcwMCxcbiAgXCJ5ZWxsb3ctODAwXCI6ICR5ZWxsb3ctODAwLFxuICBcInllbGxvdy05MDBcIjogJHllbGxvdy05MDBcbikgIWRlZmF1bHQ7XG5cbiRncmVlbnM6IChcbiAgXCJncmVlbi0xMDBcIjogJGdyZWVuLTEwMCxcbiAgXCJncmVlbi0yMDBcIjogJGdyZWVuLTIwMCxcbiAgXCJncmVlbi0zMDBcIjogJGdyZWVuLTMwMCxcbiAgXCJncmVlbi00MDBcIjogJGdyZWVuLTQwMCxcbiAgXCJncmVlbi01MDBcIjogJGdyZWVuLTUwMCxcbiAgXCJncmVlbi02MDBcIjogJGdyZWVuLTYwMCxcbiAgXCJncmVlbi03MDBcIjogJGdyZWVuLTcwMCxcbiAgXCJncmVlbi04MDBcIjogJGdyZWVuLTgwMCxcbiAgXCJncmVlbi05MDBcIjogJGdyZWVuLTkwMFxuKSAhZGVmYXVsdDtcblxuJHRlYWxzOiAoXG4gIFwidGVhbC0xMDBcIjogJHRlYWwtMTAwLFxuICBcInRlYWwtMjAwXCI6ICR0ZWFsLTIwMCxcbiAgXCJ0ZWFsLTMwMFwiOiAkdGVhbC0zMDAsXG4gIFwidGVhbC00MDBcIjogJHRlYWwtNDAwLFxuICBcInRlYWwtNTAwXCI6ICR0ZWFsLTUwMCxcbiAgXCJ0ZWFsLTYwMFwiOiAkdGVhbC02MDAsXG4gIFwidGVhbC03MDBcIjogJHRlYWwtNzAwLFxuICBcInRlYWwtODAwXCI6ICR0ZWFsLTgwMCxcbiAgXCJ0ZWFsLTkwMFwiOiAkdGVhbC05MDBcbikgIWRlZmF1bHQ7XG5cbiRjeWFuczogKFxuICBcImN5YW4tMTAwXCI6ICRjeWFuLTEwMCxcbiAgXCJjeWFuLTIwMFwiOiAkY3lhbi0yMDAsXG4gIFwiY3lhbi0zMDBcIjogJGN5YW4tMzAwLFxuICBcImN5YW4tNDAwXCI6ICRjeWFuLTQwMCxcbiAgXCJjeWFuLTUwMFwiOiAkY3lhbi01MDAsXG4gIFwiY3lhbi02MDBcIjogJGN5YW4tNjAwLFxuICBcImN5YW4tNzAwXCI6ICRjeWFuLTcwMCxcbiAgXCJjeWFuLTgwMFwiOiAkY3lhbi04MDAsXG4gIFwiY3lhbi05MDBcIjogJGN5YW4tOTAwXG4pICFkZWZhdWx0O1xuLy8gZnVzdi1lbmFibGVcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWNvbG9yLXZhcmlhYmxlc1xuJHByaW1hcnk6ICAgICAgICRibHVlICFkZWZhdWx0O1xuJHNlY29uZGFyeTogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRzdWNjZXNzOiAgICAgICAkZ3JlZW4gIWRlZmF1bHQ7XG4kaW5mbzogICAgICAgICAgJGN5YW4gIWRlZmF1bHQ7XG4kd2FybmluZzogICAgICAgJHllbGxvdyAhZGVmYXVsdDtcbiRkYW5nZXI6ICAgICAgICAkcmVkICFkZWZhdWx0O1xuJGxpZ2h0OiAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRkYXJrOiAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWNvbG9yLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtY29sb3JzLW1hcFxuJHRoZW1lLWNvbG9yczogKFxuICBcInByaW1hcnlcIjogICAgJHByaW1hcnksXG4gIFwic2Vjb25kYXJ5XCI6ICAkc2Vjb25kYXJ5LFxuICBcInN1Y2Nlc3NcIjogICAgJHN1Y2Nlc3MsXG4gIFwiaW5mb1wiOiAgICAgICAkaW5mbyxcbiAgXCJ3YXJuaW5nXCI6ICAgICR3YXJuaW5nLFxuICBcImRhbmdlclwiOiAgICAgJGRhbmdlcixcbiAgXCJsaWdodFwiOiAgICAgICRsaWdodCxcbiAgXCJkYXJrXCI6ICAgICAgICRkYXJrXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1jb2xvcnMtbWFwXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS10ZXh0LXZhcmlhYmxlc1xuJHByaW1hcnktdGV4dC1lbXBoYXNpczogICBzaGFkZS1jb2xvcigkcHJpbWFyeSwgNjAlKSAhZGVmYXVsdDtcbiRzZWNvbmRhcnktdGV4dC1lbXBoYXNpczogc2hhZGUtY29sb3IoJHNlY29uZGFyeSwgNjAlKSAhZGVmYXVsdDtcbiRzdWNjZXNzLXRleHQtZW1waGFzaXM6ICAgc2hhZGUtY29sb3IoJHN1Y2Nlc3MsIDYwJSkgIWRlZmF1bHQ7XG4kaW5mby10ZXh0LWVtcGhhc2lzOiAgICAgIHNoYWRlLWNvbG9yKCRpbmZvLCA2MCUpICFkZWZhdWx0O1xuJHdhcm5pbmctdGV4dC1lbXBoYXNpczogICBzaGFkZS1jb2xvcigkd2FybmluZywgNjAlKSAhZGVmYXVsdDtcbiRkYW5nZXItdGV4dC1lbXBoYXNpczogICAgc2hhZGUtY29sb3IoJGRhbmdlciwgNjAlKSAhZGVmYXVsdDtcbiRsaWdodC10ZXh0LWVtcGhhc2lzOiAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGRhcmstdGV4dC1lbXBoYXNpczogICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLXRleHQtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1iZy1zdWJ0bGUtdmFyaWFibGVzXG4kcHJpbWFyeS1iZy1zdWJ0bGU6ICAgICAgIHRpbnQtY29sb3IoJHByaW1hcnksIDgwJSkgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LWJnLXN1YnRsZTogICAgIHRpbnQtY29sb3IoJHNlY29uZGFyeSwgODAlKSAhZGVmYXVsdDtcbiRzdWNjZXNzLWJnLXN1YnRsZTogICAgICAgdGludC1jb2xvcigkc3VjY2VzcywgODAlKSAhZGVmYXVsdDtcbiRpbmZvLWJnLXN1YnRsZTogICAgICAgICAgdGludC1jb2xvcigkaW5mbywgODAlKSAhZGVmYXVsdDtcbiR3YXJuaW5nLWJnLXN1YnRsZTogICAgICAgdGludC1jb2xvcigkd2FybmluZywgODAlKSAhZGVmYXVsdDtcbiRkYW5nZXItYmctc3VidGxlOiAgICAgICAgdGludC1jb2xvcigkZGFuZ2VyLCA4MCUpICFkZWZhdWx0O1xuJGxpZ2h0LWJnLXN1YnRsZTogICAgICAgICBtaXgoJGdyYXktMTAwLCAkd2hpdGUpICFkZWZhdWx0O1xuJGRhcmstYmctc3VidGxlOiAgICAgICAgICAkZ3JheS00MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWJnLXN1YnRsZS12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWJvcmRlci1zdWJ0bGUtdmFyaWFibGVzXG4kcHJpbWFyeS1ib3JkZXItc3VidGxlOiAgIHRpbnQtY29sb3IoJHByaW1hcnksIDYwJSkgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LWJvcmRlci1zdWJ0bGU6IHRpbnQtY29sb3IoJHNlY29uZGFyeSwgNjAlKSAhZGVmYXVsdDtcbiRzdWNjZXNzLWJvcmRlci1zdWJ0bGU6ICAgdGludC1jb2xvcigkc3VjY2VzcywgNjAlKSAhZGVmYXVsdDtcbiRpbmZvLWJvcmRlci1zdWJ0bGU6ICAgICAgdGludC1jb2xvcigkaW5mbywgNjAlKSAhZGVmYXVsdDtcbiR3YXJuaW5nLWJvcmRlci1zdWJ0bGU6ICAgdGludC1jb2xvcigkd2FybmluZywgNjAlKSAhZGVmYXVsdDtcbiRkYW5nZXItYm9yZGVyLXN1YnRsZTogICAgdGludC1jb2xvcigkZGFuZ2VyLCA2MCUpICFkZWZhdWx0O1xuJGxpZ2h0LWJvcmRlci1zdWJ0bGU6ICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kZGFyay1ib3JkZXItc3VidGxlOiAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtYm9yZGVyLXN1YnRsZS12YXJpYWJsZXNcblxuLy8gQ2hhcmFjdGVycyB3aGljaCBhcmUgZXNjYXBlZCBieSB0aGUgZXNjYXBlLXN2ZyBmdW5jdGlvblxuJGVzY2FwZWQtY2hhcmFjdGVyczogKFxuICAoXCI8XCIsIFwiJTNjXCIpLFxuICAoXCI+XCIsIFwiJTNlXCIpLFxuICAoXCIjXCIsIFwiJTIzXCIpLFxuICAoXCIoXCIsIFwiJTI4XCIpLFxuICAoXCIpXCIsIFwiJTI5XCIpLFxuKSAhZGVmYXVsdDtcblxuLy8gT3B0aW9uc1xuLy9cbi8vIFF1aWNrbHkgbW9kaWZ5IGdsb2JhbCBzdHlsaW5nIGJ5IGVuYWJsaW5nIG9yIGRpc2FibGluZyBvcHRpb25hbCBmZWF0dXJlcy5cblxuJGVuYWJsZS1jYXJldDogICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcm91bmRlZDogICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNoYWRvd3M6ICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JhZGllbnRzOiAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS10cmFuc2l0aW9uczogICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcmVkdWNlZC1tb3Rpb246ICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNtb290aC1zY3JvbGw6ICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1ncmlkLWNsYXNzZXM6ICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtY29udGFpbmVyLWNsYXNzZXM6ICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWNzc2dyaWQ6ICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtYnV0dG9uLXBvaW50ZXJzOiAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJmczogICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS12YWxpZGF0aW9uLWljb25zOiAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtbmVnYXRpdmUtbWFyZ2luczogICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1kZXByZWNhdGlvbi1tZXNzYWdlczogdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllczogIHRydWUgIWRlZmF1bHQ7XG5cbiRlbmFibGUtZGFyay1tb2RlOiAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kY29sb3ItbW9kZS10eXBlOiAgICAgICAgICAgICBkYXRhICFkZWZhdWx0OyAvLyBgZGF0YWAgb3IgYG1lZGlhLXF1ZXJ5YFxuXG4vLyBQcmVmaXggZm9yIDpyb290IENTUyB2YXJpYWJsZXNcblxuJHZhcmlhYmxlLXByZWZpeDogICAgICAgICAgICAgYnMtICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMCBmb3IgdGhlIHNob3J0ZXIgYCRwcmVmaXhgXG4kcHJlZml4OiAgICAgICAgICAgICAgICAgICAgICAkdmFyaWFibGUtcHJlZml4ICFkZWZhdWx0O1xuXG4vLyBHcmFkaWVudFxuLy9cbi8vIFRoZSBncmFkaWVudCB3aGljaCBpcyBhZGRlZCB0byBjb21wb25lbnRzIGlmIGAkZW5hYmxlLWdyYWRpZW50c2AgaXMgYHRydWVgXG4vLyBUaGlzIGdyYWRpZW50IGlzIGFsc28gYWRkZWQgdG8gZWxlbWVudHMgd2l0aCBgLmJnLWdyYWRpZW50YFxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHZhcmlhYmxlLWdyYWRpZW50XG4kZ3JhZGllbnQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoJHdoaXRlLCAuMTUpLCByZ2JhKCR3aGl0ZSwgMCkpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB2YXJpYWJsZS1ncmFkaWVudFxuXG4vLyBTcGFjaW5nXG4vL1xuLy8gQ29udHJvbCB0aGUgZGVmYXVsdCBzdHlsaW5nIG9mIG1vc3QgQm9vdHN0cmFwIGVsZW1lbnRzIGJ5IG1vZGlmeWluZyB0aGVzZVxuLy8gdmFyaWFibGVzLiBNb3N0bHkgZm9jdXNlZCBvbiBzcGFjaW5nLlxuLy8gWW91IGNhbiBhZGQgbW9yZSBlbnRyaWVzIHRvIHRoZSAkc3BhY2VycyBtYXAsIHNob3VsZCB5b3UgbmVlZCBtb3JlIHZhcmlhdGlvbi5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwYWNlci12YXJpYWJsZXMtbWFwc1xuJHNwYWNlcjogMXJlbSAhZGVmYXVsdDtcbiRzcGFjZXJzOiAoXG4gIDA6IDAsXG4gIDE6ICRzcGFjZXIgKiAuMjUsXG4gIDI6ICRzcGFjZXIgKiAuNSxcbiAgMzogJHNwYWNlcixcbiAgNDogJHNwYWNlciAqIDEuNSxcbiAgNTogJHNwYWNlciAqIDMsXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBzcGFjZXItdmFyaWFibGVzLW1hcHNcblxuLy8gUG9zaXRpb25cbi8vXG4vLyBEZWZpbmUgdGhlIGVkZ2UgcG9zaXRpb25pbmcgYW5jaG9ycyBvZiB0aGUgcG9zaXRpb24gdXRpbGl0aWVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcG9zaXRpb24tbWFwXG4kcG9zaXRpb24tdmFsdWVzOiAoXG4gIDA6IDAsXG4gIDUwOiA1MCUsXG4gIDEwMDogMTAwJVxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcG9zaXRpb24tbWFwXG5cbi8vIEJvZHlcbi8vXG4vLyBTZXR0aW5ncyBmb3IgdGhlIGA8Ym9keT5gIGVsZW1lbnQuXG5cbiRib2R5LXRleHQtYWxpZ246ICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRib2R5LWJnOiAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRib2R5LXNlY29uZGFyeS1jb2xvcjogICAgICByZ2JhKCRib2R5LWNvbG9yLCAuNzUpICFkZWZhdWx0O1xuJGJvZHktc2Vjb25kYXJ5LWJnOiAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuJGJvZHktdGVydGlhcnktY29sb3I6ICAgICAgIHJnYmEoJGJvZHktY29sb3IsIC41KSAhZGVmYXVsdDtcbiRib2R5LXRlcnRpYXJ5LWJnOiAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG5cbiRib2R5LWVtcGhhc2lzLWNvbG9yOiAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vIExpbmtzXG4vL1xuLy8gU3R5bGUgYW5jaG9yIGVsZW1lbnRzLlxuXG4kbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkcHJpbWFyeSAhZGVmYXVsdDtcbiRsaW5rLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgICAgICAgIHVuZGVybGluZSAhZGVmYXVsdDtcbiRsaW5rLXNoYWRlLXBlcmNlbnRhZ2U6ICAgICAgICAgICAgICAgICAgIDIwJSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIHNoaWZ0LWNvbG9yKCRsaW5rLWNvbG9yLCAkbGluay1zaGFkZS1wZXJjZW50YWdlKSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRzdHJldGNoZWQtbGluay1wc2V1ZG8tZWxlbWVudDogICAgICAgICAgIGFmdGVyICFkZWZhdWx0O1xuJHN0cmV0Y2hlZC1saW5rLXotaW5kZXg6ICAgICAgICAgICAgICAgICAgMSAhZGVmYXVsdDtcblxuLy8gSWNvbiBsaW5rc1xuLy8gc2Nzcy1kb2NzLXN0YXJ0IGljb24tbGluay12YXJpYWJsZXNcbiRpY29uLWxpbmstZ2FwOiAgICAgICAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kaWNvbi1saW5rLXVuZGVybGluZS1vZmZzZXQ6ICAuMjVlbSAhZGVmYXVsdDtcbiRpY29uLWxpbmstaWNvbi1zaXplOiAgICAgICAgIDFlbSAhZGVmYXVsdDtcbiRpY29uLWxpbmstaWNvbi10cmFuc2l0aW9uOiAgIC4ycyBlYXNlLWluLW91dCB0cmFuc2Zvcm0gIWRlZmF1bHQ7XG4kaWNvbi1saW5rLWljb24tdHJhbnNmb3JtOiAgICB0cmFuc2xhdGUzZCguMjVlbSwgMCwgMCkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGljb24tbGluay12YXJpYWJsZXNcblxuLy8gUGFyYWdyYXBoc1xuLy9cbi8vIFN0eWxlIHAgZWxlbWVudC5cblxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAgIDFyZW0gIWRlZmF1bHQ7XG5cblxuLy8gR3JpZCBicmVha3BvaW50c1xuLy9cbi8vIERlZmluZSB0aGUgbWluaW11bSBkaW1lbnNpb25zIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLFxuLy8gYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcywgZm9yIHVzZSBpbiBtZWRpYSBxdWVyaWVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZ3JpZC1icmVha3BvaW50c1xuJGdyaWQtYnJlYWtwb2ludHM6IChcbiAgeHM6IDAsXG4gIHNtOiA1NzZweCxcbiAgbWQ6IDc2OHB4LFxuICBsZzogOTkycHgsXG4gIHhsOiAxMjAwcHgsXG4gIHh4bDogMTQwMHB4XG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBncmlkLWJyZWFrcG9pbnRzXG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuQGluY2x1ZGUgX2Fzc2VydC1zdGFydHMtYXQtemVybygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcblxuXG4vLyBHcmlkIGNvbnRhaW5lcnNcbi8vXG4vLyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29udGFpbmVyLW1heC13aWR0aHNcbiRjb250YWluZXItbWF4LXdpZHRoczogKFxuICBzbTogNTQwcHgsXG4gIG1kOiA3MjBweCxcbiAgbGc6IDk2MHB4LFxuICB4bDogMTE0MHB4LFxuICB4eGw6IDEzMjBweFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY29udGFpbmVyLW1heC13aWR0aHNcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGNvbnRhaW5lci1tYXgtd2lkdGhzLCBcIiRjb250YWluZXItbWF4LXdpZHRoc1wiKTtcblxuXG4vLyBHcmlkIGNvbHVtbnNcbi8vXG4vLyBTZXQgdGhlIG51bWJlciBvZiBjb2x1bW5zIGFuZCBzcGVjaWZ5IHRoZSB3aWR0aCBvZiB0aGUgZ3V0dGVycy5cblxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XG4kZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kZ3JpZC1yb3ctY29sdW1uczogICAgICAgICAgICA2ICFkZWZhdWx0O1xuXG4vLyBDb250YWluZXIgcGFkZGluZ1xuXG4kY29udGFpbmVyLXBhZGRpbmcteDogJGdyaWQtZ3V0dGVyLXdpZHRoICFkZWZhdWx0O1xuXG5cbi8vIENvbXBvbmVudHNcbi8vXG4vLyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBib3JkZXItdmFyaWFibGVzXG4kYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kYm9yZGVyLXdpZHRoczogKFxuICAxOiAxcHgsXG4gIDI6IDJweCxcbiAgMzogM3B4LFxuICA0OiA0cHgsXG4gIDU6IDVweFxuKSAhZGVmYXVsdDtcbiRib3JkZXItc3R5bGU6ICAgICAgICAgICAgICAgIHNvbGlkICFkZWZhdWx0O1xuJGJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJGJvcmRlci1jb2xvci10cmFuc2x1Y2VudDogICAgcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBib3JkZXItdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBib3JkZXItcmFkaXVzLXZhcmlhYmxlc1xuJGJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMteGw6ICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXh4bDogICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1waWxsOiAgICAgICAgICA1MHJlbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYm9yZGVyLXJhZGl1cy12YXJpYWJsZXNcbi8vIGZ1c3YtZGlzYWJsZVxuJGJvcmRlci1yYWRpdXMtMnhsOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMteHhsICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjMuMFxuLy8gZnVzdi1lbmFibGVcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJveC1zaGFkb3ctdmFyaWFibGVzXG4kYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1zbTogICAgICAgICAgICAgICAwIC4xMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWxnOiAgICAgICAgICAgICAgIDAgMXJlbSAzcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWluc2V0OiAgICAgICAgICAgIGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJveC1zaGFkb3ctdmFyaWFibGVzXG5cbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAgICRwcmltYXJ5ICFkZWZhdWx0O1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9jdXMtcmluZy12YXJpYWJsZXNcbiRmb2N1cy1yaW5nLXdpZHRoOiAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRmb2N1cy1yaW5nLW9wYWNpdHk6ICAgIC4yNSAhZGVmYXVsdDtcbiRmb2N1cy1yaW5nLWNvbG9yOiAgICAgIHJnYmEoJHByaW1hcnksICRmb2N1cy1yaW5nLW9wYWNpdHkpICFkZWZhdWx0O1xuJGZvY3VzLXJpbmctYmx1cjogICAgICAgMCAhZGVmYXVsdDtcbiRmb2N1cy1yaW5nLWJveC1zaGFkb3c6IDAgMCAkZm9jdXMtcmluZy1ibHVyICRmb2N1cy1yaW5nLXdpZHRoICRmb2N1cy1yaW5nLWNvbG9yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb2N1cy1yaW5nLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2FyZXQtdmFyaWFibGVzXG4kY2FyZXQtd2lkdGg6ICAgICAgICAgICAgICAgICAuM2VtICFkZWZhdWx0O1xuJGNhcmV0LXZlcnRpY2FsLWFsaWduOiAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuJGNhcmV0LXNwYWNpbmc6ICAgICAgICAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjYXJldC12YXJpYWJsZXNcblxuJHRyYW5zaXRpb24tYmFzZTogICAgICAgICAgICAgYWxsIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWZhZGU6ICAgICAgICAgICAgIG9wYWNpdHkgLjE1cyBsaW5lYXIgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sbGFwc2UtdHJhbnNpdGlvblxuJHRyYW5zaXRpb24tY29sbGFwc2U6ICAgICAgICAgaGVpZ2h0IC4zNXMgZWFzZSAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWNvbGxhcHNlLXdpZHRoOiAgIHdpZHRoIC4zNXMgZWFzZSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY29sbGFwc2UtdHJhbnNpdGlvblxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3Rcbi8vIHNjc3MtZG9jcy1zdGFydCBhc3BlY3QtcmF0aW9zXG4kYXNwZWN0LXJhdGlvczogKFxuICBcIjF4MVwiOiAxMDAlLFxuICBcIjR4M1wiOiBjYWxjKDMgLyA0ICogMTAwJSksXG4gIFwiMTZ4OVwiOiBjYWxjKDkgLyAxNiAqIDEwMCUpLFxuICBcIjIxeDlcIjogY2FsYyg5IC8gMjEgKiAxMDAlKVxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYXNwZWN0LXJhdGlvc1xuLy8gc3R5bGVsaW50LWVuYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuLy8gVHlwb2dyYXBoeVxuLy9cbi8vIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9udC12YXJpYWJsZXNcbi8vIHN0eWxlbGludC1kaXNhYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICAgICAgc3lzdGVtLXVpLCAtYXBwbGUtc3lzdGVtLCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBcIk5vdG8gU2Fuc1wiLCBcIkxpYmVyYXRpb24gU2Fuc1wiLCBBcmlhbCwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogICAgICAgU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1lbmFibGUgdmFsdWUta2V5d29yZC1jYXNlXG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Zm9udC1zYW5zLXNlcmlmKSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1jb2RlOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1mb250LW1vbm9zcGFjZSkgIWRlZmF1bHQ7XG5cbi8vICRmb250LXNpemUtcm9vdCBhZmZlY3RzIHRoZSB2YWx1ZSBvZiBgcmVtYCwgd2hpY2ggaXMgdXNlZCBmb3IgYXMgd2VsbCBmb250IHNpemVzLCBwYWRkaW5ncywgYW5kIG1hcmdpbnNcbi8vICRmb250LXNpemUtYmFzZSBhZmZlY3RzIHRoZSBmb250IHNpemUgb2YgdGhlIGJvZHkgdGV4dFxuJGZvbnQtc2l6ZS1yb290OiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb250LXNpemUtYmFzZTogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7IC8vIEFzc3VtZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCwgdHlwaWNhbGx5IGAxNnB4YFxuJGZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjg3NSAhZGVmYXVsdDtcbiRmb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1saWdodGVyOiAgICAgICAgIGxpZ2h0ZXIgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbGlnaHQ6ICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbm9ybWFsOiAgICAgICAgICA0MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbWVkaXVtOiAgICAgICAgICA1MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtc2VtaWJvbGQ6ICAgICAgICA2MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZDogICAgICAgICAgICA3MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZGVyOiAgICAgICAgICBib2xkZXIgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1iYXNlOiAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbiRsaW5lLWhlaWdodC1iYXNlOiAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1zbTogICAgICAgICAgICAgIDEuMjUgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAyICFkZWZhdWx0O1xuXG4kaDEtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyLjUgIWRlZmF1bHQ7XG4kaDItZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS43NSAhZGVmYXVsdDtcbiRoNC1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRoNS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kaDYtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvbnQtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb250LXNpemVzXG4kZm9udC1zaXplczogKFxuICAxOiAkaDEtZm9udC1zaXplLFxuICAyOiAkaDItZm9udC1zaXplLFxuICAzOiAkaDMtZm9udC1zaXplLFxuICA0OiAkaDQtZm9udC1zaXplLFxuICA1OiAkaDUtZm9udC1zaXplLFxuICA2OiAkaDYtZm9udC1zaXplXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb250LXNpemVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBoZWFkaW5ncy12YXJpYWJsZXNcbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tOiAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC1zdHlsZTogICAgICAgICBudWxsICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgICAgICAgNTAwICFkZWZhdWx0O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAgICAgMS4yICFkZWZhdWx0O1xuJGhlYWRpbmdzLWNvbG9yOiAgICAgICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgaGVhZGluZ3MtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBkaXNwbGF5LWhlYWRpbmdzXG4kZGlzcGxheS1mb250LXNpemVzOiAoXG4gIDE6IDVyZW0sXG4gIDI6IDQuNXJlbSxcbiAgMzogNHJlbSxcbiAgNDogMy41cmVtLFxuICA1OiAzcmVtLFxuICA2OiAyLjVyZW1cbikgIWRlZmF1bHQ7XG5cbiRkaXNwbGF5LWZvbnQtZmFtaWx5OiBudWxsICFkZWZhdWx0O1xuJGRpc3BsYXktZm9udC1zdHlsZTogIG51bGwgIWRlZmF1bHQ7XG4kZGlzcGxheS1mb250LXdlaWdodDogMzAwICFkZWZhdWx0O1xuJGRpc3BsYXktbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZGlzcGxheS1oZWFkaW5nc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdHlwZS12YXJpYWJsZXNcbiRsZWFkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kbGVhZC1mb250LXdlaWdodDogICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG5cbiRzbWFsbC1mb250LXNpemU6ICAgICAgICAgICAgIC44NzVlbSAhZGVmYXVsdDtcblxuJHN1Yi1zdXAtZm9udC1zaXplOiAgICAgICAgICAgLjc1ZW0gIWRlZmF1bHQ7XG5cbi8vIGZ1c3YtZGlzYWJsZVxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gNS4zLjBcbi8vIGZ1c3YtZW5hYmxlXG5cbiRpbml0aWFsaXNtLWZvbnQtc2l6ZTogICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG5cbiRibG9ja3F1b3RlLW1hcmdpbi15OiAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9vdGVyLWNvbG9yOiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9vdGVyLWZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuJGhyLW1hcmdpbi15OiAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRoci1jb2xvcjogICAgICAgICAgICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vIGZ1c3YtZGlzYWJsZVxuJGhyLWJnLWNvbG9yOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjBcbiRoci1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wXG4vLyBmdXN2LWVuYWJsZVxuXG4kaHItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBBbGxvd3MgZm9yIGluaGVyaXRlZCBjb2xvcnNcbiRoci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGhyLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgLjI1ICFkZWZhdWx0O1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdnItdmFyaWFibGVzXG4kdnItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdnItdmFyaWFibGVzXG5cbiRsZWdlbmQtbWFyZ2luLWJvdHRvbTogICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGxlZ2VuZC1mb250LXNpemU6ICAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuJGxlZ2VuZC1mb250LXdlaWdodDogICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGR0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRsaXN0LWlubGluZS1wYWRkaW5nOiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbWFyay1wYWRkaW5nOiAgICAgICAgICAgICAgICAuMTg3NWVtICFkZWZhdWx0O1xuJG1hcmstY29sb3I6ICAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kbWFyay1iZzogICAgICAgICAgICAgICAgICAgICAkeWVsbG93LTEwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdHlwZS12YXJpYWJsZXNcblxuXG4vLyBUYWJsZXNcbi8vXG4vLyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0YWJsZS12YXJpYWJsZXNcbiR0YWJsZS1jZWxsLXBhZGRpbmcteTogICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy14OiAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXktc206ICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXgtc206ICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiR0YWJsZS1jZWxsLXZlcnRpY2FsLWFsaWduOiAgIHRvcCAhZGVmYXVsdDtcblxuJHRhYmxlLWNvbG9yOiAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yKSAhZGVmYXVsdDtcbiR0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiR0YWJsZS1hY2NlbnQtYmc6ICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4kdGFibGUtdGgtZm9udC13ZWlnaHQ6ICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kdGFibGUtc3RyaXBlZC1jb2xvcjogICAgICAgICAkdGFibGUtY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtc3RyaXBlZC1iZy1mYWN0b3I6ICAgICAuMDUgIWRlZmF1bHQ7XG4kdGFibGUtc3RyaXBlZC1iZzogICAgICAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCAkdGFibGUtc3RyaXBlZC1iZy1mYWN0b3IpICFkZWZhdWx0O1xuXG4kdGFibGUtYWN0aXZlLWNvbG9yOiAgICAgICAgICAkdGFibGUtY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtYWN0aXZlLWJnLWZhY3RvcjogICAgICAuMSAhZGVmYXVsdDtcbiR0YWJsZS1hY3RpdmUtYmc6ICAgICAgICAgICAgIHJnYmEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksICR0YWJsZS1hY3RpdmUtYmctZmFjdG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWJnLWZhY3RvcjogICAgICAgLjA3NSAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1iZzogICAgICAgICAgICAgIHJnYmEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksICR0YWJsZS1ob3Zlci1iZy1mYWN0b3IpICFkZWZhdWx0O1xuXG4kdGFibGUtYm9yZGVyLWZhY3RvcjogICAgICAgICAuMiAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG5cbiR0YWJsZS1zdHJpcGVkLW9yZGVyOiAgICAgICAgIG9kZCAhZGVmYXVsdDtcbiR0YWJsZS1zdHJpcGVkLWNvbHVtbnMtb3JkZXI6IGV2ZW4gIWRlZmF1bHQ7XG5cbiR0YWJsZS1ncm91cC1zZXBhcmF0b3ItY29sb3I6IGN1cnJlbnRjb2xvciAhZGVmYXVsdDtcblxuJHRhYmxlLWNhcHRpb24tY29sb3I6ICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG5cbiR0YWJsZS1iZy1zY2FsZTogICAgICAgICAgICAgIC04MCUgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRhYmxlLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGFibGUtbG9vcFxuJHRhYmxlLXZhcmlhbnRzOiAoXG4gIFwicHJpbWFyeVwiOiAgICBzaGlmdC1jb2xvcigkcHJpbWFyeSwgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJzZWNvbmRhcnlcIjogIHNoaWZ0LWNvbG9yKCRzZWNvbmRhcnksICR0YWJsZS1iZy1zY2FsZSksXG4gIFwic3VjY2Vzc1wiOiAgICBzaGlmdC1jb2xvcigkc3VjY2VzcywgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJpbmZvXCI6ICAgICAgIHNoaWZ0LWNvbG9yKCRpbmZvLCAkdGFibGUtYmctc2NhbGUpLFxuICBcIndhcm5pbmdcIjogICAgc2hpZnQtY29sb3IoJHdhcm5pbmcsICR0YWJsZS1iZy1zY2FsZSksXG4gIFwiZGFuZ2VyXCI6ICAgICBzaGlmdC1jb2xvcigkZGFuZ2VyLCAkdGFibGUtYmctc2NhbGUpLFxuICBcImxpZ2h0XCI6ICAgICAgJGxpZ2h0LFxuICBcImRhcmtcIjogICAgICAgJGRhcmssXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0YWJsZS1sb29wXG5cblxuLy8gQnV0dG9ucyArIEZvcm1zXG4vL1xuLy8gU2hhcmVkIHZhcmlhYmxlcyB0aGF0IGFyZSByZWFzc2lnbmVkIHRvIGAkaW5wdXQtYCBhbmQgYCRidG4tYCBzcGVjaWZpYyB2YXJpYWJsZXMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBpbnB1dC1idG4tdmFyaWFibGVzXG4kaW5wdXQtYnRuLXBhZGRpbmcteTogICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXg6ICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LWZhbWlseTogICAgICAgbnVsbCAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplOiAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQ6ICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWZvY3VzLXdpZHRoOiAgICAgICAgICRmb2N1cy1yaW5nLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1jb2xvci1vcGFjaXR5OiAkZm9jdXMtcmluZy1vcGFjaXR5ICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1jb2xvcjogICAgICAgICAkZm9jdXMtcmluZy1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtYmx1cjogICAgICAgICAgJGZvY3VzLXJpbmctYmx1ciAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdzogICAgJGZvY3VzLXJpbmctYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktc206ICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtc206ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbTogICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1sZzogICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LWxnOiAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZzogICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWJvcmRlci13aWR0aDogICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgaW5wdXQtYnRuLXZhcmlhYmxlc1xuXG5cbi8vIEJ1dHRvbnNcbi8vXG4vLyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCwgYW5kIGJvcmRlciBjb2xvci5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJ0bi12YXJpYWJsZXNcbiRidG4tY29sb3I6ICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy15OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYnRuLWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemU6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGJ0bi13aGl0ZS1zcGFjZTogICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gU2V0IHRvIGBub3dyYXBgIHRvIHByZXZlbnQgdGV4dCB3cmFwcGluZ1xuXG4kYnRuLXBhZGRpbmcteS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG5cbiRidG4tcGFkZGluZy15LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcblxuJGJ0bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kYnRuLWJveC1zaGFkb3c6ICAgICAgICAgICAgICBpbnNldCAwIDFweCAwIHJnYmEoJHdoaXRlLCAuMTUpLCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy13aWR0aDogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRidG4tZm9jdXMtYm94LXNoYWRvdzogICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRidG4tZGlzYWJsZWQtb3BhY2l0eTogICAgICAgIC42NSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJveC1zaGFkb3c6ICAgICAgIGluc2V0IDAgM3B4IDVweCByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG5cbiRidG4tbGluay1jb2xvcjogICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1saW5rLWNvbG9yKSAhZGVmYXVsdDtcbiRidG4tbGluay1ob3Zlci1jb2xvcjogICAgICAgIHZhcigtLSN7JHByZWZpeH1saW5rLWhvdmVyLWNvbG9yKSAhZGVmYXVsdDtcbiRidG4tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRidG4tbGluay1mb2N1cy1zaGFkb3ctcmdiOiAgIHRvLXJnYihtaXgoY29sb3ItY29udHJhc3QoJGxpbmstY29sb3IpLCAkbGluay1jb2xvciwgMTUlKSkgIWRlZmF1bHQ7XG5cbi8vIEFsbG93cyBmb3IgY3VzdG9taXppbmcgYnV0dG9uIHJhZGl1cyBpbmRlcGVuZGVudGx5IGZyb20gZ2xvYmFsIGJvcmRlciByYWRpdXNcbiRidG4tYm9yZGVyLXJhZGl1czogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXNtKSAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnKSAhZGVmYXVsdDtcblxuJGJ0bi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kYnRuLWhvdmVyLWJnLXNoYWRlLWFtb3VudDogICAgICAgMTUlICFkZWZhdWx0O1xuJGJ0bi1ob3Zlci1iZy10aW50LWFtb3VudDogICAgICAgIDE1JSAhZGVmYXVsdDtcbiRidG4taG92ZXItYm9yZGVyLXNoYWRlLWFtb3VudDogICAyMCUgIWRlZmF1bHQ7XG4kYnRuLWhvdmVyLWJvcmRlci10aW50LWFtb3VudDogICAgMTAlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYmctc2hhZGUtYW1vdW50OiAgICAgIDIwJSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJnLXRpbnQtYW1vdW50OiAgICAgICAyMCUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3JkZXItc2hhZGUtYW1vdW50OiAgMjUlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm9yZGVyLXRpbnQtYW1vdW50OiAgIDEwJSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYnRuLXZhcmlhYmxlc1xuXG5cbi8vIEZvcm1zXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXRleHQtdmFyaWFibGVzXG4kZm9ybS10ZXh0LW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS10ZXh0LWZvbnQtc3R5bGU6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLXRleHQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXRleHQtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWxhYmVsLXZhcmlhYmxlc1xuJGZvcm0tbGFiZWwtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1mb250LXN0eWxlOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tbGFiZWwtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWlucHV0LXZhcmlhYmxlc1xuJGlucHV0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93LWluc2V0KSAhZGVmYXVsdDtcblxuJGlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1zbSkgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtbGcpICFkZWZhdWx0O1xuXG4kaW5wdXQtZm9jdXMtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIHRpbnQtY29sb3IoJGNvbXBvbmVudC1hY3RpdmUtYmcsIDUwJSkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kaW5wdXQtcGxhaW50ZXh0LWNvbG9yOiAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgY2FsYygjeyRpbnB1dC1ib3JkZXItd2lkdGh9ICogMikgIWRlZmF1bHQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbiRpbnB1dC1oZWlnaHQtaW5uZXI6ICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCAkaW5wdXQtcGFkZGluZy15ICogMikgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGY6ICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIC41ZW0sICRpbnB1dC1wYWRkaW5nLXkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyOiAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAuMjVlbSwgJGlucHV0LXBhZGRpbmcteSAqIC41KSAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15ICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXktc20gKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtbGc6ICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteS1sZyAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuXG4kaW5wdXQtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGZvcm0tY29sb3Itd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgIDNyZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0taW5wdXQtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWNoZWNrLXZhcmlhYmxlc1xuJGZvcm0tY2hlY2staW5wdXQtd2lkdGg6ICAgICAgICAgICAgICAgICAgMWVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbWluLWhlaWdodDogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1wYWRkaW5nLXN0YXJ0OiAgICAgICAgICAgICAgICAkZm9ybS1jaGVjay1pbnB1dC13aWR0aCArIC41ZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbGFiZWwtY29sb3I6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWxhYmVsLWN1cnNvcjogICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1hY3RpdmUtZmlsdGVyOiAgICAgICAgICBicmlnaHRuZXNzKDkwJSkgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWJvcmRlcjogICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgLjI1ZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1yYWRpby1ib3JkZXItcmFkaXVzOiAgICAgICAgICA1MCUgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1mb2N1cy1ib3JkZXI6ICAgICAgICAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGZvY3VzLXJpbmctYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1jb2xvcjogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYm9yZGVyLWNvbG9yOiAgICRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWltYWdlOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyMCAyMCc+PHBhdGggZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycgZD0nbTYgMTAgMyAzIDYtNicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLXJhZGlvLWNoZWNrZWQtYmctaW1hZ2U6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzInIGZpbGw9JyN7JGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtY29sb3I6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjogICAkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1pbWFnZTogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMjAgMjAnPjxwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzMnIGQ9J002IDEwaDgnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAuNSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWxhYmVsLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAkZm9ybS1jaGVjay1pbnB1dC1kaXNhYmxlZC1vcGFjaXR5ICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stYnRuLWNoZWNrLWRpc2FibGVkLW9wYWNpdHk6ICAgICRidG4tZGlzYWJsZWQtb3BhY2l0eSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi1lbmQ6ICAgIDFyZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tY2hlY2stdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXN3aXRjaC12YXJpYWJsZXNcbiRmb3JtLXN3aXRjaC1jb2xvcjogICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjI1KSAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC13aWR0aDogICAgICAgICAgICAgICAyZW0gIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtcGFkZGluZy1zdGFydDogICAgICAgJGZvcm0tc3dpdGNoLXdpZHRoICsgLjVlbSAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC1iZy1pbWFnZTogICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPSczJyBmaWxsPScjeyRmb3JtLXN3aXRjaC1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtYm9yZGVyLXJhZGl1czogICAgICAgJGZvcm0tc3dpdGNoLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLXRyYW5zaXRpb246ICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24gLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGZvcm0tc3dpdGNoLWZvY3VzLWNvbG9yOiAgICAgICAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtZm9jdXMtYmctaW1hZ2U6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skZm9ybS1zd2l0Y2gtZm9jdXMtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS1zd2l0Y2gtY2hlY2tlZC1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1pbWFnZTogICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skZm9ybS1zd2l0Y2gtY2hlY2tlZC1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1wb3NpdGlvbjogcmlnaHQgY2VudGVyICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXN3aXRjaC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGlucHV0LWdyb3VwLXZhcmlhYmxlc1xuJGlucHV0LWdyb3VwLWFkZG9uLXBhZGRpbmcteTogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tcGFkZGluZy14OiAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1mb250LXdlaWdodDogICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJnOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZykgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgaW5wdXQtZ3JvdXAtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXNlbGVjdC12YXJpYWJsZXNcbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXk6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtcGFkZGluZy14OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtZmFtaWx5OiAgICAgICAgICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZTogICAgICAgICAgICAgJGlucHV0LWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZzogICAgICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggKiAzICFkZWZhdWx0OyAvLyBFeHRyYSBwYWRkaW5nIGZvciBiYWNrZ3JvdW5kLWltYWdlXG4kZm9ybS1zZWxlY3QtZm9udC13ZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtY29sb3I6ICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYmc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZGlzYWJsZWQtY29sb3I6ICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJnOiAgICAgICAgICAgJGlucHV0LWRpc2FibGVkLWJnICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJvcmRlci1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1iZy1wb3NpdGlvbjogICAgICAgICAgIHJpZ2h0ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggY2VudGVyICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJnLXNpemU6ICAgICAgICAgICAgICAgMTZweCAxMnB4ICFkZWZhdWx0OyAvLyBJbiBwaXhlbHMgYmVjYXVzZSBpbWFnZSBkaW1lbnNpb25zXG4kZm9ybS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yOiAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtaW5kaWNhdG9yOiAgICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNic+PHBhdGggZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMicgZD0nbTIgNSA2IDYgNi02Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLWVuZDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteCAqIDIuNSArICRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uOiAgICBjZW50ZXIgcmlnaHQgJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTogICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1ib3JkZXItd2lkdGg6ICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1czogICAgICAgJGlucHV0LWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm94LXNoYWRvdzogICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3ctaW5zZXQpICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yOiAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb2N1cy13aWR0aDogICAgICAgICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdzogICAgMCAwIDAgJGZvcm0tc2VsZWN0LWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXktc206ICAgICAgICAkaW5wdXQtcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LXBhZGRpbmcteC1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9udC1zaXplLXNtOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzLXNtOiAgICAkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtcGFkZGluZy14LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb250LXNpemUtbGc6ICAgICAgICAkaW5wdXQtZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJvcmRlci1yYWRpdXMtbGc6ICAgICRpbnB1dC1ib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtdHJhbnNpdGlvbjogICAgICAgICAgJGlucHV0LXRyYW5zaXRpb24gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tc2VsZWN0LXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1yYW5nZS12YXJpYWJsZXNcbiRmb3JtLXJhbmdlLXRyYWNrLXdpZHRoOiAgICAgICAgICAxMDAlICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2staGVpZ2h0OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2stY3Vyc29yOiAgICAgICAgIHBvaW50ZXIgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1iZzogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzOiAgMXJlbSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWJveC1zaGFkb3c6ICAgICB2YXIoLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1pbnNldCkgIWRlZmF1bHQ7XG5cbiRmb3JtLXJhbmdlLXRodW1iLXdpZHRoOiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICRmb3JtLXJhbmdlLXRodW1iLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyOiAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIC4xcmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzogICAgICAgIDAgMCAwIDFweCAkYm9keS1iZywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOiAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0OyAvLyBGb3IgZm9jdXMgYm94IHNoYWRvdyBpc3N1ZSBpbiBFZGdlXG4kZm9ybS1yYW5nZS10aHVtYi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgdGludC1jb2xvcigkY29tcG9uZW50LWFjdGl2ZS1iZywgNzAlKSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLXRyYW5zaXRpb246ICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tcmFuZ2UtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWZpbGUtdmFyaWFibGVzXG4kZm9ybS1maWxlLWJ1dHRvbi1jb2xvcjogICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmlsZS1idXR0b24tYmc6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZykgIWRlZmF1bHQ7XG4kZm9ybS1maWxlLWJ1dHRvbi1ob3Zlci1iZzogICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tZmlsZS12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tZmxvYXRpbmctdmFyaWFibGVzXG4kZm9ybS1mbG9hdGluZy1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgYWRkKDMuNXJlbSwgJGlucHV0LWhlaWdodC1ib3JkZXIpICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctbGluZS1oZWlnaHQ6ICAgICAgICAgICAgIDEuMjUgIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteTogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy10OiAgICAgICAgIDEuNjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy1iOiAgICAgICAgIC42MjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1sYWJlbC1oZWlnaHQ6ICAgICAgICAgICAgMS41ZW0gIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1sYWJlbC1vcGFjaXR5OiAgICAgICAgICAgLjY1ICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctbGFiZWwtdHJhbnNmb3JtOiAgICAgICAgIHNjYWxlKC44NSkgdHJhbnNsYXRlWSgtLjVyZW0pIHRyYW5zbGF0ZVgoLjE1cmVtKSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWxhYmVsLWRpc2FibGVkLWNvbG9yOiAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy10cmFuc2l0aW9uOiAgICAgICAgICAgICAgb3BhY2l0eSAuMXMgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSAuMXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tZmxvYXRpbmctdmFyaWFibGVzXG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1mZWVkYmFjay12YXJpYWJsZXNcbiRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A6ICAgICAgICAgICRmb3JtLXRleHQtbWFyZ2luLXRvcCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZTogICAgICAgICAgICRmb3JtLXRleHQtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stZm9udC1zdHlsZTogICAgICAgICAgJGZvcm0tdGV4dC1mb250LXN0eWxlICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3I6ICAgICAgICAgJHN1Y2Nlc3MgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yOiAgICAgICAkZGFuZ2VyICFkZWZhdWx0O1xuXG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yOiAgICAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQ6ICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yfScgZD0nTTIuMyA2LjczLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yOiAgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZDogICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDEyIDEyJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9Jz48Y2lyY2xlIGN4PSc2JyBjeT0nNicgcj0nNC41Jy8+PHBhdGggc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgZD0nTTUuOCAzLjZoLjRMNiA2LjV6Jy8+PGNpcmNsZSBjeD0nNicgY3k9JzguMicgcj0nLjYnIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgc3Ryb2tlPSdub25lJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWZlZWRiYWNrLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS12YWxpZGF0aW9uLWNvbG9yc1xuJGZvcm0tdmFsaWQtY29sb3I6ICAgICAgICAgICAgICAgICAgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS12YWxpZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWludmFsaWQtY29sb3I6ICAgICAgICAgICAgICAgICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1pbnZhbGlkLWJvcmRlci1jb2xvcjogICAgICAgICAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXZhbGlkYXRpb24tY29sb3JzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXZhbGlkYXRpb24tc3RhdGVzXG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogKFxuICBcInZhbGlkXCI6IChcbiAgICBcImNvbG9yXCI6IHZhcigtLSN7JHByZWZpeH1mb3JtLXZhbGlkLWNvbG9yKSxcbiAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZCxcbiAgICBcInRvb2x0aXAtY29sb3JcIjogI2ZmZixcbiAgICBcInRvb2x0aXAtYmctY29sb3JcIjogdmFyKC0tI3skcHJlZml4fXN1Y2Nlc3MpLFxuICAgIFwiZm9jdXMtYm94LXNoYWRvd1wiOiAwIDAgJGlucHV0LWJ0bi1mb2N1cy1ibHVyICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKHZhcigtLSN7JHByZWZpeH1zdWNjZXNzLXJnYiksICRpbnB1dC1idG4tZm9jdXMtY29sb3Itb3BhY2l0eSksXG4gICAgXCJib3JkZXItY29sb3JcIjogdmFyKC0tI3skcHJlZml4fWZvcm0tdmFsaWQtYm9yZGVyLWNvbG9yKSxcbiAgKSxcbiAgXCJpbnZhbGlkXCI6IChcbiAgICBcImNvbG9yXCI6IHZhcigtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtY29sb3IpLFxuICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQsXG4gICAgXCJ0b29sdGlwLWNvbG9yXCI6ICNmZmYsXG4gICAgXCJ0b29sdGlwLWJnLWNvbG9yXCI6IHZhcigtLSN7JHByZWZpeH1kYW5nZXIpLFxuICAgIFwiZm9jdXMtYm94LXNoYWRvd1wiOiAwIDAgJGlucHV0LWJ0bi1mb2N1cy1ibHVyICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKHZhcigtLSN7JHByZWZpeH1kYW5nZXItcmdiKSwgJGlucHV0LWJ0bi1mb2N1cy1jb2xvci1vcGFjaXR5KSxcbiAgICBcImJvcmRlci1jb2xvclwiOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS1pbnZhbGlkLWJvcmRlci1jb2xvciksXG4gIClcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXNcblxuLy8gWi1pbmRleCBtYXN0ZXIgbGlzdFxuLy9cbi8vIFdhcm5pbmc6IEF2b2lkIGN1c3RvbWl6aW5nIHRoZXNlIHZhbHVlcy4gVGhleSdyZSB1c2VkIGZvciBhIGJpcmQncyBleWUgdmlld1xuLy8gb2YgY29tcG9uZW50cyBkZXBlbmRlbnQgb24gdGhlIHotYXhpcyBhbmQgYXJlIGRlc2lnbmVkIHRvIGFsbCB3b3JrIHRvZ2V0aGVyLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgemluZGV4LXN0YWNrXG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1zdGlja3k6ICAgICAgICAgICAgICAgICAgICAgMTAyMCAhZGVmYXVsdDtcbiR6aW5kZXgtZml4ZWQ6ICAgICAgICAgICAgICAgICAgICAgIDEwMzAgIWRlZmF1bHQ7XG4kemluZGV4LW9mZmNhbnZhcy1iYWNrZHJvcDogICAgICAgICAxMDQwICFkZWZhdWx0O1xuJHppbmRleC1vZmZjYW52YXM6ICAgICAgICAgICAgICAgICAgMTA0NSAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWwtYmFja2Ryb3A6ICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICAgICAgICAgICAxMDU1ICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgICAgICAgICAgIDEwODAgIWRlZmF1bHQ7XG4kemluZGV4LXRvYXN0OiAgICAgICAgICAgICAgICAgICAgICAxMDkwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB6aW5kZXgtc3RhY2tcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHppbmRleC1sZXZlbHMtbWFwXG4kemluZGV4LWxldmVsczogKFxuICBuMTogLTEsXG4gIDA6IDAsXG4gIDE6IDEsXG4gIDI6IDIsXG4gIDM6IDNcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHppbmRleC1sZXZlbHMtbWFwXG5cblxuLy8gTmF2c1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbmF2LXZhcmlhYmxlc1xuJG5hdi1saW5rLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRuYXYtbGluay1mb250LXdlaWdodDogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbmF2LWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1jb2xvcikgIWRlZmF1bHQ7XG4kbmF2LWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcikgIWRlZmF1bHQ7XG4kbmF2LWxpbmstdHJhbnNpdGlvbjogICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kbmF2LWxpbmstZm9jdXMtYm94LXNoYWRvdzogICAgICAgICAkZm9jdXMtcmluZy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgJG5hdi10YWJzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgIHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcikgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtdW5kZXJsaW5lLWdhcDogICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbmF2LXVuZGVybGluZS1ib3JkZXItd2lkdGg6ICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xuJG5hdi11bmRlcmxpbmUtbGluay1hY3RpdmUtY29sb3I6ICAgdmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbmF2LXZhcmlhYmxlc1xuXG5cbi8vIE5hdmJhclxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbmF2YmFyLXZhcmlhYmxlc1xuJG5hdmJhci1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItYnJhbmQtZm9udC1zaXplOiAgICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4vLyBDb21wdXRlIHRoZSBuYXZiYXItYnJhbmQgcGFkZGluZy15IHNvIHRoZSBuYXZiYXItYnJhbmQgd2lsbCBoYXZlIHRoZSBzYW1lIGhlaWdodCBhcyBuYXZiYXItdGV4dCBhbmQgbmF2LWxpbmtcbiRuYXYtbGluay1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJG5hdi1saW5rLXBhZGRpbmcteSAqIDIgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLWhlaWdodDogICAgICAgICAgICAgICAkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1wYWRkaW5nLXk6ICAgICAgICAgICAgKCRuYXYtbGluay1oZWlnaHQgLSAkbmF2YmFyLWJyYW5kLWhlaWdodCkgKiAuNSAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtbWFyZ2luLWVuZDogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXk6ICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1mb250LXNpemU6ICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1czogICAgICAkYnRuLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItZm9jdXMtd2lkdGg6ICAgICAgICAkYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLXRyYW5zaXRpb246ICAgICAgICAgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCAuNjUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjogICAgICAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgLjgpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I6ICAgICAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgMSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yOiAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCAuMykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWljb24tY29sb3I6ICAgICAgICAgICByZ2JhKCRib2R5LWNvbG9yLCAuNzUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWxpZ2h0LWljb24tY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I6IHJnYmEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksIC4xNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3I6ICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBuYXZiYXItdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItZGFyay12YXJpYWJsZXNcbiRuYXZiYXItZGFyay1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNTUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkd2hpdGUsIC43NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjI1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1pY29uLWNvbG9yOiAgICAgICAgICAgICRuYXZiYXItZGFyay1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmc6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDMwIDMwJz48cGF0aCBzdHJva2U9JyN7JG5hdmJhci1kYXJrLWljb24tY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjogIHJnYmEoJHdoaXRlLCAuMSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtY29sb3I6ICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLWRhcmstdmFyaWFibGVzXG5cblxuLy8gRHJvcGRvd25zXG4vL1xuLy8gRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZHJvcGRvd24tdmFyaWFibGVzXG4kZHJvcGRvd24tbWluLXdpZHRoOiAgICAgICAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1zcGFjZXI6ICAgICAgICAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZHJvcGRvd24tY29sb3I6ICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgY2FsYygjeyRkcm9wZG93bi1ib3JkZXItcmFkaXVzfSAtICN7JGRyb3Bkb3duLWJvcmRlci13aWR0aH0pICFkZWZhdWx0OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgICAgJGRyb3Bkb3duLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15OiAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93KSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgJGRyb3Bkb3duLWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktYmcpICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktY29sb3IpICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXk6ICAgICAgICAgICAkc3BhY2VyICogLjI1ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14OiAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgJGRyb3Bkb3duLXBhZGRpbmcteSAhZGVmYXVsdDtcbi8vIGZ1c3YtZGlzYWJsZVxuJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXkgJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wXG4vLyBmdXN2LWVuYWJsZVxuLy8gc2Nzcy1kb2NzLWVuZCBkcm9wZG93bi12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGRyb3Bkb3duLWRhcmstdmFyaWFibGVzXG4kZHJvcGRvd24tZGFyay1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1iZzogICAgICAgICAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1ib3JkZXItY29sb3I6ICAgICAgICAkZHJvcGRvd24tYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstZGl2aWRlci1iZzogICAgICAgICAgJGRyb3Bkb3duLWRpdmlkZXItYmcgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1ib3gtc2hhZG93OiAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1jb2xvcjogICAgICAgICAgJGRyb3Bkb3duLWRhcmstY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWNvbG9yOiAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWJnOiAgICAgICByZ2JhKCR3aGl0ZSwgLjE1KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstYWN0aXZlLWNvbG9yOiAgICRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstYWN0aXZlLWJnOiAgICAgICRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstZGlzYWJsZWQtY29sb3I6ICRncmF5LTUwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWhlYWRlci1jb2xvcjogICAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZHJvcGRvd24tZGFyay12YXJpYWJsZXNcblxuXG4vLyBQYWdpbmF0aW9uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwYWdpbmF0aW9uLXZhcmlhYmxlc1xuJHBhZ2luYXRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteDogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbTogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LWxnOiAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LWxnOiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb250LXNpemU6ICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1saW5rLWNvbG9yKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbWFyZ2luLXN0YXJ0OiAgICAgICAgICAgY2FsYygjeyRwYWdpbmF0aW9uLWJvcmRlci13aWR0aH0gKiAtMSkgIWRlZmF1bHQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4kcGFnaW5hdGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZm9jdXMtY29sb3I6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3IpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtYmc6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkZm9jdXMtcmluZy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTogICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3IpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXRlcnRpYXJ5LWJnKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjogICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0OyAvLyBUb2RvIGluIHY2OiByZW1vdmUgdGhpcz9cblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLXRyYW5zaXRpb246ICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtc206ICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXNtKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcGFnaW5hdGlvbi12YXJpYWJsZXNcblxuXG4vLyBQbGFjZWhvbGRlcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBsYWNlaG9sZGVyc1xuJHBsYWNlaG9sZGVyLW9wYWNpdHktbWF4OiAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kcGxhY2Vob2xkZXItb3BhY2l0eS1taW46ICAgICAgICAgICAuMiAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcGxhY2Vob2xkZXJzXG5cbi8vIENhcmRzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjYXJkLXZhcmlhYmxlc1xuJGNhcmQtc3BhY2VyLXk6ICAgICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kY2FyZC10aXRsZS1zcGFjZXIteTogICAgICAgICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kY2FyZC10aXRsZS1jb2xvcjogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtc3VidGl0bGUtY29sb3I6ICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvci10cmFuc2x1Y2VudCkgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kY2FyZC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgc3VidHJhY3QoJGNhcmQtYm9yZGVyLXJhZGl1cywgJGNhcmQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICRjYXJkLXNwYWNlci15ICogLjUgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtcGFkZGluZy14OiAgICAgICAgICAgICAgICAkY2FyZC1zcGFjZXIteCAhZGVmYXVsdDtcbiRjYXJkLWNhcC1iZzogICAgICAgICAgICAgICAgICAgICAgIHJnYmEodmFyKC0tI3skcHJlZml4fWJvZHktY29sb3ItcmdiKSwgLjAzKSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1jb2xvcjogICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6ICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kY2FyZC1ncm91cC1tYXJnaW46ICAgICAgICAgICAgICAgICAkZ3JpZC1ndXR0ZXItd2lkdGggKiAuNSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY2FyZC12YXJpYWJsZXNcblxuLy8gQWNjb3JkaW9uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBhY2NvcmRpb24tdmFyaWFibGVzXG4kYWNjb3JkaW9uLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGFjY29yZGlvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICBzdWJ0cmFjdCgkYWNjb3JkaW9uLWJvcmRlci1yYWRpdXMsICRhY2NvcmRpb24tYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAgICAgJGFjY29yZGlvbi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJvZHktcGFkZGluZy14OiAgICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1idXR0b24tcGFkZGluZy15OiAgICAgICAgICAgICAgJGFjY29yZGlvbi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWNvbG9yOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWJnOiAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYmcpICFkZWZhdWx0O1xuJGFjY29yZGlvbi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICAgJGJ0bi10cmFuc2l0aW9uLCBib3JkZXItcmFkaXVzIC4xNXMgZWFzZSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1wcmltYXJ5LWJnLXN1YnRsZSkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9cHJpbWFyeS10ZXh0LWVtcGhhc2lzKSAhZGVmYXVsdDtcblxuLy8gZnVzdi1kaXNhYmxlXG4kYWNjb3JkaW9uLWJ1dHRvbi1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjMuM1xuLy8gZnVzdi1lbmFibGVcbiRhY2NvcmRpb24tYnV0dG9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRidG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1pY29uLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pY29uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgJHByaW1hcnktdGV4dC1lbXBoYXNpcyAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIHRyYW5zZm9ybSAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWljb24tdHJhbnNmb3JtOiAgICAgICAgICAgICAgICByb3RhdGUoLTE4MGRlZykgIWRlZmF1bHQ7XG5cbiRhY2NvcmRpb24tYnV0dG9uLWljb246ICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skYWNjb3JkaW9uLWljb24tY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnPjxwYXRoIGQ9J00yIDVMOCAxMUwxNCA1Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWljb246ICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRhY2NvcmRpb24taWNvbi1hY3RpdmUtY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnPjxwYXRoIGQ9J00yIDVMOCAxMUwxNCA1Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBhY2NvcmRpb24tdmFyaWFibGVzXG5cbi8vIFRvb2x0aXBzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0b29sdGlwLXZhcmlhYmxlc1xuJHRvb2x0aXAtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuJHRvb2x0aXAtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJHRvb2x0aXAtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yKSAhZGVmYXVsdDtcbiR0b29sdGlwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgJHNwYWNlciAqIC4yNSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiR0b29sdGlwLW1hcmdpbjogICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIFRPRE86IHJlbW92ZSB0aGlzIGluIHY2XG5cbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIC44cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XG4vLyBmdXN2LWRpc2FibGVcbiR0b29sdGlwLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gQm9vdHN0cmFwIDUuMi4wIGZvciBDU1MgdmFyaWFibGVzXG4vLyBmdXN2LWVuYWJsZVxuLy8gc2Nzcy1kb2NzLWVuZCB0b29sdGlwLXZhcmlhYmxlc1xuXG4vLyBGb3JtIHRvb2x0aXBzIG11c3QgY29tZSBhZnRlciByZWd1bGFyIHRvb2x0aXBzXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdG9vbHRpcC1mZWVkYmFjay12YXJpYWJsZXNcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15OiAgICAgJHRvb2x0aXAtcGFkZGluZy15ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZTogICAgICR0b29sdGlwLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ6ICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eTogICAgICAgJHRvb2x0aXAtb3BhY2l0eSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1czogJHRvb2x0aXAtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdG9vbHRpcC1mZWVkYmFjay12YXJpYWJsZXNcblxuXG4vLyBQb3BvdmVyc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcG9wb3Zlci12YXJpYWJsZXNcbiRwb3BvdmVyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kcG9wb3Zlci1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyNzZweCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvci10cmFuc2x1Y2VudCkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1sZykgIWRlZmF1bHQ7XG4kcG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICBjYWxjKCN7JHBvcG92ZXItYm9yZGVyLXJhZGl1c30gLSAjeyRwb3BvdmVyLWJvcmRlci13aWR0aH0pICFkZWZhdWx0OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuJHBvcG92ZXItYm94LXNoYWRvdzogICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3cpICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1oZWFkZXItZm9udC1zaXplOiAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItYmc6ICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICRoZWFkaW5ncy1jb2xvciAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJHBvcG92ZXItYm9keS1jb2xvcjogICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXk6ICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy14OiAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcG9wb3Zlci12YXJpYWJsZXNcblxuLy8gZnVzdi1kaXNhYmxlXG4vLyBEZXByZWNhdGVkIGluIEJvb3RzdHJhcCA1LjIuMCBmb3IgQ1NTIHZhcmlhYmxlc1xuJHBvcG92ZXItYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgJHBvcG92ZXItYmcgIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjogICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbi8vIGZ1c3YtZW5hYmxlXG5cblxuLy8gVG9hc3RzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0b2FzdC12YXJpYWJsZXNcbiR0b2FzdC1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAgIDM1MHB4ICFkZWZhdWx0O1xuJHRvYXN0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHRvYXN0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAuODc1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgICAgICAgIHJnYmEodmFyKC0tI3skcHJlZml4fWJvZHktYmctcmdiKSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvci10cmFuc2x1Y2VudCkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kdG9hc3QtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym94LXNoYWRvdykgIWRlZmF1bHQ7XG4kdG9hc3Qtc3BhY2luZzogICAgICAgICAgICAgICAgICAgICAkY29udGFpbmVyLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuJHRvYXN0LWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3I6ICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1ib2R5LWJnLXJnYiksIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkdG9hc3QtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0b2FzdC12YXJpYWJsZXNcblxuXG4vLyBCYWRnZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJhZGdlLXZhcmlhYmxlc1xuJGJhZGdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgLjc1ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRiYWRnZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC4zNWVtICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgLjY1ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJhZGdlLXZhcmlhYmxlc1xuXG5cbi8vIE1vZGFsc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbW9kYWwtdmFyaWFibGVzXG4kbW9kYWwtaW5uZXItcGFkZGluZzogICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVuOiAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLWRpYWxvZy1tYXJnaW46ICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwOiAgICAgICAxLjc1cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJG1vZGFsLWNvbnRlbnQtY29sb3I6ICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJnOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoOiAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzOiAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1sZykgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzOiBzdWJ0cmFjdCgkbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzLCAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14czogICAgICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3ctc20pICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cDogICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3cpICFkZWZhdWx0O1xuXG4kbW9kYWwtYmFja2Ryb3AtYmc6ICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgICAgICAgICAuNSAhZGVmYXVsdDtcblxuJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgICAkbW9kYWwtaW5uZXItcGFkZGluZyAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAgICRtb2RhbC1pbm5lci1wYWRkaW5nICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgICAgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7IC8vIEtlZXAgdGhpcyBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcblxuJG1vZGFsLWZvb3Rlci1iZzogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGg6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgICAgICAgNTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICAgICAgICA4MDBweCAhZGVmYXVsdDtcbiRtb2RhbC14bDogICAgICAgICAgICAgICAgICAgICAgICAgIDExNDBweCAhZGVmYXVsdDtcblxuJG1vZGFsLWZhZGUtdHJhbnNmb3JtOiAgICAgICAgICAgICAgdHJhbnNsYXRlKDAsIC01MHB4KSAhZGVmYXVsdDtcbiRtb2RhbC1zaG93LXRyYW5zZm9ybTogICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kbW9kYWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0ICFkZWZhdWx0O1xuJG1vZGFsLXNjYWxlLXRyYW5zZm9ybTogICAgICAgICAgICAgc2NhbGUoMS4wMikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG1vZGFsLXZhcmlhYmxlc1xuXG5cbi8vIEFsZXJ0c1xuLy9cbi8vIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYWxlcnQtdmFyaWFibGVzXG4kYWxlcnQtcGFkZGluZy15OiAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kYWxlcnQtcGFkZGluZy14OiAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kYWxlcnQtbWFyZ2luLWJvdHRvbTogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGFsZXJ0LWRpc21pc3NpYmxlLXBhZGRpbmctcjogICAkYWxlcnQtcGFkZGluZy14ICogMyAhZGVmYXVsdDsgLy8gM3ggY292ZXJzIHdpZHRoIG9mIHggcGx1cyBkZWZhdWx0IHBhZGRpbmcgb24gZWl0aGVyIHNpZGVcbi8vIHNjc3MtZG9jcy1lbmQgYWxlcnQtdmFyaWFibGVzXG5cbi8vIGZ1c3YtZGlzYWJsZVxuJGFsZXJ0LWJnLXNjYWxlOiAgICAgICAgICAgICAgICAtODAlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMCwgdG8gYmUgcmVtb3ZlZCBpbiB2NlxuJGFsZXJ0LWJvcmRlci1zY2FsZTogICAgICAgICAgICAtNzAlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMCwgdG8gYmUgcmVtb3ZlZCBpbiB2NlxuJGFsZXJ0LWNvbG9yLXNjYWxlOiAgICAgICAgICAgICA0MCUgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wLCB0byBiZSByZW1vdmVkIGluIHY2XG4vLyBmdXN2LWVuYWJsZVxuXG4vLyBQcm9ncmVzcyBiYXJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwcm9ncmVzcy12YXJpYWJsZXNcbiRwcm9ncmVzcy1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuNzUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93LWluc2V0KSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICAgICAgICRwcmltYXJ5ICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nOiAgICAgMXMgbGluZWFyIGluZmluaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci10cmFuc2l0aW9uOiAgICAgICAgICAgd2lkdGggLjZzIGVhc2UgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHByb2dyZXNzLXZhcmlhYmxlc1xuXG5cbi8vIExpc3QgZ3JvdXBcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGxpc3QtZ3JvdXAtdmFyaWFibGVzXG4kbGlzdC1ncm91cC1jb2xvcjogICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1iZzogICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItY29sb3I6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteTogICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDogICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuLy8gZnVzdi1kaXNhYmxlXG4kbGlzdC1ncm91cC1pdGVtLWJnLXNjYWxlOiAgICAgICAgICAtODAlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjMuMFxuJGxpc3QtZ3JvdXAtaXRlbS1jb2xvci1zY2FsZTogICAgICAgNDAlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjMuMFxuLy8gZnVzdi1lbmFibGVcblxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXRlcnRpYXJ5LWJnKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJGxpc3QtZ3JvdXAtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yOiAgICAgdmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yKSAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjogICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGxpc3QtZ3JvdXAtdmFyaWFibGVzXG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGh1bWJuYWlsLXZhcmlhYmxlc1xuJHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRodW1ibmFpbC1iZzogICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1jb2xvcjogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm94LXNoYWRvdzogICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93LXNtKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGh1bWJuYWlsLXZhcmlhYmxlc1xuXG5cbi8vIEZpZ3VyZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZpZ3VyZS12YXJpYWJsZXNcbiRmaWd1cmUtY2FwdGlvbi1mb250LXNpemU6ICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZmlndXJlLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZmlndXJlLXZhcmlhYmxlc1xuXG5cbi8vIEJyZWFkY3J1bWJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBicmVhZGNydW1iLXZhcmlhYmxlc1xuJGJyZWFkY3J1bWItZm9udC1zaXplOiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmcteTogICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXg6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tOiAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyOiAgICAgICAgICAgICAgICBxdW90ZShcIi9cIikgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLWZsaXBwZWQ6ICAgICAgICAkYnJlYWRjcnVtYi1kaXZpZGVyICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYnJlYWRjcnVtYi12YXJpYWJsZXNcblxuLy8gQ2Fyb3VzZWxcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcm91c2VsLXZhcmlhYmxlc1xuJGNhcm91c2VsLWNvbnRyb2wtY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1ob3Zlci1vcGFjaXR5OiAgICAgLjkgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uOiAgICAgICAgb3BhY2l0eSAuMTVzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg6ICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0OiAxMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3Itb3BhY2l0eTogICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1vcGFjaXR5OiAgMSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbjogICAgICBvcGFjaXR5IC42cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY2FwdGlvbi13aWR0aDogICAgICAgICAgICAgNzAlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLXBhZGRpbmcteTogICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tc3BhY2VyOiAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg6ICAgICAgICAycmVtICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9Jz48cGF0aCBkPSdNMTEuMzU0IDEuNjQ2YS41LjUgMCAwIDEgMCAuNzA4TDUuNzA3IDhsNS42NDcgNS42NDZhLjUuNSAwIDAgMS0uNzA4LjcwOGwtNi02YS41LjUgMCAwIDEgMC0uNzA4bDYtNmEuNS41IDAgMCAxIC43MDggMHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9Jz48cGF0aCBkPSdNNC42NDYgMS42NDZhLjUuNSAwIDAgMSAuNzA4IDBsNiA2YS41LjUgMCAwIDEgMCAuNzA4bC02IDZhLjUuNSAwIDAgMS0uNzA4LS43MDhMMTAuMjkzIDggNC42NDYgMi4zNTRhLjUuNSAwIDAgMSAwLS43MDh6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbjogICAgICAgLjZzICFkZWZhdWx0O1xuJGNhcm91c2VsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAkY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbiBlYXNlLWluLW91dCAhZGVmYXVsdDsgLy8gRGVmaW5lIHRyYW5zZm9ybSB0cmFuc2l0aW9uIGZpcnN0IGlmIHVzaW5nIG11bHRpcGxlIHRyYW5zaXRpb25zIChlLmcuLCBgdHJhbnNmb3JtIDJzIGVhc2UsIG9wYWNpdHkgLjVzIGVhc2Utb3V0YClcbi8vIHNjc3MtZG9jcy1lbmQgY2Fyb3VzZWwtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjYXJvdXNlbC1kYXJrLXZhcmlhYmxlc1xuJGNhcm91c2VsLWRhcmstaW5kaWNhdG9yLWFjdGl2ZS1iZzogICRibGFjayAhZGVmYXVsdDtcbiRjYXJvdXNlbC1kYXJrLWNhcHRpb24tY29sb3I6ICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtZGFyay1jb250cm9sLWljb24tZmlsdGVyOiAgaW52ZXJ0KDEpIGdyYXlzY2FsZSgxMDApICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjYXJvdXNlbC1kYXJrLXZhcmlhYmxlc1xuXG5cbi8vIFNwaW5uZXJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBzcGlubmVyLXZhcmlhYmxlc1xuJHNwaW5uZXItd2lkdGg6ICAgICAgICAgICAycmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0OiAgICAgICAgICAkc3Bpbm5lci13aWR0aCAhZGVmYXVsdDtcbiRzcGlubmVyLXZlcnRpY2FsLWFsaWduOiAgLS4xMjVlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aDogICAgLjI1ZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1hbmltYXRpb24tc3BlZWQ6IC43NXMgIWRlZmF1bHQ7XG5cbiRzcGlubmVyLXdpZHRoLXNtOiAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodC1zbTogICAgICAgJHNwaW5uZXItd2lkdGgtc20gIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGgtc206IC4yZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNwaW5uZXItdmFyaWFibGVzXG5cblxuLy8gQ2xvc2VcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNsb3NlLXZhcmlhYmxlc1xuJGJ0bi1jbG9zZS13aWR0aDogICAgICAgICAgICAxZW0gIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWhlaWdodDogICAgICAgICAgICRidG4tY2xvc2Utd2lkdGggIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLXBhZGRpbmcteDogICAgICAgIC4yNWVtICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1wYWRkaW5nLXk6ICAgICAgICAkYnRuLWNsb3NlLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRidG4tY2xvc2UtY29sb3I6ICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1iZzogICAgICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skYnRuLWNsb3NlLWNvbG9yfSc+PHBhdGggZD0nTS4yOTMuMjkzYTEgMSAwIDAgMSAxLjQxNCAwTDggNi41ODYgMTQuMjkzLjI5M2ExIDEgMCAxIDEgMS40MTQgMS40MTRMOS40MTQgOGw2LjI5MyA2LjI5M2ExIDEgMCAwIDEtMS40MTQgMS40MTRMOCA5LjQxNGwtNi4yOTMgNi4yOTNhMSAxIDAgMCAxLTEuNDE0LTEuNDE0TDYuNTg2IDggLjI5MyAxLjcwN2ExIDEgMCAwIDEgMC0xLjQxNHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWZvY3VzLXNoYWRvdzogICAgICRmb2N1cy1yaW5nLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLW9wYWNpdHk6ICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1ob3Zlci1vcGFjaXR5OiAgICAuNzUgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWZvY3VzLW9wYWNpdHk6ICAgIDEgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWRpc2FibGVkLW9wYWNpdHk6IC4yNSAhZGVmYXVsdDtcbiRidG4tY2xvc2Utd2hpdGUtZmlsdGVyOiAgICAgaW52ZXJ0KDEpIGdyYXlzY2FsZSgxMDAlKSBicmlnaHRuZXNzKDIwMCUpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjbG9zZS12YXJpYWJsZXNcblxuXG4vLyBPZmZjYW52YXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG9mZmNhbnZhcy12YXJpYWJsZXNcbiRvZmZjYW52YXMtcGFkZGluZy15OiAgICAgICAgICAgICAgICRtb2RhbC1pbm5lci1wYWRkaW5nICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWhvcml6b250YWwtd2lkdGg6ICAgICAgICA0MDBweCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtdmVydGljYWwtaGVpZ2h0OiAgICAgICAgIDMwdmggIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAuM3MgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJvcmRlci13aWR0aDogICAgICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAkbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJnLWNvbG9yOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWNvbG9yOiAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1iYWNrZHJvcC1iZzogICAgICAgICAgICAgJG1vZGFsLWJhY2tkcm9wLWJnICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1iYWNrZHJvcC1vcGFjaXR5OiAgICAgICAgJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG9mZmNhbnZhcy12YXJpYWJsZXNcblxuLy8gQ29kZVxuXG4kY29kZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgJHBpbmsgIWRlZmF1bHQ7XG5cbiRrYmQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgIC4xODc1cmVtICFkZWZhdWx0O1xuJGtiZC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRrYmQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICRjb2RlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wLCByZW1vdmluZyBpbiB2NlxuXG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG5AaW1wb3J0IFwidmFyaWFibGVzLWRhcmtcIjsgLy8gVE9ETzogY2FuIGJlIHJlbW92ZWQgc2FmZWx5IGluIHY2LCBvbmx5IGhlcmUgdG8gYXZvaWQgYnJlYWtpbmcgY2hhbmdlcyBpbiB2NS4zXG4iLCIvLyBEYXJrIGNvbG9yIG1vZGUgdmFyaWFibGVzXG4vL1xuLy8gQ3VzdG9tIHZhcmlhYmxlcyBmb3IgdGhlIGBbZGF0YS1icy10aGVtZT1cImRhcmtcIl1gIHRoZW1lLiBVc2UgdGhpcyBhcyBhIHN0YXJ0aW5nIHBvaW50IGZvciB5b3VyIG93biBjdXN0b20gY29sb3IgbW9kZXMgYnkgY3JlYXRpbmcgYSBuZXcgdGhlbWUtc3BlY2lmaWMgZmlsZSBsaWtlIGBfdmFyaWFibGVzLWRhcmsuc2Nzc2AgYW5kIGFkZGluZyB0aGUgdmFyaWFibGVzIHlvdSBuZWVkLlxuXG4vL1xuLy8gR2xvYmFsIGNvbG9yc1xuLy9cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNhc3MtZGFyay1tb2RlLXZhcnNcbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS10ZXh0LWRhcmstdmFyaWFibGVzXG4kcHJpbWFyeS10ZXh0LWVtcGhhc2lzLWRhcms6ICAgICAgICB0aW50LWNvbG9yKCRwcmltYXJ5LCA0MCUpICFkZWZhdWx0O1xuJHNlY29uZGFyeS10ZXh0LWVtcGhhc2lzLWRhcms6ICAgICAgdGludC1jb2xvcigkc2Vjb25kYXJ5LCA0MCUpICFkZWZhdWx0O1xuJHN1Y2Nlc3MtdGV4dC1lbXBoYXNpcy1kYXJrOiAgICAgICAgdGludC1jb2xvcigkc3VjY2VzcywgNDAlKSAhZGVmYXVsdDtcbiRpbmZvLXRleHQtZW1waGFzaXMtZGFyazogICAgICAgICAgIHRpbnQtY29sb3IoJGluZm8sIDQwJSkgIWRlZmF1bHQ7XG4kd2FybmluZy10ZXh0LWVtcGhhc2lzLWRhcms6ICAgICAgICB0aW50LWNvbG9yKCR3YXJuaW5nLCA0MCUpICFkZWZhdWx0O1xuJGRhbmdlci10ZXh0LWVtcGhhc2lzLWRhcms6ICAgICAgICAgdGludC1jb2xvcigkZGFuZ2VyLCA0MCUpICFkZWZhdWx0O1xuJGxpZ2h0LXRleHQtZW1waGFzaXMtZGFyazogICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGRhcmstdGV4dC1lbXBoYXNpcy1kYXJrOiAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS10ZXh0LWRhcmstdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1iZy1zdWJ0bGUtZGFyay12YXJpYWJsZXNcbiRwcmltYXJ5LWJnLXN1YnRsZS1kYXJrOiAgICAgICAgICAgIHNoYWRlLWNvbG9yKCRwcmltYXJ5LCA4MCUpICFkZWZhdWx0O1xuJHNlY29uZGFyeS1iZy1zdWJ0bGUtZGFyazogICAgICAgICAgc2hhZGUtY29sb3IoJHNlY29uZGFyeSwgODAlKSAhZGVmYXVsdDtcbiRzdWNjZXNzLWJnLXN1YnRsZS1kYXJrOiAgICAgICAgICAgIHNoYWRlLWNvbG9yKCRzdWNjZXNzLCA4MCUpICFkZWZhdWx0O1xuJGluZm8tYmctc3VidGxlLWRhcms6ICAgICAgICAgICAgICAgc2hhZGUtY29sb3IoJGluZm8sIDgwJSkgIWRlZmF1bHQ7XG4kd2FybmluZy1iZy1zdWJ0bGUtZGFyazogICAgICAgICAgICBzaGFkZS1jb2xvcigkd2FybmluZywgODAlKSAhZGVmYXVsdDtcbiRkYW5nZXItYmctc3VidGxlLWRhcms6ICAgICAgICAgICAgIHNoYWRlLWNvbG9yKCRkYW5nZXIsIDgwJSkgIWRlZmF1bHQ7XG4kbGlnaHQtYmctc3VidGxlLWRhcms6ICAgICAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kZGFyay1iZy1zdWJ0bGUtZGFyazogICAgICAgICAgICAgICBtaXgoJGdyYXktODAwLCAkYmxhY2spICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1iZy1zdWJ0bGUtZGFyay12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWJvcmRlci1zdWJ0bGUtZGFyay12YXJpYWJsZXNcbiRwcmltYXJ5LWJvcmRlci1zdWJ0bGUtZGFyazogICAgICAgIHNoYWRlLWNvbG9yKCRwcmltYXJ5LCA0MCUpICFkZWZhdWx0O1xuJHNlY29uZGFyeS1ib3JkZXItc3VidGxlLWRhcms6ICAgICAgc2hhZGUtY29sb3IoJHNlY29uZGFyeSwgNDAlKSAhZGVmYXVsdDtcbiRzdWNjZXNzLWJvcmRlci1zdWJ0bGUtZGFyazogICAgICAgIHNoYWRlLWNvbG9yKCRzdWNjZXNzLCA0MCUpICFkZWZhdWx0O1xuJGluZm8tYm9yZGVyLXN1YnRsZS1kYXJrOiAgICAgICAgICAgc2hhZGUtY29sb3IoJGluZm8sIDQwJSkgIWRlZmF1bHQ7XG4kd2FybmluZy1ib3JkZXItc3VidGxlLWRhcms6ICAgICAgICBzaGFkZS1jb2xvcigkd2FybmluZywgNDAlKSAhZGVmYXVsdDtcbiRkYW5nZXItYm9yZGVyLXN1YnRsZS1kYXJrOiAgICAgICAgIHNoYWRlLWNvbG9yKCRkYW5nZXIsIDQwJSkgIWRlZmF1bHQ7XG4kbGlnaHQtYm9yZGVyLXN1YnRsZS1kYXJrOiAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kZGFyay1ib3JkZXItc3VidGxlLWRhcms6ICAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWJvcmRlci1zdWJ0bGUtZGFyay12YXJpYWJsZXNcblxuJGJvZHktY29sb3ItZGFyazogICAgICAgICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJGJvZHktYmctZGFyazogICAgICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGJvZHktc2Vjb25kYXJ5LWNvbG9yLWRhcms6ICAgICAgICAgcmdiYSgkYm9keS1jb2xvci1kYXJrLCAuNzUpICFkZWZhdWx0O1xuJGJvZHktc2Vjb25kYXJ5LWJnLWRhcms6ICAgICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJGJvZHktdGVydGlhcnktY29sb3ItZGFyazogICAgICAgICAgcmdiYSgkYm9keS1jb2xvci1kYXJrLCAuNSkgIWRlZmF1bHQ7XG4kYm9keS10ZXJ0aWFyeS1iZy1kYXJrOiAgICAgICAgICAgICBtaXgoJGdyYXktODAwLCAkZ3JheS05MDAsIDUwJSkgIWRlZmF1bHQ7XG4kYm9keS1lbXBoYXNpcy1jb2xvci1kYXJrOiAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yLWRhcms6ICAgICAgICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yLXRyYW5zbHVjZW50LWRhcms6ICAgICByZ2JhKCR3aGl0ZSwgLjE1KSAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvci1kYXJrOiAgICAgICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kbGluay1jb2xvci1kYXJrOiAgICAgICAgICAgICAgICAgICB0aW50LWNvbG9yKCRwcmltYXJ5LCA0MCUpICFkZWZhdWx0O1xuJGxpbmstaG92ZXItY29sb3ItZGFyazogICAgICAgICAgICAgc2hpZnQtY29sb3IoJGxpbmstY29sb3ItZGFyaywgLSRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UpICFkZWZhdWx0O1xuJGNvZGUtY29sb3ItZGFyazogICAgICAgICAgICAgICAgICAgdGludC1jb2xvcigkY29kZS1jb2xvciwgNDAlKSAhZGVmYXVsdDtcbiRtYXJrLWNvbG9yLWRhcms6ICAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yLWRhcmsgIWRlZmF1bHQ7XG4kbWFyay1iZy1kYXJrOiAgICAgICAgICAgICAgICAgICAgICAkeWVsbG93LTgwMCAhZGVmYXVsdDtcblxuXG4vL1xuLy8gRm9ybXNcbi8vXG5cbiRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItY29sb3ItZGFyazogICRib2R5LWNvbG9yLWRhcmsgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtaW5kaWNhdG9yLWRhcms6ICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNic+PHBhdGggZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItY29sb3ItZGFya30nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdtMiA1IDYgNiA2LTYnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLXN3aXRjaC1jb2xvci1kYXJrOiAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuMjUpICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWJnLWltYWdlLWRhcms6ICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skZm9ybS1zd2l0Y2gtY29sb3ItZGFya30nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXZhbGlkYXRpb24tY29sb3JzLWRhcmtcbiRmb3JtLXZhbGlkLWNvbG9yLWRhcms6ICAgICAgICAgICAgICRncmVlbi0zMDAgIWRlZmF1bHQ7XG4kZm9ybS12YWxpZC1ib3JkZXItY29sb3ItZGFyazogICAgICAkZ3JlZW4tMzAwICFkZWZhdWx0O1xuJGZvcm0taW52YWxpZC1jb2xvci1kYXJrOiAgICAgICAgICAgJHJlZC0zMDAgIWRlZmF1bHQ7XG4kZm9ybS1pbnZhbGlkLWJvcmRlci1jb2xvci1kYXJrOiAgICAkcmVkLTMwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS12YWxpZGF0aW9uLWNvbG9ycy1kYXJrXG5cblxuLy9cbi8vIEFjY29yZGlvblxuLy9cblxuJGFjY29yZGlvbi1pY29uLWNvbG9yLWRhcms6ICAgICAgICAgJHByaW1hcnktdGV4dC1lbXBoYXNpcy1kYXJrICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pY29uLWFjdGl2ZS1jb2xvci1kYXJrOiAgJHByaW1hcnktdGV4dC1lbXBoYXNpcy1kYXJrICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWJ1dHRvbi1pY29uLWRhcms6ICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGFjY29yZGlvbi1pY29uLWNvbG9yLWRhcmt9Jz48cGF0aCBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGQ9J00xLjY0NiA0LjY0NmEuNS41IDAgMCAxIC43MDggMEw4IDEwLjI5M2w1LjY0Ni01LjY0N2EuNS41IDAgMCAxIC43MDguNzA4bC02IDZhLjUuNSAwIDAgMS0uNzA4IDBsLTYtNmEuNS41IDAgMCAxIDAtLjcwOHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtaWNvbi1kYXJrOiAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGFjY29yZGlvbi1pY29uLWFjdGl2ZS1jb2xvci1kYXJrfSc+PHBhdGggZmlsbC1ydWxlPSdldmVub2RkJyBkPSdNMS42NDYgNC42NDZhLjUuNSAwIDAgMSAuNzA4IDBMOCAxMC4yOTNsNS42NDYtNS42NDdhLjUuNSAwIDAgMSAuNzA4LjcwOGwtNiA2YS41LjUgMCAwIDEtLjcwOCAwbC02LTZhLjUuNSAwIDAgMSAwLS43MDh6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBzYXNzLWRhcmstbW9kZS12YXJzXG4iLCIvLyBSZS1hc3NpZ25lZCBtYXBzXG4vL1xuLy8gUGxhY2VkIGhlcmUgc28gdGhhdCBvdGhlcnMgY2FuIG92ZXJyaWRlIHRoZSBkZWZhdWx0IFNhc3MgbWFwcyBhbmQgc2VlIGF1dG9tYXRpYyB1cGRhdGVzIHRvIHV0aWxpdGllcyBhbmQgbW9yZS5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWNvbG9ycy1yZ2JcbiR0aGVtZS1jb2xvcnMtcmdiOiBtYXAtbG9vcCgkdGhlbWUtY29sb3JzLCB0by1yZ2IsIFwiJHZhbHVlXCIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1jb2xvcnMtcmdiXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS10ZXh0LW1hcFxuJHRoZW1lLWNvbG9ycy10ZXh0OiAoXG4gIFwicHJpbWFyeVwiOiAkcHJpbWFyeS10ZXh0LWVtcGhhc2lzLFxuICBcInNlY29uZGFyeVwiOiAkc2Vjb25kYXJ5LXRleHQtZW1waGFzaXMsXG4gIFwic3VjY2Vzc1wiOiAkc3VjY2Vzcy10ZXh0LWVtcGhhc2lzLFxuICBcImluZm9cIjogJGluZm8tdGV4dC1lbXBoYXNpcyxcbiAgXCJ3YXJuaW5nXCI6ICR3YXJuaW5nLXRleHQtZW1waGFzaXMsXG4gIFwiZGFuZ2VyXCI6ICRkYW5nZXItdGV4dC1lbXBoYXNpcyxcbiAgXCJsaWdodFwiOiAkbGlnaHQtdGV4dC1lbXBoYXNpcyxcbiAgXCJkYXJrXCI6ICRkYXJrLXRleHQtZW1waGFzaXMsXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS10ZXh0LW1hcFxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtYmctc3VidGxlLW1hcFxuJHRoZW1lLWNvbG9ycy1iZy1zdWJ0bGU6IChcbiAgXCJwcmltYXJ5XCI6ICRwcmltYXJ5LWJnLXN1YnRsZSxcbiAgXCJzZWNvbmRhcnlcIjogJHNlY29uZGFyeS1iZy1zdWJ0bGUsXG4gIFwic3VjY2Vzc1wiOiAkc3VjY2Vzcy1iZy1zdWJ0bGUsXG4gIFwiaW5mb1wiOiAkaW5mby1iZy1zdWJ0bGUsXG4gIFwid2FybmluZ1wiOiAkd2FybmluZy1iZy1zdWJ0bGUsXG4gIFwiZGFuZ2VyXCI6ICRkYW5nZXItYmctc3VidGxlLFxuICBcImxpZ2h0XCI6ICRsaWdodC1iZy1zdWJ0bGUsXG4gIFwiZGFya1wiOiAkZGFyay1iZy1zdWJ0bGUsXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1iZy1zdWJ0bGUtbWFwXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1ib3JkZXItc3VidGxlLW1hcFxuJHRoZW1lLWNvbG9ycy1ib3JkZXItc3VidGxlOiAoXG4gIFwicHJpbWFyeVwiOiAkcHJpbWFyeS1ib3JkZXItc3VidGxlLFxuICBcInNlY29uZGFyeVwiOiAkc2Vjb25kYXJ5LWJvcmRlci1zdWJ0bGUsXG4gIFwic3VjY2Vzc1wiOiAkc3VjY2Vzcy1ib3JkZXItc3VidGxlLFxuICBcImluZm9cIjogJGluZm8tYm9yZGVyLXN1YnRsZSxcbiAgXCJ3YXJuaW5nXCI6ICR3YXJuaW5nLWJvcmRlci1zdWJ0bGUsXG4gIFwiZGFuZ2VyXCI6ICRkYW5nZXItYm9yZGVyLXN1YnRsZSxcbiAgXCJsaWdodFwiOiAkbGlnaHQtYm9yZGVyLXN1YnRsZSxcbiAgXCJkYXJrXCI6ICRkYXJrLWJvcmRlci1zdWJ0bGUsXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1ib3JkZXItc3VidGxlLW1hcFxuXG4kdGhlbWUtY29sb3JzLXRleHQtZGFyazogbnVsbCAhZGVmYXVsdDtcbiR0aGVtZS1jb2xvcnMtYmctc3VidGxlLWRhcms6IG51bGwgIWRlZmF1bHQ7XG4kdGhlbWUtY29sb3JzLWJvcmRlci1zdWJ0bGUtZGFyazogbnVsbCAhZGVmYXVsdDtcblxuQGlmICRlbmFibGUtZGFyay1tb2RlIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLXRleHQtZGFyay1tYXBcbiAgJHRoZW1lLWNvbG9ycy10ZXh0LWRhcms6IChcbiAgICBcInByaW1hcnlcIjogJHByaW1hcnktdGV4dC1lbXBoYXNpcy1kYXJrLFxuICAgIFwic2Vjb25kYXJ5XCI6ICRzZWNvbmRhcnktdGV4dC1lbXBoYXNpcy1kYXJrLFxuICAgIFwic3VjY2Vzc1wiOiAkc3VjY2Vzcy10ZXh0LWVtcGhhc2lzLWRhcmssXG4gICAgXCJpbmZvXCI6ICRpbmZvLXRleHQtZW1waGFzaXMtZGFyayxcbiAgICBcIndhcm5pbmdcIjogJHdhcm5pbmctdGV4dC1lbXBoYXNpcy1kYXJrLFxuICAgIFwiZGFuZ2VyXCI6ICRkYW5nZXItdGV4dC1lbXBoYXNpcy1kYXJrLFxuICAgIFwibGlnaHRcIjogJGxpZ2h0LXRleHQtZW1waGFzaXMtZGFyayxcbiAgICBcImRhcmtcIjogJGRhcmstdGV4dC1lbXBoYXNpcy1kYXJrLFxuICApICFkZWZhdWx0O1xuICAvLyBzY3NzLWRvY3MtZW5kIHRoZW1lLXRleHQtZGFyay1tYXBcblxuICAvLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtYmctc3VidGxlLWRhcmstbWFwXG4gICR0aGVtZS1jb2xvcnMtYmctc3VidGxlLWRhcms6IChcbiAgICBcInByaW1hcnlcIjogJHByaW1hcnktYmctc3VidGxlLWRhcmssXG4gICAgXCJzZWNvbmRhcnlcIjogJHNlY29uZGFyeS1iZy1zdWJ0bGUtZGFyayxcbiAgICBcInN1Y2Nlc3NcIjogJHN1Y2Nlc3MtYmctc3VidGxlLWRhcmssXG4gICAgXCJpbmZvXCI6ICRpbmZvLWJnLXN1YnRsZS1kYXJrLFxuICAgIFwid2FybmluZ1wiOiAkd2FybmluZy1iZy1zdWJ0bGUtZGFyayxcbiAgICBcImRhbmdlclwiOiAkZGFuZ2VyLWJnLXN1YnRsZS1kYXJrLFxuICAgIFwibGlnaHRcIjogJGxpZ2h0LWJnLXN1YnRsZS1kYXJrLFxuICAgIFwiZGFya1wiOiAkZGFyay1iZy1zdWJ0bGUtZGFyayxcbiAgKSAhZGVmYXVsdDtcbiAgLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1iZy1zdWJ0bGUtZGFyay1tYXBcblxuICAvLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtYm9yZGVyLXN1YnRsZS1kYXJrLW1hcFxuICAkdGhlbWUtY29sb3JzLWJvcmRlci1zdWJ0bGUtZGFyazogKFxuICAgIFwicHJpbWFyeVwiOiAkcHJpbWFyeS1ib3JkZXItc3VidGxlLWRhcmssXG4gICAgXCJzZWNvbmRhcnlcIjogJHNlY29uZGFyeS1ib3JkZXItc3VidGxlLWRhcmssXG4gICAgXCJzdWNjZXNzXCI6ICRzdWNjZXNzLWJvcmRlci1zdWJ0bGUtZGFyayxcbiAgICBcImluZm9cIjogJGluZm8tYm9yZGVyLXN1YnRsZS1kYXJrLFxuICAgIFwid2FybmluZ1wiOiAkd2FybmluZy1ib3JkZXItc3VidGxlLWRhcmssXG4gICAgXCJkYW5nZXJcIjogJGRhbmdlci1ib3JkZXItc3VidGxlLWRhcmssXG4gICAgXCJsaWdodFwiOiAkbGlnaHQtYm9yZGVyLXN1YnRsZS1kYXJrLFxuICAgIFwiZGFya1wiOiAkZGFyay1ib3JkZXItc3VidGxlLWRhcmssXG4gICkgIWRlZmF1bHQ7XG4gIC8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtYm9yZGVyLXN1YnRsZS1kYXJrLW1hcFxufVxuXG4vLyBVdGlsaXRpZXMgbWFwc1xuLy9cbi8vIEV4dGVuZHMgdGhlIGRlZmF1bHQgYCR0aGVtZS1jb2xvcnNgIG1hcHMgdG8gaGVscCBjcmVhdGUgb3VyIHV0aWxpdGllcy5cblxuLy8gQ29tZSB2Niwgd2UnbGwgZGUtZHVwZSB0aGVzZSB2YXJpYWJsZXMuIFVudGlsIHRoZW4sIGZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LCB3ZSBrZWVwIHRoZW0gdG8gcmVhc3NpZ24uXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbGl0aWVzLWNvbG9yc1xuJHV0aWxpdGllcy1jb2xvcnM6ICR0aGVtZS1jb2xvcnMtcmdiICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB1dGlsaXRpZXMtY29sb3JzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB1dGlsaXRpZXMtdGV4dC1jb2xvcnNcbiR1dGlsaXRpZXMtdGV4dDogbWFwLW1lcmdlKFxuICAkdXRpbGl0aWVzLWNvbG9ycyxcbiAgKFxuICAgIFwiYmxhY2tcIjogdG8tcmdiKCRibGFjayksXG4gICAgXCJ3aGl0ZVwiOiB0by1yZ2IoJHdoaXRlKSxcbiAgICBcImJvZHlcIjogdG8tcmdiKCRib2R5LWNvbG9yKVxuICApXG4pICFkZWZhdWx0O1xuJHV0aWxpdGllcy10ZXh0LWNvbG9yczogbWFwLWxvb3AoJHV0aWxpdGllcy10ZXh0LCByZ2JhLWNzcy12YXIsIFwiJGtleVwiLCBcInRleHRcIikgIWRlZmF1bHQ7XG5cbiR1dGlsaXRpZXMtdGV4dC1lbXBoYXNpcy1jb2xvcnM6IChcbiAgXCJwcmltYXJ5LWVtcGhhc2lzXCI6IHZhcigtLSN7JHByZWZpeH1wcmltYXJ5LXRleHQtZW1waGFzaXMpLFxuICBcInNlY29uZGFyeS1lbXBoYXNpc1wiOiB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LXRleHQtZW1waGFzaXMpLFxuICBcInN1Y2Nlc3MtZW1waGFzaXNcIjogdmFyKC0tI3skcHJlZml4fXN1Y2Nlc3MtdGV4dC1lbXBoYXNpcyksXG4gIFwiaW5mby1lbXBoYXNpc1wiOiB2YXIoLS0jeyRwcmVmaXh9aW5mby10ZXh0LWVtcGhhc2lzKSxcbiAgXCJ3YXJuaW5nLWVtcGhhc2lzXCI6IHZhcigtLSN7JHByZWZpeH13YXJuaW5nLXRleHQtZW1waGFzaXMpLFxuICBcImRhbmdlci1lbXBoYXNpc1wiOiB2YXIoLS0jeyRwcmVmaXh9ZGFuZ2VyLXRleHQtZW1waGFzaXMpLFxuICBcImxpZ2h0LWVtcGhhc2lzXCI6IHZhcigtLSN7JHByZWZpeH1saWdodC10ZXh0LWVtcGhhc2lzKSxcbiAgXCJkYXJrLWVtcGhhc2lzXCI6IHZhcigtLSN7JHByZWZpeH1kYXJrLXRleHQtZW1waGFzaXMpXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB1dGlsaXRpZXMtdGV4dC1jb2xvcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxpdGllcy1iZy1jb2xvcnNcbiR1dGlsaXRpZXMtYmc6IG1hcC1tZXJnZShcbiAgJHV0aWxpdGllcy1jb2xvcnMsXG4gIChcbiAgICBcImJsYWNrXCI6IHRvLXJnYigkYmxhY2spLFxuICAgIFwid2hpdGVcIjogdG8tcmdiKCR3aGl0ZSksXG4gICAgXCJib2R5XCI6IHRvLXJnYigkYm9keS1iZylcbiAgKVxuKSAhZGVmYXVsdDtcbiR1dGlsaXRpZXMtYmctY29sb3JzOiBtYXAtbG9vcCgkdXRpbGl0aWVzLWJnLCByZ2JhLWNzcy12YXIsIFwiJGtleVwiLCBcImJnXCIpICFkZWZhdWx0O1xuXG4kdXRpbGl0aWVzLWJnLXN1YnRsZTogKFxuICBcInByaW1hcnktc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH1wcmltYXJ5LWJnLXN1YnRsZSksXG4gIFwic2Vjb25kYXJ5LXN1YnRsZVwiOiB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnLXN1YnRsZSksXG4gIFwic3VjY2Vzcy1zdWJ0bGVcIjogdmFyKC0tI3skcHJlZml4fXN1Y2Nlc3MtYmctc3VidGxlKSxcbiAgXCJpbmZvLXN1YnRsZVwiOiB2YXIoLS0jeyRwcmVmaXh9aW5mby1iZy1zdWJ0bGUpLFxuICBcIndhcm5pbmctc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH13YXJuaW5nLWJnLXN1YnRsZSksXG4gIFwiZGFuZ2VyLXN1YnRsZVwiOiB2YXIoLS0jeyRwcmVmaXh9ZGFuZ2VyLWJnLXN1YnRsZSksXG4gIFwibGlnaHQtc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH1saWdodC1iZy1zdWJ0bGUpLFxuICBcImRhcmstc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH1kYXJrLWJnLXN1YnRsZSlcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHV0aWxpdGllcy1iZy1jb2xvcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxpdGllcy1ib3JkZXItY29sb3JzXG4kdXRpbGl0aWVzLWJvcmRlcjogbWFwLW1lcmdlKFxuICAkdXRpbGl0aWVzLWNvbG9ycyxcbiAgKFxuICAgIFwiYmxhY2tcIjogdG8tcmdiKCRibGFjayksXG4gICAgXCJ3aGl0ZVwiOiB0by1yZ2IoJHdoaXRlKVxuICApXG4pICFkZWZhdWx0O1xuJHV0aWxpdGllcy1ib3JkZXItY29sb3JzOiBtYXAtbG9vcCgkdXRpbGl0aWVzLWJvcmRlciwgcmdiYS1jc3MtdmFyLCBcIiRrZXlcIiwgXCJib3JkZXJcIikgIWRlZmF1bHQ7XG5cbiR1dGlsaXRpZXMtYm9yZGVyLXN1YnRsZTogKFxuICBcInByaW1hcnktc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH1wcmltYXJ5LWJvcmRlci1zdWJ0bGUpLFxuICBcInNlY29uZGFyeS1zdWJ0bGVcIjogdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1ib3JkZXItc3VidGxlKSxcbiAgXCJzdWNjZXNzLXN1YnRsZVwiOiB2YXIoLS0jeyRwcmVmaXh9c3VjY2Vzcy1ib3JkZXItc3VidGxlKSxcbiAgXCJpbmZvLXN1YnRsZVwiOiB2YXIoLS0jeyRwcmVmaXh9aW5mby1ib3JkZXItc3VidGxlKSxcbiAgXCJ3YXJuaW5nLXN1YnRsZVwiOiB2YXIoLS0jeyRwcmVmaXh9d2FybmluZy1ib3JkZXItc3VidGxlKSxcbiAgXCJkYW5nZXItc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH1kYW5nZXItYm9yZGVyLXN1YnRsZSksXG4gIFwibGlnaHQtc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH1saWdodC1ib3JkZXItc3VidGxlKSxcbiAgXCJkYXJrLXN1YnRsZVwiOiB2YXIoLS0jeyRwcmVmaXh9ZGFyay1ib3JkZXItc3VidGxlKVxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdXRpbGl0aWVzLWJvcmRlci1jb2xvcnNcblxuJHV0aWxpdGllcy1saW5rcy11bmRlcmxpbmU6IG1hcC1sb29wKCR1dGlsaXRpZXMtY29sb3JzLCByZ2JhLWNzcy12YXIsIFwiJGtleVwiLCBcImxpbmstdW5kZXJsaW5lXCIpICFkZWZhdWx0O1xuXG4kbmVnYXRpdmUtc3BhY2VyczogaWYoJGVuYWJsZS1uZWdhdGl2ZS1tYXJnaW5zLCBuZWdhdGl2aWZ5LW1hcCgkc3BhY2VycyksIG51bGwpICFkZWZhdWx0O1xuXG4kZ3V0dGVyczogJHNwYWNlcnMgIWRlZmF1bHQ7XG4iLCIvLyBUb2dnbGVzXG4vL1xuLy8gVXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIGdsb2JhbCB2YXJpYWJsZXMgdG8gZW5hYmxlIGNlcnRhaW4gdGhlbWUgZmVhdHVyZXMuXG5cbi8vIFZlbmRvclxuQGltcG9ydCBcInZlbmRvci9yZnNcIjtcblxuLy8gRGVwcmVjYXRlXG5AaW1wb3J0IFwibWl4aW5zL2RlcHJlY2F0ZVwiO1xuXG4vLyBIZWxwZXJzXG5AaW1wb3J0IFwibWl4aW5zL2JyZWFrcG9pbnRzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2NvbG9yLW1vZGVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvY29sb3Itc2NoZW1lXCI7XG5AaW1wb3J0IFwibWl4aW5zL2ltYWdlXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2l6ZVwiO1xuQGltcG9ydCBcIm1peGlucy92aXN1YWxseS1oaWRkZW5cIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzZXQtdGV4dFwiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LXRydW5jYXRlXCI7XG5cbi8vIFV0aWxpdGllc1xuQGltcG9ydCBcIm1peGlucy91dGlsaXRpZXNcIjtcblxuLy8gQ29tcG9uZW50c1xuQGltcG9ydCBcIm1peGlucy9iYWNrZHJvcFwiO1xuQGltcG9ydCBcIm1peGlucy9idXR0b25zXCI7XG5AaW1wb3J0IFwibWl4aW5zL2NhcmV0XCI7XG5AaW1wb3J0IFwibWl4aW5zL3BhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCJtaXhpbnMvbGlzdHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZm9ybXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGFibGUtdmFyaWFudHNcIjtcblxuLy8gU2tpbnNcbkBpbXBvcnQgXCJtaXhpbnMvYm9yZGVyLXJhZGl1c1wiO1xuQGltcG9ydCBcIm1peGlucy9ib3gtc2hhZG93XCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyYWRpZW50c1wiO1xuQGltcG9ydCBcIm1peGlucy90cmFuc2l0aW9uXCI7XG5cbi8vIExheW91dFxuQGltcG9ydCBcIm1peGlucy9jbGVhcmZpeFwiO1xuQGltcG9ydCBcIm1peGlucy9jb250YWluZXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JpZFwiO1xuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2Nzcy9kaW1lbnNpb24tbm8tbm9uLW51bWVyaWMtdmFsdWVzXG5cbi8vIFNDU1MgUkZTIG1peGluXG4vL1xuLy8gQXV0b21hdGVkIHJlc3BvbnNpdmUgdmFsdWVzIGZvciBmb250IHNpemVzLCBwYWRkaW5ncywgbWFyZ2lucyBhbmQgbXVjaCBtb3JlXG4vL1xuLy8gTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvYmxvYi9tYWluL0xJQ0VOU0UpXG5cbi8vIENvbmZpZ3VyYXRpb25cblxuLy8gQmFzZSB2YWx1ZVxuJHJmcy1iYXNlLXZhbHVlOiAxLjI1cmVtICFkZWZhdWx0O1xuJHJmcy11bml0OiByZW0gIWRlZmF1bHQ7XG5cbkBpZiAkcmZzLXVuaXQgIT0gcmVtIGFuZCAkcmZzLXVuaXQgIT0gcHgge1xuICBAZXJyb3IgXCJgI3skcmZzLXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLXVuaXQuIFVzZSBgcHhgIG9yIGByZW1gLlwiO1xufVxuXG4vLyBCcmVha3BvaW50IGF0IHdoZXJlIHZhbHVlcyBzdGFydCBkZWNyZWFzaW5nIGlmIHNjcmVlbiB3aWR0aCBpcyBzbWFsbGVyXG4kcmZzLWJyZWFrcG9pbnQ6IDEyMDBweCAhZGVmYXVsdDtcbiRyZnMtYnJlYWtwb2ludC11bml0OiBweCAhZGVmYXVsdDtcblxuQGlmICRyZnMtYnJlYWtwb2ludC11bml0ICE9IHB4IGFuZCAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSBlbSBhbmQgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gcmVtIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1icmVha3BvaW50LXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC4gVXNlIGBweGAsIGBlbWAgb3IgYHJlbWAuXCI7XG59XG5cbi8vIFJlc2l6ZSB2YWx1ZXMgYmFzZWQgb24gc2NyZWVuIGhlaWdodCBhbmQgd2lkdGhcbiRyZnMtdHdvLWRpbWVuc2lvbmFsOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gRmFjdG9yIG9mIGRlY3JlYXNlXG4kcmZzLWZhY3RvcjogMTAgIWRlZmF1bHQ7XG5cbkBpZiB0eXBlLW9mKCRyZnMtZmFjdG9yKSAhPSBudW1iZXIgb3IgJHJmcy1mYWN0b3IgPD0gMSB7XG4gIEBlcnJvciBcImAjeyRyZnMtZmFjdG9yfWAgaXMgbm90IGEgdmFsaWQgICRyZnMtZmFjdG9yLCBpdCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiAxLlwiO1xufVxuXG4vLyBNb2RlLiBQb3NzaWJpbGl0aWVzOiBcIm1pbi1tZWRpYS1xdWVyeVwiLCBcIm1heC1tZWRpYS1xdWVyeVwiXG4kcmZzLW1vZGU6IG1pbi1tZWRpYS1xdWVyeSAhZGVmYXVsdDtcblxuLy8gR2VuZXJhdGUgZW5hYmxlIG9yIGRpc2FibGUgY2xhc3Nlcy4gUG9zc2liaWxpdGllczogZmFsc2UsIFwiZW5hYmxlXCIgb3IgXCJkaXNhYmxlXCJcbiRyZnMtY2xhc3M6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyAxIHJlbSA9ICRyZnMtcmVtLXZhbHVlIHB4XG4kcmZzLXJlbS12YWx1ZTogMTYgIWRlZmF1bHQ7XG5cbi8vIFNhZmFyaSBpZnJhbWUgcmVzaXplIGJ1ZzogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvcmZzL2lzc3Vlcy8xNFxuJHJmcy1zYWZhcmktaWZyYW1lLXJlc2l6ZS1idWctZml4OiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gRGlzYWJsZSBSRlMgYnkgc2V0dGluZyAkZW5hYmxlLXJmcyB0byBmYWxzZVxuJGVuYWJsZS1yZnM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIENhY2hlICRyZnMtYmFzZS12YWx1ZSB1bml0XG4kcmZzLWJhc2UtdmFsdWUtdW5pdDogdW5pdCgkcmZzLWJhc2UtdmFsdWUpO1xuXG5AZnVuY3Rpb24gZGl2aWRlKCRkaXZpZGVuZCwgJGRpdmlzb3IsICRwcmVjaXNpb246IDEwKSB7XG4gICRzaWduOiBpZigkZGl2aWRlbmQgPiAwIGFuZCAkZGl2aXNvciA+IDAgb3IgJGRpdmlkZW5kIDwgMCBhbmQgJGRpdmlzb3IgPCAwLCAxLCAtMSk7XG4gICRkaXZpZGVuZDogYWJzKCRkaXZpZGVuZCk7XG4gICRkaXZpc29yOiBhYnMoJGRpdmlzb3IpO1xuICBAaWYgJGRpdmlkZW5kID09IDAge1xuICAgIEByZXR1cm4gMDtcbiAgfVxuICBAaWYgJGRpdmlzb3IgPT0gMCB7XG4gICAgQGVycm9yIFwiQ2Fubm90IGRpdmlkZSBieSAwXCI7XG4gIH1cbiAgJHJlbWFpbmRlcjogJGRpdmlkZW5kO1xuICAkcmVzdWx0OiAwO1xuICAkZmFjdG9yOiAxMDtcbiAgQHdoaWxlICgkcmVtYWluZGVyID4gMCBhbmQgJHByZWNpc2lvbiA+PSAwKSB7XG4gICAgJHF1b3RpZW50OiAwO1xuICAgIEB3aGlsZSAoJHJlbWFpbmRlciA+PSAkZGl2aXNvcikge1xuICAgICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAtICRkaXZpc29yO1xuICAgICAgJHF1b3RpZW50OiAkcXVvdGllbnQgKyAxO1xuICAgIH1cbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogMTAgKyAkcXVvdGllbnQ7XG4gICAgJGZhY3RvcjogJGZhY3RvciAqIC4xO1xuICAgICRyZW1haW5kZXI6ICRyZW1haW5kZXIgKiAxMDtcbiAgICAkcHJlY2lzaW9uOiAkcHJlY2lzaW9uIC0gMTtcbiAgICBAaWYgKCRwcmVjaXNpb24gPCAwIGFuZCAkcmVtYWluZGVyID49ICRkaXZpc29yICogNSkge1xuICAgICAgJHJlc3VsdDogJHJlc3VsdCArIDE7XG4gICAgfVxuICB9XG4gICRyZXN1bHQ6ICRyZXN1bHQgKiAkZmFjdG9yICogJHNpZ247XG4gICRkaXZpZGVuZC11bml0OiB1bml0KCRkaXZpZGVuZCk7XG4gICRkaXZpc29yLXVuaXQ6IHVuaXQoJGRpdmlzb3IpO1xuICAkdW5pdC1tYXA6IChcbiAgICBcInB4XCI6IDFweCxcbiAgICBcInJlbVwiOiAxcmVtLFxuICAgIFwiZW1cIjogMWVtLFxuICAgIFwiJVwiOiAxJVxuICApO1xuICBAaWYgKCRkaXZpZGVuZC11bml0ICE9ICRkaXZpc29yLXVuaXQgYW5kIG1hcC1oYXMta2V5KCR1bml0LW1hcCwgJGRpdmlkZW5kLXVuaXQpKSB7XG4gICAgJHJlc3VsdDogJHJlc3VsdCAqIG1hcC1nZXQoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCk7XG4gIH1cbiAgQHJldHVybiAkcmVzdWx0O1xufVxuXG4vLyBSZW1vdmUgcHgtdW5pdCBmcm9tICRyZnMtYmFzZS12YWx1ZSBmb3IgY2FsY3VsYXRpb25zXG5AaWYgJHJmcy1iYXNlLXZhbHVlLXVuaXQgPT0gcHgge1xuICAkcmZzLWJhc2UtdmFsdWU6IGRpdmlkZSgkcmZzLWJhc2UtdmFsdWUsICRyZnMtYmFzZS12YWx1ZSAqIDAgKyAxKTtcbn1cbkBlbHNlIGlmICRyZnMtYmFzZS12YWx1ZS11bml0ID09IHJlbSB7XG4gICRyZnMtYmFzZS12YWx1ZTogZGl2aWRlKCRyZnMtYmFzZS12YWx1ZSwgZGl2aWRlKCRyZnMtYmFzZS12YWx1ZSAqIDAgKyAxLCAkcmZzLXJlbS12YWx1ZSkpO1xufVxuXG4vLyBDYWNoZSAkcmZzLWJyZWFrcG9pbnQgdW5pdCB0byBwcmV2ZW50IG11bHRpcGxlIGNhbGxzXG4kcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZTogdW5pdCgkcmZzLWJyZWFrcG9pbnQpO1xuXG4vLyBSZW1vdmUgdW5pdCBmcm9tICRyZnMtYnJlYWtwb2ludCBmb3IgY2FsY3VsYXRpb25zXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gcHgge1xuICAkcmZzLWJyZWFrcG9pbnQ6IGRpdmlkZSgkcmZzLWJyZWFrcG9pbnQsICRyZnMtYnJlYWtwb2ludCAqIDAgKyAxKTtcbn1cbkBlbHNlIGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IHJlbSBvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcImVtXCIge1xuICAkcmZzLWJyZWFrcG9pbnQ6IGRpdmlkZSgkcmZzLWJyZWFrcG9pbnQsIGRpdmlkZSgkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSwgJHJmcy1yZW0tdmFsdWUpKTtcbn1cblxuLy8gQ2FsY3VsYXRlIHRoZSBtZWRpYSBxdWVyeSB2YWx1ZVxuJHJmcy1tcS12YWx1ZTogaWYoJHJmcy1icmVha3BvaW50LXVuaXQgPT0gcHgsICN7JHJmcy1icmVha3BvaW50fXB4LCAje2RpdmlkZSgkcmZzLWJyZWFrcG9pbnQsICRyZnMtcmVtLXZhbHVlKX0jeyRyZnMtYnJlYWtwb2ludC11bml0fSk7XG4kcmZzLW1xLXByb3BlcnR5LXdpZHRoOiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCBtYXgtd2lkdGgsIG1pbi13aWR0aCk7XG4kcmZzLW1xLXByb3BlcnR5LWhlaWdodDogaWYoJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSwgbWF4LWhlaWdodCwgbWluLWhlaWdodCk7XG5cbi8vIEludGVybmFsIG1peGluIHVzZWQgdG8gZGV0ZXJtaW5lIHdoaWNoIG1lZGlhIHF1ZXJ5IG5lZWRzIHRvIGJlIHVzZWRcbkBtaXhpbiBfcmZzLW1lZGlhLXF1ZXJ5IHtcbiAgQGlmICRyZnMtdHdvLWRpbWVuc2lvbmFsIHtcbiAgICBAaWYgJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSB7XG4gICAgICBAbWVkaWEgKCN7JHJmcy1tcS1wcm9wZXJ0eS13aWR0aH06ICN7JHJmcy1tcS12YWx1ZX0pLCAoI3skcmZzLW1xLXByb3BlcnR5LWhlaWdodH06ICN7JHJmcy1tcS12YWx1ZX0pIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBtZWRpYSAoI3skcmZzLW1xLXByb3BlcnR5LXdpZHRofTogI3skcmZzLW1xLXZhbHVlfSkgYW5kICgjeyRyZnMtbXEtcHJvcGVydHktaGVpZ2h0fTogI3skcmZzLW1xLXZhbHVlfSkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBtZWRpYSAoI3skcmZzLW1xLXByb3BlcnR5LXdpZHRofTogI3skcmZzLW1xLXZhbHVlfSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIEludGVybmFsIG1peGluIHRoYXQgYWRkcyBkaXNhYmxlIGNsYXNzZXMgdG8gdGhlIHNlbGVjdG9yIGlmIG5lZWRlZC5cbkBtaXhpbiBfcmZzLXJ1bGUge1xuICBAaWYgJHJmcy1jbGFzcyA9PSBkaXNhYmxlIGFuZCAkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5IHtcbiAgICAvLyBBZGRpbmcgYW4gZXh0cmEgY2xhc3MgaW5jcmVhc2VzIHNwZWNpZmljaXR5LCB3aGljaCBwcmV2ZW50cyB0aGUgbWVkaWEgcXVlcnkgdG8gb3ZlcnJpZGUgdGhlIHByb3BlcnR5XG4gICAgJixcbiAgICAuZGlzYWJsZS1yZnMgJixcbiAgICAmLmRpc2FibGUtcmZzIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcmZzLWNsYXNzID09IGVuYWJsZSBhbmQgJHJmcy1tb2RlID09IG1pbi1tZWRpYS1xdWVyeSB7XG4gICAgLmVuYWJsZS1yZnMgJixcbiAgICAmLmVuYWJsZS1yZnMge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBJbnRlcm5hbCBtaXhpbiB0aGF0IGFkZHMgZW5hYmxlIGNsYXNzZXMgdG8gdGhlIHNlbGVjdG9yIGlmIG5lZWRlZC5cbkBtaXhpbiBfcmZzLW1lZGlhLXF1ZXJ5LXJ1bGUge1xuXG4gIEBpZiAkcmZzLWNsYXNzID09IGVuYWJsZSB7XG4gICAgQGlmICRyZnMtbW9kZSA9PSBtaW4tbWVkaWEtcXVlcnkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgX3Jmcy1tZWRpYS1xdWVyeSAoKSB7XG4gICAgICAuZW5hYmxlLXJmcyAmLFxuICAgICAgJi5lbmFibGUtcmZzIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAaWYgJHJmcy1jbGFzcyA9PSBkaXNhYmxlIGFuZCAkcmZzLW1vZGUgPT0gbWluLW1lZGlhLXF1ZXJ5IHtcbiAgICAgIC5kaXNhYmxlLXJmcyAmLFxuICAgICAgJi5kaXNhYmxlLXJmcyB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBfcmZzLW1lZGlhLXF1ZXJ5ICgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBIZWxwZXIgZnVuY3Rpb24gdG8gZ2V0IHRoZSBmb3JtYXR0ZWQgbm9uLXJlc3BvbnNpdmUgdmFsdWVcbkBmdW5jdGlvbiByZnMtdmFsdWUoJHZhbHVlcykge1xuICAvLyBDb252ZXJ0IHRvIGxpc3RcbiAgJHZhbHVlczogaWYodHlwZS1vZigkdmFsdWVzKSAhPSBsaXN0LCAoJHZhbHVlcywpLCAkdmFsdWVzKTtcblxuICAkdmFsOiBcIlwiO1xuXG4gIC8vIExvb3Agb3ZlciBlYWNoIHZhbHVlIGFuZCBjYWxjdWxhdGUgdmFsdWVcbiAgQGVhY2ggJHZhbHVlIGluICR2YWx1ZXMge1xuICAgIEBpZiAkdmFsdWUgPT0gMCB7XG4gICAgICAkdmFsOiAkdmFsICsgXCIgMFwiO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAvLyBDYWNoZSAkdmFsdWUgdW5pdFxuICAgICAgJHVuaXQ6IGlmKHR5cGUtb2YoJHZhbHVlKSA9PSBcIm51bWJlclwiLCB1bml0KCR2YWx1ZSksIGZhbHNlKTtcblxuICAgICAgQGlmICR1bml0ID09IHB4IHtcbiAgICAgICAgLy8gQ29udmVydCB0byByZW0gaWYgbmVlZGVkXG4gICAgICAgICR2YWw6ICR2YWwgKyBcIiBcIiArIGlmKCRyZnMtdW5pdCA9PSByZW0sICN7ZGl2aWRlKCR2YWx1ZSwgJHZhbHVlICogMCArICRyZnMtcmVtLXZhbHVlKX1yZW0sICR2YWx1ZSk7XG4gICAgICB9XG4gICAgICBAZWxzZSBpZiAkdW5pdCA9PSByZW0ge1xuICAgICAgICAvLyBDb252ZXJ0IHRvIHB4IGlmIG5lZWRlZFxuICAgICAgICAkdmFsOiAkdmFsICsgXCIgXCIgKyBpZigkcmZzLXVuaXQgPT0gcHgsICN7ZGl2aWRlKCR2YWx1ZSwgJHZhbHVlICogMCArIDEpICogJHJmcy1yZW0tdmFsdWV9cHgsICR2YWx1ZSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gSWYgJHZhbHVlIGlzbid0IGEgbnVtYmVyIChsaWtlIGluaGVyaXQpIG9yICR2YWx1ZSBoYXMgYSB1bml0IChub3QgcHggb3IgcmVtLCBsaWtlIDEuNWVtKSBvciAkIGlzIDAsIGp1c3QgcHJpbnQgdGhlIHZhbHVlXG4gICAgICAgICR2YWw6ICR2YWwgKyBcIiBcIiArICR2YWx1ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBSZW1vdmUgZmlyc3Qgc3BhY2VcbiAgQHJldHVybiB1bnF1b3RlKHN0ci1zbGljZSgkdmFsLCAyKSk7XG59XG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byBnZXQgdGhlIHJlc3BvbnNpdmUgdmFsdWUgY2FsY3VsYXRlZCBieSBSRlNcbkBmdW5jdGlvbiByZnMtZmx1aWQtdmFsdWUoJHZhbHVlcykge1xuICAvLyBDb252ZXJ0IHRvIGxpc3RcbiAgJHZhbHVlczogaWYodHlwZS1vZigkdmFsdWVzKSAhPSBsaXN0LCAoJHZhbHVlcywpLCAkdmFsdWVzKTtcblxuICAkdmFsOiBcIlwiO1xuXG4gIC8vIExvb3Agb3ZlciBlYWNoIHZhbHVlIGFuZCBjYWxjdWxhdGUgdmFsdWVcbiAgQGVhY2ggJHZhbHVlIGluICR2YWx1ZXMge1xuICAgIEBpZiAkdmFsdWUgPT0gMCB7XG4gICAgICAkdmFsOiAkdmFsICsgXCIgMFwiO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gQ2FjaGUgJHZhbHVlIHVuaXRcbiAgICAgICR1bml0OiBpZih0eXBlLW9mKCR2YWx1ZSkgPT0gXCJudW1iZXJcIiwgdW5pdCgkdmFsdWUpLCBmYWxzZSk7XG5cbiAgICAgIC8vIElmICR2YWx1ZSBpc24ndCBhIG51bWJlciAobGlrZSBpbmhlcml0KSBvciAkdmFsdWUgaGFzIGEgdW5pdCAobm90IHB4IG9yIHJlbSwgbGlrZSAxLjVlbSkgb3IgJCBpcyAwLCBqdXN0IHByaW50IHRoZSB2YWx1ZVxuICAgICAgQGlmIG5vdCAkdW5pdCBvciAkdW5pdCAhPSBweCBhbmQgJHVuaXQgIT0gcmVtIHtcbiAgICAgICAgJHZhbDogJHZhbCArIFwiIFwiICsgJHZhbHVlO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC8vIFJlbW92ZSB1bml0IGZyb20gJHZhbHVlIGZvciBjYWxjdWxhdGlvbnNcbiAgICAgICAgJHZhbHVlOiBkaXZpZGUoJHZhbHVlLCAkdmFsdWUgKiAwICsgaWYoJHVuaXQgPT0gcHgsIDEsIGRpdmlkZSgxLCAkcmZzLXJlbS12YWx1ZSkpKTtcblxuICAgICAgICAvLyBPbmx5IGFkZCB0aGUgbWVkaWEgcXVlcnkgaWYgdGhlIHZhbHVlIGlzIGdyZWF0ZXIgdGhhbiB0aGUgbWluaW11bSB2YWx1ZVxuICAgICAgICBAaWYgYWJzKCR2YWx1ZSkgPD0gJHJmcy1iYXNlLXZhbHVlIG9yIG5vdCAkZW5hYmxlLXJmcyB7XG4gICAgICAgICAgJHZhbDogJHZhbCArIFwiIFwiICsgaWYoJHJmcy11bml0ID09IHJlbSwgI3tkaXZpZGUoJHZhbHVlLCAkcmZzLXJlbS12YWx1ZSl9cmVtLCAjeyR2YWx1ZX1weCk7XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIC8vIENhbGN1bGF0ZSB0aGUgbWluaW11bSB2YWx1ZVxuICAgICAgICAgICR2YWx1ZS1taW46ICRyZnMtYmFzZS12YWx1ZSArIGRpdmlkZShhYnMoJHZhbHVlKSAtICRyZnMtYmFzZS12YWx1ZSwgJHJmcy1mYWN0b3IpO1xuXG4gICAgICAgICAgLy8gQ2FsY3VsYXRlIGRpZmZlcmVuY2UgYmV0d2VlbiAkdmFsdWUgYW5kIHRoZSBtaW5pbXVtIHZhbHVlXG4gICAgICAgICAgJHZhbHVlLWRpZmY6IGFicygkdmFsdWUpIC0gJHZhbHVlLW1pbjtcblxuICAgICAgICAgIC8vIEJhc2UgdmFsdWUgZm9ybWF0dGluZ1xuICAgICAgICAgICRtaW4td2lkdGg6IGlmKCRyZnMtdW5pdCA9PSByZW0sICN7ZGl2aWRlKCR2YWx1ZS1taW4sICRyZnMtcmVtLXZhbHVlKX1yZW0sICN7JHZhbHVlLW1pbn1weCk7XG5cbiAgICAgICAgICAvLyBVc2UgbmVnYXRpdmUgdmFsdWUgaWYgbmVlZGVkXG4gICAgICAgICAgJG1pbi13aWR0aDogaWYoJHZhbHVlIDwgMCwgLSRtaW4td2lkdGgsICRtaW4td2lkdGgpO1xuXG4gICAgICAgICAgLy8gVXNlIGB2bWluYCBpZiB0d28tZGltZW5zaW9uYWwgaXMgZW5hYmxlZFxuICAgICAgICAgICR2YXJpYWJsZS11bml0OiBpZigkcmZzLXR3by1kaW1lbnNpb25hbCwgdm1pbiwgdncpO1xuXG4gICAgICAgICAgLy8gQ2FsY3VsYXRlIHRoZSB2YXJpYWJsZSB3aWR0aCBiZXR3ZWVuIDAgYW5kICRyZnMtYnJlYWtwb2ludFxuICAgICAgICAgICR2YXJpYWJsZS13aWR0aDogI3tkaXZpZGUoJHZhbHVlLWRpZmYgKiAxMDAsICRyZnMtYnJlYWtwb2ludCl9I3skdmFyaWFibGUtdW5pdH07XG5cbiAgICAgICAgICAvLyBSZXR1cm4gdGhlIGNhbGN1bGF0ZWQgdmFsdWVcbiAgICAgICAgICAkdmFsOiAkdmFsICsgXCIgY2FsYyhcIiArICRtaW4td2lkdGggKyBpZigkdmFsdWUgPCAwLCBcIiAtIFwiLCBcIiArIFwiKSArICR2YXJpYWJsZS13aWR0aCArIFwiKVwiO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUmVtb3ZlIGZpcnN0IHNwYWNlXG4gIEByZXR1cm4gdW5xdW90ZShzdHItc2xpY2UoJHZhbCwgMikpO1xufVxuXG4vLyBSRlMgbWl4aW5cbkBtaXhpbiByZnMoJHZhbHVlcywgJHByb3BlcnR5OiBmb250LXNpemUpIHtcbiAgQGlmICR2YWx1ZXMgIT0gbnVsbCB7XG4gICAgJHZhbDogcmZzLXZhbHVlKCR2YWx1ZXMpO1xuICAgICRmbHVpZC12YWw6IHJmcy1mbHVpZC12YWx1ZSgkdmFsdWVzKTtcblxuICAgIC8vIERvIG5vdCBwcmludCB0aGUgbWVkaWEgcXVlcnkgaWYgcmVzcG9uc2l2ZSAmIG5vbi1yZXNwb25zaXZlIHZhbHVlcyBhcmUgdGhlIHNhbWVcbiAgICBAaWYgJHZhbCA9PSAkZmx1aWQtdmFsIHtcbiAgICAgICN7JHByb3BlcnR5fTogJHZhbDtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgX3Jmcy1ydWxlICgpIHtcbiAgICAgICAgI3skcHJvcGVydHl9OiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCAkdmFsLCAkZmx1aWQtdmFsKTtcblxuICAgICAgICAvLyBJbmNsdWRlIHNhZmFyaSBpZnJhbWUgcmVzaXplIGZpeCBpZiBuZWVkZWRcbiAgICAgICAgbWluLXdpZHRoOiBpZigkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgsICgwICogMXZ3KSwgbnVsbCk7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnktcnVsZSAoKSB7XG4gICAgICAgICN7JHByb3BlcnR5fTogaWYoJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSwgJGZsdWlkLXZhbCwgJHZhbCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFNob3J0aGFuZCBoZWxwZXIgbWl4aW5zXG5AbWl4aW4gZm9udC1zaXplKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlKTtcbn1cblxuQG1peGluIHBhZGRpbmcoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIHBhZGRpbmcpO1xufVxuXG5AbWl4aW4gcGFkZGluZy10b3AoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIHBhZGRpbmctdG9wKTtcbn1cblxuQG1peGluIHBhZGRpbmctcmlnaHQoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIHBhZGRpbmctcmlnaHQpO1xufVxuXG5AbWl4aW4gcGFkZGluZy1ib3R0b20oJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIHBhZGRpbmctYm90dG9tKTtcbn1cblxuQG1peGluIHBhZGRpbmctbGVmdCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1sZWZ0KTtcbn1cblxuQG1peGluIG1hcmdpbigkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luKTtcbn1cblxuQG1peGluIG1hcmdpbi10b3AoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbi10b3ApO1xufVxuXG5AbWl4aW4gbWFyZ2luLXJpZ2h0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tcmlnaHQpO1xufVxuXG5AbWl4aW4gbWFyZ2luLWJvdHRvbSgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luLWJvdHRvbSk7XG59XG5cbkBtaXhpbiBtYXJnaW4tbGVmdCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luLWxlZnQpO1xufVxuIiwiLy8gRGVwcmVjYXRlIG1peGluXG4vL1xuLy8gVGhpcyBtaXhpbiBjYW4gYmUgdXNlZCB0byBkZXByZWNhdGUgbWl4aW5zIG9yIGZ1bmN0aW9ucy5cbi8vIGAkZW5hYmxlLWRlcHJlY2F0aW9uLW1lc3NhZ2VzYCBpcyBhIGdsb2JhbCB2YXJpYWJsZSwgYCRpZ25vcmUtd2FybmluZ2AgaXMgYSB2YXJpYWJsZSB0aGF0IGNhbiBiZSBwYXNzZWQgdG9cbi8vIHNvbWUgZGVwcmVjYXRlZCBtaXhpbnMgdG8gc3VwcHJlc3MgdGhlIHdhcm5pbmcgKGZvciBleGFtcGxlIGlmIHRoZSBtaXhpbiBpcyBzdGlsbCBiZSB1c2VkIGluIHRoZSBjdXJyZW50IHZlcnNpb24gb2YgQm9vdHN0cmFwKVxuQG1peGluIGRlcHJlY2F0ZSgkbmFtZSwgJGRlcHJlY2F0ZS12ZXJzaW9uLCAkcmVtb3ZlLXZlcnNpb24sICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgQGlmICgkZW5hYmxlLWRlcHJlY2F0aW9uLW1lc3NhZ2VzICE9IGZhbHNlIGFuZCAkaWdub3JlLXdhcm5pbmcgIT0gdHJ1ZSkge1xuICAgIEB3YXJuIFwiI3skbmFtZX0gaGFzIGJlZW4gZGVwcmVjYXRlZCBhcyBvZiAjeyRkZXByZWNhdGUtdmVyc2lvbn0uIEl0IHdpbGwgYmUgcmVtb3ZlZCBlbnRpcmVseSBpbiAjeyRyZW1vdmUtdmVyc2lvbn0uXCI7XG4gIH1cbn1cbiIsIi8vIEJyZWFrcG9pbnQgdmlld3BvcnQgc2l6ZXMgYW5kIG1lZGlhIHF1ZXJpZXMuXG4vL1xuLy8gQnJlYWtwb2ludHMgYXJlIGRlZmluZWQgYXMgYSBtYXAgb2YgKG5hbWU6IG1pbmltdW0gd2lkdGgpLCBvcmRlciBmcm9tIHNtYWxsIHRvIGxhcmdlOlxuLy9cbi8vICAgICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsIHh4bCkpXG4vLyAgICBtZFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEBpZiBub3QgJG4ge1xuICAgIEBlcnJvciBcImJyZWFrcG9pbnQgYCN7JG5hbWV9YCBub3QgZm91bmQgaW4gYCN7JGJyZWFrcG9pbnRzfWBcIjtcbiAgfVxuICBAcmV0dXJuIGlmKCRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIDU3NnB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xufVxuXG4vLyBNYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyByZWR1Y2VkIGJ5IDAuMDJweCB0byB3b3JrIGFyb3VuZCB0aGUgbGltaXRhdGlvbnMgb2Zcbi8vIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgobWQsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgNzY3Ljk4cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtYXggYW5kICRtYXggPiAwLCAkbWF4IC0gLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgXCJcIiAgKFJldHVybnMgYSBibGFuayBzdHJpbmcpXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIFwiLXNtXCJcbkBmdW5jdGlvbiBicmVha3BvaW50LWluZml4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEByZXR1cm4gaWYoYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cykgPT0gbnVsbCwgXCJcIiwgXCItI3skbmFtZX1cIik7XG59XG5cbi8vIE1lZGlhIG9mIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgd2lkZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtaW4ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIG9mIGF0IG1vc3QgdGhlIG1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBsYXJnZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtYXgge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIHRoYXQgc3BhbnMgbXVsdGlwbGUgYnJlYWtwb2ludCB3aWR0aHMuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgYmV0d2VlbiB0aGUgbWluIGFuZCBtYXggYnJlYWtwb2ludHNcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWJldHdlZW4oJGxvd2VyLCAkdXBwZXIsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJGxvd2VyLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkdXBwZXIsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGxvd2VyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkdXBwZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cbi8vIE5vIG1pbmltdW0gZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCBhbmQgbm8gbWF4aW11bSBmb3IgdGhlIGxhcmdlc3Qgb25lLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IG9ubHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQsIG5vdCB2aWV3cG9ydHMgYW55IHdpZGVyIG9yIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiAgYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6ICBicmVha3BvaW50LW1heCgkbmV4dCwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJG5leHQsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzY3NzLWRvY3Mtc3RhcnQgY29sb3ItbW9kZS1taXhpblxuQG1peGluIGNvbG9yLW1vZGUoJG1vZGU6IGxpZ2h0LCAkcm9vdDogZmFsc2UpIHtcbiAgQGlmICRjb2xvci1tb2RlLXR5cGUgPT0gXCJtZWRpYS1xdWVyeVwiIHtcbiAgICBAaWYgJHJvb3QgPT0gdHJ1ZSB7XG4gICAgICBAbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiAkbW9kZSkge1xuICAgICAgICA6cm9vdCB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6ICRtb2RlKSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgW2RhdGEtYnMtdGhlbWU9XCIjeyRtb2RlfVwiXSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgY29sb3ItbW9kZS1taXhpblxuIiwiLy8gc2Nzcy1kb2NzLXN0YXJ0IG1peGluLWNvbG9yLXNjaGVtZVxuQG1peGluIGNvbG9yLXNjaGVtZSgkbmFtZSkge1xuICBAbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiAjeyRuYW1lfSkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIG1peGluLWNvbG9yLXNjaGVtZVxuIiwiLy8gSW1hZ2UgTWl4aW5zXG4vLyAtIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vIC0gUmV0aW5hIGltYWdlXG5cblxuLy8gUmVzcG9uc2l2ZSBpbWFnZVxuLy9cbi8vIEtlZXAgaW1hZ2VzIGZyb20gc2NhbGluZyBiZXlvbmQgdGhlIHdpZHRoIG9mIHRoZWlyIHBhcmVudHMuXG5cbkBtaXhpbiBpbWctZmx1aWQge1xuICAvLyBQYXJ0IDE6IFNldCBhIG1heGltdW0gcmVsYXRpdmUgdG8gdGhlIHBhcmVudFxuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8vIFBhcnQgMjogT3ZlcnJpZGUgdGhlIGhlaWdodCB0byBhdXRvLCBvdGhlcndpc2UgaW1hZ2VzIHdpbGwgYmUgc3RyZXRjaGVkXG4gIC8vIHdoZW4gc2V0dGluZyBhIHdpZHRoIGFuZCBoZWlnaHQgYXR0cmlidXRlIG9uIHRoZSBpbWcgZWxlbWVudC5cbiAgaGVpZ2h0OiBhdXRvO1xufVxuIiwiLy8gUmVzaXplIGFueXRoaW5nXG5cbkBtaXhpbiByZXNpemFibGUoJGRpcmVjdGlvbikge1xuICBvdmVyZmxvdzogYXV0bzsgLy8gUGVyIENTUzMgVUksIGByZXNpemVgIG9ubHkgYXBwbGllcyB3aGVuIGBvdmVyZmxvd2AgaXNuJ3QgYHZpc2libGVgXG4gIHJlc2l6ZTogJGRpcmVjdGlvbjsgLy8gT3B0aW9uczogaG9yaXpvbnRhbCwgdmVydGljYWwsIGJvdGhcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBIaWRlIGNvbnRlbnQgdmlzdWFsbHkgd2hpbGUga2VlcGluZyBpdCBhY2Nlc3NpYmxlIHRvIGFzc2lzdGl2ZSB0ZWNobm9sb2dpZXNcbi8vXG4vLyBTZWU6IGh0dHBzOi8vd3d3LmExMXlwcm9qZWN0LmNvbS9wb3N0cy8yMDEzLTAxLTExLWhvdy10by1oaWRlLWNvbnRlbnQvXG4vLyBTZWU6IGh0dHBzOi8va2l0dHlnaXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cblxuQG1peGluIHZpc3VhbGx5LWhpZGRlbigpIHtcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogLTFweCAhaW1wb3J0YW50OyAvLyBGaXggZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjU2ODZcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG5cbiAgLy8gRml4IGZvciBwb3NpdGlvbmVkIHRhYmxlIGNhcHRpb24gdGhhdCBjb3VsZCBiZWNvbWUgYW5vbnltb3VzIGNlbGxzXG4gICY6bm90KGNhcHRpb24pIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLyBVc2UgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQsIG9yIG9uZSBvZiBpdHMgY2hpbGQgZWxlbWVudHMgaXMgZm9jdXNlZFxuLy8gKGkuZS4gd2hlbiBmb2N1cyBpcyB3aXRoaW4gdGhlIGVsZW1lbnQvY29udGFpbmVyIHRoYXQgdGhlIGNsYXNzIHdhcyBhcHBsaWVkIHRvKVxuLy9cbi8vIFVzZWZ1bCBmb3IgXCJTa2lwIHRvIG1haW4gY29udGVudFwiIGxpbmtzOyBzZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcblxuQG1peGluIHZpc3VhbGx5LWhpZGRlbi1mb2N1c2FibGUoKSB7XG4gICY6bm90KDpmb2N1cyk6bm90KDpmb2N1cy13aXRoaW4pIHtcbiAgICBAaW5jbHVkZSB2aXN1YWxseS1oaWRkZW4oKTtcbiAgfVxufVxuIiwiQG1peGluIHJlc2V0LXRleHQge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkbyBOT1QgcmVzZXQgZm9udC1zaXplIG9yIG92ZXJmbG93LXdyYXAgLyB3b3JkLXdyYXAuXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRmFsbGJhY2sgZm9yIHdoZXJlIGBzdGFydGAgaXMgbm90IHN1cHBvcnRlZFxuICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gIGxpbmUtYnJlYWs6IGF1dG87XG59XG4iLCIvLyBUZXh0IHRydW5jYXRlXG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXG5cbkBtaXhpbiB0ZXh0LXRydW5jYXRlKCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIi8vIFV0aWxpdHkgZ2VuZXJhdG9yXG4vLyBVc2VkIHRvIGdlbmVyYXRlIHV0aWxpdGllcyAmIHByaW50IHV0aWxpdGllc1xuQG1peGluIGdlbmVyYXRlLXV0aWxpdHkoJHV0aWxpdHksICRpbmZpeDogXCJcIiwgJGlzLXJmcy1tZWRpYS1xdWVyeTogZmFsc2UpIHtcbiAgJHZhbHVlczogbWFwLWdldCgkdXRpbGl0eSwgdmFsdWVzKTtcblxuICAvLyBJZiB0aGUgdmFsdWVzIGFyZSBhIGxpc3Qgb3Igc3RyaW5nLCBjb252ZXJ0IGl0IGludG8gYSBtYXBcbiAgQGlmIHR5cGUtb2YoJHZhbHVlcykgPT0gXCJzdHJpbmdcIiBvciB0eXBlLW9mKG50aCgkdmFsdWVzLCAxKSkgIT0gXCJsaXN0XCIge1xuICAgICR2YWx1ZXM6IHppcCgkdmFsdWVzLCAkdmFsdWVzKTtcbiAgfVxuXG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkdmFsdWVzIHtcbiAgICAkcHJvcGVydGllczogbWFwLWdldCgkdXRpbGl0eSwgcHJvcGVydHkpO1xuXG4gICAgLy8gTXVsdGlwbGUgcHJvcGVydGllcyBhcmUgcG9zc2libGUsIGZvciBleGFtcGxlIHdpdGggdmVydGljYWwgb3IgaG9yaXpvbnRhbCBtYXJnaW5zIG9yIHBhZGRpbmdzXG4gICAgQGlmIHR5cGUtb2YoJHByb3BlcnRpZXMpID09IFwic3RyaW5nXCIge1xuICAgICAgJHByb3BlcnRpZXM6IGFwcGVuZCgoKSwgJHByb3BlcnRpZXMpO1xuICAgIH1cblxuICAgIC8vIFVzZSBjdXN0b20gY2xhc3MgaWYgcHJlc2VudFxuICAgICRwcm9wZXJ0eS1jbGFzczogaWYobWFwLWhhcy1rZXkoJHV0aWxpdHksIGNsYXNzKSwgbWFwLWdldCgkdXRpbGl0eSwgY2xhc3MpLCBudGgoJHByb3BlcnRpZXMsIDEpKTtcbiAgICAkcHJvcGVydHktY2xhc3M6IGlmKCRwcm9wZXJ0eS1jbGFzcyA9PSBudWxsLCBcIlwiLCAkcHJvcGVydHktY2xhc3MpO1xuXG4gICAgLy8gVXNlIGN1c3RvbSBDU1MgdmFyaWFibGUgbmFtZSBpZiBwcmVzZW50LCBvdGhlcndpc2UgZGVmYXVsdCB0byBgY2xhc3NgXG4gICAgJGNzcy12YXJpYWJsZS1uYW1lOiBpZihtYXAtaGFzLWtleSgkdXRpbGl0eSwgY3NzLXZhcmlhYmxlLW5hbWUpLCBtYXAtZ2V0KCR1dGlsaXR5LCBjc3MtdmFyaWFibGUtbmFtZSksIG1hcC1nZXQoJHV0aWxpdHksIGNsYXNzKSk7XG5cbiAgICAvLyBTdGF0ZSBwYXJhbXMgdG8gZ2VuZXJhdGUgcHNldWRvLWNsYXNzZXNcbiAgICAkc3RhdGU6IGlmKG1hcC1oYXMta2V5KCR1dGlsaXR5LCBzdGF0ZSksIG1hcC1nZXQoJHV0aWxpdHksIHN0YXRlKSwgKCkpO1xuXG4gICAgJGluZml4OiBpZigkcHJvcGVydHktY2xhc3MgPT0gXCJcIiBhbmQgc3RyLXNsaWNlKCRpbmZpeCwgMSwgMSkgPT0gXCItXCIsIHN0ci1zbGljZSgkaW5maXgsIDIpLCAkaW5maXgpO1xuXG4gICAgLy8gRG9uJ3QgcHJlZml4IGlmIHZhbHVlIGtleSBpcyBudWxsIChlLmcuIHdpdGggc2hhZG93IGNsYXNzKVxuICAgICRwcm9wZXJ0eS1jbGFzcy1tb2RpZmllcjogaWYoJGtleSwgaWYoJHByb3BlcnR5LWNsYXNzID09IFwiXCIgYW5kICRpbmZpeCA9PSBcIlwiLCBcIlwiLCBcIi1cIikgKyAka2V5LCBcIlwiKTtcblxuICAgIEBpZiBtYXAtZ2V0KCR1dGlsaXR5LCByZnMpIHtcbiAgICAgIC8vIEluc2lkZSB0aGUgbWVkaWEgcXVlcnlcbiAgICAgIEBpZiAkaXMtcmZzLW1lZGlhLXF1ZXJ5IHtcbiAgICAgICAgJHZhbDogcmZzLXZhbHVlKCR2YWx1ZSk7XG5cbiAgICAgICAgLy8gRG8gbm90IHJlbmRlciBhbnl0aGluZyBpZiBmbHVpZCBhbmQgbm9uIGZsdWlkIHZhbHVlcyBhcmUgdGhlIHNhbWVcbiAgICAgICAgJHZhbHVlOiBpZigkdmFsID09IHJmcy1mbHVpZC12YWx1ZSgkdmFsdWUpLCBudWxsLCAkdmFsKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJHZhbHVlOiByZnMtZmx1aWQtdmFsdWUoJHZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAkaXMtY3NzLXZhcjogbWFwLWdldCgkdXRpbGl0eSwgY3NzLXZhcik7XG4gICAgJGlzLWxvY2FsLXZhcnM6IG1hcC1nZXQoJHV0aWxpdHksIGxvY2FsLXZhcnMpO1xuICAgICRpcy1ydGw6IG1hcC1nZXQoJHV0aWxpdHksIHJ0bCk7XG5cbiAgICBAaWYgJHZhbHVlICE9IG51bGwge1xuICAgICAgQGlmICRpcy1ydGwgPT0gZmFsc2Uge1xuICAgICAgICAvKiBydGw6YmVnaW46cmVtb3ZlICovXG4gICAgICB9XG5cbiAgICAgIEBpZiAkaXMtY3NzLXZhciB7XG4gICAgICAgIC4jeyRwcm9wZXJ0eS1jbGFzcyArICRpbmZpeCArICRwcm9wZXJ0eS1jbGFzcy1tb2RpZmllcn0ge1xuICAgICAgICAgIC0tI3skcHJlZml4fSN7JGNzcy12YXJpYWJsZS1uYW1lfTogI3skdmFsdWV9O1xuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJHBzZXVkbyBpbiAkc3RhdGUge1xuICAgICAgICAgIC4jeyRwcm9wZXJ0eS1jbGFzcyArICRpbmZpeCArICRwcm9wZXJ0eS1jbGFzcy1tb2RpZmllcn0tI3skcHNldWRvfTojeyRwc2V1ZG99IHtcbiAgICAgICAgICAgIC0tI3skcHJlZml4fSN7JGNzcy12YXJpYWJsZS1uYW1lfTogI3skdmFsdWV9O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC4jeyRwcm9wZXJ0eS1jbGFzcyArICRpbmZpeCArICRwcm9wZXJ0eS1jbGFzcy1tb2RpZmllcn0ge1xuICAgICAgICAgIEBlYWNoICRwcm9wZXJ0eSBpbiAkcHJvcGVydGllcyB7XG4gICAgICAgICAgICBAaWYgJGlzLWxvY2FsLXZhcnMge1xuICAgICAgICAgICAgICBAZWFjaCAkbG9jYWwtdmFyLCAkdmFyaWFibGUgaW4gJGlzLWxvY2FsLXZhcnMge1xuICAgICAgICAgICAgICAgIC0tI3skcHJlZml4fSN7JGxvY2FsLXZhcn06ICN7JHZhcmlhYmxlfTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgI3skcHJvcGVydHl9OiAkdmFsdWUgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkcHNldWRvIGluICRzdGF0ZSB7XG4gICAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfS0jeyRwc2V1ZG99OiN7JHBzZXVkb30ge1xuICAgICAgICAgICAgQGVhY2ggJHByb3BlcnR5IGluICRwcm9wZXJ0aWVzIHtcbiAgICAgICAgICAgICAgQGlmICRpcy1sb2NhbC12YXJzIHtcbiAgICAgICAgICAgICAgICBAZWFjaCAkbG9jYWwtdmFyLCAkdmFyaWFibGUgaW4gJGlzLWxvY2FsLXZhcnMge1xuICAgICAgICAgICAgICAgICAgLS0jeyRwcmVmaXh9I3skbG9jYWwtdmFyfTogI3skdmFyaWFibGV9O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAjeyRwcm9wZXJ0eX06ICR2YWx1ZSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaWYgJGlzLXJ0bCA9PSBmYWxzZSB7XG4gICAgICAgIC8qIHJ0bDplbmQ6cmVtb3ZlICovXG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBTaGFyZWQgYmV0d2VlbiBtb2RhbHMgYW5kIG9mZmNhbnZhc2VzXG5AbWl4aW4gb3ZlcmxheS1iYWNrZHJvcCgkemluZGV4LCAkYmFja2Ryb3AtYmcsICRiYWNrZHJvcC1vcGFjaXR5KSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4O1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogMTAwdmg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZHJvcC1iZztcblxuICAvLyBGYWRlIGZvciBiYWNrZHJvcFxuICAmLmZhZGUgeyBvcGFjaXR5OiAwOyB9XG4gICYuc2hvdyB7IG9wYWNpdHk6ICRiYWNrZHJvcC1vcGFjaXR5OyB9XG59XG4iLCIvLyBCdXR0b24gdmFyaWFudHNcbi8vXG4vLyBFYXNpbHkgcHVtcCBvdXQgZGVmYXVsdCBzdHlsZXMsIGFzIHdlbGwgYXMgOmhvdmVyLCA6Zm9jdXMsIDphY3RpdmUsXG4vLyBhbmQgZGlzYWJsZWQgb3B0aW9ucyBmb3IgYWxsIGJ1dHRvbnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJ0bi12YXJpYW50LW1peGluXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoXG4gICRiYWNrZ3JvdW5kLFxuICAkYm9yZGVyLFxuICAkY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRiYWNrZ3JvdW5kKSxcbiAgJGhvdmVyLWJhY2tncm91bmQ6IGlmKCRjb2xvciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLWhvdmVyLWJnLXNoYWRlLWFtb3VudCksIHRpbnQtY29sb3IoJGJhY2tncm91bmQsICRidG4taG92ZXItYmctdGludC1hbW91bnQpKSxcbiAgJGhvdmVyLWJvcmRlcjogaWYoJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJGJvcmRlciwgJGJ0bi1ob3Zlci1ib3JkZXItc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYm9yZGVyLCAkYnRuLWhvdmVyLWJvcmRlci10aW50LWFtb3VudCkpLFxuICAkaG92ZXItY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRob3Zlci1iYWNrZ3JvdW5kKSxcbiAgJGFjdGl2ZS1iYWNrZ3JvdW5kOiBpZigkY29sb3IgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCBzaGFkZS1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1hY3RpdmUtYmctc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1hY3RpdmUtYmctdGludC1hbW91bnQpKSxcbiAgJGFjdGl2ZS1ib3JkZXI6IGlmKCRjb2xvciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCRib3JkZXIsICRidG4tYWN0aXZlLWJvcmRlci1zaGFkZS1hbW91bnQpLCB0aW50LWNvbG9yKCRib3JkZXIsICRidG4tYWN0aXZlLWJvcmRlci10aW50LWFtb3VudCkpLFxuICAkYWN0aXZlLWNvbG9yOiBjb2xvci1jb250cmFzdCgkYWN0aXZlLWJhY2tncm91bmQpLFxuICAkZGlzYWJsZWQtYmFja2dyb3VuZDogJGJhY2tncm91bmQsXG4gICRkaXNhYmxlZC1ib3JkZXI6ICRib3JkZXIsXG4gICRkaXNhYmxlZC1jb2xvcjogY29sb3ItY29udHJhc3QoJGRpc2FibGVkLWJhY2tncm91bmQpXG4pIHtcbiAgLS0jeyRwcmVmaXh9YnRuLWNvbG9yOiAjeyRjb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1iZzogI3skYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItY29sb3I6ICN7JGJvcmRlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1jb2xvcjogI3skaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYmc6ICN7JGhvdmVyLWJhY2tncm91bmR9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yOiAjeyRob3Zlci1ib3JkZXJ9O1xuICAtLSN7JHByZWZpeH1idG4tZm9jdXMtc2hhZG93LXJnYjogI3t0by1yZ2IobWl4KCRjb2xvciwgJGJvcmRlciwgMTUlKSl9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWNvbG9yOiAjeyRhY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJnOiAjeyRhY3RpdmUtYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAjeyRhY3RpdmUtYm9yZGVyfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1zaGFkb3c6ICN7JGJ0bi1hY3RpdmUtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1jb2xvcjogI3skZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYmc6ICN7JGRpc2FibGVkLWJhY2tncm91bmR9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAjeyRkaXNhYmxlZC1ib3JkZXJ9O1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tdmFyaWFudC1taXhpblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLW91dGxpbmUtdmFyaWFudC1taXhpblxuQG1peGluIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoXG4gICRjb2xvcixcbiAgJGNvbG9yLWhvdmVyOiBjb2xvci1jb250cmFzdCgkY29sb3IpLFxuICAkYWN0aXZlLWJhY2tncm91bmQ6ICRjb2xvcixcbiAgJGFjdGl2ZS1ib3JkZXI6ICRjb2xvcixcbiAgJGFjdGl2ZS1jb2xvcjogY29sb3ItY29udHJhc3QoJGFjdGl2ZS1iYWNrZ3JvdW5kKVxuKSB7XG4gIC0tI3skcHJlZml4fWJ0bi1jb2xvcjogI3skY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYm9yZGVyLWNvbG9yOiAjeyRjb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1jb2xvcjogI3skY29sb3ItaG92ZXJ9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYmc6ICN7JGFjdGl2ZS1iYWNrZ3JvdW5kfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJvcmRlci1jb2xvcjogI3skYWN0aXZlLWJvcmRlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1mb2N1cy1zaGFkb3ctcmdiOiAje3RvLXJnYigkY29sb3IpfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1jb2xvcjogI3skYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1iZzogI3skYWN0aXZlLWJhY2tncm91bmR9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJvcmRlci1jb2xvcjogI3skYWN0aXZlLWJvcmRlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtc2hhZG93OiAjeyRidG4tYWN0aXZlLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtY29sb3I6ICN7JGNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWJnOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWJvcmRlci1jb2xvcjogI3skY29sb3J9O1xuICAtLSN7JHByZWZpeH1ncmFkaWVudDogbm9uZTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgYnRuLW91dGxpbmUtdmFyaWFudC1taXhpblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLXNpemUtbWl4aW5cbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkYm9yZGVyLXJhZGl1cykge1xuICAtLSN7JHByZWZpeH1idG4tcGFkZGluZy15OiAjeyRwYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1idG4tcGFkZGluZy14OiAjeyRwYWRkaW5nLXh9O1xuICBAaW5jbHVkZSByZnMoJGZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9YnRuLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItcmFkaXVzOiAjeyRib3JkZXItcmFkaXVzfTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgYnRuLXNpemUtbWl4aW5cbiIsIi8vIHNjc3MtZG9jcy1zdGFydCBjYXJldC1taXhpbnNcbkBtaXhpbiBjYXJldC1kb3duKCR3aWR0aDogJGNhcmV0LXdpZHRoKSB7XG4gIGJvcmRlci10b3A6ICR3aWR0aCBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1sZWZ0OiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC11cCgkd2lkdGg6ICRjYXJldC13aWR0aCkge1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItcmlnaHQ6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogJHdpZHRoIHNvbGlkO1xuICBib3JkZXItbGVmdDogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtZW5kKCR3aWR0aDogJGNhcmV0LXdpZHRoKSB7XG4gIGJvcmRlci10b3A6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiAkd2lkdGggc29saWQ7XG59XG5cbkBtaXhpbiBjYXJldC1zdGFydCgkd2lkdGg6ICRjYXJldC13aWR0aCkge1xuICBib3JkZXItdG9wOiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkO1xuICBib3JkZXItYm90dG9tOiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldChcbiAgJGRpcmVjdGlvbjogZG93bixcbiAgJHdpZHRoOiAkY2FyZXQtd2lkdGgsXG4gICRzcGFjaW5nOiAkY2FyZXQtc3BhY2luZyxcbiAgJHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtdmVydGljYWwtYWxpZ25cbikge1xuICBAaWYgJGVuYWJsZS1jYXJldCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRzcGFjaW5nO1xuICAgICAgdmVydGljYWwtYWxpZ246ICR2ZXJ0aWNhbC1hbGlnbjtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBAaWYgJGRpcmVjdGlvbiA9PSBkb3duIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtZG93bigkd2lkdGgpO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHVwIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtdXAoJHdpZHRoKTtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBlbmQge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1lbmQoJHdpZHRoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGRpcmVjdGlvbiA9PSBzdGFydCB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkc3BhY2luZztcbiAgICAgICAgdmVydGljYWwtYWxpZ246ICR2ZXJ0aWNhbC1hbGlnbjtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtc3RhcnQoJHdpZHRoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmVtcHR5OjphZnRlciB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgY2FyZXQtbWl4aW5zXG4iLCIvLyBQYWdpbmF0aW9uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwYWdpbmF0aW9uLW1peGluXG5AbWl4aW4gcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRib3JkZXItcmFkaXVzKSB7XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tcGFkZGluZy14OiAjeyRwYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLXBhZGRpbmcteTogI3skcGFkZGluZy15fTtcbiAgQGluY2x1ZGUgcmZzKCRmb250LXNpemUsIC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzOiAjeyRib3JkZXItcmFkaXVzfTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgcGFnaW5hdGlvbi1taXhpblxuIiwiLy8gTGlzdHNcblxuLy8gVW5zdHlsZWQga2VlcHMgbGlzdCBpdGVtcyBibG9jayBsZXZlbCwganVzdCByZW1vdmVzIGRlZmF1bHQgYnJvd3NlciBwYWRkaW5nIGFuZCBsaXN0LXN0eWxlXG5AbWl4aW4gbGlzdC11bnN0eWxlZCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbiIsIi8vIFRoaXMgbWl4aW4gdXNlcyBhbiBgaWYoKWAgdGVjaG5pcXVlIHRvIGJlIGNvbXBhdGlibGUgd2l0aCBEYXJ0IFNhc3Ncbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8xODczI2lzc3VlY29tbWVudC0xNTIyOTM3MjUgZm9yIG1vcmUgZGV0YWlsc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS12YWxpZGF0aW9uLW1peGluc1xuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgQGlmICgkc3RhdGUgPT0gXCJ2YWxpZFwiIG9yICRzdGF0ZSA9PSBcImludmFsaWRcIikge1xuICAgIC53YXMtdmFsaWRhdGVkICN7aWYoJiwgXCImXCIsIFwiXCIpfTojeyRzdGF0ZX0sXG4gICAgI3tpZigmLCBcIiZcIiwgXCJcIil9LmlzLSN7JHN0YXRlfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgICN7aWYoJiwgXCImXCIsIFwiXCIpfS5pcy0jeyRzdGF0ZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUoXG4gICRzdGF0ZSxcbiAgJGNvbG9yLFxuICAkaWNvbixcbiAgJHRvb2x0aXAtY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRjb2xvciksXG4gICR0b29sdGlwLWJnLWNvbG9yOiByZ2JhKCRjb2xvciwgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5KSxcbiAgJGZvY3VzLWJveC1zaGFkb3c6IDAgMCAkaW5wdXQtYnRuLWZvY3VzLWJsdXIgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yLW9wYWNpdHkpLFxuICAkYm9yZGVyLWNvbG9yOiAkY29sb3Jcbikge1xuICAuI3skc3RhdGV9LWZlZWRiYWNrIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6ICRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZSk7XG4gICAgZm9udC1zdHlsZTogJGZvcm0tZmVlZGJhY2stZm9udC1zdHlsZTtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIHotaW5kZXg6IDU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIENvbnRhaW4gdG8gcGFyZW50IHdoZW4gcG9zc2libGVcbiAgICBwYWRkaW5nOiAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteSAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDtcbiAgICBtYXJnaW4tdG9wOiAuMXJlbTtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiAkdG9vbHRpcC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9vbHRpcC1iZy1jb2xvcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcblxuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1oZWlnaHQtaW5uZXI7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGljb24pO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGY7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3csICRmb2N1cy1ib3gtc2hhZG93KTtcbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgICAgIGJveC1zaGFkb3c6ICRmb2N1cy1ib3gtc2hhZG93O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9ybS1zZWxlY3Qge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcblxuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgICY6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pLFxuICAgICAgICAmOm5vdChbbXVsdGlwbGVdKVtzaXplPVwiMVwiXSB7XG4gICAgICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1zZWxlY3QtYmctaWNvbjogI3tlc2NhcGUtc3ZnKCRpY29uKX07XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1lbmQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGZvcm0tc2VsZWN0LWJnLXBvc2l0aW9uLCAkZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICRmb3JtLXNlbGVjdC1iZy1zaXplLCAkZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tc2VsZWN0LWJveC1zaGFkb3csICRmb2N1cy1ib3gtc2hhZG93KTtcbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgICAgIGJveC1zaGFkb3c6ICRmb2N1cy1ib3gtc2hhZG93O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY29udHJvbC1jb2xvciB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHdpZHRoOiBhZGQoJGZvcm0tY29sb3Itd2lkdGgsICRpbnB1dC1oZWlnaHQtaW5uZXIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG5cbiAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJveC1zaGFkb3c6ICRmb2N1cy1ib3gtc2hhZG93O1xuICAgICAgfVxuXG4gICAgICB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmZvcm0tY2hlY2staW5saW5lIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2sge1xuICAgICAgbWFyZ2luLWxlZnQ6IC41ZW07XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICA+IC5mb3JtLWNvbnRyb2w6bm90KDpmb2N1cyksXG4gICAgPiAuZm9ybS1zZWxlY3Q6bm90KDpmb2N1cyksXG4gICAgPiAuZm9ybS1mbG9hdGluZzpub3QoOmZvY3VzLXdpdGhpbikge1xuICAgICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgICBAaWYgJHN0YXRlID09IFwidmFsaWRcIiB7XG4gICAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgfSBAZWxzZSBpZiAkc3RhdGUgPT0gXCJpbnZhbGlkXCIge1xuICAgICAgICAgIHotaW5kZXg6IDQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS12YWxpZGF0aW9uLW1peGluc1xuIiwiLy8gc2Nzcy1kb2NzLXN0YXJ0IHRhYmxlLXZhcmlhbnRcbkBtaXhpbiB0YWJsZS12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQpIHtcbiAgLnRhYmxlLSN7JHN0YXRlfSB7XG4gICAgJGNvbG9yOiBjb2xvci1jb250cmFzdChvcGFxdWUoJGJvZHktYmcsICRiYWNrZ3JvdW5kKSk7XG4gICAgJGhvdmVyLWJnOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtaG92ZXItYmctZmFjdG9yKSk7XG4gICAgJHN0cmlwZWQtYmc6IG1peCgkY29sb3IsICRiYWNrZ3JvdW5kLCBwZXJjZW50YWdlKCR0YWJsZS1zdHJpcGVkLWJnLWZhY3RvcikpO1xuICAgICRhY3RpdmUtYmc6IG1peCgkY29sb3IsICRiYWNrZ3JvdW5kLCBwZXJjZW50YWdlKCR0YWJsZS1hY3RpdmUtYmctZmFjdG9yKSk7XG4gICAgJHRhYmxlLWJvcmRlci1jb2xvcjogbWl4KCRjb2xvciwgJGJhY2tncm91bmQsIHBlcmNlbnRhZ2UoJHRhYmxlLWJvcmRlci1mYWN0b3IpKTtcblxuICAgIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yOiAjeyRjb2xvcn07XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtYmc6ICN7JGJhY2tncm91bmR9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWJvcmRlci1jb2xvcjogI3skdGFibGUtYm9yZGVyLWNvbG9yfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWJnOiAjeyRzdHJpcGVkLWJnfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yOiAje2NvbG9yLWNvbnRyYXN0KCRzdHJpcGVkLWJnKX07XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtYWN0aXZlLWJnOiAjeyRhY3RpdmUtYmd9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWFjdGl2ZS1jb2xvcjogI3tjb2xvci1jb250cmFzdCgkYWN0aXZlLWJnKX07XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtaG92ZXItYmc6ICN7JGhvdmVyLWJnfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1ob3Zlci1jb2xvcjogI3tjb2xvci1jb250cmFzdCgkaG92ZXItYmcpfTtcblxuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtY29sb3IpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRhYmxlLWJvcmRlci1jb2xvcik7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgdGFibGUtdmFyaWFudFxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4vLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byByZXBsYWNlIG5lZ2F0aXZlIHZhbHVlcyB3aXRoIDBcbkBmdW5jdGlvbiB2YWxpZC1yYWRpdXMoJHJhZGl1cykge1xuICAkcmV0dXJuOiAoKTtcbiAgQGVhY2ggJHZhbHVlIGluICRyYWRpdXMge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gbnVtYmVyIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCBtYXgoJHZhbHVlLCAwKSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgJHZhbHVlKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkcmV0dXJuO1xufVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm9yZGVyLXJhZGl1cy1taXhpbnNcbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzLCAkZmFsbGJhY2stYm9yZGVyLXJhZGl1czogZmFsc2UpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG4gIEBlbHNlIGlmICRmYWxsYmFjay1ib3JkZXItcmFkaXVzICE9IGZhbHNlIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1lbmQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1zdGFydC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1zdGFydC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLWVuZC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1lbmQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tc3RhcnQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBib3JkZXItcmFkaXVzLW1peGluc1xuIiwiQG1peGluIGJveC1zaGFkb3coJHNoYWRvdy4uLikge1xuICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAkcmVzdWx0OiAoKTtcblxuICAgIEBlYWNoICR2YWx1ZSBpbiAkc2hhZG93IHtcbiAgICAgIEBpZiAkdmFsdWUgIT0gbnVsbCB7XG4gICAgICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCAkdmFsdWUsIFwiY29tbWFcIik7XG4gICAgICB9XG4gICAgICBAaWYgJHZhbHVlID09IG5vbmUgYW5kIGxlbmd0aCgkc2hhZG93KSA+IDEge1xuICAgICAgICBAd2FybiBcIlRoZSBrZXl3b3JkICdub25lJyBtdXN0IGJlIHVzZWQgYXMgYSBzaW5nbGUgYXJndW1lbnQuXCI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmIChsZW5ndGgoJHJlc3VsdCkgPiAwKSB7XG4gICAgICBib3gtc2hhZG93OiAkcmVzdWx0O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gR3JhZGllbnRzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBncmFkaWVudC1iZy1taXhpblxuQG1peGluIGdyYWRpZW50LWJnKCRjb2xvcjogbnVsbCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG5cbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9Z3JhZGllbnQpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGdyYWRpZW50LWJnLW1peGluXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBncmFkaWVudC1taXhpbnNcbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xufVxuXG4vLyBWZXJ0aWNhbCBncmFkaWVudCwgZnJvbSB0b3AgdG8gYm90dG9tXG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC15KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiBudWxsLCAkZW5kLXBlcmNlbnQ6IG51bGwpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG59XG5cbkBtaXhpbiBncmFkaWVudC1kaXJlY3Rpb25hbCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkZGVnOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcbn1cblxuQG1peGluIGdyYWRpZW50LXgtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQteS10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbn1cblxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICRncmF5LTcwMCwgJG91dGVyLWNvbG9yOiAkZ3JheS04MDApIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoJHdoaXRlLCAuMTUpLCAkYW5nbGU6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgZ3JhZGllbnQtbWl4aW5zXG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLi4uKSB7XG4gIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID09IDAge1xuICAgICR0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1iYXNlO1xuICB9XG5cbiAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbikgPiAxIHtcbiAgICBAZWFjaCAkdmFsdWUgaW4gJHRyYW5zaXRpb24ge1xuICAgICAgQGlmICR2YWx1ZSA9PSBudWxsIG9yICR2YWx1ZSA9PSBub25lIHtcbiAgICAgICAgQHdhcm4gXCJUaGUga2V5d29yZCAnbm9uZScgb3IgJ251bGwnIG11c3QgYmUgdXNlZCBhcyBhIHNpbmdsZSBhcmd1bWVudC5cIjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gICAgQGlmIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbnVsbCB7XG4gICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICB9XG5cbiAgICBAaWYgJGVuYWJsZS1yZWR1Y2VkLW1vdGlvbiBhbmQgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBudWxsIGFuZCBudGgoJHRyYW5zaXRpb24sIDEpICE9IG5vbmUge1xuICAgICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIHNjc3MtZG9jcy1zdGFydCBjbGVhcmZpeFxuQG1peGluIGNsZWFyZml4KCkge1xuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBjbGVhcmZpeFxuIiwiLy8gQ29udGFpbmVyIG1peGluc1xuXG5AbWl4aW4gbWFrZS1jb250YWluZXIoJGd1dHRlcjogJGNvbnRhaW5lci1wYWRkaW5nLXgpIHtcbiAgLS0jeyRwcmVmaXh9Z3V0dGVyLXg6ICN7JGd1dHRlcn07XG4gIC0tI3skcHJlZml4fWd1dHRlci15OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXgpICogLjUpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tI3skcHJlZml4fWd1dHRlci14KSAqIC41KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cbiIsIi8vIEdyaWQgc3lzdGVtXG4vL1xuLy8gR2VuZXJhdGUgc2VtYW50aWMgZ3JpZCBjb2x1bW5zIHdpdGggdGhlc2UgbWl4aW5zLlxuXG5AbWl4aW4gbWFrZS1yb3coJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIC0tI3skcHJlZml4fWd1dHRlci14OiAjeyRndXR0ZXJ9O1xuICAtLSN7JHByZWZpeH1ndXR0ZXIteTogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICAvLyBUT0RPOiBSZXZpc2l0IGNhbGMgb3JkZXIgYWZ0ZXIgaHR0cHM6Ly9naXRodWIuY29tL3JlYWN0LWJvb3RzdHJhcC9yZWFjdC1ib290c3RyYXAvaXNzdWVzLzYwMzkgaXMgZml4ZWRcbiAgbWFyZ2luLXRvcDogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteSkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tcmlnaHQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fWd1dHRlci14KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxufVxuXG5AbWl4aW4gbWFrZS1jb2wtcmVhZHkoKSB7XG4gIC8vIEFkZCBib3ggc2l6aW5nIGlmIG9ubHkgdGhlIGdyaWQgaXMgbG9hZGVkXG4gIGJveC1zaXppbmc6IGlmKHZhcmlhYmxlLWV4aXN0cyhpbmNsdWRlLWNvbHVtbi1ib3gtc2l6aW5nKSBhbmQgJGluY2x1ZGUtY29sdW1uLWJveC1zaXppbmcsIGJvcmRlci1ib3gsIG51bGwpO1xuICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBiZWNvbWluZyB0b28gbmFycm93IHdoZW4gYXQgc21hbGxlciBncmlkIHRpZXJzIGJ5XG4gIC8vIGFsd2F5cyBzZXR0aW5nIGB3aWR0aDogMTAwJTtgLiBUaGlzIHdvcmtzIGJlY2F1c2Ugd2Ugc2V0IHRoZSB3aWR0aFxuICAvLyBsYXRlciBvbiB0byBvdmVycmlkZSB0aGlzIGluaXRpYWwgd2lkdGguXG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyBQcmV2ZW50IGAuY29sLWF1dG9gLCBgLmNvbGAgKCYgcmVzcG9uc2l2ZSB2YXJpYW50cykgZnJvbSBicmVha2luZyBvdXQgdGhlIGdyaWRcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXgpICogLjUpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tI3skcHJlZml4fWd1dHRlci14KSAqIC41KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLXRvcDogdmFyKC0tI3skcHJlZml4fWd1dHRlci15KTtcbn1cblxuQG1peGluIG1ha2UtY29sKCRzaXplOiBmYWxzZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgQGlmICRzaXplIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogcGVyY2VudGFnZShkaXZpZGUoJHNpemUsICRjb2x1bW5zKSk7XG5cbiAgfSBAZWxzZSB7XG4gICAgZmxleDogMSAxIDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1hdXRvKCkge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IGF1dG87XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1vZmZzZXQoJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gICRudW06IGRpdmlkZSgkc2l6ZSwgJGNvbHVtbnMpO1xuICBtYXJnaW4tbGVmdDogaWYoJG51bSA9PSAwLCAwLCBwZXJjZW50YWdlKCRudW0pKTtcbn1cblxuLy8gUm93IGNvbHVtbnNcbi8vXG4vLyBTcGVjaWZ5IG9uIGEgcGFyZW50IGVsZW1lbnQoZS5nLiwgLnJvdykgdG8gZm9yY2UgaW1tZWRpYXRlIGNoaWxkcmVuIGludG8gTk5cbi8vIG51bWJlciBvZiBjb2x1bW5zLiBTdXBwb3J0cyB3cmFwcGluZyB0byBuZXcgbGluZXMsIGJ1dCBkb2VzIG5vdCBkbyBhIE1hc29ucnlcbi8vIHN0eWxlIGdyaWQuXG5AbWl4aW4gcm93LWNvbHMoJGNvdW50KSB7XG4gID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoZGl2aWRlKDEsICRjb3VudCkpO1xuICB9XG59XG5cbi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbkBtaXhpbiBtYWtlLWdyaWQtY29sdW1ucygkY29sdW1uczogJGdyaWQtY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRicmVha3BvaW50cykge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgLy8gUHJvdmlkZSBiYXNpYyBgLmNvbC17YnB9YCBjbGFzc2VzIGZvciBlcXVhbC13aWR0aCBmbGV4Ym94IGNvbHVtbnNcbiAgICAgIC5jb2wjeyRpbmZpeH0ge1xuICAgICAgICBmbGV4OiAxIDAgMCU7IC8vIEZsZXhidWdzICM0OiBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzI2ZsZXhidWctNFxuICAgICAgfVxuXG4gICAgICAucm93LWNvbHMjeyRpbmZpeH0tYXV0byA+ICoge1xuICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1hdXRvKCk7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkZ3JpZC1yb3ctY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLXJvdy1jb2x1bW5zIHtcbiAgICAgICAgICAucm93LWNvbHMjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgcm93LWNvbHMoJGkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1hdXRvKCk7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sKCRpLCAkY29sdW1ucyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gYCRjb2x1bW5zIC0gMWAgYmVjYXVzZSBvZmZzZXR0aW5nIGJ5IHRoZSB3aWR0aCBvZiBhbiBlbnRpcmUgcm93IGlzbid0IHBvc3NpYmxlXG4gICAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggKCRjb2x1bW5zIC0gMSkge1xuICAgICAgICAgIEBpZiBub3QgKCRpbmZpeCA9PSBcIlwiIGFuZCAkaSA9PSAwKSB7IC8vIEF2b2lkIGVtaXR0aW5nIHVzZWxlc3MgLm9mZnNldC0wXG4gICAgICAgICAgICAub2Zmc2V0I3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtb2Zmc2V0KCRpLCAkY29sdW1ucyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIEd1dHRlcnNcbiAgICAgIC8vXG4gICAgICAvLyBNYWtlIHVzZSBvZiBgLmctKmAsIGAuZ3gtKmAgb3IgYC5neS0qYCB1dGlsaXRpZXMgdG8gY2hhbmdlIHNwYWNpbmcgYmV0d2VlbiB0aGUgY29sdW1ucy5cbiAgICAgIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkZ3V0dGVycyB7XG4gICAgICAgIC5nI3skaW5maXh9LSN7JGtleX0sXG4gICAgICAgIC5neCN7JGluZml4fS0jeyRrZXl9IHtcbiAgICAgICAgICAtLSN7JHByZWZpeH1ndXR0ZXIteDogI3skdmFsdWV9O1xuICAgICAgICB9XG5cbiAgICAgICAgLmcjeyRpbmZpeH0tI3ska2V5fSxcbiAgICAgICAgLmd5I3skaW5maXh9LSN7JGtleX0ge1xuICAgICAgICAgIC0tI3skcHJlZml4fWd1dHRlci15OiAjeyR2YWx1ZX07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1ha2UtY3NzZ3JpZCgkY29sdW1uczogJGdyaWQtY29sdW1ucywgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgICAuZy1jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuICRpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFN0YXJ0IHdpdGggYDFgIGJlY2F1c2UgYDBgIGlzIGFuIGludmFsaWQgdmFsdWUuXG4gICAgICAgIC8vIEVuZHMgd2l0aCBgJGNvbHVtbnMgLSAxYCBiZWNhdXNlIG9mZnNldHRpbmcgYnkgdGhlIHdpZHRoIG9mIGFuIGVudGlyZSByb3cgaXNuJ3QgcG9zc2libGUuXG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggKCRjb2x1bW5zIC0gMSkge1xuICAgICAgICAgIC5nLXN0YXJ0I3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uLXN0YXJ0OiAkaTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIFV0aWxpdGllc1xuXG4kdXRpbGl0aWVzOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kdXRpbGl0aWVzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICAvLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbHMtdmVydGljYWwtYWxpZ25cbiAgICBcImFsaWduXCI6IChcbiAgICAgIHByb3BlcnR5OiB2ZXJ0aWNhbC1hbGlnbixcbiAgICAgIGNsYXNzOiBhbGlnbixcbiAgICAgIHZhbHVlczogYmFzZWxpbmUgdG9wIG1pZGRsZSBib3R0b20gdGV4dC1ib3R0b20gdGV4dC10b3BcbiAgICApLFxuICAgIC8vIHNjc3MtZG9jcy1lbmQgdXRpbHMtdmVydGljYWwtYWxpZ25cbiAgICAvLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbHMtZmxvYXRcbiAgICBcImZsb2F0XCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogZmxvYXQsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgc3RhcnQ6IGxlZnQsXG4gICAgICAgIGVuZDogcmlnaHQsXG4gICAgICAgIG5vbmU6IG5vbmUsXG4gICAgICApXG4gICAgKSxcbiAgICAvLyBzY3NzLWRvY3MtZW5kIHV0aWxzLWZsb2F0XG4gICAgLy8gT2JqZWN0IEZpdCB1dGlsaXRpZXNcbiAgICAvLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbHMtb2JqZWN0LWZpdFxuICAgIFwib2JqZWN0LWZpdFwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IG9iamVjdC1maXQsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgY29udGFpbjogY29udGFpbixcbiAgICAgICAgY292ZXI6IGNvdmVyLFxuICAgICAgICBmaWxsOiBmaWxsLFxuICAgICAgICBzY2FsZTogc2NhbGUtZG93bixcbiAgICAgICAgbm9uZTogbm9uZSxcbiAgICAgIClcbiAgICApLFxuICAgIC8vIHNjc3MtZG9jcy1lbmQgdXRpbHMtb2JqZWN0LWZpdFxuICAgIC8vIE9wYWNpdHkgdXRpbGl0aWVzXG4gICAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxzLW9wYWNpdHlcbiAgICBcIm9wYWNpdHlcIjogKFxuICAgICAgcHJvcGVydHk6IG9wYWNpdHksXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgMDogMCxcbiAgICAgICAgMjU6IC4yNSxcbiAgICAgICAgNTA6IC41LFxuICAgICAgICA3NTogLjc1LFxuICAgICAgICAxMDA6IDEsXG4gICAgICApXG4gICAgKSxcbiAgICAvLyBzY3NzLWRvY3MtZW5kIHV0aWxzLW9wYWNpdHlcbiAgICAvLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbHMtb3ZlcmZsb3dcbiAgICBcIm92ZXJmbG93XCI6IChcbiAgICAgIHByb3BlcnR5OiBvdmVyZmxvdyxcbiAgICAgIHZhbHVlczogYXV0byBoaWRkZW4gdmlzaWJsZSBzY3JvbGwsXG4gICAgKSxcbiAgICBcIm92ZXJmbG93LXhcIjogKFxuICAgICAgcHJvcGVydHk6IG92ZXJmbG93LXgsXG4gICAgICB2YWx1ZXM6IGF1dG8gaGlkZGVuIHZpc2libGUgc2Nyb2xsLFxuICAgICksXG4gICAgXCJvdmVyZmxvdy15XCI6IChcbiAgICAgIHByb3BlcnR5OiBvdmVyZmxvdy15LFxuICAgICAgdmFsdWVzOiBhdXRvIGhpZGRlbiB2aXNpYmxlIHNjcm9sbCxcbiAgICApLFxuICAgIC8vIHNjc3MtZG9jcy1lbmQgdXRpbHMtb3ZlcmZsb3dcbiAgICAvLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbHMtZGlzcGxheVxuICAgIFwiZGlzcGxheVwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJpbnQ6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogZGlzcGxheSxcbiAgICAgIGNsYXNzOiBkLFxuICAgICAgdmFsdWVzOiBpbmxpbmUgaW5saW5lLWJsb2NrIGJsb2NrIGdyaWQgaW5saW5lLWdyaWQgdGFibGUgdGFibGUtcm93IHRhYmxlLWNlbGwgZmxleCBpbmxpbmUtZmxleCBub25lXG4gICAgKSxcbiAgICAvLyBzY3NzLWRvY3MtZW5kIHV0aWxzLWRpc3BsYXlcbiAgICAvLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbHMtc2hhZG93XG4gICAgXCJzaGFkb3dcIjogKFxuICAgICAgcHJvcGVydHk6IGJveC1zaGFkb3csXG4gICAgICBjbGFzczogc2hhZG93LFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIG51bGw6IHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93KSxcbiAgICAgICAgc206IHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93LXNtKSxcbiAgICAgICAgbGc6IHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93LWxnKSxcbiAgICAgICAgbm9uZTogbm9uZSxcbiAgICAgIClcbiAgICApLFxuICAgIC8vIHNjc3MtZG9jcy1lbmQgdXRpbHMtc2hhZG93XG4gICAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxzLWZvY3VzLXJpbmdcbiAgICBcImZvY3VzLXJpbmdcIjogKFxuICAgICAgY3NzLXZhcjogdHJ1ZSxcbiAgICAgIGNzcy12YXJpYWJsZS1uYW1lOiBmb2N1cy1yaW5nLWNvbG9yLFxuICAgICAgY2xhc3M6IGZvY3VzLXJpbmcsXG4gICAgICB2YWx1ZXM6IG1hcC1sb29wKCR0aGVtZS1jb2xvcnMtcmdiLCByZ2JhLWNzcy12YXIsIFwiJGtleVwiLCBcImZvY3VzLXJpbmdcIilcbiAgICApLFxuICAgIC8vIHNjc3MtZG9jcy1lbmQgdXRpbHMtZm9jdXMtcmluZ1xuICAgIC8vIHNjc3MtZG9jcy1zdGFydCB1dGlscy1wb3NpdGlvblxuICAgIFwicG9zaXRpb25cIjogKFxuICAgICAgcHJvcGVydHk6IHBvc2l0aW9uLFxuICAgICAgdmFsdWVzOiBzdGF0aWMgcmVsYXRpdmUgYWJzb2x1dGUgZml4ZWQgc3RpY2t5XG4gICAgKSxcbiAgICBcInRvcFwiOiAoXG4gICAgICBwcm9wZXJ0eTogdG9wLFxuICAgICAgdmFsdWVzOiAkcG9zaXRpb24tdmFsdWVzXG4gICAgKSxcbiAgICBcImJvdHRvbVwiOiAoXG4gICAgICBwcm9wZXJ0eTogYm90dG9tLFxuICAgICAgdmFsdWVzOiAkcG9zaXRpb24tdmFsdWVzXG4gICAgKSxcbiAgICBcInN0YXJ0XCI6IChcbiAgICAgIHByb3BlcnR5OiBsZWZ0LFxuICAgICAgY2xhc3M6IHN0YXJ0LFxuICAgICAgdmFsdWVzOiAkcG9zaXRpb24tdmFsdWVzXG4gICAgKSxcbiAgICBcImVuZFwiOiAoXG4gICAgICBwcm9wZXJ0eTogcmlnaHQsXG4gICAgICBjbGFzczogZW5kLFxuICAgICAgdmFsdWVzOiAkcG9zaXRpb24tdmFsdWVzXG4gICAgKSxcbiAgICBcInRyYW5zbGF0ZS1taWRkbGVcIjogKFxuICAgICAgcHJvcGVydHk6IHRyYW5zZm9ybSxcbiAgICAgIGNsYXNzOiB0cmFuc2xhdGUtbWlkZGxlLFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIG51bGw6IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSxcbiAgICAgICAgeDogdHJhbnNsYXRlWCgtNTAlKSxcbiAgICAgICAgeTogdHJhbnNsYXRlWSgtNTAlKSxcbiAgICAgIClcbiAgICApLFxuICAgIC8vIHNjc3MtZG9jcy1lbmQgdXRpbHMtcG9zaXRpb25cbiAgICAvLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbHMtYm9yZGVyc1xuICAgIFwiYm9yZGVyXCI6IChcbiAgICAgIHByb3BlcnR5OiBib3JkZXIsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgbnVsbDogdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgdmFyKC0tI3skcHJlZml4fWJvcmRlci1zdHlsZSkgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvciksXG4gICAgICAgIDA6IDAsXG4gICAgICApXG4gICAgKSxcbiAgICBcImJvcmRlci10b3BcIjogKFxuICAgICAgcHJvcGVydHk6IGJvcmRlci10b3AsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgbnVsbDogdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgdmFyKC0tI3skcHJlZml4fWJvcmRlci1zdHlsZSkgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvciksXG4gICAgICAgIDA6IDAsXG4gICAgICApXG4gICAgKSxcbiAgICBcImJvcmRlci1lbmRcIjogKFxuICAgICAgcHJvcGVydHk6IGJvcmRlci1yaWdodCxcbiAgICAgIGNsYXNzOiBib3JkZXItZW5kLFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIG51bGw6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpIHZhcigtLSN7JHByZWZpeH1ib3JkZXItc3R5bGUpIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpLFxuICAgICAgICAwOiAwLFxuICAgICAgKVxuICAgICksXG4gICAgXCJib3JkZXItYm90dG9tXCI6IChcbiAgICAgIHByb3BlcnR5OiBib3JkZXItYm90dG9tLFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIG51bGw6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpIHZhcigtLSN7JHByZWZpeH1ib3JkZXItc3R5bGUpIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpLFxuICAgICAgICAwOiAwLFxuICAgICAgKVxuICAgICksXG4gICAgXCJib3JkZXItc3RhcnRcIjogKFxuICAgICAgcHJvcGVydHk6IGJvcmRlci1sZWZ0LFxuICAgICAgY2xhc3M6IGJvcmRlci1zdGFydCxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICBudWxsOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXN0eWxlKSB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSxcbiAgICAgICAgMDogMCxcbiAgICAgIClcbiAgICApLFxuICAgIFwiYm9yZGVyLWNvbG9yXCI6IChcbiAgICAgIHByb3BlcnR5OiBib3JkZXItY29sb3IsXG4gICAgICBjbGFzczogYm9yZGVyLFxuICAgICAgbG9jYWwtdmFyczogKFxuICAgICAgICBcImJvcmRlci1vcGFjaXR5XCI6IDFcbiAgICAgICksXG4gICAgICB2YWx1ZXM6ICR1dGlsaXRpZXMtYm9yZGVyLWNvbG9yc1xuICAgICksXG4gICAgXCJzdWJ0bGUtYm9yZGVyLWNvbG9yXCI6IChcbiAgICAgIHByb3BlcnR5OiBib3JkZXItY29sb3IsXG4gICAgICBjbGFzczogYm9yZGVyLFxuICAgICAgdmFsdWVzOiAkdXRpbGl0aWVzLWJvcmRlci1zdWJ0bGVcbiAgICApLFxuICAgIFwiYm9yZGVyLXdpZHRoXCI6IChcbiAgICAgIHByb3BlcnR5OiBib3JkZXItd2lkdGgsXG4gICAgICBjbGFzczogYm9yZGVyLFxuICAgICAgdmFsdWVzOiAkYm9yZGVyLXdpZHRoc1xuICAgICksXG4gICAgXCJib3JkZXItb3BhY2l0eVwiOiAoXG4gICAgICBjc3MtdmFyOiB0cnVlLFxuICAgICAgY2xhc3M6IGJvcmRlci1vcGFjaXR5LFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIDEwOiAuMSxcbiAgICAgICAgMjU6IC4yNSxcbiAgICAgICAgNTA6IC41LFxuICAgICAgICA3NTogLjc1LFxuICAgICAgICAxMDA6IDFcbiAgICAgIClcbiAgICApLFxuICAgIC8vIHNjc3MtZG9jcy1lbmQgdXRpbHMtYm9yZGVyc1xuICAgIC8vIFNpemluZyB1dGlsaXRpZXNcbiAgICAvLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbHMtc2l6aW5nXG4gICAgXCJ3aWR0aFwiOiAoXG4gICAgICBwcm9wZXJ0eTogd2lkdGgsXG4gICAgICBjbGFzczogdyxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICAyNTogMjUlLFxuICAgICAgICA1MDogNTAlLFxuICAgICAgICA3NTogNzUlLFxuICAgICAgICAxMDA6IDEwMCUsXG4gICAgICAgIGF1dG86IGF1dG9cbiAgICAgIClcbiAgICApLFxuICAgIFwibWF4LXdpZHRoXCI6IChcbiAgICAgIHByb3BlcnR5OiBtYXgtd2lkdGgsXG4gICAgICBjbGFzczogbXcsXG4gICAgICB2YWx1ZXM6ICgxMDA6IDEwMCUpXG4gICAgKSxcbiAgICBcInZpZXdwb3J0LXdpZHRoXCI6IChcbiAgICAgIHByb3BlcnR5OiB3aWR0aCxcbiAgICAgIGNsYXNzOiB2dyxcbiAgICAgIHZhbHVlczogKDEwMDogMTAwdncpXG4gICAgKSxcbiAgICBcIm1pbi12aWV3cG9ydC13aWR0aFwiOiAoXG4gICAgICBwcm9wZXJ0eTogbWluLXdpZHRoLFxuICAgICAgY2xhc3M6IG1pbi12dyxcbiAgICAgIHZhbHVlczogKDEwMDogMTAwdncpXG4gICAgKSxcbiAgICBcImhlaWdodFwiOiAoXG4gICAgICBwcm9wZXJ0eTogaGVpZ2h0LFxuICAgICAgY2xhc3M6IGgsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgMjU6IDI1JSxcbiAgICAgICAgNTA6IDUwJSxcbiAgICAgICAgNzU6IDc1JSxcbiAgICAgICAgMTAwOiAxMDAlLFxuICAgICAgICBhdXRvOiBhdXRvXG4gICAgICApXG4gICAgKSxcbiAgICBcIm1heC1oZWlnaHRcIjogKFxuICAgICAgcHJvcGVydHk6IG1heC1oZWlnaHQsXG4gICAgICBjbGFzczogbWgsXG4gICAgICB2YWx1ZXM6ICgxMDA6IDEwMCUpXG4gICAgKSxcbiAgICBcInZpZXdwb3J0LWhlaWdodFwiOiAoXG4gICAgICBwcm9wZXJ0eTogaGVpZ2h0LFxuICAgICAgY2xhc3M6IHZoLFxuICAgICAgdmFsdWVzOiAoMTAwOiAxMDB2aClcbiAgICApLFxuICAgIFwibWluLXZpZXdwb3J0LWhlaWdodFwiOiAoXG4gICAgICBwcm9wZXJ0eTogbWluLWhlaWdodCxcbiAgICAgIGNsYXNzOiBtaW4tdmgsXG4gICAgICB2YWx1ZXM6ICgxMDA6IDEwMHZoKVxuICAgICksXG4gICAgLy8gc2Nzcy1kb2NzLWVuZCB1dGlscy1zaXppbmdcbiAgICAvLyBGbGV4IHV0aWxpdGllc1xuICAgIC8vIHNjc3MtZG9jcy1zdGFydCB1dGlscy1mbGV4XG4gICAgXCJmbGV4XCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogZmxleCxcbiAgICAgIHZhbHVlczogKGZpbGw6IDEgMSBhdXRvKVxuICAgICksXG4gICAgXCJmbGV4LWRpcmVjdGlvblwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IGZsZXgtZGlyZWN0aW9uLFxuICAgICAgY2xhc3M6IGZsZXgsXG4gICAgICB2YWx1ZXM6IHJvdyBjb2x1bW4gcm93LXJldmVyc2UgY29sdW1uLXJldmVyc2VcbiAgICApLFxuICAgIFwiZmxleC1ncm93XCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogZmxleC1ncm93LFxuICAgICAgY2xhc3M6IGZsZXgsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgZ3Jvdy0wOiAwLFxuICAgICAgICBncm93LTE6IDEsXG4gICAgICApXG4gICAgKSxcbiAgICBcImZsZXgtc2hyaW5rXCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogZmxleC1zaHJpbmssXG4gICAgICBjbGFzczogZmxleCxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICBzaHJpbmstMDogMCxcbiAgICAgICAgc2hyaW5rLTE6IDEsXG4gICAgICApXG4gICAgKSxcbiAgICBcImZsZXgtd3JhcFwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IGZsZXgtd3JhcCxcbiAgICAgIGNsYXNzOiBmbGV4LFxuICAgICAgdmFsdWVzOiB3cmFwIG5vd3JhcCB3cmFwLXJldmVyc2VcbiAgICApLFxuICAgIFwianVzdGlmeS1jb250ZW50XCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eToganVzdGlmeS1jb250ZW50LFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIHN0YXJ0OiBmbGV4LXN0YXJ0LFxuICAgICAgICBlbmQ6IGZsZXgtZW5kLFxuICAgICAgICBjZW50ZXI6IGNlbnRlcixcbiAgICAgICAgYmV0d2Vlbjogc3BhY2UtYmV0d2VlbixcbiAgICAgICAgYXJvdW5kOiBzcGFjZS1hcm91bmQsXG4gICAgICAgIGV2ZW5seTogc3BhY2UtZXZlbmx5LFxuICAgICAgKVxuICAgICksXG4gICAgXCJhbGlnbi1pdGVtc1wiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IGFsaWduLWl0ZW1zLFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIHN0YXJ0OiBmbGV4LXN0YXJ0LFxuICAgICAgICBlbmQ6IGZsZXgtZW5kLFxuICAgICAgICBjZW50ZXI6IGNlbnRlcixcbiAgICAgICAgYmFzZWxpbmU6IGJhc2VsaW5lLFxuICAgICAgICBzdHJldGNoOiBzdHJldGNoLFxuICAgICAgKVxuICAgICksXG4gICAgXCJhbGlnbi1jb250ZW50XCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogYWxpZ24tY29udGVudCxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICBzdGFydDogZmxleC1zdGFydCxcbiAgICAgICAgZW5kOiBmbGV4LWVuZCxcbiAgICAgICAgY2VudGVyOiBjZW50ZXIsXG4gICAgICAgIGJldHdlZW46IHNwYWNlLWJldHdlZW4sXG4gICAgICAgIGFyb3VuZDogc3BhY2UtYXJvdW5kLFxuICAgICAgICBzdHJldGNoOiBzdHJldGNoLFxuICAgICAgKVxuICAgICksXG4gICAgXCJhbGlnbi1zZWxmXCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogYWxpZ24tc2VsZixcbiAgICAgIHZhbHVlczogKFxuICAgICAgICBhdXRvOiBhdXRvLFxuICAgICAgICBzdGFydDogZmxleC1zdGFydCxcbiAgICAgICAgZW5kOiBmbGV4LWVuZCxcbiAgICAgICAgY2VudGVyOiBjZW50ZXIsXG4gICAgICAgIGJhc2VsaW5lOiBiYXNlbGluZSxcbiAgICAgICAgc3RyZXRjaDogc3RyZXRjaCxcbiAgICAgIClcbiAgICApLFxuICAgIFwib3JkZXJcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBvcmRlcixcbiAgICAgIHZhbHVlczogKFxuICAgICAgICBmaXJzdDogLTEsXG4gICAgICAgIDA6IDAsXG4gICAgICAgIDE6IDEsXG4gICAgICAgIDI6IDIsXG4gICAgICAgIDM6IDMsXG4gICAgICAgIDQ6IDQsXG4gICAgICAgIDU6IDUsXG4gICAgICAgIGxhc3Q6IDYsXG4gICAgICApLFxuICAgICksXG4gICAgLy8gc2Nzcy1kb2NzLWVuZCB1dGlscy1mbGV4XG4gICAgLy8gTWFyZ2luIHV0aWxpdGllc1xuICAgIC8vIHNjc3MtZG9jcy1zdGFydCB1dGlscy1zcGFjaW5nXG4gICAgXCJtYXJnaW5cIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBtYXJnaW4sXG4gICAgICBjbGFzczogbSxcbiAgICAgIHZhbHVlczogbWFwLW1lcmdlKCRzcGFjZXJzLCAoYXV0bzogYXV0bykpXG4gICAgKSxcbiAgICBcIm1hcmdpbi14XCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogbWFyZ2luLXJpZ2h0IG1hcmdpbi1sZWZ0LFxuICAgICAgY2xhc3M6IG14LFxuICAgICAgdmFsdWVzOiBtYXAtbWVyZ2UoJHNwYWNlcnMsIChhdXRvOiBhdXRvKSlcbiAgICApLFxuICAgIFwibWFyZ2luLXlcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBtYXJnaW4tdG9wIG1hcmdpbi1ib3R0b20sXG4gICAgICBjbGFzczogbXksXG4gICAgICB2YWx1ZXM6IG1hcC1tZXJnZSgkc3BhY2VycywgKGF1dG86IGF1dG8pKVxuICAgICksXG4gICAgXCJtYXJnaW4tdG9wXCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogbWFyZ2luLXRvcCxcbiAgICAgIGNsYXNzOiBtdCxcbiAgICAgIHZhbHVlczogbWFwLW1lcmdlKCRzcGFjZXJzLCAoYXV0bzogYXV0bykpXG4gICAgKSxcbiAgICBcIm1hcmdpbi1lbmRcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBtYXJnaW4tcmlnaHQsXG4gICAgICBjbGFzczogbWUsXG4gICAgICB2YWx1ZXM6IG1hcC1tZXJnZSgkc3BhY2VycywgKGF1dG86IGF1dG8pKVxuICAgICksXG4gICAgXCJtYXJnaW4tYm90dG9tXCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogbWFyZ2luLWJvdHRvbSxcbiAgICAgIGNsYXNzOiBtYixcbiAgICAgIHZhbHVlczogbWFwLW1lcmdlKCRzcGFjZXJzLCAoYXV0bzogYXV0bykpXG4gICAgKSxcbiAgICBcIm1hcmdpbi1zdGFydFwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IG1hcmdpbi1sZWZ0LFxuICAgICAgY2xhc3M6IG1zLFxuICAgICAgdmFsdWVzOiBtYXAtbWVyZ2UoJHNwYWNlcnMsIChhdXRvOiBhdXRvKSlcbiAgICApLFxuICAgIC8vIE5lZ2F0aXZlIG1hcmdpbiB1dGlsaXRpZXNcbiAgICBcIm5lZ2F0aXZlLW1hcmdpblwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IG1hcmdpbixcbiAgICAgIGNsYXNzOiBtLFxuICAgICAgdmFsdWVzOiAkbmVnYXRpdmUtc3BhY2Vyc1xuICAgICksXG4gICAgXCJuZWdhdGl2ZS1tYXJnaW4teFwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IG1hcmdpbi1yaWdodCBtYXJnaW4tbGVmdCxcbiAgICAgIGNsYXNzOiBteCxcbiAgICAgIHZhbHVlczogJG5lZ2F0aXZlLXNwYWNlcnNcbiAgICApLFxuICAgIFwibmVnYXRpdmUtbWFyZ2luLXlcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBtYXJnaW4tdG9wIG1hcmdpbi1ib3R0b20sXG4gICAgICBjbGFzczogbXksXG4gICAgICB2YWx1ZXM6ICRuZWdhdGl2ZS1zcGFjZXJzXG4gICAgKSxcbiAgICBcIm5lZ2F0aXZlLW1hcmdpbi10b3BcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBtYXJnaW4tdG9wLFxuICAgICAgY2xhc3M6IG10LFxuICAgICAgdmFsdWVzOiAkbmVnYXRpdmUtc3BhY2Vyc1xuICAgICksXG4gICAgXCJuZWdhdGl2ZS1tYXJnaW4tZW5kXCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogbWFyZ2luLXJpZ2h0LFxuICAgICAgY2xhc3M6IG1lLFxuICAgICAgdmFsdWVzOiAkbmVnYXRpdmUtc3BhY2Vyc1xuICAgICksXG4gICAgXCJuZWdhdGl2ZS1tYXJnaW4tYm90dG9tXCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogbWFyZ2luLWJvdHRvbSxcbiAgICAgIGNsYXNzOiBtYixcbiAgICAgIHZhbHVlczogJG5lZ2F0aXZlLXNwYWNlcnNcbiAgICApLFxuICAgIFwibmVnYXRpdmUtbWFyZ2luLXN0YXJ0XCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogbWFyZ2luLWxlZnQsXG4gICAgICBjbGFzczogbXMsXG4gICAgICB2YWx1ZXM6ICRuZWdhdGl2ZS1zcGFjZXJzXG4gICAgKSxcbiAgICAvLyBQYWRkaW5nIHV0aWxpdGllc1xuICAgIFwicGFkZGluZ1wiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IHBhZGRpbmcsXG4gICAgICBjbGFzczogcCxcbiAgICAgIHZhbHVlczogJHNwYWNlcnNcbiAgICApLFxuICAgIFwicGFkZGluZy14XCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogcGFkZGluZy1yaWdodCBwYWRkaW5nLWxlZnQsXG4gICAgICBjbGFzczogcHgsXG4gICAgICB2YWx1ZXM6ICRzcGFjZXJzXG4gICAgKSxcbiAgICBcInBhZGRpbmcteVwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IHBhZGRpbmctdG9wIHBhZGRpbmctYm90dG9tLFxuICAgICAgY2xhc3M6IHB5LFxuICAgICAgdmFsdWVzOiAkc3BhY2Vyc1xuICAgICksXG4gICAgXCJwYWRkaW5nLXRvcFwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IHBhZGRpbmctdG9wLFxuICAgICAgY2xhc3M6IHB0LFxuICAgICAgdmFsdWVzOiAkc3BhY2Vyc1xuICAgICksXG4gICAgXCJwYWRkaW5nLWVuZFwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IHBhZGRpbmctcmlnaHQsXG4gICAgICBjbGFzczogcGUsXG4gICAgICB2YWx1ZXM6ICRzcGFjZXJzXG4gICAgKSxcbiAgICBcInBhZGRpbmctYm90dG9tXCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogcGFkZGluZy1ib3R0b20sXG4gICAgICBjbGFzczogcGIsXG4gICAgICB2YWx1ZXM6ICRzcGFjZXJzXG4gICAgKSxcbiAgICBcInBhZGRpbmctc3RhcnRcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBwYWRkaW5nLWxlZnQsXG4gICAgICBjbGFzczogcHMsXG4gICAgICB2YWx1ZXM6ICRzcGFjZXJzXG4gICAgKSxcbiAgICAvLyBHYXAgdXRpbGl0eVxuICAgIFwiZ2FwXCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogZ2FwLFxuICAgICAgY2xhc3M6IGdhcCxcbiAgICAgIHZhbHVlczogJHNwYWNlcnNcbiAgICApLFxuICAgIFwicm93LWdhcFwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IHJvdy1nYXAsXG4gICAgICBjbGFzczogcm93LWdhcCxcbiAgICAgIHZhbHVlczogJHNwYWNlcnNcbiAgICApLFxuICAgIFwiY29sdW1uLWdhcFwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IGNvbHVtbi1nYXAsXG4gICAgICBjbGFzczogY29sdW1uLWdhcCxcbiAgICAgIHZhbHVlczogJHNwYWNlcnNcbiAgICApLFxuICAgIC8vIHNjc3MtZG9jcy1lbmQgdXRpbHMtc3BhY2luZ1xuICAgIC8vIFRleHRcbiAgICAvLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbHMtdGV4dFxuICAgIFwiZm9udC1mYW1pbHlcIjogKFxuICAgICAgcHJvcGVydHk6IGZvbnQtZmFtaWx5LFxuICAgICAgY2xhc3M6IGZvbnQsXG4gICAgICB2YWx1ZXM6IChtb25vc3BhY2U6IHZhcigtLSN7JHByZWZpeH1mb250LW1vbm9zcGFjZSkpXG4gICAgKSxcbiAgICBcImZvbnQtc2l6ZVwiOiAoXG4gICAgICByZnM6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogZm9udC1zaXplLFxuICAgICAgY2xhc3M6IGZzLFxuICAgICAgdmFsdWVzOiAkZm9udC1zaXplc1xuICAgICksXG4gICAgXCJmb250LXN0eWxlXCI6IChcbiAgICAgIHByb3BlcnR5OiBmb250LXN0eWxlLFxuICAgICAgY2xhc3M6IGZzdCxcbiAgICAgIHZhbHVlczogaXRhbGljIG5vcm1hbFxuICAgICksXG4gICAgXCJmb250LXdlaWdodFwiOiAoXG4gICAgICBwcm9wZXJ0eTogZm9udC13ZWlnaHQsXG4gICAgICBjbGFzczogZncsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgbGlnaHRlcjogJGZvbnQtd2VpZ2h0LWxpZ2h0ZXIsXG4gICAgICAgIGxpZ2h0OiAkZm9udC13ZWlnaHQtbGlnaHQsXG4gICAgICAgIG5vcm1hbDogJGZvbnQtd2VpZ2h0LW5vcm1hbCxcbiAgICAgICAgbWVkaXVtOiAkZm9udC13ZWlnaHQtbWVkaXVtLFxuICAgICAgICBzZW1pYm9sZDogJGZvbnQtd2VpZ2h0LXNlbWlib2xkLFxuICAgICAgICBib2xkOiAkZm9udC13ZWlnaHQtYm9sZCxcbiAgICAgICAgYm9sZGVyOiAkZm9udC13ZWlnaHQtYm9sZGVyXG4gICAgICApXG4gICAgKSxcbiAgICBcImxpbmUtaGVpZ2h0XCI6IChcbiAgICAgIHByb3BlcnR5OiBsaW5lLWhlaWdodCxcbiAgICAgIGNsYXNzOiBsaCxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICAxOiAxLFxuICAgICAgICBzbTogJGxpbmUtaGVpZ2h0LXNtLFxuICAgICAgICBiYXNlOiAkbGluZS1oZWlnaHQtYmFzZSxcbiAgICAgICAgbGc6ICRsaW5lLWhlaWdodC1sZyxcbiAgICAgIClcbiAgICApLFxuICAgIFwidGV4dC1hbGlnblwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IHRleHQtYWxpZ24sXG4gICAgICBjbGFzczogdGV4dCxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICBzdGFydDogbGVmdCxcbiAgICAgICAgZW5kOiByaWdodCxcbiAgICAgICAgY2VudGVyOiBjZW50ZXIsXG4gICAgICApXG4gICAgKSxcbiAgICBcInRleHQtZGVjb3JhdGlvblwiOiAoXG4gICAgICBwcm9wZXJ0eTogdGV4dC1kZWNvcmF0aW9uLFxuICAgICAgdmFsdWVzOiBub25lIHVuZGVybGluZSBsaW5lLXRocm91Z2hcbiAgICApLFxuICAgIFwidGV4dC10cmFuc2Zvcm1cIjogKFxuICAgICAgcHJvcGVydHk6IHRleHQtdHJhbnNmb3JtLFxuICAgICAgY2xhc3M6IHRleHQsXG4gICAgICB2YWx1ZXM6IGxvd2VyY2FzZSB1cHBlcmNhc2UgY2FwaXRhbGl6ZVxuICAgICksXG4gICAgXCJ3aGl0ZS1zcGFjZVwiOiAoXG4gICAgICBwcm9wZXJ0eTogd2hpdGUtc3BhY2UsXG4gICAgICBjbGFzczogdGV4dCxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICB3cmFwOiBub3JtYWwsXG4gICAgICAgIG5vd3JhcDogbm93cmFwLFxuICAgICAgKVxuICAgICksXG4gICAgXCJ3b3JkLXdyYXBcIjogKFxuICAgICAgcHJvcGVydHk6IHdvcmQtd3JhcCB3b3JkLWJyZWFrLFxuICAgICAgY2xhc3M6IHRleHQsXG4gICAgICB2YWx1ZXM6IChicmVhazogYnJlYWstd29yZCksXG4gICAgICBydGw6IGZhbHNlXG4gICAgKSxcbiAgICAvLyBzY3NzLWRvY3MtZW5kIHV0aWxzLXRleHRcbiAgICAvLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbHMtY29sb3JcbiAgICBcImNvbG9yXCI6IChcbiAgICAgIHByb3BlcnR5OiBjb2xvcixcbiAgICAgIGNsYXNzOiB0ZXh0LFxuICAgICAgbG9jYWwtdmFyczogKFxuICAgICAgICBcInRleHQtb3BhY2l0eVwiOiAxXG4gICAgICApLFxuICAgICAgdmFsdWVzOiBtYXAtbWVyZ2UoXG4gICAgICAgICR1dGlsaXRpZXMtdGV4dC1jb2xvcnMsXG4gICAgICAgIChcbiAgICAgICAgICBcIm11dGVkXCI6IHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpLCAvLyBkZXByZWNhdGVkXG4gICAgICAgICAgXCJibGFjay01MFwiOiByZ2JhKCRibGFjaywgLjUpLCAvLyBkZXByZWNhdGVkXG4gICAgICAgICAgXCJ3aGl0ZS01MFwiOiByZ2JhKCR3aGl0ZSwgLjUpLCAvLyBkZXByZWNhdGVkXG4gICAgICAgICAgXCJib2R5LXNlY29uZGFyeVwiOiB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSxcbiAgICAgICAgICBcImJvZHktdGVydGlhcnlcIjogdmFyKC0tI3skcHJlZml4fXRlcnRpYXJ5LWNvbG9yKSxcbiAgICAgICAgICBcImJvZHktZW1waGFzaXNcIjogdmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yKSxcbiAgICAgICAgICBcInJlc2V0XCI6IGluaGVyaXQsXG4gICAgICAgIClcbiAgICAgIClcbiAgICApLFxuICAgIFwidGV4dC1vcGFjaXR5XCI6IChcbiAgICAgIGNzcy12YXI6IHRydWUsXG4gICAgICBjbGFzczogdGV4dC1vcGFjaXR5LFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIDI1OiAuMjUsXG4gICAgICAgIDUwOiAuNSxcbiAgICAgICAgNzU6IC43NSxcbiAgICAgICAgMTAwOiAxXG4gICAgICApXG4gICAgKSxcbiAgICBcInRleHQtY29sb3JcIjogKFxuICAgICAgcHJvcGVydHk6IGNvbG9yLFxuICAgICAgY2xhc3M6IHRleHQsXG4gICAgICB2YWx1ZXM6ICR1dGlsaXRpZXMtdGV4dC1lbXBoYXNpcy1jb2xvcnNcbiAgICApLFxuICAgIC8vIHNjc3MtZG9jcy1lbmQgdXRpbHMtY29sb3JcbiAgICAvLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbHMtbGlua3NcbiAgICBcImxpbmstb3BhY2l0eVwiOiAoXG4gICAgICBjc3MtdmFyOiB0cnVlLFxuICAgICAgY2xhc3M6IGxpbmstb3BhY2l0eSxcbiAgICAgIHN0YXRlOiBob3ZlcixcbiAgICAgIHZhbHVlczogKFxuICAgICAgICAxMDogLjEsXG4gICAgICAgIDI1OiAuMjUsXG4gICAgICAgIDUwOiAuNSxcbiAgICAgICAgNzU6IC43NSxcbiAgICAgICAgMTAwOiAxXG4gICAgICApXG4gICAgKSxcbiAgICBcImxpbmstb2Zmc2V0XCI6IChcbiAgICAgIHByb3BlcnR5OiB0ZXh0LXVuZGVybGluZS1vZmZzZXQsXG4gICAgICBjbGFzczogbGluay1vZmZzZXQsXG4gICAgICBzdGF0ZTogaG92ZXIsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgMTogLjEyNWVtLFxuICAgICAgICAyOiAuMjVlbSxcbiAgICAgICAgMzogLjM3NWVtLFxuICAgICAgKVxuICAgICksXG4gICAgXCJsaW5rLXVuZGVybGluZVwiOiAoXG4gICAgICBwcm9wZXJ0eTogdGV4dC1kZWNvcmF0aW9uLWNvbG9yLFxuICAgICAgY2xhc3M6IGxpbmstdW5kZXJsaW5lLFxuICAgICAgbG9jYWwtdmFyczogKFxuICAgICAgICBcImxpbmstdW5kZXJsaW5lLW9wYWNpdHlcIjogMVxuICAgICAgKSxcbiAgICAgIHZhbHVlczogbWFwLW1lcmdlKFxuICAgICAgICAkdXRpbGl0aWVzLWxpbmtzLXVuZGVybGluZSxcbiAgICAgICAgKFxuICAgICAgICAgIG51bGw6IHJnYmEodmFyKC0tI3skcHJlZml4fWxpbmstY29sb3ItcmdiKSwgdmFyKC0tI3skcHJlZml4fWxpbmstdW5kZXJsaW5lLW9wYWNpdHksIDEpKSxcbiAgICAgICAgKVxuICAgICAgKVxuICAgICksXG4gICAgXCJsaW5rLXVuZGVybGluZS1vcGFjaXR5XCI6IChcbiAgICAgIGNzcy12YXI6IHRydWUsXG4gICAgICBjbGFzczogbGluay11bmRlcmxpbmUtb3BhY2l0eSxcbiAgICAgIHN0YXRlOiBob3ZlcixcbiAgICAgIHZhbHVlczogKFxuICAgICAgICAwOiAwLFxuICAgICAgICAxMDogLjEsXG4gICAgICAgIDI1OiAuMjUsXG4gICAgICAgIDUwOiAuNSxcbiAgICAgICAgNzU6IC43NSxcbiAgICAgICAgMTAwOiAxXG4gICAgICApLFxuICAgICksXG4gICAgLy8gc2Nzcy1kb2NzLWVuZCB1dGlscy1saW5rc1xuICAgIC8vIHNjc3MtZG9jcy1zdGFydCB1dGlscy1iZy1jb2xvclxuICAgIFwiYmFja2dyb3VuZC1jb2xvclwiOiAoXG4gICAgICBwcm9wZXJ0eTogYmFja2dyb3VuZC1jb2xvcixcbiAgICAgIGNsYXNzOiBiZyxcbiAgICAgIGxvY2FsLXZhcnM6IChcbiAgICAgICAgXCJiZy1vcGFjaXR5XCI6IDFcbiAgICAgICksXG4gICAgICB2YWx1ZXM6IG1hcC1tZXJnZShcbiAgICAgICAgJHV0aWxpdGllcy1iZy1jb2xvcnMsXG4gICAgICAgIChcbiAgICAgICAgICBcInRyYW5zcGFyZW50XCI6IHRyYW5zcGFyZW50LFxuICAgICAgICAgIFwiYm9keS1zZWNvbmRhcnlcIjogcmdiYSh2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnLXJnYiksIHZhcigtLSN7JHByZWZpeH1iZy1vcGFjaXR5KSksXG4gICAgICAgICAgXCJib2R5LXRlcnRpYXJ5XCI6IHJnYmEodmFyKC0tI3skcHJlZml4fXRlcnRpYXJ5LWJnLXJnYiksIHZhcigtLSN7JHByZWZpeH1iZy1vcGFjaXR5KSksXG4gICAgICAgIClcbiAgICAgIClcbiAgICApLFxuICAgIFwiYmctb3BhY2l0eVwiOiAoXG4gICAgICBjc3MtdmFyOiB0cnVlLFxuICAgICAgY2xhc3M6IGJnLW9wYWNpdHksXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgMTA6IC4xLFxuICAgICAgICAyNTogLjI1LFxuICAgICAgICA1MDogLjUsXG4gICAgICAgIDc1OiAuNzUsXG4gICAgICAgIDEwMDogMVxuICAgICAgKVxuICAgICksXG4gICAgXCJzdWJ0bGUtYmFja2dyb3VuZC1jb2xvclwiOiAoXG4gICAgICBwcm9wZXJ0eTogYmFja2dyb3VuZC1jb2xvcixcbiAgICAgIGNsYXNzOiBiZyxcbiAgICAgIHZhbHVlczogJHV0aWxpdGllcy1iZy1zdWJ0bGVcbiAgICApLFxuICAgIC8vIHNjc3MtZG9jcy1lbmQgdXRpbHMtYmctY29sb3JcbiAgICBcImdyYWRpZW50XCI6IChcbiAgICAgIHByb3BlcnR5OiBiYWNrZ3JvdW5kLWltYWdlLFxuICAgICAgY2xhc3M6IGJnLFxuICAgICAgdmFsdWVzOiAoZ3JhZGllbnQ6IHZhcigtLSN7JHByZWZpeH1ncmFkaWVudCkpXG4gICAgKSxcbiAgICAvLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbHMtaW50ZXJhY3Rpb25cbiAgICBcInVzZXItc2VsZWN0XCI6IChcbiAgICAgIHByb3BlcnR5OiB1c2VyLXNlbGVjdCxcbiAgICAgIHZhbHVlczogYWxsIGF1dG8gbm9uZVxuICAgICksXG4gICAgXCJwb2ludGVyLWV2ZW50c1wiOiAoXG4gICAgICBwcm9wZXJ0eTogcG9pbnRlci1ldmVudHMsXG4gICAgICBjbGFzczogcGUsXG4gICAgICB2YWx1ZXM6IG5vbmUgYXV0byxcbiAgICApLFxuICAgIC8vIHNjc3MtZG9jcy1lbmQgdXRpbHMtaW50ZXJhY3Rpb25cbiAgICAvLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbHMtYm9yZGVyLXJhZGl1c1xuICAgIFwicm91bmRlZFwiOiAoXG4gICAgICBwcm9wZXJ0eTogYm9yZGVyLXJhZGl1cyxcbiAgICAgIGNsYXNzOiByb3VuZGVkLFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIG51bGw6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSxcbiAgICAgICAgMDogMCxcbiAgICAgICAgMTogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtc20pLFxuICAgICAgICAyOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cyksXG4gICAgICAgIDM6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnKSxcbiAgICAgICAgNDogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMteGwpLFxuICAgICAgICA1OiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy14eGwpLFxuICAgICAgICBjaXJjbGU6IDUwJSxcbiAgICAgICAgcGlsbDogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtcGlsbClcbiAgICAgIClcbiAgICApLFxuICAgIFwicm91bmRlZC10b3BcIjogKFxuICAgICAgcHJvcGVydHk6IGJvcmRlci10b3AtbGVmdC1yYWRpdXMgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMsXG4gICAgICBjbGFzczogcm91bmRlZC10b3AsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgbnVsbDogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpLFxuICAgICAgICAwOiAwLFxuICAgICAgICAxOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1zbSksXG4gICAgICAgIDI6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSxcbiAgICAgICAgMzogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtbGcpLFxuICAgICAgICA0OiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy14bCksXG4gICAgICAgIDU6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXh4bCksXG4gICAgICAgIGNpcmNsZTogNTAlLFxuICAgICAgICBwaWxsOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1waWxsKVxuICAgICAgKVxuICAgICksXG4gICAgXCJyb3VuZGVkLWVuZFwiOiAoXG4gICAgICBwcm9wZXJ0eTogYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXMsXG4gICAgICBjbGFzczogcm91bmRlZC1lbmQsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgbnVsbDogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpLFxuICAgICAgICAwOiAwLFxuICAgICAgICAxOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1zbSksXG4gICAgICAgIDI6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSxcbiAgICAgICAgMzogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtbGcpLFxuICAgICAgICA0OiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy14bCksXG4gICAgICAgIDU6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXh4bCksXG4gICAgICAgIGNpcmNsZTogNTAlLFxuICAgICAgICBwaWxsOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1waWxsKVxuICAgICAgKVxuICAgICksXG4gICAgXCJyb3VuZGVkLWJvdHRvbVwiOiAoXG4gICAgICBwcm9wZXJ0eTogYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXMgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cyxcbiAgICAgIGNsYXNzOiByb3VuZGVkLWJvdHRvbSxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICBudWxsOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cyksXG4gICAgICAgIDA6IDAsXG4gICAgICAgIDE6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXNtKSxcbiAgICAgICAgMjogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpLFxuICAgICAgICAzOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1sZyksXG4gICAgICAgIDQ6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXhsKSxcbiAgICAgICAgNTogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMteHhsKSxcbiAgICAgICAgY2lyY2xlOiA1MCUsXG4gICAgICAgIHBpbGw6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXBpbGwpXG4gICAgICApXG4gICAgKSxcbiAgICBcInJvdW5kZWQtc3RhcnRcIjogKFxuICAgICAgcHJvcGVydHk6IGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1cyxcbiAgICAgIGNsYXNzOiByb3VuZGVkLXN0YXJ0LFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIG51bGw6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSxcbiAgICAgICAgMDogMCxcbiAgICAgICAgMTogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtc20pLFxuICAgICAgICAyOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cyksXG4gICAgICAgIDM6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnKSxcbiAgICAgICAgNDogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMteGwpLFxuICAgICAgICA1OiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy14eGwpLFxuICAgICAgICBjaXJjbGU6IDUwJSxcbiAgICAgICAgcGlsbDogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtcGlsbClcbiAgICAgIClcbiAgICApLFxuICAgIC8vIHNjc3MtZG9jcy1lbmQgdXRpbHMtYm9yZGVyLXJhZGl1c1xuICAgIC8vIHNjc3MtZG9jcy1zdGFydCB1dGlscy12aXNpYmlsaXR5XG4gICAgXCJ2aXNpYmlsaXR5XCI6IChcbiAgICAgIHByb3BlcnR5OiB2aXNpYmlsaXR5LFxuICAgICAgY2xhc3M6IG51bGwsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgdmlzaWJsZTogdmlzaWJsZSxcbiAgICAgICAgaW52aXNpYmxlOiBoaWRkZW4sXG4gICAgICApXG4gICAgKSxcbiAgICAvLyBzY3NzLWRvY3MtZW5kIHV0aWxzLXZpc2liaWxpdHlcbiAgICAvLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbHMtemluZGV4XG4gICAgXCJ6LWluZGV4XCI6IChcbiAgICAgIHByb3BlcnR5OiB6LWluZGV4LFxuICAgICAgY2xhc3M6IHosXG4gICAgICB2YWx1ZXM6ICR6aW5kZXgtbGV2ZWxzLFxuICAgIClcbiAgICAvLyBzY3NzLWRvY3MtZW5kIHV0aWxzLXppbmRleFxuICApLFxuICAkdXRpbGl0aWVzXG4pO1xuIiwiOnJvb3QsXG5bZGF0YS1icy10aGVtZT1cImxpZ2h0XCJdIHtcbiAgLy8gTm90ZTogQ3VzdG9tIHZhcmlhYmxlIHZhbHVlcyBvbmx5IHN1cHBvcnQgU2Fzc1NjcmlwdCBpbnNpZGUgYCN7fWAuXG5cbiAgLy8gQ29sb3JzXG4gIC8vXG4gIC8vIEdlbmVyYXRlIHBhbGV0dGVzIGZvciBmdWxsIGNvbG9ycywgZ3JheXMsIGFuZCB0aGVtZSBjb2xvcnMuXG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJGNvbG9ycyB7XG4gICAgLS0jeyRwcmVmaXh9I3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkZ3JheXMge1xuICAgIC0tI3skcHJlZml4fWdyYXktI3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtcmdiIHtcbiAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn0tcmdiOiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzLXRleHQge1xuICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfS10ZXh0LWVtcGhhc2lzOiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzLWJnLXN1YnRsZSB7XG4gICAgLS0jeyRwcmVmaXh9I3skY29sb3J9LWJnLXN1YnRsZTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy1ib3JkZXItc3VidGxlIHtcbiAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn0tYm9yZGVyLXN1YnRsZTogI3skdmFsdWV9O1xuICB9XG5cbiAgLS0jeyRwcmVmaXh9d2hpdGUtcmdiOiAje3RvLXJnYigkd2hpdGUpfTtcbiAgLS0jeyRwcmVmaXh9YmxhY2stcmdiOiAje3RvLXJnYigkYmxhY2spfTtcblxuICAvLyBGb250c1xuXG4gIC8vIE5vdGU6IFVzZSBgaW5zcGVjdGAgZm9yIGxpc3RzIHNvIHRoYXQgcXVvdGVkIGl0ZW1zIGtlZXAgdGhlIHF1b3Rlcy5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL3Nhc3MvaXNzdWVzLzIzODMjaXNzdWVjb21tZW50LTMzNjM0OTE3MlxuICAtLSN7JHByZWZpeH1mb250LXNhbnMtc2VyaWY6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktc2Fucy1zZXJpZil9O1xuICAtLSN7JHByZWZpeH1mb250LW1vbm9zcGFjZTogI3tpbnNwZWN0KCRmb250LWZhbWlseS1tb25vc3BhY2UpfTtcbiAgLS0jeyRwcmVmaXh9Z3JhZGllbnQ6ICN7JGdyYWRpZW50fTtcblxuICAvLyBSb290IGFuZCBib2R5XG4gIC8vIHNjc3MtZG9jcy1zdGFydCByb290LWJvZHktdmFyaWFibGVzXG4gIEBpZiAkZm9udC1zaXplLXJvb3QgIT0gbnVsbCB7XG4gICAgLS0jeyRwcmVmaXh9cm9vdC1mb250LXNpemU6ICN7JGZvbnQtc2l6ZS1yb290fTtcbiAgfVxuICAtLSN7JHByZWZpeH1ib2R5LWZvbnQtZmFtaWx5OiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LWJhc2UpfTtcbiAgQGluY2x1ZGUgcmZzKCRmb250LXNpemUtYmFzZSwgLS0jeyRwcmVmaXh9Ym9keS1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1ib2R5LWZvbnQtd2VpZ2h0OiAjeyRmb250LXdlaWdodC1iYXNlfTtcbiAgLS0jeyRwcmVmaXh9Ym9keS1saW5lLWhlaWdodDogI3skbGluZS1oZWlnaHQtYmFzZX07XG4gIEBpZiAkYm9keS10ZXh0LWFsaWduICE9IG51bGwge1xuICAgIC0tI3skcHJlZml4fWJvZHktdGV4dC1hbGlnbjogI3skYm9keS10ZXh0LWFsaWdufTtcbiAgfVxuXG4gIC0tI3skcHJlZml4fWJvZHktY29sb3I6ICN7JGJvZHktY29sb3J9O1xuICAtLSN7JHByZWZpeH1ib2R5LWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktY29sb3IpfTtcbiAgLS0jeyRwcmVmaXh9Ym9keS1iZzogI3skYm9keS1iZ307XG4gIC0tI3skcHJlZml4fWJvZHktYmctcmdiOiAje3RvLXJnYigkYm9keS1iZyl9O1xuXG4gIC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yOiAjeyRib2R5LWVtcGhhc2lzLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiOiAje3RvLXJnYigkYm9keS1lbXBoYXNpcy1jb2xvcil9O1xuXG4gIC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcjogI3skYm9keS1zZWNvbmRhcnktY29sb3J9O1xuICAtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3ItcmdiOiAje3RvLXJnYigkYm9keS1zZWNvbmRhcnktY29sb3IpfTtcbiAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnOiAjeyRib2R5LXNlY29uZGFyeS1iZ307XG4gIC0tI3skcHJlZml4fXNlY29uZGFyeS1iZy1yZ2I6ICN7dG8tcmdiKCRib2R5LXNlY29uZGFyeS1iZyl9O1xuXG4gIC0tI3skcHJlZml4fXRlcnRpYXJ5LWNvbG9yOiAjeyRib2R5LXRlcnRpYXJ5LWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dGVydGlhcnktY29sb3ItcmdiOiAje3RvLXJnYigkYm9keS10ZXJ0aWFyeS1jb2xvcil9O1xuICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZzogI3skYm9keS10ZXJ0aWFyeS1iZ307XG4gIC0tI3skcHJlZml4fXRlcnRpYXJ5LWJnLXJnYjogI3t0by1yZ2IoJGJvZHktdGVydGlhcnktYmcpfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCByb290LWJvZHktdmFyaWFibGVzXG5cbiAgLS0jeyRwcmVmaXh9aGVhZGluZy1jb2xvcjogI3skaGVhZGluZ3MtY29sb3J9O1xuXG4gIC0tI3skcHJlZml4fWxpbmstY29sb3I6ICN7JGxpbmstY29sb3J9O1xuICAtLSN7JHByZWZpeH1saW5rLWNvbG9yLXJnYjogI3t0by1yZ2IoJGxpbmstY29sb3IpfTtcbiAgLS0jeyRwcmVmaXh9bGluay1kZWNvcmF0aW9uOiAjeyRsaW5rLWRlY29yYXRpb259O1xuXG4gIC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3I6ICN7JGxpbmstaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1saW5rLWhvdmVyLWNvbG9yLXJnYjogI3t0by1yZ2IoJGxpbmstaG92ZXItY29sb3IpfTtcblxuICBAaWYgJGxpbmstaG92ZXItZGVjb3JhdGlvbiAhPSBudWxsIHtcbiAgICAtLSN7JHByZWZpeH1saW5rLWhvdmVyLWRlY29yYXRpb246ICN7JGxpbmstaG92ZXItZGVjb3JhdGlvbn07XG4gIH1cblxuICAtLSN7JHByZWZpeH1jb2RlLWNvbG9yOiAjeyRjb2RlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9aGlnaGxpZ2h0LWNvbG9yOiAjeyRtYXJrLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9aGlnaGxpZ2h0LWJnOiAjeyRtYXJrLWJnfTtcblxuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcm9vdC1ib3JkZXItdmFyXG4gIC0tI3skcHJlZml4fWJvcmRlci13aWR0aDogI3skYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXN0eWxlOiAjeyRib3JkZXItc3R5bGV9O1xuICAtLSN7JHByZWZpeH1ib3JkZXItY29sb3I6ICN7JGJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJvcmRlci1jb2xvci10cmFuc2x1Y2VudDogI3skYm9yZGVyLWNvbG9yLXRyYW5zbHVjZW50fTtcblxuICAtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzOiAjeyRib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1zbTogI3skYm9yZGVyLXJhZGl1cy1zbX07XG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtbGc6ICN7JGJvcmRlci1yYWRpdXMtbGd9O1xuICAtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXhsOiAjeyRib3JkZXItcmFkaXVzLXhsfTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy14eGw6ICN7JGJvcmRlci1yYWRpdXMteHhsfTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy0yeGw6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXh4bCk7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMy4wIGZvciBjb25zaXN0ZW5jeVxuICAtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXBpbGw6ICN7JGJvcmRlci1yYWRpdXMtcGlsbH07XG4gIC8vIHNjc3MtZG9jcy1lbmQgcm9vdC1ib3JkZXItdmFyXG5cbiAgLS0jeyRwcmVmaXh9Ym94LXNoYWRvdzogI3skYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWJveC1zaGFkb3ctc206ICN7JGJveC1zaGFkb3ctc219O1xuICAtLSN7JHByZWZpeH1ib3gtc2hhZG93LWxnOiAjeyRib3gtc2hhZG93LWxnfTtcbiAgLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1pbnNldDogI3skYm94LXNoYWRvdy1pbnNldH07XG5cbiAgLy8gRm9jdXMgc3R5bGVzXG4gIC8vIHNjc3MtZG9jcy1zdGFydCByb290LWZvY3VzLXZhcmlhYmxlc1xuICAtLSN7JHByZWZpeH1mb2N1cy1yaW5nLXdpZHRoOiAjeyRmb2N1cy1yaW5nLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9Zm9jdXMtcmluZy1vcGFjaXR5OiAjeyRmb2N1cy1yaW5nLW9wYWNpdHl9O1xuICAtLSN7JHByZWZpeH1mb2N1cy1yaW5nLWNvbG9yOiAjeyRmb2N1cy1yaW5nLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCByb290LWZvY3VzLXZhcmlhYmxlc1xuXG4gIC8vIHNjc3MtZG9jcy1zdGFydCByb290LWZvcm0tdmFsaWRhdGlvbi12YXJpYWJsZXNcbiAgLS0jeyRwcmVmaXh9Zm9ybS12YWxpZC1jb2xvcjogI3skZm9ybS12YWxpZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWZvcm0tdmFsaWQtYm9yZGVyLWNvbG9yOiAjeyRmb3JtLXZhbGlkLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWZvcm0taW52YWxpZC1jb2xvcjogI3skZm9ybS1pbnZhbGlkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Zm9ybS1pbnZhbGlkLWJvcmRlci1jb2xvcjogI3skZm9ybS1pbnZhbGlkLWJvcmRlci1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgcm9vdC1mb3JtLXZhbGlkYXRpb24tdmFyaWFibGVzXG59XG5cbkBpZiAkZW5hYmxlLWRhcmstbW9kZSB7XG4gIEBpbmNsdWRlIGNvbG9yLW1vZGUoZGFyaywgdHJ1ZSkge1xuICAgIGNvbG9yLXNjaGVtZTogZGFyaztcblxuICAgIC8vIHNjc3MtZG9jcy1zdGFydCByb290LWRhcmstbW9kZS12YXJzXG4gICAgLS0jeyRwcmVmaXh9Ym9keS1jb2xvcjogI3skYm9keS1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1ib2R5LWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktY29sb3ItZGFyayl9O1xuICAgIC0tI3skcHJlZml4fWJvZHktYmc6ICN7JGJvZHktYmctZGFya307XG4gICAgLS0jeyRwcmVmaXh9Ym9keS1iZy1yZ2I6ICN7dG8tcmdiKCRib2R5LWJnLWRhcmspfTtcblxuICAgIC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yOiAjeyRib2R5LWVtcGhhc2lzLWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktZW1waGFzaXMtY29sb3ItZGFyayl9O1xuXG4gICAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yOiAjeyRib2R5LXNlY29uZGFyeS1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3ItcmdiOiAje3RvLXJnYigkYm9keS1zZWNvbmRhcnktY29sb3ItZGFyayl9O1xuICAgIC0tI3skcHJlZml4fXNlY29uZGFyeS1iZzogI3skYm9keS1zZWNvbmRhcnktYmctZGFya307XG4gICAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnLXJnYjogI3t0by1yZ2IoJGJvZHktc2Vjb25kYXJ5LWJnLWRhcmspfTtcblxuICAgIC0tI3skcHJlZml4fXRlcnRpYXJ5LWNvbG9yOiAjeyRib2R5LXRlcnRpYXJ5LWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fXRlcnRpYXJ5LWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktdGVydGlhcnktY29sb3ItZGFyayl9O1xuICAgIC0tI3skcHJlZml4fXRlcnRpYXJ5LWJnOiAjeyRib2R5LXRlcnRpYXJ5LWJnLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fXRlcnRpYXJ5LWJnLXJnYjogI3t0by1yZ2IoJGJvZHktdGVydGlhcnktYmctZGFyayl9O1xuXG4gICAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy10ZXh0LWRhcmsge1xuICAgICAgLS0jeyRwcmVmaXh9I3skY29sb3J9LXRleHQtZW1waGFzaXM6ICN7JHZhbHVlfTtcbiAgICB9XG5cbiAgICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzLWJnLXN1YnRsZS1kYXJrIHtcbiAgICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfS1iZy1zdWJ0bGU6ICN7JHZhbHVlfTtcbiAgICB9XG5cbiAgICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzLWJvcmRlci1zdWJ0bGUtZGFyayB7XG4gICAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn0tYm9yZGVyLXN1YnRsZTogI3skdmFsdWV9O1xuICAgIH1cblxuICAgIC0tI3skcHJlZml4fWhlYWRpbmctY29sb3I6ICN7JGhlYWRpbmdzLWNvbG9yLWRhcmt9O1xuXG4gICAgLS0jeyRwcmVmaXh9bGluay1jb2xvcjogI3skbGluay1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1saW5rLWhvdmVyLWNvbG9yOiAjeyRsaW5rLWhvdmVyLWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWxpbmstY29sb3ItcmdiOiAje3RvLXJnYigkbGluay1jb2xvci1kYXJrKX07XG4gICAgLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvci1yZ2I6ICN7dG8tcmdiKCRsaW5rLWhvdmVyLWNvbG9yLWRhcmspfTtcblxuICAgIC0tI3skcHJlZml4fWNvZGUtY29sb3I6ICN7JGNvZGUtY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9aGlnaGxpZ2h0LWNvbG9yOiAjeyRtYXJrLWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWhpZ2hsaWdodC1iZzogI3skbWFyay1iZy1kYXJrfTtcblxuICAgIC0tI3skcHJlZml4fWJvcmRlci1jb2xvcjogI3skYm9yZGVyLWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWJvcmRlci1jb2xvci10cmFuc2x1Y2VudDogI3skYm9yZGVyLWNvbG9yLXRyYW5zbHVjZW50LWRhcmt9O1xuXG4gICAgLS0jeyRwcmVmaXh9Zm9ybS12YWxpZC1jb2xvcjogI3skZm9ybS12YWxpZC1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1mb3JtLXZhbGlkLWJvcmRlci1jb2xvcjogI3skZm9ybS12YWxpZC1ib3JkZXItY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9Zm9ybS1pbnZhbGlkLWNvbG9yOiAjeyRmb3JtLWludmFsaWQtY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9Zm9ybS1pbnZhbGlkLWJvcmRlci1jb2xvcjogI3skZm9ybS1pbnZhbGlkLWJvcmRlci1jb2xvci1kYXJrfTtcbiAgICAvLyBzY3NzLWRvY3MtZW5kIHJvb3QtZGFyay1tb2RlLXZhcnNcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGUsIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXhcblxuXG4vLyBSZWJvb3Rcbi8vXG4vLyBOb3JtYWxpemF0aW9uIG9mIEhUTUwgZWxlbWVudHMsIG1hbnVhbGx5IGZvcmtlZCBmcm9tIE5vcm1hbGl6ZS5jc3MgdG8gcmVtb3ZlXG4vLyBzdHlsZXMgdGFyZ2V0aW5nIGlycmVsZXZhbnQgYnJvd3NlcnMgd2hpbGUgYXBwbHlpbmcgbmV3IHN0eWxlcy5cbi8vXG4vLyBOb3JtYWxpemUgaXMgbGljZW5zZWQgTUlULiBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzXG5cblxuLy8gRG9jdW1lbnRcbi8vXG4vLyBDaGFuZ2UgZnJvbSBgYm94LXNpemluZzogY29udGVudC1ib3hgIHNvIHRoYXQgYHdpZHRoYCBpcyBub3QgYWZmZWN0ZWQgYnkgYHBhZGRpbmdgIG9yIGBib3JkZXJgLlxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5cbi8vIFJvb3Rcbi8vXG4vLyBBYmlsaXR5IHRvIHRoZSB2YWx1ZSBvZiB0aGUgcm9vdCBmb250IHNpemVzLCBhZmZlY3RpbmcgdGhlIHZhbHVlIG9mIGByZW1gLlxuLy8gbnVsbCBieSBkZWZhdWx0LCB0aHVzIG5vdGhpbmcgaXMgZ2VuZXJhdGVkLlxuXG46cm9vdCB7XG4gIEBpZiAkZm9udC1zaXplLXJvb3QgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1yb290LWZvbnQtc2l6ZSkpO1xuICB9XG5cbiAgQGlmICRlbmFibGUtc21vb3RoLXNjcm9sbCB7XG4gICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiBuby1wcmVmZXJlbmNlKSB7XG4gICAgICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBCb2R5XG4vL1xuLy8gMS4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuLy8gMi4gQXMgYSBiZXN0IHByYWN0aWNlLCBhcHBseSBhIGRlZmF1bHQgYGJhY2tncm91bmQtY29sb3JgLlxuLy8gMy4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4vLyA0LiBDaGFuZ2UgdGhlIGRlZmF1bHQgdGFwIGhpZ2hsaWdodCB0byBiZSBjb21wbGV0ZWx5IHRyYW5zcGFyZW50IGluIGlPUy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHJlYm9vdC1ib2R5LXJ1bGVzXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyAvLyAxXG4gIGZvbnQtZmFtaWx5OiB2YXIoLS0jeyRwcmVmaXh9Ym9keS1mb250LWZhbWlseSk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1mb250LXNpemUpKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1ib2R5LWZvbnQtd2VpZ2h0KTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogdmFyKC0tI3skcHJlZml4fWJvZHktdGV4dC1hbGlnbik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKTsgLy8gMlxuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDNcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKCRibGFjaywgMCk7IC8vIDRcbn1cbi8vIHNjc3MtZG9jcy1lbmQgcmVib290LWJvZHktcnVsZXNcblxuXG4vLyBDb250ZW50IGdyb3VwaW5nXG4vL1xuLy8gMS4gUmVzZXQgRmlyZWZveCdzIGdyYXkgY29sb3JcblxuaHIge1xuICBtYXJnaW46ICRoci1tYXJnaW4teSAwO1xuICBjb2xvcjogJGhyLWNvbG9yOyAvLyAxXG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogJGhyLWJvcmRlci13aWR0aCBzb2xpZCAkaHItYm9yZGVyLWNvbG9yO1xuICBvcGFjaXR5OiAkaHItb3BhY2l0eTtcbn1cblxuXG4vLyBUeXBvZ3JhcGh5XG4vL1xuLy8gMS4gUmVtb3ZlIHRvcCBtYXJnaW5zIGZyb20gaGVhZGluZ3Ncbi8vICAgIEJ5IGRlZmF1bHQsIGA8aDE+YC1gPGg2PmAgYWxsIHJlY2VpdmUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gV2UgbnVrZSB0aGUgdG9wXG4vLyAgICBtYXJnaW4gZm9yIGVhc2llciBjb250cm9sIHdpdGhpbiB0eXBlIHNjYWxlcyBhcyBpdCBhdm9pZHMgbWFyZ2luIGNvbGxhcHNpbmcuXG5cbiVoZWFkaW5nIHtcbiAgbWFyZ2luLXRvcDogMDsgLy8gMVxuICBtYXJnaW4tYm90dG9tOiAkaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTtcbiAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgZm9udC1zdHlsZTogJGhlYWRpbmdzLWZvbnQtc3R5bGU7XG4gIGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9aGVhZGluZy1jb2xvcik7XG59XG5cbmgxIHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoMS1mb250LXNpemUpO1xufVxuXG5oMiB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDItZm9udC1zaXplKTtcbn1cblxuaDMge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGgzLWZvbnQtc2l6ZSk7XG59XG5cbmg0IHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoNC1mb250LXNpemUpO1xufVxuXG5oNSB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDUtZm9udC1zaXplKTtcbn1cblxuaDYge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGg2LWZvbnQtc2l6ZSk7XG59XG5cblxuLy8gUmVzZXQgbWFyZ2lucyBvbiBwYXJhZ3JhcGhzXG4vL1xuLy8gU2ltaWxhcmx5LCB0aGUgdG9wIG1hcmdpbiBvbiBgPHA+YHMgZ2V0IHJlc2V0LiBIb3dldmVyLCB3ZSBhbHNvIHJlc2V0IHRoZVxuLy8gYm90dG9tIG1hcmdpbiB0byB1c2UgYHJlbWAgdW5pdHMgaW5zdGVhZCBvZiBgZW1gLlxuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xufVxuXG5cbi8vIEFiYnJldmlhdGlvbnNcbi8vXG4vLyAxLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4vLyAyLiBBZGQgZXhwbGljaXQgY3Vyc29yIHRvIGluZGljYXRlIGNoYW5nZWQgYmVoYXZpb3IuXG4vLyAzLiBQcmV2ZW50IHRoZSB0ZXh0LWRlY29yYXRpb24gdG8gYmUgc2tpcHBlZC5cblxuYWJiclt0aXRsZV0ge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDFcbiAgY3Vyc29yOiBoZWxwOyAvLyAyXG4gIHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogbm9uZTsgLy8gM1xufVxuXG5cbi8vIEFkZHJlc3NcblxuYWRkcmVzcyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cblxuLy8gTGlzdHNcblxub2wsXG51bCB7XG4gIHBhZGRpbmctbGVmdDogMnJlbTtcbn1cblxub2wsXG51bCxcbmRsIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxub2wgb2wsXG51bCB1bCxcbm9sIHVsLFxudWwgb2wge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5kdCB7XG4gIGZvbnQtd2VpZ2h0OiAkZHQtZm9udC13ZWlnaHQ7XG59XG5cbi8vIDEuIFVuZG8gYnJvd3NlciBkZWZhdWx0XG5cbmRkIHtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwOyAvLyAxXG59XG5cblxuLy8gQmxvY2txdW90ZVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuXG4vLyBTdHJvbmdcbi8vXG4vLyBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlcjtcbn1cblxuXG4vLyBTbWFsbFxuLy9cbi8vIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzXG5cbnNtYWxsIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRzbWFsbC1mb250LXNpemUpO1xufVxuXG5cbi8vIE1hcmtcblxubWFyayB7XG4gIHBhZGRpbmc6ICRtYXJrLXBhZGRpbmc7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9aGlnaGxpZ2h0LWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWhpZ2hsaWdodC1iZyk7XG59XG5cblxuLy8gU3ViIGFuZCBTdXBcbi8vXG4vLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbi8vIGFsbCBicm93c2Vycy5cblxuc3ViLFxuc3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHN1Yi1zdXAtZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHsgYm90dG9tOiAtLjI1ZW07IH1cbnN1cCB7IHRvcDogLS41ZW07IH1cblxuXG4vLyBMaW5rc1xuXG5hIHtcbiAgY29sb3I6IHJnYmEodmFyKC0tI3skcHJlZml4fWxpbmstY29sb3ItcmdiKSwgdmFyKC0tI3skcHJlZml4fWxpbmstb3BhY2l0eSwgMSkpO1xuICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG5cbiAgJjpob3ZlciB7XG4gICAgLS0jeyRwcmVmaXh9bGluay1jb2xvci1yZ2I6IHZhcigtLSN7JHByZWZpeH1saW5rLWhvdmVyLWNvbG9yLXJnYik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG59XG5cbi8vIEFuZCB1bmRvIHRoZXNlIHN0eWxlcyBmb3IgcGxhY2Vob2xkZXIgbGlua3MvbmFtZWQgYW5jaG9ycyAod2l0aG91dCBocmVmKS5cbi8vIEl0IHdvdWxkIGJlIG1vcmUgc3RyYWlnaHRmb3J3YXJkIHRvIGp1c3QgdXNlIGFbaHJlZl0gaW4gcHJldmlvdXMgYmxvY2ssIGJ1dCB0aGF0XG4vLyBjYXVzZXMgc3BlY2lmaWNpdHkgaXNzdWVzIGluIG1hbnkgb3RoZXIgc3R5bGVzIHRoYXQgYXJlIHRvbyBjb21wbGV4IHRvIGZpeC5cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5NDAyXG5cbmE6bm90KFtocmVmXSk6bm90KFtjbGFzc10pIHtcbiAgJixcbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cblxuLy8gQ29kZVxuXG5wcmUsXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktY29kZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDFlbSk7IC8vIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbn1cblxuLy8gMS4gUmVtb3ZlIGJyb3dzZXIgZGVmYXVsdCB0b3AgbWFyZ2luXG4vLyAyLiBSZXNldCBicm93c2VyIGRlZmF1bHQgb2YgYDFlbWAgdG8gdXNlIGByZW1gc1xuLy8gMy4gRG9uJ3QgYWxsb3cgY29udGVudCB0byBicmVhayBvdXRzaWRlXG5cbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAwOyAvLyAxXG4gIG1hcmdpbi1ib3R0b206IDFyZW07IC8vIDJcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIDNcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjb2RlLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkcHJlLWNvbG9yO1xuXG4gIC8vIEFjY291bnQgZm9yIHNvbWUgY29kZSBvdXRwdXRzIHRoYXQgcGxhY2UgY29kZSB0YWdzIGluIHByZSB0YWdzXG4gIGNvZGUge1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIH1cbn1cblxuY29kZSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWNvZGUtY29sb3IpO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cbiAgLy8gU3RyZWFtbGluZSB0aGUgc3R5bGUgd2hlbiBpbnNpZGUgYW5jaG9ycyB0byBhdm9pZCBicm9rZW4gdW5kZXJsaW5lIGFuZCBtb3JlXG4gIGEgPiAmIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG5rYmQge1xuICBwYWRkaW5nOiAka2JkLXBhZGRpbmcteSAka2JkLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRrYmQtZm9udC1zaXplKTtcbiAgY29sb3I6ICRrYmQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRrYmQtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtc20pO1xuXG4gIGtiZCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoMWVtKTtcbiAgICBmb250LXdlaWdodDogJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ7XG4gIH1cbn1cblxuXG4vLyBGaWd1cmVzXG4vL1xuLy8gQXBwbHkgYSBjb25zaXN0ZW50IG1hcmdpbiBzdHJhdGVneSAobWF0Y2hlcyBvdXIgdHlwZSBzdHlsZXMpLlxuXG5maWd1cmUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5cbi8vIEltYWdlcyBhbmQgY29udGVudFxuXG5pbWcsXG5zdmcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG5cbi8vIFRhYmxlc1xuLy9cbi8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnNcblxudGFibGUge1xuICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAkdGFibGUtY2VsbC1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkdGFibGUtY2VsbC1wYWRkaW5nLXk7XG4gIGNvbG9yOiAkdGFibGUtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLy8gMS4gUmVtb3ZlcyBmb250LXdlaWdodCBib2xkIGJ5IGluaGVyaXRpbmdcbi8vIDIuIE1hdGNoZXMgZGVmYXVsdCBgPHRkPmAgYWxpZ25tZW50IGJ5IGluaGVyaXRpbmcgYHRleHQtYWxpZ25gLlxuLy8gMy4gRml4IGFsaWdubWVudCBmb3IgU2FmYXJpXG5cbnRoIHtcbiAgZm9udC13ZWlnaHQ6ICR0YWJsZS10aC1mb250LXdlaWdodDsgLy8gMVxuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyAyXG4gIHRleHQtYWxpZ246IC13ZWJraXQtbWF0Y2gtcGFyZW50OyAvLyAzXG59XG5cbnRoZWFkLFxudGJvZHksXG50Zm9vdCxcbnRyLFxudGQsXG50aCB7XG4gIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwO1xufVxuXG5cbi8vIEZvcm1zXG4vL1xuLy8gMS4gQWxsb3cgbGFiZWxzIHRvIHVzZSBgbWFyZ2luYCBmb3Igc3BhY2luZy5cblxubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIDFcbn1cblxuLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IGBib3JkZXItcmFkaXVzYCB0aGF0IG1hY09TIENocm9tZSBhZGRzLlxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQwOTNcblxuYnV0dG9uIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4vLyBFeHBsaWNpdGx5IHJlbW92ZSBmb2N1cyBvdXRsaW5lIGluIENocm9taXVtIHdoZW4gaXQgc2hvdWxkbid0IGJlXG4vLyB2aXNpYmxlIChlLmcuIGFzIHJlc3VsdCBvZiBtb3VzZSBjbGljayBvciB0b3VjaCB0YXApLiBJdCBhbHJlYWR5XG4vLyBzaG91bGQgYmUgZG9pbmcgdGhpcyBhdXRvbWF0aWNhbGx5LCBidXQgc2VlbXMgdG8gY3VycmVudGx5IGJlXG4vLyBjb25mdXNlZCBhbmQgYXBwbGllcyBpdHMgdmVyeSB2aXNpYmxlIHR3by10b25lIG91dGxpbmUgYW55d2F5LlxuXG5idXR0b246Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIDEuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaVxuXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbm9wdGdyb3VwLFxudGV4dGFyZWEge1xuICBtYXJnaW46IDA7IC8vIDFcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbi8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveFxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG4vLyBTZXQgdGhlIGN1cnNvciBmb3Igbm9uLWA8YnV0dG9uPmAgYnV0dG9uc1xuLy9cbi8vIERldGFpbHMgYXQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMzA1NjJcbltyb2xlPVwiYnV0dG9uXCJdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5zZWxlY3Qge1xuICAvLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHdvcmQtd3JhcCBpbiBTYWZhcmkuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0OTkwXG4gIHdvcmQtd3JhcDogbm9ybWFsO1xuXG4gIC8vIFVuZG8gdGhlIG9wYWNpdHkgY2hhbmdlIGZyb20gQ2hyb21lXG4gICY6ZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLy8gUmVtb3ZlIHRoZSBkcm9wZG93biBhcnJvdyBvbmx5IGZyb20gdGV4dCB0eXBlIGlucHV0cyBidWlsdCB3aXRoIGRhdGFsaXN0cyBpbiBDaHJvbWUuXG4vLyBTZWUgaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9hLzU0OTk3MTE4XG5cbltsaXN0XTpub3QoW3R5cGU9XCJkYXRlXCJdKTpub3QoW3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSk6bm90KFt0eXBlPVwibW9udGhcIl0pOm5vdChbdHlwZT1cIndlZWtcIl0pOm5vdChbdHlwZT1cInRpbWVcIl0pOjotd2Via2l0LWNhbGVuZGFyLXBpY2tlci1pbmRpY2F0b3Ige1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8vIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuLy8gICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuLy8gMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbi8vIDMuIE9waW5pb25hdGVkOiBhZGQgXCJoYW5kXCIgY3Vyc29yIHRvIG5vbi1kaXNhYmxlZCBidXR0b24gZWxlbWVudHMuXG5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLCAvLyAxXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxuXG4gIEBpZiAkZW5hYmxlLWJ1dHRvbi1wb2ludGVycyB7XG4gICAgJjpub3QoOmRpc2FibGVkKSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IC8vIDNcbiAgICB9XG4gIH1cbn1cblxuLy8gUmVtb3ZlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBmcm9tIEZpcmVmb3gsIGJ1dCBkb24ndCByZXN0b3JlIHRoZSBvdXRsaW5lIGxpa2UgTm9ybWFsaXplLlxuXG46Oi1tb3otZm9jdXMtaW5uZXIge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8vIDEuIFRleHRhcmVhcyBzaG91bGQgcmVhbGx5IG9ubHkgcmVzaXplIHZlcnRpY2FsbHkgc28gdGhleSBkb24ndCBicmVhayB0aGVpciAoaG9yaXpvbnRhbCkgY29udGFpbmVycy5cblxudGV4dGFyZWEge1xuICByZXNpemU6IHZlcnRpY2FsOyAvLyAxXG59XG5cbi8vIDEuIEJyb3dzZXJzIHNldCBhIGRlZmF1bHQgYG1pbi13aWR0aDogbWluLWNvbnRlbnQ7YCBvbiBmaWVsZHNldHMsXG4vLyAgICB1bmxpa2UgZS5nLiBgPGRpdj5gcywgd2hpY2ggaGF2ZSBgbWluLXdpZHRoOiAwO2AgYnkgZGVmYXVsdC5cbi8vICAgIFNvIHdlIHJlc2V0IHRoYXQgdG8gZW5zdXJlIGZpZWxkc2V0cyBiZWhhdmUgbW9yZSBsaWtlIGEgc3RhbmRhcmQgYmxvY2sgZWxlbWVudC5cbi8vICAgIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEyMzU5XG4vLyAgICBhbmQgaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvI3RoZS1maWVsZHNldC1hbmQtbGVnZW5kLWVsZW1lbnRzXG4vLyAyLiBSZXNldCB0aGUgZGVmYXVsdCBvdXRsaW5lIGJlaGF2aW9yIG9mIGZpZWxkc2V0cyBzbyB0aGV5IGRvbid0IGFmZmVjdCBwYWdlIGxheW91dC5cblxuZmllbGRzZXQge1xuICBtaW4td2lkdGg6IDA7IC8vIDFcbiAgcGFkZGluZzogMDsgLy8gMlxuICBtYXJnaW46IDA7IC8vIDJcbiAgYm9yZGVyOiAwOyAvLyAyXG59XG5cbi8vIDEuIEJ5IHVzaW5nIGBmbG9hdDogbGVmdGAsIHRoZSBsZWdlbmQgd2lsbCBiZWhhdmUgbGlrZSBhIGJsb2NrIGVsZW1lbnQuXG4vLyAgICBUaGlzIHdheSB0aGUgYm9yZGVyIG9mIGEgZmllbGRzZXQgd3JhcHMgYXJvdW5kIHRoZSBsZWdlbmQgaWYgcHJlc2VudC5cbi8vIDIuIEZpeCB3cmFwcGluZyBidWcuXG4vLyAgICBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yOTcxMlxuXG5sZWdlbmQge1xuICBmbG9hdDogbGVmdDsgLy8gMVxuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogJGxlZ2VuZC1tYXJnaW4tYm90dG9tO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGxlZ2VuZC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGxlZ2VuZC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG5cbiAgKyAqIHtcbiAgICBjbGVhcjogbGVmdDsgLy8gMlxuICB9XG59XG5cbi8vIEZpeCBoZWlnaHQgb2YgaW5wdXRzIHdpdGggYSB0eXBlIG9mIGRhdGV0aW1lLWxvY2FsLCBkYXRlLCBtb250aCwgd2Vlaywgb3IgdGltZVxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTg4NDJcblxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtZmllbGRzLXdyYXBwZXIsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC10ZXh0LFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtbWludXRlLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtaG91ci1maWVsZCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWRheS1maWVsZCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1vbnRoLWZpZWxkLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQteWVhci1maWVsZCB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLy8gMS4gVGhpcyBvdmVycmlkZXMgdGhlIGV4dHJhIHJvdW5kZWQgY29ybmVycyBvbiBzZWFyY2ggaW5wdXRzIGluIGlPUyBzbyB0aGF0IG91clxuLy8gICAgYC5mb3JtLWNvbnRyb2xgIGNsYXNzIGNhbiBwcm9wZXJseSBzdHlsZSB0aGVtLiBOb3RlIHRoYXQgdGhpcyBjYW5ub3Qgc2ltcGx5XG4vLyAgICBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXG4vLyAgICBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTg2LlxuLy8gMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIDFcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8vIDJcbn1cblxuLy8gMS4gQSBmZXcgaW5wdXQgdHlwZXMgc2hvdWxkIHN0YXkgTFRSXG4vLyBTZWUgaHR0cHM6Ly9ydGxzdHlsaW5nLmNvbS9wb3N0cy9ydGwtc3R5bGluZyNmb3JtLWlucHV0c1xuLy8gMi4gUlRMIG9ubHkgb3V0cHV0XG4vLyBTZWUgaHR0cHM6Ly9ydGxjc3MuY29tL2xlYXJuL3VzYWdlLWd1aWRlL2NvbnRyb2wtZGlyZWN0aXZlcy8jcmF3XG5cbi8qIHJ0bDpyYXc6XG5bdHlwZT1cInRlbFwiXSxcblt0eXBlPVwidXJsXCJdLFxuW3R5cGU9XCJlbWFpbFwiXSxcblt0eXBlPVwibnVtYmVyXCJdIHtcbiAgZGlyZWN0aW9uOiBsdHI7XG59XG4qL1xuXG4vLyBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG5cbjo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy8gUmVtb3ZlIHBhZGRpbmcgYXJvdW5kIGNvbG9yIHBpY2tlcnMgaW4gd2Via2l0IGJyb3dzZXJzXG5cbjo6LXdlYmtpdC1jb2xvci1zd2F0Y2gtd3JhcHBlciB7XG4gIHBhZGRpbmc6IDA7XG59XG5cblxuLy8gMS4gSW5oZXJpdCBmb250IGZhbWlseSBhbmQgbGluZSBoZWlnaHQgZm9yIGZpbGUgaW5wdXQgYnV0dG9uc1xuLy8gMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cblxuOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gIGZvbnQ6IGluaGVyaXQ7IC8vIDFcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcbn1cblxuLy8gQ29ycmVjdCBlbGVtZW50IGRpc3BsYXlzXG5cbm91dHB1dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLy8gUmVtb3ZlIGJvcmRlciBmcm9tIGlmcmFtZVxuXG5pZnJhbWUge1xuICBib3JkZXI6IDA7XG59XG5cbi8vIFN1bW1hcnlcbi8vXG4vLyAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnNcblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgLy8gMVxuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cblxuLy8gUHJvZ3Jlc3Ncbi8vXG4vLyBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuXG4vLyBIaWRkZW4gYXR0cmlidXRlXG4vL1xuLy8gQWx3YXlzIGhpZGUgYW4gZWxlbWVudCB3aXRoIHRoZSBgaGlkZGVuYCBIVE1MIGF0dHJpYnV0ZS5cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4iLCIvL1xuLy8gSGVhZGluZ3Ncbi8vXG4uaDEge1xuICBAZXh0ZW5kIGgxO1xufVxuXG4uaDIge1xuICBAZXh0ZW5kIGgyO1xufVxuXG4uaDMge1xuICBAZXh0ZW5kIGgzO1xufVxuXG4uaDQge1xuICBAZXh0ZW5kIGg0O1xufVxuXG4uaDUge1xuICBAZXh0ZW5kIGg1O1xufVxuXG4uaDYge1xuICBAZXh0ZW5kIGg2O1xufVxuXG5cbi5sZWFkIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRsZWFkLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkbGVhZC1mb250LXdlaWdodDtcbn1cblxuLy8gVHlwZSBkaXNwbGF5IGNsYXNzZXNcbkBlYWNoICRkaXNwbGF5LCAkZm9udC1zaXplIGluICRkaXNwbGF5LWZvbnQtc2l6ZXMge1xuICAuZGlzcGxheS0jeyRkaXNwbGF5fSB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUpO1xuICAgIGZvbnQtZmFtaWx5OiAkZGlzcGxheS1mb250LWZhbWlseTtcbiAgICBmb250LXN0eWxlOiAkZGlzcGxheS1mb250LXN0eWxlO1xuICAgIGZvbnQtd2VpZ2h0OiAkZGlzcGxheS1mb250LXdlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG4gIH1cbn1cblxuLy9cbi8vIEVtcGhhc2lzXG4vL1xuLnNtYWxsIHtcbiAgQGV4dGVuZCBzbWFsbDtcbn1cblxuLm1hcmsge1xuICBAZXh0ZW5kIG1hcms7XG59XG5cbi8vXG4vLyBMaXN0c1xuLy9cblxuLmxpc3QtdW5zdHlsZWQge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XG59XG5cbi8vIElubGluZSB0dXJucyBsaXN0IGl0ZW1zIGludG8gaW5saW5lLWJsb2NrXG4ubGlzdC1pbmxpbmUge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XG59XG4ubGlzdC1pbmxpbmUtaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1yaWdodDogJGxpc3QtaW5saW5lLXBhZGRpbmc7XG4gIH1cbn1cblxuXG4vL1xuLy8gTWlzY1xuLy9cblxuLy8gQnVpbGRzIG9uIGBhYmJyYFxuLmluaXRpYWxpc20ge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGluaXRpYWxpc20tZm9udC1zaXplKTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLy8gQmxvY2txdW90ZXNcbi5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luLWJvdHRvbTogJGJsb2NrcXVvdGUtbWFyZ2luLXk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmxvY2txdW90ZS1mb250LXNpemUpO1xuXG4gID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLmJsb2NrcXVvdGUtZm9vdGVyIHtcbiAgbWFyZ2luLXRvcDogLSRibG9ja3F1b3RlLW1hcmdpbi15O1xuICBtYXJnaW4tYm90dG9tOiAkYmxvY2txdW90ZS1tYXJnaW4teTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLWZvb3Rlci1mb250LXNpemUpO1xuICBjb2xvcjogJGJsb2NrcXVvdGUtZm9vdGVyLWNvbG9yO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXDIwMTRcXDAwQTBcIjsgLy8gZW0gZGFzaCwgbmJzcFxuICB9XG59XG4iLCIvLyBSZXNwb25zaXZlIGltYWdlcyAoZW5zdXJlIGltYWdlcyBkb24ndCBzY2FsZSBiZXlvbmQgdGhlaXIgcGFyZW50cylcbi8vXG4vLyBUaGlzIGlzIHB1cnBvc2VmdWxseSBvcHQtaW4gdmlhIGFuIGV4cGxpY2l0IGNsYXNzIHJhdGhlciB0aGFuIGJlaW5nIHRoZSBkZWZhdWx0IGZvciBhbGwgYDxpbWc+YHMuXG4vLyBXZSBwcmV2aW91c2x5IHRyaWVkIHRoZSBcImltYWdlcyBhcmUgcmVzcG9uc2l2ZSBieSBkZWZhdWx0XCIgYXBwcm9hY2ggaW4gQm9vdHN0cmFwIHYyLFxuLy8gYW5kIGFiYW5kb25lZCBpdCBpbiBCb290c3RyYXAgdjMgYmVjYXVzZSBpdCBicmVha3MgbG90cyBvZiB0aGlyZC1wYXJ0eSB3aWRnZXRzIChpbmNsdWRpbmcgR29vZ2xlIE1hcHMpXG4vLyB3aGljaCB3ZXJlbid0IGV4cGVjdGluZyB0aGUgaW1hZ2VzIHdpdGhpbiB0aGVtc2VsdmVzIHRvIGJlIGludm9sdW50YXJpbHkgcmVzaXplZC5cbi8vIFNlZSBhbHNvIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTgxNzhcbi5pbWctZmx1aWQge1xuICBAaW5jbHVkZSBpbWctZmx1aWQoKTtcbn1cblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG4uaW1nLXRodW1ibmFpbCB7XG4gIHBhZGRpbmc6ICR0aHVtYm5haWwtcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1ibmFpbC1iZztcbiAgYm9yZGVyOiAkdGh1bWJuYWlsLWJvcmRlci13aWR0aCBzb2xpZCAkdGh1bWJuYWlsLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdGh1bWJuYWlsLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCR0aHVtYm5haWwtYm94LXNoYWRvdyk7XG5cbiAgLy8gS2VlcCB0aGVtIGF0IG1vc3QgMTAwJSB3aWRlXG4gIEBpbmNsdWRlIGltZy1mbHVpZCgpO1xufVxuXG4vL1xuLy8gRmlndXJlc1xuLy9cblxuLmZpZ3VyZSB7XG4gIC8vIEVuc3VyZXMgdGhlIGNhcHRpb24ncyB0ZXh0IGFsaWducyB3aXRoIHRoZSBpbWFnZS5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uZmlndXJlLWltZyB7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXIgKiAuNTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5maWd1cmUtY2FwdGlvbiB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZmlndXJlLWNhcHRpb24tZm9udC1zaXplKTtcbiAgY29sb3I6ICRmaWd1cmUtY2FwdGlvbi1jb2xvcjtcbn1cbiIsIi8vIENvbnRhaW5lciB3aWR0aHNcbi8vXG4vLyBTZXQgdGhlIGNvbnRhaW5lciB3aWR0aCwgYW5kIG92ZXJyaWRlIGl0IGZvciBmaXhlZCBuYXZiYXJzIGluIG1lZGlhIHF1ZXJpZXMuXG5cbkBpZiAkZW5hYmxlLWNvbnRhaW5lci1jbGFzc2VzIHtcbiAgLy8gU2luZ2xlIGNvbnRhaW5lciBjbGFzcyB3aXRoIGJyZWFrcG9pbnQgbWF4LXdpZHRoc1xuICAuY29udGFpbmVyLFxuICAvLyAxMDAlIHdpZGUgY29udGFpbmVyIGF0IGFsbCBicmVha3BvaW50c1xuICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lcigpO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSBjb250YWluZXJzIHRoYXQgYXJlIDEwMCUgd2lkZSB1bnRpbCBhIGJyZWFrcG9pbnRcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgLmNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICBAZXh0ZW5kIC5jb250YWluZXItZmx1aWQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAgICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgICB9XG5cbiAgICAgIC8vIEV4dGVuZCBlYWNoIGJyZWFrcG9pbnQgd2hpY2ggaXMgc21hbGxlciBvciBlcXVhbCB0byB0aGUgY3VycmVudCBicmVha3BvaW50XG4gICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IHRydWU7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkd2lkdGggaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgICAgICBAaWYgKCRleHRlbmQtYnJlYWtwb2ludCkge1xuICAgICAgICAgIC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRncmlkLWJyZWFrcG9pbnRzKX0ge1xuICAgICAgICAgICAgQGV4dGVuZCAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gT25jZSB0aGUgY3VycmVudCBicmVha3BvaW50IGlzIHJlYWNoZWQsIHN0b3AgZXh0ZW5kaW5nXG4gICAgICAgICAgQGlmICgkYnJlYWtwb2ludCA9PSAkbmFtZSkge1xuICAgICAgICAgICAgJGV4dGVuZC1icmVha3BvaW50OiBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIFJvd1xuLy9cbi8vIFJvd3MgY29udGFpbiB5b3VyIGNvbHVtbnMuXG5cbjpyb290IHtcbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkZ3JpZC1icmVha3BvaW50cyB7XG4gICAgLS0jeyRwcmVmaXh9YnJlYWtwb2ludC0jeyRuYW1lfTogI3skdmFsdWV9O1xuICB9XG59XG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC5yb3cge1xuICAgIEBpbmNsdWRlIG1ha2Utcm93KCk7XG5cbiAgICA+ICoge1xuICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtcmVhZHkoKTtcbiAgICB9XG4gIH1cbn1cblxuQGlmICRlbmFibGUtY3NzZ3JpZCB7XG4gIC5ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KHZhcigtLSN7JHByZWZpeH1yb3dzLCAxKSwgMWZyKTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCh2YXIoLS0jeyRwcmVmaXh9Y29sdW1ucywgI3skZ3JpZC1jb2x1bW5zfSksIDFmcik7XG4gICAgZ2FwOiB2YXIoLS0jeyRwcmVmaXh9Z2FwLCAjeyRncmlkLWd1dHRlci13aWR0aH0pO1xuXG4gICAgQGluY2x1ZGUgbWFrZS1jc3NncmlkKCk7XG4gIH1cbn1cblxuXG4vLyBDb2x1bW5zXG4vL1xuLy8gQ29tbW9uIHN0eWxlcyBmb3Igc21hbGwgYW5kIGxhcmdlIGdyaWQgY29sdW1uc1xuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICBAaW5jbHVkZSBtYWtlLWdyaWQtY29sdW1ucygpO1xufVxuIiwiLy9cbi8vIEJhc2ljIEJvb3RzdHJhcCB0YWJsZVxuLy9cblxuLnRhYmxlIHtcbiAgLy8gUmVzZXQgbmVlZGVkIGZvciBuZXN0aW5nIHRhYmxlc1xuICAtLSN7JHByZWZpeH10YWJsZS1jb2xvci10eXBlOiBpbml0aWFsO1xuICAtLSN7JHByZWZpeH10YWJsZS1iZy10eXBlOiBpbml0aWFsO1xuICAtLSN7JHByZWZpeH10YWJsZS1jb2xvci1zdGF0ZTogaW5pdGlhbDtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYmctc3RhdGU6IGluaXRpYWw7XG4gIC8vIEVuZCBvZiByZXNldFxuICAtLSN7JHByZWZpeH10YWJsZS1jb2xvcjogI3skdGFibGUtY29sb3J9O1xuICAtLSN7JHByZWZpeH10YWJsZS1iZzogI3skdGFibGUtYmd9O1xuICAtLSN7JHByZWZpeH10YWJsZS1ib3JkZXItY29sb3I6ICN7JHRhYmxlLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRhYmxlLWFjY2VudC1iZzogI3skdGFibGUtYWNjZW50LWJnfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1jb2xvcjogI3skdGFibGUtc3RyaXBlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRhYmxlLXN0cmlwZWQtYmc6ICN7JHRhYmxlLXN0cmlwZWQtYmd9O1xuICAtLSN7JHByZWZpeH10YWJsZS1hY3RpdmUtY29sb3I6ICN7JHRhYmxlLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRhYmxlLWFjdGl2ZS1iZzogI3skdGFibGUtYWN0aXZlLWJnfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtaG92ZXItY29sb3I6ICN7JHRhYmxlLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtaG92ZXItYmc6ICN7JHRhYmxlLWhvdmVyLWJnfTtcblxuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlcjtcbiAgdmVydGljYWwtYWxpZ246ICR0YWJsZS1jZWxsLXZlcnRpY2FsLWFsaWduO1xuICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH10YWJsZS1ib3JkZXItY29sb3IpO1xuXG4gIC8vIFRhcmdldCB0aCAmIHRkXG4gIC8vIFdlIG5lZWQgdGhlIGNoaWxkIGNvbWJpbmF0b3IgdG8gcHJldmVudCBzdHlsZXMgbGVha2luZyB0byBuZXN0ZWQgdGFibGVzIHdoaWNoIGRvZXNuJ3QgaGF2ZSBhIGAudGFibGVgIGNsYXNzLlxuICAvLyBXZSB1c2UgdGhlIHVuaXZlcnNhbCBzZWxlY3RvcnMgaGVyZSB0byBzaW1wbGlmeSB0aGUgc2VsZWN0b3IgKGVsc2Ugd2Ugd291bGQgbmVlZCA2IGRpZmZlcmVudCBzZWxlY3RvcnMpLlxuICAvLyBBbm90aGVyIGFkdmFudGFnZSBpcyB0aGF0IHRoaXMgZ2VuZXJhdGVzIGxlc3MgY29kZSBhbmQgbWFrZXMgdGhlIHNlbGVjdG9yIGxlc3Mgc3BlY2lmaWMgbWFraW5nIGl0IGVhc2llciB0byBvdmVycmlkZS5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC11bml2ZXJzYWxcbiAgPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmcteSAkdGFibGUtY2VsbC1wYWRkaW5nLXg7XG4gICAgLy8gRm9sbG93aW5nIHRoZSBwcmVjZXB0IG9mIGNhc2NhZGVzOiBodHRwczovL2NvZGVwZW4uaW8vbWlyaWFtc3V6YW5uZS9mdWxsL3ZZTmdvZGJcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXN0YXRlLCB2YXIoLS0jeyRwcmVmaXh9dGFibGUtY29sb3ItdHlwZSwgdmFyKC0tI3skcHJlZml4fXRhYmxlLWNvbG9yKSkpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH10YWJsZS1iZyk7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogJHRhYmxlLWJvcmRlci13aWR0aDtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA5OTk5cHggdmFyKC0tI3skcHJlZml4fXRhYmxlLWJnLXN0YXRlLCB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYmctdHlwZSwgdmFyKC0tI3skcHJlZml4fXRhYmxlLWFjY2VudC1iZykpKTtcbiAgfVxuXG4gID4gdGJvZHkge1xuICAgIHZlcnRpY2FsLWFsaWduOiBpbmhlcml0O1xuICB9XG5cbiAgPiB0aGVhZCB7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgfVxufVxuXG4udGFibGUtZ3JvdXAtZGl2aWRlciB7XG4gIGJvcmRlci10b3A6IGNhbGMoI3skdGFibGUtYm9yZGVyLXdpZHRofSAqIDIpIHNvbGlkICR0YWJsZS1ncm91cC1zZXBhcmF0b3ItY29sb3I7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG59XG5cbi8vXG4vLyBDaGFuZ2UgcGxhY2VtZW50IG9mIGNhcHRpb25zIHdpdGggYSBjbGFzc1xuLy9cblxuLmNhcHRpb24tdG9wIHtcbiAgY2FwdGlvbi1zaWRlOiB0b3A7XG59XG5cblxuLy9cbi8vIENvbmRlbnNlZCB0YWJsZSB3LyBoYWxmIHBhZGRpbmdcbi8vXG5cbi50YWJsZS1zbSB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtdW5pdmVyc2FsXG4gID4gOm5vdChjYXB0aW9uKSA+ICogPiAqIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nLXktc20gJHRhYmxlLWNlbGwtcGFkZGluZy14LXNtO1xuICB9XG59XG5cblxuLy8gQm9yZGVyIHZlcnNpb25zXG4vL1xuLy8gQWRkIG9yIHJlbW92ZSBib3JkZXJzIGFsbCBhcm91bmQgdGhlIHRhYmxlIGFuZCBiZXR3ZWVuIGFsbCB0aGUgY29sdW1ucy5cbi8vXG4vLyBXaGVuIGJvcmRlcnMgYXJlIGFkZGVkIG9uIGFsbCBzaWRlcyBvZiB0aGUgY2VsbHMsIHRoZSBjb3JuZXJzIGNhbiByZW5kZXIgb2RkIHdoZW5cbi8vIHRoZXNlIGJvcmRlcnMgZG8gbm90IGhhdmUgdGhlIHNhbWUgY29sb3Igb3IgaWYgdGhleSBhcmUgc2VtaS10cmFuc3BhcmVudC5cbi8vIFRoZXJlZm9yZSB3ZSBhZGQgdG9wIGFuZCBib3JkZXIgYm90dG9tcyB0byB0aGUgYHRyYHMgYW5kIGxlZnQgYW5kIHJpZ2h0IGJvcmRlcnNcbi8vIHRvIHRoZSBgdGRgcyBvciBgdGhgc1xuXG4udGFibGUtYm9yZGVyZWQge1xuICA+IDpub3QoY2FwdGlvbikgPiAqIHtcbiAgICBib3JkZXItd2lkdGg6ICR0YWJsZS1ib3JkZXItd2lkdGggMDtcblxuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtdW5pdmVyc2FsXG4gICAgPiAqIHtcbiAgICAgIGJvcmRlci13aWR0aDogMCAkdGFibGUtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG4udGFibGUtYm9yZGVybGVzcyB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtdW5pdmVyc2FsXG4gID4gOm5vdChjYXB0aW9uKSA+ICogPiAqIHtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICB9XG5cbiAgPiA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gIH1cbn1cblxuLy8gWmVicmEtc3RyaXBpbmdcbi8vXG4vLyBEZWZhdWx0IHplYnJhLXN0cmlwZSBzdHlsZXMgKGFsdGVybmF0aW5nIGdyYXkgYW5kIHRyYW5zcGFyZW50IGJhY2tncm91bmRzKVxuXG4vLyBGb3Igcm93c1xuLnRhYmxlLXN0cmlwZWQge1xuICA+IHRib2R5ID4gdHI6bnRoLW9mLXR5cGUoI3skdGFibGUtc3RyaXBlZC1vcmRlcn0pID4gKiB7XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtY29sb3ItdHlwZTogdmFyKC0tI3skcHJlZml4fXRhYmxlLXN0cmlwZWQtY29sb3IpO1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWJnLXR5cGU6IHZhcigtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWJnKTtcbiAgfVxufVxuXG4vLyBGb3IgY29sdW1uc1xuLnRhYmxlLXN0cmlwZWQtY29sdW1ucyB7XG4gID4gOm5vdChjYXB0aW9uKSA+IHRyID4gOm50aC1jaGlsZCgjeyR0YWJsZS1zdHJpcGVkLWNvbHVtbnMtb3JkZXJ9KSB7XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtY29sb3ItdHlwZTogdmFyKC0tI3skcHJlZml4fXRhYmxlLXN0cmlwZWQtY29sb3IpO1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWJnLXR5cGU6IHZhcigtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWJnKTtcbiAgfVxufVxuXG4vLyBBY3RpdmUgdGFibGVcbi8vXG4vLyBUaGUgYC50YWJsZS1hY3RpdmVgIGNsYXNzIGNhbiBiZSBhZGRlZCB0byBoaWdobGlnaHQgcm93cyBvciBjZWxsc1xuXG4udGFibGUtYWN0aXZlIHtcbiAgLS0jeyRwcmVmaXh9dGFibGUtY29sb3Itc3RhdGU6IHZhcigtLSN7JHByZWZpeH10YWJsZS1hY3RpdmUtY29sb3IpO1xuICAtLSN7JHByZWZpeH10YWJsZS1iZy1zdGF0ZTogdmFyKC0tI3skcHJlZml4fXRhYmxlLWFjdGl2ZS1iZyk7XG59XG5cbi8vIEhvdmVyIGVmZmVjdFxuLy9cbi8vIFBsYWNlZCBoZXJlIHNpbmNlIGl0IGhhcyB0byBjb21lIGFmdGVyIHRoZSBwb3RlbnRpYWwgemVicmEgc3RyaXBpbmdcblxuLnRhYmxlLWhvdmVyIHtcbiAgPiB0Ym9keSA+IHRyOmhvdmVyID4gKiB7XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtY29sb3Itc3RhdGU6IHZhcigtLSN7JHByZWZpeH10YWJsZS1ob3Zlci1jb2xvcik7XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtYmctc3RhdGU6IHZhcigtLSN7JHByZWZpeH10YWJsZS1ob3Zlci1iZyk7XG4gIH1cbn1cblxuXG4vLyBUYWJsZSB2YXJpYW50c1xuLy9cbi8vIFRhYmxlIHZhcmlhbnRzIHNldCB0aGUgdGFibGUgY2VsbCBiYWNrZ3JvdW5kcywgYm9yZGVyIGNvbG9yc1xuLy8gYW5kIHRoZSBjb2xvcnMgb2YgdGhlIHN0cmlwZWQsIGhvdmVyZWQgJiBhY3RpdmUgdGFibGVzXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0YWJsZS12YXJpYW50cyB7XG4gIEBpbmNsdWRlIHRhYmxlLXZhcmlhbnQoJGNvbG9yLCAkdmFsdWUpO1xufVxuXG4vLyBSZXNwb25zaXZlIHRhYmxlc1xuLy9cbi8vIEdlbmVyYXRlIHNlcmllcyBvZiBgLnRhYmxlLXJlc3BvbnNpdmUtKmAgY2xhc3NlcyBmb3IgY29uZmlndXJpbmcgdGhlIHNjcmVlblxuLy8gc2l6ZSBvZiB3aGVyZSB5b3VyIHRhYmxlIHdpbGwgb3ZlcmZsb3cuXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgIC50YWJsZS1yZXNwb25zaXZlI3skaW5maXh9IHtcbiAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgfVxuICB9XG59XG4iLCJAaW1wb3J0IFwiZm9ybXMvbGFiZWxzXCI7XG5AaW1wb3J0IFwiZm9ybXMvZm9ybS10ZXh0XCI7XG5AaW1wb3J0IFwiZm9ybXMvZm9ybS1jb250cm9sXCI7XG5AaW1wb3J0IFwiZm9ybXMvZm9ybS1zZWxlY3RcIjtcbkBpbXBvcnQgXCJmb3Jtcy9mb3JtLWNoZWNrXCI7XG5AaW1wb3J0IFwiZm9ybXMvZm9ybS1yYW5nZVwiO1xuQGltcG9ydCBcImZvcm1zL2Zsb2F0aW5nLWxhYmVsc1wiO1xuQGltcG9ydCBcImZvcm1zL2lucHV0LWdyb3VwXCI7XG5AaW1wb3J0IFwiZm9ybXMvdmFsaWRhdGlvblwiO1xuIiwiLy9cbi8vIExhYmVsc1xuLy9cblxuLmZvcm0tbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1sYWJlbC1tYXJnaW4tYm90dG9tO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tbGFiZWwtZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogJGZvcm0tbGFiZWwtZm9udC1zdHlsZTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG59XG5cbi8vIEZvciB1c2Ugd2l0aCBob3Jpem9udGFsIGFuZCBpbmxpbmUgZm9ybXMsIHdoZW4geW91IG5lZWQgdGhlIGxhYmVsIChvciBsZWdlbmQpXG4vLyB0ZXh0IHRvIGFsaWduIHdpdGggdGhlIGZvcm0gY29udHJvbHMuXG4uY29sLWZvcm0tbGFiZWwge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSB0aGUgYDxsZWdlbmQ+YCBkZWZhdWx0XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTsgLy8gT3ZlcnJpZGUgdGhlIGA8bGVnZW5kPmAgZGVmYXVsdFxuICBmb250LXN0eWxlOiAkZm9ybS1sYWJlbC1mb250LXN0eWxlO1xuICBmb250LXdlaWdodDogJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvcjtcbn1cblxuLmNvbC1mb3JtLWxhYmVsLWxnIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LWxnLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LWxnLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xufVxuXG4uY29sLWZvcm0tbGFiZWwtc20ge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXktc20sICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXktc20sICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG59XG4iLCIvL1xuLy8gRm9ybSB0ZXh0XG4vL1xuXG4uZm9ybS10ZXh0IHtcbiAgbWFyZ2luLXRvcDogJGZvcm0tdGV4dC1tYXJnaW4tdG9wO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tdGV4dC1mb250LXNpemUpO1xuICBmb250LXN0eWxlOiAkZm9ybS10ZXh0LWZvbnQtc3R5bGU7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS10ZXh0LWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGZvcm0tdGV4dC1jb2xvcjtcbn1cbiIsIi8vXG4vLyBHZW5lcmFsIGZvcm0gY29udHJvbHMgKHBsdXMgYSBmZXcgc3BlY2lmaWMgaGlnaC1sZXZlbCBpbnRlcnZlbnRpb25zKVxuLy9cblxuLmZvcm0tY29udHJvbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIGFwcGVhcmFuY2U6IG5vbmU7IC8vIEZpeCBhcHBlYXJhbmNlIGZvciBkYXRlIGlucHV0cyBpbiBTYWZhcmlcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWJvcmRlci1jb2xvcjtcblxuICAvLyBOb3RlOiBUaGlzIGhhcyBubyBlZmZlY3Qgb24gPHNlbGVjdD5zIGluIHNvbWUgYnJvd3NlcnMsIGR1ZSB0byB0aGUgbGltaXRlZCBzdHlsYWJpbGl0eSBvZiBgPHNlbGVjdD5gcyBpbiBDU1MuXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMsIDApO1xuXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3cpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRpbnB1dC10cmFuc2l0aW9uKTtcblxuICAmW3R5cGU9XCJmaWxlXCJdIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyAvLyBwcmV2ZW50IHBzZXVkbyBlbGVtZW50IGJ1dHRvbiBvdmVybGFwXG5cbiAgICAmOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLy8gQ3VzdG9taXplIHRoZSBgOmZvY3VzYCBzdGF0ZSB0byBpbWl0YXRlIG5hdGl2ZSBXZWJLaXQgc3R5bGVzLlxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGlucHV0LWZvY3VzLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1mb2N1cy1iZztcbiAgICBib3JkZXItY29sb3I6ICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3csICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxuXG4gICY6Oi13ZWJraXQtZGF0ZS1hbmQtdGltZS12YWx1ZSB7XG4gICAgLy8gT24gQW5kcm9pZCBDaHJvbWUsIGZvcm0tY29udHJvbCdzIFwid2lkdGg6IDEwMCVcIiBtYWtlcyB0aGUgaW5wdXQgd2lkdGggdG9vIHNtYWxsXG4gICAgLy8gVGVzdGVkIHVuZGVyIEFuZHJvaWQgMTEgLyBDaHJvbWUgODksIEFuZHJvaWQgMTIgLyBDaHJvbWUgMTAwLCBBbmRyb2lkIDEzIC8gQ2hyb21lIDEwOVxuICAgIC8vXG4gICAgLy8gT24gaU9TIFNhZmFyaSwgZm9ybS1jb250cm9sJ3MgXCJhcHBlYXJhbmNlOiBub25lXCIgKyBcIndpZHRoOiAxMDAlXCIgbWFrZXMgdGhlIGlucHV0IHdpZHRoIHRvbyBzbWFsbFxuICAgIC8vIFRlc3RlZCB1bmRlciBpT1MgMTYuMiAvIFNhZmFyaSAxNi4yXG4gICAgbWluLXdpZHRoOiA4NXB4OyAvLyBTZWVtcyB0byBiZSBhIGdvb2QgbWluaW11bSBzYWZlIHdpZHRoXG5cbiAgICAvLyBBZGQgc29tZSBoZWlnaHQgdG8gZGF0ZSBpbnB1dHMgb24gaU9TXG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yMzMwN1xuICAgIC8vIFRPRE86IHdlIGNhbiByZW1vdmUgdGhpcyB3b3JrYXJvdW5kIG9uY2UgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5ODk1OSBpcyByZXNvbHZlZFxuICAgIC8vIE11bHRpcGx5IGxpbmUtaGVpZ2h0IGJ5IDFlbSBpZiBpdCBoYXMgbm8gdW5pdFxuICAgIGhlaWdodDogaWYodW5pdCgkaW5wdXQtbGluZS1oZWlnaHQpID09IFwiXCIsICRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgJGlucHV0LWxpbmUtaGVpZ2h0KTtcblxuICAgIC8vIEFuZHJvaWQgQ2hyb21lIHR5cGU9XCJkYXRlXCIgaXMgdGFsbGVyIHRoYW4gdGhlIG90aGVyIGlucHV0c1xuICAgIC8vIGJlY2F1c2Ugb2YgXCJtYXJnaW46IDFweCAyNHB4IDFweCA0cHhcIiBpbnNpZGUgdGhlIHNoYWRvdyBET01cbiAgICAvLyBUZXN0ZWQgdW5kZXIgQW5kcm9pZCAxMSAvIENocm9tZSA4OSwgQW5kcm9pZCAxMiAvIENocm9tZSAxMDAsIEFuZHJvaWQgMTMgLyBDaHJvbWUgMTA5XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLy8gUHJldmVudCBleGNlc3NpdmUgZGF0ZSBpbnB1dCBoZWlnaHQgaW4gV2Via2l0XG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMzQ0MzNcbiAgJjo6LXdlYmtpdC1kYXRldGltZS1lZGl0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUGxhY2Vob2xkZXJcbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gICAgLy8gT3ZlcnJpZGUgRmlyZWZveCdzIHVudXN1YWwgZGVmYXVsdCBvcGFjaXR5OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjYuXG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIGlucHV0c1xuICAvL1xuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+IGxlZ2VuZDpmaXJzdC1jaGlsZCB3b24ndCBiZVxuICAvLyBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmaWN1bHR5LCB3ZVxuICAvLyBkb24ndCBob25vciB0aGF0IGVkZ2UgY2FzZTsgd2Ugc3R5bGUgdGhlbSBhcyBkaXNhYmxlZCBhbnl3YXkuXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJvcmRlci1jb2xvcjtcbiAgICAvLyBpT1MgZml4IGZvciB1bnJlYWRhYmxlIGRpc2FibGVkIGNvbnRlbnQ7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjU1LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBGaWxlIGlucHV0IGJ1dHRvbnMgdGhlbWluZ1xuICAmOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICAgIG1hcmdpbjogKC0kaW5wdXQtcGFkZGluZy15KSAoLSRpbnB1dC1wYWRkaW5nLXgpO1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAkaW5wdXQtcGFkZGluZy14O1xuICAgIGNvbG9yOiAkZm9ybS1maWxlLWJ1dHRvbi1jb2xvcjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1maWxlLWJ1dHRvbi1iZyk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAwO1xuICAgIGJvcmRlci1pbmxpbmUtZW5kLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYnRuLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgJjpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSk6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1maWxlLWJ1dHRvbi1ob3Zlci1iZztcbiAgfVxufVxuXG4vLyBSZWFkb25seSBjb250cm9scyBhcyBwbGFpbiB0ZXh0XG4vL1xuLy8gQXBwbHkgY2xhc3MgdG8gYSByZWFkb25seSBpbnB1dCB0byBtYWtlIGl0IGFwcGVhciBsaWtlIHJlZ3VsYXIgcGxhaW5cbi8vIHRleHQgKHdpdGhvdXQgYW55IGJvcmRlciwgYmFja2dyb3VuZCBjb2xvciwgZm9jdXMgaW5kaWNhdG9yKVxuXG4uZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAwO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBtYXRjaCBpbnB1dHMgaWYgdGhpcyBjbGFzcyBjb21lcyBvbiBpbnB1dHMgd2l0aCBkZWZhdWx0IG1hcmdpbnNcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1wbGFpbnRleHQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGggMDtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20sXG4gICYuZm9ybS1jb250cm9sLWxnIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXG4vL1xuLy8gQnVpbGQgb24gYC5mb3JtLWNvbnRyb2xgIHdpdGggbW9kaWZpZXIgY2xhc3NlcyB0byBkZWNyZWFzZSBvciBpbmNyZWFzZSB0aGVcbi8vIGhlaWdodCBhbmQgZm9udC1zaXplIG9mIGZvcm0gY29udHJvbHMuXG4vL1xuLy8gUmVwZWF0ZWQgaW4gYF9pbnB1dF9ncm91cC5zY3NzYCB0byBhdm9pZCBTYXNzIGV4dGVuZCBpc3N1ZXMuXG5cbi5mb3JtLWNvbnRyb2wtc20ge1xuICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG5cbiAgJjo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgICBtYXJnaW46ICgtJGlucHV0LXBhZGRpbmcteS1zbSkgKC0kaW5wdXQtcGFkZGluZy14LXNtKTtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgfVxufVxuXG4uZm9ybS1jb250cm9sLWxnIHtcbiAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodC1sZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xuXG4gICY6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gICAgbWFyZ2luOiAoLSRpbnB1dC1wYWRkaW5nLXktbGcpICgtJGlucHV0LXBhZGRpbmcteC1sZyk7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6ICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIH1cbn1cblxuLy8gTWFrZSBzdXJlIHRleHRhcmVhcyBkb24ndCBzaHJpbmsgdG9vIG11Y2ggd2hlbiByZXNpemVkXG4vLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yOTEyNFxuLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG50ZXh0YXJlYSB7XG4gICYuZm9ybS1jb250cm9sIHtcbiAgICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICB9XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20ge1xuICAgIG1pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG4gIH1cblxuICAmLmZvcm0tY29udHJvbC1sZyB7XG4gICAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodC1sZztcbiAgfVxufVxuLy8gc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLmZvcm0tY29udHJvbC1jb2xvciB7XG4gIHdpZHRoOiAkZm9ybS1jb2xvci13aWR0aDtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15O1xuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cblxuICAmOjotbW96LWNvbG9yLXN3YXRjaCB7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmOjotd2Via2l0LWNvbG9yLXN3YXRjaCB7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmLmZvcm0tY29udHJvbC1zbSB7IGhlaWdodDogJGlucHV0LWhlaWdodC1zbTsgfVxuICAmLmZvcm0tY29udHJvbC1sZyB7IGhlaWdodDogJGlucHV0LWhlaWdodC1sZzsgfVxufVxuIiwiLy8gU2VsZWN0XG4vL1xuLy8gUmVwbGFjZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCBzZWxlY3Qgd2l0aCBhIGN1c3RvbSBvbmUsIG1vc3RseSBwdWxsZWQgZnJvbVxuLy8gaHR0cHM6Ly9wcmltZXIuZ2l0aHViLmlvLy5cblxuLmZvcm0tc2VsZWN0IHtcbiAgLS0jeyRwcmVmaXh9Zm9ybS1zZWxlY3QtYmctaW1nOiAje2VzY2FwZS1zdmcoJGZvcm0tc2VsZWN0LWluZGljYXRvcil9O1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGZvcm0tc2VsZWN0LXBhZGRpbmcteSAkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcgJGZvcm0tc2VsZWN0LXBhZGRpbmcteSAkZm9ybS1zZWxlY3QtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGZvcm0tc2VsZWN0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS1zZWxlY3QtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZm9ybS1zZWxlY3QtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkZm9ybS1zZWxlY3QtY29sb3I7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXNlbGVjdC1iZztcbiAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tI3skcHJlZml4fWZvcm0tc2VsZWN0LWJnLWltZyksIHZhcigtLSN7JHByZWZpeH1mb3JtLXNlbGVjdC1iZy1pY29uLCBub25lKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGZvcm0tc2VsZWN0LWJnLXBvc2l0aW9uO1xuICBiYWNrZ3JvdW5kLXNpemU6ICRmb3JtLXNlbGVjdC1iZy1zaXplO1xuICBib3JkZXI6ICRmb3JtLXNlbGVjdC1ib3JkZXItd2lkdGggc29saWQgJGZvcm0tc2VsZWN0LWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cywgMCk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tc2VsZWN0LWJveC1zaGFkb3cpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLXNlbGVjdC10cmFuc2l0aW9uKTtcblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tc2VsZWN0LWJveC1zaGFkb3csICRmb3JtLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6ICRmb3JtLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxuXG4gICZbbXVsdGlwbGVdLFxuICAmW3NpemVdOm5vdChbc2l6ZT1cIjFcIl0pIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1zZWxlY3QtcGFkZGluZy14O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGZvcm0tc2VsZWN0LWRpc2FibGVkLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXNlbGVjdC1kaXNhYmxlZC1iZztcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLXNlbGVjdC1kaXNhYmxlZC1ib3JkZXItY29sb3I7XG4gIH1cblxuICAvLyBSZW1vdmUgb3V0bGluZSBmcm9tIHNlbGVjdCBib3ggaW4gRkZcbiAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiAwIDAgMCAkZm9ybS1zZWxlY3QtY29sb3I7XG4gIH1cbn1cblxuLmZvcm0tc2VsZWN0LXNtIHtcbiAgcGFkZGluZy10b3A6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXktc207XG4gIHBhZGRpbmctYm90dG9tOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1zZWxlY3QtZm9udC1zaXplLXNtKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbi5mb3JtLXNlbGVjdC1sZyB7XG4gIHBhZGRpbmctdG9wOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBwYWRkaW5nLWJvdHRvbTogJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1sZztcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1zZWxlY3QtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZS1sZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tc2VsZWN0LWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICBAaW5jbHVkZSBjb2xvci1tb2RlKGRhcmspIHtcbiAgICAuZm9ybS1zZWxlY3Qge1xuICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1zZWxlY3QtYmctaW1nOiAje2VzY2FwZS1zdmcoJGZvcm0tc2VsZWN0LWluZGljYXRvci1kYXJrKX07XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQ2hlY2svcmFkaW9cbi8vXG5cbi5mb3JtLWNoZWNrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6ICRmb3JtLWNoZWNrLW1pbi1oZWlnaHQ7XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tY2hlY2stcGFkZGluZy1zdGFydDtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tY2hlY2stbWFyZ2luLWJvdHRvbTtcblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6ICRmb3JtLWNoZWNrLXBhZGRpbmctc3RhcnQgKiAtMTtcbiAgfVxufVxuXG4uZm9ybS1jaGVjay1yZXZlcnNlIHtcbiAgcGFkZGluZy1yaWdodDogJGZvcm0tY2hlY2stcGFkZGluZy1zdGFydDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2stcGFkZGluZy1zdGFydCAqIC0xO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbi5mb3JtLWNoZWNrLWlucHV0IHtcbiAgLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZzogI3skZm9ybS1jaGVjay1pbnB1dC1iZ307XG5cbiAgZmxleC1zaHJpbms6IDA7XG4gIHdpZHRoOiAkZm9ybS1jaGVjay1pbnB1dC13aWR0aDtcbiAgaGVpZ2h0OiAkZm9ybS1jaGVjay1pbnB1dC13aWR0aDtcbiAgbWFyZ2luLXRvcDogKCRsaW5lLWhlaWdodC1iYXNlIC0gJGZvcm0tY2hlY2staW5wdXQtd2lkdGgpICogLjU7IC8vIGxpbmUtaGVpZ2h0IG1pbnVzIGNoZWNrIGhlaWdodFxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnLWltYWdlKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGJvcmRlcjogJGZvcm0tY2hlY2staW5wdXQtYm9yZGVyO1xuICBwcmludC1jb2xvci1hZGp1c3Q6IGV4YWN0OyAvLyBLZWVwIHRoZW1lZCBhcHBlYXJhbmNlIGZvciBwcmludFxuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLWNoZWNrLXRyYW5zaXRpb24pO1xuXG4gICZbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLWNoZWNrLWlucHV0LWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJlt0eXBlPVwicmFkaW9cIl0ge1xuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXItcmFkaXVzOiAkZm9ybS1jaGVjay1yYWRpby1ib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGZpbHRlcjogJGZvcm0tY2hlY2staW5wdXQtYWN0aXZlLWZpbHRlcjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtZm9jdXMtYm9yZGVyO1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogJGZvcm0tY2hlY2staW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gICY6Y2hlY2tlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYm9yZGVyLWNvbG9yO1xuXG4gICAgJlt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZy1pbWFnZTogI3tlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctaW1hZ2UpfSwgdmFyKC0tI3skcHJlZml4fWdyYWRpZW50KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnLWltYWdlOiAje2VzY2FwZS1zdmcoJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1pbWFnZSl9O1xuICAgICAgfVxuICAgIH1cblxuICAgICZbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICAgIC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmctaW1hZ2U6ICN7ZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1yYWRpby1jaGVja2VkLWJnLWltYWdlKX0sIHZhcigtLSN7JHByZWZpeH1ncmFkaWVudCk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZy1pbWFnZTogI3tlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLXJhZGlvLWNoZWNrZWQtYmctaW1hZ2UpfTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmW3R5cGU9XCJjaGVja2JveFwiXTppbmRldGVybWluYXRlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I7XG5cbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZy1pbWFnZTogI3tlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctaW1hZ2UpfSwgdmFyKC0tI3skcHJlZml4fWdyYWRpZW50KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmctaW1hZ2U6ICN7ZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWltYWdlKX07XG4gICAgfVxuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgZmlsdGVyOiBub25lO1xuICAgIG9wYWNpdHk6ICRmb3JtLWNoZWNrLWlucHV0LWRpc2FibGVkLW9wYWNpdHk7XG4gIH1cblxuICAvLyBVc2UgZGlzYWJsZWQgYXR0cmlidXRlIGluIGFkZGl0aW9uIG9mIDpkaXNhYmxlZCBwc2V1ZG8tY2xhc3NcbiAgLy8gU2VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MjQ3XG4gICZbZGlzYWJsZWRdLFxuICAmOmRpc2FibGVkIHtcbiAgICB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgIG9wYWNpdHk6ICRmb3JtLWNoZWNrLWxhYmVsLWRpc2FibGVkLW9wYWNpdHk7XG4gICAgfVxuICB9XG59XG5cbi5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgY29sb3I6ICRmb3JtLWNoZWNrLWxhYmVsLWNvbG9yO1xuICBjdXJzb3I6ICRmb3JtLWNoZWNrLWxhYmVsLWN1cnNvcjtcbn1cblxuLy9cbi8vIFN3aXRjaFxuLy9cblxuLmZvcm0tc3dpdGNoIHtcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1zd2l0Y2gtcGFkZGluZy1zdGFydDtcblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgLS0jeyRwcmVmaXh9Zm9ybS1zd2l0Y2gtYmc6ICN7ZXNjYXBlLXN2ZygkZm9ybS1zd2l0Y2gtYmctaW1hZ2UpfTtcblxuICAgIHdpZHRoOiAkZm9ybS1zd2l0Y2gtd2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6ICRmb3JtLXN3aXRjaC1wYWRkaW5nLXN0YXJ0ICogLTE7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tI3skcHJlZml4fWZvcm0tc3dpdGNoLWJnKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXN3aXRjaC1ib3JkZXItcmFkaXVzLCAwKTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLXN3aXRjaC10cmFuc2l0aW9uKTtcblxuICAgICY6Zm9jdXMge1xuICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1zd2l0Y2gtYmc6ICN7ZXNjYXBlLXN2ZygkZm9ybS1zd2l0Y2gtZm9jdXMtYmctaW1hZ2UpfTtcbiAgICB9XG5cbiAgICAmOmNoZWNrZWQge1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctcG9zaXRpb247XG5cbiAgICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICAgIC0tI3skcHJlZml4fWZvcm0tc3dpdGNoLWJnOiAje2VzY2FwZS1zdmcoJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctaW1hZ2UpfSwgdmFyKC0tI3skcHJlZml4fWdyYWRpZW50KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAtLSN7JHByZWZpeH1mb3JtLXN3aXRjaC1iZzogI3tlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLWltYWdlKX07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5mb3JtLWNoZWNrLXJldmVyc2Uge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLXN3aXRjaC1wYWRkaW5nLXN0YXJ0O1xuICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQgKiAtMTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZm9ybS1jaGVjay1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi1lbmQ7XG59XG5cbi5idG4tY2hlY2sge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICZbZGlzYWJsZWRdLFxuICAmOmRpc2FibGVkIHtcbiAgICArIC5idG4ge1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICBmaWx0ZXI6IG5vbmU7XG4gICAgICBvcGFjaXR5OiAkZm9ybS1jaGVjay1idG4tY2hlY2stZGlzYWJsZWQtb3BhY2l0eTtcbiAgICB9XG4gIH1cbn1cblxuQGlmICRlbmFibGUtZGFyay1tb2RlIHtcbiAgQGluY2x1ZGUgY29sb3ItbW9kZShkYXJrKSB7XG4gICAgLmZvcm0tc3dpdGNoIC5mb3JtLWNoZWNrLWlucHV0Om5vdCg6Y2hlY2tlZCk6bm90KDpmb2N1cykge1xuICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1zd2l0Y2gtYmc6ICN7ZXNjYXBlLXN2ZygkZm9ybS1zd2l0Y2gtYmctaW1hZ2UtZGFyayl9O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUmFuZ2Vcbi8vXG4vLyBTdHlsZSByYW5nZSBpbnB1dHMgdGhlIHNhbWUgYWNyb3NzIGJyb3dzZXJzLiBWZW5kb3Itc3BlY2lmaWMgcnVsZXMgZm9yIHBzZXVkb1xuLy8gZWxlbWVudHMgY2Fubm90IGJlIG1peGVkLiBBcyBzdWNoLCB0aGVyZSBhcmUgbm8gc2hhcmVkIHN0eWxlcyBmb3IgZm9jdXMgb3Jcbi8vIGFjdGl2ZSBzdGF0ZXMgb24gcHJlZml4ZWQgc2VsZWN0b3JzLlxuXG4uZm9ybS1yYW5nZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGFkZCgkZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQsICRmb3JtLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGggKiAyKTtcbiAgcGFkZGluZzogMDsgLy8gTmVlZCB0byByZXNldCBwYWRkaW5nXG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG5cbiAgICAvLyBQc2V1ZG8tZWxlbWVudHMgbXVzdCBiZSBzcGxpdCBhY3Jvc3MgbXVsdGlwbGUgcnVsZXNldHMgdG8gaGF2ZSBhbiBlZmZlY3QuXG4gICAgLy8gTm8gYm94LXNoYWRvdygpIG1peGluIGZvciBmb2N1cyBhY2Nlc3NpYmlsaXR5LlxuICAgICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHsgYm94LXNoYWRvdzogJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIgICAgIHsgYm94LXNoYWRvdzogJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICB9XG5cbiAgJjo6LW1vei1mb2N1cy1vdXRlciB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgIHdpZHRoOiAkZm9ybS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRmb3JtLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICBtYXJnaW4tdG9wOiAoJGZvcm0tcmFuZ2UtdHJhY2staGVpZ2h0IC0gJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0KSAqIC41OyAvLyBXZWJraXQgc3BlY2lmaWNcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRmb3JtLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRmb3JtLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1yYW5nZS10aHVtYi10cmFuc2l0aW9uKTtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRmb3JtLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XG4gICAgfVxuICB9XG5cbiAgJjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgIHdpZHRoOiAkZm9ybS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRmb3JtLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7IC8vIFdoeT9cbiAgICBjdXJzb3I6ICRmb3JtLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1yYW5nZS10cmFjay1iZztcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgIHdpZHRoOiAkZm9ybS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRmb3JtLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRmb3JtLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRmb3JtLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1yYW5nZS10aHVtYi10cmFuc2l0aW9uKTtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRmb3JtLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XG4gICAgfVxuICB9XG5cbiAgJjo6LW1vei1yYW5nZS10cmFjayB7XG4gICAgd2lkdGg6ICRmb3JtLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGZvcm0tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6ICRmb3JtLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1yYW5nZS10cmFjay1iZztcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGaXJlZm94IHNwZWNpZmljP1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuXG4gICAgJjo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZztcbiAgICB9XG4gIH1cbn1cbiIsIi5mb3JtLWZsb2F0aW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCxcbiAgPiAuZm9ybS1zZWxlY3Qge1xuICAgIGhlaWdodDogJGZvcm0tZmxvYXRpbmctaGVpZ2h0O1xuICAgIG1pbi1oZWlnaHQ6ICRmb3JtLWZsb2F0aW5nLWhlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJGZvcm0tZmxvYXRpbmctbGluZS1oZWlnaHQ7XG4gIH1cblxuICA+IGxhYmVsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMjtcbiAgICBoZWlnaHQ6IDEwMCU7IC8vIGFsbG93IHRleHRhcmVhc1xuICAgIHBhZGRpbmc6ICRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteSAkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDsgLy8gUmVxdWlyZWQgZm9yIGFsaWduaW5nIGxhYmVsJ3MgdGV4dCB3aXRoIHRoZSBpbnB1dCBhcyBpdCBhZmZlY3RzIGlubmVyIGJveCBtb2RlbFxuICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLWZsb2F0aW5nLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgICBwYWRkaW5nOiAkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXkgJGZvcm0tZmxvYXRpbmctcGFkZGluZy14O1xuXG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJjpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB7XG4gICAgICBwYWRkaW5nLXRvcDogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy10O1xuICAgICAgcGFkZGluZy1ib3R0b206ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctYjtcbiAgICB9XG4gICAgLy8gRHVwbGljYXRlZCBiZWNhdXNlIGA6LXdlYmtpdC1hdXRvZmlsbGAgaW52YWxpZGF0ZXMgb3RoZXIgc2VsZWN0b3JzIHdoZW4gZ3JvdXBlZFxuICAgICY6LXdlYmtpdC1hdXRvZmlsbCB7XG4gICAgICBwYWRkaW5nLXRvcDogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy10O1xuICAgICAgcGFkZGluZy1ib3R0b206ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctYjtcbiAgICB9XG4gIH1cblxuICA+IC5mb3JtLXNlbGVjdCB7XG4gICAgcGFkZGluZy10b3A6ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctdDtcbiAgICBwYWRkaW5nLWJvdHRvbTogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy1iO1xuICB9XG5cbiAgPiAuZm9ybS1jb250cm9sOmZvY3VzLFxuICA+IC5mb3JtLWNvbnRyb2w6bm90KDpwbGFjZWhvbGRlci1zaG93biksXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQsXG4gID4gLmZvcm0tc2VsZWN0IHtcbiAgICB+IGxhYmVsIHtcbiAgICAgIGNvbG9yOiByZ2JhKHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yLXJnYiksICN7JGZvcm0tZmxvYXRpbmctbGFiZWwtb3BhY2l0eX0pO1xuICAgICAgdHJhbnNmb3JtOiAkZm9ybS1mbG9hdGluZy1sYWJlbC10cmFuc2Zvcm07XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBpbnNldDogJGZvcm0tZmxvYXRpbmctcGFkZGluZy15ICgkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXggKiAuNSk7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICBoZWlnaHQ6ICRmb3JtLWZsb2F0aW5nLWxhYmVsLWhlaWdodDtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gRHVwbGljYXRlZCBiZWNhdXNlIGA6LXdlYmtpdC1hdXRvZmlsbGAgaW52YWxpZGF0ZXMgb3RoZXIgc2VsZWN0b3JzIHdoZW4gZ3JvdXBlZFxuICA+IC5mb3JtLWNvbnRyb2w6LXdlYmtpdC1hdXRvZmlsbCB7XG4gICAgfiBsYWJlbCB7XG4gICAgICBjb2xvcjogcmdiYSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvci1yZ2IpLCAjeyRmb3JtLWZsb2F0aW5nLWxhYmVsLW9wYWNpdHl9KTtcbiAgICAgIHRyYW5zZm9ybTogJGZvcm0tZmxvYXRpbmctbGFiZWwtdHJhbnNmb3JtO1xuICAgIH1cbiAgfVxuXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICAgIH4gbGFiZWwge1xuICAgICAgYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoIDA7IC8vIFJlcXVpcmVkIHRvIHByb3Blcmx5IHBvc2l0aW9uIGxhYmVsIHRleHQgLSBhcyBleHBsYWluZWQgYWJvdmVcbiAgICB9XG4gIH1cblxuICA+IDpkaXNhYmxlZCB+IGxhYmVsLFxuICA+IC5mb3JtLWNvbnRyb2w6ZGlzYWJsZWQgfiBsYWJlbCB7IC8vIFJlcXVpcmVkIGZvciBgLmZvcm0tY29udHJvbGBzIGJlY2F1c2Ugb2Ygc3BlY2lmaWNpdHlcbiAgICBjb2xvcjogJGZvcm0tZmxvYXRpbmctbGFiZWwtZGlzYWJsZWQtY29sb3I7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5pbnB1dC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyAvLyBGb3IgZm9ybSB2YWxpZGF0aW9uIGZlZWRiYWNrXG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMTAwJTtcblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tc2VsZWN0LFxuICA+IC5mb3JtLWZsb2F0aW5nIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IC8vIEZvciBmb2N1cyBzdGF0ZSdzIHotaW5kZXhcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB3aWR0aDogMSU7XG4gICAgbWluLXdpZHRoOiAwOyAvLyBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8zNjI0NzE0MC93aHktZG9udC1mbGV4LWl0ZW1zLXNocmluay1wYXN0LWNvbnRlbnQtc2l6ZVxuICB9XG5cbiAgLy8gQnJpbmcgdGhlIFwiYWN0aXZlXCIgZm9ybSBjb250cm9sIHRvIHRoZSB0b3Agb2Ygc3Vycm91bmRpbmcgZWxlbWVudHNcbiAgPiAuZm9ybS1jb250cm9sOmZvY3VzLFxuICA+IC5mb3JtLXNlbGVjdDpmb2N1cyxcbiAgPiAuZm9ybS1mbG9hdGluZzpmb2N1cy13aXRoaW4ge1xuICAgIHotaW5kZXg6IDU7XG4gIH1cblxuICAvLyBFbnN1cmUgYnV0dG9ucyBhcmUgYWx3YXlzIGFib3ZlIGlucHV0cyBmb3IgbW9yZSB2aXN1YWxseSBwbGVhc2luZyBib3JkZXJzLlxuICAvLyBUaGlzIGlzbid0IG5lZWRlZCBmb3IgYC5pbnB1dC1ncm91cC10ZXh0YCBzaW5jZSBpdCBzaGFyZXMgdGhlIHNhbWUgYm9yZGVyLWNvbG9yXG4gIC8vIGFzIG91ciBpbnB1dHMuXG4gIC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICB6LWluZGV4OiA1O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFRleHR1YWwgYWRkb25zXG4vL1xuLy8gU2VydmVzIGFzIGEgY2F0Y2gtYWxsIGVsZW1lbnQgZm9yIGFueSB0ZXh0IG9yIHJhZGlvL2NoZWNrYm94IGlucHV0IHlvdSB3aXNoXG4vLyB0byBwcmVwZW5kIG9yIGFwcGVuZCB0byBhbiBpbnB1dC5cblxuLmlucHV0LWdyb3VwLXRleHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAkaW5wdXQtZ3JvdXAtYWRkb24tcGFkZGluZy15ICRpbnB1dC1ncm91cC1hZGRvbi1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplKTsgLy8gTWF0Y2ggaW5wdXRzXG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZ3JvdXAtYWRkb24tZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWJnO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG59XG5cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgZm9ybSBjb250cm9sIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llclxuLy8gbWFuaXB1bGF0aW9uLlxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tc2VsZWN0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuYnRuIHtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tc2VsZWN0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuYnRuIHtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1zZWxlY3Qge1xuICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1zZWxlY3QtcGFkZGluZy14ICsgJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nO1xufVxuXG5cbi8vIFJvdW5kZWQgY29ybmVyc1xuLy9cbi8vIFRoZXNlIHJ1bGVzZXRzIG11c3QgY29tZSBhZnRlciB0aGUgc2l6aW5nIG9uZXMgdG8gcHJvcGVybHkgb3ZlcnJpZGUgc20gYW5kIGxnXG4vLyBib3JkZXItcmFkaXVzIHZhbHVlcyB3aGVuIGV4dGVuZGluZy4gVGhleSdyZSBtb3JlIHNwZWNpZmljIHRoYW4gd2UnZCBsaWtlXG4vLyB3aXRoIHRoZSBgLmlucHV0LWdyb3VwID5gIHBhcnQsIGJ1dCB3aXRob3V0IGl0LCB3ZSBjYW5ub3Qgb3ZlcnJpZGUgdGhlIHNpemluZy5cblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbi5pbnB1dC1ncm91cCB7XG4gICY6bm90KC5oYXMtdmFsaWRhdGlvbikge1xuICAgID4gOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpOm5vdCguZHJvcGRvd24tbWVudSk6bm90KC5mb3JtLWZsb2F0aW5nKSxcbiAgICA+IC5kcm9wZG93bi10b2dnbGU6bnRoLWxhc3QtY2hpbGQobiArIDMpLFxuICAgID4gLmZvcm0tZmxvYXRpbmc6bm90KDpsYXN0LWNoaWxkKSA+IC5mb3JtLWNvbnRyb2wsXG4gICAgPiAuZm9ybS1mbG9hdGluZzpub3QoOmxhc3QtY2hpbGQpID4gLmZvcm0tc2VsZWN0IHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKDApO1xuICAgIH1cbiAgfVxuXG4gICYuaGFzLXZhbGlkYXRpb24ge1xuICAgID4gOm50aC1sYXN0LWNoaWxkKG4gKyAzKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSk6bm90KC5kcm9wZG93bi1tZW51KTpub3QoLmZvcm0tZmxvYXRpbmcpLFxuICAgID4gLmRyb3Bkb3duLXRvZ2dsZTpudGgtbGFzdC1jaGlsZChuICsgNCksXG4gICAgPiAuZm9ybS1mbG9hdGluZzpudGgtbGFzdC1jaGlsZChuICsgMykgPiAuZm9ybS1jb250cm9sLFxuICAgID4gLmZvcm0tZmxvYXRpbmc6bnRoLWxhc3QtY2hpbGQobiArIDMpID4gLmZvcm0tc2VsZWN0IHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKDApO1xuICAgIH1cbiAgfVxuXG4gICR2YWxpZGF0aW9uLW1lc3NhZ2VzOiBcIlwiO1xuICBAZWFjaCAkc3RhdGUgaW4gbWFwLWtleXMoJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXMpIHtcbiAgICAkdmFsaWRhdGlvbi1tZXNzYWdlczogJHZhbGlkYXRpb24tbWVzc2FnZXMgKyBcIjpub3QoLlwiICsgdW5xdW90ZSgkc3RhdGUpICsgXCItdG9vbHRpcClcIiArIFwiOm5vdCguXCIgKyB1bnF1b3RlKCRzdGF0ZSkgKyBcIi1mZWVkYmFjaylcIjtcbiAgfVxuXG4gID4gOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tbWVudSkjeyR2YWxpZGF0aW9uLW1lc3NhZ2VzfSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoI3skaW5wdXQtYm9yZGVyLXdpZHRofSAqIC0xKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICBAaW5jbHVkZSBib3JkZXItc3RhcnQtcmFkaXVzKDApO1xuICB9XG5cbiAgPiAuZm9ybS1mbG9hdGluZzpub3QoOmZpcnN0LWNoaWxkKSA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tZmxvYXRpbmc6bm90KDpmaXJzdC1jaGlsZCkgPiAuZm9ybS1zZWxlY3Qge1xuICAgIEBpbmNsdWRlIGJvcmRlci1zdGFydC1yYWRpdXMoMCk7XG4gIH1cbn1cbiIsIi8vIEZvcm0gdmFsaWRhdGlvblxuLy9cbi8vIFByb3ZpZGUgZmVlZGJhY2sgdG8gdXNlcnMgd2hlbiBmb3JtIGZpZWxkIHZhbHVlcyBhcmUgdmFsaWQgb3IgaW52YWxpZC4gV29ya3Ncbi8vIHByaW1hcmlseSBmb3IgY2xpZW50LXNpZGUgdmFsaWRhdGlvbiB2aWEgc2NvcGVkIGA6aW52YWxpZGAgYW5kIGA6dmFsaWRgXG4vLyBwc2V1ZG8tY2xhc3NlcyBidXQgYWxzbyBpbmNsdWRlcyBgLmlzLWludmFsaWRgIGFuZCBgLmlzLXZhbGlkYCBjbGFzc2VzIGZvclxuLy8gc2VydmVyLXNpZGUgdmFsaWRhdGlvbi5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXMtbG9vcFxuQGVhY2ggJHN0YXRlLCAkZGF0YSBpbiAkZm9ybS12YWxpZGF0aW9uLXN0YXRlcyB7XG4gIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsICRkYXRhLi4uKTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS12YWxpZGF0aW9uLXN0YXRlcy1sb29wXG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5idG4ge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXg6ICN7JGJ0bi1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1idG4tcGFkZGluZy15OiAjeyRidG4tcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWZvbnQtZmFtaWx5OiAjeyRidG4tZm9udC1mYW1pbHl9O1xuICBAaW5jbHVkZSByZnMoJGJ0bi1mb250LXNpemUsIC0tI3skcHJlZml4fWJ0bi1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1idG4tZm9udC13ZWlnaHQ6ICN7JGJ0bi1mb250LXdlaWdodH07XG4gIC0tI3skcHJlZml4fWJ0bi1saW5lLWhlaWdodDogI3skYnRuLWxpbmUtaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNvbG9yOiAjeyRidG4tY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYmc6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tYm9yZGVyLXdpZHRoOiAjeyRidG4tYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItcmFkaXVzOiAjeyRidG4tYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tYm94LXNoYWRvdzogI3skYnRuLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtb3BhY2l0eTogI3skYnRuLWRpc2FibGVkLW9wYWNpdHl9O1xuICAtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdzogMCAwIDAgI3skYnRuLWZvY3VzLXdpZHRofSByZ2JhKHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtc2hhZG93LXJnYiksIC41KTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBidG4tY3NzLXZhcnNcblxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1idG4tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9YnRuLXBhZGRpbmcteCk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvbnQtZmFtaWx5KTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1idG4tZm9udC1zaXplKSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvbnQtd2VpZ2h0KTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1idG4tbGluZS1oZWlnaHQpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1jb2xvcik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICB3aGl0ZS1zcGFjZTogJGJ0bi13aGl0ZS1zcGFjZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiBpZigkZW5hYmxlLWJ1dHRvbi1wb2ludGVycywgcG9pbnRlciwgbnVsbCk7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1idG4tYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWJ0bi1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKHZhcigtLSN7JHByZWZpeH1idG4tYmcpKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9YnRuLWJveC1zaGFkb3cpKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYnRuLXRyYW5zaXRpb24pO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gIC5idG4tY2hlY2sgKyAmOmhvdmVyIHtcbiAgICAvLyBvdmVycmlkZSBmb3IgdGhlIGNoZWNrYm94L3JhZGlvIGJ1dHRvbnNcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1jb2xvcik7XG4gIH1cblxuICAmOmZvY3VzLXZpc2libGUge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJnKSk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJvcmRlci1jb2xvcik7XG4gICAgb3V0bGluZTogMDtcbiAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWJveC1zaGFkb3cpLCB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9XG4gIH1cblxuICAuYnRuLWNoZWNrOmZvY3VzLXZpc2libGUgKyAmIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tYm94LXNoYWRvdyksIHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH1cbiAgfVxuXG4gIC5idG4tY2hlY2s6Y2hlY2tlZCArICYsXG4gIDpub3QoLmJ0bi1jaGVjaykgKyAmOmFjdGl2ZSxcbiAgJjpmaXJzdC1jaGlsZDphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAmLnNob3cge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYmcpO1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGlmKCRlbmFibGUtZ3JhZGllbnRzLCBub25lLCBudWxsKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJvcmRlci1jb2xvcik7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1zaGFkb3cpKTtcblxuICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtc2hhZG93KSwgdmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5idG4tY2hlY2s6Y2hlY2tlZDpmb2N1cy12aXNpYmxlICsgJiB7XG4gICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtc2hhZG93KSwgdmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfVxuICB9XG5cbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCxcbiAgZmllbGRzZXQ6ZGlzYWJsZWQgJiB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtY29sb3IpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYmcpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGlmKCRlbmFibGUtZ3JhZGllbnRzLCBub25lLCBudWxsKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yKTtcbiAgICBvcGFjaXR5OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLW9wYWNpdHkpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gQWx0ZXJuYXRlIGJ1dHRvbnNcbi8vXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tdmFyaWFudC1sb29wc1xuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5idG4tI3skY29sb3J9IHtcbiAgICBAaWYgJGNvbG9yID09IFwibGlnaHRcIiB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudChcbiAgICAgICAgJHZhbHVlLFxuICAgICAgICAkdmFsdWUsXG4gICAgICAgICRob3Zlci1iYWNrZ3JvdW5kOiBzaGFkZS1jb2xvcigkdmFsdWUsICRidG4taG92ZXItYmctc2hhZGUtYW1vdW50KSxcbiAgICAgICAgJGhvdmVyLWJvcmRlcjogc2hhZGUtY29sb3IoJHZhbHVlLCAkYnRuLWhvdmVyLWJvcmRlci1zaGFkZS1hbW91bnQpLFxuICAgICAgICAkYWN0aXZlLWJhY2tncm91bmQ6IHNoYWRlLWNvbG9yKCR2YWx1ZSwgJGJ0bi1hY3RpdmUtYmctc2hhZGUtYW1vdW50KSxcbiAgICAgICAgJGFjdGl2ZS1ib3JkZXI6IHNoYWRlLWNvbG9yKCR2YWx1ZSwgJGJ0bi1hY3RpdmUtYm9yZGVyLXNoYWRlLWFtb3VudClcbiAgICAgICk7XG4gICAgfSBAZWxzZSBpZiAkY29sb3IgPT0gXCJkYXJrXCIge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoXG4gICAgICAgICR2YWx1ZSxcbiAgICAgICAgJHZhbHVlLFxuICAgICAgICAkaG92ZXItYmFja2dyb3VuZDogdGludC1jb2xvcigkdmFsdWUsICRidG4taG92ZXItYmctdGludC1hbW91bnQpLFxuICAgICAgICAkaG92ZXItYm9yZGVyOiB0aW50LWNvbG9yKCR2YWx1ZSwgJGJ0bi1ob3Zlci1ib3JkZXItdGludC1hbW91bnQpLFxuICAgICAgICAkYWN0aXZlLWJhY2tncm91bmQ6IHRpbnQtY29sb3IoJHZhbHVlLCAkYnRuLWFjdGl2ZS1iZy10aW50LWFtb3VudCksXG4gICAgICAgICRhY3RpdmUtYm9yZGVyOiB0aW50LWNvbG9yKCR2YWx1ZSwgJGJ0bi1hY3RpdmUtYm9yZGVyLXRpbnQtYW1vdW50KVxuICAgICAgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCR2YWx1ZSwgJHZhbHVlKTtcbiAgICB9XG4gIH1cbn1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5idG4tb3V0bGluZS0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tdmFyaWFudC1sb29wc1xuXG5cbi8vXG4vLyBMaW5rIGJ1dHRvbnNcbi8vXG5cbi8vIE1ha2UgYSBidXR0b24gbG9vayBhbmQgYmVoYXZlIGxpa2UgYSBsaW5rXG4uYnRuLWxpbmsge1xuICAtLSN7JHByZWZpeH1idG4tZm9udC13ZWlnaHQ6ICN7JGZvbnQtd2VpZ2h0LW5vcm1hbH07XG4gIC0tI3skcHJlZml4fWJ0bi1jb2xvcjogI3skYnRuLWxpbmstY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYmc6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yOiAjeyRidG4tbGluay1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWNvbG9yOiAjeyRidG4tbGluay1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWNvbG9yOiAjeyRidG4tbGluay1kaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tYm94LXNoYWRvdzogMCAwIDAgIzAwMDsgLy8gQ2FuJ3QgdXNlIGBub25lYCBhcyBrZXl3b3JkIG5lZ2F0ZXMgYWxsIHZhbHVlcyB3aGVuIHVzZWQgd2l0aCBtdWx0aXBsZSBzaGFkb3dzXG4gIC0tI3skcHJlZml4fWJ0bi1mb2N1cy1zaGFkb3ctcmdiOiAjeyRidG4tbGluay1mb2N1cy1zaGFkb3ctcmdifTtcblxuICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG5cbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1jb2xvcik7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1jb2xvcik7XG4gIH1cblxuICAvLyBObyBuZWVkIGZvciBhbiBhY3RpdmUgc3RhdGUgaGVyZVxufVxuXG5cbi8vXG4vLyBCdXR0b24gU2l6ZXNcbi8vXG5cbi5idG4tbGcge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS1sZywgJGJ0bi1wYWRkaW5nLXgtbGcsICRidG4tZm9udC1zaXplLWxnLCAkYnRuLWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4uYnRuLXNtIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktc20sICRidG4tcGFkZGluZy14LXNtLCAkYnRuLWZvbnQtc2l6ZS1zbSwgJGJ0bi1ib3JkZXItcmFkaXVzLXNtKTtcbn1cbiIsIi5mYWRlIHtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1mYWRlKTtcblxuICAmOm5vdCguc2hvdykge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbGxhcHNlLWNsYXNzZXNcbi5jb2xsYXBzZSB7XG4gICY6bm90KC5zaG93KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uY29sbGFwc2luZyB7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1jb2xsYXBzZSk7XG5cbiAgJi5jb2xsYXBzZS1ob3Jpem9udGFsIHtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1jb2xsYXBzZS13aWR0aCk7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgY29sbGFwc2UtY2xhc3Nlc1xuIiwiLy8gVGhlIGRyb3Bkb3duIHdyYXBwZXIgKGA8ZGl2PmApXG4uZHJvcHVwLFxuLmRyb3BlbmQsXG4uZHJvcGRvd24sXG4uZHJvcHN0YXJ0LFxuLmRyb3B1cC1jZW50ZXIsXG4uZHJvcGRvd24tY2VudGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZHJvcGRvd24tdG9nZ2xlIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAvLyBHZW5lcmF0ZSB0aGUgY2FyZXQgYXV0b21hdGljYWxseVxuICBAaW5jbHVkZSBjYXJldCgpO1xufVxuXG4vLyBUaGUgZHJvcGRvd24gbWVudVxuLmRyb3Bkb3duLW1lbnUge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgZHJvcGRvd24tY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24temluZGV4OiAjeyR6aW5kZXgtZHJvcGRvd259O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1taW4td2lkdGg6ICN7JGRyb3Bkb3duLW1pbi13aWR0aH07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLXBhZGRpbmcteDogI3skZHJvcGRvd24tcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tcGFkZGluZy15OiAjeyRkcm9wZG93bi1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1zcGFjZXI6ICN7JGRyb3Bkb3duLXNwYWNlcn07XG4gIEBpbmNsdWRlIHJmcygkZHJvcGRvd24tZm9udC1zaXplLCAtLSN7JHByZWZpeH1kcm9wZG93bi1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1jb2xvcjogI3skZHJvcGRvd24tY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1iZzogI3skZHJvcGRvd24tYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItY29sb3I6ICN7JGRyb3Bkb3duLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci1yYWRpdXM6ICN7JGRyb3Bkb3duLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItd2lkdGg6ICN7JGRyb3Bkb3duLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXM6ICN7JGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1kaXZpZGVyLWJnOiAjeyRkcm9wZG93bi1kaXZpZGVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teTogI3skZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teX07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJveC1zaGFkb3c6ICN7JGRyb3Bkb3duLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWNvbG9yOiAjeyRkcm9wZG93bi1saW5rLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogI3skZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICN7JGRyb3Bkb3duLWxpbmstaG92ZXItYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogI3skZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogI3skZHJvcGRvd24tbGluay1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAjeyRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6ICN7JGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taXRlbS1wYWRkaW5nLXk6ICN7JGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taGVhZGVyLWNvbG9yOiAjeyRkcm9wZG93bi1oZWFkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItcGFkZGluZy14OiAjeyRkcm9wZG93bi1oZWFkZXItcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteTogI3skZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteX07XG4gIC8vIHNjc3MtZG9jcy1lbmQgZHJvcGRvd24tY3NzLXZhcnNcblxuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi16aW5kZXgpO1xuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxuICBtaW4td2lkdGg6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1taW4td2lkdGgpO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tcGFkZGluZy14KTtcbiAgbWFyZ2luOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IG1hcmdpbiBvZiB1bFxuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWZvbnQtc2l6ZSkpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRW5zdXJlcyBwcm9wZXIgYWxpZ25tZW50IGlmIHBhcmVudCBoYXMgaXQgY2hhbmdlZCAoZS5nLiwgbW9kYWwgZm9vdGVyKVxuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tYmcpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWJveC1zaGFkb3cpKTtcblxuICAmW2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLXNwYWNlcik7XG4gIH1cblxuICBAaWYgJGRyb3Bkb3duLXBhZGRpbmcteSA9PSAwIHtcbiAgICA+IC5kcm9wZG93bi1pdGVtOmZpcnN0LWNoaWxkLFxuICAgID4gbGk6Zmlyc3QtY2hpbGQgLmRyb3Bkb3duLWl0ZW0ge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgICB9XG4gICAgPiAuZHJvcGRvd24taXRlbTpsYXN0LWNoaWxkLFxuICAgID4gbGk6bGFzdC1jaGlsZCAuZHJvcGRvd24taXRlbSB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cykpO1xuICAgIH1cblxuICB9XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCByZXNwb25zaXZlLWJyZWFrcG9pbnRzXG4vLyBXZSBkZWxpYmVyYXRlbHkgaGFyZGNvZGUgdGhlIGBicy1gIHByZWZpeCBiZWNhdXNlIHdlIGNoZWNrXG4vLyB0aGlzIGN1c3RvbSBwcm9wZXJ0eSBpbiBKUyB0byBkZXRlcm1pbmUgUG9wcGVyJ3MgcG9zaXRpb25pbmdcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tc3RhcnQge1xuICAgICAgLS1icy1wb3NpdGlvbjogc3RhcnQ7XG5cbiAgICAgICZbZGF0YS1icy1wb3BwZXJdIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tZW5kIHtcbiAgICAgIC0tYnMtcG9zaXRpb246IGVuZDtcblxuICAgICAgJltkYXRhLWJzLXBvcHBlcl0ge1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgcmVzcG9uc2l2ZS1icmVha3BvaW50c1xuXG4vLyBBbGxvdyBmb3IgZHJvcGRvd25zIHRvIGdvIGJvdHRvbSB1cCAoYWthLCBkcm9wdXAtbWVudSlcbi8vIEp1c3QgYWRkIC5kcm9wdXAgYWZ0ZXIgdGhlIHN0YW5kYXJkIC5kcm9wZG93biBjbGFzcyBhbmQgeW91J3JlIHNldC5cbi5kcm9wdXAge1xuICAuZHJvcGRvd24tbWVudVtkYXRhLWJzLXBvcHBlcl0ge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tc3BhY2VyKTtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KHVwKTtcbiAgfVxufVxuXG4uZHJvcGVuZCB7XG4gIC5kcm9wZG93bi1tZW51W2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLXNwYWNlcik7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChlbmQpO1xuICAgICY6OmFmdGVyIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcHN0YXJ0IHtcbiAgLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLXNwYWNlcik7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChzdGFydCk7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gYDxocj5gKSB3aXRoaW4gdGhlIGRyb3Bkb3duXG4uZHJvcGRvd24tZGl2aWRlciB7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teSkgMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1kaXZpZGVyLWJnKTtcbiAgb3BhY2l0eTogMTsgLy8gUmV2aXNpdCBpbiB2NiB0byBkZS1kdXBlIHN0eWxlcyB0aGF0IGNvbmZsaWN0IHdpdGggPGhyPiBlbGVtZW50XG59XG5cbi8vIExpbmtzLCBidXR0b25zLCBhbmQgbW9yZSB3aXRoaW4gdGhlIGRyb3Bkb3duIG1lbnVcbi8vXG4vLyBgPGJ1dHRvbj5gLXNwZWNpZmljIHN0eWxlcyBhcmUgZGVub3RlZCB3aXRoIGAvLyBGb3IgPGJ1dHRvbj5zYFxuLmRyb3Bkb3duLWl0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taXRlbS1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLXBhZGRpbmcteCk7XG4gIGNsZWFyOiBib3RoO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gcHJldmVudCBsaW5rcyBmcm9tIHJhbmRvbWx5IGJyZWFraW5nIG9udG8gbmV3IGxpbmVzXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGb3IgYDxidXR0b24+YHNcbiAgYm9yZGVyOiAwOyAvLyBGb3IgYDxidXR0b24+YHNcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taXRlbS1ib3JkZXItcmFkaXVzLCAwKSk7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1ob3Zlci1iZykpO1xuICB9XG5cbiAgJi5hY3RpdmUsXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstYWN0aXZlLWJnKSk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3IpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGlmKCRlbmFibGUtZ3JhZGllbnRzLCBub25lLCBudWxsKTtcbiAgfVxufVxuXG4uZHJvcGRvd24tbWVudS5zaG93IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIERyb3Bkb3duIHNlY3Rpb24gaGVhZGVyc1xuLmRyb3Bkb3duLWhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXgpO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBmb3IgdXNlIHdpdGggaGVhZGluZyBlbGVtZW50c1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1zbSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taGVhZGVyLWNvbG9yKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gYXMgd2l0aCA+IGxpID4gYVxufVxuXG4vLyBEcm9wZG93biB0ZXh0XG4uZHJvcGRvd24taXRlbS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWl0ZW0tcGFkZGluZy14KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWNvbG9yKTtcbn1cblxuLy8gRGFyayBkcm9wZG93bnNcbi5kcm9wZG93bi1tZW51LWRhcmsge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgZHJvcGRvd24tZGFyay1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1jb2xvcjogI3skZHJvcGRvd24tZGFyay1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJnOiAjeyRkcm9wZG93bi1kYXJrLWJnfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAjeyRkcm9wZG93bi1kYXJrLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJveC1zaGFkb3c6ICN7JGRyb3Bkb3duLWRhcmstYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstbGluay1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstbGluay1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWRpdmlkZXItYmc6ICN7JGRyb3Bkb3duLWRhcmstZGl2aWRlci1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICN7JGRyb3Bkb3duLWRhcmstbGluay1ob3Zlci1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAjeyRkcm9wZG93bi1kYXJrLWxpbmstYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICN7JGRyb3Bkb3duLWRhcmstbGluay1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAjeyRkcm9wZG93bi1kYXJrLWxpbmstZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstaGVhZGVyLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBkcm9wZG93bi1kYXJrLWNzcy12YXJzXG59XG4iLCIvLyBNYWtlIHRoZSBkaXYgYmVoYXZlIGxpa2UgYSBidXR0b25cbi5idG4tZ3JvdXAsXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLy8gbWF0Y2ggLmJ0biBhbGlnbm1lbnQgZ2l2ZW4gZm9udC1zaXplIGhhY2sgYWJvdmVcblxuICA+IC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgfVxuXG4gIC8vIEJyaW5nIHRoZSBob3ZlciwgZm9jdXNlZCwgYW5kIFwiYWN0aXZlXCIgYnV0dG9ucyB0byB0aGUgZnJvbnQgdG8gb3ZlcmxheVxuICAvLyB0aGUgYm9yZGVycyBwcm9wZXJseVxuICA+IC5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4sXG4gID4gLmJ0bi1jaGVjazpmb2N1cyArIC5idG4sXG4gID4gLmJ0bjpob3ZlcixcbiAgPiAuYnRuOmZvY3VzLFxuICA+IC5idG46YWN0aXZlLFxuICA+IC5idG4uYWN0aXZlIHtcbiAgICB6LWluZGV4OiAxO1xuICB9XG59XG5cbi8vIE9wdGlvbmFsOiBHcm91cCBtdWx0aXBsZSBidXR0b24gZ3JvdXBzIHRvZ2V0aGVyIGZvciBhIHRvb2xiYXJcbi5idG4tdG9vbGJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLmJ0bi1ncm91cCB7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJ0bi1ib3JkZXItcmFkaXVzKTtcblxuICAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzIHdoZW4gYnV0dG9ucyBhcmUgbmV4dCB0byBlYWNoIG90aGVyXG4gID4gOm5vdCguYnRuLWNoZWNrOmZpcnN0LWNoaWxkKSArIC5idG4sXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoI3skYnRuLWJvcmRlci13aWR0aH0gKiAtMSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIH1cblxuICAvLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcbiAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuICA+IC5idG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0OmZpcnN0LWNoaWxkLFxuICA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKDApO1xuICB9XG5cbiAgLy8gVGhlIGxlZnQgcmFkaXVzIHNob3VsZCBiZSAwIGlmIHRoZSBidXR0b24gaXM6XG4gIC8vIC0gdGhlIFwidGhpcmQgb3IgbW9yZVwiIGNoaWxkXG4gIC8vIC0gdGhlIHNlY29uZCBjaGlsZCBhbmQgdGhlIHByZXZpb3VzIGVsZW1lbnQgaXNuJ3QgYC5idG4tY2hlY2tgIChtYWtpbmcgaXQgdGhlIGZpcnN0IGNoaWxkIHZpc3VhbGx5KVxuICAvLyAtIHBhcnQgb2YgYSBidG4tZ3JvdXAgd2hpY2ggaXNuJ3QgdGhlIGZpcnN0IGNoaWxkXG4gID4gLmJ0bjpudGgtY2hpbGQobiArIDMpLFxuICA+IDpub3QoLmJ0bi1jaGVjaykgKyAuYnRuLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItc3RhcnQtcmFkaXVzKDApO1xuICB9XG59XG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGJ1dHRvbiBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXIgbWFuaXB1bGF0aW9uLlxuXG4uYnRuLWdyb3VwLXNtID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1zbTsgfVxuLmJ0bi1ncm91cC1sZyA+IC5idG4geyBAZXh0ZW5kIC5idG4tbGc7IH1cblxuXG4vL1xuLy8gU3BsaXQgYnV0dG9uIGRyb3Bkb3duc1xuLy9cblxuLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xuXG4gICY6OmFmdGVyLFxuICAuZHJvcHVwICY6OmFmdGVyLFxuICAuZHJvcGVuZCAmOjphZnRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAuZHJvcHN0YXJ0ICY6OmJlZm9yZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5idG4tc20gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG59XG5cbi5idG4tbGcgKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG59XG5cblxuLy8gVGhlIGNsaWNrYWJsZSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBtZW51XG4vLyBTZXQgdGhlIHNhbWUgaW5zZXQgc2hhZG93IGFzIHRoZSA6YWN0aXZlIHN0YXRlXG4uYnRuLWdyb3VwLnNob3cgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG5cbiAgLy8gU2hvdyBubyBzaGFkb3cgZm9yIGAuYnRuLWxpbmtgIHNpbmNlIGl0IGhhcyBubyBvdGhlciBidXR0b24gc3R5bGVzLlxuICAmLmJ0bi1saW5rIHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cblxuLy9cbi8vIFZlcnRpY2FsIGJ1dHRvbiBncm91cHNcbi8vXG5cbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoI3skYnRuLWJvcmRlci13aWR0aH0gKiAtMSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIH1cblxuICAvLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcbiAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xuICB9XG5cbiAgPiAuYnRuIH4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBLaWNrc3RhcnQgYW55IG5hdmlnYXRpb24gY29tcG9uZW50IHdpdGggYSBzZXQgb2Ygc3R5bGUgcmVzZXRzLiBXb3JrcyB3aXRoXG4vLyBgPG5hdj5gcywgYDx1bD5gcyBvciBgPG9sPmBzLlxuXG4ubmF2IHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdi1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1wYWRkaW5nLXg6ICN7JG5hdi1saW5rLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLXBhZGRpbmcteTogI3skbmF2LWxpbmstcGFkZGluZy15fTtcbiAgQGluY2x1ZGUgcmZzKCRuYXYtbGluay1mb250LXNpemUsIC0tI3skcHJlZml4fW5hdi1saW5rLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLWZvbnQtd2VpZ2h0OiAjeyRuYXYtbGluay1mb250LXdlaWdodH07XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLWNvbG9yOiAjeyRuYXYtbGluay1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLWhvdmVyLWNvbG9yOiAjeyRuYXYtbGluay1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiAjeyRuYXYtbGluay1kaXNhYmxlZC1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbmF2LWNzcy12YXJzXG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5uYXYtbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9bmF2LWxpbmstcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9bmF2LWxpbmstcGFkZGluZy14KTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1uYXYtbGluay1mb250LXNpemUpKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1uYXYtbGluay1mb250LXdlaWdodCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LWxpbmstY29sb3IpO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkbmF2LWxpbmstdHJhbnNpdGlvbik7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtbGluay1ob3Zlci1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gIH1cblxuICAmOmZvY3VzLXZpc2libGUge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogJG5hdi1saW5rLWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdGF0ZSBsaWdodGVucyB0ZXh0XG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LWxpbmstZGlzYWJsZWQtY29sb3IpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgfVxufVxuXG4vL1xuLy8gVGFic1xuLy9cblxuLm5hdi10YWJzIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdi10YWJzLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci13aWR0aDogI3skbmF2LXRhYnMtYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAjeyRuYXYtdGFicy1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItcmFkaXVzOiAjeyRuYXYtdGFicy1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICN7JG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I6ICN7JG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICN7JG5hdi10YWJzLWxpbmstYWN0aXZlLWJnfTtcbiAgLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yOiAjeyRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG5hdi10YWJzLWNzcy12YXJzXG5cbiAgYm9yZGVyLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci1jb2xvcik7XG5cbiAgLm5hdi1saW5rIHtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci13aWR0aCkgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci1yYWRpdXMpKTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICAvLyBQcmV2ZW50cyBhY3RpdmUgLm5hdi1saW5rIHRhYiBvdmVybGFwcGluZyBmb2N1cyBvdXRsaW5lIG9mIHByZXZpb3VzL25leHQgLm5hdi1saW5rXG4gICAgICBpc29sYXRpb246IGlzb2xhdGU7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcik7XG4gICAgfVxuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLm5hdi1pdGVtLnNob3cgLm5hdi1saW5rIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1hY3RpdmUtYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcik7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgLy8gTWFrZSBkcm9wZG93biBib3JkZXIgb3ZlcmxhcCB0YWIgYm9yZGVyXG4gICAgbWFyZ2luLXRvcDogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItd2lkdGgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICAvLyBSZW1vdmUgdGhlIHRvcCByb3VuZGVkIGNvcm5lcnMgaGVyZSBzaW5jZSB0aGVyZSBpcyBhIGhhcmQgZWRnZSBhYm92ZSB0aGUgbWVudVxuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG5cblxuLy9cbi8vIFBpbGxzXG4vL1xuXG4ubmF2LXBpbGxzIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdi1waWxscy1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1uYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogI3skbmF2LXBpbGxzLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1uYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I6ICN7JG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdi1waWxscy1saW5rLWFjdGl2ZS1iZzogI3skbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBuYXYtcGlsbHMtY3NzLXZhcnNcblxuICAubmF2LWxpbmsge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fW5hdi1waWxscy1ib3JkZXItcmFkaXVzKSk7XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAuc2hvdyA+IC5uYXYtbGluayB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3IpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKHZhcigtLSN7JHByZWZpeH1uYXYtcGlsbHMtbGluay1hY3RpdmUtYmcpKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBVbmRlcmxpbmVcbi8vXG5cbi5uYXYtdW5kZXJsaW5lIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdi11bmRlcmxpbmUtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bmF2LXVuZGVybGluZS1nYXA6ICN7JG5hdi11bmRlcmxpbmUtZ2FwfTtcbiAgLS0jeyRwcmVmaXh9bmF2LXVuZGVybGluZS1ib3JkZXItd2lkdGg6ICN7JG5hdi11bmRlcmxpbmUtYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9bmF2LXVuZGVybGluZS1saW5rLWFjdGl2ZS1jb2xvcjogI3skbmF2LXVuZGVybGluZS1saW5rLWFjdGl2ZS1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbmF2LXVuZGVybGluZS1jc3MtdmFyc1xuXG4gIGdhcDogdmFyKC0tI3skcHJlZml4fW5hdi11bmRlcmxpbmUtZ2FwKTtcblxuICAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGJvcmRlci1ib3R0b206IHZhcigtLSN7JHByZWZpeH1uYXYtdW5kZXJsaW5lLWJvcmRlci13aWR0aCkgc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogY3VycmVudGNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5zaG93ID4gLm5hdi1saW5rIHtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtdW5kZXJsaW5lLWxpbmstYWN0aXZlLWNvbG9yKTtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiBjdXJyZW50Y29sb3I7XG4gIH1cbn1cblxuXG4vL1xuLy8gSnVzdGlmaWVkIHZhcmlhbnRzXG4vL1xuXG4ubmF2LWZpbGwge1xuICA+IC5uYXYtbGluayxcbiAgLm5hdi1pdGVtIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLm5hdi1qdXN0aWZpZWQge1xuICA+IC5uYXYtbGluayxcbiAgLm5hdi1pdGVtIHtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLm5hdi1maWxsLFxuLm5hdi1qdXN0aWZpZWQge1xuICAubmF2LWl0ZW0gLm5hdi1saW5rIHtcbiAgICB3aWR0aDogMTAwJTsgLy8gTWFrZSBzdXJlIGJ1dHRvbiB3aWxsIGdyb3dcbiAgfVxufVxuXG5cbi8vIFRhYmJhYmxlIHRhYnNcbi8vXG4vLyBIaWRlIHRhYmJhYmxlIHBhbmVzIHRvIHN0YXJ0LCBzaG93IHRoZW0gd2hlbiBgLmFjdGl2ZWBcblxuLnRhYi1jb250ZW50IHtcbiAgPiAudGFiLXBhbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgPiAuYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuIiwiLy8gTmF2YmFyXG4vL1xuLy8gUHJvdmlkZSBhIHN0YXRpYyBuYXZiYXIgZnJvbSB3aGljaCB3ZSBleHBhbmQgdG8gY3JlYXRlIGZ1bGwtd2lkdGgsIGZpeGVkLCBhbmRcbi8vIG90aGVyIG5hdmJhciB2YXJpYXRpb25zLlxuXG4ubmF2YmFyIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdmJhci1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1uYXZiYXItcGFkZGluZy14OiAje2lmKCRuYXZiYXItcGFkZGluZy14ID09IG51bGwsIDAsICRuYXZiYXItcGFkZGluZy14KX07XG4gIC0tI3skcHJlZml4fW5hdmJhci1wYWRkaW5nLXk6ICN7JG5hdmJhci1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItY29sb3I6ICN7JG5hdmJhci1saWdodC1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1ob3Zlci1jb2xvcjogI3skbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWRpc2FibGVkLWNvbG9yOiAjeyRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYWN0aXZlLWNvbG9yOiAjeyRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLXBhZGRpbmcteTogI3skbmF2YmFyLWJyYW5kLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1tYXJnaW4tZW5kOiAjeyRuYXZiYXItYnJhbmQtbWFyZ2luLWVuZH07XG4gIC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1mb250LXNpemU6ICN7JG5hdmJhci1icmFuZC1mb250LXNpemV9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtY29sb3I6ICN7JG5hdmJhci1saWdodC1icmFuZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1ob3Zlci1jb2xvcjogI3skbmF2YmFyLWxpZ2h0LWJyYW5kLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDogI3skbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLXBhZGRpbmcteTogI3skbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItcGFkZGluZy14OiAjeyRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1mb250LXNpemU6ICN7JG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZX07XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWljb24tYmc6ICN7ZXNjYXBlLXN2ZygkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZyl9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1ib3JkZXItY29sb3I6ICN7JG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXM6ICN7JG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1mb2N1cy13aWR0aDogI3skbmF2YmFyLXRvZ2dsZXItZm9jdXMtd2lkdGh9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci10cmFuc2l0aW9uOiAjeyRuYXZiYXItdG9nZ2xlci10cmFuc2l0aW9ufTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBuYXZiYXItY3NzLXZhcnNcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgLy8gYWxsb3cgdXMgdG8gZG8gdGhlIGxpbmUgYnJlYWsgZm9yIGNvbGxhcHNpbmcgY29udGVudFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IC8vIHNwYWNlIG91dCBicmFuZCBmcm9tIGxvZ29cbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fW5hdmJhci1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1uYXZiYXItcGFkZGluZy14KTtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoKTtcblxuICAvLyBCZWNhdXNlIGZsZXggcHJvcGVydGllcyBhcmVuJ3QgaW5oZXJpdGVkLCB3ZSBuZWVkIHRvIHJlZGVjbGFyZSB0aGVzZSBmaXJzdFxuICAvLyBmZXcgcHJvcGVydGllcyBzbyB0aGF0IGNvbnRlbnQgbmVzdGVkIHdpdGhpbiBiZWhhdmUgcHJvcGVybHkuXG4gIC8vIFRoZSBgZmxleC13cmFwYCBwcm9wZXJ0eSBpcyBpbmhlcml0ZWQgdG8gc2ltcGxpZnkgdGhlIGV4cGFuZGVkIG5hdmJhcnNcbiAgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBpbmhlcml0O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG5cbiAgPiAuY29udGFpbmVyLFxuICA+IC5jb250YWluZXItZmx1aWQge1xuICAgIEBleHRlbmQgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXM7XG4gIH1cblxuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICA+IC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRocyl9IHtcbiAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXM7XG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2YmFyIGJyYW5kXG4vL1xuLy8gVXNlZCBmb3IgYnJhbmQsIHByb2plY3QsIG9yIHNpdGUgbmFtZXMuXG5cbi5uYXZiYXItYnJhbmQge1xuICBwYWRkaW5nLXRvcDogdmFyKC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1wYWRkaW5nLXkpO1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1wYWRkaW5nLXkpO1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtbWFyZ2luLWVuZCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSkpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1jb2xvcik7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1ob3Zlci1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgbmF2XG4vL1xuLy8gQ3VzdG9tIG5hdmJhciBuYXZpZ2F0aW9uIChkb2Vzbid0IHJlcXVpcmUgYC5uYXZgLCBidXQgZG9lcyBtYWtlIHVzZSBvZiBgLm5hdi1saW5rYCkuXG5cbi5uYXZiYXItbmF2IHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdmJhci1uYXYtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstcGFkZGluZy14OiAwO1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1wYWRkaW5nLXk6ICN7JG5hdi1saW5rLXBhZGRpbmcteX07XG4gIEBpbmNsdWRlIHJmcygkbmF2LWxpbmstZm9udC1zaXplLCAtLSN7JHByZWZpeH1uYXYtbGluay1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1mb250LXdlaWdodDogI3skbmF2LWxpbmstZm9udC13ZWlnaHR9O1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1jb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1jb2xvcik7XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLWhvdmVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWhvdmVyLWNvbG9yKTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstZGlzYWJsZWQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItZGlzYWJsZWQtY29sb3IpO1xuICAvLyBzY3NzLWRvY3MtZW5kIG5hdmJhci1uYXYtY3NzLXZhcnNcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyAvLyBjYW5ub3QgdXNlIGBpbmhlcml0YCB0byBnZXQgdGhlIGAubmF2YmFyYHMgdmFsdWVcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIC5uYXYtbGluayB7XG4gICAgJi5hY3RpdmUsXG4gICAgJi5zaG93IHtcbiAgICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWFjdGl2ZS1jb2xvcik7XG4gICAgfVxuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdGV4dFxuLy9cbi8vXG5cbi5uYXZiYXItdGV4dCB7XG4gIHBhZGRpbmctdG9wOiAkbmF2LWxpbmstcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJG5hdi1saW5rLXBhZGRpbmcteTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItY29sb3IpO1xuXG4gIGEsXG4gIGE6aG92ZXIsXG4gIGE6Zm9jdXMgIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1hY3RpdmUtY29sb3IpO1xuICB9XG59XG5cblxuLy8gUmVzcG9uc2l2ZSBuYXZiYXJcbi8vXG4vLyBDdXN0b20gc3R5bGVzIGZvciByZXNwb25zaXZlIGNvbGxhcHNpbmcgYW5kIHRvZ2dsaW5nIG9mIG5hdmJhciBjb250ZW50cy5cbi8vIFBvd2VyZWQgYnkgdGhlIGNvbGxhcHNlIEJvb3RzdHJhcCBKYXZhU2NyaXB0IHBsdWdpbi5cblxuLy8gV2hlbiBjb2xsYXBzZWQsIHByZXZlbnQgdGhlIHRvZ2dsZWFibGUgbmF2YmFyIGNvbnRlbnRzIGZyb20gYXBwZWFyaW5nIGluXG4vLyB0aGUgZGVmYXVsdCBmbGV4Ym94IHJvdyBvcmllbnRhdGlvbi4gUmVxdWlyZXMgdGhlIHVzZSBvZiBgZmxleC13cmFwOiB3cmFwYFxuLy8gb24gdGhlIGAubmF2YmFyYCBwYXJlbnQuXG4ubmF2YmFyLWNvbGxhcHNlIHtcbiAgZmxleC1iYXNpczogMTAwJTtcbiAgZmxleC1ncm93OiAxO1xuICAvLyBGb3IgYWx3YXlzIGV4cGFuZGVkIG9yIGV4dHJhIGZ1bGwgbmF2YmFycywgZW5zdXJlIGNvbnRlbnQgYWxpZ25zIGl0c2VsZlxuICAvLyBwcm9wZXJseSB2ZXJ0aWNhbGx5LiBDYW4gYmUgZWFzaWx5IG92ZXJyaWRkZW4gd2l0aCBmbGV4IHV0aWxpdGllcy5cbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLy8gQnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbmF2YmFyIHdoZW4gaW4gaXRzIGNvbGxhcHNlZCBzdGF0ZVxuLm5hdmJhci10b2dnbGVyIHtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLXBhZGRpbmcteCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItZm9udC1zaXplKSk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItYm9yZGVyLWNvbG9yKTsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbih2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItdHJhbnNpdGlvbikpO1xuXG4gICY6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIHZhcigtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1mb2N1cy13aWR0aCk7XG4gIH1cbn1cblxuLy8gS2VlcCBhcyBhIHNlcGFyYXRlIGVsZW1lbnQgc28gZm9sa3MgY2FuIGVhc2lseSBvdmVycmlkZSBpdCB3aXRoIGFub3RoZXIgaWNvblxuLy8gb3IgaW1hZ2UgZmlsZSBhcyBuZWVkZWQuXG4ubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEuNWVtO1xuICBoZWlnaHQ6IDEuNWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItaWNvbi1iZyk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xufVxuXG4ubmF2YmFyLW5hdi1zY3JvbGwge1xuICBtYXgtaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9c2Nyb2xsLWhlaWdodCwgNzV2aCk7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItZXhwYW5kLWxvb3Bcbi8vIEdlbmVyYXRlIHNlcmllcyBvZiBgLm5hdmJhci1leHBhbmQtKmAgcmVzcG9uc2l2ZSBjbGFzc2VzIGZvciBjb25maWd1cmluZ1xuLy8gd2hlcmUgeW91ciBuYXZiYXIgY29sbGFwc2VzLlxuLm5hdmJhci1leHBhbmQge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJG5leHQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL3NlbGVjdG9yLW5vLXVuaW9uLWNsYXNzLW5hbWVcbiAgICAmI3skaW5maXh9IHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5leHQpIHtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgICAgICAubmF2YmFyLW5hdiB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tI3skcHJlZml4fW5hdmJhci1uYXYtbGluay1wYWRkaW5nLXgpO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItY29sbGFwc2Uge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci10b2dnbGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLm9mZmNhbnZhcyB7XG4gICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICB6LWluZGV4OiBhdXRvO1xuICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihub25lKTtcbiAgICAgICAgICAvLyBzdHlsZWxpbnQtZW5hYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4gICAgICAgICAgLm9mZmNhbnZhcy1oZWFkZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAub2ZmY2FudmFzLWJvZHkge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBuYXZiYXItZXhwYW5kLWxvb3BcblxuLy8gTmF2YmFyIHRoZW1lc1xuLy9cbi8vIFN0eWxlcyBmb3Igc3dpdGNoaW5nIGJldHdlZW4gbmF2YmFycyB3aXRoIGxpZ2h0IG9yIGRhcmsgYmFja2dyb3VuZC5cblxuLm5hdmJhci1saWdodCB7XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImAubmF2YmFyLWxpZ2h0YFwiLCBcInY1LjIuMFwiLCBcInY2LjAuMFwiLCB0cnVlKTtcbn1cblxuLm5hdmJhci1kYXJrLFxuLm5hdmJhcltkYXRhLWJzLXRoZW1lPVwiZGFya1wiXSB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItZGFyay1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1uYXZiYXItY29sb3I6ICN7JG5hdmJhci1kYXJrLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWhvdmVyLWNvbG9yOiAjeyRuYXZiYXItZGFyay1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1kaXNhYmxlZC1jb2xvcjogI3skbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYWN0aXZlLWNvbG9yOiAjeyRuYXZiYXItZGFyay1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtY29sb3I6ICN7JG5hdmJhci1kYXJrLWJyYW5kLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLWhvdmVyLWNvbG9yOiAjeyRuYXZiYXItZGFyay1icmFuZC1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWJvcmRlci1jb2xvcjogI3skbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1pY29uLWJnOiAje2VzY2FwZS1zdmcoJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZyl9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG5hdmJhci1kYXJrLWNzcy12YXJzXG59XG5cbkBpZiAkZW5hYmxlLWRhcmstbW9kZSB7XG4gIEBpbmNsdWRlIGNvbG9yLW1vZGUoZGFyaykge1xuICAgIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgICAgIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWljb24tYmc6ICN7ZXNjYXBlLXN2ZygkbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnKX07XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5jYXJkIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcmQtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9Y2FyZC1zcGFjZXIteTogI3skY2FyZC1zcGFjZXIteX07XG4gIC0tI3skcHJlZml4fWNhcmQtc3BhY2VyLXg6ICN7JGNhcmQtc3BhY2VyLXh9O1xuICAtLSN7JHByZWZpeH1jYXJkLXRpdGxlLXNwYWNlci15OiAjeyRjYXJkLXRpdGxlLXNwYWNlci15fTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC10aXRsZS1jb2xvcjogI3skY2FyZC10aXRsZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWNhcmQtc3VidGl0bGUtY29sb3I6ICN7JGNhcmQtc3VidGl0bGUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1jYXJkLWJvcmRlci13aWR0aDogI3skY2FyZC1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1jYXJkLWJvcmRlci1jb2xvcjogI3skY2FyZC1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1jYXJkLWJvcmRlci1yYWRpdXM6ICN7JGNhcmQtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWNhcmQtYm94LXNoYWRvdzogI3skY2FyZC1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzOiAjeyRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXk6ICN7JGNhcmQtY2FwLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteDogI3skY2FyZC1jYXAtcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1jYXAtYmc6ICN7JGNhcmQtY2FwLWJnfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1jYXAtY29sb3I6ICN7JGNhcmQtY2FwLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1oZWlnaHQ6ICN7JGNhcmQtaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1jb2xvcjogI3skY2FyZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWNhcmQtYmc6ICN7JGNhcmQtYmd9O1xuICAtLSN7JHByZWZpeH1jYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6ICN7JGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZ307XG4gIC0tI3skcHJlZml4fWNhcmQtZ3JvdXAtbWFyZ2luOiAjeyRjYXJkLWdyb3VwLW1hcmdpbn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgY2FyZC1jc3MtdmFyc1xuXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLXdpZHRoOiAwOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjI3NDAjaXNzdWVjb21tZW50LTMwNTg2ODEwNlxuICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1jYXJkLWhlaWdodCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcik7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtYmcpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IGJvcmRlci1ib3g7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1jYXJkLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3gtc2hhZG93KSk7XG5cbiAgPiBociB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgPiAubGlzdC1ncm91cCB7XG4gICAgYm9yZGVyLXRvcDogaW5oZXJpdDtcbiAgICBib3JkZXItYm90dG9tOiBpbmhlcml0O1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCAge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgICB9XG4gIH1cblxuICAvLyBEdWUgdG8gc3BlY2lmaWNpdHkgb2YgdGhlIGFib3ZlIHNlbGVjdG9yIChgLmNhcmQgPiAubGlzdC1ncm91cGApLCB3ZSBtdXN0XG4gIC8vIHVzZSBhIGNoaWxkIHNlbGVjdG9yIGhlcmUgdG8gcHJldmVudCBkb3VibGUgYm9yZGVycy5cbiAgPiAuY2FyZC1oZWFkZXIgKyAubGlzdC1ncm91cCxcbiAgPiAubGlzdC1ncm91cCArIC5jYXJkLWZvb3RlciB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxufVxuXG4uY2FyZC1ib2R5IHtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIGZvciBkZWNrcyBhbmQgZ3JvdXBzIHNvIHRoYXQgY2FyZCBibG9ja3MgdGFrZSB1cFxuICAvLyBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlLCBlbnN1cmluZyBmb290ZXJzIGFyZSBhbGlnbmVkIHRvIHRoZSBib3R0b20uXG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1zcGFjZXIteSkgdmFyKC0tI3skcHJlZml4fWNhcmQtc3BhY2VyLXgpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtY29sb3IpO1xufVxuXG4uY2FyZC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLSN7JHByZWZpeH1jYXJkLXRpdGxlLXNwYWNlci15KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLXRpdGxlLWNvbG9yKTtcbn1cblxuLmNhcmQtc3VidGl0bGUge1xuICBtYXJnaW4tdG9wOiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1jYXJkLXRpdGxlLXNwYWNlci15KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1zdWJ0aXRsZS1jb2xvcik7XG59XG5cbi5jYXJkLXRleHQ6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLWxpbmsge1xuICAmOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgfVxuXG4gICsgLmNhcmQtbGluayB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLSN7JHByZWZpeH1jYXJkLXNwYWNlci14KTtcbiAgfVxufVxuXG4vL1xuLy8gT3B0aW9uYWwgdGV4dHVhbCBjYXBzXG4vL1xuXG4uY2FyZC1oZWFkZXIge1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy14KTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVtb3ZlcyB0aGUgZGVmYXVsdCBtYXJnaW4tYm90dG9tIG9mIDxoTj5cbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1iZyk7XG4gIGJvcmRlci1ib3R0b206IHZhcigtLSN7JHByZWZpeH1jYXJkLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLWNvbG9yKTtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpIHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpIDAgMCk7XG4gIH1cbn1cblxuLmNhcmQtZm9vdGVyIHtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtYmcpO1xuICBib3JkZXItdG9wOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1jYXJkLWJvcmRlci1jb2xvcik7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgMCB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gSGVhZGVyIG5hdnNcbi8vXG5cbi5jYXJkLWhlYWRlci10YWJzIHtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXkpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBib3JkZXItYm90dG9tOiAwO1xuXG4gIC5uYXYtbGluay5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLWJnKTtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1iZyk7XG4gIH1cbn1cblxuLmNhcmQtaGVhZGVyLXBpbGxzIHtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxufVxuXG4vLyBDYXJkIGltYWdlXG4uY2FyZC1pbWctb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy10b3AsXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgd2lkdGg6IDEwMCU7IC8vIFJlcXVpcmVkIGJlY2F1c2Ugd2UgdXNlIGZsZXhib3ggYW5kIHRoaXMgaW5oZXJlbnRseSBhcHBsaWVzIGFsaWduLXNlbGY6IHN0cmV0Y2hcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLXRvcCB7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbn1cblxuXG4vL1xuLy8gQ2FyZCBncm91cHNcbi8vXG5cbi5jYXJkLWdyb3VwIHtcbiAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAvLyB0byBkaXNwbGF5IHByb3Blcmx5LlxuICA+IC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ncm91cC1tYXJnaW4pO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXG4gICAgLy8gdG8gZGlzcGxheSBwcm9wZXJseS5cbiAgICA+IC5jYXJkIHtcbiAgICAgIC8vIEZsZXhidWdzICM0OiBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzI2ZsZXhidWctNFxuICAgICAgZmxleDogMSAwIDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgKyAuY2FyZCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgIH1cblxuICAgICAgLy8gSGFuZGxlIHJvdW5kZWQgY29ybmVyc1xuICAgICAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWVuZC1yYWRpdXMoMCk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhcmQtaW1nLWJvdHRvbSxcbiAgICAgICAgICAuY2FyZC1mb290ZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXN0YXJ0LXJhZGl1cygwKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5hY2NvcmRpb24ge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgYWNjb3JkaW9uLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1jb2xvcjogI3skYWNjb3JkaW9uLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJnOiAjeyRhY2NvcmRpb24tYmd9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tdHJhbnNpdGlvbjogI3skYWNjb3JkaW9uLXRyYW5zaXRpb259O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLWNvbG9yOiAjeyRhY2NvcmRpb24tYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci13aWR0aDogI3skYWNjb3JkaW9uLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItcmFkaXVzOiAjeyRhY2NvcmRpb24tYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1pbm5lci1ib3JkZXItcmFkaXVzOiAjeyRhY2NvcmRpb24taW5uZXItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tcGFkZGluZy14OiAjeyRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tcGFkZGluZy15OiAjeyRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tY29sb3I6ICN7JGFjY29yZGlvbi1idXR0b24tY29sb3J9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWJnOiAjeyRhY2NvcmRpb24tYnV0dG9uLWJnfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uOiAje2VzY2FwZS1zdmcoJGFjY29yZGlvbi1idXR0b24taWNvbil9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24td2lkdGg6ICN7JGFjY29yZGlvbi1pY29uLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXRyYW5zZm9ybTogI3skYWNjb3JkaW9uLWljb24tdHJhbnNmb3JtfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXRyYW5zaXRpb246ICN7JGFjY29yZGlvbi1pY29uLXRyYW5zaXRpb259O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWFjdGl2ZS1pY29uOiAje2VzY2FwZS1zdmcoJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWljb24pfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1mb2N1cy1ib3gtc2hhZG93OiAjeyRhY2NvcmRpb24tYnV0dG9uLWZvY3VzLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9keS1wYWRkaW5nLXg6ICN7JGFjY29yZGlvbi1ib2R5LXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1ib2R5LXBhZGRpbmcteTogI3skYWNjb3JkaW9uLWJvZHktcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWFjdGl2ZS1jb2xvcjogI3skYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYWN0aXZlLWJnOiAjeyRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1iZ307XG4gIC8vIHNjc3MtZG9jcy1lbmQgYWNjb3JkaW9uLWNzcy12YXJzXG59XG5cbi5hY2NvcmRpb24tYnV0dG9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1wYWRkaW5nLXgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1iYXNlKTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gUmVzZXQgYnV0dG9uIHN0eWxlXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWJnKTtcbiAgYm9yZGVyOiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICBvdmVyZmxvdy1hbmNob3I6IG5vbmU7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24odmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi10cmFuc2l0aW9uKSk7XG5cbiAgJjpub3QoLmNvbGxhcHNlZCkge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWFjdGl2ZS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1hY3RpdmUtYmcpO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXdpZHRoKSkgMCB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci1jb2xvcik7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1hY3RpdmUtaWNvbik7XG4gICAgICB0cmFuc2Zvcm06IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24tdHJhbnNmb3JtKTtcbiAgICB9XG4gIH1cblxuICAvLyBBY2NvcmRpb24gaWNvblxuICAmOjphZnRlciB7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24td2lkdGgpO1xuICAgIGhlaWdodDogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbi13aWR0aCk7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbi13aWR0aCk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbih2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXRyYW5zaXRpb24pKTtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIHotaW5kZXg6IDI7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gIH1cbn1cblxuLmFjY29yZGlvbi1oZWFkZXIge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uYWNjb3JkaW9uLWl0ZW0ge1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYmcpO1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci1jb2xvcik7XG5cbiAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci1yYWRpdXMpKTtcblxuICAgID4gLmFjY29yZGlvbi1oZWFkZXIgLmFjY29yZGlvbi1idXR0b24ge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG4gICAgfVxuICB9XG5cbiAgJjpub3QoOmZpcnN0LW9mLXR5cGUpIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG5cbiAgLy8gT25seSBzZXQgYSBib3JkZXItcmFkaXVzIG9uIHRoZSBsYXN0IGl0ZW0gaWYgdGhlIGFjY29yZGlvbiBpcyBjb2xsYXBzZWRcbiAgJjpsYXN0LW9mLXR5cGUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXJhZGl1cykpO1xuXG4gICAgPiAuYWNjb3JkaW9uLWhlYWRlciAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICAmLmNvbGxhcHNlZCB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24taW5uZXItYm9yZGVyLXJhZGl1cykpO1xuICAgICAgfVxuICAgIH1cblxuICAgID4gLmFjY29yZGlvbi1jb2xsYXBzZSB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci1yYWRpdXMpKTtcbiAgICB9XG4gIH1cbn1cblxuLmFjY29yZGlvbi1ib2R5IHtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib2R5LXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib2R5LXBhZGRpbmcteCk7XG59XG5cblxuLy8gRmx1c2ggYWNjb3JkaW9uIGl0ZW1zXG4vL1xuLy8gUmVtb3ZlIGJvcmRlcnMgYW5kIGJvcmRlci1yYWRpdXMgdG8ga2VlcCBhY2NvcmRpb24gaXRlbXMgZWRnZS10by1lZGdlLlxuXG4uYWNjb3JkaW9uLWZsdXNoIHtcbiAgPiAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7IGJvcmRlci10b3A6IDA7IH1cbiAgICAmOmxhc3QtY2hpbGQgeyBib3JkZXItYm90dG9tOiAwOyB9XG5cbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtY2xhc3NcbiAgICA+IC5hY2NvcmRpb24taGVhZGVyIC5hY2NvcmRpb24tYnV0dG9uIHtcbiAgICAgICYsXG4gICAgICAmLmNvbGxhcHNlZCB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgICB9XG4gICAgfVxuICAgIC8vIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LWNsYXNzXG5cbiAgICA+IC5hY2NvcmRpb24tY29sbGFwc2Uge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICB9XG4gIH1cbn1cblxuQGlmICRlbmFibGUtZGFyay1tb2RlIHtcbiAgQGluY2x1ZGUgY29sb3ItbW9kZShkYXJrKSB7XG4gICAgLmFjY29yZGlvbi1idXR0b246OmFmdGVyIHtcbiAgICAgIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbjogI3tlc2NhcGUtc3ZnKCRhY2NvcmRpb24tYnV0dG9uLWljb24tZGFyayl9O1xuICAgICAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1hY3RpdmUtaWNvbjogI3tlc2NhcGUtc3ZnKCRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1pY29uLWRhcmspfTtcbiAgICB9XG4gIH1cbn1cbiIsIi5icmVhZGNydW1iIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IGJyZWFkY3J1bWItY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1wYWRkaW5nLXg6ICN7JGJyZWFkY3J1bWItcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1wYWRkaW5nLXk6ICN7JGJyZWFkY3J1bWItcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tOiAjeyRicmVhZGNydW1iLW1hcmdpbi1ib3R0b219O1xuICBAaW5jbHVkZSByZnMoJGJyZWFkY3J1bWItZm9udC1zaXplLCAtLSN7JHByZWZpeH1icmVhZGNydW1iLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItYmc6ICN7JGJyZWFkY3J1bWItYmd9O1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLWJvcmRlci1yYWRpdXM6ICN7JGJyZWFkY3J1bWItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjogI3skYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1pdGVtLXBhZGRpbmcteDogI3skYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItaXRlbS1hY3RpdmUtY29sb3I6ICN7JGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBicmVhZGNydW1iLWNzcy12YXJzXG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLXBhZGRpbmcteCk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLW1hcmdpbi1ib3R0b20pO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItZm9udC1zaXplKSk7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWJnKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzKSk7XG59XG5cbi5icmVhZGNydW1iLWl0ZW0ge1xuICAvLyBUaGUgc2VwYXJhdG9yIGJldHdlZW4gYnJlYWRjcnVtYnMgKGJ5IGRlZmF1bHQsIGEgZm9yd2FyZC1zbGFzaDogXCIvXCIpXG4gICsgLmJyZWFkY3J1bWItaXRlbSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1pdGVtLXBhZGRpbmcteCk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgZmxvYXQ6IGxlZnQ7IC8vIFN1cHByZXNzIGlubGluZSBzcGFjaW5ncyBhbmQgdW5kZXJsaW5pbmcgb2YgdGhlIHNlcGFyYXRvclxuICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXgpO1xuICAgICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWRpdmlkZXItY29sb3IpO1xuICAgICAgY29udGVudDogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItZGl2aWRlciwgZXNjYXBlLXN2ZygkYnJlYWRjcnVtYi1kaXZpZGVyKSkgI3tcIi8qIHJ0bDpcIn0gdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItZGl2aWRlciwgZXNjYXBlLXN2ZygkYnJlYWRjcnVtYi1kaXZpZGVyLWZsaXBwZWQpKSAje1wiKi9cIn07XG4gICAgfVxuICB9XG5cbiAgJi5hY3RpdmUge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1pdGVtLWFjdGl2ZS1jb2xvcik7XG4gIH1cbn1cbiIsIi5wYWdpbmF0aW9uIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHBhZ2luYXRpb24tY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1wYWRkaW5nLXg6ICN7JHBhZ2luYXRpb24tcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1wYWRkaW5nLXk6ICN7JHBhZ2luYXRpb24tcGFkZGluZy15fTtcbiAgQGluY2x1ZGUgcmZzKCRwYWdpbmF0aW9uLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1iZzogI3skcGFnaW5hdGlvbi1iZ307XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tYm9yZGVyLXdpZHRoOiAjeyRwYWdpbmF0aW9uLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tYm9yZGVyLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tYm9yZGVyLXJhZGl1czogI3skcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogI3skcGFnaW5hdGlvbi1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24taG92ZXItYmc6ICN7JHBhZ2luYXRpb24taG92ZXItYmd9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjogI3skcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvY3VzLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWZvY3VzLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb2N1cy1iZzogI3skcGFnaW5hdGlvbi1mb2N1cy1iZ307XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdzogI3skcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICN7JHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1hY3RpdmUtYmc6ICN7JHBhZ2luYXRpb24tYWN0aXZlLWJnfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogI3skcGFnaW5hdGlvbi1kaXNhYmxlZC1iZ307XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgcGFnaW5hdGlvbi1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbn1cblxuLnBhZ2UtbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tcGFkZGluZy14KTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvbnQtc2l6ZSkpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tY29sb3IpO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJnKTtcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHBhZ2luYXRpb24tdHJhbnNpdGlvbik7XG5cbiAgJjpob3ZlciB7XG4gICAgei1pbmRleDogMjtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24taG92ZXItY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWhvdmVyLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcik7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb2N1cy1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9jdXMtYmcpO1xuICAgIG91dGxpbmU6ICRwYWdpbmF0aW9uLWZvY3VzLW91dGxpbmU7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdyk7XG4gIH1cblxuICAmLmFjdGl2ZSxcbiAgLmFjdGl2ZSA+ICYge1xuICAgIHotaW5kZXg6IDM7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcik7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYWN0aXZlLWJnKSk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gIC5kaXNhYmxlZCA+ICYge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcik7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tZGlzYWJsZWQtYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yKTtcbiAgfVxufVxuXG4ucGFnZS1pdGVtIHtcbiAgJjpub3QoOmZpcnN0LWNoaWxkKSAucGFnZS1saW5rIHtcbiAgICBtYXJnaW4tbGVmdDogJHBhZ2luYXRpb24tbWFyZ2luLXN0YXJ0O1xuICB9XG5cbiAgQGlmICRwYWdpbmF0aW9uLW1hcmdpbi1zdGFydCA9PSBjYWxjKCN7JHBhZ2luYXRpb24tYm9yZGVyLXdpZHRofSAqIC0xKSB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXN0YXJ0LXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzKSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItZW5kLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzKSk7XG4gICAgICB9XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAvLyBBZGQgYm9yZGVyLXJhZGl1cyB0byBhbGwgcGFnZUxpbmtzIGluIGNhc2UgdGhleSBoYXZlIGxlZnQgbWFyZ2luXG4gICAgLnBhZ2UtbGluayB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMpKTtcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gU2l6aW5nXG4vL1xuXG4ucGFnaW5hdGlvbi1sZyB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFnaW5hdGlvbi1wYWRkaW5nLXktbGcsICRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZywgJGZvbnQtc2l6ZS1sZywgJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5wYWdpbmF0aW9uLXNtIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbSwgJHBhZ2luYXRpb24tcGFkZGluZy14LXNtLCAkZm9udC1zaXplLXNtLCAkcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLXNtKTtcbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBSZXF1aXJlcyBvbmUgb2YgdGhlIGNvbnRleHR1YWwsIGNvbG9yIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGBjb2xvcmAgYW5kXG4vLyBgYmFja2dyb3VuZC1jb2xvcmAuXG5cbi5iYWRnZSB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBiYWRnZS1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1iYWRnZS1wYWRkaW5nLXg6ICN7JGJhZGdlLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWJhZGdlLXBhZGRpbmcteTogI3skYmFkZ2UtcGFkZGluZy15fTtcbiAgQGluY2x1ZGUgcmZzKCRiYWRnZS1mb250LXNpemUsIC0tI3skcHJlZml4fWJhZGdlLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fWJhZGdlLWZvbnQtd2VpZ2h0OiAjeyRiYWRnZS1mb250LXdlaWdodH07XG4gIC0tI3skcHJlZml4fWJhZGdlLWNvbG9yOiAjeyRiYWRnZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJhZGdlLWJvcmRlci1yYWRpdXM6ICN7JGJhZGdlLWJvcmRlci1yYWRpdXN9O1xuICAvLyBzY3NzLWRvY3MtZW5kIGJhZGdlLWNzcy12YXJzXG5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9YmFkZ2UtcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9YmFkZ2UtcGFkZGluZy14KTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1iYWRnZS1mb250LXNpemUpKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1iYWRnZS1mb250LXdlaWdodCk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJhZGdlLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWJhZGdlLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoKTtcblxuICAvLyBFbXB0eSBiYWRnZXMgY29sbGFwc2UgYXV0b21hdGljYWxseVxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vIFF1aWNrIGZpeCBmb3IgYmFkZ2VzIGluIGJ1dHRvbnNcbi5idG4gLmJhZGdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xcHg7XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5hbGVydCB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBhbGVydC1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1hbGVydC1iZzogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWFsZXJ0LXBhZGRpbmcteDogI3skYWxlcnQtcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9YWxlcnQtcGFkZGluZy15OiAjeyRhbGVydC1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1hbGVydC1tYXJnaW4tYm90dG9tOiAjeyRhbGVydC1tYXJnaW4tYm90dG9tfTtcbiAgLS0jeyRwcmVmaXh9YWxlcnQtY29sb3I6IGluaGVyaXQ7XG4gIC0tI3skcHJlZml4fWFsZXJ0LWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWFsZXJ0LWJvcmRlcjogI3skYWxlcnQtYm9yZGVyLXdpZHRofSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtYm9yZGVyLWNvbG9yKTtcbiAgLS0jeyRwcmVmaXh9YWxlcnQtYm9yZGVyLXJhZGl1czogI3skYWxlcnQtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWFsZXJ0LWxpbmstY29sb3I6IGluaGVyaXQ7XG4gIC8vIHNjc3MtZG9jcy1lbmQgYWxlcnQtY3NzLXZhcnNcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1hbGVydC1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1hbGVydC1wYWRkaW5nLXgpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtbWFyZ2luLWJvdHRvbSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtYmcpO1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1hbGVydC1ib3JkZXIpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1hbGVydC1ib3JkZXItcmFkaXVzKSk7XG59XG5cbi8vIEhlYWRpbmdzIGZvciBsYXJnZXIgYWxlcnRzXG4uYWxlcnQtaGVhZGluZyB7XG4gIC8vIFNwZWNpZmllZCB0byBwcmV2ZW50IGNvbmZsaWN0cyBvZiBjaGFuZ2luZyAkaGVhZGluZ3MtY29sb3JcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi8vIFByb3ZpZGUgY2xhc3MgZm9yIGxpbmtzIHRoYXQgbWF0Y2ggYWxlcnRzXG4uYWxlcnQtbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkYWxlcnQtbGluay1mb250LXdlaWdodDtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1hbGVydC1saW5rLWNvbG9yKTtcbn1cblxuXG4vLyBEaXNtaXNzaWJsZSBhbGVydHNcbi8vXG4vLyBFeHBhbmQgdGhlIHJpZ2h0IHBhZGRpbmcgYW5kIGFjY291bnQgZm9yIHRoZSBjbG9zZSBidXR0b24ncyBwb3NpdGlvbmluZy5cblxuLmFsZXJ0LWRpc21pc3NpYmxlIHtcbiAgcGFkZGluZy1yaWdodDogJGFsZXJ0LWRpc21pc3NpYmxlLXBhZGRpbmctcjtcblxuICAvLyBBZGp1c3QgY2xvc2UgbGluayBwb3NpdGlvblxuICAuYnRuLWNsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6ICRzdHJldGNoZWQtbGluay16LWluZGV4ICsgMTtcbiAgICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZy15ICogMS4yNSAkYWxlcnQtcGFkZGluZy14O1xuICB9XG59XG5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGFsZXJ0LW1vZGlmaWVyc1xuLy8gR2VuZXJhdGUgY29udGV4dHVhbCBtb2RpZmllciBjbGFzc2VzIGZvciBjb2xvcml6aW5nIHRoZSBhbGVydFxuQGVhY2ggJHN0YXRlIGluIG1hcC1rZXlzKCR0aGVtZS1jb2xvcnMpIHtcbiAgLmFsZXJ0LSN7JHN0YXRlfSB7XG4gICAgLS0jeyRwcmVmaXh9YWxlcnQtY29sb3I6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tdGV4dC1lbXBoYXNpcyk7XG4gICAgLS0jeyRwcmVmaXh9YWxlcnQtYmc6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tYmctc3VidGxlKTtcbiAgICAtLSN7JHByZWZpeH1hbGVydC1ib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tYm9yZGVyLXN1YnRsZSk7XG4gICAgLS0jeyRwcmVmaXh9YWxlcnQtbGluay1jb2xvcjogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS10ZXh0LWVtcGhhc2lzKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBhbGVydC1tb2RpZmllcnNcbiIsIi8vIERpc2FibGUgYW5pbWF0aW9uIGlmIHRyYW5zaXRpb25zIGFyZSBkaXNhYmxlZFxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcHJvZ3Jlc3Mta2V5ZnJhbWVzXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIEBrZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICAgIDAlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiAkcHJvZ3Jlc3MtaGVpZ2h0OyB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgcHJvZ3Jlc3Mta2V5ZnJhbWVzXG5cbi5wcm9ncmVzcyxcbi5wcm9ncmVzcy1zdGFja2VkIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHByb2dyZXNzLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXByb2dyZXNzLWhlaWdodDogI3skcHJvZ3Jlc3MtaGVpZ2h0fTtcbiAgQGluY2x1ZGUgcmZzKCRwcm9ncmVzcy1mb250LXNpemUsIC0tI3skcHJlZml4fXByb2dyZXNzLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fXByb2dyZXNzLWJnOiAjeyRwcm9ncmVzcy1iZ307XG4gIC0tI3skcHJlZml4fXByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICN7JHByb2dyZXNzLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1wcm9ncmVzcy1ib3gtc2hhZG93OiAjeyRwcm9ncmVzcy1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYmFyLWNvbG9yOiAjeyRwcm9ncmVzcy1iYXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1wcm9ncmVzcy1iYXItYmc6ICN7JHByb2dyZXNzLWJhci1iZ307XG4gIC0tI3skcHJlZml4fXByb2dyZXNzLWJhci10cmFuc2l0aW9uOiAjeyRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgcHJvZ3Jlc3MtY3NzLXZhcnNcblxuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1oZWlnaHQpO1xuICBvdmVyZmxvdzogaGlkZGVuOyAvLyBmb3JjZSByb3VuZGVkIGNvcm5lcnMgYnkgY3JvcHBpbmcgaXRcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1mb250LXNpemUpKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWJnKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYm9yZGVyLXJhZGl1cykpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1ib3gtc2hhZG93KSk7XG59XG5cbi5wcm9ncmVzcy1iYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1iYXItY29sb3IpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1iYXItYmcpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1iYXItdHJhbnNpdGlvbikpO1xufVxuXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xuICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkKCk7XG4gIGJhY2tncm91bmQtc2l6ZTogdmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWhlaWdodCkgdmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWhlaWdodCk7XG59XG5cbi5wcm9ncmVzcy1zdGFja2VkID4gLnByb2dyZXNzIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi5wcm9ncmVzcy1zdGFja2VkID4gLnByb2dyZXNzID4gLnByb2dyZXNzLWJhciB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIC5wcm9ncmVzcy1iYXItYW5pbWF0ZWQge1xuICAgIGFuaW1hdGlvbjogJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nIHByb2dyZXNzLWJhci1zdHJpcGVzO1xuXG4gICAgQGlmICRlbmFibGUtcmVkdWNlZC1tb3Rpb24ge1xuICAgICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEVhc2lseSB1c2FibGUgb24gPHVsPiwgPG9sPiwgb3IgPGRpdj4uXG5cbi5saXN0LWdyb3VwIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IGxpc3QtZ3JvdXAtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1jb2xvcjogI3skbGlzdC1ncm91cC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYmc6ICN7JGxpc3QtZ3JvdXAtYmd9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci1jb2xvcjogI3skbGlzdC1ncm91cC1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci13aWR0aDogI3skbGlzdC1ncm91cC1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICN7JGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg6ICN7JGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15OiAjeyRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24tY29sb3I6ICN7JGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6ICN7JGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24taG92ZXItYmc6ICN7JGxpc3QtZ3JvdXAtaG92ZXItYmd9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6ICN7JGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogI3skbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogI3skbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICN7JGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmd9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogI3skbGlzdC1ncm91cC1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1iZzogI3skbGlzdC1ncm91cC1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I6ICN7JGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbGlzdC1ncm91cC1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgLy8gTm8gbmVlZCB0byBzZXQgbGlzdC1zdHlsZTogbm9uZTsgc2luY2UgLmxpc3QtZ3JvdXAtaXRlbSBpcyBibG9jayBsZXZlbFxuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIHJlc2V0IHBhZGRpbmcgYmVjYXVzZSB1bCBhbmQgb2xcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKSk7XG59XG5cbi5saXN0LWdyb3VwLW51bWJlcmVkIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBjb3VudGVyLXJlc2V0OiBzZWN0aW9uO1xuXG4gID4gLmxpc3QtZ3JvdXAtaXRlbTo6YmVmb3JlIHtcbiAgICAvLyBJbmNyZW1lbnRzIG9ubHkgdGhpcyBpbnN0YW5jZSBvZiB0aGUgc2VjdGlvbiBjb3VudGVyXG4gICAgY29udGVudDogY291bnRlcnMoc2VjdGlvbiwgXCIuXCIpIFwiLiBcIjtcbiAgICBjb3VudGVyLWluY3JlbWVudDogc2VjdGlvbjtcbiAgfVxufVxuXG4vLyBJbnRlcmFjdGl2ZSBsaXN0IGl0ZW1zXG4vL1xuLy8gVXNlIGFuY2hvciBvciBidXR0b24gZWxlbWVudHMgaW5zdGVhZCBvZiBgbGlgcyBvciBgZGl2YHMgdG8gY3JlYXRlIGludGVyYWN0aXZlXG4vLyBsaXN0IGl0ZW1zLiBJbmNsdWRlcyBhbiBleHRyYSBgLmFjdGl2ZWAgbW9kaWZpZXIgY2xhc3MgZm9yIHNlbGVjdGVkIGl0ZW1zLlxuXG4ubGlzdC1ncm91cC1pdGVtLWFjdGlvbiB7XG4gIHdpZHRoOiAxMDAlOyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgYmVjb21lIDEwMCUgYnkgZGVmYXVsdCB0aG91Z2gpXG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24tY29sb3IpO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgaW5oZXJpdClcblxuICAvLyBIb3ZlciBzdGF0ZVxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICB6LWluZGV4OiAxOyAvLyBQbGFjZSBob3Zlci9mb2N1cyBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1iZyk7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmcpO1xuICB9XG59XG5cbi8vIEluZGl2aWR1YWwgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBvbiBgbGlgcyBvciBgZGl2YHMgd2l0aGluIHRoZSBgLmxpc3QtZ3JvdXBgIHBhcmVudC5cblxuLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1jb2xvcik7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYmcpO1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yKTtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyhpbmhlcml0KTtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoaW5oZXJpdCk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3IpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWRpc2FibGVkLWJnKTtcbiAgfVxuXG4gIC8vIEluY2x1ZGUgYm90aCBoZXJlIGZvciBgPGE+YHMgYW5kIGA8YnV0dG9uPmBzXG4gICYuYWN0aXZlIHtcbiAgICB6LWluZGV4OiAyOyAvLyBQbGFjZSBhY3RpdmUgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3RpdmUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL3NlbGVjdG9yLW5vLXJlZHVuZGFudC1uZXN0aW5nLXNlbGVjdG9yXG4gICYgKyAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuXG4gICAgJi5hY3RpdmUge1xuICAgICAgbWFyZ2luLXRvcDogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgICAgYm9yZGVyLXRvcC13aWR0aDogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gSG9yaXpvbnRhbFxuLy9cbi8vIENoYW5nZSB0aGUgbGF5b3V0IG9mIGxpc3QgZ3JvdXAgaXRlbXMgZnJvbSB2ZXJ0aWNhbCAoZGVmYXVsdCkgdG8gaG9yaXpvbnRhbC5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCN7JGluZml4fSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICA+IC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgICAgICAmOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tc3RhcnQtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpKTtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLWVuZC1yYWRpdXMoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtZW5kLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKSk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1zdGFydC1yYWRpdXMoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICsgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKTtcbiAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcblxuICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBGbHVzaCBsaXN0IGl0ZW1zXG4vL1xuLy8gUmVtb3ZlIGJvcmRlcnMgYW5kIGJvcmRlci1yYWRpdXMgdG8ga2VlcCBsaXN0IGdyb3VwIGl0ZW1zIGVkZ2UtdG8tZWRnZS4gTW9zdFxuLy8gdXNlZnVsIHdpdGhpbiBvdGhlciBjb21wb25lbnRzIChlLmcuLCBjYXJkcykuXG5cbi5saXN0LWdyb3VwLWZsdXNoIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcblxuICA+IC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci13aWR0aDogMCAwIHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci13aWR0aCk7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbGlzdC1ncm91cC1tb2RpZmllcnNcbi8vIExpc3QgZ3JvdXAgY29udGV4dHVhbCB2YXJpYW50c1xuLy9cbi8vIEFkZCBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0ZXh0IGFuZCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGluZGl2aWR1YWwgaXRlbXMuXG4vLyBPcmdhbml6YXRpb25hbGx5LCB0aGlzIG11c3QgY29tZSBhZnRlciB0aGUgYDpob3ZlcmAgc3RhdGVzLlxuXG5AZWFjaCAkc3RhdGUgaW4gbWFwLWtleXMoJHRoZW1lLWNvbG9ycykge1xuICAubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1jb2xvcjogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS10ZXh0LWVtcGhhc2lzKTtcbiAgICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJnOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LWJnLXN1YnRsZSk7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tYm9yZGVyLXN1YnRsZSk7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcik7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24taG92ZXItYmc6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tYm9yZGVyLXN1YnRsZSk7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3IpO1xuICAgIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS1ib3JkZXItc3VidGxlKTtcbiAgICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS1iZy1zdWJ0bGUpO1xuICAgIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aXZlLWJnOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LXRleHQtZW1waGFzaXMpO1xuICAgIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS10ZXh0LWVtcGhhc2lzKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBsaXN0LWdyb3VwLW1vZGlmaWVyc1xuIiwiLy8gVHJhbnNwYXJlbnQgYmFja2dyb3VuZCBhbmQgYm9yZGVyIHByb3BlcnRpZXMgaW5jbHVkZWQgZm9yIGJ1dHRvbiB2ZXJzaW9uLlxuLy8gaU9TIHJlcXVpcmVzIHRoZSBidXR0b24gZWxlbWVudCBpbnN0ZWFkIG9mIGFuIGFuY2hvciB0YWcuXG4vLyBJZiB5b3Ugd2FudCB0aGUgYW5jaG9yIHZlcnNpb24sIGl0IHJlcXVpcmVzIGBocmVmPVwiI1wiYC5cbi8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjU2FmYXJpX01vYmlsZVxuXG4uYnRuLWNsb3NlIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IGNsb3NlLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1jb2xvcjogI3skYnRuLWNsb3NlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWJnOiAjeyBlc2NhcGUtc3ZnKCRidG4tY2xvc2UtYmcpIH07XG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1vcGFjaXR5OiAjeyRidG4tY2xvc2Utb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1ob3Zlci1vcGFjaXR5OiAjeyRidG4tY2xvc2UtaG92ZXItb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1mb2N1cy1zaGFkb3c6ICN7JGJ0bi1jbG9zZS1mb2N1cy1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1idG4tY2xvc2UtZm9jdXMtb3BhY2l0eTogI3skYnRuLWNsb3NlLWZvY3VzLW9wYWNpdHl9O1xuICAtLSN7JHByZWZpeH1idG4tY2xvc2UtZGlzYWJsZWQtb3BhY2l0eTogI3skYnRuLWNsb3NlLWRpc2FibGVkLW9wYWNpdHl9O1xuICAtLSN7JHByZWZpeH1idG4tY2xvc2Utd2hpdGUtZmlsdGVyOiAjeyRidG4tY2xvc2Utd2hpdGUtZmlsdGVyfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBjbG9zZS1jc3MtdmFyc1xuXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICB3aWR0aDogJGJ0bi1jbG9zZS13aWR0aDtcbiAgaGVpZ2h0OiAkYnRuLWNsb3NlLWhlaWdodDtcbiAgcGFkZGluZzogJGJ0bi1jbG9zZS1wYWRkaW5nLXkgJGJ0bi1jbG9zZS1wYWRkaW5nLXg7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWNvbG9yKTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdmFyKC0tI3skcHJlZml4fWJ0bi1jbG9zZS1iZykgY2VudGVyIC8gJGJ0bi1jbG9zZS13aWR0aCBhdXRvIG5vLXJlcGVhdDsgLy8gaW5jbHVkZSB0cmFuc3BhcmVudCBmb3IgYnV0dG9uIGVsZW1lbnRzXG4gIGJvcmRlcjogMDsgLy8gZm9yIGJ1dHRvbiBlbGVtZW50c1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCk7XG4gIG9wYWNpdHk6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2Utb3BhY2l0eSk7XG5cbiAgLy8gT3ZlcnJpZGUgPGE+J3MgaG92ZXIgc3R5bGVcbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2UtY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvcGFjaXR5OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWhvdmVyLW9wYWNpdHkpO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWZvY3VzLXNoYWRvdyk7XG4gICAgb3BhY2l0eTogdmFyKC0tI3skcHJlZml4fWJ0bi1jbG9zZS1mb2N1cy1vcGFjaXR5KTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIG9wYWNpdHk6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2UtZGlzYWJsZWQtb3BhY2l0eSk7XG4gIH1cbn1cblxuQG1peGluIGJ0bi1jbG9zZS13aGl0ZSgpIHtcbiAgZmlsdGVyOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLXdoaXRlLWZpbHRlcik7XG59XG5cbi5idG4tY2xvc2Utd2hpdGUge1xuICBAaW5jbHVkZSBidG4tY2xvc2Utd2hpdGUoKTtcbn1cblxuQGlmICRlbmFibGUtZGFyay1tb2RlIHtcbiAgQGluY2x1ZGUgY29sb3ItbW9kZShkYXJrKSB7XG4gICAgLmJ0bi1jbG9zZSB7XG4gICAgICBAaW5jbHVkZSBidG4tY2xvc2Utd2hpdGUoKTtcbiAgICB9XG4gIH1cbn1cbiIsIi50b2FzdCB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCB0b2FzdC1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH10b2FzdC16aW5kZXg6ICN7JHppbmRleC10b2FzdH07XG4gIC0tI3skcHJlZml4fXRvYXN0LXBhZGRpbmcteDogI3skdG9hc3QtcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtcGFkZGluZy15OiAjeyR0b2FzdC1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH10b2FzdC1zcGFjaW5nOiAjeyR0b2FzdC1zcGFjaW5nfTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtbWF4LXdpZHRoOiAjeyR0b2FzdC1tYXgtd2lkdGh9O1xuICBAaW5jbHVkZSByZnMoJHRvYXN0LWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9dG9hc3QtZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtY29sb3I6ICN7JHRvYXN0LWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtYmc6ICN7JHRvYXN0LWJhY2tncm91bmQtY29sb3J9O1xuICAtLSN7JHByZWZpeH10b2FzdC1ib3JkZXItd2lkdGg6ICN7JHRvYXN0LWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci1jb2xvcjogI3skdG9hc3QtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLXJhZGl1czogI3skdG9hc3QtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fXRvYXN0LWJveC1zaGFkb3c6ICN7JHRvYXN0LWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH10b2FzdC1oZWFkZXItY29sb3I6ICN7JHRvYXN0LWhlYWRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRvYXN0LWhlYWRlci1iZzogI3skdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3J9O1xuICAtLSN7JHByZWZpeH10b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yOiAjeyR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCB0b2FzdC1jc3MtdmFyc1xuXG4gIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtbWF4LXdpZHRoKTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fXRvYXN0LWZvbnQtc2l6ZSkpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXRvYXN0LWNvbG9yKTtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH10b2FzdC1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci1jb2xvcik7XG4gIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH10b2FzdC1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLXJhZGl1cykpO1xuXG4gICYuc2hvd2luZyB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gICY6bm90KC5zaG93KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4udG9hc3QtY29udGFpbmVyIHtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtemluZGV4OiAjeyR6aW5kZXgtdG9hc3R9O1xuXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogdmFyKC0tI3skcHJlZml4fXRvYXN0LXppbmRleCk7XG4gIHdpZHRoOiBtYXgtY29udGVudDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICA+IDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3Qtc3BhY2luZyk7XG4gIH1cbn1cblxuLnRvYXN0LWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH10b2FzdC1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH10b2FzdC1wYWRkaW5nLXgpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXRvYXN0LWhlYWRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH10b2FzdC1oZWFkZXItYmcpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKGNhbGModmFyKC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci1yYWRpdXMpIC0gdmFyKC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci13aWR0aCkpKTtcblxuICAuYnRuLWNsb3NlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fXRvYXN0LXBhZGRpbmcteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtcGFkZGluZy14KTtcbiAgfVxufVxuXG4udG9hc3QtYm9keSB7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH10b2FzdC1wYWRkaW5nLXgpO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuLy8gLm1vZGFsLW9wZW4gICAgICAtIGJvZHkgY2xhc3MgZm9yIGtpbGxpbmcgdGhlIHNjcm9sbFxuLy8gLm1vZGFsICAgICAgICAgICAtIGNvbnRhaW5lciB0byBzY3JvbGwgd2l0aGluXG4vLyAubW9kYWwtZGlhbG9nICAgIC0gcG9zaXRpb25pbmcgc2hlbGwgZm9yIHRoZSBhY3R1YWwgbW9kYWxcbi8vIC5tb2RhbC1jb250ZW50ICAgLSBhY3R1YWwgbW9kYWwgdy8gYmcgYW5kIGNvcm5lcnMgYW5kIHN0dWZmXG5cblxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXG4ubW9kYWwge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbW9kYWwtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bW9kYWwtemluZGV4OiAjeyR6aW5kZXgtbW9kYWx9O1xuICAtLSN7JHByZWZpeH1tb2RhbC13aWR0aDogI3skbW9kYWwtbWR9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1wYWRkaW5nOiAjeyRtb2RhbC1pbm5lci1wYWRkaW5nfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtbWFyZ2luOiAjeyRtb2RhbC1kaWFsb2ctbWFyZ2lufTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtY29sb3I6ICN7JG1vZGFsLWNvbnRlbnQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1iZzogI3skbW9kYWwtY29udGVudC1iZ307XG4gIC0tI3skcHJlZml4fW1vZGFsLWJvcmRlci1jb2xvcjogI3skbW9kYWwtY29udGVudC1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1ib3JkZXItd2lkdGg6ICN7JG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtYm9yZGVyLXJhZGl1czogI3skbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtYm94LXNoYWRvdzogI3skbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtaW5uZXItYm9yZGVyLXJhZGl1czogI3skbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcteDogI3skbW9kYWwtaGVhZGVyLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXk6ICN7JG1vZGFsLWhlYWRlci1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZzogI3skbW9kYWwtaGVhZGVyLXBhZGRpbmd9OyAvLyBUb2RvIGluIHY2OiBTcGxpdCB0aGlzIHBhZGRpbmcgaW50byB4IGFuZCB5XG4gIC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICN7JG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiAjeyRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICN7JG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWdhcDogI3skbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVufTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWJnOiAjeyRtb2RhbC1mb290ZXItYmd9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAjeyRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogI3skbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aH07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbW9kYWwtY3NzLXZhcnNcblxuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogdmFyKC0tI3skcHJlZml4fW1vZGFsLXppbmRleCk7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgLy8gUHJldmVudCBDaHJvbWUgb24gV2luZG93cyBmcm9tIGFkZGluZyBhIGZvY3VzIG91dGxpbmUuIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTA5NTEuXG4gIG91dGxpbmU6IDA7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkb24ndCB1c2UgYC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtgIGR1ZSB0byBhXG4gIC8vIGduYXJseSBpT1MgU2FmYXJpIGJ1ZzogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1ODM0MlxuICAvLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE3Njk1XG59XG5cbi8vIFNoZWxsIGRpdiB0byBwb3NpdGlvbiB0aGUgbW9kYWwgd2l0aCBib3R0b20gcGFkZGluZ1xuLm1vZGFsLWRpYWxvZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogdmFyKC0tI3skcHJlZml4fW1vZGFsLW1hcmdpbik7XG4gIC8vIGFsbG93IGNsaWNrcyB0byBwYXNzIHRocm91Z2ggZm9yIGN1c3RvbSBjbGljayBoYW5kbGluZyB0byBjbG9zZSBtb2RhbFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAvLyBXaGVuIGZhZGluZyBpbiB0aGUgbW9kYWwsIGFuaW1hdGUgaXQgdG8gc2xpZGUgZG93blxuICAubW9kYWwuZmFkZSAmIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRtb2RhbC10cmFuc2l0aW9uKTtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1mYWRlLXRyYW5zZm9ybTtcbiAgfVxuICAubW9kYWwuc2hvdyAmIHtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1zaG93LXRyYW5zZm9ybTtcbiAgfVxuXG4gIC8vIFdoZW4gdHJ5aW5nIHRvIGNsb3NlLCBhbmltYXRlIGZvY3VzIHRvIHNjYWxlXG4gIC5tb2RhbC5tb2RhbC1zdGF0aWMgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2NhbGUtdHJhbnNmb3JtO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gdmFyKC0tI3skcHJlZml4fW1vZGFsLW1hcmdpbikgKiAyKTtcblxuICAubW9kYWwtY29udGVudCB7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLm1vZGFsLWJvZHkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6IGNhbGMoMTAwJSAtIHZhcigtLSN7JHByZWZpeH1tb2RhbC1tYXJnaW4pICogMik7XG59XG5cbi8vIEFjdHVhbCBtb2RhbFxuLm1vZGFsLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiAxMDAlOyAvLyBFbnN1cmUgYC5tb2RhbC1jb250ZW50YCBleHRlbmRzIHRoZSBmdWxsIHdpZHRoIG9mIHRoZSBwYXJlbnQgYC5tb2RhbC1kaWFsb2dgXG4gIC8vIGNvdW50ZXJhY3QgdGhlIHBvaW50ZXItZXZlbnRzOiBub25lOyBpbiB0aGUgLm1vZGFsLWRpYWxvZ1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW1vZGFsLWNvbG9yKTtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1tb2RhbC1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fW1vZGFsLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW1vZGFsLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fW1vZGFsLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtYm94LXNoYWRvdykpO1xuICAvLyBSZW1vdmUgZm9jdXMgb3V0bGluZSBmcm9tIG9wZW5lZCBtb2RhbFxuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXG4ubW9kYWwtYmFja2Ryb3Age1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbW9kYWwtYmFja2Ryb3AtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9YmFja2Ryb3AtemluZGV4OiAjeyR6aW5kZXgtbW9kYWwtYmFja2Ryb3B9O1xuICAtLSN7JHByZWZpeH1iYWNrZHJvcC1iZzogI3skbW9kYWwtYmFja2Ryb3AtYmd9O1xuICAtLSN7JHByZWZpeH1iYWNrZHJvcC1vcGFjaXR5OiAjeyRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5fTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBtb2RhbC1iYWNrZHJvcC1jc3MtdmFyc1xuXG4gIEBpbmNsdWRlIG92ZXJsYXktYmFja2Ryb3AodmFyKC0tI3skcHJlZml4fWJhY2tkcm9wLXppbmRleCksIHZhcigtLSN7JHByZWZpeH1iYWNrZHJvcC1iZyksIHZhcigtLSN7JHByZWZpeH1iYWNrZHJvcC1vcGFjaXR5KSk7XG59XG5cbi8vIE1vZGFsIGhlYWRlclxuLy8gVG9wIHNlY3Rpb24gb2YgdGhlIG1vZGFsIHcvIHRpdGxlIGFuZCBkaXNtaXNzXG4ubW9kYWwtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZyk7XG4gIGJvcmRlci1ib3R0b206IHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1tb2RhbC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG5cbiAgLmJ0bi1jbG9zZSB7XG4gICAgcGFkZGluZzogY2FsYyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcteSkgKiAuNSkgY2FsYyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcteCkgKiAuNSk7XG4gICAgbWFyZ2luOiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZy15KSkgY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcteCkpIGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXkpKSBhdXRvO1xuICB9XG59XG5cbi8vIFRpdGxlIHRleHQgd2l0aGluIGhlYWRlclxuLm1vZGFsLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1tb2RhbC10aXRsZS1saW5lLWhlaWdodCk7XG59XG5cbi8vIE1vZGFsIGJvZHlcbi8vIFdoZXJlIGFsbCBtb2RhbCBjb250ZW50IHJlc2lkZXMgKHNpYmxpbmcgb2YgLm1vZGFsLWhlYWRlciBhbmQgLm1vZGFsLWZvb3Rlcilcbi5tb2RhbC1ib2R5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBFbmFibGUgYGZsZXgtZ3JvdzogMWAgc28gdGhhdCB0aGUgYm9keSB0YWtlIHVwIGFzIG11Y2ggc3BhY2UgYXMgcG9zc2libGVcbiAgLy8gd2hlbiB0aGVyZSBzaG91bGQgYmUgYSBmaXhlZCBoZWlnaHQgb24gYC5tb2RhbC1kaWFsb2dgLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fW1vZGFsLXBhZGRpbmcpO1xufVxuXG4vLyBGb290ZXIgKGZvciBhY3Rpb25zKVxuLm1vZGFsLWZvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIHZlcnRpY2FsbHkgY2VudGVyXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IC8vIFJpZ2h0IGFsaWduIGJ1dHRvbnMgd2l0aCBmbGV4IHByb3BlcnR5IGJlY2F1c2UgdGV4dC1hbGlnbiBkb2Vzbid0IHdvcmsgb24gZmxleCBpdGVtc1xuICBwYWRkaW5nOiBjYWxjKHZhcigtLSN7JHByZWZpeH1tb2RhbC1wYWRkaW5nKSAtIHZhcigtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItZ2FwKSAqIC41KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1iZyk7XG4gIGJvcmRlci10b3A6IHZhcigtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1tb2RhbC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG5cbiAgLy8gUGxhY2UgbWFyZ2luIGJldHdlZW4gZm9vdGVyIGVsZW1lbnRzXG4gIC8vIFRoaXMgc29sdXRpb24gaXMgZmFyIGZyb20gaWRlYWwgYmVjYXVzZSBvZiB0aGUgdW5pdmVyc2FsIHNlbGVjdG9yIHVzYWdlLFxuICAvLyBidXQgaXMgbmVlZGVkIHRvIGZpeCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0ODAwXG4gID4gKiB7XG4gICAgbWFyZ2luOiBjYWxjKHZhcigtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItZ2FwKSAqIC41KTsgLy8gVG9kbyBpbiB2NjogcmVwbGFjZSB3aXRoIGdhcCBvbiBwYXJlbnQgY2xhc3NcbiAgfVxufVxuXG4vLyBTY2FsZSB1cCB0aGUgbW9kYWxcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgLm1vZGFsIHtcbiAgICAtLSN7JHByZWZpeH1tb2RhbC1tYXJnaW46ICN7JG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cH07XG4gICAgLS0jeyRwcmVmaXh9bW9kYWwtYm94LXNoYWRvdzogI3skbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwfTtcbiAgfVxuXG4gIC8vIEF1dG9tYXRpY2FsbHkgc2V0IG1vZGFsJ3Mgd2lkdGggZm9yIGxhcmdlciB2aWV3cG9ydHNcbiAgLm1vZGFsLWRpYWxvZyB7XG4gICAgbWF4LXdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtd2lkdGgpO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuXG4gIC5tb2RhbC1zbSB7XG4gICAgLS0jeyRwcmVmaXh9bW9kYWwtd2lkdGg6ICN7JG1vZGFsLXNtfTtcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gIC5tb2RhbC1sZyxcbiAgLm1vZGFsLXhsIHtcbiAgICAtLSN7JHByZWZpeH1tb2RhbC13aWR0aDogI3skbW9kYWwtbGd9O1xuICB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgLm1vZGFsLXhsIHtcbiAgICAtLSN7JHByZWZpeH1tb2RhbC13aWR0aDogI3skbW9kYWwteGx9O1xuICB9XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBtb2RhbC1mdWxsc2NyZWVuLWxvb3BcbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAkcG9zdGZpeDogaWYoJGluZml4ICE9IFwiXCIsICRpbmZpeCArIFwiLWRvd25cIiwgXCJcIik7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgLm1vZGFsLWZ1bGxzY3JlZW4jeyRwb3N0Zml4fSB7XG4gICAgICB3aWR0aDogMTAwdnc7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBtYXJnaW46IDA7XG5cbiAgICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgICB9XG5cbiAgICAgIC5tb2RhbC1oZWFkZXIsXG4gICAgICAubW9kYWwtZm9vdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgIH1cblxuICAgICAgLm1vZGFsLWJvZHkge1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBtb2RhbC1mdWxsc2NyZWVuLWxvb3BcbiIsIi8vIEJhc2UgY2xhc3Ncbi50b29sdGlwIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHRvb2x0aXAtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9dG9vbHRpcC16aW5kZXg6ICN7JHppbmRleC10b29sdGlwfTtcbiAgLS0jeyRwcmVmaXh9dG9vbHRpcC1tYXgtd2lkdGg6ICN7JHRvb2x0aXAtbWF4LXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9dG9vbHRpcC1wYWRkaW5nLXg6ICN7JHRvb2x0aXAtcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9dG9vbHRpcC1wYWRkaW5nLXk6ICN7JHRvb2x0aXAtcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9dG9vbHRpcC1tYXJnaW46ICN7JHRvb2x0aXAtbWFyZ2lufTtcbiAgQGluY2x1ZGUgcmZzKCR0b29sdGlwLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9dG9vbHRpcC1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH10b29sdGlwLWNvbG9yOiAjeyR0b29sdGlwLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dG9vbHRpcC1iZzogI3skdG9vbHRpcC1iZ307XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtYm9yZGVyLXJhZGl1czogI3skdG9vbHRpcC1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9dG9vbHRpcC1vcGFjaXR5OiAjeyR0b29sdGlwLW9wYWNpdHl9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLWFycm93LXdpZHRoOiAjeyR0b29sdGlwLWFycm93LXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQ6ICN7JHRvb2x0aXAtYXJyb3ctaGVpZ2h0fTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCB0b29sdGlwLWNzcy12YXJzXG5cbiAgei1pbmRleDogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtemluZGV4KTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtbWFyZ2luKTtcbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYCR0b29sdGlwLW1hcmdpbmBcIiwgXCJ2NVwiLCBcInY1LnhcIiwgdHJ1ZSk7XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fXRvb2x0aXAtZm9udC1zaXplKSk7XG4gIC8vIEFsbG93IGJyZWFraW5nIHZlcnkgbG9uZyB3b3JkcyBzbyB0aGV5IGRvbid0IG92ZXJmbG93IHRoZSB0b29sdGlwJ3MgYm91bmRzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgb3BhY2l0eTogMDtcblxuICAmLnNob3cgeyBvcGFjaXR5OiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1vcGFjaXR5KTsgfVxuXG4gIC50b29sdGlwLWFycm93IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpO1xuICAgIGhlaWdodDogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLXRvcCAudG9vbHRpcC1hcnJvdyB7XG4gIGJvdHRvbTogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4gICY6OmJlZm9yZSB7XG4gICAgdG9wOiAtMXB4O1xuICAgIGJvcmRlci13aWR0aDogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KSBjYWxjKHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LXdpZHRoKSAqIC41KSAwOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWJnKTtcbiAgfVxufVxuXG4vKiBydGw6YmVnaW46aWdub3JlICovXG4uYnMtdG9vbHRpcC1lbmQgLnRvb2x0aXAtYXJyb3cge1xuICBsZWZ0OiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpO1xuICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LXdpZHRoKTtcblxuICAmOjpiZWZvcmUge1xuICAgIHJpZ2h0OiAtMXB4O1xuICAgIGJvcmRlci13aWR0aDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCkgKiAuNSkgdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KSBjYWxjKHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LXdpZHRoKSAqIC41KSAwOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIGJvcmRlci1yaWdodC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYmcpO1xuICB9XG59XG5cbi8qIHJ0bDplbmQ6aWdub3JlICovXG5cbi5icy10b29sdGlwLWJvdHRvbSAudG9vbHRpcC1hcnJvdyB7XG4gIHRvcDogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4gICY6OmJlZm9yZSB7XG4gICAgYm90dG9tOiAtMXB4O1xuICAgIGJvcmRlci13aWR0aDogMCBjYWxjKHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LXdpZHRoKSAqIC41KSB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWJnKTtcbiAgfVxufVxuXG4vKiBydGw6YmVnaW46aWdub3JlICovXG4uYnMtdG9vbHRpcC1zdGFydCAudG9vbHRpcC1hcnJvdyB7XG4gIHJpZ2h0OiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpO1xuICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LXdpZHRoKTtcblxuICAmOjpiZWZvcmUge1xuICAgIGxlZnQ6IC0xcHg7XG4gICAgYm9yZGVyLXdpZHRoOiBjYWxjKHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LXdpZHRoKSAqIC41KSAwIGNhbGModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpICogLjUpIHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWJnKTtcbiAgfVxufVxuXG4vKiBydGw6ZW5kOmlnbm9yZSAqL1xuXG4uYnMtdG9vbHRpcC1hdXRvIHtcbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLXRvcDtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1lbmQ7XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWJvdHRvbTtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLXN0YXJ0O1xuICB9XG59XG5cbi8vIFdyYXBwZXIgZm9yIHRoZSB0b29sdGlwIGNvbnRlbnRcbi50b29sdGlwLWlubmVyIHtcbiAgbWF4LXdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1tYXgtd2lkdGgpO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH10b29sdGlwLXBhZGRpbmcteCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1jb2xvcik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYmcpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH10b29sdGlwLWJvcmRlci1yYWRpdXMpKTtcbn1cbiIsIi5wb3BvdmVyIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHBvcG92ZXItY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci16aW5kZXg6ICN7JHppbmRleC1wb3BvdmVyfTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1tYXgtd2lkdGg6ICN7JHBvcG92ZXItbWF4LXdpZHRofTtcbiAgQGluY2x1ZGUgcmZzKCRwb3BvdmVyLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9cG9wb3Zlci1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWJnOiAjeyRwb3BvdmVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGg6ICN7JHBvcG92ZXItYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItY29sb3I6ICN7JHBvcG92ZXItYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItcmFkaXVzOiAjeyRwb3BvdmVyLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXM6ICN7JHBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYm94LXNoYWRvdzogI3skcG9wb3Zlci1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItcGFkZGluZy14OiAjeyRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1wYWRkaW5nLXk6ICN7JHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteX07XG4gIEBpbmNsdWRlIHJmcygkcG9wb3Zlci1oZWFkZXItZm9udC1zaXplLCAtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1jb2xvcjogI3skcG9wb3Zlci1oZWFkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1iZzogI3skcG9wb3Zlci1oZWFkZXItYmd9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWJvZHktcGFkZGluZy14OiAjeyRwb3BvdmVyLWJvZHktcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1ib2R5LXBhZGRpbmcteTogI3skcG9wb3Zlci1ib2R5LXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYm9keS1jb2xvcjogI3skcG9wb3Zlci1ib2R5LWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aDogI3skcG9wb3Zlci1hcnJvdy13aWR0aH07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0OiAjeyRwb3BvdmVyLWFycm93LWhlaWdodH07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItY29sb3IpO1xuICAvLyBzY3NzLWRvY3MtZW5kIHBvcG92ZXItY3NzLXZhcnNcblxuICB6LWluZGV4OiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci16aW5kZXgpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1tYXgtd2lkdGgpO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWZvbnQtc2l6ZSkpO1xuICAvLyBBbGxvdyBicmVha2luZyB2ZXJ5IGxvbmcgd29yZHMgc28gdGhleSBkb24ndCBvdmVyZmxvdyB0aGUgcG9wb3ZlcidzIGJvdW5kc1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJnKTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXJhZGl1cykpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJveC1zaGFkb3cpKTtcblxuICAucG9wb3Zlci1hcnJvdyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKTtcbiAgICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCk7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICBib3JkZXItd2lkdGg6IDA7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLXRvcCB7XG4gID4gLnBvcG92ZXItYXJyb3cge1xuICAgIGJvdHRvbTogY2FsYygtMSAqICh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpKSAtIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvcmRlci13aWR0aDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KSBjYWxjKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKSAqIC41KSAwOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1ib3JkZXIpO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvdHRvbTogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKTtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJnKTtcbiAgICB9XG4gIH1cbn1cblxuLyogcnRsOmJlZ2luOmlnbm9yZSAqL1xuLmJzLXBvcG92ZXItZW5kIHtcbiAgPiAucG9wb3Zlci1hcnJvdyB7XG4gICAgbGVmdDogY2FsYygtMSAqICh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpKSAtIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpO1xuICAgIGhlaWdodDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvcmRlci13aWR0aDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCkgKiAuNSkgdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KSBjYWxjKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKSAqIC41KSAwOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1ib3JkZXIpO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGxlZnQ6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCk7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJnKTtcbiAgICB9XG4gIH1cbn1cblxuLyogcnRsOmVuZDppZ25vcmUgKi9cblxuLmJzLXBvcG92ZXItYm90dG9tIHtcbiAgPiAucG9wb3Zlci1hcnJvdyB7XG4gICAgdG9wOiBjYWxjKC0xICogKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCkpIC0gdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm9yZGVyLXdpZHRoOiAwIGNhbGModmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpICogLjUpIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWJvcmRlcik7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdG9wOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYmcpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFRoaXMgd2lsbCByZW1vdmUgdGhlIHBvcG92ZXItaGVhZGVyJ3MgYm9yZGVyIGp1c3QgYmVsb3cgdGhlIGFycm93XG4gIC5wb3BvdmVyLWhlYWRlcjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpO1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1iZyk7XG4gIH1cbn1cblxuLyogcnRsOmJlZ2luOmlnbm9yZSAqL1xuLmJzLXBvcG92ZXItc3RhcnQge1xuICA+IC5wb3BvdmVyLWFycm93IHtcbiAgICByaWdodDogY2FsYygtMSAqICh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpKSAtIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpO1xuICAgIGhlaWdodDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvcmRlci13aWR0aDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCkgKiAuNSkgMCBjYWxjKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKSAqIC41KSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1ib3JkZXIpO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHJpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJnKTtcbiAgICB9XG4gIH1cbn1cblxuLyogcnRsOmVuZDppZ25vcmUgKi9cblxuLmJzLXBvcG92ZXItYXV0byB7XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci10b3A7XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwicmlnaHRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItZW5kO1xuICB9XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1ib3R0b207XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1zdGFydDtcbiAgfVxufVxuXG4vLyBPZmZzZXQgdGhlIHBvcG92ZXIgdG8gYWNjb3VudCBmb3IgdGhlIHBvcG92ZXIgYXJyb3dcbi5wb3BvdmVyLWhlYWRlciB7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1wYWRkaW5nLXgpO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIFJlYm9vdFxuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLWZvbnQtc2l6ZSkpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLWJnKTtcbiAgYm9yZGVyLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG5cbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ucG9wb3Zlci1ib2R5IHtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9keS1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvZHktcGFkZGluZy14KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvZHktY29sb3IpO1xufVxuIiwiLy8gTm90ZXMgb24gdGhlIGNsYXNzZXM6XG4vL1xuLy8gMS4gLmNhcm91c2VsLnBvaW50ZXItZXZlbnQgc2hvdWxkIGlkZWFsbHkgYmUgcGFuLXkgKHRvIGFsbG93IGZvciB1c2VycyB0byBzY3JvbGwgdmVydGljYWxseSlcbi8vICAgIGV2ZW4gd2hlbiB0aGVpciBzY3JvbGwgYWN0aW9uIHN0YXJ0ZWQgb24gYSBjYXJvdXNlbCwgYnV0IGZvciBjb21wYXRpYmlsaXR5ICh3aXRoIEZpcmVmb3gpXG4vLyAgICB3ZSdyZSBwcmV2ZW50aW5nIGFsbCBhY3Rpb25zIGluc3RlYWRcbi8vIDIuIFRoZSAuY2Fyb3VzZWwtaXRlbS1zdGFydCBhbmQgLmNhcm91c2VsLWl0ZW0tZW5kIGlzIHVzZWQgdG8gaW5kaWNhdGUgd2hlcmVcbi8vICAgIHRoZSBhY3RpdmUgc2xpZGUgaXMgaGVhZGluZy5cbi8vIDMuIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbSBpcyB0aGUgY3VycmVudCBzbGlkZS5cbi8vIDQuIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1zdGFydCBhbmQgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWVuZCBpcyB0aGUgY3VycmVudFxuLy8gICAgc2xpZGUgaW4gaXRzIGluLXRyYW5zaXRpb24gc3RhdGUuIE9ubHkgb25lIG9mIHRoZXNlIG9jY3VycyBhdCBhIHRpbWUuXG4vLyA1LiAuY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tc3RhcnQgYW5kIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1lbmRcbi8vICAgIGlzIHRoZSB1cGNvbWluZyBzbGlkZSBpbiB0cmFuc2l0aW9uLlxuXG4uY2Fyb3VzZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jYXJvdXNlbC5wb2ludGVyLWV2ZW50IHtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbn1cblxuLmNhcm91c2VsLWlubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC10cmFuc2l0aW9uKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuLmNhcm91c2VsLWl0ZW0tbmV4dCxcbi5jYXJvdXNlbC1pdGVtLXByZXYge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmNhcm91c2VsLWl0ZW0tbmV4dDpub3QoLmNhcm91c2VsLWl0ZW0tc3RhcnQpLFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWVuZCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0tcHJldjpub3QoLmNhcm91c2VsLWl0ZW0tZW5kKSxcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1zdGFydCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG59XG5cblxuLy9cbi8vIEFsdGVybmF0ZSB0cmFuc2l0aW9uc1xuLy9cblxuLmNhcm91c2VsLWZhZGUge1xuICAuY2Fyb3VzZWwtaXRlbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbiAgLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLXN0YXJ0LFxuICAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tZW5kIHtcbiAgICB6LWluZGV4OiAxO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tc3RhcnQsXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1lbmQge1xuICAgIHotaW5kZXg6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgMHMgJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24pO1xuICB9XG59XG5cblxuLy9cbi8vIExlZnQvcmlnaHQgY29udHJvbHMgZm9yIG5hdlxuLy9cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICB6LWluZGV4OiAxO1xuICAvLyBVc2UgZmxleCBmb3IgYWxpZ25tZW50ICgxLTMpXG4gIGRpc3BsYXk6IGZsZXg7IC8vIDEuIGFsbG93IGZsZXggc3R5bGVzXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIDIuIHZlcnRpY2FsbHkgY2VudGVyIGNvbnRlbnRzXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyAvLyAzLiBob3Jpem9udGFsbHkgY2VudGVyIGNvbnRlbnRzXG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgcGFkZGluZzogMDtcbiAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgb3BhY2l0eTogJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uKTtcblxuICAvLyBIb3Zlci9mb2N1cyBzdGF0ZVxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG91dGxpbmU6IDA7XG4gICAgb3BhY2l0eTogJGNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eTtcbiAgfVxufVxuLmNhcm91c2VsLWNvbnRyb2wtcHJldiB7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGlmKCRlbmFibGUtZ3JhZGllbnRzLCBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoJGJsYWNrLCAuMjUpLCByZ2JhKCRibGFjaywgLjAwMSkpLCBudWxsKTtcbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICByaWdodDogMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIGxpbmVhci1ncmFkaWVudCgyNzBkZWcsIHJnYmEoJGJsYWNrLCAuMjUpLCByZ2JhKCRibGFjaywgLjAwMSkpLCBudWxsKTtcbn1cblxuLy8gSWNvbnMgZm9yIHdpdGhpblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDtcbiAgaGVpZ2h0OiAkY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCU7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xufVxuXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZykgI3tcIi8qcnRsOlwiICsgZXNjYXBlLXN2ZygkY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmcpICsgXCIqL1wifTtcbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnKSAje1wiLypydGw6XCIgKyBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZykgKyBcIiovXCJ9O1xufVxuXG4vLyBPcHRpb25hbCBpbmRpY2F0b3IgcGlwcy9jb250cm9sc1xuLy9cbi8vIEFkZCBhIGNvbnRhaW5lciAoc3VjaCBhcyBhIGxpc3QpIHdpdGggdGhlIGZvbGxvd2luZyBjbGFzcyBhbmQgYWRkIGFuIGl0ZW0gKGlkZWFsbHkgYSBmb2N1c2FibGUgY29udHJvbCxcbi8vIGxpa2UgYSBidXR0b24pIHdpdGggZGF0YS1icy10YXJnZXQgZm9yIGVhY2ggc2xpZGUgeW91ciBjYXJvdXNlbCBob2xkcy5cblxuLmNhcm91c2VsLWluZGljYXRvcnMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAwO1xuICAvLyBVc2UgdGhlIC5jYXJvdXNlbC1jb250cm9sJ3Mgd2lkdGggYXMgbWFyZ2luIHNvIHdlIGRvbid0IG92ZXJsYXkgdGhvc2VcbiAgbWFyZ2luLXJpZ2h0OiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuXG4gIFtkYXRhLWJzLXRhcmdldF0ge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoO1xuICAgIGhlaWdodDogJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyO1xuICAgIG1hcmdpbi1sZWZ0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjtcbiAgICB0ZXh0LWluZGVudDogLTk5OXB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZztcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAgIGJvcmRlcjogMDtcbiAgICAvLyBVc2UgdHJhbnNwYXJlbnQgYm9yZGVycyB0byBpbmNyZWFzZSB0aGUgaGl0IGFyZWEgYnkgMTBweCBvbiB0b3AgYW5kIGJvdHRvbS5cbiAgICBib3JkZXItdG9wOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBvcGFjaXR5OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLW9wYWNpdHk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgLmFjdGl2ZSB7XG4gICAgb3BhY2l0eTogJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtb3BhY2l0eTtcbiAgfVxufVxuXG5cbi8vIE9wdGlvbmFsIGNhcHRpb25zXG4vL1xuLy9cblxuLmNhcm91c2VsLWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAoMTAwJSAtICRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoKSAqIC41O1xuICBib3R0b206ICRjYXJvdXNlbC1jYXB0aW9uLXNwYWNlcjtcbiAgbGVmdDogKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkgKiAuNTtcbiAgcGFkZGluZy10b3A6ICRjYXJvdXNlbC1jYXB0aW9uLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRjYXJvdXNlbC1jYXB0aW9uLXBhZGRpbmcteTtcbiAgY29sb3I6ICRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi8vIERhcmsgbW9kZSBjYXJvdXNlbFxuXG5AbWl4aW4gY2Fyb3VzZWwtZGFyaygpIHtcbiAgLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLFxuICAuY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICAgIGZpbHRlcjogJGNhcm91c2VsLWRhcmstY29udHJvbC1pY29uLWZpbHRlcjtcbiAgfVxuXG4gIC5jYXJvdXNlbC1pbmRpY2F0b3JzIFtkYXRhLWJzLXRhcmdldF0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJvdXNlbC1kYXJrLWluZGljYXRvci1hY3RpdmUtYmc7XG4gIH1cblxuICAuY2Fyb3VzZWwtY2FwdGlvbiB7XG4gICAgY29sb3I6ICRjYXJvdXNlbC1kYXJrLWNhcHRpb24tY29sb3I7XG4gIH1cbn1cblxuLmNhcm91c2VsLWRhcmsge1xuICBAaW5jbHVkZSBjYXJvdXNlbC1kYXJrKCk7XG59XG5cbkBpZiAkZW5hYmxlLWRhcmstbW9kZSB7XG4gIEBpbmNsdWRlIGNvbG9yLW1vZGUoZGFyaykge1xuICAgIEBpZiAkY29sb3ItbW9kZS10eXBlID09IFwibWVkaWEtcXVlcnlcIiB7XG4gICAgICAuY2Fyb3VzZWwge1xuICAgICAgICBAaW5jbHVkZSBjYXJvdXNlbC1kYXJrKCk7XG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICAuY2Fyb3VzZWwsXG4gICAgICAmLmNhcm91c2VsIHtcbiAgICAgICAgQGluY2x1ZGUgY2Fyb3VzZWwtZGFyaygpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIFJvdGF0aW5nIGJvcmRlclxuLy9cblxuLnNwaW5uZXItZ3Jvdyxcbi5zcGlubmVyLWJvcmRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1zcGlubmVyLXdpZHRoKTtcbiAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9c3Bpbm5lci1oZWlnaHQpO1xuICB2ZXJ0aWNhbC1hbGlnbjogdmFyKC0tI3skcHJlZml4fXNwaW5uZXItdmVydGljYWwtYWxpZ24pO1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYW5pbWF0aW9uOiB2YXIoLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tc3BlZWQpIGxpbmVhciBpbmZpbml0ZSB2YXIoLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tbmFtZSk7XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBzcGlubmVyLWJvcmRlci1rZXlmcmFtZXNcbkBrZXlmcmFtZXMgc3Bpbm5lci1ib3JkZXIge1xuICB0byB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZykgI3tcIi8qIHJ0bDppZ25vcmUgKi9cIn07IH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgc3Bpbm5lci1ib3JkZXIta2V5ZnJhbWVzXG5cbi5zcGlubmVyLWJvcmRlciB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBzcGlubmVyLWJvcmRlci1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1zcGlubmVyLXdpZHRoOiAjeyRzcGlubmVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1oZWlnaHQ6ICN7JHNwaW5uZXItaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjogI3skc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbn07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItYm9yZGVyLXdpZHRoOiAjeyRzcGlubmVyLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItYW5pbWF0aW9uLXNwZWVkOiAjeyRzcGlubmVyLWFuaW1hdGlvbi1zcGVlZH07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItYW5pbWF0aW9uLW5hbWU6IHNwaW5uZXItYm9yZGVyO1xuICAvLyBzY3NzLWRvY3MtZW5kIHNwaW5uZXItYm9yZGVyLWNzcy12YXJzXG5cbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9c3Bpbm5lci1ib3JkZXItd2lkdGgpIHNvbGlkIGN1cnJlbnRjb2xvcjtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnNwaW5uZXItYm9yZGVyLXNtIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwaW5uZXItYm9yZGVyLXNtLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXNwaW5uZXItd2lkdGg6ICN7JHNwaW5uZXItd2lkdGgtc219O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWhlaWdodDogI3skc3Bpbm5lci1oZWlnaHQtc219O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWJvcmRlci13aWR0aDogI3skc3Bpbm5lci1ib3JkZXItd2lkdGgtc219O1xuICAvLyBzY3NzLWRvY3MtZW5kIHNwaW5uZXItYm9yZGVyLXNtLWNzcy12YXJzXG59XG5cbi8vXG4vLyBHcm93aW5nIGNpcmNsZVxuLy9cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwaW5uZXItZ3Jvdy1rZXlmcmFtZXNcbkBrZXlmcmFtZXMgc3Bpbm5lci1ncm93IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBzcGlubmVyLWdyb3cta2V5ZnJhbWVzXG5cbi5zcGlubmVyLWdyb3cge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgc3Bpbm5lci1ncm93LWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXNwaW5uZXItd2lkdGg6ICN7JHNwaW5uZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWhlaWdodDogI3skc3Bpbm5lci1oZWlnaHR9O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLXZlcnRpY2FsLWFsaWduOiAjeyRzcGlubmVyLXZlcnRpY2FsLWFsaWdufTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tc3BlZWQ6ICN7JHNwaW5uZXItYW5pbWF0aW9uLXNwZWVkfTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tbmFtZTogc3Bpbm5lci1ncm93O1xuICAvLyBzY3NzLWRvY3MtZW5kIHNwaW5uZXItZ3Jvdy1jc3MtdmFyc1xuXG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNwaW5uZXItZ3Jvdy1zbSB7XG4gIC0tI3skcHJlZml4fXNwaW5uZXItd2lkdGg6ICN7JHNwaW5uZXItd2lkdGgtc219O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWhlaWdodDogI3skc3Bpbm5lci1oZWlnaHQtc219O1xufVxuXG5AaWYgJGVuYWJsZS1yZWR1Y2VkLW1vdGlvbiB7XG4gIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgLnNwaW5uZXItYm9yZGVyLFxuICAgIC5zcGlubmVyLWdyb3cge1xuICAgICAgLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tc3BlZWQ6ICN7JHNwaW5uZXItYW5pbWF0aW9uLXNwZWVkICogMn07XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuJW9mZmNhbnZhcy1jc3MtdmFycyB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBvZmZjYW52YXMtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXppbmRleDogI3skemluZGV4LW9mZmNhbnZhc307XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy13aWR0aDogI3skb2ZmY2FudmFzLWhvcml6b250YWwtd2lkdGh9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtaGVpZ2h0OiAjeyRvZmZjYW52YXMtdmVydGljYWwtaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteDogI3skb2ZmY2FudmFzLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXk6ICN7JG9mZmNhbnZhcy1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtY29sb3I6ICN7JG9mZmNhbnZhcy1jb2xvcn07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1iZzogI3skb2ZmY2FudmFzLWJnLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci13aWR0aDogI3skb2ZmY2FudmFzLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItY29sb3I6ICN7JG9mZmNhbnZhcy1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtYm94LXNoYWRvdzogI3skb2ZmY2FudmFzLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtdHJhbnNpdGlvbjogI3t0cmFuc2Zvcm0gJG9mZmNhbnZhcy10cmFuc2l0aW9uLWR1cmF0aW9uIGVhc2UtaW4tb3V0fTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXRpdGxlLWxpbmUtaGVpZ2h0OiAjeyRvZmZjYW52YXMtdGl0bGUtbGluZS1oZWlnaHR9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG9mZmNhbnZhcy1jc3MtdmFyc1xufVxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gIC5vZmZjYW52YXMjeyRpbmZpeH0ge1xuICAgIEBleHRlbmQgJW9mZmNhbnZhcy1jc3MtdmFycztcbiAgfVxufVxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gIC5vZmZjYW52YXMjeyRpbmZpeH0ge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmV4dCkge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgei1pbmRleDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy16aW5kZXgpO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1jb2xvcik7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJnKTtcbiAgICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJveC1zaGFkb3cpKTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24odmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy10cmFuc2l0aW9uKSk7XG5cbiAgICAgICYub2ZmY2FudmFzLXN0YXJ0IHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy13aWR0aCk7XG4gICAgICAgIGJvcmRlci1yaWdodDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICAgIH1cblxuICAgICAgJi5vZmZjYW52YXMtZW5kIHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtd2lkdGgpO1xuICAgICAgICBib3JkZXItbGVmdDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICAgICAgfVxuXG4gICAgICAmLm9mZmNhbnZhcy10b3Age1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtaGVpZ2h0KTtcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgICAgIH1cblxuICAgICAgJi5vZmZjYW52YXMtYm90dG9tIHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGhlaWdodDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1oZWlnaHQpO1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICBib3JkZXItdG9wOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgICB9XG5cbiAgICAgICYuc2hvd2luZyxcbiAgICAgICYuc2hvdzpub3QoLmhpZGluZykge1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICYuc2hvd2luZyxcbiAgICAgICYuaGlkaW5nLFxuICAgICAgJi5zaG93IHtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIikge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmV4dCkge1xuICAgICAgICAtLSN7JHByZWZpeH1vZmZjYW52YXMtaGVpZ2h0OiBhdXRvO1xuICAgICAgICAtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLXdpZHRoOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4gICAgICAgIC5vZmZjYW52YXMtaGVhZGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLm9mZmNhbnZhcy1ib2R5IHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIG92ZXJmbG93LXk6IHZpc2libGU7XG4gICAgICAgICAgLy8gUmVzZXQgYGJhY2tncm91bmQtY29sb3JgIGluIGNhc2UgYC5iZy0qYCBjbGFzc2VzIGFyZSB1c2VkIGluIG9mZmNhbnZhc1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLm9mZmNhbnZhcy1iYWNrZHJvcCB7XG4gIEBpbmNsdWRlIG92ZXJsYXktYmFja2Ryb3AoJHppbmRleC1vZmZjYW52YXMtYmFja2Ryb3AsICRvZmZjYW52YXMtYmFja2Ryb3AtYmcsICRvZmZjYW52YXMtYmFja2Ryb3Atb3BhY2l0eSk7XG59XG5cbi5vZmZjYW52YXMtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy14KTtcblxuICAuYnRuLWNsb3NlIHtcbiAgICBwYWRkaW5nOiBjYWxjKHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy15KSAqIC41KSBjYWxjKHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy14KSAqIC41KTtcbiAgICBtYXJnaW46IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXkpKSBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy14KSkgY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteSkpIGF1dG87XG4gIH1cbn1cblxuLm9mZmNhbnZhcy10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXRpdGxlLWxpbmUtaGVpZ2h0KTtcbn1cblxuLm9mZmNhbnZhcy1ib2R5IHtcbiAgZmxleC1ncm93OiAxO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXgpO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuIiwiLnBsYWNlaG9sZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtaW4taGVpZ2h0OiAxZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGN1cnNvcjogd2FpdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudGNvbG9yO1xuICBvcGFjaXR5OiAkcGxhY2Vob2xkZXItb3BhY2l0eS1tYXg7XG5cbiAgJi5idG46OmJlZm9yZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbn1cblxuLy8gU2l6aW5nXG4ucGxhY2Vob2xkZXIteHMge1xuICBtaW4taGVpZ2h0OiAuNmVtO1xufVxuXG4ucGxhY2Vob2xkZXItc20ge1xuICBtaW4taGVpZ2h0OiAuOGVtO1xufVxuXG4ucGxhY2Vob2xkZXItbGcge1xuICBtaW4taGVpZ2h0OiAxLjJlbTtcbn1cblxuLy8gQW5pbWF0aW9uXG4ucGxhY2Vob2xkZXItZ2xvdyB7XG4gIC5wbGFjZWhvbGRlciB7XG4gICAgYW5pbWF0aW9uOiBwbGFjZWhvbGRlci1nbG93IDJzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcGxhY2Vob2xkZXItZ2xvdyB7XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogJHBsYWNlaG9sZGVyLW9wYWNpdHktbWluO1xuICB9XG59XG5cbi5wbGFjZWhvbGRlci13YXZlIHtcbiAgbWFzay1pbWFnZTogbGluZWFyLWdyYWRpZW50KDEzMGRlZywgJGJsYWNrIDU1JSwgcmdiYSgwLCAwLCAwLCAoMSAtICRwbGFjZWhvbGRlci1vcGFjaXR5LW1pbikpIDc1JSwgJGJsYWNrIDk1JSk7XG4gIG1hc2stc2l6ZTogMjAwJSAxMDAlO1xuICBhbmltYXRpb246IHBsYWNlaG9sZGVyLXdhdmUgMnMgbGluZWFyIGluZmluaXRlO1xufVxuXG5Aa2V5ZnJhbWVzIHBsYWNlaG9sZGVyLXdhdmUge1xuICAxMDAlIHtcbiAgICBtYXNrLXBvc2l0aW9uOiAtMjAwJSAwJTtcbiAgfVxufVxuIiwiQGltcG9ydCBcImhlbHBlcnMvY2xlYXJmaXhcIjtcbkBpbXBvcnQgXCJoZWxwZXJzL2NvbG9yLWJnXCI7XG5AaW1wb3J0IFwiaGVscGVycy9jb2xvcmVkLWxpbmtzXCI7XG5AaW1wb3J0IFwiaGVscGVycy9mb2N1cy1yaW5nXCI7XG5AaW1wb3J0IFwiaGVscGVycy9pY29uLWxpbmtcIjtcbkBpbXBvcnQgXCJoZWxwZXJzL3JhdGlvXCI7XG5AaW1wb3J0IFwiaGVscGVycy9wb3NpdGlvblwiO1xuQGltcG9ydCBcImhlbHBlcnMvc3RhY2tzXCI7XG5AaW1wb3J0IFwiaGVscGVycy92aXN1YWxseS1oaWRkZW5cIjtcbkBpbXBvcnQgXCJoZWxwZXJzL3N0cmV0Y2hlZC1saW5rXCI7XG5AaW1wb3J0IFwiaGVscGVycy90ZXh0LXRydW5jYXRpb25cIjtcbkBpbXBvcnQgXCJoZWxwZXJzL3ZyXCI7XG4iLCIuY2xlYXJmaXgge1xuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xufVxuIiwiLy8gQWxsLWNhcHMgYFJHQkEoKWAgZnVuY3Rpb24gdXNlZCBiZWNhdXNlIG9mIHRoaXMgU2FzcyBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL25vZGUtc2Fzcy9pc3N1ZXMvMjI1MVxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC50ZXh0LWJnLSN7JGNvbG9yfSB7XG4gICAgY29sb3I6IGNvbG9yLWNvbnRyYXN0KCR2YWx1ZSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH0jeyRjb2xvcn0tcmdiKSwgdmFyKC0tI3skcHJlZml4fWJnLW9wYWNpdHksIDEpKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICB9XG59XG4iLCIvLyBBbGwtY2FwcyBgUkdCQSgpYCBmdW5jdGlvbiB1c2VkIGJlY2F1c2Ugb2YgdGhpcyBTYXNzIGJ1ZzogaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvbm9kZS1zYXNzL2lzc3Vlcy8yMjUxXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmxpbmstI3skY29sb3J9IHtcbiAgICBjb2xvcjogUkdCQSh2YXIoLS0jeyRwcmVmaXh9I3skY29sb3J9LXJnYiksIHZhcigtLSN7JHByZWZpeH1saW5rLW9wYWNpdHksIDEpKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogUkdCQSh2YXIoLS0jeyRwcmVmaXh9I3skY29sb3J9LXJnYiksIHZhcigtLSN7JHByZWZpeH1saW5rLXVuZGVybGluZS1vcGFjaXR5LCAxKSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcblxuICAgIEBpZiAkbGluay1zaGFkZS1wZXJjZW50YWdlICE9IDAge1xuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICAkaG92ZXItY29sb3I6IGlmKGNvbG9yLWNvbnRyYXN0KCR2YWx1ZSkgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCBzaGFkZS1jb2xvcigkdmFsdWUsICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UpLCB0aW50LWNvbG9yKCR2YWx1ZSwgJGxpbmstc2hhZGUtcGVyY2VudGFnZSkpO1xuICAgICAgICBjb2xvcjogUkdCQSgje3RvLXJnYigkaG92ZXItY29sb3IpfSwgdmFyKC0tI3skcHJlZml4fWxpbmstb3BhY2l0eSwgMSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogUkdCQSh0by1yZ2IoJGhvdmVyLWNvbG9yKSwgdmFyKC0tI3skcHJlZml4fWxpbmstdW5kZXJsaW5lLW9wYWNpdHksIDEpKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBPbmUtb2ZmIHNwZWNpYWwgbGluayBoZWxwZXIgYXMgYSBicmlkZ2UgdW50aWwgdjZcbi5saW5rLWJvZHktZW1waGFzaXMge1xuICBjb2xvcjogUkdCQSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgdmFyKC0tI3skcHJlZml4fWxpbmstb3BhY2l0eSwgMSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogUkdCQSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgdmFyKC0tI3skcHJlZml4fWxpbmstdW5kZXJsaW5lLW9wYWNpdHksIDEpKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuXG4gIEBpZiAkbGluay1zaGFkZS1wZXJjZW50YWdlICE9IDAge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogUkdCQSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgdmFyKC0tI3skcHJlZml4fWxpbmstb3BhY2l0eSwgLjc1KSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogUkdCQSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgdmFyKC0tI3skcHJlZml4fWxpbmstdW5kZXJsaW5lLW9wYWNpdHksIC43NSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgfVxuICB9XG59XG4iLCIuZm9jdXMtcmluZzpmb2N1cyB7XG4gIG91dGxpbmU6IDA7XG4gIC8vIEJ5IGRlZmF1bHQsIHRoZXJlIGlzIG5vIGAtLWJzLWZvY3VzLXJpbmcteGAsIGAtLWJzLWZvY3VzLXJpbmcteWAsIG9yIGAtLWJzLWZvY3VzLXJpbmctYmx1cmAsIGJ1dCB3ZSBwcm92aWRlIENTUyB2YXJpYWJsZXMgd2l0aCBmYWxsYmFja3MgdG8gaW5pdGlhbCBgMGAgdmFsdWVzXG4gIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1mb2N1cy1yaW5nLXgsIDApIHZhcigtLSN7JHByZWZpeH1mb2N1cy1yaW5nLXksIDApIHZhcigtLSN7JHByZWZpeH1mb2N1cy1yaW5nLWJsdXIsIDApIHZhcigtLSN7JHByZWZpeH1mb2N1cy1yaW5nLXdpZHRoKSB2YXIoLS0jeyRwcmVmaXh9Zm9jdXMtcmluZy1jb2xvcik7XG59XG4iLCIuaWNvbi1saW5rIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGdhcDogJGljb24tbGluay1nYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogcmdiYSh2YXIoLS0jeyRwcmVmaXh9bGluay1jb2xvci1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay1vcGFjaXR5LCAuNSkpO1xuICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6ICRpY29uLWxpbmstdW5kZXJsaW5lLW9mZnNldDtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gID4gLmJpIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICB3aWR0aDogJGljb24tbGluay1pY29uLXNpemU7XG4gICAgaGVpZ2h0OiAkaWNvbi1saW5rLWljb24tc2l6ZTtcbiAgICBmaWxsOiBjdXJyZW50Y29sb3I7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkaWNvbi1saW5rLWljb24tdHJhbnNpdGlvbik7XG4gIH1cbn1cblxuLmljb24tbGluay1ob3ZlciB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgPiAuYmkge1xuICAgICAgdHJhbnNmb3JtOiB2YXIoLS0jeyRwcmVmaXh9aWNvbi1saW5rLXRyYW5zZm9ybSwgJGljb24tbGluay1pY29uLXRyYW5zZm9ybSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBDcmVkaXQ6IE5pY29sYXMgR2FsbGFnaGVyIGFuZCBTVUlUIENTUy5cblxuLnJhdGlvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcblxuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS0jeyRwcmVmaXh9YXNwZWN0LXJhdGlvKTtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG5cbiAgPiAqIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbkBlYWNoICRrZXksICRyYXRpbyBpbiAkYXNwZWN0LXJhdGlvcyB7XG4gIC5yYXRpby0jeyRrZXl9IHtcbiAgICAtLSN7JHByZWZpeH1hc3BlY3QtcmF0aW86ICN7JHJhdGlvfTtcbiAgfVxufVxuIiwiLy8gU2hvcnRoYW5kXG5cbi5maXhlZC10b3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG59XG5cbi5maXhlZC1ib3R0b20ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG59XG5cbi8vIFJlc3BvbnNpdmUgc3RpY2t5IHRvcCBhbmQgYm90dG9tXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuc3RpY2t5I3skaW5maXh9LXRvcCB7XG4gICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgdG9wOiAwO1xuICAgICAgei1pbmRleDogJHppbmRleC1zdGlja3k7XG4gICAgfVxuXG4gICAgLnN0aWNreSN7JGluZml4fS1ib3R0b20ge1xuICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHotaW5kZXg6ICR6aW5kZXgtc3RpY2t5O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc2Nzcy1kb2NzLXN0YXJ0IHN0YWNrc1xuLmhzdGFjayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG59XG5cbi52c3RhY2sge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAxIDEgYXV0bztcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgc3RhY2tzXG4iLCIvL1xuLy8gVmlzdWFsbHkgaGlkZGVuXG4vL1xuXG4udmlzdWFsbHktaGlkZGVuLFxuLnZpc3VhbGx5LWhpZGRlbi1mb2N1c2FibGU6bm90KDpmb2N1cyk6bm90KDpmb2N1cy13aXRoaW4pIHtcbiAgQGluY2x1ZGUgdmlzdWFsbHktaGlkZGVuKCk7XG59XG4iLCIvL1xuLy8gU3RyZXRjaGVkIGxpbmtcbi8vXG5cbi5zdHJldGNoZWQtbGluayB7XG4gICY6OiN7JHN0cmV0Y2hlZC1saW5rLXBzZXVkby1lbGVtZW50fSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAkc3RyZXRjaGVkLWxpbmstei1pbmRleDtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG4iLCIvL1xuLy8gVGV4dCB0cnVuY2F0aW9uXG4vL1xuXG4udGV4dC10cnVuY2F0ZSB7XG4gIEBpbmNsdWRlIHRleHQtdHJ1bmNhdGUoKTtcbn1cbiIsIi52ciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgd2lkdGg6ICR2ci1ib3JkZXItd2lkdGg7XG4gIG1pbi1oZWlnaHQ6IDFlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudGNvbG9yO1xuICBvcGFjaXR5OiAkaHItb3BhY2l0eTtcbn1cbiIsIi8vIExvb3Agb3ZlciBlYWNoIGJyZWFrcG9pbnRcbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG5cbiAgLy8gR2VuZXJhdGUgbWVkaWEgcXVlcnkgaWYgbmVlZGVkXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC8vIExvb3Agb3ZlciBlYWNoIHV0aWxpdHkgcHJvcGVydHlcbiAgICBAZWFjaCAka2V5LCAkdXRpbGl0eSBpbiAkdXRpbGl0aWVzIHtcbiAgICAgIC8vIFRoZSB1dGlsaXR5IGNhbiBiZSBkaXNhYmxlZCB3aXRoIGBmYWxzZWAsIHRodXMgY2hlY2sgaWYgdGhlIHV0aWxpdHkgaXMgYSBtYXAgZmlyc3RcbiAgICAgIC8vIE9ubHkgcHJvY2VlZCBpZiByZXNwb25zaXZlIG1lZGlhIHF1ZXJpZXMgYXJlIGVuYWJsZWQgb3IgaWYgaXQncyB0aGUgYmFzZSBtZWRpYSBxdWVyeVxuICAgICAgQGlmIHR5cGUtb2YoJHV0aWxpdHkpID09IFwibWFwXCIgYW5kIChtYXAtZ2V0KCR1dGlsaXR5LCByZXNwb25zaXZlKSBvciAkaW5maXggPT0gXCJcIikge1xuICAgICAgICBAaW5jbHVkZSBnZW5lcmF0ZS11dGlsaXR5KCR1dGlsaXR5LCAkaW5maXgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBSRlMgcmVzY2FsaW5nXG5AbWVkaWEgKG1pbi13aWR0aDogJHJmcy1tcS12YWx1ZSkge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgQGlmIChtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCkgPCAkcmZzLWJyZWFrcG9pbnQpIHtcbiAgICAgIC8vIExvb3Agb3ZlciBlYWNoIHV0aWxpdHkgcHJvcGVydHlcbiAgICAgIEBlYWNoICRrZXksICR1dGlsaXR5IGluICR1dGlsaXRpZXMge1xuICAgICAgICAvLyBUaGUgdXRpbGl0eSBjYW4gYmUgZGlzYWJsZWQgd2l0aCBgZmFsc2VgLCB0aHVzIGNoZWNrIGlmIHRoZSB1dGlsaXR5IGlzIGEgbWFwIGZpcnN0XG4gICAgICAgIC8vIE9ubHkgcHJvY2VlZCBpZiByZXNwb25zaXZlIG1lZGlhIHF1ZXJpZXMgYXJlIGVuYWJsZWQgb3IgaWYgaXQncyB0aGUgYmFzZSBtZWRpYSBxdWVyeVxuICAgICAgICBAaWYgdHlwZS1vZigkdXRpbGl0eSkgPT0gXCJtYXBcIiBhbmQgbWFwLWdldCgkdXRpbGl0eSwgcmZzKSBhbmQgKG1hcC1nZXQoJHV0aWxpdHksIHJlc3BvbnNpdmUpIG9yICRpbmZpeCA9PSBcIlwiKSB7XG4gICAgICAgICAgQGluY2x1ZGUgZ2VuZXJhdGUtdXRpbGl0eSgkdXRpbGl0eSwgJGluZml4LCB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIFByaW50IHV0aWxpdGllc1xuQG1lZGlhIHByaW50IHtcbiAgQGVhY2ggJGtleSwgJHV0aWxpdHkgaW4gJHV0aWxpdGllcyB7XG4gICAgLy8gVGhlIHV0aWxpdHkgY2FuIGJlIGRpc2FibGVkIHdpdGggYGZhbHNlYCwgdGh1cyBjaGVjayBpZiB0aGUgdXRpbGl0eSBpcyBhIG1hcCBmaXJzdFxuICAgIC8vIFRoZW4gY2hlY2sgaWYgdGhlIHV0aWxpdHkgbmVlZHMgcHJpbnQgc3R5bGVzXG4gICAgQGlmIHR5cGUtb2YoJHV0aWxpdHkpID09IFwibWFwXCIgYW5kIG1hcC1nZXQoJHV0aWxpdHksIHByaW50KSA9PSB0cnVlIHtcbiAgICAgIEBpbmNsdWRlIGdlbmVyYXRlLXV0aWxpdHkoJHV0aWxpdHksIFwiLXByaW50XCIpO1xuICAgIH1cbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBRUNFOzs7O0tBSUc7QUZDTCxPQUFPLENBQUMsMExBQUk7QUFDWixPQUFPLENBQUMsMkhBQUk7QWtDUFosQUFBQSxLQUFLO0NBQ0wsQUFBQSxhQUFDLENBQWMsT0FBTyxBQUFyQixFQUF1QjtFQVFwQixTQUFxQixDQUFFLFFBQUM7RUFBeEIsV0FB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 */
