@charset "UTF-8";

/**
 * CaratX Frontend Styles
 * 
 * Main entry point for all frontend styles.
 * Follows a structured organization with shared core, frontend-specific libraries, and page styles.
 */

/**
 * Shared Core Index
 *
 * Import all shared core SCSS files in the correct order
 */

/**
 * Shared Functions
 *
 * SCSS functions for calculations and transformations
 */

/**
 * Shared Variables
 *
 * Core variables used throughout both frontend and backend styling.
 * These provide a central place to define colors, spacing, and other design elements.
 */

/**
 * Shared Mixins
 *
 * Reusable SCSS mixins for consistent styling patterns
 */

/**
 * Frontend Variables
 *
 * Frontend-specific variable overrides and custom values.
 * These variables are loaded before Bootstrap to override defaults.
 */

/**
 * Shared Variables
 *
 * Core variables used throughout both frontend and backend styling.
 * These provide a central place to define colors, spacing, and other design elements.
 */

: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: #333333;
  --bs-white: #ffffff;
  --bs-gray: #6c757d;
  --bs-gray-dark: #343a40;
  --bs-gray-100: #f8f9fa;
  --bs-gray-200: #e9ecef;
  --bs-gray-300: #dee2e6;
  --bs-gray-400: #ced4da;
  --bs-gray-500: #adb5bd;
  --bs-gray-600: #6c757d;
  --bs-gray-700: #495057;
  --bs-gray-800: #343a40;
  --bs-gray-900: #212529;
  --bs-primary: #1e1e56;
  --bs-secondary: #a37eba;
  --bs-success: #4caf50;
  --bs-info: #2196f3;
  --bs-warning: #ff9800;
  --bs-danger: #f44336;
  --bs-light: #f8f9fa;
  --bs-dark: #212529;
  --bs-primary-rgb: 30, 30, 86;
  --bs-secondary-rgb: 163, 126, 186;
  --bs-success-rgb: 76, 175, 80;
  --bs-info-rgb: 33, 150, 243;
  --bs-warning-rgb: 255, 152, 0;
  --bs-danger-rgb: 244, 67, 54;
  --bs-light-rgb: 248, 249, 250;
  --bs-dark-rgb: 33, 37, 41;
  --bs-primary-text-emphasis: #0c0c22;
  --bs-secondary-text-emphasis: #41324a;
  --bs-success-text-emphasis: #1e4620;
  --bs-info-text-emphasis: #0d3c61;
  --bs-warning-text-emphasis: #663d00;
  --bs-danger-text-emphasis: #621b16;
  --bs-light-text-emphasis: #495057;
  --bs-dark-text-emphasis: #495057;
  --bs-primary-bg-subtle: #d2d2dd;
  --bs-secondary-bg-subtle: #ede5f1;
  --bs-success-bg-subtle: #dbefdc;
  --bs-info-bg-subtle: #d3eafd;
  --bs-warning-bg-subtle: #ffeacc;
  --bs-danger-bg-subtle: #fdd9d7;
  --bs-light-bg-subtle: #fcfcfd;
  --bs-dark-bg-subtle: #ced4da;
  --bs-primary-border-subtle: #a5a5bb;
  --bs-secondary-border-subtle: #dacbe3;
  --bs-success-border-subtle: #b7dfb9;
  --bs-info-border-subtle: #a6d5fa;
  --bs-warning-border-subtle: #ffd699;
  --bs-danger-border-subtle: #fbb4af;
  --bs-light-border-subtle: #e9ecef;
  --bs-dark-border-subtle: #adb5bd;
  --bs-white-rgb: 255, 255, 255;
  --bs-black-rgb: 51, 51, 51;
  --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: "Poppins", "Source Sans Pro", sans-serif;
  --bs-body-font-size: 1rem;
  --bs-body-font-weight: 400;
  --bs-body-line-height: 1.5;
  --bs-body-color: #212529;
  --bs-body-color-rgb: 33, 37, 41;
  --bs-body-bg: #ffffff;
  --bs-body-bg-rgb: 255, 255, 255;
  --bs-emphasis-color: #333333;
  --bs-emphasis-color-rgb: 51, 51, 51;
  --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: #1e1e56;
  --bs-link-color-rgb: 30, 30, 86;
  --bs-link-decoration: underline;
  --bs-link-hover-color: #181845;
  --bs-link-hover-color-rgb: 24, 24, 69;
  --bs-code-color: #d63384;
  --bs-highlight-bg: #fff3cd;
  --bs-border-width: 1px;
  --bs-border-style: solid;
  --bs-border-color: #b6b6b6;
  --bs-border-color-translucent: rgba(112, 112, 112, 0.35);
  --bs-border-radius: 8px;
  --bs-border-radius-sm: 4px;
  --bs-border-radius-lg: 12px;
  --bs-border-radius-xl: 0;
  --bs-border-radius-xxl: 0;
  --bs-border-radius-2xl: var(--bs-border-radius-xxl);
  --bs-border-radius-pill: 50rem;
  --bs-box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  --bs-box-shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.1);
  --bs-box-shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.1);
  --bs-box-shadow-inset: inset 0 1px 2px rgba(51, 51, 51, 0.075);
  --bs-focus-ring-width: 0.25rem;
  --bs-focus-ring-opacity: 0.25;
  --bs-focus-ring-color: rgba(30, 30, 86, 0.25);
  --bs-form-valid-color: #4caf50;
  --bs-form-valid-border-color: #4caf50;
  --bs-form-invalid-color: #f44336;
  --bs-form-invalid-border-color: #f44336;
}

[data-bs-theme=dark] {
  color-scheme: dark;
  --bs-body-color: #adb5bd;
  --bs-body-color-rgb: 173, 181, 189;
  --bs-body-bg: #212529;
  --bs-body-bg-rgb: 33, 37, 41;
  --bs-emphasis-color: #ffffff;
  --bs-emphasis-color-rgb: 255, 255, 255;
  --bs-secondary-color: rgba(173, 181, 189, 0.75);
  --bs-secondary-color-rgb: 173, 181, 189;
  --bs-secondary-bg: #343a40;
  --bs-secondary-bg-rgb: 52, 58, 64;
  --bs-tertiary-color: rgba(173, 181, 189, 0.5);
  --bs-tertiary-color-rgb: 173, 181, 189;
  --bs-tertiary-bg: #2b3035;
  --bs-tertiary-bg-rgb: 43, 48, 53;
  --bs-primary-text-emphasis: #78789a;
  --bs-secondary-text-emphasis: #c8b2d6;
  --bs-success-text-emphasis: #94cf96;
  --bs-info-text-emphasis: #7ac0f8;
  --bs-warning-text-emphasis: #ffc166;
  --bs-danger-text-emphasis: #f88e86;
  --bs-light-text-emphasis: #f8f9fa;
  --bs-dark-text-emphasis: #dee2e6;
  --bs-primary-bg-subtle: #060611;
  --bs-secondary-bg-subtle: #211925;
  --bs-success-bg-subtle: #0f2310;
  --bs-info-bg-subtle: #071e31;
  --bs-warning-bg-subtle: #331e00;
  --bs-danger-bg-subtle: #310d0b;
  --bs-light-bg-subtle: #343a40;
  --bs-dark-bg-subtle: #34373a;
  --bs-primary-border-subtle: #121234;
  --bs-secondary-border-subtle: #624c70;
  --bs-success-border-subtle: #2e6930;
  --bs-info-border-subtle: #145a92;
  --bs-warning-border-subtle: #995b00;
  --bs-danger-border-subtle: #922820;
  --bs-light-border-subtle: #495057;
  --bs-dark-border-subtle: #343a40;
  --bs-heading-color: inherit;
  --bs-link-color: #78789a;
  --bs-link-hover-color: #9393ae;
  --bs-link-color-rgb: 120, 120, 154;
  --bs-link-hover-color-rgb: 147, 147, 174;
  --bs-code-color: #e685b5;
  --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(51, 51, 51, 0);
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

dt {
  font-weight: 700;
}

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

blockquote {
  margin: 0 0 1rem;
}

b,
strong {
  font-weight: bolder;
}

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

mark,
.mark {
  padding: 0.1875em;
  background-color: var(--bs-highlight-bg);
}

sub,
sup {
  position: relative;
  font-size: 0.75em;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

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

a:hover {
  --bs-link-color-rgb: var(--bs-link-hover-color-rgb);
}

a:not([href]):not([class]),
a:not([href]):not([class]):hover {
  color: inherit;
  text-decoration: none;
}

pre,
code,
kbd,
samp {
  font-family: var(--bs-font-monospace);
  font-size: 1em;
}

pre {
  display: block;
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
  font-size: 0.875em;
}

pre code {
  font-size: inherit;
  color: inherit;
  word-break: normal;
}

code {
  font-size: 0.875em;
  color: var(--bs-code-color);
  word-wrap: break-word;
}

a > code {
  color: inherit;
}

kbd {
  padding: 0.1875rem 0.375rem;
  font-size: 0.875em;
  color: var(--bs-body-bg);
  background-color: var(--bs-body-color);
  border-radius: 4px;
}

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] {
  outline-offset: -2px;
  -webkit-appearance: textfield;
}

/* rtl:raw:
[type="tel"],
[type="url"],
[type="email"],
[type="number"] {
  direction: ltr;
}
*/

::-webkit-search-decoration {
  -webkit-appearance: none;
}

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

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

::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,
.prose blockquote {
  margin-bottom: 1rem;
  font-size: 1.25rem;
}

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

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

.blockquote-footer::before {
  content: "— ";
}

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

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

.figure {
  display: inline-block;
}

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

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

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

@media (min-width: 576px) {
  .container,
  .container-fluid,
  .container-xxl,
  .container-xl,
  .container-lg,
  .container-md,
  .container-sm {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
}

@media (min-width: 768px) {
  .container,
  .container-fluid,
  .container-xxl,
  .container-xl,
  .container-lg,
  .container-md,
  .container-sm {
    padding-right: calc(var(--bs-gutter-x) * 0.5);
    padding-left: calc(var(--bs-gutter-x) * 0.5);
  }
}

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

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

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

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

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

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

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

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

.col {
  flex: 1 0 0%;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 576px) {
  .col-sm {
    flex: 1 0 0%;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .offset-sm-0 {
    margin-left: 0;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 768px) {
  .col-md {
    flex: 1 0 0%;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .offset-md-0 {
    margin-left: 0;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 992px) {
  .col-lg {
    flex: 1 0 0%;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .offset-lg-0 {
    margin-left: 0;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 1200px) {
  .col-xl {
    flex: 1 0 0%;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .offset-xl-0 {
    margin-left: 0;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 1400px) {
  .col-xxl {
    flex: 1 0 0%;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .offset-xxl-0 {
    margin-left: 0;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.table,
.prose 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-body-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-body-color);
  --bs-table-striped-bg: rgba(51, 51, 51, 0.05);
  --bs-table-active-color: var(--bs-body-color);
  --bs-table-active-bg: rgba(51, 51, 51, 0.1);
  --bs-table-hover-color: var(--bs-body-color);
  --bs-table-hover-bg: rgba(51, 51, 51, 0.075);
  width: 100%;
  margin-bottom: 1rem;
  vertical-align: top;
  border-color: var(--bs-table-border-color);
}

.table > :not(caption) > * > *,
.prose 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,
.prose table > tbody {
  vertical-align: inherit;
}

.table > thead,
.prose 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) > *,
.prose table > :not(caption) > * {
  border-width: var(--bs-border-width) 0;
}

.table-bordered > :not(caption) > * > *,
.prose table > :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: #333333;
  --bs-table-bg: #d2d2dd;
  --bs-table-border-color: #c2c2cc;
  --bs-table-striped-bg: #cacad5;
  --bs-table-striped-color: #333333;
  --bs-table-active-bg: #c2c2cc;
  --bs-table-active-color: #333333;
  --bs-table-hover-bg: #c6c6d0;
  --bs-table-hover-color: #333333;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-secondary {
  --bs-table-color: #333333;
  --bs-table-bg: #ede5f1;
  --bs-table-border-color: #dad3de;
  --bs-table-striped-bg: #e4dce8;
  --bs-table-striped-color: #333333;
  --bs-table-active-bg: #dad3de;
  --bs-table-active-color: #333333;
  --bs-table-hover-bg: #dfd8e3;
  --bs-table-hover-color: #333333;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-success {
  --bs-table-color: #333333;
  --bs-table-bg: #dbefdc;
  --bs-table-border-color: #cadccb;
  --bs-table-striped-bg: #d3e6d4;
  --bs-table-striped-color: #333333;
  --bs-table-active-bg: #cadccb;
  --bs-table-active-color: #333333;
  --bs-table-hover-bg: #cee1cf;
  --bs-table-hover-color: #333333;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-info {
  --bs-table-color: #333333;
  --bs-table-bg: #d3eafd;
  --bs-table-border-color: #c3d8e9;
  --bs-table-striped-bg: #cbe1f3;
  --bs-table-striped-color: #333333;
  --bs-table-active-bg: #c3d8e9;
  --bs-table-active-color: #333333;
  --bs-table-hover-bg: #c7dcee;
  --bs-table-hover-color: #333333;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-warning {
  --bs-table-color: #333333;
  --bs-table-bg: #ffeacc;
  --bs-table-border-color: #ebd8bd;
  --bs-table-striped-bg: #f5e1c4;
  --bs-table-striped-color: #333333;
  --bs-table-active-bg: #ebd8bd;
  --bs-table-active-color: #333333;
  --bs-table-hover-bg: #f0dcc1;
  --bs-table-hover-color: #333333;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-danger {
  --bs-table-color: #333333;
  --bs-table-bg: #fdd9d7;
  --bs-table-border-color: #e9c8c7;
  --bs-table-striped-bg: #f3d1cf;
  --bs-table-striped-color: #333333;
  --bs-table-active-bg: #e9c8c7;
  --bs-table-active-color: #333333;
  --bs-table-hover-bg: #eecdcb;
  --bs-table-hover-color: #333333;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-light {
  --bs-table-color: #333333;
  --bs-table-bg: #f8f9fa;
  --bs-table-border-color: #e4e5e6;
  --bs-table-striped-bg: #eeeff0;
  --bs-table-striped-color: #333333;
  --bs-table-active-bg: #e4e5e6;
  --bs-table-active-color: #333333;
  --bs-table-hover-bg: #e9eaeb;
  --bs-table-hover-color: #333333;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

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

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

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

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

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

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

@media (max-width: 1399.98px) {
  .table-responsive-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.125rem;
}

.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,
.select2-container--bootstrap4 .select2-selection {
  display: block;
  width: 100%;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--bs-body-color);
  background-color: var(--bs-body-bg);
  background-clip: padding-box;
  border: var(--bs-border-width) solid var(--bs-border-color);
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  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,
  .select2-container--bootstrap4 .select2-selection {
    transition: none;
  }
}

.form-control[type=file],
.select2-container--bootstrap4 [type=file].select2-selection {
  overflow: hidden;
}

.form-control[type=file]:not(:disabled):not([readonly]),
.select2-container--bootstrap4 [type=file].select2-selection:not(:disabled):not([readonly]) {
  cursor: pointer;
}

.form-control:focus,
.select2-container--bootstrap4 .select2-selection:focus {
  color: var(--bs-body-color);
  background-color: var(--bs-body-bg);
  border-color: #8f8fab;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(30, 30, 86, 0.25);
}

.form-control::-webkit-date-and-time-value,
.select2-container--bootstrap4 .select2-selection::-webkit-date-and-time-value {
  min-width: 85px;
  height: 1.5em;
  margin: 0;
}

.form-control::-webkit-datetime-edit,
.select2-container--bootstrap4 .select2-selection::-webkit-datetime-edit {
  display: block;
  padding: 0;
}

.form-control::-moz-placeholder, .select2-container--bootstrap4 .select2-selection::-moz-placeholder {
  color: var(--bs-secondary-color);
  opacity: 1;
}

.form-control:-ms-input-placeholder, .select2-container--bootstrap4 .select2-selection:-ms-input-placeholder {
  color: var(--bs-secondary-color);
  opacity: 1;
}

.form-control::placeholder,
.select2-container--bootstrap4 .select2-selection::placeholder {
  color: var(--bs-secondary-color);
  opacity: 1;
}

.form-control:disabled,
.select2-container--bootstrap4 .select2-selection:disabled {
  background-color: var(--bs-secondary-bg);
  opacity: 1;
}

.form-control::-webkit-file-upload-button, .select2-container--bootstrap4 .select2-selection::-webkit-file-upload-button {
  padding: 0.375rem 0.75rem;
  margin: -0.375rem -0.75rem;
  -webkit-margin-end: 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;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.form-control::file-selector-button,
.select2-container--bootstrap4 .select2-selection::file-selector-button {
  padding: 0.375rem 0.75rem;
  margin: -0.375rem -0.75rem;
  -webkit-margin-end: 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: all 0.3s ease;
}

@media (prefers-reduced-motion: reduce) {
  .form-control::-webkit-file-upload-button, .select2-container--bootstrap4 .select2-selection::-webkit-file-upload-button {
    -webkit-transition: none;
    transition: none;
  }
  .form-control::file-selector-button,
  .select2-container--bootstrap4 .select2-selection::file-selector-button {
    transition: none;
  }
}

.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button, .select2-container--bootstrap4 .select2-selection:hover:not(:disabled):not([readonly])::-webkit-file-upload-button {
  background-color: var(--bs-secondary-bg);
}

.form-control:hover:not(:disabled):not([readonly])::file-selector-button,
.select2-container--bootstrap4 .select2-selection: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::-webkit-file-upload-button {
  padding: 0.25rem 0.5rem;
  margin: -0.25rem -0.5rem;
  -webkit-margin-end: 0.5rem;
          margin-inline-end: 0.5rem;
}

.form-control-sm::file-selector-button {
  padding: 0.25rem 0.5rem;
  margin: -0.25rem -0.5rem;
  -webkit-margin-end: 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.125rem;
  border-radius: var(--bs-border-radius-lg);
}

.form-control-lg::-webkit-file-upload-button {
  padding: 0.5rem 1rem;
  margin: -0.5rem -1rem;
  -webkit-margin-end: 1rem;
          margin-inline-end: 1rem;
}

.form-control-lg::file-selector-button {
  padding: 0.5rem 1rem;
  margin: -0.5rem -1rem;
  -webkit-margin-end: 1rem;
          margin-inline-end: 1rem;
}

textarea.form-control,
.select2-container--bootstrap4 textarea.select2-selection {
  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);
  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;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

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

.form-select:focus {
  border-color: #8f8fab;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(30, 30, 86, 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.125rem;
  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='%23adb5bd' 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);
  width: 1em;
  height: 1em;
  margin-top: 0.25em;
  vertical-align: top;
  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);
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  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: #8f8fab;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(30, 30, 86, 0.25);
}

.form-check-input:checked {
  background-color: #1e1e56;
  border-color: #1e1e56;
}

.form-check-input:checked[type=checkbox] {
  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");
}

.form-check-input:checked[type=radio] {
  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23ffffff'/%3e%3c/svg%3e");
}

.form-check-input[type=checkbox]:indeterminate {
  background-color: #1e1e56;
  border-color: #1e1e56;
  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e");
}

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

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

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

.form-switch .form-check-input {
  --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%2851, 51, 51, 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='%238f8fab'/%3e%3c/svg%3e");
}

.form-switch .form-check-input:checked {
  background-position: right center;
  --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23ffffff'/%3e%3c/svg%3e");
}

.form-switch.form-check-reverse {
  padding-right: 2.5em;
  padding-left: 0;
}

.form-switch.form-check-reverse .form-check-input {
  margin-right: -2.5em;
  margin-left: 0;
}

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

.btn-check {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}

.btn-check[disabled] + .btn,
.btn-check:disabled + .btn {
  pointer-events: none;
  filter: none;
  opacity: 0.65;
}

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

.form-range {
  width: 100%;
  height: 1.5rem;
  padding: 0;
  background-color: transparent;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.form-range:focus {
  outline: 0;
}

.form-range:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 1px #ffffff, 0 0 0 0.25rem rgba(30, 30, 86, 0.25);
}

.form-range:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #ffffff, 0 0 0 0.25rem rgba(30, 30, 86, 0.25);
}

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

.form-range::-webkit-slider-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: -0.25rem;
  background-color: #1e1e56;
  border: 0;
  border-radius: 1rem;
  -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  -webkit-appearance: none;
          appearance: none;
}

@media (prefers-reduced-motion: reduce) {
  .form-range::-webkit-slider-thumb {
    -webkit-transition: none;
    transition: none;
  }
}

.form-range::-webkit-slider-thumb:active {
  background-color: #bcbccc;
}

.form-range::-webkit-slider-runnable-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: var(--bs-tertiary-bg);
  border-color: transparent;
  border-radius: 1rem;
}

.form-range::-moz-range-thumb {
  width: 1rem;
  height: 1rem;
  background-color: #1e1e56;
  border: 0;
  border-radius: 1rem;
  -moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  -moz-appearance: none;
       appearance: none;
}

@media (prefers-reduced-motion: reduce) {
  .form-range::-moz-range-thumb {
    -moz-transition: none;
    transition: none;
  }
}

.form-range::-moz-range-thumb:active {
  background-color: #bcbccc;
}

.form-range::-moz-range-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: var(--bs-tertiary-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,
.select2-container--bootstrap4 .form-floating > .select2-selection,
.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,
.select2-container--bootstrap4 .form-floating > .select2-selection,
.form-floating > .form-control-plaintext {
  padding: 1rem 0.75rem;
}

.form-floating > .form-control::-moz-placeholder, .select2-container--bootstrap4 .form-floating > .select2-selection::-moz-placeholder, .form-floating > .form-control-plaintext::-moz-placeholder {
  color: transparent;
}

.form-floating > .form-control:-ms-input-placeholder, .select2-container--bootstrap4 .form-floating > .select2-selection:-ms-input-placeholder, .form-floating > .form-control-plaintext:-ms-input-placeholder {
  color: transparent;
}

.form-floating > .form-control::placeholder,
.select2-container--bootstrap4 .form-floating > .select2-selection::placeholder,
.form-floating > .form-control-plaintext::placeholder {
  color: transparent;
}

.form-floating > .form-control:not(:-moz-placeholder-shown), .select2-container--bootstrap4 .form-floating > .select2-selection:not(:-moz-placeholder-shown), .form-floating > .form-control-plaintext:not(:-moz-placeholder-shown) {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}

.form-floating > .form-control:not(:-ms-input-placeholder), .select2-container--bootstrap4 .form-floating > .select2-selection:not(:-ms-input-placeholder), .form-floating > .form-control-plaintext:not(:-ms-input-placeholder) {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}

.form-floating > .form-control:focus,
.select2-container--bootstrap4 .form-floating > .select2-selection:focus,
.form-floating > .form-control:not(:placeholder-shown),
.select2-container--bootstrap4 .form-floating > .select2-selection: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,
.select2-container--bootstrap4 .form-floating > .select2-selection:-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:not(:-moz-placeholder-shown) ~ label, .select2-container--bootstrap4 .form-floating > .select2-selection:not(:-moz-placeholder-shown) ~ label {
  color: rgba(var(--bs-body-color-rgb), 0.65);
  transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}

.form-floating > .form-control:not(:-ms-input-placeholder) ~ label, .select2-container--bootstrap4 .form-floating > .select2-selection:not(:-ms-input-placeholder) ~ 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,
.select2-container--bootstrap4 .form-floating > .select2-selection:focus ~ label,
.form-floating > .form-control:not(:placeholder-shown) ~ label,
.select2-container--bootstrap4 .form-floating > .select2-selection: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:not(:-moz-placeholder-shown) ~ label::after, .select2-container--bootstrap4 .form-floating > .select2-selection:not(:-moz-placeholder-shown) ~ 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:not(:-ms-input-placeholder) ~ label::after, .select2-container--bootstrap4 .form-floating > .select2-selection:not(:-ms-input-placeholder) ~ 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:focus ~ label::after,
.select2-container--bootstrap4 .form-floating > .select2-selection:focus ~ label::after,
.form-floating > .form-control:not(:placeholder-shown) ~ label::after,
.select2-container--bootstrap4 .form-floating > .select2-selection: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,
.select2-container--bootstrap4 .form-floating > .select2-selection:-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 {
  color: #6c757d;
}

.form-floating > :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,
.select2-container--bootstrap4 .input-group > .select2-selection,
.input-group > .form-select,
.input-group > .form-floating {
  position: relative;
  flex: 1 1 auto;
  width: 1%;
  min-width: 0;
}

.input-group > .form-control:focus,
.select2-container--bootstrap4 .input-group > .select2-selection: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,
.select2-container--bootstrap4 .input-group-lg > .select2-selection,
.input-group-lg > .form-select,
.input-group-lg > .input-group-text,
.input-group-lg > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.125rem;
  border-radius: var(--bs-border-radius-lg);
}

.input-group-sm > .form-control,
.select2-container--bootstrap4 .input-group-sm > .select2-selection,
.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,
.select2-container--bootstrap4 .input-group:not(.has-validation) > .form-floating:not(:last-child) > .select2-selection,
.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,
.select2-container--bootstrap4 .input-group.has-validation > .form-floating:nth-last-child(n+3) > .select2-selection,
.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):not(.error-help-block) {
  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,
.select2-container--bootstrap4 .input-group > .form-floating:not(:first-child) > .select2-selection,
.input-group > .form-floating:not(:first-child) > .form-select {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

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

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

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

.was-validated .form-control:valid,
.was-validated .select2-container--bootstrap4 .select2-selection:valid,
.select2-container--bootstrap4 .was-validated .select2-selection:valid,
.form-control.is-valid,
.select2-container--bootstrap4 .is-valid.select2-selection {
  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='%234caf50' 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,
.was-validated .select2-container--bootstrap4 .select2-selection:valid:focus,
.select2-container--bootstrap4 .was-validated .select2-selection:valid:focus,
.form-control.is-valid:focus,
.select2-container--bootstrap4 .is-valid.select2-selection: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,
.was-validated .select2-container--bootstrap4 textarea.select2-selection:valid,
.select2-container--bootstrap4 .was-validated textarea.select2-selection:valid,
textarea.form-control.is-valid,
.select2-container--bootstrap4 textarea.is-valid.select2-selection {
  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='%234caf50' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
  padding-right: 4.125rem;
  background-position: right 0.75rem center, center right 2.25rem;
  background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.was-validated .form-select:valid:focus,
.form-select.is-valid:focus {
  border-color: var(--bs-form-valid-border-color);
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);
}

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

.was-validated .form-check-input:valid,
.form-check-input.is-valid {
  border-color: var(--bs-form-valid-border-color);
}

.was-validated .form-check-input:valid:checked,
.form-check-input.is-valid:checked {
  background-color: var(--bs-form-valid-color);
}

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

.was-validated .form-check-input:valid ~ .form-check-label,
.form-check-input.is-valid ~ .form-check-label {
  color: var(--bs-form-valid-color);
}

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

.was-validated .input-group > .form-control:not(:focus):valid,
.was-validated .select2-container--bootstrap4 .input-group > .select2-selection:not(:focus):valid,
.select2-container--bootstrap4 .was-validated .input-group > .select2-selection:not(:focus):valid,
.input-group > .form-control:not(:focus).is-valid,
.select2-container--bootstrap4 .input-group > .select2-selection: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,
.error-help-block {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 0.875em;
  color: var(--bs-form-invalid-color);
}

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

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

.was-validated .form-control:invalid,
.was-validated .select2-container--bootstrap4 .select2-selection:invalid,
.select2-container--bootstrap4 .was-validated .select2-selection:invalid,
.form-control.is-invalid,
.select2-container--bootstrap4 .is-invalid.select2-selection {
  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='%23f44336'%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='%23f44336' 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,
.was-validated .select2-container--bootstrap4 .select2-selection:invalid:focus,
.select2-container--bootstrap4 .was-validated .select2-selection:invalid:focus,
.form-control.is-invalid:focus,
.select2-container--bootstrap4 .is-invalid.select2-selection: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,
.was-validated .select2-container--bootstrap4 textarea.select2-selection:invalid,
.select2-container--bootstrap4 .was-validated textarea.select2-selection:invalid,
textarea.form-control.is-invalid,
.select2-container--bootstrap4 textarea.is-invalid.select2-selection {
  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='%23f44336'%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='%23f44336' 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,
.form-check-inline .form-check-input ~ .error-help-block {
  margin-left: 0.5em;
}

.was-validated .input-group > .form-control:not(:focus):invalid,
.was-validated .select2-container--bootstrap4 .input-group > .select2-selection:not(:focus):invalid,
.select2-container--bootstrap4 .was-validated .input-group > .select2-selection:not(:focus):invalid,
.input-group > .form-control:not(:focus).is-invalid,
.select2-container--bootstrap4 .input-group > .select2-selection: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: 20px;
  --bs-btn-padding-y: 8px;
  --bs-btn-font-family: ;
  --bs-btn-font-size: 1rem;
  --bs-btn-font-weight: 500;
  --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: 0;
  --bs-btn-hover-border-color: transparent;
  --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(51, 51, 51, 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;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          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: all 0.3s ease;
}

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

.btn:hover {
  color: var(--bs-btn-hover-color);
  background-color: var(--bs-btn-hover-bg);
  border-color: var(--bs-btn-hover-border-color);
}

.btn-check + .btn:hover {
  color: var(--bs-btn-color);
  background-color: var(--bs-btn-bg);
  border-color: var(--bs-btn-border-color);
}

.btn:focus-visible {
  color: var(--bs-btn-hover-color);
  background-color: var(--bs-btn-hover-bg);
  border-color: var(--bs-btn-hover-border-color);
  outline: 0;
  box-shadow: var(--bs-btn-focus-box-shadow);
}

.btn-check:focus-visible + .btn {
  border-color: var(--bs-btn-hover-border-color);
  outline: 0;
  box-shadow: var(--bs-btn-focus-box-shadow);
}

.btn-check:checked + .btn,
:not(.btn-check) + .btn:active,
.btn:first-child:active,
.btn.active,
.btn.show {
  color: var(--bs-btn-active-color);
  background-color: var(--bs-btn-active-bg);
  border-color: var(--bs-btn-active-border-color);
}

.btn-check:checked + .btn:focus-visible,
:not(.btn-check) + .btn:active:focus-visible,
.btn:first-child:active:focus-visible,
.btn.active:focus-visible,
.btn.show:focus-visible {
  box-shadow: var(--bs-btn-focus-box-shadow);
}

.btn:disabled,
.btn.disabled,
fieldset:disabled .btn {
  color: var(--bs-btn-disabled-color);
  pointer-events: none;
  background-color: var(--bs-btn-disabled-bg);
  border-color: var(--bs-btn-disabled-border-color);
  opacity: var(--bs-btn-disabled-opacity);
}

.btn-primary {
  --bs-btn-color: #ffffff;
  --bs-btn-bg: #1e1e56;
  --bs-btn-border-color: #1e1e56;
  --bs-btn-hover-color: #ffffff;
  --bs-btn-hover-bg: #1a1a49;
  --bs-btn-hover-border-color: #181845;
  --bs-btn-focus-shadow-rgb: 64, 64, 111;
  --bs-btn-active-color: #ffffff;
  --bs-btn-active-bg: #181845;
  --bs-btn-active-border-color: #171741;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(51, 51, 51, 0.125);
  --bs-btn-disabled-color: #ffffff;
  --bs-btn-disabled-bg: #1e1e56;
  --bs-btn-disabled-border-color: #1e1e56;
}

.btn-secondary {
  --bs-btn-color: #333333;
  --bs-btn-bg: #a37eba;
  --bs-btn-border-color: #a37eba;
  --bs-btn-hover-color: #333333;
  --bs-btn-hover-bg: #b191c4;
  --bs-btn-hover-border-color: #ac8bc1;
  --bs-btn-focus-shadow-rgb: 146, 115, 166;
  --bs-btn-active-color: #333333;
  --bs-btn-active-bg: #b598c8;
  --bs-btn-active-border-color: #ac8bc1;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(51, 51, 51, 0.125);
  --bs-btn-disabled-color: #333333;
  --bs-btn-disabled-bg: #a37eba;
  --bs-btn-disabled-border-color: #a37eba;
}

.btn-success {
  --bs-btn-color: #333333;
  --bs-btn-bg: #4caf50;
  --bs-btn-border-color: #4caf50;
  --bs-btn-hover-color: #333333;
  --bs-btn-hover-bg: #67bb6a;
  --bs-btn-hover-border-color: #5eb762;
  --bs-btn-focus-shadow-rgb: 72, 156, 76;
  --bs-btn-active-color: #333333;
  --bs-btn-active-bg: #70bf73;
  --bs-btn-active-border-color: #5eb762;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(51, 51, 51, 0.125);
  --bs-btn-disabled-color: #333333;
  --bs-btn-disabled-bg: #4caf50;
  --bs-btn-disabled-border-color: #4caf50;
}

.btn-info {
  --bs-btn-color: #333333;
  --bs-btn-bg: #2196f3;
  --bs-btn-border-color: #2196f3;
  --bs-btn-hover-color: #333333;
  --bs-btn-hover-bg: #42a6f5;
  --bs-btn-hover-border-color: #37a1f4;
  --bs-btn-focus-shadow-rgb: 36, 135, 214;
  --bs-btn-active-color: #333333;
  --bs-btn-active-bg: #4dabf5;
  --bs-btn-active-border-color: #37a1f4;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(51, 51, 51, 0.125);
  --bs-btn-disabled-color: #333333;
  --bs-btn-disabled-bg: #2196f3;
  --bs-btn-disabled-border-color: #2196f3;
}

.btn-warning {
  --bs-btn-color: #333333;
  --bs-btn-bg: #ff9800;
  --bs-btn-border-color: #ff9800;
  --bs-btn-hover-color: #333333;
  --bs-btn-hover-bg: #ffa726;
  --bs-btn-hover-border-color: #ffa21a;
  --bs-btn-focus-shadow-rgb: 224, 137, 8;
  --bs-btn-active-color: #333333;
  --bs-btn-active-bg: #ffad33;
  --bs-btn-active-border-color: #ffa21a;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(51, 51, 51, 0.125);
  --bs-btn-disabled-color: #333333;
  --bs-btn-disabled-bg: #ff9800;
  --bs-btn-disabled-border-color: #ff9800;
}

.btn-danger {
  --bs-btn-color: #ffffff;
  --bs-btn-bg: #f44336;
  --bs-btn-border-color: #f44336;
  --bs-btn-hover-color: #ffffff;
  --bs-btn-hover-bg: #cf392e;
  --bs-btn-hover-border-color: #c3362b;
  --bs-btn-focus-shadow-rgb: 246, 95, 84;
  --bs-btn-active-color: #ffffff;
  --bs-btn-active-bg: #c3362b;
  --bs-btn-active-border-color: #b73229;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(51, 51, 51, 0.125);
  --bs-btn-disabled-color: #ffffff;
  --bs-btn-disabled-bg: #f44336;
  --bs-btn-disabled-border-color: #f44336;
}

.btn-light {
  --bs-btn-color: #333333;
  --bs-btn-bg: #f8f9fa;
  --bs-btn-border-color: #f8f9fa;
  --bs-btn-hover-color: #333333;
  --bs-btn-hover-bg: #d3d4d5;
  --bs-btn-hover-border-color: #c6c7c8;
  --bs-btn-focus-shadow-rgb: 218, 219, 220;
  --bs-btn-active-color: #333333;
  --bs-btn-active-bg: #c6c7c8;
  --bs-btn-active-border-color: #babbbc;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(51, 51, 51, 0.125);
  --bs-btn-disabled-color: #333333;
  --bs-btn-disabled-bg: #f8f9fa;
  --bs-btn-disabled-border-color: #f8f9fa;
}

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

.btn-outline-primary {
  --bs-btn-color: #1e1e56;
  --bs-btn-border-color: #1e1e56;
  --bs-btn-hover-color: #ffffff;
  --bs-btn-hover-bg: #1e1e56;
  --bs-btn-hover-border-color: #1e1e56;
  --bs-btn-focus-shadow-rgb: 30, 30, 86;
  --bs-btn-active-color: #ffffff;
  --bs-btn-active-bg: #1e1e56;
  --bs-btn-active-border-color: #1e1e56;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(51, 51, 51, 0.125);
  --bs-btn-disabled-color: #1e1e56;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #1e1e56;
  --bs-gradient: none;
}

.btn-outline-secondary {
  --bs-btn-color: #a37eba;
  --bs-btn-border-color: #a37eba;
  --bs-btn-hover-color: #333333;
  --bs-btn-hover-bg: #a37eba;
  --bs-btn-hover-border-color: #a37eba;
  --bs-btn-focus-shadow-rgb: 163, 126, 186;
  --bs-btn-active-color: #333333;
  --bs-btn-active-bg: #a37eba;
  --bs-btn-active-border-color: #a37eba;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(51, 51, 51, 0.125);
  --bs-btn-disabled-color: #a37eba;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #a37eba;
  --bs-gradient: none;
}

.btn-outline-success {
  --bs-btn-color: #4caf50;
  --bs-btn-border-color: #4caf50;
  --bs-btn-hover-color: #333333;
  --bs-btn-hover-bg: #4caf50;
  --bs-btn-hover-border-color: #4caf50;
  --bs-btn-focus-shadow-rgb: 76, 175, 80;
  --bs-btn-active-color: #333333;
  --bs-btn-active-bg: #4caf50;
  --bs-btn-active-border-color: #4caf50;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(51, 51, 51, 0.125);
  --bs-btn-disabled-color: #4caf50;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #4caf50;
  --bs-gradient: none;
}

.btn-outline-info {
  --bs-btn-color: #2196f3;
  --bs-btn-border-color: #2196f3;
  --bs-btn-hover-color: #333333;
  --bs-btn-hover-bg: #2196f3;
  --bs-btn-hover-border-color: #2196f3;
  --bs-btn-focus-shadow-rgb: 33, 150, 243;
  --bs-btn-active-color: #333333;
  --bs-btn-active-bg: #2196f3;
  --bs-btn-active-border-color: #2196f3;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(51, 51, 51, 0.125);
  --bs-btn-disabled-color: #2196f3;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #2196f3;
  --bs-gradient: none;
}

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

.btn-outline-danger {
  --bs-btn-color: #f44336;
  --bs-btn-border-color: #f44336;
  --bs-btn-hover-color: #ffffff;
  --bs-btn-hover-bg: #f44336;
  --bs-btn-hover-border-color: #f44336;
  --bs-btn-focus-shadow-rgb: 244, 67, 54;
  --bs-btn-active-color: #ffffff;
  --bs-btn-active-bg: #f44336;
  --bs-btn-active-border-color: #f44336;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(51, 51, 51, 0.125);
  --bs-btn-disabled-color: #f44336;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #f44336;
  --bs-gradient: none;
}

.btn-outline-light {
  --bs-btn-color: #f8f9fa;
  --bs-btn-border-color: #f8f9fa;
  --bs-btn-hover-color: #333333;
  --bs-btn-hover-bg: #f8f9fa;
  --bs-btn-hover-border-color: #f8f9fa;
  --bs-btn-focus-shadow-rgb: 248, 249, 250;
  --bs-btn-active-color: #333333;
  --bs-btn-active-bg: #f8f9fa;
  --bs-btn-active-border-color: #f8f9fa;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(51, 51, 51, 0.125);
  --bs-btn-disabled-color: #f8f9fa;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #f8f9fa;
  --bs-gradient: none;
}

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

.btn-link {
  --bs-btn-font-weight: 400;
  --bs-btn-color: var(--bs-link-color);
  --bs-btn-bg: transparent;
  --bs-btn-border-color: transparent;
  --bs-btn-hover-color: var(--bs-link-hover-color);
  --bs-btn-hover-border-color: transparent;
  --bs-btn-active-color: var(--bs-link-hover-color);
  --bs-btn-active-border-color: transparent;
  --bs-btn-disabled-color: #6c757d;
  --bs-btn-disabled-border-color: transparent;
  --bs-btn-box-shadow: 0 0 0 #000;
  --bs-btn-focus-shadow-rgb: 64, 64, 111;
  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.125rem;
  --bs-btn-border-radius: 0;
}

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

.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: 0 4px 6px rgba(0, 0, 0, 0.1);
  --bs-dropdown-link-color: var(--bs-body-color);
  --bs-dropdown-link-hover-color: var(--bs-body-color);
  --bs-dropdown-link-hover-bg: var(--bs-tertiary-bg);
  --bs-dropdown-link-active-color: #ffffff;
  --bs-dropdown-link-active-bg: #1e1e56;
  --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: #ffffff;
  --bs-dropdown-divider-bg: var(--bs-border-color-translucent);
  --bs-dropdown-link-hover-bg: rgba(255, 255, 255, 0.15);
  --bs-dropdown-link-active-color: #ffffff;
  --bs-dropdown-link-active-bg: #1e1e56;
  --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: 0;
}

.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: 15px;
  padding-left: 15px;
}

.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(30, 30, 86, 0.25);
}

.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.disabled,
.nav-tabs .nav-link:disabled {
  color: var(--bs-nav-link-disabled-color);
  background-color: transparent;
  border-color: transparent;
}

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

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

.nav-pills {
  --bs-nav-pills-border-radius: var(--bs-border-radius);
  --bs-nav-pills-link-active-color: #ffffff;
  --bs-nav-pills-link-active-bg: #1e1e56;
}

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

.nav-pills .nav-link:disabled {
  color: var(--bs-nav-link-disabled-color);
  background-color: transparent;
  border-color: transparent;
}

.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.40625rem;
  --bs-navbar-brand-margin-end: 1rem;
  --bs-navbar-brand-font-size: 1.125rem;
  --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.125rem;
  --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: 0;
  --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: #ffffff;
  --bs-navbar-brand-color: #ffffff;
  --bs-navbar-brand-hover-color: #ffffff;
  --bs-navbar-toggler-border-color: rgba(255, 255, 255, 0.1);
  --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

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

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

.card > hr {
  margin-right: 0;
  margin-left: 0;
}

.card > .list-group {
  border-top: inherit;
  border-bottom: inherit;
}

.card > .list-group:first-child {
  border-top-width: 0;
  border-top-left-radius: var(--bs-card-inner-border-radius);
  border-top-right-radius: var(--bs-card-inner-border-radius);
}

.card > .list-group:last-child {
  border-bottom-width: 0;
  border-bottom-right-radius: var(--bs-card-inner-border-radius);
  border-bottom-left-radius: var(--bs-card-inner-border-radius);
}

.card > .card-header + .list-group,
.card > .list-group + .card-footer {
  border-top: 0;
}

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

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

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

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

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

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

.card-header:first-child {
  border-radius: var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0;
}

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

.card-footer:last-child {
  border-radius: 0 0 var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius);
}

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

.card-header-tabs .nav-link.active {
  background-color: var(--bs-card-bg);
  border-bottom-color: var(--bs-card-bg);
}

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

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

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

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

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

.card-group > .card {
  margin-bottom: var(--bs-card-group-margin);
}

@media (min-width: 576px) {
  .card-group {
    display: flex;
    flex-flow: row wrap;
  }

  .card-group > .card {
    flex: 1 0 0%;
    margin-bottom: 0;
  }

  .card-group > .card + .card {
    margin-left: 0;
    border-left: 0;
  }

  .card-group > .card:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }

  .card-group > .card:not(:last-child) .card-img-top,
  .card-group > .card:not(:last-child) .card-header {
    border-top-right-radius: 0;
  }

  .card-group > .card:not(:last-child) .card-img-bottom,
  .card-group > .card:not(:last-child) .card-footer {
    border-bottom-right-radius: 0;
  }

  .card-group > .card:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }

  .card-group > .card:not(:first-child) .card-img-top,
  .card-group > .card:not(:first-child) .card-header {
    border-top-left-radius: 0;
  }

  .card-group > .card:not(:first-child) .card-img-bottom,
  .card-group > .card:not(:first-child) .card-footer {
    border-bottom-left-radius: 0;
  }
}

.accordion {
  --bs-accordion-color: var(--bs-body-color);
  --bs-accordion-bg: var(--bs-body-bg);
  --bs-accordion-transition: all 0.3s ease, 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='%23212529'%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-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='%230c0c22'%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-focus-border-color: #8f8fab;
  --bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(30, 30, 86, 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;
  border-color: var(--bs-accordion-btn-focus-border-color);
  outline: 0;
  box-shadow: var(--bs-accordion-btn-focus-box-shadow);
}

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

.accordion-item {
  color: var(--bs-accordion-color);
  background-color: var(--bs-accordion-bg);
  border: var(--bs-accordion-border-width) solid var(--bs-accordion-border-color);
}

.accordion-item:first-of-type {
  border-top-left-radius: var(--bs-accordion-border-radius);
  border-top-right-radius: var(--bs-accordion-border-radius);
}

.accordion-item:first-of-type .accordion-button {
  border-top-left-radius: var(--bs-accordion-inner-border-radius);
  border-top-right-radius: var(--bs-accordion-inner-border-radius);
}

.accordion-item:not(:first-of-type) {
  border-top: 0;
}

.accordion-item:last-of-type {
  border-bottom-right-radius: var(--bs-accordion-border-radius);
  border-bottom-left-radius: var(--bs-accordion-border-radius);
}

.accordion-item:last-of-type .accordion-button.collapsed {
  border-bottom-right-radius: var(--bs-accordion-inner-border-radius);
  border-bottom-left-radius: var(--bs-accordion-inner-border-radius);
}

.accordion-item:last-of-type .accordion-collapse {
  border-bottom-right-radius: var(--bs-accordion-border-radius);
  border-bottom-left-radius: var(--bs-accordion-border-radius);
}

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

.accordion-flush .accordion-collapse {
  border-width: 0;
}

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

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

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

.accordion-flush .accordion-item .accordion-button,
.accordion-flush .accordion-item .accordion-button.collapsed {
  border-radius: 0;
}

[data-bs-theme=dark] .accordion-button::after {
  --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%2378789a'%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='%2378789a'%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, "/") ;
}

.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(30, 30, 86, 0.25);
  --bs-pagination-active-color: #ffffff;
  --bs-pagination-active-bg: #1e1e56;
  --bs-pagination-active-border-color: #1e1e56;
  --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 .page-link {
  border-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.125rem;
  --bs-pagination-border-radius: var(--bs-border-radius-lg);
}

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

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

.badge:empty {
  display: none;
}

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

.alert {
  --bs-alert-bg: transparent;
  --bs-alert-padding-x: 1rem;
  --bs-alert-padding-y: 1rem;
  --bs-alert-margin-bottom: 1rem;
  --bs-alert-color: inherit;
  --bs-alert-border-color: transparent;
  --bs-alert-border: var(--bs-border-width) solid var(--bs-alert-border-color);
  --bs-alert-border-radius: var(--bs-border-radius);
  --bs-alert-link-color: inherit;
  position: relative;
  padding: var(--bs-alert-padding-y) var(--bs-alert-padding-x);
  margin-bottom: var(--bs-alert-margin-bottom);
  color: var(--bs-alert-color);
  background-color: var(--bs-alert-bg);
  border: var(--bs-alert-border);
  border-radius: var(--bs-alert-border-radius);
}

.alert-heading {
  color: inherit;
}

.alert-link {
  font-weight: 700;
  color: var(--bs-alert-link-color);
}

.alert-dismissible {
  padding-right: 3rem;
}

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

.alert-primary {
  --bs-alert-color: var(--bs-primary-text-emphasis);
  --bs-alert-bg: var(--bs-primary-bg-subtle);
  --bs-alert-border-color: var(--bs-primary-border-subtle);
  --bs-alert-link-color: var(--bs-primary-text-emphasis);
}

.alert-secondary {
  --bs-alert-color: var(--bs-secondary-text-emphasis);
  --bs-alert-bg: var(--bs-secondary-bg-subtle);
  --bs-alert-border-color: var(--bs-secondary-border-subtle);
  --bs-alert-link-color: var(--bs-secondary-text-emphasis);
}

.alert-success {
  --bs-alert-color: var(--bs-success-text-emphasis);
  --bs-alert-bg: var(--bs-success-bg-subtle);
  --bs-alert-border-color: var(--bs-success-border-subtle);
  --bs-alert-link-color: var(--bs-success-text-emphasis);
}

.alert-info {
  --bs-alert-color: var(--bs-info-text-emphasis);
  --bs-alert-bg: var(--bs-info-bg-subtle);
  --bs-alert-border-color: var(--bs-info-border-subtle);
  --bs-alert-link-color: var(--bs-info-text-emphasis);
}

.alert-warning {
  --bs-alert-color: var(--bs-warning-text-emphasis);
  --bs-alert-bg: var(--bs-warning-bg-subtle);
  --bs-alert-border-color: var(--bs-warning-border-subtle);
  --bs-alert-link-color: var(--bs-warning-text-emphasis);
}

.alert-danger {
  --bs-alert-color: var(--bs-danger-text-emphasis);
  --bs-alert-bg: var(--bs-danger-bg-subtle);
  --bs-alert-border-color: var(--bs-danger-border-subtle);
  --bs-alert-link-color: var(--bs-danger-text-emphasis);
}

.alert-light {
  --bs-alert-color: var(--bs-light-text-emphasis);
  --bs-alert-bg: var(--bs-light-bg-subtle);
  --bs-alert-border-color: var(--bs-light-border-subtle);
  --bs-alert-link-color: var(--bs-light-text-emphasis);
}

.alert-dark {
  --bs-alert-color: var(--bs-dark-text-emphasis);
  --bs-alert-bg: var(--bs-dark-bg-subtle);
  --bs-alert-border-color: var(--bs-dark-border-subtle);
  --bs-alert-link-color: var(--bs-dark-text-emphasis);
}

@-webkit-keyframes progress-bar-stripes {
  0% {
    background-position-x: 1rem;
  }
}

@keyframes progress-bar-stripes {
  0% {
    background-position-x: 1rem;
  }
}

.progress,
.progress-stacked {
  --bs-progress-height: 1rem;
  --bs-progress-font-size: 0.75rem;
  --bs-progress-bg: var(--bs-secondary-bg);
  --bs-progress-border-radius: var(--bs-border-radius);
  --bs-progress-box-shadow: var(--bs-box-shadow-inset);
  --bs-progress-bar-color: #ffffff;
  --bs-progress-bar-bg: #1e1e56;
  --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 {
  -webkit-animation: 1s linear infinite progress-bar-stripes;
          animation: 1s linear infinite progress-bar-stripes;
}

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

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

.list-group-numbered {
  list-style-type: none;
  counter-reset: section;
}

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

.list-group-item-action {
  width: 100%;
  color: var(--bs-list-group-action-color);
  text-align: inherit;
}

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

.list-group-item-action:active {
  color: var(--bs-list-group-action-active-color);
  background-color: var(--bs-list-group-action-active-bg);
}

.list-group-item {
  position: relative;
  display: block;
  padding: var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);
  color: var(--bs-list-group-color);
  text-decoration: none;
  background-color: var(--bs-list-group-bg);
  border: var(--bs-list-group-border-width) solid var(--bs-list-group-border-color);
}

.list-group-item:first-child {
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
}

.list-group-item:last-child {
  border-bottom-right-radius: inherit;
  border-bottom-left-radius: inherit;
}

.list-group-item.disabled,
.list-group-item:disabled {
  color: var(--bs-list-group-disabled-color);
  pointer-events: none;
  background-color: var(--bs-list-group-disabled-bg);
}

.list-group-item.active {
  z-index: 2;
  color: var(--bs-list-group-active-color);
  background-color: var(--bs-list-group-active-bg);
  border-color: var(--bs-list-group-active-border-color);
}

.list-group-item + .list-group-item {
  border-top-width: 0;
}

.list-group-item + .list-group-item.active {
  margin-top: calc(-1 * var(--bs-list-group-border-width));
  border-top-width: var(--bs-list-group-border-width);
}

.list-group-horizontal {
  flex-direction: row;
}

.list-group-horizontal > .list-group-item:first-child:not(:last-child) {
  border-bottom-left-radius: var(--bs-list-group-border-radius);
  border-top-right-radius: 0;
}

.list-group-horizontal > .list-group-item:last-child:not(:first-child) {
  border-top-right-radius: var(--bs-list-group-border-radius);
  border-bottom-left-radius: 0;
}

.list-group-horizontal > .list-group-item.active {
  margin-top: 0;
}

.list-group-horizontal > .list-group-item + .list-group-item {
  border-top-width: var(--bs-list-group-border-width);
  border-left-width: 0;
}

.list-group-horizontal > .list-group-item + .list-group-item.active {
  margin-left: calc(-1 * var(--bs-list-group-border-width));
  border-left-width: var(--bs-list-group-border-width);
}

@media (min-width: 576px) {
  .list-group-horizontal-sm {
    flex-direction: row;
  }

  .list-group-horizontal-sm > .list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: 0;
  }

  .list-group-horizontal-sm > .list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: 0;
  }

  .list-group-horizontal-sm > .list-group-item.active {
    margin-top: 0;
  }

  .list-group-horizontal-sm > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }

  .list-group-horizontal-sm > .list-group-item + .list-group-item.active {
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
  }
}

@media (min-width: 768px) {
  .list-group-horizontal-md {
    flex-direction: row;
  }

  .list-group-horizontal-md > .list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: 0;
  }

  .list-group-horizontal-md > .list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: 0;
  }

  .list-group-horizontal-md > .list-group-item.active {
    margin-top: 0;
  }

  .list-group-horizontal-md > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }

  .list-group-horizontal-md > .list-group-item + .list-group-item.active {
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
  }
}

@media (min-width: 992px) {
  .list-group-horizontal-lg {
    flex-direction: row;
  }

  .list-group-horizontal-lg > .list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: 0;
  }

  .list-group-horizontal-lg > .list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: 0;
  }

  .list-group-horizontal-lg > .list-group-item.active {
    margin-top: 0;
  }

  .list-group-horizontal-lg > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }

  .list-group-horizontal-lg > .list-group-item + .list-group-item.active {
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
  }
}

@media (min-width: 1200px) {
  .list-group-horizontal-xl {
    flex-direction: row;
  }

  .list-group-horizontal-xl > .list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: 0;
  }

  .list-group-horizontal-xl > .list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: 0;
  }

  .list-group-horizontal-xl > .list-group-item.active {
    margin-top: 0;
  }

  .list-group-horizontal-xl > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }

  .list-group-horizontal-xl > .list-group-item + .list-group-item.active {
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
  }
}

@media (min-width: 1400px) {
  .list-group-horizontal-xxl {
    flex-direction: row;
  }

  .list-group-horizontal-xxl > .list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: 0;
  }

  .list-group-horizontal-xxl > .list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: 0;
  }

  .list-group-horizontal-xxl > .list-group-item.active {
    margin-top: 0;
  }

  .list-group-horizontal-xxl > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }

  .list-group-horizontal-xxl > .list-group-item + .list-group-item.active {
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
  }
}

.list-group-flush {
  border-radius: 0;
}

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

.list-group-flush > .list-group-item:last-child {
  border-bottom-width: 0;
}

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

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

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

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

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

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

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

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

.btn-close {
  --bs-btn-close-color: #333333;
  --bs-btn-close-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23333333'%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(30, 30, 86, 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: 8px;
  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;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: 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: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  max-width: 100%;
  pointer-events: none;
}

.toast-container > :not(:last-child) {
  margin-bottom: var(--bs-toast-spacing);
}

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

.toast-header .btn-close {
  margin-right: calc(-0.5 * var(--bs-toast-padding-x));
  margin-left: var(--bs-toast-padding-x);
}

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

.modal {
  --bs-modal-zindex: 1055;
  --bs-modal-width: 500px;
  --bs-modal-padding: 1rem;
  --bs-modal-margin: 0.5rem;
  --bs-modal-color: ;
  --bs-modal-bg: var(--bs-body-bg);
  --bs-modal-border-color: var(--bs-border-color-translucent);
  --bs-modal-border-width: var(--bs-border-width);
  --bs-modal-border-radius: var(--bs-border-radius-lg);
  --bs-modal-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  --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: #333333;
  --bs-backdrop-opacity: 0.5;
  position: fixed;
  top: 0;
  left: 0;
  z-index: var(--bs-backdrop-zindex);
  width: 100vw;
  height: 100vh;
  background-color: var(--bs-backdrop-bg);
}

.modal-backdrop.fade {
  opacity: 0;
}

.modal-backdrop.show {
  opacity: var(--bs-backdrop-opacity);
}

.modal-header {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: space-between;
  padding: var(--bs-modal-header-padding);
  border-bottom: var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);
  border-top-left-radius: var(--bs-modal-inner-border-radius);
  border-top-right-radius: var(--bs-modal-inner-border-radius);
}

.modal-header .btn-close {
  padding: calc(var(--bs-modal-header-padding-y) * 0.5) calc(var(--bs-modal-header-padding-x) * 0.5);
  margin: calc(-0.5 * var(--bs-modal-header-padding-y)) calc(-0.5 * var(--bs-modal-header-padding-x)) calc(-0.5 * var(--bs-modal-header-padding-y)) auto;
}

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

.modal-body {
  position: relative;
  flex: 1 1 auto;
  padding: var(--bs-modal-padding);
}

.modal-footer {
  display: flex;
  flex-shrink: 0;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  padding: calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap) * 0.5);
  background-color: var(--bs-modal-footer-bg);
  border-top: var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color);
  border-bottom-right-radius: var(--bs-modal-inner-border-radius);
  border-bottom-left-radius: var(--bs-modal-inner-border-radius);
}

.modal-footer > * {
  margin: calc(var(--bs-modal-footer-gap) * 0.5);
}

@media (min-width: 576px) {
  .modal {
    --bs-modal-margin: 1.75rem;
    --bs-modal-box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  }

  .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: "Poppins", "Source Sans Pro", sans-serif;
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  white-space: normal;
  word-spacing: normal;
  line-break: auto;
  font-size: var(--bs-tooltip-font-size);
  word-wrap: break-word;
  opacity: 0;
}

.tooltip.show {
  opacity: var(--bs-tooltip-opacity);
}

.tooltip .tooltip-arrow {
  display: block;
  width: var(--bs-tooltip-arrow-width);
  height: var(--bs-tooltip-arrow-height);
}

.tooltip .tooltip-arrow::before {
  position: absolute;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-tooltip-top .tooltip-arrow,
.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow {
  bottom: calc(-1 * var(--bs-tooltip-arrow-height));
}

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

/* rtl:begin:ignore */

.bs-tooltip-end .tooltip-arrow,
.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow {
  left: calc(-1 * var(--bs-tooltip-arrow-height));
  width: var(--bs-tooltip-arrow-height);
  height: var(--bs-tooltip-arrow-width);
}

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

/* rtl:end:ignore */

.bs-tooltip-bottom .tooltip-arrow,
.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow {
  top: calc(-1 * var(--bs-tooltip-arrow-height));
}

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

/* rtl:begin:ignore */

.bs-tooltip-start .tooltip-arrow,
.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow {
  right: calc(-1 * var(--bs-tooltip-arrow-height));
  width: var(--bs-tooltip-arrow-height);
  height: var(--bs-tooltip-arrow-width);
}

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

/* rtl:end:ignore */

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

.popover {
  --bs-popover-zindex: 1070;
  --bs-popover-max-width: 276px;
  --bs-popover-font-size: 0.875rem;
  --bs-popover-bg: var(--bs-body-bg);
  --bs-popover-border-width: var(--bs-border-width);
  --bs-popover-border-color: var(--bs-border-color-translucent);
  --bs-popover-border-radius: var(--bs-border-radius-lg);
  --bs-popover-inner-border-radius: calc(
    var(--bs-border-radius-lg) - var(--bs-border-width)
  );
  --bs-popover-box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  --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: "Poppins", "Source Sans Pro", sans-serif;
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  white-space: normal;
  word-spacing: normal;
  line-break: auto;
  font-size: var(--bs-popover-font-size);
  word-wrap: break-word;
  background-color: var(--bs-popover-bg);
  background-clip: padding-box;
  border: var(--bs-popover-border-width) solid var(--bs-popover-border-color);
  border-radius: var(--bs-popover-border-radius);
}

.popover .popover-arrow {
  display: block;
  width: var(--bs-popover-arrow-width);
  height: var(--bs-popover-arrow-height);
}

.popover .popover-arrow::before,
.popover .popover-arrow::after {
  position: absolute;
  display: block;
  content: "";
  border-color: transparent;
  border-style: solid;
  border-width: 0;
}

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

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

.bs-popover-top > .popover-arrow::before,
.bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before {
  bottom: 0;
  border-top-color: var(--bs-popover-arrow-border);
}

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

/* rtl:begin:ignore */

.bs-popover-end > .popover-arrow,
.bs-popover-auto[data-popper-placement^=right] > .popover-arrow {
  left: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
  width: var(--bs-popover-arrow-height);
  height: var(--bs-popover-arrow-width);
}

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

.bs-popover-end > .popover-arrow::before,
.bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before {
  left: 0;
  border-right-color: var(--bs-popover-arrow-border);
}

.bs-popover-end > .popover-arrow::after,
.bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {
  left: var(--bs-popover-border-width);
  border-right-color: var(--bs-popover-bg);
}

/* rtl:end:ignore */

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

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

.bs-popover-bottom > .popover-arrow::before,
.bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before {
  top: 0;
  border-bottom-color: var(--bs-popover-arrow-border);
}

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

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

/* rtl:begin:ignore */

.bs-popover-start > .popover-arrow,
.bs-popover-auto[data-popper-placement^=left] > .popover-arrow {
  right: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
  width: var(--bs-popover-arrow-height);
  height: var(--bs-popover-arrow-width);
}

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

.bs-popover-start > .popover-arrow::before,
.bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before {
  right: 0;
  border-left-color: var(--bs-popover-arrow-border);
}

.bs-popover-start > .popover-arrow::after,
.bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {
  right: var(--bs-popover-border-width);
  border-left-color: var(--bs-popover-bg);
}

/* rtl:end:ignore */

.popover-header {
  padding: var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);
  margin-bottom: 0;
  font-size: var(--bs-popover-header-font-size);
  color: var(--bs-popover-header-color);
  background-color: var(--bs-popover-header-bg);
  border-bottom: var(--bs-popover-border-width) solid var(--bs-popover-border-color);
  border-top-left-radius: var(--bs-popover-inner-border-radius);
  border-top-right-radius: var(--bs-popover-inner-border-radius);
}

.popover-header:empty {
  display: none;
}

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

.carousel {
  position: relative;
}

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

.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.carousel-inner::after {
  display: block;
  clear: both;
  content: "";
}

.carousel-item {
  position: relative;
  display: none;
  float: left;
  width: 100%;
  margin-right: -100%;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  transition: transform 0.6s ease-in-out;
}

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

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

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

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

.carousel-fade .carousel-item {
  opacity: 0;
  transition-property: opacity;
  transform: none;
}

.carousel-fade .carousel-item.active,
.carousel-fade .carousel-item-next.carousel-item-start,
.carousel-fade .carousel-item-prev.carousel-item-end {
  z-index: 1;
  opacity: 1;
}

.carousel-fade .active.carousel-item-start,
.carousel-fade .active.carousel-item-end {
  z-index: 0;
  opacity: 0;
  transition: opacity 0s 0.6s;
}

@media (prefers-reduced-motion: reduce) {
  .carousel-fade .active.carousel-item-start,
  .carousel-fade .active.carousel-item-end {
    transition: none;
  }
}

.carousel-control-prev,
.carousel-control-next {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 15%;
  padding: 0;
  color: #ffffff;
  text-align: center;
  background: none;
  border: 0;
  opacity: 0.5;
  transition: opacity 0.15s ease;
}

@media (prefers-reduced-motion: reduce) {
  .carousel-control-prev,
  .carousel-control-next {
    transition: none;
  }
}

.carousel-control-prev:hover,
.carousel-control-prev:focus,
.carousel-control-next:hover,
.carousel-control-next:focus {
  color: #ffffff;
  text-decoration: none;
  outline: 0;
  opacity: 0.9;
}

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

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

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

/* rtl:options: {
  "autoRename": true,
  "stringMap":[ {
    "name"    : "prev-next",
    "search"  : "prev",
    "replace" : "next"
  } ]
} */

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

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

.carousel-indicators {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
  display: flex;
  justify-content: center;
  padding: 0;
  margin-right: 15%;
  margin-bottom: 1rem;
  margin-left: 15%;
}

.carousel-indicators [data-bs-target] {
  box-sizing: content-box;
  flex: 0 1 auto;
  width: 30px;
  height: 3px;
  padding: 0;
  margin-right: 3px;
  margin-left: 3px;
  text-indent: -999px;
  cursor: pointer;
  background-color: #ffffff;
  background-clip: padding-box;
  border: 0;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  opacity: 0.5;
  transition: opacity 0.6s ease;
}

@media (prefers-reduced-motion: reduce) {
  .carousel-indicators [data-bs-target] {
    transition: none;
  }
}

.carousel-indicators .active {
  opacity: 1;
}

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

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

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

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

[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: #333333;
}

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

.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%;
  -webkit-animation: var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name);
          animation: var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name);
}

@-webkit-keyframes spinner-border {
  to {
    transform: rotate(360deg) ;
  }
}

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

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

@-webkit-keyframes spinner-grow {
  0% {
    transform: scale(0);
  }

  50% {
    opacity: 1;
    transform: none;
  }
}

@keyframes spinner-grow {
  0% {
    transform: scale(0);
  }

  50% {
    opacity: 1;
    transform: none;
  }
}

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

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

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

.offcanvas,
.offcanvas-xxl,
.offcanvas-xl,
.offcanvas-lg,
.offcanvas-md,
.offcanvas-sm {
  --bs-offcanvas-zindex: 1045;
  --bs-offcanvas-width: 400px;
  --bs-offcanvas-height: 30vh;
  --bs-offcanvas-padding-x: 1rem;
  --bs-offcanvas-padding-y: 1rem;
  --bs-offcanvas-color: var(--bs-body-color);
  --bs-offcanvas-bg: var(--bs-body-bg);
  --bs-offcanvas-border-width: var(--bs-border-width);
  --bs-offcanvas-border-color: var(--bs-border-color-translucent);
  --bs-offcanvas-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  --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%);
  }
}

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

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

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

@media (max-width: 575.98px) {
  .offcanvas-sm.showing,
  .offcanvas-sm.show:not(.hiding) {
    transform: none;
  }
}

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

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

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

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

@media (max-width: 767.98px) {
  .offcanvas-md.showing,
  .offcanvas-md.show:not(.hiding) {
    transform: none;
  }
}

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

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

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

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

@media (max-width: 991.98px) {
  .offcanvas-lg.showing,
  .offcanvas-lg.show:not(.hiding) {
    transform: none;
  }
}

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

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

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

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

@media (max-width: 1199.98px) {
  .offcanvas-xl.showing,
  .offcanvas-xl.show:not(.hiding) {
    transform: none;
  }
}

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

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

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

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

@media (max-width: 1399.98px) {
  .offcanvas-xxl.showing,
  .offcanvas-xxl.show:not(.hiding) {
    transform: none;
  }
}

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

.offcanvas-backdrop.fade {
  opacity: 0;
}

.offcanvas-backdrop.show {
  opacity: 0.5;
}

.offcanvas-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);
}

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

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

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

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

.placeholder.btn::before {
  display: inline-block;
  content: "";
}

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

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

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

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

@-webkit-keyframes placeholder-glow {
  50% {
    opacity: 0.2;
  }
}

@keyframes placeholder-glow {
  50% {
    opacity: 0.2;
  }
}

.placeholder-wave {
  -webkit-mask-image: linear-gradient(130deg, #333333 55%, rgba(0, 0, 0, 0.8) 75%, #333333 95%);
          mask-image: linear-gradient(130deg, #333333 55%, rgba(0, 0, 0, 0.8) 75%, #333333 95%);
  -webkit-mask-size: 200% 100%;
          mask-size: 200% 100%;
  -webkit-animation: placeholder-wave 2s linear infinite;
          animation: placeholder-wave 2s linear infinite;
}

@-webkit-keyframes placeholder-wave {
  100% {
    -webkit-mask-position: -200% 0%;
            mask-position: -200% 0%;
  }
}

@keyframes placeholder-wave {
  100% {
    -webkit-mask-position: -200% 0%;
            mask-position: -200% 0%;
  }
}

.clearfix::after {
  display: block;
  clear: both;
  content: "";
}

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

.text-bg-secondary {
  color: #333333 !important;
  background-color: RGBA(163, 126, 186, var(--bs-bg-opacity, 1)) !important;
}

.text-bg-success {
  color: #333333 !important;
  background-color: RGBA(76, 175, 80, var(--bs-bg-opacity, 1)) !important;
}

.text-bg-info {
  color: #333333 !important;
  background-color: RGBA(33, 150, 243, var(--bs-bg-opacity, 1)) !important;
}

.text-bg-warning {
  color: #333333 !important;
  background-color: RGBA(255, 152, 0, var(--bs-bg-opacity, 1)) !important;
}

.text-bg-danger {
  color: #ffffff !important;
  background-color: RGBA(244, 67, 54, var(--bs-bg-opacity, 1)) !important;
}

.text-bg-light {
  color: #333333 !important;
  background-color: RGBA(248, 249, 250, var(--bs-bg-opacity, 1)) !important;
}

.text-bg-dark {
  color: #ffffff !important;
  background-color: RGBA(33, 37, 41, var(--bs-bg-opacity, 1)) !important;
}

.link-primary {
  color: RGBA(var(--bs-primary-rgb), var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(var(--bs-primary-rgb), var(--bs-link-underline-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(24, 24, 69, var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(24, 24, 69, var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(24, 24, 69, var(--bs-link-underline-opacity, 1)) !important;
}

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

.link-secondary:hover,
.link-secondary:focus {
  color: RGBA(181, 152, 200, var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(181, 152, 200, var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(181, 152, 200, var(--bs-link-underline-opacity, 1)) !important;
}

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

.link-success:hover,
.link-success:focus {
  color: RGBA(112, 191, 115, var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(112, 191, 115, var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(112, 191, 115, var(--bs-link-underline-opacity, 1)) !important;
}

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

.link-info:hover,
.link-info:focus {
  color: RGBA(77, 171, 245, var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(77, 171, 245, var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(77, 171, 245, var(--bs-link-underline-opacity, 1)) !important;
}

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

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

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

.link-danger:hover,
.link-danger:focus {
  color: RGBA(195, 54, 43, var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(195, 54, 43, var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(195, 54, 43, var(--bs-link-underline-opacity, 1)) !important;
}

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

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

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

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

.link-body-emphasis {
  color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-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;
  -webkit-text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-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;
  -webkit-text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));
          text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));
  text-underline-offset: 0.25em;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

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

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

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

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

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

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

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

.ratio-4x3 {
  --bs-aspect-ratio: 75%;
}

.ratio-16x9 {
  --bs-aspect-ratio: 56.25%;
}

.ratio-21x9 {
  --bs-aspect-ratio: 42.8571428571%;
}

.fixed-top {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030;
}

.fixed-bottom {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1030;
}

.sticky-top {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 1020;
}

.sticky-bottom {
  position: -webkit-sticky;
  position: sticky;
  bottom: 0;
  z-index: 1020;
}

@media (min-width: 576px) {
  .sticky-sm-top {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1020;
  }

  .sticky-sm-bottom {
    position: -webkit-sticky;
    position: sticky;
    bottom: 0;
    z-index: 1020;
  }
}

@media (min-width: 768px) {
  .sticky-md-top {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1020;
  }

  .sticky-md-bottom {
    position: -webkit-sticky;
    position: sticky;
    bottom: 0;
    z-index: 1020;
  }
}

@media (min-width: 992px) {
  .sticky-lg-top {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1020;
  }

  .sticky-lg-bottom {
    position: -webkit-sticky;
    position: sticky;
    bottom: 0;
    z-index: 1020;
  }
}

@media (min-width: 1200px) {
  .sticky-xl-top {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1020;
  }

  .sticky-xl-bottom {
    position: -webkit-sticky;
    position: sticky;
    bottom: 0;
    z-index: 1020;
  }
}

@media (min-width: 1400px) {
  .sticky-xxl-top {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1020;
  }

  .sticky-xxl-bottom {
    position: -webkit-sticky;
    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: 1px;
  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 {
  -o-object-fit: contain !important;
     object-fit: contain !important;
}

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

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

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

.object-fit-none {
  -o-object-fit: none !important;
     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: 0 4px 6px rgba(0, 0, 0, 0.1) !important;
}

.shadow-sm {
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1) !important;
}

.shadow-lg {
  box-shadow: 0 10px 15px rgba(0, 0, 0, 0.1) !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

/* rtl:begin:remove */

.text-break {
  word-wrap: break-word !important;
  word-break: break-word !important;
}

/* rtl:end:remove */

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

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

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

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

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

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

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

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

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

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

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

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

.text-black-50 {
  --bs-text-opacity: 1;
  color: rgba(51, 51, 51, 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;
  -webkit-text-decoration-color: rgba(var(--bs-primary-rgb), var(--bs-link-underline-opacity)) !important;
          text-decoration-color: rgba(var(--bs-primary-rgb), var(--bs-link-underline-opacity)) !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.user-select-auto {
  -webkit-user-select: auto !important;
     -moz-user-select: auto !important;
      -ms-user-select: auto !important;
          user-select: auto !important;
}

.user-select-none {
  -webkit-user-select: none !important;
     -moz-user-select: none !important;
      -ms-user-select: none !important;
          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 {
    -o-object-fit: contain !important;
       object-fit: contain !important;
  }

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

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

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

  .object-fit-sm-none {
    -o-object-fit: none !important;
       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 {
    -moz-column-gap: 0 !important;
         column-gap: 0 !important;
  }

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

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

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

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

  .column-gap-sm-5 {
    -moz-column-gap: 3rem !important;
         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 {
    -o-object-fit: contain !important;
       object-fit: contain !important;
  }

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

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

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

  .object-fit-md-none {
    -o-object-fit: none !important;
       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 {
    -moz-column-gap: 0 !important;
         column-gap: 0 !important;
  }

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

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

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

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

  .column-gap-md-5 {
    -moz-column-gap: 3rem !important;
         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 {
    -o-object-fit: contain !important;
       object-fit: contain !important;
  }

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

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

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

  .object-fit-lg-none {
    -o-object-fit: none !important;
       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 {
    -moz-column-gap: 0 !important;
         column-gap: 0 !important;
  }

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

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

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

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

  .column-gap-lg-5 {
    -moz-column-gap: 3rem !important;
         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 {
    -o-object-fit: contain !important;
       object-fit: contain !important;
  }

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

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

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

  .object-fit-xl-none {
    -o-object-fit: none !important;
       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 {
    -moz-column-gap: 0 !important;
         column-gap: 0 !important;
  }

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

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

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

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

  .column-gap-xl-5 {
    -moz-column-gap: 3rem !important;
         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 {
    -o-object-fit: contain !important;
       object-fit: contain !important;
  }

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

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

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

  .object-fit-xxl-none {
    -o-object-fit: none !important;
       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 {
    -moz-column-gap: 0 !important;
         column-gap: 0 !important;
  }

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

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

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

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

  .column-gap-xxl-5 {
    -moz-column-gap: 3rem !important;
         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;
  }
}

/**
 * Shared Button Styles
 *
 * Base button styles used across frontend and backend
 */

.btn {
  font-weight: 500;
  padding: 8px 20px;
  font-size: 1rem;
  border-radius: 0;
  transition: all 0.3s ease;
}

.btn:hover {
  text-decoration: none;
}

.btn:focus,
.btn.focus {
  outline: 0;
  box-shadow: 0 0 0 3px rgba(30, 30, 86, 0.25);
}

.btn.disabled,
.btn:disabled {
  opacity: 0.65;
  cursor: not-allowed;
}

.btn:active,
.btn.active {
  background-image: none;
}

.btn-primary {
  --bs-btn-color: #ffffff;
  --bs-btn-bg: #1e1e56;
  --bs-btn-border-color: #ffffff;
  --bs-btn-hover-color: #ffffff;
  --bs-btn-hover-bg: #1a1a49;
  --bs-btn-hover-border-color: #cccccc;
  --bs-btn-focus-shadow-rgb: 255, 255, 255;
  --bs-btn-active-color: #ffffff;
  --bs-btn-active-bg: #181845;
  --bs-btn-active-border-color: #bfbfbf;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(51, 51, 51, 0.125);
  --bs-btn-disabled-color: #ffffff;
  --bs-btn-disabled-bg: #1e1e56;
  --bs-btn-disabled-border-color: #ffffff;
}

.btn-primary:hover {
  background-color: #32328a !important;
  border-color: #32328a !important;
}

.btn-primary:focus,
.btn-primary:active,
.btn-primary.active {
  background-color: #32328a !important;
  border-color: #32328a !important;
}

.btn-primary:not(:disabled):not(.disabled):active,
.btn-primary:not(:disabled):not(.disabled).active {
  background-color: #32328a !important;
  border-color: #32328a !important;
}

.btn-secondary {
  --bs-btn-color: #333333;
  --bs-btn-bg: #a37eba;
  --bs-btn-border-color: #ffffff;
  --bs-btn-hover-color: #333333;
  --bs-btn-hover-bg: #b191c4;
  --bs-btn-hover-border-color: white;
  --bs-btn-focus-shadow-rgb: 224, 224, 224;
  --bs-btn-active-color: #333333;
  --bs-btn-active-bg: #b598c8;
  --bs-btn-active-border-color: white;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(51, 51, 51, 0.125);
  --bs-btn-disabled-color: #333333;
  --bs-btn-disabled-bg: #a37eba;
  --bs-btn-disabled-border-color: #ffffff;
}

.btn-success {
  --bs-btn-color: #333333;
  --bs-btn-bg: #4caf50;
  --bs-btn-border-color: #ffffff;
  --bs-btn-hover-color: #333333;
  --bs-btn-hover-bg: #67bb6a;
  --bs-btn-hover-border-color: white;
  --bs-btn-focus-shadow-rgb: 224, 224, 224;
  --bs-btn-active-color: #333333;
  --bs-btn-active-bg: #70bf73;
  --bs-btn-active-border-color: white;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(51, 51, 51, 0.125);
  --bs-btn-disabled-color: #333333;
  --bs-btn-disabled-bg: #4caf50;
  --bs-btn-disabled-border-color: #ffffff;
}

.btn-info {
  --bs-btn-color: #333333;
  --bs-btn-bg: #2196f3;
  --bs-btn-border-color: #ffffff;
  --bs-btn-hover-color: #333333;
  --bs-btn-hover-bg: #42a6f5;
  --bs-btn-hover-border-color: white;
  --bs-btn-focus-shadow-rgb: 224, 224, 224;
  --bs-btn-active-color: #333333;
  --bs-btn-active-bg: #4dabf5;
  --bs-btn-active-border-color: white;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(51, 51, 51, 0.125);
  --bs-btn-disabled-color: #333333;
  --bs-btn-disabled-bg: #2196f3;
  --bs-btn-disabled-border-color: #ffffff;
}

.btn-warning {
  --bs-btn-color: #333333;
  --bs-btn-bg: #ff9800;
  --bs-btn-border-color: #ffffff;
  --bs-btn-hover-color: #333333;
  --bs-btn-hover-bg: #ffa726;
  --bs-btn-hover-border-color: white;
  --bs-btn-focus-shadow-rgb: 224, 224, 224;
  --bs-btn-active-color: #333333;
  --bs-btn-active-bg: #ffad33;
  --bs-btn-active-border-color: white;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(51, 51, 51, 0.125);
  --bs-btn-disabled-color: #333333;
  --bs-btn-disabled-bg: #ff9800;
  --bs-btn-disabled-border-color: #ffffff;
}

.btn-danger {
  --bs-btn-color: #ffffff;
  --bs-btn-bg: #f44336;
  --bs-btn-border-color: #ffffff;
  --bs-btn-hover-color: #ffffff;
  --bs-btn-hover-bg: #cf392e;
  --bs-btn-hover-border-color: #cccccc;
  --bs-btn-focus-shadow-rgb: 255, 255, 255;
  --bs-btn-active-color: #ffffff;
  --bs-btn-active-bg: #c3362b;
  --bs-btn-active-border-color: #bfbfbf;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(51, 51, 51, 0.125);
  --bs-btn-disabled-color: #ffffff;
  --bs-btn-disabled-bg: #f44336;
  --bs-btn-disabled-border-color: #ffffff;
}

.btn-light {
  --bs-btn-color: #333333;
  --bs-btn-bg: #f8f9fa;
  --bs-btn-border-color: #5f6062;
  --bs-btn-hover-color: #333333;
  --bs-btn-hover-bg: #f9fafb;
  --bs-btn-hover-border-color: #6f7072;
  --bs-btn-focus-shadow-rgb: 88, 89, 91;
  --bs-btn-active-color: #333333;
  --bs-btn-active-bg: #f9fafb;
  --bs-btn-active-border-color: #6f7072;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(51, 51, 51, 0.125);
  --bs-btn-disabled-color: #333333;
  --bs-btn-disabled-bg: #f8f9fa;
  --bs-btn-disabled-border-color: #5f6062;
}

.btn-dark {
  --bs-btn-color: #ffffff;
  --bs-btn-bg: #5f6062;
  --bs-btn-border-color: #ffffff;
  --bs-btn-hover-color: #ffffff;
  --bs-btn-hover-bg: #515253;
  --bs-btn-hover-border-color: #cccccc;
  --bs-btn-focus-shadow-rgb: 255, 255, 255;
  --bs-btn-active-color: #ffffff;
  --bs-btn-active-bg: #4c4d4e;
  --bs-btn-active-border-color: #bfbfbf;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(51, 51, 51, 0.125);
  --bs-btn-disabled-color: #ffffff;
  --bs-btn-disabled-bg: #5f6062;
  --bs-btn-disabled-border-color: #ffffff;
}

.btn-outline-primary {
  color: #1e1e56;
  border-color: #6c757d;
  background-color: transparent;
  border-radius: 0;
}

.btn-outline-primary:hover {
  color: #ffffff;
  background-color: #1e1e56;
  border-color: #1e1e56;
}

.btn-outline-primary:focus,
.btn-outline-primary:active {
  border-color: #6c757d;
  box-shadow: 0 0 0 0.2rem rgba(30, 30, 86, 0.25);
}

.btn-lg,
.btn-group-lg > .btn {
  padding: 12px 30px;
  font-size: 1.125rem;
}

.btn-sm,
.btn-group-sm > .btn {
  padding: 5px 15px;
  font-size: 0.875rem;
}

.btn-block {
  display: block;
  width: 100%;
}

.btn-icon {
  padding: 8px;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.btn-icon.btn-sm,
.btn-group-sm > .btn-icon.btn {
  width: 32px;
  height: 32px;
}

.btn-icon.btn-lg,
.btn-group-lg > .btn-icon.btn {
  width: 48px;
  height: 48px;
}

/**
 * Quill Editor Styles
 * Consistent styling for Quill WYSIWYG editors across the application
 */

.quill-wrapper {
  margin-bottom: 1rem;
  border: 1px solid #dee2e6;
  border-radius: 0.375rem;
  overflow: hidden;
}

.quill-wrapper .quill-editor-container {
  background: white;
  height: auto !important;
  min-height: auto !important;
}

.quill-wrapper .ql-toolbar {
  border: none;
  border-bottom: 1px solid #dee2e6;
  background: #f8f9fa;
}

.quill-wrapper .ql-toolbar.ql-snow {
  padding: 8px;
}

.quill-wrapper .ql-container {
  border: none;
  font-family: inherit;
}

.quill-wrapper .ql-container.ql-snow {
  border: none;
}

.quill-wrapper .ql-editor {
  font-size: 16px;
  line-height: 1.6;
  min-height: 150px;
  max-height: 400px;
  overflow-y: auto;
  padding: 12px 15px;
}

.quill-wrapper .ql-editor p,
.quill-wrapper .ql-editor ol,
.quill-wrapper .ql-editor ul,
.quill-wrapper .ql-editor blockquote {
  font-size: 16px;
  margin-bottom: 0.75rem;
}

.quill-wrapper .ql-editor h1,
.quill-wrapper .ql-editor .h1 {
  font-size: 2em;
  margin-bottom: 0.75rem;
}

.quill-wrapper .ql-editor h2,
.quill-wrapper .ql-editor .h2 {
  font-size: 1.5em;
  margin-bottom: 0.75rem;
}

.quill-wrapper .ql-editor h3,
.quill-wrapper .ql-editor .h3 {
  font-size: 1.25em;
  margin-bottom: 0.75rem;
}

.quill-wrapper .ql-editor.ql-blank::before {
  font-size: 16px;
  color: #6c757d;
  font-style: normal;
  left: 15px;
  right: 15px;
}

.quill-wrapper.quill-simple .ql-editor {
  min-height: 100px;
  max-height: 250px;
}

.quill-wrapper.quill-full .ql-editor {
  min-height: 200px;
  max-height: 500px;
}

.quill-wrapper.quill-inline {
  border: none;
  margin-bottom: 0;
}

.quill-wrapper.quill-inline .ql-toolbar {
  border: 1px solid #dee2e6;
  border-bottom: none;
  border-radius: 0.375rem 0.375rem 0 0;
}

.quill-wrapper.quill-inline .ql-container {
  border: 1px solid #dee2e6;
  border-top: none;
  border-radius: 0 0 0.375rem 0.375rem;
}

textarea[data-wysiwyg=quill].quill-initialized {
  display: none;
}

/**
 * Star Rating Component Styles
 */

.star-rating-widget {
  display: inline-block;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.star-rating-widget.readonly .star-rating-display i {
  color: #ff9800;
  margin-right: 2px;
}

.star-rating-widget.interactive .star-rating-input {
  display: inline-flex;
  align-items: center;
  gap: 2px;
}

.star-rating-widget.interactive .star-rating-input .star-wrapper {
  position: relative;
  cursor: pointer;
  display: inline-block;
}

.star-rating-widget.interactive .star-rating-input .star-wrapper .star-radio {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

.star-rating-widget.interactive .star-rating-input .star-wrapper i {
  color: #ddd;
  transition: color 0.2s ease;
}

.star-rating-widget.interactive .star-rating-input .star-wrapper i.fas.fa-star {
  color: #ff9800;
}

.star-rating-widget.interactive .star-rating-input .star-wrapper:hover i {
  color: #ff9800;
}

.star-rating-widget.interactive .star-rating-input .star-clear-btn {
  background: none;
  border: none;
  color: #6c757d;
  cursor: pointer;
  padding: 0;
  margin-left: 8px;
  font-size: 16px;
  line-height: 1;
}

.star-rating-widget.interactive .star-rating-input .star-clear-btn:hover {
  color: #dc3545;
}

.star-rating-widget.star-rating-sm {
  font-size: 14px;
}

.star-rating-widget.star-rating-sm .star-rating-input {
  gap: 1px;
}

.star-rating-widget.star-rating-md {
  font-size: 30px;
}

.star-rating-widget.star-rating-md .star-rating-input {
  gap: 3px;
}

.star-rating-widget.star-rating-lg {
  font-size: 28px;
}

.star-rating-widget.star-rating-lg .star-rating-input {
  gap: 3px;
}

.backend-form .star-rating-widget.interactive .star-rating-input {
  background: #f8f9fa;
  padding: 8px 12px;
  border-radius: 4px;
  border: 1px solid #dee2e6;
}

.backend-form .star-rating-widget.interactive .star-rating-input:focus-within {
  border-color: #80bdff;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.review-form .star-rating-widget.interactive {
  margin-bottom: 15px;
}

.review-form .star-rating-widget.interactive .star-rating-input i {
  font-size: 24px;
}

.review-item .star-rating-widget.readonly .star-rating-display i {
  font-size: 14px;
}

.review-editor-modal .star-rating-widget.interactive .star-rating-input i {
  font-size: 18px;
}

/**
 * Select2 Accessibility Improvements
 * 
 * Fixes keyboard navigation visibility and improves overall accessibility
 * for Select2 dropdowns across the application.
 */

.select2-container .select2-results__option--highlighted[aria-selected],
.select2-container .select2-results__option--highlighted.select2-results__option--selectable {
  background-color: #0d6efd !important;
  color: #ffffff !important;
}

.select2-container .select2-results__option--highlighted[aria-selected]:hover,
.select2-container .select2-results__option--highlighted.select2-results__option--selectable:hover {
  background-color: #0b5ed7 !important;
  color: #ffffff !important;
}

.select2-container.select2-container--focus .select2-selection {
  border-color: #86b7fe !important;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25) !important;
}

.select2-container .select2-selection:focus,
.select2-container .select2-selection.select2-keyboard-focused {
  border-color: #86b7fe !important;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25) !important;
}

.select2-container .select2-search__field:focus {
  border-color: #86b7fe !important;
  outline: 0;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 0 0.2rem rgba(13, 110, 253, 0.25) !important;
}

.select2-container--bootstrap-5 .select2-results__option--highlighted[aria-selected],
.select2-container--bootstrap-5 .select2-results__option--highlighted.select2-results__option--selectable {
  background-color: #0d6efd !important;
  color: #ffffff !important;
}

.select2-container--bootstrap-5 .select2-results__option[aria-selected=false] {
  background-color: #ffffff;
  color: #212529;
}

.select2-container--bootstrap-5 .select2-results__option[aria-selected=false]:hover {
  background-color: #f8f9fa;
  color: #212529;
}

.select2-container--bootstrap-5 .select2-results__option[aria-selected=true] {
  background-color: #e9ecef;
  color: #212529;
  font-weight: 500;
}

.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable {
  background-color: #007bff !important;
  color: #ffffff !important;
}

@media (prefers-contrast: high) {
  .select2-container .select2-results__option--highlighted[aria-selected],
  .select2-container .select2-results__option--highlighted.select2-results__option--selectable {
    background-color: #000080 !important;
    color: #ffffff !important;
    border: 2px solid #ffffff !important;
  }
}

@media (prefers-color-scheme: dark) {
  .select2-container .select2-results__option--highlighted[aria-selected],
  .select2-container .select2-results__option--highlighted.select2-results__option--selectable {
    background-color: #0d6efd !important;
    color: #ffffff !important;
  }
}

/**
 * Cookie Consent Banner Styles
 *
 * Styles for the cookie consent banner that appears at the bottom of pages.
 *
 * @see resources/views/shared/partials/cookie-consent-banner.blade.php
 * @see resources/js/shared/components/cookie-consent-banner.js
 */

.cookie-consent-banner {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.95), rgba(0, 0, 0, 0.98));
  color: #ffffff;
  padding: 15px 0;
  z-index: 10000;
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
  box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.3);
  -webkit-animation: slideUp 0.3s ease-out;
          animation: slideUp 0.3s ease-out;
}

.cookie-consent-banner p {
  line-height: 1.5;
}

.cookie-consent-banner .btn-outline-light {
  border-color: rgba(255, 255, 255, 0.4);
  color: #ffffff;
}

.cookie-consent-banner .btn-outline-light:hover {
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.6);
  color: #ffffff;
}

/* Animations */

@-webkit-keyframes slideUp {
  from {
    transform: translateY(100%);
  }

  to {
    transform: translateY(0);
  }
}

@keyframes slideUp {
  from {
    transform: translateY(100%);
  }

  to {
    transform: translateY(0);
  }
}

@-webkit-keyframes slideDown {
  from {
    transform: translateY(0);
  }

  to {
    transform: translateY(100%);
  }
}

@keyframes slideDown {
  from {
    transform: translateY(0);
  }

  to {
    transform: translateY(100%);
  }
}

/* Add padding to body when banner is shown to prevent content overlap */

body.has-cookie-banner {
  padding-bottom: 0px;
}

/**
 * Enhanced DataTable Styles
 *
 * Styles for the enhanced datatable component including:
 * - DataTables wrapper padding
 * - Info and pagination padding
 * - Sorting indicators
 * - Checkbox styles
 * - Selected row highlighting
 * - Filter toggle button
 * - Bulk action group
 *
 * @see resources/views/shared/partials/tables/enhanced-datatable.blade.php
 * @see resources/js/shared/components/enhanced-datatable.js
 */

.enhanced-datatable .dataTables_wrapper {
  padding: 0;
}

.enhanced-datatable .dataTables_info,
.enhanced-datatable .dataTables_paginate {
  padding: 1rem 0;
}

.enhanced-datatable .dataTables_length,
.enhanced-datatable .dataTables_filter {
  padding: 0.5rem 0;
}

.enhanced-datatable .table th,
.enhanced-datatable .prose table th,
.prose .enhanced-datatable table th {
  position: relative;
}

.enhanced-datatable th.sorting:after,
.enhanced-datatable th.sorting_asc:after,
.enhanced-datatable th.sorting_desc:after {
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
}

.enhanced-datatable th.no-sort:after {
  display: none !important;
}

.enhanced-datatable .select-all-checkbox,
.enhanced-datatable .row-checkbox {
  cursor: pointer;
}

.enhanced-datatable .selected-row {
  background-color: rgba(var(--bs-primary-rgb), 0.1) !important;
}

.enhanced-datatable .filter-toggle-btn {
  cursor: pointer;
}

.enhanced-datatable [id$=_filter_container] {
  transition: all 0.3s ease;
}

.enhanced-datatable .bulk-action-group {
  max-width: 300px;
}

/**
 * Toggle Switch Styles
 *
 * Styles for toggle switch component including:
 * - Small and large size variants
 * - Loading state
 * - Error state
 *
 * @see resources/views/shared/partials/ui/toggle-switch.blade.php
 * @see resources/js/shared/components/toggle-switch.js
 */

.form-switch-sm .form-check-input {
  height: 1rem;
  width: 1.75rem;
}

.form-switch-lg .form-check-input {
  height: 1.5rem;
  width: 2.75rem;
}

.form-check-input.is-loading {
  opacity: 0.5;
  cursor: wait;
}

.form-check-input.toggle-error {
  border-color: #dc3545;
}

/**
 * Notifications Dropdown Styles
 *
 * Styles for notifications dropdown component including:
 * - Dropdown sizing
 * - Unread notification highlighting
 * - Notification item styling
 *
 * @see resources/views/shared/partials/ui/notifications-dropdown.blade.php
 * @see resources/js/shared/components/notifications-dropdown.js
 */

.notifications-dropdown {
  min-width: 320px;
}

.notifications-dropdown .notification-item {
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
  transition: background-color 0.2s ease;
}

.notifications-dropdown .notification-item:hover {
  background-color: rgba(0, 0, 0, 0.02);
}

.notifications-dropdown .notification-item.unread {
  background-color: rgba(var(--bs-primary-rgb), 0.05);
}

.notifications-dropdown .notification-item.unread:hover {
  background-color: rgba(var(--bs-primary-rgb), 0.08);
}

.notifications-dropdown .notification-item:last-child {
  border-bottom: none;
}

@media (max-width: 767px) {
  .notifications-dropdown {
    width: 280px;
  }
}

/**
 * Frontend Reset Styles
 * 
 * Normalize browser defaults for consistent rendering
 */

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

html,
body,
h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6,
p,
ol,
ul,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

ol,
ul {
  padding: 0;
  list-style: none;
}

body {
  min-height: 100vh;
  scroll-behavior: smooth;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
  font-family: "Poppins", "Source Sans Pro", sans-serif;
  font-size: 1rem;
  color: #101010;
  background-color: #ffffff;
}

img,
picture {
  max-width: 100%;
  display: block;
  height: auto;
}

input,
button,
textarea,
select {
  font: inherit;
}

@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    -webkit-animation-duration: 0.01ms !important;
            animation-duration: 0.01ms !important;
    -webkit-animation-iteration-count: 1 !important;
            animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/**
 * Frontend Typography
 * 
 * Typography styles for the frontend
 */

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5 {
  font-family: "Playfair Display", serif;
  font-weight: 700;
  line-height: 1.2;
  color: #101010;
  margin-bottom: 0.5rem;
}

h6,
.h6 {
  font-family: "Poppins", "Source Sans Pro", sans-serif;
}

h1,
.h1 {
  font-size: 2.25rem;
}

@media (min-width: 992px) {
  h1,
  .h1 {
    font-size: 3rem;
  }
}

h2,
.h2 {
  font-size: 1.75rem;
}

@media (min-width: 992px) {
  h2,
  .h2 {
    font-size: 2.25rem;
  }
}

h3,
.h3 {
  font-size: 1.375rem;
}

@media (min-width: 992px) {
  h3,
  .h3 {
    font-size: 1.75rem;
  }
}

h4,
.h4 {
  font-size: 1.125rem;
}

@media (min-width: 992px) {
  h4,
  .h4 {
    font-size: 1.375rem;
  }
}

h5,
.h5 {
  font-size: 1rem;
}

@media (min-width: 992px) {
  h5,
  .h5 {
    font-size: 1.125rem;
  }
}

h6,
.h6 {
  font-size: 0.875rem;
}

@media (min-width: 992px) {
  h6,
  .h6 {
    font-size: 1rem;
  }
}

p {
  margin-bottom: 1rem;
}

p:last-child {
  margin-bottom: 0;
}

ul,
ol {
  margin-bottom: 1rem;
  padding-left: 2rem;
}

ul li,
ol li {
  margin-bottom: 0.5rem;
}

ul {
  list-style-type: disc;
}

ol {
  list-style-type: decimal;
}

blockquote {
  margin: 2rem 0;
  padding: 1rem 2rem;
  border-left: 4px solid #1e1e56;
  font-style: italic;
  color: #78797c;
}

code {
  padding: 2px 4px;
  font-size: 90%;
  color: #f44336;
  background-color: #f8f9fa;
  border-radius: 4px;
}

pre {
  display: block;
  padding: 1rem;
  margin: 1rem 0;
  font-size: 0.875rem;
  line-height: 1.4;
  color: #5f6062;
  background-color: #f8f9fa;
  border-radius: 8px;
  overflow-x: auto;
}

pre code {
  padding: 0;
  font-size: inherit;
  color: inherit;
  background-color: transparent;
  border-radius: 0;
}

.text-primary {
  color: #1e1e56 !important;
}

.text-secondary {
  color: #a37eba !important;
}

.text-success {
  color: #4caf50 !important;
}

.text-danger {
  color: #f44336 !important;
}

.text-warning {
  color: #ff9800 !important;
}

.text-info {
  color: #2196f3 !important;
}

.text-muted {
  color: #3b3c3c !important;
}

.font-weight-normal {
  font-weight: 400 !important;
}

.font-weight-medium {
  font-weight: 500 !important;
}

.font-weight-bold {
  font-weight: 700 !important;
}

.text-left {
  text-align: left !important;
}

.text-center {
  text-align: center !important;
}

.text-right {
  text-align: right !important;
}

.text-lowercase {
  text-transform: lowercase !important;
}

.text-uppercase {
  text-transform: uppercase !important;
}

.text-capitalize {
  text-transform: capitalize !important;
}

/**
 * Frontend Utility Classes
 * 
 * Common utility classes and overrides for the frontend
 */

.min-vh-100 {
  min-height: calc(100vh - 200px) !important;
  margin-top: 100px;
  margin-bottom: 100px;
}

@media (max-width: 768px) {
  .min-vh-100 {
    min-height: calc(100vh - 100px) !important;
    margin-top: 50px;
    margin-bottom: 50px;
  }
}

@media (max-width: 576px) {
  .min-vh-100 {
    min-height: calc(100vh - 50px) !important;
    margin-top: 25px;
    margin-bottom: 25px;
  }
}

.full-vh-100 {
  min-height: 100vh !important;
  margin: 0;
}

.page-centered {
  min-height: calc(100vh - 200px);
  margin-bottom: 100px;
  display: flex;
  align-items: center;
}

@media (max-width: 768px) {
  .page-centered {
    min-height: calc(100vh - 100px);
    margin-bottom: 50px;
  }
}

@media (max-width: 576px) {
  .page-centered {
    min-height: calc(100vh - 50px);
    margin-bottom: 25px;
  }
}

.spacer-top {
  padding-top: 100px;
}

@media (max-width: 768px) {
  .spacer-top {
    padding-top: 50px;
  }
}

@media (max-width: 576px) {
  .spacer-top {
    padding-top: 25px;
  }
}

.spacer-bottom {
  padding-bottom: 100px;
}

@media (max-width: 768px) {
  .spacer-bottom {
    padding-bottom: 50px;
  }
}

@media (max-width: 576px) {
  .spacer-bottom {
    padding-bottom: 25px;
  }
}

.text-elegant {
  font-family: "Playfair Display", serif;
  letter-spacing: 0.05em;
}

.opacity-10 {
  opacity: 0.1 !important;
}

.opacity-25 {
  opacity: 0.25 !important;
}

.opacity-50 {
  opacity: 0.5 !important;
}

.opacity-75 {
  opacity: 0.75 !important;
}

.opacity-90 {
  opacity: 0.9 !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;
}

.z-10 {
  z-index: 10 !important;
}

.z-20 {
  z-index: 20 !important;
}

.transition-all {
  transition: all 0.3s ease;
}

.transition-transform {
  transition: transform 0.3s ease;
}

.transition-opacity {
  transition: opacity 0.3s ease;
}

.hover-lift:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}

.hover-scale:hover {
  transform: scale(1.05);
}

.cursor-pointer {
  cursor: pointer !important;
}

.cursor-not-allowed {
  cursor: not-allowed !important;
}

.overflow-x-auto {
  overflow-x: auto !important;
}

.overflow-y-auto {
  overflow-y: auto !important;
}

.overflow-x-hidden {
  overflow-x: hidden !important;
}

.overflow-y-hidden {
  overflow-y: hidden !important;
}

main {
  background-color: #f6f7f9;
  min-height: calc(100vh - 200px);
}

[x-cloak] {
  display: none !important;
}

.btn-link {
  text-decoration: none !important;
}

.btn-link:hover,
.btn-link:focus {
  text-decoration: none !important;
}

.form-control,
.select2-container--bootstrap4 .select2-selection,
.form-select,
.form-control:focus,
.form-select:focus {
  border-radius: 0 !important;
}

.form-control,
.select2-container--bootstrap4 .select2-selection,
.form-select {
  border-color: #dad9d9 !important;
  padding: 0.475rem 0.85rem !important;
}

.input-group > .form-control,
.select2-container--bootstrap4 .input-group > .select2-selection,
.input-group > .form-select,
.input-group > .input-group-text,
.input-group > .btn {
  border-radius: 0 !important;
}

.input-group > :first-child {
  border-top-left-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
}

.input-group > :last-child {
  border-top-right-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}

.input-group > :not(:first-child):not(.dropdown-menu) {
  border-top-left-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
}

.input-group .input-group-text {
  border-color: #dad9d9;
  padding: 0.475rem 0.85rem;
}

.was-validated .form-control:valid,
.was-validated .select2-container--bootstrap4 .select2-selection:valid,
.select2-container--bootstrap4 .was-validated .select2-selection:valid,
.was-validated .form-control:invalid,
.was-validated .select2-container--bootstrap4 .select2-selection:invalid,
.select2-container--bootstrap4 .was-validated .select2-selection:invalid {
  background-image: none !important;
}

.was-validated .form-control:valid,
.was-validated .select2-container--bootstrap4 .select2-selection:valid,
.select2-container--bootstrap4 .was-validated .select2-selection:valid {
  border-color: var(--bs-success);
}

.was-validated .form-control:invalid,
.was-validated .select2-container--bootstrap4 .select2-selection:invalid,
.select2-container--bootstrap4 .was-validated .select2-selection:invalid {
  border-color: var(--bs-danger);
}

.was-validated .form-control:invalid + .select2 .select2-selection,
.was-validated .select2-container--bootstrap4 .select2-selection:invalid + .select2 .select2-selection,
.select2-container--bootstrap4 .was-validated .select2-selection:invalid + .select2 .select2-selection {
  border-color: var(--bs-danger);
}

.alert ul {
  margin-bottom: 0;
  padding-left: 1.25rem;
}

.alert ul:last-child {
  margin-bottom: 0;
}

.alert p:last-child {
  margin-bottom: 0;
}

.rounded-img {
  border-radius: 50% !important;
  width: 60px;
  height: 60px;
  -o-object-fit: cover;
     object-fit: cover;
}

.error-help-block {
  display: block;
}

.toast-top-right {
  top: 80px;
}

#toast-container > div {
  color: #ffffff !important;
  opacity: 1 !important;
}

#toast-container > div.toast-success {
  background-color: #28a745 !important;
  color: #ffffff !important;
}

#toast-container > div.toast-error {
  background-color: #dc3545 !important;
  color: #ffffff !important;
}

#toast-container > div.toast-info {
  background-color: #17a2b8 !important;
  color: #ffffff !important;
}

#toast-container > div.toast-warning {
  background-color: #ffc107 !important;
  color: #212529 !important;
}

#toast-container > div:hover {
  opacity: 1 !important;
}

.toast-close-button {
  color: #ffffff !important;
  text-shadow: none !important;
}

.toast-close-button:hover,
.toast-close-button:focus {
  color: #cccccc !important;
  opacity: 0.8 !important;
}

.select2-container--bootstrap4 .select2-selection {
  height: auto;
  padding: 0.375rem 0.75rem;
}

.hr-header-spacer {
  border: none;
  border-top: 1px solid #212529;
  border-bottom: 1px solid rgba(14, 14, 14, 0.18);
  margin: 0;
}

.hr-footer-spacer {
  border: none;
  border-top: 1px solid rgba(14, 14, 14, 0.18);
  border-bottom: 1px solid #212529;
  margin: 0;
  margin-top: 0;
  width: 100%;
}

.caratx-header .top-header .top-buttons {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 1rem;
}

.caratx-header .top-header .top-buttons > * {
  display: flex;
  align-items: center;
}

.caratx-header .top-header .top-buttons .btn-link {
  vertical-align: middle;
  line-height: 1;
}

.caratx-header .top-header .top-buttons .dropdown button {
  display: flex;
  align-items: center;
  vertical-align: middle;
  line-height: 1;
}

.caratx-header .top-header .logo-container img {
  max-height: 60px;
  width: auto;
}

.caratx-header .navbar .nav-link {
  color: #313131;
  font-size: 15px;
  font-weight: 500;
  padding: 0.75rem 1rem;
  position: relative;
  transition: color 0.3s ease;
}

.caratx-header .navbar .nav-link:hover,
.caratx-header .navbar .nav-link:focus {
  color: var(--bs-primary);
}

.caratx-header .navbar .dropdown-toggle::after {
  display: none !important;
}

.caratx-header .mega-menu {
  border-radius: 0 0 8px 8px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
  border: none;
  min-height: 200px;
}

.caratx-header .mega-menu .mega-menu-scroll::-webkit-scrollbar {
  width: 6px;
}

.caratx-header .mega-menu .mega-menu-scroll::-webkit-scrollbar-track {
  background: #f1f1f1;
  border-radius: 3px;
}

.caratx-header .mega-menu .mega-menu-scroll::-webkit-scrollbar-thumb {
  background: #888;
  border-radius: 3px;
}

.caratx-header .mega-menu .mega-menu-scroll::-webkit-scrollbar-thumb:hover {
  background: #555;
}

.caratx-header .mega-menu .mega-menu-column {
  min-height: 180px;
}

.caratx-header .mega-menu .mega-menu-column .mega-menu-content {
  flex-grow: 1;
}

.caratx-header .mega-menu .mega-menu-column .mega-menu-action {
  margin-top: auto;
  padding-top: 1rem;
}

.caratx-header .dropdown-menu {
  min-height: 150px;
}

.caratx-header .dropdown-menu .mega-menu-column {
  min-height: 130px;
}

.caratx-header .menu-btn:focus {
  box-shadow: none;
}

.caratx-header #mobileMenu .accordion-button {
  background: none;
  box-shadow: none;
  font-weight: 500;
}

.caratx-header #mobileMenu .accordion-button:not(.collapsed) {
  color: var(--bs-primary);
  background: none;
}

.caratx-header #mobileMenu .accordion-button::after {
  margin-left: auto;
}

.caratx-header #mobileMenu .nav-link {
  padding: 0.5rem 0;
  font-weight: 500;
}

.header-search {
  position: relative;
}

.header-search input[type=text] {
  width: 100%;
  height: 50px;
  padding: 10px 45px 10px 20px;
  font-size: 16px;
  background: transparent;
  border: 1px solid #d6d8d9;
  border-radius: 10px;
  transition: border-color 0.3s ease;
}

.header-search input[type=text]:focus {
  outline: none;
  border-color: var(--bs-primary);
}

.header-search .search-button {
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%);
  border: none;
  background: none;
  color: #5f6062;
  cursor: pointer;
  padding: 5px;
  transition: color 0.3s ease;
}

.header-search .search-button:hover {
  color: var(--bs-primary);
}

.header-search .header-search-list {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 1000;
  background: #fff;
  border: 1px solid #d6d8d9;
  border-top: none;
  border-radius: 0 0 10px 10px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  max-height: 350px;
  overflow-y: auto;
}

.header-search .header-search-list ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.header-search .header-search-list li {
  padding: 8px 15px;
  border-bottom: 1px solid #f0f0f0;
}

.header-search .header-search-list li:last-child {
  border-bottom: none;
}

.header-search .header-search-list li:hover,
.header-search .header-search-list li.selected {
  background: #f5f5f5;
}

.header-search .header-search-list li a {
  color: #333;
  text-decoration: none;
  display: block;
}

.header-search .header-search-list .view-all-results {
  background-color: #f9f9f9;
  text-align: center;
  font-weight: 500;
}

.bg-purple {
  background-color: #a37eba;
}

.bg-teal {
  background-color: #7ebaad;
}

@media (max-width: 991.98px) {
  .caratx-header .top-header .logo-container img {
    max-height: 50px;
  }
}

@media (max-width: 767.98px) {
  .caratx-header .top-buttons .btn-link {
    padding: 0.25rem;
  }
}

/**
 * Product Card Component
 *
 * Minimal custom styling for Bootstrap 5 product cards
 */

.bg-purple {
  background-color: #a37eba !important;
}

.bg-teal {
  background-color: #7ebaad !important;
}

.product-badges {
  top: 0.75rem;
  left: 0.75rem;
  z-index: 1;
}

.product-badges .badge + .badge {
  margin-top: 0.25rem;
}

.product-type-badge {
  top: 0.75rem;
  right: 0.75rem;
  z-index: 1;
}

/**
 * Product Carousel Component Styles
 * Bootstrap 5 carousel enhancements for product displays
 */

.carousel .carousel-control-prev,
.carousel .carousel-control-next {
  width: 5%;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.carousel .carousel-control-prev .carousel-control-prev-icon,
.carousel .carousel-control-prev .carousel-control-next-icon,
.carousel .carousel-control-next .carousel-control-prev-icon,
.carousel .carousel-control-next .carousel-control-next-icon {
  width: 2rem;
  height: 2rem;
}

.carousel .carousel-control-prev .carousel-control-prev-icon.bg-dark,
.carousel .carousel-control-prev .carousel-control-next-icon.bg-dark,
.carousel .carousel-control-next .carousel-control-prev-icon.bg-dark,
.carousel .carousel-control-next .carousel-control-next-icon.bg-dark {
  background-color: rgba(var(--bs-dark-rgb), 0.8) !important;
}

.carousel .carousel-control-prev .carousel-control-prev-icon.bg-dark:hover,
.carousel .carousel-control-prev .carousel-control-next-icon.bg-dark:hover,
.carousel .carousel-control-next .carousel-control-prev-icon.bg-dark:hover,
.carousel .carousel-control-next .carousel-control-next-icon.bg-dark:hover {
  background-color: var(--bs-dark) !important;
}

.carousel:hover .carousel-control-prev,
.carousel:hover .carousel-control-next {
  opacity: 1;
}

.carousel .carousel-indicators {
  position: relative;
  margin: 0;
  padding: 0;
  bottom: auto;
}

.carousel .carousel-indicators button {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: var(--bs-gray-400);
  border: none;
  margin: 0 4px;
  transition: all 0.3s ease;
}

.carousel .carousel-indicators button.active {
  background-color: var(--bs-primary);
  transform: scale(1.2);
}

.carousel .carousel-indicators button:hover:not(.active) {
  background-color: var(--bs-gray-600);
}

.carousel.product-carousel .carousel-inner {
  padding: 1rem 0;
}

.carousel.product-carousel .carousel-item .row {
  align-items: stretch;
}

.carousel.product-carousel .carousel-item .row > [class*=col-] {
  display: flex;
}

.carousel.product-carousel .carousel-item .row > [class*=col-] .product-card {
  width: 100%;
}

@media (max-width: 768px) {
  .carousel .carousel-inner .row {
    margin: 0 -5px;
  }

  .carousel .carousel-inner .col-12 {
    padding: 0 5px;
  }

  .carousel .carousel-control-prev,
  .carousel .carousel-control-next {
    width: 10%;
  }
}

@media (hover: none) {
  .carousel .carousel-control-prev,
  .carousel .carousel-control-next {
    opacity: 1;
  }
}

.cart-updated {
  -webkit-animation: cartBounce 0.5s ease;
          animation: cartBounce 0.5s ease;
}

@-webkit-keyframes cartBounce {
  0% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.2);
  }

  100% {
    transform: scale(1);
  }
}

@keyframes cartBounce {
  0% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.2);
  }

  100% {
    transform: scale(1);
  }
}

.header-cart-wrapper .dropdown-menu:before {
  content: "";
  position: absolute;
  top: -10px;
  right: 10px;
  width: 20px;
  height: 20px;
  background: transparent;
}

.header-wishlist-wrapper a {
  transition: transform 0.2s ease;
}

.header-wishlist-wrapper a:hover .fa-heart {
  color: var(--bs-danger) !important;
}

.wishlist-count-badge {
  min-width: 18px;
  line-height: 1;
}

.wishlist-updated {
  -webkit-animation: wishlistPulse 0.5s ease;
          animation: wishlistPulse 0.5s ease;
}

@-webkit-keyframes wishlistPulse {
  0% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.3);
  }

  100% {
    transform: scale(1);
  }
}

@keyframes wishlistPulse {
  0% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.3);
  }

  100% {
    transform: scale(1);
  }
}

.wishlist-toggle-btn {
  position: relative;
  transition: all 0.3s ease;
}

.wishlist-toggle-btn.wishlist-loading {
  opacity: 0.7;
  cursor: wait;
}

.wishlist-toggle-btn .fa-heart {
  transition: all 0.3s ease;
}

.wishlist-toggle-btn .fa-heart.wishlist-pulse {
  -webkit-animation: heartBeat 0.8s ease infinite;
          animation: heartBeat 0.8s ease infinite;
}

.wishlist-toggle-btn .fa-heart.wishlist-filled {
  -webkit-animation: fillHeart 0.4s ease;
          animation: fillHeart 0.4s ease;
}

@-webkit-keyframes heartBeat {
  0%, 100% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.15);
  }
}

@keyframes heartBeat {
  0%, 100% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.15);
  }
}

@-webkit-keyframes fillHeart {
  0% {
    transform: scale(0.8) rotate(-45deg);
  }

  50% {
    transform: scale(1.3) rotate(-45deg);
  }

  100% {
    transform: scale(1) rotate(0deg);
  }
}

@keyframes fillHeart {
  0% {
    transform: scale(0.8) rotate(-45deg);
  }

  50% {
    transform: scale(1.3) rotate(-45deg);
  }

  100% {
    transform: scale(1) rotate(0deg);
  }
}

@-webkit-keyframes fadeInScale {
  0% {
    opacity: 0;
    transform: scale(0.5);
  }

  100% {
    opacity: 1;
    transform: scale(1);
  }
}

@keyframes fadeInScale {
  0% {
    opacity: 0;
    transform: scale(0.5);
  }

  100% {
    opacity: 1;
    transform: scale(1);
  }
}

@-webkit-keyframes fadeOutScale {
  0% {
    opacity: 1;
    transform: scale(1);
  }

  100% {
    opacity: 0;
    transform: scale(0.5);
  }
}

@keyframes fadeOutScale {
  0% {
    opacity: 1;
    transform: scale(1);
  }

  100% {
    opacity: 0;
    transform: scale(0.5);
  }
}

@media (max-width: 768px) {
  .wishlist-toggle-btn {
    min-width: 44px;
    min-height: 44px;
  }

  .wishlist-toggle-btn.btn-sm,
  .btn-group-sm > .wishlist-toggle-btn.btn {
    padding: 0.5rem;
  }

  .header-wishlist-wrapper {
    margin: 0 0.25rem;
  }
}

.wishlist-skeleton .skeleton-item {
  background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
  background-size: 200% 100%;
  -webkit-animation: loading 1.5s infinite;
          animation: loading 1.5s infinite;
  border-radius: 0.375rem;
}

.wishlist-skeleton .skeleton-item.skeleton-image {
  height: 200px;
  margin-bottom: 1rem;
}

.wishlist-skeleton .skeleton-item.skeleton-text {
  height: 20px;
  margin-bottom: 0.5rem;
}

.wishlist-skeleton .skeleton-item.skeleton-text.skeleton-title {
  width: 80%;
}

.wishlist-skeleton .skeleton-item.skeleton-text.skeleton-price {
  width: 40%;
}

@-webkit-keyframes loading {
  0% {
    background-position: 200% 0;
  }

  100% {
    background-position: -200% 0;
  }
}

@keyframes loading {
  0% {
    background-position: 200% 0;
  }

  100% {
    background-position: -200% 0;
  }
}

/**
 * Frontend DataTable Component Styles
 * Enhanced for Bootstrap 5 with modern design patterns
 */

.frontend-datatable-container {
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075), 0 0.05rem 0.1rem rgba(0, 0, 0, 0.06);
}

.frontend-datatable-container .card-header.bg-light {
  background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%) !important;
}

.frontend-datatable-container .card-header .card-title {
  font-weight: 600;
  letter-spacing: -0.025em;
}

.frontend-datatable-container .card-body .form-label {
  font-size: 0.875rem;
  font-weight: 600;
  color: #495057;
  margin-bottom: 0.5rem;
}

.frontend-datatable-container .card-body .form-label i {
  opacity: 0.7;
}

.frontend-datatable-container .card-body .form-control,
.frontend-datatable-container .card-body .select2-container--bootstrap4 .select2-selection,
.select2-container--bootstrap4 .frontend-datatable-container .card-body .select2-selection,
.frontend-datatable-container .card-body .form-select {
  font-size: 0.875rem;
  border: 1px solid #dee2e6;
  transition: all 0.15s ease-in-out;
}

.frontend-datatable-container .card-body .form-control:focus,
.frontend-datatable-container .card-body .select2-container--bootstrap4 .select2-selection:focus,
.select2-container--bootstrap4 .frontend-datatable-container .card-body .select2-selection:focus,
.frontend-datatable-container .card-body .form-select:focus {
  border-color: #86b7fe;
  box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.25);
}

.frontend-datatable-container .card-body .form-control:hover:not(:focus),
.frontend-datatable-container .card-body .select2-container--bootstrap4 .select2-selection:hover:not(:focus),
.select2-container--bootstrap4 .frontend-datatable-container .card-body .select2-selection:hover:not(:focus),
.frontend-datatable-container .card-body .form-select:hover:not(:focus) {
  border-color: #b6d7ff;
}

.frontend-datatable-container .card-body .input-group .input-group-text {
  background: #f8f9fa;
  border-color: #dee2e6;
}

.frontend-datatable-container .card-body .input-group .input-group-text.border-end-0 {
  border-right: 0;
}

.frontend-datatable-container .card-body .input-group .form-control.border-start-0,
.frontend-datatable-container .card-body .input-group .select2-container--bootstrap4 .border-start-0.select2-selection,
.select2-container--bootstrap4 .frontend-datatable-container .card-body .input-group .border-start-0.select2-selection {
  border-left: 0;
}

.frontend-datatable-container .card-body .input-group .form-control.border-start-0:focus,
.frontend-datatable-container .card-body .input-group .select2-container--bootstrap4 .border-start-0.select2-selection:focus,
.select2-container--bootstrap4 .frontend-datatable-container .card-body .input-group .border-start-0.select2-selection:focus {
  box-shadow: none;
}

.frontend-datatable-container .card-body .input-group .form-control.border-start-0:focus + .input-group-text,
.frontend-datatable-container .card-body .input-group .select2-container--bootstrap4 .border-start-0.select2-selection:focus + .input-group-text,
.select2-container--bootstrap4 .frontend-datatable-container .card-body .input-group .border-start-0.select2-selection:focus + .input-group-text {
  border-color: #86b7fe;
}

.frontend-datatable-container .datatable-bulk-actions {
  margin: 0 1rem 1rem 1rem;
  border-radius: 0.5rem;
  background: linear-gradient(135deg, #d1ecf1 0%, #bee5eb 100%) !important;
  border: 1px solid rgba(23, 162, 184, 0.2) !important;
}

.frontend-datatable-container .datatable-bulk-actions .badge {
  font-size: 0.75rem;
  font-weight: 600;
  padding: 0.5rem 0.75rem;
}

.frontend-datatable-container .datatable-bulk-actions .btn-info {
  --bs-btn-bg: #17a2b8;
  --bs-btn-border-color: #17a2b8;
  --bs-btn-hover-bg: #138496;
  --bs-btn-hover-border-color: #117a8b;
  font-weight: 500;
}

.frontend-datatable-container .table,
.frontend-datatable-container .prose table,
.prose .frontend-datatable-container table {
  --bs-table-bg: transparent;
}

.frontend-datatable-container .table thead th,
.frontend-datatable-container .prose table thead th,
.prose .frontend-datatable-container table thead th {
  background: #f8f9fa !important;
  border-bottom: 2px solid #dee2e6;
  color: #6c757d;
  font-weight: 600;
  font-size: 0.875rem;
  padding: 1rem 0.75rem;
  white-space: nowrap;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.frontend-datatable-container .table thead th.border-0,
.frontend-datatable-container .prose table thead th.border-0,
.prose .frontend-datatable-container table thead th.border-0 {
  border-top: 0;
  border-left: 0;
  border-right: 0;
}

.frontend-datatable-container .table tbody td,
.frontend-datatable-container .prose table tbody td,
.prose .frontend-datatable-container table tbody td {
  padding: 0.875rem 0.75rem;
  vertical-align: middle;
  font-size: 0.875rem;
  color: #495057;
  border-bottom: 1px solid #e9ecef;
}

.frontend-datatable-container .table tbody tr,
.frontend-datatable-container .prose table tbody tr,
.prose .frontend-datatable-container table tbody tr {
  transition: background-color 0.15s ease-in-out;
}

.frontend-datatable-container .table tbody tr:hover,
.frontend-datatable-container .prose table tbody tr:hover,
.prose .frontend-datatable-container table tbody tr:hover {
  background-color: rgba(13, 110, 253, 0.05);
}

.frontend-datatable-container .table tbody tr:last-child td,
.frontend-datatable-container .prose table tbody tr:last-child td,
.prose .frontend-datatable-container table tbody tr:last-child td {
  border-bottom: 0;
}

.frontend-datatable-container .card-footer.bg-light {
  background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%) !important;
}

.frontend-datatable-container .card-footer .btn {
  font-weight: 500;
  font-size: 0.875rem;
  padding: 0.5rem 1rem;
  transition: all 0.15s ease-in-out;
}

.dataTables_wrapper .dataTables_length,
.dataTables_wrapper .dataTables_filter {
  display: none;
}

.dataTables_wrapper .dataTables_info {
  color: #6c757d;
  font-size: 0.875rem;
  font-weight: 500;
  padding: 1rem 0.75rem 0.5rem 0.75rem;
  margin: 0;
}

.dataTables_wrapper .dataTables_paginate {
  padding: 0.5rem 0.75rem 1rem 0.75rem;
}

.dataTables_wrapper .dataTables_paginate .pagination {
  margin: 0;
  justify-content: center;
}

@media (min-width: 768px) {
  .dataTables_wrapper .dataTables_paginate .pagination {
    justify-content: flex-end;
  }
}

.dataTables_wrapper .page-link {
  color: #6c757d;
  border: 1px solid #dee2e6;
  padding: 0.5rem 0.75rem;
  font-size: 0.875rem;
  font-weight: 500;
  transition: all 0.15s ease-in-out;
}

.dataTables_wrapper .page-link:focus {
  box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.25);
}

.dataTables_wrapper .page-item.active .page-link {
  background-color: #0d6efd;
  border-color: #0d6efd;
  color: #fff;
  box-shadow: 0 0.125rem 0.25rem rgba(13, 110, 253, 0.4);
}

.dataTables_wrapper .page-item.disabled .page-link {
  color: #adb5bd;
  background-color: #fff;
  border-color: #dee2e6;
  opacity: 0.6;
}

.dataTables_processing {
  background: rgba(255, 255, 255, 0.95) !important;
  border: 1px solid #dee2e6 !important;
  border-radius: 0.5rem !important;
  padding: 2rem !important;
  text-align: center;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  z-index: 1050 !important;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  -webkit-backdrop-filter: blur(4px);
          backdrop-filter: blur(4px);
}

.dataTables_empty {
  text-align: center !important;
  padding: 3rem 2rem !important;
}

.dataTables_empty i {
  opacity: 0.6;
}

.dataTables_empty h6,
.dataTables_empty .h6 {
  margin-top: 1rem;
  margin-bottom: 0.5rem;
  font-weight: 600;
}

.dataTables_empty small,
.dataTables_empty .small {
  color: #6c757d;
}

.btn-InProcess {
  background: linear-gradient(135deg, #ffc107 0%, #ffb300 100%);
  color: #000;
  border: none;
  font-weight: 600;
}

.btn-OutForDelivery {
  background: linear-gradient(135deg, #17a2b8 0%, #138496 100%);
  color: #fff;
  border: none;
  font-weight: 600;
}

.btn-delivered {
  background: linear-gradient(135deg, #28a745 0%, #1e7e34 100%);
  color: #fff;
  border: none;
  font-weight: 600;
}

.btn-beingPackaged {
  background: linear-gradient(135deg, #6c757d 0%, #545b62 100%);
  color: #fff;
  border: none;
  font-weight: 600;
}

.btn-InProcess,
.btn-OutForDelivery,
.btn-delivered,
.btn-beingPackaged {
  padding: 0.25rem 0.75rem;
  font-size: 0.75rem;
  font-weight: 600;
  border-radius: 1rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  transition: all 0.15s ease-in-out;
}

.btn-viewOrder {
  background: linear-gradient(135deg, #0d6efd 0%, #0b5ed7 100%);
  color: #fff;
  border: none;
  padding: 0.5rem 1.25rem;
  font-size: 0.875rem;
  font-weight: 500;
  border-radius: 0.375rem;
  transition: all 0.2s ease-in-out;
}

.btn-view-question {
  background: linear-gradient(135deg, #17a2b8 0%, #138496 100%);
  color: #fff;
  border: none;
  padding: 0.375rem 1rem;
  font-size: 0.8125rem;
  font-weight: 500;
  border-radius: 0.375rem;
  transition: all 0.2s ease-in-out;
}

.btn-view-question i {
  margin-right: 0.25rem;
}

@media (max-width: 991.98px) {
  .frontend-datatable-container .card-body {
    padding: 1rem;
  }

  .frontend-datatable-container .card-body .row.g-3 > * {
    margin-bottom: 1rem;
  }

  .frontend-datatable-container .dataTables_wrapper .dataTables_info,
  .frontend-datatable-container .dataTables_wrapper .dataTables_paginate {
    text-align: center;
    padding-left: 1rem;
    padding-right: 1rem;
  }
}

@media (max-width: 767.98px) {
  .frontend-datatable-container {
    margin: 0 -0.5rem;
    border-radius: 0;
    box-shadow: none;
    border-left: 0;
    border-right: 0;
  }

  .frontend-datatable-container .card-body {
    padding: 0.75rem;
  }

  .frontend-datatable-container .table,
  .frontend-datatable-container .prose table,
  .prose .frontend-datatable-container table {
    font-size: 0.8125rem;
  }

  .frontend-datatable-container .table thead th,
  .frontend-datatable-container .prose table thead th,
  .prose .frontend-datatable-container table thead th,
  .frontend-datatable-container .table tbody td,
  .frontend-datatable-container .prose table tbody td,
  .prose .frontend-datatable-container table tbody td {
    padding: 0.5rem 0.375rem;
  }

  .frontend-datatable-container .datatable-bulk-actions {
    margin: 0 0.75rem 1rem 0.75rem;
  }

  .frontend-datatable-container .datatable-bulk-actions .d-flex {
    flex-direction: column;
    gap: 0.75rem;
    align-items: stretch !important;
  }

  .frontend-datatable-container .datatable-bulk-actions .d-flex .d-flex {
    flex-direction: row;
  }
}

/**
 * Toast/Toastr Z-Index Overrides
 * 
 * This file ensures toast notifications appear BELOW header dropdown menus.
 * Bootstrap dropdowns use z-index: 1000, so we set toasts to 999.
 */

#toast-container {
  z-index: 999 !important;
}

#toast-container > div {
  z-index: 999 !important;
}

.toast-container {
  z-index: 999 !important;
}

.toast {
  z-index: 999 !important;
}

.toast-top-right,
.toast-top-left,
.toast-top-center,
.toast-top-full-width,
.toast-bottom-right,
.toast-bottom-left,
.toast-bottom-center,
.toast-bottom-full-width {
  z-index: 999 !important;
}

/**
 * Dynamic Form Component Styles
 * Enhancements for dynamic form builder
 */

.dynamic-form-container .form-field-wrapper .form-control,
.dynamic-form-container .form-field-wrapper .select2-container--bootstrap4 .select2-selection,
.select2-container--bootstrap4 .dynamic-form-container .form-field-wrapper .select2-selection,
.dynamic-form-container .form-field-wrapper .form-select {
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.dynamic-form-container .form-field-wrapper .form-control:focus,
.dynamic-form-container .form-field-wrapper .select2-container--bootstrap4 .select2-selection:focus,
.select2-container--bootstrap4 .dynamic-form-container .form-field-wrapper .select2-selection:focus,
.dynamic-form-container .form-field-wrapper .form-select:focus {
  border-color: var(--bs-primary);
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-primary-rgb), 0.15);
}

.dynamic-form-container .checkbox-group,
.dynamic-form-container .radio-group {
  padding: 0.5rem 0;
}

.dynamic-form-container .checkbox-group .form-check,
.dynamic-form-container .radio-group .form-check {
  padding-left: 1.75rem;
}

.dynamic-form-container .checkbox-group .form-check:hover,
.dynamic-form-container .radio-group .form-check:hover {
  background-color: var(--bs-gray-100);
  margin-left: -0.5rem;
  margin-right: -0.5rem;
  padding-left: 2.25rem;
  padding-right: 0.5rem;
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  border-radius: var(--bs-border-radius);
  transition: all 0.2s ease-in-out;
}

.dynamic-form-container .file-input-wrapper .form-control[type=file]::-webkit-file-upload-button,
.dynamic-form-container .file-input-wrapper .select2-container--bootstrap4 [type=file].select2-selection::-webkit-file-upload-button,
.select2-container--bootstrap4 .dynamic-form-container .file-input-wrapper [type=file].select2-selection::-webkit-file-upload-button {
  padding: 0.375rem 0.75rem;
  margin: -0.375rem -0.75rem;
  -webkit-margin-end: 0.75rem;
          margin-inline-end: 0.75rem;
  color: var(--bs-btn-color);
  background-color: var(--bs-btn-bg);
  border: 0;
  -webkit-border-end: var(--bs-border-width) solid var(--bs-border-color);
          border-inline-end: var(--bs-border-width) solid var(--bs-border-color);
  border-radius: 0;
  -webkit-transition: all 0.15s ease-in-out;
  transition: all 0.15s ease-in-out;
}

.dynamic-form-container .file-input-wrapper .form-control[type=file]:hover:not(:disabled):not([readonly])::-webkit-file-upload-button,
.dynamic-form-container .file-input-wrapper .select2-container--bootstrap4 [type=file].select2-selection:hover:not(:disabled):not([readonly])::-webkit-file-upload-button,
.select2-container--bootstrap4 .dynamic-form-container .file-input-wrapper [type=file].select2-selection:hover:not(:disabled):not([readonly])::-webkit-file-upload-button {
  background-color: var(--bs-btn-hover-bg);
}

.dynamic-form-container .file-input-wrapper .image-preview {
  text-align: center;
}

.dynamic-form-container .file-input-wrapper .image-preview img {
  max-width: 100%;
  height: auto;
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
}

.dynamic-form-container .character-counter {
  font-size: 0.875rem;
  text-align: right;
  margin-top: 0.25rem;
}

.dynamic-form-container .form-submit-wrapper {
  border-top: 1px solid var(--bs-gray-300);
  padding-top: 1.5rem;
  margin-top: 2rem;
}

.dynamic-form-container .form-submit-wrapper .btn-primary {
  font-weight: 500;
  letter-spacing: 0.025em;
  position: relative;
  overflow: hidden;
}

.dynamic-form-container .form-submit-wrapper .btn-primary:not(:disabled):hover {
  transform: translateY(-1px);
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.15);
}

.dynamic-form-container .form-submit-wrapper .btn-primary:disabled {
  cursor: wait;
}

@media (min-width: 768px) {
  .dynamic-form-container .row.g-4 .form-field-wrapper.field-type-textarea {
    grid-column: 1/-1;
  }
}

.dynamic-form-container .needs-validation .invalid-feedback,
.dynamic-form-container .needs-validation .error-help-block {
  display: block;
  font-size: 0.875rem;
  margin-top: 0.25rem;
}

.dynamic-form-container .needs-validation .invalid-feedback::before,
.dynamic-form-container .needs-validation .error-help-block::before {
  content: "⚠ ";
}

.was-validated .dynamic-form-container .needs-validation .form-control:valid,
.was-validated .dynamic-form-container .needs-validation .select2-container--bootstrap4 .select2-selection:valid,
.select2-container--bootstrap4 .was-validated .dynamic-form-container .needs-validation .select2-selection:valid,
.was-validated .dynamic-form-container .needs-validation .form-select:valid {
  border-color: var(--bs-success);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.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 .dynamic-form-container .needs-validation .form-control:valid:focus,
.was-validated .dynamic-form-container .needs-validation .select2-container--bootstrap4 .select2-selection:valid:focus,
.select2-container--bootstrap4 .was-validated .dynamic-form-container .needs-validation .select2-selection:valid:focus,
.was-validated .dynamic-form-container .needs-validation .form-select:valid:focus {
  border-color: var(--bs-success);
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);
}

.dynamic-form-container.is-loading {
  position: relative;
}

.dynamic-form-container.is-loading::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(255, 255, 255, 0.8);
  z-index: 10;
  cursor: wait;
}

.dynamic-form-container .form-floating label.active {
  transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}

.dynamic-form-container .g-recaptcha {
  display: inline-block;
}

@media (max-width: 575.98px) {
  .dynamic-form-container .g-recaptcha {
    transform: scale(0.9);
    transform-origin: 0 0;
  }
}

@media (prefers-color-scheme: dark) {
  .dynamic-form-container .checkbox-group .form-check:hover,
  .dynamic-form-container .radio-group .form-check:hover {
    background-color: rgba(255, 255, 255, 0.05);
  }
}

/**
 * Frontend Form Styles
 *
 * Complete form system for frontend/customer-facing pages
 * Uses Bootstrap 5 with square corners design
 */

.frontend-form .mb-3,
.frontend-form .form-group,
.customer-form .mb-3,
.customer-form .form-group,
.checkout-form .mb-3,
.checkout-form .form-group,
.account-form .mb-3,
.account-form .form-group,
.product-form .mb-3,
.product-form .form-group,
.main form:not(.search-form):not(.header-search-form) .mb-3,
.main form:not(.search-form):not(.header-search-form) .form-group,
.modal:not(.admin-modal) form .mb-3,
.modal:not(.admin-modal) form .form-group {
  margin-bottom: 1.5rem;
}

.frontend-form .form-label,
.frontend-form label,
.customer-form .form-label,
.customer-form label,
.checkout-form .form-label,
.checkout-form label,
.account-form .form-label,
.account-form label,
.product-form .form-label,
.product-form label,
.main form:not(.search-form):not(.header-search-form) .form-label,
.main form:not(.search-form):not(.header-search-form) label,
.modal:not(.admin-modal) form .form-label,
.modal:not(.admin-modal) form label {
  display: inline-block;
  margin-bottom: 0.5rem;
  font-weight: 500;
  color: #333;
  font-size: 0.9375rem;
}

.frontend-form .required,
.customer-form .required,
.checkout-form .required,
.account-form .required,
.product-form .required,
.main form:not(.search-form):not(.header-search-form) .required,
.modal:not(.admin-modal) form .required {
  color: #dc3545;
  margin-left: 0.25rem;
}

.frontend-form .form-control,
.frontend-form .select2-container--bootstrap4 .select2-selection,
.select2-container--bootstrap4 .frontend-form .select2-selection,
.customer-form .form-control,
.customer-form .select2-container--bootstrap4 .select2-selection,
.select2-container--bootstrap4 .customer-form .select2-selection,
.checkout-form .form-control,
.checkout-form .select2-container--bootstrap4 .select2-selection,
.select2-container--bootstrap4 .checkout-form .select2-selection,
.account-form .form-control,
.account-form .select2-container--bootstrap4 .select2-selection,
.select2-container--bootstrap4 .account-form .select2-selection,
.product-form .form-control,
.product-form .select2-container--bootstrap4 .select2-selection,
.select2-container--bootstrap4 .product-form .select2-selection,
.main form:not(.search-form):not(.header-search-form) .form-control,
.main form:not(.search-form):not(.header-search-form) .select2-container--bootstrap4 .select2-selection,
.select2-container--bootstrap4 .main form:not(.search-form):not(.header-search-form) .select2-selection,
.modal:not(.admin-modal) form .form-control,
.modal:not(.admin-modal) form .select2-container--bootstrap4 .select2-selection,
.select2-container--bootstrap4 .modal:not(.admin-modal) form .select2-selection {
  display: block;
  width: 100%;
  height: 42px;
  padding: 0.475rem 0.85rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #dad9d9;
  border-radius: 0 !important;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.frontend-form .form-control:focus,
.frontend-form .select2-container--bootstrap4 .select2-selection:focus,
.select2-container--bootstrap4 .frontend-form .select2-selection:focus,
.customer-form .form-control:focus,
.customer-form .select2-container--bootstrap4 .select2-selection:focus,
.select2-container--bootstrap4 .customer-form .select2-selection:focus,
.checkout-form .form-control:focus,
.checkout-form .select2-container--bootstrap4 .select2-selection:focus,
.select2-container--bootstrap4 .checkout-form .select2-selection:focus,
.account-form .form-control:focus,
.account-form .select2-container--bootstrap4 .select2-selection:focus,
.select2-container--bootstrap4 .account-form .select2-selection:focus,
.product-form .form-control:focus,
.product-form .select2-container--bootstrap4 .select2-selection:focus,
.select2-container--bootstrap4 .product-form .select2-selection:focus,
.main form:not(.search-form):not(.header-search-form) .form-control:focus,
.main form:not(.search-form):not(.header-search-form) .select2-container--bootstrap4 .select2-selection:focus,
.select2-container--bootstrap4 .main form:not(.search-form):not(.header-search-form) .select2-selection:focus,
.modal:not(.admin-modal) form .form-control:focus,
.modal:not(.admin-modal) form .select2-container--bootstrap4 .select2-selection:focus,
.select2-container--bootstrap4 .modal:not(.admin-modal) form .select2-selection:focus {
  color: #212529;
  background-color: #fff;
  border-color: #1E1E56;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(30, 30, 86, 0.25);
}

.frontend-form .form-control::-moz-placeholder, .frontend-form .select2-container--bootstrap4 .select2-selection::-moz-placeholder, .select2-container--bootstrap4 .frontend-form .select2-selection::-moz-placeholder, .customer-form .form-control::-moz-placeholder, .customer-form .select2-container--bootstrap4 .select2-selection::-moz-placeholder, .select2-container--bootstrap4 .customer-form .select2-selection::-moz-placeholder, .checkout-form .form-control::-moz-placeholder, .checkout-form .select2-container--bootstrap4 .select2-selection::-moz-placeholder, .select2-container--bootstrap4 .checkout-form .select2-selection::-moz-placeholder, .account-form .form-control::-moz-placeholder, .account-form .select2-container--bootstrap4 .select2-selection::-moz-placeholder, .select2-container--bootstrap4 .account-form .select2-selection::-moz-placeholder, .product-form .form-control::-moz-placeholder, .product-form .select2-container--bootstrap4 .select2-selection::-moz-placeholder, .select2-container--bootstrap4 .product-form .select2-selection::-moz-placeholder, .main form:not(.search-form):not(.header-search-form) .form-control::-moz-placeholder, .main form:not(.search-form):not(.header-search-form) .select2-container--bootstrap4 .select2-selection::-moz-placeholder, .select2-container--bootstrap4 .main form:not(.search-form):not(.header-search-form) .select2-selection::-moz-placeholder, .modal:not(.admin-modal) form .form-control::-moz-placeholder, .modal:not(.admin-modal) form .select2-container--bootstrap4 .select2-selection::-moz-placeholder, .select2-container--bootstrap4 .modal:not(.admin-modal) form .select2-selection::-moz-placeholder {
  color: #6c757d;
  opacity: 1;
}

.frontend-form .form-control:-ms-input-placeholder, .frontend-form .select2-container--bootstrap4 .select2-selection:-ms-input-placeholder, .select2-container--bootstrap4 .frontend-form .select2-selection:-ms-input-placeholder, .customer-form .form-control:-ms-input-placeholder, .customer-form .select2-container--bootstrap4 .select2-selection:-ms-input-placeholder, .select2-container--bootstrap4 .customer-form .select2-selection:-ms-input-placeholder, .checkout-form .form-control:-ms-input-placeholder, .checkout-form .select2-container--bootstrap4 .select2-selection:-ms-input-placeholder, .select2-container--bootstrap4 .checkout-form .select2-selection:-ms-input-placeholder, .account-form .form-control:-ms-input-placeholder, .account-form .select2-container--bootstrap4 .select2-selection:-ms-input-placeholder, .select2-container--bootstrap4 .account-form .select2-selection:-ms-input-placeholder, .product-form .form-control:-ms-input-placeholder, .product-form .select2-container--bootstrap4 .select2-selection:-ms-input-placeholder, .select2-container--bootstrap4 .product-form .select2-selection:-ms-input-placeholder, .main form:not(.search-form):not(.header-search-form) .form-control:-ms-input-placeholder, .main form:not(.search-form):not(.header-search-form) .select2-container--bootstrap4 .select2-selection:-ms-input-placeholder, .select2-container--bootstrap4 .main form:not(.search-form):not(.header-search-form) .select2-selection:-ms-input-placeholder, .modal:not(.admin-modal) form .form-control:-ms-input-placeholder, .modal:not(.admin-modal) form .select2-container--bootstrap4 .select2-selection:-ms-input-placeholder, .select2-container--bootstrap4 .modal:not(.admin-modal) form .select2-selection:-ms-input-placeholder {
  color: #6c757d;
  opacity: 1;
}

.frontend-form .form-control::placeholder,
.frontend-form .select2-container--bootstrap4 .select2-selection::placeholder,
.select2-container--bootstrap4 .frontend-form .select2-selection::placeholder,
.customer-form .form-control::placeholder,
.customer-form .select2-container--bootstrap4 .select2-selection::placeholder,
.select2-container--bootstrap4 .customer-form .select2-selection::placeholder,
.checkout-form .form-control::placeholder,
.checkout-form .select2-container--bootstrap4 .select2-selection::placeholder,
.select2-container--bootstrap4 .checkout-form .select2-selection::placeholder,
.account-form .form-control::placeholder,
.account-form .select2-container--bootstrap4 .select2-selection::placeholder,
.select2-container--bootstrap4 .account-form .select2-selection::placeholder,
.product-form .form-control::placeholder,
.product-form .select2-container--bootstrap4 .select2-selection::placeholder,
.select2-container--bootstrap4 .product-form .select2-selection::placeholder,
.main form:not(.search-form):not(.header-search-form) .form-control::placeholder,
.main form:not(.search-form):not(.header-search-form) .select2-container--bootstrap4 .select2-selection::placeholder,
.select2-container--bootstrap4 .main form:not(.search-form):not(.header-search-form) .select2-selection::placeholder,
.modal:not(.admin-modal) form .form-control::placeholder,
.modal:not(.admin-modal) form .select2-container--bootstrap4 .select2-selection::placeholder,
.select2-container--bootstrap4 .modal:not(.admin-modal) form .select2-selection::placeholder {
  color: #6c757d;
  opacity: 1;
}

.frontend-form .form-control:disabled,
.frontend-form .select2-container--bootstrap4 .select2-selection:disabled,
.select2-container--bootstrap4 .frontend-form .select2-selection:disabled,
.frontend-form .form-control[readonly],
.frontend-form .select2-container--bootstrap4 [readonly].select2-selection,
.select2-container--bootstrap4 .frontend-form [readonly].select2-selection,
.customer-form .form-control:disabled,
.customer-form .select2-container--bootstrap4 .select2-selection:disabled,
.select2-container--bootstrap4 .customer-form .select2-selection:disabled,
.customer-form .form-control[readonly],
.customer-form .select2-container--bootstrap4 [readonly].select2-selection,
.select2-container--bootstrap4 .customer-form [readonly].select2-selection,
.checkout-form .form-control:disabled,
.checkout-form .select2-container--bootstrap4 .select2-selection:disabled,
.select2-container--bootstrap4 .checkout-form .select2-selection:disabled,
.checkout-form .form-control[readonly],
.checkout-form .select2-container--bootstrap4 [readonly].select2-selection,
.select2-container--bootstrap4 .checkout-form [readonly].select2-selection,
.account-form .form-control:disabled,
.account-form .select2-container--bootstrap4 .select2-selection:disabled,
.select2-container--bootstrap4 .account-form .select2-selection:disabled,
.account-form .form-control[readonly],
.account-form .select2-container--bootstrap4 [readonly].select2-selection,
.select2-container--bootstrap4 .account-form [readonly].select2-selection,
.product-form .form-control:disabled,
.product-form .select2-container--bootstrap4 .select2-selection:disabled,
.select2-container--bootstrap4 .product-form .select2-selection:disabled,
.product-form .form-control[readonly],
.product-form .select2-container--bootstrap4 [readonly].select2-selection,
.select2-container--bootstrap4 .product-form [readonly].select2-selection,
.main form:not(.search-form):not(.header-search-form) .form-control:disabled,
.main form:not(.search-form):not(.header-search-form) .select2-container--bootstrap4 .select2-selection:disabled,
.select2-container--bootstrap4 .main form:not(.search-form):not(.header-search-form) .select2-selection:disabled,
.main form:not(.search-form):not(.header-search-form) .form-control[readonly],
.main form:not(.search-form):not(.header-search-form) .select2-container--bootstrap4 [readonly].select2-selection,
.select2-container--bootstrap4 .main form:not(.search-form):not(.header-search-form) [readonly].select2-selection,
.modal:not(.admin-modal) form .form-control:disabled,
.modal:not(.admin-modal) form .select2-container--bootstrap4 .select2-selection:disabled,
.select2-container--bootstrap4 .modal:not(.admin-modal) form .select2-selection:disabled,
.modal:not(.admin-modal) form .form-control[readonly],
.modal:not(.admin-modal) form .select2-container--bootstrap4 [readonly].select2-selection,
.select2-container--bootstrap4 .modal:not(.admin-modal) form [readonly].select2-selection {
  background-color: #e9ecef;
  opacity: 1;
}

.frontend-form .form-control.form-control-sm,
.frontend-form .select2-container--bootstrap4 .form-control-sm.select2-selection,
.select2-container--bootstrap4 .frontend-form .form-control-sm.select2-selection,
.customer-form .form-control.form-control-sm,
.customer-form .select2-container--bootstrap4 .form-control-sm.select2-selection,
.select2-container--bootstrap4 .customer-form .form-control-sm.select2-selection,
.checkout-form .form-control.form-control-sm,
.checkout-form .select2-container--bootstrap4 .form-control-sm.select2-selection,
.select2-container--bootstrap4 .checkout-form .form-control-sm.select2-selection,
.account-form .form-control.form-control-sm,
.account-form .select2-container--bootstrap4 .form-control-sm.select2-selection,
.select2-container--bootstrap4 .account-form .form-control-sm.select2-selection,
.product-form .form-control.form-control-sm,
.product-form .select2-container--bootstrap4 .form-control-sm.select2-selection,
.select2-container--bootstrap4 .product-form .form-control-sm.select2-selection,
.main form:not(.search-form):not(.header-search-form) .form-control.form-control-sm,
.main form:not(.search-form):not(.header-search-form) .select2-container--bootstrap4 .form-control-sm.select2-selection,
.select2-container--bootstrap4 .main form:not(.search-form):not(.header-search-form) .form-control-sm.select2-selection,
.modal:not(.admin-modal) form .form-control.form-control-sm,
.modal:not(.admin-modal) form .select2-container--bootstrap4 .form-control-sm.select2-selection,
.select2-container--bootstrap4 .modal:not(.admin-modal) form .form-control-sm.select2-selection {
  height: 36px;
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
}

.frontend-form .form-control.form-control-lg,
.frontend-form .select2-container--bootstrap4 .form-control-lg.select2-selection,
.select2-container--bootstrap4 .frontend-form .form-control-lg.select2-selection,
.customer-form .form-control.form-control-lg,
.customer-form .select2-container--bootstrap4 .form-control-lg.select2-selection,
.select2-container--bootstrap4 .customer-form .form-control-lg.select2-selection,
.checkout-form .form-control.form-control-lg,
.checkout-form .select2-container--bootstrap4 .form-control-lg.select2-selection,
.select2-container--bootstrap4 .checkout-form .form-control-lg.select2-selection,
.account-form .form-control.form-control-lg,
.account-form .select2-container--bootstrap4 .form-control-lg.select2-selection,
.select2-container--bootstrap4 .account-form .form-control-lg.select2-selection,
.product-form .form-control.form-control-lg,
.product-form .select2-container--bootstrap4 .form-control-lg.select2-selection,
.select2-container--bootstrap4 .product-form .form-control-lg.select2-selection,
.main form:not(.search-form):not(.header-search-form) .form-control.form-control-lg,
.main form:not(.search-form):not(.header-search-form) .select2-container--bootstrap4 .form-control-lg.select2-selection,
.select2-container--bootstrap4 .main form:not(.search-form):not(.header-search-form) .form-control-lg.select2-selection,
.modal:not(.admin-modal) form .form-control.form-control-lg,
.modal:not(.admin-modal) form .select2-container--bootstrap4 .form-control-lg.select2-selection,
.select2-container--bootstrap4 .modal:not(.admin-modal) form .form-control-lg.select2-selection {
  height: 50px;
  padding: 0.75rem 1rem;
  font-size: 1.125rem;
}

.frontend-form textarea.form-control,
.frontend-form .select2-container--bootstrap4 textarea.select2-selection,
.select2-container--bootstrap4 .frontend-form textarea.select2-selection,
.customer-form textarea.form-control,
.customer-form .select2-container--bootstrap4 textarea.select2-selection,
.select2-container--bootstrap4 .customer-form textarea.select2-selection,
.checkout-form textarea.form-control,
.checkout-form .select2-container--bootstrap4 textarea.select2-selection,
.select2-container--bootstrap4 .checkout-form textarea.select2-selection,
.account-form textarea.form-control,
.account-form .select2-container--bootstrap4 textarea.select2-selection,
.select2-container--bootstrap4 .account-form textarea.select2-selection,
.product-form textarea.form-control,
.product-form .select2-container--bootstrap4 textarea.select2-selection,
.select2-container--bootstrap4 .product-form textarea.select2-selection,
.main form:not(.search-form):not(.header-search-form) textarea.form-control,
.main form:not(.search-form):not(.header-search-form) .select2-container--bootstrap4 textarea.select2-selection,
.select2-container--bootstrap4 .main form:not(.search-form):not(.header-search-form) textarea.select2-selection,
.modal:not(.admin-modal) form textarea.form-control,
.modal:not(.admin-modal) form .select2-container--bootstrap4 textarea.select2-selection,
.select2-container--bootstrap4 .modal:not(.admin-modal) form textarea.select2-selection {
  height: auto;
  min-height: 120px;
  resize: vertical;
}

.frontend-form .form-select,
.customer-form .form-select,
.checkout-form .form-select,
.account-form .form-select,
.product-form .form-select,
.main form:not(.search-form):not(.header-search-form) .form-select,
.modal:not(.admin-modal) form .form-select {
  display: block;
  width: 100%;
  height: 42px;
  padding: 0.475rem 2.25rem 0.475rem 0.85rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  background-color: #fff;
  background-image: 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 5l6 6 6-6'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right 0.75rem center;
  background-size: 16px 12px;
  border: 1px solid #dad9d9;
  border-radius: 0 !important;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.frontend-form .form-select:focus,
.customer-form .form-select:focus,
.checkout-form .form-select:focus,
.account-form .form-select:focus,
.product-form .form-select:focus,
.main form:not(.search-form):not(.header-search-form) .form-select:focus,
.modal:not(.admin-modal) form .form-select:focus {
  border-color: #1E1E56;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(30, 30, 86, 0.25);
}

.frontend-form .form-select:disabled,
.customer-form .form-select:disabled,
.checkout-form .form-select:disabled,
.account-form .form-select:disabled,
.product-form .form-select:disabled,
.main form:not(.search-form):not(.header-search-form) .form-select:disabled,
.modal:not(.admin-modal) form .form-select:disabled {
  background-color: #e9ecef;
}

.frontend-form .form-select.form-select-sm,
.customer-form .form-select.form-select-sm,
.checkout-form .form-select.form-select-sm,
.account-form .form-select.form-select-sm,
.product-form .form-select.form-select-sm,
.main form:not(.search-form):not(.header-search-form) .form-select.form-select-sm,
.modal:not(.admin-modal) form .form-select.form-select-sm {
  height: 36px;
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  padding-left: 0.5rem;
  font-size: 0.875rem;
}

.frontend-form .form-select.form-select-lg,
.customer-form .form-select.form-select-lg,
.checkout-form .form-select.form-select-lg,
.account-form .form-select.form-select-lg,
.product-form .form-select.form-select-lg,
.main form:not(.search-form):not(.header-search-form) .form-select.form-select-lg,
.modal:not(.admin-modal) form .form-select.form-select-lg {
  height: 50px;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  padding-left: 1rem;
  font-size: 1.125rem;
}

.frontend-form .form-check,
.customer-form .form-check,
.checkout-form .form-check,
.account-form .form-check,
.product-form .form-check,
.main form:not(.search-form):not(.header-search-form) .form-check,
.modal:not(.admin-modal) form .form-check {
  display: block;
  min-height: 1.5rem;
  padding-left: 1.5em;
  margin-bottom: 0.125rem;
}

.frontend-form .form-check .form-check-input,
.customer-form .form-check .form-check-input,
.checkout-form .form-check .form-check-input,
.account-form .form-check .form-check-input,
.product-form .form-check .form-check-input,
.main form:not(.search-form):not(.header-search-form) .form-check .form-check-input,
.modal:not(.admin-modal) form .form-check .form-check-input {
  float: left;
  margin-left: -1.5em;
}

.frontend-form .form-check .form-check-input[type=checkbox],
.customer-form .form-check .form-check-input[type=checkbox],
.checkout-form .form-check .form-check-input[type=checkbox],
.account-form .form-check .form-check-input[type=checkbox],
.product-form .form-check .form-check-input[type=checkbox],
.main form:not(.search-form):not(.header-search-form) .form-check .form-check-input[type=checkbox],
.modal:not(.admin-modal) form .form-check .form-check-input[type=checkbox] {
  border-radius: 0;
}

.frontend-form .form-check .form-check-input[type=radio],
.customer-form .form-check .form-check-input[type=radio],
.checkout-form .form-check .form-check-input[type=radio],
.account-form .form-check .form-check-input[type=radio],
.product-form .form-check .form-check-input[type=radio],
.main form:not(.search-form):not(.header-search-form) .form-check .form-check-input[type=radio],
.modal:not(.admin-modal) form .form-check .form-check-input[type=radio] {
  border-radius: 50%;
}

.frontend-form .form-check .form-check-input:checked,
.customer-form .form-check .form-check-input:checked,
.checkout-form .form-check .form-check-input:checked,
.account-form .form-check .form-check-input:checked,
.product-form .form-check .form-check-input:checked,
.main form:not(.search-form):not(.header-search-form) .form-check .form-check-input:checked,
.modal:not(.admin-modal) form .form-check .form-check-input:checked {
  background-color: #1E1E56;
  border-color: #1E1E56;
}

.frontend-form .form-check .form-check-input:focus,
.customer-form .form-check .form-check-input:focus,
.checkout-form .form-check .form-check-input:focus,
.account-form .form-check .form-check-input:focus,
.product-form .form-check .form-check-input:focus,
.main form:not(.search-form):not(.header-search-form) .form-check .form-check-input:focus,
.modal:not(.admin-modal) form .form-check .form-check-input:focus {
  border-color: #1E1E56;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(30, 30, 86, 0.25);
}

.frontend-form .form-check .form-check-input:disabled,
.customer-form .form-check .form-check-input:disabled,
.checkout-form .form-check .form-check-input:disabled,
.account-form .form-check .form-check-input:disabled,
.product-form .form-check .form-check-input:disabled,
.main form:not(.search-form):not(.header-search-form) .form-check .form-check-input:disabled,
.modal:not(.admin-modal) form .form-check .form-check-input:disabled {
  pointer-events: none;
  filter: none;
  opacity: 0.5;
}

.frontend-form .form-check .form-check-input:disabled ~ .form-check-label,
.customer-form .form-check .form-check-input:disabled ~ .form-check-label,
.checkout-form .form-check .form-check-input:disabled ~ .form-check-label,
.account-form .form-check .form-check-input:disabled ~ .form-check-label,
.product-form .form-check .form-check-input:disabled ~ .form-check-label,
.main form:not(.search-form):not(.header-search-form) .form-check .form-check-input:disabled ~ .form-check-label,
.modal:not(.admin-modal) form .form-check .form-check-input:disabled ~ .form-check-label {
  cursor: default;
  opacity: 0.5;
}

.frontend-form .form-check .form-check-label,
.customer-form .form-check .form-check-label,
.checkout-form .form-check .form-check-label,
.account-form .form-check .form-check-label,
.product-form .form-check .form-check-label,
.main form:not(.search-form):not(.header-search-form) .form-check .form-check-label,
.modal:not(.admin-modal) form .form-check .form-check-label {
  cursor: pointer;
}

.frontend-form .form-control.is-valid,
.frontend-form .select2-container--bootstrap4 .is-valid.select2-selection,
.select2-container--bootstrap4 .frontend-form .is-valid.select2-selection,
.frontend-form .form-select.is-valid,
.customer-form .form-control.is-valid,
.customer-form .select2-container--bootstrap4 .is-valid.select2-selection,
.select2-container--bootstrap4 .customer-form .is-valid.select2-selection,
.customer-form .form-select.is-valid,
.checkout-form .form-control.is-valid,
.checkout-form .select2-container--bootstrap4 .is-valid.select2-selection,
.select2-container--bootstrap4 .checkout-form .is-valid.select2-selection,
.checkout-form .form-select.is-valid,
.account-form .form-control.is-valid,
.account-form .select2-container--bootstrap4 .is-valid.select2-selection,
.select2-container--bootstrap4 .account-form .is-valid.select2-selection,
.account-form .form-select.is-valid,
.product-form .form-control.is-valid,
.product-form .select2-container--bootstrap4 .is-valid.select2-selection,
.select2-container--bootstrap4 .product-form .is-valid.select2-selection,
.product-form .form-select.is-valid,
.main form:not(.search-form):not(.header-search-form) .form-control.is-valid,
.main form:not(.search-form):not(.header-search-form) .select2-container--bootstrap4 .is-valid.select2-selection,
.select2-container--bootstrap4 .main form:not(.search-form):not(.header-search-form) .is-valid.select2-selection,
.main form:not(.search-form):not(.header-search-form) .form-select.is-valid,
.modal:not(.admin-modal) form .form-control.is-valid,
.modal:not(.admin-modal) form .select2-container--bootstrap4 .is-valid.select2-selection,
.select2-container--bootstrap4 .modal:not(.admin-modal) form .is-valid.select2-selection,
.modal:not(.admin-modal) form .form-select.is-valid {
  border-color: #198754;
  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.73L.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);
}

.frontend-form .form-control.is-valid:focus,
.frontend-form .select2-container--bootstrap4 .is-valid.select2-selection:focus,
.select2-container--bootstrap4 .frontend-form .is-valid.select2-selection:focus,
.frontend-form .form-select.is-valid:focus,
.customer-form .form-control.is-valid:focus,
.customer-form .select2-container--bootstrap4 .is-valid.select2-selection:focus,
.select2-container--bootstrap4 .customer-form .is-valid.select2-selection:focus,
.customer-form .form-select.is-valid:focus,
.checkout-form .form-control.is-valid:focus,
.checkout-form .select2-container--bootstrap4 .is-valid.select2-selection:focus,
.select2-container--bootstrap4 .checkout-form .is-valid.select2-selection:focus,
.checkout-form .form-select.is-valid:focus,
.account-form .form-control.is-valid:focus,
.account-form .select2-container--bootstrap4 .is-valid.select2-selection:focus,
.select2-container--bootstrap4 .account-form .is-valid.select2-selection:focus,
.account-form .form-select.is-valid:focus,
.product-form .form-control.is-valid:focus,
.product-form .select2-container--bootstrap4 .is-valid.select2-selection:focus,
.select2-container--bootstrap4 .product-form .is-valid.select2-selection:focus,
.product-form .form-select.is-valid:focus,
.main form:not(.search-form):not(.header-search-form) .form-control.is-valid:focus,
.main form:not(.search-form):not(.header-search-form) .select2-container--bootstrap4 .is-valid.select2-selection:focus,
.select2-container--bootstrap4 .main form:not(.search-form):not(.header-search-form) .is-valid.select2-selection:focus,
.main form:not(.search-form):not(.header-search-form) .form-select.is-valid:focus,
.modal:not(.admin-modal) form .form-control.is-valid:focus,
.modal:not(.admin-modal) form .select2-container--bootstrap4 .is-valid.select2-selection:focus,
.select2-container--bootstrap4 .modal:not(.admin-modal) form .is-valid.select2-selection:focus,
.modal:not(.admin-modal) form .form-select.is-valid:focus {
  border-color: #198754;
  box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25);
}

.frontend-form .form-control.is-invalid,
.frontend-form .select2-container--bootstrap4 .is-invalid.select2-selection,
.select2-container--bootstrap4 .frontend-form .is-invalid.select2-selection,
.frontend-form .form-select.is-invalid,
.customer-form .form-control.is-invalid,
.customer-form .select2-container--bootstrap4 .is-invalid.select2-selection,
.select2-container--bootstrap4 .customer-form .is-invalid.select2-selection,
.customer-form .form-select.is-invalid,
.checkout-form .form-control.is-invalid,
.checkout-form .select2-container--bootstrap4 .is-invalid.select2-selection,
.select2-container--bootstrap4 .checkout-form .is-invalid.select2-selection,
.checkout-form .form-select.is-invalid,
.account-form .form-control.is-invalid,
.account-form .select2-container--bootstrap4 .is-invalid.select2-selection,
.select2-container--bootstrap4 .account-form .is-invalid.select2-selection,
.account-form .form-select.is-invalid,
.product-form .form-control.is-invalid,
.product-form .select2-container--bootstrap4 .is-invalid.select2-selection,
.select2-container--bootstrap4 .product-form .is-invalid.select2-selection,
.product-form .form-select.is-invalid,
.main form:not(.search-form):not(.header-search-form) .form-control.is-invalid,
.main form:not(.search-form):not(.header-search-form) .select2-container--bootstrap4 .is-invalid.select2-selection,
.select2-container--bootstrap4 .main form:not(.search-form):not(.header-search-form) .is-invalid.select2-selection,
.main form:not(.search-form):not(.header-search-form) .form-select.is-invalid,
.modal:not(.admin-modal) form .form-control.is-invalid,
.modal:not(.admin-modal) form .select2-container--bootstrap4 .is-invalid.select2-selection,
.select2-container--bootstrap4 .modal:not(.admin-modal) form .is-invalid.select2-selection,
.modal:not(.admin-modal) form .form-select.is-invalid {
  border-color: #dc3545;
  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);
}

.frontend-form .form-control.is-invalid:focus,
.frontend-form .select2-container--bootstrap4 .is-invalid.select2-selection:focus,
.select2-container--bootstrap4 .frontend-form .is-invalid.select2-selection:focus,
.frontend-form .form-select.is-invalid:focus,
.customer-form .form-control.is-invalid:focus,
.customer-form .select2-container--bootstrap4 .is-invalid.select2-selection:focus,
.select2-container--bootstrap4 .customer-form .is-invalid.select2-selection:focus,
.customer-form .form-select.is-invalid:focus,
.checkout-form .form-control.is-invalid:focus,
.checkout-form .select2-container--bootstrap4 .is-invalid.select2-selection:focus,
.select2-container--bootstrap4 .checkout-form .is-invalid.select2-selection:focus,
.checkout-form .form-select.is-invalid:focus,
.account-form .form-control.is-invalid:focus,
.account-form .select2-container--bootstrap4 .is-invalid.select2-selection:focus,
.select2-container--bootstrap4 .account-form .is-invalid.select2-selection:focus,
.account-form .form-select.is-invalid:focus,
.product-form .form-control.is-invalid:focus,
.product-form .select2-container--bootstrap4 .is-invalid.select2-selection:focus,
.select2-container--bootstrap4 .product-form .is-invalid.select2-selection:focus,
.product-form .form-select.is-invalid:focus,
.main form:not(.search-form):not(.header-search-form) .form-control.is-invalid:focus,
.main form:not(.search-form):not(.header-search-form) .select2-container--bootstrap4 .is-invalid.select2-selection:focus,
.select2-container--bootstrap4 .main form:not(.search-form):not(.header-search-form) .is-invalid.select2-selection:focus,
.main form:not(.search-form):not(.header-search-form) .form-select.is-invalid:focus,
.modal:not(.admin-modal) form .form-control.is-invalid:focus,
.modal:not(.admin-modal) form .select2-container--bootstrap4 .is-invalid.select2-selection:focus,
.select2-container--bootstrap4 .modal:not(.admin-modal) form .is-invalid.select2-selection:focus,
.modal:not(.admin-modal) form .form-select.is-invalid:focus {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25);
}

.frontend-form .invalid-feedback,
.frontend-form .error-help-block,
.frontend-form .valid-feedback,
.customer-form .invalid-feedback,
.customer-form .error-help-block,
.customer-form .valid-feedback,
.checkout-form .invalid-feedback,
.checkout-form .error-help-block,
.checkout-form .valid-feedback,
.account-form .invalid-feedback,
.account-form .error-help-block,
.account-form .valid-feedback,
.product-form .invalid-feedback,
.product-form .error-help-block,
.product-form .valid-feedback,
.main form:not(.search-form):not(.header-search-form) .invalid-feedback,
.main form:not(.search-form):not(.header-search-form) .error-help-block,
.main form:not(.search-form):not(.header-search-form) .valid-feedback,
.modal:not(.admin-modal) form .invalid-feedback,
.modal:not(.admin-modal) form .error-help-block,
.modal:not(.admin-modal) form .valid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 0.875em;
}

.frontend-form .invalid-feedback,
.frontend-form .error-help-block,
.customer-form .invalid-feedback,
.customer-form .error-help-block,
.checkout-form .invalid-feedback,
.checkout-form .error-help-block,
.account-form .invalid-feedback,
.account-form .error-help-block,
.product-form .invalid-feedback,
.product-form .error-help-block,
.main form:not(.search-form):not(.header-search-form) .invalid-feedback,
.main form:not(.search-form):not(.header-search-form) .error-help-block,
.modal:not(.admin-modal) form .invalid-feedback,
.modal:not(.admin-modal) form .error-help-block {
  color: #dc3545;
}

.frontend-form .valid-feedback,
.customer-form .valid-feedback,
.checkout-form .valid-feedback,
.account-form .valid-feedback,
.product-form .valid-feedback,
.main form:not(.search-form):not(.header-search-form) .valid-feedback,
.modal:not(.admin-modal) form .valid-feedback {
  color: #198754;
}

.frontend-form .is-invalid ~ .invalid-feedback,
.frontend-form .is-invalid ~ .error-help-block,
.frontend-form .was-validated :invalid ~ .invalid-feedback,
.frontend-form .was-validated :invalid ~ .error-help-block,
.customer-form .is-invalid ~ .invalid-feedback,
.customer-form .is-invalid ~ .error-help-block,
.customer-form .was-validated :invalid ~ .invalid-feedback,
.customer-form .was-validated :invalid ~ .error-help-block,
.checkout-form .is-invalid ~ .invalid-feedback,
.checkout-form .is-invalid ~ .error-help-block,
.checkout-form .was-validated :invalid ~ .invalid-feedback,
.checkout-form .was-validated :invalid ~ .error-help-block,
.account-form .is-invalid ~ .invalid-feedback,
.account-form .is-invalid ~ .error-help-block,
.account-form .was-validated :invalid ~ .invalid-feedback,
.account-form .was-validated :invalid ~ .error-help-block,
.product-form .is-invalid ~ .invalid-feedback,
.product-form .is-invalid ~ .error-help-block,
.product-form .was-validated :invalid ~ .invalid-feedback,
.product-form .was-validated :invalid ~ .error-help-block,
.main form:not(.search-form):not(.header-search-form) .is-invalid ~ .invalid-feedback,
.main form:not(.search-form):not(.header-search-form) .is-invalid ~ .error-help-block,
.main form:not(.search-form):not(.header-search-form) .was-validated :invalid ~ .invalid-feedback,
.main form:not(.search-form):not(.header-search-form) .was-validated :invalid ~ .error-help-block,
.modal:not(.admin-modal) form .is-invalid ~ .invalid-feedback,
.modal:not(.admin-modal) form .is-invalid ~ .error-help-block,
.modal:not(.admin-modal) form .was-validated :invalid ~ .invalid-feedback,
.modal:not(.admin-modal) form .was-validated :invalid ~ .error-help-block {
  display: block;
}

.frontend-form .is-valid ~ .valid-feedback,
.frontend-form .was-validated :valid ~ .valid-feedback,
.customer-form .is-valid ~ .valid-feedback,
.customer-form .was-validated :valid ~ .valid-feedback,
.checkout-form .is-valid ~ .valid-feedback,
.checkout-form .was-validated :valid ~ .valid-feedback,
.account-form .is-valid ~ .valid-feedback,
.account-form .was-validated :valid ~ .valid-feedback,
.product-form .is-valid ~ .valid-feedback,
.product-form .was-validated :valid ~ .valid-feedback,
.main form:not(.search-form):not(.header-search-form) .is-valid ~ .valid-feedback,
.main form:not(.search-form):not(.header-search-form) .was-validated :valid ~ .valid-feedback,
.modal:not(.admin-modal) form .is-valid ~ .valid-feedback,
.modal:not(.admin-modal) form .was-validated :valid ~ .valid-feedback {
  display: block;
}

.frontend-form .form-text,
.customer-form .form-text,
.checkout-form .form-text,
.account-form .form-text,
.product-form .form-text,
.main form:not(.search-form):not(.header-search-form) .form-text,
.modal:not(.admin-modal) form .form-text {
  margin-top: 0.25rem;
  font-size: 0.875em;
  color: #6c757d;
}

.input-group {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  width: 100%;
}

.input-group > .form-control,
.select2-container--bootstrap4 .input-group > .select2-selection,
.input-group > .form-select {
  position: relative;
  flex: 1 1 auto;
  width: 1%;
  min-width: 0;
  border-radius: 0;
}

.input-group > .form-control:focus,
.select2-container--bootstrap4 .input-group > .select2-selection:focus,
.input-group > .form-select:focus {
  z-index: 3;
}

.input-group .input-group-text {
  display: flex;
  align-items: center;
  padding: 0.475rem 0.85rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  text-align: center;
  white-space: nowrap;
  background-color: #e9ecef;
  border: 1px solid #dad9d9;
  border-radius: 0 !important;
}

.select2-container--bootstrap5 .select2-selection--single,
.select2-container--bootstrap5 .select2-selection--multiple,
.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple,
.select2-container--bootstrap4 .select2-selection--single,
.select2-container--bootstrap4 .select2-selection--multiple {
  height: 42px;
  border: 1px solid #dad9d9;
  border-radius: 0 !important;
}

.select2-container--bootstrap5 .select2-selection--single:focus,
.select2-container--bootstrap5 .select2-selection--multiple:focus,
.select2-container--default .select2-selection--single:focus,
.select2-container--default .select2-selection--multiple:focus,
.select2-container--bootstrap4 .select2-selection--single:focus,
.select2-container--bootstrap4 .select2-selection--multiple:focus {
  border-color: #1E1E56;
  box-shadow: 0 0 0 0.25rem rgba(30, 30, 86, 0.25);
}

.select2-container--bootstrap5 .select2-selection--single,
.select2-container--default .select2-selection--single,
.select2-container--bootstrap4 .select2-selection--single {
  padding: 0.475rem 0.85rem;
}

.select2-container--bootstrap5 .select2-selection--single .select2-selection__rendered,
.select2-container--default .select2-selection--single .select2-selection__rendered,
.select2-container--bootstrap4 .select2-selection--single .select2-selection__rendered {
  padding-left: 0;
  padding-right: 0;
}

.select2-container--bootstrap5 .select2-dropdown,
.select2-container--default .select2-dropdown,
.select2-container--bootstrap4 .select2-dropdown {
  border-color: #dad9d9;
  border-radius: 0 !important;
}

.select2-container--bootstrap5 .select2-search--dropdown .select2-search__field,
.select2-container--default .select2-search--dropdown .select2-search__field,
.select2-container--bootstrap4 .select2-search--dropdown .select2-search__field {
  border: 1px solid #dad9d9;
  border-radius: 0 !important;
}

.dropdown {
  position: relative;
}

.dropdown .dropdown-menu {
  max-width: calc(100vw - 40px);
}

.dropdown .dropdown-menu.notificationDropdown {
  overflow: hidden;
}

.dropdown .dropdown-menu.notificationDropdown .notification-list {
  max-height: 400px;
  overflow-y: auto;
  overflow-x: hidden;
}

.top-user-profile .dropdown-menu {
  min-width: 200px;
}

.header-cart-wrapper .dropdown-menu {
  min-width: 320px;
}

.header-cart-wrapper .dropdown-menu .cart-dropdown-content {
  max-height: 400px;
  overflow-y: auto;
}

@media (max-width: 767px) {
  .dropdown .dropdown-menu {
    position: fixed !important;
    left: 10px !important;
    right: 10px !important;
    width: auto !important;
    max-width: none;
  }
}

.dropdown-menu {
  font-family: "Poppins", "Source Sans Pro", sans-serif;
}

.dropdown-menu .dropdown-item {
  font-family: "Poppins", "Source Sans Pro", sans-serif;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.6;
  color: #333;
}

.dropdown-menu .dropdown-item i {
  width: 20px;
  text-align: center;
}

.dropdown-menu .dropdown-item:hover,
.dropdown-menu .dropdown-item:focus {
  color: #000;
}

.dropdown-menu .dropdown-header {
  font-family: "Poppins", "Source Sans Pro", sans-serif;
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #6c757d;
}

.top-user-profile .dropdown-menu .dropdown-item {
  padding: 0.5rem 1.25rem;
}

.notificationDropdown .dropdown-header {
  font-size: 14px;
  font-weight: 600;
  text-transform: none;
  letter-spacing: normal;
  color: #333;
}

.notificationDropdown .dropdown-header .btn-link {
  font-size: 13px;
  font-weight: 400;
}

.notificationDropdown .frontend-notification-item h5,
.notificationDropdown .frontend-notification-item .h5 {
  font-family: "Poppins", "Source Sans Pro", sans-serif;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.4;
  margin-bottom: 0.25rem;
}

.notificationDropdown .frontend-notification-item h5.fw-bold,
.notificationDropdown .frontend-notification-item .fw-bold.h5 {
  font-weight: 600;
}

.notificationDropdown .frontend-notification-item p {
  font-family: "Poppins", "Source Sans Pro", sans-serif;
}

.notificationDropdown .frontend-notification-item p.small {
  font-size: 13px;
  line-height: 1.5;
}

.notificationDropdown .frontend-notification-item p.small:last-child {
  font-size: 12px;
  opacity: 0.8;
}

.notificationDropdown .dropdown-item.text-center {
  font-size: 13px;
}

.header-cart-wrapper .dropdown-menu .cart-item {
  font-family: "Poppins", "Source Sans Pro", sans-serif;
}

.header-cart-wrapper .dropdown-menu .cart-item .item-name {
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  color: #333;
  text-decoration: none;
}

.header-cart-wrapper .dropdown-menu .cart-item .item-name:hover {
  color: #000;
  text-decoration: underline;
}

.header-cart-wrapper .dropdown-menu .cart-item .item-details {
  font-size: 13px;
  color: #6c757d;
  line-height: 1.4;
}

.header-cart-wrapper .dropdown-menu .cart-item .item-details .item-price {
  font-weight: 600;
  color: #333;
}

.header-cart-wrapper .dropdown-menu .cart-item .item-details .item-type {
  font-size: 12px;
}

.header-cart-wrapper .dropdown-menu .cart-item .quantity-controls {
  font-size: 13px;
}

.header-cart-wrapper .dropdown-menu .cart-item .quantity-controls input {
  font-size: 13px;
  font-family: "Poppins", "Source Sans Pro", sans-serif;
}

.header-cart-wrapper .dropdown-menu .cart-summary h6,
.header-cart-wrapper .dropdown-menu .cart-summary .h6 {
  font-family: "Poppins", "Source Sans Pro", sans-serif;
  font-size: 14px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-bottom: 0.75rem;
}

.header-cart-wrapper .dropdown-menu .cart-summary .subtotal-row {
  font-size: 14px;
}

.header-cart-wrapper .dropdown-menu .cart-summary .subtotal-row .subtotal-label {
  font-weight: 400;
}

.header-cart-wrapper .dropdown-menu .cart-summary .subtotal-row .subtotal-amount {
  font-weight: 600;
}

.header-cart-wrapper .dropdown-menu .btn {
  font-family: "Poppins", "Source Sans Pro", sans-serif;
  font-size: 14px;
  font-weight: 400;
}

.header-cart-wrapper .dropdown-menu .empty-cart-message {
  font-size: 14px;
}

.header-cart-wrapper .dropdown-menu .empty-cart-message i {
  font-size: 32px;
}

.header-cart-wrapper .dropdown-menu .cart-loading p {
  font-size: 13px;
}

.dropdown-menu .dropdown-divider {
  margin: 0.5rem 0;
}

.dropdown-menu .dropdown-item.disabled,
.dropdown-menu .dropdown-item:disabled {
  font-style: italic;
  opacity: 0.6;
}

.dropdown-menu .small {
  font-size: 13px !important;
}

.dropdown-menu .text-muted {
  color: #6c757d !important;
}

@media (max-width: 767px) {
  .dropdown-menu .dropdown-item {
    font-size: 16px;
    padding: 0.75rem 1.25rem;
  }

  .dropdown-menu .dropdown-header {
    font-size: 14px;
  }

  .notificationDropdown .frontend-notification-item h5,
  .notificationDropdown .frontend-notification-item .h5 {
    font-size: 16px;
  }

  .notificationDropdown .frontend-notification-item p.small {
    font-size: 14px;
  }

  .header-cart-wrapper .dropdown-menu .item-name {
    font-size: 15px;
  }

  .header-cart-wrapper .dropdown-menu .item-details {
    font-size: 14px;
  }
}

.wishlist-toggle-btn {
  position: relative;
  transition: all 0.3s ease;
}

.wishlist-toggle-btn:not(.wishlisted) {
  border: 2px solid #6c757d;
  color: #dc3545;
  background-color: #fff;
}

.wishlist-toggle-btn:not(.wishlisted):hover {
  background-color: #f8f9fa;
  border-color: #5a6268;
  color: #dc3545;
}

.wishlist-toggle-btn:not(.wishlisted):focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.25);
}

.wishlist-toggle-btn.wishlisted {
  background-color: #fff;
  border: 2px solid #dc3545;
  color: #dc3545;
}

.wishlist-toggle-btn.wishlisted:hover {
  background-color: #ffeef0;
  border-color: #dc3545;
  color: #dc3545;
}

.wishlist-toggle-btn.wishlisted:focus {
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.wishlist-toggle-btn.wishlist-loading {
  opacity: 0.7;
  cursor: wait;
}

.wishlist-toggle-btn i {
  transition: transform 0.2s ease;
}

.wishlist-toggle-btn i.wishlist-pulse {
  -webkit-animation: wishlist-pulse 0.5s ease;
          animation: wishlist-pulse 0.5s ease;
}

.wishlist-toggle-btn.btn-lg,
.btn-group-lg > .wishlist-toggle-btn.btn {
  font-weight: 500;
  padding: 0.6rem 1.5rem;
}

.wishlist-toggle-btn.btn-lg i,
.btn-group-lg > .wishlist-toggle-btn.btn i {
  margin-right: 0.375rem;
}

.wishlist-toggle-btn.btn-sm,
.btn-group-sm > .wishlist-toggle-btn.btn {
  padding: 0.375rem 0.75rem;
}

@-webkit-keyframes wishlist-pulse {
  0% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.3);
  }

  100% {
    transform: scale(1);
  }
}

@keyframes wishlist-pulse {
  0% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.3);
  }

  100% {
    transform: scale(1);
  }
}

.product-card-grid .wishlist-toggle-btn {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  background-color: rgba(255, 255, 255, 0.9);
  border-radius: 50%;
  width: 40px;
  height: 40px;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #dee2e6;
}

.product-card-grid .wishlist-toggle-btn:not(.wishlisted) {
  border-color: #6c757d;
  color: #dc3545;
}

.product-card-grid .wishlist-toggle-btn:not(.wishlisted):hover {
  background-color: #f8f9fa;
  border-color: #5a6268;
  color: #dc3545;
}

.product-card-grid .wishlist-toggle-btn.wishlisted {
  background-color: #fff;
  border-color: #dc3545;
  color: #dc3545;
}

.product-card-grid .wishlist-toggle-btn.wishlisted i {
  color: #dc3545;
}

.product-card-list .wishlist-toggle-btn {
  position: relative;
  width: auto;
  height: auto;
  border-radius: 0.25rem;
}

.wishlist-dropdown-content .wishlist-toggle-btn {
  border-radius: 0.25rem;
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
}

.filter-form .filter-autocomplete {
  position: relative;
}

.filter-form .filter-autocomplete .filter-input-wrapper {
  position: relative;
}

.filter-form .filter-autocomplete .filter-input-wrapper .filter-search-input {
  cursor: pointer;
  padding-right: 30px;
  background-color: white;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.filter-form .filter-autocomplete .filter-input-wrapper .filter-search-input:hover {
  border-color: #86b7fe;
}

.filter-form .filter-autocomplete .filter-input-wrapper .filter-search-input:focus {
  cursor: text;
  border-color: #86b7fe;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.filter-form .filter-autocomplete .filter-input-wrapper .filter-dropdown-icon {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  color: #6c757d;
  cursor: pointer;
  transition: transform 0.2s;
  pointer-events: all;
}

.filter-form .filter-autocomplete .filter-suggestions-dropdown {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 1050;
  background: white;
  border: 1px solid #dee2e6;
  border-top: none;
  border-radius: 0 0 0.25rem 0.25rem;
  max-height: 250px;
  overflow: hidden;
  display: none;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.filter-form .filter-autocomplete .filter-suggestions-dropdown.show {
  display: block;
}

.filter-form .filter-autocomplete .filter-suggestions-dropdown.show ~ .filter-input-wrapper .filter-dropdown-icon {
  transform: translateY(-50%) rotate(180deg);
}

.filter-form .filter-autocomplete .filter-suggestions-dropdown .suggestions-list {
  max-height: 250px;
  overflow-y: auto;
}

.filter-form .filter-autocomplete .filter-suggestions-dropdown .suggestions-list .suggestion-item {
  padding: 0.5rem 0.75rem;
  cursor: pointer;
  transition: background-color 0.15s;
}

.filter-form .filter-autocomplete .filter-suggestions-dropdown .suggestions-list .suggestion-item:hover {
  background-color: #f8f9fa;
}

.filter-form .filter-autocomplete .filter-suggestions-dropdown .suggestions-list .suggestion-item strong {
  color: #0d6efd;
  font-weight: 600;
}

.filter-form .filter-autocomplete .filter-suggestions-dropdown.show ~ .filter-input-wrapper .filter-search-input {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  border-bottom-color: transparent;
}

.filter-form .filter-mobile-select .mobile-filter-select {
  width: 100%;
  cursor: pointer;
}

.filter-form .selected-tags {
  min-height: 0;
}

.filter-form .selected-tags .badge {
  font-size: 0.875rem;
  padding: 0.375rem 0.5rem;
  font-weight: 500;
}

.filter-form .selected-tags .badge .btn-close {
  width: 0.5em;
  height: 0.5em;
  padding: 0;
  background-size: 0.5em;
  opacity: 0.75;
}

.filter-form .selected-tags .badge .btn-close:hover {
  opacity: 1;
}

@media (max-width: 767px) {
  .filter-form .filter-autocomplete {
    display: none !important;
  }

  .filter-form .filter-mobile-select {
    display: block !important;
  }
}

@media (min-width: 768px) {
  .filter-form .filter-autocomplete {
    display: block !important;
  }

  .filter-form .filter-mobile-select {
    display: none !important;
  }
}

.top-buttons > * {
  display: flex;
  align-items: center;
  justify-content: center;
}

.top-buttons .btn-link {
  width: 35px;
  height: 35px;
  padding: 0;
  border: none;
  background: transparent;
  transition: opacity 0.2s;
  position: relative !important;
  top: auto !important;
}

.top-buttons .btn-link:hover {
  opacity: 0.8;
}

.top-buttons .notificationBtn .badge {
  font-size: 0.625rem;
  padding: 0.25em 0.4em;
  min-width: 18px;
  height: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.top-buttons .top-user-profile .btn-link {
  overflow: hidden;
}

.top-buttons .top-user-profile .btn-link img,
.top-buttons .top-user-profile .btn-link .user-dropdown {
  width: 35px;
  height: 35px;
  border-radius: 10px;
  border: 2px solid #aaa;
}

.top-buttons .header-cart-wrapper .cart-icon {
  width: 35px;
  height: 35px;
}

.top-buttons .header-cart-wrapper .cart-count-badge {
  font-size: 0.625rem;
  padding: 0.25em 0.4em;
  min-width: 18px;
  height: 18px;
}

.top-buttons form[title*=Return] .btn-link,
.top-buttons form[title*="Stop Impersonating"] .btn-link,
.top-buttons a[title*=Return] .btn-link,
.top-buttons a[title*="Stop Impersonating"] .btn-link {
  background-color: #ffc107 !important;
  border-radius: 10px;
}

.top-buttons form[title*=Return] .btn-link:hover,
.top-buttons form[title*="Stop Impersonating"] .btn-link:hover,
.top-buttons a[title*=Return] .btn-link:hover,
.top-buttons a[title*="Stop Impersonating"] .btn-link:hover {
  background-color: #ffb300 !important;
}

@media (max-width: 767px) {
  .top-buttons {
    gap: 0.75rem !important;
  }
}

.order-card {
  margin-bottom: 1rem;
}

.order-card .card {
  transition: box-shadow 0.3s ease;
}

.order-card .card:hover {
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}

.order-item-thumb {
  width: 40px;
  height: 40px;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 0.25rem;
  border: 1px solid #dee2e6;
}

.order-item-thumb-placeholder {
  width: 40px;
  height: 40px;
  background-color: #f8f9fa;
  border: 1px solid #dee2e6;
  border-radius: 0.25rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #6c757d;
}

.order-item-more {
  width: 40px;
  height: 40px;
  background-color: #e9ecef;
  border-radius: 0.25rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.75rem;
  font-weight: 600;
  color: #6c757d;
}

/**
 * Filter Form Component Styles
 */

.filter-sidebar-card .filter-section {
  border-bottom: 1px solid #e9ecef;
}

.filter-sidebar-card .filter-section:last-child {
  border-bottom: none;
}

.filter-sidebar-card .filter-section .accordion-header {
  background: transparent;
  padding: 1rem;
  cursor: pointer;
  transition: background 0.2s ease;
}

.filter-sidebar-card .filter-section .accordion-header:hover {
  background: #f8f9fa;
}

.filter-sidebar-card .filter-section .accordion-header .fa-chevron-down,
.filter-sidebar-card .filter-section .accordion-header .fa-chevron-up {
  transition: transform 0.3s ease;
}

.filter-sidebar-card .filter-section .accordion-body {
  padding: 0 1rem 1rem;
}

.filter-sidebar-card .filter-section .list-unstyled {
  margin-bottom: 0;
}

.filter-sidebar-card .filter-section .list-unstyled li {
  padding: 0.25rem 0;
}

.filter-sidebar-card .filter-section .form-check {
  padding-left: 1.5rem;
  margin-bottom: 0.5rem;
}

.filter-sidebar-card .filter-section .form-check .form-check-input {
  margin-top: 0.3rem;
}

.filter-sidebar-card .filter-section .form-check .form-check-label {
  font-size: 0.95rem;
  color: #495057;
  cursor: pointer;
}

.filter-sidebar-card .filter-section .form-check .form-check-label:hover {
  color: #212529;
}

.filter-sidebar-card .filter-section h6,
.filter-sidebar-card .filter-section .h6 {
  font-size: 1rem;
  font-weight: 600;
  color: #212529;
  margin-bottom: 0;
}

.filter-sidebar-card .filter-section .collapse {
  transition: all 0.3s ease;
}

.filter-price-inputs .input-group {
  margin-bottom: 0.5rem;
}

@media (max-width: 768px) {
  .filter-sidebar-card {
    margin-bottom: 1rem;
  }
}

/**
 * Home Page Styles
 * Styles specific to the homepage with Bootstrap 5
 */

.page_is_home_page {
  /* Circle */
  /* Square */
  /* Square with rounded corners */
  /* Rectangle */
  /* Ellipse */
  /* Teardrop */
  /* Heart */
  --luxury-gold: #d4af37;
  --soft-cream: #faf9f6;
  --deep-charcoal: #2c2c2c;
  --warm-gray: #6b6b6b;
}

.page_is_home_page .object-fit-cover {
  -o-object-fit: cover;
     object-fit: cover;
  min-height: 400px;
}

@media (max-width: 768px) {
  .page_is_home_page .object-fit-cover {
    min-height: 250px;
  }
}

.page_is_home_page .badge {
  -webkit-animation: fadeInUp 0.5s ease-out;
          animation: fadeInUp 0.5s ease-out;
}

.page_is_home_page .shape-image-wrapper {
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page_is_home_page .shape-icon {
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2rem;
  color: var(--bs-gray-600);
  background: var(--bs-gray-100);
  border-radius: 50%;
  transition: all 0.3s ease;
}

.page_is_home_page .shape-round .fa-gem:before {
  content: "\f3a5";
}

.page_is_home_page .shape-princess .fa-gem:before {
  content: "\f0c8";
}

.page_is_home_page .shape-cushion .fa-gem:before {
  content: "\f466";
}

.page_is_home_page .shape-emerald .fa-gem:before {
  content: "\f1b2";
}

.page_is_home_page .shape-oval .fa-gem:before {
  content: "\f111";
}

.page_is_home_page .shape-pear .fa-gem:before {
  content: "\f043";
}

.page_is_home_page .shape-heart .fa-gem:before {
  content: "\f004";
}

.page_is_home_page .nav-pills .nav-link {
  color: var(--bs-gray-600);
  border-radius: 50rem;
  padding: 0.5rem 1.5rem;
  margin: 0 0.25rem;
  transition: all 0.3s ease;
}

.page_is_home_page .nav-pills .nav-link:hover {
  background-color: var(--bs-gray-100);
}

.page_is_home_page .nav-pills .nav-link.active {
  background-color: var(--bs-primary);
}

.page_is_home_page .home-hero-section-homepage {
  position: relative;
  height: 250px;
  background-repeat: no-repeat;
  background-size: cover;
  -o-object-fit: cover;
     object-fit: cover;
}

@media only screen and (min-width: 600px) {
  .page_is_home_page .home-hero-section-homepage {
    height: 340px;
  }
}

@media only screen and (min-width: 800px) {
  .page_is_home_page .home-hero-section-homepage {
    height: 370px;
  }
}

@media only screen and (min-width: 1000px) {
  .page_is_home_page .home-hero-section-homepage {
    height: 400px;
  }
}

.page_is_home_page .home-hero-section-homepage .main-heading-top {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(235, 235, 242, 0);
}

.page_is_home_page .home-hero-section-homepage .bannertext {
  position: absolute;
  top: 50%;
  width: 47%;
  left: 2.25%;
  transform: translate(0px, -52%);
}

.page_is_home_page .home-hero-section-homepage .bannertext .bannertext-heading {
  font-size: 45.5px;
  text-transform: uppercase;
  font-weight: 500 !important;
  font-family: "Playfair Display", serif;
  font-weight: 700;
  line-height: 1.2;
}

.page_is_home_page .home-hero-section-homepage .bannertext .bannertext-heading .linegred::before {
  background-image: url(/img/home/linegrad.png);
  position: absolute;
  width: 250px;
  background-repeat: no-repeat;
  background-size: cover;
  z-index: 1;
  left: 0;
  height: 10px;
  background-position: center;
  content: "";
  bottom: 0;
}

.page_is_home_page .home-hero-section-homepage .bannertext .bannertext-subheading {
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
          text-size-adjust: 100%;
  font-family: Poppins, sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 24px;
  text-align: center;
}

.page_is_home_page section {
  position: relative;
  overflow: hidden;
}

@media (min-width: 768px) {
  .page_is_home_page section.py-5 {
    padding-top: 4rem !important;
    padding-bottom: 4rem !important;
  }
}

.page_is_home_page .card.border-warning,
.page_is_home_page .card.border-success,
.page_is_home_page .card.border-primary {
  overflow: hidden;
}

.page_is_home_page .tab-pane {
  -webkit-animation: fadeIn 0.3s ease-in-out;
          animation: fadeIn 0.3s ease-in-out;
}

.page_is_home_page .btn-sm.btn-outline-primary:hover .fa-arrow-right,
.page_is_home_page .btn-group-sm > .btn-outline-primary.btn:hover .fa-arrow-right {
  transform: translateX(3px);
}

@media (max-width: 768px) {
  .page_is_home_page .display-4 {
    font-size: 2.5rem;
  }

  .page_is_home_page .display-6 {
    font-size: 1.75rem;
  }

  .page_is_home_page .lead {
    font-size: 1.1rem;
  }
}

.page_is_home_page .text-muted.py-5 {
  opacity: 0.7;
  font-style: italic;
}

.page_is_home_page .section-title {
  font-family: "Playfair Display", serif;
  font-size: 42px;
  font-weight: 500;
  color: var(--deep-charcoal);
  margin-bottom: 20px;
  letter-spacing: 1px;
}

@media (max-width: 768px) {
  .page_is_home_page .section-title {
    font-size: 32px;
  }
}

.page_is_home_page .title-underline {
  width: 60px;
  height: 2px;
  background-color: var(--luxury-gold);
  margin: 0 auto 30px;
}

.page_is_home_page .section-subtitle {
  font-size: 18px;
  color: var(--warm-gray);
  font-weight: 300;
  max-width: 600px;
  margin: 0 auto;
}

.page_is_home_page .shop-by-category {
  background-color: #f8f9fa;
}

.page_is_home_page .shop-by-category .category-card {
  display: block;
  text-decoration: none;
  transition: all 0.3s ease;
}

.page_is_home_page .shop-by-category .category-card:hover .category-image {
  transform: translateY(-5px);
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1);
}

.page_is_home_page .shop-by-category .category-card:hover .category-link {
  color: var(--luxury-gold);
}

.page_is_home_page .shop-by-category .category-image {
  position: relative;
  overflow: hidden;
  height: 300px;
  transition: all 0.3s ease;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
  margin-bottom: 20px;
}

.page_is_home_page .shop-by-category .category-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.3s ease;
}

.page_is_home_page .shop-by-category .category-info {
  text-align: center;
  padding: 0 10px 20px;
}

.page_is_home_page .shop-by-category .category-title {
  font-family: "Playfair Display", serif;
  font-size: 24px;
  font-weight: 400;
  margin-bottom: 10px;
  letter-spacing: 1px;
  color: var(--deep-charcoal);
}

.page_is_home_page .shop-by-category .category-link {
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 2px;
  color: #1e1e56;
  transition: color 0.3s ease;
}

.page_is_home_page .featured-collection {
  background-color: var(--soft-cream);
}

.page_is_home_page .featured-collection .featured-product-card {
  transition: all 0.3s ease;
}

.page_is_home_page .featured-collection .featured-product-card:hover {
  transform: translateY(-10px);
}

.page_is_home_page .featured-collection .featured-product-card .card {
  border: none;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
}

.page_is_home_page .featured-collection .featured-product-card .card:hover {
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12);
}

.page_is_home_page .featured-collection .btn-outline-primary {
  padding: 12px 40px;
  font-size: 16px;
  letter-spacing: 1px;
  text-transform: uppercase;
  font-weight: 400;
  border-width: 2px;
}

.page_is_home_page .featured-collection .btn-outline-primary:hover {
  background-color: #1e1e56;
  border-color: #1e1e56;
}

.page_is_home_page .artisan-spotlight {
  background-color: white;
}

.page_is_home_page .artisan-spotlight .artisan-card {
  text-align: center;
  padding: 30px;
  background: white;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
  transition: all 0.3s ease;
  height: 100%;
}

.page_is_home_page .artisan-spotlight .artisan-card:hover {
  transform: translateY(-10px);
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.12);
}

.page_is_home_page .artisan-spotlight .artisan-image {
  width: 200px;
  height: 200px;
  margin: 0 auto 25px;
  overflow: hidden;
  border-radius: 50%;
  border: 5px solid var(--soft-cream);
}

.page_is_home_page .artisan-spotlight .artisan-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.3s ease;
}

.page_is_home_page .artisan-spotlight .artisan-name {
  font-family: "Playfair Display", serif;
  font-size: 24px;
  color: var(--deep-charcoal);
  margin-bottom: 5px;
}

.page_is_home_page .artisan-spotlight .artisan-specialty {
  color: var(--luxury-gold);
  font-size: 16px;
  margin-bottom: 5px;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.page_is_home_page .artisan-spotlight .artisan-experience {
  color: var(--warm-gray);
  font-size: 14px;
  margin-bottom: 20px;
}

.page_is_home_page .artisan-spotlight .artisan-link {
  color: #1e1e56;
  text-decoration: none;
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 1px;
  transition: all 0.3s ease;
}

.page_is_home_page .artisan-spotlight .artisan-link:hover {
  color: var(--luxury-gold);
}

.page_is_home_page .shop-by-occasion {
  background-color: var(--soft-cream);
}

.page_is_home_page .shop-by-occasion .occasion-card {
  display: block;
  text-align: center;
  padding: 40px 20px;
  background: white;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
  text-decoration: none;
  transition: all 0.3s ease;
  height: 100%;
}

.page_is_home_page .shop-by-occasion .occasion-card:hover {
  transform: translateY(-10px);
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.12);
}

.page_is_home_page .shop-by-occasion .occasion-card:hover .occasion-icon {
  background-color: #1e1e56;
  color: white;
}

.page_is_home_page .shop-by-occasion .occasion-icon {
  width: 80px;
  height: 80px;
  margin: 0 auto 20px;
  background-color: var(--soft-cream);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 32px;
  color: #1e1e56;
  transition: all 0.3s ease;
}

.page_is_home_page .shop-by-occasion .occasion-title {
  font-family: "Playfair Display", serif;
  font-size: 22px;
  color: var(--deep-charcoal);
  margin-bottom: 10px;
}

.page_is_home_page .shop-by-occasion .occasion-subtitle {
  color: var(--warm-gray);
  font-size: 14px;
  margin: 0;
}

.page_is_home_page .caratx-promise {
  background-color: white;
}

.page_is_home_page .caratx-promise .promise-card {
  text-align: center;
  padding: 40px 20px;
}

.page_is_home_page .caratx-promise .promise-icon {
  width: 100px;
  height: 100px;
  margin: 0 auto 25px;
  background-color: var(--soft-cream);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 40px;
  color: var(--luxury-gold);
  transition: transform 0.3s ease;
}

.page_is_home_page .caratx-promise .promise-title {
  font-family: "Playfair Display", serif;
  font-size: 24px;
  color: var(--deep-charcoal);
  margin-bottom: 15px;
}

.page_is_home_page .caratx-promise .promise-description {
  color: var(--warm-gray);
  font-size: 16px;
  line-height: 1.6;
  max-width: 300px;
  margin: 0 auto;
}

.page_is_home_page .current-offers {
  background-color: var(--soft-cream);
}

.page_is_home_page .current-offers .sale-product-card {
  position: relative;
}

.page_is_home_page .current-offers .sale-product-card::before {
  content: "Private Sale";
  position: absolute;
  top: 20px;
  left: 20px;
  background-color: #1e1e56;
  color: white;
  padding: 5px 15px;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 1px;
  z-index: 10;
}

@media (max-width: 768px) {
  .page_is_home_page .category-image {
    height: 200px;
  }

  .page_is_home_page .category-title {
    font-size: 20px;
  }

  .page_is_home_page .artisan-card {
    padding: 20px;
  }

  .page_is_home_page .artisan-image {
    width: 150px;
    height: 150px;
  }

  .page_is_home_page .promise-icon,
  .page_is_home_page .occasion-icon {
    width: 70px;
    height: 70px;
    font-size: 28px;
  }
}

@media (min-width: 1001px) and (max-width: 1200px) {
  .page_is_home_page .home-hero-section-homepage .bannertext .bannertext-heading {
    font-size: 36px !important;
  }
}

@media (max-width: 1000px) {
  .page_is_home_page .home-hero-section-homepage {
    height: 350px;
  }

  .page_is_home_page .home-hero-section-homepage .bannertext {
    position: absolute;
    top: 50%;
    width: 90%;
    left: 5%;
    right: 5%;
    transform: translateY(-50%);
    text-align: center;
  }

  .page_is_home_page .home-hero-section-homepage .bannertext .bannertext-heading {
    font-size: 36px;
    line-height: 1.2;
    margin-bottom: 20px;
  }

  .page_is_home_page .home-hero-section-homepage .bannertext .bannertext-heading .linegred::before {
    width: 180px;
    left: 50%;
    transform: translateX(-50%);
  }

  .page_is_home_page .home-hero-section-homepage .bannertext p {
    font-size: 16px;
    line-height: 1.4;
    margin-bottom: 25px;
  }

  .page_is_home_page .home-hero-section-homepage .bannertext div {
    text-align: center;
  }

  .page_is_home_page .home-hero-section-homepage .bannertext div a.btn {
    width: auto !important;
    max-width: 275px;
    margin: 0 auto 15px !important;
    display: block !important;
  }
}

@media (max-width: 768px) {
  .page_is_home_page .home-hero-section-homepage {
    height: 320px;
  }

  .page_is_home_page .home-hero-section-homepage .bannertext .bannertext-heading {
    font-size: 28px;
  }

  .page_is_home_page .home-hero-section-homepage .bannertext .bannertext-heading .linegred::before {
    width: 140px;
    height: 8px;
  }

  .page_is_home_page .home-hero-section-homepage .bannertext p {
    font-size: 14px;
    padding: 0 20px;
  }

  .page_is_home_page .home-hero-section-homepage .bannertext a.btn {
    font-size: 14px;
    padding: 10px 30px;
  }
}

@media (max-width: 480px) {
  .page_is_home_page .home-hero-section-homepage {
    height: 280px;
  }

  .page_is_home_page .home-hero-section-homepage .bannertext .bannertext-heading {
    font-size: 22px;
  }

  .page_is_home_page .home-hero-section-homepage .bannertext .bannertext-heading .linegred::before {
    width: 100px;
    height: 6px;
  }

  .page_is_home_page .home-hero-section-homepage .bannertext p {
    font-size: 13px;
    padding: 0 10px;
  }
}

@media (max-width: 750px) {
  .page_is_home_page .shop-by-category .row {
    margin-left: -8px;
    margin-right: -8px;
  }

  .page_is_home_page .shop-by-category .col-md-4 {
    padding-left: 8px;
    padding-right: 8px;
    flex: 0 0 50%;
    max-width: 50%;
    margin-bottom: 16px;
  }

  .page_is_home_page .shop-by-category .category-card {
    zoom: 0.85;
  }

  .page_is_home_page .shop-by-category .category-card .category-image {
    height: 180px;
  }

  .page_is_home_page .shop-by-category .category-card .category-info {
    padding: 0 5px 15px;
  }

  .page_is_home_page .shop-by-category .category-card .category-title {
    font-size: 18px;
    margin-bottom: 5px;
  }

  .page_is_home_page .shop-by-category .category-card .category-link {
    font-size: 12px;
  }
}

@media (max-width: 480px) {
  .page_is_home_page .shop-by-category .category-card {
    zoom: 0.75;
  }

  .page_is_home_page .shop-by-category .category-card .category-image {
    height: 150px;
  }

  .page_is_home_page .shop-by-category .category-card .category-title {
    font-size: 16px;
  }
}

@media (max-width: 750px) {
  .page_is_home_page .featured-collection .col-md-4 {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .page_is_home_page .featured-collection .col-md-4 .featured-product-card {
    zoom: 0.85;
  }
}

@media (max-width: 750px) {
  .page_is_home_page .artisan-spotlight .col-md-4 {
    margin-bottom: 30px;
  }

  .page_is_home_page .artisan-spotlight .col-md-4:last-child {
    margin-bottom: 0;
  }

  .page_is_home_page .artisan-spotlight .artisan-card {
    padding: 20px;
    zoom: 0.9;
  }

  .page_is_home_page .artisan-spotlight .artisan-card .artisan-image {
    width: 120px;
    height: 120px;
    margin-bottom: 15px;
  }

  .page_is_home_page .artisan-spotlight .artisan-card .artisan-name {
    font-size: 20px;
  }

  .page_is_home_page .artisan-spotlight .artisan-card .artisan-specialty {
    font-size: 14px;
  }

  .page_is_home_page .artisan-spotlight .artisan-card .artisan-experience {
    font-size: 13px;
  }
}

@media (max-width: 750px) {
  .page_is_home_page .shop-by-occasion .col-md-3 {
    flex: 0 0 50%;
    max-width: 50%;
    margin-bottom: 20px;
  }

  .page_is_home_page .shop-by-occasion .col-md-3 .occasion-card {
    padding: 30px 15px;
    zoom: 0.85;
  }

  .page_is_home_page .shop-by-occasion .col-md-3 .occasion-card .occasion-icon {
    width: 60px;
    height: 60px;
    font-size: 24px;
    margin-bottom: 15px;
  }

  .page_is_home_page .shop-by-occasion .col-md-3 .occasion-card .occasion-title {
    font-size: 18px;
  }

  .page_is_home_page .shop-by-occasion .col-md-3 .occasion-card .occasion-subtitle {
    font-size: 12px;
  }
}

@media (max-width: 750px) {
  .page_is_home_page .caratx-promise .col-md-4 {
    margin-bottom: 30px;
  }

  .page_is_home_page .caratx-promise .col-md-4:last-child {
    margin-bottom: 0;
  }

  .page_is_home_page .caratx-promise .col-md-4 .promise-card {
    zoom: 0.9;
  }

  .page_is_home_page .caratx-promise .col-md-4 .promise-card .promise-icon {
    width: 70px;
    height: 70px;
    font-size: 30px;
    margin-bottom: 20px;
  }

  .page_is_home_page .caratx-promise .col-md-4 .promise-card .promise-title {
    font-size: 20px;
  }

  .page_is_home_page .caratx-promise .col-md-4 .promise-card .promise-description {
    font-size: 14px;
  }
}

@media (max-width: 750px) {
  .page_is_home_page .current-offers .col-md-3 {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .page_is_home_page .current-offers .col-md-3 .sale-product-card {
    zoom: 0.85;
  }

  .page_is_home_page .current-offers .col-md-3 .sale-product-card::before {
    font-size: 10px;
    padding: 3px 10px;
    top: 10px;
    left: 10px;
  }
}

@media (max-width: 750px) {
  .page_is_home_page section {
    padding: 40px 0 !important;
  }

  .page_is_home_page .section-title {
    font-size: 28px;
    margin-bottom: 15px;
  }

  .page_is_home_page .title-underline {
    width: 40px;
    margin-bottom: 20px;
  }

  .page_is_home_page .section-subtitle {
    font-size: 14px;
    padding: 0 20px;
  }
}

@media (max-width: 750px) and (max-width: 480px) {
  .page_is_home_page .btn {
    width: 100%;
    margin-bottom: 10px;
  }
}

@media (max-width: 320px) {
  .page_is_home_page .home-hero-section-homepage {
    height: 250px;
  }

  .page_is_home_page .home-hero-section-homepage .bannertext-heading {
    font-size: 20px !important;
  }

  .page_is_home_page .shop-by-category .col-md-4,
  .page_is_home_page .shop-by-category .col-md-3,
  .page_is_home_page .featured-collection .col-md-4,
  .page_is_home_page .featured-collection .col-md-3,
  .page_is_home_page .shop-by-occasion .col-md-4,
  .page_is_home_page .shop-by-occasion .col-md-3,
  .page_is_home_page .current-offers .col-md-4,
  .page_is_home_page .current-offers .col-md-3 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .page_is_home_page .shop-by-category .col-md-4 .category-card,
  .page_is_home_page .shop-by-category .col-md-4 .featured-product-card,
  .page_is_home_page .shop-by-category .col-md-4 .occasion-card,
  .page_is_home_page .shop-by-category .col-md-4 .sale-product-card,
  .page_is_home_page .shop-by-category .col-md-3 .category-card,
  .page_is_home_page .shop-by-category .col-md-3 .featured-product-card,
  .page_is_home_page .shop-by-category .col-md-3 .occasion-card,
  .page_is_home_page .shop-by-category .col-md-3 .sale-product-card,
  .page_is_home_page .featured-collection .col-md-4 .category-card,
  .page_is_home_page .featured-collection .col-md-4 .featured-product-card,
  .page_is_home_page .featured-collection .col-md-4 .occasion-card,
  .page_is_home_page .featured-collection .col-md-4 .sale-product-card,
  .page_is_home_page .featured-collection .col-md-3 .category-card,
  .page_is_home_page .featured-collection .col-md-3 .featured-product-card,
  .page_is_home_page .featured-collection .col-md-3 .occasion-card,
  .page_is_home_page .featured-collection .col-md-3 .sale-product-card,
  .page_is_home_page .shop-by-occasion .col-md-4 .category-card,
  .page_is_home_page .shop-by-occasion .col-md-4 .featured-product-card,
  .page_is_home_page .shop-by-occasion .col-md-4 .occasion-card,
  .page_is_home_page .shop-by-occasion .col-md-4 .sale-product-card,
  .page_is_home_page .shop-by-occasion .col-md-3 .category-card,
  .page_is_home_page .shop-by-occasion .col-md-3 .featured-product-card,
  .page_is_home_page .shop-by-occasion .col-md-3 .occasion-card,
  .page_is_home_page .shop-by-occasion .col-md-3 .sale-product-card,
  .page_is_home_page .current-offers .col-md-4 .category-card,
  .page_is_home_page .current-offers .col-md-4 .featured-product-card,
  .page_is_home_page .current-offers .col-md-4 .occasion-card,
  .page_is_home_page .current-offers .col-md-4 .sale-product-card,
  .page_is_home_page .current-offers .col-md-3 .category-card,
  .page_is_home_page .current-offers .col-md-3 .featured-product-card,
  .page_is_home_page .current-offers .col-md-3 .occasion-card,
  .page_is_home_page .current-offers .col-md-3 .sale-product-card {
    zoom: 1;
  }
}

@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

/**
 * Shop Page Styles
 * Styles specific to the shop/catalog pages
 */

.page_is_shop_page .shop-page {
  min-height: 60vh;
}

.page_is_shop_page .shop-page h1 .text-purple,
.page_is_shop_page .shop-page .h1 .text-purple {
  color: #a37eba;
}

.page_is_shop_page .shop-page h1 .text-teal,
.page_is_shop_page .shop-page .h1 .text-teal {
  color: #7ebaad;
}

.page_is_shop_page .dropdown-item.active {
  background-color: var(--bs-light);
  font-weight: 600;
}

.page_is_shop_page .dropdown-item.active::before {
  content: "✓";
  margin-right: 0.5rem;
  color: var(--bs-success);
}

.page_is_shop_page .view-toggle-btn.disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

.page_is_shop_page .products-container.loading {
  position: relative;
  min-height: 400px;
}

.page_is_shop_page .products-container.loading::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(255, 255, 255, 0.8);
  z-index: 10;
}

.page_is_shop_page .products-container.loading::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 40px;
  height: 40px;
  margin: -20px 0 0 -20px;
  border: 4px solid #f3f3f3;
  border-top: 4px solid var(--bs-primary);
  border-radius: 50%;
  -webkit-animation: spin 1s linear infinite;
          animation: spin 1s linear infinite;
  z-index: 11;
}

.page_is_shop_page .filter-sidebar-card {
  position: -webkit-sticky;
  position: sticky;
  top: 1rem;
}

.page_is_shop_page .filter-sidebar-card .filter-section {
  border-color: rgba(0, 0, 0, 0.1) !important;
}

.page_is_shop_page .filter-sidebar-card .filter-section .sort-option,
.page_is_shop_page .filter-sidebar-card .filter-section .diamond-shape-option {
  transition: all 0.2s ease-in-out;
}

.page_is_shop_page .filter-sidebar-card .filter-section .sort-option.active,
.page_is_shop_page .filter-sidebar-card .filter-section .sort-option:hover,
.page_is_shop_page .filter-sidebar-card .filter-section .diamond-shape-option.active,
.page_is_shop_page .filter-sidebar-card .filter-section .diamond-shape-option:hover {
  background-color: var(--bs-primary) !important;
  color: white !important;
}

.page_is_shop_page .filter-sidebar-card .filter-section .diamond-shape-option {
  aspect-ratio: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page_is_shop_page .filter-sidebar-card .filter-section .diamond-shape-option.active {
  border-color: var(--bs-primary) !important;
}

.page_is_shop_page .filter-sidebar-card .filter-section h6 .filter-count-badge,
.page_is_shop_page .filter-sidebar-card .filter-section .h6 .filter-count-badge {
  font-size: 0.75rem;
  padding: 0.25rem 0.5rem;
  vertical-align: middle;
}

.page_is_shop_page .filter-active.form-control,
.page_is_shop_page .select2-container--bootstrap4 .filter-active.select2-selection,
.select2-container--bootstrap4 .page_is_shop_page .filter-active.select2-selection,
.page_is_shop_page .filter-active.form-select {
  border-color: var(--bs-primary) !important;
  box-shadow: 0 0 0 0.2rem rgba(var(--bs-primary-rgb), 0.15);
}

.page_is_shop_page .filter-active.form-check .form-check-label {
  font-weight: 600;
  color: var(--bs-primary);
}

.page_is_shop_page .form-control,
.page_is_shop_page .select2-container--bootstrap4 .select2-selection,
.select2-container--bootstrap4 .page_is_shop_page .select2-selection,
.page_is_shop_page .form-select,
.page_is_shop_page .form-check-label {
  transition: all 0.2s ease-in-out;
}

.page_is_shop_page .active-filters-card .badge {
  font-size: 0.875rem;
  font-weight: 500;
}

.page_is_shop_page .active-filters-card .badge a {
  opacity: 0.8;
  transition: opacity 0.2s ease-in-out;
}

.page_is_shop_page .active-filters-card .badge a:hover {
  opacity: 1;
}

.page_is_shop_page .price-range-slider {
  margin: 1rem 0.5rem;
}

.page_is_shop_page .price-range-slider .ui-slider-range {
  background-color: var(--bs-primary);
}

.page_is_shop_page .price-range-slider .ui-slider-handle {
  border-color: var(--bs-primary);
}

.page_is_shop_page .price-range-slider .ui-slider-handle:focus {
  outline: none;
  box-shadow: 0 0 0 0.2rem rgba(var(--bs-primary-rgb), 0.25);
}

@media (max-width: 991.98px) {
  .page_is_shop_page .filter-toggle-mobile {
    position: -webkit-sticky;
    position: sticky;
    top: 70px;
    z-index: 100;
    background: white;
    padding-bottom: 1rem;
  }
}

@-webkit-keyframes spin {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

.bg-purple {
  background-color: #a37eba !important;
  color: white;
}

.bg-teal {
  background-color: #7ebaad !important;
  color: white;
}

.text-purple {
  color: #a37eba !important;
}

.text-teal {
  color: #7ebaad !important;
}

#filterOffcanvas .offcanvas-body .filter-form .card {
  border: none;
  box-shadow: none;
  background: transparent;
}

#filterOffcanvas .offcanvas-body .filter-form .card .card-body {
  padding: 0;
}

#filterOffcanvas .apply-filters-mobile {
  position: -webkit-sticky;
  position: sticky;
  bottom: 0;
  background: white;
  padding: 1rem;
  margin: 0 -1rem -1rem;
  border-top: 1px solid var(--bs-gray-300);
}

@media (max-width: 575.98px) {
  .page_is_shop_page .shop-page .page-header {
    flex-direction: column;
    align-items: flex-start !important;
    gap: 1rem;
  }

  .page_is_shop_page .shop-page .page-header h1,
  .page_is_shop_page .shop-page .page-header .h1 {
    font-size: 1.5rem;
  }

  .page_is_shop_page .shop-page .page-header .dropdown {
    width: 100%;
  }

  .page_is_shop_page .shop-page .page-header .dropdown .btn {
    width: 100%;
    justify-content: space-between;
  }

  .page_is_shop_page .shop-page .view-toggle-btn {
    flex: 1;
  }
}

/**
 * Shopping Cart Page Styles
 * Styles specific to the shopping cart pages
 */

.page_is_cart_page .card-body > .alert,
.page_is_cart_unified_page .card-body > .alert {
  margin-bottom: 15px !important;
}

.page_is_cart_page .bg-purple,
.page_is_cart_unified_page .bg-purple {
  background-color: #a37eba !important;
  color: white !important;
}

.page_is_cart_page .bg-teal,
.page_is_cart_unified_page .bg-teal {
  background-color: #7ebaad !important;
  color: white !important;
}

.page_is_cart_page .cart-quantity-control,
.page_is_cart_unified_page .cart-quantity-control {
  max-width: 120px;
}

.page_is_cart_page .cart-quantity-control .btn,
.page_is_cart_unified_page .cart-quantity-control .btn {
  width: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page_is_cart_page .cart-quantity-control .btn i,
.page_is_cart_unified_page .cart-quantity-control .btn i {
  font-size: 0.75rem;
}

.page_is_cart_page .cart-quantity-control .form-control,
.page_is_cart_page .cart-quantity-control .select2-container--bootstrap4 .select2-selection,
.select2-container--bootstrap4 .page_is_cart_page .cart-quantity-control .select2-selection,
.page_is_cart_unified_page .cart-quantity-control .form-control,
.page_is_cart_unified_page .cart-quantity-control .select2-container--bootstrap4 .select2-selection,
.select2-container--bootstrap4 .page_is_cart_unified_page .cart-quantity-control .select2-selection {
  border-left: 0;
  border-right: 0;
  font-weight: 600;
}

.page_is_cart_page .cart-quantity-control .form-control:focus,
.page_is_cart_page .cart-quantity-control .select2-container--bootstrap4 .select2-selection:focus,
.select2-container--bootstrap4 .page_is_cart_page .cart-quantity-control .select2-selection:focus,
.page_is_cart_unified_page .cart-quantity-control .form-control:focus,
.page_is_cart_unified_page .cart-quantity-control .select2-container--bootstrap4 .select2-selection:focus,
.select2-container--bootstrap4 .page_is_cart_unified_page .cart-quantity-control .select2-selection:focus {
  box-shadow: none;
  border-color: #dee2e6;
}

.page_is_cart_page .table,
.page_is_cart_page .prose table,
.prose .page_is_cart_page table,
.page_is_cart_unified_page .table,
.page_is_cart_unified_page .prose table,
.prose .page_is_cart_unified_page table {
  table-layout: fixed;
}

.page_is_cart_page .table .align-middle td,
.page_is_cart_page .prose table .align-middle td,
.prose .page_is_cart_page table .align-middle td,
.page_is_cart_unified_page .table .align-middle td,
.page_is_cart_unified_page .prose table .align-middle td,
.prose .page_is_cart_unified_page table .align-middle td {
  vertical-align: middle;
}

.page_is_cart_page .table thead th:nth-child(1),
.page_is_cart_page .prose table thead th:nth-child(1),
.prose .page_is_cart_page table thead th:nth-child(1),
.page_is_cart_unified_page .table thead th:nth-child(1),
.page_is_cart_unified_page .prose table thead th:nth-child(1),
.prose .page_is_cart_unified_page table thead th:nth-child(1) {
  width: auto;
}

.page_is_cart_page .table thead th:nth-child(2),
.page_is_cart_page .prose table thead th:nth-child(2),
.prose .page_is_cart_page table thead th:nth-child(2),
.page_is_cart_unified_page .table thead th:nth-child(2),
.page_is_cart_unified_page .prose table thead th:nth-child(2),
.prose .page_is_cart_unified_page table thead th:nth-child(2) {
  width: 100px;
}

.page_is_cart_page .table thead th:nth-child(3),
.page_is_cart_page .prose table thead th:nth-child(3),
.prose .page_is_cart_page table thead th:nth-child(3),
.page_is_cart_unified_page .table thead th:nth-child(3),
.page_is_cart_unified_page .prose table thead th:nth-child(3),
.prose .page_is_cart_unified_page table thead th:nth-child(3) {
  width: 125px;
}

.page_is_cart_page .table thead th:nth-child(4),
.page_is_cart_page .prose table thead th:nth-child(4),
.prose .page_is_cart_page table thead th:nth-child(4),
.page_is_cart_unified_page .table thead th:nth-child(4),
.page_is_cart_unified_page .prose table thead th:nth-child(4),
.prose .page_is_cart_unified_page table thead th:nth-child(4) {
  width: 100px;
}

.page_is_cart_page .table thead th:nth-child(5),
.page_is_cart_page .prose table thead th:nth-child(5),
.prose .page_is_cart_page table thead th:nth-child(5),
.page_is_cart_unified_page .table thead th:nth-child(5),
.page_is_cart_unified_page .prose table thead th:nth-child(5),
.prose .page_is_cart_unified_page table thead th:nth-child(5) {
  width: 60px;
}

.page_is_cart_page .table td:nth-child(1) .me-3,
.page_is_cart_page .prose table td:nth-child(1) .me-3,
.prose .page_is_cart_page table td:nth-child(1) .me-3,
.page_is_cart_unified_page .table td:nth-child(1) .me-3,
.page_is_cart_unified_page .prose table td:nth-child(1) .me-3,
.prose .page_is_cart_unified_page table td:nth-child(1) .me-3 {
  width: 90px;
  flex-shrink: 0;
}

.page_is_cart_page .table td:nth-child(2),
.page_is_cart_page .prose table td:nth-child(2),
.prose .page_is_cart_page table td:nth-child(2),
.page_is_cart_unified_page .table td:nth-child(2),
.page_is_cart_unified_page .prose table td:nth-child(2),
.prose .page_is_cart_unified_page table td:nth-child(2) {
  text-align: right;
  width: 100px;
}

.page_is_cart_page .table td:nth-child(3),
.page_is_cart_page .prose table td:nth-child(3),
.prose .page_is_cart_page table td:nth-child(3),
.page_is_cart_unified_page .table td:nth-child(3),
.page_is_cart_unified_page .prose table td:nth-child(3),
.prose .page_is_cart_unified_page table td:nth-child(3) {
  width: 125px;
}

.page_is_cart_page .table td:nth-child(3) .cart-quantity-control,
.page_is_cart_page .prose table td:nth-child(3) .cart-quantity-control,
.prose .page_is_cart_page table td:nth-child(3) .cart-quantity-control,
.page_is_cart_unified_page .table td:nth-child(3) .cart-quantity-control,
.page_is_cart_unified_page .prose table td:nth-child(3) .cart-quantity-control,
.prose .page_is_cart_unified_page table td:nth-child(3) .cart-quantity-control {
  justify-content: center;
  max-width: 120px;
  margin: 0 auto;
}

.page_is_cart_page .table td:nth-child(4),
.page_is_cart_page .prose table td:nth-child(4),
.prose .page_is_cart_page table td:nth-child(4),
.page_is_cart_unified_page .table td:nth-child(4),
.page_is_cart_unified_page .prose table td:nth-child(4),
.prose .page_is_cart_unified_page table td:nth-child(4) {
  text-align: right;
  width: 100px;
}

.page_is_cart_page .table td:nth-child(5),
.page_is_cart_page .prose table td:nth-child(5),
.prose .page_is_cart_page table td:nth-child(5),
.page_is_cart_unified_page .table td:nth-child(5),
.page_is_cart_unified_page .prose table td:nth-child(5),
.prose .page_is_cart_unified_page table td:nth-child(5) {
  width: 60px;
  text-align: center;
}

.page_is_cart_page .card,
.page_is_cart_unified_page .card {
  border-radius: 0 !important;
}

.page_is_cart_page .card.position-sticky,
.page_is_cart_unified_page .card.position-sticky {
  z-index: 1020;
}

@media (min-width: 992px) {
  .page_is_cart_page .card.cart-summary,
  .page_is_cart_unified_page .card.cart-summary {
    position: -webkit-sticky;
    position: sticky;
    top: 2rem;
  }
}

.page_is_cart_page .card .card-header.bg-primary,
.page_is_cart_unified_page .card .card-header.bg-primary {
  background: #1e1e56 !important;
  color: white !important;
  border-radius: 0;
}

.page_is_cart_page .card .card-header.bg-primary h5,
.page_is_cart_page .card .card-header.bg-primary .h5,
.page_is_cart_unified_page .card .card-header.bg-primary h5,
.page_is_cart_unified_page .card .card-header.bg-primary .h5 {
  color: white !important;
  font-size: 1.4rem;
}

.page_is_cart_page .card .card-header.bg-primary h5 i,
.page_is_cart_page .card .card-header.bg-primary .h5 i,
.page_is_cart_unified_page .card .card-header.bg-primary h5 i,
.page_is_cart_unified_page .card .card-header.bg-primary .h5 i {
  color: white !important;
}

.page_is_cart_page .card .alert-success,
.page_is_cart_unified_page .card .alert-success {
  background-color: rgba(25, 135, 84, 0.1) !important;
  border: 1px solid rgba(25, 135, 84, 0.2) !important;
}

.page_is_cart_page .card .alert-success .btn-outline-danger,
.page_is_cart_unified_page .card .alert-success .btn-outline-danger {
  --bs-btn-border-width: 1px;
  --bs-btn-hover-bg: #dc3545;
  --bs-btn-hover-color: white;
}

.page_is_cart_page .card .bg-light,
.page_is_cart_unified_page .card .bg-light {
  background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%) !important;
  border: 1px solid #dee2e6;
}

.page_is_cart_page .card .btn-success,
.page_is_cart_unified_page .card .btn-success {
  background: #32328a !important;
  border: none;
  border-radius: 0;
  color: white !important;
  font-weight: 600;
  font-size: 0.95rem;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  padding: 0.75rem 1.5rem;
}

.page_is_cart_page .card .btn-success:hover,
.page_is_cart_unified_page .card .btn-success:hover {
  background: #4545a8 !important;
  color: white !important;
}

.page_is_cart_page .card .btn-success:focus,
.page_is_cart_unified_page .card .btn-success:focus {
  box-shadow: 0 0 0 0.25rem rgba(50, 50, 138, 0.25);
}

.page_is_cart_page .card-body.text-center .fa-shopping-cart,
.page_is_cart_unified_page .card-body.text-center .fa-shopping-cart {
  opacity: 0.6;
  margin-bottom: 1.5rem;
}

.page_is_cart_page .card-body.text-center .btn-primary,
.page_is_cart_unified_page .card-body.text-center .btn-primary {
  padding: 0.75rem 2rem;
  font-weight: 600;
  letter-spacing: 0.5px;
}

@media (max-width: 991.98px) {
  .page_is_cart_page .position-sticky,
  .page_is_cart_unified_page .position-sticky {
    position: static !important;
    margin-top: 2rem;
  }

  .page_is_cart_page .card-footer .d-flex,
  .page_is_cart_unified_page .card-footer .d-flex {
    flex-direction: column;
    gap: 1rem;
  }

  .page_is_cart_page .card-footer .d-flex .btn,
  .page_is_cart_unified_page .card-footer .d-flex .btn {
    width: 100%;
  }
}

@media (max-width: 575.98px) {
  .page_is_cart_page .table-responsive,
  .page_is_cart_unified_page .table-responsive {
    font-size: 0.875rem;
  }

  .page_is_cart_page .table-responsive .badge,
  .page_is_cart_unified_page .table-responsive .badge {
    font-size: 0.75rem;
  }

  .page_is_cart_page .table-responsive .cart-quantity-control,
  .page_is_cart_unified_page .table-responsive .cart-quantity-control {
    max-width: 100px;
  }

  .page_is_cart_page .table-responsive .cart-quantity-control .btn,
  .page_is_cart_unified_page .table-responsive .cart-quantity-control .btn {
    width: 32px;
    padding: 0.25rem;
  }
}

/**
 * Item Details Page - Complete Redesign
 * Amazon/eBay inspired layout with proper visual hierarchy
 * Body class: .page-is-item-details-page
 */

.page-is-item-details-page .container.page-body {
  max-width: 1200px;
  padding-top: 20px;
  padding-bottom: 40px;
}

.page-is-item-details-page .product-main {
  margin-bottom: 40px;
}

@media (min-width: 768px) {
  .page-is-item-details-page .product-main {
    display: flex;
    gap: 30px;
  }
}

@media (min-width: 768px) {
  .page-is-item-details-page .product-gallery {
    flex: 0 0 450px;
    max-width: 450px;
  }
}

.page-is-item-details-page .product-gallery .main-image-container {
  position: relative;
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 4px;
  margin-bottom: 15px;
  overflow: hidden;
}

.page-is-item-details-page .product-gallery .main-image-container::before {
  content: "";
  display: block;
  padding-top: 100%;
}

.page-is-item-details-page .product-gallery .main-image-container .main-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  padding: 10px;
  cursor: pointer;
}

.page-is-item-details-page .product-gallery .main-image-container .zoom-hint {
  position: absolute;
  bottom: 10px;
  right: 10px;
  background: rgba(0, 0, 0, 0.7);
  color: white;
  padding: 5px 10px;
  border-radius: 3px;
  font-size: 12px;
  pointer-events: none;
}

.page-is-item-details-page .product-gallery .thumbnail-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(70px, 1fr));
  gap: 8px;
  margin-bottom: 15px;
}

.page-is-item-details-page .product-gallery .thumbnail-grid .thumbnail-item {
  position: relative;
  background: #fff;
  border: 2px solid #e0e0e0;
  border-radius: 4px;
  overflow: hidden;
  cursor: pointer;
}

.page-is-item-details-page .product-gallery .thumbnail-grid .thumbnail-item::before {
  content: "";
  display: block;
  padding-top: 100%;
}

.page-is-item-details-page .product-gallery .thumbnail-grid .thumbnail-item img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  padding: 3px;
}

.page-is-item-details-page .product-gallery .thumbnail-grid .thumbnail-item.active {
  border-color: #1e1e56;
}

.page-is-item-details-page .product-gallery .thumbnail-grid .thumbnail-item:hover {
  border-color: #232f3e;
  opacity: 0.8;
}

.page-is-item-details-page .product-gallery .thumbnail-grid .thumbnail-item.pdf-placeholder {
  background: #f5f5f5;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-is-item-details-page .product-gallery .thumbnail-grid .thumbnail-item.pdf-placeholder .pdf-icon {
  position: absolute;
  font-size: 24px;
  color: #666;
}

.page-is-item-details-page .product-gallery .thumbnail-grid .thumbnail-item.video-placeholder {
  background: #000;
}

.page-is-item-details-page .product-gallery .thumbnail-grid .thumbnail-item.video-placeholder .play-icon {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: white;
  font-size: 24px;
}

.page-is-item-details-page .product-gallery .media-section {
  border-top: 1px solid #e0e0e0;
  padding-top: 15px;
  margin-top: 20px;
}

.page-is-item-details-page .product-gallery .media-section h6,
.page-is-item-details-page .product-gallery .media-section .h6 {
  font-size: 14px;
  margin-bottom: 10px;
  color: #333;
}

.page-is-item-details-page .product-gallery .media-section .media-placeholder {
  background: #f8f8f8;
  border: 1px dashed #ccc;
  padding: 20px;
  text-align: center;
  color: #666;
  font-size: 13px;
  margin-bottom: 10px;
}

.page-is-item-details-page .product-gallery .media-section .media-placeholder i {
  display: block;
  font-size: 32px;
  margin-bottom: 10px;
  color: #999;
}

.page-is-item-details-page .product-info {
  flex: 1;
  background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 4px;
  padding: 20px;
}

.page-is-item-details-page .product-info .product-title {
  font-size: 1.75rem;
  font-weight: bold;
  line-height: 1.3;
  color: #0f1111;
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #e0e0e0;
}

.page-is-item-details-page .product-info .price-section {
  margin-bottom: 20px;
  padding-bottom: 15px;
  border-bottom: 1px solid #e0e0e0;
}

.page-is-item-details-page .product-info .price-section .price-row {
  display: flex;
  align-items: baseline;
  gap: 15px;
}

.page-is-item-details-page .product-info .price-section .price-row .current-price {
  font-size: 28px;
  color: black;
  font-weight: 400;
}

.page-is-item-details-page .product-info .price-section .price-row .original-price {
  font-size: 18px;
  color: #565959;
  text-decoration: line-through;
}

.page-is-item-details-page .product-info .price-section .price-row .discount-badge {
  background: #cc0c39;
  color: white;
  padding: 4px 8px;
  font-size: 12px;
  font-weight: 700;
}

.page-is-item-details-page .product-info .price-section .price-details {
  margin-top: 5px;
  font-size: 14px;
  color: #007185;
}

.page-is-item-details-page .product-info .price-section .price-details .shipping-info {
  color: #565959;
}

.page-is-item-details-page .product-info .price-section .reviews-summary-inline {
  display: inline-block;
  margin-left: 15px;
  font-size: 14px;
}

.page-is-item-details-page .product-info .price-section .reviews-summary-inline .reviews-link {
  text-decoration: none;
  color: #007185;
}

.page-is-item-details-page .product-info .price-section .reviews-summary-inline .reviews-link:hover {
  color: #c45500;
  text-decoration: underline;
}

.page-is-item-details-page .product-info .price-section .reviews-summary-inline .reviews-link .stars {
  color: #1e1e56;
  font-size: 14px;
  margin-right: 3px;
}

.page-is-item-details-page .product-info .price-section .reviews-summary-inline .reviews-link .review-count {
  color: #007185;
  font-size: 13px;
}

.page-is-item-details-page .product-info .seller-card {
  background: #f7f7f7;
  border: 1px solid #ddd;
  border-radius: 4px;
  padding: 15px;
  margin-bottom: 20px;
}

.page-is-item-details-page .product-info .seller-card .seller-header {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 10px;
}

.page-is-item-details-page .product-info .seller-card .seller-header .seller-avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
  border: 2px solid #ddd;
}

.page-is-item-details-page .product-info .seller-card .seller-header .seller-info {
  flex: 1;
}

.page-is-item-details-page .product-info .seller-card .seller-header .seller-info .seller-name {
  font-weight: 600;
  color: #0f1111;
  font-size: 14px;
  margin-bottom: 2px;
}

.page-is-item-details-page .product-info .seller-card .seller-header .seller-info .seller-name a {
  color: inherit;
  text-decoration: none;
}

.page-is-item-details-page .product-info .seller-card .seller-header .seller-info .seller-name a:hover {
  color: #c45500;
  text-decoration: underline;
}

.page-is-item-details-page .product-info .seller-card .seller-header .seller-info .seller-rating {
  font-size: 13px;
  color: #565959;
}

.page-is-item-details-page .product-info .seller-card .seller-header .seller-info .seller-rating .stars {
  color: #1e1e56;
  margin-right: 5px;
}

.page-is-item-details-page .product-info .seller-card .seller-details {
  font-size: 13px;
  color: #565959;
  line-height: 1.5;
}

.page-is-item-details-page .product-info .seller-card .seller-details .detail-row {
  display: flex;
  justify-content: space-between;
  margin-bottom: 3px;
}

.page-is-item-details-page .product-info .seller-card .seller-details .detail-row strong {
  color: #0f1111;
}

.page-is-item-details-page .product-info .stock-status {
  margin-bottom: 15px;
  font-size: 18px;
}

.page-is-item-details-page .product-info .stock-status.in-stock {
  color: #007600;
}

.page-is-item-details-page .product-info .stock-status.low-stock {
  color: #b12704;
  font-weight: 600;
}

.page-is-item-details-page .product-info .stock-status.out-of-stock {
  color: #b12704;
}

.page-is-item-details-page .product-info .product-options {
  margin-bottom: 20px;
}

.page-is-item-details-page .product-info .product-options .option-group {
  margin-bottom: 15px;
  padding-bottom: 15px;
  border-bottom: 1px solid #e0e0e0;
}

.page-is-item-details-page .product-info .product-options .option-group:last-child {
  border-bottom: none;
}

.page-is-item-details-page .product-info .product-options .option-group .option-label {
  font-size: 14px;
  font-weight: 600;
  color: #0f1111;
  margin-bottom: 8px;
}

.page-is-item-details-page .product-info .product-options .option-group .color-options {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.page-is-item-details-page .product-info .product-options .option-group .color-options .color-swatch {
  width: 32px;
  height: 32px;
  border: 2px solid #e0e0e0;
  border-radius: 4px;
  cursor: pointer;
  position: relative;
}

.page-is-item-details-page .product-info .product-options .option-group .color-options .color-swatch.active {
  border-color: #1e1e56;
}

.page-is-item-details-page .product-info .product-options .option-group .color-options .color-swatch.active::after {
  content: "✓";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: white;
  font-weight: bold;
  text-shadow: 0 0 2px rgba(0, 0, 0, 0.5);
}

.page-is-item-details-page .product-info .product-options .option-group .color-options .color-swatch:hover {
  border-color: #232f3e;
}

.page-is-item-details-page .product-info .product-options .option-group select.form-select {
  max-width: 200px;
  border-color: #888c8c;
  box-shadow: 0 2px 5px rgba(15, 17, 17, 0.15);
}

.page-is-item-details-page .product-info .product-options .option-group select.form-select:focus {
  border-color: #e77600;
  box-shadow: 0 0 3px 2px rgba(228, 121, 17, 0.5);
}

.page-is-item-details-page .product-info .product-options .option-group .custom-option-placeholder {
  background: #f5f5f5;
  border: 1px dashed #ccc;
  padding: 10px;
  text-align: center;
  color: #666;
  font-size: 13px;
}

.page-is-item-details-page .product-info .quantity-section {
  margin-bottom: 20px;
}

.page-is-item-details-page .product-info .quantity-section .quantity-label {
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 8px;
}

.page-is-item-details-page .product-info .quantity-section .quantity-selector {
  display: inline-flex;
  border: 1px solid #888c8c;
  border-radius: 4px;
  overflow: hidden;
}

.page-is-item-details-page .product-info .quantity-section .quantity-selector .qty-btn {
  background: #f0f2f2;
  border: none;
  padding: 8px 12px;
  cursor: pointer;
  font-size: 16px;
  color: #0f1111;
}

.page-is-item-details-page .product-info .quantity-section .quantity-selector .qty-btn:hover {
  background: #e3e6e6;
}

.page-is-item-details-page .product-info .quantity-section .quantity-selector .qty-btn:active {
  background: #ddd;
}

.page-is-item-details-page .product-info .quantity-section .quantity-selector .qty-input {
  border: none;
  width: 50px;
  text-align: center;
  font-size: 16px;
  font-weight: 600;
}

.page-is-item-details-page .product-info .quantity-section .quantity-selector .qty-input:focus {
  outline: none;
  background: #fff7e6;
}

.page-is-item-details-page .product-info .action-buttons {
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #e0e0e0;
}

.page-is-item-details-page .product-info .trust-badges {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
  gap: 15px;
  margin-bottom: 20px;
}

.page-is-item-details-page .product-info .trust-badges .badge-item {
  text-align: center;
}

.page-is-item-details-page .product-info .trust-badges .badge-item i {
  font-size: 24px;
  color: #1e1e56;
  margin-bottom: 5px;
}

.page-is-item-details-page .product-info .trust-badges .badge-item .badge-text {
  font-size: 12px;
  color: #565959;
  line-height: 1.3;
}

.page-is-item-details-page .product-details-section {
  background: #fff;
  border-top: 1px solid #e0e0e0;
  padding-top: 30px;
  margin-top: 30px;
}

.page-is-item-details-page .product-details-section .details-container {
  max-width: 1000px;
  margin: 0 auto;
}

.page-is-item-details-page .product-details-section .section-header {
  font-size: 20px;
  font-weight: 700;
  color: #0f1111;
  margin-bottom: 20px;
  padding-bottom: 10px;
  border-bottom: 2px solid #1e1e56;
}

.page-is-item-details-page .product-details-section .key-features {
  margin-bottom: 30px;
}

.page-is-item-details-page .product-details-section .key-features ul {
  list-style: none;
  padding: 0;
}

.page-is-item-details-page .product-details-section .key-features ul li {
  position: relative;
  padding-left: 25px;
  margin-bottom: 10px;
  font-size: 14px;
  line-height: 1.6;
}

.page-is-item-details-page .product-details-section .key-features ul li::before {
  content: "✓";
  position: absolute;
  left: 0;
  color: #1e1e56;
  font-weight: bold;
}

.page-is-item-details-page .product-details-section .product-description {
  margin-bottom: 30px;
  font-size: 14px;
  line-height: 1.8;
  color: #0f1111;
}

.page-is-item-details-page .product-details-section .product-description p {
  margin-bottom: 15px;
}

.page-is-item-details-page .product-details-section .video-section {
  margin-bottom: 30px;
}

.page-is-item-details-page .product-details-section .video-section .video-container {
  background: #f7f7f7;
  border-radius: 8px;
  overflow: hidden;
}

.page-is-item-details-page .product-details-section .video-section .video-container .video-embed-wrapper {
  max-width: 100%;
  margin: 0 auto;
}

.page-is-item-details-page .product-details-section .video-section .video-container .video-embed-wrapper.mp4-video-wrapper .video-js {
  width: 100%;
  height: 100%;
}

.page-is-item-details-page .product-details-section .video-section .video-container .video-embed-wrapper.mp4-video-wrapper .video-js .vjs-big-play-button {
  font-size: 3em;
  line-height: 1.5em;
  height: 1.5em;
  width: 3em;
  border-radius: 0.3em;
  background-color: rgba(43, 51, 63, 0.7);
  border: 0.06666em solid #fff;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

.page-is-item-details-page .product-details-section .video-section .video-container .video-embed-wrapper.mp4-video-wrapper .video-js .vjs-control-bar {
  background-color: rgba(43, 51, 63, 0.7);
}

.page-is-item-details-page .product-details-section .specifications {
  margin-bottom: 30px;
}

.page-is-item-details-page .product-details-section .specifications .spec-table {
  width: 100%;
  border-collapse: collapse;
}

.page-is-item-details-page .product-details-section .specifications .spec-table tr {
  border-bottom: 1px solid #e0e0e0;
}

.page-is-item-details-page .product-details-section .specifications .spec-table tr:last-child {
  border-bottom: none;
}

.page-is-item-details-page .product-details-section .specifications .spec-table th {
  background: #f7f7f7;
  padding: 12px;
  text-align: left;
  font-weight: 600;
  font-size: 14px;
  color: #0f1111;
  width: 30%;
}

.page-is-item-details-page .product-details-section .specifications .spec-table td {
  padding: 12px;
  font-size: 14px;
  color: #565959;
}

.page-is-item-details-page .product-details-section .shipping-returns-box {
  background: #f5f7fa;
  border: 1px solid #d5d9d9;
  border-radius: 4px;
  padding: 20px;
  margin-bottom: 30px;
}

.page-is-item-details-page .product-details-section .shipping-returns-box .box-header {
  font-size: 16px;
  font-weight: 700;
  color: #0f1111;
  margin-bottom: 15px;
}

.page-is-item-details-page .product-details-section .shipping-returns-box .box-header i {
  color: #1e1e56;
  margin-right: 8px;
}

.page-is-item-details-page .product-details-section .shipping-returns-box .info-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 20px;
}

.page-is-item-details-page .product-details-section .shipping-returns-box .info-grid .info-item h6,
.page-is-item-details-page .product-details-section .shipping-returns-box .info-grid .info-item .h6 {
  font-size: 14px;
  font-weight: 600;
  color: #0f1111;
  margin-bottom: 8px;
}

.page-is-item-details-page .product-details-section .shipping-returns-box .info-grid .info-item ul {
  list-style: none;
  padding: 0;
}

.page-is-item-details-page .product-details-section .shipping-returns-box .info-grid .info-item ul li {
  font-size: 13px;
  color: #565959;
  margin-bottom: 5px;
  padding-left: 15px;
  position: relative;
}

.page-is-item-details-page .product-details-section .shipping-returns-box .info-grid .info-item ul li::before {
  content: "•";
  position: absolute;
  left: 0;
  color: #888;
}

.page-is-item-details-page .tabs-section {
  margin-top: 40px;
}

.page-is-item-details-page .tabs-section .nav-tabs {
  border-bottom: 2px solid #e0e0e0;
}

.page-is-item-details-page .tabs-section .nav-tabs .nav-link {
  color: #565959;
  border: none;
  border-bottom: 3px solid transparent;
  padding: 12px 20px;
  font-size: 16px;
  font-weight: 600;
  background: none;
}

.page-is-item-details-page .tabs-section .nav-tabs .nav-link:hover {
  color: #0f1111;
  border-color: transparent;
}

.page-is-item-details-page .tabs-section .nav-tabs .nav-link.active {
  color: #0f1111;
  border-bottom-color: #1e1e56;
  background: none;
}

.page-is-item-details-page .tabs-section .tab-content {
  padding: 30px 0;
}

.page-is-item-details-page .tabs-section .tab-content .reviews-content .review-summary {
  background: #f7f7f7;
  padding: 20px;
  border-radius: 4px;
  margin-bottom: 30px;
}

.page-is-item-details-page .tabs-section .tab-content .reviews-content .review-summary .average-rating {
  display: flex;
  align-items: center;
  gap: 15px;
  margin-bottom: 15px;
}

.page-is-item-details-page .tabs-section .tab-content .reviews-content .review-summary .average-rating .rating-number {
  font-size: 48px;
  font-weight: 300;
  color: #0f1111;
}

.page-is-item-details-page .tabs-section .tab-content .reviews-content .review-summary .average-rating .stars {
  color: #1e1e56;
  font-size: 20px;
}

.page-is-item-details-page .tabs-section .tab-content .reviews-content .review-summary .average-rating .review-count {
  color: #565959;
  font-size: 14px;
}

.page-is-item-details-page .tabs-section .tab-content .reviews-content .review-item {
  border-bottom: 1px solid #e0e0e0;
  padding: 20px 0;
}

.page-is-item-details-page .tabs-section .tab-content .reviews-content .review-item .review-header {
  display: flex;
  justify-content: space-between;
  margin-bottom: 10px;
}

.page-is-item-details-page .tabs-section .tab-content .reviews-content .review-item .review-header .reviewer-name {
  font-weight: 600;
  color: #0f1111;
}

.page-is-item-details-page .tabs-section .tab-content .reviews-content .review-item .review-header .review-date {
  font-size: 13px;
  color: #565959;
}

.page-is-item-details-page .tabs-section .tab-content .reviews-content .review-item .review-rating {
  color: #1e1e56;
  margin-bottom: 10px;
}

.page-is-item-details-page .tabs-section .tab-content .reviews-content .review-item .review-text {
  font-size: 14px;
  line-height: 1.6;
  color: #0f1111;
}

.page-is-item-details-page .tabs-section .tab-content .qa-content .ask-question-box {
  background: #f7f7f7;
  padding: 20px;
  border-radius: 4px;
  margin-bottom: 30px;
}

.page-is-item-details-page .tabs-section .tab-content .qa-content .ask-question-box textarea {
  width: 100%;
  border: 1px solid #888c8c;
  border-radius: 4px;
  padding: 10px;
  font-size: 14px;
}

.page-is-item-details-page .tabs-section .tab-content .qa-content .ask-question-box textarea:focus {
  border-color: #e77600;
  box-shadow: 0 0 3px 2px rgba(228, 121, 17, 0.5);
  outline: none;
}

.page-is-item-details-page .tabs-section .tab-content .qa-content .qa-item {
  border-bottom: 1px solid #e0e0e0;
  padding: 20px 0;
}

.page-is-item-details-page .tabs-section .tab-content .qa-content .qa-item.private-response {
  background-color: #f8f9fa;
  padding: 20px;
  border-radius: 8px;
  margin-bottom: 15px;
  border-left: 4px solid #6c757d;
}

.page-is-item-details-page .tabs-section .tab-content .qa-content .qa-item.private-response .private-label {
  color: #6c757d;
  font-size: 12px;
  font-weight: 600;
  margin-bottom: 10px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.page-is-item-details-page .tabs-section .tab-content .qa-content .qa-item.private-response .private-label i {
  margin-right: 5px;
}

.page-is-item-details-page .tabs-section .tab-content .qa-content .qa-item .question {
  font-weight: 600;
  color: #0f1111;
  margin-bottom: 10px;
}

.page-is-item-details-page .tabs-section .tab-content .qa-content .qa-item .question strong {
  color: #565959;
  margin-right: 5px;
}

.page-is-item-details-page .tabs-section .tab-content .qa-content .qa-item .question .question-meta {
  font-weight: normal;
  font-size: 12px;
  color: #999;
  margin-left: 10px;
}

.page-is-item-details-page .tabs-section .tab-content .qa-content .qa-item .answer {
  padding-left: 20px;
  color: #565959;
  font-size: 14px;
}

.page-is-item-details-page .tabs-section .tab-content .qa-content .qa-item .answer strong {
  font-weight: 600;
  color: #0f1111;
  margin-right: 5px;
}

.page-is-item-details-page .tabs-section .tab-content .qa-content .qa-item .answer .answer-meta {
  font-weight: normal;
  font-size: 12px;
  color: #999;
  margin-left: 10px;
  font-style: italic;
}

.page-is-item-details-page .related-products {
  margin-top: 50px;
  padding-top: 30px;
  border-top: 2px solid #e0e0e0;
}

.page-is-item-details-page .related-products h3,
.page-is-item-details-page .related-products .h3 {
  font-size: 20px;
  font-weight: 700;
  color: #0f1111;
  margin-bottom: 20px;
}

.page-is-item-details-page .related-products .products-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 20px;
}

.page-is-item-details-page .related-products .products-grid .product-card {
  background: white;
  border: 1px solid #e0e0e0;
  border-radius: 4px;
  padding: 15px;
  text-align: center;
}

.page-is-item-details-page .related-products .products-grid .product-card:hover {
  border-color: #c45500;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.page-is-item-details-page .related-products .products-grid .product-card .product-image {
  height: 150px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 10px;
}

.page-is-item-details-page .related-products .products-grid .product-card .product-image img {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.page-is-item-details-page .related-products .products-grid .product-card .product-name {
  font-size: 14px;
  color: #0f1111;
  margin-bottom: 5px;
  min-height: 40px;
}

.page-is-item-details-page .related-products .products-grid .product-card .product-name a {
  color: inherit;
  text-decoration: none;
}

.page-is-item-details-page .related-products .products-grid .product-card .product-name a:hover {
  color: #c45500;
}

.page-is-item-details-page .related-products .products-grid .product-card .product-price {
  font-size: 18px;
  color: #b12704;
  font-weight: 600;
}

@media (max-width: 767px) {
  .page-is-item-details-page .product-main {
    flex-direction: column;
  }

  .page-is-item-details-page .product-gallery {
    max-width: 100%;
    margin-bottom: 20px;
  }

  .page-is-item-details-page .product-gallery .main-image-container {
    touch-action: pan-y pinch-zoom;
  }

  .page-is-item-details-page .product-gallery .thumbnail-grid {
    grid-template-columns: repeat(6, 1fr);
  }

  .page-is-item-details-page .product-gallery .thumbnail-grid .thumbnail-item:nth-child(n+7) {
    display: none;
  }

  .page-is-item-details-page .product-info .product-title {
    font-size: 20px;
  }

  .page-is-item-details-page .product-info .price-section .current-price {
    font-size: 24px;
  }

  .page-is-item-details-page .product-details-section .collapsible-section {
    border-bottom: 1px solid #e0e0e0;
  }

  .page-is-item-details-page .product-details-section .collapsible-section .section-toggle {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 0;
    cursor: pointer;
  }

  .page-is-item-details-page .product-details-section .collapsible-section .section-toggle .section-title {
    font-size: 16px;
    font-weight: 600;
    color: #0f1111;
  }

  .page-is-item-details-page .product-details-section .collapsible-section .section-toggle .toggle-icon {
    font-size: 14px;
    color: #565959;
    transition: transform 0.3s;
  }

  .page-is-item-details-page .product-details-section .collapsible-section .section-toggle.collapsed .toggle-icon {
    transform: rotate(180deg);
  }

  .page-is-item-details-page .product-details-section .collapsible-section .section-content {
    padding-bottom: 15px;
  }

  .page-is-item-details-page .product-details-section .collapsible-section .section-content.collapse:not(.show) {
    display: none;
  }
}

@media (max-width: 575px) {
  .page-is-item-details-page .container.page-body {
    padding-left: 10px;
    padding-right: 10px;
  }

  .page-is-item-details-page .product-gallery .thumbnail-grid {
    grid-template-columns: repeat(4, 1fr);
  }

  .page-is-item-details-page .product-gallery .thumbnail-grid .thumbnail-item:nth-child(n+5) {
    display: none;
  }

  .page-is-item-details-page .related-products .products-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
  }
}

@media (min-width: 1200px) {
  .page-is-item-details-page .product-info {
    padding: 25px;
  }
}

.page-is-item-details-page .selection {
  max-width: 500px;
}

.page-is-item-details-page .select2-container--bootstrap4 .select2-selection--single .select2-selection__rendered {
  position: relative;
  top: -7px;
}

/**
 * Checkout Page Styles
 * Bootstrap 5 enhancements for single page checkout
 */

.page_is_checkout_page .sticky-top {
  position: -webkit-sticky !important;
  position: sticky !important;
  z-index: 10;
  top: 20px;
}

.page_is_checkout_page #account-creation-fields {
  display: none;
}

.page_is_checkout_page #shipping-address-section {
  display: none;
}

.page_is_checkout_page .order-summary .card {
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.125), 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
  border: none;
}

.page_is_checkout_page .order-summary .card-header {
  background-color: #e9ecef;
  border-bottom: 1px solid #ced4da;
}

.page_is_checkout_page .order-summary .border-bottom:last-child {
  border-bottom: none !important;
}

.page_is_checkout_page .card {
  margin-bottom: 1.5rem;
  border: 1px solid #ced4da;
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
}

.page_is_checkout_page .card .card-header {
  background-color: #e9ecef;
  border-bottom: 1px solid #ced4da;
}

.page_is_checkout_page .card .card-header h5,
.page_is_checkout_page .card .card-header .h5 {
  color: #495057;
  font-weight: 600;
}

.page_is_checkout_page .card .card-header h5 i,
.page_is_checkout_page .card .card-header .h5 i {
  color: var(--bs-primary);
}

.page_is_checkout_page .alert {
  margin-top: 0.5rem;
  padding: 0.5rem 0.75rem;
  font-size: 0.875rem;
}

.page_is_checkout_page .alert.alert-success {
  background-color: #d1ecf1;
  border-color: #bee5eb;
  color: #0c5460;
}

.page_is_checkout_page .alert.alert-warning {
  background-color: #fff3cd;
  border-color: #ffeaa7;
  color: #856404;
}

.page_is_checkout_page .alert.alert-danger {
  background-color: #f8d7da;
  border-color: #f5c6cb;
  color: #721c24;
}

.page_is_checkout_page #payment-methods .form-check {
  padding: 0.75rem;
  padding-left: 2.25rem;
  margin-bottom: 0.5rem;
  border: 1px solid #dee2e6;
  border-radius: 0.375rem;
  transition: all 0.15s ease-in-out;
  position: relative;
  cursor: pointer;
}

.page_is_checkout_page #payment-methods .form-check:hover {
  background-color: #f8f9fa;
  border-color: #adb5bd;
}

.page_is_checkout_page #payment-methods .form-check .form-check-input {
  position: absolute;
  margin-left: -1.5rem;
  margin-top: 0.25rem;
  cursor: pointer;
}

.page_is_checkout_page #payment-methods .form-check .form-check-label {
  cursor: pointer;
  display: block;
  width: 100%;
}

.page_is_checkout_page #payment-methods .form-check .form-check-input:checked ~ .form-check-label {
  color: var(--bs-primary);
  font-weight: 500;
}

.page_is_checkout_page .form-check {
  padding-left: 1.5rem;
  margin-bottom: 0.5rem;
}

.page_is_checkout_page .form-check .form-check-input {
  margin-left: -1.5rem;
  border: 1px solid #ced4da;
}

.page_is_checkout_page .form-check .form-check-input:checked {
  background-color: var(--bs-primary);
  border-color: var(--bs-primary);
}

.page_is_checkout_page .form-check .form-check-input:focus {
  border-color: var(--bs-primary);
  box-shadow: 0 0 0 0.2rem rgba(var(--bs-primary-rgb), 0.25);
}

.page_is_checkout_page .form-check .form-check-label {
  padding-left: 0.5rem;
}

.page_is_checkout_page #account-creation-fields {
  overflow: hidden;
  transition: all 0.3s ease-in-out;
}

.page_is_checkout_page #shipping-address-section {
  overflow: hidden;
  transition: all 0.3s ease-in-out;
}

.page_is_checkout_page #saved-addresses-section {
  overflow: hidden;
  transition: all 0.3s ease-in-out;
}

.page_is_checkout_page #place-order-btn {
  padding: 0.75rem 1.5rem;
  font-size: 1.1rem;
  font-weight: 600;
}

.page_is_checkout_page #place-order-btn:disabled {
  opacity: 0.7;
  cursor: not-allowed;
}

.page_is_checkout_page .text-muted {
  font-size: 0.875rem;
}

.page_is_checkout_page .text-muted .fas {
  color: var(--bs-success);
}

.page_is_checkout_page .form-control.is-invalid,
.page_is_checkout_page .select2-container--bootstrap4 .is-invalid.select2-selection,
.select2-container--bootstrap4 .page_is_checkout_page .is-invalid.select2-selection,
.page_is_checkout_page .form-select.is-invalid {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.page_is_checkout_page .form-control:focus,
.page_is_checkout_page .select2-container--bootstrap4 .select2-selection:focus,
.select2-container--bootstrap4 .page_is_checkout_page .select2-selection:focus,
.page_is_checkout_page .form-select:focus {
  border-color: var(--bs-primary);
  box-shadow: 0 0 0 0.2rem rgba(var(--bs-primary-rgb), 0.25);
}

.page_is_checkout_page .invalid-feedback,
.page_is_checkout_page .error-help-block {
  font-size: 0.875rem;
  margin-top: 0.25rem;
}

.page_is_checkout_page .modal-content {
  border: none;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}

.page_is_checkout_page .modal-content .modal-header {
  padding: 1.5rem 1.5rem 0;
}

.page_is_checkout_page .modal-content .modal-body {
  padding: 1.5rem;
}

.page_is_checkout_page .modal-content .btn {
  padding: 0.75rem 1.5rem;
  font-weight: 500;
}

@media (max-width: 991.98px) {
  .page_is_checkout_page .sticky-top {
    position: relative !important;
    top: auto !important;
  }

  .page_is_checkout_page .order-summary {
    margin-top: 2rem;
  }
}

@media (max-width: 767.98px) {
  .page_is_checkout_page .container {
    padding: 0 1rem;
  }

  .page_is_checkout_page .card {
    margin-bottom: 1rem;
  }

  .page_is_checkout_page .row {
    margin: 0;
  }

  .page_is_checkout_page .row .col-md-6,
  .page_is_checkout_page .row .col-md-3 {
    padding: 0 0.5rem;
    margin-bottom: 1rem;
  }
}

.page_is_order_received_page table th {
  color: #666666 !important;
  background: white !important;
}

.page_is_order_received_page .recived-hero-text img {
  margin-bottom: 1.5rem;
}

.page_is_order_received_page .recived-hero-text h1,
.page_is_order_received_page .recived-hero-text .h1 {
  margin-bottom: 1rem;
}

.page_is_order_received_page .clint-details-fororder {
  padding: 2rem 0;
}

.page_is_order_received_page .order-item-final-dedtails-header {
  padding: 2rem 0;
}

.page_is_order_received_page .order-item-final-total .table,
.page_is_order_received_page .order-item-final-total .prose table,
.prose .page_is_order_received_page .order-item-final-total table {
  margin-bottom: 0;
}

.page_is_order_received_page .order-item-final-total .table td,
.page_is_order_received_page .order-item-final-total .prose table td,
.prose .page_is_order_received_page .order-item-final-total table td {
  padding: 0.5rem 0;
}

.page_is_order_received_page .btn-back,
.page_is_order_received_page .btn-export,
.page_is_order_received_page .btn-export2 {
  margin: 0.5rem;
}

/**
 * Account Page Styles
 * Bootstrap 5 enhancements for user account page
 */

.page_is_account_page .your-account .account-tab-btn {
  text-align: left;
  padding: 0.75rem 1rem;
  border: none;
  border-radius: 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}

.page_is_account_page .your-account .account-tab-btn:last-child {
  border-bottom: none;
}

.page_is_account_page .your-account .account-tab-btn svg {
  fill: currentColor;
  opacity: 0.7;
  transition: opacity 0.2s ease;
}

.page_is_account_page .your-account .account-tab-btn:hover,
.page_is_account_page .your-account .account-tab-btn.active {
  background-color: var(--bs-primary);
  color: white;
}

.page_is_account_page .your-account .account-tab-btn:hover svg,
.page_is_account_page .your-account .account-tab-btn.active svg {
  opacity: 1;
}

.page_is_account_page .your-account .your-account-dashboard .bg-light {
  border: 1px solid rgba(0, 0, 0, 0.125);
}

.page_is_account_page .your-account .Custom-Order .nav-tabs .nav-link.btn-custom-order {
  border: 1px solid #dee2e6;
  border-bottom: none;
  background-color: #f8f9fa;
  color: #6c757d;
}

.page_is_account_page .your-account .Custom-Order .nav-tabs .nav-link.btn-custom-order.active {
  background-color: white;
  color: var(--bs-primary);
  border-color: #dee2e6 #dee2e6 white;
}

.page_is_account_page .your-account .Custom-Order .nav-tabs .nav-link.btn-custom-order:hover {
  background-color: #e9ecef;
  border-color: #adb5bd;
}

.page_is_account_page .your-account .Custom-Order .custom-order-tab-content {
  border: 1px solid #dee2e6;
  border-top: none;
  background-color: white;
  border-radius: 0 0 0.375rem 0.375rem;
}

.page_is_account_page .your-account .Custom-Order .custom-order-tab-content .tab-pane {
  padding: 1.5rem;
}

.page_is_account_page .your-account .form-text {
  font-size: 0.875rem;
  color: #6c757d;
}

.page_is_account_page .your-account .card-body .dataTables_wrapper {
  margin-top: 0;
}

@media (max-width: 991.98px) {
  .page_is_account_page .your-account .account-tab-btn {
    text-align: center;
  }

  .page_is_account_page .your-account .account-tab-btn svg {
    display: block;
    margin: 0 auto 0.5rem;
  }
}

/* Profile Page Styles */

.page_is_profile_page {
  /* Mobile Collapsible Sections */
  /* Accordion-style Sections */
  /* Smooth Scrolling for Mobile */
  /* Modal Swipe Indicator */
  /* Accessibility Improvements */
  /* High Contrast Mode */
  /* Loading States for Dynamic Content */
  /* Enhanced Touch Targets */
  /* Mobile Address Book Styles */
  /* Mobile Header Section */
  /* Mobile Address Cards */
  /* Mobile Empty State */
  /* Mobile Modal Optimizations */
  /* Touch Feedback */
  /* Improved Card Grid on Small Tablets */
  /* Loading States */
  /* Address Card Hover Effects */
  /* Landscape Mobile Optimization */
  /* Improved Spacing */
  /* Mobile Form Optimization Styles */
  /* Base Form Control Styles */
  /* Enhanced Touch Targets for Checkboxes and Radios */
  /* Mobile Form Spacing */
  /* Enhanced Select Dropdowns */
  /* Input Groups */
  /* File Upload Styling */
  /* Form Validation Feedback */
  /* Mobile Button Styles */
  /* Form Row Spacing */
  /* Mobile-Specific Form Layouts */
  /* Touch Feedback */
  /* Loading States */
  /* Improved Error States */
  /* Password Toggle Button Enhancement */
  /* Range Inputs (if any) */
  /* Floating Labels (if used) */
  /* iOS-Specific Fixes */
  /* Android-Specific Fixes */
  /* Mobile Dashboard Styles */
  /* Mobile Statistics Cards */
  /* Mobile Order Cards - Replace table on small screens */
  /* Mobile Welcome Section */
  /* Mobile Quick Actions */
  /* Mobile Notifications */
  /* Dashboard Touch Feedback */
  /* Improved Dashboard Spacing on Mobile */
  /* Dashboard Loading States */
  /* Landscape Mobile Dashboard Optimization */
  /* Mobile Orders Page Styles */
  /* Mobile Filter Section */
  /* Mobile Order List Cards */
  /* Mobile Status Guide */
  /* Mobile Orders Pagination */
  /* Orders Touch Feedback */
  /* Orders Loading States */
  /* Filter Badge Counter */
  /* High Contrast Orders */
  /* Landscape Mobile Orders */
  /* Mobile Order Detail Page Styles */
  /* Mobile Order Summary */
  /* Mobile Timeline */
  /* Mobile Order Items */
  /* Mobile Action Buttons */
  /* Mobile Address Cards Order Detail */
  /* Order Detail Touch Feedback */
  /* Order Detail Spacing */
  /* Status Badge Adjustments */
  /* Order Detail Loading States */
  /* High Contrast Order Detail */
  /* Print Styles */
}

@media (max-width: 767px) {
  .page_is_profile_page {
    /* Collapse Content */
    /* Address Card Expand Area */
    /* Text Truncation */
  }

  .page_is_profile_page .mobile-collapsible {
    cursor: pointer;
    position: relative;
    padding-right: 2rem;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    -webkit-tap-highlight-color: transparent;
  }

  .page_is_profile_page .mobile-collapsible::after {
    content: "\f078";
    /* fa-chevron-down */
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    transition: transform 0.3s ease;
    font-size: 0.875rem;
    color: #6c757d;
  }

  .page_is_profile_page .mobile-collapsible.collapsed::after {
    transform: translateY(-50%) rotate(-90deg);
  }

  .page_is_profile_page .mobile-collapsible:hover {
    color: var(--bs-primary);
  }

  .page_is_profile_page .mobile-collapsible:focus {
    outline: 2px solid var(--bs-primary);
    outline-offset: 2px;
    border-radius: 0.25rem;
  }

  .page_is_profile_page .mobile-collapse-content {
    overflow: hidden;
    transition: max-height 0.3s ease, opacity 0.3s ease;
    max-height: 2000px;
    opacity: 1;
  }

  .page_is_profile_page .mobile-collapse-content.collapsed {
    max-height: 0;
    opacity: 0;
    margin-bottom: 0 !important;
  }

  .page_is_profile_page .mobile-expand-area {
    position: absolute;
    bottom: 0.5rem;
    right: 0.5rem;
    width: 32px;
    height: 32px;
    background-color: var(--bs-gray-100);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
    z-index: 1;
  }

  .page_is_profile_page .mobile-expand-area:hover {
    background-color: var(--bs-gray-200);
  }

  .page_is_profile_page .mobile-expand-area i {
    font-size: 0.75rem;
    transition: transform 0.3s ease;
  }

  .page_is_profile_page .mobile-text-truncate {
    position: relative;
    max-height: 100px;
    overflow: hidden;
    transition: max-height 0.3s ease;
  }

  .page_is_profile_page .mobile-text-truncate::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 40px;
    background: linear-gradient(to bottom, transparent, white);
    pointer-events: none;
  }

  .page_is_profile_page .mobile-text-truncate.expanded {
    max-height: none;
  }

  .page_is_profile_page .mobile-text-truncate.expanded::after {
    display: none;
  }

  .page_is_profile_page .mobile-text-truncate .btn-link {
    font-size: 0.875rem;
    text-decoration: none;
    color: var(--bs-primary);
  }

  .page_is_profile_page .mobile-text-truncate .btn-link:hover {
    text-decoration: underline;
  }
}

@media (max-width: 767px) {
  .page_is_profile_page .profile-card.accordion-style {
    padding: 0;
    overflow: hidden;
  }

  .page_is_profile_page .profile-card.accordion-style > h4,
  .page_is_profile_page .profile-card.accordion-style > .h4,
  .page_is_profile_page .profile-card.accordion-style > h5,
  .page_is_profile_page .profile-card.accordion-style > .h5 {
    margin: 0;
    padding: 1rem;
    background-color: var(--bs-gray-100);
    border-bottom: 1px solid var(--bs-gray-300);
  }

  .page_is_profile_page .profile-card.accordion-style > div {
    padding: 1rem;
  }
}

@media (max-width: 767px) {
  .page_is_profile_page .horizontal-scroll {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scroll-behavior: smooth;
    scrollbar-width: thin;
  }

  .page_is_profile_page .horizontal-scroll::-webkit-scrollbar {
    height: 6px;
  }

  .page_is_profile_page .horizontal-scroll::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 3px;
  }

  .page_is_profile_page .horizontal-scroll::-webkit-scrollbar-thumb {
    background: #888;
    border-radius: 3px;
  }

  .page_is_profile_page .horizontal-scroll::-webkit-scrollbar-thumb:hover {
    background: #555;
  }
}

@media (max-width: 767px) {
  .page_is_profile_page .modal-content::before {
    content: "";
    position: absolute;
    top: 0.5rem;
    left: 50%;
    transform: translateX(-50%);
    width: 40px;
    height: 4px;
    background-color: var(--bs-gray-400);
    border-radius: 2px;
  }

  .page_is_profile_page .modal-dialog {
    margin-top: 20vh;
    transition: transform 0.3s ease;
  }
}

@media (prefers-reduced-motion: reduce) {
  .page_is_profile_page .mobile-collapsible::after,
  .page_is_profile_page .mobile-collapse-content,
  .page_is_profile_page .mobile-text-truncate,
  .page_is_profile_page .mobile-expand-area {
    transition: none;
  }
}

@media (prefers-contrast: high) {
  .page_is_profile_page .mobile-collapsible {
    border: 2px solid transparent;
  }

  .page_is_profile_page .mobile-collapsible:focus {
    border-color: var(--bs-primary);
    outline: none;
  }

  .page_is_profile_page .mobile-expand-area {
    border: 2px solid var(--bs-dark);
    background-color: white;
  }
}

.page_is_profile_page .mobile-loading {
  position: relative;
  min-height: 100px;
}

.page_is_profile_page .mobile-loading::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 30px;
  height: 30px;
  margin: -15px 0 0 -15px;
  border: 3px solid #f3f3f3;
  border-radius: 50%;
  border-top: 3px solid var(--bs-primary);
  -webkit-animation: spin 1s linear infinite;
          animation: spin 1s linear infinite;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

@media (max-width: 767px) {
  .page_is_profile_page .mobile-touch-target {
    position: relative;
    min-height: 48px;
    display: flex;
    align-items: center;
  }

  .page_is_profile_page .mobile-touch-target::before {
    content: "";
    position: absolute;
    top: -8px;
    right: -8px;
    bottom: -8px;
    left: -8px;
  }
}

@media (max-width: 767px) {
  .page_is_profile_page .d-flex.justify-content-between.align-items-center.mb-4 {
    flex-direction: column;
    align-items: stretch !important;
    text-align: center;
  }

  .page_is_profile_page .d-flex.justify-content-between.align-items-center.mb-4 > div:first-child {
    margin-bottom: 1rem;
  }

  .page_is_profile_page .d-flex.justify-content-between.align-items-center.mb-4 h3,
  .page_is_profile_page .d-flex.justify-content-between.align-items-center.mb-4 .h3 {
    font-size: 1.5rem;
  }

  .page_is_profile_page .d-flex.justify-content-between.align-items-center.mb-4 p {
    font-size: 0.875rem;
  }

  .page_is_profile_page .d-flex.justify-content-between.align-items-center.mb-4 .btn {
    width: 100%;
    min-height: 48px;
  }
}

@media (max-width: 767px) {
  .page_is_profile_page {
    /* Card Header Adjustments */
    /* Dropdown Button Enhancement */
    /* Dropdown Menu Positioning */
    /* Dropdown Items Touch Friendly */
    /* Address Details */
    /* Verification Status */
  }

  .page_is_profile_page .col-md-6.col-lg-4 {
    margin-bottom: 1rem;
  }

  .page_is_profile_page .address-card {
    padding: 1rem;
    margin-bottom: 0;
  }

  .page_is_profile_page .address-card h5,
  .page_is_profile_page .address-card .h5 {
    font-size: 1.125rem;
    line-height: 1.4;
    word-break: break-word;
  }

  .page_is_profile_page .address-card .badge {
    font-size: 0.7rem;
    padding: 0.25rem 0.5rem;
  }

  .page_is_profile_page .dropdown .btn-outline-secondary.btn-sm,
  .page_is_profile_page .dropdown .btn-group-sm > .btn-outline-secondary.btn {
    width: 44px;
    height: 44px;
    min-width: 44px;
    min-height: 44px;
    border-radius: 0.5rem;
  }

  .page_is_profile_page .dropdown-menu {
    min-width: 12rem;
    right: 0;
    left: auto;
  }

  .page_is_profile_page .dropdown-item {
    padding: 0.75rem 1rem;
    min-height: 44px;
    display: flex;
    align-items: center;
    font-size: 0.9375rem;
  }

  .page_is_profile_page .dropdown-item i {
    width: 20px;
    text-align: center;
  }

  .page_is_profile_page .address-details {
    font-size: 0.875rem;
    line-height: 1.6;
  }

  .page_is_profile_page .address-details strong {
    font-size: 1rem;
  }

  .page_is_profile_page .address-card small,
  .page_is_profile_page .address-card .small {
    font-size: 0.75rem;
  }
}

@media (max-width: 767px) {
  .page_is_profile_page .profile-card.text-center.py-5 {
    padding: 3rem 1.5rem !important;
  }

  .page_is_profile_page .profile-card .fa-3x {
    font-size: 2.5rem;
  }

  .page_is_profile_page .profile-card h4,
  .page_is_profile_page .profile-card .h4 {
    font-size: 1.25rem;
    margin-bottom: 1rem;
  }

  .page_is_profile_page .profile-card p {
    font-size: 0.875rem;
    margin-bottom: 1.5rem;
  }

  .page_is_profile_page .profile-card .btn {
    width: 100%;
    max-width: 300px;
    min-height: 48px;
  }
}

@media (max-width: 575px) {
  .page_is_profile_page .modal-dialog {
    margin: 0.5rem;
    max-width: calc(100% - 1rem);
  }

  .page_is_profile_page .modal-content {
    border-radius: 0.5rem;
  }

  .page_is_profile_page .modal-header,
  .page_is_profile_page .modal-body,
  .page_is_profile_page .modal-footer {
    padding: 1rem;
  }

  .page_is_profile_page .modal-title {
    font-size: 1.125rem;
  }

  .page_is_profile_page .modal-body p {
    font-size: 0.9375rem;
    margin-bottom: 0.75rem;
  }

  .page_is_profile_page .modal-footer {
    flex-direction: column;
    align-items: stretch;
  }

  .page_is_profile_page .modal-footer .btn {
    width: 100%;
    min-height: 48px;
    margin: 0.25rem 0;
  }

  .page_is_profile_page .modal-footer form {
    width: 100%;
    display: block;
  }
}

@media (hover: none) and (pointer: coarse) {
  .page_is_profile_page .address-card:active {
    box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
  }

  .page_is_profile_page .dropdown-item:active {
    background-color: var(--bs-gray-100);
  }
}

@media (min-width: 576px) and (max-width: 767px) {
  .page_is_profile_page .row {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 1rem;
  }

  .page_is_profile_page .col-md-6.col-lg-4 {
    margin-bottom: 0;
  }
}

.page_is_profile_page .address-card.loading {
  opacity: 0.6;
  pointer-events: none;
}

.page_is_profile_page .dropdown-item.loading {
  color: #6c757d;
  pointer-events: none;
}

@media (hover: hover) {
  .page_is_profile_page .address-card:hover {
    transform: translateY(-2px);
  }
}

@media (hover: none) {
  .page_is_profile_page .address-card:hover {
    transform: none;
  }
}

@media (max-width: 767px) and (orientation: landscape) {
  .page_is_profile_page .d-flex.justify-content-between.align-items-center.mb-4 {
    flex-direction: row;
    text-align: left;
  }

  .page_is_profile_page .d-flex.justify-content-between.align-items-center.mb-4 > div:first-child {
    margin-bottom: 0;
  }

  .page_is_profile_page .d-flex.justify-content-between.align-items-center.mb-4 .btn {
    width: auto;
  }
}

@media (max-width: 767px) {
  .page_is_profile_page .profile-content {
    padding: 0 0.5rem;
  }

  .page_is_profile_page .address-card {
    margin-bottom: 1rem;
  }

  .page_is_profile_page .row {
    margin-left: -0.5rem;
    margin-right: -0.5rem;
  }

  .page_is_profile_page .col-md-6.col-lg-4 {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
}

.page_is_profile_page .form-control,
.page_is_profile_page .select2-container--bootstrap4 .select2-selection,
.select2-container--bootstrap4 .page_is_profile_page .select2-selection,
.page_is_profile_page .form-select,
.page_is_profile_page .btn {
  min-height: 48px;
  /* Touch target minimum */
  font-size: 16px;
  /* Prevent zoom on iOS */
  border-radius: 0.5rem;
  transition: all 0.3s ease;
}

.page_is_profile_page .form-check {
  min-height: 48px;
  display: flex;
  align-items: center;
  padding: 0.75rem 0;
  margin-bottom: 0.5rem;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}

.page_is_profile_page .form-check-input {
  width: 24px;
  height: 24px;
  margin-top: 0;
  margin-right: 0.75rem;
  cursor: pointer;
  border: 2px solid #6c757d;
  transition: all 0.2s ease;
}

.page_is_profile_page .form-check-input:checked {
  background-color: var(--bs-primary);
  border-color: var(--bs-primary);
}

.page_is_profile_page .form-check-label {
  flex: 1;
  cursor: pointer;
  padding-left: 0.5rem;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  line-height: 1.5;
}

.page_is_profile_page .form-label {
  font-weight: 600;
  margin-bottom: 0.5rem;
  font-size: 0.95rem;
  color: #212529;
}

.page_is_profile_page .form-text {
  font-size: 0.875rem;
  color: #6c757d;
  margin-top: 0.25rem;
}

.page_is_profile_page .form-select {
  background-image: 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 5l6 6 6-6'/%3e%3c/svg%3e");
  background-size: 16px 12px;
  padding-right: 2.5rem;
}

.page_is_profile_page .input-group > .form-control,
.page_is_profile_page .select2-container--bootstrap4 .input-group > .select2-selection,
.select2-container--bootstrap4 .page_is_profile_page .input-group > .select2-selection,
.page_is_profile_page .input-group > .form-select,
.page_is_profile_page .input-group > .btn {
  min-height: 48px;
}

.page_is_profile_page .input-group-text {
  min-height: 48px;
  padding: 0.75rem 1rem;
  font-size: 16px;
}

.page_is_profile_page .btn-file-upload {
  min-height: 48px;
  padding: 0.75rem 1.5rem;
  font-weight: 500;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}

.page_is_profile_page .invalid-feedback,
.page_is_profile_page .error-help-block,
.page_is_profile_page .valid-feedback {
  font-size: 0.875rem;
  margin-top: 0.25rem;
  display: block;
}

.page_is_profile_page .is-invalid {
  border-color: #dc3545;
  border-width: 2px;
}

.page_is_profile_page .is-valid {
  border-color: #28a745;
  border-width: 2px;
}

.page_is_profile_page .btn {
  font-weight: 500;
  padding: 0.75rem 1.5rem;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}

.page_is_profile_page .btn-primary {
  background-color: var(--bs-primary);
  border-color: var(--bs-primary);
}

.page_is_profile_page .row.mb-3,
.page_is_profile_page .row.mb-4 {
  margin-bottom: 1.5rem !important;
}

@media (max-width: 767px) {
  .page_is_profile_page {
    /* Stack form buttons vertically on mobile */
    /* Larger spacing between form sections */
    /* Card spacing adjustments */
  }

  .page_is_profile_page .col-md-6 {
    margin-bottom: 1rem;
  }

  .page_is_profile_page .col-md-6:last-child {
    margin-bottom: 0;
  }

  .page_is_profile_page .btn-group-mobile {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
  }

  .page_is_profile_page .btn-group-mobile .btn {
    width: 100%;
  }

  .page_is_profile_page h5.mb-3,
  .page_is_profile_page .mb-3.h5 {
    margin-bottom: 1.25rem !important;
    margin-top: 2rem !important;
  }

  .page_is_profile_page .card {
    margin-bottom: 1.5rem;
  }

  .page_is_profile_page .card-body {
    padding: 1.25rem;
  }
}

.page_is_profile_page .form-control:focus,
.page_is_profile_page .select2-container--bootstrap4 .select2-selection:focus,
.select2-container--bootstrap4 .page_is_profile_page .select2-selection:focus,
.page_is_profile_page .form-select:focus,
.page_is_profile_page .btn:focus {
  outline: 3px solid rgba(13, 110, 253, 0.25);
  outline-offset: 2px;
}

.page_is_profile_page .btn[disabled] {
  opacity: 0.65;
  cursor: not-allowed;
}

.page_is_profile_page .btn.loading {
  color: transparent;
  position: relative;
}

.page_is_profile_page .btn.loading::after {
  content: "";
  position: absolute;
  width: 20px;
  height: 20px;
  top: 50%;
  left: 50%;
  margin-left: -10px;
  margin-top: -10px;
  border: 2px solid #f3f3f3;
  border-radius: 50%;
  border-top: 2px solid #3498db;
  -webkit-animation: spin 1s linear infinite;
          animation: spin 1s linear infinite;
}

.page_is_profile_page .form-control.is-invalid:focus,
.page_is_profile_page .select2-container--bootstrap4 .is-invalid.select2-selection:focus,
.select2-container--bootstrap4 .page_is_profile_page .is-invalid.select2-selection:focus {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.page_is_profile_page .password-toggle-btn {
  min-width: 48px;
  border-left: none;
}

.page_is_profile_page input[type=range] {
  height: 48px;
  -webkit-appearance: none;
  width: 100%;
  background: transparent;
}

.page_is_profile_page input[type=range]::-webkit-slider-thumb {
  -webkit-appearance: none;
  height: 32px;
  width: 32px;
  border-radius: 50%;
  background: var(--bs-primary);
  cursor: pointer;
  margin-top: -14px;
}

.page_is_profile_page input[type=range]::-webkit-slider-runnable-track {
  width: 100%;
  height: 4px;
  cursor: pointer;
  background: #ddd;
  border-radius: 2px;
}

.page_is_profile_page .form-floating > .form-control,
.page_is_profile_page .select2-container--bootstrap4 .form-floating > .select2-selection,
.select2-container--bootstrap4 .page_is_profile_page .form-floating > .select2-selection,
.page_is_profile_page .form-floating > .form-select {
  min-height: 58px;
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}

.page_is_profile_page .form-floating > label {
  padding: 1rem 0.75rem;
}

@supports (-webkit-touch-callout: none) {
  .page_is_profile_page .form-control,
  .page_is_profile_page .select2-container--bootstrap4 .select2-selection,
  .select2-container--bootstrap4 .page_is_profile_page .select2-selection,
  .page_is_profile_page .form-select {
    font-size: 16px;
    /* Prevents zoom */
  }

  .page_is_profile_page select.form-select {
    -webkit-appearance: none;
  }
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  .page_is_profile_page .form-check-input {
    -webkit-tap-highlight-color: transparent;
  }
}

@media (max-width: 767px) {
  .page_is_profile_page {
    /* Two columns on mobile for better space utilization */
  }

  .page_is_profile_page .stat-card {
    padding: 1rem;
    min-height: auto;
    margin-bottom: 0.75rem;
  }

  .page_is_profile_page .stat-card .stat-value {
    font-size: 1.75rem;
    line-height: 1.2;
  }

  .page_is_profile_page .stat-card .stat-label {
    font-size: 0.875rem;
    margin-top: 0.25rem;
  }

  .page_is_profile_page .col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
}

@media (max-width: 767px) {
  .page_is_profile_page.page-is-profile-orders .table-responsive {
    display: none;
  }

  .page_is_profile_page .mobile-order-cards {
    display: block;
  }

  .page_is_profile_page .mobile-order-card {
    border: 1px solid #dee2e6;
    border-radius: 0.5rem;
    padding: 1rem;
    margin-bottom: 1rem;
    background-color: #fff;
    transition: box-shadow 0.2s ease;
  }

  .page_is_profile_page .mobile-order-card:active {
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
  }

  .page_is_profile_page .mobile-order-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 0.75rem;
  }

  .page_is_profile_page .mobile-order-number {
    font-weight: 600;
    color: var(--bs-primary);
    text-decoration: none;
    font-size: 1rem;
  }

  .page_is_profile_page .mobile-order-status {
    font-size: 0.75rem;
  }

  .page_is_profile_page .mobile-order-details {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.75rem;
  }

  .page_is_profile_page .mobile-order-date {
    color: #6c757d;
    font-size: 0.875rem;
  }

  .page_is_profile_page .mobile-order-total {
    font-weight: 600;
    font-size: 1.125rem;
  }

  .page_is_profile_page .mobile-order-action {
    display: block;
    width: 100%;
    text-align: center;
    padding: 0.5rem 1rem;
    min-height: 44px;
  }
}

@media (min-width: 768px) {
  .page_is_profile_page .mobile-order-cards {
    display: none;
  }
}

@media (max-width: 767px) {
  .page_is_profile_page .profile-header {
    text-align: center;
    padding: 1.5rem 1rem;
  }

  .page_is_profile_page .profile-header h3,
  .page_is_profile_page .profile-header .h3 {
    font-size: 1.5rem;
    margin-bottom: 0.5rem;
  }

  .page_is_profile_page .profile-header p {
    font-size: 0.875rem;
    margin-bottom: 1rem;
  }

  .page_is_profile_page .profile-header .btn {
    width: 100%;
    max-width: 300px;
    margin: 0 auto;
  }
}

@media (max-width: 767px) {
  .page_is_profile_page {
    /* Two columns for quick action buttons on mobile */
  }

  .page_is_profile_page .profile-card h4,
  .page_is_profile_page .profile-card .h4 {
    font-size: 1.25rem;
    margin-bottom: 1rem;
  }

  .page_is_profile_page .quick-action-mobile {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem;
  }

  .page_is_profile_page .quick-action-mobile .btn {
    font-size: 0.875rem;
    padding: 0.75rem 0.5rem;
    min-height: 48px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
  }

  .page_is_profile_page .quick-action-mobile .btn i {
    font-size: 1.25rem;
    margin-bottom: 0.25rem;
    margin-right: 0 !important;
  }
}

@media (max-width: 767px) {
  .page_is_profile_page .list-group-item {
    padding: 1rem;
  }

  .page_is_profile_page .list-group-item h6,
  .page_is_profile_page .list-group-item .h6 {
    font-size: 1rem;
    margin-bottom: 0.5rem;
  }

  .page_is_profile_page .list-group-item p {
    font-size: 0.875rem;
    margin-bottom: 0;
  }

  .page_is_profile_page .list-group-item small,
  .page_is_profile_page .list-group-item .small {
    font-size: 0.75rem;
    color: #6c757d;
  }
}

@media (hover: none) and (pointer: coarse) {
  .page_is_profile_page .stat-card:active {
    background-color: #f8f9fa;
  }

  .page_is_profile_page .mobile-order-card:active {
    background-color: #f8f9fa;
  }
}

@media (max-width: 767px) {
  .page_is_profile_page .profile-header {
    margin-bottom: 1.5rem;
  }

  .page_is_profile_page .row.mb-4 {
    margin-bottom: 1.5rem !important;
  }

  .page_is_profile_page .profile-card {
    padding: 1.25rem;
    margin-bottom: 1.5rem;
  }

  .page_is_profile_page .profile-card:last-child {
    margin-bottom: 0;
  }
}

.page_is_profile_page .mobile-order-card.loading {
  opacity: 0.6;
  pointer-events: none;
}

.page_is_profile_page .mobile-order-card.loading::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 20px;
  height: 20px;
  margin: -10px 0 0 -10px;
  border: 2px solid #f3f3f3;
  border-radius: 50%;
  border-top: 2px solid var(--bs-primary);
  -webkit-animation: spin 1s linear infinite;
          animation: spin 1s linear infinite;
}

@media (max-width: 767px) and (orientation: landscape) {
  .page_is_profile_page .stat-card {
    padding: 0.75rem;
  }

  .page_is_profile_page .stat-card .stat-value {
    font-size: 1.5rem;
  }

  .page_is_profile_page .profile-header {
    padding: 1rem;
  }

  .page_is_profile_page .profile-header h3,
  .page_is_profile_page .profile-header .h3 {
    font-size: 1.25rem;
  }
}

@media (max-width: 767px) {
  .page_is_profile_page #mobile-filter-toggle {
    display: block;
    width: 100%;
    margin-bottom: 1rem;
    min-height: 48px;
  }

  .page_is_profile_page #order-filter-form {
    display: none;
  }

  .page_is_profile_page #order-filter-form.show {
    display: block;
    padding-top: 1rem;
    border-top: 1px solid #dee2e6;
    margin-top: 1rem;
  }

  .page_is_profile_page .filter-active-indicator {
    background-color: var(--bs-primary);
    color: white;
    padding: 0.125rem 0.5rem;
    border-radius: 1rem;
    font-size: 0.75rem;
    margin-left: 0.5rem;
  }
}

@media (min-width: 768px) {
  .page_is_profile_page #mobile-filter-toggle {
    display: none;
  }

  .page_is_profile_page #order-filter-form {
    display: block !important;
  }
}

@media (max-width: 767px) {
  .page_is_profile_page {
    /* Order Header */
    /* Order Details */
    /* Action Buttons */
    /* Quick View Details */
  }

  .page_is_profile_page .mobile-orders-list {
    display: block;
  }

  .page_is_profile_page .mobile-order-item {
    border: 1px solid #dee2e6;
    border-radius: 0.5rem;
    padding: 1rem;
    margin-bottom: 1rem;
    background-color: #fff;
    position: relative;
    transition: box-shadow 0.2s ease;
  }

  .page_is_profile_page .mobile-order-item:active {
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
    background-color: #f8f9fa;
  }

  .page_is_profile_page .mobile-order-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 0.75rem;
  }

  .page_is_profile_page .mobile-order-id {
    font-weight: 600;
    color: var(--bs-primary);
    text-decoration: none;
    font-size: 1rem;
    display: block;
    margin-bottom: 0.25rem;
  }

  .page_is_profile_page .mobile-order-date {
    color: #6c757d;
    font-size: 0.875rem;
  }

  .page_is_profile_page .mobile-order-payment {
    text-align: right;
  }

  .page_is_profile_page .mobile-order-total {
    font-weight: 600;
    font-size: 1.125rem;
    display: block;
    margin-bottom: 0.25rem;
  }

  .page_is_profile_page .mobile-order-info {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.75rem;
    padding: 0.5rem 0;
    border-top: 1px solid #e9ecef;
    border-bottom: 1px solid #e9ecef;
  }

  .page_is_profile_page .mobile-order-items {
    color: #6c757d;
    font-size: 0.875rem;
  }

  .page_is_profile_page .mobile-order-actions {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
    gap: 0.5rem;
  }

  .page_is_profile_page .mobile-order-actions .btn {
    min-height: 44px;
    font-size: 0.875rem;
    padding: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.25rem;
  }

  .page_is_profile_page .mobile-order-actions .btn i {
    font-size: 1rem;
  }

  .page_is_profile_page .mobile-order-quick-details {
    display: none;
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid #dee2e6;
  }

  .page_is_profile_page .mobile-order-quick-details.show {
    display: block;
  }
}

@media (min-width: 768px) {
  .page_is_profile_page .mobile-orders-list {
    display: none;
  }
}

@media (max-width: 767px) {
  .page_is_profile_page .status-guide-mobile {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 0.5rem;
    margin: -0.5rem;
    padding: 0.5rem;
  }

  .page_is_profile_page .status-guide-mobile::-webkit-scrollbar {
    height: 4px;
  }

  .page_is_profile_page .status-guide-mobile::-webkit-scrollbar-track {
    background: #f1f1f1;
  }

  .page_is_profile_page .status-guide-mobile::-webkit-scrollbar-thumb {
    background: #888;
    border-radius: 2px;
  }

  .page_is_profile_page .status-guide-item {
    flex: 0 0 auto;
    margin-right: 1rem;
    white-space: nowrap;
    display: flex;
    align-items: center;
    gap: 0.5rem;
  }

  .page_is_profile_page .status-guide-item:last-child {
    margin-right: 0;
  }

  .page_is_profile_page .row.g-2 {
    display: none;
  }
}

@media (min-width: 768px) {
  .page_is_profile_page .status-guide-mobile {
    display: none;
  }
}

@media (max-width: 767px) {
  .page_is_profile_page .pagination {
    font-size: 0.875rem;
  }

  .page_is_profile_page .page-link {
    padding: 0.5rem 0.75rem;
    min-width: 44px;
    min-height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
}

.page_is_profile_page .mobile-order-item.loading {
  opacity: 0.6;
  pointer-events: none;
}

.page_is_profile_page .filter-count {
  background-color: var(--bs-danger);
  color: white;
  border-radius: 50%;
  width: 20px;
  height: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.75rem;
  margin-left: 0.5rem;
}

@media (prefers-contrast: high) {
  .page_is_profile_page .mobile-order-item {
    border-width: 2px;
  }

  .page_is_profile_page .mobile-order-id {
    text-decoration: underline;
  }
}

@media (max-width: 767px) and (orientation: landscape) {
  .page_is_profile_page .mobile-order-actions {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 767px) {
  .page_is_profile_page {
    /* Order Status Section */
    /* Info Grid on Mobile */
    /* Labels and Values */
  }

  .page_is_profile_page .profile-card .row {
    margin-bottom: 0;
  }

  .page_is_profile_page .col-md-4.text-md-end {
    text-align: left !important;
    margin-top: 1.5rem;
    padding-top: 1.5rem;
    border-top: 1px solid #dee2e6;
  }

  .page_is_profile_page .col-6.col-md-4 {
    margin-bottom: 1rem;
  }

  .page_is_profile_page .col-6.col-md-4:last-child {
    margin-bottom: 0;
  }

  .page_is_profile_page label.text-muted.small {
    font-size: 0.75rem;
    margin-bottom: 0.25rem;
    display: block;
  }

  .page_is_profile_page p.fw-semibold {
    font-size: 0.875rem;
  }
}

@media (max-width: 767px) {
  .page_is_profile_page .timeline {
    padding-left: 20px;
  }

  .page_is_profile_page .timeline::before {
    left: 6px;
  }

  .page_is_profile_page .timeline-marker {
    left: -14px;
    width: 10px;
    height: 10px;
  }

  .page_is_profile_page .timeline-content h6,
  .page_is_profile_page .timeline-content .h6 {
    font-size: 0.875rem;
  }

  .page_is_profile_page .timeline-content p {
    font-size: 0.75rem;
  }

  .page_is_profile_page .timeline-item {
    padding-bottom: 1rem;
  }
}

@media (max-width: 767px) {
  .page_is_profile_page {
    /* Show mobile cards */
    /* Order Summary on Mobile */
  }

  .page_is_profile_page .mobile-order-items {
    display: block;
  }

  .page_is_profile_page .mobile-item-card {
    border: 1px solid #dee2e6;
    border-radius: 0.5rem;
    padding: 1rem;
    margin-bottom: 1rem;
    background-color: #fff;
  }

  .page_is_profile_page .mobile-item-header {
    display: flex;
    gap: 1rem;
    margin-bottom: 0.75rem;
  }

  .page_is_profile_page .mobile-item-image {
    flex-shrink: 0;
    width: 80px;
    height: 80px;
  }

  .page_is_profile_page .mobile-item-image img,
  .page_is_profile_page .mobile-item-image .placeholder {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    border-radius: 0.375rem;
  }

  .page_is_profile_page .mobile-item-image .placeholder {
    background-color: #f8f9fa;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .page_is_profile_page .mobile-item-details {
    flex: 1;
    min-width: 0;
  }

  .page_is_profile_page .mobile-item-name {
    font-weight: 600;
    font-size: 0.9375rem;
    margin-bottom: 0.25rem;
    word-break: break-word;
  }

  .page_is_profile_page .mobile-item-sku {
    font-size: 0.75rem;
    color: #6c757d;
    margin-bottom: 0.25rem;
  }

  .page_is_profile_page .mobile-item-pricing {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 0.75rem;
    border-top: 1px solid #e9ecef;
  }

  .page_is_profile_page .mobile-item-price {
    font-size: 0.875rem;
    color: #6c757d;
  }

  .page_is_profile_page .mobile-item-qty {
    font-size: 0.875rem;
    color: #6c757d;
  }

  .page_is_profile_page .mobile-item-total {
    font-weight: 600;
    font-size: 1rem;
  }

  .page_is_profile_page .mobile-order-summary {
    background-color: #f8f9fa;
    padding: 1rem;
    border-radius: 0.5rem;
    margin-top: 1rem;
  }

  .page_is_profile_page .mobile-summary-row {
    display: flex;
    justify-content: space-between;
    margin-bottom: 0.5rem;
    font-size: 0.875rem;
  }

  .page_is_profile_page .mobile-summary-row:last-child {
    margin-bottom: 0;
    padding-top: 0.5rem;
    border-top: 2px solid #dee2e6;
    font-weight: 600;
    font-size: 1rem;
  }

  .page_is_profile_page .mobile-summary-label {
    color: #495057;
  }

  .page_is_profile_page .mobile-summary-value {
    text-align: right;
  }

  .page_is_profile_page .mobile-summary-value.text-danger {
    color: #dc3545 !important;
  }
}

@media (min-width: 768px) {
  .page_is_profile_page .mobile-order-items {
    display: none;
  }
}

@media (max-width: 767px) {
  .page_is_profile_page {
    /* Bottom Actions */
  }

  .page_is_profile_page .profile-actions .btn-group {
    display: flex;
    flex-direction: column;
    width: 100%;
    gap: 0.5rem;
  }

  .page_is_profile_page .profile-actions .btn {
    width: 100%;
    min-height: 48px;
  }

  .page_is_profile_page .text-center.mt-4 {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
  }

  .page_is_profile_page .text-center.mt-4 .btn {
    width: 100%;
    min-height: 48px;
    margin: 0 !important;
  }
}

@media (max-width: 767px) {
  .page_is_profile_page .col-md-6 {
    margin-bottom: 1rem;
  }

  .page_is_profile_page .col-md-6:last-child {
    margin-bottom: 0;
  }

  .page_is_profile_page .profile-card address {
    font-size: 0.875rem;
    line-height: 1.6;
  }

  .page_is_profile_page .profile-card h5,
  .page_is_profile_page .profile-card .h5 {
    font-size: 1.125rem;
    margin-bottom: 1rem;
  }
}

@media (hover: none) and (pointer: coarse) {
  .page_is_profile_page .mobile-item-card:active {
    background-color: #f8f9fa;
  }
}

@media (max-width: 767px) {
  .page_is_profile_page .profile-card {
    padding: 1.25rem 1rem;
    margin-bottom: 1rem;
  }

  .page_is_profile_page .profile-card h4,
  .page_is_profile_page .profile-card .h4 {
    font-size: 1.25rem;
    margin-bottom: 1rem;
  }
}

@media (max-width: 767px) {
  .page_is_profile_page .badge.fs-6 {
    font-size: 0.875rem !important;
    padding: 0.5rem 1rem !important;
  }
}

.page_is_profile_page .mobile-item-card.loading {
  opacity: 0.6;
  pointer-events: none;
}

@media (prefers-contrast: high) {
  .page_is_profile_page .mobile-item-card {
    border-width: 2px;
  }

  .page_is_profile_page .mobile-summary-row:last-child {
    border-top-width: 3px;
  }
}

@media print {
  .page_is_profile_page .mobile-order-items {
    display: none !important;
  }

  .page_is_profile_page .table-responsive {
    display: block !important;
  }
}

/**
 * Profile Edit Page Styles
 */

.page_is_edit_profile,
.page_is_profile_edit {
  /* Profile card hover state disabled */
}

.page_is_edit_profile .profile-image-large,
.page_is_profile_edit .profile-image-large {
  width: 150px;
  height: 150px;
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
  border: 3px solid #dee2e6;
  display: block;
  margin: 0 auto;
}

.page_is_edit_profile .profile-image-placeholder,
.page_is_profile_edit .profile-image-placeholder {
  width: 150px;
  height: 150px;
  border-radius: 50%;
  background-color: #f8f9fa;
  border: 3px solid #dee2e6;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
}

.page_is_edit_profile .profile-image-preview,
.page_is_profile_edit .profile-image-preview {
  display: flex;
  justify-content: center;
  align-items: center;
}

.page_is_edit_profile .profile-image-section,
.page_is_profile_edit .profile-image-section {
  position: relative;
}

.page_is_edit_profile .profile-image-section:hover .image-upload-overlay,
.page_is_profile_edit .profile-image-section:hover .image-upload-overlay {
  display: flex;
}

.page_is_edit_profile .image-upload-overlay,
.page_is_profile_edit .image-upload-overlay {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 150px;
  height: 150px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.5);
  display: none;
  align-items: center;
  justify-content: center;
  color: white;
  cursor: pointer;
}

.page_is_edit_profile .form-control:focus,
.page_is_edit_profile .select2-container--bootstrap4 .select2-selection:focus,
.select2-container--bootstrap4 .page_is_edit_profile .select2-selection:focus,
.page_is_profile_edit .form-control:focus,
.page_is_profile_edit .select2-container--bootstrap4 .select2-selection:focus,
.select2-container--bootstrap4 .page_is_profile_edit .select2-selection:focus {
  border-color: var(--bs-primary);
  box-shadow: 0 0 0 0.2rem rgba(var(--bs-primary-rgb), 0.25);
}

.page_is_edit_profile .btn-outline-primary:hover,
.page_is_profile_edit .btn-outline-primary:hover {
  transform: translateY(-1px);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/**
 * Email Preferences Page Styles
 */

.page_is_email_preferences .card {
  border: 1px solid #dee2e6;
  transition: box-shadow 0.15s ease-in-out;
}

.page_is_email_preferences .card:hover {
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
}

.page_is_email_preferences .card-header {
  border-bottom: 1px solid #dee2e6;
  padding: 0.75rem 1rem;
}

.page_is_email_preferences .form-check {
  padding-left: 1.5rem;
}

.page_is_email_preferences .form-check-input:checked {
  background-color: var(--bs-primary);
  border-color: var(--bs-primary);
}

.page_is_email_preferences .form-check-label {
  cursor: pointer;
  line-height: 1.4;
}

.page_is_email_preferences .form-check-label strong {
  color: #495057;
  margin-bottom: 0.25rem;
  display: block;
}

.page_is_email_preferences .h-fit {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}

.page_is_email_preferences .btn-outline-primary:hover {
  transform: translateY(-1px);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.page_is_email_preferences .text-primary {
  color: var(--bs-primary) !important;
}

.page_is_email_preferences .bg-light {
  background-color: #f8f9fa !important;
}

.page_is_email_preferences .small {
  font-size: 0.875rem;
}

.prose h1,
.prose .h1,
.prose h2,
.prose .h2,
.prose h3,
.prose .h3,
.prose h4,
.prose .h4,
.prose h5,
.prose .h5,
.prose h6,
.prose .h6 {
  margin-top: 1.5em;
  margin-bottom: 0.75em;
}

.prose h1:first-child,
.prose .h1:first-child,
.prose h2:first-child,
.prose .h2:first-child,
.prose h3:first-child,
.prose .h3:first-child,
.prose h4:first-child,
.prose .h4:first-child,
.prose h5:first-child,
.prose .h5:first-child,
.prose h6:first-child,
.prose .h6:first-child {
  margin-top: 0;
}

.prose p {
  margin-bottom: 1.25em;
  line-height: 1.7;
}

.prose ul,
.prose ol {
  margin-bottom: 1.25em;
  padding-left: 1.5em;
}

.prose ul li,
.prose ol li {
  margin-bottom: 0.5em;
}

.prose blockquote {
  margin: 1.5em 0;
  padding-left: 1.5em;
  border-left: 4px solid var(--bs-gray-300);
}

.prose table {
  margin: 1.5em 0;
}

.prose img {
  margin: 1.5em 0;
}

.prose a {
  color: var(--bs-primary);
  text-decoration: underline;
}

.prose a:hover {
  text-decoration: none;
}

.max-w-none {
  max-width: none !important;
}

.page_is_comparison_page .comparison-table {
  table-layout: fixed;
}

.page_is_comparison_page .comparison-table th {
  background-color: var(--bs-gray-100);
  font-weight: 600;
}

.page_is_comparison_page .comparison-table .empty-cell {
  background-color: var(--bs-gray-50);
  border: 2px dashed var(--bs-border-color);
}

.page_is_comparison_page .comparison-table .empty-cell .empty-placeholder {
  padding: 3rem 0;
}

.page_is_comparison_page .comparison-table .empty-cell .empty-placeholder .fa-plus-circle {
  color: var(--bs-secondary);
}

.page_is_comparison_page .comparison-container {
  margin-top: 2rem;
}

.page_is_comparison_page .remove-item-btn {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 10;
}

.page_is_comparison_page .product-image-container {
  position: relative;
  min-height: 150px;
}

.page_is_comparison_page .product-image-container .product-image {
  max-height: 120px;
  width: auto;
  max-width: 100%;
}

.page_is_comparison_page .price-sale {
  color: var(--bs-danger);
  font-weight: bold;
}

.page_is_comparison_page .price-original {
  text-decoration: line-through;
  color: var(--bs-secondary);
  font-size: 0.9em;
}

.page_is_notifications .list-group-item h5,
.page_is_notifications .list-group-item .h5 {
  font-family: "Source Sans Pro", sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4;
  color: #333;
}

.page_is_notifications .list-group-item h5.fw-bold,
.page_is_notifications .list-group-item .fw-bold.h5 {
  font-weight: 600;
}

.page_is_notifications .list-group-item p {
  font-family: "Source Sans Pro", sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.6;
  color: #555;
}

.page_is_notifications .list-group-item small,
.page_is_notifications .list-group-item .small {
  font-family: "Source Sans Pro", sans-serif;
  font-size: 13px;
  color: #6c757d;
}

.page_is_notifications .list-group-item small i,
.page_is_notifications .list-group-item .small i {
  margin-right: 4px;
}

.page_is_notifications h1,
.page_is_notifications .h1 {
  font-family: "Source Sans Pro", sans-serif;
  font-size: 28px;
  font-weight: 600;
  color: #333;
}

.page_is_notifications .alert h4,
.page_is_notifications .alert .h4 {
  font-family: "Source Sans Pro", sans-serif;
  font-size: 18px;
  font-weight: 600;
}

.page_is_notifications .alert p {
  font-family: "Source Sans Pro", sans-serif;
  font-size: 14px;
  font-weight: 400;
}

.page_is_notifications .badge {
  font-family: "Source Sans Pro", sans-serif;
  font-size: 12px;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

@media (max-width: 767px) {
  .page_is_notifications .list-group-item h5,
  .page_is_notifications .list-group-item .h5 {
    font-size: 17px;
  }

  .page_is_notifications .list-group-item p {
    font-size: 15px;
  }

  .page_is_notifications .list-group-item small,
  .page_is_notifications .list-group-item .small {
    font-size: 14px;
  }

  .page_is_notifications h1,
  .page_is_notifications .h1 {
    font-size: 24px;
  }
}

.page_is_notifications .notification-unread {
  background-color: #e3f2fd;
  border-left: 4px solid #2196F3;
}

.page_is_notifications .notification-unread:hover {
  background-color: #bbdefb;
}

.page_is_notifications .notification-recent {
  background-color: #e8f5e9;
  border-left: 4px solid #4CAF50;
  transition: background-color 1s ease-in-out, border-left-color 1s ease-in-out;
}

.page_is_notifications .notification-recent:hover {
  background-color: #c8e6c9;
}

.page_is_notifications .list-group-item {
  transition: all 0.2s ease;
}

.page_is_notifications .list-group-item:hover {
  transform: translateX(2px);
}

.wishlist-page {
  min-height: 500px;
}

.wishlist-page .empty-wishlist {
  text-align: center;
  padding: 4rem 2rem;
}

.wishlist-page .empty-wishlist .empty-icon {
  font-size: 4rem;
  color: var(--bs-gray-400);
  margin-bottom: 2rem;
  -webkit-animation: pulse 2s ease-in-out infinite;
          animation: pulse 2s ease-in-out infinite;
}

.wishlist-page .empty-wishlist h3,
.wishlist-page .empty-wishlist .h3 {
  color: var(--bs-gray-600);
  margin-bottom: 1rem;
}

.wishlist-page .guest-notice {
  -webkit-animation: slideDown 0.5s ease;
          animation: slideDown 0.5s ease;
}

.wishlist-page .wishlist-list .wishlist-item-row {
  background: #fff;
  border: 1px solid #dee2e6;
  border-radius: 0.375rem;
  margin-bottom: 1rem;
  padding: 1rem;
  transition: all 0.3s ease;
  min-height: 80px;
}

.wishlist-page .wishlist-list .wishlist-item-row:hover {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.wishlist-page .wishlist-list .wishlist-item-row.removing {
  -webkit-animation: removeItem 0.5s ease forwards;
          animation: removeItem 0.5s ease forwards;
}

.wishlist-page .wishlist-list .wishlist-item-row > .d-flex {
  gap: 1rem;
}

@media (max-width: 767px) {
  .wishlist-page .wishlist-list .wishlist-item-row > .d-flex {
    flex-direction: column;
    text-align: center;
  }
}

.wishlist-page .wishlist-list .wishlist-item-row .wishlist-item-image {
  flex-shrink: 0;
  width: 80px;
  height: 80px;
}

@media (max-width: 767px) {
  .wishlist-page .wishlist-list .wishlist-item-row .wishlist-item-image {
    margin: 0 auto 1rem;
  }
}

.wishlist-page .wishlist-list .wishlist-item-row .wishlist-item-image a {
  display: block;
  width: 100%;
  height: 100%;
}

.wishlist-page .wishlist-list .wishlist-item-row .wishlist-item-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 0.25rem;
}

.wishlist-page .wishlist-list .wishlist-item-row .wishlist-item-image .image-placeholder {
  width: 100%;
  height: 100%;
  background: #f8f9fa;
  border: 1px solid #dee2e6;
  border-radius: 0.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #6c757d;
  font-size: 1.5rem;
}

.wishlist-page .wishlist-list .wishlist-item-row .wishlist-item-details {
  padding: 0 1rem;
}

@media (max-width: 767px) {
  .wishlist-page .wishlist-list .wishlist-item-row .wishlist-item-details {
    padding: 0;
    margin-bottom: 1rem;
  }
}

.wishlist-page .wishlist-list .wishlist-item-row .wishlist-item-details h6,
.wishlist-page .wishlist-list .wishlist-item-row .wishlist-item-details .h6 {
  font-size: 1rem;
  margin-bottom: 0.5rem;
  line-height: 1.4;
}

.wishlist-page .wishlist-list .wishlist-item-row .wishlist-item-details h6 a,
.wishlist-page .wishlist-list .wishlist-item-row .wishlist-item-details .h6 a {
  color: #212529;
  text-decoration: none;
}

.wishlist-page .wishlist-list .wishlist-item-row .wishlist-item-details h6 a:hover,
.wishlist-page .wishlist-list .wishlist-item-row .wishlist-item-details .h6 a:hover {
  color: #0066c0;
  text-decoration: underline;
}

.wishlist-page .wishlist-list .wishlist-item-row .wishlist-item-details .price-info .h5 {
  font-size: 1.25rem;
}

.wishlist-page .wishlist-list .wishlist-item-row .wishlist-item-actions {
  flex-shrink: 0;
  display: flex;
  gap: 0.5rem;
  align-items: center;
}

@media (max-width: 767px) {
  .wishlist-page .wishlist-list .wishlist-item-row .wishlist-item-actions {
    width: 100%;
    justify-content: center;
    flex-wrap: wrap;
  }
}

.wishlist-page .wishlist-list .wishlist-item-row .wishlist-item-actions .btn {
  white-space: nowrap;
}

@media (max-width: 575px) {
  .wishlist-page .wishlist-list .wishlist-item-row .wishlist-item-actions .btn {
    flex: 1;
    min-width: 0;
  }
}

@media (min-width: 768px) {
  .wishlist-page .wishlist-list .wishlist-item-row .wishlist-item-actions .move-to-top,
  .wishlist-page .wishlist-list .wishlist-item-row .wishlist-item-actions .remove-from-wishlist {
    width: 44px;
    padding: 0.375rem;
  }
}

@-webkit-keyframes pulse {
  0%, 100% {
    opacity: 0.5;
  }

  50% {
    opacity: 1;
  }
}

@keyframes pulse {
  0%, 100% {
    opacity: 0.5;
  }

  50% {
    opacity: 1;
  }
}

@keyframes slideDown {
  0% {
    opacity: 0;
    transform: translateY(-20px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@-webkit-keyframes removeItem {
  0% {
    opacity: 1;
    transform: scale(1);
  }

  100% {
    opacity: 0;
    transform: scale(0.8);
  }
}

@keyframes removeItem {
  0% {
    opacity: 1;
    transform: scale(1);
  }

  100% {
    opacity: 0;
    transform: scale(0.8);
  }
}

.wishlist-loading-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.8);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
}

.wishlist-loading-overlay .spinner-border {
  width: 3rem;
  height: 3rem;
}

@media (max-width: 768px) {
  .wishlist-page .page-header {
    text-align: center;
    margin-bottom: 2rem;
  }

  .wishlist-page .page-header h1,
  .wishlist-page .page-header .h1 {
    font-size: 1.75rem;
  }

  .wishlist-page .btn {
    min-height: 44px;
    padding: 0.5rem 1rem;
  }

  .wishlist-page .card {
    margin-bottom: 1rem;
  }
}

.bg-purple {
  background-color: #a37eba !important;
  color: white;
}

.bg-teal {
  background-color: #7ebaad !important;
  color: white;
}

.page-is-seller-profile .card {
  transition: box-shadow 0.3s ease;
}

.page-is-seller-profile .card:hover {
  transform: none !important;
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
}

.page-is-seller-profile .seller-bio {
  max-width: 800px;
  line-height: 1.6;
  color: #495057;
}

.page-is-seller-profile .seller-bio p {
  margin-bottom: 1rem;
}

.page-is-seller-profile .seller-bio p:last-child {
  margin-bottom: 0;
}

.page-is-seller-profile .product-grid .product-card {
  height: 100%;
  transition: box-shadow 0.3s ease;
}

.page-is-seller-profile .product-grid .product-card:hover {
  transform: none !important;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}

.page-is-seller-profile .empty-state {
  padding: 5rem 0;
}

.page-is-seller-profile .empty-state .empty-icon {
  opacity: 0.3;
}

.page-is-seller-profile .card {
  transition: transform 0.2s;
}

.page-is-seller-profile .card:hover {
  transform: translateY(-5px);
}

.page-is-seller-profile .seller-bio {
  font-size: 1rem;
  line-height: 1.6;
  color: #333;
  max-width: 800px;
}

.page-is-seller-profile .seller-bio h1,
.page-is-seller-profile .seller-bio .h1,
.page-is-seller-profile .seller-bio h2,
.page-is-seller-profile .seller-bio .h2,
.page-is-seller-profile .seller-bio h3,
.page-is-seller-profile .seller-bio .h3,
.page-is-seller-profile .seller-bio h4,
.page-is-seller-profile .seller-bio .h4,
.page-is-seller-profile .seller-bio h5,
.page-is-seller-profile .seller-bio .h5,
.page-is-seller-profile .seller-bio h6,
.page-is-seller-profile .seller-bio .h6 {
  margin-top: 1.5rem;
  margin-bottom: 0.75rem;
}

.page-is-seller-profile .seller-bio p {
  margin-bottom: 1rem;
}

.page-is-seller-profile .seller-bio ul,
.page-is-seller-profile .seller-bio ol {
  margin-bottom: 1rem;
  padding-left: 2rem;
}

.page-is-seller-profile .seller-bio img {
  max-width: 100%;
  height: auto;
}

.page_is_search_results_page .search-results-page {
  min-height: 70vh;
}

.page_is_search_results_page .search-header {
  background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
  padding: 2rem;
  border-radius: 15px;
  margin-bottom: 2rem;
}

.page_is_search_results_page .no-results {
  background: #f8f9fa;
  border-radius: 15px;
  margin: 2rem 0;
}

.page_is_search_results_page .search-suggestions .btn {
  margin: 0.25rem;
}

.page_is_search_results_page .search-tips {
  font-size: 0.9rem;
}

.page_is_search_results_page .unified-search-container {
  max-width: 600px;
  margin: 0 auto;
}

@media (max-width: 768px) {
  .page_is_search_results_page .search-header {
    padding: 1.5rem;
  }

  .page_is_search_results_page .search-results-list .card {
    margin-bottom: 1rem;
  }
}

.page_is_search_results_unified_page .product-card {
  transition: all 0.3s ease;
  border: 1px solid #e0e0e0;
  overflow: hidden;
}

.page_is_search_results_unified_page .product-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.page_is_search_results_unified_page .card-img-container {
  height: 200px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  background-color: #f9f9f9;
}

.page_is_search_results_unified_page .product-image {
  max-height: 100%;
  max-width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.page_is_search_results_unified_page .product-badges {
  position: absolute;
  top: 10px;
  left: 10px;
  z-index: 1;
}

.page_is_search_results_unified_page .badge-sale {
  background-color: #dc3545;
}

.page_is_search_results_unified_page .badge-new {
  background-color: #28a745;
}

.page_is_search_results_unified_page .badge-featured {
  background-color: #1e1e56;
}

.page_is_search_results_unified_page .product-title {
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 5px;
  color: #333;
}

.page_is_search_results_unified_page .product-price {
  margin-top: 10px;
  font-weight: 600;
}

.page_is_search_results_unified_page .sale-price {
  color: #dc3545;
  margin-left: 8px;
}

.page_is_search_results_unified_page .product-link {
  text-decoration: none;
  color: inherit;
}

.page_is_search_results_unified_page .bg-purple {
  background-color: #a37eba;
  color: white;
}

.page_is_search_results_unified_page .bg-teal {
  background-color: #7ebaad;
  color: white;
}

.page_is_discover_page {
  /* Discover Page Styling */
}

.page_is_discover_page .discover-hero {
  background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
  padding: 80px 0;
  margin-bottom: 60px;
}

.page_is_discover_page .discover-hero h1,
.page_is_discover_page .discover-hero .h1 {
  font-size: 3rem;
  font-weight: 300;
  letter-spacing: -0.5px;
  margin-bottom: 1rem;
}

.page_is_discover_page .discover-hero .lead {
  font-size: 1.25rem;
  color: #6c757d;
  max-width: 700px;
  margin: 0 auto;
}

.page_is_discover_page .content-card {
  border: none;
  box-shadow: 0 0.125rem 0.5rem rgba(0, 0, 0, 0.05);
  border-radius: 0.5rem;
  overflow: hidden;
  height: 100%;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.page_is_discover_page .content-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 0.5rem 1.5rem rgba(0, 0, 0, 0.1);
}

.page_is_discover_page .content-card .card-img-top {
  height: 200px;
  -o-object-fit: cover;
     object-fit: cover;
}

.page_is_discover_page .section-header {
  text-align: center;
  margin-bottom: 3rem;
}

.page_is_discover_page .section-header h2,
.page_is_discover_page .section-header .h2 {
  font-size: 2.5rem;
  font-weight: 300;
  color: #2c3e50;
  margin-bottom: 1rem;
}

.page_is_discover_page .placeholder-image {
  background: linear-gradient(135deg, #e9ecef 0%, #dee2e6 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #6c757d;
  font-size: 0.9rem;
  height: 200px;
}

.page-is-profile-order-detail .timeline {
  position: relative;
  padding-left: 30px;
}

.page-is-profile-order-detail .timeline::before {
  content: "";
  position: absolute;
  left: 10px;
  top: 0;
  bottom: 0;
  width: 2px;
  background-color: #dee2e6;
}

.page-is-profile-order-detail .timeline-item {
  position: relative;
  padding-bottom: 1.5rem;
}

.page-is-profile-order-detail .timeline-item:last-child {
  padding-bottom: 0;
}

.page-is-profile-order-detail .timeline-marker {
  position: absolute;
  left: -20px;
  top: 0;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: var(--bs-primary);
  border: 2px solid #fff;
  box-shadow: 0 0 0 2px #dee2e6;
}

.page-is-profile-order-detail .timeline-content {
  padding-left: 10px;
}

/**
 * Cookie Consent Page Styles
 */

.cookie-consent-banner {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(0, 0, 0, 0.9);
  color: white;
  padding: 1rem 0;
  z-index: 9999;
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
}

.cookie-consent-banner .btn-outline-light {
  border-color: rgba(255, 255, 255, 0.5);
}

.cookie-consent-banner .btn-outline-light:hover {
  background: rgba(255, 255, 255, 0.1);
  border-color: white;
}

/**
 * Ask Question Page Styles
 * Styles for the general ask question page
 */

.page-is-ask-question-general .form-text.text-warning {
  color: #856404 !important;
}

.page-is-ask-question-general .form-text.text-danger {
  color: #721c24 !important;
}

.page-is-ask-question-general #generalQuestionForm textarea {
  resize: vertical;
  min-height: 120px;
}

/**
 * Profile Layout Page Styles
 * Mobile-first responsive styles for profile layout
 */

.page_is_profile_page {
  /* Mobile-First Profile Page Styles */
  /* Base Styles (Mobile First) */
  /* Mobile Navigation Specific */
  /* Breadcrumb Mobile Optimization */
  /* Alert Optimizations */
  /* Mobile Touch Improvements */
  /* Touch interaction feedback */
  /* Smooth transitions for mobile nav */
  /* Tablet Styles (md breakpoint and up) */
  /* Desktop Styles (lg breakpoint and up) */
  /* Large Desktop Styles (xl breakpoint and up) */
  /* Accessibility Improvements */
  /* High contrast mode support */
}

.page_is_profile_page .profile-sidebar {
  /* background-color removed - using card background */
  border-radius: 0.5rem;
  /* padding removed - using card-body padding */
}

.page_is_profile_page .profile-sidebar .nav-link {
  color: #495057;
  padding: 1rem 1.25rem;
  /* Larger touch targets for mobile */
  margin-bottom: 0.125rem;
  border-radius: 0.375rem;
  transition: all 0.3s ease;
  min-height: 48px;
  /* Minimum touch target size */
  display: flex;
  align-items: center;
  font-weight: 500;
  border: 1px solid transparent;
}

.page_is_profile_page .profile-sidebar .nav-link:hover,
.page_is_profile_page .profile-sidebar .nav-link:focus {
  background-color: #e9ecef;
  color: #212529;
  border-color: #ced4da;
  outline: none;
  transform: translateY(-1px);
}

.page_is_profile_page .profile-sidebar .nav-link.active {
  background-color: #e9ecef;
  color: #212529;
  border-color: #ced4da;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  font-weight: 600;
}

.page_is_profile_page .profile-sidebar .nav-link.active i {
  color: var(--bs-primary);
}

.page_is_profile_page .profile-sidebar .nav-link i {
  width: 24px;
  /* Larger icons for mobile */
  margin-right: 0.75rem;
  text-align: center;
  font-size: 1.1em;
}

.page_is_profile_page .profile-sidebar .nav-link small,
.page_is_profile_page .profile-sidebar .nav-link .small {
  font-size: 0.75rem;
  opacity: 0.8;
}

.page_is_profile_page .profile-sidebar .nav-link:focus-visible {
  outline: 2px solid var(--bs-primary);
  outline-offset: 2px;
}

.page_is_profile_page .profile-avatar {
  width: 64px;
  /* Smaller on mobile */
  height: 64px;
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
  border: 3px solid #fff;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.page_is_profile_page .profile-header {
  background-color: #f8f9fa;
  padding: 1rem;
  border-radius: 0.5rem;
  margin-bottom: 1rem;
}

.page_is_profile_page .profile-card {
  border: 1px solid #dee2e6;
  border-radius: 0.5rem;
  padding: 1rem;
  margin-bottom: 1rem;
}

.page_is_profile_page .stat-card {
  text-align: center;
  padding: 1.25rem 1rem;
  background-color: #f8f9fa;
  border-radius: 0.5rem;
  transition: all 0.3s ease;
  border: 1px solid #e9ecef;
}

.page_is_profile_page .stat-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.page_is_profile_page .stat-card .stat-value {
  font-size: 1.75rem;
  font-weight: 600;
  color: var(--bs-primary);
  line-height: 1.2;
}

.page_is_profile_page .stat-card .stat-label {
  color: #6c757d;
  font-size: 0.8rem;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-top: 0.25rem;
}

.page_is_profile_page .nav-pills-mobile .nav-link {
  margin-bottom: 0.25rem;
}

.page_is_profile_page .breadcrumb {
  background-color: transparent;
  padding: 0.5rem 0;
  margin-bottom: 0;
  font-size: 0.875rem;
}

.page_is_profile_page .breadcrumb .breadcrumb-item {
  line-height: 1.5;
}

.page_is_profile_page .breadcrumb .breadcrumb-item + .breadcrumb-item::before {
  padding-right: 0.3rem;
  padding-left: 0.3rem;
}

.page_is_profile_page .alert {
  border-radius: 0.5rem;
  margin-bottom: 1rem;
  padding: 0.875rem 1rem;
}

.page_is_profile_page .btn {
  min-height: 38px;
  /* Reduced height */
  padding: 0.5rem 1rem;
  /* Reduced padding */
  border-radius: 0.5rem;
  font-weight: 500;
  transition: all 0.3s ease;
}

.page_is_profile_page .btn:hover,
.page_is_profile_page .btn:focus {
  transform: translateY(-1px);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

.page_is_profile_page .btn:focus-visible {
  outline: 2px solid var(--bs-primary);
  outline-offset: 2px;
}

.page_is_profile_page .btn:disabled {
  opacity: 0.6;
  transform: none !important;
}

.page_is_profile_page .touch-active {
  background-color: rgba(0, 123, 255, 0.1) !important;
  transform: scale(0.98);
}

.page_is_profile_page #mobile-profile-nav {
  transition: all 0.3s ease-in-out;
}

@media (min-width: 768px) {
  .page_is_profile_page .profile-sidebar {
    /* padding handled by card-body */
  }

  .page_is_profile_page .profile-sidebar .nav-link {
    padding: 0.875rem 1rem;
    min-height: auto;
  }

  .page_is_profile_page .profile-sidebar .nav-link i {
    width: 20px;
    margin-right: 0.5rem;
    font-size: 1em;
  }

  .page_is_profile_page .profile-avatar {
    width: 72px;
    height: 72px;
  }

  .page_is_profile_page .profile-card {
    padding: 1.25rem;
    margin-bottom: 1.25rem;
  }

  .page_is_profile_page .stat-card {
    padding: 1.5rem;
  }

  .page_is_profile_page .stat-card .stat-value {
    font-size: 2rem;
  }

  .page_is_profile_page .breadcrumb {
    font-size: 0.9rem;
  }
}

@media (min-width: 992px) {
  .page_is_profile_page .profile-sidebar {
    /* padding handled by card-body */
  }

  .page_is_profile_page .profile-sidebar .nav-link {
    padding: 0.75rem 1rem;
  }

  .page_is_profile_page .profile-avatar {
    width: 90px;
    height: 90px;
  }

  .page_is_profile_page .profile-header {
    padding: 1.5rem;
    margin-bottom: 2rem;
  }

  .page_is_profile_page .profile-card {
    padding: 1.5rem;
    margin-bottom: 1.5rem;
  }

  .page_is_profile_page .stat-card .stat-value {
    font-size: 2.25rem;
  }

  .page_is_profile_page .stat-card .stat-label {
    font-size: 0.875rem;
  }

  .page_is_profile_page .breadcrumb {
    font-size: 1rem;
  }
}

@media (min-width: 1200px) {
  .page_is_profile_page .stat-card:hover {
    transform: translateY(-3px);
  }
}

@media (prefers-reduced-motion: reduce) {
  .page_is_profile_page .profile-sidebar .nav-link,
  .page_is_profile_page .profile-card,
  .page_is_profile_page .stat-card,
  .page_is_profile_page .btn {
    transition: none;
  }

  .page_is_profile_page .stat-card:hover,
  .page_is_profile_page .btn:hover {
    transform: none;
  }
}

@media (prefers-contrast: high) {
  .page_is_profile_page .profile-sidebar .nav-link {
    border: 2px solid #6c757d;
  }

  .page_is_profile_page .profile-sidebar .nav-link.active {
    border-color: var(--bs-primary);
  }

  .page_is_profile_page .profile-card,
  .page_is_profile_page .stat-card {
    border-width: 2px;
  }
}

/**
 * Profile Addresses Page Styles
 */

.page_is_profile_page .address-card {
  transition: all 0.3s ease;
  border: 1px solid #dee2e6;
  position: relative;
}

.page_is_profile_page .address-card:hover {
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  transform: translateY(-2px);
}

.page_is_profile_page .address-card.default-address {
  border-color: var(--bs-primary);
  background: linear-gradient(135deg, #fff 0%, #f8f9ff 100%);
}

.page_is_profile_page .address-card .address-details {
  min-height: 120px;
}

.page_is_profile_page .address-card .badge {
  font-size: 0.75rem;
}

.page_is_profile_page .address-card .badge.bg-primary {
  background-color: var(--bs-primary) !important;
}

.page_is_profile_page .dropdown-toggle::after {
  display: none;
}

.page_is_profile_page .dropdown .btn-outline-secondary.btn-sm.dropdown-toggle,
.page_is_profile_page .dropdown .btn-group-sm > .btn-outline-secondary.dropdown-toggle.btn {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}

.page_is_profile_page .text-success {
  color: #198754 !important;
}

.page_is_profile_page .fa-3x {
  font-size: 3rem;
}

@media (prefers-reduced-motion: reduce) {
  .page_is_profile_page .address-card {
    transition: none;
  }

  .page_is_profile_page .address-card:hover {
    transform: none;
  }
}

.profile-security-page .password-requirements .requirement {
  margin-bottom: 0.5rem;
  transition: all 0.3s ease;
}

.profile-security-page .password-requirements .requirement.valid i {
  color: #198754 !important;
}

.profile-security-page .password-requirements .requirement.valid i:before {
  content: "\f00c";
}

.profile-security-page .password-strength {
  transition: opacity 0.3s ease;
}

.profile-security-page .progress-bar {
  transition: all 0.3s ease;
}

.profile-security-page .input-group .btn {
  border-left: 0;
}

.profile-security-page .input-group .form-control:focus + .btn,
.profile-security-page .input-group .select2-container--bootstrap4 .select2-selection:focus + .btn,
.select2-container--bootstrap4 .profile-security-page .input-group .select2-selection:focus + .btn {
  border-color: var(--bs-primary);
}

.profile-security-page .table code,
.profile-security-page .prose table code,
.prose .profile-security-page table code {
  background-color: #f8f9fa;
  padding: 0.2rem 0.4rem;
  border-radius: 0.25rem;
  font-size: 0.875rem;
}

.page-is-profile-invoice .invoice-container {
  max-width: 800px;
  margin: 0 auto;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

@media print {
  .navbar,
  .footer,
  .no-print,
  .breadcrumb {
    display: none !important;
  }

  .invoice-container {
    margin: 0;
    padding: 20px;
    box-shadow: none;
  }

  body {
    background: white;
  }
}

/**
 * Blog Index Page Styles
 * Styles for the main blog listing page
 */

.page-is-blog-index {
  /* Hero Section */
  /* Featured Cards */
  /* Category Badges */
  /* Blog Post Cards */
  /* Sidebar */
  /* Archive List */
  /* Popular Posts */
}

.page-is-blog-index .hero-featured {
  background-size: cover;
  background-position: center;
  position: relative;
  min-height: 400px;
  display: flex;
  align-items: center;
}

.page-is-blog-index .hero-featured::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.8));
}

.page-is-blog-index .hero-featured .content {
  position: relative;
  z-index: 1;
}

.page-is-blog-index .featured-card {
  transition: transform 0.3s ease;
}

.page-is-blog-index .featured-card:hover {
  transform: translateY(-5px);
}

.page-is-blog-index .featured-card .thumbnail {
  height: 250px;
  -o-object-fit: cover;
     object-fit: cover;
}

.page-is-blog-index .category-badge {
  font-size: 0.875rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.page-is-blog-index .blog-post {
  margin-bottom: 3rem;
  padding-bottom: 3rem;
  border-bottom: 1px solid #dee2e6;
}

.page-is-blog-index .blog-post:last-child {
  border-bottom: none;
}

.page-is-blog-index .blog-post-title {
  font-size: 2rem;
  font-weight: 600;
  margin-bottom: 0.5rem;
}

.page-is-blog-index .blog-post-title a {
  color: #212529;
  text-decoration: none;
}

.page-is-blog-index .blog-post-title a:hover {
  color: #0d6efd;
}

.page-is-blog-index .blog-post-meta {
  color: #6c757d;
  font-size: 0.875rem;
  margin-bottom: 1rem;
}

.page-is-blog-index .blog-post-meta a {
  color: #495057;
  font-weight: 600;
}

.page-is-blog-index .sidebar-section {
  margin-bottom: 2rem;
}

.page-is-blog-index .sidebar-section h4,
.page-is-blog-index .sidebar-section .h4 {
  font-size: 1.25rem;
  margin-bottom: 1rem;
}

.page-is-blog-index .archive-list {
  list-style: none;
  padding: 0;
}

.page-is-blog-index .archive-list li {
  padding: 0.5rem 0;
  border-bottom: 1px solid #f0f0f0;
}

.page-is-blog-index .archive-list li:last-child {
  border-bottom: none;
}

.page-is-blog-index .popular-post {
  display: flex;
  gap: 1rem;
  margin-bottom: 1rem;
}

.page-is-blog-index .popular-post img {
  width: 60px;
  height: 60px;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 4px;
}

.page-is-blog-index .popular-post-content h6,
.page-is-blog-index .popular-post-content .h6 {
  font-size: 0.875rem;
  margin-bottom: 0.25rem;
}

.page-is-blog-index .popular-post-content h6 a,
.page-is-blog-index .popular-post-content .h6 a {
  color: #212529;
  text-decoration: none;
}

.page-is-blog-index .popular-post-content h6 a:hover,
.page-is-blog-index .popular-post-content .h6 a:hover {
  color: #0d6efd;
}

.page-is-blog-index .popular-post-meta {
  font-size: 0.75rem;
  color: #6c757d;
}

@media (prefers-reduced-motion: reduce) {
  .page-is-blog-index .featured-card {
    transition: none;
  }

  .page-is-blog-index .featured-card:hover {
    transform: none;
  }
}

.page-is-blog-show {
  /* Blog Post Styles */
  /* Navigation */
  /* Related Posts */
  /* Sidebar Styles (same as blog index) */
  /* Archive List */
  /* Popular Posts */
}

.page-is-blog-show .blog-post-header {
  text-align: center;
  margin-bottom: 3rem;
}

.page-is-blog-show .blog-post-title {
  font-size: 2.5rem;
  font-weight: 600;
  margin-bottom: 1rem;
}

.page-is-blog-show .blog-post-meta {
  color: #6c757d;
  font-size: 0.875rem;
  margin-bottom: 2rem;
}

.page-is-blog-show .blog-post-meta a {
  color: #495057;
  font-weight: 600;
  text-decoration: none;
}

.page-is-blog-show .blog-post-meta a:hover {
  color: #0d6efd;
}

.page-is-blog-show .blog-post-image {
  width: 100%;
  height: auto;
  border-radius: 0.5rem;
  margin-bottom: 2rem;
}

.page-is-blog-show .blog-post-content {
  font-size: 1.125rem;
  line-height: 1.75;
  color: #212529;
}

.page-is-blog-show .blog-post-content p {
  margin-bottom: 1.5rem;
}

.page-is-blog-show .blog-post-content h2,
.page-is-blog-show .blog-post-content .h2,
.page-is-blog-show .blog-post-content h3,
.page-is-blog-show .blog-post-content .h3,
.page-is-blog-show .blog-post-content h4,
.page-is-blog-show .blog-post-content .h4 {
  margin-top: 2rem;
  margin-bottom: 1rem;
}

.page-is-blog-show .post-navigation {
  margin: 20px;
  /* margin-top: 3rem; */
  /* padding-top: 2rem; */
  border-top: 1px solid #dee2e6;
}

.page-is-blog-show .nav-post {
  display: flex;
  align-items: center;
  text-decoration: none;
  color: #212529;
  transition: color 0.3s ease;
}

.page-is-blog-show .nav-post:hover {
  color: #0d6efd;
}

.page-is-blog-show .nav-post-label {
  font-size: 0.875rem;
  color: #6c757d;
  display: block;
  margin-bottom: 0.25rem;
}

.page-is-blog-show .related-posts {
  margin-top: 3rem;
  padding-top: 3rem;
  border-top: 1px solid #dee2e6;
}

.page-is-blog-show .related-post-card {
  margin-bottom: 1.5rem;
  transition: transform 0.3s ease;
}

.page-is-blog-show .related-post-card:hover {
  transform: translateY(-5px);
}

.page-is-blog-show .related-post-image {
  height: 200px;
  -o-object-fit: cover;
     object-fit: cover;
}

.page-is-blog-show .sidebar-section {
  margin-bottom: 2rem;
}

.page-is-blog-show .sidebar-section h4,
.page-is-blog-show .sidebar-section .h4 {
  font-size: 1.25rem;
  margin-bottom: 1rem;
}

.page-is-blog-show .archive-list {
  list-style: none;
  padding: 0;
}

.page-is-blog-show .archive-list li {
  padding: 0.5rem 0;
  border-bottom: 1px solid #f0f0f0;
}

.page-is-blog-show .archive-list li:last-child {
  border-bottom: none;
}

.page-is-blog-show .popular-post {
  display: flex;
  gap: 1rem;
  margin-bottom: 1rem;
}

.page-is-blog-show .popular-post img {
  width: 60px;
  height: 60px;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 4px;
}

.page-is-blog-show .popular-post-content h6,
.page-is-blog-show .popular-post-content .h6 {
  font-size: 0.875rem;
  margin-bottom: 0.25rem;
}

.page-is-blog-show .popular-post-content h6 a,
.page-is-blog-show .popular-post-content .h6 a {
  color: #212529;
  text-decoration: none;
}

.page-is-blog-show .popular-post-content h6 a:hover,
.page-is-blog-show .popular-post-content .h6 a:hover {
  color: #0d6efd;
}

.page-is-blog-show .popular-post-meta {
  font-size: 0.75rem;
  color: #6c757d;
}

.page-is-blog-categories {
  /* Hero Section */
  /* Category Cards */
  /* Category Link */
  /* Sidebar Styles */
  /* Popular Posts Widget */
  /* Responsive */
}

.page-is-blog-categories .categories-hero {
  background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
  padding: 80px 0;
  margin-bottom: 60px;
}

.page-is-blog-categories .categories-hero h1,
.page-is-blog-categories .categories-hero .h1 {
  font-size: 3rem;
  font-weight: 300;
  letter-spacing: -0.5px;
  margin-bottom: 1rem;
}

.page-is-blog-categories .categories-hero .lead {
  font-size: 1.25rem;
  color: #6c757d;
  max-width: 600px;
  margin: 0 auto;
}

.page-is-blog-categories .category-card {
  border: none;
  border-radius: 0.75rem;
  overflow: hidden;
  transition: all 0.3s ease;
  height: 100%;
  box-shadow: 0 0.125rem 0.5rem rgba(0, 0, 0, 0.05);
}

.page-is-blog-categories .category-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 0.5rem 1.5rem rgba(0, 0, 0, 0.1);
}

.page-is-blog-categories .category-card:hover img {
  transform: scale(1.05);
}

.page-is-blog-categories .category-card .card-img-wrapper {
  position: relative;
  overflow: hidden;
  height: 200px;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
}

.page-is-blog-categories .category-card .card-img-wrapper.no-image {
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  font-size: 4rem;
}

.page-is-blog-categories .category-card img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.3s ease;
}

.page-is-blog-categories .category-card .card-body {
  padding: 1.5rem;
}

.page-is-blog-categories .category-card .card-title {
  font-size: 1.5rem;
  font-weight: 600;
  margin-bottom: 0.75rem;
  color: #212529;
}

.page-is-blog-categories .category-card .card-text {
  color: #6c757d;
  margin-bottom: 1rem;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.page-is-blog-categories .category-stats {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 1rem;
  border-top: 1px solid #e9ecef;
}

.page-is-blog-categories .category-stats .stat {
  font-size: 0.875rem;
  color: #6c757d;
}

.page-is-blog-categories .category-stats .stat strong {
  color: #495057;
}

.page-is-blog-categories .category-link {
  text-decoration: none;
  color: inherit;
}

.page-is-blog-categories .category-link:hover {
  color: inherit;
}

.page-is-blog-categories .blog-sidebar {
  position: -webkit-sticky;
  position: sticky;
  top: 100px;
}

.page-is-blog-categories .sidebar-widget {
  background: #fff;
  border-radius: 0.5rem;
  padding: 1.5rem;
  margin-bottom: 2rem;
  box-shadow: 0 0.125rem 0.5rem rgba(0, 0, 0, 0.05);
}

.page-is-blog-categories .sidebar-widget h4,
.page-is-blog-categories .sidebar-widget .h4 {
  font-size: 1.25rem;
  font-weight: 600;
  margin-bottom: 1.25rem;
  color: #212529;
}

.page-is-blog-categories .sidebar-widget ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.page-is-blog-categories .sidebar-widget ul li {
  padding: 0.5rem 0;
  border-bottom: 1px solid #f1f3f5;
}

.page-is-blog-categories .sidebar-widget ul li:last-child {
  border-bottom: none;
}

.page-is-blog-categories .sidebar-widget a {
  color: #495057;
  text-decoration: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
  transition: color 0.2s ease;
}

.page-is-blog-categories .sidebar-widget a:hover {
  color: #0d6efd;
}

.page-is-blog-categories .popular-post {
  display: flex;
  gap: 1rem;
  margin-bottom: 1rem;
}

.page-is-blog-categories .popular-post:last-child {
  margin-bottom: 0;
}

.page-is-blog-categories .popular-post-img {
  flex-shrink: 0;
  width: 60px;
  height: 60px;
  border-radius: 0.25rem;
  overflow: hidden;
  background: #e9ecef;
}

.page-is-blog-categories .popular-post-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.page-is-blog-categories .popular-post-content h6,
.page-is-blog-categories .popular-post-content .h6 {
  font-size: 0.875rem;
  font-weight: 600;
  margin-bottom: 0.25rem;
  line-height: 1.4;
}

.page-is-blog-categories .popular-post-content .text-muted {
  font-size: 0.75rem;
}

@media (max-width: 768px) {
  .page-is-blog-categories .categories-hero h1,
  .page-is-blog-categories .categories-hero .h1 {
    font-size: 2rem;
  }

  .page-is-blog-categories .blog-sidebar {
    position: relative;
    top: 0;
    margin-top: 3rem;
  }
}

.page_is_login_page .login-page-wrapper,
.page-is-login-page .login-page-wrapper {
  min-height: 100vh;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  background-image: url("/img/banner/bg-SignIn.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  overflow: hidden;
  padding-top: 100px;
  padding-left: 20px;
  padding-right: 20px;
  padding-bottom: 40px;
}

.no-webp .page_is_login_page .login-page-wrapper,
.no-webp .page-is-login-page .login-page-wrapper {
  background-image: url("/img/banner/bg-SignIn.png");
}

@media (max-width: 1200px) {
  .page_is_login_page .login-page-wrapper,
  .page-is-login-page .login-page-wrapper {
    padding-top: 80px;
  }
}

@media (max-width: 992px) {
  .page_is_login_page .login-page-wrapper,
  .page-is-login-page .login-page-wrapper {
    padding-top: 60px;
  }
}

@media (max-width: 768px) {
  .page_is_login_page .login-page-wrapper,
  .page-is-login-page .login-page-wrapper {
    padding-top: 50px;
  }
}

@media (max-width: 576px) {
  .page_is_login_page .login-page-wrapper,
  .page-is-login-page .login-page-wrapper {
    padding-top: 40px;
  }
}

.page_is_login_page .login-container,
.page-is-login-page .login-container {
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

.page_is_login_page .login-card,
.page-is-login-page .login-card {
  background: #ffffff;
  border-radius: 16px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.08);
  overflow: hidden;
  border: 1px solid rgba(0, 0, 0, 0.05);
}

.page_is_login_page .login-header,
.page-is-login-page .login-header {
  text-align: center;
  padding: 30px 20px;
  border-bottom: 1px solid #f0f0f0;
}

.page_is_login_page .login-header .login-logo-img,
.page-is-login-page .login-header .login-logo-img {
  height: auto;
  margin-bottom: 10px;
}

.page_is_login_page .login-header .luxury-tagline,
.page-is-login-page .login-header .luxury-tagline {
  color: #6c757d;
  font-size: 13px;
  letter-spacing: 1px;
  text-transform: uppercase;
  margin: 0;
  font-weight: 500;
}

.page_is_login_page .login-content,
.page-is-login-page .login-content {
  display: flex;
  min-height: 400px;
}

@media (max-width: 767px) {
  .page_is_login_page .login-content,
  .page-is-login-page .login-content {
    flex-direction: column;
  }
}

.page_is_login_page .login-column,
.page-is-login-page .login-column {
  flex: 1;
  padding: 20px 35px 60px 35px;
}

@media (max-width: 767px) {
  .page_is_login_page .login-column,
  .page-is-login-page .login-column {
    padding: 15px 25px 45px 25px;
  }
}

.page_is_login_page .login-form-column .column-content,
.page-is-login-page .login-form-column .column-content {
  max-width: 340px;
  margin: 0 auto;
}

.page_is_login_page .book-spine,
.page-is-login-page .book-spine {
  width: 1px;
  background: linear-gradient(180deg, transparent 0%, #e0e0e0 20%, #e0e0e0 80%, transparent 100%);
  position: relative;
  margin: 40px 0;
}

@media (max-width: 767px) {
  .page_is_login_page .book-spine,
  .page-is-login-page .book-spine {
    display: none;
  }
}

.page_is_login_page .book-spine .spine-decoration,
.page-is-login-page .book-spine .spine-decoration {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #fff;
  padding: 10px 0;
}

.page_is_login_page .book-spine .spine-decoration .spine-gem,
.page-is-login-page .book-spine .spine-decoration .spine-gem {
  color: #d4af37;
  font-size: 18px;
  display: block;
}

.page_is_login_page .welcome-title,
.page-is-login-page .welcome-title {
  font-size: 28px;
  color: #1e1e56;
  margin-bottom: 8px;
  font-weight: 400;
  letter-spacing: -0.5px;
  text-align: center;
}

.page_is_login_page .welcome-subtitle,
.page-is-login-page .welcome-subtitle {
  color: #6c757d;
  font-size: 14px;
  margin-bottom: 25px;
  text-align: center;
}

.page_is_login_page .form-group,
.page-is-login-page .form-group {
  margin-bottom: 18px;
}

.page_is_login_page .form-label,
.page-is-login-page .form-label {
  color: #495057;
  font-weight: 500;
  margin-bottom: 6px;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.page_is_login_page .elegant-input,
.page-is-login-page .elegant-input {
  border: 1px solid #dee2e6;
  border-radius: 8px;
  padding: 10px 14px;
  font-size: 15px;
  transition: all 0.3s ease;
  background-color: #fafbfc;
}

.page_is_login_page .elegant-input:focus,
.page-is-login-page .elegant-input:focus {
  border-color: #1e1e56;
  box-shadow: 0 0 0 3px rgba(30, 30, 86, 0.08);
  background-color: #fff;
  outline: none;
}

.page_is_login_page .elegant-input::-moz-placeholder, .page-is-login-page .elegant-input::-moz-placeholder {
  color: #adb5bd;
  font-size: 14px;
}

.page_is_login_page .elegant-input:-ms-input-placeholder, .page-is-login-page .elegant-input:-ms-input-placeholder {
  color: #adb5bd;
  font-size: 14px;
}

.page_is_login_page .elegant-input::placeholder,
.page-is-login-page .elegant-input::placeholder {
  color: #adb5bd;
  font-size: 14px;
}

.page_is_login_page .input-group,
.page-is-login-page .input-group {
  position: relative;
}

.page_is_login_page .input-group .form-control,
.select2-container--bootstrap4 .page_is_login_page .input-group .select2-selection,
.page_is_login_page .input-group .elegant-input,
.page_is_login_page .input-group .select2-container--bootstrap4 .select2-selection,
.page-is-login-page .input-group .form-control,
.select2-container--bootstrap4 .page-is-login-page .input-group .select2-selection,
.page-is-login-page .input-group .elegant-input,
.page-is-login-page .input-group .select2-container--bootstrap4 .select2-selection {
  padding-left: 40px !important;
}

.page_is_login_page .input-icon,
.page-is-login-page .input-icon {
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  color: #adb5bd;
  z-index: 10;
  font-size: 14px;
}

.page_is_login_page .password-toggle,
.page-is-login-page .password-toggle {
  position: absolute;
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
  cursor: pointer;
  color: #adb5bd;
  z-index: 10;
  background: transparent;
  border: none;
  padding: 5px;
  font-size: 14px;
  transition: color 0.2s;
}

.page_is_login_page .password-toggle:hover,
.page-is-login-page .password-toggle:hover {
  color: #495057;
}

.page_is_login_page .forgot-link,
.page-is-login-page .forgot-link {
  color: #6c757d;
  font-size: 13px;
  text-decoration: none;
  transition: color 0.2s;
}

.page_is_login_page .forgot-link:hover,
.page-is-login-page .forgot-link:hover {
  color: #1e1e56;
  text-decoration: underline;
}

.page_is_login_page .btn-elegant-login,
.page-is-login-page .btn-elegant-login {
  background: linear-gradient(135deg, #1e1e56 0%, #2a2a7a 100%);
  border: none;
  border-radius: 8px;
  color: white;
  padding: 12px 24px;
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.5px;
  transition: all 0.3s ease;
  width: 100%;
  margin-top: 20px;
  box-shadow: 0 4px 15px rgba(30, 30, 86, 0.2);
}

.page_is_login_page .btn-elegant-login:hover,
.page-is-login-page .btn-elegant-login:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 25px rgba(30, 30, 86, 0.3);
  background: linear-gradient(135deg, #2a2a7a 0%, #1e1e56 100%);
}

.page_is_login_page .btn-elegant-login:active,
.page-is-login-page .btn-elegant-login:active {
  transform: translateY(0);
}

.page_is_login_page .alert-elegant,
.page-is-login-page .alert-elegant {
  border-radius: 8px;
  padding: 10px 14px;
  margin-bottom: 20px;
  font-size: 13px;
  border: none;
}

.page_is_login_page .alert-elegant.alert-danger,
.page-is-login-page .alert-elegant.alert-danger {
  background-color: #fff5f5;
  color: #d9534f;
  border-left: 3px solid #d9534f;
}

.page_is_login_page .create-account-column,
.page-is-login-page .create-account-column {
  background: linear-gradient(135deg, #fafbfc 0%, #f5f7fa 100%);
}

@media (max-width: 767px) {
  .page_is_login_page .create-account-column,
  .page-is-login-page .create-account-column {
    border-top: 1px solid #e0e0e0;
  }
}

.page_is_login_page .new-member-section,
.page-is-login-page .new-member-section {
  text-align: center;
}

.page_is_login_page .join-title,
.page-is-login-page .join-title {
  font-size: 28px;
  color: #1e1e56;
  margin-bottom: 12px;
  font-weight: 400;
  letter-spacing: -0.5px;
}

.page_is_login_page .join-subtitle,
.page-is-login-page .join-subtitle {
  color: #6c757d;
  font-size: 14px;
  margin-bottom: 25px;
  line-height: 1.6;
}

.page_is_login_page .benefits-list,
.page-is-login-page .benefits-list {
  margin: 25px 0;
}

.page_is_login_page .benefit-item,
.page-is-login-page .benefit-item {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 12px;
  color: #495057;
  font-size: 14px;
}

.page_is_login_page .benefit-item i,
.page-is-login-page .benefit-item i {
  color: #d4af37;
  margin-right: 10px;
  font-size: 16px;
}

.page_is_login_page .btn-create-elegant,
.page-is-login-page .btn-create-elegant {
  background: transparent;
  border: 2px solid #1e1e56;
  border-radius: 8px;
  color: #1e1e56;
  padding: 12px 24px;
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.5px;
  transition: all 0.3s ease;
  display: inline-block;
  text-decoration: none;
}

.page_is_login_page .btn-create-elegant:hover,
.page-is-login-page .btn-create-elegant:hover {
  background: #1e1e56;
  color: white;
  transform: translateY(-2px);
  box-shadow: 0 4px 15px rgba(30, 30, 86, 0.2);
  text-decoration: none;
}

.page_is_login_page .social-divider,
.page-is-login-page .social-divider {
  text-align: center;
  margin: 25px 0 20px;
  position: relative;
}

.page_is_login_page .social-divider::before,
.page-is-login-page .social-divider::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  height: 1px;
  background: #dee2e6;
}

.page_is_login_page .social-divider span,
.page-is-login-page .social-divider span {
  background: linear-gradient(135deg, #fafbfc 0%, #f5f7fa 100%);
  padding: 0 15px;
  position: relative;
  color: #6c757d;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.page_is_login_page .social-login-elegant,
.page-is-login-page .social-login-elegant {
  display: flex;
  justify-content: center;
  gap: 10px;
}

.page_is_login_page .social-btn-elegant,
.page-is-login-page .social-btn-elegant {
  width: 40px;
  height: 40px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #dee2e6;
  background: white;
  transition: all 0.3s ease;
  text-decoration: none;
}

.page_is_login_page .social-btn-elegant:hover,
.page-is-login-page .social-btn-elegant:hover {
  border-color: #1e1e56;
  box-shadow: 0 3px 10px rgba(30, 30, 86, 0.15);
  background: #fafbfc;
}

.page_is_login_page .social-btn-elegant img,
.page-is-login-page .social-btn-elegant img {
  width: 18px;
  height: 18px;
  -o-object-fit: contain;
     object-fit: contain;
}

.page_is_login_page .mobile-create-account,
.page-is-login-page .mobile-create-account {
  display: none;
  border-top: 1px solid #e0e0e0;
  margin-top: 30px;
  padding-top: 25px;
  text-align: center;
}

@media (max-width: 767px) {
  .page_is_login_page .mobile-create-account,
  .page-is-login-page .mobile-create-account {
    display: block;
  }
}

.page_is_login_page .mobile-create-account .divider-text,
.page-is-login-page .mobile-create-account .divider-text {
  color: #6c757d;
  font-size: 14px;
  margin-bottom: 15px;
}

.page_is_login_page .mobile-create-account .btn-outline-elegant,
.page-is-login-page .mobile-create-account .btn-outline-elegant {
  background: transparent;
  border: 2px solid #1e1e56;
  border-radius: 8px;
  color: #1e1e56;
  padding: 10px 20px;
  font-size: 14px;
  font-weight: 500;
  transition: all 0.3s ease;
  display: inline-block;
  text-decoration: none;
}

.page_is_login_page .mobile-create-account .btn-outline-elegant:hover,
.page-is-login-page .mobile-create-account .btn-outline-elegant:hover {
  background: #1e1e56;
  color: white;
}

.page_is_login_page .was-validated .form-control:invalid,
.page_is_login_page .was-validated .select2-container--bootstrap4 .select2-selection:invalid,
.select2-container--bootstrap4 .page_is_login_page .was-validated .select2-selection:invalid,
.page_is_login_page .was-validated .elegant-input:invalid,
.page-is-login-page .was-validated .form-control:invalid,
.page-is-login-page .was-validated .select2-container--bootstrap4 .select2-selection:invalid,
.select2-container--bootstrap4 .page-is-login-page .was-validated .select2-selection:invalid,
.page-is-login-page .was-validated .elegant-input:invalid {
  border-color: #dc3545;
  background-image: none;
}

.page_is_login_page .was-validated .form-control:invalid:focus,
.page_is_login_page .was-validated .select2-container--bootstrap4 .select2-selection:invalid:focus,
.select2-container--bootstrap4 .page_is_login_page .was-validated .select2-selection:invalid:focus,
.page_is_login_page .was-validated .elegant-input:invalid:focus,
.page-is-login-page .was-validated .form-control:invalid:focus,
.page-is-login-page .was-validated .select2-container--bootstrap4 .select2-selection:invalid:focus,
.select2-container--bootstrap4 .page-is-login-page .was-validated .select2-selection:invalid:focus,
.page-is-login-page .was-validated .elegant-input:invalid:focus {
  border-color: #dc3545;
  box-shadow: 0 0 0 3px rgba(220, 53, 69, 0.1);
}

.page_is_login_page .was-validated .form-control:valid,
.page_is_login_page .was-validated .select2-container--bootstrap4 .select2-selection:valid,
.select2-container--bootstrap4 .page_is_login_page .was-validated .select2-selection:valid,
.page_is_login_page .was-validated .elegant-input:valid,
.page-is-login-page .was-validated .form-control:valid,
.page-is-login-page .was-validated .select2-container--bootstrap4 .select2-selection:valid,
.select2-container--bootstrap4 .page-is-login-page .was-validated .select2-selection:valid,
.page-is-login-page .was-validated .elegant-input:valid {
  border-color: #28a745;
  background-image: none;
}

.page_is_login_page .was-validated .form-control:valid:focus,
.page_is_login_page .was-validated .select2-container--bootstrap4 .select2-selection:valid:focus,
.select2-container--bootstrap4 .page_is_login_page .was-validated .select2-selection:valid:focus,
.page_is_login_page .was-validated .elegant-input:valid:focus,
.page-is-login-page .was-validated .form-control:valid:focus,
.page-is-login-page .was-validated .select2-container--bootstrap4 .select2-selection:valid:focus,
.select2-container--bootstrap4 .page-is-login-page .was-validated .select2-selection:valid:focus,
.page-is-login-page .was-validated .elegant-input:valid:focus {
  border-color: #28a745;
  box-shadow: 0 0 0 3px rgba(40, 167, 69, 0.1);
}

.page_is_login_page .invalid-feedback,
.page_is_login_page .error-help-block,
.page-is-login-page .invalid-feedback,
.page-is-login-page .error-help-block {
  font-size: 12px;
  margin-top: 4px;
  color: #dc3545;
}

@media (max-width: 767px) {
  .page_is_login_page .login-card,
  .page-is-login-page .login-card {
    border-radius: 12px;
  }

  .page_is_login_page .login-header,
  .page-is-login-page .login-header {
    padding: 25px 20px;
  }

  .page_is_login_page .welcome-title,
  .page-is-login-page .welcome-title {
    font-size: 24px;
  }

  .page_is_login_page .join-title,
  .page-is-login-page .join-title {
    font-size: 24px;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .page_is_login_page .login-container,
  .page-is-login-page .login-container {
    max-width: 700px;
  }

  .page_is_login_page .login-column,
  .page-is-login-page .login-column {
    padding: 35px 30px;
  }
}

@media (min-width: 1400px) {
  .page_is_login_page .login-container,
  .page-is-login-page .login-container {
    max-width: 950px;
  }
}

.page_is_register_page .register-page-wrapper {
  min-height: 100vh;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  background-image: url("/img/banner/bg-SignIn.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  overflow: hidden;
  padding-top: 100px;
  padding-left: 20px;
  padding-right: 20px;
  padding-bottom: 40px;
}

.no-webp .page_is_register_page .register-page-wrapper {
  background-image: url("/img/banner/bg-SignIn.png");
}

@media (max-width: 1200px) {
  .page_is_register_page .register-page-wrapper {
    padding-top: 80px;
  }
}

@media (max-width: 992px) {
  .page_is_register_page .register-page-wrapper {
    padding-top: 60px;
  }
}

@media (max-width: 768px) {
  .page_is_register_page .register-page-wrapper {
    padding-top: 50px;
  }
}

@media (max-width: 576px) {
  .page_is_register_page .register-page-wrapper {
    padding-top: 40px;
  }
}

.page_is_register_page .register-container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 15px;
}

.page_is_register_page .register-card {
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 10px 40px rgba(30, 30, 86, 0.08);
  overflow: hidden;
  max-width: 600px;
  margin: 0 auto;
}

.page_is_register_page .register-row {
  min-height: 700px;
}

.page_is_register_page .register-form-section {
  padding: 60px 50px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.page_is_register_page .register-logo {
  text-align: center;
  margin-bottom: 40px;
}

.page_is_register_page .register-logo h1,
.page_is_register_page .register-logo .h1 {
  font-size: 36px;
  color: #1e1e56;
  font-weight: 300;
  letter-spacing: 2px;
  margin: 0;
}

.page_is_register_page .register-logo .tagline {
  color: #6c757d;
  font-size: 14px;
  margin-top: 8px;
  letter-spacing: 0.5px;
}

.page_is_register_page .register-form h2,
.page_is_register_page .register-form .h2 {
  font-size: 28px;
  color: #1e1e56;
  margin-bottom: 10px;
  font-weight: 400;
}

.page_is_register_page .register-form .subtitle {
  color: #6c757d;
  margin-bottom: 30px;
  font-size: 16px;
}

.page_is_register_page .form-group {
  margin-bottom: 20px;
}

.page_is_register_page .form-label {
  color: #495057;
  font-weight: 500;
  margin-bottom: 8px;
  font-size: 14px;
  display: block;
}

.page_is_register_page .btn-register {
  background: #1e1e56;
  border: none;
  border-radius: 8px;
  color: white;
  padding: 14px 30px;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.5px;
  transition: all 0.3s ease;
  width: 100%;
  margin-top: 10px;
}

.page_is_register_page .btn-register:hover {
  background: #2a2a7a;
  transform: translateY(-1px);
  box-shadow: 0 5px 20px rgba(30, 30, 86, 0.3);
  color: white;
}

.page_is_register_page .register-links {
  margin-top: 30px;
  text-align: center;
}

.page_is_register_page .register-links a {
  color: #1e1e56;
  text-decoration: none;
  font-size: 14px;
  font-weight: 500;
}

.page_is_register_page .register-links a:hover {
  text-decoration: underline;
}

.page_is_register_page .register-image-section {
  background: linear-gradient(135deg, #1e1e56 0%, #2a2a7a 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 60px;
  position: relative;
  overflow: hidden;
}

.page_is_register_page .register-image-section::before {
  content: "";
  position: absolute;
  top: -50%;
  right: -50%;
  width: 200%;
  height: 200%;
  background: repeating-linear-gradient(45deg, transparent, transparent 10px, rgba(255, 255, 255, 0.03) 10px, rgba(255, 255, 255, 0.03) 20px);
  -webkit-animation: slide 20s linear infinite;
          animation: slide 20s linear infinite;
}

.page_is_register_page .register-image-content {
  text-align: center;
  color: white;
  z-index: 2;
  position: relative;
}

.page_is_register_page .register-image-content h3,
.page_is_register_page .register-image-content .h3 {
  font-size: 32px;
  font-weight: 700;
  margin-bottom: 20px;
  letter-spacing: 1px;
  color: #ffffff;
}

.page_is_register_page .register-image-content .price-tag {
  font-size: 48px;
  font-weight: 300;
  margin-bottom: 10px;
  color: #ffd700;
}

.page_is_register_page .register-image-content .price-period {
  font-size: 18px;
  opacity: 0.9;
  margin-bottom: 30px;
}

.page_is_register_page .crown-graphic {
  font-size: 120px;
  opacity: 0.9;
  margin-bottom: 30px;
  -webkit-animation: float 6s ease-in-out infinite;
          animation: float 6s ease-in-out infinite;
}

.page_is_register_page .premium-features {
  margin: 40px 0;
  text-align: left;
  display: inline-block;
}

.page_is_register_page .premium-features li {
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  font-size: 16px;
  list-style: none;
}

.page_is_register_page .premium-features li i {
  margin-right: 15px;
  font-size: 20px;
  color: #ffd700;
}

.page_is_register_page .btn-learn-more {
  background: rgba(255, 255, 255, 0.2);
  border: 2px solid #fff;
  border-radius: 8px;
  color: white;
  padding: 14px 40px;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.5px;
  transition: all 0.3s ease;
  display: inline-block;
  text-decoration: none;
  margin-top: 20px;
}

.page_is_register_page .btn-learn-more:hover {
  background: #fff;
  color: #1e1e56;
  transform: translateY(-1px);
  box-shadow: 0 5px 20px rgba(255, 255, 255, 0.3);
  text-decoration: none;
}

@-webkit-keyframes float {
  0%, 100% {
    transform: translateY(0px);
  }

  50% {
    transform: translateY(-20px);
  }
}

@keyframes float {
  0%, 100% {
    transform: translateY(0px);
  }

  50% {
    transform: translateY(-20px);
  }
}

@-webkit-keyframes slide {
  0% {
    transform: translate(0, 0);
  }

  100% {
    transform: translate(50px, 50px);
  }
}

@keyframes slide {
  0% {
    transform: translate(0, 0);
  }

  100% {
    transform: translate(50px, 50px);
  }
}

.page_is_register_page .invalid-feedback,
.page_is_register_page .error-help-block {
  color: #dc3545;
  font-size: 13px;
  margin-top: 5px;
  display: block;
}

.page_is_register_page .form-control::-moz-placeholder, .page_is_register_page .select2-container--bootstrap4 .select2-selection::-moz-placeholder, .select2-container--bootstrap4 .page_is_register_page .select2-selection::-moz-placeholder {
  color: #adb5bd;
  font-size: 14px;
}

.page_is_register_page .form-control:-ms-input-placeholder, .page_is_register_page .select2-container--bootstrap4 .select2-selection:-ms-input-placeholder, .select2-container--bootstrap4 .page_is_register_page .select2-selection:-ms-input-placeholder {
  color: #adb5bd;
  font-size: 14px;
}

.page_is_register_page .form-control::placeholder,
.page_is_register_page .select2-container--bootstrap4 .select2-selection::placeholder,
.select2-container--bootstrap4 .page_is_register_page .select2-selection::placeholder {
  color: #adb5bd;
  font-size: 14px;
}

.page_is_register_page .form-control.is-invalid,
.page_is_register_page .select2-container--bootstrap4 .is-invalid.select2-selection,
.select2-container--bootstrap4 .page_is_register_page .is-invalid.select2-selection {
  border-color: #dc3545;
}

.page_is_register_page .social-login-section {
  padding: 40px;
  text-align: center;
}

.page_is_register_page .social-login-title {
  font-size: 20px;
  color: #1e1e56;
  margin-bottom: 30px;
  font-weight: 400;
}

.page_is_register_page .social-providers-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 20px;
  max-width: 800px;
  margin: 0 auto;
}

.page_is_register_page .social-provider-card {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 15px 20px;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  background: #f8f9fa;
  text-decoration: none;
  transition: all 0.3s ease;
}

.page_is_register_page .social-provider-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
  border-color: #1e1e56;
  background: #fff;
  text-decoration: none;
}

.page_is_register_page .social-provider-card:hover .social-provider-name {
  color: #1e1e56;
}

.page_is_register_page .social-provider-icon {
  width: 24px;
  height: 24px;
  -o-object-fit: contain;
     object-fit: contain;
  margin-right: 10px;
}

.page_is_register_page .social-provider-name {
  color: #495057;
  font-size: 16px;
  font-weight: 500;
}

@media (min-width: 992px) and (max-width: 1400px) {
  .page_is_register_page .register-container {
    max-width: calc(100% - 200px);
  }

  .page_is_register_page .register-card {
    max-width: 1100px;
  }

  .page_is_register_page .register-row {
    min-height: 500px;
  }

  .page_is_register_page .register-form-section {
    padding: 40px 30px;
  }

  .page_is_register_page .register-logo h1,
  .page_is_register_page .register-logo .h1 {
    font-size: 30px;
  }

  .page_is_register_page .register-form h2,
  .page_is_register_page .register-form .h2 {
    font-size: 24px;
  }

  .page_is_register_page .form-group {
    margin-bottom: 15px;
  }

  .page_is_register_page .btn-register {
    padding: 12px 25px;
    font-size: 15px;
  }

  .page_is_register_page .register-image-section {
    padding: 40px;
  }

  .page_is_register_page .crown-graphic {
    font-size: 80px;
  }

  .page_is_register_page .register-image-content h3,
  .page_is_register_page .register-image-content .h3 {
    font-size: 26px;
  }

  .page_is_register_page .price-tag {
    font-size: 36px;
  }

  .page_is_register_page .premium-features li {
    font-size: 14px;
    margin-bottom: 15px;
  }

  .page_is_register_page .social-login-section {
    padding: 30px;
  }

  .page_is_register_page .social-providers-grid {
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 15px;
  }
}

@media (max-width: 991px) {
  .page_is_register_page .register-image-section {
    display: none;
  }

  .page_is_register_page .register-form-section {
    padding: 40px 30px;
  }

  .page_is_register_page .register-row {
    min-height: auto;
  }
}

@media (max-width: 576px) {
  .page_is_register_page .register-form-section {
    padding: 30px 20px;
  }

  .page_is_register_page .register-logo h1,
  .page_is_register_page .register-logo .h1 {
    font-size: 28px;
  }

  .page_is_register_page .register-form h2,
  .page_is_register_page .register-form .h2 {
    font-size: 24px;
  }

  .page_is_register_page .social-login-section {
    padding: 20px;
  }

  .page_is_register_page .social-providers-grid {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .page_is_register_page .social-provider-card {
    padding: 12px 15px;
  }
}

.page_is_verify_page .verify-page-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f8f9fa;
  position: relative;
  overflow: hidden;
  padding: 50px 0;
  min-height: calc(100vh - 300px);
}

.page_is_verify_page .verify-container {
  width: 100%;
  max-width: 600px;
  margin: 0 auto;
  padding: 0 15px;
}

.page_is_verify_page .verify-card {
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 10px 40px rgba(30, 30, 86, 0.08);
  overflow: hidden;
  text-align: center;
  padding: 60px 40px;
}

.page_is_verify_page .verify-icon {
  font-size: 80px;
  color: #1e1e56;
  margin-bottom: 30px;
  -webkit-animation: pulse 2s ease-in-out infinite;
          animation: pulse 2s ease-in-out infinite;
}

@keyframes pulse {
  0%, 100% {
    transform: scale(1);
    opacity: 1;
  }

  50% {
    transform: scale(1.05);
    opacity: 0.8;
  }
}

.page_is_verify_page .verify-title {
  font-size: 32px;
  color: #1e1e56;
  margin-bottom: 20px;
  font-weight: 400;
}

.page_is_verify_page .verify-message {
  font-size: 18px;
  color: #6c757d;
  line-height: 1.6;
  margin-bottom: 30px;
}

.page_is_verify_page .verify-instructions {
  background: #f8f9fa;
  border-radius: 8px;
  padding: 20px;
  margin: 30px 0;
}

.page_is_verify_page .verify-instructions h4,
.page_is_verify_page .verify-instructions .h4 {
  color: #1e1e56;
  font-size: 18px;
  margin-bottom: 15px;
}

.page_is_verify_page .verify-instructions ul {
  text-align: left;
  margin: 0 auto;
  max-width: 400px;
  color: #495057;
}

.page_is_verify_page .btn-resend {
  background: #1e1e56;
  border: none;
  border-radius: 8px;
  color: white;
  padding: 14px 40px;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.5px;
  transition: all 0.3s ease;
  display: inline-block;
  text-decoration: none;
  margin-top: 20px;
}

.page_is_verify_page .btn-resend:hover {
  background: #2a2a7a;
  transform: translateY(-1px);
  box-shadow: 0 5px 20px rgba(30, 30, 86, 0.3);
  color: white;
}

.page_is_verify_page .resend-link {
  color: #1e1e56;
  text-decoration: none;
  font-weight: 500;
}

.page_is_verify_page .resend-link:hover {
  text-decoration: underline;
}

@media (max-width: 576px) {
  .page_is_verify_page .verify-card {
    padding: 40px 20px;
  }

  .page_is_verify_page .verify-icon {
    font-size: 60px;
  }

  .page_is_verify_page .verify-title {
    font-size: 24px;
  }

  .page_is_verify_page .verify-message {
    font-size: 16px;
  }
}

.page-is-checkout-success .checkout-success-wrapper {
  min-height: 100vh;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  background-image: url("/img/banner/bg-Order.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  overflow: hidden;
  padding-top: 100px;
  padding-left: 20px;
  padding-right: 20px;
  padding-bottom: 40px;
}

.page-is-checkout-success .checkout-success-wrapper::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.3);
  z-index: 0;
}

.page-is-checkout-success .checkout-success-container {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 800px;
}

.page-is-checkout-success .checkout-success-card {
  background: rgba(255, 255, 255, 0.98);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
  border-radius: 20px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
  overflow: hidden;
}

.page_is_forgot_password_page .forgot-password-wrapper {
  min-height: 100vh;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  background-image: url("/img/banner/bg-SignIn.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  overflow: hidden;
  padding-top: 100px;
  padding-left: 20px;
  padding-right: 20px;
  padding-bottom: 40px;
}

.no-webp .page_is_forgot_password_page .forgot-password-wrapper {
  background-image: url("/img/banner/bg-SignIn.png");
}

@media (max-width: 1200px) {
  .page_is_forgot_password_page .forgot-password-wrapper {
    padding-top: 80px;
  }
}

@media (max-width: 992px) {
  .page_is_forgot_password_page .forgot-password-wrapper {
    padding-top: 60px;
  }
}

@media (max-width: 768px) {
  .page_is_forgot_password_page .forgot-password-wrapper {
    padding-top: 50px;
  }
}

@media (max-width: 576px) {
  .page_is_forgot_password_page .forgot-password-wrapper {
    padding-top: 40px;
  }
}

.page_is_forgot_password_page .forgot-password-container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 15px;
}

.page_is_forgot_password_page .forgot-password-card {
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 10px 40px rgba(30, 30, 86, 0.08);
  overflow: hidden;
  min-height: auto;
}

.page_is_forgot_password_page .forgot-password-form-section {
  padding: 60px 50px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.page_is_forgot_password_page .forgot-password-logo {
  text-align: center;
  margin-bottom: 40px;
}

.page_is_forgot_password_page .forgot-password-logo h1,
.page_is_forgot_password_page .forgot-password-logo .h1 {
  font-size: 36px;
  color: #1e1e56;
  font-weight: 300;
  letter-spacing: 2px;
  margin: 0;
}

.page_is_forgot_password_page .forgot-password-logo .tagline {
  color: #6c757d;
  font-size: 14px;
  margin-top: 8px;
  letter-spacing: 0.5px;
}

.page_is_forgot_password_page .forgot-password-form h2,
.page_is_forgot_password_page .forgot-password-form .h2 {
  font-size: 28px;
  color: #1e1e56;
  margin-bottom: 10px;
  font-weight: 400;
}

.page_is_forgot_password_page .forgot-password-form .subtitle {
  color: #6c757d;
  margin-bottom: 30px;
  font-size: 16px;
  line-height: 1.6;
}

.page_is_forgot_password_page .form-group {
  margin-bottom: 20px;
}

.page_is_forgot_password_page .form-label {
  color: #495057;
  font-weight: 500;
  margin-bottom: 8px;
  font-size: 14px;
}

.page_is_forgot_password_page .form-control,
.page_is_forgot_password_page .select2-container--bootstrap4 .select2-selection,
.select2-container--bootstrap4 .page_is_forgot_password_page .select2-selection {
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  padding: 12px 16px;
  font-size: 16px;
  transition: all 0.3s ease;
  background-color: #f8f9fa;
}

.page_is_forgot_password_page .form-control::-moz-placeholder, .page_is_forgot_password_page .select2-container--bootstrap4 .select2-selection::-moz-placeholder, .select2-container--bootstrap4 .page_is_forgot_password_page .select2-selection::-moz-placeholder {
  color: #adb5bd;
  font-size: 14px;
}

.page_is_forgot_password_page .form-control:-ms-input-placeholder, .page_is_forgot_password_page .select2-container--bootstrap4 .select2-selection:-ms-input-placeholder, .select2-container--bootstrap4 .page_is_forgot_password_page .select2-selection:-ms-input-placeholder {
  color: #adb5bd;
  font-size: 14px;
}

.page_is_forgot_password_page .form-control::placeholder,
.page_is_forgot_password_page .select2-container--bootstrap4 .select2-selection::placeholder,
.select2-container--bootstrap4 .page_is_forgot_password_page .select2-selection::placeholder {
  color: #adb5bd;
  font-size: 14px;
}

.page_is_forgot_password_page .form-control:focus,
.page_is_forgot_password_page .select2-container--bootstrap4 .select2-selection:focus,
.select2-container--bootstrap4 .page_is_forgot_password_page .select2-selection:focus {
  border-color: #1e1e56;
  box-shadow: 0 0 0 0.2rem rgba(30, 30, 86, 0.1);
  background-color: #fff;
}

.page_is_forgot_password_page .input-group {
  position: relative;
}

.page_is_forgot_password_page .input-group .form-control,
.select2-container--bootstrap4 .page_is_forgot_password_page .input-group .select2-selection,
.page_is_forgot_password_page .input-group .select2-container--bootstrap4 .select2-selection {
  padding-left: 45px !important;
}

.page_is_forgot_password_page .input-icon {
  position: absolute;
  left: 16px;
  top: 50%;
  transform: translateY(-50%);
  color: #6c757d;
  z-index: 10;
}

.page_is_forgot_password_page .btn-reset {
  background: #1e1e56;
  border: none;
  border-radius: 8px;
  color: white;
  padding: 14px 30px;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.5px;
  transition: all 0.3s ease;
  width: 100%;
  margin-top: 10px;
}

.page_is_forgot_password_page .btn-reset:hover {
  background: #2a2a7a;
  transform: translateY(-1px);
  box-shadow: 0 5px 20px rgba(30, 30, 86, 0.3);
}

.page_is_forgot_password_page .back-to-login {
  margin-top: 30px;
  text-align: center;
}

.page_is_forgot_password_page .back-to-login a {
  color: #1e1e56;
  text-decoration: none;
  font-size: 14px;
  font-weight: 500;
  display: inline-flex;
  align-items: center;
}

.page_is_forgot_password_page .back-to-login a:hover {
  text-decoration: underline;
}

.page_is_forgot_password_page .back-to-login i {
  margin-right: 5px;
}

.page_is_forgot_password_page .alert {
  border-radius: 8px;
  padding: 12px 16px;
  margin-bottom: 20px;
  font-size: 14px;
  border: none;
}

.page_is_forgot_password_page .alert.alert-success {
  background-color: #d4edda;
  color: #155724;
}

.page_is_forgot_password_page .alert.alert-danger {
  background-color: #fee;
  color: #c33;
}

@media (min-width: 992px) and (max-width: 1400px) {
  .page_is_forgot_password_page .forgot-password-form-section {
    padding: 40px 35px;
  }

  .page_is_forgot_password_page .forgot-password-logo {
    margin-bottom: 30px;
  }

  .page_is_forgot_password_page .forgot-password-logo h1,
  .page_is_forgot_password_page .forgot-password-logo .h1 {
    font-size: 32px;
  }

  .page_is_forgot_password_page .forgot-password-logo .tagline {
    font-size: 13px;
  }

  .page_is_forgot_password_page .forgot-password-form h2,
  .page_is_forgot_password_page .forgot-password-form .h2 {
    font-size: 26px;
    margin-bottom: 8px;
  }

  .page_is_forgot_password_page .forgot-password-form .subtitle {
    font-size: 15px;
    margin-bottom: 25px;
  }

  .page_is_forgot_password_page .form-group {
    margin-bottom: 18px;
  }

  .page_is_forgot_password_page .form-control,
  .page_is_forgot_password_page .select2-container--bootstrap4 .select2-selection,
  .select2-container--bootstrap4 .page_is_forgot_password_page .select2-selection {
    padding: 11px 15px;
    font-size: 15px;
  }

  .page_is_forgot_password_page .input-group .form-control,
  .select2-container--bootstrap4 .page_is_forgot_password_page .input-group .select2-selection,
  .page_is_forgot_password_page .input-group .select2-container--bootstrap4 .select2-selection {
    padding-left: 42px !important;
  }

  .page_is_forgot_password_page .btn-reset {
    padding: 13px 28px;
    font-size: 15px;
    margin-top: 8px;
  }
}

@media (max-width: 991px) {
  .page_is_forgot_password_page .forgot-password-form-section {
    padding: 40px 30px;
  }
}

@media (max-width: 576px) {
  .page_is_forgot_password_page .forgot-password-form-section {
    padding: 30px 20px;
  }

  .page_is_forgot_password_page .forgot-password-logo h1,
  .page_is_forgot_password_page .forgot-password-logo .h1 {
    font-size: 28px;
  }

  .page_is_forgot_password_page .forgot-password-form h2,
  .page_is_forgot_password_page .forgot-password-form .h2 {
    font-size: 24px;
  }
}

.page_is_forgot_password_page .invalid-feedback,
.page_is_forgot_password_page .error-help-block {
  font-size: 13px;
  margin-top: 5px;
}

.page_is_forgot_password_page .was-validated .form-control:invalid,
.page_is_forgot_password_page .was-validated .select2-container--bootstrap4 .select2-selection:invalid,
.select2-container--bootstrap4 .page_is_forgot_password_page .was-validated .select2-selection:invalid {
  border-color: #dc3545;
  background-image: none;
}

.page_is_forgot_password_page .was-validated .form-control:valid,
.page_is_forgot_password_page .was-validated .select2-container--bootstrap4 .select2-selection:valid,
.select2-container--bootstrap4 .page_is_forgot_password_page .was-validated .select2-selection:valid {
  border-color: #198754;
  background-image: none;
}

.page_is_reset_password_page .reset-password-wrapper {
  min-height: 100vh;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  background-image: url("/img/banner/bg-SignIn.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  overflow: hidden;
  padding-top: 100px;
  padding-left: 20px;
  padding-right: 20px;
  padding-bottom: 40px;
}

.no-webp .page_is_reset_password_page .reset-password-wrapper {
  background-image: url("/img/banner/bg-SignIn.png");
}

@media (max-width: 1200px) {
  .page_is_reset_password_page .reset-password-wrapper {
    padding-top: 80px;
  }
}

@media (max-width: 992px) {
  .page_is_reset_password_page .reset-password-wrapper {
    padding-top: 60px;
  }
}

@media (max-width: 768px) {
  .page_is_reset_password_page .reset-password-wrapper {
    padding-top: 50px;
  }
}

@media (max-width: 576px) {
  .page_is_reset_password_page .reset-password-wrapper {
    padding-top: 40px;
  }
}

.page_is_reset_password_page .reset-password-container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 15px;
}

.page_is_reset_password_page .reset-password-card {
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 10px 40px rgba(30, 30, 86, 0.08);
  overflow: hidden;
}

.page_is_reset_password_page .reset-password-row {
  min-height: 600px;
}

.page_is_reset_password_page .reset-password-form-section {
  padding: 60px 50px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.page_is_reset_password_page .reset-password-logo {
  text-align: center;
  margin-bottom: 40px;
}

.page_is_reset_password_page .reset-password-logo h1,
.page_is_reset_password_page .reset-password-logo .h1 {
  font-size: 36px;
  color: #1e1e56;
  font-weight: 300;
  letter-spacing: 2px;
  margin: 0;
}

.page_is_reset_password_page .reset-password-logo .tagline {
  color: #6c757d;
  font-size: 14px;
  margin-top: 8px;
  letter-spacing: 0.5px;
}

.page_is_reset_password_page .reset-password-form h2,
.page_is_reset_password_page .reset-password-form .h2 {
  font-size: 28px;
  color: #1e1e56;
  margin-bottom: 10px;
  font-weight: 400;
}

.page_is_reset_password_page .reset-password-form .subtitle {
  color: #6c757d;
  margin-bottom: 30px;
  font-size: 16px;
  line-height: 1.6;
}

.page_is_reset_password_page .form-group {
  margin-bottom: 20px;
}

.page_is_reset_password_page .form-label {
  color: #495057;
  font-weight: 500;
  margin-bottom: 8px;
  font-size: 14px;
}

.page_is_reset_password_page .form-control,
.page_is_reset_password_page .select2-container--bootstrap4 .select2-selection,
.select2-container--bootstrap4 .page_is_reset_password_page .select2-selection {
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  padding: 12px 16px;
  font-size: 16px;
  transition: all 0.3s ease;
  background-color: #f8f9fa;
}

.page_is_reset_password_page .form-control::-moz-placeholder, .page_is_reset_password_page .select2-container--bootstrap4 .select2-selection::-moz-placeholder, .select2-container--bootstrap4 .page_is_reset_password_page .select2-selection::-moz-placeholder {
  color: #adb5bd;
  font-size: 14px;
}

.page_is_reset_password_page .form-control:-ms-input-placeholder, .page_is_reset_password_page .select2-container--bootstrap4 .select2-selection:-ms-input-placeholder, .select2-container--bootstrap4 .page_is_reset_password_page .select2-selection:-ms-input-placeholder {
  color: #adb5bd;
  font-size: 14px;
}

.page_is_reset_password_page .form-control::placeholder,
.page_is_reset_password_page .select2-container--bootstrap4 .select2-selection::placeholder,
.select2-container--bootstrap4 .page_is_reset_password_page .select2-selection::placeholder {
  color: #adb5bd;
  font-size: 14px;
}

.page_is_reset_password_page .form-control:focus,
.page_is_reset_password_page .select2-container--bootstrap4 .select2-selection:focus,
.select2-container--bootstrap4 .page_is_reset_password_page .select2-selection:focus {
  border-color: #1e1e56;
  box-shadow: 0 0 0 0.2rem rgba(30, 30, 86, 0.1);
  background-color: #fff;
}

.page_is_reset_password_page .form-control[readonly],
.page_is_reset_password_page .select2-container--bootstrap4 [readonly].select2-selection,
.select2-container--bootstrap4 .page_is_reset_password_page [readonly].select2-selection {
  background-color: #e9ecef;
  opacity: 1;
}

.page_is_reset_password_page .input-group {
  position: relative;
}

.page_is_reset_password_page .input-group .form-control,
.select2-container--bootstrap4 .page_is_reset_password_page .input-group .select2-selection,
.page_is_reset_password_page .input-group .select2-container--bootstrap4 .select2-selection {
  padding-left: 45px !important;
}

.page_is_reset_password_page .input-icon {
  position: absolute;
  left: 16px;
  top: 50%;
  transform: translateY(-50%);
  color: #6c757d;
  z-index: 10;
}

.page_is_reset_password_page .password-toggle {
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  cursor: pointer;
  color: #6c757d;
  z-index: 10;
  background: transparent;
  border: none;
  padding: 5px;
}

.page_is_reset_password_page .password-toggle:hover {
  color: #1e1e56;
}

.page_is_reset_password_page .btn-reset {
  background: #1e1e56;
  border: none;
  border-radius: 8px;
  color: white;
  padding: 14px 30px;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.5px;
  transition: all 0.3s ease;
  width: 100%;
  margin-top: 10px;
}

.page_is_reset_password_page .btn-reset:hover {
  background: #2a2a7a;
  transform: translateY(-1px);
  box-shadow: 0 5px 20px rgba(30, 30, 86, 0.3);
}

.page_is_reset_password_page .password-requirements {
  margin-top: 10px;
  padding: 10px 15px;
  background-color: #f8f9fa;
  border-radius: 6px;
  font-size: 13px;
}

.page_is_reset_password_page .password-requirements h6,
.page_is_reset_password_page .password-requirements .h6 {
  font-size: 13px;
  font-weight: 600;
  margin-bottom: 8px;
  color: #495057;
}

.page_is_reset_password_page .password-requirements ul {
  margin: 0;
  padding-left: 20px;
}

.page_is_reset_password_page .password-requirements li {
  color: #6c757d;
  margin-bottom: 3px;
}

.page_is_reset_password_page .alert {
  border-radius: 8px;
  padding: 12px 16px;
  margin-bottom: 20px;
  font-size: 14px;
  border: none;
}

.page_is_reset_password_page .alert.alert-success {
  background-color: #d4edda;
  color: #155724;
}

.page_is_reset_password_page .alert.alert-danger {
  background-color: #fee;
  color: #c33;
}

.page_is_reset_password_page .reset-password-image-section {
  background: linear-gradient(135deg, #1e1e56 0%, #2a2a7a 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 60px;
  position: relative;
  overflow: hidden;
}

.page_is_reset_password_page .reset-password-image-section::before {
  content: "";
  position: absolute;
  top: -50%;
  right: -50%;
  width: 200%;
  height: 200%;
  background: repeating-linear-gradient(45deg, transparent, transparent 10px, rgba(255, 255, 255, 0.03) 10px, rgba(255, 255, 255, 0.03) 20px);
  -webkit-animation: slide 20s linear infinite;
          animation: slide 20s linear infinite;
}

.page_is_reset_password_page .reset-password-image-content {
  text-align: center;
  color: white;
  z-index: 2;
  position: relative;
}

.page_is_reset_password_page .reset-password-image-content h3,
.page_is_reset_password_page .reset-password-image-content .h3 {
  font-size: 32px;
  font-weight: 700;
  margin-bottom: 20px;
  letter-spacing: 1px;
  color: #ffffff;
}

.page_is_reset_password_page .reset-password-image-content p {
  font-size: 18px;
  opacity: 0.9;
  line-height: 1.6;
  max-width: 400px;
  margin: 0 auto;
}

.page_is_reset_password_page .key-graphic {
  font-size: 120px;
  opacity: 0.9;
  margin-bottom: 30px;
  -webkit-animation: rotate 4s ease-in-out infinite;
          animation: rotate 4s ease-in-out infinite;
}

@-webkit-keyframes rotate {
  0%, 100% {
    transform: rotate(0deg);
  }

  50% {
    transform: rotate(10deg);
  }
}

@keyframes rotate {
  0%, 100% {
    transform: rotate(0deg);
  }

  50% {
    transform: rotate(10deg);
  }
}

.page_is_reset_password_page .password-tips {
  margin-top: 40px;
  text-align: left;
  display: inline-block;
  width: 100%;
}

.page_is_reset_password_page .password-tips li {
  margin-bottom: 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
}

.page_is_reset_password_page .password-tips li i {
  margin-right: 10px;
  font-size: 20px;
  opacity: 0.9;
}

@keyframes slide {
  0% {
    transform: translate(0, 0);
  }

  100% {
    transform: translate(50px, 50px);
  }
}

@media (min-width: 992px) and (max-width: 1400px) {
  .page_is_reset_password_page .reset-password-container {
    width: 100%;
    max-width: calc(100% - 200px);
    display: flex;
    justify-content: center;
  }

  .page_is_reset_password_page .reset-password-card {
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
  }

  .page_is_reset_password_page .reset-password-row {
    min-height: 420px;
  }

  .page_is_reset_password_page .reset-password-form-section {
    padding: 30px 25px;
  }

  .page_is_reset_password_page .reset-password-logo {
    margin-bottom: 25px;
  }

  .page_is_reset_password_page .reset-password-logo h1,
  .page_is_reset_password_page .reset-password-logo .h1 {
    font-size: 30px;
  }

  .page_is_reset_password_page .reset-password-logo .tagline {
    font-size: 13px;
  }

  .page_is_reset_password_page .reset-password-form h2,
  .page_is_reset_password_page .reset-password-form .h2 {
    font-size: 24px;
    margin-bottom: 8px;
  }

  .page_is_reset_password_page .reset-password-form .subtitle {
    font-size: 14px;
    margin-bottom: 20px;
  }

  .page_is_reset_password_page .form-group {
    margin-bottom: 15px;
  }

  .page_is_reset_password_page .form-control,
  .page_is_reset_password_page .select2-container--bootstrap4 .select2-selection,
  .select2-container--bootstrap4 .page_is_reset_password_page .select2-selection {
    padding: 10px 14px;
    font-size: 15px;
  }

  .page_is_reset_password_page .input-group .form-control,
  .select2-container--bootstrap4 .page_is_reset_password_page .input-group .select2-selection,
  .page_is_reset_password_page .input-group .select2-container--bootstrap4 .select2-selection {
    padding-left: 40px !important;
  }

  .page_is_reset_password_page .btn-reset {
    padding: 12px 25px;
    font-size: 15px;
    margin-top: 8px;
  }

  .page_is_reset_password_page .password-requirements {
    font-size: 12px;
    padding: 8px 12px;
  }

  .page_is_reset_password_page .password-requirements h6,
  .page_is_reset_password_page .password-requirements .h6 {
    font-size: 12px;
  }

  .page_is_reset_password_page .reset-password-image-section {
    padding: 40px;
  }

  .page_is_reset_password_page .key-graphic {
    font-size: 80px;
    margin-bottom: 20px;
  }

  .page_is_reset_password_page .reset-password-image-content h3,
  .page_is_reset_password_page .reset-password-image-content .h3 {
    font-size: 26px;
    margin-bottom: 15px;
  }

  .page_is_reset_password_page .reset-password-image-content p {
    font-size: 16px;
  }

  .page_is_reset_password_page .password-tips {
    margin-top: 25px;
  }

  .page_is_reset_password_page .password-tips li {
    margin-bottom: 10px;
    font-size: 14px;
  }

  .page_is_reset_password_page .password-tips li i {
    font-size: 16px;
  }
}

@media (max-width: 991px) {
  .page_is_reset_password_page .reset-password-image-section {
    display: none;
  }

  .page_is_reset_password_page .reset-password-form-section {
    padding: 40px 30px;
  }
}

@media (max-width: 576px) {
  .page_is_reset_password_page .reset-password-form-section {
    padding: 30px 20px;
  }

  .page_is_reset_password_page .reset-password-logo h1,
  .page_is_reset_password_page .reset-password-logo .h1 {
    font-size: 28px;
  }

  .page_is_reset_password_page .reset-password-form h2,
  .page_is_reset_password_page .reset-password-form .h2 {
    font-size: 24px;
  }
}

.page_is_reset_password_page .invalid-feedback,
.page_is_reset_password_page .error-help-block {
  font-size: 13px;
  margin-top: 5px;
}

.page_is_reset_password_page .was-validated .form-control:invalid,
.page_is_reset_password_page .was-validated .select2-container--bootstrap4 .select2-selection:invalid,
.select2-container--bootstrap4 .page_is_reset_password_page .was-validated .select2-selection:invalid {
  border-color: #dc3545;
  background-image: none;
}

.page_is_reset_password_page .was-validated .form-control:valid,
.page_is_reset_password_page .was-validated .select2-container--bootstrap4 .select2-selection:valid,
.select2-container--bootstrap4 .page_is_reset_password_page .was-validated .select2-selection:valid {
  border-color: #198754;
  background-image: none;
}

.page_is_category_page .category-hero,
.page_is_shop_page .category-hero {
  position: relative;
  min-height: 300px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 3rem;
  overflow: hidden;
}

.page_is_category_page .category-hero.category-hero-with-image,
.page_is_shop_page .category-hero.category-hero-with-image {
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
}

.page_is_category_page .category-hero.category-hero-elegant,
.page_is_shop_page .category-hero.category-hero-elegant {
  background: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);
  position: relative;
}

.page_is_category_page .category-hero.category-hero-elegant::before,
.page_is_shop_page .category-hero.category-hero-elegant::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: radial-gradient(circle at 20% 80%, rgba(124, 105, 239, 0.1) 0%, transparent 50%), radial-gradient(circle at 80% 20%, rgba(124, 105, 239, 0.1) 0%, transparent 50%);
}

.page_is_category_page .category-hero.category-hero-elegant .category-hero-content,
.page_is_shop_page .category-hero.category-hero-elegant .category-hero-content {
  color: #333;
}

.page_is_category_page .category-hero.category-hero-elegant .category-breadcrumb a,
.page_is_shop_page .category-hero.category-hero-elegant .category-breadcrumb a {
  color: #6c757d;
}

.page_is_category_page .category-hero.category-hero-elegant .category-breadcrumb a:hover,
.page_is_shop_page .category-hero.category-hero-elegant .category-breadcrumb a:hover {
  color: #7c69ef !important;
}

.page_is_category_page .category-hero.category-hero-elegant .stat-item,
.page_is_shop_page .category-hero.category-hero-elegant .stat-item {
  background: white;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
  border: none;
  color: #333;
}

.page_is_category_page .category-hero-overlay,
.page_is_shop_page .category-hero-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0.8) 0%, rgba(255, 255, 255, 0.7) 50%, rgba(255, 255, 255, 0.8) 100%);
  display: flex;
  align-items: center;
  justify-content: center;
}

.page_is_category_page .category-hero-content,
.page_is_shop_page .category-hero-content {
  position: relative;
  z-index: 1;
  text-align: center;
  color: #333;
  padding: 3rem 0;
  width: 100%;
}

.page_is_category_page .category-breadcrumb,
.page_is_shop_page .category-breadcrumb {
  font-size: 0.875rem;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.page_is_category_page .category-breadcrumb a,
.page_is_shop_page .category-breadcrumb a {
  text-decoration: none;
  transition: color 0.3s ease;
}

.page_is_category_page .category-breadcrumb a:hover,
.page_is_shop_page .category-breadcrumb a:hover {
  color: #7c69ef !important;
}

.page_is_category_page .category-icon,
.page_is_shop_page .category-icon {
  display: inline-block;
  -webkit-animation: sparkle 3s ease-in-out infinite;
          animation: sparkle 3s ease-in-out infinite;
}

@-webkit-keyframes sparkle {
  0%, 100% {
    transform: scale(1) rotate(0deg);
    opacity: 0.5;
  }

  50% {
    transform: scale(1.1) rotate(5deg);
    opacity: 0.7;
  }
}

@keyframes sparkle {
  0%, 100% {
    transform: scale(1) rotate(0deg);
    opacity: 0.5;
  }

  50% {
    transform: scale(1.1) rotate(5deg);
    opacity: 0.7;
  }
}

.page_is_category_page .category-hero-title,
.page_is_shop_page .category-hero-title {
  font-size: 3.5rem;
  font-weight: 300;
  margin-bottom: 1.5rem;
  font-family: "Playfair Display", serif;
  letter-spacing: -0.02em;
  line-height: 1.2;
}

.category-hero-with-image .page_is_category_page .category-hero-title,
.category-hero-with-image .page_is_shop_page .category-hero-title {
  text-shadow: 1px 1px 3px rgba(255, 255, 255, 0.8);
}

.page_is_category_page .category-hero-description,
.page_is_shop_page .category-hero-description {
  font-size: 1.25rem;
  max-width: 700px;
  margin: 0 auto 2rem;
  line-height: 1.6;
  font-weight: 300;
  opacity: 0.95;
}

.category-hero-with-image .page_is_category_page .category-hero-description,
.category-hero-with-image .page_is_shop_page .category-hero-description {
  text-shadow: 1px 1px 4px rgba(0, 0, 0, 0.7);
}

.page_is_category_page .category-hero-stats,
.page_is_shop_page .category-hero-stats {
  display: flex;
  justify-content: center;
  gap: 2rem;
  flex-wrap: wrap;
  margin-top: 2rem;
}

.page_is_category_page .stat-item,
.page_is_shop_page .stat-item {
  display: flex;
  align-items: center;
  font-size: 1.1rem;
  padding: 0.75rem 1.5rem;
  background: rgba(255, 255, 255, 0.1);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
  border-radius: 50px;
  border: 1px solid rgba(255, 255, 255, 0.2);
}

.page_is_category_page .stat-number,
.page_is_shop_page .stat-number {
  font-weight: 600;
  margin: 0 0.25rem;
}

.page_is_category_page .selected-category-info,
.page_is_shop_page .selected-category-info {
  padding: 1rem;
  background-color: #f8f9fa;
  border-radius: 0.25rem;
  border: 1px solid #dee2e6;
}

.page_is_category_page .selected-category-info .selected-category-badge .badge,
.page_is_shop_page .selected-category-info .selected-category-badge .badge {
  font-size: 1rem;
  padding: 0.5rem 2.25rem 0.5rem 1rem;
  position: relative;
}

.page_is_category_page .selected-category-info .selected-category-badge .badge .category-remove-btn,
.page_is_shop_page .selected-category-info .selected-category-badge .badge .category-remove-btn {
  position: absolute;
  right: 11px;
  top: 21px;
  transform: translateY(-50%);
  padding: 5px;
  margin: -5px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  opacity: 0.8;
  transition: opacity 0.2s ease;
}

.page_is_category_page .selected-category-info .selected-category-badge .badge .category-remove-btn:hover,
.page_is_shop_page .selected-category-info .selected-category-badge .badge .category-remove-btn:hover {
  opacity: 1;
}

.page_is_category_page .selected-category-info .selected-category-badge .badge .category-remove-btn i,
.page_is_shop_page .selected-category-info .selected-category-badge .badge .category-remove-btn i {
  font-size: 14px;
  pointer-events: none;
}

@media (max-width: 992px) {
  .page_is_category_page .category-hero,
  .page_is_shop_page .category-hero {
    min-height: 400px;
  }

  .page_is_category_page .category-hero-title,
  .page_is_shop_page .category-hero-title {
    font-size: 2.5rem;
  }
}

@media (max-width: 768px) {
  .page_is_category_page .category-hero,
  .page_is_shop_page .category-hero {
    min-height: 350px;
  }

  .page_is_category_page .category-hero-title,
  .page_is_shop_page .category-hero-title {
    font-size: 2rem;
  }

  .page_is_category_page .category-hero-description,
  .page_is_shop_page .category-hero-description {
    font-size: 1.1rem;
    padding: 0 1rem;
  }

  .page_is_category_page .category-hero-stats,
  .page_is_shop_page .category-hero-stats {
    gap: 1rem;
  }

  .page_is_category_page .stat-item,
  .page_is_shop_page .stat-item {
    font-size: 1rem;
    padding: 0.5rem 1rem;
  }

  .page_is_category_page .category-breadcrumb,
  .page_is_shop_page .category-breadcrumb {
    font-size: 0.75rem;
  }
}

@media (max-width: 576px) {
  .page_is_category_page .category-hero-title,
  .page_is_shop_page .category-hero-title {
    font-size: 1.75rem;
  }

  .page_is_category_page .category-hero-description,
  .page_is_shop_page .category-hero-description {
    font-size: 1rem;
  }
}

.page-is-product-categories .product-categories-page {
  padding: 40px 0 60px;
}

@media (max-width: 768px) {
  .page-is-product-categories .product-categories-page {
    padding: 30px 0 40px;
  }
}

.page-is-product-categories .page-header {
  margin-bottom: 3rem;
}

.page-is-product-categories .page-header .page-title {
  font-size: 2.5rem;
  font-weight: 300;
  color: #1e1e56;
  margin-bottom: 0.5rem;
  letter-spacing: -0.5px;
}

@media (max-width: 768px) {
  .page-is-product-categories .page-header .page-title {
    font-size: 2rem;
  }
}

.page-is-product-categories .page-header .page-subtitle {
  font-size: 1.125rem;
  color: #6c757d;
  margin: 0;
}

.page-is-product-categories .categories-catalog .category-card-link {
  text-decoration: none;
  color: inherit;
  display: block;
  height: 100%;
}

.page-is-product-categories .categories-catalog .category-card-link:hover {
  text-decoration: none;
}

.page-is-product-categories .categories-catalog .category-catalog-card {
  background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  overflow: hidden;
  height: 100%;
  transition: all 0.3s ease;
  display: flex;
  flex-direction: column;
}

.page-is-product-categories .categories-catalog .category-catalog-card:hover {
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
  border-color: #d0d0d0;
}

.page-is-product-categories .categories-catalog .category-catalog-card:hover .category-image {
  opacity: 0.9;
}

.page-is-product-categories .categories-catalog .category-catalog-card:hover .category-name {
  color: #1e1e56;
}

.page-is-product-categories .categories-catalog .category-image-wrapper {
  position: relative;
  padding-top: 75%;
  background: #f8f9fa;
  overflow: hidden;
}

.page-is-product-categories .categories-catalog .category-image-wrapper .category-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: opacity 0.3s ease;
}

.page-is-product-categories .categories-catalog .category-image-wrapper .category-image-placeholder {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #f5f7fa 0%, #e9ecef 100%);
}

.page-is-product-categories .categories-catalog .category-image-wrapper .category-image-placeholder i {
  font-size: 3rem;
  color: #adb5bd;
  opacity: 0.5;
}

.page-is-product-categories .categories-catalog .category-image-wrapper .item-count-badge {
  position: absolute;
  top: 12px;
  right: 12px;
  background: rgba(255, 255, 255, 0.95);
  color: #495057;
  padding: 4px 10px;
  border-radius: 20px;
  font-size: 0.75rem;
  font-weight: 600;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  -webkit-backdrop-filter: blur(4px);
          backdrop-filter: blur(4px);
}

.page-is-product-categories .categories-catalog .category-info {
  padding: 1.25rem;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}

.page-is-product-categories .categories-catalog .category-info .category-name {
  font-size: 1.125rem;
  font-weight: 500;
  color: #212529;
  margin-bottom: 0.5rem;
  transition: color 0.3s ease;
  line-height: 1.3;
}

.page-is-product-categories .categories-catalog .category-info .category-description {
  font-size: 0.875rem;
  color: #6c757d;
  margin: 0;
  line-height: 1.5;
  flex-grow: 1;
}

.page-is-product-categories .empty-state {
  padding: 4rem 0;
}

.page-is-product-categories .empty-state i {
  color: #dee2e6;
}

.page-is-product-categories .empty-state h3,
.page-is-product-categories .empty-state .h3 {
  color: #495057;
  margin-bottom: 1rem;
}

.page-is-product-categories .empty-state p {
  font-size: 1.125rem;
  margin-bottom: 2rem;
}

.page-is-product-categories .bottom-cta-section {
  border-top: 1px solid #e0e0e0;
  padding-top: 3rem;
  margin-top: 3rem;
}

.page-is-product-categories .bottom-cta-section .cta-title {
  font-size: 1.875rem;
  font-weight: 400;
  color: #1e1e56;
  margin-bottom: 0.5rem;
}

.page-is-product-categories .bottom-cta-section .cta-subtitle {
  font-size: 1.125rem;
  color: #6c757d;
  margin-bottom: 2rem;
}

.page-is-product-categories .bottom-cta-section .cta-buttons {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.5rem;
}

.page-is-product-categories .bottom-cta-section .cta-buttons .btn {
  min-width: 150px;
}

@media (max-width: 576px) {
  .page-is-product-categories .bottom-cta-section .cta-buttons .btn {
    width: 100%;
    margin-bottom: 0.5rem;
  }
}

@media (max-width: 991px) {
  .page-is-product-categories .categories-catalog .category-catalog-card .category-info {
    padding: 1rem;
  }

  .page-is-product-categories .categories-catalog .category-catalog-card .category-info .category-name {
    font-size: 1rem;
  }

  .page-is-product-categories .categories-catalog .category-catalog-card .category-info .category-description {
    font-size: 0.8125rem;
  }
}

@media (max-width: 575px) {
  .page-is-product-categories .categories-catalog .row {
    margin: 0 -0.5rem;
  }

  .page-is-product-categories .categories-catalog .row > [class*=col] {
    padding: 0 0.5rem;
  }

  .page-is-product-categories .categories-catalog .category-catalog-card .category-image-wrapper {
    padding-top: 66.67%;
  }
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.page-is-product-categories .categories-catalog .category-catalog-card {
  -webkit-animation: fadeInUp 0.5s ease-out;
          animation: fadeInUp 0.5s ease-out;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
}

.page-is-product-categories .categories-catalog .category-catalog-card:nth-child(1) {
  -webkit-animation-delay: 0.05s;
          animation-delay: 0.05s;
}

.page-is-product-categories .categories-catalog .category-catalog-card:nth-child(2) {
  -webkit-animation-delay: 0.1s;
          animation-delay: 0.1s;
}

.page-is-product-categories .categories-catalog .category-catalog-card:nth-child(3) {
  -webkit-animation-delay: 0.15s;
          animation-delay: 0.15s;
}

.page-is-product-categories .categories-catalog .category-catalog-card:nth-child(4) {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s;
}

.page-is-product-categories .categories-catalog .category-catalog-card:nth-child(5) {
  -webkit-animation-delay: 0.25s;
          animation-delay: 0.25s;
}

.page-is-product-categories .categories-catalog .category-catalog-card:nth-child(6) {
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s;
}

.page-is-product-categories .categories-catalog .category-catalog-card:nth-child(7) {
  -webkit-animation-delay: 0.35s;
          animation-delay: 0.35s;
}

.page-is-product-categories .categories-catalog .category-catalog-card:nth-child(8) {
  -webkit-animation-delay: 0.4s;
          animation-delay: 0.4s;
}

.page-is-product-categories .categories-catalog .category-catalog-card:nth-child(9) {
  -webkit-animation-delay: 0.45s;
          animation-delay: 0.45s;
}

.page-is-product-categories .categories-catalog .category-catalog-card:nth-child(10) {
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
}

.page-is-product-categories .categories-catalog .category-catalog-card:nth-child(11) {
  -webkit-animation-delay: 0.55s;
          animation-delay: 0.55s;
}

.page-is-product-categories .categories-catalog .category-catalog-card:nth-child(12) {
  -webkit-animation-delay: 0.6s;
          animation-delay: 0.6s;
}

.page-is-product-categories .categories-catalog .category-catalog-card:nth-child(13) {
  -webkit-animation-delay: 0.65s;
          animation-delay: 0.65s;
}

.page-is-product-categories .categories-catalog .category-catalog-card:nth-child(14) {
  -webkit-animation-delay: 0.7s;
          animation-delay: 0.7s;
}

.page-is-product-categories .categories-catalog .category-catalog-card:nth-child(15) {
  -webkit-animation-delay: 0.75s;
          animation-delay: 0.75s;
}

.page-is-product-categories .categories-catalog .category-catalog-card:nth-child(16) {
  -webkit-animation-delay: 0.8s;
          animation-delay: 0.8s;
}

.page-is-product-categories .categories-catalog .category-catalog-card:nth-child(17) {
  -webkit-animation-delay: 0.85s;
          animation-delay: 0.85s;
}

.page-is-product-categories .categories-catalog .category-catalog-card:nth-child(18) {
  -webkit-animation-delay: 0.9s;
          animation-delay: 0.9s;
}

.page-is-product-categories .categories-catalog .category-catalog-card:nth-child(19) {
  -webkit-animation-delay: 0.95s;
          animation-delay: 0.95s;
}

.page-is-product-categories .categories-catalog .category-catalog-card:nth-child(20) {
  -webkit-animation-delay: 1s;
          animation-delay: 1s;
}

.page-is-request-seller-access .seller-access-page-wrapper {
  min-height: 100vh;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  background-image: url("/img/banner/bg-SignIn.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  overflow: hidden;
  padding-top: 100px;
  padding-left: 20px;
  padding-right: 20px;
  padding-bottom: 40px;
}

.no-webp .page-is-request-seller-access .seller-access-page-wrapper {
  background-image: url("/img/banner/bg-SignIn.png");
}

@media (max-width: 1200px) {
  .page-is-request-seller-access .seller-access-page-wrapper {
    padding-top: 80px;
  }
}

@media (max-width: 992px) {
  .page-is-request-seller-access .seller-access-page-wrapper {
    padding-top: 60px;
  }
}

@media (max-width: 768px) {
  .page-is-request-seller-access .seller-access-page-wrapper {
    padding-top: 50px;
  }
}

@media (max-width: 576px) {
  .page-is-request-seller-access .seller-access-page-wrapper {
    padding-top: 40px;
  }
}

.page-is-request-seller-access .seller-access-container {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

.page-is-request-seller-access .seller-access-card {
  background: #ffffff;
  border-radius: 16px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.08);
  overflow: hidden;
  border: 1px solid rgba(0, 0, 0, 0.05);
}

.page-is-request-seller-access .seller-access-header {
  text-align: center;
  padding: 30px 20px;
  border-bottom: 1px solid #f0f0f0;
}

.page-is-request-seller-access .seller-access-header .seller-access-logo-img {
  height: auto;
  margin-bottom: 10px;
}

.page-is-request-seller-access .seller-access-header .luxury-tagline {
  color: #6c757d;
  font-size: 13px;
  letter-spacing: 1px;
  text-transform: uppercase;
  margin: 0;
  font-weight: 500;
}

.page-is-request-seller-access .seller-access-content {
  padding: 40px;
}

@media (max-width: 767px) {
  .page-is-request-seller-access .seller-access-content {
    padding: 25px;
  }
}

.page-is-request-seller-access .seller-access-body {
  max-width: 100%;
  margin: 0 auto;
}

.page-is-request-seller-access .form-label {
  color: #495057;
  font-weight: 500;
  margin-bottom: 6px;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.page-is-request-seller-access .form-control,
.page-is-request-seller-access .select2-container--bootstrap4 .select2-selection,
.select2-container--bootstrap4 .page-is-request-seller-access .select2-selection {
  border: 1px solid #dee2e6;
  border-radius: 8px;
  padding: 10px 14px;
  font-size: 15px;
  transition: all 0.3s ease;
  background-color: #fafbfc;
}

.page-is-request-seller-access .form-control:focus,
.page-is-request-seller-access .select2-container--bootstrap4 .select2-selection:focus,
.select2-container--bootstrap4 .page-is-request-seller-access .select2-selection:focus {
  border-color: #1e1e56;
  box-shadow: 0 0 0 3px rgba(30, 30, 86, 0.08);
  background-color: #fff;
  outline: none;
}

.page-is-request-seller-access .form-control::-moz-placeholder, .page-is-request-seller-access .select2-container--bootstrap4 .select2-selection::-moz-placeholder, .select2-container--bootstrap4 .page-is-request-seller-access .select2-selection::-moz-placeholder {
  color: #adb5bd;
  font-size: 14px;
}

.page-is-request-seller-access .form-control:-ms-input-placeholder, .page-is-request-seller-access .select2-container--bootstrap4 .select2-selection:-ms-input-placeholder, .select2-container--bootstrap4 .page-is-request-seller-access .select2-selection:-ms-input-placeholder {
  color: #adb5bd;
  font-size: 14px;
}

.page-is-request-seller-access .form-control::placeholder,
.page-is-request-seller-access .select2-container--bootstrap4 .select2-selection::placeholder,
.select2-container--bootstrap4 .page-is-request-seller-access .select2-selection::placeholder {
  color: #adb5bd;
  font-size: 14px;
}

.page-is-request-seller-access textarea.form-control,
.page-is-request-seller-access .select2-container--bootstrap4 textarea.select2-selection,
.select2-container--bootstrap4 .page-is-request-seller-access textarea.select2-selection {
  resize: vertical;
  min-height: 80px;
}

.page-is-request-seller-access .select2-container--bootstrap4 .select2-selection {
  border: 1px solid #dee2e6;
  border-radius: 8px;
  padding: 10px 14px;
  font-size: 15px;
  transition: all 0.3s ease;
  background-color: #fafbfc;
  height: auto;
  min-height: 42px;
}

.page-is-request-seller-access .select2-container--bootstrap4.select2-container--focus .select2-selection {
  border-color: #1e1e56;
  box-shadow: 0 0 0 3px rgba(30, 30, 86, 0.08);
  background-color: #fff;
  outline: none;
}

.page-is-request-seller-access h4,
.page-is-request-seller-access .h4 {
  color: #1e1e56;
  font-size: 20px;
  font-weight: 500;
  margin-bottom: 20px;
  padding-bottom: 10px;
  border-bottom: 2px solid #f0f0f0;
}

.page-is-request-seller-access .alert-info {
  border-radius: 8px;
  padding: 15px 20px;
  background-color: #f0f8ff;
  border: 1px solid #b8daff;
  color: #004085;
}

.page-is-request-seller-access .alert-info ul {
  margin-bottom: 0;
  padding-left: 20px;
}

.page-is-request-seller-access .btn-primary {
  background: linear-gradient(135deg, #1e1e56 0%, #2a2a7a 100%);
  border: none;
  border-radius: 8px;
  color: white;
  padding: 12px 24px;
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.5px;
  transition: all 0.3s ease;
  box-shadow: 0 4px 15px rgba(30, 30, 86, 0.2);
}

.page-is-request-seller-access .btn-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 25px rgba(30, 30, 86, 0.3);
  background: linear-gradient(135deg, #2a2a7a 0%, #1e1e56 100%);
}

.page-is-request-seller-access .btn-primary:active {
  transform: translateY(0);
}

.page-is-request-seller-access .btn-primary.btn-lg,
.page-is-request-seller-access .btn-group-lg > .btn-primary.btn {
  padding: 14px 32px;
  font-size: 16px;
}

.page-is-request-seller-access .btn-outline-primary {
  background: transparent;
  border: 2px solid #1e1e56;
  border-radius: 8px;
  color: #1e1e56;
  padding: 12px 24px;
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.5px;
  transition: all 0.3s ease;
}

.page-is-request-seller-access .btn-outline-primary:hover {
  background: #1e1e56;
  color: white;
  transform: translateY(-2px);
  box-shadow: 0 4px 15px rgba(30, 30, 86, 0.2);
}

.page-is-request-seller-access .btn-outline-primary.btn-lg,
.page-is-request-seller-access .btn-group-lg > .btn-outline-primary.btn {
  padding: 14px 32px;
  font-size: 16px;
}

.page-is-request-seller-access .btn-outline-secondary {
  background: transparent;
  border: 2px solid #6c757d;
  border-radius: 8px;
  color: #6c757d;
  padding: 12px 24px;
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.5px;
  transition: all 0.3s ease;
}

.page-is-request-seller-access .btn-outline-secondary:hover {
  background: #6c757d;
  color: white;
}

.page-is-request-seller-access .was-validated .form-control:invalid,
.page-is-request-seller-access .was-validated .select2-container--bootstrap4 .select2-selection:invalid,
.select2-container--bootstrap4 .page-is-request-seller-access .was-validated .select2-selection:invalid {
  border-color: #dc3545;
  background-image: none;
}

.page-is-request-seller-access .was-validated .form-control:invalid:focus,
.page-is-request-seller-access .was-validated .select2-container--bootstrap4 .select2-selection:invalid:focus,
.select2-container--bootstrap4 .page-is-request-seller-access .was-validated .select2-selection:invalid:focus {
  border-color: #dc3545;
  box-shadow: 0 0 0 3px rgba(220, 53, 69, 0.1);
}

.page-is-request-seller-access .was-validated .form-control:valid,
.page-is-request-seller-access .was-validated .select2-container--bootstrap4 .select2-selection:valid,
.select2-container--bootstrap4 .page-is-request-seller-access .was-validated .select2-selection:valid {
  border-color: #28a745;
  background-image: none;
}

.page-is-request-seller-access .was-validated .form-control:valid:focus,
.page-is-request-seller-access .was-validated .select2-container--bootstrap4 .select2-selection:valid:focus,
.select2-container--bootstrap4 .page-is-request-seller-access .was-validated .select2-selection:valid:focus {
  border-color: #28a745;
  box-shadow: 0 0 0 3px rgba(40, 167, 69, 0.1);
}

.page-is-request-seller-access .invalid-feedback,
.page-is-request-seller-access .error-help-block {
  font-size: 12px;
  margin-top: 4px;
  color: #dc3545;
}

.page-is-request-seller-access .form-text {
  font-size: 12px;
  color: #6c757d;
  margin-top: 4px;
}

.page-is-request-seller-access .text-danger {
  color: #dc3545;
}

@media (max-width: 767px) {
  .page-is-request-seller-access .seller-access-card {
    border-radius: 12px;
  }

  .page-is-request-seller-access .seller-access-header {
    padding: 25px 20px;
  }

  .page-is-request-seller-access h4,
  .page-is-request-seller-access .h4 {
    font-size: 18px;
  }

  .page-is-request-seller-access .d-grid {
    display: grid !important;
  }

  .page-is-request-seller-access .d-grid .btn {
    width: 100%;
    margin-bottom: 10px;
  }

  .page-is-request-seller-access .d-grid .btn:last-child {
    margin-bottom: 0;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .page-is-request-seller-access .seller-access-container {
    max-width: 750px;
  }
}

@media (min-width: 1400px) {
  .page-is-request-seller-access .seller-access-container {
    max-width: 1100px;
  }
}

/**
 * Profile Support Ticket Detail Page Styles
 */

.page-is-profile-support-ticket-detail .card:last-child {
  margin-bottom: 40px;
}

.page-is-profile-support-ticket-detail .message-item-wrapper {
  padding-left: 0;
  padding-right: 0;
}

@media (min-width: 768px) {
  .page-is-profile-support-ticket-detail .message-item-wrapper {
    padding-left: 50px;
    padding-right: 50px;
  }
}

.page-is-profile-support-ticket-detail .message-separator {
  border: 0;
  border-top: 1px solid #dee2e6;
  margin: 1.5rem 0;
}

.page-is-profile-support-ticket-detail .message-item {
  border-left: 4px solid #dee2e6;
  background: white;
  transition: all 0.2s ease;
  -webkit-animation: fadeIn 0.3s ease-in;
          animation: fadeIn 0.3s ease-in;
}

.page-is-profile-support-ticket-detail .message-item.admin-message {
  border-left-color: #007bff;
}

.page-is-profile-support-ticket-detail .message-item.customer-message {
  border-left-color: #6c757d;
}

.page-is-profile-support-ticket-detail .message-item:hover {
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.page-is-profile-support-ticket-detail .message-header {
  padding: 0.5rem 1rem;
  background-color: #f8f9fa;
  border-bottom: 1px solid #e9ecef;
}

.page-is-profile-support-ticket-detail .message-content {
  word-wrap: break-word;
  border: 1px solid #e9ecef;
}

.page-is-profile-support-ticket-detail .message-sender {
  color: #495057;
  font-size: 0.95rem;
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes pulse {
  0% {
    transform: scale(1);
    opacity: 1;
  }

  50% {
    transform: scale(1.1);
    opacity: 0.8;
  }

  100% {
    transform: scale(1);
    opacity: 1;
  }
}

.page-is-profile-support-ticket-detail .unread-indicator {
  -webkit-animation: pulse 1.5s ease-in-out infinite;
          animation: pulse 1.5s ease-in-out infinite;
}

.page-is-profile-support-ticket-detail .message-attachments .attachment-item a.btn-outline-secondary {
  color: #212529;
}

.page-is-profile-support-ticket-detail .message-attachments .attachment-item a.btn-outline-secondary .fa-file {
  color: #6c757d;
}

.page-is-profile-support-ticket-detail .message-attachments .attachment-item a.btn-outline-secondary small.text-muted,
.page-is-profile-support-ticket-detail .message-attachments .attachment-item a.btn-outline-secondary .text-muted.small {
  color: #6c757d !important;
}

.page-is-profile-support-ticket-detail .message-attachments .attachment-item a.btn-outline-secondary:hover {
  color: #fff;
}

.page-is-profile-support-ticket-detail .message-attachments .attachment-item a.btn-outline-secondary:hover .fa-file,
.page-is-profile-support-ticket-detail .message-attachments .attachment-item a.btn-outline-secondary:hover small.text-muted,
.page-is-profile-support-ticket-detail .message-attachments .attachment-item a.btn-outline-secondary:hover .text-muted.small {
  color: #fff !important;
}

/**
 * Profile Support Tickets Page Styles
 */

@media (max-width: 767px) {
  .page-is-profile-support-tickets #support-tickets-table thead th.sortable i {
    display: none;
  }

  .page-is-profile-support-tickets #support-tickets-table thead th:nth-child(2),
  .page-is-profile-support-tickets #support-tickets-table thead th:nth-child(4),
  .page-is-profile-support-tickets #support-tickets-table thead th:nth-child(6),
  .page-is-profile-support-tickets #support-tickets-table tbody td:nth-child(2),
  .page-is-profile-support-tickets #support-tickets-table tbody td:nth-child(4),
  .page-is-profile-support-tickets #support-tickets-table tbody td:nth-child(6) {
    display: none;
  }
}

.page-is-profile-support-tickets #support-tickets-table tbody tr {
  cursor: pointer;
  transition: background-color 0.2s ease;
}

.page-is-profile-support-tickets #support-tickets-table tbody tr:hover {
  background-color: rgba(0, 0, 0, 0.02);
}

.page-is-profile-support-tickets #support-tickets-table thead th.sortable {
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  position: relative;
}

.page-is-profile-support-tickets #support-tickets-table thead th.sortable:hover {
  background-color: rgba(0, 0, 0, 0.02);
}

.page-is-profile-support-tickets #support-tickets-table thead th.sortable i {
  opacity: 0.4;
  font-size: 0.85em;
  transition: opacity 0.2s ease;
}

.page-is-profile-support-tickets #support-tickets-table thead th.sortable:hover i {
  opacity: 0.7;
}

.page-is-profile-support-tickets #support-tickets-table thead th.sortable i.fa-sort-up,
.page-is-profile-support-tickets #support-tickets-table thead th.sortable i.fa-sort-down {
  opacity: 1;
  color: #1e1e56;
}

.page-is-profile-support-tickets #pagination-container .pagination {
  margin-bottom: 0;
}

.page-is-profile-support-tickets #pagination-container .pagination .page-item.disabled .page-link {
  cursor: not-allowed;
  opacity: 0.5;
}

.page-is-profile-support-tickets #pagination-container .pagination .page-item.active .page-link {
  background-color: #1e1e56;
  border-color: #1e1e56;
}

.page-is-profile-support-tickets .table .badge,
.page-is-profile-support-tickets .prose table .badge,
.prose .page-is-profile-support-tickets table .badge {
  font-weight: 500;
  padding: 0.35em 0.65em;
}

.page-is-profile-support-tickets .table .badge.bg-danger,
.page-is-profile-support-tickets .prose table .badge.bg-danger,
.prose .page-is-profile-support-tickets table .badge.bg-danger {
  -webkit-animation: pulse 2s infinite;
          animation: pulse 2s infinite;
}

.page-is-profile-support-tickets .text-danger {
  font-weight: 600;
}

@keyframes pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(220, 53, 69, 0.4);
  }

  70% {
    box-shadow: 0 0 0 5px rgba(220, 53, 69, 0);
  }

  100% {
    box-shadow: 0 0 0 0 rgba(220, 53, 69, 0);
  }
}

/**
 * Preview Diamond Page Styles
 *
 * Styles specific to the diamond preview page, including video embed
 * and iframe display adjustments.
 *
 * @see resources/views/frontend/items/preview-diamond.blade.php
 * @see resources/js/frontend/pages/preview-diamond-page.js
 */

.page_is_diamond_preview_page .laravel-embed__responsive-wrapper {
  min-height: 196px !important;
  padding-bottom: 0% !important;
}

.page_is_diamond_preview_page iframe {
  display: block;
  width: 100%;
  height: 608px;
  overflow: hidden;
  border: none;
}

.heroSlider {
  margin-top: 20px;
}



/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3NzL2Zyb250ZW5kLmNzcyIsIm1hcHBpbmdzIjoiQUFBQTs7QUFBQTs7Ozs7RUNPRTs7QUNQRjs7OztFRGFFOztBRWJGOzs7O0VGbUJFOztBR25CRjs7Ozs7RUgwQkU7O0FJMUJGOzs7O0VKZ0NFOztBS2hDRjs7Ozs7RUx1Q0U7O0FHdkNGOzs7OztFSDhDRTs7QU05Q0Y7O0VBU0k7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUlBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUlBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUlBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBR0Y7RUFDQTtFQU1BO0VBQ0E7RUFDQTtFQU9BO0VDMk9JO0VEek9KO0VBQ0E7RUFLQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBTUE7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUlBO0VBQ0E7RUFDQTtFQUlBO0VBQ0E7RUFDQTtFQUNBO0FOd0NGOztBUXZKSTtFRnFIQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFHRTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUlBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFHRjtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFFQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7QU53Q0o7O0FTN01BOzs7RUFHRTtBVGdORjs7QVNqTUk7RUFOSjtJQU9NO0VUcU1KO0FBQ0Y7O0FTeExBO0VBQ0U7RUFDQTtFRjZPSTtFRTNPSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVDJMRjs7QVNsTEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FUcUxGOztBUzNLQTs7Ozs7Ozs7Ozs7O0VBQ0U7RUFDQTtFQUdBO0VBQ0E7RUFDQTtBVHVMRjs7QVNwTEE7O0VGdU1RO0FQZFI7O0FPOUlJO0VFM0NKOztJRjhNUTtFUGZOO0FBQ0Y7O0FTM0xBOztFRmtNUTtBUEZSOztBTzFKSTtFRXRDSjs7SUZ5TVE7RVBITjtBQUNGOztBU2xNQTs7RUY2TFE7QVBVUjs7QU90S0k7RUVqQ0o7O0lGb01RO0VQU047QUFDRjs7QVN6TUE7O0VGd0xRO0FQc0JSOztBT2xMSTtFRTVCSjs7SUYrTFE7RVBxQk47QUFDRjs7QVNoTkE7O0VGK0tNO0FQc0NOOztBU2hOQTs7RUYwS007QVAyQ047O0FTMU1BO0VBQ0U7RUFDQTtBVDZNRjs7QVNuTUE7RUFDRTtVQUFBO0VBQ0E7RUFDQTtVQUFBO0FUc01GOztBU2hNQTtFQUNFO0VBQ0E7RUFDQTtBVG1NRjs7QVM3TEE7O0VBRUU7QVRnTUY7O0FTN0xBOzs7RUFHRTtFQUNBO0FUZ01GOztBUzdMQTs7OztFQUlFO0FUZ01GOztBUzdMQTtFQUNFO0FUZ01GOztBUzNMQTtFQUNFO0VBQ0E7QVQ4TEY7O0FTeExBO0VBQ0U7QVQyTEY7O0FTbkxBOztFQUVFO0FUc0xGOztBUzlLQTs7RUY2RU07QVBzR047O0FTNUtBOztFQUNFO0VBQ0E7QVRnTEY7O0FTdktBOztFQUVFO0VGeURJO0VFdkRKO0VBQ0E7QVQwS0Y7O0FTdktBO0VBQU07QVQyS047O0FTMUtBO0VBQU07QVQ4S047O0FTektBO0VBQ0U7RUFDQTtBVDRLRjs7QVMxS0U7RUFDRTtBVDZLSjs7QVNsS0U7O0VBRUU7RUFDQTtBVHFLSjs7QVM5SkE7Ozs7RUFJRTtFRmVJO0FQbUpOOztBUzFKQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VGR0k7QVAySk47O0FTekpFO0VGRkk7RUVJRjtFQUNBO0FUNEpKOztBU3hKQTtFRlRNO0VFV0o7RUFDQTtBVDJKRjs7QVN4SkU7RUFDRTtBVDJKSjs7QVN2SkE7RUFDRTtFRnJCSTtFRXVCSjtFQUNBO0VDcFNFO0FWK2JKOztBU3hKRTtFQUNFO0VGNUJFO0FQd0xOOztBU2pKQTtFQUNFO0FUb0pGOztBUzlJQTs7RUFFRTtBVGlKRjs7QVN6SUE7RUFDRTtFQUNBO0FUNElGOztBU3pJQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FUNElGOztBU3JJQTtFQUVFO0VBQ0E7QVR1SUY7O0FTcElBOzs7Ozs7RUFNRTtFQUNBO0VBQ0E7QVR1SUY7O0FTL0hBO0VBQ0U7QVRrSUY7O0FTNUhBO0VBRUU7QVQ4SEY7O0FTdEhBO0VBQ0U7QVR5SEY7O0FTcEhBOzs7OztFQUtFO0VBQ0E7RUYzSEk7RUU2SEo7QVR1SEY7O0FTbkhBOztFQUVFO0FUc0hGOztBU2pIQTtFQUNFO0FUb0hGOztBU2pIQTtFQUdFO0FUa0hGOztBUy9HRTtFQUNFO0FUa0hKOztBUzNHQTtFQUNFO0FUOEdGOztBU3RHQTs7OztFQUlFO0FUeUdGOztBU3RHSTs7OztFQUNFO0FUNEdOOztBU3JHQTtFQUNFO0VBQ0E7QVR3R0Y7O0FTbkdBO0VBQ0U7QVRzR0Y7O0FTNUZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QVQrRkY7O0FTdkZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUZoTk07RUVtTk47QVR5RkY7O0FPeGNJO0VFd1dKO0lGck1RO0VQMFNOO0FBQ0Y7O0FTN0ZFO0VBQ0U7QVRnR0o7O0FTekZBOzs7Ozs7O0VBT0U7QVQ0RkY7O0FTekZBO0VBQ0U7QVQ0RkY7O0FTbkZBO0VBQ0U7RUFDQTtBVHNGRjs7QVM5RUE7Ozs7Ozs7Q1R1RkM7O0FTNUVEO0VBQ0U7QVQrRUY7O0FTMUVBO0VBQ0U7QVQ2RUY7O0FTdEVBO0VBQ0U7RUFDQTtBVHlFRjs7QVMzRUE7RUFDRTtFQUNBO0FUeUVGOztBU3BFQTtFQUNFO0FUdUVGOztBU2xFQTtFQUNFO0FUcUVGOztBUzlEQTtFQUNFO0VBQ0E7QVRpRUY7O0FTekRBO0VBQ0U7QVQ0REY7O0FTcERBO0VBQ0U7QVR1REY7O0FXM25CQTtFSm1RTTtFSWpRSjtBWDhuQkY7O0FXem5CRTtFSmdRTTtFSTVQSjtFQUNBO0FYMG5CSjs7QU8zaEJJO0VJcEdGO0lKdVFNO0VQNlhOO0FBQ0Y7O0FXcm9CRTtFSmdRTTtFSTVQSjtFQUNBO0FYc29CSjs7QU92aUJJO0VJcEdGO0lKdVFNO0VQeVlOO0FBQ0Y7O0FXanBCRTtFSmdRTTtFSTVQSjtFQUNBO0FYa3BCSjs7QU9uakJJO0VJcEdGO0lKdVFNO0VQcVpOO0FBQ0Y7O0FXN3BCRTtFSmdRTTtFSTVQSjtFQUNBO0FYOHBCSjs7QU8vakJJO0VJcEdGO0lKdVFNO0VQaWFOO0FBQ0Y7O0FXenFCRTtFSmdRTTtFSTVQSjtFQUNBO0FYMHFCSjs7QU8za0JJO0VJcEdGO0lKdVFNO0VQNmFOO0FBQ0Y7O0FXcnJCRTtFSmdRTTtFSTVQSjtFQUNBO0FYc3JCSjs7QU92bEJJO0VJcEdGO0lKdVFNO0VQeWJOO0FBQ0Y7O0FXenFCQTtFQ3ZERTtFQUNBO0Fab3VCRjs7QVd6cUJBO0VDNURFO0VBQ0E7QVp5dUJGOztBVzNxQkE7RUFDRTtBWDhxQkY7O0FXNXFCRTtFQUNFO0FYK3FCSjs7QVdycUJBO0VKOE1NO0VJNU1KO0FYd3FCRjs7QVdwcUJBOztFQUNFO0VKdU1JO0FQa2VOOztBV3RxQkU7O0VBQ0U7QVgwcUJKOztBV3RxQkE7RUFDRTtFQUNBO0VKNkxJO0VJM0xKO0FYeXFCRjs7QVd2cUJFO0VBQ0U7QVgwcUJKOztBYTF3QkE7O0VDSUU7RUFHQTtBZHl3QkY7O0FhMXdCQTtFQUNFO0VBQ0E7RUFDQTtFSEdFO0VJUkY7RUFHQTtBZGt4QkY7O0FhcHdCQTtFQUVFO0Fic3dCRjs7QWFud0JBO0VBQ0U7RUFDQTtBYnN3QkY7O0FhbndCQTtFTnlQTTtFTXZQSjtBYnN3QkY7O0FleHlCRTs7Ozs7OztFQ0ZBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0FoQmt6QkY7O0FpQi92Qkk7RUZ6REY7Ozs7Ozs7SUNTRTtJQUNBO0VoQjB6QkY7QUFDRjs7QWlCNXdCSTtFRnpERjs7Ozs7OztJQ2NFO0lBQ0E7RWhCazBCRjtBQUNGOztBaUJ6eEJJO0VGNUNFOztJQUNFO0VmMDBCTjtBQUNGOztBaUJoeUJJO0VGNUNFOzs7SUFDRTtFZmsxQk47QUFDRjs7QWlCeHlCSTtFRjVDRTs7OztJQUNFO0VmMjFCTjtBQUNGOztBaUJqekJJO0VGNUNFOzs7OztJQUNFO0VmcTJCTjtBQUNGOztBaUIzekJJO0VGNUNFOzs7Ozs7SUFDRTtFZmczQk47QUFDRjs7QWtCajRCQTtFQUVJO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtBbEJ3NEJKOztBa0JuNEJFO0VDTkE7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7QW5CNDRCRjs7QWtCMTRCSTtFQ09GO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkJ1NEJGOztBbUJ4MUJNO0VBQ0U7QW5CMjFCUjs7QW1CeDFCTTtFQXBDSjtFQUNBO0FuQmc0QkY7O0FtQmwzQkU7RUFDRTtFQUNBO0FuQnEzQko7O0FtQnYzQkU7RUFDRTtFQUNBO0FuQjAzQko7O0FtQjUzQkU7RUFDRTtFQUNBO0FuQiszQko7O0FtQmo0QkU7RUFDRTtFQUNBO0FuQm80Qko7O0FtQnQ0QkU7RUFDRTtFQUNBO0FuQnk0Qko7O0FtQjM0QkU7RUFDRTtFQUNBO0FuQjg0Qko7O0FtQi8yQk07RUFoREo7RUFDQTtBbkJtNkJGOztBbUI5MkJVO0VBaEVOO0VBQ0E7QW5CazdCSjs7QW1CbjNCVTtFQWhFTjtFQUNBO0FuQnU3Qko7O0FtQngzQlU7RUFoRU47RUFDQTtBbkI0N0JKOztBbUI3M0JVO0VBaEVOO0VBQ0E7QW5CaThCSjs7QW1CbDRCVTtFQWhFTjtFQUNBO0FuQnM4Qko7O0FtQnY0QlU7RUFoRU47RUFDQTtBbkIyOEJKOztBbUI1NEJVO0VBaEVOO0VBQ0E7QW5CZzlCSjs7QW1CajVCVTtFQWhFTjtFQUNBO0FuQnE5Qko7O0FtQnQ1QlU7RUFoRU47RUFDQTtBbkIwOUJKOztBbUIzNUJVO0VBaEVOO0VBQ0E7QW5CKzlCSjs7QW1CaDZCVTtFQWhFTjtFQUNBO0FuQm8rQko7O0FtQnI2QlU7RUFoRU47RUFDQTtBbkJ5K0JKOztBbUJsNkJZO0VBeERWO0FuQjg5QkY7O0FtQnQ2Qlk7RUF4RFY7QW5CaytCRjs7QW1CMTZCWTtFQXhEVjtBbkJzK0JGOztBbUI5NkJZO0VBeERWO0FuQjArQkY7O0FtQmw3Qlk7RUF4RFY7QW5COCtCRjs7QW1CdDdCWTtFQXhEVjtBbkJrL0JGOztBbUIxN0JZO0VBeERWO0FuQnMvQkY7O0FtQjk3Qlk7RUF4RFY7QW5CMC9CRjs7QW1CbDhCWTtFQXhEVjtBbkI4L0JGOztBbUJ0OEJZO0VBeERWO0FuQmtnQ0Y7O0FtQjE4Qlk7RUF4RFY7QW5Cc2dDRjs7QW1CbjhCUTs7RUFFRTtBbkJzOEJWOztBbUJuOEJROztFQUVFO0FuQnM4QlY7O0FtQjc4QlE7O0VBRUU7QW5CZzlCVjs7QW1CNzhCUTs7RUFFRTtBbkJnOUJWOztBbUJ2OUJROztFQUVFO0FuQjA5QlY7O0FtQnY5QlE7O0VBRUU7QW5CMDlCVjs7QW1CaitCUTs7RUFFRTtBbkJvK0JWOztBbUJqK0JROztFQUVFO0FuQm8rQlY7O0FtQjMrQlE7O0VBRUU7QW5COCtCVjs7QW1CMytCUTs7RUFFRTtBbkI4K0JWOztBbUJyL0JROztFQUVFO0FuQncvQlY7O0FtQnIvQlE7O0VBRUU7QW5Cdy9CVjs7QWlCbGpDSTtFRVVFO0lBQ0U7RW5CNGlDTjs7RW1CemlDSTtJQXBDSjtJQUNBO0VuQmlsQ0E7O0VtQm5rQ0E7SUFDRTtJQUNBO0VuQnNrQ0Y7O0VtQnhrQ0E7SUFDRTtJQUNBO0VuQjJrQ0Y7O0VtQjdrQ0E7SUFDRTtJQUNBO0VuQmdsQ0Y7O0VtQmxsQ0E7SUFDRTtJQUNBO0VuQnFsQ0Y7O0VtQnZsQ0E7SUFDRTtJQUNBO0VuQjBsQ0Y7O0VtQjVsQ0E7SUFDRTtJQUNBO0VuQitsQ0Y7O0VtQmhrQ0k7SUFoREo7SUFDQTtFbkJvbkNBOztFbUIvakNRO0lBaEVOO0lBQ0E7RW5CbW9DRjs7RW1CcGtDUTtJQWhFTjtJQUNBO0VuQndvQ0Y7O0VtQnprQ1E7SUFoRU47SUFDQTtFbkI2b0NGOztFbUI5a0NRO0lBaEVOO0lBQ0E7RW5Ca3BDRjs7RW1CbmxDUTtJQWhFTjtJQUNBO0VuQnVwQ0Y7O0VtQnhsQ1E7SUFoRU47SUFDQTtFbkI0cENGOztFbUI3bENRO0lBaEVOO0lBQ0E7RW5CaXFDRjs7RW1CbG1DUTtJQWhFTjtJQUNBO0VuQnNxQ0Y7O0VtQnZtQ1E7SUFoRU47SUFDQTtFbkIycUNGOztFbUI1bUNRO0lBaEVOO0lBQ0E7RW5CZ3JDRjs7RW1Cam5DUTtJQWhFTjtJQUNBO0VuQnFyQ0Y7O0VtQnRuQ1E7SUFoRU47SUFDQTtFbkIwckNGOztFbUJubkNVO0lBeERWO0VuQitxQ0E7O0VtQnZuQ1U7SUF4RFY7RW5CbXJDQTs7RW1CM25DVTtJQXhEVjtFbkJ1ckNBOztFbUIvbkNVO0lBeERWO0VuQjJyQ0E7O0VtQm5vQ1U7SUF4RFY7RW5CK3JDQTs7RW1Cdm9DVTtJQXhEVjtFbkJtc0NBOztFbUIzb0NVO0lBeERWO0VuQnVzQ0E7O0VtQi9vQ1U7SUF4RFY7RW5CMnNDQTs7RW1CbnBDVTtJQXhEVjtFbkIrc0NBOztFbUJ2cENVO0lBeERWO0VuQm10Q0E7O0VtQjNwQ1U7SUF4RFY7RW5CdXRDQTs7RW1CL3BDVTtJQXhEVjtFbkIydENBOztFbUJ4cENNOztJQUVFO0VuQjJwQ1I7O0VtQnhwQ007O0lBRUU7RW5CMnBDUjs7RW1CbHFDTTs7SUFFRTtFbkJxcUNSOztFbUJscUNNOztJQUVFO0VuQnFxQ1I7O0VtQjVxQ007O0lBRUU7RW5CK3FDUjs7RW1CNXFDTTs7SUFFRTtFbkIrcUNSOztFbUJ0ckNNOztJQUVFO0VuQnlyQ1I7O0VtQnRyQ007O0lBRUU7RW5CeXJDUjs7RW1CaHNDTTs7SUFFRTtFbkJtc0NSOztFbUJoc0NNOztJQUVFO0VuQm1zQ1I7O0VtQjFzQ007O0lBRUU7RW5CNnNDUjs7RW1CMXNDTTs7SUFFRTtFbkI2c0NSO0FBQ0Y7O0FpQnh3Q0k7RUVVRTtJQUNFO0VuQmt3Q047O0VtQi92Q0k7SUFwQ0o7SUFDQTtFbkJ1eUNBOztFbUJ6eENBO0lBQ0U7SUFDQTtFbkI0eENGOztFbUI5eENBO0lBQ0U7SUFDQTtFbkJpeUNGOztFbUJueUNBO0lBQ0U7SUFDQTtFbkJzeUNGOztFbUJ4eUNBO0lBQ0U7SUFDQTtFbkIyeUNGOztFbUI3eUNBO0lBQ0U7SUFDQTtFbkJnekNGOztFbUJsekNBO0lBQ0U7SUFDQTtFbkJxekNGOztFbUJ0eENJO0lBaERKO0lBQ0E7RW5CMDBDQTs7RW1CcnhDUTtJQWhFTjtJQUNBO0VuQnkxQ0Y7O0VtQjF4Q1E7SUFoRU47SUFDQTtFbkI4MUNGOztFbUIveENRO0lBaEVOO0lBQ0E7RW5CbTJDRjs7RW1CcHlDUTtJQWhFTjtJQUNBO0VuQncyQ0Y7O0VtQnp5Q1E7SUFoRU47SUFDQTtFbkI2MkNGOztFbUI5eUNRO0lBaEVOO0lBQ0E7RW5CazNDRjs7RW1CbnpDUTtJQWhFTjtJQUNBO0VuQnUzQ0Y7O0VtQnh6Q1E7SUFoRU47SUFDQTtFbkI0M0NGOztFbUI3ekNRO0lBaEVOO0lBQ0E7RW5CaTRDRjs7RW1CbDBDUTtJQWhFTjtJQUNBO0VuQnM0Q0Y7O0VtQnYwQ1E7SUFoRU47SUFDQTtFbkIyNENGOztFbUI1MENRO0lBaEVOO0lBQ0E7RW5CZzVDRjs7RW1CejBDVTtJQXhEVjtFbkJxNENBOztFbUI3MENVO0lBeERWO0VuQnk0Q0E7O0VtQmoxQ1U7SUF4RFY7RW5CNjRDQTs7RW1CcjFDVTtJQXhEVjtFbkJpNUNBOztFbUJ6MUNVO0lBeERWO0VuQnE1Q0E7O0VtQjcxQ1U7SUF4RFY7RW5CeTVDQTs7RW1CajJDVTtJQXhEVjtFbkI2NUNBOztFbUJyMkNVO0lBeERWO0VuQmk2Q0E7O0VtQnoyQ1U7SUF4RFY7RW5CcTZDQTs7RW1CNzJDVTtJQXhEVjtFbkJ5NkNBOztFbUJqM0NVO0lBeERWO0VuQjY2Q0E7O0VtQnIzQ1U7SUF4RFY7RW5CaTdDQTs7RW1COTJDTTs7SUFFRTtFbkJpM0NSOztFbUI5MkNNOztJQUVFO0VuQmkzQ1I7O0VtQngzQ007O0lBRUU7RW5CMjNDUjs7RW1CeDNDTTs7SUFFRTtFbkIyM0NSOztFbUJsNENNOztJQUVFO0VuQnE0Q1I7O0VtQmw0Q007O0lBRUU7RW5CcTRDUjs7RW1CNTRDTTs7SUFFRTtFbkIrNENSOztFbUI1NENNOztJQUVFO0VuQis0Q1I7O0VtQnQ1Q007O0lBRUU7RW5CeTVDUjs7RW1CdDVDTTs7SUFFRTtFbkJ5NUNSOztFbUJoNkNNOztJQUVFO0VuQm02Q1I7O0VtQmg2Q007O0lBRUU7RW5CbTZDUjtBQUNGOztBaUI5OUNJO0VFVUU7SUFDRTtFbkJ3OUNOOztFbUJyOUNJO0lBcENKO0lBQ0E7RW5CNi9DQTs7RW1CLytDQTtJQUNFO0lBQ0E7RW5Cay9DRjs7RW1CcC9DQTtJQUNFO0lBQ0E7RW5CdS9DRjs7RW1Cei9DQTtJQUNFO0lBQ0E7RW5CNC9DRjs7RW1COS9DQTtJQUNFO0lBQ0E7RW5CaWdERjs7RW1CbmdEQTtJQUNFO0lBQ0E7RW5Cc2dERjs7RW1CeGdEQTtJQUNFO0lBQ0E7RW5CMmdERjs7RW1CNStDSTtJQWhESjtJQUNBO0VuQmdpREE7O0VtQjMrQ1E7SUFoRU47SUFDQTtFbkIraURGOztFbUJoL0NRO0lBaEVOO0lBQ0E7RW5Cb2pERjs7RW1Cci9DUTtJQWhFTjtJQUNBO0VuQnlqREY7O0VtQjEvQ1E7SUFoRU47SUFDQTtFbkI4akRGOztFbUIvL0NRO0lBaEVOO0lBQ0E7RW5CbWtERjs7RW1CcGdEUTtJQWhFTjtJQUNBO0VuQndrREY7O0VtQnpnRFE7SUFoRU47SUFDQTtFbkI2a0RGOztFbUI5Z0RRO0lBaEVOO0lBQ0E7RW5Ca2xERjs7RW1CbmhEUTtJQWhFTjtJQUNBO0VuQnVsREY7O0VtQnhoRFE7SUFoRU47SUFDQTtFbkI0bERGOztFbUI3aERRO0lBaEVOO0lBQ0E7RW5CaW1ERjs7RW1CbGlEUTtJQWhFTjtJQUNBO0VuQnNtREY7O0VtQi9oRFU7SUF4RFY7RW5CMmxEQTs7RW1CbmlEVTtJQXhEVjtFbkIrbERBOztFbUJ2aURVO0lBeERWO0VuQm1tREE7O0VtQjNpRFU7SUF4RFY7RW5CdW1EQTs7RW1CL2lEVTtJQXhEVjtFbkIybURBOztFbUJuakRVO0lBeERWO0VuQittREE7O0VtQnZqRFU7SUF4RFY7RW5CbW5EQTs7RW1CM2pEVTtJQXhEVjtFbkJ1bkRBOztFbUIvakRVO0lBeERWO0VuQjJuREE7O0VtQm5rRFU7SUF4RFY7RW5CK25EQTs7RW1CdmtEVTtJQXhEVjtFbkJtb0RBOztFbUIza0RVO0lBeERWO0VuQnVvREE7O0VtQnBrRE07O0lBRUU7RW5CdWtEUjs7RW1CcGtETTs7SUFFRTtFbkJ1a0RSOztFbUI5a0RNOztJQUVFO0VuQmlsRFI7O0VtQjlrRE07O0lBRUU7RW5CaWxEUjs7RW1CeGxETTs7SUFFRTtFbkIybERSOztFbUJ4bERNOztJQUVFO0VuQjJsRFI7O0VtQmxtRE07O0lBRUU7RW5CcW1EUjs7RW1CbG1ETTs7SUFFRTtFbkJxbURSOztFbUI1bURNOztJQUVFO0VuQittRFI7O0VtQjVtRE07O0lBRUU7RW5CK21EUjs7RW1CdG5ETTs7SUFFRTtFbkJ5bkRSOztFbUJ0bkRNOztJQUVFO0VuQnluRFI7QUFDRjs7QWlCcHJESTtFRVVFO0lBQ0U7RW5COHFETjs7RW1CM3FESTtJQXBDSjtJQUNBO0VuQm10REE7O0VtQnJzREE7SUFDRTtJQUNBO0VuQndzREY7O0VtQjFzREE7SUFDRTtJQUNBO0VuQjZzREY7O0VtQi9zREE7SUFDRTtJQUNBO0VuQmt0REY7O0VtQnB0REE7SUFDRTtJQUNBO0VuQnV0REY7O0VtQnp0REE7SUFDRTtJQUNBO0VuQjR0REY7O0VtQjl0REE7SUFDRTtJQUNBO0VuQml1REY7O0VtQmxzREk7SUFoREo7SUFDQTtFbkJzdkRBOztFbUJqc0RRO0lBaEVOO0lBQ0E7RW5CcXdERjs7RW1CdHNEUTtJQWhFTjtJQUNBO0VuQjB3REY7O0VtQjNzRFE7SUFoRU47SUFDQTtFbkIrd0RGOztFbUJodERRO0lBaEVOO0lBQ0E7RW5Cb3hERjs7RW1CcnREUTtJQWhFTjtJQUNBO0VuQnl4REY7O0VtQjF0RFE7SUFoRU47SUFDQTtFbkI4eERGOztFbUIvdERRO0lBaEVOO0lBQ0E7RW5CbXlERjs7RW1CcHVEUTtJQWhFTjtJQUNBO0VuQnd5REY7O0VtQnp1RFE7SUFoRU47SUFDQTtFbkI2eURGOztFbUI5dURRO0lBaEVOO0lBQ0E7RW5Ca3pERjs7RW1CbnZEUTtJQWhFTjtJQUNBO0VuQnV6REY7O0VtQnh2RFE7SUFoRU47SUFDQTtFbkI0ekRGOztFbUJydkRVO0lBeERWO0VuQml6REE7O0VtQnp2RFU7SUF4RFY7RW5CcXpEQTs7RW1CN3ZEVTtJQXhEVjtFbkJ5ekRBOztFbUJqd0RVO0lBeERWO0VuQjZ6REE7O0VtQnJ3RFU7SUF4RFY7RW5CaTBEQTs7RW1CendEVTtJQXhEVjtFbkJxMERBOztFbUI3d0RVO0lBeERWO0VuQnkwREE7O0VtQmp4RFU7SUF4RFY7RW5CNjBEQTs7RW1CcnhEVTtJQXhEVjtFbkJpMURBOztFbUJ6eERVO0lBeERWO0VuQnExREE7O0VtQjd4RFU7SUF4RFY7RW5CeTFEQTs7RW1CanlEVTtJQXhEVjtFbkI2MURBOztFbUIxeERNOztJQUVFO0VuQjZ4RFI7O0VtQjF4RE07O0lBRUU7RW5CNnhEUjs7RW1CcHlETTs7SUFFRTtFbkJ1eURSOztFbUJweURNOztJQUVFO0VuQnV5RFI7O0VtQjl5RE07O0lBRUU7RW5CaXpEUjs7RW1COXlETTs7SUFFRTtFbkJpekRSOztFbUJ4ekRNOztJQUVFO0VuQjJ6RFI7O0VtQnh6RE07O0lBRUU7RW5CMnpEUjs7RW1CbDBETTs7SUFFRTtFbkJxMERSOztFbUJsMERNOztJQUVFO0VuQnEwRFI7O0VtQjUwRE07O0lBRUU7RW5CKzBEUjs7RW1CNTBETTs7SUFFRTtFbkIrMERSO0FBQ0Y7O0FpQjE0REk7RUVVRTtJQUNFO0VuQm80RE47O0VtQmo0REk7SUFwQ0o7SUFDQTtFbkJ5NkRBOztFbUIzNURBO0lBQ0U7SUFDQTtFbkI4NURGOztFbUJoNkRBO0lBQ0U7SUFDQTtFbkJtNkRGOztFbUJyNkRBO0lBQ0U7SUFDQTtFbkJ3NkRGOztFbUIxNkRBO0lBQ0U7SUFDQTtFbkI2NkRGOztFbUIvNkRBO0lBQ0U7SUFDQTtFbkJrN0RGOztFbUJwN0RBO0lBQ0U7SUFDQTtFbkJ1N0RGOztFbUJ4NURJO0lBaERKO0lBQ0E7RW5CNDhEQTs7RW1CdjVEUTtJQWhFTjtJQUNBO0VuQjI5REY7O0VtQjU1RFE7SUFoRU47SUFDQTtFbkJnK0RGOztFbUJqNkRRO0lBaEVOO0lBQ0E7RW5CcStERjs7RW1CdDZEUTtJQWhFTjtJQUNBO0VuQjArREY7O0VtQjM2RFE7SUFoRU47SUFDQTtFbkIrK0RGOztFbUJoN0RRO0lBaEVOO0lBQ0E7RW5Cby9ERjs7RW1CcjdEUTtJQWhFTjtJQUNBO0VuQnkvREY7O0VtQjE3RFE7SUFoRU47SUFDQTtFbkI4L0RGOztFbUIvN0RRO0lBaEVOO0lBQ0E7RW5CbWdFRjs7RW1CcDhEUTtJQWhFTjtJQUNBO0VuQndnRUY7O0VtQno4RFE7SUFoRU47SUFDQTtFbkI2Z0VGOztFbUI5OERRO0lBaEVOO0lBQ0E7RW5Ca2hFRjs7RW1CMzhEVTtJQXhEVjtFbkJ1Z0VBOztFbUIvOERVO0lBeERWO0VuQjJnRUE7O0VtQm45RFU7SUF4RFY7RW5CK2dFQTs7RW1CdjlEVTtJQXhEVjtFbkJtaEVBOztFbUIzOURVO0lBeERWO0VuQnVoRUE7O0VtQi85RFU7SUF4RFY7RW5CMmhFQTs7RW1CbitEVTtJQXhEVjtFbkIraEVBOztFbUJ2K0RVO0lBeERWO0VuQm1pRUE7O0VtQjMrRFU7SUF4RFY7RW5CdWlFQTs7RW1CLytEVTtJQXhEVjtFbkIyaUVBOztFbUJuL0RVO0lBeERWO0VuQitpRUE7O0VtQnYvRFU7SUF4RFY7RW5CbWpFQTs7RW1CaC9ETTs7SUFFRTtFbkJtL0RSOztFbUJoL0RNOztJQUVFO0VuQm0vRFI7O0VtQjEvRE07O0lBRUU7RW5CNi9EUjs7RW1CMS9ETTs7SUFFRTtFbkI2L0RSOztFbUJwZ0VNOztJQUVFO0VuQnVnRVI7O0VtQnBnRU07O0lBRUU7RW5CdWdFUjs7RW1COWdFTTs7SUFFRTtFbkJpaEVSOztFbUI5Z0VNOztJQUVFO0VuQmloRVI7O0VtQnhoRU07O0lBRUU7RW5CMmhFUjs7RW1CeGhFTTs7SUFFRTtFbkIyaEVSOztFbUJsaUVNOztJQUVFO0VuQnFpRVI7O0VtQmxpRU07O0lBRUU7RW5CcWlFUjtBQUNGOztBb0IzcEVBOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtBcEI0cEVGOztBb0JycEVFOztFQUNFO0VBRUE7RUFDQTtFQUNBO0VBQ0E7QXBCd3BFSjs7QW9CcnBFRTs7RUFDRTtBcEJ5cEVKOztBb0J0cEVFOztFQUNFO0FwQjBwRUo7O0FvQnRwRUE7RUFDRTtBcEJ5cEVGOztBb0JscEVBO0VBQ0U7QXBCcXBFRjs7QW9CM29FRTtFQUNFO0FwQjhvRUo7O0FvQi9uRUU7O0VBQ0U7QXBCbW9FSjs7QW9CaG9FSTs7RUFDRTtBcEJvb0VOOztBb0I3bkVFO0VBQ0U7QXBCZ29FSjs7QW9CN25FRTtFQUNFO0FwQmdvRUo7O0FvQnRuRUU7RUFDRTtFQUNBO0FwQnluRUo7O0FvQm5uRUU7RUFDRTtFQUNBO0FwQnNuRUo7O0FvQjltRUE7RUFDRTtFQUNBO0FwQmluRUY7O0FvQnptRUU7RUFDRTtFQUNBO0FwQjRtRUo7O0FxQnh2RUU7RUFPRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FyQm92RUo7O0FxQnR3RUU7RUFPRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FyQmt3RUo7O0FxQnB4RUU7RUFPRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FyQmd4RUo7O0FxQmx5RUU7RUFPRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FyQjh4RUo7O0FxQmh6RUU7RUFPRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FyQjR5RUo7O0FxQjl6RUU7RUFPRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FyQjB6RUo7O0FxQjUwRUU7RUFPRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FyQncwRUo7O0FxQjExRUU7RUFPRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FyQnMxRUo7O0FvQnJzRUk7RUFDRTtFQUNBO0FwQndzRU47O0FpQm55RUk7RUd5RkE7SUFDRTtJQUNBO0VwQjhzRUo7QUFDRjs7QWlCMXlFSTtFR3lGQTtJQUNFO0lBQ0E7RXBCcXRFSjtBQUNGOztBaUJqekVJO0VHeUZBO0lBQ0U7SUFDQTtFcEI0dEVKO0FBQ0Y7O0FpQnh6RUk7RUd5RkE7SUFDRTtJQUNBO0VwQm11RUo7QUFDRjs7QWlCL3pFSTtFR3lGQTtJQUNFO0lBQ0E7RXBCMHVFSjtBQUNGOztBc0I5NEVBO0VBQ0U7QXRCaTVFRjs7QXNCeDRFQTtFQUNFO0VBQ0E7RUFDQTtFZjhRSTtFZTFRSjtBdEJ5NEVGOztBc0JyNEVBO0VBQ0U7RUFDQTtFZm9RSTtBUHFvRU47O0FzQnI0RUE7RUFDRTtFQUNBO0VmOFBJO0FQMm9FTjs7QXVCdDZFQTtFQUNFO0VoQjBSSTtFZ0J0Uko7QXZCdTZFRjs7QXdCNTZFQTs7RUFDRTtFQUNBO0VBQ0E7RWpCd1JJO0VpQnJSSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtLQUFBO1VBQUE7RWRHRTtFZUhFO0F6Qmk3RU47O0F5Qjc2RU07RURoQk47O0lDaUJRO0V6Qms3RU47QUFDRjs7QXdCaDdFRTs7RUFDRTtBeEJvN0VKOztBd0JsN0VJOztFQUNFO0F4QnM3RU47O0F3Qmo3RUU7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFLRTtBeEJpN0VOOztBd0I3NkVFOztFQU1FO0VBTUE7RUFLQTtBeEJtNkVKOztBd0I5NUVFOztFQUNFO0VBQ0E7QXhCazZFSjs7QXdCOTVFRTtFQUNFO0VBRUE7QXhCaTZFSjs7QXdCcDZFRTtFQUNFO0VBRUE7QXhCaTZFSjs7QXdCcDZFRTs7RUFDRTtFQUVBO0F4Qmk2RUo7O0F3Qno1RUU7O0VBRUU7RUFHQTtBeEIwNUVKOztBd0J0NUVFO0VBQ0U7RUFDQTtFQUNBO1VBQUE7RUFDQTtFRTlGRjtFRmdHRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUN6RkU7RUFBQTtBekJvL0VOOztBd0J0NkVFOztFQUNFO0VBQ0E7RUFDQTtVQUFBO0VBQ0E7RUU5RkY7RUZnR0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VDekZFO0F6Qm8vRU47O0F5QmgvRU07RUQwRUo7SUN6RU07SUFBQTtFekJxL0VOO0V3QjU2RUE7O0lDekVNO0V6QnEvRU47QUFDRjs7QXdCOTVFRTtFQUNFO0F4Qms2RUo7O0F3Qm42RUU7O0VBQ0U7QXhCazZFSjs7QXdCejVFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEI0NUVGOztBd0IxNUVFO0VBQ0U7QXhCNjVFSjs7QXdCMTVFRTs7RUFFRTtFQUNBO0F4QjY1RUo7O0F3Qmw1RUE7RUFDRTtFQUNBO0VqQnlJSTtFRzVRRjtBVjBoRko7O0F3Qm41RUU7RUFDRTtFQUNBO0VBQ0E7VUFBQTtBeEJzNUVKOztBd0J6NUVFO0VBQ0U7RUFDQTtFQUNBO1VBQUE7QXhCczVFSjs7QXdCbDVFQTtFQUNFO0VBQ0E7RWpCNEhJO0VHNVFGO0FWdWlGSjs7QXdCbjVFRTtFQUNFO0VBQ0E7RUFDQTtVQUFBO0F4QnM1RUo7O0F3Qno1RUU7RUFDRTtFQUNBO0VBQ0E7VUFBQTtBeEJzNUVKOztBd0I5NEVFOztFQUNFO0F4Qms1RUo7O0F3Qi80RUU7RUFDRTtBeEJrNUVKOztBd0IvNEVFO0VBQ0U7QXhCazVFSjs7QXdCNzRFQTtFQUNFO0VBQ0E7RUFDQTtBeEJnNUVGOztBd0I5NEVFO0VBQ0U7QXhCaTVFSjs7QXdCOTRFRTtFQUNFO0VkdkxBO0FWeWtGSjs7QXdCOTRFRTtFQUNFO0VkNUxBO0FWOGtGSjs7QXdCOTRFRTtFQUFvQjtBeEJrNUV0Qjs7QXdCajVFRTtFQUFvQjtBeEJxNUV0Qjs7QTJCcG1GQTtFQUNFO0VBRUE7RUFDQTtFQUNBO0VwQnFSSTtFb0JsUko7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VqQkZFO0VlSEU7RUVTSjtLQUFBO1VBQUE7QTNCb21GRjs7QXlCem1GTTtFRWZOO0lGZ0JRO0V6QjZtRk47QUFDRjs7QTJCeG1GRTtFQUNFO0VBQ0E7RUFLRTtBM0J1bUZOOztBMkJubUZFOztFQUVFO0VBQ0E7QTNCc21GSjs7QTJCbm1GRTtFQUVFO0EzQnFtRko7O0EyQmhtRkU7RUFDRTtFQUNBO0EzQm1tRko7O0EyQi9sRkE7RUFDRTtFQUNBO0VBQ0E7RXBCbU9JO0VHNVFGO0FWNm9GSjs7QTJCL2xGQTtFQUNFO0VBQ0E7RUFDQTtFcEIyTkk7RUc1UUY7QVZxcEZKOztBMkI3bEZJO0VBQ0U7QTNCZ21GTjs7QTRCeHFGQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E1QjJxRkY7O0E0QnpxRkU7RUFDRTtFQUNBO0E1QjRxRko7O0E0QnhxRkE7RUFDRTtFQUNBO0VBQ0E7QTVCMnFGRjs7QTRCenFGRTtFQUNFO0VBQ0E7RUFDQTtBNUI0cUZKOztBNEJ4cUZBO0VBQ0U7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0tBQUE7VUFBQTtFQUNBO0E1QjBxRkY7O0E0QnZxRkU7RWxCMUJFO0FWcXNGSjs7QTRCdnFGRTtFQUVFO0E1QnlxRko7O0E0QnRxRkU7RUFDRTtBNUJ5cUZKOztBNEJ0cUZFO0VBQ0U7RUFDQTtFQUNBO0E1QnlxRko7O0E0QnRxRkU7RUFDRTtFQUNBO0E1QnlxRko7O0E0QnZxRkk7RUFJSTtBNUJ1cUZSOztBNEJucUZJO0VBSUk7QTVCbXFGUjs7QTRCOXBGRTtFQUNFO0VBQ0E7RUFLRTtBNUI2cEZOOztBNEJ6cEZFO0VBQ0U7RUFDQTtFQUNBO0E1QjRwRko7O0E0QnJwRkk7O0VBQ0U7RUFDQTtBNUJ5cEZOOztBNEIzb0ZBO0VBQ0U7QTVCOG9GRjs7QTRCNW9GRTtFQUNFO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RWxCaEhBO0VlSEU7QXpCbXdGTjs7QXlCL3ZGTTtFR3lHSjtJSHhHTTtFekJtd0ZOO0FBQ0Y7O0E0QmxwRkk7RUFDRTtBNUJxcEZOOztBNEJscEZJO0VBQ0U7RUFLRTtBNUJpcEZSOztBNEI1b0ZFO0VBQ0U7RUFDQTtBNUIrb0ZKOztBNEI3b0ZJO0VBQ0U7RUFDQTtBNUJncEZOOztBNEIzb0ZBO0VBQ0U7RUFDQTtBNUI4b0ZGOztBNEIzb0ZBO0VBQ0U7RUFDQTtFQUNBO0E1QjhvRkY7O0E0QjFvRkk7O0VBQ0U7RUFDQTtFQUNBO0E1QjhvRk47O0E0QnZvRkk7RUFDRTtBNUIwb0ZOOztBNkI1ekZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtLQUFBO1VBQUE7QTdCK3pGRjs7QTZCN3pGRTtFQUNFO0E3QmcwRko7O0E2QjV6Rkk7RUFBMEI7QTdCZzBGOUI7O0E2Qi96Rkk7RUFBMEI7QTdCbTBGOUI7O0E2QmgwRkU7RUFDRTtBN0JtMEZKOztBNkJoMEZFO0VBQ0U7RUFDQTtFQUNBO0VIekJGO0VHMkJFO0VuQlpBO0VlSEU7RUFBQTtFSW1CRjtVQUFBO0E3QmswRko7O0F5QmoxRk07RUlNSjtJSkxNO0lBQUE7RXpCcTFGTjtBQUNGOztBNkJ0MEZJO0VIakNGO0ExQjIyRkY7O0E2QnIwRkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RW5CN0JBO0FWczJGSjs7QTZCcDBGRTtFQUNFO0VBQ0E7RUhuREY7RUdxREU7RW5CdENBO0VlSEU7RUFBQTtFSTZDRjtPQUFBO0E3QnMwRko7O0F5Qi8yRk07RUlpQ0o7SUpoQ007SUFBQTtFekJtM0ZOO0FBQ0Y7O0E2QjEwRkk7RUgzREY7QTFCeTRGRjs7QTZCejBGRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFbkJ2REE7QVZvNEZKOztBNkJ4MEZFO0VBQ0U7QTdCMjBGSjs7QTZCejBGSTtFQUNFO0E3QjQwRk47O0E2QnowRkk7RUFDRTtBN0I0MEZOOztBOEJuNkZBO0VBQ0U7QTlCczZGRjs7QThCcDZGRTs7OztFQUdFOztFOUJ5NkZGO0U4Qng2RkU7O0U5QjI2RkY7RThCMTZGRTtBOUI0NkZKOztBOEJ6NkZFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUxSRTtBekJxN0ZOOztBeUJqN0ZNO0VLVEo7SUxVTTtFekJxN0ZOO0FBQ0Y7O0E4Qi82RkU7OztFQUVFO0E5Qm03Rko7O0E4Qmo3Rkk7RUFDRTtBOUJzN0ZOOztBOEJ2N0ZJO0VBQ0U7QTlCczdGTjs7QThCdjdGSTs7O0VBQ0U7QTlCczdGTjs7QThCbjdGSTtFQUVFO0VBQ0E7QTlCMDdGTjs7QThCNzdGSTtFQUVFO0VBQ0E7QTlCMDdGTjs7QThCNzdGSTs7Ozs7O0VBRUU7RUFDQTtBOUIwN0ZOOztBOEJ2N0ZJOzs7RUFDRTtFQUNBO0E5QjQ3Rk47O0E4Qng3RkU7RUFDRTtFQUNBO0E5QjI3Rko7O0E4QnA3Rkk7RUFDRTtFQUNBO0E5QjQ3Rk47O0E4Qjk3Rkk7RUFDRTtFQUNBO0E5QjQ3Rk47O0E4Qjk3Rkk7Ozs7OztFQUNFO0VBQ0E7QTlCNDdGTjs7QThCMTdGTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFcEJoREo7QVZtL0ZKOztBOEJ6OEZNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VwQmhESjtBVm0vRko7O0E4Qno4Rk07Ozs7OztFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFcEJoREo7QVZtL0ZKOztBOEI1N0ZJOztFQUNFO0VBQ0E7QTlCZzhGTjs7QThCMzdGSTtFQUNFO0E5Qjg3Rk47O0E4QjE3RkU7RUFDRTtBOUI2N0ZKOztBOEIzN0ZJO0VBQ0U7QTlCODdGTjs7QStCcGhHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9CdWhHRjs7QStCcmhHRTs7OztFQUdFO0VBQ0E7RUFDQTtFQUNBO0EvQnloR0o7O0ErQnJoR0U7Ozs7RUFHRTtBL0J5aEdKOztBK0JuaEdFO0VBQ0U7RUFDQTtBL0JzaEdKOztBK0JwaEdJO0VBQ0U7QS9CdWhHTjs7QStCNWdHQTtFQUNFO0VBQ0E7RUFDQTtFeEI4T0k7RXdCNU9KO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VyQnRDRTtBVnNqR0o7O0ErQnRnR0E7Ozs7O0VBSUU7RXhCd05JO0VHNVFGO0FWZ2tHSjs7QStCdmdHQTs7Ozs7RUFJRTtFeEIrTUk7RUc1UUY7QVYwa0dKOztBK0J4Z0dBOztFQUVFO0EvQjJnR0Y7O0ErQjkvRkk7Ozs7O0VyQmpFQTtFQUNBO0FWdWtHSjs7QStCOS9GSTs7Ozs7RXJCMUVBO0VBQ0E7QVZnbEdKOztBK0IxL0ZFO0VBQ0U7RXJCMUVBO0VBQ0E7QVZ3a0dKOztBK0IzL0ZFOzs7RXJCOUVFO0VBQ0E7QVYra0dKOztBZ0N2bUdFO0VBQ0U7RUFDQTtFQUNBO0V6QmtRRTtFeUIvUEY7QWhDeW1HSjs7QWdDdG1HRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0V6QnFQRTtFeUJsUEY7RUFDQTtFdEIzQkE7QVZvb0dKOztBZ0NwbUdJOzs7O0VBRUU7QWhDeW1HTjs7QWdDeHBHSTs7Ozs7RUFxREU7RUFHRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQ3ltR1I7O0FnQ3RtR007Ozs7O0VBQ0U7RUFDQTtBaEM2bUdSOztBZ0M5cUdJOzs7OztFQTBFSTtFQUNBO0FoQzRtR1I7O0FnQ3ZyR0k7O0VBa0ZFO0FoQzBtR047O0FnQ3ZtR1E7Ozs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtBaEM0bUdWOztBZ0N4bUdNOztFQUNFO0VBQ0E7QWhDNG1HUjs7QWdDNXNHSTs7RUF3R0k7QWhDeW1HUjs7QWdDanRHSTs7RUErR0U7QWhDdW1HTjs7QWdDcm1HTTs7RUFDRTtBaEN5bUdSOztBZ0N0bUdNOztFQUNFO0FoQzBtR1I7O0FnQ3ZtR007O0VBQ0U7QWhDMm1HUjs7QWdDdG1HSTtFQUNFO0FoQ3ltR047O0FnQ3p1R0k7Ozs7Ozs7OztFQTBJTTtBaEMybUdWOztBZ0NqdUdFOztFQUNFO0VBQ0E7RUFDQTtFekJrUUU7RXlCL1BGO0FoQ291R0o7O0FnQ2p1R0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFekJxUEU7RXlCbFBGO0VBQ0E7RXRCM0JBO0FWK3ZHSjs7QWdDL3RHSTs7Ozs7O0VBRUU7QWhDc3VHTjs7QWdDcnhHSTs7Ozs7RUFxREU7RUFHRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQ3N1R1I7O0FnQ251R007Ozs7O0VBQ0U7RUFDQTtBaEMwdUdSOztBZ0MzeUdJOzs7OztFQTBFSTtFQUNBO0FoQ3l1R1I7O0FnQ3B6R0k7O0VBa0ZFO0FoQ3V1R047O0FnQ3B1R1E7Ozs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtBaEN5dUdWOztBZ0NydUdNOztFQUNFO0VBQ0E7QWhDeXVHUjs7QWdDejBHSTs7RUF3R0k7QWhDc3VHUjs7QWdDOTBHSTs7RUErR0U7QWhDb3VHTjs7QWdDbHVHTTs7RUFDRTtBaENzdUdSOztBZ0NudUdNOztFQUNFO0FoQ3V1R1I7O0FnQ3B1R007O0VBQ0U7QWhDd3VHUjs7QWdDbnVHSTs7RUFDRTtBaEN1dUdOOztBZ0N2MkdJOzs7Ozs7Ozs7RUE0SU07QWhDdXVHVjs7QWlDcjNHQTtFQUVFO0VBQ0E7RUFDQTtFMUJ1Ukk7RTBCclJKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RTFCc1FJO0UwQnBRSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0tBQUE7TUFBQTtVQUFBO0VBQ0E7RXZCakJFO0VnQmZGO0VEWUk7QXpCMjRHTjs7QXlCdjRHTTtFUWhCTjtJUmlCUTtFekIyNEdOO0FBQ0Y7O0FpQ3YzR0U7RUFDRTtFQUVBO0VBQ0E7QWpDeTNHSjs7QWlDdDNHRTtFQUVFO0VBQ0E7RUFDQTtBakN3M0dKOztBaUNyM0dFO0VBQ0U7RVByREY7RU91REU7RUFDQTtFQUtFO0FqQ28zR047O0FpQ2gzR0U7RUFDRTtFQUNBO0VBS0U7QWpDKzJHTjs7QWlDMzJHRTs7Ozs7RUFLRTtFQUNBO0VBR0E7QWpDNDJHSjs7QWlDejJHSTs7Ozs7RUFLSTtBakM0MkdSOztBaUN2MkdFOzs7RUFHRTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FqQ3kyR0o7O0FpQzcxR0U7RUN0R0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEN1OEdGOztBaUM5MkdFO0VDdEdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDdzlHRjs7QWlDLzNHRTtFQ3RHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQ3krR0Y7O0FpQ2g1R0U7RUN0R0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEMwL0dGOztBaUNqNkdFO0VDdEdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDMmdIRjs7QWlDbDdHRTtFQ3RHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQzRoSEY7O0FpQ244R0U7RUN0R0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEM2aUhGOztBaUNwOUdFO0VDdEdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDOGpIRjs7QWlDMzhHRTtFQ3ZHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQ3NqSEY7O0FpQzU5R0U7RUN2R0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEN1a0hGOztBaUM3K0dFO0VDdkdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDd2xIRjs7QWlDOS9HRTtFQ3ZHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQ3ltSEY7O0FpQy9nSEU7RUN2R0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEMwbkhGOztBaUNoaUhFO0VDdkdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDMm9IRjs7QWlDampIRTtFQ3ZHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQzRwSEY7O0FpQ2xrSEU7RUN2R0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEM2cUhGOztBaUN2a0hBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7QWpDeWtIRjs7QWlDL2pIRTtFQUNFO0FqQ2trSEo7O0FpQy9qSEU7RUFDRTtBakNra0hKOztBaUN2akhBOztFQ3hJRTtFQUNBO0UzQjhOSTtFMkI1Tko7QWxDb3NIRjs7QWlDM2pIQTs7RUM1SUU7RUFDQTtFM0I4Tkk7RTJCNU5KO0FsQzRzSEY7O0FtQy93SEE7RVZnQk07QXpCbXdITjs7QXlCL3ZITTtFVXBCTjtJVnFCUTtFekJtd0hOO0FBQ0Y7O0FtQ3R4SEU7RUFDRTtBbkN5eEhKOztBbUNueEhFO0VBQ0U7QW5Dc3hISjs7QW1DbHhIQTtFQUNFO0VBQ0E7RVZESTtBekJ1eEhOOztBeUJueEhNO0VVTE47SVZNUTtFekJ1eEhOO0FBQ0Y7O0FtQ3p4SEU7RUFDRTtFQUNBO0VWTkU7QXpCbXlITjs7QXlCL3hITTtFVUFKO0lWQ007RXpCbXlITjtBQUNGOztBb0N4ekhBOzs7Ozs7RUFNRTtBcEMyekhGOztBb0N4ekhBO0VBQ0U7QXBDMnpIRjs7QXFDbnlISTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBckNKO0VBQ0E7RUFDQTtFQUNBO0FyQzQwSEY7O0FxQ2x4SEk7RUFDRTtBckNxeEhOOztBb0NuMEhBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFN0J1UUk7RTZCclFKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7R3BDczBIQztFb0NyMEhEO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTdCME9JO0U2QnhPSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTFCekNFO0FWKzJISjs7QW9DbDBIRTtFQUNFO0VBQ0E7RUFDQTtBcENxMEhKOztBb0M3eUhJO0VBQ0U7QXBDZ3pITjs7QW9DOXlITTtFQUNFO0VBQ0E7QXBDaXpIUjs7QW9DN3lISTtFQUNFO0FwQ2d6SE47O0FvQzl5SE07RUFDRTtFQUNBO0FwQ2l6SFI7O0FpQjMxSEk7RW1CNEJBO0lBQ0U7RXBDbTBISjs7RW9DajBISTtJQUNFO0lBQ0E7RXBDbzBITjs7RW9DaDBIRTtJQUNFO0VwQ20wSEo7O0VvQ2owSEk7SUFDRTtJQUNBO0VwQ28wSE47QUFDRjs7QWlCLzJISTtFbUI0QkE7SUFDRTtFcEN1MUhKOztFb0NyMUhJO0lBQ0U7SUFDQTtFcEN3MUhOOztFb0NwMUhFO0lBQ0U7RXBDdTFISjs7RW9DcjFISTtJQUNFO0lBQ0E7RXBDdzFITjtBQUNGOztBaUJuNEhJO0VtQjRCQTtJQUNFO0VwQzIySEo7O0VvQ3oySEk7SUFDRTtJQUNBO0VwQzQySE47O0VvQ3gySEU7SUFDRTtFcEMyMkhKOztFb0N6MkhJO0lBQ0U7SUFDQTtFcEM0MkhOO0FBQ0Y7O0FpQnY1SEk7RW1CNEJBO0lBQ0U7RXBDKzNISjs7RW9DNzNISTtJQUNFO0lBQ0E7RXBDZzRITjs7RW9DNTNIRTtJQUNFO0VwQyszSEo7O0VvQzczSEk7SUFDRTtJQUNBO0VwQ2c0SE47QUFDRjs7QWlCMzZISTtFbUI0QkE7SUFDRTtFcENtNUhKOztFb0NqNUhJO0lBQ0U7SUFDQTtFcENvNUhOOztFb0NoNUhFO0lBQ0U7RXBDbTVISjs7RW9DajVISTtJQUNFO0lBQ0E7RXBDbzVITjtBQUNGOztBb0MzNEhFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXBDODRISjs7QXFDbCtISTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBOUJKO0VBQ0E7RUFDQTtFQUNBO0FyQ29nSUY7O0FxQ2o5SEk7RUFDRTtBckNvOUhOOztBb0NwNUhFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEN1NUhKOztBcUN6L0hJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUF2Qko7RUFDQTtFQUNBO0VBQ0E7QXJDb2hJRjs7QXFDeCtISTtFQUNFO0FyQzIrSE47O0FvQ2o2SEk7RUFDRTtBcENvNkhOOztBb0M5NUhFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcENpNkhKOztBcUNwaElJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXJDdWhJTjs7QXFDNWdJTTtFQUNFO0FyQytnSVI7O0FxQzVnSU07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQW5DTjtFQUNBO0VBQ0E7QXJDbWpJRjs7QXFDN2dJSTtFQUNFO0FyQ2doSU47O0FvQ3I3SEk7RUFDRTtBcEN3N0hOOztBb0NqN0hBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcENvN0hGOztBb0M5NkhBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFMUJ0S0U7QVZ3bElKOztBb0MvNkhFOztFQUVFO0VWMUxGO0ExQjZtSUY7O0FvQzk2SEU7O0VBRUU7RUFDQTtFVmxNRjtBMUJvbklGOztBb0M5NkhFOztFQUVFO0VBQ0E7RUFDQTtBcENpN0hKOztBb0MzNkhBO0VBQ0U7QXBDODZIRjs7QW9DMTZIQTtFQUNFO0VBQ0E7RUFDQTtFN0JtRUk7RTZCakVKO0VBQ0E7QXBDNjZIRjs7QW9DejZIQTtFQUNFO0VBQ0E7RUFDQTtBcEM0NkhGOztBb0N4NkhBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwQzA2SEY7O0FzQ2hxSUE7O0VBRUU7RUFDQTtFQUNBO0F0Q21xSUY7O0FzQ2pxSUU7O0VBQ0U7RUFDQTtBdENxcUlKOztBc0NocUlFOzs7Ozs7Ozs7Ozs7RUFNRTtBdEN5cUlKOztBc0NwcUlBO0VBQ0U7RUFDQTtFQUNBO0F0Q3VxSUY7O0FzQ3JxSUU7RUFDRTtBdEN3cUlKOztBc0NwcUlBO0U1QmhCSTtBVndySUo7O0FzQ3BxSUU7O0VBRUU7QXRDdXFJSjs7QXNDbnFJRTs7O0U1QlZFO0VBQ0E7QVZtcklKOztBc0NocUlFOzs7RTVCTkU7RUFDQTtBVjRxSUo7O0FzQ3BwSUE7RUFDRTtFQUNBO0F0Q3VwSUY7O0FzQ3JwSUU7OztFQUdFO0F0Q3dwSUo7O0FzQ3JwSUU7RUFDRTtBdEN3cElKOztBc0NwcElBOztFQUNFO0VBQ0E7QXRDd3BJRjs7QXNDcnBJQTs7RUFDRTtFQUNBO0F0Q3lwSUY7O0FzQ3JvSUE7RUFDRTtFQUNBO0VBQ0E7QXRDd29JRjs7QXNDdG9JRTs7RUFFRTtBdEN5b0lKOztBc0N0b0lFOztFQUVFO0F0Q3lvSUo7O0FzQ3JvSUU7O0U1QjFGRTtFQUNBO0FWb3VJSjs7QXNDdG9JRTs7RTVCN0dFO0VBQ0E7QVZ3dklKOztBdUNoeElBO0VBRUU7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkMrd0lGOztBdUM1d0lBO0VBQ0U7RUFDQTtFaENzUUk7RWdDcFFKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWRmSTtBekIreElOOztBeUIzeElNO0VjR047SWRGUTtFekIreElOO0FBQ0Y7O0F1Q254SUU7O0VBRUU7QXZDc3hJSjs7QXVDbHhJRTtFQUNFO0VBQ0E7QXZDcXhJSjs7QXVDanhJRTtFQUNFO0VBQ0E7RUFDQTtBdkNveElKOztBdUM1d0lBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtBdkM0d0lGOztBdUMxd0lFO0VBQ0U7RUFDQTtFN0I1Q0E7RUFDQTtBVjB6SUo7O0F1QzV3SUk7O0VBR0U7RUFDQTtBdkM4d0lOOztBdUMzd0lJOztFQUVFO0VBQ0E7RUFDQTtBdkM4d0lOOztBdUMxd0lFOztFQUVFO0VBQ0E7RUFDQTtBdkM2d0lKOztBdUMxd0lFO0VBRUU7RTdCdkVBO0VBQ0E7QVZvMUlKOztBdUNud0lBO0VBRUU7RUFDQTtFQUNBO0F2Q3F3SUY7O0F1Q2x3SUU7RTdCbEdFO0FWdzJJSjs7QXVDbndJSTtFQUNFO0VBQ0E7RUFDQTtBdkNzd0lOOztBdUNsd0lFOztFQUVFO0ViN0hGO0ExQm00SUY7O0F1QzV2SUE7RUFFRTtFQUNBO0VBQ0E7RUFHQTtBdkM0dklGOztBdUMxdklFO0VBQ0U7RUFDQTtFQUNBO0F2QzZ2SUo7O0F1QzN2SUk7O0VBRUU7QXZDOHZJTjs7QXVDMXZJRTs7RUFFRTtFQUNBO0VBQ0E7QXZDNnZJSjs7QXVDbnZJRTs7RUFFRTtFQUNBO0F2Q3N2SUo7O0F1Q2p2SUU7O0VBRUU7RUFDQTtFQUNBO0F2Q292SUo7O0F1Qzl1SUU7O0VBQ0U7QXZDa3ZJSjs7QXVDeHVJRTtFQUNFO0F2QzJ1SUo7O0F1Q3p1SUU7RUFDRTtBdkM0dUlKOztBd0NyN0lBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeENxN0lGOztBd0MvNklFOzs7Ozs7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXhDdzdJSjs7QXdDcDZJQTtFQUNFO0VBQ0E7RUFDQTtFakM0Tkk7RWlDMU5KO0VBQ0E7RUFDQTtBeEN1NklGOztBd0NyNklFOztFQUVFO0F4Q3c2SUo7O0F3Qzk1SUE7RUFFRTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4QzY1SUY7O0F3QzE1SUk7O0VBRUU7QXhDNjVJTjs7QXdDejVJRTtFQUNFO0F4QzQ1SUo7O0F3Q241SUE7RUFDRTtFQUNBO0VBQ0E7QXhDczVJRjs7QXdDcDVJRTs7O0VBR0U7QXhDdTVJSjs7QXdDMTRJQTtFQUNFO0VBQ0E7RUFHQTtBeEMyNElGOztBd0N2NElBO0VBQ0U7RWpDeUlJO0VpQ3ZJSjtFQUNBO0VBQ0E7RUFDQTtFOUJ4SUU7RWVIRTtBekJ1aEpOOztBeUJuaEpNO0VlaUlOO0lmaElRO0V6QnVoSk47QUFDRjs7QXdDOTRJRTtFQUNFO0F4Q2k1SUo7O0F3Qzk0SUU7RUFDRTtFQUNBO0VBQ0E7QXhDaTVJSjs7QXdDMzRJQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhDODRJRjs7QXdDMzRJQTtFQUNFO0VBQ0E7QXhDODRJRjs7QWlCeGdKSTtFdUJzSUE7SUFFSTtJQUNBO0V4Q3E0SU47O0V3Q240SU07SUFDRTtFeENzNElSOztFd0NwNElRO0lBQ0U7RXhDdTRJVjs7RXdDcDRJUTtJQUNFO0lBQ0E7RXhDdTRJVjs7RXdDbjRJTTtJQUNFO0V4Q3M0SVI7O0V3Q240SU07SUFDRTtJQUNBO0V4Q3M0SVI7O0V3Q240SU07SUFDRTtFeENzNElSOztFd0NuNElNO0lBRUU7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lmOU5KO0V6Qm9tSko7O0V3Q2o0SVE7SUFDRTtFeENvNElWOztFd0NqNElRO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RXhDbzRJVjtBQUNGOztBaUJqa0pJO0V1QnNJQTtJQUVJO0lBQ0E7RXhDODdJTjs7RXdDNTdJTTtJQUNFO0V4Qys3SVI7O0V3Qzc3SVE7SUFDRTtFeENnOElWOztFd0M3N0lRO0lBQ0U7SUFDQTtFeENnOElWOztFd0M1N0lNO0lBQ0U7RXhDKzdJUjs7RXdDNTdJTTtJQUNFO0lBQ0E7RXhDKzdJUjs7RXdDNTdJTTtJQUNFO0V4Qys3SVI7O0V3QzU3SU07SUFFRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SWY5Tko7RXpCNnBKSjs7RXdDMTdJUTtJQUNFO0V4QzY3SVY7O0V3QzE3SVE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFeEM2N0lWO0FBQ0Y7O0FpQjFuSkk7RXVCc0lBO0lBRUk7SUFDQTtFeEN1L0lOOztFd0NyL0lNO0lBQ0U7RXhDdy9JUjs7RXdDdC9JUTtJQUNFO0V4Q3kvSVY7O0V3Q3QvSVE7SUFDRTtJQUNBO0V4Q3kvSVY7O0V3Q3IvSU07SUFDRTtFeEN3L0lSOztFd0NyL0lNO0lBQ0U7SUFDQTtFeEN3L0lSOztFd0NyL0lNO0lBQ0U7RXhDdy9JUjs7RXdDci9JTTtJQUVFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJZjlOSjtFekJzdEpKOztFd0NuL0lRO0lBQ0U7RXhDcy9JVjs7RXdDbi9JUTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0V4Q3MvSVY7QUFDRjs7QWlCbnJKSTtFdUJzSUE7SUFFSTtJQUNBO0V4Q2dqSk47O0V3QzlpSk07SUFDRTtFeENpakpSOztFd0MvaUpRO0lBQ0U7RXhDa2pKVjs7RXdDL2lKUTtJQUNFO0lBQ0E7RXhDa2pKVjs7RXdDOWlKTTtJQUNFO0V4Q2lqSlI7O0V3QzlpSk07SUFDRTtJQUNBO0V4Q2lqSlI7O0V3QzlpSk07SUFDRTtFeENpakpSOztFd0M5aUpNO0lBRUU7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lmOU5KO0V6Qit3Sko7O0V3QzVpSlE7SUFDRTtFeEMraUpWOztFd0M1aUpRO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RXhDK2lKVjtBQUNGOztBaUI1dUpJO0V1QnNJQTtJQUVJO0lBQ0E7RXhDeW1KTjs7RXdDdm1KTTtJQUNFO0V4QzBtSlI7O0V3Q3htSlE7SUFDRTtFeEMybUpWOztFd0N4bUpRO0lBQ0U7SUFDQTtFeEMybUpWOztFd0N2bUpNO0lBQ0U7RXhDMG1KUjs7RXdDdm1KTTtJQUNFO0lBQ0E7RXhDMG1KUjs7RXdDdm1KTTtJQUNFO0V4QzBtSlI7O0V3Q3ZtSk07SUFFRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SWY5Tko7RXpCdzBKSjs7RXdDcm1KUTtJQUNFO0V4Q3dtSlY7O0V3Q3JtSlE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFeEN3bUpWO0FBQ0Y7O0F3Qy9wSkk7RUFFSTtFQUNBO0F4Q2lxSlI7O0F3Qy9wSlE7RUFDRTtBeENrcUpWOztBd0NocUpVO0VBQ0U7QXhDbXFKWjs7QXdDaHFKVTtFQUNFO0VBQ0E7QXhDbXFKWjs7QXdDL3BKUTtFQUNFO0F4Q2txSlY7O0F3Qy9wSlE7RUFDRTtFQUNBO0F4Q2txSlY7O0F3Qy9wSlE7RUFDRTtBeENrcUpWOztBd0MvcEpRO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VmOU5KO0F6Qmc0Sk47O0F3QzdwSlU7RUFDRTtBeENncUpaOztBd0M3cEpVO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXhDZ3FKWjs7QXdDL29KQTs7RUFHRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4Q2lwSkY7O0F3QzNvSkk7RUFDRTtBeEM4b0pOOztBeUN2NkpBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFL0JqQkU7QVZ5N0pKOztBeUNwNkpFO0VBQ0U7RUFDQTtBekN1NkpKOztBeUNwNkpFO0VBQ0U7RUFDQTtBekN1NkpKOztBeUNyNkpJO0VBQ0U7RS9CdEJGO0VBQ0E7QVYrN0pKOztBeUN0NkpJO0VBQ0U7RS9CYkY7RUFDQTtBVnU3Sko7O0F5Q3A2SkU7O0VBRUU7QXpDdTZKSjs7QXlDbjZKQTtFQUdFO0VBQ0E7RUFDQTtBekNvNkpGOztBeUNqNkpBO0VBQ0U7RUFDQTtBekNvNkpGOztBeUNqNkpBO0VBQ0U7RUFDQTtFQUNBO0F6Q282SkY7O0F5Q2o2SkE7RUFDRTtBekNvNkpGOztBeUM1NUpFO0VBQ0U7QXpDKzVKSjs7QXlDdjVKQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpDMDVKRjs7QXlDeDVKRTtFL0I3RkU7QVZ5L0pKOztBeUN2NUpBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXpDMDVKRjs7QXlDeDVKRTtFL0J4R0U7QVZvZ0tKOztBeUNsNUpBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXpDcTVKRjs7QXlDbjVKRTtFQUNFO0VBQ0E7QXpDczVKSjs7QXlDbDVKQTtFQUNFO0VBQ0E7QXpDcTVKRjs7QXlDajVKQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFL0IxSUU7QVYraEtKOztBeUNqNUpBOzs7RUFHRTtBekNvNUpGOztBeUNqNUpBOztFL0IzSUk7RUFDQTtBVmlpS0o7O0F5Q2w1SkE7O0UvQmxJSTtFQUNBO0FWeWhLSjs7QXlDMzRKRTtFQUNFO0F6Qzg0Sko7O0FpQnpnS0k7RXdCdUhKO0lBUUk7SUFDQTtFekMrNEpGOztFeUM1NEpFO0lBRUU7SUFDQTtFekM4NEpKOztFeUM1NEpJO0lBQ0U7SUFDQTtFekMrNEpOOztFeUMxNEpNO0kvQjNLSjtJQUNBO0VWeWpLRjs7RXlDNTRKUTs7SUFHRTtFekM4NEpWOztFeUM1NEpROztJQUdFO0V6Qzg0SlY7O0V5QzE0Sk07SS9CNUtKO0lBQ0E7RVYwaktGOztFeUM1NEpROztJQUdFO0V6Qzg0SlY7O0V5QzU0SlE7O0lBR0U7RXpDODRKVjtBQUNGOztBMENubktBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFDcW5LRjs7QTBDam5LQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RW5DMlBJO0VtQ3pQSjtFQUNBO0VBQ0E7RUFDQTtFaEN0QkU7RWdDd0JGO0VqQjNCSTtBekJncEtOOztBeUI1b0tNO0VpQldOO0lqQlZRO0V6QmdwS047QUFDRjs7QTBDeG5LRTtFQUNFO0VBQ0E7RUFDQTtBMUMybktKOztBMEN6bktJO0VBQ0U7RUFDQTtBMUM0bktOOztBMEN2bktFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFakJsREU7QXpCNnFLTjs7QXlCenFLTTtFaUJzQ0o7SWpCckNNO0V6QjZxS047QUFDRjs7QTBDN25LRTtFQUNFO0ExQ2dvS0o7O0EwQzduS0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBMUNnb0tKOztBMEM1bktBO0VBQ0U7QTFDK25LRjs7QTBDNW5LQTtFQUNFO0VBQ0E7RUFDQTtBMUMrbktGOztBMEM3bktFO0VoQy9ERTtFQUNBO0FWZ3NLSjs7QTBDL25LSTtFaENsRUE7RUFDQTtBVnFzS0o7O0EwQy9uS0U7RUFDRTtBMUNrb0tKOztBMEM5bktFO0VoQzlERTtFQUNBO0FWZ3NLSjs7QTBDL25LTTtFaENsRUY7RUFDQTtBVnFzS0o7O0EwQy9uS0k7RWhDdkVBO0VBQ0E7QVYwc0tKOztBMEM5bktBO0VBQ0U7QTFDaW9LRjs7QTBDeG5LRTtFQUNFO0ExQzJuS0o7O0EwQ3huS0U7RUFDRTtFQUNBO0VoQ3BIQTtBVmd2S0o7O0EwQ3puS0k7RUFBZ0I7QTFDNm5LcEI7O0EwQzVuS0k7RUFBZTtBMUNnb0tuQjs7QTBDN25LTTs7RWhDM0hGO0FWNnZLSjs7QTBDeG5LSTtFQUNFO0VBQ0E7QTFDMm5LTjs7QTJDcnhLQTtFQUVFO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFcEMrUUk7RW9DN1FKO0VBQ0E7RWpDQUU7QVZxeEtKOztBMkMvd0tFO0VBQ0U7QTNDa3hLSjs7QTJDaHhLSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0EzQ214S047O0EyQy93S0U7RUFDRTtBM0NreEtKOztBNEN2ektBO0VBRUU7RUFDQTtFckM0Ukk7RXFDMVJKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFaENwQkE7RUFDQTtBWjQwS0Y7O0E0Q3J6S0E7RUFDRTtFQUNBO0VBQ0E7RXJDZ1FJO0VxQzlQSjtFQUNBO0VBQ0E7RUFDQTtFbkJwQkk7QXpCNjBLTjs7QXlCejBLTTtFbUJRTjtJbkJQUTtFekI2MEtOO0FBQ0Y7O0E0QzV6S0U7RUFDRTtFQUNBO0VBRUE7RUFDQTtBNUM4ektKOztBNEMzektFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUM4ektKOztBNEMzektFOztFQUVFO0VBQ0E7RWxCdERGO0VrQndERTtBNUM4ektKOztBNEMzektFOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0E1Qzh6S0o7O0E0Q3p6S0U7RUFDRTs7QzVDNnpLSDtBQUNEOztBNEM3eUtJO0VsQ3hFQTtBVnkzS0o7O0E0Q3R5S0E7RUNsR0U7RUFDQTtFdEMwUkk7RXNDeFJKO0E3QzQ0S0Y7O0E0Q3p5S0E7RUN0R0U7RUFDQTtFdEMwUkk7RXNDeFJKO0E3Q201S0Y7O0E4Q3I1S0E7RUFFRTtFQUNBO0V2Q3VSSTtFdUNyUko7RUFDQTtFQUNBO0VBR0E7RUFDQTtFdkMrUUk7RXVDN1FKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFcENKRTtBVjA1S0o7O0E4Q2o1S0U7RUFDRTtBOUNvNUtKOztBOEMvNEtBO0VBQ0U7RUFDQTtBOUNrNUtGOztBK0NsN0tBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VyQ0hFO0FWczdLSjs7QStDOTZLQTtFQUVFO0EvQ2c3S0Y7O0ErQzU2S0E7RUFDRTtFQUNBO0EvQys2S0Y7O0ErQ3Y2S0E7RUFDRTtBL0MwNktGOztBK0N2NktFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0MwNktKOztBK0NsNktFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QS9DcTZLSjs7QStDejZLRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0EvQzQ2S0o7O0ErQ2g3S0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBL0NtN0tKOztBK0N2N0tFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QS9DMDdLSjs7QStDOTdLRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0EvQ2k4S0o7O0ErQ3I4S0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBL0N3OEtKOztBK0M1OEtFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QS9DKzhLSjs7QStDbjlLRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0EvQ3M5S0o7O0FnRGxoTEU7RUFDRTtJQUFLO0VoRHNoTFA7QUFDRjs7QWdEeGhMRTtFQUNFO0lBQUs7RWhEc2hMUDtBQUNGOztBZ0RsaExBOztFQUdFO0V6Q2tSSTtFeUNoUko7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0V6Q3NRSTtFeUNwUUo7RXRDUkU7QVYyaExKOztBZ0Q5Z0xBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFdkJ4Qkk7QXpCMGlMTjs7QXlCdGlMTTtFdUJZTjtJdkJYUTtFekIwaUxOO0FBQ0Y7O0FnRHBoTEE7RXRCQUU7RXNCRUE7QWhEdWhMRjs7QWdEcGhMQTtFQUNFO0FoRHVoTEY7O0FnRHBoTEE7RUFDRTtBaER1aExGOztBZ0RuaExFO0VBQ0U7VUFBQTtBaERzaExKOztBZ0RuaExNO0VBSko7SUFLTTtZQUFBO0VoRHVoTE47QUFDRjs7QWlEbmxMQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBR0E7RUFDQTtFdkNYRTtBVjZsTEo7O0FpRDlrTEE7RUFDRTtFQUNBO0FqRGlsTEY7O0FpRC9rTEU7RUFFRTtFQUNBO0FqRGlsTEo7O0FpRHhrTEE7RUFDRTtFQUNBO0VBQ0E7QWpEMmtMRjs7QWlEeGtMRTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtBakQya0xKOztBaUR4a0xFO0VBQ0U7RUFDQTtBakQya0xKOztBaURua0xBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpEc2tMRjs7QWlEcGtMRTtFdkN2REU7RUFDQTtBVituTEo7O0FpRHJrTEU7RXZDN0NFO0VBQ0E7QVZzbkxKOztBaUR0a0xFOztFQUVFO0VBQ0E7RUFDQTtBakR5a0xKOztBaURya0xFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWpEd2tMSjs7QWlEcGtMRTtFQUNFO0FqRHVrTEo7O0FpRHJrTEk7RUFDRTtFQUNBO0FqRHdrTE47O0FpRDNqTEk7RUFDRTtBakQ4akxOOztBaUQzakxRO0V2Q3ZESjtFQVpBO0FWbW9MSjs7QWlEM2pMUTtFdkN4RUo7RUFZQTtBVjRuTEo7O0FpRDNqTFE7RUFDRTtBakQ4akxWOztBaUQzakxRO0VBQ0U7RUFDQTtBakQ4akxWOztBaUQ1akxVO0VBQ0U7RUFDQTtBakQrakxaOztBaUJycExJO0VnQzhEQTtJQUNFO0VqRDJsTEo7O0VpRHhsTE07SXZDdkRKO0lBWkE7RVZncUxGOztFaUR4bExNO0l2Q3hFSjtJQVlBO0VWeXBMRjs7RWlEeGxMTTtJQUNFO0VqRDJsTFI7O0VpRHhsTE07SUFDRTtJQUNBO0VqRDJsTFI7O0VpRHpsTFE7SUFDRTtJQUNBO0VqRDRsTFY7QUFDRjs7QWlCbnJMSTtFZ0M4REE7SUFDRTtFakR5bkxKOztFaUR0bkxNO0l2Q3ZESjtJQVpBO0VWOHJMRjs7RWlEdG5MTTtJdkN4RUo7SUFZQTtFVnVyTEY7O0VpRHRuTE07SUFDRTtFakR5bkxSOztFaUR0bkxNO0lBQ0U7SUFDQTtFakR5bkxSOztFaUR2bkxRO0lBQ0U7SUFDQTtFakQwbkxWO0FBQ0Y7O0FpQmp0TEk7RWdDOERBO0lBQ0U7RWpEdXBMSjs7RWlEcHBMTTtJdkN2REo7SUFaQTtFVjR0TEY7O0VpRHBwTE07SXZDeEVKO0lBWUE7RVZxdExGOztFaURwcExNO0lBQ0U7RWpEdXBMUjs7RWlEcHBMTTtJQUNFO0lBQ0E7RWpEdXBMUjs7RWlEcnBMUTtJQUNFO0lBQ0E7RWpEd3BMVjtBQUNGOztBaUIvdUxJO0VnQzhEQTtJQUNFO0VqRHFyTEo7O0VpRGxyTE07SXZDdkRKO0lBWkE7RVYwdkxGOztFaURsckxNO0l2Q3hFSjtJQVlBO0VWbXZMRjs7RWlEbHJMTTtJQUNFO0VqRHFyTFI7O0VpRGxyTE07SUFDRTtJQUNBO0VqRHFyTFI7O0VpRG5yTFE7SUFDRTtJQUNBO0VqRHNyTFY7QUFDRjs7QWlCN3dMSTtFZ0M4REE7SUFDRTtFakRtdExKOztFaURodExNO0l2Q3ZESjtJQVpBO0VWd3hMRjs7RWlEaHRMTTtJdkN4RUo7SUFZQTtFVml4TEY7O0VpRGh0TE07SUFDRTtFakRtdExSOztFaURodExNO0lBQ0U7SUFDQTtFakRtdExSOztFaURqdExRO0lBQ0U7SUFDQTtFakRvdExWO0FBQ0Y7O0FpRHZzTEE7RXZDaEpJO0FWMjFMSjs7QWlEeHNMRTtFQUNFO0FqRDJzTEo7O0FpRHpzTEk7RUFDRTtBakQ0c0xOOztBaUQvckxFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpEa3NMSjs7QWlENXNMRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqRCtzTEo7O0FpRHp0TEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakQ0dExKOztBaUR0dUxFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpEeXVMSjs7QWlEbnZMRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqRHN2TEo7O0FpRGh3TEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakRtd0xKOztBaUQ3d0xFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpEZ3hMSjs7QWlEMXhMRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqRDZ4TEo7O0FrRHo5TEE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RXhDSkU7RXdDTUY7QWxEeTlMRjs7QWtEdDlMRTtFQUNFO0VBQ0E7RUFDQTtBbER5OUxKOztBa0R0OUxFO0VBQ0U7RUFDQTtFQUNBO0FsRHk5TEo7O0FrRHQ5TEU7O0VBRUU7RUFDQTtLQUFBO01BQUE7VUFBQTtFQUNBO0FsRHk5TEo7O0FrRGo5TEE7RUFIRTtBbER3OUxGOztBa0QvOExJO0VBVEY7QWxENDlMRjs7QW1EN2dNQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTVDeVJJO0U0Q3ZSSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0U1QzJRSTtFNEN6UUo7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0V6Q1JFO0FWc2hNSjs7QW1EM2dNRTtFQUNFO0FuRDhnTUo7O0FtRDNnTUU7RUFDRTtBbkQ4Z01KOztBbUQxZ01BO0VBQ0U7RUFFQTtFQUNBO0VBQ0E7RUFBQTtFQUFBO0VBQ0E7RUFDQTtBbkQ0Z01GOztBbUQxZ01FO0VBQ0U7QW5ENmdNSjs7QW1EemdNQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0V6Q2hDRTtFQUNBO0FWNmlNSjs7QW1EM2dNRTtFQUNFO0VBQ0E7QW5EOGdNSjs7QW1EMWdNQTtFQUNFO0VBQ0E7QW5ENmdNRjs7QW9EM2tNQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0FwRHlrTUY7O0FvRGxrTUE7RUFDRTtFQUNBO0VBQ0E7RUFFQTtBcERva01GOztBb0Rqa01FO0UzQjVDSTtFMkI4Q0Y7QXBEb2tNSjs7QXlCOW1NTTtFMkJ3Q0o7STNCdkNNO0V6QmtuTU47QUFDRjs7QW9EeGtNRTtFQUNFO0FwRDJrTUo7O0FvRHZrTUU7RUFDRTtBcEQwa01KOztBb0R0a01BO0VBQ0U7QXBEeWtNRjs7QW9EdmtNRTtFQUNFO0VBQ0E7QXBEMGtNSjs7QW9EdmtNRTtFQUNFO0FwRDBrTUo7O0FvRHRrTUE7RUFDRTtFQUNBO0VBQ0E7QXBEeWtNRjs7QW9EcmtNQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFMUNyRkU7RTBDeUZGO0FwRHFrTUY7O0FvRGprTUE7RUFFRTtFQUNBO0VBQ0E7RUNsSEE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJEc3JNRjs7QXFEbnJNRTtFQUFTO0FyRHVyTVg7O0FxRHRyTUU7RUFBUztBckQwck1YOztBb0Qxa01BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0UxQ3RHRTtFQUNBO0FWb3JNSjs7QW9ENWtNRTtFQUNFO0VBQ0E7QXBEK2tNSjs7QW9EMWtNQTtFQUNFO0VBQ0E7QXBENmtNRjs7QW9EeGtNQTtFQUNFO0VBR0E7RUFDQTtBcER5a01GOztBb0Rya01BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFMUMxSEU7RUFDQTtBVm1zTUo7O0FvRHBrTUU7RUFDRTtBcER1a01KOztBaUJuck1JO0VtQ2tIRjtJQUNFO0lBQ0E7RXBEcWtNRjs7RW9EamtNQTtJQUNFO0lBQ0E7SUFDQTtFcERva01GOztFb0Rqa01BO0lBQ0U7RXBEb2tNRjtBQUNGOztBaUJwc01JO0VtQ29JRjs7SUFFRTtFcERva01GO0FBQ0Y7O0FpQjNzTUk7RW1DMklGO0lBQ0U7RXBEb2tNRjtBQUNGOztBb0Qzak1JO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXBEOGpNTjs7QW9ENWpNTTtFQUNFO0VBQ0E7RTFDMU1KO0FWMHdNSjs7QW9ENWpNTTs7RTFDOU1GO0FWK3dNSjs7QW9ENWpNTTtFQUNFO0FwRCtqTVI7O0FpQjF0TUk7RW1DeUlBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RXBEcWxNSjs7RW9EbmxNSTtJQUNFO0lBQ0E7STFDMU1KO0VWaXlNRjs7RW9EbmxNSTs7STFDOU1GO0VWc3lNRjs7RW9EbmxNSTtJQUNFO0VwRHNsTU47QUFDRjs7QWlCbHZNSTtFbUN5SUE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFcEQ2bU1KOztFb0QzbU1JO0lBQ0U7SUFDQTtJMUMxTUo7RVZ5ek1GOztFb0QzbU1JOztJMUM5TUY7RVY4ek1GOztFb0QzbU1JO0lBQ0U7RXBEOG1NTjtBQUNGOztBaUIxd01JO0VtQ3lJQTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VwRHFvTUo7O0VvRG5vTUk7SUFDRTtJQUNBO0kxQzFNSjtFVmkxTUY7O0VvRG5vTUk7O0kxQzlNRjtFVnMxTUY7O0VvRG5vTUk7SUFDRTtFcERzb01OO0FBQ0Y7O0FpQmx5TUk7RW1DeUlBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RXBENnBNSjs7RW9EM3BNSTtJQUNFO0lBQ0E7STFDMU1KO0VWeTJNRjs7RW9EM3BNSTs7STFDOU1GO0VWODJNRjs7RW9EM3BNSTtJQUNFO0VwRDhwTU47QUFDRjs7QWlCMXpNSTtFbUN5SUE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFcERxck1KOztFb0Ruck1JO0lBQ0U7SUFDQTtJMUMxTUo7RVZpNE1GOztFb0Ruck1JOztJMUM5TUY7RVZzNE1GOztFb0Ruck1JO0lBQ0U7RXBEc3JNTjtBQUNGOztBc0Q3NU1BO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFL0N3Ukk7RStDdFJKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQ2xCQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VoRGdSSTtFK0NyUUo7RUFDQTtBdERzNk1GOztBc0RwNk1FO0VBQVM7QXREdzZNWDs7QXNEdDZNRTtFQUNFO0VBQ0E7RUFDQTtBdER5Nk1KOztBc0R2Nk1JO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXREMDZNTjs7QXNEcjZNQTs7RUFDRTtBdER5Nk1GOztBc0R2Nk1FOztFQUNFO0VBQ0E7RUFDQTtBdEQyNk1KOztBc0R2Nk1BOztBQUNBOztFQUNFO0VBQ0E7RUFDQTtBdEQ0Nk1GOztBc0QxNk1FOztFQUNFO0VBQ0E7RUFDQTtBdEQ4Nk1KOztBc0QxNk1BOztBQUVBOztFQUNFO0F0RDg2TUY7O0FzRDU2TUU7O0VBQ0U7RUFDQTtFQUNBO0F0RGc3TUo7O0FzRDU2TUE7O0FBQ0E7O0VBQ0U7RUFDQTtFQUNBO0F0RGk3TUY7O0FzRC82TUU7O0VBQ0U7RUFDQTtFQUNBO0F0RG03TUo7O0FzRC82TUE7O0FBa0JBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFNUNqR0U7QVZvZ05KOztBd0R2aE5BO0VBRUU7RUFDQTtFakQ0Ukk7RWlEMVJKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0d4RDBoTkM7RXdEemhORDtFQUNBO0VBQ0E7RWpEbVJJO0VpRGpSSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VEekJBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWhEZ1JJO0VpRC9QSjtFQUNBO0VBQ0E7RUFDQTtFOUNoQkU7QVZvak5KOztBd0RoaU5FO0VBQ0U7RUFDQTtFQUNBO0F4RG1pTko7O0F3RGppTkk7O0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4RG9pTk47O0F3RDloTkU7O0VBQ0U7QXhEa2lOSjs7QXdEaGlOSTs7OztFQUVFO0F4RHFpTk47O0F3RGxpTkk7O0VBQ0U7RUFDQTtBeERzaU5OOztBd0RuaU5JOztFQUNFO0VBQ0E7QXhEdWlOTjs7QXdEbGlOQTs7QUFFRTs7RUFDRTtFQUNBO0VBQ0E7QXhEc2lOSjs7QXdEcGlOSTs7OztFQUVFO0F4RHlpTk47O0F3RHRpTkk7O0VBQ0U7RUFDQTtBeEQwaU5OOztBd0R2aU5JOztFQUNFO0VBQ0E7QXhEMmlOTjs7QXdEdGlOQTs7QUFHRTs7RUFDRTtBeER5aU5KOztBd0R2aU5JOzs7O0VBRUU7QXhENGlOTjs7QXdEemlOSTs7RUFDRTtFQUNBO0F4RDZpTk47O0F3RDFpTkk7O0VBQ0U7RUFDQTtBeEQ4aU5OOztBd0R6aU5FOztFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhENmlOSjs7QXdEemlOQTs7QUFFRTs7RUFDRTtFQUNBO0VBQ0E7QXhENmlOSjs7QXdEM2lOSTs7OztFQUVFO0F4RGdqTk47O0F3RDdpTkk7O0VBQ0U7RUFDQTtBeERpak5OOztBd0Q5aU5JOztFQUNFO0VBQ0E7QXhEa2pOTjs7QXdEN2lOQTs7QUFrQkE7RUFDRTtFQUNBO0VqRDJHSTtFaUR6R0o7RUFDQTtFQUNBO0U5QzVKRTtFQUNBO0FWNnJOSjs7QXdEL2hORTtFQUNFO0F4RGtpTko7O0F3RDloTkE7RUFDRTtFQUNBO0F4RGlpTkY7O0F5RHR0TkE7RUFDRTtBekR5dE5GOztBeUR0dE5BO0VBQ0U7QXpEeXRORjs7QXlEdHROQTtFQUNFO0VBQ0E7RUFDQTtBekR5dE5GOztBMEQvdU5FO0VBQ0U7RUFDQTtFQUNBO0ExRGt2Tko7O0F5RDN0TkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7VUFBQTtFaENsQkk7QXpCaXZOTjs7QXlCN3VOTTtFZ0NRTjtJaENQUTtFekJpdk5OO0FBQ0Y7O0F5RGp1TkE7OztFQUdFO0F6RG91TkY7O0F5RGp1TkE7O0VBRUU7QXpEb3VORjs7QXlEanVOQTs7RUFFRTtBekRvdU5GOztBeUQzdE5FO0VBQ0U7RUFDQTtFQUNBO0F6RDh0Tko7O0F5RDN0TkU7OztFQUdFO0VBQ0E7QXpEOHROSjs7QXlEM3RORTs7RUFFRTtFQUNBO0VoQzVERTtBekIyeE5OOztBeUJ2eE5NO0VnQ3FESjs7SWhDcERNO0V6QjR4Tk47QUFDRjs7QXlENXROQTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VoQ3RGSTtBekJxek5OOztBeUJqek5NO0VnQ2tFTjs7SWhDakVRO0V6QnN6Tk47QUFDRjs7QXlEbHVORTs7OztFQUVFO0VBQ0E7RUFDQTtFQUNBO0F6RHV1Tko7O0F5RHB1TkE7RUFDRTtBekR1dU5GOztBeURwdU5BO0VBQ0U7QXpEdXVORjs7QXlEbHVOQTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpEcXVORjs7QXlEbHVOQTs7Ozs7OztHekQydU5HOztBeURudU5IO0VBQ0U7QXpEc3VORjs7QXlEcHVOQTtFQUNFO0F6RHV1TkY7O0F5RC90TkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0F6RGl1TkY7O0F5RC90TkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RWhDeEtFO0F6QjA0Tk47O0F5QnQ0Tk07RWdDb0pKO0loQ25KTTtFekIwNE5OO0FBQ0Y7O0F5RHB1TkU7RUFDRTtBekR1dU5KOztBeUQ5dE5BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBekRpdU5GOztBeUQzdE5FOztFQUVFO0F6RDh0Tko7O0F5RDN0TkU7RUFDRTtBekQ4dE5KOztBeUQzdE5FO0VBQ0U7QXpEOHROSjs7QXlEeHVORTs7OztFQUVFO0F6RDZ1Tko7O0F5RDF1TkU7O0VBQ0U7QXpEOHVOSjs7QXlEM3VORTs7RUFDRTtBekQrdU5KOztBMkR6OE5BOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtVQUFBO0EzRDI4TkY7O0EyRHY4TkE7RUFDRTtJQUFLO0UzRDI4Tkw7QUFDRjs7QTJENzhOQTtFQUNFO0lBQUs7RTNEMjhOTDtBQUNGOztBMkR4OE5BO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtBM0R3OE5GOztBMkRyOE5BO0VBRUU7RUFDQTtFQUNBO0EzRHU4TkY7O0EyRDk3TkE7RUFDRTtJQUNFO0UzRGk4TkY7O0UyRC83TkE7SUFDRTtJQUNBO0UzRGs4TkY7QUFDRjs7QTJEejhOQTtFQUNFO0lBQ0U7RTNEaThORjs7RTJELzdOQTtJQUNFO0lBQ0E7RTNEazhORjtBQUNGOztBMkQ5N05BO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7QTNEODdORjs7QTJEMzdOQTtFQUNFO0VBQ0E7QTNEODdORjs7QTJEMTdORTtFQUNFOztJQUVFO0UzRDY3Tko7QUFDRjs7QTREN2dPQTs7Ozs7O0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1RG9oT0Y7O0FpQnY5Tkk7RTJDNUNGO0lBRUk7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJbkM1QkE7RXpCbWlPSjtBQUNGOztBeUJoaU9NO0VtQ1lKO0luQ1hNO0V6Qm9pT047QUFDRjs7QWlCOStOSTtFMkM1QkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1RDhnT047QUFDRjs7QWlCeC9OSTtFMkNwQkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1RGdoT047QUFDRjs7QWlCbGdPSTtFMkNaRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1RGtoT047QUFDRjs7QWlCOWdPSTtFMkNGRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFNURvaE9OO0FBQ0Y7O0FpQnpoT0k7RTJDT0U7O0lBRUU7RTVEc2hPTjtBQUNGOztBaUJoaU9JO0UyQ1lFOzs7SUFHRTtFNUR3aE9OO0FBQ0Y7O0FpQnJqT0k7RTJDL0JGO0lBaUVNO0lBQ0E7SUFDQTtFNUR3aE9OOztFNER0aE9NO0lBQ0U7RTVEeWhPUjs7RTREdGhPTTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBRUE7RTVEd2hPUjtBQUNGOztBaUI1ak9JO0UyQzVDRjtJQUVJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SW5DNUJBO0V6QndvT0o7QUFDRjs7QXlCcm9PTTtFbUNZSjtJbkNYTTtFekJ5b09OO0FBQ0Y7O0FpQm5sT0k7RTJDNUJFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFNURtbk9OO0FBQ0Y7O0FpQjdsT0k7RTJDcEJFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFNURxbk9OO0FBQ0Y7O0FpQnZtT0k7RTJDWkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFNUR1bk9OO0FBQ0Y7O0FpQm5uT0k7RTJDRkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTVEeW5PTjtBQUNGOztBaUI5bk9JO0UyQ09FOztJQUVFO0U1RDJuT047QUFDRjs7QWlCcm9PSTtFMkNZRTs7O0lBR0U7RTVENm5PTjtBQUNGOztBaUIxcE9JO0UyQy9CRjtJQWlFTTtJQUNBO0lBQ0E7RTVENm5PTjs7RTREM25PTTtJQUNFO0U1RDhuT1I7O0U0RDNuT007SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUVBO0U1RDZuT1I7QUFDRjs7QWlCanFPSTtFMkM1Q0Y7SUFFSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0luQzVCQTtFekI2dU9KO0FBQ0Y7O0F5QjF1T007RW1DWUo7SW5DWE07RXpCOHVPTjtBQUNGOztBaUJ4ck9JO0UyQzVCRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTVEd3RPTjtBQUNGOztBaUJsc09JO0UyQ3BCRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTVEMHRPTjtBQUNGOztBaUI1c09JO0UyQ1pFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTVENHRPTjtBQUNGOztBaUJ4dE9JO0UyQ0ZFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1RDh0T047QUFDRjs7QWlCbnVPSTtFMkNPRTs7SUFFRTtFNURndU9OO0FBQ0Y7O0FpQjF1T0k7RTJDWUU7OztJQUdFO0U1RGt1T047QUFDRjs7QWlCL3ZPSTtFMkMvQkY7SUFpRU07SUFDQTtJQUNBO0U1RGt1T047O0U0RGh1T007SUFDRTtFNURtdU9SOztFNERodU9NO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFFQTtFNURrdU9SO0FBQ0Y7O0FpQnR3T0k7RTJDNUNGO0lBRUk7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJbkM1QkE7RXpCazFPSjtBQUNGOztBeUIvME9NO0VtQ1lKO0luQ1hNO0V6Qm0xT047QUFDRjs7QWlCN3hPSTtFMkM1QkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1RDZ6T047QUFDRjs7QWlCdnlPSTtFMkNwQkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1RCt6T047QUFDRjs7QWlCanpPSTtFMkNaRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1RGkwT047QUFDRjs7QWlCN3pPSTtFMkNGRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFNURtME9OO0FBQ0Y7O0FpQngwT0k7RTJDT0U7O0lBRUU7RTVEcTBPTjtBQUNGOztBaUIvME9JO0UyQ1lFOzs7SUFHRTtFNUR1ME9OO0FBQ0Y7O0FpQnAyT0k7RTJDL0JGO0lBaUVNO0lBQ0E7SUFDQTtFNUR1ME9OOztFNERyME9NO0lBQ0U7RTVEdzBPUjs7RTREcjBPTTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBRUE7RTVEdTBPUjtBQUNGOztBaUIzMk9JO0UyQzVDRjtJQUVJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SW5DNUJBO0V6QnU3T0o7QUFDRjs7QXlCcDdPTTtFbUNZSjtJbkNYTTtFekJ3N09OO0FBQ0Y7O0FpQmw0T0k7RTJDNUJFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFNURrNk9OO0FBQ0Y7O0FpQjU0T0k7RTJDcEJFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFNURvNk9OO0FBQ0Y7O0FpQnQ1T0k7RTJDWkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFNURzNk9OO0FBQ0Y7O0FpQmw2T0k7RTJDRkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTVEdzZPTjtBQUNGOztBaUI3Nk9JO0UyQ09FOztJQUVFO0U1RDA2T047QUFDRjs7QWlCcDdPSTtFMkNZRTs7O0lBR0U7RTVENDZPTjtBQUNGOztBaUJ6OE9JO0UyQy9CRjtJQWlFTTtJQUNBO0lBQ0E7RTVENDZPTjs7RTREMTZPTTtJQUNFO0U1RDY2T1I7O0U0RDE2T007SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUVBO0U1RDQ2T1I7QUFDRjs7QTRENS9PRTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RW5DNUJBO0F6QjJoUE47O0F5QnZoUE07RW1DWUo7SW5DWE07RXpCMmhQTjtBQUNGOztBNERqZ1BNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNURvZ1BSOztBNERqZ1BNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNURvZ1BSOztBNERqZ1BNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVEb2dQUjs7QTREamdQTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNURvZ1BSOztBNERqZ1BNOztFQUVFO0E1RG9nUFI7O0E0RGpnUE07OztFQUdFO0E1RG9nUFI7O0E0RHorT0E7RVBwSEU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJEaW1QRjs7QXFEOWxQRTtFQUFTO0FyRGttUFg7O0FxRGptUEU7RUFBUztBckRxbVBYOztBNER2L09BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTVEMC9PRjs7QTREeC9PRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E1RDIvT0o7O0E0RHYvT0E7RUFDRTtFQUNBO0E1RDAvT0Y7O0E0RHYvT0E7RUFDRTtFQUNBO0VBQ0E7QTVEMC9PRjs7QTZEMW9QQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0Q2b1BGOztBNkQzb1BFO0VBQ0U7RUFDQTtBN0Q4b1BKOztBNkR6b1BBO0VBQ0U7QTdENG9QRjs7QTZEem9QQTtFQUNFO0E3RDRvUEY7O0E2RHpvUEE7RUFDRTtBN0Q0b1BGOztBNkR2b1BFO0VBQ0U7VUFBQTtBN0Qwb1BKOztBNkR0b1BBO0VBQ0U7SUFDRTtFN0R5b1BGO0FBQ0Y7O0E2RDVvUEE7RUFDRTtJQUNFO0U3RHlvUEY7QUFDRjs7QTZEdG9QQTtFQUNFO1VBQUE7RUFDQTtVQUFBO0VBQ0E7VUFBQTtBN0R5b1BGOztBNkR0b1BBO0VBQ0U7SUFDRTtZQUFBO0U3RHlvUEY7QUFDRjs7QTZENW9QQTtFQUNFO0lBQ0U7WUFBQTtFN0R5b1BGO0FBQ0Y7O0EwRHhyUEU7RUFDRTtFQUNBO0VBQ0E7QTFEMnJQSjs7QThEN3JQRTtFQUNFO0VBQ0E7QTlEZ3NQSjs7QThEbHNQRTtFQUNFO0VBQ0E7QTlEcXNQSjs7QThEdnNQRTtFQUNFO0VBQ0E7QTlEMHNQSjs7QThENXNQRTtFQUNFO0VBQ0E7QTlEK3NQSjs7QThEanRQRTtFQUNFO0VBQ0E7QTlEb3RQSjs7QThEdHRQRTtFQUNFO0VBQ0E7QTlEeXRQSjs7QThEM3RQRTtFQUNFO0VBQ0E7QTlEOHRQSjs7QThEaHVQRTtFQUNFO0VBQ0E7QTlEbXVQSjs7QStEdHVQRTtFQUNFO0VBQ0E7VUFBQTtBL0R5dVBKOztBK0R0dVBNOztFQUdFO0VBQ0E7VUFBQTtBL0R3dVBSOztBK0RqdlBFO0VBQ0U7RUFDQTtVQUFBO0EvRG92UEo7O0ErRGp2UE07O0VBR0U7RUFDQTtVQUFBO0EvRG12UFI7O0ErRDV2UEU7RUFDRTtFQUNBO1VBQUE7QS9EK3ZQSjs7QStENXZQTTs7RUFHRTtFQUNBO1VBQUE7QS9EOHZQUjs7QStEdndQRTtFQUNFO0VBQ0E7VUFBQTtBL0Qwd1BKOztBK0R2d1BNOztFQUdFO0VBQ0E7VUFBQTtBL0R5d1BSOztBK0RseFBFO0VBQ0U7RUFDQTtVQUFBO0EvRHF4UEo7O0ErRGx4UE07O0VBR0U7RUFDQTtVQUFBO0EvRG94UFI7O0ErRDd4UEU7RUFDRTtFQUNBO1VBQUE7QS9EZ3lQSjs7QStEN3hQTTs7RUFHRTtFQUNBO1VBQUE7QS9EK3hQUjs7QStEeHlQRTtFQUNFO0VBQ0E7VUFBQTtBL0QyeVBKOztBK0R4eVBNOztFQUdFO0VBQ0E7VUFBQTtBL0QweVBSOztBK0RuelBFO0VBQ0U7RUFDQTtVQUFBO0EvRHN6UEo7O0ErRG56UE07O0VBR0U7RUFDQTtVQUFBO0EvRHF6UFI7O0ErRDl5UEE7RUFDRTtFQUNBO1VBQUE7QS9EaXpQRjs7QStEOXlQSTs7RUFFRTtFQUNBO1VBQUE7QS9EaXpQTjs7QWdFMzBQQTtFQUNFO0VBRUE7QWhFNjBQRjs7QWlFaDFQQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO1VBQUE7RUFDQTtFQUNBO1VBQUE7QWpFbTFQRjs7QWlFajFQRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0V4Q0lFO0F6QmkxUE47O0F5QjcwUE07RXdDWko7SXhDYU07RXpCaTFQTjtBQUNGOztBaUVuMVBJOztFQUNFO0FqRXUxUE47O0FrRTEyUEE7RUFDRTtFQUNBO0FsRTYyUEY7O0FrRTMyUEU7RUFDRTtFQUNBO0VBQ0E7QWxFODJQSjs7QWtFMzJQRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxFODJQSjs7QWtFejJQRTtFQUNFO0FsRTQyUEo7O0FrRTcyUEU7RUFDRTtBbEVnM1BKOztBa0VqM1BFO0VBQ0U7QWxFbzNQSjs7QWtFcjNQRTtFQUNFO0FsRXczUEo7O0FtRTc0UEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRWc1UEY7O0FtRTc0UEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRWc1UEY7O0FtRXg0UEk7RUFDRTtFQUFBO0VBQ0E7RUFDQTtBbkUyNFBOOztBbUV4NFBJO0VBQ0U7RUFBQTtFQUNBO0VBQ0E7QW5FMjRQTjs7QWlCNTJQSTtFa0R4Q0E7SUFDRTtJQUFBO0lBQ0E7SUFDQTtFbkV3NVBKOztFbUVyNVBFO0lBQ0U7SUFBQTtJQUNBO0lBQ0E7RW5FdzVQSjtBQUNGOztBaUIxM1BJO0VrRHhDQTtJQUNFO0lBQUE7SUFDQTtJQUNBO0VuRXM2UEo7O0VtRW42UEU7SUFDRTtJQUFBO0lBQ0E7SUFDQTtFbkVzNlBKO0FBQ0Y7O0FpQng0UEk7RWtEeENBO0lBQ0U7SUFBQTtJQUNBO0lBQ0E7RW5FbzdQSjs7RW1FajdQRTtJQUNFO0lBQUE7SUFDQTtJQUNBO0VuRW83UEo7QUFDRjs7QWlCdDVQSTtFa0R4Q0E7SUFDRTtJQUFBO0lBQ0E7SUFDQTtFbkVrOFBKOztFbUUvN1BFO0lBQ0U7SUFBQTtJQUNBO0lBQ0E7RW5FazhQSjtBQUNGOztBaUJwNlBJO0VrRHhDQTtJQUNFO0lBQUE7SUFDQTtJQUNBO0VuRWc5UEo7O0VtRTc4UEU7SUFDRTtJQUFBO0lBQ0E7SUFDQTtFbkVnOVBKO0FBQ0Y7O0FvRWgvUEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBcEVtL1BGOztBb0VoL1BBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXBFbS9QRjs7QXFFMy9QQTs7RUNJRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0RTQvUEY7O0FzRXovUEU7O0VBQ0U7QXRFNi9QSjs7QXVFM2dRRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2RThnUUo7O0F3RXRoUUE7RUNBRTtFQUNBO0VBQ0E7QXpFMGhRRjs7QTBFaGlRQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUVtaVFGOztBMkV2K1BRO0VBT0k7QTNFbytQWjs7QTJFMytQUTtFQU9JO0EzRXcrUFo7O0EyRS8rUFE7RUFPSTtBM0U0K1BaOztBMkVuL1BRO0VBT0k7QTNFZy9QWjs7QTJFdi9QUTtFQU9JO0EzRW8vUFo7O0EyRTMvUFE7RUFPSTtBM0V3L1BaOztBMkUvL1BRO0VBT0k7QTNFNC9QWjs7QTJFbmdRUTtFQU9JO0EzRWdnUVo7O0EyRXZnUVE7RUFPSTtBM0VvZ1FaOztBMkUzZ1FRO0VBT0k7S0FBQTtBM0V3Z1FaOztBMkUvZ1FRO0VBT0k7S0FBQTtBM0U0Z1FaOztBMkVuaFFRO0VBT0k7S0FBQTtBM0VnaFFaOztBMkV2aFFRO0VBT0k7S0FBQTtBM0VvaFFaOztBMkUzaFFRO0VBT0k7S0FBQTtBM0V3aFFaOztBMkUvaFFRO0VBT0k7QTNFNGhRWjs7QTJFbmlRUTtFQU9JO0EzRWdpUVo7O0EyRXZpUVE7RUFPSTtBM0VvaVFaOztBMkUzaVFRO0VBT0k7QTNFd2lRWjs7QTJFL2lRUTtFQU9JO0EzRTRpUVo7O0EyRW5qUVE7RUFPSTtBM0VnalFaOztBMkV2alFRO0VBT0k7QTNFb2pRWjs7QTJFM2pRUTtFQU9JO0EzRXdqUVo7O0EyRS9qUVE7RUFPSTtBM0U0alFaOztBMkVua1FRO0VBT0k7QTNFZ2tRWjs7QTJFdmtRUTtFQU9JO0EzRW9rUVo7O0EyRTNrUVE7RUFPSTtBM0V3a1FaOztBMkUva1FRO0VBT0k7QTNFNGtRWjs7QTJFbmxRUTtFQU9JO0EzRWdsUVo7O0EyRXZsUVE7RUFPSTtBM0VvbFFaOztBMkUzbFFRO0VBT0k7QTNFd2xRWjs7QTJFL2xRUTtFQU9JO0EzRTRsUVo7O0EyRW5tUVE7RUFPSTtBM0VnbVFaOztBMkV2bVFRO0VBT0k7QTNFb21RWjs7QTJFM21RUTtFQU9JO0EzRXdtUVo7O0EyRS9tUVE7RUFPSTtBM0U0bVFaOztBMkVublFRO0VBT0k7QTNFZ25RWjs7QTJFdm5RUTtFQU9JO0EzRW9uUVo7O0EyRTNuUVE7RUFPSTtBM0V3blFaOztBMkUvblFRO0VBT0k7QTNFNG5RWjs7QTJFbm9RUTtFQU9JO0EzRWdvUVo7O0EyRXZvUVE7RUFPSTtBM0Vvb1FaOztBMkUzb1FRO0VBT0k7QTNFd29RWjs7QTJFL29RUTtFQU9JO0EzRTRvUVo7O0EyRW5wUVE7RUFPSTtBM0VncFFaOztBMkV2cFFRO0VBT0k7QTNFb3BRWjs7QTJFM3BRUTtFQU9JO0EzRXdwUVo7O0EyRXpxUVE7RUFDRTtBM0U0cVFWOztBMkU3cVFRO0VBQ0U7QTNFZ3JRVjs7QTJFanJRUTtFQUNFO0EzRW9yUVY7O0EyRXJyUVE7RUFDRTtBM0V3clFWOztBMkV6clFRO0VBQ0U7QTNFNHJRVjs7QTJFN3JRUTtFQUNFO0EzRWdzUVY7O0EyRWpzUVE7RUFDRTtBM0Vvc1FWOztBMkVyc1FRO0VBQ0U7QTNFd3NRVjs7QTJFL3JRUTtFQU9JO0EzRTRyUVo7O0EyRW5zUVE7RUFPSTtBM0Vnc1FaOztBMkV2c1FRO0VBT0k7QTNFb3NRWjs7QTJFM3NRUTtFQU9JO0EzRXdzUVo7O0EyRS9zUVE7RUFPSTtFQUFBO0EzRTRzUVo7O0EyRW50UVE7RUFPSTtBM0VndFFaOztBMkV2dFFRO0VBT0k7QTNFb3RRWjs7QTJFM3RRUTtFQU9JO0EzRXd0UVo7O0EyRS90UVE7RUFPSTtBM0U0dFFaOztBMkVudVFRO0VBT0k7QTNFZ3VRWjs7QTJFdnVRUTtFQU9JO0EzRW91UVo7O0EyRTN1UVE7RUFPSTtBM0V3dVFaOztBMkUvdVFRO0VBT0k7QTNFNHVRWjs7QTJFbnZRUTtFQU9JO0EzRWd2UVo7O0EyRXZ2UVE7RUFPSTtBM0VvdlFaOztBMkUzdlFRO0VBT0k7QTNFd3ZRWjs7QTJFL3ZRUTtFQU9JO0EzRTR2UVo7O0EyRW53UVE7RUFPSTtBM0Vnd1FaOztBMkV2d1FRO0VBT0k7QTNFb3dRWjs7QTJFM3dRUTtFQU9JO0EzRXd3UVo7O0EyRS93UVE7RUFPSTtBM0U0d1FaOztBMkVueFFRO0VBT0k7QTNFZ3hRWjs7QTJFdnhRUTtFQU9JO0EzRW94UVo7O0EyRTN4UVE7RUFPSTtBM0V3eFFaOztBMkUveFFRO0VBT0k7QTNFNHhRWjs7QTJFbnlRUTtFQU9JO0EzRWd5UVo7O0EyRXZ5UVE7RUFPSTtBM0VveVFaOztBMkUzeVFRO0VBT0k7QTNFd3lRWjs7QTJFL3lRUTtFQU9JO0EzRTR5UVo7O0EyRW56UVE7RUFPSTtBM0VnelFaOztBMkV2elFRO0VBSVE7RUFHSjtBM0VxelFaOztBMkU1elFRO0VBSVE7RUFHSjtBM0UwelFaOztBMkVqMFFRO0VBSVE7RUFHSjtBM0UrelFaOztBMkV0MFFRO0VBSVE7RUFHSjtBM0VvMFFaOztBMkUzMFFRO0VBSVE7RUFHSjtBM0V5MFFaOztBMkVoMVFRO0VBSVE7RUFHSjtBM0U4MFFaOztBMkVyMVFRO0VBSVE7RUFHSjtBM0VtMVFaOztBMkUxMVFRO0VBSVE7RUFHSjtBM0V3MVFaOztBMkUvMVFRO0VBSVE7RUFHSjtBM0U2MVFaOztBMkVwMlFRO0VBSVE7RUFHSjtBM0VrMlFaOztBMkV6MlFRO0VBT0k7QTNFczJRWjs7QTJFNzJRUTtFQU9JO0EzRTAyUVo7O0EyRWozUVE7RUFPSTtBM0U4MlFaOztBMkVyM1FRO0VBT0k7QTNFazNRWjs7QTJFejNRUTtFQU9JO0EzRXMzUVo7O0EyRTczUVE7RUFPSTtBM0UwM1FaOztBMkVqNFFRO0VBT0k7QTNFODNRWjs7QTJFcjRRUTtFQU9JO0EzRWs0UVo7O0EyRXo0UVE7RUFPSTtBM0VzNFFaOztBMkU3NFFRO0VBT0k7QTNFMDRRWjs7QTJFajVRUTtFQU9JO0EzRTg0UVo7O0EyRXI1UVE7RUFPSTtBM0VrNVFaOztBMkV6NVFRO0VBT0k7QTNFczVRWjs7QTJFdjZRUTtFQUNFO0EzRTA2UVY7O0EyRTM2UVE7RUFDRTtBM0U4NlFWOztBMkUvNlFRO0VBQ0U7QTNFazdRVjs7QTJFbjdRUTtFQUNFO0EzRXM3UVY7O0EyRXY3UVE7RUFDRTtBM0UwN1FWOztBMkVqN1FRO0VBT0k7QTNFODZRWjs7QTJFcjdRUTtFQU9JO0EzRWs3UVo7O0EyRXo3UVE7RUFPSTtBM0VzN1FaOztBMkU3N1FRO0VBT0k7QTNFMDdRWjs7QTJFajhRUTtFQU9JO0EzRTg3UVo7O0EyRXI4UVE7RUFPSTtBM0VrOFFaOztBMkV6OFFRO0VBT0k7QTNFczhRWjs7QTJFNzhRUTtFQU9JO0EzRTA4UVo7O0EyRWo5UVE7RUFPSTtBM0U4OFFaOztBMkVyOVFRO0VBT0k7QTNFazlRWjs7QTJFejlRUTtFQU9JO0EzRXM5UVo7O0EyRTc5UVE7RUFPSTtBM0UwOVFaOztBMkVqK1FRO0VBT0k7QTNFODlRWjs7QTJFcitRUTtFQU9JO0EzRWsrUVo7O0EyRXorUVE7RUFPSTtBM0VzK1FaOztBMkU3K1FRO0VBT0k7QTNFMCtRWjs7QTJFai9RUTtFQU9JO0EzRTgrUVo7O0EyRXIvUVE7RUFPSTtBM0VrL1FaOztBMkV6L1FRO0VBT0k7QTNFcy9RWjs7QTJFNy9RUTtFQU9JO0EzRTAvUVo7O0EyRWpnUlE7RUFPSTtBM0U4L1FaOztBMkVyZ1JRO0VBT0k7QTNFa2dSWjs7QTJFemdSUTtFQU9JO0EzRXNnUlo7O0EyRTdnUlE7RUFPSTtBM0UwZ1JaOztBMkVqaFJRO0VBT0k7QTNFOGdSWjs7QTJFcmhSUTtFQU9JO0EzRWtoUlo7O0EyRXpoUlE7RUFPSTtBM0VzaFJaOztBMkU3aFJRO0VBT0k7QTNFMGhSWjs7QTJFamlSUTtFQU9JO0EzRThoUlo7O0EyRXJpUlE7RUFPSTtBM0VraVJaOztBMkV6aVJRO0VBT0k7QTNFc2lSWjs7QTJFN2lSUTtFQU9JO0EzRTBpUlo7O0EyRWpqUlE7RUFPSTtBM0U4aVJaOztBMkVyalJRO0VBT0k7QTNFa2pSWjs7QTJFempSUTtFQU9JO0EzRXNqUlo7O0EyRTdqUlE7RUFPSTtBM0UwalJaOztBMkVqa1JRO0VBT0k7QTNFOGpSWjs7QTJFcmtSUTtFQU9JO0EzRWtrUlo7O0EyRXprUlE7RUFPSTtBM0Vza1JaOztBMkU3a1JRO0VBT0k7QTNFMGtSWjs7QTJFamxSUTtFQU9JO0EzRThrUlo7O0EyRXJsUlE7RUFPSTtBM0VrbFJaOztBMkV6bFJRO0VBT0k7QTNFc2xSWjs7QTJFN2xSUTtFQU9JO0EzRTBsUlo7O0EyRWptUlE7RUFPSTtBM0U4bFJaOztBMkVybVJRO0VBT0k7QTNFa21SWjs7QTJFem1SUTtFQU9JO0EzRXNtUlo7O0EyRTdtUlE7RUFPSTtBM0UwbVJaOztBMkVqblJRO0VBT0k7QTNFOG1SWjs7QTJFcm5SUTtFQU9JO0EzRWtuUlo7O0EyRXpuUlE7RUFPSTtBM0VzblJaOztBMkU3blJRO0VBT0k7QTNFMG5SWjs7QTJFam9SUTtFQU9JO0EzRThuUlo7O0EyRXJvUlE7RUFPSTtBM0Vrb1JaOztBMkV6b1JRO0VBT0k7QTNFc29SWjs7QTJFN29SUTtFQU9JO0EzRTBvUlo7O0EyRWpwUlE7RUFPSTtBM0U4b1JaOztBMkVycFJRO0VBT0k7QTNFa3BSWjs7QTJFenBSUTtFQU9JO0EzRXNwUlo7O0EyRTdwUlE7RUFPSTtBM0UwcFJaOztBMkVqcVJRO0VBT0k7QTNFOHBSWjs7QTJFcnFSUTtFQU9JO0EzRWtxUlo7O0EyRXpxUlE7RUFPSTtBM0VzcVJaOztBMkU3cVJRO0VBT0k7QTNFMHFSWjs7QTJFanJSUTtFQU9JO0EzRThxUlo7O0EyRXJyUlE7RUFPSTtBM0VrclJaOztBMkV6clJRO0VBT0k7RUFBQTtBM0V1clJaOztBMkU5clJRO0VBT0k7RUFBQTtBM0U0clJaOztBMkVuc1JRO0VBT0k7RUFBQTtBM0Vpc1JaOztBMkV4c1JRO0VBT0k7RUFBQTtBM0Vzc1JaOztBMkU3c1JRO0VBT0k7RUFBQTtBM0Uyc1JaOztBMkVsdFJRO0VBT0k7RUFBQTtBM0VndFJaOztBMkV2dFJRO0VBT0k7RUFBQTtBM0VxdFJaOztBMkU1dFJRO0VBT0k7RUFBQTtBM0UwdFJaOztBMkVqdVJRO0VBT0k7RUFBQTtBM0UrdFJaOztBMkV0dVJRO0VBT0k7RUFBQTtBM0VvdVJaOztBMkUzdVJRO0VBT0k7RUFBQTtBM0V5dVJaOztBMkVodlJRO0VBT0k7RUFBQTtBM0U4dVJaOztBMkVydlJRO0VBT0k7RUFBQTtBM0VtdlJaOztBMkUxdlJRO0VBT0k7RUFBQTtBM0V3dlJaOztBMkUvdlJRO0VBT0k7QTNFNHZSWjs7QTJFbndSUTtFQU9JO0EzRWd3Ulo7O0EyRXZ3UlE7RUFPSTtBM0Vvd1JaOztBMkUzd1JRO0VBT0k7QTNFd3dSWjs7QTJFL3dSUTtFQU9JO0EzRTR3Ulo7O0EyRW54UlE7RUFPSTtBM0VneFJaOztBMkV2eFJRO0VBT0k7QTNFb3hSWjs7QTJFM3hSUTtFQU9JO0EzRXd4Ulo7O0EyRS94UlE7RUFPSTtBM0U0eFJaOztBMkVueVJRO0VBT0k7QTNFZ3lSWjs7QTJFdnlSUTtFQU9JO0EzRW95Ulo7O0EyRTN5UlE7RUFPSTtBM0V3eVJaOztBMkUveVJRO0VBT0k7QTNFNHlSWjs7QTJFbnpSUTtFQU9JO0EzRWd6Ulo7O0EyRXZ6UlE7RUFPSTtBM0VvelJaOztBMkUzelJRO0VBT0k7QTNFd3pSWjs7QTJFL3pSUTtFQU9JO0EzRTR6Ulo7O0EyRW4wUlE7RUFPSTtBM0VnMFJaOztBMkV2MFJRO0VBT0k7QTNFbzBSWjs7QTJFMzBSUTtFQU9JO0EzRXcwUlo7O0EyRS8wUlE7RUFPSTtBM0U0MFJaOztBMkVuMVJRO0VBT0k7QTNFZzFSWjs7QTJFdjFSUTtFQU9JO0EzRW8xUlo7O0EyRTMxUlE7RUFPSTtBM0V3MVJaOztBMkUvMVJRO0VBT0k7QTNFNDFSWjs7QTJFbjJSUTtFQU9JO0EzRWcyUlo7O0EyRXYyUlE7RUFPSTtBM0VvMlJaOztBMkUzMlJRO0VBT0k7QTNFdzJSWjs7QTJFLzJSUTtFQU9JO0EzRTQyUlo7O0EyRW4zUlE7RUFPSTtBM0VnM1JaOztBMkV2M1JRO0VBT0k7QTNFbzNSWjs7QTJFMzNSUTtFQU9JO0EzRXczUlo7O0EyRS8zUlE7RUFPSTtBM0U0M1JaOztBMkVuNFJRO0VBT0k7QTNFZzRSWjs7QTJFdjRSUTtFQU9JO0VBQUE7QTNFcTRSWjs7QTJFNTRSUTtFQU9JO0VBQUE7QTNFMDRSWjs7QTJFajVSUTtFQU9JO0VBQUE7QTNFKzRSWjs7QTJFdDVSUTtFQU9JO0VBQUE7QTNFbzVSWjs7QTJFMzVSUTtFQU9JO0VBQUE7QTNFeTVSWjs7QTJFaDZSUTtFQU9JO0VBQUE7QTNFODVSWjs7QTJFcjZSUTtFQU9JO0VBQUE7QTNFbTZSWjs7QTJFMTZSUTtFQU9JO0VBQUE7QTNFdzZSWjs7QTJFLzZSUTtFQU9JO0VBQUE7QTNFNjZSWjs7QTJFcDdSUTtFQU9JO0VBQUE7QTNFazdSWjs7QTJFejdSUTtFQU9JO0VBQUE7QTNFdTdSWjs7QTJFOTdSUTtFQU9JO0VBQUE7QTNFNDdSWjs7QTJFbjhSUTtFQU9JO0EzRWc4Ulo7O0EyRXY4UlE7RUFPSTtBM0VvOFJaOztBMkUzOFJRO0VBT0k7QTNFdzhSWjs7QTJFLzhSUTtFQU9JO0EzRTQ4Ulo7O0EyRW45UlE7RUFPSTtBM0VnOVJaOztBMkV2OVJRO0VBT0k7QTNFbzlSWjs7QTJFMzlSUTtFQU9JO0EzRXc5Ulo7O0EyRS85UlE7RUFPSTtBM0U0OVJaOztBMkVuK1JRO0VBT0k7QTNFZytSWjs7QTJFditSUTtFQU9JO0EzRW8rUlo7O0EyRTMrUlE7RUFPSTtBM0V3K1JaOztBMkUvK1JRO0VBT0k7QTNFNCtSWjs7QTJFbi9SUTtFQU9JO0EzRWcvUlo7O0EyRXYvUlE7RUFPSTtBM0VvL1JaOztBMkUzL1JRO0VBT0k7QTNFdy9SWjs7QTJFLy9SUTtFQU9JO0EzRTQvUlo7O0EyRW5nU1E7RUFPSTtBM0VnZ1NaOztBMkV2Z1NRO0VBT0k7QTNFb2dTWjs7QTJFM2dTUTtFQU9JO0EzRXdnU1o7O0EyRS9nU1E7RUFPSTtBM0U0Z1NaOztBMkVuaFNRO0VBT0k7QTNFZ2hTWjs7QTJFdmhTUTtFQU9JO0EzRW9oU1o7O0EyRTNoU1E7RUFPSTtBM0V3aFNaOztBMkUvaFNRO0VBT0k7QTNFNGhTWjs7QTJFbmlTUTtFQU9JO0EzRWdpU1o7O0EyRXZpU1E7RUFPSTtBM0VvaVNaOztBMkUzaVNRO0VBT0k7QTNFd2lTWjs7QTJFL2lTUTtFQU9JO0EzRTRpU1o7O0EyRW5qU1E7RUFPSTtBM0VnalNaOztBMkV2alNRO0VBT0k7QTNFb2pTWjs7QTJFM2pTUTtFQU9JO0EzRXdqU1o7O0EyRS9qU1E7RUFPSTtBM0U0alNaOztBMkVua1NRO0VBT0k7QTNFZ2tTWjs7QTJFdmtTUTtFQU9JO0EzRW9rU1o7O0EyRTNrU1E7RUFPSTtBM0V3a1NaOztBMkUva1NRO0VBT0k7QTNFNGtTWjs7QTJFbmxTUTtFQU9JO09BQUE7QTNFZ2xTWjs7QTJFdmxTUTtFQU9JO09BQUE7QTNFb2xTWjs7QTJFM2xTUTtFQU9JO09BQUE7QTNFd2xTWjs7QTJFL2xTUTtFQU9JO09BQUE7QTNFNGxTWjs7QTJFbm1TUTtFQU9JO09BQUE7QTNFZ21TWjs7QTJFdm1TUTtFQU9JO09BQUE7QTNFb21TWjs7QTJFM21TUTtFQU9JO0EzRXdtU1o7O0EyRS9tU1E7RUFPSTtBM0U0bVNaOztBMkVublNRO0VBT0k7QTNFZ25TWjs7QTJFdm5TUTtFQU9JO0EzRW9uU1o7O0EyRTNuU1E7RUFPSTtBM0V3blNaOztBMkUvblNRO0VBT0k7QTNFNG5TWjs7QTJFbm9TUTtFQU9JO0EzRWdvU1o7O0EyRXZvU1E7RUFPSTtBM0Vvb1NaOztBMkUzb1NRO0VBT0k7QTNFd29TWjs7QTJFL29TUTtFQU9JO0EzRTRvU1o7O0EyRW5wU1E7RUFPSTtBM0VncFNaOztBMkV2cFNRO0VBT0k7QTNFb3BTWjs7QTJFM3BTUTtFQU9JO0EzRXdwU1o7O0EyRS9wU1E7RUFPSTtBM0U0cFNaOztBMkVucVNRO0VBT0k7QTNFZ3FTWjs7QTJFdnFTUTtFQU9JO0EzRW9xU1o7O0EyRTNxU1E7RUFPSTtBM0V3cVNaOztBMkUvcVNRO0VBT0k7QTNFNHFTWjs7QTJFbnJTUTtFQU9JO0EzRWdyU1o7O0EyRXZyU1E7RUFPSTtBM0VvclNaOztBMkUzclNRO0VBT0k7QTNFd3JTWjs7QTJFL3JTUTtFQU9JO0EzRTRyU1o7O0EyRW5zU1E7RUFPSTtBM0Vnc1NaOztBMkV2c1NRO0VBT0k7QTNFb3NTWjs7QTJFM3NTUTtFQU9JO0EzRXdzU1o7O0EyRS9zU1E7RUFPSTtBM0U0c1NaOztBMkVudFNRO0VBT0k7QTNFZ3RTWjs7QTJFdnRTUTtFQU9JO0EzRW90U1o7O0EyRTN0U1E7RUFPSTtBM0V3dFNaOztBMkUvdFNRO0VBT0k7QTNFNHRTWjs7QTJFbnVTUTtFQU9JO0EzRWd1U1o7O0EyRXJ2U1E7O0FBY0E7RUFPSTtFQUFBO0EzRXV1U1o7O0EyRXB0U1E7O0FBMUJBO0VBSVE7RUFHSjtBM0U4dVNaOztBMkVydlNRO0VBSVE7RUFHSjtBM0VtdlNaOztBMkUxdlNRO0VBSVE7RUFHSjtBM0V3dlNaOztBMkUvdlNRO0VBSVE7RUFHSjtBM0U2dlNaOztBMkVwd1NRO0VBSVE7RUFHSjtBM0Vrd1NaOztBMkV6d1NRO0VBSVE7RUFHSjtBM0V1d1NaOztBMkU5d1NRO0VBSVE7RUFHSjtBM0U0d1NaOztBMkVueFNRO0VBSVE7RUFHSjtBM0VpeFNaOztBMkV4eFNRO0VBSVE7RUFHSjtBM0VzeFNaOztBMkU3eFNRO0VBSVE7RUFHSjtBM0UyeFNaOztBMkVseVNRO0VBSVE7RUFHSjtBM0VneVNaOztBMkV2eVNRO0VBSVE7RUFHSjtBM0VxeVNaOztBMkU1eVNRO0VBSVE7RUFHSjtBM0UweVNaOztBMkVqelNRO0VBSVE7RUFHSjtBM0UreVNaOztBMkV0elNRO0VBSVE7RUFHSjtBM0VvelNaOztBMkUzelNRO0VBSVE7RUFHSjtBM0V5elNaOztBMkVoMFNRO0VBSVE7RUFHSjtBM0U4elNaOztBMkVyMFNRO0VBSVE7RUFHSjtBM0VtMFNaOztBMkVwMVNRO0VBQ0U7QTNFdTFTVjs7QTJFeDFTUTtFQUNFO0EzRTIxU1Y7O0EyRTUxU1E7RUFDRTtBM0UrMVNWOztBMkVoMlNRO0VBQ0U7QTNFbTJTVjs7QTJFMTFTUTtFQU9JO0EzRXUxU1o7O0EyRTkxU1E7RUFPSTtBM0UyMVNaOztBMkVsMlNRO0VBT0k7QTNFKzFTWjs7QTJFdDJTUTtFQU9JO0EzRW0yU1o7O0EyRTEyU1E7RUFPSTtBM0V1MlNaOztBMkU5MlNRO0VBT0k7QTNFMjJTWjs7QTJFbDNTUTtFQU9JO0EzRSsyU1o7O0EyRXQzU1E7RUFPSTtBM0VtM1NaOztBMkVwNFNRO0VBQ0U7QTNFdTRTVjs7QTJFbjRTVTtFQUNFO0EzRXM0U1o7O0EyRTU0U1E7RUFDRTtBM0UrNFNWOztBMkUzNFNVO0VBQ0U7QTNFODRTWjs7QTJFcDVTUTtFQUNFO0EzRXU1U1Y7O0EyRW41U1U7RUFDRTtBM0VzNVNaOztBMkU1NVNRO0VBQ0U7QTNFKzVTVjs7QTJFMzVTVTtFQUNFO0EzRTg1U1o7O0EyRXA2U1E7RUFDRTtBM0V1NlNWOztBMkVuNlNVO0VBQ0U7QTNFczZTWjs7QTJFbDZTUTtFQU9JO0EzRSs1U1o7O0EyRTE1U1U7RUFPSTtBM0V1NVNkOztBMkUxNlNRO0VBT0k7QTNFdTZTWjs7QTJFbDZTVTtFQU9JO0EzRSs1U2Q7O0EyRWw3U1E7RUFPSTtBM0UrNlNaOztBMkUxNlNVO0VBT0k7QTNFdTZTZDs7QTJFMTdTUTtFQUlRO0VBR0o7VUFBQTtBM0V3N1NaOztBMkUvN1NRO0VBSVE7RUFHSjtVQUFBO0EzRTY3U1o7O0EyRXA4U1E7RUFJUTtFQUdKO1VBQUE7QTNFazhTWjs7QTJFejhTUTtFQUlRO0VBR0o7VUFBQTtBM0V1OFNaOztBMkU5OFNRO0VBSVE7RUFHSjtVQUFBO0EzRTQ4U1o7O0EyRW45U1E7RUFJUTtFQUdKO1VBQUE7QTNFaTlTWjs7QTJFeDlTUTtFQUlRO0VBR0o7VUFBQTtBM0VzOVNaOztBMkU3OVNRO0VBSVE7RUFHSjtVQUFBO0EzRTI5U1o7O0EyRWwrU1E7RUFJUTtFQUdKO1VBQUE7QTNFZytTWjs7QTJFai9TUTtFQUNFO0EzRW8vU1Y7O0EyRWgvU1U7RUFDRTtBM0VtL1NaOztBMkV6L1NRO0VBQ0U7QTNFNC9TVjs7QTJFeC9TVTtFQUNFO0EzRTIvU1o7O0EyRWpnVFE7RUFDRTtBM0VvZ1RWOztBMkVoZ1RVO0VBQ0U7QTNFbWdUWjs7QTJFemdUUTtFQUNFO0EzRTRnVFY7O0EyRXhnVFU7RUFDRTtBM0UyZ1RaOztBMkVqaFRRO0VBQ0U7QTNFb2hUVjs7QTJFaGhUVTtFQUNFO0EzRW1oVFo7O0EyRXpoVFE7RUFDRTtBM0U0aFRWOztBMkV4aFRVO0VBQ0U7QTNFMmhUWjs7QTJFdmhUUTtFQUlRO0VBR0o7QTNFcWhUWjs7QTJFNWhUUTtFQUlRO0VBR0o7QTNFMGhUWjs7QTJFamlUUTtFQUlRO0VBR0o7QTNFK2hUWjs7QTJFdGlUUTtFQUlRO0VBR0o7QTNFb2lUWjs7QTJFM2lUUTtFQUlRO0VBR0o7QTNFeWlUWjs7QTJFaGpUUTtFQUlRO0VBR0o7QTNFOGlUWjs7QTJFcmpUUTtFQUlRO0VBR0o7QTNFbWpUWjs7QTJFMWpUUTtFQUlRO0VBR0o7QTNFd2pUWjs7QTJFL2pUUTtFQUlRO0VBR0o7QTNFNmpUWjs7QTJFcGtUUTtFQUlRO0VBR0o7QTNFa2tUWjs7QTJFemtUUTtFQUlRO0VBR0o7QTNFdWtUWjs7QTJFOWtUUTtFQUlRO0VBR0o7QTNFNGtUWjs7QTJFbmxUUTtFQUlRO0VBR0o7QTNFaWxUWjs7QTJFeGxUUTtFQUlRO0VBR0o7QTNFc2xUWjs7QTJFdm1UUTtFQUNFO0EzRTBtVFY7O0EyRTNtVFE7RUFDRTtBM0U4bVRWOztBMkUvbVRRO0VBQ0U7QTNFa25UVjs7QTJFbm5UUTtFQUNFO0EzRXNuVFY7O0EyRXZuVFE7RUFDRTtBM0UwblRWOztBMkVqblRRO0VBT0k7QTNFOG1UWjs7QTJFcm5UUTtFQU9JO0EzRWtuVFo7O0EyRXpuVFE7RUFPSTtBM0VzblRaOztBMkU3blRRO0VBT0k7QTNFMG5UWjs7QTJFam9UUTtFQU9JO0EzRThuVFo7O0EyRXJvVFE7RUFPSTtBM0Vrb1RaOztBMkV6b1RRO0VBT0k7QTNFc29UWjs7QTJFN29UUTtFQU9JO0EzRTBvVFo7O0EyRWpwVFE7RUFPSTtBM0U4b1RaOztBMkVycFRRO0VBT0k7S0FBQTtVQUFBO0EzRWtwVFo7O0EyRXpwVFE7RUFPSTtLQUFBO01BQUE7VUFBQTtBM0VzcFRaOztBMkU3cFRRO0VBT0k7S0FBQTtNQUFBO1VBQUE7QTNFMHBUWjs7QTJFanFUUTtFQU9JO0EzRThwVFo7O0EyRXJxVFE7RUFPSTtBM0VrcVRaOztBMkV6cVRRO0VBT0k7QTNFc3FUWjs7QTJFN3FUUTtFQU9JO0EzRTBxVFo7O0EyRWpyVFE7RUFPSTtBM0U4cVRaOztBMkVyclRRO0VBT0k7QTNFa3JUWjs7QTJFenJUUTtFQU9JO0EzRXNyVFo7O0EyRTdyVFE7RUFPSTtBM0UwclRaOztBMkVqc1RRO0VBT0k7QTNFOHJUWjs7QTJFcnNUUTtFQU9JO0EzRWtzVFo7O0EyRXpzVFE7RUFPSTtBM0Vzc1RaOztBMkU3c1RRO0VBT0k7RUFBQTtBM0Uyc1RaOztBMkVsdFRRO0VBT0k7RUFBQTtBM0VndFRaOztBMkV2dFRRO0VBT0k7RUFBQTtBM0VxdFRaOztBMkU1dFRRO0VBT0k7RUFBQTtBM0UwdFRaOztBMkVqdVRRO0VBT0k7RUFBQTtBM0UrdFRaOztBMkV0dVRRO0VBT0k7RUFBQTtBM0VvdVRaOztBMkUzdVRRO0VBT0k7RUFBQTtBM0V5dVRaOztBMkVodlRRO0VBT0k7RUFBQTtBM0U4dVRaOztBMkVydlRRO0VBT0k7RUFBQTtBM0VtdlRaOztBMkUxdlRRO0VBT0k7RUFBQTtBM0V3dlRaOztBMkUvdlRRO0VBT0k7RUFBQTtBM0U2dlRaOztBMkVwd1RRO0VBT0k7RUFBQTtBM0Vrd1RaOztBMkV6d1RRO0VBT0k7RUFBQTtBM0V1d1RaOztBMkU5d1RRO0VBT0k7RUFBQTtBM0U0d1RaOztBMkVueFRRO0VBT0k7RUFBQTtBM0VpeFRaOztBMkV4eFRRO0VBT0k7RUFBQTtBM0VzeFRaOztBMkU3eFRRO0VBT0k7RUFBQTtBM0UyeFRaOztBMkVseVRRO0VBT0k7RUFBQTtBM0VneVRaOztBMkV2eVRRO0VBT0k7RUFBQTtBM0VxeVRaOztBMkU1eVRRO0VBT0k7RUFBQTtBM0UweVRaOztBMkVqelRRO0VBT0k7RUFBQTtBM0UreVRaOztBMkV0elRRO0VBT0k7RUFBQTtBM0VvelRaOztBMkUzelRRO0VBT0k7RUFBQTtBM0V5elRaOztBMkVoMFRRO0VBT0k7RUFBQTtBM0U4elRaOztBMkVyMFRRO0VBT0k7RUFBQTtBM0VtMFRaOztBMkUxMFRRO0VBT0k7RUFBQTtBM0V3MFRaOztBMkUvMFRRO0VBT0k7RUFBQTtBM0U2MFRaOztBMkVwMVRRO0VBT0k7RUFBQTtBM0VrMVRaOztBMkV6MVRRO0VBT0k7RUFBQTtBM0V1MVRaOztBMkU5MVRRO0VBT0k7RUFBQTtBM0U0MVRaOztBMkVuMlRRO0VBT0k7RUFBQTtBM0VpMlRaOztBMkV4MlRRO0VBT0k7RUFBQTtBM0VzMlRaOztBMkU3MlRRO0VBT0k7RUFBQTtBM0UyMlRaOztBMkVsM1RRO0VBT0k7RUFBQTtBM0VnM1RaOztBMkV2M1RRO0VBT0k7RUFBQTtBM0VxM1RaOztBMkU1M1RRO0VBT0k7RUFBQTtBM0UwM1RaOztBMkVqNFRRO0VBT0k7QTNFODNUWjs7QTJFcjRUUTtFQU9JO0EzRWs0VFo7O0EyRXo0VFE7RUFPSTtBM0VzNFRaOztBMkU3NFRRO0VBT0k7QTNFMDRUWjs7QTJFajVUUTtFQU9JO0EzRTg0VFo7O0EyRXI1VFE7RUFPSTtBM0VrNVRaOztBMkV6NVRRO0VBT0k7QTNFczVUWjs7QWlCaDZUSTtFMERHSTtJQU9JO0UzRTI1VFY7O0UyRWw2VE07SUFPSTtFM0UrNVRWOztFMkV0NlRNO0lBT0k7RTNFbTZUVjs7RTJFMTZUTTtJQU9JO09BQUE7RTNFdTZUVjs7RTJFOTZUTTtJQU9JO09BQUE7RTNFMjZUVjs7RTJFbDdUTTtJQU9JO09BQUE7RTNFKzZUVjs7RTJFdDdUTTtJQU9JO09BQUE7RTNFbTdUVjs7RTJFMTdUTTtJQU9JO09BQUE7RTNFdTdUVjs7RTJFOTdUTTtJQU9JO0UzRTI3VFY7O0UyRWw4VE07SUFPSTtFM0UrN1RWOztFMkV0OFRNO0lBT0k7RTNFbThUVjs7RTJFMThUTTtJQU9JO0UzRXU4VFY7O0UyRTk4VE07SUFPSTtFM0UyOFRWOztFMkVsOVRNO0lBT0k7RTNFKzhUVjs7RTJFdDlUTTtJQU9JO0UzRW05VFY7O0UyRTE5VE07SUFPSTtFM0V1OVRWOztFMkU5OVRNO0lBT0k7RTNFMjlUVjs7RTJFbCtUTTtJQU9JO0UzRSs5VFY7O0UyRXQrVE07SUFPSTtFM0VtK1RWOztFMkUxK1RNO0lBT0k7RTNFdStUVjs7RTJFOStUTTtJQU9JO0UzRTIrVFY7O0UyRWwvVE07SUFPSTtFM0UrK1RWOztFMkV0L1RNO0lBT0k7RTNFbS9UVjs7RTJFMS9UTTtJQU9JO0UzRXUvVFY7O0UyRTkvVE07SUFPSTtFM0UyL1RWOztFMkVsZ1VNO0lBT0k7RTNFKy9UVjs7RTJFdGdVTTtJQU9JO0UzRW1nVVY7O0UyRTFnVU07SUFPSTtFM0V1Z1VWOztFMkU5Z1VNO0lBT0k7RTNFMmdVVjs7RTJFbGhVTTtJQU9JO0UzRStnVVY7O0UyRXRoVU07SUFPSTtFM0VtaFVWOztFMkUxaFVNO0lBT0k7RTNFdWhVVjs7RTJFOWhVTTtJQU9JO0UzRTJoVVY7O0UyRWxpVU07SUFPSTtFM0UraFVWOztFMkV0aVVNO0lBT0k7RTNFbWlVVjs7RTJFMWlVTTtJQU9JO0UzRXVpVVY7O0UyRTlpVU07SUFPSTtFM0UyaVVWOztFMkVsalVNO0lBT0k7RTNFK2lVVjs7RTJFdGpVTTtJQU9JO0UzRW1qVVY7O0UyRTFqVU07SUFPSTtFM0V1alVWOztFMkU5alVNO0lBT0k7RTNFMmpVVjs7RTJFbGtVTTtJQU9JO0UzRStqVVY7O0UyRXRrVU07SUFPSTtFM0Vta1VWOztFMkUxa1VNO0lBT0k7RTNFdWtVVjs7RTJFOWtVTTtJQU9JO0UzRTJrVVY7O0UyRWxsVU07SUFPSTtFM0Ura1VWOztFMkV0bFVNO0lBT0k7RTNFbWxVVjs7RTJFMWxVTTtJQU9JO0UzRXVsVVY7O0UyRTlsVU07SUFPSTtFM0UybFVWOztFMkVsbVVNO0lBT0k7RTNFK2xVVjs7RTJFdG1VTTtJQU9JO0UzRW1tVVY7O0UyRTFtVU07SUFPSTtFM0V1bVVWOztFMkU5bVVNO0lBT0k7RTNFMm1VVjs7RTJFbG5VTTtJQU9JO0UzRSttVVY7O0UyRXRuVU07SUFPSTtFM0VtblVWOztFMkUxblVNO0lBT0k7RTNFdW5VVjs7RTJFOW5VTTtJQU9JO0UzRTJuVVY7O0UyRWxvVU07SUFPSTtFM0UrblVWOztFMkV0b1VNO0lBT0k7RTNFbW9VVjs7RTJFMW9VTTtJQU9JO0UzRXVvVVY7O0UyRTlvVU07SUFPSTtFM0Uyb1VWOztFMkVscFVNO0lBT0k7RTNFK29VVjs7RTJFdHBVTTtJQU9JO0UzRW1wVVY7O0UyRTFwVU07SUFPSTtFM0V1cFVWOztFMkU5cFVNO0lBT0k7RTNFMnBVVjs7RTJFbHFVTTtJQU9JO0UzRStwVVY7O0UyRXRxVU07SUFPSTtFM0VtcVVWOztFMkUxcVVNO0lBT0k7RTNFdXFVVjs7RTJFOXFVTTtJQU9JO0UzRTJxVVY7O0UyRWxyVU07SUFPSTtJQUFBO0UzRWdyVVY7O0UyRXZyVU07SUFPSTtJQUFBO0UzRXFyVVY7O0UyRTVyVU07SUFPSTtJQUFBO0UzRTByVVY7O0UyRWpzVU07SUFPSTtJQUFBO0UzRStyVVY7O0UyRXRzVU07SUFPSTtJQUFBO0UzRW9zVVY7O0UyRTNzVU07SUFPSTtJQUFBO0UzRXlzVVY7O0UyRWh0VU07SUFPSTtJQUFBO0UzRThzVVY7O0UyRXJ0VU07SUFPSTtJQUFBO0UzRW10VVY7O0UyRTF0VU07SUFPSTtJQUFBO0UzRXd0VVY7O0UyRS90VU07SUFPSTtJQUFBO0UzRTZ0VVY7O0UyRXB1VU07SUFPSTtJQUFBO0UzRWt1VVY7O0UyRXp1VU07SUFPSTtJQUFBO0UzRXV1VVY7O0UyRTl1VU07SUFPSTtJQUFBO0UzRTR1VVY7O0UyRW52VU07SUFPSTtJQUFBO0UzRWl2VVY7O0UyRXh2VU07SUFPSTtFM0VxdlVWOztFMkU1dlVNO0lBT0k7RTNFeXZVVjs7RTJFaHdVTTtJQU9JO0UzRTZ2VVY7O0UyRXB3VU07SUFPSTtFM0Vpd1VWOztFMkV4d1VNO0lBT0k7RTNFcXdVVjs7RTJFNXdVTTtJQU9JO0UzRXl3VVY7O0UyRWh4VU07SUFPSTtFM0U2d1VWOztFMkVweFVNO0lBT0k7RTNFaXhVVjs7RTJFeHhVTTtJQU9JO0UzRXF4VVY7O0UyRTV4VU07SUFPSTtFM0V5eFVWOztFMkVoeVVNO0lBT0k7RTNFNnhVVjs7RTJFcHlVTTtJQU9JO0UzRWl5VVY7O0UyRXh5VU07SUFPSTtFM0VxeVVWOztFMkU1eVVNO0lBT0k7RTNFeXlVVjs7RTJFaHpVTTtJQU9JO0UzRTZ5VVY7O0UyRXB6VU07SUFPSTtFM0VpelVWOztFMkV4elVNO0lBT0k7RTNFcXpVVjs7RTJFNXpVTTtJQU9JO0UzRXl6VVY7O0UyRWgwVU07SUFPSTtFM0U2elVWOztFMkVwMFVNO0lBT0k7RTNFaTBVVjs7RTJFeDBVTTtJQU9JO0UzRXEwVVY7O0UyRTUwVU07SUFPSTtFM0V5MFVWOztFMkVoMVVNO0lBT0k7RTNFNjBVVjs7RTJFcDFVTTtJQU9JO0UzRWkxVVY7O0UyRXgxVU07SUFPSTtFM0VxMVVWOztFMkU1MVVNO0lBT0k7RTNFeTFVVjs7RTJFaDJVTTtJQU9JO0UzRTYxVVY7O0UyRXAyVU07SUFPSTtFM0VpMlVWOztFMkV4MlVNO0lBT0k7RTNFcTJVVjs7RTJFNTJVTTtJQU9JO0UzRXkyVVY7O0UyRWgzVU07SUFPSTtFM0U2MlVWOztFMkVwM1VNO0lBT0k7RTNFaTNVVjs7RTJFeDNVTTtJQU9JO0UzRXEzVVY7O0UyRTUzVU07SUFPSTtFM0V5M1VWOztFMkVoNFVNO0lBT0k7SUFBQTtFM0U4M1VWOztFMkVyNFVNO0lBT0k7SUFBQTtFM0VtNFVWOztFMkUxNFVNO0lBT0k7SUFBQTtFM0V3NFVWOztFMkUvNFVNO0lBT0k7SUFBQTtFM0U2NFVWOztFMkVwNVVNO0lBT0k7SUFBQTtFM0VrNVVWOztFMkV6NVVNO0lBT0k7SUFBQTtFM0V1NVVWOztFMkU5NVVNO0lBT0k7SUFBQTtFM0U0NVVWOztFMkVuNlVNO0lBT0k7SUFBQTtFM0VpNlVWOztFMkV4NlVNO0lBT0k7SUFBQTtFM0VzNlVWOztFMkU3NlVNO0lBT0k7SUFBQTtFM0UyNlVWOztFMkVsN1VNO0lBT0k7SUFBQTtFM0VnN1VWOztFMkV2N1VNO0lBT0k7SUFBQTtFM0VxN1VWOztFMkU1N1VNO0lBT0k7RTNFeTdVVjs7RTJFaDhVTTtJQU9JO0UzRTY3VVY7O0UyRXA4VU07SUFPSTtFM0VpOFVWOztFMkV4OFVNO0lBT0k7RTNFcThVVjs7RTJFNThVTTtJQU9JO0UzRXk4VVY7O0UyRWg5VU07SUFPSTtFM0U2OFVWOztFMkVwOVVNO0lBT0k7RTNFaTlVVjs7RTJFeDlVTTtJQU9JO0UzRXE5VVY7O0UyRTU5VU07SUFPSTtFM0V5OVVWOztFMkVoK1VNO0lBT0k7RTNFNjlVVjs7RTJFcCtVTTtJQU9JO0UzRWkrVVY7O0UyRXgrVU07SUFPSTtFM0VxK1VWOztFMkU1K1VNO0lBT0k7RTNFeStVVjs7RTJFaC9VTTtJQU9JO0UzRTYrVVY7O0UyRXAvVU07SUFPSTtFM0VpL1VWOztFMkV4L1VNO0lBT0k7RTNFcS9VVjs7RTJFNS9VTTtJQU9JO0UzRXkvVVY7O0UyRWhnVk07SUFPSTtFM0U2L1VWOztFMkVwZ1ZNO0lBT0k7RTNFaWdWVjs7RTJFeGdWTTtJQU9JO0UzRXFnVlY7O0UyRTVnVk07SUFPSTtFM0V5Z1ZWOztFMkVoaFZNO0lBT0k7RTNFNmdWVjs7RTJFcGhWTTtJQU9JO0UzRWloVlY7O0UyRXhoVk07SUFPSTtFM0VxaFZWOztFMkU1aFZNO0lBT0k7RTNFeWhWVjs7RTJFaGlWTTtJQU9JO0UzRTZoVlY7O0UyRXBpVk07SUFPSTtFM0VpaVZWOztFMkV4aVZNO0lBT0k7RTNFcWlWVjs7RTJFNWlWTTtJQU9JO0UzRXlpVlY7O0UyRWhqVk07SUFPSTtFM0U2aVZWOztFMkVwalZNO0lBT0k7RTNFaWpWVjs7RTJFeGpWTTtJQU9JO0UzRXFqVlY7O0UyRTVqVk07SUFPSTtFM0V5alZWOztFMkVoa1ZNO0lBT0k7RTNFNmpWVjs7RTJFcGtWTTtJQU9JO0UzRWlrVlY7O0UyRXhrVk07SUFPSTtFM0Vxa1ZWOztFMkU1a1ZNO0lBT0k7U0FBQTtFM0V5a1ZWOztFMkVobFZNO0lBT0k7U0FBQTtFM0U2a1ZWOztFMkVwbFZNO0lBT0k7U0FBQTtFM0VpbFZWOztFMkV4bFZNO0lBT0k7U0FBQTtFM0VxbFZWOztFMkU1bFZNO0lBT0k7U0FBQTtFM0V5bFZWOztFMkVobVZNO0lBT0k7U0FBQTtFM0U2bFZWOztFMkVwbVZNO0lBT0k7RTNFaW1WVjs7RTJFeG1WTTtJQU9JO0UzRXFtVlY7O0UyRTVtVk07SUFPSTtFM0V5bVZWO0FBQ0Y7O0FpQnBuVkk7RTBER0k7SUFPSTtFM0UrbVZWOztFMkV0blZNO0lBT0k7RTNFbW5WVjs7RTJFMW5WTTtJQU9JO0UzRXVuVlY7O0UyRTluVk07SUFPSTtPQUFBO0UzRTJuVlY7O0UyRWxvVk07SUFPSTtPQUFBO0UzRStuVlY7O0UyRXRvVk07SUFPSTtPQUFBO0UzRW1vVlY7O0UyRTFvVk07SUFPSTtPQUFBO0UzRXVvVlY7O0UyRTlvVk07SUFPSTtPQUFBO0UzRTJvVlY7O0UyRWxwVk07SUFPSTtFM0Urb1ZWOztFMkV0cFZNO0lBT0k7RTNFbXBWVjs7RTJFMXBWTTtJQU9JO0UzRXVwVlY7O0UyRTlwVk07SUFPSTtFM0UycFZWOztFMkVscVZNO0lBT0k7RTNFK3BWVjs7RTJFdHFWTTtJQU9JO0UzRW1xVlY7O0UyRTFxVk07SUFPSTtFM0V1cVZWOztFMkU5cVZNO0lBT0k7RTNFMnFWVjs7RTJFbHJWTTtJQU9JO0UzRStxVlY7O0UyRXRyVk07SUFPSTtFM0VtclZWOztFMkUxclZNO0lBT0k7RTNFdXJWVjs7RTJFOXJWTTtJQU9JO0UzRTJyVlY7O0UyRWxzVk07SUFPSTtFM0UrclZWOztFMkV0c1ZNO0lBT0k7RTNFbXNWVjs7RTJFMXNWTTtJQU9JO0UzRXVzVlY7O0UyRTlzVk07SUFPSTtFM0Uyc1ZWOztFMkVsdFZNO0lBT0k7RTNFK3NWVjs7RTJFdHRWTTtJQU9JO0UzRW10VlY7O0UyRTF0Vk07SUFPSTtFM0V1dFZWOztFMkU5dFZNO0lBT0k7RTNFMnRWVjs7RTJFbHVWTTtJQU9JO0UzRSt0VlY7O0UyRXR1Vk07SUFPSTtFM0VtdVZWOztFMkUxdVZNO0lBT0k7RTNFdXVWVjs7RTJFOXVWTTtJQU9JO0UzRTJ1VlY7O0UyRWx2Vk07SUFPSTtFM0UrdVZWOztFMkV0dlZNO0lBT0k7RTNFbXZWVjs7RTJFMXZWTTtJQU9JO0UzRXV2VlY7O0UyRTl2Vk07SUFPSTtFM0UydlZWOztFMkVsd1ZNO0lBT0k7RTNFK3ZWVjs7RTJFdHdWTTtJQU9JO0UzRW13VlY7O0UyRTF3Vk07SUFPSTtFM0V1d1ZWOztFMkU5d1ZNO0lBT0k7RTNFMndWVjs7RTJFbHhWTTtJQU9JO0UzRSt3VlY7O0UyRXR4Vk07SUFPSTtFM0VteFZWOztFMkUxeFZNO0lBT0k7RTNFdXhWVjs7RTJFOXhWTTtJQU9JO0UzRTJ4VlY7O0UyRWx5Vk07SUFPSTtFM0UreFZWOztFMkV0eVZNO0lBT0k7RTNFbXlWVjs7RTJFMXlWTTtJQU9JO0UzRXV5VlY7O0UyRTl5Vk07SUFPSTtFM0UyeVZWOztFMkVselZNO0lBT0k7RTNFK3lWVjs7RTJFdHpWTTtJQU9JO0UzRW16VlY7O0UyRTF6Vk07SUFPSTtFM0V1elZWOztFMkU5elZNO0lBT0k7RTNFMnpWVjs7RTJFbDBWTTtJQU9JO0UzRSt6VlY7O0UyRXQwVk07SUFPSTtFM0VtMFZWOztFMkUxMFZNO0lBT0k7RTNFdTBWVjs7RTJFOTBWTTtJQU9JO0UzRTIwVlY7O0UyRWwxVk07SUFPSTtFM0UrMFZWOztFMkV0MVZNO0lBT0k7RTNFbTFWVjs7RTJFMTFWTTtJQU9JO0UzRXUxVlY7O0UyRTkxVk07SUFPSTtFM0UyMVZWOztFMkVsMlZNO0lBT0k7RTNFKzFWVjs7RTJFdDJWTTtJQU9JO0UzRW0yVlY7O0UyRTEyVk07SUFPSTtFM0V1MlZWOztFMkU5MlZNO0lBT0k7RTNFMjJWVjs7RTJFbDNWTTtJQU9JO0UzRSsyVlY7O0UyRXQzVk07SUFPSTtFM0VtM1ZWOztFMkUxM1ZNO0lBT0k7RTNFdTNWVjs7RTJFOTNWTTtJQU9JO0UzRTIzVlY7O0UyRWw0Vk07SUFPSTtFM0UrM1ZWOztFMkV0NFZNO0lBT0k7SUFBQTtFM0VvNFZWOztFMkUzNFZNO0lBT0k7SUFBQTtFM0V5NFZWOztFMkVoNVZNO0lBT0k7SUFBQTtFM0U4NFZWOztFMkVyNVZNO0lBT0k7SUFBQTtFM0VtNVZWOztFMkUxNVZNO0lBT0k7SUFBQTtFM0V3NVZWOztFMkUvNVZNO0lBT0k7SUFBQTtFM0U2NVZWOztFMkVwNlZNO0lBT0k7SUFBQTtFM0VrNlZWOztFMkV6NlZNO0lBT0k7SUFBQTtFM0V1NlZWOztFMkU5NlZNO0lBT0k7SUFBQTtFM0U0NlZWOztFMkVuN1ZNO0lBT0k7SUFBQTtFM0VpN1ZWOztFMkV4N1ZNO0lBT0k7SUFBQTtFM0VzN1ZWOztFMkU3N1ZNO0lBT0k7SUFBQTtFM0UyN1ZWOztFMkVsOFZNO0lBT0k7SUFBQTtFM0VnOFZWOztFMkV2OFZNO0lBT0k7SUFBQTtFM0VxOFZWOztFMkU1OFZNO0lBT0k7RTNFeThWVjs7RTJFaDlWTTtJQU9JO0UzRTY4VlY7O0UyRXA5Vk07SUFPSTtFM0VpOVZWOztFMkV4OVZNO0lBT0k7RTNFcTlWVjs7RTJFNTlWTTtJQU9JO0UzRXk5VlY7O0UyRWgrVk07SUFPSTtFM0U2OVZWOztFMkVwK1ZNO0lBT0k7RTNFaStWVjs7RTJFeCtWTTtJQU9JO0UzRXErVlY7O0UyRTUrVk07SUFPSTtFM0V5K1ZWOztFMkVoL1ZNO0lBT0k7RTNFNitWVjs7RTJFcC9WTTtJQU9JO0UzRWkvVlY7O0UyRXgvVk07SUFPSTtFM0VxL1ZWOztFMkU1L1ZNO0lBT0k7RTNFeS9WVjs7RTJFaGdXTTtJQU9JO0UzRTYvVlY7O0UyRXBnV007SUFPSTtFM0VpZ1dWOztFMkV4Z1dNO0lBT0k7RTNFcWdXVjs7RTJFNWdXTTtJQU9JO0UzRXlnV1Y7O0UyRWhoV007SUFPSTtFM0U2Z1dWOztFMkVwaFdNO0lBT0k7RTNFaWhXVjs7RTJFeGhXTTtJQU9JO0UzRXFoV1Y7O0UyRTVoV007SUFPSTtFM0V5aFdWOztFMkVoaVdNO0lBT0k7RTNFNmhXVjs7RTJFcGlXTTtJQU9JO0UzRWlpV1Y7O0UyRXhpV007SUFPSTtFM0VxaVdWOztFMkU1aVdNO0lBT0k7RTNFeWlXVjs7RTJFaGpXTTtJQU9JO0UzRTZpV1Y7O0UyRXBqV007SUFPSTtFM0VpaldWOztFMkV4aldNO0lBT0k7RTNFcWpXVjs7RTJFNWpXTTtJQU9JO0UzRXlqV1Y7O0UyRWhrV007SUFPSTtFM0U2aldWOztFMkVwa1dNO0lBT0k7RTNFaWtXVjs7RTJFeGtXTTtJQU9JO0UzRXFrV1Y7O0UyRTVrV007SUFPSTtFM0V5a1dWOztFMkVobFdNO0lBT0k7RTNFNmtXVjs7RTJFcGxXTTtJQU9JO0lBQUE7RTNFa2xXVjs7RTJFemxXTTtJQU9JO0lBQUE7RTNFdWxXVjs7RTJFOWxXTTtJQU9JO0lBQUE7RTNFNGxXVjs7RTJFbm1XTTtJQU9JO0lBQUE7RTNFaW1XVjs7RTJFeG1XTTtJQU9JO0lBQUE7RTNFc21XVjs7RTJFN21XTTtJQU9JO0lBQUE7RTNFMm1XVjs7RTJFbG5XTTtJQU9JO0lBQUE7RTNFZ25XVjs7RTJFdm5XTTtJQU9JO0lBQUE7RTNFcW5XVjs7RTJFNW5XTTtJQU9JO0lBQUE7RTNFMG5XVjs7RTJFam9XTTtJQU9JO0lBQUE7RTNFK25XVjs7RTJFdG9XTTtJQU9JO0lBQUE7RTNFb29XVjs7RTJFM29XTTtJQU9JO0lBQUE7RTNFeW9XVjs7RTJFaHBXTTtJQU9JO0UzRTZvV1Y7O0UyRXBwV007SUFPSTtFM0VpcFdWOztFMkV4cFdNO0lBT0k7RTNFcXBXVjs7RTJFNXBXTTtJQU9JO0UzRXlwV1Y7O0UyRWhxV007SUFPSTtFM0U2cFdWOztFMkVwcVdNO0lBT0k7RTNFaXFXVjs7RTJFeHFXTTtJQU9JO0UzRXFxV1Y7O0UyRTVxV007SUFPSTtFM0V5cVdWOztFMkVocldNO0lBT0k7RTNFNnFXVjs7RTJFcHJXTTtJQU9JO0UzRWlyV1Y7O0UyRXhyV007SUFPSTtFM0VxcldWOztFMkU1cldNO0lBT0k7RTNFeXJXVjs7RTJFaHNXTTtJQU9JO0UzRTZyV1Y7O0UyRXBzV007SUFPSTtFM0Vpc1dWOztFMkV4c1dNO0lBT0k7RTNFcXNXVjs7RTJFNXNXTTtJQU9JO0UzRXlzV1Y7O0UyRWh0V007SUFPSTtFM0U2c1dWOztFMkVwdFdNO0lBT0k7RTNFaXRXVjs7RTJFeHRXTTtJQU9JO0UzRXF0V1Y7O0UyRTV0V007SUFPSTtFM0V5dFdWOztFMkVodVdNO0lBT0k7RTNFNnRXVjs7RTJFcHVXTTtJQU9JO0UzRWl1V1Y7O0UyRXh1V007SUFPSTtFM0VxdVdWOztFMkU1dVdNO0lBT0k7RTNFeXVXVjs7RTJFaHZXTTtJQU9JO0UzRTZ1V1Y7O0UyRXB2V007SUFPSTtFM0VpdldWOztFMkV4dldNO0lBT0k7RTNFcXZXVjs7RTJFNXZXTTtJQU9JO0UzRXl2V1Y7O0UyRWh3V007SUFPSTtFM0U2dldWOztFMkVwd1dNO0lBT0k7RTNFaXdXVjs7RTJFeHdXTTtJQU9JO0UzRXF3V1Y7O0UyRTV3V007SUFPSTtFM0V5d1dWOztFMkVoeFdNO0lBT0k7RTNFNndXVjs7RTJFcHhXTTtJQU9JO0UzRWl4V1Y7O0UyRXh4V007SUFPSTtFM0VxeFdWOztFMkU1eFdNO0lBT0k7RTNFeXhXVjs7RTJFaHlXTTtJQU9JO1NBQUE7RTNFNnhXVjs7RTJFcHlXTTtJQU9JO1NBQUE7RTNFaXlXVjs7RTJFeHlXTTtJQU9JO1NBQUE7RTNFcXlXVjs7RTJFNXlXTTtJQU9JO1NBQUE7RTNFeXlXVjs7RTJFaHpXTTtJQU9JO1NBQUE7RTNFNnlXVjs7RTJFcHpXTTtJQU9JO1NBQUE7RTNFaXpXVjs7RTJFeHpXTTtJQU9JO0UzRXF6V1Y7O0UyRTV6V007SUFPSTtFM0V5eldWOztFMkVoMFdNO0lBT0k7RTNFNnpXVjtBQUNGOztBaUJ4MFdJO0UwREdJO0lBT0k7RTNFbTBXVjs7RTJFMTBXTTtJQU9JO0UzRXUwV1Y7O0UyRTkwV007SUFPSTtFM0UyMFdWOztFMkVsMVdNO0lBT0k7T0FBQTtFM0UrMFdWOztFMkV0MVdNO0lBT0k7T0FBQTtFM0VtMVdWOztFMkUxMVdNO0lBT0k7T0FBQTtFM0V1MVdWOztFMkU5MVdNO0lBT0k7T0FBQTtFM0UyMVdWOztFMkVsMldNO0lBT0k7T0FBQTtFM0UrMVdWOztFMkV0MldNO0lBT0k7RTNFbTJXVjs7RTJFMTJXTTtJQU9JO0UzRXUyV1Y7O0UyRTkyV007SUFPSTtFM0UyMldWOztFMkVsM1dNO0lBT0k7RTNFKzJXVjs7RTJFdDNXTTtJQU9JO0UzRW0zV1Y7O0UyRTEzV007SUFPSTtFM0V1M1dWOztFMkU5M1dNO0lBT0k7RTNFMjNXVjs7RTJFbDRXTTtJQU9JO0UzRSszV1Y7O0UyRXQ0V007SUFPSTtFM0VtNFdWOztFMkUxNFdNO0lBT0k7RTNFdTRXVjs7RTJFOTRXTTtJQU9JO0UzRTI0V1Y7O0UyRWw1V007SUFPSTtFM0UrNFdWOztFMkV0NVdNO0lBT0k7RTNFbTVXVjs7RTJFMTVXTTtJQU9JO0UzRXU1V1Y7O0UyRTk1V007SUFPSTtFM0UyNVdWOztFMkVsNldNO0lBT0k7RTNFKzVXVjs7RTJFdDZXTTtJQU9JO0UzRW02V1Y7O0UyRTE2V007SUFPSTtFM0V1NldWOztFMkU5NldNO0lBT0k7RTNFMjZXVjs7RTJFbDdXTTtJQU9JO0UzRSs2V1Y7O0UyRXQ3V007SUFPSTtFM0VtN1dWOztFMkUxN1dNO0lBT0k7RTNFdTdXVjs7RTJFOTdXTTtJQU9JO0UzRTI3V1Y7O0UyRWw4V007SUFPSTtFM0UrN1dWOztFMkV0OFdNO0lBT0k7RTNFbThXVjs7RTJFMThXTTtJQU9JO0UzRXU4V1Y7O0UyRTk4V007SUFPSTtFM0UyOFdWOztFMkVsOVdNO0lBT0k7RTNFKzhXVjs7RTJFdDlXTTtJQU9JO0UzRW05V1Y7O0UyRTE5V007SUFPSTtFM0V1OVdWOztFMkU5OVdNO0lBT0k7RTNFMjlXVjs7RTJFbCtXTTtJQU9JO0UzRSs5V1Y7O0UyRXQrV007SUFPSTtFM0VtK1dWOztFMkUxK1dNO0lBT0k7RTNFdStXVjs7RTJFOStXTTtJQU9JO0UzRTIrV1Y7O0UyRWwvV007SUFPSTtFM0UrK1dWOztFMkV0L1dNO0lBT0k7RTNFbS9XVjs7RTJFMS9XTTtJQU9JO0UzRXUvV1Y7O0UyRTkvV007SUFPSTtFM0UyL1dWOztFMkVsZ1hNO0lBT0k7RTNFKy9XVjs7RTJFdGdYTTtJQU9JO0UzRW1nWFY7O0UyRTFnWE07SUFPSTtFM0V1Z1hWOztFMkU5Z1hNO0lBT0k7RTNFMmdYVjs7RTJFbGhYTTtJQU9JO0UzRStnWFY7O0UyRXRoWE07SUFPSTtFM0VtaFhWOztFMkUxaFhNO0lBT0k7RTNFdWhYVjs7RTJFOWhYTTtJQU9JO0UzRTJoWFY7O0UyRWxpWE07SUFPSTtFM0UraFhWOztFMkV0aVhNO0lBT0k7RTNFbWlYVjs7RTJFMWlYTTtJQU9JO0UzRXVpWFY7O0UyRTlpWE07SUFPSTtFM0UyaVhWOztFMkVsalhNO0lBT0k7RTNFK2lYVjs7RTJFdGpYTTtJQU9JO0UzRW1qWFY7O0UyRTFqWE07SUFPSTtFM0V1alhWOztFMkU5alhNO0lBT0k7RTNFMmpYVjs7RTJFbGtYTTtJQU9JO0UzRStqWFY7O0UyRXRrWE07SUFPSTtFM0Vta1hWOztFMkUxa1hNO0lBT0k7RTNFdWtYVjs7RTJFOWtYTTtJQU9JO0UzRTJrWFY7O0UyRWxsWE07SUFPSTtFM0Ura1hWOztFMkV0bFhNO0lBT0k7RTNFbWxYVjs7RTJFMWxYTTtJQU9JO0lBQUE7RTNFd2xYVjs7RTJFL2xYTTtJQU9JO0lBQUE7RTNFNmxYVjs7RTJFcG1YTTtJQU9JO0lBQUE7RTNFa21YVjs7RTJFem1YTTtJQU9JO0lBQUE7RTNFdW1YVjs7RTJFOW1YTTtJQU9JO0lBQUE7RTNFNG1YVjs7RTJFbm5YTTtJQU9JO0lBQUE7RTNFaW5YVjs7RTJFeG5YTTtJQU9JO0lBQUE7RTNFc25YVjs7RTJFN25YTTtJQU9JO0lBQUE7RTNFMm5YVjs7RTJFbG9YTTtJQU9JO0lBQUE7RTNFZ29YVjs7RTJFdm9YTTtJQU9JO0lBQUE7RTNFcW9YVjs7RTJFNW9YTTtJQU9JO0lBQUE7RTNFMG9YVjs7RTJFanBYTTtJQU9JO0lBQUE7RTNFK29YVjs7RTJFdHBYTTtJQU9JO0lBQUE7RTNFb3BYVjs7RTJFM3BYTTtJQU9JO0lBQUE7RTNFeXBYVjs7RTJFaHFYTTtJQU9JO0UzRTZwWFY7O0UyRXBxWE07SUFPSTtFM0VpcVhWOztFMkV4cVhNO0lBT0k7RTNFcXFYVjs7RTJFNXFYTTtJQU9JO0UzRXlxWFY7O0UyRWhyWE07SUFPSTtFM0U2cVhWOztFMkVwclhNO0lBT0k7RTNFaXJYVjs7RTJFeHJYTTtJQU9JO0UzRXFyWFY7O0UyRTVyWE07SUFPSTtFM0V5clhWOztFMkVoc1hNO0lBT0k7RTNFNnJYVjs7RTJFcHNYTTtJQU9JO0UzRWlzWFY7O0UyRXhzWE07SUFPSTtFM0Vxc1hWOztFMkU1c1hNO0lBT0k7RTNFeXNYVjs7RTJFaHRYTTtJQU9JO0UzRTZzWFY7O0UyRXB0WE07SUFPSTtFM0VpdFhWOztFMkV4dFhNO0lBT0k7RTNFcXRYVjs7RTJFNXRYTTtJQU9JO0UzRXl0WFY7O0UyRWh1WE07SUFPSTtFM0U2dFhWOztFMkVwdVhNO0lBT0k7RTNFaXVYVjs7RTJFeHVYTTtJQU9JO0UzRXF1WFY7O0UyRTV1WE07SUFPSTtFM0V5dVhWOztFMkVodlhNO0lBT0k7RTNFNnVYVjs7RTJFcHZYTTtJQU9JO0UzRWl2WFY7O0UyRXh2WE07SUFPSTtFM0VxdlhWOztFMkU1dlhNO0lBT0k7RTNFeXZYVjs7RTJFaHdYTTtJQU9JO0UzRTZ2WFY7O0UyRXB3WE07SUFPSTtFM0Vpd1hWOztFMkV4d1hNO0lBT0k7RTNFcXdYVjs7RTJFNXdYTTtJQU9JO0UzRXl3WFY7O0UyRWh4WE07SUFPSTtFM0U2d1hWOztFMkVweFhNO0lBT0k7RTNFaXhYVjs7RTJFeHhYTTtJQU9JO0UzRXF4WFY7O0UyRTV4WE07SUFPSTtFM0V5eFhWOztFMkVoeVhNO0lBT0k7RTNFNnhYVjs7RTJFcHlYTTtJQU9JO0UzRWl5WFY7O0UyRXh5WE07SUFPSTtJQUFBO0UzRXN5WFY7O0UyRTd5WE07SUFPSTtJQUFBO0UzRTJ5WFY7O0UyRWx6WE07SUFPSTtJQUFBO0UzRWd6WFY7O0UyRXZ6WE07SUFPSTtJQUFBO0UzRXF6WFY7O0UyRTV6WE07SUFPSTtJQUFBO0UzRTB6WFY7O0UyRWowWE07SUFPSTtJQUFBO0UzRSt6WFY7O0UyRXQwWE07SUFPSTtJQUFBO0UzRW8wWFY7O0UyRTMwWE07SUFPSTtJQUFBO0UzRXkwWFY7O0UyRWgxWE07SUFPSTtJQUFBO0UzRTgwWFY7O0UyRXIxWE07SUFPSTtJQUFBO0UzRW0xWFY7O0UyRTExWE07SUFPSTtJQUFBO0UzRXcxWFY7O0UyRS8xWE07SUFPSTtJQUFBO0UzRTYxWFY7O0UyRXAyWE07SUFPSTtFM0VpMlhWOztFMkV4MlhNO0lBT0k7RTNFcTJYVjs7RTJFNTJYTTtJQU9JO0UzRXkyWFY7O0UyRWgzWE07SUFPSTtFM0U2MlhWOztFMkVwM1hNO0lBT0k7RTNFaTNYVjs7RTJFeDNYTTtJQU9JO0UzRXEzWFY7O0UyRTUzWE07SUFPSTtFM0V5M1hWOztFMkVoNFhNO0lBT0k7RTNFNjNYVjs7RTJFcDRYTTtJQU9JO0UzRWk0WFY7O0UyRXg0WE07SUFPSTtFM0VxNFhWOztFMkU1NFhNO0lBT0k7RTNFeTRYVjs7RTJFaDVYTTtJQU9JO0UzRTY0WFY7O0UyRXA1WE07SUFPSTtFM0VpNVhWOztFMkV4NVhNO0lBT0k7RTNFcTVYVjs7RTJFNTVYTTtJQU9JO0UzRXk1WFY7O0UyRWg2WE07SUFPSTtFM0U2NVhWOztFMkVwNlhNO0lBT0k7RTNFaTZYVjs7RTJFeDZYTTtJQU9JO0UzRXE2WFY7O0UyRTU2WE07SUFPSTtFM0V5NlhWOztFMkVoN1hNO0lBT0k7RTNFNjZYVjs7RTJFcDdYTTtJQU9JO0UzRWk3WFY7O0UyRXg3WE07SUFPSTtFM0VxN1hWOztFMkU1N1hNO0lBT0k7RTNFeTdYVjs7RTJFaDhYTTtJQU9JO0UzRTY3WFY7O0UyRXA4WE07SUFPSTtFM0VpOFhWOztFMkV4OFhNO0lBT0k7RTNFcThYVjs7RTJFNThYTTtJQU9JO0UzRXk4WFY7O0UyRWg5WE07SUFPSTtFM0U2OFhWOztFMkVwOVhNO0lBT0k7RTNFaTlYVjs7RTJFeDlYTTtJQU9JO0UzRXE5WFY7O0UyRTU5WE07SUFPSTtFM0V5OVhWOztFMkVoK1hNO0lBT0k7RTNFNjlYVjs7RTJFcCtYTTtJQU9JO0UzRWkrWFY7O0UyRXgrWE07SUFPSTtFM0VxK1hWOztFMkU1K1hNO0lBT0k7RTNFeStYVjs7RTJFaC9YTTtJQU9JO0UzRTYrWFY7O0UyRXAvWE07SUFPSTtTQUFBO0UzRWkvWFY7O0UyRXgvWE07SUFPSTtTQUFBO0UzRXEvWFY7O0UyRTUvWE07SUFPSTtTQUFBO0UzRXkvWFY7O0UyRWhnWU07SUFPSTtTQUFBO0UzRTYvWFY7O0UyRXBnWU07SUFPSTtTQUFBO0UzRWlnWVY7O0UyRXhnWU07SUFPSTtTQUFBO0UzRXFnWVY7O0UyRTVnWU07SUFPSTtFM0V5Z1lWOztFMkVoaFlNO0lBT0k7RTNFNmdZVjs7RTJFcGhZTTtJQU9JO0UzRWloWVY7QUFDRjs7QWlCNWhZSTtFMERHSTtJQU9JO0UzRXVoWVY7O0UyRTloWU07SUFPSTtFM0UyaFlWOztFMkVsaVlNO0lBT0k7RTNFK2hZVjs7RTJFdGlZTTtJQU9JO09BQUE7RTNFbWlZVjs7RTJFMWlZTTtJQU9JO09BQUE7RTNFdWlZVjs7RTJFOWlZTTtJQU9JO09BQUE7RTNFMmlZVjs7RTJFbGpZTTtJQU9JO09BQUE7RTNFK2lZVjs7RTJFdGpZTTtJQU9JO09BQUE7RTNFbWpZVjs7RTJFMWpZTTtJQU9JO0UzRXVqWVY7O0UyRTlqWU07SUFPSTtFM0UyallWOztFMkVsa1lNO0lBT0k7RTNFK2pZVjs7RTJFdGtZTTtJQU9JO0UzRW1rWVY7O0UyRTFrWU07SUFPSTtFM0V1a1lWOztFMkU5a1lNO0lBT0k7RTNFMmtZVjs7RTJFbGxZTTtJQU9JO0UzRStrWVY7O0UyRXRsWU07SUFPSTtFM0VtbFlWOztFMkUxbFlNO0lBT0k7RTNFdWxZVjs7RTJFOWxZTTtJQU9JO0UzRTJsWVY7O0UyRWxtWU07SUFPSTtFM0UrbFlWOztFMkV0bVlNO0lBT0k7RTNFbW1ZVjs7RTJFMW1ZTTtJQU9JO0UzRXVtWVY7O0UyRTltWU07SUFPSTtFM0UybVlWOztFMkVsbllNO0lBT0k7RTNFK21ZVjs7RTJFdG5ZTTtJQU9JO0UzRW1uWVY7O0UyRTFuWU07SUFPSTtFM0V1bllWOztFMkU5bllNO0lBT0k7RTNFMm5ZVjs7RTJFbG9ZTTtJQU9JO0UzRStuWVY7O0UyRXRvWU07SUFPSTtFM0Vtb1lWOztFMkUxb1lNO0lBT0k7RTNFdW9ZVjs7RTJFOW9ZTTtJQU9JO0UzRTJvWVY7O0UyRWxwWU07SUFPSTtFM0Urb1lWOztFMkV0cFlNO0lBT0k7RTNFbXBZVjs7RTJFMXBZTTtJQU9JO0UzRXVwWVY7O0UyRTlwWU07SUFPSTtFM0UycFlWOztFMkVscVlNO0lBT0k7RTNFK3BZVjs7RTJFdHFZTTtJQU9JO0UzRW1xWVY7O0UyRTFxWU07SUFPSTtFM0V1cVlWOztFMkU5cVlNO0lBT0k7RTNFMnFZVjs7RTJFbHJZTTtJQU9JO0UzRStxWVY7O0UyRXRyWU07SUFPSTtFM0VtcllWOztFMkUxcllNO0lBT0k7RTNFdXJZVjs7RTJFOXJZTTtJQU9JO0UzRTJyWVY7O0UyRWxzWU07SUFPSTtFM0UrcllWOztFMkV0c1lNO0lBT0k7RTNFbXNZVjs7RTJFMXNZTTtJQU9JO0UzRXVzWVY7O0UyRTlzWU07SUFPSTtFM0Uyc1lWOztFMkVsdFlNO0lBT0k7RTNFK3NZVjs7RTJFdHRZTTtJQU9JO0UzRW10WVY7O0UyRTF0WU07SUFPSTtFM0V1dFlWOztFMkU5dFlNO0lBT0k7RTNFMnRZVjs7RTJFbHVZTTtJQU9JO0UzRSt0WVY7O0UyRXR1WU07SUFPSTtFM0VtdVlWOztFMkUxdVlNO0lBT0k7RTNFdXVZVjs7RTJFOXVZTTtJQU9JO0UzRTJ1WVY7O0UyRWx2WU07SUFPSTtFM0UrdVlWOztFMkV0dllNO0lBT0k7RTNFbXZZVjs7RTJFMXZZTTtJQU9JO0UzRXV2WVY7O0UyRTl2WU07SUFPSTtFM0UydllWOztFMkVsd1lNO0lBT0k7RTNFK3ZZVjs7RTJFdHdZTTtJQU9JO0UzRW13WVY7O0UyRTF3WU07SUFPSTtFM0V1d1lWOztFMkU5d1lNO0lBT0k7RTNFMndZVjs7RTJFbHhZTTtJQU9JO0UzRSt3WVY7O0UyRXR4WU07SUFPSTtFM0VteFlWOztFMkUxeFlNO0lBT0k7RTNFdXhZVjs7RTJFOXhZTTtJQU9JO0UzRTJ4WVY7O0UyRWx5WU07SUFPSTtFM0UreFlWOztFMkV0eVlNO0lBT0k7RTNFbXlZVjs7RTJFMXlZTTtJQU9JO0UzRXV5WVY7O0UyRTl5WU07SUFPSTtJQUFBO0UzRTR5WVY7O0UyRW56WU07SUFPSTtJQUFBO0UzRWl6WVY7O0UyRXh6WU07SUFPSTtJQUFBO0UzRXN6WVY7O0UyRTd6WU07SUFPSTtJQUFBO0UzRTJ6WVY7O0UyRWwwWU07SUFPSTtJQUFBO0UzRWcwWVY7O0UyRXYwWU07SUFPSTtJQUFBO0UzRXEwWVY7O0UyRTUwWU07SUFPSTtJQUFBO0UzRTAwWVY7O0UyRWoxWU07SUFPSTtJQUFBO0UzRSswWVY7O0UyRXQxWU07SUFPSTtJQUFBO0UzRW8xWVY7O0UyRTMxWU07SUFPSTtJQUFBO0UzRXkxWVY7O0UyRWgyWU07SUFPSTtJQUFBO0UzRTgxWVY7O0UyRXIyWU07SUFPSTtJQUFBO0UzRW0yWVY7O0UyRTEyWU07SUFPSTtJQUFBO0UzRXcyWVY7O0UyRS8yWU07SUFPSTtJQUFBO0UzRTYyWVY7O0UyRXAzWU07SUFPSTtFM0VpM1lWOztFMkV4M1lNO0lBT0k7RTNFcTNZVjs7RTJFNTNZTTtJQU9JO0UzRXkzWVY7O0UyRWg0WU07SUFPSTtFM0U2M1lWOztFMkVwNFlNO0lBT0k7RTNFaTRZVjs7RTJFeDRZTTtJQU9JO0UzRXE0WVY7O0UyRTU0WU07SUFPSTtFM0V5NFlWOztFMkVoNVlNO0lBT0k7RTNFNjRZVjs7RTJFcDVZTTtJQU9JO0UzRWk1WVY7O0UyRXg1WU07SUFPSTtFM0VxNVlWOztFMkU1NVlNO0lBT0k7RTNFeTVZVjs7RTJFaDZZTTtJQU9JO0UzRTY1WVY7O0UyRXA2WU07SUFPSTtFM0VpNllWOztFMkV4NllNO0lBT0k7RTNFcTZZVjs7RTJFNTZZTTtJQU9JO0UzRXk2WVY7O0UyRWg3WU07SUFPSTtFM0U2NllWOztFMkVwN1lNO0lBT0k7RTNFaTdZVjs7RTJFeDdZTTtJQU9JO0UzRXE3WVY7O0UyRTU3WU07SUFPSTtFM0V5N1lWOztFMkVoOFlNO0lBT0k7RTNFNjdZVjs7RTJFcDhZTTtJQU9JO0UzRWk4WVY7O0UyRXg4WU07SUFPSTtFM0VxOFlWOztFMkU1OFlNO0lBT0k7RTNFeThZVjs7RTJFaDlZTTtJQU9JO0UzRTY4WVY7O0UyRXA5WU07SUFPSTtFM0VpOVlWOztFMkV4OVlNO0lBT0k7RTNFcTlZVjs7RTJFNTlZTTtJQU9JO0UzRXk5WVY7O0UyRWgrWU07SUFPSTtFM0U2OVlWOztFMkVwK1lNO0lBT0k7RTNFaStZVjs7RTJFeCtZTTtJQU9JO0UzRXErWVY7O0UyRTUrWU07SUFPSTtFM0V5K1lWOztFMkVoL1lNO0lBT0k7RTNFNitZVjs7RTJFcC9ZTTtJQU9JO0UzRWkvWVY7O0UyRXgvWU07SUFPSTtFM0VxL1lWOztFMkU1L1lNO0lBT0k7SUFBQTtFM0UwL1lWOztFMkVqZ1pNO0lBT0k7SUFBQTtFM0UrL1lWOztFMkV0Z1pNO0lBT0k7SUFBQTtFM0VvZ1pWOztFMkUzZ1pNO0lBT0k7SUFBQTtFM0V5Z1pWOztFMkVoaFpNO0lBT0k7SUFBQTtFM0U4Z1pWOztFMkVyaFpNO0lBT0k7SUFBQTtFM0VtaFpWOztFMkUxaFpNO0lBT0k7SUFBQTtFM0V3aFpWOztFMkUvaFpNO0lBT0k7SUFBQTtFM0U2aFpWOztFMkVwaVpNO0lBT0k7SUFBQTtFM0VraVpWOztFMkV6aVpNO0lBT0k7SUFBQTtFM0V1aVpWOztFMkU5aVpNO0lBT0k7SUFBQTtFM0U0aVpWOztFMkVualpNO0lBT0k7SUFBQTtFM0VpalpWOztFMkV4alpNO0lBT0k7RTNFcWpaVjs7RTJFNWpaTTtJQU9JO0UzRXlqWlY7O0UyRWhrWk07SUFPSTtFM0U2alpWOztFMkVwa1pNO0lBT0k7RTNFaWtaVjs7RTJFeGtaTTtJQU9JO0UzRXFrWlY7O0UyRTVrWk07SUFPSTtFM0V5a1pWOztFMkVobFpNO0lBT0k7RTNFNmtaVjs7RTJFcGxaTTtJQU9JO0UzRWlsWlY7O0UyRXhsWk07SUFPSTtFM0VxbFpWOztFMkU1bFpNO0lBT0k7RTNFeWxaVjs7RTJFaG1aTTtJQU9JO0UzRTZsWlY7O0UyRXBtWk07SUFPSTtFM0VpbVpWOztFMkV4bVpNO0lBT0k7RTNFcW1aVjs7RTJFNW1aTTtJQU9JO0UzRXltWlY7O0UyRWhuWk07SUFPSTtFM0U2bVpWOztFMkVwblpNO0lBT0k7RTNFaW5aVjs7RTJFeG5aTTtJQU9JO0UzRXFuWlY7O0UyRTVuWk07SUFPSTtFM0V5blpWOztFMkVob1pNO0lBT0k7RTNFNm5aVjs7RTJFcG9aTTtJQU9JO0UzRWlvWlY7O0UyRXhvWk07SUFPSTtFM0Vxb1pWOztFMkU1b1pNO0lBT0k7RTNFeW9aVjs7RTJFaHBaTTtJQU9JO0UzRTZvWlY7O0UyRXBwWk07SUFPSTtFM0VpcFpWOztFMkV4cFpNO0lBT0k7RTNFcXBaVjs7RTJFNXBaTTtJQU9JO0UzRXlwWlY7O0UyRWhxWk07SUFPSTtFM0U2cFpWOztFMkVwcVpNO0lBT0k7RTNFaXFaVjs7RTJFeHFaTTtJQU9JO0UzRXFxWlY7O0UyRTVxWk07SUFPSTtFM0V5cVpWOztFMkVoclpNO0lBT0k7RTNFNnFaVjs7RTJFcHJaTTtJQU9JO0UzRWlyWlY7O0UyRXhyWk07SUFPSTtFM0VxclpWOztFMkU1clpNO0lBT0k7RTNFeXJaVjs7RTJFaHNaTTtJQU9JO0UzRTZyWlY7O0UyRXBzWk07SUFPSTtFM0Vpc1pWOztFMkV4c1pNO0lBT0k7U0FBQTtFM0Vxc1pWOztFMkU1c1pNO0lBT0k7U0FBQTtFM0V5c1pWOztFMkVodFpNO0lBT0k7U0FBQTtFM0U2c1pWOztFMkVwdFpNO0lBT0k7U0FBQTtFM0VpdFpWOztFMkV4dFpNO0lBT0k7U0FBQTtFM0VxdFpWOztFMkU1dFpNO0lBT0k7U0FBQTtFM0V5dFpWOztFMkVodVpNO0lBT0k7RTNFNnRaVjs7RTJFcHVaTTtJQU9JO0UzRWl1WlY7O0UyRXh1Wk07SUFPSTtFM0VxdVpWO0FBQ0Y7O0FpQmh2Wkk7RTBER0k7SUFPSTtFM0UydVpWOztFMkVsdlpNO0lBT0k7RTNFK3VaVjs7RTJFdHZaTTtJQU9JO0UzRW12WlY7O0UyRTF2Wk07SUFPSTtPQUFBO0UzRXV2WlY7O0UyRTl2Wk07SUFPSTtPQUFBO0UzRTJ2WlY7O0UyRWx3Wk07SUFPSTtPQUFBO0UzRSt2WlY7O0UyRXR3Wk07SUFPSTtPQUFBO0UzRW13WlY7O0UyRTF3Wk07SUFPSTtPQUFBO0UzRXV3WlY7O0UyRTl3Wk07SUFPSTtFM0Uyd1pWOztFMkVseFpNO0lBT0k7RTNFK3daVjs7RTJFdHhaTTtJQU9JO0UzRW14WlY7O0UyRTF4Wk07SUFPSTtFM0V1eFpWOztFMkU5eFpNO0lBT0k7RTNFMnhaVjs7RTJFbHlaTTtJQU9JO0UzRSt4WlY7O0UyRXR5Wk07SUFPSTtFM0VteVpWOztFMkUxeVpNO0lBT0k7RTNFdXlaVjs7RTJFOXlaTTtJQU9JO0UzRTJ5WlY7O0UyRWx6Wk07SUFPSTtFM0UreVpWOztFMkV0elpNO0lBT0k7RTNFbXpaVjs7RTJFMXpaTTtJQU9JO0UzRXV6WlY7O0UyRTl6Wk07SUFPSTtFM0UyelpWOztFMkVsMFpNO0lBT0k7RTNFK3paVjs7RTJFdDBaTTtJQU9JO0UzRW0wWlY7O0UyRTEwWk07SUFPSTtFM0V1MFpWOztFMkU5MFpNO0lBT0k7RTNFMjBaVjs7RTJFbDFaTTtJQU9JO0UzRSswWlY7O0UyRXQxWk07SUFPSTtFM0VtMVpWOztFMkUxMVpNO0lBT0k7RTNFdTFaVjs7RTJFOTFaTTtJQU9JO0UzRTIxWlY7O0UyRWwyWk07SUFPSTtFM0UrMVpWOztFMkV0MlpNO0lBT0k7RTNFbTJaVjs7RTJFMTJaTTtJQU9JO0UzRXUyWlY7O0UyRTkyWk07SUFPSTtFM0UyMlpWOztFMkVsM1pNO0lBT0k7RTNFKzJaVjs7RTJFdDNaTTtJQU9JO0UzRW0zWlY7O0UyRTEzWk07SUFPSTtFM0V1M1pWOztFMkU5M1pNO0lBT0k7RTNFMjNaVjs7RTJFbDRaTTtJQU9JO0UzRSszWlY7O0UyRXQ0Wk07SUFPSTtFM0VtNFpWOztFMkUxNFpNO0lBT0k7RTNFdTRaVjs7RTJFOTRaTTtJQU9JO0UzRTI0WlY7O0UyRWw1Wk07SUFPSTtFM0UrNFpWOztFMkV0NVpNO0lBT0k7RTNFbTVaVjs7RTJFMTVaTTtJQU9JO0UzRXU1WlY7O0UyRTk1Wk07SUFPSTtFM0UyNVpWOztFMkVsNlpNO0lBT0k7RTNFKzVaVjs7RTJFdDZaTTtJQU9JO0UzRW02WlY7O0UyRTE2Wk07SUFPSTtFM0V1NlpWOztFMkU5NlpNO0lBT0k7RTNFMjZaVjs7RTJFbDdaTTtJQU9JO0UzRSs2WlY7O0UyRXQ3Wk07SUFPSTtFM0VtN1pWOztFMkUxN1pNO0lBT0k7RTNFdTdaVjs7RTJFOTdaTTtJQU9JO0UzRTI3WlY7O0UyRWw4Wk07SUFPSTtFM0UrN1pWOztFMkV0OFpNO0lBT0k7RTNFbThaVjs7RTJFMThaTTtJQU9JO0UzRXU4WlY7O0UyRTk4Wk07SUFPSTtFM0UyOFpWOztFMkVsOVpNO0lBT0k7RTNFKzhaVjs7RTJFdDlaTTtJQU9JO0UzRW05WlY7O0UyRTE5Wk07SUFPSTtFM0V1OVpWOztFMkU5OVpNO0lBT0k7RTNFMjlaVjs7RTJFbCtaTTtJQU9JO0UzRSs5WlY7O0UyRXQrWk07SUFPSTtFM0VtK1pWOztFMkUxK1pNO0lBT0k7RTNFdStaVjs7RTJFOStaTTtJQU9JO0UzRTIrWlY7O0UyRWwvWk07SUFPSTtFM0UrK1pWOztFMkV0L1pNO0lBT0k7RTNFbS9aVjs7RTJFMS9aTTtJQU9JO0UzRXUvWlY7O0UyRTkvWk07SUFPSTtFM0UyL1pWOztFMkVsZ2FNO0lBT0k7SUFBQTtFM0VnZ2FWOztFMkV2Z2FNO0lBT0k7SUFBQTtFM0VxZ2FWOztFMkU1Z2FNO0lBT0k7SUFBQTtFM0UwZ2FWOztFMkVqaGFNO0lBT0k7SUFBQTtFM0UrZ2FWOztFMkV0aGFNO0lBT0k7SUFBQTtFM0VvaGFWOztFMkUzaGFNO0lBT0k7SUFBQTtFM0V5aGFWOztFMkVoaWFNO0lBT0k7SUFBQTtFM0U4aGFWOztFMkVyaWFNO0lBT0k7SUFBQTtFM0VtaWFWOztFMkUxaWFNO0lBT0k7SUFBQTtFM0V3aWFWOztFMkUvaWFNO0lBT0k7SUFBQTtFM0U2aWFWOztFMkVwamFNO0lBT0k7SUFBQTtFM0VramFWOztFMkV6amFNO0lBT0k7SUFBQTtFM0V1amFWOztFMkU5amFNO0lBT0k7SUFBQTtFM0U0amFWOztFMkVua2FNO0lBT0k7SUFBQTtFM0Vpa2FWOztFMkV4a2FNO0lBT0k7RTNFcWthVjs7RTJFNWthTTtJQU9JO0UzRXlrYVY7O0UyRWhsYU07SUFPSTtFM0U2a2FWOztFMkVwbGFNO0lBT0k7RTNFaWxhVjs7RTJFeGxhTTtJQU9JO0UzRXFsYVY7O0UyRTVsYU07SUFPSTtFM0V5bGFWOztFMkVobWFNO0lBT0k7RTNFNmxhVjs7RTJFcG1hTTtJQU9JO0UzRWltYVY7O0UyRXhtYU07SUFPSTtFM0VxbWFWOztFMkU1bWFNO0lBT0k7RTNFeW1hVjs7RTJFaG5hTTtJQU9JO0UzRTZtYVY7O0UyRXBuYU07SUFPSTtFM0VpbmFWOztFMkV4bmFNO0lBT0k7RTNFcW5hVjs7RTJFNW5hTTtJQU9JO0UzRXluYVY7O0UyRWhvYU07SUFPSTtFM0U2bmFWOztFMkVwb2FNO0lBT0k7RTNFaW9hVjs7RTJFeG9hTTtJQU9JO0UzRXFvYVY7O0UyRTVvYU07SUFPSTtFM0V5b2FWOztFMkVocGFNO0lBT0k7RTNFNm9hVjs7RTJFcHBhTTtJQU9JO0UzRWlwYVY7O0UyRXhwYU07SUFPSTtFM0VxcGFWOztFMkU1cGFNO0lBT0k7RTNFeXBhVjs7RTJFaHFhTTtJQU9JO0UzRTZwYVY7O0UyRXBxYU07SUFPSTtFM0VpcWFWOztFMkV4cWFNO0lBT0k7RTNFcXFhVjs7RTJFNXFhTTtJQU9JO0UzRXlxYVY7O0UyRWhyYU07SUFPSTtFM0U2cWFWOztFMkVwcmFNO0lBT0k7RTNFaXJhVjs7RTJFeHJhTTtJQU9JO0UzRXFyYVY7O0UyRTVyYU07SUFPSTtFM0V5cmFWOztFMkVoc2FNO0lBT0k7RTNFNnJhVjs7RTJFcHNhTTtJQU9JO0UzRWlzYVY7O0UyRXhzYU07SUFPSTtFM0Vxc2FWOztFMkU1c2FNO0lBT0k7RTNFeXNhVjs7RTJFaHRhTTtJQU9JO0lBQUE7RTNFOHNhVjs7RTJFcnRhTTtJQU9JO0lBQUE7RTNFbXRhVjs7RTJFMXRhTTtJQU9JO0lBQUE7RTNFd3RhVjs7RTJFL3RhTTtJQU9JO0lBQUE7RTNFNnRhVjs7RTJFcHVhTTtJQU9JO0lBQUE7RTNFa3VhVjs7RTJFenVhTTtJQU9JO0lBQUE7RTNFdXVhVjs7RTJFOXVhTTtJQU9JO0lBQUE7RTNFNHVhVjs7RTJFbnZhTTtJQU9JO0lBQUE7RTNFaXZhVjs7RTJFeHZhTTtJQU9JO0lBQUE7RTNFc3ZhVjs7RTJFN3ZhTTtJQU9JO0lBQUE7RTNFMnZhVjs7RTJFbHdhTTtJQU9JO0lBQUE7RTNFZ3dhVjs7RTJFdndhTTtJQU9JO0lBQUE7RTNFcXdhVjs7RTJFNXdhTTtJQU9JO0UzRXl3YVY7O0UyRWh4YU07SUFPSTtFM0U2d2FWOztFMkVweGFNO0lBT0k7RTNFaXhhVjs7RTJFeHhhTTtJQU9JO0UzRXF4YVY7O0UyRTV4YU07SUFPSTtFM0V5eGFWOztFMkVoeWFNO0lBT0k7RTNFNnhhVjs7RTJFcHlhTTtJQU9JO0UzRWl5YVY7O0UyRXh5YU07SUFPSTtFM0VxeWFWOztFMkU1eWFNO0lBT0k7RTNFeXlhVjs7RTJFaHphTTtJQU9JO0UzRTZ5YVY7O0UyRXB6YU07SUFPSTtFM0VpemFWOztFMkV4emFNO0lBT0k7RTNFcXphVjs7RTJFNXphTTtJQU9JO0UzRXl6YVY7O0UyRWgwYU07SUFPSTtFM0U2emFWOztFMkVwMGFNO0lBT0k7RTNFaTBhVjs7RTJFeDBhTTtJQU9JO0UzRXEwYVY7O0UyRTUwYU07SUFPSTtFM0V5MGFWOztFMkVoMWFNO0lBT0k7RTNFNjBhVjs7RTJFcDFhTTtJQU9JO0UzRWkxYVY7O0UyRXgxYU07SUFPSTtFM0VxMWFWOztFMkU1MWFNO0lBT0k7RTNFeTFhVjs7RTJFaDJhTTtJQU9JO0UzRTYxYVY7O0UyRXAyYU07SUFPSTtFM0VpMmFWOztFMkV4MmFNO0lBT0k7RTNFcTJhVjs7RTJFNTJhTTtJQU9JO0UzRXkyYVY7O0UyRWgzYU07SUFPSTtFM0U2MmFWOztFMkVwM2FNO0lBT0k7RTNFaTNhVjs7RTJFeDNhTTtJQU9JO0UzRXEzYVY7O0UyRTUzYU07SUFPSTtFM0V5M2FWOztFMkVoNGFNO0lBT0k7RTNFNjNhVjs7RTJFcDRhTTtJQU9JO0UzRWk0YVY7O0UyRXg0YU07SUFPSTtFM0VxNGFWOztFMkU1NGFNO0lBT0k7RTNFeTRhVjs7RTJFaDVhTTtJQU9JO0UzRTY0YVY7O0UyRXA1YU07SUFPSTtFM0VpNWFWOztFMkV4NWFNO0lBT0k7RTNFcTVhVjs7RTJFNTVhTTtJQU9JO1NBQUE7RTNFeTVhVjs7RTJFaDZhTTtJQU9JO1NBQUE7RTNFNjVhVjs7RTJFcDZhTTtJQU9JO1NBQUE7RTNFaTZhVjs7RTJFeDZhTTtJQU9JO1NBQUE7RTNFcTZhVjs7RTJFNTZhTTtJQU9JO1NBQUE7RTNFeTZhVjs7RTJFaDdhTTtJQU9JO1NBQUE7RTNFNjZhVjs7RTJFcDdhTTtJQU9JO0UzRWk3YVY7O0UyRXg3YU07SUFPSTtFM0VxN2FWOztFMkU1N2FNO0lBT0k7RTNFeTdhVjtBQUNGOztBNEVoL2FBO0VEK0NRO0lBT0k7RTNFKzdhVjs7RTJFdDhhTTtJQU9JO0UzRW04YVY7O0UyRTE4YU07SUFPSTtFM0V1OGFWOztFMkU5OGFNO0lBT0k7RTNFMjhhVjtBQUNGOztBNEUvK2FBO0VENEJRO0lBT0k7RTNFaTlhVjs7RTJFeDlhTTtJQU9JO0UzRXE5YVY7O0UyRTU5YU07SUFPSTtFM0V5OWFWOztFMkVoK2FNO0lBT0k7RTNFNjlhVjs7RTJFcCthTTtJQU9JO0UzRWkrYVY7O0UyRXgrYU07SUFPSTtFM0VxK2FWOztFMkU1K2FNO0lBT0k7RTNFeSthVjs7RTJFaC9hTTtJQU9JO0UzRTYrYVY7O0UyRXAvYU07SUFPSTtFM0VpL2FWOztFMkV4L2FNO0lBT0k7RTNFcS9hVjs7RTJFNS9hTTtJQU9JO0UzRXkvYVY7QUFDRjs7QTZFbmtiQTs7OztFN0V5a2JFOztBNkVqa2JGO0VBR0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0Vra2JGOztBNkVoa2JFO0VBQ0U7QTdFbWtiSjs7QTZFaGtiRTs7RUFFRTtFQUNBO0E3RW1rYko7O0E2RWhrYkU7O0VBRUU7RUFDQTtBN0Vta2JKOztBNkVoa2JFOztFQUVFO0E3RW1rYko7O0E2RTlqYkE7RTNDcEJFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDc2xiRjs7QTZFM2tiRTtFQUNFO0VBQ0E7QTdFOGtiSjs7QTZFM2tiRTs7O0VBR0U7RUFDQTtBN0U4a2JKOztBNkUza2JFOztFQUVFO0VBQ0E7QTdFOGtiSjs7QTZFMWtiQTtFM0MzQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEN5bmJGOztBNkV2bGJBO0UzQy9DRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQzBvYkY7O0E2RXBtYkE7RTNDbkRFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDMnBiRjs7QTZFam5iQTtFM0N2REU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEM0cWJGOztBNkU5bmJBO0UzQzNERTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQzZyYkY7O0E2RTNvYkE7RTNDL0RFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDOHNiRjs7QTZFeHBiQTtFM0NuRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEMrdGJGOztBNkVwcWJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTdFdXFiRjs7QTZFcnFiRTtFQUNFO0VBQ0E7RUFDQTtBN0V3cWJKOztBNkVycWJFOztFQUVFO0VBQ0E7QTdFd3FiSjs7QTZFbnFiQTs7RUFDRTtFQUNBO0E3RXVxYkY7O0E2RXBxYkE7O0VBQ0U7RUFDQTtBN0V3cWJGOztBNkVwcWJBO0VBQ0U7RUFDQTtBN0V1cWJGOztBNkVucWJBO0VBQ0U7RUFDQTtFQUNBO0V6RXpHQTtFQUNBO0VBQ0E7QUpneGJGOztBNkV0cWJFOztFQUNFO0VBQ0E7QTdFMHFiSjs7QTZFdnFiRTs7RUFDRTtFQUNBO0E3RTJxYko7O0E4RXp6YkE7OztFOUU4emJFOztBOEV4emJGO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTlFMnpiSjs7QThFeHpiSTtFQUNJO0VBQ0E7RUFDQTtBOUUyemJSOztBOEV2emJJO0VBQ0k7RUFDQTtFQUNBO0E5RTB6YlI7O0E4RXh6YlE7RUFDSTtBOUUyemJaOztBOEV0emJJO0VBQ0k7RUFDQTtBOUV5emJSOztBOEV2emJRO0VBQ0k7QTlFMHpiWjs7QThFcnpiSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUV3emJSOztBOEVyemJROzs7O0VBSUk7RUFDQTtBOUV3emJaOztBOEVwemJROztFQUNJO0VBQ0E7QTlFd3piWjs7QThFcnpiUTs7RUFDSTtFQUNBO0E5RXl6Ylo7O0E4RXR6YlE7O0VBQ0k7RUFDQTtBOUUwemJaOztBOEV0emJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUV5emJaOztBOEVuemJRO0VBQ0k7RUFDQTtBOUVzemJaOztBOEVoemJRO0VBQ0k7RUFDQTtBOUVtemJaOztBOEU5eWJJO0VBQ0k7RUFDQTtBOUVpemJSOztBOEUveWJRO0VBQ0k7RUFDQTtFQUNBO0E5RWt6Ylo7O0E4RS95YlE7RUFDSTtFQUNBO0VBQ0E7QTlFa3piWjs7QThFMXliSTtFQUNJO0E5RTZ5YlI7O0ErRXg2YkE7O0UvRTQ2YkU7O0ErRXg2YkY7RUFDSTtFQUNBO0tBQUE7TUFBQTtVQUFBO0EvRTI2Yko7O0ErRXQ2Ylk7RUFDSTtFQUNBO0EvRXk2YmhCOztBK0VsNmJRO0VBQ0k7RUFDQTtFQUNBO0EvRXE2Ylo7O0ErRW42Ylk7RUFDSTtFQUNBO0VBQ0E7QS9FczZiaEI7O0ErRXA2YmdCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QS9FdTZicEI7O0ErRXA2YmdCO0VBQ0k7RUFDQTtBL0V1NmJwQjs7QStFcjZib0I7RUFDSTtBL0V3NmJ4Qjs7QStFcDZiZ0I7RUFDSTtBL0V1NmJwQjs7QStFbjZiWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9FczZiaEI7O0ErRXA2YmdCO0VBQ0k7QS9FdTZicEI7O0ErRWg2Ykk7RUFDSTtBL0VtNmJSOztBK0VqNmJRO0VBQ0k7QS9FbzZiWjs7QStFaDZiSTtFQUNJO0EvRW02YlI7O0ErRWo2YlE7RUFDSTtBL0VvNmJaOztBK0VoNmJJO0VBQ0k7QS9FbTZiUjs7QStFajZiUTtFQUNJO0EvRW82Ylo7O0ErRTM1Ylk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBL0U4NWJoQjs7QStFNTViZ0I7RUFDSTtFQUNBO0EvRSs1YnBCOztBK0VyNWJRO0VBQ0k7QS9FdzViWjs7QStFcjViZ0I7RUFDSTtBL0V3NWJwQjs7QStFNTRiZ0I7RUFDSTtBL0UrNGJwQjs7QStFbjRiZ0I7RUFDSTtBL0VzNGJwQjs7QWdGemhjQTs7Ozs7RWhGZ2ljRTs7QWdGdGhjRTs7RUFHSTtFQUNBO0FoRndoY1I7O0FnRnRoY1E7O0VBQ0k7RUFDQTtBaEYwaGNaOztBZ0ZwaGNRO0VBQ0k7RUFDQTtFQUNBO0FoRnVoY1o7O0FnRmxoY0k7O0VBRUk7RUFDQTtFQUNBO0FoRnFoY1I7O0FnRmpoY0k7RUFDSTtFQUNBO0VBQ0E7QWhGb2hjUjs7QWdGOWdjSTs7RUFFSTtFQUNBO0FoRmloY1I7O0FnRjNnY1E7RUFDSTtFQUNBO0FoRjhnY1o7O0FnRjVnY1k7RUFDSTtFQUNBO0FoRitnY2hCOztBZ0YxZ2NRO0VBQ0k7RUFDQTtFQUNBO0FoRjZnY1o7O0FnRnRnY0k7O0VBRUk7RUFDQTtBaEZ5Z2NSOztBZ0ZwZ2NBO0VBRVE7O0lBRUk7SUFDQTtJQUNBO0VoRnNnY1Y7QUFDRjs7QWdGamdjQTtFQUVROztJQUVJO0lBQ0E7RWhGbWdjVjtBQUNGOztBaUY1bWNBOzs7Ozs7O0VqRnFuY0U7O0FpRjVtY0Y7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7VUFBQTtFQUNBO0VBQ0E7VUFBQTtBakYrbWNKOztBaUY3bWNJO0VBQ0k7QWpGZ25jUjs7QWlGN21jSTtFQUNJO0VBQ0E7QWpGZ25jUjs7QWlGOW1jUTtFQUNJO0VBQ0E7RUFDQTtBakZpbmNaOztBaUY1bWNBOztBQUNBO0VBQ0k7SUFDSTtFakZnbmNOOztFaUY5bWNFO0lBQ0k7RWpGaW5jTjtBQUNGOztBaUZ2bmNBO0VBQ0k7SUFDSTtFakZnbmNOOztFaUY5bWNFO0lBQ0k7RWpGaW5jTjtBQUNGOztBaUY5bWNBO0VBQ0k7SUFDSTtFakZpbmNOOztFaUYvbWNFO0lBQ0k7RWpGa25jTjtBQUNGOztBaUZ4bmNBO0VBQ0k7SUFDSTtFakZpbmNOOztFaUYvbWNFO0lBQ0k7RWpGa25jTjtBQUNGOztBaUYvbWNBOztBQUNBO0VBQ0k7QWpGbW5jSjs7QWtGOXFjQTs7Ozs7Ozs7Ozs7Ozs7RWxGOHJjRTs7QWtGN3FjRTtFQUNJO0FsRmdyY1I7O0FrRjdxY0k7O0VBRUk7QWxGZ3JjUjs7QWtGN3FjSTs7RUFFSTtBbEZncmNSOztBa0Y3cWNJOzs7RUFDSTtBbEZrcmNSOztBa0YvcWNJOzs7RUFHSTtFQUNBO0VBQ0E7RUFDQTtBbEZrcmNSOztBa0YvcWNJO0VBQ0k7QWxGa3JjUjs7QWtGL3FjSTs7RUFFSTtBbEZrcmNSOztBa0YvcWNJO0VBQ0k7QWxGa3JjUjs7QWtGL3FjSTtFQUNJO0FsRmtyY1I7O0FrRjdxY0k7RUFDSTtBbEZncmNSOztBa0Y3cWNJO0VBQ0k7QWxGZ3JjUjs7QW1GcHZjQTs7Ozs7Ozs7OztFbkZnd2NFOztBbUZwdmNGO0VBQ0k7RUFDQTtBbkZ1dmNKOztBbUZwdmNBO0VBQ0k7RUFDQTtBbkZ1dmNKOztBbUZwdmNBO0VBQ0k7RUFDQTtBbkZ1dmNKOztBbUZwdmNBO0VBQ0k7QW5GdXZjSjs7QW9GbnhjQTs7Ozs7Ozs7OztFcEYreGNFOztBb0ZueGNGO0VBQ0k7QXBGc3hjSjs7QW9GcHhjSTtFQUNJO0VBQ0E7QXBGdXhjUjs7QW9GcnhjUTtFQUNJO0FwRnd4Y1o7O0FvRnJ4Y1E7RUFDSTtBcEZ3eGNaOztBb0Z0eGNZO0VBQ0k7QXBGeXhjaEI7O0FvRnJ4Y1E7RUFDSTtBcEZ3eGNaOztBb0ZseGNBO0VBQ0k7SUFDSTtFcEZxeGNOO0FBQ0Y7O0FxRjl6Y0E7Ozs7RXJGbzBjRTs7QXFGN3pjRjs7O0VBR0U7QXJGZzBjRjs7QXFGNXpjQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBZUU7QXJGcTBjRjs7QXFGajBjQTs7RUFFRTtFQUNBO0FyRm8wY0Y7O0FxRmgwY0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FyRm0wY0Y7O0FxRi96Y0E7O0VBRUU7RUFDQTtFQUNBO0FyRmswY0Y7O0FxRjl6Y0E7Ozs7RUFJRTtBckZpMGNGOztBcUY3emNBO0VBQ0U7SUFDRTtFckZnMGNGOztFcUY3emNBOzs7SUFHRTtZQUFBO0lBQ0E7WUFBQTtJQUNBO0lBQ0E7RXJGZzBjRjtBQUNGOztBc0ZoNWNBOzs7O0V0RnM1Y0U7O0FzRi80Y0Y7Ozs7Ozs7Ozs7RUFLRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0RnU1Y0Y7O0FzRnA1Y0E7O0VBQ0U7QXRGdzVjRjs7QXNGcjVjQTs7RUFDRTtBdEZ5NWNGOztBSW42Y0U7RWtGU0Y7O0lBSUk7RXRGNDVjRjtBQUNGOztBc0Z6NWNBOztFQUNFO0F0RjY1Y0Y7O0FJLzZjRTtFa0ZpQkY7O0lBSUk7RXRGZzZjRjtBQUNGOztBc0Y3NWNBOztFQUNFO0F0Rmk2Y0Y7O0FJMzdjRTtFa0Z5QkY7O0lBSUk7RXRGbzZjRjtBQUNGOztBc0ZqNmNBOztFQUNFO0F0RnE2Y0Y7O0FJdjhjRTtFa0ZpQ0Y7O0lBSUk7RXRGdzZjRjtBQUNGOztBc0ZyNmNBOztFQUNFO0F0Rnk2Y0Y7O0FJbjljRTtFa0Z5Q0Y7O0lBSUk7RXRGNDZjRjtBQUNGOztBc0Z6NmNBOztFQUNFO0F0RjY2Y0Y7O0FJLzljRTtFa0ZpREY7O0lBSUk7RXRGZzdjRjtBQUNGOztBc0Y1NmNBO0VBQ0U7QXRGKzZjRjs7QXNGNzZjRTtFQUNFO0F0Rmc3Y0o7O0FzRi81Y0E7O0VBRUU7RUFDQTtBdEZrNmNGOztBc0ZoNmNFOztFQUNFO0F0Rm82Y0o7O0FzRmg2Y0E7RUFDRTtBdEZtNmNGOztBc0ZoNmNBO0VBQ0U7QXRGbTZjRjs7QXNGLzVjQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRGazZjRjs7QXNGOTVjQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRGaTZjRjs7QXNGOTVjQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEZpNmNGOztBc0YvNWNFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEZrNmNKOztBc0Y3NWNBO0VBQ0U7QXRGZzZjRjs7QXNGOTVjQTtFQUNFO0F0Rmk2Y0Y7O0FzRi81Y0E7RUFDRTtBdEZrNmNGOztBc0ZoNmNBO0VBQ0U7QXRGbTZjRjs7QXNGajZjQTtFQUNFO0F0Rm82Y0Y7O0FzRmw2Y0E7RUFDRTtBdEZxNmNGOztBc0ZuNmNBO0VBQ0U7QXRGczZjRjs7QXNGbDZjQTtFQUNFO0F0RnE2Y0Y7O0FzRm42Y0E7RUFDRTtBdEZzNmNGOztBc0ZwNmNBO0VBQ0U7QXRGdTZjRjs7QXNGbjZjQTtFQUNFO0F0RnM2Y0Y7O0FzRnA2Y0E7RUFDRTtBdEZ1NmNGOztBc0ZyNmNBO0VBQ0U7QXRGdzZjRjs7QXNGcDZjQTtFQUNFO0F0RnU2Y0Y7O0FzRnI2Y0E7RUFDRTtBdEZ3NmNGOztBc0Z0NmNBO0VBQ0U7QXRGeTZjRjs7QXVGbm5kQTs7OztFdkZ5bmRFOztBdUZqbmRGO0VBQ0U7RUFDQTtFQUNBO0F2Rm9uZEY7O0F1RmpuZEU7RUFORjtJQU9JO0lBQ0E7SUFDQTtFdkZxbmRGO0FBQ0Y7O0F1RmxuZEU7RUFiRjtJQWNJO0lBQ0E7SUFDQTtFdkZzbmRGO0FBQ0Y7O0F1RmxuZEE7RUFDRTtFQUNBO0F2RnFuZEY7O0F1RmpuZEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBdkZvbmRGOztBdUZsbmRFO0VBTkY7SUFPSTtJQUNBO0V2RnNuZEY7QUFDRjs7QXVGcG5kRTtFQVhGO0lBWUk7SUFDQTtFdkZ3bmRGO0FBQ0Y7O0F1RnBuZEE7RUFDRTtBdkZ1bmRGOztBdUZybmRFO0VBSEY7SUFJSTtFdkZ5bmRGO0FBQ0Y7O0F1RnZuZEU7RUFQRjtJQVFJO0V2RjJuZEY7QUFDRjs7QXVGeG5kQTtFQUNFO0F2RjJuZEY7O0F1RnpuZEU7RUFIRjtJQUlJO0V2RjZuZEY7QUFDRjs7QXVGM25kRTtFQVBGO0lBUUk7RXZGK25kRjtBQUNGOztBdUYzbmRBO0VBQ0U7RUFDQTtBdkY4bmRGOztBdUYxbmRBO0VBQWM7QXZGOG5kZDs7QXVGN25kQTtFQUFjO0F2RmlvZGQ7O0F1RmhvZEE7RUFBYztBdkZvb2RkOztBdUZub2RBO0VBQWM7QXZGdW9kZDs7QXVGdG9kQTtFQUFjO0F2RjBvZGQ7O0F1RnZvZEE7RUFBTztBdkYyb2RQOztBdUYxb2RBO0VBQU87QXZGOG9kUDs7QXVGN29kQTtFQUFPO0F2RmlwZFA7O0F1RmhwZEE7RUFBTztBdkZvcGRQOztBdUZucGRBO0VBQVE7QXZGdXBkUjs7QXVGdHBkQTtFQUFRO0F2RjBwZFI7O0F1RnZwZEE7RUFDRTtBdkYwcGRGOztBdUZ2cGRBO0VBQ0U7QXZGMHBkRjs7QXVGdnBkQTtFQUNFO0F2RjBwZEY7O0F1RnRwZEE7RUFDRTtFQUNBO0F2RnlwZEY7O0F1RnRwZEE7RUFDRTtBdkZ5cGRGOztBdUZycGRBO0VBQWtCO0F2RnlwZGxCOztBdUZ4cGRBO0VBQXNCO0F2RjRwZHRCOztBdUZ6cGRBO0VBQW1CO0F2RjZwZG5COztBdUY1cGRBO0VBQW1CO0F2RmdxZG5COztBdUYvcGRBO0VBQXFCO0F2Rm1xZHJCOztBdUZscWRBO0VBQXFCO0F2RnNxZHJCOztBd0ZweWRBO0VBQ0U7RUFDQTtBeEZ1eWRGOztBeUZ4eWRBO0VBQ0k7QXpGMnlkSjs7QXlGdnlkQTtFQUNJO0F6RjB5ZEo7O0F5Rnh5ZEk7O0VBRUk7QXpGMnlkUjs7QXlGdHlkQTs7Ozs7RUFJSTtBekYweWRKOztBeUZ2eWRBOzs7RUFFSTtFQUNBO0F6RjJ5ZEo7O0F5RnR5ZEk7Ozs7O0VBSUk7QXpGMHlkUjs7QXlGdHlkSTtFQUNJO0VBQ0E7QXpGeXlkUjs7QXlGdHlkSTtFQUNJO0VBQ0E7QXpGeXlkUjs7QXlGdHlkSTtFQUNJO0VBQ0E7QXpGeXlkUjs7QXlGdHlkSTtFQUNJO0VBQ0E7QXpGeXlkUjs7QXlGL3hkUTs7Ozs7O0VBR0k7QXpGcXlkWjs7QXlGbHlkUTs7O0VBQ0k7QXpGdXlkWjs7QXlGcHlkUTs7O0VBQ0k7QXpGeXlkWjs7QXlGcHlkSTs7O0VBQ0k7QXpGeXlkUjs7QXlGbnlkSTtFQUNJO0VBQ0E7QXpGc3lkUjs7QXlGcHlkUTtFQUNJO0F6RnV5ZFo7O0F5Rm55ZEk7RUFDSTtBekZzeWRSOztBeUZqeWRBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7S0FBQTtBekZveWRKOztBeUZoeWRBO0VBRUk7QXpGa3lkSjs7QXlGOXhkQTtFQUNJO0F6Rml5ZEo7O0F5Rjd4ZEE7RUFDSTtFQUNBO0F6Rmd5ZEo7O0F5Rjl4ZEk7RUFDSTtFQUNBO0F6Rml5ZFI7O0F5Rjl4ZEk7RUFDSTtFQUNBO0F6Rml5ZFI7O0F5Rjl4ZEk7RUFDSTtFQUNBO0F6Rml5ZFI7O0F5Rjl4ZEk7RUFDSTtFQUNBO0F6Rml5ZFI7O0F5Rjl4ZEk7RUFDSTtBekZpeWRSOztBeUY1eGRBO0VBQ0k7RUFDQTtBekYreGRKOztBeUY3eGRJOztFQUVJO0VBQ0E7QXpGZ3lkUjs7QXlGMXhkSTtFQUVJO0VBQ0E7QXpGNHhkUjs7QTBGcDhkQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0ExRnU4ZEY7O0EwRm44ZEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFGczhkRjs7QTBGLzdkSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0ExRms4ZE47O0EwRi83ZE07RUFDRTtFQUNBO0ExRms4ZFI7O0EwRjk3ZE07RUFDRTtFQUNBO0ExRmk4ZFI7O0EwRjc3ZE07RUFDRTtFQUNBO0VBQ0E7RUFDQTtBMUZnOGRSOztBMEY1N2RNO0VBQ0U7RUFDQTtBMUYrN2RSOztBMEZuN2RJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExRnM3ZE47O0EwRnA3ZE07O0VBRUU7QTFGdTdkUjs7QTBGajZkSTtFQUNFO0ExRm82ZE47O0EwRi81ZEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBMUZrNmRKOztBMEYvNWRNO0VBQ0U7QTFGazZkUjs7QTBGLzVkTTtFQUNFO0VBQ0E7QTFGazZkUjs7QTBGLzVkTTtFQUNFO0VBQ0E7QTFGazZkUjs7QTBGaDZkUTtFQUNFO0ExRm02ZFY7O0EwRjc1ZEk7RUFDRTtBMUZnNmROOztBMEY5NWRNO0VBQ0U7QTFGaTZkUjs7QTBGOTVkTTtFQUNFO0VBQ0E7QTFGaTZkUjs7QTBGMzVkRTtFQUNFO0ExRjg1ZEo7O0EwRjU1ZEk7RUFDRTtBMUYrNWROOztBMEZ6NWRJO0VBQ0U7QTFGNDVkTjs7QTBGdDVkSTtFQUNFO0VBQ0E7RUFDQTtBMUZ5NWROOztBMEZ2NWRNO0VBQ0U7RUFDQTtBMUYwNWRSOztBMEZ2NWRNO0VBQ0U7QTFGMDVkUjs7QTBGdDVkSTtFQUNFO0VBQ0E7QTFGeTVkTjs7QTBGbjVkQTtFQUNFO0ExRnM1ZEY7O0EwRnA1ZEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExRnU1ZEo7O0EwRnI1ZEk7RUFDRTtFQUNBO0ExRnc1ZE47O0EwRnA1ZEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUZ1NWRKOztBMEZyNWRJO0VBQ0U7QTFGdzVkTjs7QTBGcDVkRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUZ1NWRKOztBMEZyNWRJO0VBQ0U7RUFDQTtFQUNBO0ExRnc1ZE47O0EwRnI1ZEk7RUFDRTtFQUNBO0ExRnc1ZE47O0EwRnQ1ZE07RUFDRTtBMUZ5NWRSOztBMEZ0NWRNOztFQUVFO0ExRnk1ZFI7O0EwRnQ1ZE07RUFDRTtFQUNBO0VBQ0E7QTFGeTVkUjs7QTBGcjVkSTtFQUNFO0VBQ0E7RUFDQTtBMUZ3NWROOztBMEZsNWRBO0VBQ0U7QTFGcTVkRjs7QTBGbDVkQTtFQUNFO0ExRnE1ZEY7O0EwRmo1ZEE7RUFHTTtJQUNFO0UxRms1ZE47QUFDRjs7QTBGNzRkQTtFQUdNO0lBQ0U7RTFGODRkTjtBQUNGOztBMkZycmVBOzs7O0UzRjJyZUU7O0EyRnByZUY7RUFDSTtBM0Z1cmVKOztBMkZwcmVBO0VBQ0k7QTNGdXJlSjs7QTJGenFlQTtFQUNJO0VBQ0E7RUFDQTtBM0Y0cWVKOztBMkYxcWVJO0VBQ0k7QTNGNnFlUjs7QTJGenFlQTtFQUNJO0VBQ0E7RUFDQTtBM0Y0cWVKOztBNEZudGVBOzs7RTVGd3RlRTs7QTRGanRlQTs7RUFFRTtFQUNBO0VBQ0E7QTVGb3RlSjs7QTRGanRlSTs7OztFQUVFO0VBQ0E7QTVGc3RlTjs7QTRGcHRlTTs7OztFQUNFO0E1RjB0ZVI7O0E0Rnh0ZVE7Ozs7RUFDRTtBNUY4dGVWOztBNEZ0dGVJOztFQUVFO0E1Rnl0ZU47O0E0RnB0ZUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBNUZ1dGVKOztBNEZydGVJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVGd3RlTjs7QTRGdHRlTTtFQUNFO0VBQ0E7QTVGeXRlUjs7QTRGdHRlTTtFQUNFO0E1Rnl0ZVI7O0E0Rmx0ZUk7RUFDRTtBNUZxdGVOOztBNEZodGVNO0VBQ0U7QTVGbXRlUjs7QTRGanRlUTtFQUNFO0E1Rm90ZVY7O0E0Rmx0ZVU7RUFDRTtBNUZxdGVaOztBNEY3c2VFO0VBRUk7SUFDRTtFNUYrc2VOOztFNEY1c2VJO0lBQ0U7RTVGK3NlTjs7RTRGMXNlRTs7SUFFRTtFNUY2c2VKO0FBQ0Y7O0E0RnpzZUU7RUFDRTs7SUFFRTtFNUY0c2VKO0FBQ0Y7O0E2RnR6ZUE7RUFDSTtVQUFBO0E3Rnl6ZUo7O0E2RnR6ZUE7RUFDSTtJQUFLO0U3RjB6ZVA7O0U2Rnp6ZUU7SUFBTTtFN0Y2emVSOztFNkY1emVFO0lBQU87RTdGZzBlVDtBQUNGOztBNkZwMGVBO0VBQ0k7SUFBSztFN0YwemVQOztFNkZ6emVFO0lBQU07RTdGNnplUjs7RTZGNXplRTtJQUFPO0U3RmcwZVQ7QUFDRjs7QTZGMXplUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RjZ6ZVo7O0E4RmoxZUk7RUFDSTtBOUZvMWVSOztBOEYvMGVZO0VBQ0k7QTlGazFlaEI7O0E4RjMwZUE7RUFDSTtFQUNBO0E5RjgwZUo7O0E4RjEwZUE7RUFDSTtVQUFBO0E5RjYwZUo7O0E4RjEwZUE7RUFDSTtJQUFLO0U5RjgwZVA7O0U4RjcwZUU7SUFBTTtFOUZpMWVSOztFOEZoMWVFO0lBQU87RTlGbzFlVDtBQUNGOztBOEZ4MWVBO0VBQ0k7SUFBSztFOUY4MGVQOztFOEY3MGVFO0lBQU07RTlGaTFlUjs7RThGaDFlRTtJQUFPO0U5Rm8xZVQ7QUFDRjs7QThGajFlQTtFQUNJO0VBQ0E7QTlGbzFlSjs7QThGbDFlSTtFQUNJO0VBQ0E7QTlGcTFlUjs7QThGbDFlSTtFQUNJO0E5RnExZVI7O0E4Rm4xZVE7RUFDSTtVQUFBO0E5RnMxZVo7O0E4Rm4xZVE7RUFDSTtVQUFBO0E5RnMxZVo7O0E4RmgxZUE7RUFDSTtJQUFXO0U5Rm8xZWI7O0U4Rm4xZUU7SUFBTTtFOUZ1MWVSO0FBQ0Y7O0E4RjExZUE7RUFDSTtJQUFXO0U5Rm8xZWI7O0U4Rm4xZUU7SUFBTTtFOUZ1MWVSO0FBQ0Y7O0E4RnIxZUE7RUFDSTtJQUFLO0U5RnkxZVA7O0U4RngxZUU7SUFBTTtFOUY0MWVSOztFOEYzMWVFO0lBQU87RTlGKzFlVDtBQUNGOztBOEZuMmVBO0VBQ0k7SUFBSztFOUZ5MWVQOztFOEZ4MWVFO0lBQU07RTlGNDFlUjs7RThGMzFlRTtJQUFPO0U5RisxZVQ7QUFDRjs7QThGNTFlQTtFQUNJO0lBQ0k7SUFDQTtFOUYrMWVOOztFOEY3MWVFO0lBQ0k7SUFDQTtFOUZnMmVOO0FBQ0Y7O0E4RngyZUE7RUFDSTtJQUNJO0lBQ0E7RTlGKzFlTjs7RThGNzFlRTtJQUNJO0lBQ0E7RTlGZzJlTjtBQUNGOztBOEY3MWVBO0VBQ0k7SUFDSTtJQUNBO0U5RmcyZU47O0U4RjkxZUU7SUFDSTtJQUNBO0U5RmkyZU47QUFDRjs7QThGejJlQTtFQUNJO0lBQ0k7SUFDQTtFOUZnMmVOOztFOEY5MWVFO0lBQ0k7SUFDQTtFOUZpMmVOO0FBQ0Y7O0E4RjcxZUE7RUFDSTtJQUVJO0lBQ0E7RTlGKzFlTjs7RThGNzFlTTs7SUFDSTtFOUZpMmVWOztFOEY3MWVFO0lBRUk7RTlGKzFlTjtBQUNGOztBOEYxMWVJO0VBQ0k7RUFDQTtFQUNBO1VBQUE7RUFDQTtBOUY2MWVSOztBOEYzMWVRO0VBQ0k7RUFDQTtBOUY4MWVaOztBOEYzMWVRO0VBQ0k7RUFDQTtBOUY4MWVaOztBOEY1MWVZO0VBQ0k7QTlGKzFlaEI7O0E4RjUxZVk7RUFDSTtBOUYrMWVoQjs7QThGejFlQTtFQUNJO0lBQUs7RTlGNjFlUDs7RThGNTFlRTtJQUFPO0U5RmcyZVQ7QUFDRjs7QThGbjJlQTtFQUNJO0lBQUs7RTlGNjFlUDs7RThGNTFlRTtJQUFPO0U5RmcyZVQ7QUFDRjs7QStGOStlQTs7O0UvRm0vZUU7O0ErRjkrZUY7RUFFRTtBL0ZnL2VGOztBK0YzK2VJO0VBQ0U7QS9GOCtlTjs7QStGMytlSTtFQUNFO0VBQ0E7QS9GOCtlTjs7QStGeCtlSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0EvRjIrZU47O0ErRnorZU07RUFDRTtBL0Y0K2VSOztBK0Z4K2VJOzs7O0VBRUU7RUFDQTtFQUNBO0EvRjYrZU47O0ErRjMrZU07Ozs7RUFDRTtFQUNBO0EvRmkvZVI7O0ErRjkrZU07Ozs7RUFDRTtBL0ZvL2VSOztBK0Y5K2VNO0VBQ0U7RUFDQTtBL0ZpL2VSOztBK0YvK2VRO0VBQ0U7QS9Gay9lVjs7QStGOStlTTs7O0VBQ0U7QS9GbS9lUjs7QStGai9lUTs7O0VBQ0U7QS9Gcy9lVjs7QStGcC9lVTs7O0VBQ0U7QS9GeS9lWjs7QStGai9lRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0EvRm8vZUo7O0ErRmwvZUk7RUFDRTtFQUNBO0VBQ0E7QS9GcS9lTjs7QStGbC9lSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9GcS9lTjs7QStGaC9lRTs7O0VBQ0U7QS9GcS9lSjs7QStGbi9lSTs7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvRncvZU47O0ErRnQvZU07OztFQUNFO0VBQ0E7RUFDQTtBL0YyL2VSOztBK0Z0L2VNOzs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvRjIvZVI7O0ErRngvZU07OztFQUNFO0EvRjYvZVI7O0ErRjMvZVE7OztFQUNFO0EvRmdnZlY7O0ErRjcvZVE7OztFQUNFO0EvRmtnZlY7O0ErRjEvZUk7RUFDRTtBL0Y2L2VOOztBK0YxL2VJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QS9GNi9lTjs7QStGcC9lRTs7RUFFRTtBL0Z1L2VKOztBK0ZwL2VFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0Z1L2VKOztBK0ZwL2VFO0VBQ0U7QS9GdS9lSjs7QStGci9lSTtFQUNFO0VBQ0E7QS9Gdy9lTjs7QStGdC9lTTtFQUpGO0lBS0k7RS9GMC9lTjtBQUNGOztBK0Z0L2VFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvRnkvZUo7O0ErRnIvZUk7RUFDRTtBL0Z3L2VOOztBK0ZuL2VJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QS9Gcy9lTjs7QStGbi9lSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0EvRnMvZU47O0ErRmgvZUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7VUFBQTtBL0ZtL2VGOztBK0YvK2VBO0VBQ0U7RUFDQTtBL0ZrL2VGOztBK0ZoL2VFO0VBQ0U7QS9GbS9lSjs7QStGaC9lRTs7RUFDRTtFQUNBO0VBQ0E7QS9Gby9lSjs7QStGai9lRTs7RUFDRTtBL0ZxL2VKOztBK0YvK2VFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QS9Gay9lSjs7QStGLytlRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0EvRmsvZUo7O0ErRi8rZUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBL0ZrL2VKOztBK0YvK2VFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QS9Gay9lSjs7QStGNytlQTs7OztFQUlFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvRmcvZUY7O0ErRjErZUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvRjYrZUY7O0ErRngrZUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvRjIrZUY7O0ErRnYrZUU7RUFDRTtBL0YwK2VKOztBK0ZyK2VBO0VBRUk7SUFDRTtFL0Z1K2VKOztFK0ZwK2VNO0lBQ0U7RS9GdStlUjs7RStGaitlSTs7SUFFRTtJQUNBO0lBQ0E7RS9GbytlTjtBQUNGOztBK0YvOWVBO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UvRmsrZUY7O0UrRmgrZUU7SUFDRTtFL0ZtK2VKOztFK0ZoK2VFOzs7SUFDRTtFL0ZxK2VKOztFK0ZuK2VJOzs7Ozs7SUFFRTtFL0YwK2VOOztFK0Z0K2VFO0lBQ0U7RS9GeStlSjs7RStGditlSTtJQUNFO0lBQ0E7SUFDQTtFL0YwK2VOOztFK0Z4K2VNO0lBQ0U7RS9GMitlUjtBQUNGOztBZ0doM2ZBOzs7OztFaEd1M2ZFOztBZ0cvMmZGO0VBQ0k7QWhHazNmSjs7QWdHLzJmSTtFQUNJO0FoR2szZlI7O0FnRzcyZkE7RUFDSTtBaEdnM2ZKOztBZ0c3MmZBO0VBQ0k7QWhHZzNmSjs7QWdHNTJmQTs7Ozs7Ozs7RUFRSTtBaEcrMmZKOztBaUdsNWZBOzs7RWpHdTVmRTs7QWlHOTRmRTs7OztFQUVFO0FqR201Zk47O0FpRy80Zkk7Ozs7RUFFRTtFQUNBO0FqR281Zk47O0FpRy80ZkU7O0VBRUU7QWpHazVmSjs7QWlHaDVmSTs7RUFDRTtBakdvNWZOOztBaUdsNWZNOztFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakdzNWZSOztBaUc5NGZNOzs7RUFDRTtFQUNBO0VBQ0E7VUFBQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO1VBQUE7RUFDQTtFQUNBO0VBQUE7QWpHbTVmUjs7QWlHaDVmTTs7O0VBQ0U7QWpHcTVmUjs7QWlHaDVmSTtFQUNFO0FqR201Zk47O0FpR2o1Zk07RUFDRTtFQUNBO0VBQ0E7QWpHbzVmUjs7QWlHOTRmRTtFQUNFO0VBQ0E7RUFDQTtBakdpNWZKOztBaUc3NGZFO0VBQ0U7RUFDQTtFQUNBO0FqR2c1Zko7O0FpRzk0Zkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBakdpNWZOOztBaUcvNGZNO0VBQ0U7RUFDQTtBakdrNWZSOztBaUcvNGZNO0VBQ0U7QWpHazVmUjs7QWlHNTRmRTtFQUdNO0lBRUU7RWpHNDRmUjtBQUNGOztBaUdwNGZJOztFQUNFO0VBQ0E7RUFDQTtBakd3NGZOOztBaUd0NGZNOztFQUNFO0FqRzA0ZlI7O0FpR3A0Zk07Ozs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqR3k0ZlI7O0FpR3Y0ZlE7Ozs7RUFDRTtFQUNBO0FqRzY0ZlY7O0FpR3Q0ZkU7RUFDRTtBakd5NGZKOztBaUd2NGZJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqRzA0Zk47O0FpR240Zk07RUFDRTtBakdzNGZSOztBaUdoNGZFO0VBQ0U7QWpHbTRmSjs7QWlHaDRmRTtFQUNFO0lBQ0U7SUFDQTtFakdtNGZKO0FBQ0Y7O0FpRzkzZkE7RUFJTTs7SUFDRTtFakcrM2ZOO0FBQ0Y7O0FrR2xrZ0JBOzs7OztFbEd5a2dCRTs7QWtHeGpnQkE7Ozs7Ozs7Ozs7Ozs7O0VBRUU7QWxHdWtnQko7O0FrR25rZ0JFOzs7Ozs7Ozs7Ozs7OztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxHa2xnQko7O0FrRzlrZ0JFOzs7Ozs7O0VBQ0U7RUFDQTtBbEd1bGdCSjs7QWtHbmxnQkU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRzBtZ0JKOztBa0d4bWdCSTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEcrbmdCTjs7QWtHNW5nQkk7RUFDRTtFQUNBO0FsR21wZ0JOOztBa0dycGdCSTtFQUNFO0VBQ0E7QWxHbXBnQk47O0FrR3JwZ0JJOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFDRTtFQUNBO0FsR21wZ0JOOztBa0docGdCSTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBRUU7RUFDQTtBbEcycmdCTjs7QWtHdnJnQkk7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQUNFO0VBQ0E7RUFDQTtBbEc4c2dCTjs7QWtHM3NnQkk7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQUNFO0VBQ0E7RUFDQTtBbEdrdWdCTjs7QWtHN3RnQkU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQUNFO0VBQ0E7RUFDQTtBbEdvdmdCSjs7QWtHaHZnQkU7Ozs7Ozs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0tBQUE7VUFBQTtBbEd5dmdCSjs7QWtHdnZnQkk7Ozs7Ozs7RUFDRTtFQUNBO0VBQ0E7QWxHZ3dnQk47O0FrRzd2Z0JJOzs7Ozs7O0VBQ0U7QWxHc3dnQk47O0FrR2x3Z0JJOzs7Ozs7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEcyd2dCTjs7QWtHeHdnQkk7Ozs7Ozs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsR2l4Z0JOOztBa0c1d2dCRTs7Ozs7OztFQUNFO0VBQ0E7RUFDQTtFQUNBO0FsR3F4Z0JKOztBa0dueGdCSTs7Ozs7OztFQUNFO0VBQ0E7QWxHNHhnQk47O0FrRzF4Z0JNOzs7Ozs7O0VBQ0U7QWxHbXlnQlI7O0FrR2h5Z0JNOzs7Ozs7O0VBQ0U7QWxHeXlnQlI7O0FrR3R5Z0JNOzs7Ozs7O0VBQ0U7RUFDQTtBbEcreWdCUjs7QWtHNXlnQk07Ozs7Ozs7RUFDRTtFQUNBO0VBQ0E7QWxHcXpnQlI7O0FrR2x6Z0JNOzs7Ozs7O0VBQ0U7RUFDQTtFQUNBO0FsRzJ6Z0JSOztBa0d4emdCTTs7Ozs7OztFQUNFO0VBQ0E7QWxHaTBnQlI7O0FrRzd6Z0JJOzs7Ozs7O0VBQ0U7QWxHczBnQk47O0FrRy96Z0JJOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRzYxZ0JOOztBa0czMWdCTTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQUNFO0VBQ0E7QWxHeTNnQlI7O0FrR3IzZ0JJOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsR201Z0JOOztBa0dqNWdCTTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQUNFO0VBQ0E7QWxHKzZnQlI7O0FrR3o2Z0JFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtBbEcrN2dCSjs7QWtHNTdnQkU7Ozs7Ozs7Ozs7Ozs7O0VBQ0U7QWxHNDhnQko7O0FrR3o4Z0JFOzs7Ozs7O0VBQ0U7QWxHazlnQko7O0FrRy84Z0JFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBRUU7QWxHNCtnQko7O0FrR3orZ0JFOzs7Ozs7Ozs7Ozs7OztFQUVFO0FsR3cvZ0JKOztBa0dwL2dCRTs7Ozs7OztFQUNFO0VBQ0E7RUFDQTtBbEc2L2dCSjs7QWtHeC9nQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRzIvZ0JGOztBa0d6L2dCRTs7O0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEc2L2dCSjs7QWtHMS9nQkU7OztFQUVFO0FsRzgvZ0JKOztBa0czL2dCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEc4L2dCSjs7QWtHdC9nQkU7Ozs7OztFQUVFO0VBQ0E7RUFDQTtBbEc2L2dCSjs7QWtHMy9nQkk7Ozs7OztFQUNFO0VBQ0E7QWxHbWdoQk47O0FrRy8vZ0JFOzs7RUFDRTtBbEdvZ2hCSjs7QWtHbGdoQkk7OztFQUNFO0VBQ0E7QWxHdWdoQk47O0FrR25naEJFOzs7RUFDRTtFQUNBO0FsR3dnaEJKOztBa0dyZ2hCRTs7O0VBQ0U7RUFDQTtBbEcwZ2hCSjs7QW1HLzBoQkE7RUFDSTtBbkdrMWhCSjs7QW1HLzBoQkk7RUFDSTtBbkdrMWhCUjs7QW1HLzBoQlE7RUFDSTtBbkdrMWhCWjs7QW1HaDFoQlk7RUFDSTtFQUNBO0VBQ0E7QW5HbTFoQmhCOztBbUczMGhCSTtFQUNJO0FuRzgwaEJSOztBbUd4MGhCSTtFQUNJO0FuRzIwaEJSOztBbUd6MGhCUTtFQUNJO0VBQ0E7QW5HNDBoQlo7O0FtR3QwaEJBO0VBRVE7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VuR3cwaEJWO0FBQ0Y7O0FvR2gzaEJBO0VBQ0U7QXBHbTNoQkY7O0FvR2gzaEJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEdtM2hCSjs7QW9HaDNoQkk7RUFDRTtFQUNBO0FwR20zaEJOOztBb0doM2hCSTs7RUFFRTtBcEdtM2hCTjs7QW9HLzJoQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBHazNoQko7O0FvRzMyaEJJO0VBQ0U7QXBHODJoQk47O0FvR3YyaEJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEcwMmhCSjs7QW9HdjJoQkk7RUFDRTtFQUNBO0FwRzAyaEJOOztBb0dwMmhCSTs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwR3cyaEJOOztBb0d0MmhCTTs7RUFDRTtBcEcwMmhCUjs7QW9HdDJoQkk7RUFDRTtBcEd5MmhCTjs7QW9HdDJoQk07RUFDRTtFQUNBO0FwR3kyaEJSOztBb0dyMmhCTTtFQUNFO0VBQ0E7QXBHdzJoQlI7O0FvR2wyaEJFO0VBQ0U7QXBHcTJoQko7O0FvRzcxaEJJO0VBQ0U7QXBHZzJoQk47O0FvRzkxaEJNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEdpMmhCUjs7QW9HLzFoQlE7RUFDRTtFQUNBO0FwR2syaEJWOztBb0c5MWhCTTtFQUNFO0VBQ0E7RUFDQTtBcEdpMmhCUjs7QW9HLzFoQlE7RUFDRTtFQUNBO0FwR2syaEJWOztBb0cvMWhCUTtFQUNFO0FwR2syaEJWOztBb0c5MWhCTTtFQUNFO0FwR2kyaEJSOztBb0cvMWhCUTtFQUNFO0VBQ0E7QXBHazJoQlY7O0FvRzMxaEJNOztFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEcrMWhCUjs7QW9HNTFoQk07RUFDRTtBcEcrMWhCUjs7QW9HNzFoQlE7RUFDRTtBcEdnMmhCVjs7QW9HNzFoQlE7RUFDRTtBcEdnMmhCVjs7QW9HMTFoQkk7RUFDRTtFQUNBO0VBQ0E7QXBHNjFoQk47O0FvR3oxaEJJO0VBQ0U7QXBHNDFoQk47O0FvRzExaEJNO0VBQ0U7QXBHNjFoQlI7O0FvR3YxaEJNO0VBQ0U7QXBHMDFoQlI7O0FvR2oxaEJFO0VBQ0U7QXBHbzFoQko7O0FvR2gxaEJFOztFQUVFO0VBQ0E7QXBHbTFoQko7O0FvRy8waEJFO0VBQ0U7QXBHazFoQko7O0FvRy8waEJFO0VBQ0U7QXBHazFoQko7O0FvRzcwaEJBO0VBRUk7SUFDRTtJQUNBO0VwRyswaEJKOztFb0c1MGhCRTtJQUNFO0VwRyswaEJKOztFb0d6MGhCSTs7SUFDRTtFcEc2MGhCTjs7RW9HMTBoQkk7SUFDRTtFcEc2MGhCTjs7RW9HdDBoQkk7SUFDRTtFcEd5MGhCTjs7RW9HdDBoQkk7SUFDRTtFcEd5MGhCTjtBQUNGOztBcUdya2lCQTtFQUNJO0VBQ0E7QXJHd2tpQko7O0FxR3JraUJJO0VBQ0k7RUFDQTtFQUNBO0FyR3draUJSOztBcUd0a2lCUTtFQUNJO0VBQ0E7RUFDQTtBckd5a2lCWjs7QXFHdGtpQlE7RUFDSTtBckd5a2lCWjs7QXFHcGtpQkk7RUFDSTtFQUNBO0VBQ0E7QXJHdWtpQlI7O0FxR3JraUJRO0VBQ0k7RUFDQTtFQUNBO0FyR3draUJaOztBcUdya2lCUTtFQUNJO0FyR3draUJaOztBcUdua2lCSTtFQUNJO0VBQ0E7QXJHc2tpQlI7O0FxR2xraUJJO0VBQ0k7QXJHcWtpQlI7O0FxR25raUJRO0VBQ0k7VUFBQTtBckdza2lCWjs7QXFHamtpQkk7O0VBQ0k7RUFDQTtBckdxa2lCUjs7QXFHbmtpQlE7O0VBQ0k7QXJHdWtpQlo7O0FxR2xraUJJOztFQUNJO0FyR3NraUJSOztBcUdqa2lCQTtFQUNJO0lBQ0k7RXJHb2tpQk47O0VxR2xraUJFO0lBQ0k7RXJHcWtpQk47O0VxR25raUJFO0lBQ0k7RXJHc2tpQk47QUFDRjs7QXFHL2tpQkE7RUFDSTtJQUNJO0VyR29raUJOOztFcUdsa2lCRTtJQUNJO0VyR3FraUJOOztFcUdua2lCRTtJQUNJO0VyR3NraUJOO0FBQ0Y7O0FxR2praUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FyR29raUJSOztBcUdsa2lCUTtFQUNJO0VBQ0E7QXJHcWtpQlo7O0FxR25raUJZO0VBQ0k7RUFDQTtFQUNBO0FyR3NraUJoQjs7QXFHbGtpQlE7RUFDSTtFQUNBO0VBQ0E7QXJHcWtpQlo7O0FxR25raUJZO0VBQ0k7QXJHc2tpQmhCOztBcUc5amlCSTtFQUVJO0VBRUE7RUFDQTtFQUNBO0FyRytqaUJSOztBcUd6amlCSTtFQUNJO0VBQ0E7RUFDQTtBckc0amlCUjs7QXNHcnNpQkk7RUFDSTtBdEd3c2lCUjs7QXNHdHNpQlE7RUFDSTtBdEd5c2lCWjs7QXNHdnNpQlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBdEcwc2lCaEI7O0FzR3hzaUJnQjtFQUNJO0F0RzJzaUJwQjs7QXNHeHNpQmdCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXRHMnNpQnBCOztBc0d2c2lCWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRHMHNpQmhCOztBc0d0c2lCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0R3lzaUJaOztBc0d2c2lCWTtFQUNJO0F0RzBzaUJoQjs7QXNHdnNpQmdCO0VBQ0k7QXRHMHNpQnBCOztBc0d0c2lCWTtFQUNJO0VBQ0E7QXRHeXNpQmhCOztBc0d2c2lCZ0I7RUFDSTtFQUNBO0VBQ0E7QXRHMHNpQnBCOztBc0d4c2lCb0I7RUFDSTtBdEcyc2lCeEI7O0FzR3hzaUJvQjtFQUNJO0VBQ0E7QXRHMnNpQnhCOztBc0dwc2lCUTtFQUNJO0VBQ0E7RUFDQTtBdEd1c2lCWjs7QXNHanNpQlE7RUFDSTtFQUNBO0F0R29zaUJaOztBc0cvcmlCSTtFQUNJO0F0R2tzaUJSOztBc0doc2lCUTtFQUNJO0VBQ0E7RUFDQTtBdEdtc2lCWjs7QXNHanNpQlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0R29zaUJoQjs7QXNHbHNpQmdCO0VBQ0k7QXRHcXNpQnBCOztBc0c3cmlCQTtFQUdRO0lBQ0k7RXRHOHJpQlY7O0VzRzFyaUJNO0lBQ0k7RXRHNnJpQlY7QUFDRjs7QXNHenJpQkE7RUFHUTtJQUNJO0V0RzByaUJWOztFc0d0cmlCTTtJQUNJO0V0R3lyaUJWO0FBQ0Y7O0F1RzEwaUJJO0VBQ0k7RUFDQTtFQUNBO0F2RzYwaUJSOztBdUd6MGlCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQU9BO0VBQ0E7QXZHczBpQlI7O0F1RzUwaUJRO0VBQ0k7QXZHKzBpQlo7O0F1R3IwaUJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZHdzBpQlo7O0F1R2wwaUJRO0VBQ0k7QXZHcTBpQlo7O0F1R24waUJZOztFQUNJO0VBQ0E7RUFDQTtFQUNBO0F2R3UwaUJoQjs7QXVHaDBpQlE7RUFDSTtFQUNBO0F2R20waUJaOztBdUdoMGlCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F2R20waUJaOztBdUc1emlCWTs7OztFQUNJO0VBQ0E7QXZHazBpQmhCOztBdUdoMGlCZ0I7Ozs7RUFDSTtBdkdzMGlCcEI7O0F1Rzl6aUJBO0VBQ0k7SUFDSTtFdkdpMGlCTjtBQUNGOztBd0cxNWlCQTtFQUNJO0F4RzY1aUJKOztBd0czNWlCSTtFQUNJO0F4Rzg1aUJSOztBd0c1NWlCUTtFQUNJO0F4Rys1aUJaOztBd0cxNWlCQTtFQUNJO0VBQ0E7RUFDQTtLQUFBO0VBQ0E7RUFDQTtBeEc2NWlCSjs7QXdHMTVpQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhHNjVpQko7O0F3RzE1aUJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhHNjVpQko7O0F5R3g4aUJBOztFekc0OGlCRTs7QXlHdjhpQkU7RUFDSTtBekcwOGlCUjs7QXlHeDhpQlE7RUFDSTtBekcyOGlCWjs7QXlHeDhpQlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBekcyOGlCWjs7QXlHejhpQlk7RUFDSTtBekc0OGlCaEI7O0F5R3o4aUJZOztFQUVJO0F6RzQ4aUJoQjs7QXlHeDhpQlE7RUFDSTtBekcyOGlCWjs7QXlHeDhpQlE7RUFDSTtBekcyOGlCWjs7QXlHejhpQlk7RUFDSTtBekc0OGlCaEI7O0F5R3g4aUJRO0VBQ0k7RUFDQTtBekcyOGlCWjs7QXlHejhpQlk7RUFDSTtBekc0OGlCaEI7O0F5R3o4aUJZO0VBQ0k7RUFDQTtFQUNBO0F6RzQ4aUJoQjs7QXlHMThpQmdCO0VBQ0k7QXpHNjhpQnBCOztBeUd4OGlCUTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBekc0OGlCWjs7QXlHejhpQlE7RUFDSTtBekc0OGlCWjs7QXlHcjhpQkk7RUFDSTtBekd3OGlCUjs7QXlHbjhpQkE7RUFDSTtJQUNJO0V6R3M4aUJOO0FBQ0Y7O0EwR3poakJBOzs7RTFHOGhqQkU7O0EwR3poakJGO0VBaURJO0VBR0E7RUFHQTtFQUdBO0VBR0E7RUFHQTtFQUdBO0VBdUxGO0VBQ0E7RUFDQTtFQUNBO0ExRzB5aUJGOztBMEdyaWpCRTtFQUNFO0tBQUE7RUFDQTtBMUd3aWpCSjs7QTBHdGlqQkk7RUFKRjtJQUtJO0UxRzBpakJKO0FBQ0Y7O0EwR3RpakJFO0VBQ0U7VUFBQTtBMUd5aWpCSjs7QTBHNWhqQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBMUcraGpCSjs7QTBHNWhqQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUcraGpCSjs7QTBHM2hqQkU7RUFDRTtBMUc4aGpCSjs7QTBHNWhqQkU7RUFDRTtBMUcraGpCSjs7QTBHN2hqQkU7RUFDRTtBMUdnaWpCSjs7QTBHOWhqQkU7RUFDRTtBMUdpaWpCSjs7QTBHL2hqQkU7RUFDRTtBMUdraWpCSjs7QTBHaGlqQkU7RUFDRTtBMUdtaWpCSjs7QTBHamlqQkU7RUFDRTtBMUdvaWpCSjs7QTBHL2hqQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExR2tpakJOOztBMEdoaWpCTTtFQUNFO0ExR21pakJSOztBMEdoaWpCTTtFQUNFO0ExR21pakJSOztBMEdsaGpCRTtFQUtFO0VBRUE7RUFDQTtFQUNBO0VBQ0E7S0FBQTtBMUdnaGpCSjs7QTBHNWdqQkk7RUFkRjtJQWVJO0UxR2doakJKO0FBQ0Y7O0EwRzlnakJJO0VBbEJGO0lBbUJJO0UxR2toakJKO0FBQ0Y7O0EwR2hoakJJO0VBdEJGO0lBdUJJO0UxR29oakJKO0FBQ0Y7O0EwR2xoakJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUdxaGpCTjs7QTBHbGhqQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExR3FoakJOOztBMEduaGpCTTtFQUNFO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtBMUdxaGpCUjs7QTBHbmhqQlE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExR3NoakJWOztBMEdsaGpCTTtFQUNFO0tBQUE7VUFBQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFHcWhqQlI7O0EwRy9nakJFO0VBQ0U7RUFDQTtBMUdraGpCSjs7QTBHOWdqQk07RUFERjtJQUVJO0lBQ0E7RTFHa2hqQk47QUFDRjs7QTBHNWdqQkk7OztFQUdFO0ExRytnakJOOztBMEd0Z2pCRTtFQUNFO1VBQUE7QTFHeWdqQko7O0EwR2xnakJROztFQUNFO0ExR3NnakJWOztBMEcvL2lCRTtFQUNFO0lBQ0U7RTFHa2dqQko7O0UwRy8vaUJFO0lBQ0U7RTFHa2dqQko7O0UwRy8vaUJFO0lBQ0U7RTFHa2dqQko7QUFDRjs7QTBHNy9pQkk7RUFDRTtFQUNBO0ExR2dnakJOOztBMEdqL2lCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUdvL2lCSjs7QTBHbC9pQkk7RUFSRjtJQVNJO0UxR3MvaUJKO0FBQ0Y7O0EwR24vaUJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTFHcy9pQko7O0EwR24vaUJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUdzL2lCSjs7QTBHbC9pQkU7RUFDRTtBMUdxL2lCSjs7QTBHbi9pQkk7RUFDRTtFQUNBO0VBQ0E7QTFHcy9pQk47O0EwR24vaUJRO0VBQ0U7RUFDQTtBMUdzL2lCVjs7QTBHLytpQlE7RUFDRTtBMUdrL2lCVjs7QTBHNytpQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFHZy9pQk47O0EwRzkraUJNO0VBQ0U7RUFDQTtFQUNBO0tBQUE7RUFDQTtBMUdpL2lCUjs7QTBHNytpQkk7RUFDRTtFQUNBO0ExR2cvaUJOOztBMEc3K2lCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUdnL2lCTjs7QTBHNytpQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExR2cvaUJOOztBMEczK2lCRTtFQUNFO0ExRzgraUJKOztBMEc1K2lCSTtFQUNFO0ExRysraUJOOztBMEc3K2lCTTtFQUNFO0ExR2cvaUJSOztBMEc1K2lCTTtFQUNFO0VBQ0E7QTFHKytpQlI7O0EwRzcraUJRO0VBQ0U7QTFHZy9pQlY7O0EwRzMraUJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExRzgraUJOOztBMEc1K2lCTTtFQUNFO0VBQ0E7QTFHKytpQlI7O0EwR3oraUJFO0VBQ0U7QTFHNCtpQko7O0EwRzEraUJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExRzYraUJOOztBMEczK2lCTTtFQUNFO0VBQ0E7QTFHOCtpQlI7O0EwR3QraUJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExR3kraUJOOztBMEd2K2lCTTtFQUNFO0VBQ0E7RUFDQTtLQUFBO0VBQ0E7QTFHMCtpQlI7O0EwR3QraUJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTFHeStpQk47O0EwR3QraUJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUd5K2lCTjs7QTBHdCtpQkk7RUFDRTtFQUNBO0VBQ0E7QTFHeStpQk47O0EwR3QraUJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExR3kraUJOOztBMEd2K2lCTTtFQUNFO0ExRzAraUJSOztBMEdwK2lCRTtFQUNFO0ExR3UraUJKOztBMEdyK2lCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFHdytpQk47O0EwR3QraUJNO0VBQ0U7RUFDQTtBMUd5K2lCUjs7QTBHditpQlE7RUFDRTtFQUNBO0ExRzAraUJWOztBMEdyK2lCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFHdytpQk47O0EwR3IraUJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTFHdytpQk47O0EwR3IraUJJO0VBQ0U7RUFDQTtFQUNBO0ExR3craUJOOztBMEduK2lCRTtFQUNFO0ExR3MraUJKOztBMEdwK2lCSTtFQUNFO0VBQ0E7QTFHdStpQk47O0EwRzk5aUJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUdpK2lCTjs7QTBHOTlpQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBMUdpK2lCTjs7QTBHOTlpQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExR2kraUJOOztBMEc1OWlCRTtFQUNFO0ExRys5aUJKOztBMEc3OWlCSTtFQUNFO0ExR2craUJOOztBMEc3OWlCTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFHZytpQlI7O0EwRzE5aUJFO0VBQ0U7SUFDRTtFMUc2OWlCSjs7RTBHMTlpQkU7SUFDRTtFMUc2OWlCSjs7RTBHMTlpQkU7SUFDRTtFMUc2OWlCSjs7RTBHMTlpQkU7SUFDRTtJQUNBO0UxRzY5aUJKOztFMEcxOWlCRTs7SUFFRTtJQUNBO0lBQ0E7RTFHNjlpQko7QUFDRjs7QTBHcjlpQkU7RUFHTTtJQUNFO0UxR3M5aUJSO0FBQ0Y7O0EwR2g5aUJFO0VBQ0U7SUFDRTtFMUdtOWlCSjs7RTBHajlpQkk7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFMUdvOWlCTjs7RTBHbDlpQk07SUFDRTtJQUNBO0lBQ0E7RTFHcTlpQlI7O0UwR245aUJRO0lBQ0U7SUFDQTtJQUNBO0UxR3M5aUJWOztFMEdsOWlCTTtJQUNFO0lBQ0E7SUFDQTtFMUdxOWlCUjs7RTBHajlpQk07SUFDRTtFMUdvOWlCUjs7RTBHbDlpQlE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFMUdxOWlCVjtBQUNGOztBMEcvOGlCRTtFQUNFO0lBQ0U7RTFHazlpQko7O0UwRy84aUJNO0lBQ0U7RTFHazlpQlI7O0UwR2g5aUJRO0lBQ0U7SUFDQTtFMUdtOWlCVjs7RTBHLzhpQk07SUFDRTtJQUNBO0UxR2s5aUJSOztFMEcvOGlCTTtJQUNFO0lBQ0E7RTFHazlpQlI7QUFDRjs7QTBHNzhpQkU7RUFDRTtJQUNFO0UxR2c5aUJKOztFMEc3OGlCTTtJQUNFO0UxR2c5aUJSOztFMEc5OGlCUTtJQUNFO0lBQ0E7RTFHaTlpQlY7O0UwRzc4aUJNO0lBQ0U7SUFDQTtFMUdnOWlCUjtBQUNGOztBMEcxOGlCRTtFQUVJO0lBQ0U7SUFDQTtFMUc0OGlCTjs7RTBHejhpQkk7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UxRzQ4aUJOOztFMEd6OGlCSTtJQUNFO0UxRzQ4aUJOOztFMEcxOGlCTTtJQUNFO0UxRzY4aUJSOztFMEcxOGlCTTtJQUNFO0UxRzY4aUJSOztFMEcxOGlCTTtJQUNFO0lBQ0E7RTFHNjhpQlI7O0UwRzE4aUJNO0lBQ0U7RTFHNjhpQlI7QUFDRjs7QTBHeDhpQkU7RUFFSTtJQUNFO0UxRzA4aUJOOztFMEd4OGlCTTtJQUNFO0UxRzI4aUJSOztFMEd4OGlCTTtJQUNFO0UxRzI4aUJSO0FBQ0Y7O0EwR3I4aUJFO0VBRUk7SUFDRTtJQUNBO0UxR3U4aUJOOztFMEdyOGlCTTtJQUNFO0UxR3c4aUJSO0FBQ0Y7O0EwR2w4aUJFO0VBRUk7SUFDRTtFMUdvOGlCTjs7RTBHbDhpQk07SUFDRTtFMUdxOGlCUjs7RTBHajhpQkk7SUFDRTtJQUNBO0UxR284aUJOOztFMEdsOGlCTTtJQUNFO0lBQ0E7SUFDQTtFMUdxOGlCUjs7RTBHbDhpQk07SUFDRTtFMUdxOGlCUjs7RTBHbDhpQk07SUFDRTtFMUdxOGlCUjs7RTBHbDhpQk07SUFDRTtFMUdxOGlCUjtBQUNGOztBMEcvN2lCRTtFQUVJO0lBQ0U7SUFDQTtJQUNBO0UxR2k4aUJOOztFMEcvN2lCTTtJQUNFO0lBQ0E7RTFHazhpQlI7O0UwR2g4aUJRO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RTFHbThpQlY7O0UwR2g4aUJRO0lBQ0U7RTFHbThpQlY7O0UwR2g4aUJRO0lBQ0U7RTFHbThpQlY7QUFDRjs7QTBHNTdpQkU7RUFFSTtJQUNFO0UxRzg3aUJOOztFMEc1N2lCTTtJQUNFO0UxRys3aUJSOztFMEc1N2lCTTtJQUNFO0UxRys3aUJSOztFMEc3N2lCUTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0UxR2c4aUJWOztFMEc3N2lCUTtJQUNFO0UxR2c4aUJWOztFMEc3N2lCUTtJQUNFO0UxR2c4aUJWO0FBQ0Y7O0EwR3o3aUJFO0VBRUk7SUFDRTtJQUNBO0UxRzI3aUJOOztFMEd6N2lCTTtJQUNFO0UxRzQ3aUJSOztFMEcxN2lCUTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0UxRzY3aUJWO0FBQ0Y7O0EwR3Q3aUJFO0VBQ0U7SUFDRTtFMUd5N2lCSjs7RTBHdDdpQkU7SUFDRTtJQUNBO0UxR3k3aUJKOztFMEd0N2lCRTtJQUNFO0lBQ0E7RTFHeTdpQko7O0UwR3Q3aUJFO0lBQ0U7SUFDQTtFMUd5N2lCSjtBQUNGOztBMEd0N2lCSTtFQUNFO0lBQ0U7SUFDQTtFMUd5N2lCTjtBQUNGOztBMEdwN2lCRTtFQUNFO0lBQ0U7RTFHdTdpQko7O0UwR3I3aUJJO0lBQ0U7RTFHdzdpQk47O0UwRy82aUJJOzs7Ozs7OztJQUVFO0lBQ0E7RTFHdzdpQk47O0UwR3I3aUJNOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQUlFO0UxR285aUJSO0FBQ0Y7O0EwRzc4aUJBO0VBQ0U7SUFDRTtJQUNBO0UxR2c5aUJGOztFMEc5OGlCQTtJQUNFO0lBQ0E7RTFHaTlpQkY7QUFDRjs7QTBHejlpQkE7RUFDRTtJQUNFO0lBQ0E7RTFHZzlpQkY7O0UwRzk4aUJBO0lBQ0U7SUFDQTtFMUdpOWlCRjtBQUNGOztBMEc5OGlCQTtFQUNFO0lBQ0U7RTFHaTlpQkY7O0UwRy84aUJBO0lBQ0U7RTFHazlpQkY7QUFDRjs7QTBHeDlpQkE7RUFDRTtJQUNFO0UxR2k5aUJGOztFMEcvOGlCQTtJQUNFO0UxR2s5aUJGO0FBQ0Y7O0EyR2w3a0JBOzs7RTNHdTdrQkU7O0EyR2g3a0JBO0VBQ0U7QTNHbTdrQko7O0EyRy82a0JNOztFQUNFO0EzR203a0JSOztBMkdoN2tCTTs7RUFDRTtBM0dvN2tCUjs7QTJHOTZrQkU7RUFDRTtFQUNBO0EzR2k3a0JKOztBMkcvNmtCSTtFQUNFO0VBQ0E7RUFDQTtBM0drN2tCTjs7QTJHNTZrQkk7RUFDRTtFQUNBO0EzRys2a0JOOztBMkdsNmtCSTtFQUNFO0VBQ0E7QTNHcTZrQk47O0EyR242a0JNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0dzNmtCUjs7QTJHbjZrQk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO1VBQUE7RUFDQTtBM0dzNmtCUjs7QTJHaDZrQkU7RUFDRTtFQUFBO0VBQ0E7QTNHbTZrQko7O0EyR2o2a0JJO0VBQ0U7QTNHbzZrQk47O0EyR2w2a0JNOztFQUVFO0EzR3E2a0JSOztBMkduNmtCUTs7OztFQUVFO0VBQ0E7QTNHdzZrQlY7O0EyR3A2a0JNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTNHdTZrQlI7O0EyR3I2a0JRO0VBQ0U7QTNHdzZrQlY7O0EyR242a0JNOztFQUNFO0VBQ0E7RUFDQTtBM0d1NmtCUjs7QTJHLzVrQkk7Ozs7RUFFRTtFQUNBO0EzR282a0JOOztBMkcvNWtCTTtFQUNFO0VBQ0E7QTNHazZrQlI7O0EyRzU1a0JFOzs7OztFQUdFO0EzR2k2a0JKOztBMkc1NWtCSTtFQUNFO0VBQ0E7QTNHKzVrQk47O0EyRzc1a0JNO0VBQ0U7RUFDQTtBM0dnNmtCUjs7QTJHOTVrQlE7RUFDRTtBM0dpNmtCVjs7QTJHMTVrQkU7RUFDRTtBM0c2NWtCSjs7QTJHMzVrQkk7RUFDRTtBM0c4NWtCTjs7QTJHMzVrQkk7RUFDRTtBM0c4NWtCTjs7QTJHNTVrQk07RUFDRTtFQUNBO0EzRys1a0JSOztBMkd6NWtCRTtFQUNFO0lBQ0U7SUFBQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UzRzQ1a0JKO0FBQ0Y7O0EyR3Y1a0JBO0VBQ0U7SUFBSztFM0cyNWtCTDs7RTJHMTVrQkE7SUFBTztFM0c4NWtCUDtBQUNGOztBMkdqNmtCQTtFQUNFO0lBQUs7RTNHMjVrQkw7O0UyRzE1a0JBO0lBQU87RTNHODVrQlA7QUFDRjs7QTJHMzVrQkE7RUFDRTtFQUNBO0EzRzg1a0JGOztBMkczNWtCQTtFQUNFO0VBQ0E7QTNHODVrQkY7O0EyRzM1a0JBO0VBQ0U7QTNHODVrQkY7O0EyRzM1a0JBO0VBQ0U7QTNHODVrQkY7O0EyR3Y1a0JJO0VBQ0U7RUFDQTtFQUNBO0EzRzA1a0JOOztBMkd4NWtCTTtFQUNFO0EzRzI1a0JSOztBMkdyNWtCRTtFQUNFO0VBQUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzR3c1a0JKOztBMkduNWtCQTtFQUlNO0lBQ0U7SUFDQTtJQUNBO0UzR201a0JOOztFMkdqNWtCTTs7SUFDRTtFM0dxNWtCUjs7RTJHbDVrQk07SUFDRTtFM0dxNWtCUjs7RTJHbjVrQlE7SUFDRTtJQUNBO0UzR3M1a0JWOztFMkdoNWtCSTtJQUNFO0UzR201a0JOO0FBQ0Y7O0E0R25xbEJBOzs7RTVHd3FsQkU7O0E0Ry9wbEJBOztFQUNFO0E1R21xbEJKOztBNEdocWxCRTs7RUFDRTtFQUNBO0E1R29xbEJKOztBNEdqcWxCRTs7RUFDRTtFQUNBO0E1R3FxbEJKOztBNEdqcWxCRTs7RUFDRTtBNUdxcWxCSjs7QTRHbnFsQkk7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTVHdXFsQk47O0E0R3JxbEJNOztFQUNFO0E1R3lxbEJSOztBNEdycWxCSTs7Ozs7O0VBQ0U7RUFDQTtFQUNBO0E1RzZxbEJOOztBNEczcWxCTTs7Ozs7O0VBQ0U7RUFDQTtBNUdtcmxCUjs7QTRHN3FsQkU7Ozs7OztFQUNFO0E1R3FybEJKOztBNEdscmxCTTs7Ozs7O0VBQ0U7QTVHMHJsQlI7O0E0R25ybEJNOzs7Ozs7RUFDRTtBNUcycmxCUjs7QTRHdnJsQk07Ozs7OztFQUNFO0E1RytybEJSOztBNEczcmxCTTs7Ozs7O0VBQ0U7QTVHbXNsQlI7O0E0Ry9ybEJNOzs7Ozs7RUFDRTtBNUd1c2xCUjs7QTRHbnNsQk07Ozs7OztFQUNFO0E1RzJzbEJSOztBNEdsc2xCUTs7Ozs7O0VBQ0U7RUFDQTtBNUcwc2xCVjs7QTRHcnNsQk07Ozs7OztFQUNFO0VBQ0E7QTVHNnNsQlI7O0E0R3pzbEJNOzs7Ozs7RUFDRTtBNUdpdGxCUjs7QTRHaHRsQlE7Ozs7OztFQUNFO0VBQ0E7RUFDQTtBNUd3dGxCVjs7QTRHbnRsQk07Ozs7OztFQUNFO0VBQ0E7QTVHMnRsQlI7O0E0R3Z0bEJNOzs7Ozs7RUFDRTtFQUNBO0E1Ryt0bEJSOztBNEcvc2xCRTs7RUFDRTtBNUdtdGxCSjs7QTRHanRsQkk7O0VBQ0U7QTVHcXRsQk47O0E0R2p0bEJJO0VBQ0U7O0lBQ0U7SUFBQTtJQUNBO0U1R3F0bEJOO0FBQ0Y7O0E0R2p0bEJNOztFQUNFO0VBQ0E7RUFDQTtBNUdxdGxCUjs7QTRHbnRsQlE7Ozs7RUFDRTtFQUNBO0E1R3l0bEJWOztBNEd2dGxCVTs7OztFQUNFO0E1RzZ0bEJaOztBNEd0dGxCSTs7RUFDRTtFQUNBO0E1RzB0bEJOOztBNEd4dGxCTTs7RUFDRTtFQUNBO0VBQ0E7QTVHNHRsQlI7O0E0R3Z0bEJJOztFQUNFO0VBQ0E7QTVHMnRsQk47O0E0R3Z0bEJJOztFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUcydGxCTjs7QTRHenRsQk07O0VBQ0U7RUFDQTtBNUc2dGxCUjs7QTRHMXRsQk07O0VBQ0U7QTVHOHRsQlI7O0E0R3R0bEJNOztFQUNFO0VBQ0E7QTVHMHRsQlI7O0E0R3Z0bEJNOztFQUNFO0VBQ0E7RUFDQTtBNUcydGxCUjs7QTRHcnRsQkU7RUFDRTs7SUFDRTtJQUNBO0U1R3l0bEJKOztFNEdydGxCSTs7SUFDRTtJQUNBO0U1R3l0bEJOOztFNEd2dGxCTTs7SUFDRTtFNUcydGxCUjtBQUNGOztBNEd0dGxCRTtFQUNFOztJQUNFO0U1RzB0bEJKOztFNEd4dGxCSTs7SUFDRTtFNUc0dGxCTjs7RTRHenRsQkk7O0lBQ0U7RTVHNnRsQk47O0U0RzN0bEJNOztJQUNFO0lBQ0E7RTVHK3RsQlI7QUFDRjs7QTZHcitsQkE7Ozs7RTdHMitsQkU7O0E2R24rbEJBO0VBQ0U7RUFDQTtFQUNBO0E3R3MrbEJKOztBNkdoK2xCRTtFQUNFO0E3R20rbEJKOztBNkdqK2xCSTtFQUhGO0lBSUk7SUFDQTtFN0dxK2xCSjtBQUNGOztBNkc5OWxCSTtFQURGO0lBRUk7SUFDQTtFN0drK2xCSjtBQUNGOztBNkcvOWxCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0drK2xCTjs7QTZHLzlsQk07RUFDRTtFQUNBO0VBQ0E7QTdHaytsQlI7O0E2Ry85bEJNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0tBQUE7RUFDQTtFQUNBO0E3R2srbEJSOztBNkc5OWxCTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0dpK2xCUjs7QTZHNTlsQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBN0crOWxCTjs7QTZHNzlsQk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdHZytsQlI7O0E2Rzc5bEJRO0VBQ0U7RUFDQTtFQUNBO0E3R2crbEJWOztBNkc3OWxCUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtLQUFBO0VBQ0E7QTdHZytsQlY7O0E2Rzc5bEJRO0VBQ0U7QTdHZytsQlY7O0E2Rzc5bEJRO0VBQ0U7RUFDQTtBN0dnK2xCVjs7QTZHNTlsQlE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBN0crOWxCVjs7QTZHNzlsQlU7RUFDRTtFQUNBO0VBQ0E7QTdHZytsQlo7O0E2RzM5bEJRO0VBQ0U7QTdHODlsQlY7O0E2RzU5bEJVO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3Rys5bEJaOztBNkd4OWxCSTtFQUNFO0VBQ0E7RUFDQTtBN0cyOWxCTjs7QTZHejlsQk07O0VBQ0U7RUFDQTtFQUNBO0E3RzY5bEJSOztBNkcxOWxCTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RzY5bEJSOztBNkczOWxCUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E3Rzg5bEJWOztBNkdyOWxCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdHdzlsQko7O0E2R3I5bEJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdHdzlsQk47O0E2R3A5bEJJO0VBQ0U7RUFDQTtFQUNBO0E3R3U5bEJOOztBNkdyOWxCTTtFQUNFO0VBQ0E7RUFDQTtBN0d3OWxCUjs7QTZHdDlsQlE7RUFDRTtFQUNBO0VBQ0E7QTdHeTlsQlY7O0E2R3Q5bEJRO0VBQ0U7RUFDQTtFQUNBO0E3R3k5bEJWOztBNkd0OWxCUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdHeTlsQlY7O0E2R3I5bEJNO0VBQ0U7RUFDQTtFQUNBO0E3R3c5bEJSOztBNkd0OWxCUTtFQUNFO0E3R3k5bEJWOztBNkdwOWxCTTtFQUNFO0VBQ0E7RUFDQTtBN0d1OWxCUjs7QTZHcjlsQlE7RUFDRTtFQUNBO0E3R3c5bEJWOztBNkd0OWxCVTtFQUNFO0VBQ0E7QTdHeTlsQlo7O0E2R3Q5bEJVO0VBQ0U7RUFDQTtFQUNBO0E3R3k5bEJaOztBNkd0OWxCVTtFQUNFO0VBQ0E7QTdHeTlsQlo7O0E2R2w5bEJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0dxOWxCTjs7QTZHbjlsQk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtBN0dzOWxCUjs7QTZHcDlsQlE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtLQUFBO0VBQ0E7QTdHdTlsQlY7O0E2R3A5bEJRO0VBQ0U7QTdHdTlsQlY7O0E2R3I5bEJVO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTdHdzlsQlo7O0E2R3Q5bEJZO0VBQ0U7RUFDQTtBN0d5OWxCZDs7QTZHdjlsQmM7RUFDRTtFQUNBO0E3RzA5bEJoQjs7QTZHcjlsQlU7RUFDRTtFQUNBO0E3R3c5bEJaOztBNkd0OWxCWTtFQUNFO0VBQ0E7QTdHeTlsQmQ7O0E2R245bEJNO0VBQ0U7RUFDQTtFQUNBO0E3R3M5bEJSOztBNkdwOWxCUTtFQUNFO0VBQ0E7RUFDQTtBN0d1OWxCVjs7QTZHcjlsQlU7RUFDRTtBN0d3OWxCWjs7QTZHajlsQkk7RUFDRTtFQUNBO0E3R285bEJOOztBNkdsOWxCTTtFQUNFO0E3R3E5bEJSOztBNkdsOWxCTTtFQUNFO0VBQ0E7QTdHcTlsQlI7O0E2R2w5bEJNO0VBQ0U7QTdHcTlsQlI7O0E2R2g5bEJJO0VBQ0U7QTdHbTlsQk47O0E2R2o5bEJNO0VBQ0U7RUFDQTtFQUNBO0E3R285bEJSOztBNkdsOWxCUTtFQUNFO0E3R3E5bEJWOztBNkdsOWxCUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E3R3E5bEJWOztBNkdqOWxCUTtFQUNFO0VBQ0E7RUFDQTtBN0dvOWxCVjs7QTZHbDlsQlU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdHcTlsQlo7O0E2R245bEJZO0VBQ0U7QTdHczlsQmQ7O0E2R3A5bEJjO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0d1OWxCaEI7O0E2R245bEJZO0VBQ0U7QTdHczlsQmQ7O0E2R2g5bEJRO0VBQ0U7RUFDQTtFQUNBO0E3R205bEJWOztBNkdqOWxCVTtFQUNFO0VBQ0E7QTdHbzlsQlo7O0E2Ry84bEJRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3R2s5bEJWOztBNkc1OGxCSTtFQUNFO0E3Rys4bEJOOztBNkc3OGxCTTtFQUNFO0VBQ0E7RUFDQTtBN0dnOWxCUjs7QTZHNzhsQk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtBN0dnOWxCUjs7QTZHOThsQlE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdHaTlsQlY7O0E2Ry84bEJVO0VBQ0U7QTdHazlsQlo7O0E2Ry84bEJVO0VBQ0U7QTdHazlsQlo7O0E2Rzk4bEJRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0dpOWxCVjs7QTZHLzhsQlU7RUFDRTtFQUNBO0E3R2s5bEJaOztBNkczOGxCSTtFQUNFO0VBQ0E7RUFDQTtBN0c4OGxCTjs7QTZHcjhsQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBN0d3OGxCTjs7QTZHdDhsQk07RUFDRTtBN0d5OGxCUjs7QTZHdjhsQlE7RUFDRTtFQUNBO0VBQ0E7QTdHMDhsQlY7O0E2R3Y4bEJRO0VBQ0U7RUFDQTtFQUNBO0E3RzA4bEJWOztBNkdqOGxCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E3R284bEJKOztBNkdsOGxCSTtFQUNFO0VBQ0E7QTdHcThsQk47O0E2R2o4bEJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3R284bEJOOztBNkdoOGxCSTtFQUNFO0E3R204bEJOOztBNkdqOGxCTTtFQUNFO0VBQ0E7QTdHbzhsQlI7O0E2R2w4bEJRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0dxOGxCVjs7QTZHbjhsQlU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3R3M4bEJaOztBNkcvN2xCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E3R2s4bEJOOztBNkdoOGxCTTtFQUNFO0E3R204bEJSOztBNkc5N2xCSTtFQUNFO0E3R2k4bEJOOztBNkcvN2xCTTtFQUNFO0VBQ0E7RUFDQTtBN0drOGxCUjs7QTZHLzdsQlE7RUFDRTtFQUNBO0E3R2s4bEJWOztBNkc5N2xCWTtFQUNFO0VBQ0E7QTdHaThsQmQ7O0E2Rzk3bEJjO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdHaThsQmhCOztBNkc3N2xCYztFQUNFO0E3R2c4bEJoQjs7QTZHdjdsQkk7RUFDRTtBN0cwN2xCTjs7QTZHeDdsQk07RUFDRTtFQUNBO0E3RzI3bEJSOztBNkd6N2xCUTtFQUNFO0E3RzQ3bEJWOztBNkcxN2xCVTtFQUNFO0E3RzY3bEJaOztBNkd6N2xCUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RzQ3bEJWOztBNkd6N2xCUTtFQUNFO0VBQ0E7RUFDQTtBN0c0N2xCVjs7QTZHdDdsQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3R3k3bEJOOztBNkd2N2xCTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E3RzA3bEJSOztBNkd4N2xCUTtFQUNFO0VBQ0E7QTdHMjdsQlY7O0E2R3Y3bEJNO0VBQ0U7RUFDQTtFQUNBO0E3RzA3bEJSOztBNkd2N2xCVTs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBN0cyN2xCWjs7QTZHeDdsQlU7RUFDRTtFQUNBO0E3RzI3bEJaOztBNkd6N2xCWTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdHNDdsQmQ7O0E2RzE3bEJjO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTdHNjdsQmhCOztBNkdqN2xCRTtFQUNFO0E3R283bEJKOztBNkdsN2xCSTtFQUNFO0E3R3E3bEJOOztBNkduN2xCTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3R3M3bEJSOztBNkdwN2xCUTtFQUNFO0VBQ0E7QTdHdTdsQlY7O0E2R3A3bEJRO0VBQ0U7RUFDQTtFQUNBO0E3R3U3bEJWOztBNkdsN2xCSTtFQUNFO0E3R3E3bEJOOztBNkdqN2xCUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E3R283bEJWOztBNkdsN2xCVTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E3R3E3bEJaOztBNkduN2xCWTtFQUNFO0VBQ0E7RUFDQTtBN0dzN2xCZDs7QTZHbjdsQlk7RUFDRTtFQUNBO0E3R3M3bEJkOztBNkduN2xCWTtFQUNFO0VBQ0E7QTdHczdsQmQ7O0E2R2o3bEJRO0VBQ0U7RUFDQTtBN0dvN2xCVjs7QTZHbDdsQlU7RUFDRTtFQUNBO0VBQ0E7QTdHcTdsQlo7O0E2R243bEJZO0VBQ0U7RUFDQTtBN0dzN2xCZDs7QTZHbjdsQlk7RUFDRTtFQUNBO0E3R3M3bEJkOztBNkdsN2xCVTtFQUNFO0VBQ0E7QTdHcTdsQlo7O0E2R2w3bEJVO0VBQ0U7RUFDQTtFQUNBO0E3R3E3bEJaOztBNkc5NmxCUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E3R2k3bEJWOztBNkcvNmxCVTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdHazdsQlo7O0E2R2g3bEJZO0VBQ0U7RUFDQTtFQUNBO0E3R203bEJkOztBNkc5NmxCUTtFQUNFO0VBQ0E7QTdHaTdsQlY7O0E2Rzk2bEJVO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0dpN2xCWjs7QTZHLzZsQlk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdHazdsQmQ7O0E2R2g3bEJjO0VBQ0U7QTdHbTdsQmhCOztBNkc5NmxCVTtFQUNFO0VBQ0E7RUFDQTtBN0dpN2xCWjs7QTZHLzZsQlk7RUFDRTtFQUNBO0E3R2s3bEJkOztBNkcvNmxCWTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E3R2s3bEJkOztBNkc5NmxCVTtFQUNFO0VBQ0E7RUFDQTtBN0dpN2xCWjs7QTZHLzZsQlk7RUFDRTtFQUNBO0VBQ0E7QTdHazdsQmQ7O0E2Ry82bEJZO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0drN2xCZDs7QTZHdjZsQkU7RUFDRTtFQUNBO0VBQ0E7QTdHMDZsQko7O0E2R3g2bEJJOztFQUNFO0VBQ0E7RUFDQTtFQUNBO0E3RzQ2bEJOOztBNkd6NmxCSTtFQUNFO0VBQ0E7RUFDQTtBN0c0NmxCTjs7QTZHMTZsQk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RzY2bEJSOztBNkczNmxCUTtFQUNFO0VBQ0E7QTdHODZsQlY7O0E2RzM2bEJRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0c4NmxCVjs7QTZHNTZsQlU7RUFDRTtFQUNBO0VBQ0E7S0FBQTtBN0crNmxCWjs7QTZHMzZsQlE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBN0c4NmxCVjs7QTZHNTZsQlU7RUFDRTtFQUNBO0E3Rys2bEJaOztBNkc3NmxCWTtFQUNFO0E3R2c3bEJkOztBNkczNmxCUTtFQUNFO0VBQ0E7RUFDQTtBN0c4NmxCVjs7QTZHcjZsQkU7RUFDRTtJQUNFO0U3R3c2bEJKOztFNkdyNmxCRTtJQUNFO0lBQ0E7RTdHdzZsQko7O0U2R3I2bEJJO0lBQ0U7RTdHdzZsQk47O0U2R3I2bEJJO0lBQ0U7RTdHdzZsQk47O0U2R3I2bEJRO0lBQ0U7RTdHdzZsQlY7O0U2R2o2bEJJO0lBQ0U7RTdHbzZsQk47O0U2R2o2bEJJO0lBQ0U7RTdHbzZsQk47O0U2Rzk1bEJJO0lBQ0U7RTdHaTZsQk47O0U2Ry81bEJNO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFN0drNmxCUjs7RTZHaDZsQlE7SUFDRTtJQUNBO0lBQ0E7RTdHbTZsQlY7O0U2R2g2bEJRO0lBQ0U7SUFDQTtJQUNBO0U3R202bEJWOztFNkdoNmxCUTtJQUNFO0U3R202bEJWOztFNkcvNWxCTTtJQUNFO0U3R2s2bEJSOztFNkdoNmxCUTtJQUNFO0U3R202bEJWO0FBQ0Y7O0E2Rzc1bEJFO0VBQ0U7SUFDRTtJQUNBO0U3R2c2bEJKOztFNkc3NWxCRTtJQUNFO0U3R2c2bEJKOztFNkc3NWxCTTtJQUNFO0U3R2c2bEJSOztFNkczNWxCRTtJQUNFO0lBQ0E7RTdHODVsQko7QUFDRjs7QTZHeDVsQkU7RUFDRTtJQUNFO0U3RzI1bEJKO0FBQ0Y7O0E2R3I1bEJFO0VBQ0U7QTdHdzVsQko7O0E2Ry80bEJNO0VBQ0U7RUFDQTtBN0drNWxCUjs7QThHcCtuQkE7OztFOUd5K25CRTs7QThHbituQkU7RUFDSTtFQUFBO0VBQ0E7RUFDQTtBOUdzK25CUjs7QThHbCtuQkk7RUFDSTtBOUdxK25CUjs7QThHbCtuQkk7RUFDSTtBOUdxK25CUjs7QThHaCtuQlE7RUFDSTtFQUNBO0E5R20rbkJaOztBOEdoK25CUTtFQUNJO0VBQ0E7QTlHbStuQlo7O0E4Ry85bkJRO0VBQ0k7QTlHaytuQlo7O0E4Rzc5bkJJO0VBQ0k7RUFDQTtFQUNBO0E5R2crbkJSOztBOEc5OW5CUTtFQUNJO0VBQ0E7QTlHaStuQlo7O0E4Ry85bkJZOztFQUNJO0VBQ0E7QTlHbStuQmhCOztBOEdqK25CZ0I7O0VBQ0k7QTlHcStuQnBCOztBOEc5OW5CSTtFQUNJO0VBQ0E7RUFDQTtBOUdpK25CUjs7QThHLzluQlE7RUFDSTtFQUNBO0VBQ0E7QTlHaytuQlo7O0E4Ry85bkJRO0VBQ0k7RUFDQTtFQUNBO0E5R2srbkJaOztBOEcvOW5CUTtFQUNJO0VBQ0E7RUFDQTtBOUdrK25CWjs7QThHNzluQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5R2crbkJSOztBOEc5OW5CUTtFQUNJO0VBQ0E7QTlHaStuQlo7O0E4Rzk5bkJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTlHaStuQlo7O0E4Rzk5bkJRO0VBQ0k7RUFDQTtFQUNBO0E5R2krbkJaOztBOEc5OW5CUTtFQUNJO0VBQ0E7QTlHaStuQlo7O0E4RzU5bkJJO0VBQ0k7RUFDQTtBOUcrOW5CUjs7QThHNzluQlE7RUFDSTtFQUNBO0E5R2crbkJaOztBOEc5OW5CWTtFQUNJO0VBQ0E7QTlHaStuQmhCOztBOEc5OW5CWTtFQUNJO0VBQ0E7QTlHaStuQmhCOztBOEc3OW5CUTtFQUNJO0E5R2crbkJaOztBOEczOW5CSTtFQUNJO0VBQ0E7QTlHODluQlI7O0E4RzE5bkJJO0VBQ0k7RUFDQTtBOUc2OW5CUjs7QThHejluQkk7RUFDSTtFQUNBO0E5RzQ5bkJSOztBOEd4OW5CSTtFQUNJO0VBQ0E7RUFDQTtBOUcyOW5CUjs7QThHejluQlE7RUFDSTtFQUNBO0E5RzQ5bkJaOztBOEd2OW5CSTtFQUNJO0E5RzA5bkJSOztBOEd4OW5CUTtFQUNJO0E5RzI5bkJaOztBOEdwOW5CUTs7OztFQUNJO0VBQ0E7QTlHMDluQlo7O0E4R3Y5bkJROzs7O0VBQ0k7RUFDQTtBOUc2OW5CWjs7QThHejluQkk7O0VBQ0k7RUFDQTtBOUc2OW5CUjs7QThHejluQkk7RUFDSTtFQUNBO0E5RzQ5bkJSOztBOEcxOW5CUTtFQUNJO0E5RzY5bkJaOztBOEcxOW5CUTtFQUNJO0E5RzY5bkJaOztBOEcxOW5CUTtFQUNJO0VBQ0E7QTlHNjluQlo7O0E4R3Y5bkJBO0VBRVE7SUFDSTtJQUNBO0U5R3k5bkJWOztFOEd0OW5CTTtJQUNJO0U5R3k5bkJWO0FBQ0Y7O0E4R3I5bkJBO0VBRVE7SUFDSTtFOUd1OW5CVjs7RThHcDluQk07SUFDSTtFOUd1OW5CVjs7RThHcDluQk07SUFDSTtFOUd1OW5CVjs7RThHcjluQlU7O0lBRUk7SUFDQTtFOUd3OW5CZDtBQUNGOztBK0dudG9CSTtFQUNJO0VBQ0E7QS9Hc3RvQlI7O0ErR2p0b0JRO0VBQ0k7QS9Hb3RvQlo7O0ErR2p0b0JROztFQUNJO0EvR3F0b0JaOztBK0dqdG9CSTtFQUNJO0EvR290b0JSOztBK0dqdG9CSTtFQUNJO0EvR290b0JSOztBK0dodG9CUTs7O0VBQ0k7QS9HcXRvQlo7O0ErR250b0JZOzs7RUFDSTtBL0d3dG9CaEI7O0ErR2x0b0JJOzs7RUFHSTtBL0dxdG9CUjs7QWdIOXZvQkE7OztFaEhtd29CRTs7QWdINXZvQk07RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoSCt2b0JaOztBZ0g3dm9CWTtFQUNJO0FoSGd3b0JoQjs7QWdIN3ZvQlk7RUFDSTtFQUNBO0VBQ0E7QWhIZ3dvQmhCOztBZ0g3dm9CWTs7RUFFSTtFQUNBO0FoSGd3b0JoQjs7QWdIOXZvQmdCOztFQUNJO0FoSGt3b0JwQjs7QWdIM3ZvQlk7RUFDSTtBaEg4dm9CaEI7O0FnSHR2b0JvQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FoSHl2b0J4Qjs7QWdIdnZvQndCO0VBQ0k7RUFDQTtFQUNBO0FoSDB2b0I1Qjs7QWdIdnZvQndCO0VBQ0k7RUFDQTtBaEgwdm9CNUI7O0FnSHB2b0JZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWhIdXZvQmhCOztBZ0hydm9CZ0I7RUFDSTtBaEh3dm9CcEI7O0FnSGx2b0JRO0VBQ0k7RUFDQTtBaEhxdm9CWjs7QWdIaHZvQlk7RUFDSTtBaEhtdm9CaEI7O0FnSDV1b0JBO0VBR1k7SUFDSTtFaEg2dW9CZDs7RWdIM3VvQmM7SUFDSTtJQUNBO0VoSDh1b0JsQjtBQUNGOztBaUhyMW9CQTs7QUFFQTtFQUNRO0VBd0hKO0VBb0JBO0VBNEJBO0VBb0JBO0VBVUE7RUFpQkE7RUF5QkE7RUFtQkE7RUFFQTtFQTBCQTtFQXFFQTtFQTJCQTtFQTJDQTtFQWdCQTtFQWFBO0VBV0E7RUFhQTtFQWdCQTtFQXFCQTtFQUVBO0VBVUE7RUFtQ0E7RUFjQTtFQU9BO0VBYUE7RUFVQTtFQWtCQTtFQWlCQTtFQU1BO0VBcUNBO0VBUUE7RUEwQkE7RUFNQTtFQU1BO0VBMEJBO0VBWUE7RUFZQTtFQU9BO0VBRUE7RUF5QkE7RUEwRUE7RUF3QkE7RUFnQ0E7RUFzQkE7RUFZQTtFQW9CQTtFQW9CQTtFQW1CQTtFQUVBO0VBd0NBO0VBOEdBO0VBaURBO0VBZ0JBO0VBT0E7RUFNQTtFQWNBO0VBV0E7RUFPQTtFQUVBO0VBbUNBO0VBNkJBO0VBNkhBO0VBNEJBO0VBcUJBO0VBT0E7RUFhQTtFQVFBO0VBTUE7RUFXQTtBakg0MmxCSjs7QWlINTVvQlE7RUFGUjtJQXNDUTtJQWNBO0lBK0JBO0VqSGsxb0JOOztFaUhsNm9CTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO09BQUE7UUFBQTtZQUFBO0lBQ0E7RWpIcTZvQlY7O0VpSGw2b0JNO0lBQ0k7SUFBa0I7SUFDbEI7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VqSHM2b0JWOztFaUhuNm9CTTtJQUNJO0VqSHM2b0JWOztFaUhuNm9CTTtJQUNJO0VqSHM2b0JWOztFaUhuNm9CTTtJQUNJO0lBQ0E7SUFDQTtFakhzNm9CVjs7RWlIbDZvQk07SUFDSTtJQUNBO0lBQ0E7SUFDQTtFakhxNm9CVjs7RWlIbDZvQk07SUFDSTtJQUNBO0lBQ0E7RWpIcTZvQlY7O0VpSGo2b0JNO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWpIbzZvQlY7O0VpSGo2b0JNO0lBQ0k7RWpIbzZvQlY7O0VpSDU1b0JNO0lBQ0k7SUFDQTtFakgrNW9CVjs7RWlIMzVvQk07SUFDSTtJQUNBO0lBQ0E7SUFDQTtFakg4NW9CVjs7RWlIMzVvQk07SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VqSDg1b0JWOztFaUgzNW9CTTtJQUNJO0VqSDg1b0JWOztFaUgzNW9CTTtJQUNJO0VqSDg1b0JWOztFaUgzNW9CTTtJQUNJO0lBQ0E7SUFDQTtFakg4NW9CVjs7RWlIMzVvQk07SUFDSTtFakg4NW9CVjtBQUNGOztBaUgxNW9CSTtFQUNJO0lBQ0k7SUFDQTtFakg2NW9CVjs7RWlIMTVvQk07Ozs7SUFFSTtJQUNBO0lBQ0E7SUFDQTtFakgrNW9CVjs7RWlINTVvQk07SUFDSTtFakgrNW9CVjtBQUNGOztBaUgzNW9CSTtFQUNJO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7RWpIODVvQlY7O0VpSDM1b0JNO0lBQ0k7RWpIODVvQlY7O0VpSDM1b0JNO0lBQ0k7SUFDQTtFakg4NW9CVjs7RWlIMzVvQk07SUFDSTtJQUNBO0VqSDg1b0JWOztFaUgzNW9CTTtJQUNJO0VqSDg1b0JWO0FBQ0Y7O0FpSDE1b0JJO0VBQ0k7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWpINjVvQlY7O0VpSDE1b0JNO0lBQ0k7SUFDQTtFakg2NW9CVjtBQUNGOztBaUh6NW9CSTtFQUNJOzs7O0lBSUk7RWpINDVvQlY7QUFDRjs7QWlIeDVvQkk7RUFDSTtJQUNJO0VqSDI1b0JWOztFaUh4NW9CTTtJQUNJO0lBQ0E7RWpIMjVvQlY7O0VpSHg1b0JNO0lBQ0k7SUFDQTtFakgyNW9CVjtBQUNGOztBaUh2NW9CSTtFQUNJO0VBQ0E7QWpIMDVvQlI7O0FpSHY1b0JJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtVQUFBO0FqSDA1b0JSOztBaUh2NW9CSTtFQUNJO0lBQUs7RWpIMjVvQlg7O0VpSDE1b0JNO0lBQU87RWpIODVvQmI7QUFDRjs7QWlIMzVvQkk7RUFDSTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0VqSDg1b0JWOztFaUgzNW9CTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFakg4NW9CVjtBQUNGOztBaUh4NW9CSTtFQUNJO0lBQ0k7SUFDQTtJQUNBO0VqSDI1b0JWOztFaUh4NW9CTTtJQUNJO0VqSDI1b0JWOztFaUh4NW9CTTs7SUFDSTtFakg0NW9CVjs7RWlIejVvQk07SUFDSTtFakg0NW9CVjs7RWlIejVvQk07SUFDSTtJQUNBO0VqSDQ1b0JWO0FBQ0Y7O0FpSHg1b0JJO0VBalNKO0lBMlNRO0lBWUE7SUFTQTtJQU9BO0lBY0E7SUFVQTtFakhvMm9CTjs7RWlIajZvQk07SUFDSTtFakhvNm9CVjs7RWlIajZvQk07SUFDSTtJQUNBO0VqSG82b0JWOztFaUhoNm9CTTs7SUFDSTtJQUNBO0lBQ0E7RWpIbzZvQlY7O0VpSGo2b0JNO0lBQ0k7SUFDQTtFakhvNm9CVjs7RWlIaDZvQk07O0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFakhvNm9CVjs7RWlIaDZvQk07SUFDSTtJQUNBO0lBQ0E7RWpIbTZvQlY7O0VpSC81b0JNO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFakhrNm9CVjs7RWlILzVvQk07SUFDSTtJQUNBO0VqSGs2b0JWOztFaUg5NW9CTTtJQUNJO0lBQ0E7RWpIaTZvQlY7O0VpSDk1b0JNO0lBQ0k7RWpIaTZvQlY7O0VpSDc1b0JNOztJQUNJO0VqSGk2b0JWO0FBQ0Y7O0FpSDc1b0JJO0VBQ0k7SUFDSTtFakhnNm9CVjs7RWlINzVvQk07SUFDSTtFakhnNm9CVjs7RWlINzVvQk07O0lBQ0k7SUFDQTtFakhpNm9CVjs7RWlIOTVvQk07SUFDSTtJQUNBO0VqSGk2b0JWOztFaUg5NW9CTTtJQUNJO0lBQ0E7SUFDQTtFakhpNm9CVjtBQUNGOztBaUg3NW9CSTtFQUNJO0lBQ0k7SUFDQTtFakhnNm9CVjs7RWlINzVvQk07SUFDSTtFakhnNm9CVjs7RWlINzVvQk07OztJQUdJO0VqSGc2b0JWOztFaUg3NW9CTTtJQUNJO0VqSGc2b0JWOztFaUg3NW9CTTtJQUNJO0lBQ0E7RWpIZzZvQlY7O0VpSDc1b0JNO0lBQ0k7SUFDQTtFakhnNm9CVjs7RWlINzVvQk07SUFDSTtJQUNBO0lBQ0E7RWpIZzZvQlY7O0VpSDc1b0JNO0lBQ0k7SUFDQTtFakhnNm9CVjtBQUNGOztBaUg1NW9CSTtFQUNJO0lBRUk7RWpIODVvQlY7O0VpSDM1b0JNO0lBQ0k7RWpIODVvQlY7QUFDRjs7QWlIdDVvQkk7RUFDSTtJQUNJO0lBQ0E7SUFDQTtFakh5NW9CVjs7RWlIdDVvQk07SUFDSTtFakh5NW9CVjtBQUNGOztBaUhyNW9CSTtFQUNJO0VBQ0E7QWpIdzVvQlI7O0FpSHI1b0JJO0VBQ0k7RUFDQTtBakh3NW9CUjs7QWlIcDVvQkk7RUFDSTtJQUNJO0VqSHU1b0JWO0FBQ0Y7O0FpSHA1b0JJO0VBQ0k7SUFDSTtFakh1NW9CVjtBQUNGOztBaUhuNW9CSTtFQUNJO0lBQ0k7SUFDQTtFakhzNW9CVjs7RWlIbjVvQk07SUFDSTtFakhzNW9CVjs7RWlIbjVvQk07SUFDSTtFakhzNW9CVjtBQUNGOztBaUhsNW9CSTtFQUNJO0lBQ0k7RWpIcTVvQlY7O0VpSGw1b0JNO0lBQ0k7RWpIcTVvQlY7O0VpSGw1b0JNO0lBQ0k7SUFDQTtFakhxNW9CVjs7RWlIbDVvQk07SUFDSTtJQUNBO0VqSHE1b0JWO0FBQ0Y7O0FpSC80b0JJOzs7OztFQUdJO0VBQWtCO0VBQ2xCO0VBQWlCO0VBQ2pCO0VBQ0E7QWpIczVvQlI7O0FpSGw1b0JJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpIcTVvQlI7O0FpSGw1b0JJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpIcTVvQlI7O0FpSGw1b0JJO0VBQ0k7RUFDQTtBakhxNW9CUjs7QWlIajVvQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtLQUFBO01BQUE7VUFBQTtFQUNBO0FqSG81b0JSOztBaUhoNW9CSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FqSG01b0JSOztBaUhoNW9CSTtFQUNJO0VBQ0E7RUFDQTtBakhtNW9CUjs7QWlILzRvQkk7RUFDSTtFQUNBO0VBQ0E7QWpIazVvQlI7O0FpSDk0b0JJOzs7OztFQUdJO0FqSG01b0JSOztBaUhoNW9CSTtFQUNJO0VBQ0E7RUFDQTtBakhtNW9CUjs7QWlILzRvQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpIazVvQlI7O0FpSDk0b0JJOzs7RUFFSTtFQUNBO0VBQ0E7QWpIazVvQlI7O0FpSC80b0JJO0VBQ0k7RUFDQTtBakhrNW9CUjs7QWlILzRvQkk7RUFDSTtFQUNBO0FqSGs1b0JSOztBaUg5NG9CSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FqSGk1b0JSOztBaUg5NG9CSTtFQUNJO0VBQ0E7QWpIaTVvQlI7O0FpSHo0b0JJOztFQUVJO0FqSDQ0b0JSOztBaUh4NG9CSTtFQTFvQko7SUFtcEJRO0lBV0E7SUFNQTtFakhxM29CTjs7RWlIOTRvQk07SUFDSTtFakhpNW9CVjs7RWlIOTRvQk07SUFDSTtFakhpNW9CVjs7RWlINzRvQk07SUFDSTtJQUNBO0lBQ0E7RWpIZzVvQlY7O0VpSDc0b0JNO0lBQ0k7RWpIZzVvQlY7O0VpSDU0b0JNOztJQUNJO0lBQ0E7RWpIZzVvQlY7O0VpSDU0b0JNO0lBQ0k7RWpIKzRvQlY7O0VpSDU0b0JNO0lBQ0k7RWpIKzRvQlY7QUFDRjs7QWlIMzRvQkk7Ozs7O0VBR0k7RUFDQTtBakhnNW9CUjs7QWlINTRvQkk7RUFDSTtFQUNBO0FqSCs0b0JSOztBaUg1NG9CSTtFQUNJO0VBQ0E7QWpIKzRvQlI7O0FpSDU0b0JJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO1VBQUE7QWpIKzRvQlI7O0FpSDM0b0JJOzs7RUFDSTtFQUNBO0FqSGc1b0JSOztBaUg1NG9CSTtFQUNJO0VBQ0E7QWpIKzRvQlI7O0FpSDM0b0JJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWpIODRvQlI7O0FpSDM0b0JJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpIODRvQlI7O0FpSDM0b0JJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakg4NG9CUjs7QWlIMTRvQkk7Ozs7RUFFSTtFQUNBO0VBQ0E7QWpIKzRvQlI7O0FpSDU0b0JJO0VBQ0k7QWpIKzRvQlI7O0FpSDM0b0JJO0VBQ0k7Ozs7SUFFSTtJQUFpQjtFakhpNW9CM0I7O0VpSDk0b0JNO0lBQ0k7RWpIaTVvQlY7QUFDRjs7QWlINzRvQkk7RUFDSTtJQUNJO0VqSGc1b0JWO0FBQ0Y7O0FpSDE0b0JJO0VBeHhCSjtJQXl5QlE7RWpIODNvQk47O0VpSDk0b0JNO0lBQ0k7SUFDQTtJQUNBO0VqSGk1b0JWOztFaUg5NG9CTTtJQUNJO0lBQ0E7RWpIaTVvQlY7O0VpSDk0b0JNO0lBQ0k7SUFDQTtFakhpNW9CVjs7RWlINzRvQk07SUFDSTtJQUNBO0VqSGc1b0JWO0FBQ0Y7O0FpSDU0b0JJO0VBRUk7SUFDSTtFakg4NG9CVjs7RWlIMzRvQk07SUFDSTtFakg4NG9CVjs7RWlIMzRvQk07SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWpIODRvQlY7O0VpSDM0b0JNO0lBQ0k7RWpIODRvQlY7O0VpSDM0b0JNO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7RWpIODRvQlY7O0VpSDM0b0JNO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7RWpIODRvQlY7O0VpSDM0b0JNO0lBQ0k7RWpIODRvQlY7O0VpSDM0b0JNO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7RWpIODRvQlY7O0VpSDM0b0JNO0lBQ0k7SUFDQTtFakg4NG9CVjs7RWlIMzRvQk07SUFDSTtJQUNBO0VqSDg0b0JWOztFaUgzNG9CTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWpIODRvQlY7QUFDRjs7QWlIMzRvQkk7RUFDSTtJQUNJO0VqSDg0b0JWO0FBQ0Y7O0FpSDE0b0JJO0VBQ0k7SUFDSTtJQUNBO0VqSDY0b0JWOztFaUgxNG9CTTs7SUFDSTtJQUNBO0VqSDg0b0JWOztFaUgzNG9CTTtJQUNJO0lBQ0E7RWpIODRvQlY7O0VpSDM0b0JNO0lBQ0k7SUFDQTtJQUNBO0VqSDg0b0JWO0FBQ0Y7O0FpSDE0b0JJO0VBbjVCSjtJQXk1QlE7RWpIeTRvQk47O0VpSDk0b0JNOztJQUNJO0lBQ0E7RWpIazVvQlY7O0VpSDk0b0JNO0lBQ0k7SUFDQTtJQUNBO0VqSGk1b0JWOztFaUg5NG9CTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWpIaTVvQlY7O0VpSDk0b0JNO0lBQ0k7SUFDQTtJQUNBO0VqSGk1b0JWO0FBQ0Y7O0FpSDc0b0JJO0VBQ0k7SUFDSTtFakhnNW9CVjs7RWlINzRvQk07O0lBQ0k7SUFDQTtFakhpNW9CVjs7RWlIOTRvQk07SUFDSTtJQUNBO0VqSGk1b0JWOztFaUg5NG9CTTs7SUFDSTtJQUNBO0VqSGs1b0JWO0FBQ0Y7O0FpSDk0b0JJO0VBQ0k7SUFDSTtFakhpNW9CVjs7RWlINzRvQk07SUFDSTtFakhnNW9CVjtBQUNGOztBaUg1NG9CSTtFQUNJO0lBQ0k7RWpIKzRvQlY7O0VpSDU0b0JNO0lBQ0k7RWpIKzRvQlY7O0VpSDU0b0JNO0lBQ0k7SUFDQTtFakgrNG9CVjs7RWlINTRvQk07SUFDSTtFakgrNG9CVjtBQUNGOztBaUgzNG9CSTtFQUNJO0VBQ0E7QWpIODRvQlI7O0FpSDM0b0JJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtVQUFBO0FqSDg0b0JSOztBaUgxNG9CSTtFQUNJO0lBQ0k7RWpINjRvQlY7O0VpSDE0b0JNO0lBQ0k7RWpINjRvQlY7O0VpSDE0b0JNO0lBQ0k7RWpINjRvQlY7O0VpSDE0b0JNOztJQUNJO0VqSDg0b0JWO0FBQ0Y7O0FpSHg0b0JJO0VBQ0k7SUFDSTtJQUNBO0lBQ0E7SUFDQTtFakgyNG9CVjs7RWlIeDRvQk07SUFDSTtFakgyNG9CVjs7RWlIeDRvQk07SUFDSTtJQUNBO0lBQ0E7SUFDQTtFakgyNG9CVjs7RWlIeDRvQk07SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWpIMjRvQlY7QUFDRjs7QWlIeDRvQkk7RUFDSTtJQUNJO0VqSDI0b0JWOztFaUh4NG9CTTtJQUNJO0VqSDI0b0JWO0FBQ0Y7O0FpSHY0b0JJO0VBMWpDSjtJQThrQ1E7SUFpQ0E7SUFnQkE7SUFxQkE7RWpIcXpvQk47O0VpSDk0b0JNO0lBQ0k7RWpIaTVvQlY7O0VpSDk0b0JNO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWpIaTVvQlY7O0VpSDk0b0JNO0lBQ0k7SUFDQTtFakhpNW9CVjs7RWlINzRvQk07SUFDSTtJQUNBO0lBQ0E7SUFDQTtFakhnNW9CVjs7RWlINzRvQk07SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWpIZzVvQlY7O0VpSDc0b0JNO0lBQ0k7SUFDQTtFakhnNW9CVjs7RWlINzRvQk07SUFDSTtFakhnNW9CVjs7RWlINzRvQk07SUFDSTtJQUNBO0lBQ0E7SUFDQTtFakhnNW9CVjs7RWlINTRvQk07SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFakgrNG9CVjs7RWlINTRvQk07SUFDSTtJQUNBO0VqSCs0b0JWOztFaUgzNG9CTTtJQUNJO0lBQ0E7SUFDQTtFakg4NG9CVjs7RWlIMzRvQk07SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFakg4NG9CVjs7RWlIMzRvQk07SUFDSTtFakg4NG9CVjs7RWlIMTRvQk07SUFDSTtJQUNBO0lBQ0E7SUFDQTtFakg2NG9CVjs7RWlIMTRvQk07SUFDSTtFakg2NG9CVjtBQUNGOztBaUgxNG9CSTtFQUNJO0lBQ0k7RWpINjRvQlY7QUFDRjs7QWlIejRvQkk7RUFDSTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VqSDQ0b0JWOztFaUh6NG9CTTtJQUNJO0VqSDQ0b0JWOztFaUh6NG9CTTtJQUNJO0VqSDQ0b0JWOztFaUh6NG9CTTtJQUNJO0lBQ0E7RWpINDRvQlY7O0VpSHo0b0JNO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VqSDQ0b0JWOztFaUh6NG9CTTtJQUNJO0VqSDQ0b0JWOztFaUh6NG9CTTtJQUNJO0VqSDQ0b0JWO0FBQ0Y7O0FpSHo0b0JJO0VBQ0k7SUFDSTtFakg0NG9CVjtBQUNGOztBaUh4NG9CSTtFQUNJO0lBQ0k7RWpIMjRvQlY7O0VpSHg0b0JNO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VqSDI0b0JWO0FBQ0Y7O0FpSGg0b0JJO0VBQ0k7RUFDQTtBakhtNG9CUjs7QWlILzNvQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakhrNG9CUjs7QWlIOTNvQkk7RUFDSTtJQUNJO0VqSGk0b0JWOztFaUg5M29CTTtJQUNJO0VqSGk0b0JWO0FBQ0Y7O0FpSDczb0JJO0VBQ0k7SUFDSTtFakhnNG9CVjtBQUNGOztBaUgxM29CSTtFQXh4Q0o7SUE2eENRO0lBUUE7SUFTQTtFakgyMm9CTjs7RWlIaDRvQk07SUFDSTtFakhtNG9CVjs7RWlILzNvQk07SUFDSTtJQUNBO0lBQ0E7SUFDQTtFakhrNG9CVjs7RWlIOTNvQk07SUFDSTtFakhpNG9CVjs7RWlIOTNvQk07SUFDSTtFakhpNG9CVjs7RWlINzNvQk07SUFDSTtJQUNBO0lBQ0E7RWpIZzRvQlY7O0VpSDczb0JNO0lBQ0k7RWpIZzRvQlY7QUFDRjs7QWlINTNvQkk7RUFDSTtJQUNJO0VqSCszb0JWOztFaUg1M29CTTtJQUNJO0VqSCszb0JWOztFaUg1M29CTTtJQUNJO0lBQ0E7SUFDQTtFakgrM29CVjs7RWlINTNvQk07O0lBQ0k7RWpIZzRvQlY7O0VpSDczb0JNO0lBQ0k7RWpIZzRvQlY7O0VpSDczb0JNO0lBQ0k7RWpIZzRvQlY7QUFDRjs7QWlINTNvQkk7RUF4MUNKO0lBeTFDUTtJQWlGQTtFakhnem9CTjs7RWlIaDRvQk07SUFDSTtFakhtNG9CVjs7RWlIaDRvQk07SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VqSG00b0JWOztFaUhoNG9CTTtJQUNJO0lBQ0E7SUFDQTtFakhtNG9CVjs7RWlIaDRvQk07SUFDSTtJQUNBO0lBQ0E7RWpIbTRvQlY7O0VpSGg0b0JNOztJQUVJO0lBQ0E7SUFDQTtPQUFBO0lBQ0E7RWpIbTRvQlY7O0VpSGg0b0JNO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7RWpIbTRvQlY7O0VpSGg0b0JNO0lBQ0k7SUFDQTtFakhtNG9CVjs7RWlIaDRvQk07SUFDSTtJQUNBO0lBQ0E7SUFDQTtFakhtNG9CVjs7RWlIaDRvQk07SUFDSTtJQUNBO0lBQ0E7RWpIbTRvQlY7O0VpSGg0b0JNO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFakhtNG9CVjs7RWlIaDRvQk07SUFDSTtJQUNBO0VqSG00b0JWOztFaUhoNG9CTTtJQUNJO0lBQ0E7RWpIbTRvQlY7O0VpSGg0b0JNO0lBQ0k7SUFDQTtFakhtNG9CVjs7RWlILzNvQk07SUFDSTtJQUNBO0lBQ0E7SUFDQTtFakhrNG9CVjs7RWlILzNvQk07SUFDSTtJQUNBO0lBQ0E7SUFDQTtFakhrNG9CVjs7RWlILzNvQk07SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VqSGs0b0JWOztFaUgvM29CTTtJQUNJO0VqSGs0b0JWOztFaUgvM29CTTtJQUNJO0VqSGs0b0JWOztFaUgvM29CTTtJQUNJO0VqSGs0b0JWO0FBQ0Y7O0FpSC8zb0JJO0VBQ0k7SUFDSTtFakhrNG9CVjtBQUNGOztBaUg5M29CSTtFQXI5Q0o7SUFrK0NRO0VqSHMzb0JOOztFaUhsNG9CTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0VqSHE0b0JWOztFaUhsNG9CTTtJQUNJO0lBQ0E7RWpIcTRvQlY7O0VpSGo0b0JNO0lBQ0k7SUFDQTtJQUNBO0VqSG80b0JWOztFaUhqNG9CTTtJQUNJO0lBQ0E7SUFDQTtFakhvNG9CVjtBQUNGOztBaUhoNG9CSTtFQUNJO0lBQ0k7RWpIbTRvQlY7O0VpSGg0b0JNO0lBQ0k7RWpIbTRvQlY7O0VpSGg0b0JNO0lBQ0k7SUFDQTtFakhtNG9CVjs7RWlIaDRvQk07O0lBQ0k7SUFDQTtFakhvNG9CVjtBQUNGOztBaUhoNG9CSTtFQUNJO0lBQ0k7RWpIbTRvQlY7QUFDRjs7QWlILzNvQkk7RUFDSTtJQUNJO0lBQ0E7RWpIazRvQlY7O0VpSC8zb0JNOztJQUNJO0lBQ0E7RWpIbTRvQlY7QUFDRjs7QWlILzNvQkk7RUFDSTtJQUNJO0lBQ0E7RWpIazRvQlY7QUFDRjs7QWlIOTNvQkk7RUFDSTtFQUNBO0FqSGk0b0JSOztBaUg3M29CSTtFQUNJO0lBQ0k7RWpIZzRvQlY7O0VpSDczb0JNO0lBQ0k7RWpIZzRvQlY7QUFDRjs7QWlINTNvQkk7RUFDSTtJQUNJO0VqSCszb0JWOztFaUg1M29CTTtJQUNJO0VqSCszb0JWO0FBQ0Y7O0FpSDMzb0JBOztFakgrM29CRTs7QWlINTNvQkY7O0VBaUVJO0FqSGcwb0JKOztBaUg5M29CSTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtLQUFBO0VBQ0E7RUFDQTtFQUNBO0FqSGs0b0JSOztBaUgvM29CSTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpIbTRvQlI7O0FpSGg0b0JJOztFQUNJO0VBQ0E7RUFDQTtBakhvNG9CUjs7QWlIajRvQkk7O0VBQ0k7QWpIcTRvQlI7O0FpSG40b0JROztFQUNJO0FqSHU0b0JaOztBaUhuNG9CSTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakh1NG9CUjs7QWlIcDRvQkk7Ozs7OztFQUNJO0VBQ0E7QWpINDRvQlI7O0FpSHo0b0JJOztFQUNJO0VBQ0E7QWpINjRvQlI7O0FpSHY0b0JBOztFakgyNG9CRTs7QWlIdjRvQkU7RUFDSTtFQUNBO0FqSDA0b0JSOztBaUh4NG9CUTtFQUNJO0FqSDI0b0JaOztBaUh2NG9CSTtFQUNJO0VBQ0E7QWpIMDRvQlI7O0FpSHY0b0JJO0VBQ0k7QWpIMDRvQlI7O0FpSHY0b0JJO0VBQ0k7RUFDQTtBakgwNG9CUjs7QWlIdjRvQkk7RUFDSTtFQUNBO0FqSDA0b0JSOztBaUh4NG9CUTtFQUNJO0VBQ0E7RUFDQTtBakgyNG9CWjs7QWlIdjRvQkk7RUFDSTtFQUFBO0VBQUE7QWpIMDRvQlI7O0FpSHY0b0JJO0VBQ0k7RUFDQTtBakgwNG9CUjs7QWlIdjRvQkk7RUFDSTtBakgwNG9CUjs7QWlIdjRvQkk7RUFDSTtBakgwNG9CUjs7QWlIdjRvQkk7RUFDSTtBakgwNG9CUjs7QWtIbmtzQkk7Ozs7Ozs7Ozs7OztFQUNJO0VBQ0E7QWxIaWxzQlI7O0FrSC9rc0JROzs7Ozs7Ozs7Ozs7RUFDSTtBbEg2bHNCWjs7QWtIemxzQkk7RUFDSTtFQUNBO0FsSDRsc0JSOztBa0h6bHNCSTs7RUFDSTtFQUNBO0FsSDZsc0JSOztBa0gzbHNCUTs7RUFDSTtBbEgrbHNCWjs7QWtIM2xzQkk7RUFFSTtFQUNBO0VBQ0E7QWxINmxzQlI7O0FrSDFsc0JJO0VBR0k7QWxIMmxzQlI7O0FrSHhsc0JJO0VBRUk7QWxIMGxzQlI7O0FrSHRsc0JJO0VBQ0k7RUFDQTtBbEh5bHNCUjs7QWtIdmxzQlE7RUFDSTtBbEgwbHNCWjs7QWtIcGxzQkE7RUFDSTtBbEh1bHNCSjs7QW1IL29zQkk7RUFDSTtBbkhrcHNCUjs7QW1IaHBzQlE7RUFDSTtFQUNBO0FuSG1wc0JaOztBbUhocHNCUTtFQUNJO0VBQ0E7QW5IbXBzQlo7O0FtSGpwc0JZO0VBQ0k7QW5Ib3BzQmhCOztBbUhscHNCZ0I7RUFDSTtBbkhxcHNCcEI7O0FtSC9vc0JJO0VBQ0k7QW5Ia3BzQlI7O0FtSC9vc0JJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QW5Ia3BzQlI7O0FtSC9vc0JJO0VBQ0k7RUFDQTtBbkhrcHNCUjs7QW1IaHBzQlE7RUFDSTtFQUNBO0VBQ0E7QW5IbXBzQlo7O0FtSC9vc0JJO0VBQ0k7RUFDQTtBbkhrcHNCUjs7QW1IL29zQkk7RUFDSTtFQUNBO0VBQ0E7QW5Ia3BzQlI7O0FvSGpzc0JJOztFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBIcXNzQk47O0FvSG5zc0JNOztFQUNFO0FwSHVzc0JSOztBb0huc3NCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBIc3NzQk47O0FvSG5zc0JJOztFQUNFO0VBQ0E7RUFDQTtBcEh1c3NCTjs7QW9IcnNzQk07O0VBQ0U7QXBIeXNzQlI7O0FvSG5zc0JFOztFQUNFO0VBQ0E7RUFDQTtFQUNBO0FwSHVzc0JKOztBb0hsc3NCSTs7RUFDRTtFQUNBO0VBQ0E7QXBIc3NzQk47O0FvSG5zc0JJO0VBQ0U7RUFDQTtFQUNBO0FwSHNzc0JOOztBb0hqc3NCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBIb3NzQko7O0FvSGhzc0JFO0VBRUk7O0lBQ0U7RXBIbXNzQk47O0VvSGhzc0JJO0lBQ0U7RXBIbXNzQk47O0VvSGhzc0JJOztJQUNFO0VwSG9zc0JOOztFb0hoc3NCRTs7SUFDRTtFcEhvc3NCSjtBQUNGOztBcUg1eHNCSTtFQUNJO0VBQ0E7QXJIK3hzQlI7O0FxSDd4c0JRO0VBQ0k7QXJIZ3lzQlo7O0FxSDV4c0JJO0VBQ0k7RUFDQTtFQUNBO0FySCt4c0JSOztBcUg3eHNCUTtFQUNJO0FySGd5c0JaOztBcUg1eHNCSTtFQUNJO0FySCt4c0JSOztBcUg3eHNCUTtFQUNJO0FySGd5c0JaOztBc0h0enNCQTtFQUNJO0F0SHl6c0JKOztBc0h0enNCSTtFQUNJO0VBQ0E7QXRIeXpzQlI7O0FzSHZ6c0JRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7VUFBQTtBdEgwenNCWjs7QXNIdnpzQlE7O0VBQ0k7RUFDQTtBdEgyenNCWjs7QXNIdHpzQkk7RUFDSTtVQUFBO0F0SHl6c0JSOztBc0hwenNCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0SHV6c0JaOztBc0hyenNCWTtFQUNJO0F0SHd6c0JoQjs7QXNIcnpzQlk7RUFDSTtVQUFBO0F0SHd6c0JoQjs7QXNIcHpzQlk7RUFDSTtBdEh1enNCaEI7O0FzSHJ6c0JnQjtFQUhKO0lBSVE7SUFDQTtFdEh5enNCbEI7QUFDRjs7QXNIcnpzQlk7RUFDSTtFQUNBO0VBQ0E7QXRId3pzQmhCOztBc0h0enNCZ0I7RUFMSjtJQU1RO0V0SDB6c0JsQjtBQUNGOztBc0h4enNCZ0I7RUFDSTtFQUNBO0VBQ0E7QXRIMnpzQnBCOztBc0h4enNCZ0I7RUFDSTtFQUNBO0VBQ0E7S0FBQTtFQUNBO0F0SDJ6c0JwQjs7QXNIeHpzQmdCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRIMnpzQnBCOztBc0h0enNCWTtFQUNJO0F0SHl6c0JoQjs7QXNIdnpzQmdCO0VBSEo7SUFJUTtJQUNBO0V0SDJ6c0JsQjtBQUNGOztBc0h6enNCZ0I7O0VBQ0k7RUFDQTtFQUNBO0F0SDZ6c0JwQjs7QXNIM3pzQm9COztFQUNJO0VBQ0E7QXRIK3pzQnhCOztBc0g3enNCd0I7O0VBQ0k7RUFDQTtBdEhpMHNCNUI7O0FzSDN6c0JvQjtFQUNJO0F0SDh6c0J4Qjs7QXNIeHpzQlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBdEgyenNCaEI7O0FzSHp6c0JnQjtFQU5KO0lBT1E7SUFDQTtJQUNBO0V0SDZ6c0JsQjtBQUNGOztBc0gzenNCZ0I7RUFDSTtBdEg4enNCcEI7O0FzSDV6c0JvQjtFQUhKO0lBSVE7SUFDQTtFdEhnMHNCdEI7QUFDRjs7QXNIM3pzQm9CO0VBRko7O0lBR1E7SUFDQTtFdEhnMHNCdEI7QUFDRjs7QXNIeHpzQkE7RUFDSTtJQUFXO0V0SDR6c0JiOztFc0gzenNCRTtJQUFNO0V0SCt6c0JSO0FBQ0Y7O0FzSGwwc0JBO0VBQ0k7SUFBVztFdEg0enNCYjs7RXNIM3pzQkU7SUFBTTtFdEgrenNCUjtBQUNGOztBc0g3enNCQTtFQUNJO0lBQ0k7SUFDQTtFdEhnMHNCTjs7RXNIOXpzQkU7SUFDSTtJQUNBO0V0SGkwc0JOO0FBQ0Y7O0FzSDl6c0JBO0VBQ0k7SUFDSTtJQUNBO0V0SGkwc0JOOztFc0gvenNCRTtJQUNJO0lBQ0E7RXRIazBzQk47QUFDRjs7QXNIMTBzQkE7RUFDSTtJQUNJO0lBQ0E7RXRIaTBzQk47O0VzSC96c0JFO0lBQ0k7SUFDQTtFdEhrMHNCTjtBQUNGOztBc0g5enNCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0SGkwc0JKOztBc0gvenNCSTtFQUNJO0VBQ0E7QXRIazBzQlI7O0FzSDd6c0JBO0VBRVE7SUFDSTtJQUNBO0V0SCt6c0JWOztFc0g3enNCVTs7SUFDSTtFdEhpMHNCZDs7RXNINXpzQk07SUFDSTtJQUNBO0V0SCt6c0JWOztFc0gzenNCTTtJQUNJO0V0SDh6c0JWO0FBQ0Y7O0FzSHp6c0JBO0VBQ0k7RUFDQTtBdEg0enNCSjs7QXNIenpzQkE7RUFDSTtFQUNBO0F0SDR6c0JKOztBdUh4aXRCSTtFQUNJO0F2SDJpdEJSOztBdUh6aXRCUTtFQUNJO0VBQ0E7QXZINGl0Qlo7O0F1SHZpdEJJO0VBQ0k7RUFDQTtFQUNBO0F2SDBpdEJSOztBdUh4aXRCUTtFQUNJO0F2SDJpdEJaOztBdUh6aXRCWTtFQUNJO0F2SDRpdEJoQjs7QXVIcml0QlE7RUFDSTtFQUNBO0F2SHdpdEJaOztBdUh0aXRCWTtFQUNJO0VBQ0E7QXZIeWl0QmhCOztBdUhuaXRCSTtFQUNJO0F2SHNpdEJSOztBdUhwaXRCUTtFQUNJO0F2SHVpdEJaOztBd0hwbHRCSTtFQUNJO0F4SHVsdEJSOztBd0hybHRCUTtFQUNJO0F4SHdsdEJaOztBd0hwbHRCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F4SHVsdEJSOztBd0hybHRCUTs7Ozs7Ozs7Ozs7O0VBQ0k7RUFDQTtBeEhtbXRCWjs7QXdIaG10QlE7RUFDSTtBeEhtbXRCWjs7QXdIaG10QlE7O0VBQ0k7RUFDQTtBeEhvbXRCWjs7QXdIam10QlE7RUFDSTtFQUNBO0F4SG9tdEJaOztBeUhsb3RCSTtFQUNJO0F6SHFvdEJSOztBeUhsb3RCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F6SHFvdEJSOztBeUhsb3RCSTtFQUNJO0VBQ0E7RUFDQTtBekhxb3RCUjs7QXlIam90QlE7RUFDSTtBekhvb3RCWjs7QXlIaG90Qkk7RUFDSTtBekhtb3RCUjs7QXlIaG90Qkk7RUFDSTtFQUNBO0F6SG1vdEJSOztBeUhob3RCSTtFQUNJO0lBQ0k7RXpIbW90QlY7O0V5SGhvdEJNO0lBQ0k7RXpIbW90QlY7QUFDRjs7QTBIMXF0Qkk7RUFDSTtFQUNBO0VBQ0E7QTFINnF0QlI7O0EwSDNxdEJRO0VBQ0k7RUFDQTtBMUg4cXRCWjs7QTBIMXF0Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFINnF0QlI7O0EwSDFxdEJJO0VBQ0k7RUFDQTtFQUNBO0tBQUE7QTFINnF0QlI7O0EwSDFxdEJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTFINnF0QlI7O0EwSDFxdEJJO0VBQ0k7QTFINnF0QlI7O0EwSDFxdEJJO0VBQ0k7QTFINnF0QlI7O0EwSDFxdEJJO0VBQ0k7QTFINnF0QlI7O0EwSDFxdEJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTFINnF0QlI7O0EwSDFxdEJJO0VBQ0k7RUFDQTtBMUg2cXRCUjs7QTBIMXF0Qkk7RUFDSTtFQUNBO0ExSDZxdEJSOztBMEgxcXRCSTtFQUNJO0VBQ0E7QTFINnF0QlI7O0EwSDFxdEJJO0VBQ0k7RUFDQTtBMUg2cXRCUjs7QTBIMXF0Qkk7RUFDSTtFQUNBO0ExSDZxdEJSOztBMkh4dnRCQTtFQUNJO0EzSDJ2dEJKOztBMkgxdnRCSTtFQUNJO0VBQ0E7RUFDQTtBM0g2dnRCUjs7QTJIM3Z0QlE7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTNIK3Z0Qlo7O0EySDV2dEJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTNIK3Z0Qlo7O0EySDN2dEJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzSDh2dEJSOztBMkg1dnRCUTtFQUNJO0VBQ0E7QTNIK3Z0Qlo7O0EySDV2dEJRO0VBQ0k7RUFDQTtLQUFBO0EzSCt2dEJaOztBMkgzdnRCSTtFQUNJO0VBQ0E7QTNIOHZ0QlI7O0EySDV2dEJROztFQUNJO0VBQ0E7RUFDQTtFQUNBO0EzSGd3dEJaOztBMkg1dnRCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzSCt2dEJSOztBNEh6enRCSTtFQUNJO0VBQ0E7QTVINHp0QlI7O0E0SDF6dEJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVINnp0Qlo7O0E0SHp6dEJJO0VBQ0k7RUFDQTtBNUg0enRCUjs7QTRIMXp0QlE7RUFDSTtBNUg2enRCWjs7QTRIenp0Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVINHp0QlI7O0E0SHp6dEJJO0VBQ0k7QTVINHp0QlI7O0E2SHAydEJBOztFN0h3MnRCRTs7QTZIcDJ0QkY7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7VUFBQTtBN0h1MnRCSjs7QTZIcjJ0Qkk7RUFDSTtBN0h3MnRCUjs7QTZIdDJ0QlE7RUFDSTtFQUNBO0E3SHkydEJaOztBOEg3M3RCQTs7O0U5SGs0dEJFOztBOEh6M3RCTTtFQUNJO0E5SDQzdEJaOztBOEh6M3RCUTtFQUNJO0E5SDQzdEJaOztBOEh2M3RCUTtFQUNJO0VBQ0E7QTlIMDN0Qlo7O0ErSC80dEJBOzs7RS9IbzV0QkU7O0ErSC80dEJGO0VBQ0k7RUFFQTtFQStHQTtFQUtBO0VBaUJBO0VBT0E7RUF5QkE7RUFNQTtFQUtBO0VBd0NBO0VBd0NBO0VBT0E7RUFlQTtBL0hzb3RCSjs7QStIMzV0Qkk7RUFDSTtFQUNBO0VBQ0E7QS9IODV0QlI7O0ErSDU1dEJRO0VBQ0k7RUFDQTtFQUF1QjtFQUN2QjtFQUNBO0VBQ0E7RUFDQTtFQUFrQjtFQUNsQjtFQUNBO0VBQ0E7RUFDQTtBL0hpNnRCWjs7QStILzV0Qlk7O0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0hrNnRCaEI7O0ErSC81dEJZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0hrNnRCaEI7O0ErSGg2dEJnQjtFQUNJO0EvSG02dEJwQjs7QStILzV0Qlk7RUFDSTtFQUFhO0VBQ2I7RUFDQTtFQUNBO0EvSG02dEJoQjs7QStIaDZ0Qlk7O0VBQ0k7RUFDQTtBL0hvNnRCaEI7O0ErSGg2dEJZO0VBQ0k7RUFDQTtBL0htNnRCaEI7O0ErSDk1dEJJO0VBQ0k7RUFBYTtFQUNiO0VBQ0E7RUFDQTtLQUFBO0VBQ0E7RUFDQTtBL0hrNnRCUjs7QStILzV0Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBL0hrNnRCUjs7QStILzV0Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBL0hrNnRCUjs7QStILzV0Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9IazZ0QlI7O0ErSGg2dEJRO0VBQ0k7RUFDQTtBL0htNnRCWjs7QStIaDZ0QlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBL0htNnRCWjs7QStIaDZ0QlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvSG02dEJaOztBK0g5NXRCSTtFQUNJO0EvSGk2dEJSOztBK0g3NXRCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0EvSGc2dEJSOztBK0g5NXRCUTtFQUNJO0EvSGk2dEJaOztBK0gvNXRCWTtFQUNJO0VBQ0E7QS9IazZ0QmhCOztBK0g1NXRCSTtFQUNJO0VBQ0E7RUFDQTtBL0grNXRCUjs7QStIMzV0Qkk7RUFDSTtFQUFrQjtFQUNsQjtFQUFzQjtFQUN0QjtFQUNBO0VBQ0E7QS9IZzZ0QlI7O0ErSDk1dEJROztFQUVJO0VBQ0E7QS9IaTZ0Qlo7O0ErSDk1dEJRO0VBQ0k7RUFDQTtBL0hpNnRCWjs7QStIOTV0QlE7RUFDSTtFQUNBO0EvSGk2dEJaOztBK0g1NXRCSTtFQUNJO0VBQ0E7QS9IKzV0QlI7O0ErSDM1dEJJO0VBQ0k7QS9IODV0QlI7O0ErSDE1dEJJO0VBQ0k7SUFDSTtFL0g2NXRCVjs7RStIMzV0QlU7SUFDSTtJQUNBO0UvSDg1dEJkOztFK0g1NXRCYztJQUNJO0lBQ0E7SUFDQTtFL0grNXRCbEI7O0UrSDE1dEJNO0lBQ0k7SUFDQTtFL0g2NXRCVjs7RStIMTV0Qk07SUFDSTtJQUNBO0UvSDY1dEJWOztFK0gxNXRCTTtJQUNJO0UvSDY1dEJWOztFK0gzNXRCVTtJQUNJO0UvSDg1dEJkOztFK0gxNXRCTTtJQUNJO0UvSDY1dEJWO0FBQ0Y7O0ErSHo1dEJJO0VBQ0k7SUFDSTtFL0g0NXRCVjs7RStIMTV0QlU7SUFDSTtFL0g2NXRCZDs7RStIejV0Qk07SUFDSTtJQUNBO0UvSDQ1dEJWOztFK0h6NXRCTTtJQUNJO0lBQ0E7RS9INDV0QlY7O0UrSHo1dEJNO0lBQ0k7SUFDQTtFL0g0NXRCVjs7RStIeDV0QlU7SUFDSTtFL0gyNXRCZDs7RStIeDV0QlU7SUFDSTtFL0gyNXRCZDs7RStIdjV0Qk07SUFDSTtFL0gwNXRCVjtBQUNGOztBK0h0NXRCSTtFQUNJO0lBQ0k7RS9IeTV0QlY7QUFDRjs7QStIcjV0Qkk7RUFDSTs7OztJQUlJO0UvSHc1dEJWOztFK0hyNXRCTTs7SUFFSTtFL0h3NXRCVjtBQUNGOztBK0hwNXRCSTtFQUNJO0lBQ0k7RS9IdTV0QlY7O0UrSHI1dEJVO0lBQ0k7RS9IdzV0QmQ7O0UrSHA1dEJNOztJQUVJO0UvSHU1dEJWO0FBQ0Y7O0FnSWxzdUJBOztFaElzc3VCRTs7QWdJanN1QkU7RUFDSTtFQUNBO0VBQ0E7QWhJb3N1QlI7O0FnSWxzdUJRO0VBQ0k7RUFDQTtBaElxc3VCWjs7QWdJbHN1QlE7RUFDSTtFQUNBO0FoSXFzdUJaOztBZ0lsc3VCUTtFQUNJO0FoSXFzdUJaOztBZ0lsc3VCUTtFQUNJO0FoSXFzdUJaOztBZ0luc3VCWTtFQUNJO0FoSXNzdUJoQjs7QWdJanN1Qkk7RUFDSTtBaElvc3VCUjs7QWdJaHN1Qkk7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoSW9zdUJSOztBZ0lqc3VCSTtFQUNJO0FoSW9zdUJSOztBZ0lqc3VCSTtFQUNJO0FoSW9zdUJSOztBZ0loc3VCSTtFQUNJO0lBQ0k7RWhJbXN1QlY7O0VnSWpzdUJVO0lBQ0k7RWhJb3N1QmQ7QUFDRjs7QWlJL3Z1QlE7RUFDSTtFQUNBO0FqSWt3dUJaOztBaUkvdnVCZ0I7RUFDSTtBaklrd3VCcEI7O0FpSWh3dUJvQjtFQUNJO0FqSW13dUJ4Qjs7QWlJNXZ1Qkk7RUFDSTtBakkrdnVCUjs7QWlJNXZ1Qkk7RUFDSTtBakkrdnVCUjs7QWlJM3Z1QlE7RUFDSTtBakk4dnVCWjs7QWlJM3Z1QlE7OztFQUNJO0FqSWd3dUJaOztBaUk1dnVCSTs7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWpJaXd1QlI7O0FrSXh5dUJJO0VBQ0k7RUFDQTtFQUNBO0FsSTJ5dUJSOztBa0l0eXVCQTtFQUNJOzs7O0lBSUk7RWxJeXl1Qk47O0VrSXR5dUJFO0lBQ0k7SUFDQTtJQUNBO0VsSXl5dUJOOztFa0l0eXVCRTtJQUNJO0VsSXl5dUJOO0FBQ0Y7O0FtSW4wdUJBOzs7RW5JdzB1QkU7O0FtSW4wdUJGO0VBQ0k7RUF5QkE7RUFjQTtFQVFBO0VBcUNBO0VBVUE7RUFlQTtBbkkrdHVCSjs7QW1JMzB1Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5JODB1QlI7O0FtSTUwdUJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5JKzB1Qlo7O0FtSTUwdUJRO0VBQ0k7RUFDQTtBbkkrMHVCWjs7QW1JMTB1Qkk7RUFDSTtBbkk2MHVCUjs7QW1JMzB1QlE7RUFDSTtBbkk4MHVCWjs7QW1JMzB1QlE7RUFDSTtFQUNBO0tBQUE7QW5JODB1Qlo7O0FtSXowdUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QW5JNDB1QlI7O0FtSXgwdUJJO0VBQ0k7RUFDQTtFQUNBO0FuSTIwdUJSOztBbUl6MHVCUTtFQUNJO0FuSTQwdUJaOztBbUl4MHVCSTtFQUNJO0VBQ0E7RUFDQTtBbkkyMHVCUjs7QW1JejB1QlE7RUFDSTtFQUNBO0FuSTQwdUJaOztBbUkxMHVCWTtFQUNJO0FuSTYwdUJoQjs7QW1JeDB1Qkk7RUFDSTtFQUNBO0VBQ0E7QW5JMjB1QlI7O0FtSXowdUJRO0VBQ0k7RUFDQTtBbkk0MHVCWjs7QW1JdjB1Qkk7RUFDSTtBbkkwMHVCUjs7QW1JeDB1QlE7O0VBQ0k7RUFDQTtBbkk0MHVCWjs7QW1JdjB1Qkk7RUFDSTtFQUNBO0FuSTAwdUJSOztBbUl4MHVCUTtFQUNJO0VBQ0E7QW5JMjB1Qlo7O0FtSXowdUJZO0VBQ0k7QW5JNDB1QmhCOztBbUl0MHVCSTtFQUNJO0VBQ0E7RUFDQTtBbkl5MHVCUjs7QW1JdjB1QlE7RUFDSTtFQUNBO0VBQ0E7S0FBQTtFQUNBO0FuSTAwdUJaOztBbUlyMHVCUTs7RUFDSTtFQUNBO0FuSXkwdUJaOztBbUl2MHVCWTs7RUFDSTtFQUNBO0FuSTIwdUJoQjs7QW1JejB1QmdCOztFQUNJO0FuSTYwdUJwQjs7QW1JdjB1Qkk7RUFDSTtFQUNBO0FuSTAwdUJSOztBbUl0MHVCSTtFQUNJO0lBQ0k7RW5JeTB1QlY7O0VtSXYwdUJVO0lBQ0k7RW5JMDB1QmQ7QUFDRjs7QW9JdCt1QkE7RUFDSTtFQW9EQTtFQTJCQTtFQXFCQTtFQVVBO0VBZUE7QXBJaTN1Qko7O0FvSTcrdUJJO0VBQ0k7RUFDQTtBcElnL3VCUjs7QW9JNyt1Qkk7RUFDSTtFQUNBO0VBQ0E7QXBJZy91QlI7O0FvSTcrdUJJO0VBQ0k7RUFDQTtFQUNBO0FwSWcvdUJSOztBb0k5K3VCUTtFQUNJO0VBQ0E7RUFDQTtBcElpL3VCWjs7QW9JLyt1Qlk7RUFDSTtBcElrL3VCaEI7O0FvSTcrdUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXBJZy91QlI7O0FvSTcrdUJJO0VBQ0k7RUFDQTtFQUNBO0FwSWcvdUJSOztBb0k5K3VCUTtFQUNJO0FwSWkvdUJaOztBb0k5K3VCUTs7Ozs7O0VBR0k7RUFDQTtBcElvL3VCWjs7QW9JLyt1Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBcElrL3VCUjs7QW9JLyt1Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwSWsvdUJSOztBb0loL3VCUTtFQUNJO0FwSW0vdUJaOztBb0kvK3VCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FwSWsvdUJSOztBb0k5K3VCSTtFQUNJO0VBQ0E7RUFDQTtBcElpL3VCUjs7QW9JOSt1Qkk7RUFDSTtFQUNBO0FwSWkvdUJSOztBb0kvK3VCUTtFQUNJO0FwSWsvdUJaOztBb0k5K3VCSTtFQUNJO0VBQ0E7S0FBQTtBcElpL3VCUjs7QW9JNyt1Qkk7RUFDSTtBcElnL3VCUjs7QW9JOSt1QlE7O0VBQ0k7RUFDQTtBcElrL3VCWjs7QW9JNyt1Qkk7RUFDSTtFQUNBO0FwSWcvdUJSOztBb0k5K3VCUTtFQUNJO0VBQ0E7QXBJaS91Qlo7O0FvSS8rdUJZO0VBQ0k7QXBJay91QmhCOztBb0k1K3VCSTtFQUNJO0VBQ0E7RUFDQTtBcEkrK3VCUjs7QW9JNyt1QlE7RUFDSTtFQUNBO0VBQ0E7S0FBQTtFQUNBO0FwSWcvdUJaOztBb0kzK3VCUTs7RUFDSTtFQUNBO0FwSSsrdUJaOztBb0k3K3VCWTs7RUFDSTtFQUNBO0FwSWkvdUJoQjs7QW9JLyt1QmdCOztFQUNJO0FwSW0vdUJwQjs7QW9JNyt1Qkk7RUFDSTtFQUNBO0FwSWcvdUJSOztBcUk5b3ZCQTtFQUNJO0VBcUJBO0VBOEVBO0VBVUE7RUFpREE7RUF1Q0E7QXJJaTl1Qko7O0FxSXJwdkJJO0VBQ0k7RUFDQTtFQUNBO0FySXdwdkJSOztBcUl0cHZCUTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBckkwcHZCWjs7QXFJdnB2QlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBckkwcHZCWjs7QXFJcnB2Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJJd3B2QlI7O0FxSXRwdkJRO0VBQ0k7RUFDQTtBckl5cHZCWjs7QXFJdnB2Qlk7RUFDSTtBckkwcHZCaEI7O0FxSXRwdkJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXJJeXB2Qlo7O0FxSXZwdkJZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckkwcHZCaEI7O0FxSXRwdkJRO0VBQ0k7RUFDQTtFQUNBO0tBQUE7RUFDQTtBckl5cHZCWjs7QXFJdHB2QlE7RUFDSTtBckl5cHZCWjs7QXFJdHB2QlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBckl5cHZCWjs7QXFJdHB2QlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJJeXB2Qlo7O0FxSXJwdkJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckl3cHZCUjs7QXFJdHB2QlE7RUFDSTtFQUNBO0FySXlwdkJaOztBcUl2cHZCWTtFQUNJO0FySTBwdkJoQjs7QXFJcHB2Qkk7RUFDSTtFQUNBO0FySXVwdkJSOztBcUlycHZCUTtFQUNJO0FySXdwdkJaOztBcUlucHZCSTtFQUNJO0VBQUE7RUFDQTtBcklzcHZCUjs7QXFJbnB2Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FySXNwdkJSOztBcUlwcHZCUTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBckl3cHZCWjs7QXFJcnB2QlE7RUFDSTtFQUNBO0VBQ0E7QXJJd3B2Qlo7O0FxSXRwdkJZO0VBQ0k7RUFDQTtBckl5cHZCaEI7O0FxSXZwdkJnQjtFQUNJO0FySTBwdkJwQjs7QXFJcnB2QlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJJd3B2Qlo7O0FxSXRwdkJZO0VBQ0k7QXJJeXB2QmhCOztBcUlucHZCSTtFQUNJO0VBQ0E7RUFDQTtBcklzcHZCUjs7QXFJcHB2QlE7RUFDSTtBckl1cHZCWjs7QXFJbnB2Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJJc3B2QlI7O0FxSXBwdkJRO0VBQ0k7RUFDQTtFQUNBO0tBQUE7QXJJdXB2Qlo7O0FxSWxwdkJROztFQUNJO0VBQ0E7RUFDQTtFQUNBO0FySXNwdkJaOztBcUlucHZCUTtFQUNJO0FySXNwdkJaOztBcUlqcHZCSTtFQUNJOztJQUNJO0VySXFwdkJWOztFcUlscHZCTTtJQUNJO0lBQ0E7SUFDQTtFcklxcHZCVjtBQUNGOztBc0lqMnZCSTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0SXEydkJSOztBc0lsMnZCUTs7RUFDSTtBdElzMnZCWjs7QXNJbDJ2QlE7RUF0Qko7O0lBdUJRO0V0SXUydkJWO0FBQ0Y7O0FzSXIydkJRO0VBMUJKOztJQTJCUTtFdEkwMnZCVjtBQUNGOztBc0l4MnZCUTtFQTlCSjs7SUErQlE7RXRJNjJ2QlY7QUFDRjs7QXNJMzJ2QlE7RUFsQ0o7O0lBbUNRO0V0SWczdkJWO0FBQ0Y7O0FzSTUydkJJOztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRJZzN2QlI7O0FzSTUydkJJOztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRJZzN2QlI7O0FzSTUydkJJOztFQUNJO0VBQ0E7RUFDQTtBdElnM3ZCUjs7QXNJOTJ2QlE7O0VBQ0k7RUFDQTtBdElrM3ZCWjs7QXNJLzJ2QlE7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0SW0zdkJaOztBc0k5MnZCSTs7RUFDSTtFQUNBO0F0SWszdkJSOztBc0loM3ZCUTtFQUpKOztJQUtRO0V0SXEzdkJWO0FBQ0Y7O0FzSWozdkJJOztFQUNJO0VBQ0E7QXRJcTN2QlI7O0FzSW4zdkJRO0VBSko7O0lBS1E7RXRJdzN2QlY7QUFDRjs7QXNJbjN2QlE7O0VBQ0k7RUFDQTtBdEl1M3ZCWjs7QXNJbDN2Qkk7O0VBQ0k7RUFDQTtFQU1BO0VBQ0E7QXRJaTN2QlI7O0FzSS8ydkJRO0VBWEo7O0lBWVE7RXRJbzN2QlY7QUFDRjs7QXNJbDN2QlE7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0SXMzdkJaOztBc0lwM3ZCWTs7RUFDSTtFQUNBO0VBQ0E7QXRJdzN2QmhCOztBc0lsM3ZCSTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRJczN2QlI7O0FzSW4zdkJJOztFQUNJO0VBQ0E7RUFDQTtFQUNBO0F0SXUzdkJSOztBc0luM3ZCSTs7RUFDSTtBdEl1M3ZCUjs7QXNJcDN2Qkk7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0SXczdkJSOztBc0lyM3ZCSTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRJeTN2QlI7O0FzSXYzdkJROztFQUNJO0VBQ0E7RUFDQTtFQUNBO0F0STIzdkJaOztBc0l4M3ZCUTtFQUNJO0VBQ0E7QXRJNDN2Qlo7O0FzSTkzdkJRO0VBQ0k7RUFDQTtBdEk0M3ZCWjs7QXNJOTN2QlE7O0VBQ0k7RUFDQTtBdEk0M3ZCWjs7QXNJeDN2Qkk7O0VBQ0k7QXRJNDN2QlI7O0FzSTEzdkJROzs7Ozs7OztFQUdJO0F0SWs0dkJaOztBc0k5M3ZCSTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdElrNHZCUjs7QXNJLzN2Qkk7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0SW00dkJSOztBc0lqNHZCUTs7RUFDSTtBdElxNHZCWjs7QXNJaDR2Qkk7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXRJbzR2QlI7O0FzSWw0dkJROztFQUNJO0VBQ0E7QXRJczR2Qlo7O0FzSWo0dkJJOztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdElxNHZCUjs7QXNJbjR2QlE7O0VBQ0k7RUFDQTtFQUNBO0F0SXU0dkJaOztBc0lwNHZCUTs7RUFDSTtBdEl3NHZCWjs7QXNJbjR2Qkk7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEl1NHZCUjs7QXNJcjR2QlE7O0VBQ0k7RUFDQTtFQUNBO0F0SXk0dkJaOztBc0lwNHZCSTs7RUFDSTtBdEl3NHZCUjs7QXNJdDR2QlE7RUFISjs7SUFJUTtFdEkyNHZCVjtBQUNGOztBc0l4NHZCSTs7RUFDSTtBdEk0NHZCUjs7QXNJejR2Qkk7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEk2NHZCUjs7QXNJMTR2Qkk7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXRJODR2QlI7O0FzSTE0dkJJOztFQUNJO0F0STg0dkJSOztBc0kzNHZCSTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRJKzR2QlI7O0FzSTc0dkJROztFQUNJO0VBQ0E7RUFDQTtBdElpNXZCWjs7QXNJNTR2Qkk7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdElnNXZCUjs7QXNJOTR2QlE7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdElrNXZCWjs7QXNJNzR2Qkk7O0VBQ0k7RUFDQTtFQUNBO0F0SWk1dkJSOztBc0kvNHZCUTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEltNXZCWjs7QXNJaDV2QlE7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRJbzV2Qlo7O0FzSS80dkJJOztFQUNJO0VBQ0E7RUFDQTtBdEltNXZCUjs7QXNJaDV2Qkk7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRJbzV2QlI7O0FzSWw1dkJROztFQUNJO0VBQ0E7RUFDQTtBdElzNXZCWjs7QXNJbjV2QlE7O0VBQ0k7RUFDQTtFQUNBO0tBQUE7QXRJdTV2Qlo7O0FzSWw1dkJJOztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRJczV2QlI7O0FzSXA1dkJRO0VBUEo7O0lBUVE7RXRJeTV2QlY7QUFDRjs7QXNJdjV2QlE7O0VBQ0k7RUFDQTtFQUNBO0F0STI1dkJaOztBc0l4NXZCUTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEk0NXZCWjs7QXNJMTV2Qlk7O0VBQ0k7RUFDQTtBdEk4NXZCaEI7O0FzSXI1dkJZOzs7Ozs7OztFQUNJO0VBQ0E7QXRJKzV2QmhCOztBc0k3NXZCZ0I7Ozs7Ozs7O0VBQ0k7RUFDQTtBdEl1NnZCcEI7O0FzSW42dkJZOzs7Ozs7OztFQUNJO0VBQ0E7QXRJNjZ2QmhCOztBc0kzNnZCZ0I7Ozs7Ozs7O0VBQ0k7RUFDQTtBdElxN3ZCcEI7O0FzSS82dkJJOzs7O0VBQ0k7RUFDQTtFQUNBO0F0SXE3dkJSOztBc0lqN3ZCSTtFQUNJOztJQUNJO0V0SXE3dkJWOztFc0lsN3ZCTTs7SUFDSTtFdElzN3ZCVjs7RXNJbjd2Qk07O0lBQ0k7RXRJdTd2QlY7O0VzSXA3dkJNOztJQUNJO0V0SXc3dkJWO0FBQ0Y7O0FzSXA3dkJJO0VBQ0k7O0lBQ0k7RXRJdzd2QlY7O0VzSXI3dkJNOztJQUNJO0V0SXk3dkJWO0FBQ0Y7O0FzSXI3dkJJO0VBQ0k7O0lBQ0k7RXRJeTd2QlY7QUFDRjs7QXVJaDh3Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2SW04d0JSOztBdUloOHdCUTtFQUNJO0F2SW04d0JaOztBdUkvN3dCUTtFQXRCSjtJQXVCUTtFdkltOHdCVjtBQUNGOztBdUlqOHdCUTtFQTFCSjtJQTJCUTtFdklxOHdCVjtBQUNGOztBdUluOHdCUTtFQTlCSjtJQStCUTtFdkl1OHdCVjtBQUNGOztBdUlyOHdCUTtFQWxDSjtJQW1DUTtFdkl5OHdCVjtBQUNGOztBdUl0OHdCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F2SXk4d0JSOztBdUl0OHdCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkl5OHdCUjs7QXVJdDh3Qkk7RUFDSTtBdkl5OHdCUjs7QXVJcjh3Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBdkl3OHdCUjs7QXVJcjh3Qkk7RUFDSTtFQUNBO0F2SXc4d0JSOztBdUl0OHdCUTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2STA4d0JaOztBdUl2OHdCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F2STA4d0JaOztBdUlyOHdCUTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBdkl5OHdCWjs7QXVJdDh3QlE7RUFDSTtFQUNBO0VBQ0E7QXZJeTh3Qlo7O0F1SXI4d0JJO0VBQ0k7QXZJdzh3QlI7O0F1SXI4d0JJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkl3OHdCUjs7QXVJbjh3Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2SXM4d0JSOztBdUlwOHdCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F2SXU4d0JaOztBdUluOHdCSTtFQUNJO0VBQ0E7QXZJczh3QlI7O0F1SXA4d0JRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXZJdTh3Qlo7O0F1SXI4d0JZO0VBQ0k7QXZJdzh3QmhCOztBdUlsOHdCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2SXE4d0JSOztBdUlsOHdCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBT0E7VUFBQTtBdkkrN3dCWjs7QXVJMzd3Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBdkk4N3dCUjs7QXVJNTd3QlE7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdklnOHdCWjs7QXVJNzd3QlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBdklnOHdCWjs7QXVJNzd3QlE7RUFDSTtFQUNBO0VBQ0E7QXZJZzh3Qlo7O0F1STU3d0JJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7VUFBQTtBdkkrN3dCUjs7QXVJNTd3Qkk7RUFDSTtFQUNBO0VBQ0E7QXZJKzd3QlI7O0F1STc3d0JRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdklnOHdCWjs7QXVJOTd3Qlk7RUFDSTtFQUNBO0VBQ0E7QXZJaTh3QmhCOztBdUk1N3dCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkkrN3dCUjs7QXVJNzd3QlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2SWc4d0JaOztBdUkzN3dCSTtFQUNJO0lBQVc7RXZJKzd3QmpCOztFdUk5N3dCTTtJQUFNO0V2SWs4d0JaO0FBQ0Y7O0F1SXI4d0JJO0VBQ0k7SUFBVztFdkkrN3dCakI7O0V1STk3d0JNO0lBQU07RXZJazh3Qlo7QUFDRjs7QXVJaDh3Qkk7RUFDSTtJQUFLO0V2SW84d0JYOztFdUluOHdCTTtJQUFPO0V2SXU4d0JiO0FBQ0Y7O0F1STE4d0JJO0VBQ0k7SUFBSztFdklvOHdCWDs7RXVJbjh3Qk07SUFBTztFdkl1OHdCYjtBQUNGOztBdUlwOHdCSTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBdkl3OHdCUjs7QXVJcDh3QlE7RUFDSTtFQUNBO0F2SXk4d0JaOztBdUkzOHdCUTtFQUNJO0VBQ0E7QXZJeTh3Qlo7O0F1STM4d0JROzs7RUFDSTtFQUNBO0F2SXk4d0JaOztBdUl0OHdCUTs7O0VBQ0k7QXZJMjh3Qlo7O0F1SXQ4d0JJO0VBQ0k7RUFDQTtBdkl5OHdCUjs7QXVJdDh3Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBdkl5OHdCUjs7QXVJdDh3Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2SXk4d0JSOztBdUl0OHdCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkl5OHdCUjs7QXVJdjh3QlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2STA4d0JaOztBdUl4OHdCWTtFQUNJO0F2STI4d0JoQjs7QXVJdDh3Qkk7RUFDSTtFQUNBO0VBQ0E7S0FBQTtFQUNBO0F2SXk4d0JSOztBdUl0OHdCSTtFQUNJO0VBQ0E7RUFDQTtBdkl5OHdCUjs7QXVJcjh3Qkk7RUFDSTtJQUNJO0V2SXc4d0JWOztFdUlyOHdCTTtJQUNJO0V2SXc4d0JWOztFdUlyOHdCTTtJQUNJO0V2SXc4d0JWOztFdUlyOHdCTTtJQUNJO0V2SXc4d0JWOztFdUlyOHdCTTs7SUFDSTtFdkl5OHdCVjs7RXVJdDh3Qk07O0lBQ0k7RXZJMDh3QlY7O0V1SXY4d0JNO0lBQ0k7RXZJMDh3QlY7O0V1SXI4d0JNO0lBQ0k7SUFDQTtFdkl3OHdCVjs7RXVJcjh3Qk07SUFDSTtFdkl3OHdCVjs7RXVJcjh3Qk07SUFDSTtFdkl3OHdCVjs7RXVJcDh3QlU7O0lBQ0k7RXZJdzh3QmQ7O0V1SXA4d0JNO0lBQ0k7RXZJdTh3QlY7O0V1SXA4d0JNO0lBQ0k7SUFDQTtFdkl1OHdCVjs7RXVJcDh3Qk07SUFDSTtFdkl1OHdCVjs7RXVJcDh3Qk07SUFDSTtJQUNBO0V2SXU4d0JWO0FBQ0Y7O0F1SW44d0JJO0VBQ0k7SUFDSTtFdklzOHdCVjs7RXVJbjh3Qk07SUFDSTtFdklzOHdCVjs7RXVJbjh3Qk07SUFDSTtFdklzOHdCVjtBQUNGOztBdUluOHdCSTtFQUNJO0lBQ0k7RXZJczh3QlY7O0V1SW44d0JNOztJQUNJO0V2SXU4d0JWOztFdUlwOHdCTTs7SUFDSTtFdkl3OHdCVjs7RXVJcjh3Qk07SUFDSTtFdkl3OHdCVjs7RXVJcjh3Qk07SUFDSTtJQUNBO0V2SXc4d0JWOztFdUlyOHdCTTtJQUNJO0V2SXc4d0JWO0FBQ0Y7O0F3SWo1eEJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeElvNXhCUjs7QXdJajV4Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBeElvNXhCUjs7QXdJajV4Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhJbzV4QlI7O0F3SWo1eEJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7VUFBQTtBeElvNXhCUjs7QXdJajV4Qkk7RUFDSTtJQUNJO0lBQ0E7RXhJbzV4QlY7O0V3SWw1eEJNO0lBQ0k7SUFDQTtFeElxNXhCVjtBQUNGOztBd0lsNXhCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F4SXE1eEJSOztBd0lsNXhCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F4SXE1eEJSOztBd0lsNXhCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F4SXE1eEJSOztBd0luNXhCUTs7RUFDSTtFQUNBO0VBQ0E7QXhJdTV4Qlo7O0F3SXA1eEJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXhJdTV4Qlo7O0F3SW41eEJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4SXM1eEJSOztBd0lwNXhCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F4SXU1eEJaOztBd0luNXhCSTtFQUNJO0VBQ0E7RUFDQTtBeElzNXhCUjs7QXdJcDV4QlE7RUFDSTtBeEl1NXhCWjs7QXdJbjV4Qkk7RUFDSTtJQUNJO0V4SXM1eEJWOztFd0luNXhCTTtJQUNJO0V4SXM1eEJWOztFd0luNXhCTTtJQUNJO0V4SXM1eEJWOztFd0luNXhCTTtJQUNJO0V4SXM1eEJWO0FBQ0Y7O0F5SWxoeUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeklxaHlCUjs7QXlJbGh5QlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F6SXFoeUJaOztBeUloaHlCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F6SW1oeUJSOztBeUkvZ3lCSTtFQUNJO0VBQ0E7VUFBQTtFQUNBO0VBQ0E7RUFDQTtBeklraHlCUjs7QTBJL2p5Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExSWtreUJSOztBMEkvanlCUTtFQUNJO0ExSWtreUJaOztBMEk5anlCUTtFQXRCSjtJQXVCUTtFMUlra3lCVjtBQUNGOztBMEloa3lCUTtFQTFCSjtJQTJCUTtFMUlva3lCVjtBQUNGOztBMElsa3lCUTtFQTlCSjtJQStCUTtFMUlza3lCVjtBQUNGOztBMElwa3lCUTtFQWxDSjtJQW1DUTtFMUl3a3lCVjtBQUNGOztBMElya3lCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0ExSXdreUJSOztBMElya3lCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFJd2t5QlI7O0EwSXBreUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTFJdWt5QlI7O0EwSXBreUJJO0VBQ0k7RUFDQTtBMUl1a3lCUjs7QTBJcmt5QlE7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUl5a3lCWjs7QTBJdGt5QlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBMUl5a3lCWjs7QTBJcGt5QlE7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTFJd2t5Qlo7O0EwSXJreUJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTFJd2t5Qlo7O0EwSXBreUJJO0VBQ0k7QTFJdWt5QlI7O0EwSXBreUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTFJdWt5QlI7O0EwSXBreUJJOzs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFJeWt5QlI7O0EwSXZreUJRO0VBQ0k7RUFDQTtBMUk0a3lCWjs7QTBJOWt5QlE7RUFDSTtFQUNBO0ExSTRreUJaOztBMEk5a3lCUTs7O0VBQ0k7RUFDQTtBMUk0a3lCWjs7QTBJemt5QlE7OztFQUNJO0VBQ0E7RUFDQTtBMUk4a3lCWjs7QTBJMWt5Qkk7RUFDSTtBMUk2a3lCUjs7QTBJM2t5QlE7OztFQUVJO0ExSStreUJaOztBMEkza3lCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUk4a3lCUjs7QTBJM2t5Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExSThreUJSOztBMEk1a3lCUTtFQUNJO0VBQ0E7RUFDQTtBMUkra3lCWjs7QTBJM2t5Qkk7RUFDSTtFQUNBO0ExSThreUJSOztBMEk1a3lCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUkra3lCWjs7QTBJN2t5Qlk7RUFDSTtBMUlnbHlCaEI7O0EwSTVreUJRO0VBQ0k7QTFJK2t5Qlo7O0EwSTFreUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUk2a3lCUjs7QTBJM2t5QlE7RUFDSTtFQUNBO0ExSThreUJaOztBMEkza3lCUTtFQUNJO0VBQ0E7QTFJOGt5Qlo7O0EwSXpreUJJO0VBQ0k7SUFDSTtFMUk0a3lCVjs7RTBJemt5Qk07SUFDSTtFMUk0a3lCVjs7RTBJMWt5QlU7O0lBQ0k7RTFJOGt5QmQ7O0UwSTNreUJVO0lBQ0k7RTFJOGt5QmQ7O0UwSXpreUJVOztJQUNJO0lBQ0E7RTFJNmt5QmQ7O0UwSTFreUJVO0lBQ0k7SUFDQTtFMUk2a3lCZDs7RTBJemt5Qk07SUFDSTtFMUk0a3lCVjs7RTBJemt5Qk07OztJQUNJO0lBQ0E7RTFJOGt5QlY7O0UwSTFreUJVOzs7SUFFSTtFMUk4a3lCZDs7RTBJMWt5Qk07SUFDSTtJQUNBO0lBQ0E7RTFJNmt5QlY7QUFDRjs7QTBJemt5Qkk7RUFDSTtJQUNJO0UxSTRreUJWO0FBQ0Y7O0EwSXpreUJJO0VBQ0k7SUFDSTtFMUk0a3lCVjs7RTBJemt5Qk07O0lBQ0k7RTFJNmt5QlY7O0UwSTFreUJNOztJQUNJO0UxSThreUJWO0FBQ0Y7O0EwSTFreUJJOztFQUNJO0VBQ0E7QTFJOGt5QlI7O0EwSXpreUJZOzs7RUFDSTtFQUNBO0ExSThreUJoQjs7QTBJM2t5Qlk7OztFQUNJO0VBQ0E7QTFJZ2x5QmhCOztBMkl6M3lCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNJNDN5QlI7O0EySXozeUJRO0VBQ0k7QTNJNDN5Qlo7O0EySXgzeUJRO0VBdEJKO0lBdUJRO0UzSTQzeUJWO0FBQ0Y7O0EySTEzeUJRO0VBMUJKO0lBMkJRO0UzSTgzeUJWO0FBQ0Y7O0EySTUzeUJRO0VBOUJKO0lBK0JRO0UzSWc0eUJWO0FBQ0Y7O0EySTkzeUJRO0VBbENKO0lBbUNRO0UzSWs0eUJWO0FBQ0Y7O0EySS8zeUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTNJazR5QlI7O0EySS8zeUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTNJazR5QlI7O0EySS8zeUJJO0VBQ0k7QTNJazR5QlI7O0EySTkzeUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTNJaTR5QlI7O0EySTkzeUJJO0VBQ0k7RUFDQTtBM0lpNHlCUjs7QTJJLzN5QlE7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0ltNHlCWjs7QTJJaDR5QlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBM0ltNHlCWjs7QTJJOTN5QlE7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTNJazR5Qlo7O0EySS8zeUJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTNJazR5Qlo7O0EySTkzeUJJO0VBQ0k7QTNJaTR5QlI7O0EySTkzeUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTNJaTR5QlI7O0EySTkzeUJJOzs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNJbTR5QlI7O0EySWo0eUJRO0VBQ0k7RUFDQTtBM0lzNHlCWjs7QTJJeDR5QlE7RUFDSTtFQUNBO0EzSXM0eUJaOztBMkl4NHlCUTs7O0VBQ0k7RUFDQTtBM0lzNHlCWjs7QTJJbjR5QlE7OztFQUNJO0VBQ0E7RUFDQTtBM0l3NHlCWjs7QTJJcjR5QlE7OztFQUNJO0VBQ0E7QTNJMDR5Qlo7O0EySXQ0eUJJO0VBQ0k7QTNJeTR5QlI7O0EySXY0eUJROzs7RUFFSTtBM0kyNHlCWjs7QTJJdjR5Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNJMDR5QlI7O0EySXY0eUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNJMDR5QlI7O0EySXg0eUJRO0VBQ0k7QTNJMjR5Qlo7O0EySXY0eUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0kwNHlCUjs7QTJJeDR5QlE7RUFDSTtFQUNBO0VBQ0E7QTNJMjR5Qlo7O0EySXY0eUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0kwNHlCUjs7QTJJeDR5QlE7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTNJNDR5Qlo7O0EySXo0eUJRO0VBQ0k7RUFDQTtBM0k0NHlCWjs7QTJJejR5QlE7RUFDSTtFQUNBO0EzSTQ0eUJaOztBMkl2NHlCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNJMDR5QlI7O0EySXg0eUJRO0VBQ0k7RUFDQTtBM0kyNHlCWjs7QTJJeDR5QlE7RUFDSTtFQUNBO0EzSTI0eUJaOztBMkl0NHlCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzSXk0eUJSOztBMkl0NHlCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBT0E7VUFBQTtBM0ltNHlCWjs7QTJJLzN5Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBM0lrNHlCUjs7QTJJaDR5QlE7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0lvNHlCWjs7QTJJajR5QlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzSW80eUJaOztBMkloNHlCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO1VBQUE7QTNJbTR5QlI7O0EySWg0eUJJO0VBQ0k7SUFBVztFM0lvNHlCakI7O0UySW40eUJNO0lBQU07RTNJdTR5Qlo7QUFDRjs7QTJJMTR5Qkk7RUFDSTtJQUFXO0UzSW80eUJqQjs7RTJJbjR5Qk07SUFBTTtFM0l1NHlCWjtBQUNGOztBMklyNHlCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0EzSXc0eUJSOztBMkl0NHlCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNJeTR5Qlo7O0EySXY0eUJZO0VBQ0k7RUFDQTtFQUNBO0EzSTA0eUJoQjs7QTJJcjR5Qkk7RUFDSTtJQUFLO0UzSXk0eUJYOztFMkl4NHlCTTtJQUFPO0UzSTQ0eUJiO0FBQ0Y7O0EySXo0eUJJO0VBQ0k7SUFDSTtJQUNBO0lBQ0E7SUFDQTtFM0k0NHlCVjs7RTJJejR5Qk07SUFDSTtJQUNBO0lBQ0E7RTNJNDR5QlY7O0UySXo0eUJNO0lBQ0k7RTNJNDR5QlY7O0UySXo0eUJNO0lBQ0k7RTNJNDR5QlY7O0UySXo0eUJNO0lBQ0k7RTNJNDR5QlY7O0UySTE0eUJVOztJQUNJO0UzSTg0eUJkOztFMkkzNHlCVTtJQUNJO0UzSTg0eUJkOztFMkl6NHlCVTs7SUFDSTtJQUNBO0UzSTY0eUJkOztFMkkxNHlCVTtJQUNJO0lBQ0E7RTNJNjR5QmQ7O0UySXo0eUJNO0lBQ0k7RTNJNDR5QlY7O0UySXo0eUJNOzs7SUFDSTtJQUNBO0UzSTg0eUJWOztFMkkxNHlCVTs7O0lBRUk7RTNJODR5QmQ7O0UySTE0eUJNO0lBQ0k7SUFDQTtJQUNBO0UzSTY0eUJWOztFMkkxNHlCTTtJQUNJO0lBQ0E7RTNJNjR5QlY7O0UySTM0eUJVOztJQUNJO0UzSSs0eUJkOztFMkkxNHlCTTtJQUNJO0UzSTY0eUJWOztFMkkxNHlCTTtJQUNJO0lBQ0E7RTNJNjR5QlY7O0UySXo0eUJVOztJQUNJO0lBQ0E7RTNJNjR5QmQ7O0UySTE0eUJVO0lBQ0k7RTNJNjR5QmQ7O0UySXo0eUJNO0lBQ0k7RTNJNDR5QlY7O0UySTE0eUJVO0lBQ0k7SUFDQTtFM0k2NHlCZDs7RTJJMzR5QmM7SUFDSTtFM0k4NHlCbEI7QUFDRjs7QTJJeDR5Qkk7RUFDSTtJQUNJO0UzSTI0eUJWOztFMkl4NHlCTTtJQUNJO0UzSTI0eUJWO0FBQ0Y7O0EySXg0eUJJO0VBQ0k7SUFDSTtFM0kyNHlCVjs7RTJJeDR5Qk07O0lBQ0k7RTNJNDR5QlY7O0UySXo0eUJNOztJQUNJO0UzSTY0eUJWO0FBQ0Y7O0EySXo0eUJJOztFQUNJO0VBQ0E7QTNJNjR5QlI7O0EySXg0eUJZOzs7RUFDSTtFQUNBO0EzSTY0eUJoQjs7QTJJMTR5Qlk7OztFQUNJO0VBQ0E7QTNJKzR5QmhCOztBNEk1MnpCSTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUlnM3pCUjs7QTRJOTJ6QlE7O0VBQ0k7RUFDQTtFQUNBO0E1SWszekJaOztBNEkvMnpCUTs7RUFDSTtFQUNBO0E1SW0zekJaOztBNElqM3pCWTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUlxM3pCaEI7O0E0SWgzekJZOztFQUNJO0E1SW8zekJoQjs7QTRJajN6Qlk7O0VBQ0k7QTVJcTN6QmhCOztBNEluM3pCZ0I7O0VBQ0k7QTVJdTN6QnBCOztBNEluM3pCWTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBNUl1M3pCaEI7O0E0SWwzekJJOztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQU1BO0VBQ0E7RUFDQTtBNUlpM3pCUjs7QTRJOTJ6Qkk7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1SWszekJSOztBNEkvMnpCSTs7RUFDSTtFQUNBO0VBQ0E7QTVJbTN6QlI7O0E0SWozekJROztFQUNJO0VBQ0E7QTVJcTN6Qlo7O0E0SW4zekJZOztFQUNJO0E1SXUzekJoQjs7QTRJbDN6Qkk7O0VBQ0k7RUFDQTtVQUFBO0E1SXMzekJSOztBNEluM3pCSTtFQUNJO0lBQ0k7SUFDQTtFNUlzM3pCVjs7RTRJcDN6Qk07SUFDSTtJQUNBO0U1SXUzekJWO0FBQ0Y7O0E0SS8zekJJO0VBQ0k7SUFDSTtJQUNBO0U1SXMzekJWOztFNElwM3pCTTtJQUNJO0lBQ0E7RTVJdTN6QlY7QUFDRjs7QTRJcDN6Qkk7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1SXczekJSOztBNEl0M3pCUTs7RUFDSTtBNUkwM3pCWjs7QTRJdDN6Qkk7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1STAzekJSOztBNEl4M3pCUTs7RUFDSTtBNUk0M3pCWjs7QTRJeDN6Qkk7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUk0M3pCUjs7QTRJejN6Qkk7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO1VBQUE7RUFDQTtFQUNBO0E1STYzekJSOztBNEkxM3pCSTs7RUFDSTtFQUNBO0E1STgzekJSOztBNEkzM3pCSTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBNUkrM3pCUjs7QTRJNTN6Qlk7O0VBQ0k7RUFDQTtFQUNBO0E1SWc0ekJoQjs7QTRJNzN6QmdCOztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUlpNHpCcEI7O0E0SS8zekJvQjs7RUFDSTtBNUltNHpCeEI7O0E0SWg0ekJvQjs7RUFDSTtFQUNBO0E1SW80ekJ4Qjs7QTRJNTN6Qkk7RUFDSTs7SUFDSTtFNUlnNHpCVjs7RTRJNzN6Qk07O0lBQ0k7RTVJaTR6QlY7QUFDRjs7QTRJOTN6Qkk7RUFDSTs7SUFDSTtFNUlrNHpCVjs7RTRJLzN6Qk07O0lBQ0k7RTVJbTR6QlY7O0U0SWg0ekJNOztJQUNJO0lBQ0E7RTVJbzR6QlY7O0U0SWo0ekJNOztJQUNJO0U1SXE0ekJWOztFNElsNHpCTTs7SUFDSTtJQUNBO0U1SXM0ekJWOztFNEluNHpCTTs7SUFDSTtFNUl1NHpCVjtBQUNGOztBNElwNHpCSTtFQUNJOztJQUNJO0U1SXc0ekJWOztFNElyNHpCTTs7SUFDSTtFNUl5NHpCVjtBQUNGOztBNklobzBCSTtFQUNJO0E3SW1vMEJSOztBNklqbzBCUTtFQUhKO0lBSVE7RTdJcW8wQlY7QUFDRjs7QTZJam8wQkk7RUFDSTtBN0lvbzBCUjs7QTZJbG8wQlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3SXFvMEJaOztBNklubzBCWTtFQVBKO0lBUVE7RTdJdW8wQmQ7QUFDRjs7QTZJcG8wQlE7RUFDSTtFQUNBO0VBQ0E7QTdJdW8wQlo7O0E2SWpvMEJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTdJb28wQlo7O0E2SWxvMEJZO0VBQ0k7QTdJcW8wQmhCOztBNklqbzBCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdJb28wQlo7O0E2SWxvMEJZO0VBQ0k7RUFDQTtBN0lxbzBCaEI7O0E2SW5vMEJnQjtFQUNJO0E3SXNvMEJwQjs7QTZJbm8wQmdCO0VBQ0k7QTdJc28wQnBCOztBNklobzBCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E3SW1vMEJaOztBNklqbzBCWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtLQUFBO0VBQ0E7QTdJb28wQmhCOztBNklqbzBCWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0lvbzBCaEI7O0E2SWxvMEJnQjtFQUNJO0VBQ0E7RUFDQTtBN0lxbzBCcEI7O0E2SWhvMEJZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtVQUFBO0E3SW1vMEJoQjs7QTZJOW4wQlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBN0lpbzBCWjs7QTZJL24wQlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdJa28wQmhCOztBNkkvbjBCWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdJa28wQmhCOztBNkk1bjBCSTtFQUNJO0E3SStuMEJSOztBNkk3bjBCUTtFQUNJO0E3SWdvMEJaOztBNkk3bjBCUTs7RUFDSTtFQUNBO0E3SWlvMEJaOztBNkk5bjBCUTtFQUNJO0VBQ0E7QTdJaW8wQlo7O0E2STVuMEJJO0VBQ0k7RUFDQTtFQUNBO0E3SStuMEJSOztBNkk3bjBCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E3SWdvMEJaOztBNkk3bjBCUTtFQUNJO0VBQ0E7RUFDQTtBN0lnbzBCWjs7QTZJN24wQlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBN0lnbzBCWjs7QTZJOW4wQlk7RUFDSTtBN0lpbzBCaEI7O0E2SS9uMEJnQjtFQUhKO0lBSVE7SUFDQTtFN0ltbzBCbEI7QUFDRjs7QTZJN24wQkk7RUFHWTtJQUNJO0U3SThuMEJsQjs7RTZJNW4wQmtCO0lBQ0k7RTdJK24wQnRCOztFNkk1bjBCa0I7SUFDSTtFN0krbjBCdEI7QUFDRjs7QTZJem4wQkk7RUFFUTtJQUNJO0U3STJuMEJkOztFNkl6bjBCYztJQUNJO0U3STRuMEJsQjs7RTZJdm4wQmM7SUFDSTtFN0kwbjBCbEI7QUFDRjs7QTZJcG4wQkk7RUFDSTtJQUNJO0lBQ0E7RTdJdW4wQlY7O0U2SXJuMEJNO0lBQ0k7SUFDQTtFN0l3bjBCVjtBQUNGOztBNklybjBCSTtFQUNJO1VBQUE7RUFDQTtVQUFBO0E3SXduMEJSOztBNklybjBCWTtFQUNJO1VBQUE7QTdJd24wQmhCOztBNkl6bjBCWTtFQUNJO1VBQUE7QTdJNG4wQmhCOztBNkk3bjBCWTtFQUNJO1VBQUE7QTdJZ28wQmhCOztBNklqbzBCWTtFQUNJO1VBQUE7QTdJb28wQmhCOztBNklybzBCWTtFQUNJO1VBQUE7QTdJd28wQmhCOztBNkl6bzBCWTtFQUNJO1VBQUE7QTdJNG8wQmhCOztBNkk3bzBCWTtFQUNJO1VBQUE7QTdJZ3AwQmhCOztBNklqcDBCWTtFQUNJO1VBQUE7QTdJb3AwQmhCOztBNklycDBCWTtFQUNJO1VBQUE7QTdJd3AwQmhCOztBNkl6cDBCWTtFQUNJO1VBQUE7QTdJNHAwQmhCOztBNkk3cDBCWTtFQUNJO1VBQUE7QTdJZ3EwQmhCOztBNklqcTBCWTtFQUNJO1VBQUE7QTdJb3EwQmhCOztBNklycTBCWTtFQUNJO1VBQUE7QTdJd3EwQmhCOztBNkl6cTBCWTtFQUNJO1VBQUE7QTdJNHEwQmhCOztBNkk3cTBCWTtFQUNJO1VBQUE7QTdJZ3IwQmhCOztBNklqcjBCWTtFQUNJO1VBQUE7QTdJb3IwQmhCOztBNklycjBCWTtFQUNJO1VBQUE7QTdJd3IwQmhCOztBNkl6cjBCWTtFQUNJO1VBQUE7QTdJNHIwQmhCOztBNkk3cjBCWTtFQUNJO1VBQUE7QTdJZ3MwQmhCOztBNklqczBCWTtFQUNJO1VBQUE7QTdJb3MwQmhCOztBOElqODBCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlJbzgwQlI7O0E4SWo4MEJRO0VBQ0k7QTlJbzgwQlo7O0E4SWg4MEJRO0VBdEJKO0lBdUJRO0U5SW84MEJWO0FBQ0Y7O0E4SWw4MEJRO0VBMUJKO0lBMkJRO0U5SXM4MEJWO0FBQ0Y7O0E4SXA4MEJRO0VBOUJKO0lBK0JRO0U5SXc4MEJWO0FBQ0Y7O0E4SXQ4MEJRO0VBbENKO0lBbUNRO0U5STA4MEJWO0FBQ0Y7O0E4SXQ4MEJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUl5ODBCUjs7QThJcjgwQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5SXc4MEJSOztBOElwODBCSTtFQUNJO0VBQ0E7RUFDQTtBOUl1ODBCUjs7QThJcjgwQlE7RUFDSTtFQUNBO0E5SXc4MEJaOztBOElyODBCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUl3ODBCWjs7QThJbjgwQkk7RUFDSTtBOUlzODBCUjs7QThJcDgwQlE7RUFISjtJQUlRO0U5SXc4MEJWO0FBQ0Y7O0E4SXI4MEJJO0VBQ0k7RUFDQTtBOUl3ODBCUjs7QThJcDgwQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlJdTgwQlI7O0E4SXA4MEJJOzs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlJeTgwQlI7O0E4SXY4MEJROzs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBOUk0ODBCWjs7QThJejgwQlE7RUFDSTtFQUNBO0E5STg4MEJaOztBOEloOTBCUTtFQUNJO0VBQ0E7QTlJODgwQlo7O0E4SWg5MEJROzs7RUFDSTtFQUNBO0E5STg4MEJaOztBOEkxODBCSTs7O0VBQ0k7RUFDQTtBOUkrODBCUjs7QThJMTgwQlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5STY4MEJaOztBOEl6ODBCWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E5STQ4MEJoQjs7QThJdDgwQkk7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5STA4MEJSOztBOEl0ODBCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlJeTgwQlI7O0E4SXY4MEJRO0VBQ0k7RUFDQTtBOUkwODBCWjs7QThJcjgwQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUl3ODBCUjs7QThJdDgwQlE7RUFDSTtFQUNBO0VBQ0E7QTlJeTgwQlo7O0E4SXQ4MEJRO0VBQ0k7QTlJeTgwQlo7O0E4SXQ4MEJROztFQUNJO0VBQ0E7QTlJMDgwQlo7O0E4SXQ4MEJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5SXk4MEJSOztBOEl2ODBCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E5STA4MEJaOztBOEl2ODBCUTs7RUFDSTtFQUNBO0E5STI4MEJaOztBOEl2ODBCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUkwODBCUjs7QThJeDgwQlE7RUFDSTtFQUNBO0E5STI4MEJaOztBOElwODBCWTs7O0VBQ0k7RUFDQTtBOUl5ODBCaEI7O0E4SXY4MEJnQjs7O0VBQ0k7RUFDQTtBOUk0ODBCcEI7O0E4SXg4MEJZOzs7RUFDSTtFQUNBO0E5STY4MEJoQjs7QThJMzgwQmdCOzs7RUFDSTtFQUNBO0E5SWc5MEJwQjs7QThJMTgwQkk7O0VBQ0k7RUFDQTtFQUNBO0E5STg4MEJSOztBOEkxODBCSTtFQUNJO0VBQ0E7RUFDQTtBOUk2ODBCUjs7QThJejgwQkk7RUFDSTtBOUk0ODBCUjs7QThJeDgwQkk7RUFDSTtJQUNJO0U5STI4MEJWOztFOEl4ODBCTTtJQUNJO0U5STI4MEJWOztFOEl4ODBCTTs7SUFDSTtFOUk0ODBCVjs7RThJejgwQk07SUFDSTtFOUk0ODBCVjs7RThJMTgwQlU7SUFDSTtJQUNBO0U5STY4MEJkOztFOEkzODBCYztJQUNJO0U5STg4MEJsQjtBQUNGOztBOEl4ODBCSTtFQUNJO0lBQ0k7RTlJMjgwQlY7QUFDRjs7QThJdjgwQkk7RUFDSTtJQUNJO0U5STA4MEJWO0FBQ0Y7O0ErSXJ4MUJBOztFL0l5eDFCRTs7QStJbngxQkU7RUFDSTtBL0lzeDFCUjs7QStJbHgxQkk7RUFDSTtFQUNBO0EvSXF4MUJSOztBK0lseDFCUTtFQUxKO0lBTVE7SUFDQTtFL0lzeDFCVjtBQUNGOztBK0lueDFCSTtFQUNJO0VBQ0E7RUFDQTtBL0lzeDFCUjs7QStJbngxQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtVQUFBO0EvSXN4MUJSOztBK0lweDFCUTtFQUNJO0EvSXV4MUJaOztBK0lweDFCUTtFQUNJO0EvSXV4MUJaOztBK0lweDFCUTtFQUNJO0EvSXV4MUJaOztBK0lueDFCSTtFQUNJO0VBQ0E7RUFDQTtBL0lzeDFCUjs7QStJbngxQkk7RUFDSTtFQUNBO0EvSXN4MUJSOztBK0lueDFCSTtFQUNJO0VBQ0E7QS9Jc3gxQlI7O0ErSW54MUJJO0VBQ0k7SUFDSTtJQUNBO0UvSXN4MUJWOztFK0lweDFCTTtJQUNJO0lBQ0E7RS9JdXgxQlY7QUFDRjs7QStJbngxQkk7RUFDSTtJQUNJO0lBQ0E7RS9Jc3gxQlY7O0UrSXB4MUJNO0lBQ0k7SUFDQTtFL0l1eDFCVjs7RStJcngxQk07SUFDSTtJQUNBO0UvSXd4MUJWO0FBQ0Y7O0ErSXJ4MUJJO0VBQ0k7VUFBQTtBL0l3eDFCUjs7QStJbHgxQlk7RUFDSTtBL0lxeDFCaEI7O0ErSW54MUJnQjtFQUNJO0EvSXN4MUJwQjs7QStJbngxQmdCOztFQUNJO0EvSXV4MUJwQjs7QStJcHgxQmdCO0VBQ0k7QS9JdXgxQnBCOztBK0lyeDFCb0I7OztFQUVJO0EvSXl4MUJ4Qjs7QWdKMTQxQkE7O0VoSjg0MUJFOztBZ0p4NDFCRTtFQUdRO0lBQ0k7RWhKeTQxQmQ7O0VnSnI0MUJVOzs7Ozs7SUFNSTtFaEp3NDFCZDtBQUNGOztBZ0psNDFCUTtFQUNJO0VBQ0E7QWhKcTQxQlo7O0FnSm40MUJZO0VBQ0k7QWhKczQxQmhCOztBZ0ovMzFCUTtFQUNJO0VBQ0E7S0FBQTtNQUFBO1VBQUE7RUFDQTtBaEprNDFCWjs7QWdKaDQxQlk7RUFDSTtBaEptNDFCaEI7O0FnSmg0MUJZO0VBQ0k7RUFDQTtFQUNBO0FoSm00MUJoQjs7QWdKaDQxQlk7RUFDSTtBaEptNDFCaEI7O0FnSi8zMUJZOztFQUVJO0VBQ0E7QWhKazQxQmhCOztBZ0ozMzFCUTtFQUNJO0FoSjgzMUJaOztBZ0ozMzFCZ0I7RUFDSTtFQUNBO0FoSjgzMUJwQjs7QWdKejMxQmdCO0VBQ0k7RUFDQTtBaEo0MzFCcEI7O0FnSnAzMUJROzs7RUFDSTtFQUNBO0FoSnkzMUJaOztBZ0pyMzFCUTs7O0VBQ0k7VUFBQTtBaEowMzFCWjs7QWdKcjMxQkk7RUFDSTtBaEp3MzFCUjs7QWdKcDMxQkk7RUFDSTtJQUNJO0VoSnUzMUJWOztFZ0pyMzFCTTtJQUNJO0VoSnczMUJWOztFZ0p0MzFCTTtJQUNJO0VoSnkzMUJWO0FBQ0Y7O0FpSjcrMUJBOzs7Ozs7OztFakp1LzFCRTs7QWlKMysxQkU7RUFDSTtFQUNBO0FqSjgrMUJSOztBaUoxKzFCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpKNisxQlI7O0FEejUxQkE7RUFDSTtBQzQ1MUJKIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy9mcm9udGVuZC5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC9jb3JlL19pbmRleC5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC9jb3JlL19mdW5jdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvY29yZS9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL2NvcmUvX21peGlucy5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL2NvcmUvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL19yb290LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvdmVuZG9yL19yZnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9taXhpbnMvX2NvbG9yLW1vZGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9fcmVib290LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvX3R5cGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9taXhpbnMvX2xpc3RzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvX2ltYWdlcy5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL21peGlucy9faW1hZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9fY29udGFpbmVycy5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL21peGlucy9fY29udGFpbmVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvbWl4aW5zL19icmVha3BvaW50cy5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL19ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvbWl4aW5zL19ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvX3RhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL21peGlucy9fdGFibGUtdmFyaWFudHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9mb3Jtcy9fbGFiZWxzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvZm9ybXMvX2Zvcm0tdGV4dC5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL2Zvcm1zL19mb3JtLWNvbnRyb2wuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9taXhpbnMvX3RyYW5zaXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9taXhpbnMvX2dyYWRpZW50cy5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL2Zvcm1zL19mb3JtLXNlbGVjdC5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL2Zvcm1zL19mb3JtLWNoZWNrLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvZm9ybXMvX2Zvcm0tcmFuZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9mb3Jtcy9fZmxvYXRpbmctbGFiZWxzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvZm9ybXMvX2lucHV0LWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvbWl4aW5zL19mb3Jtcy5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL19idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvbWl4aW5zL19idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvX3RyYW5zaXRpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvX2Ryb3Bkb3duLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvbWl4aW5zL19jYXJldC5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL19idXR0b24tZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9fbmF2LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvX25hdmJhci5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL19jYXJkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvX2FjY29yZGlvbi5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL19icmVhZGNydW1iLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvX3BhZ2luYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9taXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9fYmFkZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9fYWxlcnQuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9fcHJvZ3Jlc3Muc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9fbGlzdC1ncm91cC5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL19jbG9zZS5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL190b2FzdHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9fbW9kYWwuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9taXhpbnMvX2JhY2tkcm9wLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvX3Rvb2x0aXAuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9fcG9wb3Zlci5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL19jYXJvdXNlbC5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL21peGlucy9fY2xlYXJmaXguc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9fc3Bpbm5lcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9fb2ZmY2FudmFzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvX3BsYWNlaG9sZGVycy5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL2hlbHBlcnMvX2NvbG9yLWJnLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvaGVscGVycy9fY29sb3JlZC1saW5rcy5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL2hlbHBlcnMvX2ZvY3VzLXJpbmcuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9oZWxwZXJzL19pY29uLWxpbmsuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9oZWxwZXJzL19yYXRpby5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL2hlbHBlcnMvX3Bvc2l0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvaGVscGVycy9fc3RhY2tzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvaGVscGVycy9fdmlzdWFsbHktaGlkZGVuLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvbWl4aW5zL192aXN1YWxseS1oaWRkZW4uc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9oZWxwZXJzL19zdHJldGNoZWQtbGluay5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL2hlbHBlcnMvX3RleHQtdHJ1bmNhdGlvbi5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL21peGlucy9fdGV4dC10cnVuY2F0ZS5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL2hlbHBlcnMvX3ZyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvbWl4aW5zL191dGlsaXRpZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC91dGlsaXRpZXMvX2FwaS5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC9saWIvX2J1dHRvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvY29tcG9uZW50cy9fcXVpbGwtZWRpdG9yLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL2NvbXBvbmVudHMvX3N0YXItcmF0aW5nLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL2NvbXBvbmVudHMvX3NlbGVjdDItYWNjZXNzaWJpbGl0eS5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC9jb21wb25lbnRzL19jb29raWUtY29uc2VudC1iYW5uZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvY29tcG9uZW50cy9fZW5oYW5jZWQtZGF0YXRhYmxlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL2NvbXBvbmVudHMvX3RvZ2dsZS1zd2l0Y2guc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvY29tcG9uZW50cy9fbm90aWZpY2F0aW9ucy1kcm9wZG93bi5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL2NvcmUvX3Jlc2V0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvY29yZS9fdHlwb2dyYXBoeS5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL2NvcmUvX3V0aWxpdGllcy5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL2NvcmUvX2xheW91dC5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL2NvcmUvX2Jvb3RzdHJhcC1vdmVycmlkZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9saWIvX2hlYWRlci5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL2xpYi9jb21wb25lbnRzL19wcm9kdWN0LWNhcmQuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9saWIvY29tcG9uZW50cy9fcHJvZHVjdC1jYXJvdXNlbC5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL2xpYi9jb21wb25lbnRzL19jYXJ0LXdpZGdldC5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL2xpYi9jb21wb25lbnRzL193aXNobGlzdC13aWRnZXQuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9saWIvY29tcG9uZW50cy9fZGF0YXRhYmxlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvbGliL2NvbXBvbmVudHMvX3RvYXN0LW92ZXJyaWRlcy5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL2xpYi9mb3Jtcy9fZHluYW1pYy1mb3JtLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvbGliL19mb3Jtcy5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL2NvbXBvbmVudHMvX2hlYWRlci1kcm9wZG93bnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9jb21wb25lbnRzL19oZWFkZXItZHJvcGRvd24tdHlwb2dyYXBoeS5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL2NvbXBvbmVudHMvX3dpc2hsaXN0LWJ1dHRvbi5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL2NvbXBvbmVudHMvX3Nob3AtZmlsdGVycy1lbmhhbmNlZC5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL2NvbXBvbmVudHMvX2hlYWRlci1pY29ucy5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL2NvbXBvbmVudHMvX29yZGVyLWNhcmQuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9jb21wb25lbnRzL19maWx0ZXItZm9ybS5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL3BhZ2VzL19ob21lLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvcGFnZXMvX3Nob3Auc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9wYWdlcy9fY2FydC5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL3BhZ2VzL19pdGVtLWRldGFpbHMtcGFnZS5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL3BhZ2VzL19jaGVja291dC5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL3BhZ2VzL19vcmRlci1yZWNlaXZlZC5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL3BhZ2VzL19hY2NvdW50LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvcGFnZXMvX3Byb2ZpbGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9wYWdlcy9fY29udGVudC5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL3BhZ2VzL19jb21wYXJpc29uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvcGFnZXMvX25vdGlmaWNhdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9wYWdlcy9fbm90aWZpY2F0aW9ucy1pbmRleC5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL3BhZ2VzL193aXNobGlzdC5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL3BhZ2VzL19zZWxsZXItcHJvZmlsZS5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL3BhZ2VzL19zZWxsZXItcHJvZmlsZS1zaG93LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvcGFnZXMvX3NlYXJjaC11bmlmaWVkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvcGFnZXMvX3NlYXJjaC1hamF4LXVuaWZpZWQuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9wYWdlcy9fZGlzY292ZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9wYWdlcy9fcHJvZmlsZS1vcmRlci1kZXRhaWwuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9wYWdlcy9fY29va2llLWNvbnNlbnQtcGFnZS5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL3BhZ2VzL19hc2stcXVlc3Rpb24tcGFnZS5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL3BhZ2VzL19wcm9maWxlLWxheW91dC1wYWdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvcGFnZXMvX3Byb2ZpbGUtYWRkcmVzc2VzLXBhZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9wYWdlcy9fcHJvZmlsZS1zZWN1cml0eS5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL3BhZ2VzL19wcm9maWxlLWludm9pY2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9wYWdlcy9fYmxvZy1pbmRleC1wYWdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvcGFnZXMvX2Jsb2ctc2hvdy5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL3BhZ2VzL19ibG9nLWNhdGVnb3JpZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9wYWdlcy9fYXV0aC1sb2dpbi5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL3BhZ2VzL19hdXRoLXJlZ2lzdGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvcGFnZXMvX2F1dGgtdmVyaWZ5LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvcGFnZXMvX2NoZWNrb3V0LXN1Y2Nlc3Muc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9wYWdlcy9fYXV0aC1wYXNzd29yZC1lbWFpbC5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL3BhZ2VzL19hdXRoLXBhc3N3b3JkLXJlc2V0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvcGFnZXMvX3Nob3AtY2F0ZWdvcnkuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9wYWdlcy9fcHJvZHVjdC1jYXRlZ29yaWVzLXBhZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9wYWdlcy9fcmVxdWVzdC1zZWxsZXItYWNjZXNzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvcGFnZXMvX3Byb2ZpbGUtc3VwcG9ydC10aWNrZXQtZGV0YWlsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvcGFnZXMvX3Byb2ZpbGUtc3VwcG9ydC10aWNrZXRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvcGFnZXMvX3ByZXZpZXctZGlhbW9uZC1wYWdlLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDYXJhdFggRnJvbnRlbmQgU3R5bGVzXG4gKiBcbiAqIE1haW4gZW50cnkgcG9pbnQgZm9yIGFsbCBmcm9udGVuZCBzdHlsZXMuXG4gKiBGb2xsb3dzIGEgc3RydWN0dXJlZCBvcmdhbml6YXRpb24gd2l0aCBzaGFyZWQgY29yZSwgZnJvbnRlbmQtc3BlY2lmaWMgbGlicmFyaWVzLCBhbmQgcGFnZSBzdHlsZXMuXG4gKi9cblxuLy8gMS4gU2hhcmVkIENvcmUgKGZ1bmN0aW9ucywgdmFyaWFibGVzLCBtaXhpbnMpXG5AaW1wb3J0IFwic2hhcmVkL2NvcmUvaW5kZXhcIjtcblxuLy8gMS41LiBGcm9udGVuZC1zcGVjaWZpYyB2YXJpYWJsZXMgKG11c3QgY29tZSBiZWZvcmUgQm9vdHN0cmFwKVxuQGltcG9ydCBcImZyb250ZW5kL2NvcmUvdmFyaWFibGVzXCI7XG5cbi8vIDIuIEJvb3RzdHJhcCA1ICh3aXRoIG91ciB2YXJpYWJsZSBvdmVycmlkZXMpXG5AaW1wb3J0IFwidmVuZG9ycy9ib290c3RyYXBcIjtcblxuLy8gMi41LiBWZW5kb3IgTGlicmFyaWVzIChTZWxlY3QyIENTUyBsb2FkZWQgdmlhIENETilcblxuLy8gMy4gU2hhcmVkIExpYnJhcmllc1xuQGltcG9ydCBcInNoYXJlZC9saWIvYnV0dG9uc1wiO1xuQGltcG9ydCBcInNoYXJlZC9jb21wb25lbnRzL3F1aWxsLWVkaXRvclwiO1xuQGltcG9ydCBcInNoYXJlZC9jb21wb25lbnRzL3N0YXItcmF0aW5nXCI7XG5AaW1wb3J0IFwic2hhcmVkL2NvbXBvbmVudHMvc2VsZWN0Mi1hY2Nlc3NpYmlsaXR5XCI7IC8vIEltcHJvdmUgU2VsZWN0MiBrZXlib2FyZCBuYXZpZ2F0aW9uIHZpc2liaWxpdHlcbkBpbXBvcnQgXCJzaGFyZWQvY29tcG9uZW50cy9jb29raWUtY29uc2VudC1iYW5uZXJcIjtcbkBpbXBvcnQgXCJzaGFyZWQvY29tcG9uZW50cy9lbmhhbmNlZC1kYXRhdGFibGVcIjtcbkBpbXBvcnQgXCJzaGFyZWQvY29tcG9uZW50cy90b2dnbGUtc3dpdGNoXCI7XG5AaW1wb3J0IFwic2hhcmVkL2NvbXBvbmVudHMvbm90aWZpY2F0aW9ucy1kcm9wZG93blwiO1xuLy8gUmVtb3ZlZCBzaGFyZWQvbGliL2Zvcm1zIC0gZnJvbnRlbmQgaGFzIGl0cyBvd24gZm9ybSBzeXN0ZW1cblxuLy8gNC4gRnJvbnRlbmQgQ29yZSAoYmFzZSBzdHlsZXMpXG5AaW1wb3J0IFwiZnJvbnRlbmQvY29yZS9yZXNldFwiO1xuQGltcG9ydCBcImZyb250ZW5kL2NvcmUvdHlwb2dyYXBoeVwiO1xuQGltcG9ydCBcImZyb250ZW5kL2NvcmUvdXRpbGl0aWVzXCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvY29yZS9sYXlvdXRcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9jb3JlL2Jvb3RzdHJhcC1vdmVycmlkZXNcIjtcblxuLy8gNS4gRnJvbnRlbmQgTGlicmFyaWVzIChjb21wb25lbnRzKVxuQGltcG9ydCBcImZyb250ZW5kL2xpYi9oZWFkZXJcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9saWIvbmF2aWdhdGlvblwiO1xuQGltcG9ydCBcImZyb250ZW5kL2xpYi9mb290ZXJcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9saWIvY29tcG9uZW50cy9wcm9kdWN0LWNhcmRcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9saWIvY29tcG9uZW50cy9wcm9kdWN0LWNhcm91c2VsXCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvbGliL2NvbXBvbmVudHMvY2FydC13aWRnZXRcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9saWIvY29tcG9uZW50cy93aXNobGlzdC13aWRnZXRcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9saWIvY29tcG9uZW50cy9zZWFyY2hcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9saWIvY29tcG9uZW50cy9wYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvbGliL2NvbXBvbmVudHMvYnJlYWRjcnVtYnNcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9saWIvY29tcG9uZW50cy9hbGVydHNcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9saWIvY29tcG9uZW50cy9tb2RhbHNcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9saWIvY29tcG9uZW50cy9kYXRhdGFibGVcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9saWIvY29tcG9uZW50cy90b2FzdC1vdmVycmlkZXNcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9saWIvZm9ybXMvZHluYW1pYy1mb3JtXCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvbGliL2Zvcm1zXCI7IC8vIEZyb250ZW5kLXNwZWNpZmljIGZvcm0gb3ZlcnJpZGVzIChzcXVhcmUgY29ybmVycylcbkBpbXBvcnQgXCJmcm9udGVuZC9jb21wb25lbnRzL2hlYWRlci1kcm9wZG93bnNcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9jb21wb25lbnRzL2hlYWRlci1kcm9wZG93bi10eXBvZ3JhcGh5XCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvY29tcG9uZW50cy93aXNobGlzdC1idXR0b25cIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9jb21wb25lbnRzL3Nob3AtZmlsdGVycy1lbmhhbmNlZFwiO1xuQGltcG9ydCBcImZyb250ZW5kL2NvbXBvbmVudHMvaGVhZGVyLWljb25zXCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvY29tcG9uZW50cy9vcmRlci1jYXJkXCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvY29tcG9uZW50cy9maWx0ZXItZm9ybVwiO1xuXG4vLyA2LiBGcm9udGVuZCBQYWdlcyAocGFnZS1zcGVjaWZpYyBzdHlsZXMpXG5AaW1wb3J0IFwiZnJvbnRlbmQvcGFnZXMvaG9tZVwiO1xuQGltcG9ydCBcImZyb250ZW5kL3BhZ2VzL3Nob3BcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9wYWdlcy9jYXJ0XCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvcGFnZXMvcHJvZHVjdC1kZXRhaWxcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9wYWdlcy9pdGVtLWRldGFpbHMtcGFnZVwiOyAvLyBOZXcgQW1hem9uL2VCYXkgc3R5bGUgaXRlbSBkZXRhaWxzXG5AaW1wb3J0IFwiZnJvbnRlbmQvcGFnZXMvY2hlY2tvdXRcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9wYWdlcy9vcmRlci1yZWNlaXZlZFwiO1xuQGltcG9ydCBcImZyb250ZW5kL3BhZ2VzL2FjY291bnRcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9wYWdlcy9wcm9maWxlXCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvcGFnZXMvY29udGVudFwiO1xuQGltcG9ydCBcImZyb250ZW5kL3BhZ2VzL2NvbXBhcmlzb25cIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9wYWdlcy9ub3RpZmljYXRpb25zXCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvcGFnZXMvbm90aWZpY2F0aW9ucy1pbmRleFwiO1xuQGltcG9ydCBcImZyb250ZW5kL3BhZ2VzL3dpc2hsaXN0XCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvcGFnZXMvc2VsbGVyLXByb2ZpbGVcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9wYWdlcy9zZWxsZXItcHJvZmlsZS1zaG93XCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvcGFnZXMvc2VhcmNoLXVuaWZpZWRcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9wYWdlcy9zZWFyY2gtYWpheC11bmlmaWVkXCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvcGFnZXMvZGlzY292ZXJcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9wYWdlcy9wcm9maWxlLW9yZGVyLWRldGFpbFwiO1xuQGltcG9ydCBcImZyb250ZW5kL3BhZ2VzL2Nvb2tpZS1jb25zZW50LXBhZ2VcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9wYWdlcy9hc2stcXVlc3Rpb24tcGFnZVwiO1xuQGltcG9ydCBcImZyb250ZW5kL3BhZ2VzL3Byb2ZpbGUtbGF5b3V0LXBhZ2VcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9wYWdlcy9wcm9maWxlLWFkZHJlc3Nlcy1wYWdlXCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvcGFnZXMvcHJvZmlsZS1zZWN1cml0eVwiO1xuQGltcG9ydCBcImZyb250ZW5kL3BhZ2VzL3Byb2ZpbGUtaW52b2ljZVwiO1xuQGltcG9ydCBcImZyb250ZW5kL3BhZ2VzL2Jsb2ctaW5kZXgtcGFnZVwiO1xuQGltcG9ydCBcImZyb250ZW5kL3BhZ2VzL2Jsb2ctc2hvd1wiO1xuQGltcG9ydCBcImZyb250ZW5kL3BhZ2VzL2Jsb2ctY2F0ZWdvcmllc1wiO1xuQGltcG9ydCBcImZyb250ZW5kL3BhZ2VzL2F1dGgtbG9naW5cIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9wYWdlcy9hdXRoLXJlZ2lzdGVyXCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvcGFnZXMvYXV0aC12ZXJpZnlcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9wYWdlcy9jaGVja291dC1zdWNjZXNzXCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvcGFnZXMvYXV0aC1wYXNzd29yZC1lbWFpbFwiO1xuQGltcG9ydCBcImZyb250ZW5kL3BhZ2VzL2F1dGgtcGFzc3dvcmQtcmVzZXRcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9wYWdlcy9zaG9wLWNhdGVnb3J5XCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvcGFnZXMvcHJvZHVjdC1jYXRlZ29yaWVzLXBhZ2VcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9wYWdlcy9yZXF1ZXN0LXNlbGxlci1hY2Nlc3NcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9wYWdlcy9wcm9maWxlLXN1cHBvcnQtdGlja2V0LWRldGFpbFwiO1xuQGltcG9ydCBcImZyb250ZW5kL3BhZ2VzL3Byb2ZpbGUtc3VwcG9ydC10aWNrZXRzXCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvcGFnZXMvcHJldmlldy1kaWFtb25kLXBhZ2VcIjtcblxuQGltcG9ydCBcImZyb250ZW5kL3RoZW1lXCI7XG5cbi8vIEhvbWUgcGFnZSBzcGVjaWZpYyBzdHlsZXNcbi5oZXJvU2xpZGVyIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vKipcbiAqIENhcmF0WCBGcm9udGVuZCBTdHlsZXNcbiAqIFxuICogTWFpbiBlbnRyeSBwb2ludCBmb3IgYWxsIGZyb250ZW5kIHN0eWxlcy5cbiAqIEZvbGxvd3MgYSBzdHJ1Y3R1cmVkIG9yZ2FuaXphdGlvbiB3aXRoIHNoYXJlZCBjb3JlLCBmcm9udGVuZC1zcGVjaWZpYyBsaWJyYXJpZXMsIGFuZCBwYWdlIHN0eWxlcy5cbiAqL1xuXG4vKipcbiAqIFNoYXJlZCBDb3JlIEluZGV4XG4gKlxuICogSW1wb3J0IGFsbCBzaGFyZWQgY29yZSBTQ1NTIGZpbGVzIGluIHRoZSBjb3JyZWN0IG9yZGVyXG4gKi9cblxuLyoqXG4gKiBTaGFyZWQgRnVuY3Rpb25zXG4gKlxuICogU0NTUyBmdW5jdGlvbnMgZm9yIGNhbGN1bGF0aW9ucyBhbmQgdHJhbnNmb3JtYXRpb25zXG4gKi9cblxuLyoqXG4gKiBTaGFyZWQgVmFyaWFibGVzXG4gKlxuICogQ29yZSB2YXJpYWJsZXMgdXNlZCB0aHJvdWdob3V0IGJvdGggZnJvbnRlbmQgYW5kIGJhY2tlbmQgc3R5bGluZy5cbiAqIFRoZXNlIHByb3ZpZGUgYSBjZW50cmFsIHBsYWNlIHRvIGRlZmluZSBjb2xvcnMsIHNwYWNpbmcsIGFuZCBvdGhlciBkZXNpZ24gZWxlbWVudHMuXG4gKi9cblxuLyoqXG4gKiBTaGFyZWQgTWl4aW5zXG4gKlxuICogUmV1c2FibGUgU0NTUyBtaXhpbnMgZm9yIGNvbnNpc3RlbnQgc3R5bGluZyBwYXR0ZXJuc1xuICovXG5cbi8qKlxuICogRnJvbnRlbmQgVmFyaWFibGVzXG4gKlxuICogRnJvbnRlbmQtc3BlY2lmaWMgdmFyaWFibGUgb3ZlcnJpZGVzIGFuZCBjdXN0b20gdmFsdWVzLlxuICogVGhlc2UgdmFyaWFibGVzIGFyZSBsb2FkZWQgYmVmb3JlIEJvb3RzdHJhcCB0byBvdmVycmlkZSBkZWZhdWx0cy5cbiAqL1xuXG4vKipcbiAqIFNoYXJlZCBWYXJpYWJsZXNcbiAqXG4gKiBDb3JlIHZhcmlhYmxlcyB1c2VkIHRocm91Z2hvdXQgYm90aCBmcm9udGVuZCBhbmQgYmFja2VuZCBzdHlsaW5nLlxuICogVGhlc2UgcHJvdmlkZSBhIGNlbnRyYWwgcGxhY2UgdG8gZGVmaW5lIGNvbG9ycywgc3BhY2luZywgYW5kIG90aGVyIGRlc2lnbiBlbGVtZW50cy5cbiAqL1xuXG46cm9vdCxcbltkYXRhLWJzLXRoZW1lPWxpZ2h0XSB7XG4gIC0tYnMtYmx1ZTogIzBkNmVmZDtcbiAgLS1icy1pbmRpZ286ICM2NjEwZjI7XG4gIC0tYnMtcHVycGxlOiAjNmY0MmMxO1xuICAtLWJzLXBpbms6ICNkNjMzODQ7XG4gIC0tYnMtcmVkOiAjZGMzNTQ1O1xuICAtLWJzLW9yYW5nZTogI2ZkN2UxNDtcbiAgLS1icy15ZWxsb3c6ICNmZmMxMDc7XG4gIC0tYnMtZ3JlZW46ICMxOTg3NTQ7XG4gIC0tYnMtdGVhbDogIzIwYzk5NztcbiAgLS1icy1jeWFuOiAjMGRjYWYwO1xuICAtLWJzLWJsYWNrOiAjMzMzMzMzO1xuICAtLWJzLXdoaXRlOiAjZmZmZmZmO1xuICAtLWJzLWdyYXk6ICM2Yzc1N2Q7XG4gIC0tYnMtZ3JheS1kYXJrOiAjMzQzYTQwO1xuICAtLWJzLWdyYXktMTAwOiAjZjhmOWZhO1xuICAtLWJzLWdyYXktMjAwOiAjZTllY2VmO1xuICAtLWJzLWdyYXktMzAwOiAjZGVlMmU2O1xuICAtLWJzLWdyYXktNDAwOiAjY2VkNGRhO1xuICAtLWJzLWdyYXktNTAwOiAjYWRiNWJkO1xuICAtLWJzLWdyYXktNjAwOiAjNmM3NTdkO1xuICAtLWJzLWdyYXktNzAwOiAjNDk1MDU3O1xuICAtLWJzLWdyYXktODAwOiAjMzQzYTQwO1xuICAtLWJzLWdyYXktOTAwOiAjMjEyNTI5O1xuICAtLWJzLXByaW1hcnk6ICMxZTFlNTY7XG4gIC0tYnMtc2Vjb25kYXJ5OiAjYTM3ZWJhO1xuICAtLWJzLXN1Y2Nlc3M6ICM0Y2FmNTA7XG4gIC0tYnMtaW5mbzogIzIxOTZmMztcbiAgLS1icy13YXJuaW5nOiAjZmY5ODAwO1xuICAtLWJzLWRhbmdlcjogI2Y0NDMzNjtcbiAgLS1icy1saWdodDogI2Y4ZjlmYTtcbiAgLS1icy1kYXJrOiAjMjEyNTI5O1xuICAtLWJzLXByaW1hcnktcmdiOiAzMCwgMzAsIDg2O1xuICAtLWJzLXNlY29uZGFyeS1yZ2I6IDE2MywgMTI2LCAxODY7XG4gIC0tYnMtc3VjY2Vzcy1yZ2I6IDc2LCAxNzUsIDgwO1xuICAtLWJzLWluZm8tcmdiOiAzMywgMTUwLCAyNDM7XG4gIC0tYnMtd2FybmluZy1yZ2I6IDI1NSwgMTUyLCAwO1xuICAtLWJzLWRhbmdlci1yZ2I6IDI0NCwgNjcsIDU0O1xuICAtLWJzLWxpZ2h0LXJnYjogMjQ4LCAyNDksIDI1MDtcbiAgLS1icy1kYXJrLXJnYjogMzMsIDM3LCA0MTtcbiAgLS1icy1wcmltYXJ5LXRleHQtZW1waGFzaXM6ICMwYzBjMjI7XG4gIC0tYnMtc2Vjb25kYXJ5LXRleHQtZW1waGFzaXM6ICM0MTMyNGE7XG4gIC0tYnMtc3VjY2Vzcy10ZXh0LWVtcGhhc2lzOiAjMWU0NjIwO1xuICAtLWJzLWluZm8tdGV4dC1lbXBoYXNpczogIzBkM2M2MTtcbiAgLS1icy13YXJuaW5nLXRleHQtZW1waGFzaXM6ICM2NjNkMDA7XG4gIC0tYnMtZGFuZ2VyLXRleHQtZW1waGFzaXM6ICM2MjFiMTY7XG4gIC0tYnMtbGlnaHQtdGV4dC1lbXBoYXNpczogIzQ5NTA1NztcbiAgLS1icy1kYXJrLXRleHQtZW1waGFzaXM6ICM0OTUwNTc7XG4gIC0tYnMtcHJpbWFyeS1iZy1zdWJ0bGU6ICNkMmQyZGQ7XG4gIC0tYnMtc2Vjb25kYXJ5LWJnLXN1YnRsZTogI2VkZTVmMTtcbiAgLS1icy1zdWNjZXNzLWJnLXN1YnRsZTogI2RiZWZkYztcbiAgLS1icy1pbmZvLWJnLXN1YnRsZTogI2QzZWFmZDtcbiAgLS1icy13YXJuaW5nLWJnLXN1YnRsZTogI2ZmZWFjYztcbiAgLS1icy1kYW5nZXItYmctc3VidGxlOiAjZmRkOWQ3O1xuICAtLWJzLWxpZ2h0LWJnLXN1YnRsZTogI2ZjZmNmZDtcbiAgLS1icy1kYXJrLWJnLXN1YnRsZTogI2NlZDRkYTtcbiAgLS1icy1wcmltYXJ5LWJvcmRlci1zdWJ0bGU6ICNhNWE1YmI7XG4gIC0tYnMtc2Vjb25kYXJ5LWJvcmRlci1zdWJ0bGU6ICNkYWNiZTM7XG4gIC0tYnMtc3VjY2Vzcy1ib3JkZXItc3VidGxlOiAjYjdkZmI5O1xuICAtLWJzLWluZm8tYm9yZGVyLXN1YnRsZTogI2E2ZDVmYTtcbiAgLS1icy13YXJuaW5nLWJvcmRlci1zdWJ0bGU6ICNmZmQ2OTk7XG4gIC0tYnMtZGFuZ2VyLWJvcmRlci1zdWJ0bGU6ICNmYmI0YWY7XG4gIC0tYnMtbGlnaHQtYm9yZGVyLXN1YnRsZTogI2U5ZWNlZjtcbiAgLS1icy1kYXJrLWJvcmRlci1zdWJ0bGU6ICNhZGI1YmQ7XG4gIC0tYnMtd2hpdGUtcmdiOiAyNTUsIDI1NSwgMjU1O1xuICAtLWJzLWJsYWNrLXJnYjogNTEsIDUxLCA1MTtcbiAgLS1icy1mb250LXNhbnMtc2VyaWY6IHN5c3RlbS11aSwgLWFwcGxlLXN5c3RlbSwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgXCJOb3RvIFNhbnNcIiwgXCJMaWJlcmF0aW9uIFNhbnNcIiwgQXJpYWwsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIjtcbiAgLS1icy1mb250LW1vbm9zcGFjZTogU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZTtcbiAgLS1icy1ncmFkaWVudDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSk7XG4gIC0tYnMtYm9keS1mb250LWZhbWlseTogXCJQb3BwaW5zXCIsIFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG4gIC0tYnMtYm9keS1mb250LXNpemU6IDFyZW07XG4gIC0tYnMtYm9keS1mb250LXdlaWdodDogNDAwO1xuICAtLWJzLWJvZHktbGluZS1oZWlnaHQ6IDEuNTtcbiAgLS1icy1ib2R5LWNvbG9yOiAjMjEyNTI5O1xuICAtLWJzLWJvZHktY29sb3ItcmdiOiAzMywgMzcsIDQxO1xuICAtLWJzLWJvZHktYmc6ICNmZmZmZmY7XG4gIC0tYnMtYm9keS1iZy1yZ2I6IDI1NSwgMjU1LCAyNTU7XG4gIC0tYnMtZW1waGFzaXMtY29sb3I6ICMzMzMzMzM7XG4gIC0tYnMtZW1waGFzaXMtY29sb3ItcmdiOiA1MSwgNTEsIDUxO1xuICAtLWJzLXNlY29uZGFyeS1jb2xvcjogcmdiYSgzMywgMzcsIDQxLCAwLjc1KTtcbiAgLS1icy1zZWNvbmRhcnktY29sb3ItcmdiOiAzMywgMzcsIDQxO1xuICAtLWJzLXNlY29uZGFyeS1iZzogI2U5ZWNlZjtcbiAgLS1icy1zZWNvbmRhcnktYmctcmdiOiAyMzMsIDIzNiwgMjM5O1xuICAtLWJzLXRlcnRpYXJ5LWNvbG9yOiByZ2JhKDMzLCAzNywgNDEsIDAuNSk7XG4gIC0tYnMtdGVydGlhcnktY29sb3ItcmdiOiAzMywgMzcsIDQxO1xuICAtLWJzLXRlcnRpYXJ5LWJnOiAjZjhmOWZhO1xuICAtLWJzLXRlcnRpYXJ5LWJnLXJnYjogMjQ4LCAyNDksIDI1MDtcbiAgLS1icy1oZWFkaW5nLWNvbG9yOiBpbmhlcml0O1xuICAtLWJzLWxpbmstY29sb3I6ICMxZTFlNTY7XG4gIC0tYnMtbGluay1jb2xvci1yZ2I6IDMwLCAzMCwgODY7XG4gIC0tYnMtbGluay1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIC0tYnMtbGluay1ob3Zlci1jb2xvcjogIzE4MTg0NTtcbiAgLS1icy1saW5rLWhvdmVyLWNvbG9yLXJnYjogMjQsIDI0LCA2OTtcbiAgLS1icy1jb2RlLWNvbG9yOiAjZDYzMzg0O1xuICAtLWJzLWhpZ2hsaWdodC1iZzogI2ZmZjNjZDtcbiAgLS1icy1ib3JkZXItd2lkdGg6IDFweDtcbiAgLS1icy1ib3JkZXItc3R5bGU6IHNvbGlkO1xuICAtLWJzLWJvcmRlci1jb2xvcjogI2I2YjZiNjtcbiAgLS1icy1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQ6IHJnYmEoMTEyLCAxMTIsIDExMiwgMC4zNSk7XG4gIC0tYnMtYm9yZGVyLXJhZGl1czogOHB4O1xuICAtLWJzLWJvcmRlci1yYWRpdXMtc206IDRweDtcbiAgLS1icy1ib3JkZXItcmFkaXVzLWxnOiAxMnB4O1xuICAtLWJzLWJvcmRlci1yYWRpdXMteGw6IDA7XG4gIC0tYnMtYm9yZGVyLXJhZGl1cy14eGw6IDA7XG4gIC0tYnMtYm9yZGVyLXJhZGl1cy0yeGw6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMteHhsKTtcbiAgLS1icy1ib3JkZXItcmFkaXVzLXBpbGw6IDUwcmVtO1xuICAtLWJzLWJveC1zaGFkb3c6IDAgNHB4IDZweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIC0tYnMtYm94LXNoYWRvdy1zbTogMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgLS1icy1ib3gtc2hhZG93LWxnOiAwIDEwcHggMTVweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIC0tYnMtYm94LXNoYWRvdy1pbnNldDogaW5zZXQgMCAxcHggMnB4IHJnYmEoNTEsIDUxLCA1MSwgMC4wNzUpO1xuICAtLWJzLWZvY3VzLXJpbmctd2lkdGg6IDAuMjVyZW07XG4gIC0tYnMtZm9jdXMtcmluZy1vcGFjaXR5OiAwLjI1O1xuICAtLWJzLWZvY3VzLXJpbmctY29sb3I6IHJnYmEoMzAsIDMwLCA4NiwgMC4yNSk7XG4gIC0tYnMtZm9ybS12YWxpZC1jb2xvcjogIzRjYWY1MDtcbiAgLS1icy1mb3JtLXZhbGlkLWJvcmRlci1jb2xvcjogIzRjYWY1MDtcbiAgLS1icy1mb3JtLWludmFsaWQtY29sb3I6ICNmNDQzMzY7XG4gIC0tYnMtZm9ybS1pbnZhbGlkLWJvcmRlci1jb2xvcjogI2Y0NDMzNjtcbn1cblxuW2RhdGEtYnMtdGhlbWU9ZGFya10ge1xuICBjb2xvci1zY2hlbWU6IGRhcms7XG4gIC0tYnMtYm9keS1jb2xvcjogI2FkYjViZDtcbiAgLS1icy1ib2R5LWNvbG9yLXJnYjogMTczLCAxODEsIDE4OTtcbiAgLS1icy1ib2R5LWJnOiAjMjEyNTI5O1xuICAtLWJzLWJvZHktYmctcmdiOiAzMywgMzcsIDQxO1xuICAtLWJzLWVtcGhhc2lzLWNvbG9yOiAjZmZmZmZmO1xuICAtLWJzLWVtcGhhc2lzLWNvbG9yLXJnYjogMjU1LCAyNTUsIDI1NTtcbiAgLS1icy1zZWNvbmRhcnktY29sb3I6IHJnYmEoMTczLCAxODEsIDE4OSwgMC43NSk7XG4gIC0tYnMtc2Vjb25kYXJ5LWNvbG9yLXJnYjogMTczLCAxODEsIDE4OTtcbiAgLS1icy1zZWNvbmRhcnktYmc6ICMzNDNhNDA7XG4gIC0tYnMtc2Vjb25kYXJ5LWJnLXJnYjogNTIsIDU4LCA2NDtcbiAgLS1icy10ZXJ0aWFyeS1jb2xvcjogcmdiYSgxNzMsIDE4MSwgMTg5LCAwLjUpO1xuICAtLWJzLXRlcnRpYXJ5LWNvbG9yLXJnYjogMTczLCAxODEsIDE4OTtcbiAgLS1icy10ZXJ0aWFyeS1iZzogIzJiMzAzNTtcbiAgLS1icy10ZXJ0aWFyeS1iZy1yZ2I6IDQzLCA0OCwgNTM7XG4gIC0tYnMtcHJpbWFyeS10ZXh0LWVtcGhhc2lzOiAjNzg3ODlhO1xuICAtLWJzLXNlY29uZGFyeS10ZXh0LWVtcGhhc2lzOiAjYzhiMmQ2O1xuICAtLWJzLXN1Y2Nlc3MtdGV4dC1lbXBoYXNpczogIzk0Y2Y5NjtcbiAgLS1icy1pbmZvLXRleHQtZW1waGFzaXM6ICM3YWMwZjg7XG4gIC0tYnMtd2FybmluZy10ZXh0LWVtcGhhc2lzOiAjZmZjMTY2O1xuICAtLWJzLWRhbmdlci10ZXh0LWVtcGhhc2lzOiAjZjg4ZTg2O1xuICAtLWJzLWxpZ2h0LXRleHQtZW1waGFzaXM6ICNmOGY5ZmE7XG4gIC0tYnMtZGFyay10ZXh0LWVtcGhhc2lzOiAjZGVlMmU2O1xuICAtLWJzLXByaW1hcnktYmctc3VidGxlOiAjMDYwNjExO1xuICAtLWJzLXNlY29uZGFyeS1iZy1zdWJ0bGU6ICMyMTE5MjU7XG4gIC0tYnMtc3VjY2Vzcy1iZy1zdWJ0bGU6ICMwZjIzMTA7XG4gIC0tYnMtaW5mby1iZy1zdWJ0bGU6ICMwNzFlMzE7XG4gIC0tYnMtd2FybmluZy1iZy1zdWJ0bGU6ICMzMzFlMDA7XG4gIC0tYnMtZGFuZ2VyLWJnLXN1YnRsZTogIzMxMGQwYjtcbiAgLS1icy1saWdodC1iZy1zdWJ0bGU6ICMzNDNhNDA7XG4gIC0tYnMtZGFyay1iZy1zdWJ0bGU6ICMzNDM3M2E7XG4gIC0tYnMtcHJpbWFyeS1ib3JkZXItc3VidGxlOiAjMTIxMjM0O1xuICAtLWJzLXNlY29uZGFyeS1ib3JkZXItc3VidGxlOiAjNjI0YzcwO1xuICAtLWJzLXN1Y2Nlc3MtYm9yZGVyLXN1YnRsZTogIzJlNjkzMDtcbiAgLS1icy1pbmZvLWJvcmRlci1zdWJ0bGU6ICMxNDVhOTI7XG4gIC0tYnMtd2FybmluZy1ib3JkZXItc3VidGxlOiAjOTk1YjAwO1xuICAtLWJzLWRhbmdlci1ib3JkZXItc3VidGxlOiAjOTIyODIwO1xuICAtLWJzLWxpZ2h0LWJvcmRlci1zdWJ0bGU6ICM0OTUwNTc7XG4gIC0tYnMtZGFyay1ib3JkZXItc3VidGxlOiAjMzQzYTQwO1xuICAtLWJzLWhlYWRpbmctY29sb3I6IGluaGVyaXQ7XG4gIC0tYnMtbGluay1jb2xvcjogIzc4Nzg5YTtcbiAgLS1icy1saW5rLWhvdmVyLWNvbG9yOiAjOTM5M2FlO1xuICAtLWJzLWxpbmstY29sb3ItcmdiOiAxMjAsIDEyMCwgMTU0O1xuICAtLWJzLWxpbmstaG92ZXItY29sb3ItcmdiOiAxNDcsIDE0NywgMTc0O1xuICAtLWJzLWNvZGUtY29sb3I6ICNlNjg1YjU7XG4gIC0tYnMtYm9yZGVyLWNvbG9yOiAjNDk1MDU3O1xuICAtLWJzLWJvcmRlci1jb2xvci10cmFuc2x1Y2VudDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTtcbiAgLS1icy1mb3JtLXZhbGlkLWNvbG9yOiAjNzViNzk4O1xuICAtLWJzLWZvcm0tdmFsaWQtYm9yZGVyLWNvbG9yOiAjNzViNzk4O1xuICAtLWJzLWZvcm0taW52YWxpZC1jb2xvcjogI2VhODY4ZjtcbiAgLS1icy1mb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yOiAjZWE4NjhmO1xufVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IG5vLXByZWZlcmVuY2UpIHtcbiAgOnJvb3Qge1xuICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICB9XG59XG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1icy1ib2R5LWZvbnQtZmFtaWx5KTtcbiAgZm9udC1zaXplOiB2YXIoLS1icy1ib2R5LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1icy1ib2R5LWZvbnQtd2VpZ2h0KTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJzLWJvZHktbGluZS1oZWlnaHQpO1xuICBjb2xvcjogdmFyKC0tYnMtYm9keS1jb2xvcik7XG4gIHRleHQtYWxpZ246IHZhcigtLWJzLWJvZHktdGV4dC1hbGlnbik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWJvZHktYmcpO1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSg1MSwgNTEsIDUxLCAwKTtcbn1cblxuaHIge1xuICBtYXJnaW46IDFyZW0gMDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogdmFyKC0tYnMtYm9yZGVyLXdpZHRoKSBzb2xpZDtcbiAgb3BhY2l0eTogMC4yNTtcbn1cblxuaDYsXG4uaDYsXG5oNSxcbi5oNSxcbmg0LFxuLmg0LFxuaDMsXG4uaDMsXG5oMixcbi5oMixcbmgxLFxuLmgxIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBjb2xvcjogdmFyKC0tYnMtaGVhZGluZy1jb2xvcik7XG59XG5cbmgxLFxuLmgxIHtcbiAgZm9udC1zaXplOiBjYWxjKDEuMzc1cmVtICsgMS41dncpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIGgxLFxuICAuaDEge1xuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICB9XG59XG5cbmgyLFxuLmgyIHtcbiAgZm9udC1zaXplOiBjYWxjKDEuMzI1cmVtICsgMC45dncpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIGgyLFxuICAuaDIge1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgfVxufVxuXG5oMyxcbi5oMyB7XG4gIGZvbnQtc2l6ZTogY2FsYygxLjNyZW0gKyAwLjZ2dyk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgaDMsXG4gIC5oMyB7XG4gICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICB9XG59XG5cbmg0LFxuLmg0IHtcbiAgZm9udC1zaXplOiBjYWxjKDEuMjc1cmVtICsgMC4zdncpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIGg0LFxuICAuaDQge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG59XG5cbmg1LFxuLmg1IHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuXG5oNixcbi5oNiB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxucCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbmFiYnJbdGl0bGVdIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xuICBjdXJzb3I6IGhlbHA7XG4gIHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogbm9uZTtcbn1cblxuYWRkcmVzcyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbm9sLFxudWwge1xuICBwYWRkaW5nLWxlZnQ6IDJyZW07XG59XG5cbm9sLFxudWwsXG5kbCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbm9sIG9sLFxudWwgdWwsXG5vbCB1bCxcbnVsIG9sIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuZHQge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG5kZCB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuc21hbGwsXG4uc21hbGwge1xuICBmb250LXNpemU6IDAuODc1ZW07XG59XG5cbm1hcmssXG4ubWFyayB7XG4gIHBhZGRpbmc6IDAuMTg3NWVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1oaWdobGlnaHQtYmcpO1xufVxuXG5zdWIsXG5zdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogMC43NWVtO1xuICBsaW5lLWhlaWdodDogMDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG5hIHtcbiAgY29sb3I6IHJnYmEodmFyKC0tYnMtbGluay1jb2xvci1yZ2IpLCB2YXIoLS1icy1saW5rLW9wYWNpdHksIDEpKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbmE6aG92ZXIge1xuICAtLWJzLWxpbmstY29sb3ItcmdiOiB2YXIoLS1icy1saW5rLWhvdmVyLWNvbG9yLXJnYik7XG59XG5cbmE6bm90KFtocmVmXSk6bm90KFtjbGFzc10pLFxuYTpub3QoW2hyZWZdKTpub3QoW2NsYXNzXSk6aG92ZXIge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5wcmUsXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1icy1mb250LW1vbm9zcGFjZSk7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG5wcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbn1cblxucHJlIGNvZGUge1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG59XG5cbmNvZGUge1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIGNvbG9yOiB2YXIoLS1icy1jb2RlLWNvbG9yKTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xufVxuXG5hID4gY29kZSB7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG5rYmQge1xuICBwYWRkaW5nOiAwLjE4NzVyZW0gMC4zNzVyZW07XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgY29sb3I6IHZhcigtLWJzLWJvZHktYmcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1ib2R5LWNvbG9yKTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuXG5rYmQga2JkIHtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cbmltZyxcbnN2ZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbnRhYmxlIHtcbiAgY2FwdGlvbi1zaWRlOiBib3R0b207XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG59XG5cbmNhcHRpb24ge1xuICBwYWRkaW5nLXRvcDogMC41cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICBjb2xvcjogdmFyKC0tYnMtc2Vjb25kYXJ5LWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxudGgge1xuICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICB0ZXh0LWFsaWduOiAtd2Via2l0LW1hdGNoLXBhcmVudDtcbn1cblxudGhlYWQsXG50Ym9keSxcbnRmb290LFxudHIsXG50ZCxcbnRoIHtcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDA7XG59XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5idXR0b24ge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG5idXR0b246Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XG4gIG91dGxpbmU6IDA7XG59XG5cbmlucHV0LFxuYnV0dG9uLFxuc2VsZWN0LFxub3B0Z3JvdXAsXG50ZXh0YXJlYSB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG5bcm9sZT1idXR0b25dIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5zZWxlY3Qge1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbn1cblxuc2VsZWN0OmRpc2FibGVkIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuW2xpc3RdOm5vdChbdHlwZT1kYXRlXSk6bm90KFt0eXBlPWRhdGV0aW1lLWxvY2FsXSk6bm90KFt0eXBlPW1vbnRoXSk6bm90KFt0eXBlPXdlZWtdKTpub3QoW3R5cGU9dGltZV0pOjotd2Via2l0LWNhbGVuZGFyLXBpY2tlci1pbmRpY2F0b3Ige1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbmJ1dHRvbixcblt0eXBlPWJ1dHRvbl0sXG5bdHlwZT1yZXNldF0sXG5bdHlwZT1zdWJtaXRdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG59XG5cbmJ1dHRvbjpub3QoOmRpc2FibGVkKSxcblt0eXBlPWJ1dHRvbl06bm90KDpkaXNhYmxlZCksXG5bdHlwZT1yZXNldF06bm90KDpkaXNhYmxlZCksXG5bdHlwZT1zdWJtaXRdOm5vdCg6ZGlzYWJsZWQpIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG46Oi1tb3otZm9jdXMtaW5uZXIge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbnRleHRhcmVhIHtcbiAgcmVzaXplOiB2ZXJ0aWNhbDtcbn1cblxuZmllbGRzZXQge1xuICBtaW4td2lkdGg6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG5sZWdlbmQge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC1zaXplOiBjYWxjKDEuMjc1cmVtICsgMC4zdncpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICBsZWdlbmQge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG59XG5cbmxlZ2VuZCArICoge1xuICBjbGVhcjogbGVmdDtcbn1cblxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtZmllbGRzLXdyYXBwZXIsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC10ZXh0LFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtbWludXRlLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtaG91ci1maWVsZCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWRheS1maWVsZCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1vbnRoLWZpZWxkLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQteWVhci1maWVsZCB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuW3R5cGU9c2VhcmNoXSB7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbn1cblxuLyogcnRsOnJhdzpcblt0eXBlPVwidGVsXCJdLFxuW3R5cGU9XCJ1cmxcIl0sXG5bdHlwZT1cImVtYWlsXCJdLFxuW3R5cGU9XCJudW1iZXJcIl0ge1xuICBkaXJlY3Rpb246IGx0cjtcbn1cbiovXG5cbjo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuOjotd2Via2l0LWNvbG9yLXN3YXRjaC13cmFwcGVyIHtcbiAgcGFkZGluZzogMDtcbn1cblxuOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG5vdXRwdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbmlmcmFtZSB7XG4gIGJvcmRlcjogMDtcbn1cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5sZWFkIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBmb250LXdlaWdodDogMzAwO1xufVxuXG4uZGlzcGxheS0xIHtcbiAgZm9udC1zaXplOiBjYWxjKDEuNjI1cmVtICsgNC41dncpO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5kaXNwbGF5LTEge1xuICAgIGZvbnQtc2l6ZTogNXJlbTtcbiAgfVxufVxuXG4uZGlzcGxheS0yIHtcbiAgZm9udC1zaXplOiBjYWxjKDEuNTc1cmVtICsgMy45dncpO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5kaXNwbGF5LTIge1xuICAgIGZvbnQtc2l6ZTogNC41cmVtO1xuICB9XG59XG5cbi5kaXNwbGF5LTMge1xuICBmb250LXNpemU6IGNhbGMoMS41MjVyZW0gKyAzLjN2dyk7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmRpc3BsYXktMyB7XG4gICAgZm9udC1zaXplOiA0cmVtO1xuICB9XG59XG5cbi5kaXNwbGF5LTQge1xuICBmb250LXNpemU6IGNhbGMoMS40NzVyZW0gKyAyLjd2dyk7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmRpc3BsYXktNCB7XG4gICAgZm9udC1zaXplOiAzLjVyZW07XG4gIH1cbn1cblxuLmRpc3BsYXktNSB7XG4gIGZvbnQtc2l6ZTogY2FsYygxLjQyNXJlbSArIDIuMXZ3KTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuZGlzcGxheS01IHtcbiAgICBmb250LXNpemU6IDNyZW07XG4gIH1cbn1cblxuLmRpc3BsYXktNiB7XG4gIGZvbnQtc2l6ZTogY2FsYygxLjM3NXJlbSArIDEuNXZ3KTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuZGlzcGxheS02IHtcbiAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgfVxufVxuXG4ubGlzdC11bnN0eWxlZCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmxpc3QtaW5saW5lIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubGlzdC1pbmxpbmUtaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmxpc3QtaW5saW5lLWl0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xufVxuXG4uaW5pdGlhbGlzbSB7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmJsb2NrcXVvdGUsXG4ucHJvc2UgYmxvY2txdW90ZSB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cblxuLmJsb2NrcXVvdGUgPiA6bGFzdC1jaGlsZCxcbi5wcm9zZSBibG9ja3F1b3RlID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uYmxvY2txdW90ZS1mb290ZXIge1xuICBtYXJnaW4tdG9wOiAtMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xuICBjb2xvcjogIzZjNzU3ZDtcbn1cblxuLmJsb2NrcXVvdGUtZm9vdGVyOjpiZWZvcmUge1xuICBjb250ZW50OiBcIuKAlMKgXCI7XG59XG5cbi5pbWctZmx1aWQsXG4ucHJvc2UgaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5pbWctdGh1bWJuYWlsIHtcbiAgcGFkZGluZzogMC4yNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtYm9keS1iZyk7XG4gIGJvcmRlcjogdmFyKC0tYnMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1ib3JkZXItY29sb3IpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1icy1ib3JkZXItcmFkaXVzKTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5maWd1cmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5maWd1cmUtaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmZpZ3VyZS1jYXB0aW9uIHtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xuICBjb2xvcjogdmFyKC0tYnMtc2Vjb25kYXJ5LWNvbG9yKTtcbn1cblxuLmNvbnRhaW5lcixcbi5jb250YWluZXItZmx1aWQsXG4uY29udGFpbmVyLXh4bCxcbi5jb250YWluZXIteGwsXG4uY29udGFpbmVyLWxnLFxuLmNvbnRhaW5lci1tZCxcbi5jb250YWluZXItc20ge1xuICAtLWJzLWd1dHRlci14OiAxLjVyZW07XG4gIC0tYnMtZ3V0dGVyLXk6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjQzNzVyZW07XG4gIHBhZGRpbmctbGVmdDogMC40Mzc1cmVtO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmNvbnRhaW5lcixcbiAgLmNvbnRhaW5lci1mbHVpZCxcbiAgLmNvbnRhaW5lci14eGwsXG4gIC5jb250YWluZXIteGwsXG4gIC5jb250YWluZXItbGcsXG4gIC5jb250YWluZXItbWQsXG4gIC5jb250YWluZXItc20ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbnRhaW5lcixcbiAgLmNvbnRhaW5lci1mbHVpZCxcbiAgLmNvbnRhaW5lci14eGwsXG4gIC5jb250YWluZXIteGwsXG4gIC5jb250YWluZXItbGcsXG4gIC5jb250YWluZXItbWQsXG4gIC5jb250YWluZXItc20ge1xuICAgIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tYnMtZ3V0dGVyLXgpICogMC41KTtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tYnMtZ3V0dGVyLXgpICogMC41KTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmNvbnRhaW5lci1zbSxcbiAgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA1NDBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbnRhaW5lci1tZCxcbiAgLmNvbnRhaW5lci1zbSxcbiAgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA3MjBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmNvbnRhaW5lci1sZyxcbiAgLmNvbnRhaW5lci1tZCxcbiAgLmNvbnRhaW5lci1zbSxcbiAgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA5NjBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5jb250YWluZXIteGwsXG4gIC5jb250YWluZXItbGcsXG4gIC5jb250YWluZXItbWQsXG4gIC5jb250YWluZXItc20sXG4gIC5jb250YWluZXIge1xuICAgIG1heC13aWR0aDogMTE0MHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcbiAgLmNvbnRhaW5lci14eGwsXG4gIC5jb250YWluZXIteGwsXG4gIC5jb250YWluZXItbGcsXG4gIC5jb250YWluZXItbWQsXG4gIC5jb250YWluZXItc20sXG4gIC5jb250YWluZXIge1xuICAgIG1heC13aWR0aDogMTQwMHB4O1xuICB9XG59XG5cbjpyb290IHtcbiAgLS1icy1icmVha3BvaW50LXhzOiAwO1xuICAtLWJzLWJyZWFrcG9pbnQtc206IDU3NnB4O1xuICAtLWJzLWJyZWFrcG9pbnQtbWQ6IDc2OHB4O1xuICAtLWJzLWJyZWFrcG9pbnQtbGc6IDk5MnB4O1xuICAtLWJzLWJyZWFrcG9pbnQteGw6IDEyMDBweDtcbiAgLS1icy1icmVha3BvaW50LXh4bDogMTQwMHB4O1xufVxuXG4ucm93IHtcbiAgLS1icy1ndXR0ZXIteDogMS41cmVtO1xuICAtLWJzLWd1dHRlci15OiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi10b3A6IGNhbGMoLTEgKiB2YXIoLS1icy1ndXR0ZXIteSkpO1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoLTAuNSAqIHZhcigtLWJzLWd1dHRlci14KSk7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC0wLjUgKiB2YXIoLS1icy1ndXR0ZXIteCkpO1xufVxuXG4ucm93ID4gKiB7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLWJzLWd1dHRlci14KSAqIDAuNSk7XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1icy1ndXR0ZXIteCkgKiAwLjUpO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1icy1ndXR0ZXIteSk7XG59XG5cbi5jb2wge1xuICBmbGV4OiAxIDAgMCU7XG59XG5cbi5yb3ctY29scy1hdXRvID4gKiB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogYXV0bztcbn1cblxuLnJvdy1jb2xzLTEgPiAqIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ucm93LWNvbHMtMiA+ICoge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IDUwJTtcbn1cblxuLnJvdy1jb2xzLTMgPiAqIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbn1cblxuLnJvdy1jb2xzLTQgPiAqIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiAyNSU7XG59XG5cbi5yb3ctY29scy01ID4gKiB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogMjAlO1xufVxuXG4ucm93LWNvbHMtNiA+ICoge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xufVxuXG4uY29sLWF1dG8ge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IGF1dG87XG59XG5cbi5jb2wtMSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogOC4zMzMzMzMzMyU7XG59XG5cbi5jb2wtMiB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogMTYuNjY2NjY2NjclO1xufVxuXG4uY29sLTMge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IDI1JTtcbn1cblxuLmNvbC00IHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiAzMy4zMzMzMzMzMyU7XG59XG5cbi5jb2wtNSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogNDEuNjY2NjY2NjclO1xufVxuXG4uY29sLTYge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IDUwJTtcbn1cblxuLmNvbC03IHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiA1OC4zMzMzMzMzMyU7XG59XG5cbi5jb2wtOCB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogNjYuNjY2NjY2NjclO1xufVxuXG4uY29sLTkge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IDc1JTtcbn1cblxuLmNvbC0xMCB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogODMuMzMzMzMzMzMlO1xufVxuXG4uY29sLTExIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiA5MS42NjY2NjY2NyU7XG59XG5cbi5jb2wtMTIge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5vZmZzZXQtMSB7XG4gIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzJTtcbn1cblxuLm9mZnNldC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY3JTtcbn1cblxuLm9mZnNldC0zIHtcbiAgbWFyZ2luLWxlZnQ6IDI1JTtcbn1cblxuLm9mZnNldC00IHtcbiAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzJTtcbn1cblxuLm9mZnNldC01IHtcbiAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY3JTtcbn1cblxuLm9mZnNldC02IHtcbiAgbWFyZ2luLWxlZnQ6IDUwJTtcbn1cblxuLm9mZnNldC03IHtcbiAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzJTtcbn1cblxuLm9mZnNldC04IHtcbiAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY3JTtcbn1cblxuLm9mZnNldC05IHtcbiAgbWFyZ2luLWxlZnQ6IDc1JTtcbn1cblxuLm9mZnNldC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMyU7XG59XG5cbi5vZmZzZXQtMTEge1xuICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjclO1xufVxuXG4uZy0wLFxuLmd4LTAge1xuICAtLWJzLWd1dHRlci14OiAwO1xufVxuXG4uZy0wLFxuLmd5LTAge1xuICAtLWJzLWd1dHRlci15OiAwO1xufVxuXG4uZy0xLFxuLmd4LTEge1xuICAtLWJzLWd1dHRlci14OiAwLjI1cmVtO1xufVxuXG4uZy0xLFxuLmd5LTEge1xuICAtLWJzLWd1dHRlci15OiAwLjI1cmVtO1xufVxuXG4uZy0yLFxuLmd4LTIge1xuICAtLWJzLWd1dHRlci14OiAwLjVyZW07XG59XG5cbi5nLTIsXG4uZ3ktMiB7XG4gIC0tYnMtZ3V0dGVyLXk6IDAuNXJlbTtcbn1cblxuLmctMyxcbi5neC0zIHtcbiAgLS1icy1ndXR0ZXIteDogMXJlbTtcbn1cblxuLmctMyxcbi5neS0zIHtcbiAgLS1icy1ndXR0ZXIteTogMXJlbTtcbn1cblxuLmctNCxcbi5neC00IHtcbiAgLS1icy1ndXR0ZXIteDogMS41cmVtO1xufVxuXG4uZy00LFxuLmd5LTQge1xuICAtLWJzLWd1dHRlci15OiAxLjVyZW07XG59XG5cbi5nLTUsXG4uZ3gtNSB7XG4gIC0tYnMtZ3V0dGVyLXg6IDNyZW07XG59XG5cbi5nLTUsXG4uZ3ktNSB7XG4gIC0tYnMtZ3V0dGVyLXk6IDNyZW07XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuY29sLXNtIHtcbiAgICBmbGV4OiAxIDAgMCU7XG4gIH1cblxuICAucm93LWNvbHMtc20tYXV0byA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG5cbiAgLnJvdy1jb2xzLXNtLTEgPiAqIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5yb3ctY29scy1zbS0yID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuXG4gIC5yb3ctY29scy1zbS0zID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG5cbiAgLnJvdy1jb2xzLXNtLTQgPiAqIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMjUlO1xuICB9XG5cbiAgLnJvdy1jb2xzLXNtLTUgPiAqIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMjAlO1xuICB9XG5cbiAgLnJvdy1jb2xzLXNtLTYgPiAqIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLXNtLWF1dG8ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG5cbiAgLmNvbC1zbS0xIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogOC4zMzMzMzMzMyU7XG4gIH1cblxuICAuY29sLXNtLTIge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLXNtLTMge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cblxuICAuY29sLXNtLTQge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMyU7XG4gIH1cblxuICAuY29sLXNtLTUge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiA0MS42NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLXNtLTYge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cblxuICAuY29sLXNtLTcge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMyU7XG4gIH1cblxuICAuY29sLXNtLTgge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLXNtLTkge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cblxuICAuY29sLXNtLTEwIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogODMuMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC1zbS0xMSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDkxLjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wtc20tMTIge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLm9mZnNldC1zbS0wIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gIC5vZmZzZXQtc20tMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC1zbS0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC1zbS0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICB9XG5cbiAgLm9mZnNldC1zbS00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC1zbS01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC1zbS02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICB9XG5cbiAgLm9mZnNldC1zbS03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC1zbS04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC1zbS05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG5cbiAgLm9mZnNldC1zbS0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5vZmZzZXQtc20tMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NyU7XG4gIH1cblxuICAuZy1zbS0wLFxuICAuZ3gtc20tMCB7XG4gICAgLS1icy1ndXR0ZXIteDogMDtcbiAgfVxuXG4gIC5nLXNtLTAsXG4gIC5neS1zbS0wIHtcbiAgICAtLWJzLWd1dHRlci15OiAwO1xuICB9XG5cbiAgLmctc20tMSxcbiAgLmd4LXNtLTEge1xuICAgIC0tYnMtZ3V0dGVyLXg6IDAuMjVyZW07XG4gIH1cblxuICAuZy1zbS0xLFxuICAuZ3ktc20tMSB7XG4gICAgLS1icy1ndXR0ZXIteTogMC4yNXJlbTtcbiAgfVxuXG4gIC5nLXNtLTIsXG4gIC5neC1zbS0yIHtcbiAgICAtLWJzLWd1dHRlci14OiAwLjVyZW07XG4gIH1cblxuICAuZy1zbS0yLFxuICAuZ3ktc20tMiB7XG4gICAgLS1icy1ndXR0ZXIteTogMC41cmVtO1xuICB9XG5cbiAgLmctc20tMyxcbiAgLmd4LXNtLTMge1xuICAgIC0tYnMtZ3V0dGVyLXg6IDFyZW07XG4gIH1cblxuICAuZy1zbS0zLFxuICAuZ3ktc20tMyB7XG4gICAgLS1icy1ndXR0ZXIteTogMXJlbTtcbiAgfVxuXG4gIC5nLXNtLTQsXG4gIC5neC1zbS00IHtcbiAgICAtLWJzLWd1dHRlci14OiAxLjVyZW07XG4gIH1cblxuICAuZy1zbS00LFxuICAuZ3ktc20tNCB7XG4gICAgLS1icy1ndXR0ZXIteTogMS41cmVtO1xuICB9XG5cbiAgLmctc20tNSxcbiAgLmd4LXNtLTUge1xuICAgIC0tYnMtZ3V0dGVyLXg6IDNyZW07XG4gIH1cblxuICAuZy1zbS01LFxuICAuZ3ktc20tNSB7XG4gICAgLS1icy1ndXR0ZXIteTogM3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbC1tZCB7XG4gICAgZmxleDogMSAwIDAlO1xuICB9XG5cbiAgLnJvdy1jb2xzLW1kLWF1dG8gPiAqIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gIC5yb3ctY29scy1tZC0xID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAucm93LWNvbHMtbWQtMiA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cblxuICAucm93LWNvbHMtbWQtMyA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuXG4gIC5yb3ctY29scy1tZC00ID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuXG4gIC5yb3ctY29scy1tZC01ID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDIwJTtcbiAgfVxuXG4gIC5yb3ctY29scy1tZC02ID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC1tZC1hdXRvIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gIC5jb2wtbWQtMSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDguMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC1tZC0yIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMTYuNjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC1tZC0zIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMjUlO1xuICB9XG5cbiAgLmNvbC1tZC00IHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC1tZC01IHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogNDEuNjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC1tZC02IHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogNTAlO1xuICB9XG5cbiAgLmNvbC1tZC03IHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogNTguMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC1tZC04IHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogNjYuNjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC1tZC05IHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogNzUlO1xuICB9XG5cbiAgLmNvbC1tZC0xMCB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5jb2wtbWQtMTEge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiA5MS42NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLW1kLTEyIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5vZmZzZXQtbWQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAub2Zmc2V0LW1kLTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5vZmZzZXQtbWQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5vZmZzZXQtbWQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgfVxuXG4gIC5vZmZzZXQtbWQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5vZmZzZXQtbWQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5vZmZzZXQtbWQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuXG4gIC5vZmZzZXQtbWQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5vZmZzZXQtbWQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5vZmZzZXQtbWQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcbiAgfVxuXG4gIC5vZmZzZXQtbWQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LW1kLTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjclO1xuICB9XG5cbiAgLmctbWQtMCxcbiAgLmd4LW1kLTAge1xuICAgIC0tYnMtZ3V0dGVyLXg6IDA7XG4gIH1cblxuICAuZy1tZC0wLFxuICAuZ3ktbWQtMCB7XG4gICAgLS1icy1ndXR0ZXIteTogMDtcbiAgfVxuXG4gIC5nLW1kLTEsXG4gIC5neC1tZC0xIHtcbiAgICAtLWJzLWd1dHRlci14OiAwLjI1cmVtO1xuICB9XG5cbiAgLmctbWQtMSxcbiAgLmd5LW1kLTEge1xuICAgIC0tYnMtZ3V0dGVyLXk6IDAuMjVyZW07XG4gIH1cblxuICAuZy1tZC0yLFxuICAuZ3gtbWQtMiB7XG4gICAgLS1icy1ndXR0ZXIteDogMC41cmVtO1xuICB9XG5cbiAgLmctbWQtMixcbiAgLmd5LW1kLTIge1xuICAgIC0tYnMtZ3V0dGVyLXk6IDAuNXJlbTtcbiAgfVxuXG4gIC5nLW1kLTMsXG4gIC5neC1tZC0zIHtcbiAgICAtLWJzLWd1dHRlci14OiAxcmVtO1xuICB9XG5cbiAgLmctbWQtMyxcbiAgLmd5LW1kLTMge1xuICAgIC0tYnMtZ3V0dGVyLXk6IDFyZW07XG4gIH1cblxuICAuZy1tZC00LFxuICAuZ3gtbWQtNCB7XG4gICAgLS1icy1ndXR0ZXIteDogMS41cmVtO1xuICB9XG5cbiAgLmctbWQtNCxcbiAgLmd5LW1kLTQge1xuICAgIC0tYnMtZ3V0dGVyLXk6IDEuNXJlbTtcbiAgfVxuXG4gIC5nLW1kLTUsXG4gIC5neC1tZC01IHtcbiAgICAtLWJzLWd1dHRlci14OiAzcmVtO1xuICB9XG5cbiAgLmctbWQtNSxcbiAgLmd5LW1kLTUge1xuICAgIC0tYnMtZ3V0dGVyLXk6IDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5jb2wtbGcge1xuICAgIGZsZXg6IDEgMCAwJTtcbiAgfVxuXG4gIC5yb3ctY29scy1sZy1hdXRvID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cblxuICAucm93LWNvbHMtbGctMSA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLnJvdy1jb2xzLWxnLTIgPiAqIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogNTAlO1xuICB9XG5cbiAgLnJvdy1jb2xzLWxnLTMgPiAqIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cblxuICAucm93LWNvbHMtbGctNCA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cblxuICAucm93LWNvbHMtbGctNSA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAyMCU7XG4gIH1cblxuICAucm93LWNvbHMtbGctNiA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wtbGctYXV0byB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cblxuICAuY29sLWxnLTEge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5jb2wtbGctMiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wtbGctMyB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuXG4gIC5jb2wtbGctNCB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5jb2wtbGctNSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wtbGctNiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuXG4gIC5jb2wtbGctNyB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5jb2wtbGctOCB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wtbGctOSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuXG4gIC5jb2wtbGctMTAge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMyU7XG4gIH1cblxuICAuY29sLWxnLTExIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogOTEuNjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC1sZy0xMiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgLm9mZnNldC1sZy0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NyU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NyU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NyU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC1sZy0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5nLWxnLTAsXG4gIC5neC1sZy0wIHtcbiAgICAtLWJzLWd1dHRlci14OiAwO1xuICB9XG5cbiAgLmctbGctMCxcbiAgLmd5LWxnLTAge1xuICAgIC0tYnMtZ3V0dGVyLXk6IDA7XG4gIH1cblxuICAuZy1sZy0xLFxuICAuZ3gtbGctMSB7XG4gICAgLS1icy1ndXR0ZXIteDogMC4yNXJlbTtcbiAgfVxuXG4gIC5nLWxnLTEsXG4gIC5neS1sZy0xIHtcbiAgICAtLWJzLWd1dHRlci15OiAwLjI1cmVtO1xuICB9XG5cbiAgLmctbGctMixcbiAgLmd4LWxnLTIge1xuICAgIC0tYnMtZ3V0dGVyLXg6IDAuNXJlbTtcbiAgfVxuXG4gIC5nLWxnLTIsXG4gIC5neS1sZy0yIHtcbiAgICAtLWJzLWd1dHRlci15OiAwLjVyZW07XG4gIH1cblxuICAuZy1sZy0zLFxuICAuZ3gtbGctMyB7XG4gICAgLS1icy1ndXR0ZXIteDogMXJlbTtcbiAgfVxuXG4gIC5nLWxnLTMsXG4gIC5neS1sZy0zIHtcbiAgICAtLWJzLWd1dHRlci15OiAxcmVtO1xuICB9XG5cbiAgLmctbGctNCxcbiAgLmd4LWxnLTQge1xuICAgIC0tYnMtZ3V0dGVyLXg6IDEuNXJlbTtcbiAgfVxuXG4gIC5nLWxnLTQsXG4gIC5neS1sZy00IHtcbiAgICAtLWJzLWd1dHRlci15OiAxLjVyZW07XG4gIH1cblxuICAuZy1sZy01LFxuICAuZ3gtbGctNSB7XG4gICAgLS1icy1ndXR0ZXIteDogM3JlbTtcbiAgfVxuXG4gIC5nLWxnLTUsXG4gIC5neS1sZy01IHtcbiAgICAtLWJzLWd1dHRlci15OiAzcmVtO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmNvbC14bCB7XG4gICAgZmxleDogMSAwIDAlO1xuICB9XG5cbiAgLnJvdy1jb2xzLXhsLWF1dG8gPiAqIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gIC5yb3ctY29scy14bC0xID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAucm93LWNvbHMteGwtMiA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cblxuICAucm93LWNvbHMteGwtMyA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuXG4gIC5yb3ctY29scy14bC00ID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuXG4gIC5yb3ctY29scy14bC01ID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDIwJTtcbiAgfVxuXG4gIC5yb3ctY29scy14bC02ID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC14bC1hdXRvIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gIC5jb2wteGwtMSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDguMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC14bC0yIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMTYuNjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC14bC0zIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMjUlO1xuICB9XG5cbiAgLmNvbC14bC00IHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC14bC01IHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogNDEuNjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC14bC02IHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogNTAlO1xuICB9XG5cbiAgLmNvbC14bC03IHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogNTguMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC14bC04IHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogNjYuNjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC14bC05IHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogNzUlO1xuICB9XG5cbiAgLmNvbC14bC0xMCB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5jb2wteGwtMTEge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiA5MS42NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLXhsLTEyIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5vZmZzZXQteGwtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAub2Zmc2V0LXhsLTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5vZmZzZXQteGwtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5vZmZzZXQteGwtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgfVxuXG4gIC5vZmZzZXQteGwtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5vZmZzZXQteGwtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5vZmZzZXQteGwtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuXG4gIC5vZmZzZXQteGwtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5vZmZzZXQteGwtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5vZmZzZXQteGwtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcbiAgfVxuXG4gIC5vZmZzZXQteGwtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LXhsLTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjclO1xuICB9XG5cbiAgLmcteGwtMCxcbiAgLmd4LXhsLTAge1xuICAgIC0tYnMtZ3V0dGVyLXg6IDA7XG4gIH1cblxuICAuZy14bC0wLFxuICAuZ3kteGwtMCB7XG4gICAgLS1icy1ndXR0ZXIteTogMDtcbiAgfVxuXG4gIC5nLXhsLTEsXG4gIC5neC14bC0xIHtcbiAgICAtLWJzLWd1dHRlci14OiAwLjI1cmVtO1xuICB9XG5cbiAgLmcteGwtMSxcbiAgLmd5LXhsLTEge1xuICAgIC0tYnMtZ3V0dGVyLXk6IDAuMjVyZW07XG4gIH1cblxuICAuZy14bC0yLFxuICAuZ3gteGwtMiB7XG4gICAgLS1icy1ndXR0ZXIteDogMC41cmVtO1xuICB9XG5cbiAgLmcteGwtMixcbiAgLmd5LXhsLTIge1xuICAgIC0tYnMtZ3V0dGVyLXk6IDAuNXJlbTtcbiAgfVxuXG4gIC5nLXhsLTMsXG4gIC5neC14bC0zIHtcbiAgICAtLWJzLWd1dHRlci14OiAxcmVtO1xuICB9XG5cbiAgLmcteGwtMyxcbiAgLmd5LXhsLTMge1xuICAgIC0tYnMtZ3V0dGVyLXk6IDFyZW07XG4gIH1cblxuICAuZy14bC00LFxuICAuZ3gteGwtNCB7XG4gICAgLS1icy1ndXR0ZXIteDogMS41cmVtO1xuICB9XG5cbiAgLmcteGwtNCxcbiAgLmd5LXhsLTQge1xuICAgIC0tYnMtZ3V0dGVyLXk6IDEuNXJlbTtcbiAgfVxuXG4gIC5nLXhsLTUsXG4gIC5neC14bC01IHtcbiAgICAtLWJzLWd1dHRlci14OiAzcmVtO1xuICB9XG5cbiAgLmcteGwtNSxcbiAgLmd5LXhsLTUge1xuICAgIC0tYnMtZ3V0dGVyLXk6IDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xuICAuY29sLXh4bCB7XG4gICAgZmxleDogMSAwIDAlO1xuICB9XG5cbiAgLnJvdy1jb2xzLXh4bC1hdXRvID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cblxuICAucm93LWNvbHMteHhsLTEgPiAqIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5yb3ctY29scy14eGwtMiA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cblxuICAucm93LWNvbHMteHhsLTMgPiAqIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cblxuICAucm93LWNvbHMteHhsLTQgPiAqIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMjUlO1xuICB9XG5cbiAgLnJvdy1jb2xzLXh4bC01ID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDIwJTtcbiAgfVxuXG4gIC5yb3ctY29scy14eGwtNiA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wteHhsLWF1dG8ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG5cbiAgLmNvbC14eGwtMSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDguMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC14eGwtMiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wteHhsLTMge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cblxuICAuY29sLXh4bC00IHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC14eGwtNSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wteHhsLTYge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cblxuICAuY29sLXh4bC03IHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogNTguMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC14eGwtOCB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wteHhsLTkge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cblxuICAuY29sLXh4bC0xMCB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzJTtcbiAgfVxuXG4gIC5jb2wteHhsLTExIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogOTEuNjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC14eGwtMTIge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLm9mZnNldC14eGwtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAub2Zmc2V0LXh4bC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LXh4bC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC14eGwtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgfVxuXG4gIC5vZmZzZXQteHhsLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LXh4bC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC14eGwtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuXG4gIC5vZmZzZXQteHhsLTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LXh4bC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC14eGwtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcbiAgfVxuXG4gIC5vZmZzZXQteHhsLTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC14eGwtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NyU7XG4gIH1cblxuICAuZy14eGwtMCxcbiAgLmd4LXh4bC0wIHtcbiAgICAtLWJzLWd1dHRlci14OiAwO1xuICB9XG5cbiAgLmcteHhsLTAsXG4gIC5neS14eGwtMCB7XG4gICAgLS1icy1ndXR0ZXIteTogMDtcbiAgfVxuXG4gIC5nLXh4bC0xLFxuICAuZ3gteHhsLTEge1xuICAgIC0tYnMtZ3V0dGVyLXg6IDAuMjVyZW07XG4gIH1cblxuICAuZy14eGwtMSxcbiAgLmd5LXh4bC0xIHtcbiAgICAtLWJzLWd1dHRlci15OiAwLjI1cmVtO1xuICB9XG5cbiAgLmcteHhsLTIsXG4gIC5neC14eGwtMiB7XG4gICAgLS1icy1ndXR0ZXIteDogMC41cmVtO1xuICB9XG5cbiAgLmcteHhsLTIsXG4gIC5neS14eGwtMiB7XG4gICAgLS1icy1ndXR0ZXIteTogMC41cmVtO1xuICB9XG5cbiAgLmcteHhsLTMsXG4gIC5neC14eGwtMyB7XG4gICAgLS1icy1ndXR0ZXIteDogMXJlbTtcbiAgfVxuXG4gIC5nLXh4bC0zLFxuICAuZ3kteHhsLTMge1xuICAgIC0tYnMtZ3V0dGVyLXk6IDFyZW07XG4gIH1cblxuICAuZy14eGwtNCxcbiAgLmd4LXh4bC00IHtcbiAgICAtLWJzLWd1dHRlci14OiAxLjVyZW07XG4gIH1cblxuICAuZy14eGwtNCxcbiAgLmd5LXh4bC00IHtcbiAgICAtLWJzLWd1dHRlci15OiAxLjVyZW07XG4gIH1cblxuICAuZy14eGwtNSxcbiAgLmd4LXh4bC01IHtcbiAgICAtLWJzLWd1dHRlci14OiAzcmVtO1xuICB9XG5cbiAgLmcteHhsLTUsXG4gIC5neS14eGwtNSB7XG4gICAgLS1icy1ndXR0ZXIteTogM3JlbTtcbiAgfVxufVxuXG4udGFibGUsXG4ucHJvc2UgdGFibGUge1xuICAtLWJzLXRhYmxlLWNvbG9yLXR5cGU6IGluaXRpYWw7XG4gIC0tYnMtdGFibGUtYmctdHlwZTogaW5pdGlhbDtcbiAgLS1icy10YWJsZS1jb2xvci1zdGF0ZTogaW5pdGlhbDtcbiAgLS1icy10YWJsZS1iZy1zdGF0ZTogaW5pdGlhbDtcbiAgLS1icy10YWJsZS1jb2xvcjogdmFyKC0tYnMtYm9keS1jb2xvcik7XG4gIC0tYnMtdGFibGUtYmc6IHZhcigtLWJzLWJvZHktYmcpO1xuICAtLWJzLXRhYmxlLWJvcmRlci1jb2xvcjogdmFyKC0tYnMtYm9yZGVyLWNvbG9yKTtcbiAgLS1icy10YWJsZS1hY2NlbnQtYmc6IHRyYW5zcGFyZW50O1xuICAtLWJzLXRhYmxlLXN0cmlwZWQtY29sb3I6IHZhcigtLWJzLWJvZHktY29sb3IpO1xuICAtLWJzLXRhYmxlLXN0cmlwZWQtYmc6IHJnYmEoNTEsIDUxLCA1MSwgMC4wNSk7XG4gIC0tYnMtdGFibGUtYWN0aXZlLWNvbG9yOiB2YXIoLS1icy1ib2R5LWNvbG9yKTtcbiAgLS1icy10YWJsZS1hY3RpdmUtYmc6IHJnYmEoNTEsIDUxLCA1MSwgMC4xKTtcbiAgLS1icy10YWJsZS1ob3Zlci1jb2xvcjogdmFyKC0tYnMtYm9keS1jb2xvcik7XG4gIC0tYnMtdGFibGUtaG92ZXItYmc6IHJnYmEoNTEsIDUxLCA1MSwgMC4wNzUpO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy10YWJsZS1ib3JkZXItY29sb3IpO1xufVxuXG4udGFibGUgPiA6bm90KGNhcHRpb24pID4gKiA+ICosXG4ucHJvc2UgdGFibGUgPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xuICBwYWRkaW5nOiAwLjVyZW0gMC41cmVtO1xuICBjb2xvcjogdmFyKC0tYnMtdGFibGUtY29sb3Itc3RhdGUsIHZhcigtLWJzLXRhYmxlLWNvbG9yLXR5cGUsIHZhcigtLWJzLXRhYmxlLWNvbG9yKSkpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy10YWJsZS1iZyk7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IHZhcigtLWJzLWJvcmRlci13aWR0aCk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDk5OTlweCB2YXIoLS1icy10YWJsZS1iZy1zdGF0ZSwgdmFyKC0tYnMtdGFibGUtYmctdHlwZSwgdmFyKC0tYnMtdGFibGUtYWNjZW50LWJnKSkpO1xufVxuXG4udGFibGUgPiB0Ym9keSxcbi5wcm9zZSB0YWJsZSA+IHRib2R5IHtcbiAgdmVydGljYWwtYWxpZ246IGluaGVyaXQ7XG59XG5cbi50YWJsZSA+IHRoZWFkLFxuLnByb3NlIHRhYmxlID4gdGhlYWQge1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xufVxuXG4udGFibGUtZ3JvdXAtZGl2aWRlciB7XG4gIGJvcmRlci10b3A6IGNhbGModmFyKC0tYnMtYm9yZGVyLXdpZHRoKSAqIDIpIHNvbGlkIGN1cnJlbnRjb2xvcjtcbn1cblxuLmNhcHRpb24tdG9wIHtcbiAgY2FwdGlvbi1zaWRlOiB0b3A7XG59XG5cbi50YWJsZS1zbSA+IDpub3QoY2FwdGlvbikgPiAqID4gKiB7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC4yNXJlbTtcbn1cblxuLnRhYmxlLWJvcmRlcmVkID4gOm5vdChjYXB0aW9uKSA+ICosXG4ucHJvc2UgdGFibGUgPiA6bm90KGNhcHRpb24pID4gKiB7XG4gIGJvcmRlci13aWR0aDogdmFyKC0tYnMtYm9yZGVyLXdpZHRoKSAwO1xufVxuXG4udGFibGUtYm9yZGVyZWQgPiA6bm90KGNhcHRpb24pID4gKiA+ICosXG4ucHJvc2UgdGFibGUgPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xuICBib3JkZXItd2lkdGg6IDAgdmFyKC0tYnMtYm9yZGVyLXdpZHRoKTtcbn1cblxuLnRhYmxlLWJvcmRlcmxlc3MgPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xufVxuXG4udGFibGUtYm9yZGVybGVzcyA+IDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDA7XG59XG5cbi50YWJsZS1zdHJpcGVkID4gdGJvZHkgPiB0cjpudGgtb2YtdHlwZShvZGQpID4gKiB7XG4gIC0tYnMtdGFibGUtY29sb3ItdHlwZTogdmFyKC0tYnMtdGFibGUtc3RyaXBlZC1jb2xvcik7XG4gIC0tYnMtdGFibGUtYmctdHlwZTogdmFyKC0tYnMtdGFibGUtc3RyaXBlZC1iZyk7XG59XG5cbi50YWJsZS1zdHJpcGVkLWNvbHVtbnMgPiA6bm90KGNhcHRpb24pID4gdHIgPiA6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgLS1icy10YWJsZS1jb2xvci10eXBlOiB2YXIoLS1icy10YWJsZS1zdHJpcGVkLWNvbG9yKTtcbiAgLS1icy10YWJsZS1iZy10eXBlOiB2YXIoLS1icy10YWJsZS1zdHJpcGVkLWJnKTtcbn1cblxuLnRhYmxlLWFjdGl2ZSB7XG4gIC0tYnMtdGFibGUtY29sb3Itc3RhdGU6IHZhcigtLWJzLXRhYmxlLWFjdGl2ZS1jb2xvcik7XG4gIC0tYnMtdGFibGUtYmctc3RhdGU6IHZhcigtLWJzLXRhYmxlLWFjdGl2ZS1iZyk7XG59XG5cbi50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHI6aG92ZXIgPiAqIHtcbiAgLS1icy10YWJsZS1jb2xvci1zdGF0ZTogdmFyKC0tYnMtdGFibGUtaG92ZXItY29sb3IpO1xuICAtLWJzLXRhYmxlLWJnLXN0YXRlOiB2YXIoLS1icy10YWJsZS1ob3Zlci1iZyk7XG59XG5cbi50YWJsZS1wcmltYXJ5IHtcbiAgLS1icy10YWJsZS1jb2xvcjogIzMzMzMzMztcbiAgLS1icy10YWJsZS1iZzogI2QyZDJkZDtcbiAgLS1icy10YWJsZS1ib3JkZXItY29sb3I6ICNjMmMyY2M7XG4gIC0tYnMtdGFibGUtc3RyaXBlZC1iZzogI2NhY2FkNTtcbiAgLS1icy10YWJsZS1zdHJpcGVkLWNvbG9yOiAjMzMzMzMzO1xuICAtLWJzLXRhYmxlLWFjdGl2ZS1iZzogI2MyYzJjYztcbiAgLS1icy10YWJsZS1hY3RpdmUtY29sb3I6ICMzMzMzMzM7XG4gIC0tYnMtdGFibGUtaG92ZXItYmc6ICNjNmM2ZDA7XG4gIC0tYnMtdGFibGUtaG92ZXItY29sb3I6ICMzMzMzMzM7XG4gIGNvbG9yOiB2YXIoLS1icy10YWJsZS1jb2xvcik7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtdGFibGUtYm9yZGVyLWNvbG9yKTtcbn1cblxuLnRhYmxlLXNlY29uZGFyeSB7XG4gIC0tYnMtdGFibGUtY29sb3I6ICMzMzMzMzM7XG4gIC0tYnMtdGFibGUtYmc6ICNlZGU1ZjE7XG4gIC0tYnMtdGFibGUtYm9yZGVyLWNvbG9yOiAjZGFkM2RlO1xuICAtLWJzLXRhYmxlLXN0cmlwZWQtYmc6ICNlNGRjZTg7XG4gIC0tYnMtdGFibGUtc3RyaXBlZC1jb2xvcjogIzMzMzMzMztcbiAgLS1icy10YWJsZS1hY3RpdmUtYmc6ICNkYWQzZGU7XG4gIC0tYnMtdGFibGUtYWN0aXZlLWNvbG9yOiAjMzMzMzMzO1xuICAtLWJzLXRhYmxlLWhvdmVyLWJnOiAjZGZkOGUzO1xuICAtLWJzLXRhYmxlLWhvdmVyLWNvbG9yOiAjMzMzMzMzO1xuICBjb2xvcjogdmFyKC0tYnMtdGFibGUtY29sb3IpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWJzLXRhYmxlLWJvcmRlci1jb2xvcik7XG59XG5cbi50YWJsZS1zdWNjZXNzIHtcbiAgLS1icy10YWJsZS1jb2xvcjogIzMzMzMzMztcbiAgLS1icy10YWJsZS1iZzogI2RiZWZkYztcbiAgLS1icy10YWJsZS1ib3JkZXItY29sb3I6ICNjYWRjY2I7XG4gIC0tYnMtdGFibGUtc3RyaXBlZC1iZzogI2QzZTZkNDtcbiAgLS1icy10YWJsZS1zdHJpcGVkLWNvbG9yOiAjMzMzMzMzO1xuICAtLWJzLXRhYmxlLWFjdGl2ZS1iZzogI2NhZGNjYjtcbiAgLS1icy10YWJsZS1hY3RpdmUtY29sb3I6ICMzMzMzMzM7XG4gIC0tYnMtdGFibGUtaG92ZXItYmc6ICNjZWUxY2Y7XG4gIC0tYnMtdGFibGUtaG92ZXItY29sb3I6ICMzMzMzMzM7XG4gIGNvbG9yOiB2YXIoLS1icy10YWJsZS1jb2xvcik7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtdGFibGUtYm9yZGVyLWNvbG9yKTtcbn1cblxuLnRhYmxlLWluZm8ge1xuICAtLWJzLXRhYmxlLWNvbG9yOiAjMzMzMzMzO1xuICAtLWJzLXRhYmxlLWJnOiAjZDNlYWZkO1xuICAtLWJzLXRhYmxlLWJvcmRlci1jb2xvcjogI2MzZDhlOTtcbiAgLS1icy10YWJsZS1zdHJpcGVkLWJnOiAjY2JlMWYzO1xuICAtLWJzLXRhYmxlLXN0cmlwZWQtY29sb3I6ICMzMzMzMzM7XG4gIC0tYnMtdGFibGUtYWN0aXZlLWJnOiAjYzNkOGU5O1xuICAtLWJzLXRhYmxlLWFjdGl2ZS1jb2xvcjogIzMzMzMzMztcbiAgLS1icy10YWJsZS1ob3Zlci1iZzogI2M3ZGNlZTtcbiAgLS1icy10YWJsZS1ob3Zlci1jb2xvcjogIzMzMzMzMztcbiAgY29sb3I6IHZhcigtLWJzLXRhYmxlLWNvbG9yKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy10YWJsZS1ib3JkZXItY29sb3IpO1xufVxuXG4udGFibGUtd2FybmluZyB7XG4gIC0tYnMtdGFibGUtY29sb3I6ICMzMzMzMzM7XG4gIC0tYnMtdGFibGUtYmc6ICNmZmVhY2M7XG4gIC0tYnMtdGFibGUtYm9yZGVyLWNvbG9yOiAjZWJkOGJkO1xuICAtLWJzLXRhYmxlLXN0cmlwZWQtYmc6ICNmNWUxYzQ7XG4gIC0tYnMtdGFibGUtc3RyaXBlZC1jb2xvcjogIzMzMzMzMztcbiAgLS1icy10YWJsZS1hY3RpdmUtYmc6ICNlYmQ4YmQ7XG4gIC0tYnMtdGFibGUtYWN0aXZlLWNvbG9yOiAjMzMzMzMzO1xuICAtLWJzLXRhYmxlLWhvdmVyLWJnOiAjZjBkY2MxO1xuICAtLWJzLXRhYmxlLWhvdmVyLWNvbG9yOiAjMzMzMzMzO1xuICBjb2xvcjogdmFyKC0tYnMtdGFibGUtY29sb3IpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWJzLXRhYmxlLWJvcmRlci1jb2xvcik7XG59XG5cbi50YWJsZS1kYW5nZXIge1xuICAtLWJzLXRhYmxlLWNvbG9yOiAjMzMzMzMzO1xuICAtLWJzLXRhYmxlLWJnOiAjZmRkOWQ3O1xuICAtLWJzLXRhYmxlLWJvcmRlci1jb2xvcjogI2U5YzhjNztcbiAgLS1icy10YWJsZS1zdHJpcGVkLWJnOiAjZjNkMWNmO1xuICAtLWJzLXRhYmxlLXN0cmlwZWQtY29sb3I6ICMzMzMzMzM7XG4gIC0tYnMtdGFibGUtYWN0aXZlLWJnOiAjZTljOGM3O1xuICAtLWJzLXRhYmxlLWFjdGl2ZS1jb2xvcjogIzMzMzMzMztcbiAgLS1icy10YWJsZS1ob3Zlci1iZzogI2VlY2RjYjtcbiAgLS1icy10YWJsZS1ob3Zlci1jb2xvcjogIzMzMzMzMztcbiAgY29sb3I6IHZhcigtLWJzLXRhYmxlLWNvbG9yKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy10YWJsZS1ib3JkZXItY29sb3IpO1xufVxuXG4udGFibGUtbGlnaHQge1xuICAtLWJzLXRhYmxlLWNvbG9yOiAjMzMzMzMzO1xuICAtLWJzLXRhYmxlLWJnOiAjZjhmOWZhO1xuICAtLWJzLXRhYmxlLWJvcmRlci1jb2xvcjogI2U0ZTVlNjtcbiAgLS1icy10YWJsZS1zdHJpcGVkLWJnOiAjZWVlZmYwO1xuICAtLWJzLXRhYmxlLXN0cmlwZWQtY29sb3I6ICMzMzMzMzM7XG4gIC0tYnMtdGFibGUtYWN0aXZlLWJnOiAjZTRlNWU2O1xuICAtLWJzLXRhYmxlLWFjdGl2ZS1jb2xvcjogIzMzMzMzMztcbiAgLS1icy10YWJsZS1ob3Zlci1iZzogI2U5ZWFlYjtcbiAgLS1icy10YWJsZS1ob3Zlci1jb2xvcjogIzMzMzMzMztcbiAgY29sb3I6IHZhcigtLWJzLXRhYmxlLWNvbG9yKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy10YWJsZS1ib3JkZXItY29sb3IpO1xufVxuXG4udGFibGUtZGFyayB7XG4gIC0tYnMtdGFibGUtY29sb3I6ICNmZmZmZmY7XG4gIC0tYnMtdGFibGUtYmc6ICMyMTI1Mjk7XG4gIC0tYnMtdGFibGUtYm9yZGVyLWNvbG9yOiAjMzczYjNlO1xuICAtLWJzLXRhYmxlLXN0cmlwZWQtYmc6ICMyYzMwMzQ7XG4gIC0tYnMtdGFibGUtc3RyaXBlZC1jb2xvcjogI2ZmZmZmZjtcbiAgLS1icy10YWJsZS1hY3RpdmUtYmc6ICMzNzNiM2U7XG4gIC0tYnMtdGFibGUtYWN0aXZlLWNvbG9yOiAjZmZmZmZmO1xuICAtLWJzLXRhYmxlLWhvdmVyLWJnOiAjMzIzNTM5O1xuICAtLWJzLXRhYmxlLWhvdmVyLWNvbG9yOiAjZmZmZmZmO1xuICBjb2xvcjogdmFyKC0tYnMtdGFibGUtY29sb3IpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWJzLXRhYmxlLWJvcmRlci1jb2xvcik7XG59XG5cbi50YWJsZS1yZXNwb25zaXZlIHtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcbiAgLnRhYmxlLXJlc3BvbnNpdmUtc20ge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAudGFibGUtcmVzcG9uc2l2ZS1tZCB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC50YWJsZS1yZXNwb25zaXZlLWxnIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gIC50YWJsZS1yZXNwb25zaXZlLXhsIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTM5OS45OHB4KSB7XG4gIC50YWJsZS1yZXNwb25zaXZlLXh4bCB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIH1cbn1cblxuLmZvcm0tbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbi5jb2wtZm9ybS1sYWJlbCB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDAuMzc1cmVtICsgdmFyKC0tYnMtYm9yZGVyLXdpZHRoKSk7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDAuMzc1cmVtICsgdmFyKC0tYnMtYm9yZGVyLXdpZHRoKSk7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLmNvbC1mb3JtLWxhYmVsLWxnIHtcbiAgcGFkZGluZy10b3A6IGNhbGMoMC41cmVtICsgdmFyKC0tYnMtYm9yZGVyLXdpZHRoKSk7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDAuNXJlbSArIHZhcigtLWJzLWJvcmRlci13aWR0aCkpO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xufVxuXG4uY29sLWZvcm0tbGFiZWwtc20ge1xuICBwYWRkaW5nLXRvcDogY2FsYygwLjI1cmVtICsgdmFyKC0tYnMtYm9yZGVyLXdpZHRoKSk7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDAuMjVyZW0gKyB2YXIoLS1icy1ib3JkZXItd2lkdGgpKTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbn1cblxuLmZvcm0tdGV4dCB7XG4gIG1hcmdpbi10b3A6IDAuMjVyZW07XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgY29sb3I6IHZhcigtLWJzLXNlY29uZGFyeS1jb2xvcik7XG59XG5cbi5mb3JtLWNvbnRyb2wsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiB2YXIoLS1icy1ib2R5LWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtYm9keS1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogdmFyKC0tYnMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1ib3JkZXItY29sb3IpO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1icy1ib3JkZXItcmFkaXVzKTtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuZm9ybS1jb250cm9sLFxuICAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbi5mb3JtLWNvbnRyb2xbdHlwZT1maWxlXSxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCBbdHlwZT1maWxlXS5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5mb3JtLWNvbnRyb2xbdHlwZT1maWxlXTpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSksXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgW3R5cGU9ZmlsZV0uc2VsZWN0Mi1zZWxlY3Rpb246bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uZm9ybS1jb250cm9sOmZvY3VzLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyB7XG4gIGNvbG9yOiB2YXIoLS1icy1ib2R5LWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtYm9keS1iZyk7XG4gIGJvcmRlci1jb2xvcjogIzhmOGZhYjtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDMwLCAzMCwgODYsIDAuMjUpO1xufVxuXG4uZm9ybS1jb250cm9sOjotd2Via2l0LWRhdGUtYW5kLXRpbWUtdmFsdWUsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOjotd2Via2l0LWRhdGUtYW5kLXRpbWUtdmFsdWUge1xuICBtaW4td2lkdGg6IDg1cHg7XG4gIGhlaWdodDogMS41ZW07XG4gIG1hcmdpbjogMDtcbn1cblxuLmZvcm0tY29udHJvbDo6LXdlYmtpdC1kYXRldGltZS1lZGl0LFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5mb3JtLWNvbnRyb2w6OnBsYWNlaG9sZGVyLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogdmFyKC0tYnMtc2Vjb25kYXJ5LWNvbG9yKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmZvcm0tY29udHJvbDpkaXNhYmxlZCxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246ZGlzYWJsZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1zZWNvbmRhcnktYmcpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uZm9ybS1jb250cm9sOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTtcbiAgbWFyZ2luOiAtMC4zNzVyZW0gLTAuNzVyZW07XG4gIG1hcmdpbi1pbmxpbmUtZW5kOiAwLjc1cmVtO1xuICBjb2xvcjogdmFyKC0tYnMtYm9keS1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLXRlcnRpYXJ5LWJnKTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwO1xuICBib3JkZXItaW5saW5lLWVuZC13aWR0aDogdmFyKC0tYnMtYm9yZGVyLXdpZHRoKTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmZvcm0tY29udHJvbDo6ZmlsZS1zZWxlY3Rvci1idXR0b24sXG4gIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbi5mb3JtLWNvbnRyb2w6aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLXNlY29uZGFyeS1iZyk7XG59XG5cbi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwLjM3NXJlbSAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogdmFyKC0tYnMtYm9keS1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IHZhcigtLWJzLWJvcmRlci13aWR0aCkgMDtcbn1cblxuLmZvcm0tY29udHJvbC1wbGFpbnRleHQ6Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xufVxuXG4uZm9ybS1jb250cm9sLXBsYWludGV4dC5mb3JtLWNvbnRyb2wtc20sXG4uZm9ybS1jb250cm9sLXBsYWludGV4dC5mb3JtLWNvbnRyb2wtbGcge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5mb3JtLWNvbnRyb2wtc20ge1xuICBtaW4taGVpZ2h0OiBjYWxjKDEuNWVtICsgMC41cmVtICsgY2FsYyggdmFyKC0tYnMtYm9yZGVyLXdpZHRoKSAqIDIgKSk7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1icy1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLmZvcm0tY29udHJvbC1zbTo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgbWFyZ2luOiAtMC4yNXJlbSAtMC41cmVtO1xuICBtYXJnaW4taW5saW5lLWVuZDogMC41cmVtO1xufVxuXG4uZm9ybS1jb250cm9sLWxnIHtcbiAgbWluLWhlaWdodDogY2FsYygxLjVlbSArIDFyZW0gKyBjYWxjKCB2YXIoLS1icy1ib3JkZXItd2lkdGgpICogMiApKTtcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4uZm9ybS1jb250cm9sLWxnOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICBtYXJnaW46IC0wLjVyZW0gLTFyZW07XG4gIG1hcmdpbi1pbmxpbmUtZW5kOiAxcmVtO1xufVxuXG50ZXh0YXJlYS5mb3JtLWNvbnRyb2wsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgdGV4dGFyZWEuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICBtaW4taGVpZ2h0OiBjYWxjKDEuNWVtICsgMC43NXJlbSArIGNhbGMoIHZhcigtLWJzLWJvcmRlci13aWR0aCkgKiAyICkpO1xufVxuXG50ZXh0YXJlYS5mb3JtLWNvbnRyb2wtc20ge1xuICBtaW4taGVpZ2h0OiBjYWxjKDEuNWVtICsgMC41cmVtICsgY2FsYyggdmFyKC0tYnMtYm9yZGVyLXdpZHRoKSAqIDIgKSk7XG59XG5cbnRleHRhcmVhLmZvcm0tY29udHJvbC1sZyB7XG4gIG1pbi1oZWlnaHQ6IGNhbGMoMS41ZW0gKyAxcmVtICsgY2FsYyggdmFyKC0tYnMtYm9yZGVyLXdpZHRoKSAqIDIgKSk7XG59XG5cbi5mb3JtLWNvbnRyb2wtY29sb3Ige1xuICB3aWR0aDogM3JlbTtcbiAgaGVpZ2h0OiBjYWxjKDEuNWVtICsgMC43NXJlbSArIGNhbGMoIHZhcigtLWJzLWJvcmRlci13aWR0aCkgKiAyICkpO1xuICBwYWRkaW5nOiAwLjM3NXJlbTtcbn1cblxuLmZvcm0tY29udHJvbC1jb2xvcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSkge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5mb3JtLWNvbnRyb2wtY29sb3I6Oi1tb3otY29sb3Itc3dhdGNoIHtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uZm9ybS1jb250cm9sLWNvbG9yOjotd2Via2l0LWNvbG9yLXN3YXRjaCB7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1icy1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmZvcm0tY29udHJvbC1jb2xvci5mb3JtLWNvbnRyb2wtc20ge1xuICBoZWlnaHQ6IGNhbGMoMS41ZW0gKyAwLjVyZW0gKyBjYWxjKCB2YXIoLS1icy1ib3JkZXItd2lkdGgpICogMiApKTtcbn1cblxuLmZvcm0tY29udHJvbC1jb2xvci5mb3JtLWNvbnRyb2wtbGcge1xuICBoZWlnaHQ6IGNhbGMoMS41ZW0gKyAxcmVtICsgY2FsYyggdmFyKC0tYnMtYm9yZGVyLXdpZHRoKSAqIDIgKSk7XG59XG5cbi5mb3JtLXNlbGVjdCB7XG4gIC0tYnMtZm9ybS1zZWxlY3QtYmctaW1nOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyUzZSUzY3BhdGggZmlsbD0nbm9uZScgc3Ryb2tlPSclMjMzNDNhNDAnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdtMiA1IDYgNiA2LTYnLyUzZSUzYy9zdmclM2VcIik7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMC4zNzVyZW0gMi4yNXJlbSAwLjM3NXJlbSAwLjc1cmVtO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiB2YXIoLS1icy1ib2R5LWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtYm9keS1iZyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLWJzLWZvcm0tc2VsZWN0LWJnLWltZyksIHZhcigtLWJzLWZvcm0tc2VsZWN0LWJnLWljb24sIG5vbmUpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAwLjc1cmVtIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxNnB4IDEycHg7XG4gIGJvcmRlcjogdmFyKC0tYnMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1ib3JkZXItY29sb3IpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1icy1ib3JkZXItcmFkaXVzKTtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuZm9ybS1zZWxlY3Qge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cblxuLmZvcm0tc2VsZWN0OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjOGY4ZmFiO1xuICBvdXRsaW5lOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMzAsIDMwLCA4NiwgMC4yNSk7XG59XG5cbi5mb3JtLXNlbGVjdFttdWx0aXBsZV0sXG4uZm9ybS1zZWxlY3Rbc2l6ZV06bm90KFtzaXplPVwiMVwiXSkge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjc1cmVtO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4uZm9ybS1zZWxlY3Q6ZGlzYWJsZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1zZWNvbmRhcnktYmcpO1xufVxuXG4uZm9ybS1zZWxlY3Q6LW1vei1mb2N1c3Jpbmcge1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiAwIDAgMCB2YXIoLS1icy1ib2R5LWNvbG9yKTtcbn1cblxuLmZvcm0tc2VsZWN0LXNtIHtcbiAgcGFkZGluZy10b3A6IDAuMjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbi5mb3JtLXNlbGVjdC1sZyB7XG4gIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbltkYXRhLWJzLXRoZW1lPWRhcmtdIC5mb3JtLXNlbGVjdCB7XG4gIC0tYnMtZm9ybS1zZWxlY3QtYmctaW1nOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyUzZSUzY3BhdGggZmlsbD0nbm9uZScgc3Ryb2tlPSclMjNhZGI1YmQnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdtMiA1IDYgNiA2LTYnLyUzZSUzYy9zdmclM2VcIik7XG59XG5cbi5mb3JtLWNoZWNrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6IDEuNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAxLjVlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC4xMjVyZW07XG59XG5cbi5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1sZWZ0OiAtMS41ZW07XG59XG5cbi5mb3JtLWNoZWNrLXJldmVyc2Uge1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVlbTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLmZvcm0tY2hlY2stcmV2ZXJzZSAuZm9ybS1jaGVjay1pbnB1dCB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLXJpZ2h0OiAtMS41ZW07XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4uZm9ybS1jaGVjay1pbnB1dCB7XG4gIC0tYnMtZm9ybS1jaGVjay1iZzogdmFyKC0tYnMtYm9keS1iZyk7XG4gIHdpZHRoOiAxZW07XG4gIGhlaWdodDogMWVtO1xuICBtYXJnaW4tdG9wOiAwLjI1ZW07XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWZvcm0tY2hlY2stYmcpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS1icy1mb3JtLWNoZWNrLWJnLWltYWdlKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGJvcmRlcjogdmFyKC0tYnMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1ib3JkZXItY29sb3IpO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBwcmludC1jb2xvci1hZGp1c3Q6IGV4YWN0O1xufVxuXG4uZm9ybS1jaGVjay1pbnB1dFt0eXBlPWNoZWNrYm94XSB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVlbTtcbn1cblxuLmZvcm0tY2hlY2staW5wdXRbdHlwZT1yYWRpb10ge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbi5mb3JtLWNoZWNrLWlucHV0OmFjdGl2ZSB7XG4gIGZpbHRlcjogYnJpZ2h0bmVzcyg5MCUpO1xufVxuXG4uZm9ybS1jaGVjay1pbnB1dDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzhmOGZhYjtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDMwLCAzMCwgODYsIDAuMjUpO1xufVxuXG4uZm9ybS1jaGVjay1pbnB1dDpjaGVja2VkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFlMWU1NjtcbiAgYm9yZGVyLWNvbG9yOiAjMWUxZTU2O1xufVxuXG4uZm9ybS1jaGVjay1pbnB1dDpjaGVja2VkW3R5cGU9Y2hlY2tib3hdIHtcbiAgLS1icy1mb3JtLWNoZWNrLWJnLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDIwIDIwJyUzZSUzY3BhdGggZmlsbD0nbm9uZScgc3Ryb2tlPSclMjNmZmZmZmYnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPSczJyBkPSdtNiAxMCAzIDMgNi02Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xufVxuXG4uZm9ybS1jaGVjay1pbnB1dDpjaGVja2VkW3R5cGU9cmFkaW9dIHtcbiAgLS1icy1mb3JtLWNoZWNrLWJnLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4JyUzZSUzY2NpcmNsZSByPScyJyBmaWxsPSclMjNmZmZmZmYnLyUzZSUzYy9zdmclM2VcIik7XG59XG5cbi5mb3JtLWNoZWNrLWlucHV0W3R5cGU9Y2hlY2tib3hdOmluZGV0ZXJtaW5hdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWUxZTU2O1xuICBib3JkZXItY29sb3I6ICMxZTFlNTY7XG4gIC0tYnMtZm9ybS1jaGVjay1iZy1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyMCAyMCclM2UlM2NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzZmZmZmZmJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycgZD0nTTYgMTBoOCcvJTNlJTNjL3N2ZyUzZVwiKTtcbn1cblxuLmZvcm0tY2hlY2staW5wdXQ6ZGlzYWJsZWQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgZmlsdGVyOiBub25lO1xuICBvcGFjaXR5OiAwLjU7XG59XG5cbi5mb3JtLWNoZWNrLWlucHV0W2Rpc2FibGVkXSB+IC5mb3JtLWNoZWNrLWxhYmVsLFxuLmZvcm0tY2hlY2staW5wdXQ6ZGlzYWJsZWQgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgb3BhY2l0eTogMC41O1xufVxuXG4uZm9ybS1zd2l0Y2gge1xuICBwYWRkaW5nLWxlZnQ6IDIuNWVtO1xufVxuXG4uZm9ybS1zd2l0Y2ggLmZvcm0tY2hlY2staW5wdXQge1xuICAtLWJzLWZvcm0tc3dpdGNoLWJnOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4JyUzZSUzY2NpcmNsZSByPSczJyBmaWxsPSdyZ2JhJTI4NTEsIDUxLCA1MSwgMC4yNSUyOScvJTNlJTNjL3N2ZyUzZVwiKTtcbiAgd2lkdGg6IDJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0yLjVlbTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tYnMtZm9ybS1zd2l0Y2gtYmcpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogMmVtO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLXBvc2l0aW9uIDAuMTVzIGVhc2UtaW4tb3V0O1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuZm9ybS1zd2l0Y2ggLmZvcm0tY2hlY2staW5wdXQge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cblxuLmZvcm0tc3dpdGNoIC5mb3JtLWNoZWNrLWlucHV0OmZvY3VzIHtcbiAgLS1icy1mb3JtLXN3aXRjaC1iZzogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCclM2UlM2NjaXJjbGUgcj0nMycgZmlsbD0nJTIzOGY4ZmFiJy8lM2UlM2Mvc3ZnJTNlXCIpO1xufVxuXG4uZm9ybS1zd2l0Y2ggLmZvcm0tY2hlY2staW5wdXQ6Y2hlY2tlZCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcbiAgLS1icy1mb3JtLXN3aXRjaC1iZzogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCclM2UlM2NjaXJjbGUgcj0nMycgZmlsbD0nJTIzZmZmZmZmJy8lM2UlM2Mvc3ZnJTNlXCIpO1xufVxuXG4uZm9ybS1zd2l0Y2guZm9ybS1jaGVjay1yZXZlcnNlIHtcbiAgcGFkZGluZy1yaWdodDogMi41ZW07XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLmZvcm0tc3dpdGNoLmZvcm0tY2hlY2stcmV2ZXJzZSAuZm9ybS1jaGVjay1pbnB1dCB7XG4gIG1hcmdpbi1yaWdodDogLTIuNWVtO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLmZvcm0tY2hlY2staW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG59XG5cbi5idG4tY2hlY2sge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4uYnRuLWNoZWNrW2Rpc2FibGVkXSArIC5idG4sXG4uYnRuLWNoZWNrOmRpc2FibGVkICsgLmJ0biB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBmaWx0ZXI6IG5vbmU7XG4gIG9wYWNpdHk6IDAuNjU7XG59XG5cbltkYXRhLWJzLXRoZW1lPWRhcmtdIC5mb3JtLXN3aXRjaCAuZm9ybS1jaGVjay1pbnB1dDpub3QoOmNoZWNrZWQpOm5vdCg6Zm9jdXMpIHtcbiAgLS1icy1mb3JtLXN3aXRjaC1iZzogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCclM2UlM2NjaXJjbGUgcj0nMycgZmlsbD0ncmdiYSUyODI1NSwgMjU1LCAyNTUsIDAuMjUlMjknLyUzZSUzYy9zdmclM2VcIik7XG59XG5cbi5mb3JtLXJhbmdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMS41cmVtO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLmZvcm0tcmFuZ2U6Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xufVxuXG4uZm9ybS1yYW5nZTpmb2N1czo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI2ZmZmZmZiwgMCAwIDAgMC4yNXJlbSByZ2JhKDMwLCAzMCwgODYsIDAuMjUpO1xufVxuXG4uZm9ybS1yYW5nZTpmb2N1czo6LW1vei1yYW5nZS10aHVtYiB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjZmZmZmZmLCAwIDAgMCAwLjI1cmVtIHJnYmEoMzAsIDMwLCA4NiwgMC4yNSk7XG59XG5cbi5mb3JtLXJhbmdlOjotbW96LWZvY3VzLW91dGVyIHtcbiAgYm9yZGVyOiAwO1xufVxuXG4uZm9ybS1yYW5nZTo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAxcmVtO1xuICBtYXJnaW4tdG9wOiAtMC4yNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFlMWU1NjtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAxcmVtO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5mb3JtLXJhbmdlOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuXG4uZm9ybS1yYW5nZTo6LXdlYmtpdC1zbGlkZXItdGh1bWI6YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JjYmNjYztcbn1cblxuLmZvcm0tcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMC41cmVtO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtdGVydGlhcnktYmcpO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAxcmVtO1xufVxuXG4uZm9ybS1yYW5nZTo6LW1vei1yYW5nZS10aHVtYiB7XG4gIHdpZHRoOiAxcmVtO1xuICBoZWlnaHQ6IDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICMxZTFlNTY7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMXJlbTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuZm9ybS1yYW5nZTo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuXG4uZm9ybS1yYW5nZTo6LW1vei1yYW5nZS10aHVtYjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmNiY2NjO1xufVxuXG4uZm9ybS1yYW5nZTo6LW1vei1yYW5nZS10cmFjayB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDAuNXJlbTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLXRlcnRpYXJ5LWJnKTtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMXJlbTtcbn1cblxuLmZvcm0tcmFuZ2U6ZGlzYWJsZWQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLmZvcm0tcmFuZ2U6ZGlzYWJsZWQ6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtc2Vjb25kYXJ5LWNvbG9yKTtcbn1cblxuLmZvcm0tcmFuZ2U6ZGlzYWJsZWQ6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1zZWNvbmRhcnktY29sb3IpO1xufVxuXG4uZm9ybS1mbG9hdGluZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmZvcm0tZmxvYXRpbmcgPiAuZm9ybS1jb250cm9sLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5mb3JtLWZsb2F0aW5nID4gLnNlbGVjdDItc2VsZWN0aW9uLFxuLmZvcm0tZmxvYXRpbmcgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCxcbi5mb3JtLWZsb2F0aW5nID4gLmZvcm0tc2VsZWN0IHtcbiAgaGVpZ2h0OiBjYWxjKDMuNXJlbSArIGNhbGMoXG4gIHZhcigtLWJzLWJvcmRlci13aWR0aCkgKiAyXG4pKTtcbiAgbWluLWhlaWdodDogY2FsYygzLjVyZW0gKyBjYWxjKFxuICB2YXIoLS1icy1ib3JkZXItd2lkdGgpICogMlxuKSk7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xufVxuXG4uZm9ybS1mbG9hdGluZyA+IGxhYmVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDI7XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZzogMXJlbSAwLjc1cmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBib3JkZXI6IHZhcigtLWJzLWJvcmRlci13aWR0aCkgc29saWQgdHJhbnNwYXJlbnQ7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gMC4xcyBlYXNlLWluLW91dDtcbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmZvcm0tZmxvYXRpbmcgPiBsYWJlbCB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2wsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmZvcm0tZmxvYXRpbmcgPiAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgcGFkZGluZzogMXJlbSAwLjc1cmVtO1xufVxuXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2w6OnBsYWNlaG9sZGVyLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5mb3JtLWZsb2F0aW5nID4gLnNlbGVjdDItc2VsZWN0aW9uOjpwbGFjZWhvbGRlcixcbi5mb3JtLWZsb2F0aW5nID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQ6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmZvcm0tZmxvYXRpbmcgPiAuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2w6bm90KDpwbGFjZWhvbGRlci1zaG93biksXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmZvcm0tZmxvYXRpbmcgPiAuc2VsZWN0Mi1zZWxlY3Rpb246bm90KDpwbGFjZWhvbGRlci1zaG93biksXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0OmZvY3VzLFxuLmZvcm0tZmxvYXRpbmcgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dDpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB7XG4gIHBhZGRpbmctdG9wOiAxLjYyNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNjI1cmVtO1xufVxuXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2w6LXdlYmtpdC1hdXRvZmlsbCxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuZm9ybS1mbG9hdGluZyA+IC5zZWxlY3QyLXNlbGVjdGlvbjotd2Via2l0LWF1dG9maWxsLFxuLmZvcm0tZmxvYXRpbmcgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dDotd2Via2l0LWF1dG9maWxsIHtcbiAgcGFkZGluZy10b3A6IDEuNjI1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC42MjVyZW07XG59XG5cbi5mb3JtLWZsb2F0aW5nID4gLmZvcm0tc2VsZWN0IHtcbiAgcGFkZGluZy10b3A6IDEuNjI1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC42MjVyZW07XG59XG5cbi5mb3JtLWZsb2F0aW5nID4gLmZvcm0tY29udHJvbDpmb2N1cyB+IGxhYmVsLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5mb3JtLWZsb2F0aW5nID4gLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzIH4gbGFiZWwsXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2w6bm90KDpwbGFjZWhvbGRlci1zaG93bikgfiBsYWJlbCxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuZm9ybS1mbG9hdGluZyA+IC5zZWxlY3QyLXNlbGVjdGlvbjpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB+IGxhYmVsLFxuLmZvcm0tZmxvYXRpbmcgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCB+IGxhYmVsLFxuLmZvcm0tZmxvYXRpbmcgPiAuZm9ybS1zZWxlY3QgfiBsYWJlbCB7XG4gIGNvbG9yOiByZ2JhKHZhcigtLWJzLWJvZHktY29sb3ItcmdiKSwgMC42NSk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC44NSkgdHJhbnNsYXRlWSgtMC41cmVtKSB0cmFuc2xhdGVYKDAuMTVyZW0pO1xufVxuXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2w6Zm9jdXMgfiBsYWJlbDo6YWZ0ZXIsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmZvcm0tZmxvYXRpbmcgPiAuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMgfiBsYWJlbDo6YWZ0ZXIsXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2w6bm90KDpwbGFjZWhvbGRlci1zaG93bikgfiBsYWJlbDo6YWZ0ZXIsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmZvcm0tZmxvYXRpbmcgPiAuc2VsZWN0Mi1zZWxlY3Rpb246bm90KDpwbGFjZWhvbGRlci1zaG93bikgfiBsYWJlbDo6YWZ0ZXIsXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IH4gbGFiZWw6OmFmdGVyLFxuLmZvcm0tZmxvYXRpbmcgPiAuZm9ybS1zZWxlY3QgfiBsYWJlbDo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiAxcmVtIDAuMzc1cmVtO1xuICB6LWluZGV4OiAtMTtcbiAgaGVpZ2h0OiAxLjVlbTtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtYm9keS1iZyk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2w6LXdlYmtpdC1hdXRvZmlsbCB+IGxhYmVsLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5mb3JtLWZsb2F0aW5nID4gLnNlbGVjdDItc2VsZWN0aW9uOi13ZWJraXQtYXV0b2ZpbGwgfiBsYWJlbCB7XG4gIGNvbG9yOiByZ2JhKHZhcigtLWJzLWJvZHktY29sb3ItcmdiKSwgMC42NSk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC44NSkgdHJhbnNsYXRlWSgtMC41cmVtKSB0cmFuc2xhdGVYKDAuMTVyZW0pO1xufVxuXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IH4gbGFiZWwge1xuICBib3JkZXItd2lkdGg6IHZhcigtLWJzLWJvcmRlci13aWR0aCkgMDtcbn1cblxuLmZvcm0tZmxvYXRpbmcgPiA6ZGlzYWJsZWQgfiBsYWJlbCB7XG4gIGNvbG9yOiAjNmM3NTdkO1xufVxuXG4uZm9ybS1mbG9hdGluZyA+IDpkaXNhYmxlZCB+IGxhYmVsOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLXNlY29uZGFyeS1iZyk7XG59XG5cbi5pbnB1dC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmlucHV0LWdyb3VwID4gLnNlbGVjdDItc2VsZWN0aW9uLFxuLmlucHV0LWdyb3VwID4gLmZvcm0tc2VsZWN0LFxuLmlucHV0LWdyb3VwID4gLmZvcm0tZmxvYXRpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICB3aWR0aDogMSU7XG4gIG1pbi13aWR0aDogMDtcbn1cblxuLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbDpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuaW5wdXQtZ3JvdXAgPiAuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1zZWxlY3Q6Zm9jdXMsXG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1mbG9hdGluZzpmb2N1cy13aXRoaW4ge1xuICB6LWluZGV4OiA1O1xufVxuXG4uaW5wdXQtZ3JvdXAgLmJ0biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbn1cblxuLmlucHV0LWdyb3VwIC5idG46Zm9jdXMge1xuICB6LWluZGV4OiA1O1xufVxuXG4uaW5wdXQtZ3JvdXAtdGV4dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6IHZhcigtLWJzLWJvZHktY29sb3IpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLXRlcnRpYXJ5LWJnKTtcbiAgYm9yZGVyOiB2YXIoLS1icy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLWJvcmRlci1jb2xvcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5pbnB1dC1ncm91cC1sZyA+IC5zZWxlY3QyLXNlbGVjdGlvbixcbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLWxnID4gLmJ0biB7XG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1icy1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbCxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuaW5wdXQtZ3JvdXAtc20gPiAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1zbSA+IC5idG4ge1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLXNlbGVjdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDNyZW07XG59XG5cbi5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKSA+IDpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKTpub3QoLmRyb3Bkb3duLW1lbnUpOm5vdCguZm9ybS1mbG9hdGluZyksXG4uaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbikgPiAuZHJvcGRvd24tdG9nZ2xlOm50aC1sYXN0LWNoaWxkKG4rMyksXG4uaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbikgPiAuZm9ybS1mbG9hdGluZzpub3QoOmxhc3QtY2hpbGQpID4gLmZvcm0tY29udHJvbCxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbikgPiAuZm9ybS1mbG9hdGluZzpub3QoOmxhc3QtY2hpbGQpID4gLnNlbGVjdDItc2VsZWN0aW9uLFxuLmlucHV0LWdyb3VwOm5vdCguaGFzLXZhbGlkYXRpb24pID4gLmZvcm0tZmxvYXRpbmc6bm90KDpsYXN0LWNoaWxkKSA+IC5mb3JtLXNlbGVjdCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbn1cblxuLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uID4gOm50aC1sYXN0LWNoaWxkKG4rMyk6bm90KC5kcm9wZG93bi10b2dnbGUpOm5vdCguZHJvcGRvd24tbWVudSk6bm90KC5mb3JtLWZsb2F0aW5nKSxcbi5pbnB1dC1ncm91cC5oYXMtdmFsaWRhdGlvbiA+IC5kcm9wZG93bi10b2dnbGU6bnRoLWxhc3QtY2hpbGQobis0KSxcbi5pbnB1dC1ncm91cC5oYXMtdmFsaWRhdGlvbiA+IC5mb3JtLWZsb2F0aW5nOm50aC1sYXN0LWNoaWxkKG4rMykgPiAuZm9ybS1jb250cm9sLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5pbnB1dC1ncm91cC5oYXMtdmFsaWRhdGlvbiA+IC5mb3JtLWZsb2F0aW5nOm50aC1sYXN0LWNoaWxkKG4rMykgPiAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24gPiAuZm9ybS1mbG9hdGluZzpudGgtbGFzdC1jaGlsZChuKzMpID4gLmZvcm0tc2VsZWN0IHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4uaW5wdXQtZ3JvdXAgPiA6bm90KDpmaXJzdC1jaGlsZCk6bm90KC5kcm9wZG93bi1tZW51KTpub3QoLnZhbGlkLXRvb2x0aXApOm5vdCgudmFsaWQtZmVlZGJhY2spOm5vdCguaW52YWxpZC10b29sdGlwKTpub3QoLmludmFsaWQtZmVlZGJhY2spOm5vdCguZXJyb3ItaGVscC1ibG9jaykge1xuICBtYXJnaW4tbGVmdDogY2FsYyh2YXIoLS1icy1ib3JkZXItd2lkdGgpICogLTEpO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xufVxuXG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1mbG9hdGluZzpub3QoOmZpcnN0LWNoaWxkKSA+IC5mb3JtLWNvbnRyb2wsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmlucHV0LWdyb3VwID4gLmZvcm0tZmxvYXRpbmc6bm90KDpmaXJzdC1jaGlsZCkgPiAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1mbG9hdGluZzpub3QoOmZpcnN0LWNoaWxkKSA+IC5mb3JtLXNlbGVjdCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG59XG5cbi52YWxpZC1mZWVkYmFjayB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIGNvbG9yOiB2YXIoLS1icy1mb3JtLXZhbGlkLWNvbG9yKTtcbn1cblxuLnZhbGlkLXRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgei1pbmRleDogNTtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgbWFyZ2luLXRvcDogMC4xcmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtc3VjY2Vzcyk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMpO1xufVxuXG4ud2FzLXZhbGlkYXRlZCA6dmFsaWQgfiAudmFsaWQtZmVlZGJhY2ssXG4ud2FzLXZhbGlkYXRlZCA6dmFsaWQgfiAudmFsaWQtdG9vbHRpcCxcbi5pcy12YWxpZCB+IC52YWxpZC1mZWVkYmFjayxcbi5pcy12YWxpZCB+IC52YWxpZC10b29sdGlwIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6dmFsaWQsXG4ud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOnZhbGlkLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLXNlbGVjdGlvbjp2YWxpZCxcbi5mb3JtLWNvbnRyb2wuaXMtdmFsaWQsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmlzLXZhbGlkLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1mb3JtLXZhbGlkLWJvcmRlci1jb2xvcik7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMS41ZW0gKyAwLjc1cmVtKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBmaWxsPSclMjM0Y2FmNTAnIGQ9J00yLjMgNi43My42IDQuNTNjLS40LTEuMDQuNDYtMS40IDEuMS0uOGwxLjEgMS40IDMuNC0zLjhjLjYtLjYzIDEuNi0uMjcgMS4yLjdsLTQgNC42Yy0uNDMuNS0uOC40LTEuMS4xeicvJTNlJTNjL3N2ZyUzZVwiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2FsYygwLjM3NWVtICsgMC4xODc1cmVtKSBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY2FsYygwLjc1ZW0gKyAwLjM3NXJlbSkgY2FsYygwLjc1ZW0gKyAwLjM3NXJlbSk7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6dmFsaWQ6Zm9jdXMsXG4ud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOnZhbGlkOmZvY3VzLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLXNlbGVjdGlvbjp2YWxpZDpmb2N1cyxcbi5mb3JtLWNvbnRyb2wuaXMtdmFsaWQ6Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmlzLXZhbGlkLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1mb3JtLXZhbGlkLWJvcmRlci1jb2xvcik7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSh2YXIoLS1icy1zdWNjZXNzLXJnYiksIDAuMjUpO1xufVxuXG4ud2FzLXZhbGlkYXRlZCB0ZXh0YXJlYS5mb3JtLWNvbnRyb2w6dmFsaWQsXG4ud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgdGV4dGFyZWEuc2VsZWN0Mi1zZWxlY3Rpb246dmFsaWQsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLndhcy12YWxpZGF0ZWQgdGV4dGFyZWEuc2VsZWN0Mi1zZWxlY3Rpb246dmFsaWQsXG50ZXh0YXJlYS5mb3JtLWNvbnRyb2wuaXMtdmFsaWQsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgdGV4dGFyZWEuaXMtdmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDEuNWVtICsgMC43NXJlbSk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjYWxjKDAuMzc1ZW0gKyAwLjE4NzVyZW0pIHJpZ2h0IGNhbGMoMC4zNzVlbSArIDAuMTg3NXJlbSk7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5mb3JtLXNlbGVjdDp2YWxpZCxcbi5mb3JtLXNlbGVjdC5pcy12YWxpZCB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtZm9ybS12YWxpZC1ib3JkZXItY29sb3IpO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1zZWxlY3Q6dmFsaWQ6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pLFxuLndhcy12YWxpZGF0ZWQgLmZvcm0tc2VsZWN0OnZhbGlkOm5vdChbbXVsdGlwbGVdKVtzaXplPVwiMVwiXSxcbi5mb3JtLXNlbGVjdC5pcy12YWxpZDpub3QoW211bHRpcGxlXSk6bm90KFtzaXplXSksXG4uZm9ybS1zZWxlY3QuaXMtdmFsaWQ6bm90KFttdWx0aXBsZV0pW3NpemU9XCIxXCJdIHtcbiAgLS1icy1mb3JtLXNlbGVjdC1iZy1pY29uOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDggOCclM2UlM2NwYXRoIGZpbGw9JyUyMzRjYWY1MCcgZD0nTTIuMyA2LjczLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xuICBwYWRkaW5nLXJpZ2h0OiA0LjEyNXJlbTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMC43NXJlbSBjZW50ZXIsIGNlbnRlciByaWdodCAyLjI1cmVtO1xuICBiYWNrZ3JvdW5kLXNpemU6IDE2cHggMTJweCwgY2FsYygwLjc1ZW0gKyAwLjM3NXJlbSkgY2FsYygwLjc1ZW0gKyAwLjM3NXJlbSk7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5mb3JtLXNlbGVjdDp2YWxpZDpmb2N1cyxcbi5mb3JtLXNlbGVjdC5pcy12YWxpZDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtZm9ybS12YWxpZC1ib3JkZXItY29sb3IpO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEodmFyKC0tYnMtc3VjY2Vzcy1yZ2IpLCAwLjI1KTtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbC1jb2xvcjp2YWxpZCxcbi5mb3JtLWNvbnRyb2wtY29sb3IuaXMtdmFsaWQge1xuICB3aWR0aDogY2FsYygzcmVtICsgY2FsYygxLjVlbSArIDAuNzVyZW0pKTtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6dmFsaWQsXG4uZm9ybS1jaGVjay1pbnB1dC5pcy12YWxpZCB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtZm9ybS12YWxpZC1ib3JkZXItY29sb3IpO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDp2YWxpZDpjaGVja2VkLFxuLmZvcm0tY2hlY2staW5wdXQuaXMtdmFsaWQ6Y2hlY2tlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWZvcm0tdmFsaWQtY29sb3IpO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDp2YWxpZDpmb2N1cyxcbi5mb3JtLWNoZWNrLWlucHV0LmlzLXZhbGlkOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKHZhcigtLWJzLXN1Y2Nlc3MtcmdiKSwgMC4yNSk7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OnZhbGlkIH4gLmZvcm0tY2hlY2stbGFiZWwsXG4uZm9ybS1jaGVjay1pbnB1dC5pcy12YWxpZCB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgY29sb3I6IHZhcigtLWJzLWZvcm0tdmFsaWQtY29sb3IpO1xufVxuXG4uZm9ybS1jaGVjay1pbmxpbmUgLmZvcm0tY2hlY2staW5wdXQgfiAudmFsaWQtZmVlZGJhY2sge1xuICBtYXJnaW4tbGVmdDogMC41ZW07XG59XG5cbi53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2w6bm90KDpmb2N1cyk6dmFsaWQsXG4ud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmlucHV0LWdyb3VwID4gLnNlbGVjdDItc2VsZWN0aW9uOm5vdCg6Zm9jdXMpOnZhbGlkLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCA+IC5zZWxlY3QyLXNlbGVjdGlvbjpub3QoOmZvY3VzKTp2YWxpZCxcbi5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2w6bm90KDpmb2N1cykuaXMtdmFsaWQsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmlucHV0LWdyb3VwID4gLnNlbGVjdDItc2VsZWN0aW9uOm5vdCg6Zm9jdXMpLmlzLXZhbGlkLFxuLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwID4gLmZvcm0tc2VsZWN0Om5vdCg6Zm9jdXMpOnZhbGlkLFxuLmlucHV0LWdyb3VwID4gLmZvcm0tc2VsZWN0Om5vdCg6Zm9jdXMpLmlzLXZhbGlkLFxuLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwID4gLmZvcm0tZmxvYXRpbmc6bm90KDpmb2N1cy13aXRoaW4pOnZhbGlkLFxuLmlucHV0LWdyb3VwID4gLmZvcm0tZmxvYXRpbmc6bm90KDpmb2N1cy13aXRoaW4pLmlzLXZhbGlkIHtcbiAgei1pbmRleDogMztcbn1cblxuLmludmFsaWQtZmVlZGJhY2ssXG4uZXJyb3ItaGVscC1ibG9jayB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIGNvbG9yOiB2YXIoLS1icy1mb3JtLWludmFsaWQtY29sb3IpO1xufVxuXG4uaW52YWxpZC10b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIHotaW5kZXg6IDU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XG4gIG1hcmdpbi10b3A6IDAuMXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWRhbmdlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMpO1xufVxuXG4ud2FzLXZhbGlkYXRlZCA6aW52YWxpZCB+IC5pbnZhbGlkLWZlZWRiYWNrLFxuLndhcy12YWxpZGF0ZWQgOmludmFsaWQgfiAuZXJyb3ItaGVscC1ibG9jayxcbi53YXMtdmFsaWRhdGVkIDppbnZhbGlkIH4gLmludmFsaWQtdG9vbHRpcCxcbi5pcy1pbnZhbGlkIH4gLmludmFsaWQtZmVlZGJhY2ssXG4uaXMtaW52YWxpZCB+IC5lcnJvci1oZWxwLWJsb2NrLFxuLmlzLWludmFsaWQgfiAuaW52YWxpZC10b29sdGlwIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6aW52YWxpZCxcbi53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246aW52YWxpZCxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1zZWxlY3Rpb246aW52YWxpZCxcbi5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZCxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuaXMtaW52YWxpZC5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtZm9ybS1pbnZhbGlkLWJvcmRlci1jb2xvcik7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMS41ZW0gKyAwLjc1cmVtKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxMiAxMicgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyBmaWxsPSdub25lJyBzdHJva2U9JyUyM2Y0NDMzNiclM2UlM2NjaXJjbGUgY3g9JzYnIGN5PSc2JyByPSc0LjUnLyUzZSUzY3BhdGggc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgZD0nTTUuOCAzLjZoLjRMNiA2LjV6Jy8lM2UlM2NjaXJjbGUgY3g9JzYnIGN5PSc4LjInIHI9Jy42JyBmaWxsPSclMjNmNDQzMzYnIHN0cm9rZT0nbm9uZScvJTNlJTNjL3N2ZyUzZVwiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2FsYygwLjM3NWVtICsgMC4xODc1cmVtKSBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY2FsYygwLjc1ZW0gKyAwLjM3NXJlbSkgY2FsYygwLjc1ZW0gKyAwLjM3NXJlbSk7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6aW52YWxpZDpmb2N1cyxcbi53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246aW52YWxpZDpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1zZWxlY3Rpb246aW52YWxpZDpmb2N1cyxcbi5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZDpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuaXMtaW52YWxpZC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtZm9ybS1pbnZhbGlkLWJvcmRlci1jb2xvcik7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSh2YXIoLS1icy1kYW5nZXItcmdiKSwgMC4yNSk7XG59XG5cbi53YXMtdmFsaWRhdGVkIHRleHRhcmVhLmZvcm0tY29udHJvbDppbnZhbGlkLFxuLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IHRleHRhcmVhLnNlbGVjdDItc2VsZWN0aW9uOmludmFsaWQsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLndhcy12YWxpZGF0ZWQgdGV4dGFyZWEuc2VsZWN0Mi1zZWxlY3Rpb246aW52YWxpZCxcbnRleHRhcmVhLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IHRleHRhcmVhLmlzLWludmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDEuNWVtICsgMC43NXJlbSk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjYWxjKDAuMzc1ZW0gKyAwLjE4NzVyZW0pIHJpZ2h0IGNhbGMoMC4zNzVlbSArIDAuMTg3NXJlbSk7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5mb3JtLXNlbGVjdDppbnZhbGlkLFxuLmZvcm0tc2VsZWN0LmlzLWludmFsaWQge1xuICBib3JkZXItY29sb3I6IHZhcigtLWJzLWZvcm0taW52YWxpZC1ib3JkZXItY29sb3IpO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1zZWxlY3Q6aW52YWxpZDpub3QoW211bHRpcGxlXSk6bm90KFtzaXplXSksXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1zZWxlY3Q6aW52YWxpZDpub3QoW211bHRpcGxlXSlbc2l6ZT1cIjFcIl0sXG4uZm9ybS1zZWxlY3QuaXMtaW52YWxpZDpub3QoW211bHRpcGxlXSk6bm90KFtzaXplXSksXG4uZm9ybS1zZWxlY3QuaXMtaW52YWxpZDpub3QoW211bHRpcGxlXSlbc2l6ZT1cIjFcIl0ge1xuICAtLWJzLWZvcm0tc2VsZWN0LWJnLWljb246IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTIgMTInIHdpZHRoPScxMicgaGVpZ2h0PScxMicgZmlsbD0nbm9uZScgc3Ryb2tlPSclMjNmNDQzMzYnJTNlJTNjY2lyY2xlIGN4PSc2JyBjeT0nNicgcj0nNC41Jy8lM2UlM2NwYXRoIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIGQ9J001LjggMy42aC40TDYgNi41eicvJTNlJTNjY2lyY2xlIGN4PSc2JyBjeT0nOC4yJyByPScuNicgZmlsbD0nJTIzZjQ0MzM2JyBzdHJva2U9J25vbmUnLyUzZSUzYy9zdmclM2VcIik7XG4gIHBhZGRpbmctcmlnaHQ6IDQuMTI1cmVtO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAwLjc1cmVtIGNlbnRlciwgY2VudGVyIHJpZ2h0IDIuMjVyZW07XG4gIGJhY2tncm91bmQtc2l6ZTogMTZweCAxMnB4LCBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKSBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKTtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmZvcm0tc2VsZWN0OmludmFsaWQ6Zm9jdXMsXG4uZm9ybS1zZWxlY3QuaXMtaW52YWxpZDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtZm9ybS1pbnZhbGlkLWJvcmRlci1jb2xvcik7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSh2YXIoLS1icy1kYW5nZXItcmdiKSwgMC4yNSk7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2wtY29sb3I6aW52YWxpZCxcbi5mb3JtLWNvbnRyb2wtY29sb3IuaXMtaW52YWxpZCB7XG4gIHdpZHRoOiBjYWxjKDNyZW0gKyBjYWxjKDEuNWVtICsgMC43NXJlbSkpO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDppbnZhbGlkLFxuLmZvcm0tY2hlY2staW5wdXQuaXMtaW52YWxpZCB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtZm9ybS1pbnZhbGlkLWJvcmRlci1jb2xvcik7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OmludmFsaWQ6Y2hlY2tlZCxcbi5mb3JtLWNoZWNrLWlucHV0LmlzLWludmFsaWQ6Y2hlY2tlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWZvcm0taW52YWxpZC1jb2xvcik7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OmludmFsaWQ6Zm9jdXMsXG4uZm9ybS1jaGVjay1pbnB1dC5pcy1pbnZhbGlkOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKHZhcigtLWJzLWRhbmdlci1yZ2IpLCAwLjI1KTtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6aW52YWxpZCB+IC5mb3JtLWNoZWNrLWxhYmVsLFxuLmZvcm0tY2hlY2staW5wdXQuaXMtaW52YWxpZCB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgY29sb3I6IHZhcigtLWJzLWZvcm0taW52YWxpZC1jb2xvcik7XG59XG5cbi5mb3JtLWNoZWNrLWlubGluZSAuZm9ybS1jaGVjay1pbnB1dCB+IC5pbnZhbGlkLWZlZWRiYWNrLFxuLmZvcm0tY2hlY2staW5saW5lIC5mb3JtLWNoZWNrLWlucHV0IH4gLmVycm9yLWhlbHAtYmxvY2sge1xuICBtYXJnaW4tbGVmdDogMC41ZW07XG59XG5cbi53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2w6bm90KDpmb2N1cyk6aW52YWxpZCxcbi53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuaW5wdXQtZ3JvdXAgPiAuc2VsZWN0Mi1zZWxlY3Rpb246bm90KDpmb2N1cyk6aW52YWxpZCxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgPiAuc2VsZWN0Mi1zZWxlY3Rpb246bm90KDpmb2N1cyk6aW52YWxpZCxcbi5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2w6bm90KDpmb2N1cykuaXMtaW52YWxpZCxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuaW5wdXQtZ3JvdXAgPiAuc2VsZWN0Mi1zZWxlY3Rpb246bm90KDpmb2N1cykuaXMtaW52YWxpZCxcbi53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cCA+IC5mb3JtLXNlbGVjdDpub3QoOmZvY3VzKTppbnZhbGlkLFxuLmlucHV0LWdyb3VwID4gLmZvcm0tc2VsZWN0Om5vdCg6Zm9jdXMpLmlzLWludmFsaWQsXG4ud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgPiAuZm9ybS1mbG9hdGluZzpub3QoOmZvY3VzLXdpdGhpbik6aW52YWxpZCxcbi5pbnB1dC1ncm91cCA+IC5mb3JtLWZsb2F0aW5nOm5vdCg6Zm9jdXMtd2l0aGluKS5pcy1pbnZhbGlkIHtcbiAgei1pbmRleDogNDtcbn1cblxuLmJ0biB7XG4gIC0tYnMtYnRuLXBhZGRpbmcteDogMjBweDtcbiAgLS1icy1idG4tcGFkZGluZy15OiA4cHg7XG4gIC0tYnMtYnRuLWZvbnQtZmFtaWx5OiA7XG4gIC0tYnMtYnRuLWZvbnQtc2l6ZTogMXJlbTtcbiAgLS1icy1idG4tZm9udC13ZWlnaHQ6IDUwMDtcbiAgLS1icy1idG4tbGluZS1oZWlnaHQ6IDEuNTtcbiAgLS1icy1idG4tY29sb3I6IHZhcigtLWJzLWJvZHktY29sb3IpO1xuICAtLWJzLWJ0bi1iZzogdHJhbnNwYXJlbnQ7XG4gIC0tYnMtYnRuLWJvcmRlci13aWR0aDogdmFyKC0tYnMtYm9yZGVyLXdpZHRoKTtcbiAgLS1icy1idG4tYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLS1icy1idG4tYm9yZGVyLXJhZGl1czogMDtcbiAgLS1icy1idG4taG92ZXItYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLS1icy1idG4tYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpLCAwIDFweCAxcHggcmdiYSg1MSwgNTEsIDUxLCAwLjA3NSk7XG4gIC0tYnMtYnRuLWRpc2FibGVkLW9wYWNpdHk6IDAuNjU7XG4gIC0tYnMtYnRuLWZvY3VzLWJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSh2YXIoLS1icy1idG4tZm9jdXMtc2hhZG93LXJnYiksIC41KTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiB2YXIoLS1icy1idG4tcGFkZGluZy15KSB2YXIoLS1icy1idG4tcGFkZGluZy14KTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWJzLWJ0bi1mb250LWZhbWlseSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYnMtYnRuLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1icy1idG4tZm9udC13ZWlnaHQpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYnMtYnRuLWxpbmUtaGVpZ2h0KTtcbiAgY29sb3I6IHZhcigtLWJzLWJ0bi1jb2xvcik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBib3JkZXI6IHZhcigtLWJzLWJ0bi1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLWJ0bi1ib3JkZXItY29sb3IpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1icy1idG4tYm9yZGVyLXJhZGl1cyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWJ0bi1iZyk7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5idG4ge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cblxuLmJ0bjpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1icy1idG4taG92ZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1idG4taG92ZXItYmcpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWJzLWJ0bi1ob3Zlci1ib3JkZXItY29sb3IpO1xufVxuXG4uYnRuLWNoZWNrICsgLmJ0bjpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1icy1idG4tY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1idG4tYmcpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWJzLWJ0bi1ib3JkZXItY29sb3IpO1xufVxuXG4uYnRuOmZvY3VzLXZpc2libGUge1xuICBjb2xvcjogdmFyKC0tYnMtYnRuLWhvdmVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtYnRuLWhvdmVyLWJnKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1idG4taG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogdmFyKC0tYnMtYnRuLWZvY3VzLWJveC1zaGFkb3cpO1xufVxuXG4uYnRuLWNoZWNrOmZvY3VzLXZpc2libGUgKyAuYnRuIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1idG4taG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogdmFyKC0tYnMtYnRuLWZvY3VzLWJveC1zaGFkb3cpO1xufVxuXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLFxuOm5vdCguYnRuLWNoZWNrKSArIC5idG46YWN0aXZlLFxuLmJ0bjpmaXJzdC1jaGlsZDphY3RpdmUsXG4uYnRuLmFjdGl2ZSxcbi5idG4uc2hvdyB7XG4gIGNvbG9yOiB2YXIoLS1icy1idG4tYWN0aXZlLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtYnRuLWFjdGl2ZS1iZyk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtYnRuLWFjdGl2ZS1ib3JkZXItY29sb3IpO1xufVxuXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuOmZvY3VzLXZpc2libGUsXG46bm90KC5idG4tY2hlY2spICsgLmJ0bjphY3RpdmU6Zm9jdXMtdmlzaWJsZSxcbi5idG46Zmlyc3QtY2hpbGQ6YWN0aXZlOmZvY3VzLXZpc2libGUsXG4uYnRuLmFjdGl2ZTpmb2N1cy12aXNpYmxlLFxuLmJ0bi5zaG93OmZvY3VzLXZpc2libGUge1xuICBib3gtc2hhZG93OiB2YXIoLS1icy1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG59XG5cbi5idG46ZGlzYWJsZWQsXG4uYnRuLmRpc2FibGVkLFxuZmllbGRzZXQ6ZGlzYWJsZWQgLmJ0biB7XG4gIGNvbG9yOiB2YXIoLS1icy1idG4tZGlzYWJsZWQtY29sb3IpO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtYnRuLWRpc2FibGVkLWJnKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yKTtcbiAgb3BhY2l0eTogdmFyKC0tYnMtYnRuLWRpc2FibGVkLW9wYWNpdHkpO1xufVxuXG4uYnRuLXByaW1hcnkge1xuICAtLWJzLWJ0bi1jb2xvcjogI2ZmZmZmZjtcbiAgLS1icy1idG4tYmc6ICMxZTFlNTY7XG4gIC0tYnMtYnRuLWJvcmRlci1jb2xvcjogIzFlMWU1NjtcbiAgLS1icy1idG4taG92ZXItY29sb3I6ICNmZmZmZmY7XG4gIC0tYnMtYnRuLWhvdmVyLWJnOiAjMWExYTQ5O1xuICAtLWJzLWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6ICMxODE4NDU7XG4gIC0tYnMtYnRuLWZvY3VzLXNoYWRvdy1yZ2I6IDY0LCA2NCwgMTExO1xuICAtLWJzLWJ0bi1hY3RpdmUtY29sb3I6ICNmZmZmZmY7XG4gIC0tYnMtYnRuLWFjdGl2ZS1iZzogIzE4MTg0NTtcbiAgLS1icy1idG4tYWN0aXZlLWJvcmRlci1jb2xvcjogIzE3MTc0MTtcbiAgLS1icy1idG4tYWN0aXZlLXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoNTEsIDUxLCA1MSwgMC4xMjUpO1xuICAtLWJzLWJ0bi1kaXNhYmxlZC1jb2xvcjogI2ZmZmZmZjtcbiAgLS1icy1idG4tZGlzYWJsZWQtYmc6ICMxZTFlNTY7XG4gIC0tYnMtYnRuLWRpc2FibGVkLWJvcmRlci1jb2xvcjogIzFlMWU1Njtcbn1cblxuLmJ0bi1zZWNvbmRhcnkge1xuICAtLWJzLWJ0bi1jb2xvcjogIzMzMzMzMztcbiAgLS1icy1idG4tYmc6ICNhMzdlYmE7XG4gIC0tYnMtYnRuLWJvcmRlci1jb2xvcjogI2EzN2ViYTtcbiAgLS1icy1idG4taG92ZXItY29sb3I6ICMzMzMzMzM7XG4gIC0tYnMtYnRuLWhvdmVyLWJnOiAjYjE5MWM0O1xuICAtLWJzLWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6ICNhYzhiYzE7XG4gIC0tYnMtYnRuLWZvY3VzLXNoYWRvdy1yZ2I6IDE0NiwgMTE1LCAxNjY7XG4gIC0tYnMtYnRuLWFjdGl2ZS1jb2xvcjogIzMzMzMzMztcbiAgLS1icy1idG4tYWN0aXZlLWJnOiAjYjU5OGM4O1xuICAtLWJzLWJ0bi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAjYWM4YmMxO1xuICAtLWJzLWJ0bi1hY3RpdmUtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSg1MSwgNTEsIDUxLCAwLjEyNSk7XG4gIC0tYnMtYnRuLWRpc2FibGVkLWNvbG9yOiAjMzMzMzMzO1xuICAtLWJzLWJ0bi1kaXNhYmxlZC1iZzogI2EzN2ViYTtcbiAgLS1icy1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAjYTM3ZWJhO1xufVxuXG4uYnRuLXN1Y2Nlc3Mge1xuICAtLWJzLWJ0bi1jb2xvcjogIzMzMzMzMztcbiAgLS1icy1idG4tYmc6ICM0Y2FmNTA7XG4gIC0tYnMtYnRuLWJvcmRlci1jb2xvcjogIzRjYWY1MDtcbiAgLS1icy1idG4taG92ZXItY29sb3I6ICMzMzMzMzM7XG4gIC0tYnMtYnRuLWhvdmVyLWJnOiAjNjdiYjZhO1xuICAtLWJzLWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6ICM1ZWI3NjI7XG4gIC0tYnMtYnRuLWZvY3VzLXNoYWRvdy1yZ2I6IDcyLCAxNTYsIDc2O1xuICAtLWJzLWJ0bi1hY3RpdmUtY29sb3I6ICMzMzMzMzM7XG4gIC0tYnMtYnRuLWFjdGl2ZS1iZzogIzcwYmY3MztcbiAgLS1icy1idG4tYWN0aXZlLWJvcmRlci1jb2xvcjogIzVlYjc2MjtcbiAgLS1icy1idG4tYWN0aXZlLXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoNTEsIDUxLCA1MSwgMC4xMjUpO1xuICAtLWJzLWJ0bi1kaXNhYmxlZC1jb2xvcjogIzMzMzMzMztcbiAgLS1icy1idG4tZGlzYWJsZWQtYmc6ICM0Y2FmNTA7XG4gIC0tYnMtYnRuLWRpc2FibGVkLWJvcmRlci1jb2xvcjogIzRjYWY1MDtcbn1cblxuLmJ0bi1pbmZvIHtcbiAgLS1icy1idG4tY29sb3I6ICMzMzMzMzM7XG4gIC0tYnMtYnRuLWJnOiAjMjE5NmYzO1xuICAtLWJzLWJ0bi1ib3JkZXItY29sb3I6ICMyMTk2ZjM7XG4gIC0tYnMtYnRuLWhvdmVyLWNvbG9yOiAjMzMzMzMzO1xuICAtLWJzLWJ0bi1ob3Zlci1iZzogIzQyYTZmNTtcbiAgLS1icy1idG4taG92ZXItYm9yZGVyLWNvbG9yOiAjMzdhMWY0O1xuICAtLWJzLWJ0bi1mb2N1cy1zaGFkb3ctcmdiOiAzNiwgMTM1LCAyMTQ7XG4gIC0tYnMtYnRuLWFjdGl2ZS1jb2xvcjogIzMzMzMzMztcbiAgLS1icy1idG4tYWN0aXZlLWJnOiAjNGRhYmY1O1xuICAtLWJzLWJ0bi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAjMzdhMWY0O1xuICAtLWJzLWJ0bi1hY3RpdmUtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSg1MSwgNTEsIDUxLCAwLjEyNSk7XG4gIC0tYnMtYnRuLWRpc2FibGVkLWNvbG9yOiAjMzMzMzMzO1xuICAtLWJzLWJ0bi1kaXNhYmxlZC1iZzogIzIxOTZmMztcbiAgLS1icy1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAjMjE5NmYzO1xufVxuXG4uYnRuLXdhcm5pbmcge1xuICAtLWJzLWJ0bi1jb2xvcjogIzMzMzMzMztcbiAgLS1icy1idG4tYmc6ICNmZjk4MDA7XG4gIC0tYnMtYnRuLWJvcmRlci1jb2xvcjogI2ZmOTgwMDtcbiAgLS1icy1idG4taG92ZXItY29sb3I6ICMzMzMzMzM7XG4gIC0tYnMtYnRuLWhvdmVyLWJnOiAjZmZhNzI2O1xuICAtLWJzLWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6ICNmZmEyMWE7XG4gIC0tYnMtYnRuLWZvY3VzLXNoYWRvdy1yZ2I6IDIyNCwgMTM3LCA4O1xuICAtLWJzLWJ0bi1hY3RpdmUtY29sb3I6ICMzMzMzMzM7XG4gIC0tYnMtYnRuLWFjdGl2ZS1iZzogI2ZmYWQzMztcbiAgLS1icy1idG4tYWN0aXZlLWJvcmRlci1jb2xvcjogI2ZmYTIxYTtcbiAgLS1icy1idG4tYWN0aXZlLXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoNTEsIDUxLCA1MSwgMC4xMjUpO1xuICAtLWJzLWJ0bi1kaXNhYmxlZC1jb2xvcjogIzMzMzMzMztcbiAgLS1icy1idG4tZGlzYWJsZWQtYmc6ICNmZjk4MDA7XG4gIC0tYnMtYnRuLWRpc2FibGVkLWJvcmRlci1jb2xvcjogI2ZmOTgwMDtcbn1cblxuLmJ0bi1kYW5nZXIge1xuICAtLWJzLWJ0bi1jb2xvcjogI2ZmZmZmZjtcbiAgLS1icy1idG4tYmc6ICNmNDQzMzY7XG4gIC0tYnMtYnRuLWJvcmRlci1jb2xvcjogI2Y0NDMzNjtcbiAgLS1icy1idG4taG92ZXItY29sb3I6ICNmZmZmZmY7XG4gIC0tYnMtYnRuLWhvdmVyLWJnOiAjY2YzOTJlO1xuICAtLWJzLWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6ICNjMzM2MmI7XG4gIC0tYnMtYnRuLWZvY3VzLXNoYWRvdy1yZ2I6IDI0NiwgOTUsIDg0O1xuICAtLWJzLWJ0bi1hY3RpdmUtY29sb3I6ICNmZmZmZmY7XG4gIC0tYnMtYnRuLWFjdGl2ZS1iZzogI2MzMzYyYjtcbiAgLS1icy1idG4tYWN0aXZlLWJvcmRlci1jb2xvcjogI2I3MzIyOTtcbiAgLS1icy1idG4tYWN0aXZlLXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoNTEsIDUxLCA1MSwgMC4xMjUpO1xuICAtLWJzLWJ0bi1kaXNhYmxlZC1jb2xvcjogI2ZmZmZmZjtcbiAgLS1icy1idG4tZGlzYWJsZWQtYmc6ICNmNDQzMzY7XG4gIC0tYnMtYnRuLWRpc2FibGVkLWJvcmRlci1jb2xvcjogI2Y0NDMzNjtcbn1cblxuLmJ0bi1saWdodCB7XG4gIC0tYnMtYnRuLWNvbG9yOiAjMzMzMzMzO1xuICAtLWJzLWJ0bi1iZzogI2Y4ZjlmYTtcbiAgLS1icy1idG4tYm9yZGVyLWNvbG9yOiAjZjhmOWZhO1xuICAtLWJzLWJ0bi1ob3Zlci1jb2xvcjogIzMzMzMzMztcbiAgLS1icy1idG4taG92ZXItYmc6ICNkM2Q0ZDU7XG4gIC0tYnMtYnRuLWhvdmVyLWJvcmRlci1jb2xvcjogI2M2YzdjODtcbiAgLS1icy1idG4tZm9jdXMtc2hhZG93LXJnYjogMjE4LCAyMTksIDIyMDtcbiAgLS1icy1idG4tYWN0aXZlLWNvbG9yOiAjMzMzMzMzO1xuICAtLWJzLWJ0bi1hY3RpdmUtYmc6ICNjNmM3Yzg7XG4gIC0tYnMtYnRuLWFjdGl2ZS1ib3JkZXItY29sb3I6ICNiYWJiYmM7XG4gIC0tYnMtYnRuLWFjdGl2ZS1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDUxLCA1MSwgNTEsIDAuMTI1KTtcbiAgLS1icy1idG4tZGlzYWJsZWQtY29sb3I6ICMzMzMzMzM7XG4gIC0tYnMtYnRuLWRpc2FibGVkLWJnOiAjZjhmOWZhO1xuICAtLWJzLWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICNmOGY5ZmE7XG59XG5cbi5idG4tZGFyayB7XG4gIC0tYnMtYnRuLWNvbG9yOiAjZmZmZmZmO1xuICAtLWJzLWJ0bi1iZzogIzIxMjUyOTtcbiAgLS1icy1idG4tYm9yZGVyLWNvbG9yOiAjMjEyNTI5O1xuICAtLWJzLWJ0bi1ob3Zlci1jb2xvcjogI2ZmZmZmZjtcbiAgLS1icy1idG4taG92ZXItYmc6ICM0MjQ2NDk7XG4gIC0tYnMtYnRuLWhvdmVyLWJvcmRlci1jb2xvcjogIzM3M2IzZTtcbiAgLS1icy1idG4tZm9jdXMtc2hhZG93LXJnYjogNjYsIDcwLCA3MztcbiAgLS1icy1idG4tYWN0aXZlLWNvbG9yOiAjZmZmZmZmO1xuICAtLWJzLWJ0bi1hY3RpdmUtYmc6ICM0ZDUxNTQ7XG4gIC0tYnMtYnRuLWFjdGl2ZS1ib3JkZXItY29sb3I6ICMzNzNiM2U7XG4gIC0tYnMtYnRuLWFjdGl2ZS1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDUxLCA1MSwgNTEsIDAuMTI1KTtcbiAgLS1icy1idG4tZGlzYWJsZWQtY29sb3I6ICNmZmZmZmY7XG4gIC0tYnMtYnRuLWRpc2FibGVkLWJnOiAjMjEyNTI5O1xuICAtLWJzLWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICMyMTI1Mjk7XG59XG5cbi5idG4tb3V0bGluZS1wcmltYXJ5IHtcbiAgLS1icy1idG4tY29sb3I6ICMxZTFlNTY7XG4gIC0tYnMtYnRuLWJvcmRlci1jb2xvcjogIzFlMWU1NjtcbiAgLS1icy1idG4taG92ZXItY29sb3I6ICNmZmZmZmY7XG4gIC0tYnMtYnRuLWhvdmVyLWJnOiAjMWUxZTU2O1xuICAtLWJzLWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6ICMxZTFlNTY7XG4gIC0tYnMtYnRuLWZvY3VzLXNoYWRvdy1yZ2I6IDMwLCAzMCwgODY7XG4gIC0tYnMtYnRuLWFjdGl2ZS1jb2xvcjogI2ZmZmZmZjtcbiAgLS1icy1idG4tYWN0aXZlLWJnOiAjMWUxZTU2O1xuICAtLWJzLWJ0bi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAjMWUxZTU2O1xuICAtLWJzLWJ0bi1hY3RpdmUtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSg1MSwgNTEsIDUxLCAwLjEyNSk7XG4gIC0tYnMtYnRuLWRpc2FibGVkLWNvbG9yOiAjMWUxZTU2O1xuICAtLWJzLWJ0bi1kaXNhYmxlZC1iZzogdHJhbnNwYXJlbnQ7XG4gIC0tYnMtYnRuLWRpc2FibGVkLWJvcmRlci1jb2xvcjogIzFlMWU1NjtcbiAgLS1icy1ncmFkaWVudDogbm9uZTtcbn1cblxuLmJ0bi1vdXRsaW5lLXNlY29uZGFyeSB7XG4gIC0tYnMtYnRuLWNvbG9yOiAjYTM3ZWJhO1xuICAtLWJzLWJ0bi1ib3JkZXItY29sb3I6ICNhMzdlYmE7XG4gIC0tYnMtYnRuLWhvdmVyLWNvbG9yOiAjMzMzMzMzO1xuICAtLWJzLWJ0bi1ob3Zlci1iZzogI2EzN2ViYTtcbiAgLS1icy1idG4taG92ZXItYm9yZGVyLWNvbG9yOiAjYTM3ZWJhO1xuICAtLWJzLWJ0bi1mb2N1cy1zaGFkb3ctcmdiOiAxNjMsIDEyNiwgMTg2O1xuICAtLWJzLWJ0bi1hY3RpdmUtY29sb3I6ICMzMzMzMzM7XG4gIC0tYnMtYnRuLWFjdGl2ZS1iZzogI2EzN2ViYTtcbiAgLS1icy1idG4tYWN0aXZlLWJvcmRlci1jb2xvcjogI2EzN2ViYTtcbiAgLS1icy1idG4tYWN0aXZlLXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoNTEsIDUxLCA1MSwgMC4xMjUpO1xuICAtLWJzLWJ0bi1kaXNhYmxlZC1jb2xvcjogI2EzN2ViYTtcbiAgLS1icy1idG4tZGlzYWJsZWQtYmc6IHRyYW5zcGFyZW50O1xuICAtLWJzLWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICNhMzdlYmE7XG4gIC0tYnMtZ3JhZGllbnQ6IG5vbmU7XG59XG5cbi5idG4tb3V0bGluZS1zdWNjZXNzIHtcbiAgLS1icy1idG4tY29sb3I6ICM0Y2FmNTA7XG4gIC0tYnMtYnRuLWJvcmRlci1jb2xvcjogIzRjYWY1MDtcbiAgLS1icy1idG4taG92ZXItY29sb3I6ICMzMzMzMzM7XG4gIC0tYnMtYnRuLWhvdmVyLWJnOiAjNGNhZjUwO1xuICAtLWJzLWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6ICM0Y2FmNTA7XG4gIC0tYnMtYnRuLWZvY3VzLXNoYWRvdy1yZ2I6IDc2LCAxNzUsIDgwO1xuICAtLWJzLWJ0bi1hY3RpdmUtY29sb3I6ICMzMzMzMzM7XG4gIC0tYnMtYnRuLWFjdGl2ZS1iZzogIzRjYWY1MDtcbiAgLS1icy1idG4tYWN0aXZlLWJvcmRlci1jb2xvcjogIzRjYWY1MDtcbiAgLS1icy1idG4tYWN0aXZlLXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoNTEsIDUxLCA1MSwgMC4xMjUpO1xuICAtLWJzLWJ0bi1kaXNhYmxlZC1jb2xvcjogIzRjYWY1MDtcbiAgLS1icy1idG4tZGlzYWJsZWQtYmc6IHRyYW5zcGFyZW50O1xuICAtLWJzLWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICM0Y2FmNTA7XG4gIC0tYnMtZ3JhZGllbnQ6IG5vbmU7XG59XG5cbi5idG4tb3V0bGluZS1pbmZvIHtcbiAgLS1icy1idG4tY29sb3I6ICMyMTk2ZjM7XG4gIC0tYnMtYnRuLWJvcmRlci1jb2xvcjogIzIxOTZmMztcbiAgLS1icy1idG4taG92ZXItY29sb3I6ICMzMzMzMzM7XG4gIC0tYnMtYnRuLWhvdmVyLWJnOiAjMjE5NmYzO1xuICAtLWJzLWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6ICMyMTk2ZjM7XG4gIC0tYnMtYnRuLWZvY3VzLXNoYWRvdy1yZ2I6IDMzLCAxNTAsIDI0MztcbiAgLS1icy1idG4tYWN0aXZlLWNvbG9yOiAjMzMzMzMzO1xuICAtLWJzLWJ0bi1hY3RpdmUtYmc6ICMyMTk2ZjM7XG4gIC0tYnMtYnRuLWFjdGl2ZS1ib3JkZXItY29sb3I6ICMyMTk2ZjM7XG4gIC0tYnMtYnRuLWFjdGl2ZS1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDUxLCA1MSwgNTEsIDAuMTI1KTtcbiAgLS1icy1idG4tZGlzYWJsZWQtY29sb3I6ICMyMTk2ZjM7XG4gIC0tYnMtYnRuLWRpc2FibGVkLWJnOiB0cmFuc3BhcmVudDtcbiAgLS1icy1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAjMjE5NmYzO1xuICAtLWJzLWdyYWRpZW50OiBub25lO1xufVxuXG4uYnRuLW91dGxpbmUtd2FybmluZyB7XG4gIC0tYnMtYnRuLWNvbG9yOiAjZmY5ODAwO1xuICAtLWJzLWJ0bi1ib3JkZXItY29sb3I6ICNmZjk4MDA7XG4gIC0tYnMtYnRuLWhvdmVyLWNvbG9yOiAjMzMzMzMzO1xuICAtLWJzLWJ0bi1ob3Zlci1iZzogI2ZmOTgwMDtcbiAgLS1icy1idG4taG92ZXItYm9yZGVyLWNvbG9yOiAjZmY5ODAwO1xuICAtLWJzLWJ0bi1mb2N1cy1zaGFkb3ctcmdiOiAyNTUsIDE1MiwgMDtcbiAgLS1icy1idG4tYWN0aXZlLWNvbG9yOiAjMzMzMzMzO1xuICAtLWJzLWJ0bi1hY3RpdmUtYmc6ICNmZjk4MDA7XG4gIC0tYnMtYnRuLWFjdGl2ZS1ib3JkZXItY29sb3I6ICNmZjk4MDA7XG4gIC0tYnMtYnRuLWFjdGl2ZS1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDUxLCA1MSwgNTEsIDAuMTI1KTtcbiAgLS1icy1idG4tZGlzYWJsZWQtY29sb3I6ICNmZjk4MDA7XG4gIC0tYnMtYnRuLWRpc2FibGVkLWJnOiB0cmFuc3BhcmVudDtcbiAgLS1icy1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAjZmY5ODAwO1xuICAtLWJzLWdyYWRpZW50OiBub25lO1xufVxuXG4uYnRuLW91dGxpbmUtZGFuZ2VyIHtcbiAgLS1icy1idG4tY29sb3I6ICNmNDQzMzY7XG4gIC0tYnMtYnRuLWJvcmRlci1jb2xvcjogI2Y0NDMzNjtcbiAgLS1icy1idG4taG92ZXItY29sb3I6ICNmZmZmZmY7XG4gIC0tYnMtYnRuLWhvdmVyLWJnOiAjZjQ0MzM2O1xuICAtLWJzLWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6ICNmNDQzMzY7XG4gIC0tYnMtYnRuLWZvY3VzLXNoYWRvdy1yZ2I6IDI0NCwgNjcsIDU0O1xuICAtLWJzLWJ0bi1hY3RpdmUtY29sb3I6ICNmZmZmZmY7XG4gIC0tYnMtYnRuLWFjdGl2ZS1iZzogI2Y0NDMzNjtcbiAgLS1icy1idG4tYWN0aXZlLWJvcmRlci1jb2xvcjogI2Y0NDMzNjtcbiAgLS1icy1idG4tYWN0aXZlLXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoNTEsIDUxLCA1MSwgMC4xMjUpO1xuICAtLWJzLWJ0bi1kaXNhYmxlZC1jb2xvcjogI2Y0NDMzNjtcbiAgLS1icy1idG4tZGlzYWJsZWQtYmc6IHRyYW5zcGFyZW50O1xuICAtLWJzLWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICNmNDQzMzY7XG4gIC0tYnMtZ3JhZGllbnQ6IG5vbmU7XG59XG5cbi5idG4tb3V0bGluZS1saWdodCB7XG4gIC0tYnMtYnRuLWNvbG9yOiAjZjhmOWZhO1xuICAtLWJzLWJ0bi1ib3JkZXItY29sb3I6ICNmOGY5ZmE7XG4gIC0tYnMtYnRuLWhvdmVyLWNvbG9yOiAjMzMzMzMzO1xuICAtLWJzLWJ0bi1ob3Zlci1iZzogI2Y4ZjlmYTtcbiAgLS1icy1idG4taG92ZXItYm9yZGVyLWNvbG9yOiAjZjhmOWZhO1xuICAtLWJzLWJ0bi1mb2N1cy1zaGFkb3ctcmdiOiAyNDgsIDI0OSwgMjUwO1xuICAtLWJzLWJ0bi1hY3RpdmUtY29sb3I6ICMzMzMzMzM7XG4gIC0tYnMtYnRuLWFjdGl2ZS1iZzogI2Y4ZjlmYTtcbiAgLS1icy1idG4tYWN0aXZlLWJvcmRlci1jb2xvcjogI2Y4ZjlmYTtcbiAgLS1icy1idG4tYWN0aXZlLXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoNTEsIDUxLCA1MSwgMC4xMjUpO1xuICAtLWJzLWJ0bi1kaXNhYmxlZC1jb2xvcjogI2Y4ZjlmYTtcbiAgLS1icy1idG4tZGlzYWJsZWQtYmc6IHRyYW5zcGFyZW50O1xuICAtLWJzLWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICNmOGY5ZmE7XG4gIC0tYnMtZ3JhZGllbnQ6IG5vbmU7XG59XG5cbi5idG4tb3V0bGluZS1kYXJrIHtcbiAgLS1icy1idG4tY29sb3I6ICMyMTI1Mjk7XG4gIC0tYnMtYnRuLWJvcmRlci1jb2xvcjogIzIxMjUyOTtcbiAgLS1icy1idG4taG92ZXItY29sb3I6ICNmZmZmZmY7XG4gIC0tYnMtYnRuLWhvdmVyLWJnOiAjMjEyNTI5O1xuICAtLWJzLWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6ICMyMTI1Mjk7XG4gIC0tYnMtYnRuLWZvY3VzLXNoYWRvdy1yZ2I6IDMzLCAzNywgNDE7XG4gIC0tYnMtYnRuLWFjdGl2ZS1jb2xvcjogI2ZmZmZmZjtcbiAgLS1icy1idG4tYWN0aXZlLWJnOiAjMjEyNTI5O1xuICAtLWJzLWJ0bi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAjMjEyNTI5O1xuICAtLWJzLWJ0bi1hY3RpdmUtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSg1MSwgNTEsIDUxLCAwLjEyNSk7XG4gIC0tYnMtYnRuLWRpc2FibGVkLWNvbG9yOiAjMjEyNTI5O1xuICAtLWJzLWJ0bi1kaXNhYmxlZC1iZzogdHJhbnNwYXJlbnQ7XG4gIC0tYnMtYnRuLWRpc2FibGVkLWJvcmRlci1jb2xvcjogIzIxMjUyOTtcbiAgLS1icy1ncmFkaWVudDogbm9uZTtcbn1cblxuLmJ0bi1saW5rIHtcbiAgLS1icy1idG4tZm9udC13ZWlnaHQ6IDQwMDtcbiAgLS1icy1idG4tY29sb3I6IHZhcigtLWJzLWxpbmstY29sb3IpO1xuICAtLWJzLWJ0bi1iZzogdHJhbnNwYXJlbnQ7XG4gIC0tYnMtYnRuLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tYnMtYnRuLWhvdmVyLWNvbG9yOiB2YXIoLS1icy1saW5rLWhvdmVyLWNvbG9yKTtcbiAgLS1icy1idG4taG92ZXItYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLS1icy1idG4tYWN0aXZlLWNvbG9yOiB2YXIoLS1icy1saW5rLWhvdmVyLWNvbG9yKTtcbiAgLS1icy1idG4tYWN0aXZlLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tYnMtYnRuLWRpc2FibGVkLWNvbG9yOiAjNmM3NTdkO1xuICAtLWJzLWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLWJzLWJ0bi1ib3gtc2hhZG93OiAwIDAgMCAjMDAwO1xuICAtLWJzLWJ0bi1mb2N1cy1zaGFkb3ctcmdiOiA2NCwgNjQsIDExMTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5idG4tbGluazpmb2N1cy12aXNpYmxlIHtcbiAgY29sb3I6IHZhcigtLWJzLWJ0bi1jb2xvcik7XG59XG5cbi5idG4tbGluazpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1icy1idG4taG92ZXItY29sb3IpO1xufVxuXG4uYnRuLWxnLFxuLmJ0bi1ncm91cC1sZyA+IC5idG4ge1xuICAtLWJzLWJ0bi1wYWRkaW5nLXk6IDAuNXJlbTtcbiAgLS1icy1idG4tcGFkZGluZy14OiAxcmVtO1xuICAtLWJzLWJ0bi1mb250LXNpemU6IDEuMTI1cmVtO1xuICAtLWJzLWJ0bi1ib3JkZXItcmFkaXVzOiAwO1xufVxuXG4uYnRuLXNtLFxuLmJ0bi1ncm91cC1zbSA+IC5idG4ge1xuICAtLWJzLWJ0bi1wYWRkaW5nLXk6IDAuMjVyZW07XG4gIC0tYnMtYnRuLXBhZGRpbmcteDogMC41cmVtO1xuICAtLWJzLWJ0bi1mb250LXNpemU6IDAuODc1cmVtO1xuICAtLWJzLWJ0bi1ib3JkZXItcmFkaXVzOiAwO1xufVxuXG4uZmFkZSB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgbGluZWFyO1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuZmFkZSB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuXG4uZmFkZTpub3QoLnNob3cpIHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmNvbGxhcHNlOm5vdCguc2hvdykge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uY29sbGFwc2luZyB7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuMzVzIGVhc2U7XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5jb2xsYXBzaW5nIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbi5jb2xsYXBzaW5nLmNvbGxhcHNlLWhvcml6b250YWwge1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiBhdXRvO1xuICB0cmFuc2l0aW9uOiB3aWR0aCAwLjM1cyBlYXNlO1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuY29sbGFwc2luZy5jb2xsYXBzZS1ob3Jpem9udGFsIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbi5kcm9wdXAsXG4uZHJvcGVuZCxcbi5kcm9wZG93bixcbi5kcm9wc3RhcnQsXG4uZHJvcHVwLWNlbnRlcixcbi5kcm9wZG93bi1jZW50ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5kcm9wZG93bi10b2dnbGUge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDAuMjU1ZW07XG4gIHZlcnRpY2FsLWFsaWduOiAwLjI1NWVtO1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItdG9wOiAwLjNlbSBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0OiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYm9yZGVyLWxlZnQ6IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG4uZHJvcGRvd24tdG9nZ2xlOmVtcHR5OjphZnRlciB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4uZHJvcGRvd24tbWVudSB7XG4gIC0tYnMtZHJvcGRvd24temluZGV4OiAxMDAwO1xuICAtLWJzLWRyb3Bkb3duLW1pbi13aWR0aDogMTByZW07XG4gIC0tYnMtZHJvcGRvd24tcGFkZGluZy14OiAwO1xuICAtLWJzLWRyb3Bkb3duLXBhZGRpbmcteTogMC41cmVtO1xuICAtLWJzLWRyb3Bkb3duLXNwYWNlcjogMC4xMjVyZW07XG4gIC0tYnMtZHJvcGRvd24tZm9udC1zaXplOiAxcmVtO1xuICAtLWJzLWRyb3Bkb3duLWNvbG9yOiB2YXIoLS1icy1ib2R5LWNvbG9yKTtcbiAgLS1icy1kcm9wZG93bi1iZzogdmFyKC0tYnMtYm9keS1iZyk7XG4gIC0tYnMtZHJvcGRvd24tYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQpO1xuICAtLWJzLWRyb3Bkb3duLWJvcmRlci1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMpO1xuICAtLWJzLWRyb3Bkb3duLWJvcmRlci13aWR0aDogdmFyKC0tYnMtYm9yZGVyLXdpZHRoKTtcbiAgLS1icy1kcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzOiBjYWxjKFxuICAgIHZhcigtLWJzLWJvcmRlci1yYWRpdXMpIC0gdmFyKC0tYnMtYm9yZGVyLXdpZHRoKVxuICApO1xuICAtLWJzLWRyb3Bkb3duLWRpdmlkZXItYmc6IHZhcigtLWJzLWJvcmRlci1jb2xvci10cmFuc2x1Y2VudCk7XG4gIC0tYnMtZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teTogMC41cmVtO1xuICAtLWJzLWRyb3Bkb3duLWJveC1zaGFkb3c6IDAgNHB4IDZweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIC0tYnMtZHJvcGRvd24tbGluay1jb2xvcjogdmFyKC0tYnMtYm9keS1jb2xvcik7XG4gIC0tYnMtZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogdmFyKC0tYnMtYm9keS1jb2xvcik7XG4gIC0tYnMtZHJvcGRvd24tbGluay1ob3Zlci1iZzogdmFyKC0tYnMtdGVydGlhcnktYmcpO1xuICAtLWJzLWRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAjZmZmZmZmO1xuICAtLWJzLWRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAjMWUxZTU2O1xuICAtLWJzLWRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6IHZhcigtLWJzLXRlcnRpYXJ5LWNvbG9yKTtcbiAgLS1icy1kcm9wZG93bi1pdGVtLXBhZGRpbmcteDogMXJlbTtcbiAgLS1icy1kcm9wZG93bi1pdGVtLXBhZGRpbmcteTogMC4yNXJlbTtcbiAgLS1icy1kcm9wZG93bi1oZWFkZXItY29sb3I6ICM2Yzc1N2Q7XG4gIC0tYnMtZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteDogMXJlbTtcbiAgLS1icy1kcm9wZG93bi1oZWFkZXItcGFkZGluZy15OiAwLjVyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogdmFyKC0tYnMtZHJvcGRvd24temluZGV4KTtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWluLXdpZHRoOiB2YXIoLS1icy1kcm9wZG93bi1taW4td2lkdGgpO1xuICBwYWRkaW5nOiB2YXIoLS1icy1kcm9wZG93bi1wYWRkaW5nLXkpIHZhcigtLWJzLWRyb3Bkb3duLXBhZGRpbmcteCk7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiB2YXIoLS1icy1kcm9wZG93bi1mb250LXNpemUpO1xuICBjb2xvcjogdmFyKC0tYnMtZHJvcGRvd24tY29sb3IpO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1kcm9wZG93bi1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogdmFyKC0tYnMtZHJvcGRvd24tYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1kcm9wZG93bi1ib3JkZXItY29sb3IpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1icy1kcm9wZG93bi1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1icy1kcm9wZG93bi1zcGFjZXIpO1xufVxuXG4uZHJvcGRvd24tbWVudS1zdGFydCB7XG4gIC0tYnMtcG9zaXRpb246IHN0YXJ0O1xufVxuXG4uZHJvcGRvd24tbWVudS1zdGFydFtkYXRhLWJzLXBvcHBlcl0ge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMDtcbn1cblxuLmRyb3Bkb3duLW1lbnUtZW5kIHtcbiAgLS1icy1wb3NpdGlvbjogZW5kO1xufVxuXG4uZHJvcGRvd24tbWVudS1lbmRbZGF0YS1icy1wb3BwZXJdIHtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuZHJvcGRvd24tbWVudS1zbS1zdGFydCB7XG4gICAgLS1icy1wb3NpdGlvbjogc3RhcnQ7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudS1zbS1zdGFydFtkYXRhLWJzLXBvcHBlcl0ge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudS1zbS1lbmQge1xuICAgIC0tYnMtcG9zaXRpb246IGVuZDtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51LXNtLWVuZFtkYXRhLWJzLXBvcHBlcl0ge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5kcm9wZG93bi1tZW51LW1kLXN0YXJ0IHtcbiAgICAtLWJzLXBvc2l0aW9uOiBzdGFydDtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51LW1kLXN0YXJ0W2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51LW1kLWVuZCB7XG4gICAgLS1icy1wb3NpdGlvbjogZW5kO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUtbWQtZW5kW2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmRyb3Bkb3duLW1lbnUtbGctc3RhcnQge1xuICAgIC0tYnMtcG9zaXRpb246IHN0YXJ0O1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUtbGctc3RhcnRbZGF0YS1icy1wb3BwZXJdIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUtbGctZW5kIHtcbiAgICAtLWJzLXBvc2l0aW9uOiBlbmQ7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudS1sZy1lbmRbZGF0YS1icy1wb3BwZXJdIHtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmRyb3Bkb3duLW1lbnUteGwtc3RhcnQge1xuICAgIC0tYnMtcG9zaXRpb246IHN0YXJ0O1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUteGwtc3RhcnRbZGF0YS1icy1wb3BwZXJdIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUteGwtZW5kIHtcbiAgICAtLWJzLXBvc2l0aW9uOiBlbmQ7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudS14bC1lbmRbZGF0YS1icy1wb3BwZXJdIHtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcbiAgLmRyb3Bkb3duLW1lbnUteHhsLXN0YXJ0IHtcbiAgICAtLWJzLXBvc2l0aW9uOiBzdGFydDtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51LXh4bC1zdGFydFtkYXRhLWJzLXBvcHBlcl0ge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudS14eGwtZW5kIHtcbiAgICAtLWJzLXBvc2l0aW9uOiBlbmQ7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudS14eGwtZW5kW2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxufVxuXG4uZHJvcHVwIC5kcm9wZG93bi1tZW51W2RhdGEtYnMtcG9wcGVyXSB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAxMDAlO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1icy1kcm9wZG93bi1zcGFjZXIpO1xufVxuXG4uZHJvcHVwIC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMC4yNTVlbTtcbiAgdmVydGljYWwtYWxpZ246IDAuMjU1ZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDAuM2VtIHNvbGlkO1xuICBib3JkZXItbGVmdDogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbi5kcm9wdXAgLmRyb3Bkb3duLXRvZ2dsZTplbXB0eTo6YWZ0ZXIge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLmRyb3BlbmQgLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHtcbiAgdG9wOiAwO1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLWJzLWRyb3Bkb3duLXNwYWNlcik7XG59XG5cbi5kcm9wZW5kIC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMC4yNTVlbTtcbiAgdmVydGljYWwtYWxpZ246IDAuMjU1ZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci10b3A6IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogMC4zZW0gc29saWQ7XG59XG5cbi5kcm9wZW5kIC5kcm9wZG93bi10b2dnbGU6ZW1wdHk6OmFmdGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5kcm9wZW5kIC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgdmVydGljYWwtYWxpZ246IDA7XG59XG5cbi5kcm9wc3RhcnQgLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHtcbiAgdG9wOiAwO1xuICByaWdodDogMTAwJTtcbiAgbGVmdDogYXV0bztcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1icy1kcm9wZG93bi1zcGFjZXIpO1xufVxuXG4uZHJvcHN0YXJ0IC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMC4yNTVlbTtcbiAgdmVydGljYWwtYWxpZ246IDAuMjU1ZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG5cbi5kcm9wc3RhcnQgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZHJvcHN0YXJ0IC5kcm9wZG93bi10b2dnbGU6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1NWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogMC4yNTVlbTtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLXRvcDogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMC4zZW0gc29saWQ7XG4gIGJvcmRlci1ib3R0b206IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG4uZHJvcHN0YXJ0IC5kcm9wZG93bi10b2dnbGU6ZW1wdHk6OmFmdGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5kcm9wc3RhcnQgLmRyb3Bkb3duLXRvZ2dsZTo6YmVmb3JlIHtcbiAgdmVydGljYWwtYWxpZ246IDA7XG59XG5cbi5kcm9wZG93bi1kaXZpZGVyIHtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46IHZhcigtLWJzLWRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXkpIDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1icy1kcm9wZG93bi1kaXZpZGVyLWJnKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmRyb3Bkb3duLWl0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IHZhcigtLWJzLWRyb3Bkb3duLWl0ZW0tcGFkZGluZy15KSB2YXIoLS1icy1kcm9wZG93bi1pdGVtLXBhZGRpbmcteCk7XG4gIGNsZWFyOiBib3RoO1xuICBmb250LXdlaWdodDogNDAwO1xuICBjb2xvcjogdmFyKC0tYnMtZHJvcGRvd24tbGluay1jb2xvcik7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnMtZHJvcGRvd24taXRlbS1ib3JkZXItcmFkaXVzLCAwKTtcbn1cblxuLmRyb3Bkb3duLWl0ZW06aG92ZXIsXG4uZHJvcGRvd24taXRlbTpmb2N1cyB7XG4gIGNvbG9yOiB2YXIoLS1icy1kcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtZHJvcGRvd24tbGluay1ob3Zlci1iZyk7XG59XG5cbi5kcm9wZG93bi1pdGVtLmFjdGl2ZSxcbi5kcm9wZG93bi1pdGVtOmFjdGl2ZSB7XG4gIGNvbG9yOiB2YXIoLS1icy1kcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcik7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtZHJvcGRvd24tbGluay1hY3RpdmUtYmcpO1xufVxuXG4uZHJvcGRvd24taXRlbS5kaXNhYmxlZCxcbi5kcm9wZG93bi1pdGVtOmRpc2FibGVkIHtcbiAgY29sb3I6IHZhcigtLWJzLWRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3IpO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5kcm9wZG93bi1tZW51LnNob3cge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmRyb3Bkb3duLWhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiB2YXIoLS1icy1kcm9wZG93bi1oZWFkZXItcGFkZGluZy15KSB2YXIoLS1icy1kcm9wZG93bi1oZWFkZXItcGFkZGluZy14KTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgY29sb3I6IHZhcigtLWJzLWRyb3Bkb3duLWhlYWRlci1jb2xvcik7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5kcm9wZG93bi1pdGVtLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogdmFyKC0tYnMtZHJvcGRvd24taXRlbS1wYWRkaW5nLXkpIHZhcigtLWJzLWRyb3Bkb3duLWl0ZW0tcGFkZGluZy14KTtcbiAgY29sb3I6IHZhcigtLWJzLWRyb3Bkb3duLWxpbmstY29sb3IpO1xufVxuXG4uZHJvcGRvd24tbWVudS1kYXJrIHtcbiAgLS1icy1kcm9wZG93bi1jb2xvcjogI2RlZTJlNjtcbiAgLS1icy1kcm9wZG93bi1iZzogIzM0M2E0MDtcbiAgLS1icy1kcm9wZG93bi1ib3JkZXItY29sb3I6IHZhcigtLWJzLWJvcmRlci1jb2xvci10cmFuc2x1Y2VudCk7XG4gIC0tYnMtZHJvcGRvd24tYm94LXNoYWRvdzogO1xuICAtLWJzLWRyb3Bkb3duLWxpbmstY29sb3I6ICNkZWUyZTY7XG4gIC0tYnMtZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogI2ZmZmZmZjtcbiAgLS1icy1kcm9wZG93bi1kaXZpZGVyLWJnOiB2YXIoLS1icy1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQpO1xuICAtLWJzLWRyb3Bkb3duLWxpbmstaG92ZXItYmc6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSk7XG4gIC0tYnMtZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICNmZmZmZmY7XG4gIC0tYnMtZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICMxZTFlNTY7XG4gIC0tYnMtZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogI2FkYjViZDtcbiAgLS1icy1kcm9wZG93bi1oZWFkZXItY29sb3I6ICNhZGI1YmQ7XG59XG5cbi5idG4tZ3JvdXAsXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLmJ0bi1ncm91cCA+IC5idG4sXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleDogMSAxIGF1dG87XG59XG5cbi5idG4tZ3JvdXAgPiAuYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLFxuLmJ0bi1ncm91cCA+IC5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLFxuLmJ0bi1ncm91cCA+IC5idG46aG92ZXIsXG4uYnRuLWdyb3VwID4gLmJ0bjpmb2N1cyxcbi5idG4tZ3JvdXAgPiAuYnRuOmFjdGl2ZSxcbi5idG4tZ3JvdXAgPiAuYnRuLmFjdGl2ZSxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46aG92ZXIsXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bjpmb2N1cyxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuOmFjdGl2ZSxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLmFjdGl2ZSB7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5idG4tdG9vbGJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuXG4uYnRuLXRvb2xiYXIgLmlucHV0LWdyb3VwIHtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi5idG4tZ3JvdXAge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4uYnRuLWdyb3VwID4gOm5vdCguYnRuLWNoZWNrOmZpcnN0LWNoaWxkKSArIC5idG4sXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKHZhcigtLWJzLWJvcmRlci13aWR0aCkgKiAtMSk7XG59XG5cbi5idG4tZ3JvdXAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuLmJ0bi1ncm91cCA+IC5idG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0OmZpcnN0LWNoaWxkLFxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG59XG5cbi5idG4tZ3JvdXAgPiAuYnRuOm50aC1jaGlsZChuKzMpLFxuLmJ0bi1ncm91cCA+IDpub3QoLmJ0bi1jaGVjaykgKyAuYnRuLFxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbn1cblxuLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbn1cblxuLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdDo6YWZ0ZXIsXG4uZHJvcHVwIC5kcm9wZG93bi10b2dnbGUtc3BsaXQ6OmFmdGVyLFxuLmRyb3BlbmQgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdDo6YWZ0ZXIge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLmRyb3BzdGFydCAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjpiZWZvcmUge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi5idG4tc20gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LFxuLmJ0bi1ncm91cC1zbSA+IC5idG4gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07XG4gIHBhZGRpbmctbGVmdDogMC4zNzVyZW07XG59XG5cbi5idG4tbGcgKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LFxuLmJ0bi1ncm91cC1sZyA+IC5idG4gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogMC43NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjc1cmVtO1xufVxuXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bixcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xuICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLWJzLWJvcmRlci13aWR0aCkgKiAtMSk7XG59XG5cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbn1cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4gfiAuYnRuLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG59XG5cbi5uYXYge1xuICAtLWJzLW5hdi1saW5rLXBhZGRpbmcteDogMXJlbTtcbiAgLS1icy1uYXYtbGluay1wYWRkaW5nLXk6IDAuNXJlbTtcbiAgLS1icy1uYXYtbGluay1mb250LXdlaWdodDogO1xuICAtLWJzLW5hdi1saW5rLWNvbG9yOiB2YXIoLS1icy1saW5rLWNvbG9yKTtcbiAgLS1icy1uYXYtbGluay1ob3Zlci1jb2xvcjogdmFyKC0tYnMtbGluay1ob3Zlci1jb2xvcik7XG4gIC0tYnMtbmF2LWxpbmstZGlzYWJsZWQtY29sb3I6IHZhcigtLWJzLXNlY29uZGFyeS1jb2xvcik7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubmF2LWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogdmFyKC0tYnMtbmF2LWxpbmstcGFkZGluZy15KSB2YXIoLS1icy1uYXYtbGluay1wYWRkaW5nLXgpO1xuICBmb250LXNpemU6IHZhcigtLWJzLW5hdi1saW5rLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1icy1uYXYtbGluay1mb250LXdlaWdodCk7XG4gIGNvbG9yOiB2YXIoLS1icy1uYXYtbGluay1jb2xvcik7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0O1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAubmF2LWxpbmsge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cblxuLm5hdi1saW5rOmhvdmVyLFxuLm5hdi1saW5rOmZvY3VzIHtcbiAgY29sb3I6IHZhcigtLWJzLW5hdi1saW5rLWhvdmVyLWNvbG9yKTtcbn1cblxuLm5hdi1saW5rOmZvY3VzLXZpc2libGUge1xuICBvdXRsaW5lOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMzAsIDMwLCA4NiwgMC4yNSk7XG59XG5cbi5uYXYtbGluay5kaXNhYmxlZCB7XG4gIGNvbG9yOiB2YXIoLS1icy1uYXYtbGluay1kaXNhYmxlZC1jb2xvcik7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi5uYXYtdGFicyB7XG4gIC0tYnMtbmF2LXRhYnMtYm9yZGVyLXdpZHRoOiB2YXIoLS1icy1ib3JkZXItd2lkdGgpO1xuICAtLWJzLW5hdi10YWJzLWJvcmRlci1jb2xvcjogdmFyKC0tYnMtYm9yZGVyLWNvbG9yKTtcbiAgLS1icy1uYXYtdGFicy1ib3JkZXItcmFkaXVzOiB2YXIoLS1icy1ib3JkZXItcmFkaXVzKTtcbiAgLS1icy1uYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogdmFyKC0tYnMtc2Vjb25kYXJ5LWJnKSB2YXIoLS1icy1zZWNvbmRhcnktYmcpIHZhcigtLWJzLWJvcmRlci1jb2xvcik7XG4gIC0tYnMtbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I6IHZhcigtLWJzLWVtcGhhc2lzLWNvbG9yKTtcbiAgLS1icy1uYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogdmFyKC0tYnMtYm9keS1iZyk7XG4gIC0tYnMtbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1ib3JkZXItY29sb3IpIHZhcigtLWJzLWJvcmRlci1jb2xvcikgdmFyKC0tYnMtYm9keS1iZyk7XG4gIGJvcmRlci1ib3R0b206IHZhcigtLWJzLW5hdi10YWJzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tYnMtbmF2LXRhYnMtYm9yZGVyLWNvbG9yKTtcbn1cblxuLm5hdi10YWJzIC5uYXYtbGluayB7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoLTEgKiB2YXIoLS1icy1uYXYtdGFicy1ib3JkZXItd2lkdGgpKTtcbiAgYm9yZGVyOiB2YXIoLS1icy1uYXYtdGFicy1ib3JkZXItd2lkdGgpIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YXIoLS1icy1uYXYtdGFicy1ib3JkZXItcmFkaXVzKTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWJzLW5hdi10YWJzLWJvcmRlci1yYWRpdXMpO1xufVxuXG4ubmF2LXRhYnMgLm5hdi1saW5rOmhvdmVyLFxuLm5hdi10YWJzIC5uYXYtbGluazpmb2N1cyB7XG4gIGlzb2xhdGlvbjogaXNvbGF0ZTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1uYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcik7XG59XG5cbi5uYXYtdGFicyAubmF2LWxpbmsuZGlzYWJsZWQsXG4ubmF2LXRhYnMgLm5hdi1saW5rOmRpc2FibGVkIHtcbiAgY29sb3I6IHZhcigtLWJzLW5hdi1saW5rLWRpc2FibGVkLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5uYXYtdGFicyAubmF2LWxpbmsuYWN0aXZlLFxuLm5hdi10YWJzIC5uYXYtaXRlbS5zaG93IC5uYXYtbGluayB7XG4gIGNvbG9yOiB2YXIoLS1icy1uYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLW5hdi10YWJzLWxpbmstYWN0aXZlLWJnKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1uYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3IpO1xufVxuXG4ubmF2LXRhYnMgLmRyb3Bkb3duLW1lbnUge1xuICBtYXJnaW4tdG9wOiBjYWxjKC0xICogdmFyKC0tYnMtbmF2LXRhYnMtYm9yZGVyLXdpZHRoKSk7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4ubmF2LXBpbGxzIHtcbiAgLS1icy1uYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cyk7XG4gIC0tYnMtbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yOiAjZmZmZmZmO1xuICAtLWJzLW5hdi1waWxscy1saW5rLWFjdGl2ZS1iZzogIzFlMWU1Njtcbn1cblxuLm5hdi1waWxscyAubmF2LWxpbmsge1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1icy1uYXYtcGlsbHMtYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5uYXYtcGlsbHMgLm5hdi1saW5rOmRpc2FibGVkIHtcbiAgY29sb3I6IHZhcigtLWJzLW5hdi1saW5rLWRpc2FibGVkLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5uYXYtcGlsbHMgLm5hdi1saW5rLmFjdGl2ZSxcbi5uYXYtcGlsbHMgLnNob3cgPiAubmF2LWxpbmsge1xuICBjb2xvcjogdmFyKC0tYnMtbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnKTtcbn1cblxuLm5hdi11bmRlcmxpbmUge1xuICAtLWJzLW5hdi11bmRlcmxpbmUtZ2FwOiAxcmVtO1xuICAtLWJzLW5hdi11bmRlcmxpbmUtYm9yZGVyLXdpZHRoOiAwLjEyNXJlbTtcbiAgLS1icy1uYXYtdW5kZXJsaW5lLWxpbmstYWN0aXZlLWNvbG9yOiB2YXIoLS1icy1lbXBoYXNpcy1jb2xvcik7XG4gIGdhcDogdmFyKC0tYnMtbmF2LXVuZGVybGluZS1nYXApO1xufVxuXG4ubmF2LXVuZGVybGluZSAubmF2LWxpbmsge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGJvcmRlci1ib3R0b206IHZhcigtLWJzLW5hdi11bmRlcmxpbmUtYm9yZGVyLXdpZHRoKSBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuLm5hdi11bmRlcmxpbmUgLm5hdi1saW5rOmhvdmVyLFxuLm5hdi11bmRlcmxpbmUgLm5hdi1saW5rOmZvY3VzIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogY3VycmVudGNvbG9yO1xufVxuXG4ubmF2LXVuZGVybGluZSAubmF2LWxpbmsuYWN0aXZlLFxuLm5hdi11bmRlcmxpbmUgLnNob3cgPiAubmF2LWxpbmsge1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogdmFyKC0tYnMtbmF2LXVuZGVybGluZS1saW5rLWFjdGl2ZS1jb2xvcik7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IGN1cnJlbnRjb2xvcjtcbn1cblxuLm5hdi1maWxsID4gLm5hdi1saW5rLFxuLm5hdi1maWxsIC5uYXYtaXRlbSB7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5uYXYtanVzdGlmaWVkID4gLm5hdi1saW5rLFxuLm5hdi1qdXN0aWZpZWQgLm5hdi1pdGVtIHtcbiAgZmxleC1iYXNpczogMDtcbiAgZmxleC1ncm93OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5uYXYtZmlsbCAubmF2LWl0ZW0gLm5hdi1saW5rLFxuLm5hdi1qdXN0aWZpZWQgLm5hdi1pdGVtIC5uYXYtbGluayB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4udGFiLWNvbnRlbnQgPiAudGFiLXBhbmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udGFiLWNvbnRlbnQgPiAuYWN0aXZlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5uYXZiYXIge1xuICAtLWJzLW5hdmJhci1wYWRkaW5nLXg6IDA7XG4gIC0tYnMtbmF2YmFyLXBhZGRpbmcteTogMC41cmVtO1xuICAtLWJzLW5hdmJhci1jb2xvcjogcmdiYSh2YXIoLS1icy1lbXBoYXNpcy1jb2xvci1yZ2IpLCAwLjY1KTtcbiAgLS1icy1uYXZiYXItaG92ZXItY29sb3I6IHJnYmEodmFyKC0tYnMtZW1waGFzaXMtY29sb3ItcmdiKSwgMC44KTtcbiAgLS1icy1uYXZiYXItZGlzYWJsZWQtY29sb3I6IHJnYmEodmFyKC0tYnMtZW1waGFzaXMtY29sb3ItcmdiKSwgMC4zKTtcbiAgLS1icy1uYXZiYXItYWN0aXZlLWNvbG9yOiByZ2JhKHZhcigtLWJzLWVtcGhhc2lzLWNvbG9yLXJnYiksIDEpO1xuICAtLWJzLW5hdmJhci1icmFuZC1wYWRkaW5nLXk6IDAuNDA2MjVyZW07XG4gIC0tYnMtbmF2YmFyLWJyYW5kLW1hcmdpbi1lbmQ6IDFyZW07XG4gIC0tYnMtbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIC0tYnMtbmF2YmFyLWJyYW5kLWNvbG9yOiByZ2JhKHZhcigtLWJzLWVtcGhhc2lzLWNvbG9yLXJnYiksIDEpO1xuICAtLWJzLW5hdmJhci1icmFuZC1ob3Zlci1jb2xvcjogcmdiYSh2YXIoLS1icy1lbXBoYXNpcy1jb2xvci1yZ2IpLCAxKTtcbiAgLS1icy1uYXZiYXItbmF2LWxpbmstcGFkZGluZy14OiAwLjVyZW07XG4gIC0tYnMtbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15OiAwLjI1cmVtO1xuICAtLWJzLW5hdmJhci10b2dnbGVyLXBhZGRpbmcteDogMC43NXJlbTtcbiAgLS1icy1uYXZiYXItdG9nZ2xlci1mb250LXNpemU6IDEuMTI1cmVtO1xuICAtLWJzLW5hdmJhci10b2dnbGVyLWljb24tYmc6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMzAgMzAnJTNlJTNjcGF0aCBzdHJva2U9J3JnYmElMjgzMywgMzcsIDQxLCAwLjc1JTI5JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNlJTNjL3N2ZyUzZVwiKTtcbiAgLS1icy1uYXZiYXItdG9nZ2xlci1ib3JkZXItY29sb3I6IHJnYmEodmFyKC0tYnMtZW1waGFzaXMtY29sb3ItcmdiKSwgMC4xNSk7XG4gIC0tYnMtbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1czogMDtcbiAgLS1icy1uYXZiYXItdG9nZ2xlci1mb2N1cy13aWR0aDogMC4yNXJlbTtcbiAgLS1icy1uYXZiYXItdG9nZ2xlci10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiB2YXIoLS1icy1uYXZiYXItcGFkZGluZy15KSB2YXIoLS1icy1uYXZiYXItcGFkZGluZy14KTtcbn1cblxuLm5hdmJhciA+IC5jb250YWluZXIsXG4ubmF2YmFyID4gLmNvbnRhaW5lci1mbHVpZCxcbi5uYXZiYXIgPiAuY29udGFpbmVyLXNtLFxuLm5hdmJhciA+IC5jb250YWluZXItbWQsXG4ubmF2YmFyID4gLmNvbnRhaW5lci1sZyxcbi5uYXZiYXIgPiAuY29udGFpbmVyLXhsLFxuLm5hdmJhciA+IC5jb250YWluZXIteHhsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiBpbmhlcml0O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi5uYXZiYXItYnJhbmQge1xuICBwYWRkaW5nLXRvcDogdmFyKC0tYnMtbmF2YmFyLWJyYW5kLXBhZGRpbmcteSk7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1icy1uYXZiYXItYnJhbmQtcGFkZGluZy15KTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1icy1uYXZiYXItYnJhbmQtbWFyZ2luLWVuZCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYnMtbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiB2YXIoLS1icy1uYXZiYXItYnJhbmQtY29sb3IpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5uYXZiYXItYnJhbmQ6aG92ZXIsXG4ubmF2YmFyLWJyYW5kOmZvY3VzIHtcbiAgY29sb3I6IHZhcigtLWJzLW5hdmJhci1icmFuZC1ob3Zlci1jb2xvcik7XG59XG5cbi5uYXZiYXItbmF2IHtcbiAgLS1icy1uYXYtbGluay1wYWRkaW5nLXg6IDA7XG4gIC0tYnMtbmF2LWxpbmstcGFkZGluZy15OiAwLjVyZW07XG4gIC0tYnMtbmF2LWxpbmstZm9udC13ZWlnaHQ6IDtcbiAgLS1icy1uYXYtbGluay1jb2xvcjogdmFyKC0tYnMtbmF2YmFyLWNvbG9yKTtcbiAgLS1icy1uYXYtbGluay1ob3Zlci1jb2xvcjogdmFyKC0tYnMtbmF2YmFyLWhvdmVyLWNvbG9yKTtcbiAgLS1icy1uYXYtbGluay1kaXNhYmxlZC1jb2xvcjogdmFyKC0tYnMtbmF2YmFyLWRpc2FibGVkLWNvbG9yKTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubmF2YmFyLW5hdiAubmF2LWxpbmsuYWN0aXZlLFxuLm5hdmJhci1uYXYgLm5hdi1saW5rLnNob3cge1xuICBjb2xvcjogdmFyKC0tYnMtbmF2YmFyLWFjdGl2ZS1jb2xvcik7XG59XG5cbi5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcbiAgcG9zaXRpb246IHN0YXRpYztcbn1cblxuLm5hdmJhci10ZXh0IHtcbiAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbiAgY29sb3I6IHZhcigtLWJzLW5hdmJhci1jb2xvcik7XG59XG5cbi5uYXZiYXItdGV4dCBhLFxuLm5hdmJhci10ZXh0IGE6aG92ZXIsXG4ubmF2YmFyLXRleHQgYTpmb2N1cyB7XG4gIGNvbG9yOiB2YXIoLS1icy1uYXZiYXItYWN0aXZlLWNvbG9yKTtcbn1cblxuLm5hdmJhci1jb2xsYXBzZSB7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIGZsZXgtZ3JvdzogMTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLm5hdmJhci10b2dnbGVyIHtcbiAgcGFkZGluZzogdmFyKC0tYnMtbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15KSB2YXIoLS1icy1uYXZiYXItdG9nZ2xlci1wYWRkaW5nLXgpO1xuICBmb250LXNpemU6IHZhcigtLWJzLW5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogdmFyKC0tYnMtbmF2YmFyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogdmFyKC0tYnMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1uYXZiYXItdG9nZ2xlci1ib3JkZXItY29sb3IpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1icy1uYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzKTtcbiAgdHJhbnNpdGlvbjogdmFyKC0tYnMtbmF2YmFyLXRvZ2dsZXItdHJhbnNpdGlvbik7XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuXG4ubmF2YmFyLXRvZ2dsZXI6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5uYXZiYXItdG9nZ2xlcjpmb2N1cyB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgdmFyKC0tYnMtbmF2YmFyLXRvZ2dsZXItZm9jdXMtd2lkdGgpO1xufVxuXG4ubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEuNWVtO1xuICBoZWlnaHQ6IDEuNWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS1icy1uYXZiYXItdG9nZ2xlci1pY29uLWJnKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG59XG5cbi5uYXZiYXItbmF2LXNjcm9sbCB7XG4gIG1heC1oZWlnaHQ6IHZhcigtLWJzLXNjcm9sbC1oZWlnaHQsIDc1dmgpO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLm5hdmJhci1leHBhbmQtc20ge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgfVxuXG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItbmF2IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG5cbiAgLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuXG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItbmF2IC5uYXYtbGluayB7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tYnMtbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteCk7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1icy1uYXZiYXItbmF2LWxpbmstcGFkZGluZy14KTtcbiAgfVxuXG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItbmF2LXNjcm9sbCB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cblxuICAubmF2YmFyLWV4cGFuZC1zbSAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgZmxleC1iYXNpczogYXV0bztcbiAgfVxuXG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5uYXZiYXItZXhwYW5kLXNtIC5vZmZjYW52YXMge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgei1pbmRleDogYXV0bztcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG5cbiAgLm5hdmJhci1leHBhbmQtc20gLm9mZmNhbnZhcyAub2ZmY2FudmFzLWhlYWRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5uYXZiYXItZXhwYW5kLXNtIC5vZmZjYW52YXMgLm9mZmNhbnZhcy1ib2R5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG92ZXJmbG93LXk6IHZpc2libGU7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5uYXZiYXItZXhwYW5kLW1kIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH1cblxuICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLW5hdiB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuXG4gIC5uYXZiYXItZXhwYW5kLW1kIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cblxuICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLWJzLW5hdmJhci1uYXYtbGluay1wYWRkaW5nLXgpO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tYnMtbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteCk7XG4gIH1cblxuICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLW5hdi1zY3JvbGwge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG5cbiAgLm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gIH1cblxuICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAubmF2YmFyLWV4cGFuZC1tZCAub2ZmY2FudmFzIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHotaW5kZXg6IGF1dG87XG4gICAgZmxleC1ncm93OiAxO1xuICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxuXG4gIC5uYXZiYXItZXhwYW5kLW1kIC5vZmZjYW52YXMgLm9mZmNhbnZhcy1oZWFkZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAubmF2YmFyLWV4cGFuZC1tZCAub2ZmY2FudmFzIC5vZmZjYW52YXMtYm9keSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubmF2YmFyLWV4cGFuZC1sZyB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG5cbiAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1uYXYge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cblxuICAubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG5cbiAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1icy1uYXZiYXItbmF2LWxpbmstcGFkZGluZy14KTtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLWJzLW5hdmJhci1uYXYtbGluay1wYWRkaW5nLXgpO1xuICB9XG5cbiAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuXG4gIC5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItY29sbGFwc2Uge1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICB9XG5cbiAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci10b2dnbGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLm5hdmJhci1leHBhbmQtbGcgLm9mZmNhbnZhcyB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB6LWluZGV4OiBhdXRvO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cblxuICAubmF2YmFyLWV4cGFuZC1sZyAub2ZmY2FudmFzIC5vZmZjYW52YXMtaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLm5hdmJhci1leHBhbmQtbGcgLm9mZmNhbnZhcyAub2ZmY2FudmFzLWJvZHkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgb3ZlcmZsb3cteTogdmlzaWJsZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5uYXZiYXItZXhwYW5kLXhsIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH1cblxuICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLW5hdiB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuXG4gIC5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cblxuICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLWJzLW5hdmJhci1uYXYtbGluay1wYWRkaW5nLXgpO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tYnMtbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteCk7XG4gIH1cblxuICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLW5hdi1zY3JvbGwge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG5cbiAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gIH1cblxuICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAubmF2YmFyLWV4cGFuZC14bCAub2ZmY2FudmFzIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHotaW5kZXg6IGF1dG87XG4gICAgZmxleC1ncm93OiAxO1xuICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxuXG4gIC5uYXZiYXItZXhwYW5kLXhsIC5vZmZjYW52YXMgLm9mZmNhbnZhcy1oZWFkZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAubmF2YmFyLWV4cGFuZC14bCAub2ZmY2FudmFzIC5vZmZjYW52YXMtYm9keSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcbiAgLm5hdmJhci1leHBhbmQteHhsIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH1cblxuICAubmF2YmFyLWV4cGFuZC14eGwgLm5hdmJhci1uYXYge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cblxuICAubmF2YmFyLWV4cGFuZC14eGwgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuXG4gIC5uYXZiYXItZXhwYW5kLXh4bCAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLWJzLW5hdmJhci1uYXYtbGluay1wYWRkaW5nLXgpO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tYnMtbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteCk7XG4gIH1cblxuICAubmF2YmFyLWV4cGFuZC14eGwgLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuXG4gIC5uYXZiYXItZXhwYW5kLXh4bCAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgZmxleC1iYXNpczogYXV0bztcbiAgfVxuXG4gIC5uYXZiYXItZXhwYW5kLXh4bCAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAubmF2YmFyLWV4cGFuZC14eGwgLm9mZmNhbnZhcyB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB6LWluZGV4OiBhdXRvO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cblxuICAubmF2YmFyLWV4cGFuZC14eGwgLm9mZmNhbnZhcyAub2ZmY2FudmFzLWhlYWRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5uYXZiYXItZXhwYW5kLXh4bCAub2ZmY2FudmFzIC5vZmZjYW52YXMtYm9keSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICB9XG59XG5cbi5uYXZiYXItZXhwYW5kIHtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cblxuLm5hdmJhci1leHBhbmQgLm5hdmJhci1uYXYge1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xufVxuXG4ubmF2YmFyLWV4cGFuZCAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLm5hdmJhci1leHBhbmQgLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tYnMtbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteCk7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tYnMtbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteCk7XG59XG5cbi5uYXZiYXItZXhwYW5kIC5uYXZiYXItbmF2LXNjcm9sbCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4ubmF2YmFyLWV4cGFuZCAubmF2YmFyLWNvbGxhcHNlIHtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICBmbGV4LWJhc2lzOiBhdXRvO1xufVxuXG4ubmF2YmFyLWV4cGFuZCAubmF2YmFyLXRvZ2dsZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubmF2YmFyLWV4cGFuZCAub2ZmY2FudmFzIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgei1pbmRleDogYXV0bztcbiAgZmxleC1ncm93OiAxO1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb246IG5vbmU7XG59XG5cbi5uYXZiYXItZXhwYW5kIC5vZmZjYW52YXMgLm9mZmNhbnZhcy1oZWFkZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubmF2YmFyLWV4cGFuZCAub2ZmY2FudmFzIC5vZmZjYW52YXMtYm9keSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZ3JvdzogMDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3cteTogdmlzaWJsZTtcbn1cblxuLm5hdmJhci1kYXJrLFxuLm5hdmJhcltkYXRhLWJzLXRoZW1lPWRhcmtdIHtcbiAgLS1icy1uYXZiYXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41NSk7XG4gIC0tYnMtbmF2YmFyLWhvdmVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpO1xuICAtLWJzLW5hdmJhci1kaXNhYmxlZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KTtcbiAgLS1icy1uYXZiYXItYWN0aXZlLWNvbG9yOiAjZmZmZmZmO1xuICAtLWJzLW5hdmJhci1icmFuZC1jb2xvcjogI2ZmZmZmZjtcbiAgLS1icy1uYXZiYXItYnJhbmQtaG92ZXItY29sb3I6ICNmZmZmZmY7XG4gIC0tYnMtbmF2YmFyLXRvZ2dsZXItYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIC0tYnMtbmF2YmFyLXRvZ2dsZXItaWNvbi1iZzogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzMCAzMCclM2UlM2NwYXRoIHN0cm9rZT0ncmdiYSUyODI1NSwgMjU1LCAyNTUsIDAuNTUlMjknIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8lM2UlM2Mvc3ZnJTNlXCIpO1xufVxuXG5bZGF0YS1icy10aGVtZT1kYXJrXSAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gIC0tYnMtbmF2YmFyLXRvZ2dsZXItaWNvbi1iZzogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzMCAzMCclM2UlM2NwYXRoIHN0cm9rZT0ncmdiYSUyODI1NSwgMjU1LCAyNTUsIDAuNTUlMjknIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8lM2UlM2Mvc3ZnJTNlXCIpO1xufVxuXG4uY2FyZCB7XG4gIC0tYnMtY2FyZC1zcGFjZXIteTogMXJlbTtcbiAgLS1icy1jYXJkLXNwYWNlci14OiAxcmVtO1xuICAtLWJzLWNhcmQtdGl0bGUtc3BhY2VyLXk6IDAuNXJlbTtcbiAgLS1icy1jYXJkLXRpdGxlLWNvbG9yOiA7XG4gIC0tYnMtY2FyZC1zdWJ0aXRsZS1jb2xvcjogO1xuICAtLWJzLWNhcmQtYm9yZGVyLXdpZHRoOiB2YXIoLS1icy1ib3JkZXItd2lkdGgpO1xuICAtLWJzLWNhcmQtYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQpO1xuICAtLWJzLWNhcmQtYm9yZGVyLXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cyk7XG4gIC0tYnMtY2FyZC1ib3gtc2hhZG93OiA7XG4gIC0tYnMtY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzOiBjYWxjKHZhcigtLWJzLWJvcmRlci1yYWRpdXMpIC0gKHZhcigtLWJzLWJvcmRlci13aWR0aCkpKTtcbiAgLS1icy1jYXJkLWNhcC1wYWRkaW5nLXk6IDAuNXJlbTtcbiAgLS1icy1jYXJkLWNhcC1wYWRkaW5nLXg6IDFyZW07XG4gIC0tYnMtY2FyZC1jYXAtYmc6IHJnYmEodmFyKC0tYnMtYm9keS1jb2xvci1yZ2IpLCAwLjAzKTtcbiAgLS1icy1jYXJkLWNhcC1jb2xvcjogO1xuICAtLWJzLWNhcmQtaGVpZ2h0OiA7XG4gIC0tYnMtY2FyZC1jb2xvcjogO1xuICAtLWJzLWNhcmQtYmc6IHZhcigtLWJzLWJvZHktYmcpO1xuICAtLWJzLWNhcmQtaW1nLW92ZXJsYXktcGFkZGluZzogMXJlbTtcbiAgLS1icy1jYXJkLWdyb3VwLW1hcmdpbjogMC43NXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtaW4td2lkdGg6IDA7XG4gIGhlaWdodDogdmFyKC0tYnMtY2FyZC1oZWlnaHQpO1xuICBjb2xvcjogdmFyKC0tYnMtYm9keS1jb2xvcik7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtY2FyZC1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiB2YXIoLS1icy1jYXJkLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tYnMtY2FyZC1ib3JkZXItY29sb3IpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1icy1jYXJkLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uY2FyZCA+IGhyIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLmNhcmQgPiAubGlzdC1ncm91cCB7XG4gIGJvcmRlci10b3A6IGluaGVyaXQ7XG4gIGJvcmRlci1ib3R0b206IGluaGVyaXQ7XG59XG5cbi5jYXJkID4gLmxpc3QtZ3JvdXA6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YXIoLS1icy1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFyKC0tYnMtY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmNhcmQgPiAubGlzdC1ncm91cDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhcigtLWJzLWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhcigtLWJzLWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5jYXJkID4gLmNhcmQtaGVhZGVyICsgLmxpc3QtZ3JvdXAsXG4uY2FyZCA+IC5saXN0LWdyb3VwICsgLmNhcmQtZm9vdGVyIHtcbiAgYm9yZGVyLXRvcDogMDtcbn1cblxuLmNhcmQtYm9keSB7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiB2YXIoLS1icy1jYXJkLXNwYWNlci15KSB2YXIoLS1icy1jYXJkLXNwYWNlci14KTtcbiAgY29sb3I6IHZhcigtLWJzLWNhcmQtY29sb3IpO1xufVxuXG4uY2FyZC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWJzLWNhcmQtdGl0bGUtc3BhY2VyLXkpO1xuICBjb2xvcjogdmFyKC0tYnMtY2FyZC10aXRsZS1jb2xvcik7XG59XG5cbi5jYXJkLXN1YnRpdGxlIHtcbiAgbWFyZ2luLXRvcDogY2FsYygtMC41ICogdmFyKC0tYnMtY2FyZC10aXRsZS1zcGFjZXIteSkpO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBjb2xvcjogdmFyKC0tYnMtY2FyZC1zdWJ0aXRsZS1jb2xvcik7XG59XG5cbi5jYXJkLXRleHQ6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLWxpbmsgKyAuY2FyZC1saW5rIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLWJzLWNhcmQtc3BhY2VyLXgpO1xufVxuXG4uY2FyZC1oZWFkZXIge1xuICBwYWRkaW5nOiB2YXIoLS1icy1jYXJkLWNhcC1wYWRkaW5nLXkpIHZhcigtLWJzLWNhcmQtY2FwLXBhZGRpbmcteCk7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGNvbG9yOiB2YXIoLS1icy1jYXJkLWNhcC1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWNhcmQtY2FwLWJnKTtcbiAgYm9yZGVyLWJvdHRvbTogdmFyKC0tYnMtY2FyZC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLWNhcmQtYm9yZGVyLWNvbG9yKTtcbn1cblxuLmNhcmQtaGVhZGVyOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnMtY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSB2YXIoLS1icy1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpIDAgMDtcbn1cblxuLmNhcmQtZm9vdGVyIHtcbiAgcGFkZGluZzogdmFyKC0tYnMtY2FyZC1jYXAtcGFkZGluZy15KSB2YXIoLS1icy1jYXJkLWNhcC1wYWRkaW5nLXgpO1xuICBjb2xvcjogdmFyKC0tYnMtY2FyZC1jYXAtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1jYXJkLWNhcC1iZyk7XG4gIGJvcmRlci10b3A6IHZhcigtLWJzLWNhcmQtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1jYXJkLWJvcmRlci1jb2xvcik7XG59XG5cbi5jYXJkLWZvb3RlcjpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIHZhcigtLWJzLWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykgdmFyKC0tYnMtY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmNhcmQtaGVhZGVyLXRhYnMge1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoLTAuNSAqIHZhcigtLWJzLWNhcmQtY2FwLXBhZGRpbmcteCkpO1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKC0xICogdmFyKC0tYnMtY2FyZC1jYXAtcGFkZGluZy15KSk7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC0wLjUgKiB2YXIoLS1icy1jYXJkLWNhcC1wYWRkaW5nLXgpKTtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtaGVhZGVyLXRhYnMgLm5hdi1saW5rLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWNhcmQtYmcpO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1icy1jYXJkLWJnKTtcbn1cblxuLmNhcmQtaGVhZGVyLXBpbGxzIHtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0wLjUgKiB2YXIoLS1icy1jYXJkLWNhcC1wYWRkaW5nLXgpKTtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoLTAuNSAqIHZhcigtLWJzLWNhcmQtY2FwLXBhZGRpbmcteCkpO1xufVxuXG4uY2FyZC1pbWctb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiB2YXIoLS1icy1jYXJkLWltZy1vdmVybGF5LXBhZGRpbmcpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1icy1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tYnMtY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWJzLWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy1ib3R0b20ge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFyKC0tYnMtY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFyKC0tYnMtY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmNhcmQtZ3JvdXAgPiAuY2FyZCB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWJzLWNhcmQtZ3JvdXAtbWFyZ2luKTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5jYXJkLWdyb3VwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIH1cblxuICAuY2FyZC1ncm91cCA+IC5jYXJkIHtcbiAgICBmbGV4OiAxIDAgMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC5jYXJkLWdyb3VwID4gLmNhcmQgKyAuY2FyZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gIH1cblxuICAuY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICB9XG5cbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmxhc3QtY2hpbGQpIC5jYXJkLWltZy10b3AsXG4gIC5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpsYXN0LWNoaWxkKSAuY2FyZC1oZWFkZXIge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICB9XG5cbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmxhc3QtY2hpbGQpIC5jYXJkLWltZy1ib3R0b20sXG4gIC5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpsYXN0LWNoaWxkKSAuY2FyZC1mb290ZXIge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICB9XG5cbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICB9XG5cbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmZpcnN0LWNoaWxkKSAuY2FyZC1pbWctdG9wLFxuICAuY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpIC5jYXJkLWhlYWRlciB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgfVxuXG4gIC5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpmaXJzdC1jaGlsZCkgLmNhcmQtaW1nLWJvdHRvbSxcbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmZpcnN0LWNoaWxkKSAuY2FyZC1mb290ZXIge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIH1cbn1cblxuLmFjY29yZGlvbiB7XG4gIC0tYnMtYWNjb3JkaW9uLWNvbG9yOiB2YXIoLS1icy1ib2R5LWNvbG9yKTtcbiAgLS1icy1hY2NvcmRpb24tYmc6IHZhcigtLWJzLWJvZHktYmcpO1xuICAtLWJzLWFjY29yZGlvbi10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLCBib3JkZXItcmFkaXVzIDAuMTVzIGVhc2U7XG4gIC0tYnMtYWNjb3JkaW9uLWJvcmRlci1jb2xvcjogdmFyKC0tYnMtYm9yZGVyLWNvbG9yKTtcbiAgLS1icy1hY2NvcmRpb24tYm9yZGVyLXdpZHRoOiB2YXIoLS1icy1ib3JkZXItd2lkdGgpO1xuICAtLWJzLWFjY29yZGlvbi1ib3JkZXItcmFkaXVzOiB2YXIoLS1icy1ib3JkZXItcmFkaXVzKTtcbiAgLS1icy1hY2NvcmRpb24taW5uZXItYm9yZGVyLXJhZGl1czogY2FsYyh2YXIoLS1icy1ib3JkZXItcmFkaXVzKSAtICh2YXIoLS1icy1ib3JkZXItd2lkdGgpKSk7XG4gIC0tYnMtYWNjb3JkaW9uLWJ0bi1wYWRkaW5nLXg6IDEuMjVyZW07XG4gIC0tYnMtYWNjb3JkaW9uLWJ0bi1wYWRkaW5nLXk6IDFyZW07XG4gIC0tYnMtYWNjb3JkaW9uLWJ0bi1jb2xvcjogdmFyKC0tYnMtYm9keS1jb2xvcik7XG4gIC0tYnMtYWNjb3JkaW9uLWJ0bi1iZzogdmFyKC0tYnMtYWNjb3JkaW9uLWJnKTtcbiAgLS1icy1hY2NvcmRpb24tYnRuLWljb246IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyUyMzIxMjUyOSclM2UlM2NwYXRoIGZpbGwtcnVsZT0nZXZlbm9kZCcgZD0nTTEuNjQ2IDQuNjQ2YS41LjUgMCAwIDEgLjcwOCAwTDggMTAuMjkzbDUuNjQ2LTUuNjQ3YS41LjUgMCAwIDEgLjcwOC43MDhsLTYgNmEuNS41IDAgMCAxLS43MDggMGwtNi02YS41LjUgMCAwIDEgMC0uNzA4eicvJTNlJTNjL3N2ZyUzZVwiKTtcbiAgLS1icy1hY2NvcmRpb24tYnRuLWljb24td2lkdGg6IDEuMjVyZW07XG4gIC0tYnMtYWNjb3JkaW9uLWJ0bi1pY29uLXRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpO1xuICAtLWJzLWFjY29yZGlvbi1idG4taWNvbi10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlLWluLW91dDtcbiAgLS1icy1hY2NvcmRpb24tYnRuLWFjdGl2ZS1pY29uOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPSclMjMwYzBjMjInJTNlJTNjcGF0aCBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGQ9J00xLjY0NiA0LjY0NmEuNS41IDAgMCAxIC43MDggMEw4IDEwLjI5M2w1LjY0Ni01LjY0N2EuNS41IDAgMCAxIC43MDguNzA4bC02IDZhLjUuNSAwIDAgMS0uNzA4IDBsLTYtNmEuNS41IDAgMCAxIDAtLjcwOHonLyUzZSUzYy9zdmclM2VcIik7XG4gIC0tYnMtYWNjb3JkaW9uLWJ0bi1mb2N1cy1ib3JkZXItY29sb3I6ICM4ZjhmYWI7XG4gIC0tYnMtYWNjb3JkaW9uLWJ0bi1mb2N1cy1ib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMzAsIDMwLCA4NiwgMC4yNSk7XG4gIC0tYnMtYWNjb3JkaW9uLWJvZHktcGFkZGluZy14OiAxLjI1cmVtO1xuICAtLWJzLWFjY29yZGlvbi1ib2R5LXBhZGRpbmcteTogMXJlbTtcbiAgLS1icy1hY2NvcmRpb24tYWN0aXZlLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5LXRleHQtZW1waGFzaXMpO1xuICAtLWJzLWFjY29yZGlvbi1hY3RpdmUtYmc6IHZhcigtLWJzLXByaW1hcnktYmctc3VidGxlKTtcbn1cblxuLmFjY29yZGlvbi1idXR0b24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiB2YXIoLS1icy1hY2NvcmRpb24tYnRuLXBhZGRpbmcteSkgdmFyKC0tYnMtYWNjb3JkaW9uLWJ0bi1wYWRkaW5nLXgpO1xuICBmb250LXNpemU6IDFyZW07XG4gIGNvbG9yOiB2YXIoLS1icy1hY2NvcmRpb24tYnRuLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtYWNjb3JkaW9uLWJ0bi1iZyk7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgb3ZlcmZsb3ctYW5jaG9yOiBub25lO1xuICB0cmFuc2l0aW9uOiB2YXIoLS1icy1hY2NvcmRpb24tdHJhbnNpdGlvbik7XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5hY2NvcmRpb24tYnV0dG9uIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbi5hY2NvcmRpb24tYnV0dG9uOm5vdCguY29sbGFwc2VkKSB7XG4gIGNvbG9yOiB2YXIoLS1icy1hY2NvcmRpb24tYWN0aXZlLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtYWNjb3JkaW9uLWFjdGl2ZS1iZyk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgY2FsYygtMSAqIHZhcigtLWJzLWFjY29yZGlvbi1ib3JkZXItd2lkdGgpKSAwIHZhcigtLWJzLWFjY29yZGlvbi1ib3JkZXItY29sb3IpO1xufVxuXG4uYWNjb3JkaW9uLWJ1dHRvbjpub3QoLmNvbGxhcHNlZCk6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tYnMtYWNjb3JkaW9uLWJ0bi1hY3RpdmUtaWNvbik7XG4gIHRyYW5zZm9ybTogdmFyKC0tYnMtYWNjb3JkaW9uLWJ0bi1pY29uLXRyYW5zZm9ybSk7XG59XG5cbi5hY2NvcmRpb24tYnV0dG9uOjphZnRlciB7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogdmFyKC0tYnMtYWNjb3JkaW9uLWJ0bi1pY29uLXdpZHRoKTtcbiAgaGVpZ2h0OiB2YXIoLS1icy1hY2NvcmRpb24tYnRuLWljb24td2lkdGgpO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tYnMtYWNjb3JkaW9uLWJ0bi1pY29uKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiB2YXIoLS1icy1hY2NvcmRpb24tYnRuLWljb24td2lkdGgpO1xuICB0cmFuc2l0aW9uOiB2YXIoLS1icy1hY2NvcmRpb24tYnRuLWljb24tdHJhbnNpdGlvbik7XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5hY2NvcmRpb24tYnV0dG9uOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuXG4uYWNjb3JkaW9uLWJ1dHRvbjpob3ZlciB7XG4gIHotaW5kZXg6IDI7XG59XG5cbi5hY2NvcmRpb24tYnV0dG9uOmZvY3VzIHtcbiAgei1pbmRleDogMztcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1hY2NvcmRpb24tYnRuLWZvY3VzLWJvcmRlci1jb2xvcik7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IHZhcigtLWJzLWFjY29yZGlvbi1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG59XG5cbi5hY2NvcmRpb24taGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmFjY29yZGlvbi1pdGVtIHtcbiAgY29sb3I6IHZhcigtLWJzLWFjY29yZGlvbi1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWFjY29yZGlvbi1iZyk7XG4gIGJvcmRlcjogdmFyKC0tYnMtYWNjb3JkaW9uLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tYnMtYWNjb3JkaW9uLWJvcmRlci1jb2xvcik7XG59XG5cbi5hY2NvcmRpb24taXRlbTpmaXJzdC1vZi10eXBlIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tYnMtYWNjb3JkaW9uLWJvcmRlci1yYWRpdXMpO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFyKC0tYnMtYWNjb3JkaW9uLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uYWNjb3JkaW9uLWl0ZW06Zmlyc3Qtb2YtdHlwZSAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhcigtLWJzLWFjY29yZGlvbi1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWJzLWFjY29yZGlvbi1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmFjY29yZGlvbi1pdGVtOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICBib3JkZXItdG9wOiAwO1xufVxuXG4uYWNjb3JkaW9uLWl0ZW06bGFzdC1vZi10eXBlIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhcigtLWJzLWFjY29yZGlvbi1ib3JkZXItcmFkaXVzKTtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFyKC0tYnMtYWNjb3JkaW9uLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uYWNjb3JkaW9uLWl0ZW06bGFzdC1vZi10eXBlIC5hY2NvcmRpb24tYnV0dG9uLmNvbGxhcHNlZCB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YXIoLS1icy1hY2NvcmRpb24taW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhcigtLWJzLWFjY29yZGlvbi1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmFjY29yZGlvbi1pdGVtOmxhc3Qtb2YtdHlwZSAuYWNjb3JkaW9uLWNvbGxhcHNlIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhcigtLWJzLWFjY29yZGlvbi1ib3JkZXItcmFkaXVzKTtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFyKC0tYnMtYWNjb3JkaW9uLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uYWNjb3JkaW9uLWJvZHkge1xuICBwYWRkaW5nOiB2YXIoLS1icy1hY2NvcmRpb24tYm9keS1wYWRkaW5nLXkpIHZhcigtLWJzLWFjY29yZGlvbi1ib2R5LXBhZGRpbmcteCk7XG59XG5cbi5hY2NvcmRpb24tZmx1c2ggLmFjY29yZGlvbi1jb2xsYXBzZSB7XG4gIGJvcmRlci13aWR0aDogMDtcbn1cblxuLmFjY29yZGlvbi1mbHVzaCAuYWNjb3JkaW9uLWl0ZW0ge1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1sZWZ0OiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4uYWNjb3JkaW9uLWZsdXNoIC5hY2NvcmRpb24taXRlbTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3A6IDA7XG59XG5cbi5hY2NvcmRpb24tZmx1c2ggLmFjY29yZGlvbi1pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuXG4uYWNjb3JkaW9uLWZsdXNoIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWJ1dHRvbixcbi5hY2NvcmRpb24tZmx1c2ggLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tYnV0dG9uLmNvbGxhcHNlZCB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbltkYXRhLWJzLXRoZW1lPWRhcmtdIC5hY2NvcmRpb24tYnV0dG9uOjphZnRlciB7XG4gIC0tYnMtYWNjb3JkaW9uLWJ0bi1pY29uOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPSclMjM3ODc4OWEnJTNlJTNjcGF0aCBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGQ9J00xLjY0NiA0LjY0NmEuNS41IDAgMCAxIC43MDggMEw4IDEwLjI5M2w1LjY0Ni01LjY0N2EuNS41IDAgMCAxIC43MDguNzA4bC02IDZhLjUuNSAwIDAgMS0uNzA4IDBsLTYtNmEuNS41IDAgMCAxIDAtLjcwOHonLyUzZSUzYy9zdmclM2VcIik7XG4gIC0tYnMtYWNjb3JkaW9uLWJ0bi1hY3RpdmUtaWNvbjogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nJTIzNzg3ODlhJyUzZSUzY3BhdGggZmlsbC1ydWxlPSdldmVub2RkJyBkPSdNMS42NDYgNC42NDZhLjUuNSAwIDAgMSAuNzA4IDBMOCAxMC4yOTNsNS42NDYtNS42NDdhLjUuNSAwIDAgMSAuNzA4LjcwOGwtNiA2YS41LjUgMCAwIDEtLjcwOCAwbC02LTZhLjUuNSAwIDAgMSAwLS43MDh6Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xufVxuXG4uYnJlYWRjcnVtYiB7XG4gIC0tYnMtYnJlYWRjcnVtYi1wYWRkaW5nLXg6IDA7XG4gIC0tYnMtYnJlYWRjcnVtYi1wYWRkaW5nLXk6IDA7XG4gIC0tYnMtYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tOiAxcmVtO1xuICAtLWJzLWJyZWFkY3J1bWItYmc6IDtcbiAgLS1icy1icmVhZGNydW1iLWJvcmRlci1yYWRpdXM6IDtcbiAgLS1icy1icmVhZGNydW1iLWRpdmlkZXItY29sb3I6IHZhcigtLWJzLXNlY29uZGFyeS1jb2xvcik7XG4gIC0tYnMtYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmcteDogMC41cmVtO1xuICAtLWJzLWJyZWFkY3J1bWItaXRlbS1hY3RpdmUtY29sb3I6IHZhcigtLWJzLXNlY29uZGFyeS1jb2xvcik7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZzogdmFyKC0tYnMtYnJlYWRjcnVtYi1wYWRkaW5nLXkpIHZhcigtLWJzLWJyZWFkY3J1bWItcGFkZGluZy14KTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tYnMtYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tKTtcbiAgZm9udC1zaXplOiB2YXIoLS1icy1icmVhZGNydW1iLWZvbnQtc2l6ZSk7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWJyZWFkY3J1bWItYmcpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1icy1icmVhZGNydW1iLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uYnJlYWRjcnVtYi1pdGVtICsgLmJyZWFkY3J1bWItaXRlbSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tYnMtYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmcteCk7XG59XG5cbi5icmVhZGNydW1iLWl0ZW0gKyAuYnJlYWRjcnVtYi1pdGVtOjpiZWZvcmUge1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tYnMtYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmcteCk7XG4gIGNvbG9yOiB2YXIoLS1icy1icmVhZGNydW1iLWRpdmlkZXItY29sb3IpO1xuICBjb250ZW50OiB2YXIoLS1icy1icmVhZGNydW1iLWRpdmlkZXIsIFwiL1wiKSA7XG59XG5cbi5icmVhZGNydW1iLWl0ZW0uYWN0aXZlIHtcbiAgY29sb3I6IHZhcigtLWJzLWJyZWFkY3J1bWItaXRlbS1hY3RpdmUtY29sb3IpO1xufVxuXG4ucGFnaW5hdGlvbiB7XG4gIC0tYnMtcGFnaW5hdGlvbi1wYWRkaW5nLXg6IDAuNzVyZW07XG4gIC0tYnMtcGFnaW5hdGlvbi1wYWRkaW5nLXk6IDAuMzc1cmVtO1xuICAtLWJzLXBhZ2luYXRpb24tZm9udC1zaXplOiAxcmVtO1xuICAtLWJzLXBhZ2luYXRpb24tY29sb3I6IHZhcigtLWJzLWxpbmstY29sb3IpO1xuICAtLWJzLXBhZ2luYXRpb24tYmc6IHZhcigtLWJzLWJvZHktYmcpO1xuICAtLWJzLXBhZ2luYXRpb24tYm9yZGVyLXdpZHRoOiB2YXIoLS1icy1ib3JkZXItd2lkdGgpO1xuICAtLWJzLXBhZ2luYXRpb24tYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1ib3JkZXItY29sb3IpO1xuICAtLWJzLXBhZ2luYXRpb24tYm9yZGVyLXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cyk7XG4gIC0tYnMtcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogdmFyKC0tYnMtbGluay1ob3Zlci1jb2xvcik7XG4gIC0tYnMtcGFnaW5hdGlvbi1ob3Zlci1iZzogdmFyKC0tYnMtdGVydGlhcnktYmcpO1xuICAtLWJzLXBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1ib3JkZXItY29sb3IpO1xuICAtLWJzLXBhZ2luYXRpb24tZm9jdXMtY29sb3I6IHZhcigtLWJzLWxpbmstaG92ZXItY29sb3IpO1xuICAtLWJzLXBhZ2luYXRpb24tZm9jdXMtYmc6IHZhcigtLWJzLXNlY29uZGFyeS1iZyk7XG4gIC0tYnMtcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMzAsIDMwLCA4NiwgMC4yNSk7XG4gIC0tYnMtcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICNmZmZmZmY7XG4gIC0tYnMtcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICMxZTFlNTY7XG4gIC0tYnMtcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAjMWUxZTU2O1xuICAtLWJzLXBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6IHZhcigtLWJzLXNlY29uZGFyeS1jb2xvcik7XG4gIC0tYnMtcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogdmFyKC0tYnMtc2Vjb25kYXJ5LWJnKTtcbiAgLS1icy1wYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjogdmFyKC0tYnMtYm9yZGVyLWNvbG9yKTtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ucGFnZS1saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogdmFyKC0tYnMtcGFnaW5hdGlvbi1wYWRkaW5nLXkpIHZhcigtLWJzLXBhZ2luYXRpb24tcGFkZGluZy14KTtcbiAgZm9udC1zaXplOiB2YXIoLS1icy1wYWdpbmF0aW9uLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiB2YXIoLS1icy1wYWdpbmF0aW9uLWNvbG9yKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1wYWdpbmF0aW9uLWJnKTtcbiAgYm9yZGVyOiB2YXIoLS1icy1wYWdpbmF0aW9uLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tYnMtcGFnaW5hdGlvbi1ib3JkZXItY29sb3IpO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAucGFnZS1saW5rIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbi5wYWdlLWxpbms6aG92ZXIge1xuICB6LWluZGV4OiAyO1xuICBjb2xvcjogdmFyKC0tYnMtcGFnaW5hdGlvbi1ob3Zlci1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLXBhZ2luYXRpb24taG92ZXItYmcpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWJzLXBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yKTtcbn1cblxuLnBhZ2UtbGluazpmb2N1cyB7XG4gIHotaW5kZXg6IDM7XG4gIGNvbG9yOiB2YXIoLS1icy1wYWdpbmF0aW9uLWZvY3VzLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtcGFnaW5hdGlvbi1mb2N1cy1iZyk7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IHZhcigtLWJzLXBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdyk7XG59XG5cbi5wYWdlLWxpbmsuYWN0aXZlLFxuLmFjdGl2ZSA+IC5wYWdlLWxpbmsge1xuICB6LWluZGV4OiAzO1xuICBjb2xvcjogdmFyKC0tYnMtcGFnaW5hdGlvbi1hY3RpdmUtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1wYWdpbmF0aW9uLWFjdGl2ZS1iZyk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yKTtcbn1cblxuLnBhZ2UtbGluay5kaXNhYmxlZCxcbi5kaXNhYmxlZCA+IC5wYWdlLWxpbmsge1xuICBjb2xvcjogdmFyKC0tYnMtcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcik7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1wYWdpbmF0aW9uLWRpc2FibGVkLWJnKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1wYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcik7XG59XG5cbi5wYWdlLWl0ZW06bm90KDpmaXJzdC1jaGlsZCkgLnBhZ2UtbGluayB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKFxuICB2YXIoLS1icy1ib3JkZXItd2lkdGgpICogLTFcbik7XG59XG5cbi5wYWdlLWl0ZW0gLnBhZ2UtbGluayB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJzLXBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5wYWdpbmF0aW9uLWxnIHtcbiAgLS1icy1wYWdpbmF0aW9uLXBhZGRpbmcteDogMS41cmVtO1xuICAtLWJzLXBhZ2luYXRpb24tcGFkZGluZy15OiAwLjc1cmVtO1xuICAtLWJzLXBhZ2luYXRpb24tZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgLS1icy1wYWdpbmF0aW9uLWJvcmRlci1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4ucGFnaW5hdGlvbi1zbSB7XG4gIC0tYnMtcGFnaW5hdGlvbi1wYWRkaW5nLXg6IDAuNXJlbTtcbiAgLS1icy1wYWdpbmF0aW9uLXBhZGRpbmcteTogMC4yNXJlbTtcbiAgLS1icy1wYWdpbmF0aW9uLWZvbnQtc2l6ZTogMC44NzVyZW07XG4gIC0tYnMtcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzOiB2YXIoLS1icy1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLmJhZGdlIHtcbiAgLS1icy1iYWRnZS1wYWRkaW5nLXg6IDAuNjVlbTtcbiAgLS1icy1iYWRnZS1wYWRkaW5nLXk6IDAuMzVlbTtcbiAgLS1icy1iYWRnZS1mb250LXNpemU6IDAuNzVlbTtcbiAgLS1icy1iYWRnZS1mb250LXdlaWdodDogNzAwO1xuICAtLWJzLWJhZGdlLWNvbG9yOiAjZmZmZmZmO1xuICAtLWJzLWJhZGdlLWJvcmRlci1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMpO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLWJzLWJhZGdlLXBhZGRpbmcteSkgdmFyKC0tYnMtYmFkZ2UtcGFkZGluZy14KTtcbiAgZm9udC1zaXplOiB2YXIoLS1icy1iYWRnZS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tYnMtYmFkZ2UtZm9udC13ZWlnaHQpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6IHZhcigtLWJzLWJhZGdlLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJzLWJhZGdlLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uYmFkZ2U6ZW1wdHkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uYnRuIC5iYWRnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMXB4O1xufVxuXG4uYWxlcnQge1xuICAtLWJzLWFsZXJ0LWJnOiB0cmFuc3BhcmVudDtcbiAgLS1icy1hbGVydC1wYWRkaW5nLXg6IDFyZW07XG4gIC0tYnMtYWxlcnQtcGFkZGluZy15OiAxcmVtO1xuICAtLWJzLWFsZXJ0LW1hcmdpbi1ib3R0b206IDFyZW07XG4gIC0tYnMtYWxlcnQtY29sb3I6IGluaGVyaXQ7XG4gIC0tYnMtYWxlcnQtYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLS1icy1hbGVydC1ib3JkZXI6IHZhcigtLWJzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tYnMtYWxlcnQtYm9yZGVyLWNvbG9yKTtcbiAgLS1icy1hbGVydC1ib3JkZXItcmFkaXVzOiB2YXIoLS1icy1ib3JkZXItcmFkaXVzKTtcbiAgLS1icy1hbGVydC1saW5rLWNvbG9yOiBpbmhlcml0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IHZhcigtLWJzLWFsZXJ0LXBhZGRpbmcteSkgdmFyKC0tYnMtYWxlcnQtcGFkZGluZy14KTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tYnMtYWxlcnQtbWFyZ2luLWJvdHRvbSk7XG4gIGNvbG9yOiB2YXIoLS1icy1hbGVydC1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWFsZXJ0LWJnKTtcbiAgYm9yZGVyOiB2YXIoLS1icy1hbGVydC1ib3JkZXIpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1icy1hbGVydC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmFsZXJ0LWhlYWRpbmcge1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLmFsZXJ0LWxpbmsge1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogdmFyKC0tYnMtYWxlcnQtbGluay1jb2xvcik7XG59XG5cbi5hbGVydC1kaXNtaXNzaWJsZSB7XG4gIHBhZGRpbmctcmlnaHQ6IDNyZW07XG59XG5cbi5hbGVydC1kaXNtaXNzaWJsZSAuYnRuLWNsb3NlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAyO1xuICBwYWRkaW5nOiAxLjI1cmVtIDFyZW07XG59XG5cbi5hbGVydC1wcmltYXJ5IHtcbiAgLS1icy1hbGVydC1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeS10ZXh0LWVtcGhhc2lzKTtcbiAgLS1icy1hbGVydC1iZzogdmFyKC0tYnMtcHJpbWFyeS1iZy1zdWJ0bGUpO1xuICAtLWJzLWFsZXJ0LWJvcmRlci1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeS1ib3JkZXItc3VidGxlKTtcbiAgLS1icy1hbGVydC1saW5rLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5LXRleHQtZW1waGFzaXMpO1xufVxuXG4uYWxlcnQtc2Vjb25kYXJ5IHtcbiAgLS1icy1hbGVydC1jb2xvcjogdmFyKC0tYnMtc2Vjb25kYXJ5LXRleHQtZW1waGFzaXMpO1xuICAtLWJzLWFsZXJ0LWJnOiB2YXIoLS1icy1zZWNvbmRhcnktYmctc3VidGxlKTtcbiAgLS1icy1hbGVydC1ib3JkZXItY29sb3I6IHZhcigtLWJzLXNlY29uZGFyeS1ib3JkZXItc3VidGxlKTtcbiAgLS1icy1hbGVydC1saW5rLWNvbG9yOiB2YXIoLS1icy1zZWNvbmRhcnktdGV4dC1lbXBoYXNpcyk7XG59XG5cbi5hbGVydC1zdWNjZXNzIHtcbiAgLS1icy1hbGVydC1jb2xvcjogdmFyKC0tYnMtc3VjY2Vzcy10ZXh0LWVtcGhhc2lzKTtcbiAgLS1icy1hbGVydC1iZzogdmFyKC0tYnMtc3VjY2Vzcy1iZy1zdWJ0bGUpO1xuICAtLWJzLWFsZXJ0LWJvcmRlci1jb2xvcjogdmFyKC0tYnMtc3VjY2Vzcy1ib3JkZXItc3VidGxlKTtcbiAgLS1icy1hbGVydC1saW5rLWNvbG9yOiB2YXIoLS1icy1zdWNjZXNzLXRleHQtZW1waGFzaXMpO1xufVxuXG4uYWxlcnQtaW5mbyB7XG4gIC0tYnMtYWxlcnQtY29sb3I6IHZhcigtLWJzLWluZm8tdGV4dC1lbXBoYXNpcyk7XG4gIC0tYnMtYWxlcnQtYmc6IHZhcigtLWJzLWluZm8tYmctc3VidGxlKTtcbiAgLS1icy1hbGVydC1ib3JkZXItY29sb3I6IHZhcigtLWJzLWluZm8tYm9yZGVyLXN1YnRsZSk7XG4gIC0tYnMtYWxlcnQtbGluay1jb2xvcjogdmFyKC0tYnMtaW5mby10ZXh0LWVtcGhhc2lzKTtcbn1cblxuLmFsZXJ0LXdhcm5pbmcge1xuICAtLWJzLWFsZXJ0LWNvbG9yOiB2YXIoLS1icy13YXJuaW5nLXRleHQtZW1waGFzaXMpO1xuICAtLWJzLWFsZXJ0LWJnOiB2YXIoLS1icy13YXJuaW5nLWJnLXN1YnRsZSk7XG4gIC0tYnMtYWxlcnQtYm9yZGVyLWNvbG9yOiB2YXIoLS1icy13YXJuaW5nLWJvcmRlci1zdWJ0bGUpO1xuICAtLWJzLWFsZXJ0LWxpbmstY29sb3I6IHZhcigtLWJzLXdhcm5pbmctdGV4dC1lbXBoYXNpcyk7XG59XG5cbi5hbGVydC1kYW5nZXIge1xuICAtLWJzLWFsZXJ0LWNvbG9yOiB2YXIoLS1icy1kYW5nZXItdGV4dC1lbXBoYXNpcyk7XG4gIC0tYnMtYWxlcnQtYmc6IHZhcigtLWJzLWRhbmdlci1iZy1zdWJ0bGUpO1xuICAtLWJzLWFsZXJ0LWJvcmRlci1jb2xvcjogdmFyKC0tYnMtZGFuZ2VyLWJvcmRlci1zdWJ0bGUpO1xuICAtLWJzLWFsZXJ0LWxpbmstY29sb3I6IHZhcigtLWJzLWRhbmdlci10ZXh0LWVtcGhhc2lzKTtcbn1cblxuLmFsZXJ0LWxpZ2h0IHtcbiAgLS1icy1hbGVydC1jb2xvcjogdmFyKC0tYnMtbGlnaHQtdGV4dC1lbXBoYXNpcyk7XG4gIC0tYnMtYWxlcnQtYmc6IHZhcigtLWJzLWxpZ2h0LWJnLXN1YnRsZSk7XG4gIC0tYnMtYWxlcnQtYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1saWdodC1ib3JkZXItc3VidGxlKTtcbiAgLS1icy1hbGVydC1saW5rLWNvbG9yOiB2YXIoLS1icy1saWdodC10ZXh0LWVtcGhhc2lzKTtcbn1cblxuLmFsZXJ0LWRhcmsge1xuICAtLWJzLWFsZXJ0LWNvbG9yOiB2YXIoLS1icy1kYXJrLXRleHQtZW1waGFzaXMpO1xuICAtLWJzLWFsZXJ0LWJnOiB2YXIoLS1icy1kYXJrLWJnLXN1YnRsZSk7XG4gIC0tYnMtYWxlcnQtYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1kYXJrLWJvcmRlci1zdWJ0bGUpO1xuICAtLWJzLWFsZXJ0LWxpbmstY29sb3I6IHZhcigtLWJzLWRhcmstdGV4dC1lbXBoYXNpcyk7XG59XG5cbkBrZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICAwJSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbi14OiAxcmVtO1xuICB9XG59XG5cbi5wcm9ncmVzcyxcbi5wcm9ncmVzcy1zdGFja2VkIHtcbiAgLS1icy1wcm9ncmVzcy1oZWlnaHQ6IDFyZW07XG4gIC0tYnMtcHJvZ3Jlc3MtZm9udC1zaXplOiAwLjc1cmVtO1xuICAtLWJzLXByb2dyZXNzLWJnOiB2YXIoLS1icy1zZWNvbmRhcnktYmcpO1xuICAtLWJzLXByb2dyZXNzLWJvcmRlci1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMpO1xuICAtLWJzLXByb2dyZXNzLWJveC1zaGFkb3c6IHZhcigtLWJzLWJveC1zaGFkb3ctaW5zZXQpO1xuICAtLWJzLXByb2dyZXNzLWJhci1jb2xvcjogI2ZmZmZmZjtcbiAgLS1icy1wcm9ncmVzcy1iYXItYmc6ICMxZTFlNTY7XG4gIC0tYnMtcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb246IHdpZHRoIDAuNnMgZWFzZTtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiB2YXIoLS1icy1wcm9ncmVzcy1oZWlnaHQpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmb250LXNpemU6IHZhcigtLWJzLXByb2dyZXNzLWZvbnQtc2l6ZSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLXByb2dyZXNzLWJnKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnMtcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5wcm9ncmVzcy1iYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6IHZhcigtLWJzLXByb2dyZXNzLWJhci1jb2xvcik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtcHJvZ3Jlc3MtYmFyLWJnKTtcbiAgdHJhbnNpdGlvbjogdmFyKC0tYnMtcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb24pO1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAucHJvZ3Jlc3MtYmFyIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbi5wcm9ncmVzcy1iYXItc3RyaXBlZCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg0NWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICBiYWNrZ3JvdW5kLXNpemU6IHZhcigtLWJzLXByb2dyZXNzLWhlaWdodCkgdmFyKC0tYnMtcHJvZ3Jlc3MtaGVpZ2h0KTtcbn1cblxuLnByb2dyZXNzLXN0YWNrZWQgPiAucHJvZ3Jlc3Mge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLnByb2dyZXNzLXN0YWNrZWQgPiAucHJvZ3Jlc3MgPiAucHJvZ3Jlc3MtYmFyIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5wcm9ncmVzcy1iYXItYW5pbWF0ZWQge1xuICBhbmltYXRpb246IDFzIGxpbmVhciBpbmZpbml0ZSBwcm9ncmVzcy1iYXItc3RyaXBlcztcbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLnByb2dyZXNzLWJhci1hbmltYXRlZCB7XG4gICAgYW5pbWF0aW9uOiBub25lO1xuICB9XG59XG5cbi5saXN0LWdyb3VwIHtcbiAgLS1icy1saXN0LWdyb3VwLWNvbG9yOiB2YXIoLS1icy1ib2R5LWNvbG9yKTtcbiAgLS1icy1saXN0LWdyb3VwLWJnOiB2YXIoLS1icy1ib2R5LWJnKTtcbiAgLS1icy1saXN0LWdyb3VwLWJvcmRlci1jb2xvcjogdmFyKC0tYnMtYm9yZGVyLWNvbG9yKTtcbiAgLS1icy1saXN0LWdyb3VwLWJvcmRlci13aWR0aDogdmFyKC0tYnMtYm9yZGVyLXdpZHRoKTtcbiAgLS1icy1saXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMpO1xuICAtLWJzLWxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg6IDFyZW07XG4gIC0tYnMtbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteTogMC41cmVtO1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yOiB2YXIoLS1icy1zZWNvbmRhcnktY29sb3IpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yOiB2YXIoLS1icy1lbXBoYXNpcy1jb2xvcik7XG4gIC0tYnMtbGlzdC1ncm91cC1hY3Rpb24taG92ZXItYmc6IHZhcigtLWJzLXRlcnRpYXJ5LWJnKTtcbiAgLS1icy1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6IHZhcigtLWJzLWJvZHktY29sb3IpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogdmFyKC0tYnMtc2Vjb25kYXJ5LWJnKTtcbiAgLS1icy1saXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiB2YXIoLS1icy1zZWNvbmRhcnktY29sb3IpO1xuICAtLWJzLWxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6IHZhcigtLWJzLWJvZHktYmcpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAjZmZmZmZmO1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAjMWUxZTU2O1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogIzFlMWU1NjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1icy1saXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xufVxuXG4ubGlzdC1ncm91cC1udW1iZXJlZCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgY291bnRlci1yZXNldDogc2VjdGlvbjtcbn1cblxuLmxpc3QtZ3JvdXAtbnVtYmVyZWQgPiAubGlzdC1ncm91cC1pdGVtOjpiZWZvcmUge1xuICBjb250ZW50OiBjb3VudGVycyhzZWN0aW9uLCBcIi5cIikgXCIuIFwiO1xuICBjb3VudGVyLWluY3JlbWVudDogc2VjdGlvbjtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xuICB3aWR0aDogMTAwJTtcbiAgY29sb3I6IHZhcigtLWJzLWxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsXG4ubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XG4gIHotaW5kZXg6IDE7XG4gIGNvbG9yOiB2YXIoLS1icy1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcik7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtbGlzdC1ncm91cC1hY3Rpb24taG92ZXItYmcpO1xufVxuXG4ubGlzdC1ncm91cC1pdGVtLWFjdGlvbjphY3RpdmUge1xuICBjb2xvcjogdmFyKC0tYnMtbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnKTtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLWJzLWxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXkpIHZhcigtLWJzLWxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXgpO1xuICBjb2xvcjogdmFyKC0tYnMtbGlzdC1ncm91cC1jb2xvcik7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtbGlzdC1ncm91cC1iZyk7XG4gIGJvcmRlcjogdmFyKC0tYnMtbGlzdC1ncm91cC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLWxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yKTtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IGluaGVyaXQ7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBpbmhlcml0O1xufVxuXG4ubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogaW5oZXJpdDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogaW5oZXJpdDtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS5kaXNhYmxlZCxcbi5saXN0LWdyb3VwLWl0ZW06ZGlzYWJsZWQge1xuICBjb2xvcjogdmFyKC0tYnMtbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcik7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1saXN0LWdyb3VwLWRpc2FibGVkLWJnKTtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xuICB6LWluZGV4OiAyO1xuICBjb2xvcjogdmFyKC0tYnMtbGlzdC1ncm91cC1hY3RpdmUtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1saXN0LWdyb3VwLWFjdGl2ZS1iZyk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yKTtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0ge1xuICBib3JkZXItdG9wLXdpZHRoOiAwO1xufVxuXG4ubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xuICBtYXJnaW4tdG9wOiBjYWxjKC0xICogdmFyKC0tYnMtbGlzdC1ncm91cC1ib3JkZXItd2lkdGgpKTtcbiAgYm9yZGVyLXRvcC13aWR0aDogdmFyKC0tYnMtbGlzdC1ncm91cC1ib3JkZXItd2lkdGgpO1xufVxuXG4ubGlzdC1ncm91cC1ob3Jpem9udGFsIHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbn1cblxuLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCA+IC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhcigtLWJzLWxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4ubGlzdC1ncm91cC1ob3Jpem9udGFsID4gLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWJzLWxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG59XG5cbi5saXN0LWdyb3VwLWhvcml6b250YWwgPiAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5saXN0LWdyb3VwLWhvcml6b250YWwgPiAubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIGJvcmRlci10b3Atd2lkdGg6IHZhcigtLWJzLWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKTtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG59XG5cbi5saXN0LWdyb3VwLWhvcml6b250YWwgPiAubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xuICBtYXJnaW4tbGVmdDogY2FsYygtMSAqIHZhcigtLWJzLWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKSk7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiB2YXIoLS1icy1saXN0LWdyb3VwLWJvcmRlci13aWR0aCk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG5cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1zbSA+IC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFyKC0tYnMtbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgfVxuXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtc20gPiAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YXIoLS1icy1saXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIH1cblxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtID4gLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IHZhcigtLWJzLWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKTtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgfVxuXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtc20gPiAubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0xICogdmFyKC0tYnMtbGlzdC1ncm91cC1ib3JkZXItd2lkdGgpKTtcbiAgICBib3JkZXItbGVmdC13aWR0aDogdmFyKC0tYnMtbGlzdC1ncm91cC1ib3JkZXItd2lkdGgpO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLW1kIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG5cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1tZCA+IC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFyKC0tYnMtbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgfVxuXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbWQgPiAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YXIoLS1icy1saXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIH1cblxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLW1kID4gLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLW1kID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IHZhcigtLWJzLWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKTtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgfVxuXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbWQgPiAubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0xICogdmFyKC0tYnMtbGlzdC1ncm91cC1ib3JkZXItd2lkdGgpKTtcbiAgICBib3JkZXItbGVmdC13aWR0aDogdmFyKC0tYnMtbGlzdC1ncm91cC1ib3JkZXItd2lkdGgpO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLWxnIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG5cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1sZyA+IC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFyKC0tYnMtbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgfVxuXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbGcgPiAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YXIoLS1icy1saXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIH1cblxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLWxnID4gLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLWxnID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IHZhcigtLWJzLWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKTtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgfVxuXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbGcgPiAubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0xICogdmFyKC0tYnMtbGlzdC1ncm91cC1ib3JkZXItd2lkdGgpKTtcbiAgICBib3JkZXItbGVmdC13aWR0aDogdmFyKC0tYnMtbGlzdC1ncm91cC1ib3JkZXItd2lkdGgpO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwteGwgPiAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhcigtLWJzLWxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIH1cblxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXhsID4gLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFyKC0tYnMtbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICB9XG5cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bCA+IC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bCA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiB2YXIoLS1icy1saXN0LWdyb3VwLWJvcmRlci13aWR0aCk7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIH1cblxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXhsID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygtMSAqIHZhcigtLWJzLWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKSk7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IHZhcigtLWJzLWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwteHhsIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG5cbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14eGwgPiAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhcigtLWJzLWxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIH1cblxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXh4bCA+IC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWJzLWxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgfVxuXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwteHhsID4gLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXh4bCA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiB2YXIoLS1icy1saXN0LWdyb3VwLWJvcmRlci13aWR0aCk7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIH1cblxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXh4bCA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoLTEgKiB2YXIoLS1icy1saXN0LWdyb3VwLWJvcmRlci13aWR0aCkpO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiB2YXIoLS1icy1saXN0LWdyb3VwLWJvcmRlci13aWR0aCk7XG4gIH1cbn1cblxuLmxpc3QtZ3JvdXAtZmx1c2gge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4ubGlzdC1ncm91cC1mbHVzaCA+IC5saXN0LWdyb3VwLWl0ZW0ge1xuICBib3JkZXItd2lkdGg6IDAgMCB2YXIoLS1icy1saXN0LWdyb3VwLWJvcmRlci13aWR0aCk7XG59XG5cbi5saXN0LWdyb3VwLWZsdXNoID4gLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1wcmltYXJ5IHtcbiAgLS1icy1saXN0LWdyb3VwLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5LXRleHQtZW1waGFzaXMpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYmc6IHZhcigtLWJzLXByaW1hcnktYmctc3VidGxlKTtcbiAgLS1icy1saXN0LWdyb3VwLWJvcmRlci1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeS1ib3JkZXItc3VidGxlKTtcbiAgLS1icy1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjogdmFyKC0tYnMtZW1waGFzaXMtY29sb3IpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWJnOiB2YXIoLS1icy1wcmltYXJ5LWJvcmRlci1zdWJ0bGUpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjogdmFyKC0tYnMtZW1waGFzaXMtY29sb3IpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogdmFyKC0tYnMtcHJpbWFyeS1ib3JkZXItc3VidGxlKTtcbiAgLS1icy1saXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeS1iZy1zdWJ0bGUpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aXZlLWJnOiB2YXIoLS1icy1wcmltYXJ5LXRleHQtZW1waGFzaXMpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeS10ZXh0LWVtcGhhc2lzKTtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1zZWNvbmRhcnkge1xuICAtLWJzLWxpc3QtZ3JvdXAtY29sb3I6IHZhcigtLWJzLXNlY29uZGFyeS10ZXh0LWVtcGhhc2lzKTtcbiAgLS1icy1saXN0LWdyb3VwLWJnOiB2YXIoLS1icy1zZWNvbmRhcnktYmctc3VidGxlKTtcbiAgLS1icy1saXN0LWdyb3VwLWJvcmRlci1jb2xvcjogdmFyKC0tYnMtc2Vjb25kYXJ5LWJvcmRlci1zdWJ0bGUpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yOiB2YXIoLS1icy1lbXBoYXNpcy1jb2xvcik7XG4gIC0tYnMtbGlzdC1ncm91cC1hY3Rpb24taG92ZXItYmc6IHZhcigtLWJzLXNlY29uZGFyeS1ib3JkZXItc3VidGxlKTtcbiAgLS1icy1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6IHZhcigtLWJzLWVtcGhhc2lzLWNvbG9yKTtcbiAgLS1icy1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc6IHZhcigtLWJzLXNlY29uZGFyeS1ib3JkZXItc3VidGxlKTtcbiAgLS1icy1saXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogdmFyKC0tYnMtc2Vjb25kYXJ5LWJnLXN1YnRsZSk7XG4gIC0tYnMtbGlzdC1ncm91cC1hY3RpdmUtYmc6IHZhcigtLWJzLXNlY29uZGFyeS10ZXh0LWVtcGhhc2lzKTtcbiAgLS1icy1saXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I6IHZhcigtLWJzLXNlY29uZGFyeS10ZXh0LWVtcGhhc2lzKTtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzIHtcbiAgLS1icy1saXN0LWdyb3VwLWNvbG9yOiB2YXIoLS1icy1zdWNjZXNzLXRleHQtZW1waGFzaXMpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYmc6IHZhcigtLWJzLXN1Y2Nlc3MtYmctc3VidGxlKTtcbiAgLS1icy1saXN0LWdyb3VwLWJvcmRlci1jb2xvcjogdmFyKC0tYnMtc3VjY2Vzcy1ib3JkZXItc3VidGxlKTtcbiAgLS1icy1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjogdmFyKC0tYnMtZW1waGFzaXMtY29sb3IpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWJnOiB2YXIoLS1icy1zdWNjZXNzLWJvcmRlci1zdWJ0bGUpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjogdmFyKC0tYnMtZW1waGFzaXMtY29sb3IpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogdmFyKC0tYnMtc3VjY2Vzcy1ib3JkZXItc3VidGxlKTtcbiAgLS1icy1saXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogdmFyKC0tYnMtc3VjY2Vzcy1iZy1zdWJ0bGUpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aXZlLWJnOiB2YXIoLS1icy1zdWNjZXNzLXRleHQtZW1waGFzaXMpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogdmFyKC0tYnMtc3VjY2Vzcy10ZXh0LWVtcGhhc2lzKTtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1pbmZvIHtcbiAgLS1icy1saXN0LWdyb3VwLWNvbG9yOiB2YXIoLS1icy1pbmZvLXRleHQtZW1waGFzaXMpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYmc6IHZhcigtLWJzLWluZm8tYmctc3VidGxlKTtcbiAgLS1icy1saXN0LWdyb3VwLWJvcmRlci1jb2xvcjogdmFyKC0tYnMtaW5mby1ib3JkZXItc3VidGxlKTtcbiAgLS1icy1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjogdmFyKC0tYnMtZW1waGFzaXMtY29sb3IpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWJnOiB2YXIoLS1icy1pbmZvLWJvcmRlci1zdWJ0bGUpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjogdmFyKC0tYnMtZW1waGFzaXMtY29sb3IpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogdmFyKC0tYnMtaW5mby1ib3JkZXItc3VidGxlKTtcbiAgLS1icy1saXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogdmFyKC0tYnMtaW5mby1iZy1zdWJ0bGUpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aXZlLWJnOiB2YXIoLS1icy1pbmZvLXRleHQtZW1waGFzaXMpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogdmFyKC0tYnMtaW5mby10ZXh0LWVtcGhhc2lzKTtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nIHtcbiAgLS1icy1saXN0LWdyb3VwLWNvbG9yOiB2YXIoLS1icy13YXJuaW5nLXRleHQtZW1waGFzaXMpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYmc6IHZhcigtLWJzLXdhcm5pbmctYmctc3VidGxlKTtcbiAgLS1icy1saXN0LWdyb3VwLWJvcmRlci1jb2xvcjogdmFyKC0tYnMtd2FybmluZy1ib3JkZXItc3VidGxlKTtcbiAgLS1icy1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjogdmFyKC0tYnMtZW1waGFzaXMtY29sb3IpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWJnOiB2YXIoLS1icy13YXJuaW5nLWJvcmRlci1zdWJ0bGUpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjogdmFyKC0tYnMtZW1waGFzaXMtY29sb3IpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogdmFyKC0tYnMtd2FybmluZy1ib3JkZXItc3VidGxlKTtcbiAgLS1icy1saXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogdmFyKC0tYnMtd2FybmluZy1iZy1zdWJ0bGUpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aXZlLWJnOiB2YXIoLS1icy13YXJuaW5nLXRleHQtZW1waGFzaXMpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogdmFyKC0tYnMtd2FybmluZy10ZXh0LWVtcGhhc2lzKTtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIge1xuICAtLWJzLWxpc3QtZ3JvdXAtY29sb3I6IHZhcigtLWJzLWRhbmdlci10ZXh0LWVtcGhhc2lzKTtcbiAgLS1icy1saXN0LWdyb3VwLWJnOiB2YXIoLS1icy1kYW5nZXItYmctc3VidGxlKTtcbiAgLS1icy1saXN0LWdyb3VwLWJvcmRlci1jb2xvcjogdmFyKC0tYnMtZGFuZ2VyLWJvcmRlci1zdWJ0bGUpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yOiB2YXIoLS1icy1lbXBoYXNpcy1jb2xvcik7XG4gIC0tYnMtbGlzdC1ncm91cC1hY3Rpb24taG92ZXItYmc6IHZhcigtLWJzLWRhbmdlci1ib3JkZXItc3VidGxlKTtcbiAgLS1icy1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6IHZhcigtLWJzLWVtcGhhc2lzLWNvbG9yKTtcbiAgLS1icy1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc6IHZhcigtLWJzLWRhbmdlci1ib3JkZXItc3VidGxlKTtcbiAgLS1icy1saXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogdmFyKC0tYnMtZGFuZ2VyLWJnLXN1YnRsZSk7XG4gIC0tYnMtbGlzdC1ncm91cC1hY3RpdmUtYmc6IHZhcigtLWJzLWRhbmdlci10ZXh0LWVtcGhhc2lzKTtcbiAgLS1icy1saXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I6IHZhcigtLWJzLWRhbmdlci10ZXh0LWVtcGhhc2lzKTtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1saWdodCB7XG4gIC0tYnMtbGlzdC1ncm91cC1jb2xvcjogdmFyKC0tYnMtbGlnaHQtdGV4dC1lbXBoYXNpcyk7XG4gIC0tYnMtbGlzdC1ncm91cC1iZzogdmFyKC0tYnMtbGlnaHQtYmctc3VidGxlKTtcbiAgLS1icy1saXN0LWdyb3VwLWJvcmRlci1jb2xvcjogdmFyKC0tYnMtbGlnaHQtYm9yZGVyLXN1YnRsZSk7XG4gIC0tYnMtbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6IHZhcigtLWJzLWVtcGhhc2lzLWNvbG9yKTtcbiAgLS1icy1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1iZzogdmFyKC0tYnMtbGlnaHQtYm9yZGVyLXN1YnRsZSk7XG4gIC0tYnMtbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yOiB2YXIoLS1icy1lbXBoYXNpcy1jb2xvcik7XG4gIC0tYnMtbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnOiB2YXIoLS1icy1saWdodC1ib3JkZXItc3VidGxlKTtcbiAgLS1icy1saXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogdmFyKC0tYnMtbGlnaHQtYmctc3VidGxlKTtcbiAgLS1icy1saXN0LWdyb3VwLWFjdGl2ZS1iZzogdmFyKC0tYnMtbGlnaHQtdGV4dC1lbXBoYXNpcyk7XG4gIC0tYnMtbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1saWdodC10ZXh0LWVtcGhhc2lzKTtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1kYXJrIHtcbiAgLS1icy1saXN0LWdyb3VwLWNvbG9yOiB2YXIoLS1icy1kYXJrLXRleHQtZW1waGFzaXMpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYmc6IHZhcigtLWJzLWRhcmstYmctc3VidGxlKTtcbiAgLS1icy1saXN0LWdyb3VwLWJvcmRlci1jb2xvcjogdmFyKC0tYnMtZGFyay1ib3JkZXItc3VidGxlKTtcbiAgLS1icy1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjogdmFyKC0tYnMtZW1waGFzaXMtY29sb3IpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWJnOiB2YXIoLS1icy1kYXJrLWJvcmRlci1zdWJ0bGUpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjogdmFyKC0tYnMtZW1waGFzaXMtY29sb3IpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogdmFyKC0tYnMtZGFyay1ib3JkZXItc3VidGxlKTtcbiAgLS1icy1saXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogdmFyKC0tYnMtZGFyay1iZy1zdWJ0bGUpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aXZlLWJnOiB2YXIoLS1icy1kYXJrLXRleHQtZW1waGFzaXMpO1xuICAtLWJzLWxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogdmFyKC0tYnMtZGFyay10ZXh0LWVtcGhhc2lzKTtcbn1cblxuLmJ0bi1jbG9zZSB7XG4gIC0tYnMtYnRuLWNsb3NlLWNvbG9yOiAjMzMzMzMzO1xuICAtLWJzLWJ0bi1jbG9zZS1iZzogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nJTIzMzMzMzMzJyUzZSUzY3BhdGggZD0nTS4yOTMuMjkzYTEgMSAwIDAgMSAxLjQxNCAwTDggNi41ODYgMTQuMjkzLjI5M2ExIDEgMCAxIDEgMS40MTQgMS40MTRMOS40MTQgOGw2LjI5MyA2LjI5M2ExIDEgMCAwIDEtMS40MTQgMS40MTRMOCA5LjQxNGwtNi4yOTMgNi4yOTNhMSAxIDAgMCAxLTEuNDE0LTEuNDE0TDYuNTg2IDggLjI5MyAxLjcwN2ExIDEgMCAwIDEgMC0xLjQxNHonLyUzZSUzYy9zdmclM2VcIik7XG4gIC0tYnMtYnRuLWNsb3NlLW9wYWNpdHk6IDAuNTtcbiAgLS1icy1idG4tY2xvc2UtaG92ZXItb3BhY2l0eTogMC43NTtcbiAgLS1icy1idG4tY2xvc2UtZm9jdXMtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMzAsIDMwLCA4NiwgMC4yNSk7XG4gIC0tYnMtYnRuLWNsb3NlLWZvY3VzLW9wYWNpdHk6IDE7XG4gIC0tYnMtYnRuLWNsb3NlLWRpc2FibGVkLW9wYWNpdHk6IDAuMjU7XG4gIC0tYnMtYnRuLWNsb3NlLXdoaXRlLWZpbHRlcjogaW52ZXJ0KDEpIGdyYXlzY2FsZSgxMDAlKSBicmlnaHRuZXNzKDIwMCUpO1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgd2lkdGg6IDFlbTtcbiAgaGVpZ2h0OiAxZW07XG4gIHBhZGRpbmc6IDAuMjVlbSAwLjI1ZW07XG4gIGNvbG9yOiB2YXIoLS1icy1idG4tY2xvc2UtY29sb3IpO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB2YXIoLS1icy1idG4tY2xvc2UtYmcpIGNlbnRlci8xZW0gYXV0byBuby1yZXBlYXQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBvcGFjaXR5OiB2YXIoLS1icy1idG4tY2xvc2Utb3BhY2l0eSk7XG59XG5cbi5idG4tY2xvc2U6aG92ZXIge1xuICBjb2xvcjogdmFyKC0tYnMtYnRuLWNsb3NlLWNvbG9yKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBvcGFjaXR5OiB2YXIoLS1icy1idG4tY2xvc2UtaG92ZXItb3BhY2l0eSk7XG59XG5cbi5idG4tY2xvc2U6Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xuICBib3gtc2hhZG93OiB2YXIoLS1icy1idG4tY2xvc2UtZm9jdXMtc2hhZG93KTtcbiAgb3BhY2l0eTogdmFyKC0tYnMtYnRuLWNsb3NlLWZvY3VzLW9wYWNpdHkpO1xufVxuXG4uYnRuLWNsb3NlOmRpc2FibGVkLFxuLmJ0bi1jbG9zZS5kaXNhYmxlZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgb3BhY2l0eTogdmFyKC0tYnMtYnRuLWNsb3NlLWRpc2FibGVkLW9wYWNpdHkpO1xufVxuXG4uYnRuLWNsb3NlLXdoaXRlIHtcbiAgZmlsdGVyOiB2YXIoLS1icy1idG4tY2xvc2Utd2hpdGUtZmlsdGVyKTtcbn1cblxuW2RhdGEtYnMtdGhlbWU9ZGFya10gLmJ0bi1jbG9zZSB7XG4gIGZpbHRlcjogdmFyKC0tYnMtYnRuLWNsb3NlLXdoaXRlLWZpbHRlcik7XG59XG5cbi50b2FzdCB7XG4gIC0tYnMtdG9hc3QtemluZGV4OiAxMDkwO1xuICAtLWJzLXRvYXN0LXBhZGRpbmcteDogMC43NXJlbTtcbiAgLS1icy10b2FzdC1wYWRkaW5nLXk6IDAuNXJlbTtcbiAgLS1icy10b2FzdC1zcGFjaW5nOiAxLjVyZW07XG4gIC0tYnMtdG9hc3QtbWF4LXdpZHRoOiAzNTBweDtcbiAgLS1icy10b2FzdC1mb250LXNpemU6IDAuODc1cmVtO1xuICAtLWJzLXRvYXN0LWNvbG9yOiA7XG4gIC0tYnMtdG9hc3QtYmc6IHJnYmEodmFyKC0tYnMtYm9keS1iZy1yZ2IpLCAwLjg1KTtcbiAgLS1icy10b2FzdC1ib3JkZXItd2lkdGg6IHZhcigtLWJzLWJvcmRlci13aWR0aCk7XG4gIC0tYnMtdG9hc3QtYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQpO1xuICAtLWJzLXRvYXN0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMpO1xuICAtLWJzLXRvYXN0LWJveC1zaGFkb3c6IHZhcigtLWJzLWJveC1zaGFkb3cpO1xuICAtLWJzLXRvYXN0LWhlYWRlci1jb2xvcjogdmFyKC0tYnMtc2Vjb25kYXJ5LWNvbG9yKTtcbiAgLS1icy10b2FzdC1oZWFkZXItYmc6IHJnYmEodmFyKC0tYnMtYm9keS1iZy1yZ2IpLCAwLjg1KTtcbiAgLS1icy10b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQpO1xuICB3aWR0aDogdmFyKC0tYnMtdG9hc3QtbWF4LXdpZHRoKTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IHZhcigtLWJzLXRvYXN0LWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiB2YXIoLS1icy10b2FzdC1jb2xvcik7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy10b2FzdC1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogdmFyKC0tYnMtdG9hc3QtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy10b2FzdC1ib3JkZXItY29sb3IpO1xuICBib3gtc2hhZG93OiB2YXIoLS1icy10b2FzdC1ib3gtc2hhZG93KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnMtdG9hc3QtYm9yZGVyLXJhZGl1cyk7XG59XG5cbi50b2FzdC5zaG93aW5nIHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnRvYXN0Om5vdCguc2hvdykge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udG9hc3QtY29udGFpbmVyIHtcbiAgLS1icy10b2FzdC16aW5kZXg6IDEwOTA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogdmFyKC0tYnMtdG9hc3QtemluZGV4KTtcbiAgd2lkdGg6IG1heC1jb250ZW50O1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4udG9hc3QtY29udGFpbmVyID4gOm5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1icy10b2FzdC1zcGFjaW5nKTtcbn1cblxuLnRvYXN0LWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IHZhcigtLWJzLXRvYXN0LXBhZGRpbmcteSkgdmFyKC0tYnMtdG9hc3QtcGFkZGluZy14KTtcbiAgY29sb3I6IHZhcigtLWJzLXRvYXN0LWhlYWRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLXRvYXN0LWhlYWRlci1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlci1ib3R0b206IHZhcigtLWJzLXRvYXN0LWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tYnMtdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcik7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IGNhbGModmFyKC0tYnMtdG9hc3QtYm9yZGVyLXJhZGl1cykgLSB2YXIoLS1icy10b2FzdC1ib3JkZXItd2lkdGgpKTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGNhbGModmFyKC0tYnMtdG9hc3QtYm9yZGVyLXJhZGl1cykgLSB2YXIoLS1icy10b2FzdC1ib3JkZXItd2lkdGgpKTtcbn1cblxuLnRvYXN0LWhlYWRlciAuYnRuLWNsb3NlIHtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0wLjUgKiB2YXIoLS1icy10b2FzdC1wYWRkaW5nLXgpKTtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLWJzLXRvYXN0LXBhZGRpbmcteCk7XG59XG5cbi50b2FzdC1ib2R5IHtcbiAgcGFkZGluZzogdmFyKC0tYnMtdG9hc3QtcGFkZGluZy14KTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xufVxuXG4ubW9kYWwge1xuICAtLWJzLW1vZGFsLXppbmRleDogMTA1NTtcbiAgLS1icy1tb2RhbC13aWR0aDogNTAwcHg7XG4gIC0tYnMtbW9kYWwtcGFkZGluZzogMXJlbTtcbiAgLS1icy1tb2RhbC1tYXJnaW46IDAuNXJlbTtcbiAgLS1icy1tb2RhbC1jb2xvcjogO1xuICAtLWJzLW1vZGFsLWJnOiB2YXIoLS1icy1ib2R5LWJnKTtcbiAgLS1icy1tb2RhbC1ib3JkZXItY29sb3I6IHZhcigtLWJzLWJvcmRlci1jb2xvci10cmFuc2x1Y2VudCk7XG4gIC0tYnMtbW9kYWwtYm9yZGVyLXdpZHRoOiB2YXIoLS1icy1ib3JkZXItd2lkdGgpO1xuICAtLWJzLW1vZGFsLWJvcmRlci1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMtbGcpO1xuICAtLWJzLW1vZGFsLWJveC1zaGFkb3c6IDAgMXB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIC0tYnMtbW9kYWwtaW5uZXItYm9yZGVyLXJhZGl1czogY2FsYyh2YXIoLS1icy1ib3JkZXItcmFkaXVzLWxnKSAtICh2YXIoLS1icy1ib3JkZXItd2lkdGgpKSk7XG4gIC0tYnMtbW9kYWwtaGVhZGVyLXBhZGRpbmcteDogMXJlbTtcbiAgLS1icy1tb2RhbC1oZWFkZXItcGFkZGluZy15OiAxcmVtO1xuICAtLWJzLW1vZGFsLWhlYWRlci1wYWRkaW5nOiAxcmVtIDFyZW07XG4gIC0tYnMtbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogdmFyKC0tYnMtYm9yZGVyLWNvbG9yKTtcbiAgLS1icy1tb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiB2YXIoLS1icy1ib3JkZXItd2lkdGgpO1xuICAtLWJzLW1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAxLjU7XG4gIC0tYnMtbW9kYWwtZm9vdGVyLWdhcDogMC41cmVtO1xuICAtLWJzLW1vZGFsLWZvb3Rlci1iZzogO1xuICAtLWJzLW1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6IHZhcigtLWJzLWJvcmRlci1jb2xvcik7XG4gIC0tYnMtbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogdmFyKC0tYnMtYm9yZGVyLXdpZHRoKTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IHZhcigtLWJzLW1vZGFsLXppbmRleCk7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgb3V0bGluZTogMDtcbn1cblxuLm1vZGFsLWRpYWxvZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogdmFyKC0tYnMtbW9kYWwtbWFyZ2luKTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5tb2RhbC5mYWRlIC5tb2RhbC1kaWFsb2cge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLW91dDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwcHgpO1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAubW9kYWwuZmFkZSAubW9kYWwtZGlhbG9nIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbi5tb2RhbC5zaG93IC5tb2RhbC1kaWFsb2cge1xuICB0cmFuc2Zvcm06IG5vbmU7XG59XG5cbi5tb2RhbC5tb2RhbC1zdGF0aWMgLm1vZGFsLWRpYWxvZyB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wMik7XG59XG5cbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gdmFyKC0tYnMtbW9kYWwtbWFyZ2luKSAqIDIpO1xufVxuXG4ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUgLm1vZGFsLWNvbnRlbnQge1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUgLm1vZGFsLWJvZHkge1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4ubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogY2FsYygxMDAlIC0gdmFyKC0tYnMtbW9kYWwtbWFyZ2luKSAqIDIpO1xufVxuXG4ubW9kYWwtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2lkdGg6IDEwMCU7XG4gIGNvbG9yOiB2YXIoLS1icy1tb2RhbC1jb2xvcik7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1tb2RhbC1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogdmFyKC0tYnMtbW9kYWwtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1tb2RhbC1ib3JkZXItY29sb3IpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1icy1tb2RhbC1ib3JkZXItcmFkaXVzKTtcbiAgb3V0bGluZTogMDtcbn1cblxuLm1vZGFsLWJhY2tkcm9wIHtcbiAgLS1icy1iYWNrZHJvcC16aW5kZXg6IDEwNTA7XG4gIC0tYnMtYmFja2Ryb3AtYmc6ICMzMzMzMzM7XG4gIC0tYnMtYmFja2Ryb3Atb3BhY2l0eTogMC41O1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogdmFyKC0tYnMtYmFja2Ryb3AtemluZGV4KTtcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1iYWNrZHJvcC1iZyk7XG59XG5cbi5tb2RhbC1iYWNrZHJvcC5mYWRlIHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLm1vZGFsLWJhY2tkcm9wLnNob3cge1xuICBvcGFjaXR5OiB2YXIoLS1icy1iYWNrZHJvcC1vcGFjaXR5KTtcbn1cblxuLm1vZGFsLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IHZhcigtLWJzLW1vZGFsLWhlYWRlci1wYWRkaW5nKTtcbiAgYm9yZGVyLWJvdHRvbTogdmFyKC0tYnMtbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tYnMtbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcik7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhcigtLWJzLW1vZGFsLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFyKC0tYnMtbW9kYWwtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5tb2RhbC1oZWFkZXIgLmJ0bi1jbG9zZSB7XG4gIHBhZGRpbmc6IGNhbGModmFyKC0tYnMtbW9kYWwtaGVhZGVyLXBhZGRpbmcteSkgKiAwLjUpIGNhbGModmFyKC0tYnMtbW9kYWwtaGVhZGVyLXBhZGRpbmcteCkgKiAwLjUpO1xuICBtYXJnaW46IGNhbGMoLTAuNSAqIHZhcigtLWJzLW1vZGFsLWhlYWRlci1wYWRkaW5nLXkpKSBjYWxjKC0wLjUgKiB2YXIoLS1icy1tb2RhbC1oZWFkZXItcGFkZGluZy14KSkgY2FsYygtMC41ICogdmFyKC0tYnMtbW9kYWwtaGVhZGVyLXBhZGRpbmcteSkpIGF1dG87XG59XG5cbi5tb2RhbC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1icy1tb2RhbC10aXRsZS1saW5lLWhlaWdodCk7XG59XG5cbi5tb2RhbC1ib2R5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4OiAxIDEgYXV0bztcbiAgcGFkZGluZzogdmFyKC0tYnMtbW9kYWwtcGFkZGluZyk7XG59XG5cbi5tb2RhbC1mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXNocmluazogMDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBwYWRkaW5nOiBjYWxjKHZhcigtLWJzLW1vZGFsLXBhZGRpbmcpIC0gdmFyKC0tYnMtbW9kYWwtZm9vdGVyLWdhcCkgKiAwLjUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1tb2RhbC1mb290ZXItYmcpO1xuICBib3JkZXItdG9wOiB2YXIoLS1icy1tb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1tb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yKTtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhcigtLWJzLW1vZGFsLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YXIoLS1icy1tb2RhbC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuLm1vZGFsLWZvb3RlciA+ICoge1xuICBtYXJnaW46IGNhbGModmFyKC0tYnMtbW9kYWwtZm9vdGVyLWdhcCkgKiAwLjUpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLm1vZGFsIHtcbiAgICAtLWJzLW1vZGFsLW1hcmdpbjogMS43NXJlbTtcbiAgICAtLWJzLW1vZGFsLWJveC1zaGFkb3c6IDAgNHB4IDZweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIH1cblxuICAubW9kYWwtZGlhbG9nIHtcbiAgICBtYXgtd2lkdGg6IHZhcigtLWJzLW1vZGFsLXdpZHRoKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICAubW9kYWwtc20ge1xuICAgIC0tYnMtbW9kYWwtd2lkdGg6IDMwMHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubW9kYWwtbGcsXG4gIC5tb2RhbC14bCB7XG4gICAgLS1icy1tb2RhbC13aWR0aDogODAwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAubW9kYWwteGwge1xuICAgIC0tYnMtbW9kYWwtd2lkdGg6IDExNDBweDtcbiAgfVxufVxuXG4ubW9kYWwtZnVsbHNjcmVlbiB7XG4gIHdpZHRoOiAxMDB2dztcbiAgbWF4LXdpZHRoOiBub25lO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbjogMDtcbn1cblxuLm1vZGFsLWZ1bGxzY3JlZW4gLm1vZGFsLWNvbnRlbnQge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLm1vZGFsLWZ1bGxzY3JlZW4gLm1vZGFsLWhlYWRlcixcbi5tb2RhbC1mdWxsc2NyZWVuIC5tb2RhbC1mb290ZXIge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4ubW9kYWwtZnVsbHNjcmVlbiAubW9kYWwtYm9keSB7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuICAubW9kYWwtZnVsbHNjcmVlbi1zbS1kb3duIHtcbiAgICB3aWR0aDogMTAwdnc7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAubW9kYWwtZnVsbHNjcmVlbi1zbS1kb3duIC5tb2RhbC1jb250ZW50IHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cblxuICAubW9kYWwtZnVsbHNjcmVlbi1zbS1kb3duIC5tb2RhbC1oZWFkZXIsXG4gIC5tb2RhbC1mdWxsc2NyZWVuLXNtLWRvd24gLm1vZGFsLWZvb3RlciB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxuXG4gIC5tb2RhbC1mdWxsc2NyZWVuLXNtLWRvd24gLm1vZGFsLWJvZHkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5tb2RhbC1mdWxsc2NyZWVuLW1kLWRvd24ge1xuICAgIHdpZHRoOiAxMDB2dztcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC5tb2RhbC1mdWxsc2NyZWVuLW1kLWRvd24gLm1vZGFsLWNvbnRlbnQge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxuXG4gIC5tb2RhbC1mdWxsc2NyZWVuLW1kLWRvd24gLm1vZGFsLWhlYWRlcixcbiAgLm1vZGFsLWZ1bGxzY3JlZW4tbWQtZG93biAubW9kYWwtZm9vdGVyIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG5cbiAgLm1vZGFsLWZ1bGxzY3JlZW4tbWQtZG93biAubW9kYWwtYm9keSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLm1vZGFsLWZ1bGxzY3JlZW4tbGctZG93biB7XG4gICAgd2lkdGg6IDEwMHZ3O1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLm1vZGFsLWZ1bGxzY3JlZW4tbGctZG93biAubW9kYWwtY29udGVudCB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG5cbiAgLm1vZGFsLWZ1bGxzY3JlZW4tbGctZG93biAubW9kYWwtaGVhZGVyLFxuICAubW9kYWwtZnVsbHNjcmVlbi1sZy1kb3duIC5tb2RhbC1mb290ZXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cblxuICAubW9kYWwtZnVsbHNjcmVlbi1sZy1kb3duIC5tb2RhbC1ib2R5IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHtcbiAgLm1vZGFsLWZ1bGxzY3JlZW4teGwtZG93biB7XG4gICAgd2lkdGg6IDEwMHZ3O1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLm1vZGFsLWZ1bGxzY3JlZW4teGwtZG93biAubW9kYWwtY29udGVudCB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG5cbiAgLm1vZGFsLWZ1bGxzY3JlZW4teGwtZG93biAubW9kYWwtaGVhZGVyLFxuICAubW9kYWwtZnVsbHNjcmVlbi14bC1kb3duIC5tb2RhbC1mb290ZXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cblxuICAubW9kYWwtZnVsbHNjcmVlbi14bC1kb3duIC5tb2RhbC1ib2R5IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMzk5Ljk4cHgpIHtcbiAgLm1vZGFsLWZ1bGxzY3JlZW4teHhsLWRvd24ge1xuICAgIHdpZHRoOiAxMDB2dztcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC5tb2RhbC1mdWxsc2NyZWVuLXh4bC1kb3duIC5tb2RhbC1jb250ZW50IHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cblxuICAubW9kYWwtZnVsbHNjcmVlbi14eGwtZG93biAubW9kYWwtaGVhZGVyLFxuICAubW9kYWwtZnVsbHNjcmVlbi14eGwtZG93biAubW9kYWwtZm9vdGVyIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG5cbiAgLm1vZGFsLWZ1bGxzY3JlZW4teHhsLWRvd24gLm1vZGFsLWJvZHkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLnRvb2x0aXAge1xuICAtLWJzLXRvb2x0aXAtemluZGV4OiAxMDgwO1xuICAtLWJzLXRvb2x0aXAtbWF4LXdpZHRoOiAyMDBweDtcbiAgLS1icy10b29sdGlwLXBhZGRpbmcteDogMC41cmVtO1xuICAtLWJzLXRvb2x0aXAtcGFkZGluZy15OiAwLjI1cmVtO1xuICAtLWJzLXRvb2x0aXAtbWFyZ2luOiA7XG4gIC0tYnMtdG9vbHRpcC1mb250LXNpemU6IDAuODc1cmVtO1xuICAtLWJzLXRvb2x0aXAtY29sb3I6IHZhcigtLWJzLWJvZHktYmcpO1xuICAtLWJzLXRvb2x0aXAtYmc6IHZhcigtLWJzLWVtcGhhc2lzLWNvbG9yKTtcbiAgLS1icy10b29sdGlwLWJvcmRlci1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMpO1xuICAtLWJzLXRvb2x0aXAtb3BhY2l0eTogMC45O1xuICAtLWJzLXRvb2x0aXAtYXJyb3ctd2lkdGg6IDAuOHJlbTtcbiAgLS1icy10b29sdGlwLWFycm93LWhlaWdodDogMC40cmVtO1xuICB6LWluZGV4OiB2YXIoLS1icy10b29sdGlwLXppbmRleCk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IHZhcigtLWJzLXRvb2x0aXAtbWFyZ2luKTtcbiAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBcIlNvdXJjZSBTYW5zIFByb1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbiAgZm9udC1zaXplOiB2YXIoLS1icy10b29sdGlwLWZvbnQtc2l6ZSk7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnRvb2x0aXAuc2hvdyB7XG4gIG9wYWNpdHk6IHZhcigtLWJzLXRvb2x0aXAtb3BhY2l0eSk7XG59XG5cbi50b29sdGlwIC50b29sdGlwLWFycm93IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiB2YXIoLS1icy10b29sdGlwLWFycm93LXdpZHRoKTtcbiAgaGVpZ2h0OiB2YXIoLS1icy10b29sdGlwLWFycm93LWhlaWdodCk7XG59XG5cbi50b29sdGlwIC50b29sdGlwLWFycm93OjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG59XG5cbi5icy10b29sdGlwLXRvcCAudG9vbHRpcC1hcnJvdyxcbi5icy10b29sdGlwLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj10b3BdIC50b29sdGlwLWFycm93IHtcbiAgYm90dG9tOiBjYWxjKC0xICogdmFyKC0tYnMtdG9vbHRpcC1hcnJvdy1oZWlnaHQpKTtcbn1cblxuLmJzLXRvb2x0aXAtdG9wIC50b29sdGlwLWFycm93OjpiZWZvcmUsXG4uYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49dG9wXSAudG9vbHRpcC1hcnJvdzo6YmVmb3JlIHtcbiAgdG9wOiAtMXB4O1xuICBib3JkZXItd2lkdGg6IHZhcigtLWJzLXRvb2x0aXAtYXJyb3ctaGVpZ2h0KSBjYWxjKHZhcigtLWJzLXRvb2x0aXAtYXJyb3ctd2lkdGgpICogMC41KSAwO1xuICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1icy10b29sdGlwLWJnKTtcbn1cblxuLyogcnRsOmJlZ2luOmlnbm9yZSAqL1xuXG4uYnMtdG9vbHRpcC1lbmQgLnRvb2x0aXAtYXJyb3csXG4uYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49cmlnaHRdIC50b29sdGlwLWFycm93IHtcbiAgbGVmdDogY2FsYygtMSAqIHZhcigtLWJzLXRvb2x0aXAtYXJyb3ctaGVpZ2h0KSk7XG4gIHdpZHRoOiB2YXIoLS1icy10b29sdGlwLWFycm93LWhlaWdodCk7XG4gIGhlaWdodDogdmFyKC0tYnMtdG9vbHRpcC1hcnJvdy13aWR0aCk7XG59XG5cbi5icy10b29sdGlwLWVuZCAudG9vbHRpcC1hcnJvdzo6YmVmb3JlLFxuLmJzLXRvb2x0aXAtYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePXJpZ2h0XSAudG9vbHRpcC1hcnJvdzo6YmVmb3JlIHtcbiAgcmlnaHQ6IC0xcHg7XG4gIGJvcmRlci13aWR0aDogY2FsYyh2YXIoLS1icy10b29sdGlwLWFycm93LXdpZHRoKSAqIDAuNSkgdmFyKC0tYnMtdG9vbHRpcC1hcnJvdy1oZWlnaHQpIGNhbGModmFyKC0tYnMtdG9vbHRpcC1hcnJvdy13aWR0aCkgKiAwLjUpIDA7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogdmFyKC0tYnMtdG9vbHRpcC1iZyk7XG59XG5cbi8qIHJ0bDplbmQ6aWdub3JlICovXG5cbi5icy10b29sdGlwLWJvdHRvbSAudG9vbHRpcC1hcnJvdyxcbi5icy10b29sdGlwLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1ib3R0b21dIC50b29sdGlwLWFycm93IHtcbiAgdG9wOiBjYWxjKC0xICogdmFyKC0tYnMtdG9vbHRpcC1hcnJvdy1oZWlnaHQpKTtcbn1cblxuLmJzLXRvb2x0aXAtYm90dG9tIC50b29sdGlwLWFycm93OjpiZWZvcmUsXG4uYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49Ym90dG9tXSAudG9vbHRpcC1hcnJvdzo6YmVmb3JlIHtcbiAgYm90dG9tOiAtMXB4O1xuICBib3JkZXItd2lkdGg6IDAgY2FsYyh2YXIoLS1icy10b29sdGlwLWFycm93LXdpZHRoKSAqIDAuNSkgdmFyKC0tYnMtdG9vbHRpcC1hcnJvdy1oZWlnaHQpO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1icy10b29sdGlwLWJnKTtcbn1cblxuLyogcnRsOmJlZ2luOmlnbm9yZSAqL1xuXG4uYnMtdG9vbHRpcC1zdGFydCAudG9vbHRpcC1hcnJvdyxcbi5icy10b29sdGlwLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1sZWZ0XSAudG9vbHRpcC1hcnJvdyB7XG4gIHJpZ2h0OiBjYWxjKC0xICogdmFyKC0tYnMtdG9vbHRpcC1hcnJvdy1oZWlnaHQpKTtcbiAgd2lkdGg6IHZhcigtLWJzLXRvb2x0aXAtYXJyb3ctaGVpZ2h0KTtcbiAgaGVpZ2h0OiB2YXIoLS1icy10b29sdGlwLWFycm93LXdpZHRoKTtcbn1cblxuLmJzLXRvb2x0aXAtc3RhcnQgLnRvb2x0aXAtYXJyb3c6OmJlZm9yZSxcbi5icy10b29sdGlwLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1sZWZ0XSAudG9vbHRpcC1hcnJvdzo6YmVmb3JlIHtcbiAgbGVmdDogLTFweDtcbiAgYm9yZGVyLXdpZHRoOiBjYWxjKHZhcigtLWJzLXRvb2x0aXAtYXJyb3ctd2lkdGgpICogMC41KSAwIGNhbGModmFyKC0tYnMtdG9vbHRpcC1hcnJvdy13aWR0aCkgKiAwLjUpIHZhcigtLWJzLXRvb2x0aXAtYXJyb3ctaGVpZ2h0KTtcbiAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLWJzLXRvb2x0aXAtYmcpO1xufVxuXG4vKiBydGw6ZW5kOmlnbm9yZSAqL1xuXG4udG9vbHRpcC1pbm5lciB7XG4gIG1heC13aWR0aDogdmFyKC0tYnMtdG9vbHRpcC1tYXgtd2lkdGgpO1xuICBwYWRkaW5nOiB2YXIoLS1icy10b29sdGlwLXBhZGRpbmcteSkgdmFyKC0tYnMtdG9vbHRpcC1wYWRkaW5nLXgpO1xuICBjb2xvcjogdmFyKC0tYnMtdG9vbHRpcC1jb2xvcik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtdG9vbHRpcC1iZyk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJzLXRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5wb3BvdmVyIHtcbiAgLS1icy1wb3BvdmVyLXppbmRleDogMTA3MDtcbiAgLS1icy1wb3BvdmVyLW1heC13aWR0aDogMjc2cHg7XG4gIC0tYnMtcG9wb3Zlci1mb250LXNpemU6IDAuODc1cmVtO1xuICAtLWJzLXBvcG92ZXItYmc6IHZhcigtLWJzLWJvZHktYmcpO1xuICAtLWJzLXBvcG92ZXItYm9yZGVyLXdpZHRoOiB2YXIoLS1icy1ib3JkZXItd2lkdGgpO1xuICAtLWJzLXBvcG92ZXItYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQpO1xuICAtLWJzLXBvcG92ZXItYm9yZGVyLXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cy1sZyk7XG4gIC0tYnMtcG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzOiBjYWxjKFxuICAgIHZhcigtLWJzLWJvcmRlci1yYWRpdXMtbGcpIC0gdmFyKC0tYnMtYm9yZGVyLXdpZHRoKVxuICApO1xuICAtLWJzLXBvcG92ZXItYm94LXNoYWRvdzogMCA0cHggNnB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgLS1icy1wb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg6IDFyZW07XG4gIC0tYnMtcG9wb3Zlci1oZWFkZXItcGFkZGluZy15OiAwLjVyZW07XG4gIC0tYnMtcG9wb3Zlci1oZWFkZXItZm9udC1zaXplOiAxcmVtO1xuICAtLWJzLXBvcG92ZXItaGVhZGVyLWNvbG9yOiBpbmhlcml0O1xuICAtLWJzLXBvcG92ZXItaGVhZGVyLWJnOiB2YXIoLS1icy1zZWNvbmRhcnktYmcpO1xuICAtLWJzLXBvcG92ZXItYm9keS1wYWRkaW5nLXg6IDFyZW07XG4gIC0tYnMtcG9wb3Zlci1ib2R5LXBhZGRpbmcteTogMXJlbTtcbiAgLS1icy1wb3BvdmVyLWJvZHktY29sb3I6IHZhcigtLWJzLWJvZHktY29sb3IpO1xuICAtLWJzLXBvcG92ZXItYXJyb3ctd2lkdGg6IDFyZW07XG4gIC0tYnMtcG9wb3Zlci1hcnJvdy1oZWlnaHQ6IDAuNXJlbTtcbiAgLS1icy1wb3BvdmVyLWFycm93LWJvcmRlcjogdmFyKC0tYnMtcG9wb3Zlci1ib3JkZXItY29sb3IpO1xuICB6LWluZGV4OiB2YXIoLS1icy1wb3BvdmVyLXppbmRleCk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IHZhcigtLWJzLXBvcG92ZXItbWF4LXdpZHRoKTtcbiAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBcIlNvdXJjZSBTYW5zIFByb1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbiAgZm9udC1zaXplOiB2YXIoLS1icy1wb3BvdmVyLWZvbnQtc2l6ZSk7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtcG9wb3Zlci1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogdmFyKC0tYnMtcG9wb3Zlci1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLXBvcG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnMtcG9wb3Zlci1ib3JkZXItcmFkaXVzKTtcbn1cblxuLnBvcG92ZXIgLnBvcG92ZXItYXJyb3cge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IHZhcigtLWJzLXBvcG92ZXItYXJyb3ctd2lkdGgpO1xuICBoZWlnaHQ6IHZhcigtLWJzLXBvcG92ZXItYXJyb3ctaGVpZ2h0KTtcbn1cblxuLnBvcG92ZXIgLnBvcG92ZXItYXJyb3c6OmJlZm9yZSxcbi5wb3BvdmVyIC5wb3BvdmVyLWFycm93OjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMDtcbn1cblxuLmJzLXBvcG92ZXItdG9wID4gLnBvcG92ZXItYXJyb3csXG4uYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49dG9wXSA+IC5wb3BvdmVyLWFycm93IHtcbiAgYm90dG9tOiBjYWxjKC0xICogKHZhcigtLWJzLXBvcG92ZXItYXJyb3ctaGVpZ2h0KSkgLSB2YXIoLS1icy1wb3BvdmVyLWJvcmRlci13aWR0aCkpO1xufVxuXG4uYnMtcG9wb3Zlci10b3AgPiAucG9wb3Zlci1hcnJvdzo6YmVmb3JlLFxuLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePXRvcF0gPiAucG9wb3Zlci1hcnJvdzo6YmVmb3JlLFxuLmJzLXBvcG92ZXItdG9wID4gLnBvcG92ZXItYXJyb3c6OmFmdGVyLFxuLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePXRvcF0gPiAucG9wb3Zlci1hcnJvdzo6YWZ0ZXIge1xuICBib3JkZXItd2lkdGg6IHZhcigtLWJzLXBvcG92ZXItYXJyb3ctaGVpZ2h0KSBjYWxjKHZhcigtLWJzLXBvcG92ZXItYXJyb3ctd2lkdGgpICogMC41KSAwO1xufVxuXG4uYnMtcG9wb3Zlci10b3AgPiAucG9wb3Zlci1hcnJvdzo6YmVmb3JlLFxuLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePXRvcF0gPiAucG9wb3Zlci1hcnJvdzo6YmVmb3JlIHtcbiAgYm90dG9tOiAwO1xuICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1icy1wb3BvdmVyLWFycm93LWJvcmRlcik7XG59XG5cbi5icy1wb3BvdmVyLXRvcCA+IC5wb3BvdmVyLWFycm93OjphZnRlcixcbi5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj10b3BdID4gLnBvcG92ZXItYXJyb3c6OmFmdGVyIHtcbiAgYm90dG9tOiB2YXIoLS1icy1wb3BvdmVyLWJvcmRlci13aWR0aCk7XG4gIGJvcmRlci10b3AtY29sb3I6IHZhcigtLWJzLXBvcG92ZXItYmcpO1xufVxuXG4vKiBydGw6YmVnaW46aWdub3JlICovXG5cbi5icy1wb3BvdmVyLWVuZCA+IC5wb3BvdmVyLWFycm93LFxuLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePXJpZ2h0XSA+IC5wb3BvdmVyLWFycm93IHtcbiAgbGVmdDogY2FsYygtMSAqICh2YXIoLS1icy1wb3BvdmVyLWFycm93LWhlaWdodCkpIC0gdmFyKC0tYnMtcG9wb3Zlci1ib3JkZXItd2lkdGgpKTtcbiAgd2lkdGg6IHZhcigtLWJzLXBvcG92ZXItYXJyb3ctaGVpZ2h0KTtcbiAgaGVpZ2h0OiB2YXIoLS1icy1wb3BvdmVyLWFycm93LXdpZHRoKTtcbn1cblxuLmJzLXBvcG92ZXItZW5kID4gLnBvcG92ZXItYXJyb3c6OmJlZm9yZSxcbi5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1yaWdodF0gPiAucG9wb3Zlci1hcnJvdzo6YmVmb3JlLFxuLmJzLXBvcG92ZXItZW5kID4gLnBvcG92ZXItYXJyb3c6OmFmdGVyLFxuLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePXJpZ2h0XSA+IC5wb3BvdmVyLWFycm93OjphZnRlciB7XG4gIGJvcmRlci13aWR0aDogY2FsYyh2YXIoLS1icy1wb3BvdmVyLWFycm93LXdpZHRoKSAqIDAuNSkgdmFyKC0tYnMtcG9wb3Zlci1hcnJvdy1oZWlnaHQpIGNhbGModmFyKC0tYnMtcG9wb3Zlci1hcnJvdy13aWR0aCkgKiAwLjUpIDA7XG59XG5cbi5icy1wb3BvdmVyLWVuZCA+IC5wb3BvdmVyLWFycm93OjpiZWZvcmUsXG4uYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49cmlnaHRdID4gLnBvcG92ZXItYXJyb3c6OmJlZm9yZSB7XG4gIGxlZnQ6IDA7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogdmFyKC0tYnMtcG9wb3Zlci1hcnJvdy1ib3JkZXIpO1xufVxuXG4uYnMtcG9wb3Zlci1lbmQgPiAucG9wb3Zlci1hcnJvdzo6YWZ0ZXIsXG4uYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49cmlnaHRdID4gLnBvcG92ZXItYXJyb3c6OmFmdGVyIHtcbiAgbGVmdDogdmFyKC0tYnMtcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLWJzLXBvcG92ZXItYmcpO1xufVxuXG4vKiBydGw6ZW5kOmlnbm9yZSAqL1xuXG4uYnMtcG9wb3Zlci1ib3R0b20gPiAucG9wb3Zlci1hcnJvdyxcbi5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1ib3R0b21dID4gLnBvcG92ZXItYXJyb3cge1xuICB0b3A6IGNhbGMoLTEgKiAodmFyKC0tYnMtcG9wb3Zlci1hcnJvdy1oZWlnaHQpKSAtIHZhcigtLWJzLXBvcG92ZXItYm9yZGVyLXdpZHRoKSk7XG59XG5cbi5icy1wb3BvdmVyLWJvdHRvbSA+IC5wb3BvdmVyLWFycm93OjpiZWZvcmUsXG4uYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49Ym90dG9tXSA+IC5wb3BvdmVyLWFycm93OjpiZWZvcmUsXG4uYnMtcG9wb3Zlci1ib3R0b20gPiAucG9wb3Zlci1hcnJvdzo6YWZ0ZXIsXG4uYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49Ym90dG9tXSA+IC5wb3BvdmVyLWFycm93OjphZnRlciB7XG4gIGJvcmRlci13aWR0aDogMCBjYWxjKHZhcigtLWJzLXBvcG92ZXItYXJyb3ctd2lkdGgpICogMC41KSB2YXIoLS1icy1wb3BvdmVyLWFycm93LWhlaWdodCk7XG59XG5cbi5icy1wb3BvdmVyLWJvdHRvbSA+IC5wb3BvdmVyLWFycm93OjpiZWZvcmUsXG4uYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49Ym90dG9tXSA+IC5wb3BvdmVyLWFycm93OjpiZWZvcmUge1xuICB0b3A6IDA7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWJzLXBvcG92ZXItYXJyb3ctYm9yZGVyKTtcbn1cblxuLmJzLXBvcG92ZXItYm90dG9tID4gLnBvcG92ZXItYXJyb3c6OmFmdGVyLFxuLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePWJvdHRvbV0gPiAucG9wb3Zlci1hcnJvdzo6YWZ0ZXIge1xuICB0b3A6IHZhcigtLWJzLXBvcG92ZXItYm9yZGVyLXdpZHRoKTtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tYnMtcG9wb3Zlci1iZyk7XG59XG5cbi5icy1wb3BvdmVyLWJvdHRvbSAucG9wb3Zlci1oZWFkZXI6OmJlZm9yZSxcbi5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1ib3R0b21dIC5wb3BvdmVyLWhlYWRlcjo6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDUwJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiB2YXIoLS1icy1wb3BvdmVyLWFycm93LXdpZHRoKTtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoLTAuNSAqIHZhcigtLWJzLXBvcG92ZXItYXJyb3ctd2lkdGgpKTtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLWJvdHRvbTogdmFyKC0tYnMtcG9wb3Zlci1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLXBvcG92ZXItaGVhZGVyLWJnKTtcbn1cblxuLyogcnRsOmJlZ2luOmlnbm9yZSAqL1xuXG4uYnMtcG9wb3Zlci1zdGFydCA+IC5wb3BvdmVyLWFycm93LFxuLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePWxlZnRdID4gLnBvcG92ZXItYXJyb3cge1xuICByaWdodDogY2FsYygtMSAqICh2YXIoLS1icy1wb3BvdmVyLWFycm93LWhlaWdodCkpIC0gdmFyKC0tYnMtcG9wb3Zlci1ib3JkZXItd2lkdGgpKTtcbiAgd2lkdGg6IHZhcigtLWJzLXBvcG92ZXItYXJyb3ctaGVpZ2h0KTtcbiAgaGVpZ2h0OiB2YXIoLS1icy1wb3BvdmVyLWFycm93LXdpZHRoKTtcbn1cblxuLmJzLXBvcG92ZXItc3RhcnQgPiAucG9wb3Zlci1hcnJvdzo6YmVmb3JlLFxuLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePWxlZnRdID4gLnBvcG92ZXItYXJyb3c6OmJlZm9yZSxcbi5icy1wb3BvdmVyLXN0YXJ0ID4gLnBvcG92ZXItYXJyb3c6OmFmdGVyLFxuLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePWxlZnRdID4gLnBvcG92ZXItYXJyb3c6OmFmdGVyIHtcbiAgYm9yZGVyLXdpZHRoOiBjYWxjKHZhcigtLWJzLXBvcG92ZXItYXJyb3ctd2lkdGgpICogMC41KSAwIGNhbGModmFyKC0tYnMtcG9wb3Zlci1hcnJvdy13aWR0aCkgKiAwLjUpIHZhcigtLWJzLXBvcG92ZXItYXJyb3ctaGVpZ2h0KTtcbn1cblxuLmJzLXBvcG92ZXItc3RhcnQgPiAucG9wb3Zlci1hcnJvdzo6YmVmb3JlLFxuLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePWxlZnRdID4gLnBvcG92ZXItYXJyb3c6OmJlZm9yZSB7XG4gIHJpZ2h0OiAwO1xuICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tYnMtcG9wb3Zlci1hcnJvdy1ib3JkZXIpO1xufVxuXG4uYnMtcG9wb3Zlci1zdGFydCA+IC5wb3BvdmVyLWFycm93OjphZnRlcixcbi5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1sZWZ0XSA+IC5wb3BvdmVyLWFycm93OjphZnRlciB7XG4gIHJpZ2h0OiB2YXIoLS1icy1wb3BvdmVyLWJvcmRlci13aWR0aCk7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS1icy1wb3BvdmVyLWJnKTtcbn1cblxuLyogcnRsOmVuZDppZ25vcmUgKi9cblxuLnBvcG92ZXItaGVhZGVyIHtcbiAgcGFkZGluZzogdmFyKC0tYnMtcG9wb3Zlci1oZWFkZXItcGFkZGluZy15KSB2YXIoLS1icy1wb3BvdmVyLWhlYWRlci1wYWRkaW5nLXgpO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IHZhcigtLWJzLXBvcG92ZXItaGVhZGVyLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiB2YXIoLS1icy1wb3BvdmVyLWhlYWRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLXBvcG92ZXItaGVhZGVyLWJnKTtcbiAgYm9yZGVyLWJvdHRvbTogdmFyKC0tYnMtcG9wb3Zlci1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLXBvcG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tYnMtcG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWJzLXBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5wb3BvdmVyLWhlYWRlcjplbXB0eSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5wb3BvdmVyLWJvZHkge1xuICBwYWRkaW5nOiB2YXIoLS1icy1wb3BvdmVyLWJvZHktcGFkZGluZy15KSB2YXIoLS1icy1wb3BvdmVyLWJvZHktcGFkZGluZy14KTtcbiAgY29sb3I6IHZhcigtLWJzLXBvcG92ZXItYm9keS1jb2xvcik7XG59XG5cbi5jYXJvdXNlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNhcm91c2VsLnBvaW50ZXItZXZlbnQge1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xufVxuXG4uY2Fyb3VzZWwtaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uY2Fyb3VzZWwtaW5uZXI6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xuICBjb250ZW50OiBcIlwiO1xufVxuXG4uY2Fyb3VzZWwtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjZzIGVhc2UtaW4tb3V0O1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuY2Fyb3VzZWwtaXRlbSB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuXG4uY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4uY2Fyb3VzZWwtaXRlbS1uZXh0LFxuLmNhcm91c2VsLWl0ZW0tcHJldiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1uZXh0Om5vdCguY2Fyb3VzZWwtaXRlbS1zdGFydCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tZW5kIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1wcmV2Om5vdCguY2Fyb3VzZWwtaXRlbS1lbmQpLFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXN0YXJ0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbn1cblxuLmNhcm91c2VsLWZhZGUgLmNhcm91c2VsLWl0ZW0ge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICB0cmFuc2Zvcm06IG5vbmU7XG59XG5cbi5jYXJvdXNlbC1mYWRlIC5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbi5jYXJvdXNlbC1mYWRlIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1zdGFydCxcbi5jYXJvdXNlbC1mYWRlIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1lbmQge1xuICB6LWluZGV4OiAxO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uY2Fyb3VzZWwtZmFkZSAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tc3RhcnQsXG4uY2Fyb3VzZWwtZmFkZSAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tZW5kIHtcbiAgei1pbmRleDogMDtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwcyAwLjZzO1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuY2Fyb3VzZWwtZmFkZSAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tc3RhcnQsXG4gIC5jYXJvdXNlbC1mYWRlIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1lbmQge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IDE1JTtcbiAgcGFkZGluZzogMDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBvcGFjaXR5OiAwLjU7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZTtcbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmNhcm91c2VsLWNvbnRyb2wtcHJldixcbiAgLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2OmhvdmVyLFxuLmNhcm91c2VsLWNvbnRyb2wtcHJldjpmb2N1cyxcbi5jYXJvdXNlbC1jb250cm9sLW5leHQ6aG92ZXIsXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0OmZvY3VzIHtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgb3V0bGluZTogMDtcbiAgb3BhY2l0eTogMC45O1xufVxuXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2IHtcbiAgbGVmdDogMDtcbn1cblxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHJpZ2h0OiAwO1xufVxuXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAycmVtO1xuICBoZWlnaHQ6IDJyZW07XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG59XG5cbi8qIHJ0bDpvcHRpb25zOiB7XG4gIFwiYXV0b1JlbmFtZVwiOiB0cnVlLFxuICBcInN0cmluZ01hcFwiOlsge1xuICAgIFwibmFtZVwiICAgIDogXCJwcmV2LW5leHRcIixcbiAgICBcInNlYXJjaFwiICA6IFwicHJldlwiLFxuICAgIFwicmVwbGFjZVwiIDogXCJuZXh0XCJcbiAgfSBdXG59ICovXG5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyUyM2ZmZmZmZiclM2UlM2NwYXRoIGQ9J00xMS4zNTQgMS42NDZhLjUuNSAwIDAgMSAwIC43MDhMNS43MDcgOGw1LjY0NyA1LjY0NmEuNS41IDAgMCAxLS43MDguNzA4bC02LTZhLjUuNSAwIDAgMSAwLS43MDhsNi02YS41LjUgMCAwIDEgLjcwOCAweicvJTNlJTNjL3N2ZyUzZVwiKTtcbn1cblxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nJTIzZmZmZmZmJyUzZSUzY3BhdGggZD0nTTQuNjQ2IDEuNjQ2YS41LjUgMCAwIDEgLjcwOCAwbDYgNmEuNS41IDAgMCAxIDAgLjcwOGwtNiA2YS41LjUgMCAwIDEtLjcwOC0uNzA4TDEwLjI5MyA4IDQuNjQ2IDIuMzU0YS41LjUgMCAwIDEgMC0uNzA4eicvJTNlJTNjL3N2ZyUzZVwiKTtcbn1cblxuLmNhcm91c2VsLWluZGljYXRvcnMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tcmlnaHQ6IDE1JTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDE1JTtcbn1cblxuLmNhcm91c2VsLWluZGljYXRvcnMgW2RhdGEtYnMtdGFyZ2V0XSB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBmbGV4OiAwIDEgYXV0bztcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogM3B4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tcmlnaHQ6IDNweDtcbiAgbWFyZ2luLWxlZnQ6IDNweDtcbiAgdGV4dC1pbmRlbnQ6IC05OTlweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci10b3A6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIG9wYWNpdHk6IDAuNTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjZzIGVhc2U7XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5jYXJvdXNlbC1pbmRpY2F0b3JzIFtkYXRhLWJzLXRhcmdldF0ge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cblxuLmNhcm91c2VsLWluZGljYXRvcnMgLmFjdGl2ZSB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5jYXJvdXNlbC1jYXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMTUlO1xuICBib3R0b206IDEuMjVyZW07XG4gIGxlZnQ6IDE1JTtcbiAgcGFkZGluZy10b3A6IDEuMjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxLjI1cmVtO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uY2Fyb3VzZWwtZGFyayAuY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXG4uY2Fyb3VzZWwtZGFyayAuY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBmaWx0ZXI6IGludmVydCgxKSBncmF5c2NhbGUoMTAwKTtcbn1cblxuLmNhcm91c2VsLWRhcmsgLmNhcm91c2VsLWluZGljYXRvcnMgW2RhdGEtYnMtdGFyZ2V0XSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzMzMzM7XG59XG5cbi5jYXJvdXNlbC1kYXJrIC5jYXJvdXNlbC1jYXB0aW9uIHtcbiAgY29sb3I6ICMzMzMzMzM7XG59XG5cbltkYXRhLWJzLXRoZW1lPWRhcmtdIC5jYXJvdXNlbCAuY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXG5bZGF0YS1icy10aGVtZT1kYXJrXSAuY2Fyb3VzZWwgLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLFxuW2RhdGEtYnMtdGhlbWU9ZGFya10uY2Fyb3VzZWwgLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLFxuW2RhdGEtYnMtdGhlbWU9ZGFya10uY2Fyb3VzZWwgLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgZmlsdGVyOiBpbnZlcnQoMSkgZ3JheXNjYWxlKDEwMCk7XG59XG5cbltkYXRhLWJzLXRoZW1lPWRhcmtdIC5jYXJvdXNlbCAuY2Fyb3VzZWwtaW5kaWNhdG9ycyBbZGF0YS1icy10YXJnZXRdLFxuW2RhdGEtYnMtdGhlbWU9ZGFya10uY2Fyb3VzZWwgLmNhcm91c2VsLWluZGljYXRvcnMgW2RhdGEtYnMtdGFyZ2V0XSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzMzMzM7XG59XG5cbltkYXRhLWJzLXRoZW1lPWRhcmtdIC5jYXJvdXNlbCAuY2Fyb3VzZWwtY2FwdGlvbixcbltkYXRhLWJzLXRoZW1lPWRhcmtdLmNhcm91c2VsIC5jYXJvdXNlbC1jYXB0aW9uIHtcbiAgY29sb3I6ICMzMzMzMzM7XG59XG5cbi5zcGlubmVyLWdyb3csXG4uc3Bpbm5lci1ib3JkZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiB2YXIoLS1icy1zcGlubmVyLXdpZHRoKTtcbiAgaGVpZ2h0OiB2YXIoLS1icy1zcGlubmVyLWhlaWdodCk7XG4gIHZlcnRpY2FsLWFsaWduOiB2YXIoLS1icy1zcGlubmVyLXZlcnRpY2FsLWFsaWduKTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBhbmltYXRpb246IHZhcigtLWJzLXNwaW5uZXItYW5pbWF0aW9uLXNwZWVkKSBsaW5lYXIgaW5maW5pdGUgdmFyKC0tYnMtc3Bpbm5lci1hbmltYXRpb24tbmFtZSk7XG59XG5cbkBrZXlmcmFtZXMgc3Bpbm5lci1ib3JkZXIge1xuICB0byB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKSA7XG4gIH1cbn1cblxuLnNwaW5uZXItYm9yZGVyIHtcbiAgLS1icy1zcGlubmVyLXdpZHRoOiAycmVtO1xuICAtLWJzLXNwaW5uZXItaGVpZ2h0OiAycmVtO1xuICAtLWJzLXNwaW5uZXItdmVydGljYWwtYWxpZ246IC0wLjEyNWVtO1xuICAtLWJzLXNwaW5uZXItYm9yZGVyLXdpZHRoOiAwLjI1ZW07XG4gIC0tYnMtc3Bpbm5lci1hbmltYXRpb24tc3BlZWQ6IDAuNzVzO1xuICAtLWJzLXNwaW5uZXItYW5pbWF0aW9uLW5hbWU6IHNwaW5uZXItYm9yZGVyO1xuICBib3JkZXI6IHZhcigtLWJzLXNwaW5uZXItYm9yZGVyLXdpZHRoKSBzb2xpZCBjdXJyZW50Y29sb3I7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5zcGlubmVyLWJvcmRlci1zbSB7XG4gIC0tYnMtc3Bpbm5lci13aWR0aDogMXJlbTtcbiAgLS1icy1zcGlubmVyLWhlaWdodDogMXJlbTtcbiAgLS1icy1zcGlubmVyLWJvcmRlci13aWR0aDogMC4yZW07XG59XG5cbkBrZXlmcmFtZXMgc3Bpbm5lci1ncm93IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cblxuICA1MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi5zcGlubmVyLWdyb3cge1xuICAtLWJzLXNwaW5uZXItd2lkdGg6IDJyZW07XG4gIC0tYnMtc3Bpbm5lci1oZWlnaHQ6IDJyZW07XG4gIC0tYnMtc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjogLTAuMTI1ZW07XG4gIC0tYnMtc3Bpbm5lci1hbmltYXRpb24tc3BlZWQ6IDAuNzVzO1xuICAtLWJzLXNwaW5uZXItYW5pbWF0aW9uLW5hbWU6IHNwaW5uZXItZ3JvdztcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudGNvbG9yO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc3Bpbm5lci1ncm93LXNtIHtcbiAgLS1icy1zcGlubmVyLXdpZHRoOiAxcmVtO1xuICAtLWJzLXNwaW5uZXItaGVpZ2h0OiAxcmVtO1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuc3Bpbm5lci1ib3JkZXIsXG4gIC5zcGlubmVyLWdyb3cge1xuICAgIC0tYnMtc3Bpbm5lci1hbmltYXRpb24tc3BlZWQ6IDEuNXM7XG4gIH1cbn1cblxuLm9mZmNhbnZhcyxcbi5vZmZjYW52YXMteHhsLFxuLm9mZmNhbnZhcy14bCxcbi5vZmZjYW52YXMtbGcsXG4ub2ZmY2FudmFzLW1kLFxuLm9mZmNhbnZhcy1zbSB7XG4gIC0tYnMtb2ZmY2FudmFzLXppbmRleDogMTA0NTtcbiAgLS1icy1vZmZjYW52YXMtd2lkdGg6IDQwMHB4O1xuICAtLWJzLW9mZmNhbnZhcy1oZWlnaHQ6IDMwdmg7XG4gIC0tYnMtb2ZmY2FudmFzLXBhZGRpbmcteDogMXJlbTtcbiAgLS1icy1vZmZjYW52YXMtcGFkZGluZy15OiAxcmVtO1xuICAtLWJzLW9mZmNhbnZhcy1jb2xvcjogdmFyKC0tYnMtYm9keS1jb2xvcik7XG4gIC0tYnMtb2ZmY2FudmFzLWJnOiB2YXIoLS1icy1ib2R5LWJnKTtcbiAgLS1icy1vZmZjYW52YXMtYm9yZGVyLXdpZHRoOiB2YXIoLS1icy1ib3JkZXItd2lkdGgpO1xuICAtLWJzLW9mZmNhbnZhcy1ib3JkZXItY29sb3I6IHZhcigtLWJzLWJvcmRlci1jb2xvci10cmFuc2x1Y2VudCk7XG4gIC0tYnMtb2ZmY2FudmFzLWJveC1zaGFkb3c6IDAgMXB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIC0tYnMtb2ZmY2FudmFzLXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2UtaW4tb3V0O1xuICAtLWJzLW9mZmNhbnZhcy10aXRsZS1saW5lLWhlaWdodDogMS41O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcbiAgLm9mZmNhbnZhcy1zbSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiB2YXIoLS1icy1vZmZjYW52YXMtemluZGV4KTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGNvbG9yOiB2YXIoLS1icy1vZmZjYW52YXMtY29sb3IpO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1vZmZjYW52YXMtYmcpO1xuICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgb3V0bGluZTogMDtcbiAgICB0cmFuc2l0aW9uOiB2YXIoLS1icy1vZmZjYW52YXMtdHJhbnNpdGlvbik7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSBhbmQgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAub2ZmY2FudmFzLXNtIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuICAub2ZmY2FudmFzLXNtLm9mZmNhbnZhcy1zdGFydCB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IHZhcigtLWJzLW9mZmNhbnZhcy13aWR0aCk7XG4gICAgYm9yZGVyLXJpZ2h0OiB2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuICAub2ZmY2FudmFzLXNtLm9mZmNhbnZhcy1lbmQge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogdmFyKC0tYnMtb2ZmY2FudmFzLXdpZHRoKTtcbiAgICBib3JkZXItbGVmdDogdmFyKC0tYnMtb2ZmY2FudmFzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tYnMtb2ZmY2FudmFzLWJvcmRlci1jb2xvcik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuICAub2ZmY2FudmFzLXNtLm9mZmNhbnZhcy10b3Age1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogdmFyKC0tYnMtb2ZmY2FudmFzLWhlaWdodCk7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBib3JkZXItYm90dG9tOiB2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuICAub2ZmY2FudmFzLXNtLm9mZmNhbnZhcy1ib3R0b20ge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiB2YXIoLS1icy1vZmZjYW52YXMtaGVpZ2h0KTtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlci10b3A6IHZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcbiAgLm9mZmNhbnZhcy1zbS5zaG93aW5nLFxuICAub2ZmY2FudmFzLXNtLnNob3c6bm90KC5oaWRpbmcpIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG4gIC5vZmZjYW52YXMtc20uc2hvd2luZyxcbiAgLm9mZmNhbnZhcy1zbS5oaWRpbmcsXG4gIC5vZmZjYW52YXMtc20uc2hvdyB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLm9mZmNhbnZhcy1zbSB7XG4gICAgLS1icy1vZmZjYW52YXMtaGVpZ2h0OiBhdXRvO1xuICAgIC0tYnMtb2ZmY2FudmFzLWJvcmRlci13aWR0aDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm9mZmNhbnZhcy1zbSAub2ZmY2FudmFzLWhlYWRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5vZmZjYW52YXMtc20gLm9mZmNhbnZhcy1ib2R5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG92ZXJmbG93LXk6IHZpc2libGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLm9mZmNhbnZhcy1tZCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiB2YXIoLS1icy1vZmZjYW52YXMtemluZGV4KTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGNvbG9yOiB2YXIoLS1icy1vZmZjYW52YXMtY29sb3IpO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1vZmZjYW52YXMtYmcpO1xuICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgb3V0bGluZTogMDtcbiAgICB0cmFuc2l0aW9uOiB2YXIoLS1icy1vZmZjYW52YXMtdHJhbnNpdGlvbik7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSBhbmQgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAub2ZmY2FudmFzLW1kIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAub2ZmY2FudmFzLW1kLm9mZmNhbnZhcy1zdGFydCB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IHZhcigtLWJzLW9mZmNhbnZhcy13aWR0aCk7XG4gICAgYm9yZGVyLXJpZ2h0OiB2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAub2ZmY2FudmFzLW1kLm9mZmNhbnZhcy1lbmQge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogdmFyKC0tYnMtb2ZmY2FudmFzLXdpZHRoKTtcbiAgICBib3JkZXItbGVmdDogdmFyKC0tYnMtb2ZmY2FudmFzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tYnMtb2ZmY2FudmFzLWJvcmRlci1jb2xvcik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAub2ZmY2FudmFzLW1kLm9mZmNhbnZhcy10b3Age1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogdmFyKC0tYnMtb2ZmY2FudmFzLWhlaWdodCk7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBib3JkZXItYm90dG9tOiB2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAub2ZmY2FudmFzLW1kLm9mZmNhbnZhcy1ib3R0b20ge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiB2YXIoLS1icy1vZmZjYW52YXMtaGVpZ2h0KTtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlci10b3A6IHZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLm9mZmNhbnZhcy1tZC5zaG93aW5nLFxuICAub2ZmY2FudmFzLW1kLnNob3c6bm90KC5oaWRpbmcpIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5vZmZjYW52YXMtbWQuc2hvd2luZyxcbiAgLm9mZmNhbnZhcy1tZC5oaWRpbmcsXG4gIC5vZmZjYW52YXMtbWQuc2hvdyB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm9mZmNhbnZhcy1tZCB7XG4gICAgLS1icy1vZmZjYW52YXMtaGVpZ2h0OiBhdXRvO1xuICAgIC0tYnMtb2ZmY2FudmFzLWJvcmRlci13aWR0aDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm9mZmNhbnZhcy1tZCAub2ZmY2FudmFzLWhlYWRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5vZmZjYW52YXMtbWQgLm9mZmNhbnZhcy1ib2R5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG92ZXJmbG93LXk6IHZpc2libGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLm9mZmNhbnZhcy1sZyB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiB2YXIoLS1icy1vZmZjYW52YXMtemluZGV4KTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGNvbG9yOiB2YXIoLS1icy1vZmZjYW52YXMtY29sb3IpO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1vZmZjYW52YXMtYmcpO1xuICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgb3V0bGluZTogMDtcbiAgICB0cmFuc2l0aW9uOiB2YXIoLS1icy1vZmZjYW52YXMtdHJhbnNpdGlvbik7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSBhbmQgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAub2ZmY2FudmFzLWxnIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAub2ZmY2FudmFzLWxnLm9mZmNhbnZhcy1zdGFydCB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IHZhcigtLWJzLW9mZmNhbnZhcy13aWR0aCk7XG4gICAgYm9yZGVyLXJpZ2h0OiB2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAub2ZmY2FudmFzLWxnLm9mZmNhbnZhcy1lbmQge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogdmFyKC0tYnMtb2ZmY2FudmFzLXdpZHRoKTtcbiAgICBib3JkZXItbGVmdDogdmFyKC0tYnMtb2ZmY2FudmFzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tYnMtb2ZmY2FudmFzLWJvcmRlci1jb2xvcik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAub2ZmY2FudmFzLWxnLm9mZmNhbnZhcy10b3Age1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogdmFyKC0tYnMtb2ZmY2FudmFzLWhlaWdodCk7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBib3JkZXItYm90dG9tOiB2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAub2ZmY2FudmFzLWxnLm9mZmNhbnZhcy1ib3R0b20ge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiB2YXIoLS1icy1vZmZjYW52YXMtaGVpZ2h0KTtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlci10b3A6IHZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLm9mZmNhbnZhcy1sZy5zaG93aW5nLFxuICAub2ZmY2FudmFzLWxnLnNob3c6bm90KC5oaWRpbmcpIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC5vZmZjYW52YXMtbGcuc2hvd2luZyxcbiAgLm9mZmNhbnZhcy1sZy5oaWRpbmcsXG4gIC5vZmZjYW52YXMtbGcuc2hvdyB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm9mZmNhbnZhcy1sZyB7XG4gICAgLS1icy1vZmZjYW52YXMtaGVpZ2h0OiBhdXRvO1xuICAgIC0tYnMtb2ZmY2FudmFzLWJvcmRlci13aWR0aDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm9mZmNhbnZhcy1sZyAub2ZmY2FudmFzLWhlYWRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5vZmZjYW52YXMtbGcgLm9mZmNhbnZhcy1ib2R5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG92ZXJmbG93LXk6IHZpc2libGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gIC5vZmZjYW52YXMteGwge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogdmFyKC0tYnMtb2ZmY2FudmFzLXppbmRleCk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBjb2xvcjogdmFyKC0tYnMtb2ZmY2FudmFzLWNvbG9yKTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtb2ZmY2FudmFzLWJnKTtcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAgIG91dGxpbmU6IDA7XG4gICAgdHJhbnNpdGlvbjogdmFyKC0tYnMtb2ZmY2FudmFzLXRyYW5zaXRpb24pO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIGFuZCAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5vZmZjYW52YXMteGwge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAub2ZmY2FudmFzLXhsLm9mZmNhbnZhcy1zdGFydCB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IHZhcigtLWJzLW9mZmNhbnZhcy13aWR0aCk7XG4gICAgYm9yZGVyLXJpZ2h0OiB2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHtcbiAgLm9mZmNhbnZhcy14bC5vZmZjYW52YXMtZW5kIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IHZhcigtLWJzLW9mZmNhbnZhcy13aWR0aCk7XG4gICAgYm9yZGVyLWxlZnQ6IHZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gIC5vZmZjYW52YXMteGwub2ZmY2FudmFzLXRvcCB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiB2YXIoLS1icy1vZmZjYW52YXMtaGVpZ2h0KTtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlci1ib3R0b206IHZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAub2ZmY2FudmFzLXhsLm9mZmNhbnZhcy1ib3R0b20ge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiB2YXIoLS1icy1vZmZjYW52YXMtaGVpZ2h0KTtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlci10b3A6IHZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gIC5vZmZjYW52YXMteGwuc2hvd2luZyxcbiAgLm9mZmNhbnZhcy14bC5zaG93Om5vdCguaGlkaW5nKSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHtcbiAgLm9mZmNhbnZhcy14bC5zaG93aW5nLFxuICAub2ZmY2FudmFzLXhsLmhpZGluZyxcbiAgLm9mZmNhbnZhcy14bC5zaG93IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm9mZmNhbnZhcy14bCB7XG4gICAgLS1icy1vZmZjYW52YXMtaGVpZ2h0OiBhdXRvO1xuICAgIC0tYnMtb2ZmY2FudmFzLWJvcmRlci13aWR0aDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm9mZmNhbnZhcy14bCAub2ZmY2FudmFzLWhlYWRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5vZmZjYW52YXMteGwgLm9mZmNhbnZhcy1ib2R5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG92ZXJmbG93LXk6IHZpc2libGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTM5OS45OHB4KSB7XG4gIC5vZmZjYW52YXMteHhsIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgYm90dG9tOiAwO1xuICAgIHotaW5kZXg6IHZhcigtLWJzLW9mZmNhbnZhcy16aW5kZXgpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgY29sb3I6IHZhcigtLWJzLW9mZmNhbnZhcy1jb2xvcik7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLW9mZmNhbnZhcy1iZyk7XG4gICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICBvdXRsaW5lOiAwO1xuICAgIHRyYW5zaXRpb246IHZhcigtLWJzLW9mZmNhbnZhcy10cmFuc2l0aW9uKTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTM5OS45OHB4KSBhbmQgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAub2ZmY2FudmFzLXh4bCB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTM5OS45OHB4KSB7XG4gIC5vZmZjYW52YXMteHhsLm9mZmNhbnZhcy1zdGFydCB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IHZhcigtLWJzLW9mZmNhbnZhcy13aWR0aCk7XG4gICAgYm9yZGVyLXJpZ2h0OiB2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMzk5Ljk4cHgpIHtcbiAgLm9mZmNhbnZhcy14eGwub2ZmY2FudmFzLWVuZCB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiB2YXIoLS1icy1vZmZjYW52YXMtd2lkdGgpO1xuICAgIGJvcmRlci1sZWZ0OiB2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEzOTkuOThweCkge1xuICAub2ZmY2FudmFzLXh4bC5vZmZjYW52YXMtdG9wIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogMDtcbiAgICBoZWlnaHQ6IHZhcigtLWJzLW9mZmNhbnZhcy1oZWlnaHQpO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tYnMtb2ZmY2FudmFzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tYnMtb2ZmY2FudmFzLWJvcmRlci1jb2xvcik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTM5OS45OHB4KSB7XG4gIC5vZmZjYW52YXMteHhsLm9mZmNhbnZhcy1ib3R0b20ge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiB2YXIoLS1icy1vZmZjYW52YXMtaGVpZ2h0KTtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlci10b3A6IHZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTM5OS45OHB4KSB7XG4gIC5vZmZjYW52YXMteHhsLnNob3dpbmcsXG4gIC5vZmZjYW52YXMteHhsLnNob3c6bm90KC5oaWRpbmcpIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEzOTkuOThweCkge1xuICAub2ZmY2FudmFzLXh4bC5zaG93aW5nLFxuICAub2ZmY2FudmFzLXh4bC5oaWRpbmcsXG4gIC5vZmZjYW52YXMteHhsLnNob3cge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xuICAub2ZmY2FudmFzLXh4bCB7XG4gICAgLS1icy1vZmZjYW52YXMtaGVpZ2h0OiBhdXRvO1xuICAgIC0tYnMtb2ZmY2FudmFzLWJvcmRlci13aWR0aDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm9mZmNhbnZhcy14eGwgLm9mZmNhbnZhcy1oZWFkZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAub2ZmY2FudmFzLXh4bCAub2ZmY2FudmFzLWJvZHkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgb3ZlcmZsb3cteTogdmlzaWJsZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5vZmZjYW52YXMge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogdmFyKC0tYnMtb2ZmY2FudmFzLXppbmRleCk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1heC13aWR0aDogMTAwJTtcbiAgY29sb3I6IHZhcigtLWJzLW9mZmNhbnZhcy1jb2xvcik7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtb2ZmY2FudmFzLWJnKTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgb3V0bGluZTogMDtcbiAgdHJhbnNpdGlvbjogdmFyKC0tYnMtb2ZmY2FudmFzLXRyYW5zaXRpb24pO1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAub2ZmY2FudmFzIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbi5vZmZjYW52YXMub2ZmY2FudmFzLXN0YXJ0IHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogdmFyKC0tYnMtb2ZmY2FudmFzLXdpZHRoKTtcbiAgYm9yZGVyLXJpZ2h0OiB2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbn1cblxuLm9mZmNhbnZhcy5vZmZjYW52YXMtZW5kIHtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgd2lkdGg6IHZhcigtLWJzLW9mZmNhbnZhcy13aWR0aCk7XG4gIGJvcmRlci1sZWZ0OiB2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xufVxuXG4ub2ZmY2FudmFzLm9mZmNhbnZhcy10b3Age1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IHZhcigtLWJzLW9mZmNhbnZhcy1oZWlnaHQpO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBib3JkZXItYm90dG9tOiB2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbn1cblxuLm9mZmNhbnZhcy5vZmZjYW52YXMtYm90dG9tIHtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogdmFyKC0tYnMtb2ZmY2FudmFzLWhlaWdodCk7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIGJvcmRlci10b3A6IHZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG59XG5cbi5vZmZjYW52YXMuc2hvd2luZyxcbi5vZmZjYW52YXMuc2hvdzpub3QoLmhpZGluZykge1xuICB0cmFuc2Zvcm06IG5vbmU7XG59XG5cbi5vZmZjYW52YXMuc2hvd2luZyxcbi5vZmZjYW52YXMuaGlkaW5nLFxuLm9mZmNhbnZhcy5zaG93IHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLm9mZmNhbnZhcy1iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDQwO1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogMTAwdmg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzMzMzM7XG59XG5cbi5vZmZjYW52YXMtYmFja2Ryb3AuZmFkZSB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5vZmZjYW52YXMtYmFja2Ryb3Auc2hvdyB7XG4gIG9wYWNpdHk6IDAuNTtcbn1cblxuLm9mZmNhbnZhcy1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IHZhcigtLWJzLW9mZmNhbnZhcy1wYWRkaW5nLXkpIHZhcigtLWJzLW9mZmNhbnZhcy1wYWRkaW5nLXgpO1xufVxuXG4ub2ZmY2FudmFzLWhlYWRlciAuYnRuLWNsb3NlIHtcbiAgcGFkZGluZzogY2FsYyh2YXIoLS1icy1vZmZjYW52YXMtcGFkZGluZy15KSAqIDAuNSkgY2FsYyh2YXIoLS1icy1vZmZjYW52YXMtcGFkZGluZy14KSAqIDAuNSk7XG4gIG1hcmdpbi10b3A6IGNhbGMoLTAuNSAqIHZhcigtLWJzLW9mZmNhbnZhcy1wYWRkaW5nLXkpKTtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0wLjUgKiB2YXIoLS1icy1vZmZjYW52YXMtcGFkZGluZy14KSk7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoLTAuNSAqIHZhcigtLWJzLW9mZmNhbnZhcy1wYWRkaW5nLXkpKTtcbn1cblxuLm9mZmNhbnZhcy10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1icy1vZmZjYW52YXMtdGl0bGUtbGluZS1oZWlnaHQpO1xufVxuXG4ub2ZmY2FudmFzLWJvZHkge1xuICBmbGV4LWdyb3c6IDE7XG4gIHBhZGRpbmc6IHZhcigtLWJzLW9mZmNhbnZhcy1wYWRkaW5nLXkpIHZhcigtLWJzLW9mZmNhbnZhcy1wYWRkaW5nLXgpO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4ucGxhY2Vob2xkZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1pbi1oZWlnaHQ6IDFlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiB3YWl0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Y29sb3I7XG4gIG9wYWNpdHk6IDAuNTtcbn1cblxuLnBsYWNlaG9sZGVyLmJ0bjo6YmVmb3JlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb250ZW50OiBcIlwiO1xufVxuXG4ucGxhY2Vob2xkZXIteHMge1xuICBtaW4taGVpZ2h0OiAwLjZlbTtcbn1cblxuLnBsYWNlaG9sZGVyLXNtIHtcbiAgbWluLWhlaWdodDogMC44ZW07XG59XG5cbi5wbGFjZWhvbGRlci1sZyB7XG4gIG1pbi1oZWlnaHQ6IDEuMmVtO1xufVxuXG4ucGxhY2Vob2xkZXItZ2xvdyAucGxhY2Vob2xkZXIge1xuICBhbmltYXRpb246IHBsYWNlaG9sZGVyLWdsb3cgMnMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG59XG5cbkBrZXlmcmFtZXMgcGxhY2Vob2xkZXItZ2xvdyB7XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMC4yO1xuICB9XG59XG5cbi5wbGFjZWhvbGRlci13YXZlIHtcbiAgbWFzay1pbWFnZTogbGluZWFyLWdyYWRpZW50KDEzMGRlZywgIzMzMzMzMyA1NSUsIHJnYmEoMCwgMCwgMCwgMC44KSA3NSUsICMzMzMzMzMgOTUlKTtcbiAgbWFzay1zaXplOiAyMDAlIDEwMCU7XG4gIGFuaW1hdGlvbjogcGxhY2Vob2xkZXItd2F2ZSAycyBsaW5lYXIgaW5maW5pdGU7XG59XG5cbkBrZXlmcmFtZXMgcGxhY2Vob2xkZXItd2F2ZSB7XG4gIDEwMCUge1xuICAgIG1hc2stcG9zaXRpb246IC0yMDAlIDAlO1xuICB9XG59XG5cbi5jbGVhcmZpeDo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG5cbi50ZXh0LWJnLXByaW1hcnkge1xuICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBSR0JBKDMwLCAzMCwgODYsIHZhcigtLWJzLWJnLW9wYWNpdHksIDEpKSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1iZy1zZWNvbmRhcnkge1xuICBjb2xvcjogIzMzMzMzMyAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBSR0JBKDE2MywgMTI2LCAxODYsIHZhcigtLWJzLWJnLW9wYWNpdHksIDEpKSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1iZy1zdWNjZXNzIHtcbiAgY29sb3I6ICMzMzMzMzMgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogUkdCQSg3NiwgMTc1LCA4MCwgdmFyKC0tYnMtYmctb3BhY2l0eSwgMSkpICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LWJnLWluZm8ge1xuICBjb2xvcjogIzMzMzMzMyAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBSR0JBKDMzLCAxNTAsIDI0MywgdmFyKC0tYnMtYmctb3BhY2l0eSwgMSkpICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LWJnLXdhcm5pbmcge1xuICBjb2xvcjogIzMzMzMzMyAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBSR0JBKDI1NSwgMTUyLCAwLCB2YXIoLS1icy1iZy1vcGFjaXR5LCAxKSkgIWltcG9ydGFudDtcbn1cblxuLnRleHQtYmctZGFuZ2VyIHtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogUkdCQSgyNDQsIDY3LCA1NCwgdmFyKC0tYnMtYmctb3BhY2l0eSwgMSkpICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LWJnLWxpZ2h0IHtcbiAgY29sb3I6ICMzMzMzMzMgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogUkdCQSgyNDgsIDI0OSwgMjUwLCB2YXIoLS1icy1iZy1vcGFjaXR5LCAxKSkgIWltcG9ydGFudDtcbn1cblxuLnRleHQtYmctZGFyayB7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IFJHQkEoMzMsIDM3LCA0MSwgdmFyKC0tYnMtYmctb3BhY2l0eSwgMSkpICFpbXBvcnRhbnQ7XG59XG5cbi5saW5rLXByaW1hcnkge1xuICBjb2xvcjogUkdCQSh2YXIoLS1icy1wcmltYXJ5LXJnYiksIHZhcigtLWJzLWxpbmstb3BhY2l0eSwgMSkpICFpbXBvcnRhbnQ7XG4gIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogUkdCQSh2YXIoLS1icy1wcmltYXJ5LXJnYiksIHZhcigtLWJzLWxpbmstdW5kZXJsaW5lLW9wYWNpdHksIDEpKSAhaW1wb3J0YW50O1xufVxuXG4ubGluay1wcmltYXJ5OmhvdmVyLFxuLmxpbmstcHJpbWFyeTpmb2N1cyB7XG4gIGNvbG9yOiBSR0JBKDI0LCAyNCwgNjksIHZhcigtLWJzLWxpbmstb3BhY2l0eSwgMSkpICFpbXBvcnRhbnQ7XG4gIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogUkdCQSgyNCwgMjQsIDY5LCB2YXIoLS1icy1saW5rLXVuZGVybGluZS1vcGFjaXR5LCAxKSkgIWltcG9ydGFudDtcbn1cblxuLmxpbmstc2Vjb25kYXJ5IHtcbiAgY29sb3I6IFJHQkEodmFyKC0tYnMtc2Vjb25kYXJ5LXJnYiksIHZhcigtLWJzLWxpbmstb3BhY2l0eSwgMSkpICFpbXBvcnRhbnQ7XG4gIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogUkdCQSh2YXIoLS1icy1zZWNvbmRhcnktcmdiKSwgdmFyKC0tYnMtbGluay11bmRlcmxpbmUtb3BhY2l0eSwgMSkpICFpbXBvcnRhbnQ7XG59XG5cbi5saW5rLXNlY29uZGFyeTpob3Zlcixcbi5saW5rLXNlY29uZGFyeTpmb2N1cyB7XG4gIGNvbG9yOiBSR0JBKDE4MSwgMTUyLCAyMDAsIHZhcigtLWJzLWxpbmstb3BhY2l0eSwgMSkpICFpbXBvcnRhbnQ7XG4gIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogUkdCQSgxODEsIDE1MiwgMjAwLCB2YXIoLS1icy1saW5rLXVuZGVybGluZS1vcGFjaXR5LCAxKSkgIWltcG9ydGFudDtcbn1cblxuLmxpbmstc3VjY2VzcyB7XG4gIGNvbG9yOiBSR0JBKHZhcigtLWJzLXN1Y2Nlc3MtcmdiKSwgdmFyKC0tYnMtbGluay1vcGFjaXR5LCAxKSkgIWltcG9ydGFudDtcbiAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBSR0JBKHZhcigtLWJzLXN1Y2Nlc3MtcmdiKSwgdmFyKC0tYnMtbGluay11bmRlcmxpbmUtb3BhY2l0eSwgMSkpICFpbXBvcnRhbnQ7XG59XG5cbi5saW5rLXN1Y2Nlc3M6aG92ZXIsXG4ubGluay1zdWNjZXNzOmZvY3VzIHtcbiAgY29sb3I6IFJHQkEoMTEyLCAxOTEsIDExNSwgdmFyKC0tYnMtbGluay1vcGFjaXR5LCAxKSkgIWltcG9ydGFudDtcbiAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBSR0JBKDExMiwgMTkxLCAxMTUsIHZhcigtLWJzLWxpbmstdW5kZXJsaW5lLW9wYWNpdHksIDEpKSAhaW1wb3J0YW50O1xufVxuXG4ubGluay1pbmZvIHtcbiAgY29sb3I6IFJHQkEodmFyKC0tYnMtaW5mby1yZ2IpLCB2YXIoLS1icy1saW5rLW9wYWNpdHksIDEpKSAhaW1wb3J0YW50O1xuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IFJHQkEodmFyKC0tYnMtaW5mby1yZ2IpLCB2YXIoLS1icy1saW5rLXVuZGVybGluZS1vcGFjaXR5LCAxKSkgIWltcG9ydGFudDtcbn1cblxuLmxpbmstaW5mbzpob3Zlcixcbi5saW5rLWluZm86Zm9jdXMge1xuICBjb2xvcjogUkdCQSg3NywgMTcxLCAyNDUsIHZhcigtLWJzLWxpbmstb3BhY2l0eSwgMSkpICFpbXBvcnRhbnQ7XG4gIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogUkdCQSg3NywgMTcxLCAyNDUsIHZhcigtLWJzLWxpbmstdW5kZXJsaW5lLW9wYWNpdHksIDEpKSAhaW1wb3J0YW50O1xufVxuXG4ubGluay13YXJuaW5nIHtcbiAgY29sb3I6IFJHQkEodmFyKC0tYnMtd2FybmluZy1yZ2IpLCB2YXIoLS1icy1saW5rLW9wYWNpdHksIDEpKSAhaW1wb3J0YW50O1xuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IFJHQkEodmFyKC0tYnMtd2FybmluZy1yZ2IpLCB2YXIoLS1icy1saW5rLXVuZGVybGluZS1vcGFjaXR5LCAxKSkgIWltcG9ydGFudDtcbn1cblxuLmxpbmstd2FybmluZzpob3Zlcixcbi5saW5rLXdhcm5pbmc6Zm9jdXMge1xuICBjb2xvcjogUkdCQSgyNTUsIDE3MywgNTEsIHZhcigtLWJzLWxpbmstb3BhY2l0eSwgMSkpICFpbXBvcnRhbnQ7XG4gIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogUkdCQSgyNTUsIDE3MywgNTEsIHZhcigtLWJzLWxpbmstdW5kZXJsaW5lLW9wYWNpdHksIDEpKSAhaW1wb3J0YW50O1xufVxuXG4ubGluay1kYW5nZXIge1xuICBjb2xvcjogUkdCQSh2YXIoLS1icy1kYW5nZXItcmdiKSwgdmFyKC0tYnMtbGluay1vcGFjaXR5LCAxKSkgIWltcG9ydGFudDtcbiAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBSR0JBKHZhcigtLWJzLWRhbmdlci1yZ2IpLCB2YXIoLS1icy1saW5rLXVuZGVybGluZS1vcGFjaXR5LCAxKSkgIWltcG9ydGFudDtcbn1cblxuLmxpbmstZGFuZ2VyOmhvdmVyLFxuLmxpbmstZGFuZ2VyOmZvY3VzIHtcbiAgY29sb3I6IFJHQkEoMTk1LCA1NCwgNDMsIHZhcigtLWJzLWxpbmstb3BhY2l0eSwgMSkpICFpbXBvcnRhbnQ7XG4gIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogUkdCQSgxOTUsIDU0LCA0MywgdmFyKC0tYnMtbGluay11bmRlcmxpbmUtb3BhY2l0eSwgMSkpICFpbXBvcnRhbnQ7XG59XG5cbi5saW5rLWxpZ2h0IHtcbiAgY29sb3I6IFJHQkEodmFyKC0tYnMtbGlnaHQtcmdiKSwgdmFyKC0tYnMtbGluay1vcGFjaXR5LCAxKSkgIWltcG9ydGFudDtcbiAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBSR0JBKHZhcigtLWJzLWxpZ2h0LXJnYiksIHZhcigtLWJzLWxpbmstdW5kZXJsaW5lLW9wYWNpdHksIDEpKSAhaW1wb3J0YW50O1xufVxuXG4ubGluay1saWdodDpob3Zlcixcbi5saW5rLWxpZ2h0OmZvY3VzIHtcbiAgY29sb3I6IFJHQkEoMjQ5LCAyNTAsIDI1MSwgdmFyKC0tYnMtbGluay1vcGFjaXR5LCAxKSkgIWltcG9ydGFudDtcbiAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBSR0JBKDI0OSwgMjUwLCAyNTEsIHZhcigtLWJzLWxpbmstdW5kZXJsaW5lLW9wYWNpdHksIDEpKSAhaW1wb3J0YW50O1xufVxuXG4ubGluay1kYXJrIHtcbiAgY29sb3I6IFJHQkEodmFyKC0tYnMtZGFyay1yZ2IpLCB2YXIoLS1icy1saW5rLW9wYWNpdHksIDEpKSAhaW1wb3J0YW50O1xuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IFJHQkEodmFyKC0tYnMtZGFyay1yZ2IpLCB2YXIoLS1icy1saW5rLXVuZGVybGluZS1vcGFjaXR5LCAxKSkgIWltcG9ydGFudDtcbn1cblxuLmxpbmstZGFyazpob3Zlcixcbi5saW5rLWRhcms6Zm9jdXMge1xuICBjb2xvcjogUkdCQSgyNiwgMzAsIDMzLCB2YXIoLS1icy1saW5rLW9wYWNpdHksIDEpKSAhaW1wb3J0YW50O1xuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IFJHQkEoMjYsIDMwLCAzMywgdmFyKC0tYnMtbGluay11bmRlcmxpbmUtb3BhY2l0eSwgMSkpICFpbXBvcnRhbnQ7XG59XG5cbi5saW5rLWJvZHktZW1waGFzaXMge1xuICBjb2xvcjogUkdCQSh2YXIoLS1icy1lbXBoYXNpcy1jb2xvci1yZ2IpLCB2YXIoLS1icy1saW5rLW9wYWNpdHksIDEpKSAhaW1wb3J0YW50O1xuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IFJHQkEodmFyKC0tYnMtZW1waGFzaXMtY29sb3ItcmdiKSwgdmFyKC0tYnMtbGluay11bmRlcmxpbmUtb3BhY2l0eSwgMSkpICFpbXBvcnRhbnQ7XG59XG5cbi5saW5rLWJvZHktZW1waGFzaXM6aG92ZXIsXG4ubGluay1ib2R5LWVtcGhhc2lzOmZvY3VzIHtcbiAgY29sb3I6IFJHQkEodmFyKC0tYnMtZW1waGFzaXMtY29sb3ItcmdiKSwgdmFyKC0tYnMtbGluay1vcGFjaXR5LCAwLjc1KSkgIWltcG9ydGFudDtcbiAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBSR0JBKHZhcigtLWJzLWVtcGhhc2lzLWNvbG9yLXJnYiksIHZhcigtLWJzLWxpbmstdW5kZXJsaW5lLW9wYWNpdHksIDAuNzUpKSAhaW1wb3J0YW50O1xufVxuXG4uZm9jdXMtcmluZzpmb2N1cyB7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IHZhcigtLWJzLWZvY3VzLXJpbmcteCwgMCkgdmFyKC0tYnMtZm9jdXMtcmluZy15LCAwKSB2YXIoLS1icy1mb2N1cy1yaW5nLWJsdXIsIDApIHZhcigtLWJzLWZvY3VzLXJpbmctd2lkdGgpIHZhcigtLWJzLWZvY3VzLXJpbmctY29sb3IpO1xufVxuXG4uaWNvbi1saW5rIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGdhcDogMC4zNzVyZW07XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogcmdiYSh2YXIoLS1icy1saW5rLWNvbG9yLXJnYiksIHZhcigtLWJzLWxpbmstb3BhY2l0eSwgMC41KSk7XG4gIHRleHQtdW5kZXJsaW5lLW9mZnNldDogMC4yNWVtO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5pY29uLWxpbmsgPiAuYmkge1xuICBmbGV4LXNocmluazogMDtcbiAgd2lkdGg6IDFlbTtcbiAgaGVpZ2h0OiAxZW07XG4gIGZpbGw6IGN1cnJlbnRjb2xvcjtcbiAgdHJhbnNpdGlvbjogMC4ycyBlYXNlLWluLW91dCB0cmFuc2Zvcm07XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5pY29uLWxpbmsgPiAuYmkge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cblxuLmljb24tbGluay1ob3Zlcjpob3ZlciA+IC5iaSxcbi5pY29uLWxpbmstaG92ZXI6Zm9jdXMtdmlzaWJsZSA+IC5iaSB7XG4gIHRyYW5zZm9ybTogdmFyKC0tYnMtaWNvbi1saW5rLXRyYW5zZm9ybSwgdHJhbnNsYXRlM2QoMC4yNWVtLCAwLCAwKSk7XG59XG5cbi5yYXRpbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5yYXRpbzo6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1icy1hc3BlY3QtcmF0aW8pO1xuICBjb250ZW50OiBcIlwiO1xufVxuXG4ucmF0aW8gPiAqIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5yYXRpby0xeDEge1xuICAtLWJzLWFzcGVjdC1yYXRpbzogMTAwJTtcbn1cblxuLnJhdGlvLTR4MyB7XG4gIC0tYnMtYXNwZWN0LXJhdGlvOiA3NSU7XG59XG5cbi5yYXRpby0xNng5IHtcbiAgLS1icy1hc3BlY3QtcmF0aW86IDU2LjI1JTtcbn1cblxuLnJhdGlvLTIxeDkge1xuICAtLWJzLWFzcGVjdC1yYXRpbzogNDIuODU3MTQyODU3MSU7XG59XG5cbi5maXhlZC10b3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwMzA7XG59XG5cbi5maXhlZC1ib3R0b20ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwMzA7XG59XG5cbi5zdGlja3ktdG9wIHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAxMDIwO1xufVxuXG4uc3RpY2t5LWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogMTAyMDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5zdGlja3ktc20tdG9wIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAxMDIwO1xuICB9XG5cbiAgLnN0aWNreS1zbS1ib3R0b20ge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgYm90dG9tOiAwO1xuICAgIHotaW5kZXg6IDEwMjA7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zdGlja3ktbWQtdG9wIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAxMDIwO1xuICB9XG5cbiAgLnN0aWNreS1tZC1ib3R0b20ge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgYm90dG9tOiAwO1xuICAgIHotaW5kZXg6IDEwMjA7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5zdGlja3ktbGctdG9wIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAxMDIwO1xuICB9XG5cbiAgLnN0aWNreS1sZy1ib3R0b20ge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgYm90dG9tOiAwO1xuICAgIHotaW5kZXg6IDEwMjA7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuc3RpY2t5LXhsLXRvcCB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogMTAyMDtcbiAgfVxuXG4gIC5zdGlja3kteGwtYm90dG9tIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiAxMDIwO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcbiAgLnN0aWNreS14eGwtdG9wIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAxMDIwO1xuICB9XG5cbiAgLnN0aWNreS14eGwtYm90dG9tIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiAxMDIwO1xuICB9XG59XG5cbi5oc3RhY2sge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xufVxuXG4udnN0YWNrIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMSAxIGF1dG87XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG59XG5cbi52aXN1YWxseS1oaWRkZW4sXG4udmlzdWFsbHktaGlkZGVuLWZvY3VzYWJsZTpub3QoOmZvY3VzKTpub3QoOmZvY3VzLXdpdGhpbikge1xuICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAtMXB4ICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKSAhaW1wb3J0YW50O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xufVxuXG4udmlzdWFsbHktaGlkZGVuOm5vdChjYXB0aW9uKSxcbi52aXN1YWxseS1oaWRkZW4tZm9jdXNhYmxlOm5vdCg6Zm9jdXMpOm5vdCg6Zm9jdXMtd2l0aGluKTpub3QoY2FwdGlvbikge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbn1cblxuLnN0cmV0Y2hlZC1saW5rOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxO1xuICBjb250ZW50OiBcIlwiO1xufVxuXG4udGV4dC10cnVuY2F0ZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4udnIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gIHdpZHRoOiAxcHg7XG4gIG1pbi1oZWlnaHQ6IDFlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudGNvbG9yO1xuICBvcGFjaXR5OiAwLjI1O1xufVxuXG4uYWxpZ24tYmFzZWxpbmUge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLXRvcCB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLW1pZGRsZSB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLWJvdHRvbSB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b20gIWltcG9ydGFudDtcbn1cblxuLmFsaWduLXRleHQtYm90dG9tIHtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi10ZXh0LXRvcCB7XG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcCAhaW1wb3J0YW50O1xufVxuXG4uZmxvYXQtc3RhcnQge1xuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xufVxuXG4uZmxvYXQtZW5kIHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG59XG5cbi5mbG9hdC1ub25lIHtcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm9iamVjdC1maXQtY29udGFpbiB7XG4gIG9iamVjdC1maXQ6IGNvbnRhaW4gIWltcG9ydGFudDtcbn1cblxuLm9iamVjdC1maXQtY292ZXIge1xuICBvYmplY3QtZml0OiBjb3ZlciAhaW1wb3J0YW50O1xufVxuXG4ub2JqZWN0LWZpdC1maWxsIHtcbiAgb2JqZWN0LWZpdDogZmlsbCAhaW1wb3J0YW50O1xufVxuXG4ub2JqZWN0LWZpdC1zY2FsZSB7XG4gIG9iamVjdC1maXQ6IHNjYWxlLWRvd24gIWltcG9ydGFudDtcbn1cblxuLm9iamVjdC1maXQtbm9uZSB7XG4gIG9iamVjdC1maXQ6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm9wYWNpdHktMCB7XG4gIG9wYWNpdHk6IDAgIWltcG9ydGFudDtcbn1cblxuLm9wYWNpdHktMjUge1xuICBvcGFjaXR5OiAwLjI1ICFpbXBvcnRhbnQ7XG59XG5cbi5vcGFjaXR5LTUwIHtcbiAgb3BhY2l0eTogMC41ICFpbXBvcnRhbnQ7XG59XG5cbi5vcGFjaXR5LTc1IHtcbiAgb3BhY2l0eTogMC43NSAhaW1wb3J0YW50O1xufVxuXG4ub3BhY2l0eS0xMDAge1xuICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG59XG5cbi5vdmVyZmxvdy1hdXRvIHtcbiAgb3ZlcmZsb3c6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLm92ZXJmbG93LWhpZGRlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cblxuLm92ZXJmbG93LXZpc2libGUge1xuICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xufVxuXG4ub3ZlcmZsb3ctc2Nyb2xsIHtcbiAgb3ZlcmZsb3c6IHNjcm9sbCAhaW1wb3J0YW50O1xufVxuXG4ub3ZlcmZsb3cteC1hdXRvIHtcbiAgb3ZlcmZsb3cteDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ub3ZlcmZsb3cteC1oaWRkZW4ge1xuICBvdmVyZmxvdy14OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cblxuLm92ZXJmbG93LXgtdmlzaWJsZSB7XG4gIG92ZXJmbG93LXg6IHZpc2libGUgIWltcG9ydGFudDtcbn1cblxuLm92ZXJmbG93LXgtc2Nyb2xsIHtcbiAgb3ZlcmZsb3cteDogc2Nyb2xsICFpbXBvcnRhbnQ7XG59XG5cbi5vdmVyZmxvdy15LWF1dG8ge1xuICBvdmVyZmxvdy15OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5vdmVyZmxvdy15LWhpZGRlbiB7XG4gIG92ZXJmbG93LXk6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuXG4ub3ZlcmZsb3cteS12aXNpYmxlIHtcbiAgb3ZlcmZsb3cteTogdmlzaWJsZSAhaW1wb3J0YW50O1xufVxuXG4ub3ZlcmZsb3cteS1zY3JvbGwge1xuICBvdmVyZmxvdy15OiBzY3JvbGwgIWltcG9ydGFudDtcbn1cblxuLmQtaW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG59XG5cbi5kLWlubGluZS1ibG9jayB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xufVxuXG4uZC1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi5kLWdyaWQge1xuICBkaXNwbGF5OiBncmlkICFpbXBvcnRhbnQ7XG59XG5cbi5kLWlubGluZS1ncmlkIHtcbiAgZGlzcGxheTogaW5saW5lLWdyaWQgIWltcG9ydGFudDtcbn1cblxuLmQtdGFibGUge1xuICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50O1xufVxuXG4uZC10YWJsZS1yb3cge1xuICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDtcbn1cblxuLmQtdGFibGUtY2VsbCB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcbn1cblxuLmQtZmxleCB7XG4gIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbn1cblxuLmQtaW5saW5lLWZsZXgge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xufVxuXG4uZC1ub25lIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uc2hhZG93IHtcbiAgYm94LXNoYWRvdzogMCA0cHggNnB4IHJnYmEoMCwgMCwgMCwgMC4xKSAhaW1wb3J0YW50O1xufVxuXG4uc2hhZG93LXNtIHtcbiAgYm94LXNoYWRvdzogMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4xKSAhaW1wb3J0YW50O1xufVxuXG4uc2hhZG93LWxnIHtcbiAgYm94LXNoYWRvdzogMCAxMHB4IDE1cHggcmdiYSgwLCAwLCAwLCAwLjEpICFpbXBvcnRhbnQ7XG59XG5cbi5zaGFkb3ctbm9uZSB7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmZvY3VzLXJpbmctcHJpbWFyeSB7XG4gIC0tYnMtZm9jdXMtcmluZy1jb2xvcjogcmdiYSh2YXIoLS1icy1wcmltYXJ5LXJnYiksIHZhcigtLWJzLWZvY3VzLXJpbmctb3BhY2l0eSkpO1xufVxuXG4uZm9jdXMtcmluZy1zZWNvbmRhcnkge1xuICAtLWJzLWZvY3VzLXJpbmctY29sb3I6IHJnYmEodmFyKC0tYnMtc2Vjb25kYXJ5LXJnYiksIHZhcigtLWJzLWZvY3VzLXJpbmctb3BhY2l0eSkpO1xufVxuXG4uZm9jdXMtcmluZy1zdWNjZXNzIHtcbiAgLS1icy1mb2N1cy1yaW5nLWNvbG9yOiByZ2JhKHZhcigtLWJzLXN1Y2Nlc3MtcmdiKSwgdmFyKC0tYnMtZm9jdXMtcmluZy1vcGFjaXR5KSk7XG59XG5cbi5mb2N1cy1yaW5nLWluZm8ge1xuICAtLWJzLWZvY3VzLXJpbmctY29sb3I6IHJnYmEodmFyKC0tYnMtaW5mby1yZ2IpLCB2YXIoLS1icy1mb2N1cy1yaW5nLW9wYWNpdHkpKTtcbn1cblxuLmZvY3VzLXJpbmctd2FybmluZyB7XG4gIC0tYnMtZm9jdXMtcmluZy1jb2xvcjogcmdiYSh2YXIoLS1icy13YXJuaW5nLXJnYiksIHZhcigtLWJzLWZvY3VzLXJpbmctb3BhY2l0eSkpO1xufVxuXG4uZm9jdXMtcmluZy1kYW5nZXIge1xuICAtLWJzLWZvY3VzLXJpbmctY29sb3I6IHJnYmEodmFyKC0tYnMtZGFuZ2VyLXJnYiksIHZhcigtLWJzLWZvY3VzLXJpbmctb3BhY2l0eSkpO1xufVxuXG4uZm9jdXMtcmluZy1saWdodCB7XG4gIC0tYnMtZm9jdXMtcmluZy1jb2xvcjogcmdiYSh2YXIoLS1icy1saWdodC1yZ2IpLCB2YXIoLS1icy1mb2N1cy1yaW5nLW9wYWNpdHkpKTtcbn1cblxuLmZvY3VzLXJpbmctZGFyayB7XG4gIC0tYnMtZm9jdXMtcmluZy1jb2xvcjogcmdiYSh2YXIoLS1icy1kYXJrLXJnYiksIHZhcigtLWJzLWZvY3VzLXJpbmctb3BhY2l0eSkpO1xufVxuXG4ucG9zaXRpb24tc3RhdGljIHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xufVxuXG4ucG9zaXRpb24tcmVsYXRpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbn1cblxuLnBvc2l0aW9uLWFic29sdXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG59XG5cbi5wb3NpdGlvbi1maXhlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xufVxuXG4ucG9zaXRpb24tc3RpY2t5IHtcbiAgcG9zaXRpb246IHN0aWNreSAhaW1wb3J0YW50O1xufVxuXG4udG9wLTAge1xuICB0b3A6IDAgIWltcG9ydGFudDtcbn1cblxuLnRvcC01MCB7XG4gIHRvcDogNTAlICFpbXBvcnRhbnQ7XG59XG5cbi50b3AtMTAwIHtcbiAgdG9wOiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi5ib3R0b20tMCB7XG4gIGJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4uYm90dG9tLTUwIHtcbiAgYm90dG9tOiA1MCUgIWltcG9ydGFudDtcbn1cblxuLmJvdHRvbS0xMDAge1xuICBib3R0b206IDEwMCUgIWltcG9ydGFudDtcbn1cblxuLnN0YXJ0LTAge1xuICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5zdGFydC01MCB7XG4gIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xufVxuXG4uc3RhcnQtMTAwIHtcbiAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4uZW5kLTAge1xuICByaWdodDogMCAhaW1wb3J0YW50O1xufVxuXG4uZW5kLTUwIHtcbiAgcmlnaHQ6IDUwJSAhaW1wb3J0YW50O1xufVxuXG4uZW5kLTEwMCB7XG4gIHJpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi50cmFuc2xhdGUtbWlkZGxlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgIWltcG9ydGFudDtcbn1cblxuLnRyYW5zbGF0ZS1taWRkbGUteCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSAhaW1wb3J0YW50O1xufVxuXG4udHJhbnNsYXRlLW1pZGRsZS15IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXIge1xuICBib3JkZXI6IHZhcigtLWJzLWJvcmRlci13aWR0aCkgdmFyKC0tYnMtYm9yZGVyLXN0eWxlKSB2YXIoLS1icy1ib3JkZXItY29sb3IpICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItMCB7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLXRvcCB7XG4gIGJvcmRlci10b3A6IHZhcigtLWJzLWJvcmRlci13aWR0aCkgdmFyKC0tYnMtYm9yZGVyLXN0eWxlKSB2YXIoLS1icy1ib3JkZXItY29sb3IpICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItdG9wLTAge1xuICBib3JkZXItdG9wOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItZW5kIHtcbiAgYm9yZGVyLXJpZ2h0OiB2YXIoLS1icy1ib3JkZXItd2lkdGgpIHZhcigtLWJzLWJvcmRlci1zdHlsZSkgdmFyKC0tYnMtYm9yZGVyLWNvbG9yKSAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLWVuZC0wIHtcbiAgYm9yZGVyLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItYm90dG9tIHtcbiAgYm9yZGVyLWJvdHRvbTogdmFyKC0tYnMtYm9yZGVyLXdpZHRoKSB2YXIoLS1icy1ib3JkZXItc3R5bGUpIHZhcigtLWJzLWJvcmRlci1jb2xvcikgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1ib3R0b20tMCB7XG4gIGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1zdGFydCB7XG4gIGJvcmRlci1sZWZ0OiB2YXIoLS1icy1ib3JkZXItd2lkdGgpIHZhcigtLWJzLWJvcmRlci1zdHlsZSkgdmFyKC0tYnMtYm9yZGVyLWNvbG9yKSAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLXN0YXJ0LTAge1xuICBib3JkZXItbGVmdDogMCAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLXByaW1hcnkge1xuICAtLWJzLWJvcmRlci1vcGFjaXR5OiAxO1xuICBib3JkZXItY29sb3I6IHJnYmEodmFyKC0tYnMtcHJpbWFyeS1yZ2IpLCB2YXIoLS1icy1ib3JkZXItb3BhY2l0eSkpICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItc2Vjb25kYXJ5IHtcbiAgLS1icy1ib3JkZXItb3BhY2l0eTogMTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKHZhcigtLWJzLXNlY29uZGFyeS1yZ2IpLCB2YXIoLS1icy1ib3JkZXItb3BhY2l0eSkpICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItc3VjY2VzcyB7XG4gIC0tYnMtYm9yZGVyLW9wYWNpdHk6IDE7XG4gIGJvcmRlci1jb2xvcjogcmdiYSh2YXIoLS1icy1zdWNjZXNzLXJnYiksIHZhcigtLWJzLWJvcmRlci1vcGFjaXR5KSkgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1pbmZvIHtcbiAgLS1icy1ib3JkZXItb3BhY2l0eTogMTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKHZhcigtLWJzLWluZm8tcmdiKSwgdmFyKC0tYnMtYm9yZGVyLW9wYWNpdHkpKSAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLXdhcm5pbmcge1xuICAtLWJzLWJvcmRlci1vcGFjaXR5OiAxO1xuICBib3JkZXItY29sb3I6IHJnYmEodmFyKC0tYnMtd2FybmluZy1yZ2IpLCB2YXIoLS1icy1ib3JkZXItb3BhY2l0eSkpICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItZGFuZ2VyIHtcbiAgLS1icy1ib3JkZXItb3BhY2l0eTogMTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKHZhcigtLWJzLWRhbmdlci1yZ2IpLCB2YXIoLS1icy1ib3JkZXItb3BhY2l0eSkpICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItbGlnaHQge1xuICAtLWJzLWJvcmRlci1vcGFjaXR5OiAxO1xuICBib3JkZXItY29sb3I6IHJnYmEodmFyKC0tYnMtbGlnaHQtcmdiKSwgdmFyKC0tYnMtYm9yZGVyLW9wYWNpdHkpKSAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLWRhcmsge1xuICAtLWJzLWJvcmRlci1vcGFjaXR5OiAxO1xuICBib3JkZXItY29sb3I6IHJnYmEodmFyKC0tYnMtZGFyay1yZ2IpLCB2YXIoLS1icy1ib3JkZXItb3BhY2l0eSkpICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItYmxhY2sge1xuICAtLWJzLWJvcmRlci1vcGFjaXR5OiAxO1xuICBib3JkZXItY29sb3I6IHJnYmEodmFyKC0tYnMtYmxhY2stcmdiKSwgdmFyKC0tYnMtYm9yZGVyLW9wYWNpdHkpKSAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLXdoaXRlIHtcbiAgLS1icy1ib3JkZXItb3BhY2l0eTogMTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKHZhcigtLWJzLXdoaXRlLXJnYiksIHZhcigtLWJzLWJvcmRlci1vcGFjaXR5KSkgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1wcmltYXJ5LXN1YnRsZSB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeS1ib3JkZXItc3VidGxlKSAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLXNlY29uZGFyeS1zdWJ0bGUge1xuICBib3JkZXItY29sb3I6IHZhcigtLWJzLXNlY29uZGFyeS1ib3JkZXItc3VidGxlKSAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLXN1Y2Nlc3Mtc3VidGxlIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1zdWNjZXNzLWJvcmRlci1zdWJ0bGUpICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItaW5mby1zdWJ0bGUge1xuICBib3JkZXItY29sb3I6IHZhcigtLWJzLWluZm8tYm9yZGVyLXN1YnRsZSkgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci13YXJuaW5nLXN1YnRsZSB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtd2FybmluZy1ib3JkZXItc3VidGxlKSAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLWRhbmdlci1zdWJ0bGUge1xuICBib3JkZXItY29sb3I6IHZhcigtLWJzLWRhbmdlci1ib3JkZXItc3VidGxlKSAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLWxpZ2h0LXN1YnRsZSB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtbGlnaHQtYm9yZGVyLXN1YnRsZSkgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1kYXJrLXN1YnRsZSB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtZGFyay1ib3JkZXItc3VidGxlKSAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLTEge1xuICBib3JkZXItd2lkdGg6IDFweCAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLTIge1xuICBib3JkZXItd2lkdGg6IDJweCAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLTMge1xuICBib3JkZXItd2lkdGg6IDNweCAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLTQge1xuICBib3JkZXItd2lkdGg6IDRweCAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLTUge1xuICBib3JkZXItd2lkdGg6IDVweCAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLW9wYWNpdHktMTAge1xuICAtLWJzLWJvcmRlci1vcGFjaXR5OiAwLjE7XG59XG5cbi5ib3JkZXItb3BhY2l0eS0yNSB7XG4gIC0tYnMtYm9yZGVyLW9wYWNpdHk6IDAuMjU7XG59XG5cbi5ib3JkZXItb3BhY2l0eS01MCB7XG4gIC0tYnMtYm9yZGVyLW9wYWNpdHk6IDAuNTtcbn1cblxuLmJvcmRlci1vcGFjaXR5LTc1IHtcbiAgLS1icy1ib3JkZXItb3BhY2l0eTogMC43NTtcbn1cblxuLmJvcmRlci1vcGFjaXR5LTEwMCB7XG4gIC0tYnMtYm9yZGVyLW9wYWNpdHk6IDE7XG59XG5cbi53LTI1IHtcbiAgd2lkdGg6IDI1JSAhaW1wb3J0YW50O1xufVxuXG4udy01MCB7XG4gIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbn1cblxuLnctNzUge1xuICB3aWR0aDogNzUlICFpbXBvcnRhbnQ7XG59XG5cbi53LTEwMCB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi53LWF1dG8ge1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ubXctMTAwIHtcbiAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi52dy0xMDAge1xuICB3aWR0aDogMTAwdncgIWltcG9ydGFudDtcbn1cblxuLm1pbi12dy0xMDAge1xuICBtaW4td2lkdGg6IDEwMHZ3ICFpbXBvcnRhbnQ7XG59XG5cbi5oLTI1IHtcbiAgaGVpZ2h0OiAyNSUgIWltcG9ydGFudDtcbn1cblxuLmgtNTAge1xuICBoZWlnaHQ6IDUwJSAhaW1wb3J0YW50O1xufVxuXG4uaC03NSB7XG4gIGhlaWdodDogNzUlICFpbXBvcnRhbnQ7XG59XG5cbi5oLTEwMCB7XG4gIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4uaC1hdXRvIHtcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5taC0xMDAge1xuICBtYXgtaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi52aC0xMDAge1xuICBoZWlnaHQ6IDEwMHZoICFpbXBvcnRhbnQ7XG59XG5cbi5taW4tdmgtMTAwIHtcbiAgbWluLWhlaWdodDogMTAwdmggIWltcG9ydGFudDtcbn1cblxuLmZsZXgtZmlsbCB7XG4gIGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5mbGV4LXJvdyB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDtcbn1cblxuLmZsZXgtY29sdW1uIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50O1xufVxuXG4uZmxleC1yb3ctcmV2ZXJzZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50O1xufVxuXG4uZmxleC1jb2x1bW4tcmV2ZXJzZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50O1xufVxuXG4uZmxleC1ncm93LTAge1xuICBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDtcbn1cblxuLmZsZXgtZ3Jvdy0xIHtcbiAgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7XG59XG5cbi5mbGV4LXNocmluay0wIHtcbiAgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDtcbn1cblxuLmZsZXgtc2hyaW5rLTEge1xuICBmbGV4LXNocmluazogMSAhaW1wb3J0YW50O1xufVxuXG4uZmxleC13cmFwIHtcbiAgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7XG59XG5cbi5mbGV4LW5vd3JhcCB7XG4gIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7XG59XG5cbi5mbGV4LXdyYXAtcmV2ZXJzZSB7XG4gIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7XG59XG5cbi5qdXN0aWZ5LWNvbnRlbnQtc3RhcnQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbn1cblxuLmp1c3RpZnktY29udGVudC1lbmQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG59XG5cbi5qdXN0aWZ5LWNvbnRlbnQtY2VudGVyIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbn1cblxuLmp1c3RpZnktY29udGVudC1iZXR3ZWVuIHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XG59XG5cbi5qdXN0aWZ5LWNvbnRlbnQtYXJvdW5kIHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcbn1cblxuLmp1c3RpZnktY29udGVudC1ldmVubHkge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seSAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24taXRlbXMtc3RhcnQge1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24taXRlbXMtZW5kIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1pdGVtcy1jZW50ZXIge1xuICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1pdGVtcy1iYXNlbGluZSB7XG4gIGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24taXRlbXMtc3RyZXRjaCB7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1jb250ZW50LXN0YXJ0IHtcbiAgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tY29udGVudC1lbmQge1xuICBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tY29udGVudC1jZW50ZXIge1xuICBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLWNvbnRlbnQtYmV0d2VlbiB7XG4gIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcbn1cblxuLmFsaWduLWNvbnRlbnQtYXJvdW5kIHtcbiAgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1jb250ZW50LXN0cmV0Y2gge1xuICBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1zZWxmLWF1dG8ge1xuICBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1zZWxmLXN0YXJ0IHtcbiAgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tc2VsZi1lbmQge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tc2VsZi1jZW50ZXIge1xuICBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLXNlbGYtYmFzZWxpbmUge1xuICBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tc2VsZi1zdHJldGNoIHtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50O1xufVxuXG4ub3JkZXItZmlyc3Qge1xuICBvcmRlcjogLTEgIWltcG9ydGFudDtcbn1cblxuLm9yZGVyLTAge1xuICBvcmRlcjogMCAhaW1wb3J0YW50O1xufVxuXG4ub3JkZXItMSB7XG4gIG9yZGVyOiAxICFpbXBvcnRhbnQ7XG59XG5cbi5vcmRlci0yIHtcbiAgb3JkZXI6IDIgIWltcG9ydGFudDtcbn1cblxuLm9yZGVyLTMge1xuICBvcmRlcjogMyAhaW1wb3J0YW50O1xufVxuXG4ub3JkZXItNCB7XG4gIG9yZGVyOiA0ICFpbXBvcnRhbnQ7XG59XG5cbi5vcmRlci01IHtcbiAgb3JkZXI6IDUgIWltcG9ydGFudDtcbn1cblxuLm9yZGVyLWxhc3Qge1xuICBvcmRlcjogNiAhaW1wb3J0YW50O1xufVxuXG4ubS0wIHtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5tLTEge1xuICBtYXJnaW46IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm0tMiB7XG4gIG1hcmdpbjogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tLTMge1xuICBtYXJnaW46IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLm0tNCB7XG4gIG1hcmdpbjogMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tLTUge1xuICBtYXJnaW46IDNyZW0gIWltcG9ydGFudDtcbn1cblxuLm0tYXV0byB7XG4gIG1hcmdpbjogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ubXgtMCB7XG4gIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xufVxuXG4ubXgtMSB7XG4gIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubXgtMiB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm14LTMge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLm14LTQge1xuICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5teC01IHtcbiAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5teC1hdXRvIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5teS0wIHtcbiAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5teS0xIHtcbiAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5teS0yIHtcbiAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubXktMyB7XG4gIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubXktNCB7XG4gIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm15LTUge1xuICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcbn1cblxuLm15LWF1dG8ge1xuICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLm10LTAge1xuICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5tdC0xIHtcbiAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubXQtMiB7XG4gIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubXQtMyB7XG4gIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLm10LTQge1xuICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm10LTUge1xuICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tdC1hdXRvIHtcbiAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ubWUtMCB7XG4gIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xufVxuXG4ubWUtMSB7XG4gIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubWUtMiB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tZS0zIHtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tZS00IHtcbiAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1lLTUge1xuICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbn1cblxuLm1lLWF1dG8ge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLm1iLTAge1xuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5tYi0xIHtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubWItMiB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubWItMyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLm1iLTQge1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1iLTUge1xuICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tYi1hdXRvIHtcbiAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ubXMtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5tcy0xIHtcbiAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLm1zLTIge1xuICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tcy0zIHtcbiAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLm1zLTQge1xuICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tcy01IHtcbiAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbn1cblxuLm1zLWF1dG8ge1xuICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ucC0wIHtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuXG4ucC0xIHtcbiAgcGFkZGluZzogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucC0yIHtcbiAgcGFkZGluZzogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wLTMge1xuICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wLTQge1xuICBwYWRkaW5nOiAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnAtNSB7XG4gIHBhZGRpbmc6IDNyZW0gIWltcG9ydGFudDtcbn1cblxuLnB4LTAge1xuICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xufVxuXG4ucHgtMSB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5weC0yIHtcbiAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5weC0zIHtcbiAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLnB4LTQge1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnB4LTUge1xuICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xufVxuXG4ucHktMCB7XG4gIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5weS0xIHtcbiAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnB5LTIge1xuICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnB5LTMge1xuICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucHktNCB7XG4gIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucHktNSB7XG4gIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wdC0wIHtcbiAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbn1cblxuLnB0LTEge1xuICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucHQtMiB7XG4gIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnB0LTMge1xuICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucHQtNCB7XG4gIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnB0LTUge1xuICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xufVxuXG4ucGUtMCB7XG4gIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbn1cblxuLnBlLTEge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wZS0yIHtcbiAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wZS0zIHtcbiAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucGUtNCB7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucGUtNSB7XG4gIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbn1cblxuLnBiLTAge1xuICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4ucGItMSB7XG4gIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wYi0yIHtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucGItMyB7XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wYi00IHtcbiAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucGItNSB7XG4gIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wcy0wIHtcbiAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5wcy0xIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5wcy0yIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnBzLTMge1xuICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLnBzLTQge1xuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucHMtNSB7XG4gIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xufVxuXG4uZ2FwLTAge1xuICBnYXA6IDAgIWltcG9ydGFudDtcbn1cblxuLmdhcC0xIHtcbiAgZ2FwOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5nYXAtMiB7XG4gIGdhcDogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5nYXAtMyB7XG4gIGdhcDogMXJlbSAhaW1wb3J0YW50O1xufVxuXG4uZ2FwLTQge1xuICBnYXA6IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4uZ2FwLTUge1xuICBnYXA6IDNyZW0gIWltcG9ydGFudDtcbn1cblxuLnJvdy1nYXAtMCB7XG4gIHJvdy1nYXA6IDAgIWltcG9ydGFudDtcbn1cblxuLnJvdy1nYXAtMSB7XG4gIHJvdy1nYXA6IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnJvdy1nYXAtMiB7XG4gIHJvdy1nYXA6IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucm93LWdhcC0zIHtcbiAgcm93LWdhcDogMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucm93LWdhcC00IHtcbiAgcm93LWdhcDogMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5yb3ctZ2FwLTUge1xuICByb3ctZ2FwOiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5jb2x1bW4tZ2FwLTAge1xuICBjb2x1bW4tZ2FwOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5jb2x1bW4tZ2FwLTEge1xuICBjb2x1bW4tZ2FwOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5jb2x1bW4tZ2FwLTIge1xuICBjb2x1bW4tZ2FwOiAwLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLmNvbHVtbi1nYXAtMyB7XG4gIGNvbHVtbi1nYXA6IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLmNvbHVtbi1nYXAtNCB7XG4gIGNvbHVtbi1nYXA6IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4uY29sdW1uLWdhcC01IHtcbiAgY29sdW1uLWdhcDogM3JlbSAhaW1wb3J0YW50O1xufVxuXG4uZm9udC1tb25vc3BhY2Uge1xuICBmb250LWZhbWlseTogdmFyKC0tYnMtZm9udC1tb25vc3BhY2UpICFpbXBvcnRhbnQ7XG59XG5cbi5mcy0xIHtcbiAgZm9udC1zaXplOiBjYWxjKDEuMzc1cmVtICsgMS41dncpICFpbXBvcnRhbnQ7XG59XG5cbi5mcy0yIHtcbiAgZm9udC1zaXplOiBjYWxjKDEuMzI1cmVtICsgMC45dncpICFpbXBvcnRhbnQ7XG59XG5cbi5mcy0zIHtcbiAgZm9udC1zaXplOiBjYWxjKDEuM3JlbSArIDAuNnZ3KSAhaW1wb3J0YW50O1xufVxuXG4uZnMtNCB7XG4gIGZvbnQtc2l6ZTogY2FsYygxLjI3NXJlbSArIDAuM3Z3KSAhaW1wb3J0YW50O1xufVxuXG4uZnMtNSB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4uZnMtNiB7XG4gIGZvbnQtc2l6ZTogMXJlbSAhaW1wb3J0YW50O1xufVxuXG4uZnN0LWl0YWxpYyB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYyAhaW1wb3J0YW50O1xufVxuXG4uZnN0LW5vcm1hbCB7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbCAhaW1wb3J0YW50O1xufVxuXG4uZnctbGlnaHRlciB7XG4gIGZvbnQtd2VpZ2h0OiBsaWdodGVyICFpbXBvcnRhbnQ7XG59XG5cbi5mdy1saWdodCB7XG4gIGZvbnQtd2VpZ2h0OiAzMDAgIWltcG9ydGFudDtcbn1cblxuLmZ3LW5vcm1hbCB7XG4gIGZvbnQtd2VpZ2h0OiA0MDAgIWltcG9ydGFudDtcbn1cblxuLmZ3LW1lZGl1bSB7XG4gIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbn1cblxuLmZ3LXNlbWlib2xkIHtcbiAgZm9udC13ZWlnaHQ6IDYwMCAhaW1wb3J0YW50O1xufVxuXG4uZnctYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbn1cblxuLmZ3LWJvbGRlciB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXIgIWltcG9ydGFudDtcbn1cblxuLmxoLTEge1xuICBsaW5lLWhlaWdodDogMSAhaW1wb3J0YW50O1xufVxuXG4ubGgtc20ge1xuICBsaW5lLWhlaWdodDogMS4yNSAhaW1wb3J0YW50O1xufVxuXG4ubGgtYmFzZSB7XG4gIGxpbmUtaGVpZ2h0OiAxLjUgIWltcG9ydGFudDtcbn1cblxuLmxoLWxnIHtcbiAgbGluZS1oZWlnaHQ6IDIgIWltcG9ydGFudDtcbn1cblxuLnRleHQtc3RhcnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LWVuZCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1kZWNvcmF0aW9uLW5vbmUge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnRleHQtZGVjb3JhdGlvbi11bmRlcmxpbmUge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1kZWNvcmF0aW9uLWxpbmUtdGhyb3VnaCB7XG4gIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LWxvd2VyY2FzZSB7XG4gIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2UgIWltcG9ydGFudDtcbn1cblxuLnRleHQtdXBwZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1jYXBpdGFsaXplIHtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemUgIWltcG9ydGFudDtcbn1cblxuLnRleHQtd3JhcCB7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWwgIWltcG9ydGFudDtcbn1cblxuLnRleHQtbm93cmFwIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xufVxuXG4vKiBydGw6YmVnaW46cmVtb3ZlICovXG5cbi50ZXh0LWJyZWFrIHtcbiAgd29yZC13cmFwOiBicmVhay13b3JkICFpbXBvcnRhbnQ7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQgIWltcG9ydGFudDtcbn1cblxuLyogcnRsOmVuZDpyZW1vdmUgKi9cblxuLnRleHQtcHJpbWFyeSB7XG4gIC0tYnMtdGV4dC1vcGFjaXR5OiAxO1xuICBjb2xvcjogcmdiYSh2YXIoLS1icy1wcmltYXJ5LXJnYiksIHZhcigtLWJzLXRleHQtb3BhY2l0eSkpICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXNlY29uZGFyeSB7XG4gIC0tYnMtdGV4dC1vcGFjaXR5OiAxO1xuICBjb2xvcjogcmdiYSh2YXIoLS1icy1zZWNvbmRhcnktcmdiKSwgdmFyKC0tYnMtdGV4dC1vcGFjaXR5KSkgIWltcG9ydGFudDtcbn1cblxuLnRleHQtc3VjY2VzcyB7XG4gIC0tYnMtdGV4dC1vcGFjaXR5OiAxO1xuICBjb2xvcjogcmdiYSh2YXIoLS1icy1zdWNjZXNzLXJnYiksIHZhcigtLWJzLXRleHQtb3BhY2l0eSkpICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LWluZm8ge1xuICAtLWJzLXRleHQtb3BhY2l0eTogMTtcbiAgY29sb3I6IHJnYmEodmFyKC0tYnMtaW5mby1yZ2IpLCB2YXIoLS1icy10ZXh0LW9wYWNpdHkpKSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC13YXJuaW5nIHtcbiAgLS1icy10ZXh0LW9wYWNpdHk6IDE7XG4gIGNvbG9yOiByZ2JhKHZhcigtLWJzLXdhcm5pbmctcmdiKSwgdmFyKC0tYnMtdGV4dC1vcGFjaXR5KSkgIWltcG9ydGFudDtcbn1cblxuLnRleHQtZGFuZ2VyIHtcbiAgLS1icy10ZXh0LW9wYWNpdHk6IDE7XG4gIGNvbG9yOiByZ2JhKHZhcigtLWJzLWRhbmdlci1yZ2IpLCB2YXIoLS1icy10ZXh0LW9wYWNpdHkpKSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1saWdodCB7XG4gIC0tYnMtdGV4dC1vcGFjaXR5OiAxO1xuICBjb2xvcjogcmdiYSh2YXIoLS1icy1saWdodC1yZ2IpLCB2YXIoLS1icy10ZXh0LW9wYWNpdHkpKSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1kYXJrIHtcbiAgLS1icy10ZXh0LW9wYWNpdHk6IDE7XG4gIGNvbG9yOiByZ2JhKHZhcigtLWJzLWRhcmstcmdiKSwgdmFyKC0tYnMtdGV4dC1vcGFjaXR5KSkgIWltcG9ydGFudDtcbn1cblxuLnRleHQtYmxhY2sge1xuICAtLWJzLXRleHQtb3BhY2l0eTogMTtcbiAgY29sb3I6IHJnYmEodmFyKC0tYnMtYmxhY2stcmdiKSwgdmFyKC0tYnMtdGV4dC1vcGFjaXR5KSkgIWltcG9ydGFudDtcbn1cblxuLnRleHQtd2hpdGUge1xuICAtLWJzLXRleHQtb3BhY2l0eTogMTtcbiAgY29sb3I6IHJnYmEodmFyKC0tYnMtd2hpdGUtcmdiKSwgdmFyKC0tYnMtdGV4dC1vcGFjaXR5KSkgIWltcG9ydGFudDtcbn1cblxuLnRleHQtYm9keSB7XG4gIC0tYnMtdGV4dC1vcGFjaXR5OiAxO1xuICBjb2xvcjogcmdiYSh2YXIoLS1icy1ib2R5LWNvbG9yLXJnYiksIHZhcigtLWJzLXRleHQtb3BhY2l0eSkpICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LW11dGVkIHtcbiAgLS1icy10ZXh0LW9wYWNpdHk6IDE7XG4gIGNvbG9yOiB2YXIoLS1icy1zZWNvbmRhcnktY29sb3IpICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LWJsYWNrLTUwIHtcbiAgLS1icy10ZXh0LW9wYWNpdHk6IDE7XG4gIGNvbG9yOiByZ2JhKDUxLCA1MSwgNTEsIDAuNSkgIWltcG9ydGFudDtcbn1cblxuLnRleHQtd2hpdGUtNTAge1xuICAtLWJzLXRleHQtb3BhY2l0eTogMTtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1ib2R5LXNlY29uZGFyeSB7XG4gIC0tYnMtdGV4dC1vcGFjaXR5OiAxO1xuICBjb2xvcjogdmFyKC0tYnMtc2Vjb25kYXJ5LWNvbG9yKSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1ib2R5LXRlcnRpYXJ5IHtcbiAgLS1icy10ZXh0LW9wYWNpdHk6IDE7XG4gIGNvbG9yOiB2YXIoLS1icy10ZXJ0aWFyeS1jb2xvcikgIWltcG9ydGFudDtcbn1cblxuLnRleHQtYm9keS1lbXBoYXNpcyB7XG4gIC0tYnMtdGV4dC1vcGFjaXR5OiAxO1xuICBjb2xvcjogdmFyKC0tYnMtZW1waGFzaXMtY29sb3IpICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXJlc2V0IHtcbiAgLS1icy10ZXh0LW9wYWNpdHk6IDE7XG4gIGNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LW9wYWNpdHktMjUge1xuICAtLWJzLXRleHQtb3BhY2l0eTogMC4yNTtcbn1cblxuLnRleHQtb3BhY2l0eS01MCB7XG4gIC0tYnMtdGV4dC1vcGFjaXR5OiAwLjU7XG59XG5cbi50ZXh0LW9wYWNpdHktNzUge1xuICAtLWJzLXRleHQtb3BhY2l0eTogMC43NTtcbn1cblxuLnRleHQtb3BhY2l0eS0xMDAge1xuICAtLWJzLXRleHQtb3BhY2l0eTogMTtcbn1cblxuLnRleHQtcHJpbWFyeS1lbXBoYXNpcyB7XG4gIGNvbG9yOiB2YXIoLS1icy1wcmltYXJ5LXRleHQtZW1waGFzaXMpICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXNlY29uZGFyeS1lbXBoYXNpcyB7XG4gIGNvbG9yOiB2YXIoLS1icy1zZWNvbmRhcnktdGV4dC1lbXBoYXNpcykgIWltcG9ydGFudDtcbn1cblxuLnRleHQtc3VjY2Vzcy1lbXBoYXNpcyB7XG4gIGNvbG9yOiB2YXIoLS1icy1zdWNjZXNzLXRleHQtZW1waGFzaXMpICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LWluZm8tZW1waGFzaXMge1xuICBjb2xvcjogdmFyKC0tYnMtaW5mby10ZXh0LWVtcGhhc2lzKSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC13YXJuaW5nLWVtcGhhc2lzIHtcbiAgY29sb3I6IHZhcigtLWJzLXdhcm5pbmctdGV4dC1lbXBoYXNpcykgIWltcG9ydGFudDtcbn1cblxuLnRleHQtZGFuZ2VyLWVtcGhhc2lzIHtcbiAgY29sb3I6IHZhcigtLWJzLWRhbmdlci10ZXh0LWVtcGhhc2lzKSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1saWdodC1lbXBoYXNpcyB7XG4gIGNvbG9yOiB2YXIoLS1icy1saWdodC10ZXh0LWVtcGhhc2lzKSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1kYXJrLWVtcGhhc2lzIHtcbiAgY29sb3I6IHZhcigtLWJzLWRhcmstdGV4dC1lbXBoYXNpcykgIWltcG9ydGFudDtcbn1cblxuLmxpbmstb3BhY2l0eS0xMCB7XG4gIC0tYnMtbGluay1vcGFjaXR5OiAwLjE7XG59XG5cbi5saW5rLW9wYWNpdHktMTAtaG92ZXI6aG92ZXIge1xuICAtLWJzLWxpbmstb3BhY2l0eTogMC4xO1xufVxuXG4ubGluay1vcGFjaXR5LTI1IHtcbiAgLS1icy1saW5rLW9wYWNpdHk6IDAuMjU7XG59XG5cbi5saW5rLW9wYWNpdHktMjUtaG92ZXI6aG92ZXIge1xuICAtLWJzLWxpbmstb3BhY2l0eTogMC4yNTtcbn1cblxuLmxpbmstb3BhY2l0eS01MCB7XG4gIC0tYnMtbGluay1vcGFjaXR5OiAwLjU7XG59XG5cbi5saW5rLW9wYWNpdHktNTAtaG92ZXI6aG92ZXIge1xuICAtLWJzLWxpbmstb3BhY2l0eTogMC41O1xufVxuXG4ubGluay1vcGFjaXR5LTc1IHtcbiAgLS1icy1saW5rLW9wYWNpdHk6IDAuNzU7XG59XG5cbi5saW5rLW9wYWNpdHktNzUtaG92ZXI6aG92ZXIge1xuICAtLWJzLWxpbmstb3BhY2l0eTogMC43NTtcbn1cblxuLmxpbmstb3BhY2l0eS0xMDAge1xuICAtLWJzLWxpbmstb3BhY2l0eTogMTtcbn1cblxuLmxpbmstb3BhY2l0eS0xMDAtaG92ZXI6aG92ZXIge1xuICAtLWJzLWxpbmstb3BhY2l0eTogMTtcbn1cblxuLmxpbmstb2Zmc2V0LTEge1xuICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDAuMTI1ZW0gIWltcG9ydGFudDtcbn1cblxuLmxpbmstb2Zmc2V0LTEtaG92ZXI6aG92ZXIge1xuICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDAuMTI1ZW0gIWltcG9ydGFudDtcbn1cblxuLmxpbmstb2Zmc2V0LTIge1xuICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDAuMjVlbSAhaW1wb3J0YW50O1xufVxuXG4ubGluay1vZmZzZXQtMi1ob3Zlcjpob3ZlciB7XG4gIHRleHQtdW5kZXJsaW5lLW9mZnNldDogMC4yNWVtICFpbXBvcnRhbnQ7XG59XG5cbi5saW5rLW9mZnNldC0zIHtcbiAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAwLjM3NWVtICFpbXBvcnRhbnQ7XG59XG5cbi5saW5rLW9mZnNldC0zLWhvdmVyOmhvdmVyIHtcbiAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAwLjM3NWVtICFpbXBvcnRhbnQ7XG59XG5cbi5saW5rLXVuZGVybGluZS1wcmltYXJ5IHtcbiAgLS1icy1saW5rLXVuZGVybGluZS1vcGFjaXR5OiAxO1xuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHJnYmEodmFyKC0tYnMtcHJpbWFyeS1yZ2IpLCB2YXIoLS1icy1saW5rLXVuZGVybGluZS1vcGFjaXR5KSkgIWltcG9ydGFudDtcbn1cblxuLmxpbmstdW5kZXJsaW5lLXNlY29uZGFyeSB7XG4gIC0tYnMtbGluay11bmRlcmxpbmUtb3BhY2l0eTogMTtcbiAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiByZ2JhKHZhcigtLWJzLXNlY29uZGFyeS1yZ2IpLCB2YXIoLS1icy1saW5rLXVuZGVybGluZS1vcGFjaXR5KSkgIWltcG9ydGFudDtcbn1cblxuLmxpbmstdW5kZXJsaW5lLXN1Y2Nlc3Mge1xuICAtLWJzLWxpbmstdW5kZXJsaW5lLW9wYWNpdHk6IDE7XG4gIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogcmdiYSh2YXIoLS1icy1zdWNjZXNzLXJnYiksIHZhcigtLWJzLWxpbmstdW5kZXJsaW5lLW9wYWNpdHkpKSAhaW1wb3J0YW50O1xufVxuXG4ubGluay11bmRlcmxpbmUtaW5mbyB7XG4gIC0tYnMtbGluay11bmRlcmxpbmUtb3BhY2l0eTogMTtcbiAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiByZ2JhKHZhcigtLWJzLWluZm8tcmdiKSwgdmFyKC0tYnMtbGluay11bmRlcmxpbmUtb3BhY2l0eSkpICFpbXBvcnRhbnQ7XG59XG5cbi5saW5rLXVuZGVybGluZS13YXJuaW5nIHtcbiAgLS1icy1saW5rLXVuZGVybGluZS1vcGFjaXR5OiAxO1xuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHJnYmEodmFyKC0tYnMtd2FybmluZy1yZ2IpLCB2YXIoLS1icy1saW5rLXVuZGVybGluZS1vcGFjaXR5KSkgIWltcG9ydGFudDtcbn1cblxuLmxpbmstdW5kZXJsaW5lLWRhbmdlciB7XG4gIC0tYnMtbGluay11bmRlcmxpbmUtb3BhY2l0eTogMTtcbiAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiByZ2JhKHZhcigtLWJzLWRhbmdlci1yZ2IpLCB2YXIoLS1icy1saW5rLXVuZGVybGluZS1vcGFjaXR5KSkgIWltcG9ydGFudDtcbn1cblxuLmxpbmstdW5kZXJsaW5lLWxpZ2h0IHtcbiAgLS1icy1saW5rLXVuZGVybGluZS1vcGFjaXR5OiAxO1xuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHJnYmEodmFyKC0tYnMtbGlnaHQtcmdiKSwgdmFyKC0tYnMtbGluay11bmRlcmxpbmUtb3BhY2l0eSkpICFpbXBvcnRhbnQ7XG59XG5cbi5saW5rLXVuZGVybGluZS1kYXJrIHtcbiAgLS1icy1saW5rLXVuZGVybGluZS1vcGFjaXR5OiAxO1xuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHJnYmEodmFyKC0tYnMtZGFyay1yZ2IpLCB2YXIoLS1icy1saW5rLXVuZGVybGluZS1vcGFjaXR5KSkgIWltcG9ydGFudDtcbn1cblxuLmxpbmstdW5kZXJsaW5lIHtcbiAgLS1icy1saW5rLXVuZGVybGluZS1vcGFjaXR5OiAxO1xuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHJnYmEodmFyKC0tYnMtbGluay1jb2xvci1yZ2IpLCB2YXIoLS1icy1saW5rLXVuZGVybGluZS1vcGFjaXR5LCAxKSkgIWltcG9ydGFudDtcbn1cblxuLmxpbmstdW5kZXJsaW5lLW9wYWNpdHktMCB7XG4gIC0tYnMtbGluay11bmRlcmxpbmUtb3BhY2l0eTogMDtcbn1cblxuLmxpbmstdW5kZXJsaW5lLW9wYWNpdHktMC1ob3Zlcjpob3ZlciB7XG4gIC0tYnMtbGluay11bmRlcmxpbmUtb3BhY2l0eTogMDtcbn1cblxuLmxpbmstdW5kZXJsaW5lLW9wYWNpdHktMTAge1xuICAtLWJzLWxpbmstdW5kZXJsaW5lLW9wYWNpdHk6IDAuMTtcbn1cblxuLmxpbmstdW5kZXJsaW5lLW9wYWNpdHktMTAtaG92ZXI6aG92ZXIge1xuICAtLWJzLWxpbmstdW5kZXJsaW5lLW9wYWNpdHk6IDAuMTtcbn1cblxuLmxpbmstdW5kZXJsaW5lLW9wYWNpdHktMjUge1xuICAtLWJzLWxpbmstdW5kZXJsaW5lLW9wYWNpdHk6IDAuMjU7XG59XG5cbi5saW5rLXVuZGVybGluZS1vcGFjaXR5LTI1LWhvdmVyOmhvdmVyIHtcbiAgLS1icy1saW5rLXVuZGVybGluZS1vcGFjaXR5OiAwLjI1O1xufVxuXG4ubGluay11bmRlcmxpbmUtb3BhY2l0eS01MCB7XG4gIC0tYnMtbGluay11bmRlcmxpbmUtb3BhY2l0eTogMC41O1xufVxuXG4ubGluay11bmRlcmxpbmUtb3BhY2l0eS01MC1ob3Zlcjpob3ZlciB7XG4gIC0tYnMtbGluay11bmRlcmxpbmUtb3BhY2l0eTogMC41O1xufVxuXG4ubGluay11bmRlcmxpbmUtb3BhY2l0eS03NSB7XG4gIC0tYnMtbGluay11bmRlcmxpbmUtb3BhY2l0eTogMC43NTtcbn1cblxuLmxpbmstdW5kZXJsaW5lLW9wYWNpdHktNzUtaG92ZXI6aG92ZXIge1xuICAtLWJzLWxpbmstdW5kZXJsaW5lLW9wYWNpdHk6IDAuNzU7XG59XG5cbi5saW5rLXVuZGVybGluZS1vcGFjaXR5LTEwMCB7XG4gIC0tYnMtbGluay11bmRlcmxpbmUtb3BhY2l0eTogMTtcbn1cblxuLmxpbmstdW5kZXJsaW5lLW9wYWNpdHktMTAwLWhvdmVyOmhvdmVyIHtcbiAgLS1icy1saW5rLXVuZGVybGluZS1vcGFjaXR5OiAxO1xufVxuXG4uYmctcHJpbWFyeSB7XG4gIC0tYnMtYmctb3BhY2l0eTogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS1icy1wcmltYXJ5LXJnYiksIHZhcigtLWJzLWJnLW9wYWNpdHkpKSAhaW1wb3J0YW50O1xufVxuXG4uYmctc2Vjb25kYXJ5IHtcbiAgLS1icy1iZy1vcGFjaXR5OiAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLWJzLXNlY29uZGFyeS1yZ2IpLCB2YXIoLS1icy1iZy1vcGFjaXR5KSkgIWltcG9ydGFudDtcbn1cblxuLmJnLXN1Y2Nlc3Mge1xuICAtLWJzLWJnLW9wYWNpdHk6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tYnMtc3VjY2Vzcy1yZ2IpLCB2YXIoLS1icy1iZy1vcGFjaXR5KSkgIWltcG9ydGFudDtcbn1cblxuLmJnLWluZm8ge1xuICAtLWJzLWJnLW9wYWNpdHk6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tYnMtaW5mby1yZ2IpLCB2YXIoLS1icy1iZy1vcGFjaXR5KSkgIWltcG9ydGFudDtcbn1cblxuLmJnLXdhcm5pbmcge1xuICAtLWJzLWJnLW9wYWNpdHk6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tYnMtd2FybmluZy1yZ2IpLCB2YXIoLS1icy1iZy1vcGFjaXR5KSkgIWltcG9ydGFudDtcbn1cblxuLmJnLWRhbmdlciB7XG4gIC0tYnMtYmctb3BhY2l0eTogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS1icy1kYW5nZXItcmdiKSwgdmFyKC0tYnMtYmctb3BhY2l0eSkpICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1saWdodCB7XG4gIC0tYnMtYmctb3BhY2l0eTogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS1icy1saWdodC1yZ2IpLCB2YXIoLS1icy1iZy1vcGFjaXR5KSkgIWltcG9ydGFudDtcbn1cblxuLmJnLWRhcmsge1xuICAtLWJzLWJnLW9wYWNpdHk6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tYnMtZGFyay1yZ2IpLCB2YXIoLS1icy1iZy1vcGFjaXR5KSkgIWltcG9ydGFudDtcbn1cblxuLmJnLWJsYWNrIHtcbiAgLS1icy1iZy1vcGFjaXR5OiAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLWJzLWJsYWNrLXJnYiksIHZhcigtLWJzLWJnLW9wYWNpdHkpKSAhaW1wb3J0YW50O1xufVxuXG4uYmctd2hpdGUge1xuICAtLWJzLWJnLW9wYWNpdHk6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tYnMtd2hpdGUtcmdiKSwgdmFyKC0tYnMtYmctb3BhY2l0eSkpICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1ib2R5IHtcbiAgLS1icy1iZy1vcGFjaXR5OiAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLWJzLWJvZHktYmctcmdiKSwgdmFyKC0tYnMtYmctb3BhY2l0eSkpICFpbXBvcnRhbnQ7XG59XG5cbi5iZy10cmFuc3BhcmVudCB7XG4gIC0tYnMtYmctb3BhY2l0eTogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cblxuLmJnLWJvZHktc2Vjb25kYXJ5IHtcbiAgLS1icy1iZy1vcGFjaXR5OiAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLWJzLXNlY29uZGFyeS1iZy1yZ2IpLCB2YXIoLS1icy1iZy1vcGFjaXR5KSkgIWltcG9ydGFudDtcbn1cblxuLmJnLWJvZHktdGVydGlhcnkge1xuICAtLWJzLWJnLW9wYWNpdHk6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tYnMtdGVydGlhcnktYmctcmdiKSwgdmFyKC0tYnMtYmctb3BhY2l0eSkpICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1vcGFjaXR5LTEwIHtcbiAgLS1icy1iZy1vcGFjaXR5OiAwLjE7XG59XG5cbi5iZy1vcGFjaXR5LTI1IHtcbiAgLS1icy1iZy1vcGFjaXR5OiAwLjI1O1xufVxuXG4uYmctb3BhY2l0eS01MCB7XG4gIC0tYnMtYmctb3BhY2l0eTogMC41O1xufVxuXG4uYmctb3BhY2l0eS03NSB7XG4gIC0tYnMtYmctb3BhY2l0eTogMC43NTtcbn1cblxuLmJnLW9wYWNpdHktMTAwIHtcbiAgLS1icy1iZy1vcGFjaXR5OiAxO1xufVxuXG4uYmctcHJpbWFyeS1zdWJ0bGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5LWJnLXN1YnRsZSkgIWltcG9ydGFudDtcbn1cblxuLmJnLXNlY29uZGFyeS1zdWJ0bGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1zZWNvbmRhcnktYmctc3VidGxlKSAhaW1wb3J0YW50O1xufVxuXG4uYmctc3VjY2Vzcy1zdWJ0bGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1zdWNjZXNzLWJnLXN1YnRsZSkgIWltcG9ydGFudDtcbn1cblxuLmJnLWluZm8tc3VidGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtaW5mby1iZy1zdWJ0bGUpICFpbXBvcnRhbnQ7XG59XG5cbi5iZy13YXJuaW5nLXN1YnRsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLXdhcm5pbmctYmctc3VidGxlKSAhaW1wb3J0YW50O1xufVxuXG4uYmctZGFuZ2VyLXN1YnRsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWRhbmdlci1iZy1zdWJ0bGUpICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1saWdodC1zdWJ0bGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1saWdodC1iZy1zdWJ0bGUpICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1kYXJrLXN1YnRsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWRhcmstYmctc3VidGxlKSAhaW1wb3J0YW50O1xufVxuXG4uYmctZ3JhZGllbnQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS1icy1ncmFkaWVudCkgIWltcG9ydGFudDtcbn1cblxuLnVzZXItc2VsZWN0LWFsbCB7XG4gIHVzZXItc2VsZWN0OiBhbGwgIWltcG9ydGFudDtcbn1cblxuLnVzZXItc2VsZWN0LWF1dG8ge1xuICB1c2VyLXNlbGVjdDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4udXNlci1zZWxlY3Qtbm9uZSB7XG4gIHVzZXItc2VsZWN0OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5wZS1ub25lIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnBlLWF1dG8ge1xuICBwb2ludGVyLWV2ZW50czogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMpICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLTAge1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLTEge1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1icy1ib3JkZXItcmFkaXVzLXNtKSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC0yIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cykgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtMyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMtbGcpICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLTQge1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1icy1ib3JkZXItcmFkaXVzLXhsKSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC01IHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cy14eGwpICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWNpcmNsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1waWxsIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cy1waWxsKSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC10b3Age1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YXIoLS1icy1ib3JkZXItcmFkaXVzKSAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cykgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtdG9wLTAge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXRvcC0xIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cy1zbSkgIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMtc20pICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXRvcC0yIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cykgIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMpICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXRvcC0zIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cy1sZykgIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMtbGcpICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXRvcC00IHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cy14bCkgIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMteGwpICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXRvcC01IHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cy14eGwpICFpbXBvcnRhbnQ7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YXIoLS1icy1ib3JkZXItcmFkaXVzLXh4bCkgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtdG9wLWNpcmNsZSB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNTAlICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXRvcC1waWxsIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cy1waWxsKSAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cy1waWxsKSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1lbmQge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cykgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMpICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWVuZC0wIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtZW5kLTEge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cy1zbSkgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMtc20pICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWVuZC0yIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMpICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YXIoLS1icy1ib3JkZXItcmFkaXVzKSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1lbmQtMyB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YXIoLS1icy1ib3JkZXItcmFkaXVzLWxnKSAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cy1sZykgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtZW5kLTQge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cy14bCkgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMteGwpICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWVuZC01IHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMteHhsKSAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cy14eGwpICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWVuZC1jaXJjbGUge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNTAlICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA1MCUgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtZW5kLXBpbGwge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cy1waWxsKSAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cy1waWxsKSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1ib3R0b20ge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cykgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cykgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtYm90dG9tLTAge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMCAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWJvdHRvbS0xIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMtc20pICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMtc20pICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWJvdHRvbS0yIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMpICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMpICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWJvdHRvbS0zIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMtbGcpICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMtbGcpICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWJvdHRvbS00IHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMteGwpICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMteGwpICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWJvdHRvbS01IHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMteHhsKSAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YXIoLS1icy1ib3JkZXItcmFkaXVzLXh4bCkgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtYm90dG9tLWNpcmNsZSB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA1MCUgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNTAlICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWJvdHRvbS1waWxsIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMtcGlsbCkgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cy1waWxsKSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1zdGFydCB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMpICFpbXBvcnRhbnQ7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMpICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXN0YXJ0LTAge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtc3RhcnQtMSB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMtc20pICFpbXBvcnRhbnQ7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMtc20pICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXN0YXJ0LTIge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YXIoLS1icy1ib3JkZXItcmFkaXVzKSAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YXIoLS1icy1ib3JkZXItcmFkaXVzKSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1zdGFydC0zIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cy1sZykgIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cy1sZykgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtc3RhcnQtNCB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMteGwpICFpbXBvcnRhbnQ7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMteGwpICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXN0YXJ0LTUge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YXIoLS1icy1ib3JkZXItcmFkaXVzLXh4bCkgIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cy14eGwpICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXN0YXJ0LWNpcmNsZSB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA1MCUgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtc3RhcnQtcGlsbCB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMtcGlsbCkgIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cy1waWxsKSAhaW1wb3J0YW50O1xufVxuXG4udmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbn1cblxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuXG4uei1uMSB7XG4gIHotaW5kZXg6IC0xICFpbXBvcnRhbnQ7XG59XG5cbi56LTAge1xuICB6LWluZGV4OiAwICFpbXBvcnRhbnQ7XG59XG5cbi56LTEge1xuICB6LWluZGV4OiAxICFpbXBvcnRhbnQ7XG59XG5cbi56LTIge1xuICB6LWluZGV4OiAyICFpbXBvcnRhbnQ7XG59XG5cbi56LTMge1xuICB6LWluZGV4OiAzICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuZmxvYXQtc20tc3RhcnQge1xuICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxvYXQtc20tZW5kIHtcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbG9hdC1zbS1ub25lIHtcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm9iamVjdC1maXQtc20tY29udGFpbiB7XG4gICAgb2JqZWN0LWZpdDogY29udGFpbiAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm9iamVjdC1maXQtc20tY292ZXIge1xuICAgIG9iamVjdC1maXQ6IGNvdmVyICFpbXBvcnRhbnQ7XG4gIH1cblxuICAub2JqZWN0LWZpdC1zbS1maWxsIHtcbiAgICBvYmplY3QtZml0OiBmaWxsICFpbXBvcnRhbnQ7XG4gIH1cblxuICAub2JqZWN0LWZpdC1zbS1zY2FsZSB7XG4gICAgb2JqZWN0LWZpdDogc2NhbGUtZG93biAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm9iamVjdC1maXQtc20tbm9uZSB7XG4gICAgb2JqZWN0LWZpdDogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtc20taW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXNtLWlubGluZS1ibG9jayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1zbS1ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXNtLWdyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXNtLWlubGluZS1ncmlkIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZ3JpZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtc20tdGFibGUge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1zbS10YWJsZS1yb3cge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtc20tdGFibGUtY2VsbCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtc20tZmxleCB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtc20taW5saW5lLWZsZXgge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1zbS1ub25lIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1zbS1maWxsIHtcbiAgICBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtc20tcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1zbS1jb2x1bW4ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXNtLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXNtLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXNtLWdyb3ctMCB7XG4gICAgZmxleC1ncm93OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1zbS1ncm93LTEge1xuICAgIGZsZXgtZ3JvdzogMSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtc20tc2hyaW5rLTAge1xuICAgIGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1zbS1zaHJpbmstMSB7XG4gICAgZmxleC1zaHJpbms6IDEgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXNtLXdyYXAge1xuICAgIGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtc20tbm93cmFwIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtc20td3JhcC1yZXZlcnNlIHtcbiAgICBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmp1c3RpZnktY29udGVudC1zbS1zdGFydCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LXNtLWVuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmp1c3RpZnktY29udGVudC1zbS1jZW50ZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LXNtLWJldHdlZW4ge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmp1c3RpZnktY29udGVudC1zbS1hcm91bmQge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LXNtLWV2ZW5seSB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHkgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy1zbS1zdGFydCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy1zbS1lbmQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWl0ZW1zLXNtLWNlbnRlciB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWl0ZW1zLXNtLWJhc2VsaW5lIHtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy1zbS1zdHJldGNoIHtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQtc20tc3RhcnQge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LXNtLWVuZCB7XG4gICAgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LXNtLWNlbnRlciB7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC1zbS1iZXR3ZWVuIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC1zbS1hcm91bmQge1xuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQtc20tc3RyZXRjaCB7XG4gICAgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLXNlbGYtc20tYXV0byB7XG4gICAgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLXNlbGYtc20tc3RhcnQge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLXNtLWVuZCB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLXNtLWNlbnRlciB7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi1zbS1iYXNlbGluZSB7XG4gICAgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLXNtLXN0cmV0Y2gge1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5vcmRlci1zbS1maXJzdCB7XG4gICAgb3JkZXI6IC0xICFpbXBvcnRhbnQ7XG4gIH1cblxuICAub3JkZXItc20tMCB7XG4gICAgb3JkZXI6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5vcmRlci1zbS0xIHtcbiAgICBvcmRlcjogMSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm9yZGVyLXNtLTIge1xuICAgIG9yZGVyOiAyICFpbXBvcnRhbnQ7XG4gIH1cblxuICAub3JkZXItc20tMyB7XG4gICAgb3JkZXI6IDMgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5vcmRlci1zbS00IHtcbiAgICBvcmRlcjogNCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm9yZGVyLXNtLTUge1xuICAgIG9yZGVyOiA1ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAub3JkZXItc20tbGFzdCB7XG4gICAgb3JkZXI6IDYgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLXNtLTAge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tc20tMSB7XG4gICAgbWFyZ2luOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1zbS0yIHtcbiAgICBtYXJnaW46IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tc20tMyB7XG4gICAgbWFyZ2luOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1zbS00IHtcbiAgICBtYXJnaW46IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tc20tNSB7XG4gICAgbWFyZ2luOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1zbS1hdXRvIHtcbiAgICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5teC1zbS0wIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm14LXNtLTEge1xuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXgtc20tMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXgtc20tMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5teC1zbS00IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5teC1zbS01IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm14LXNtLWF1dG8ge1xuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXktc20tMCB7XG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5teS1zbS0xIHtcbiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm15LXNtLTIge1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm15LXNtLTMge1xuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXktc20tNCB7XG4gICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXktc20tNSB7XG4gICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5teS1zbS1hdXRvIHtcbiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXNtLTAge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1zbS0xIHtcbiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtc20tMiB7XG4gICAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtc20tMyB7XG4gICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXNtLTQge1xuICAgIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXNtLTUge1xuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1zbS1hdXRvIHtcbiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWUtc20tMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWUtc20tMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWUtc20tMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZS1zbS0zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZS1zbS00IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1lLXNtLTUge1xuICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1lLXNtLWF1dG8ge1xuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXNtLTAge1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1zbS0xIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItc20tMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItc20tMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXNtLTQge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXNtLTUge1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1zbS1hdXRvIHtcbiAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXMtc20tMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tcy1zbS0xIHtcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1zLXNtLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tcy1zbS0zIHtcbiAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1zLXNtLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tcy1zbS01IHtcbiAgICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1zLXNtLWF1dG8ge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC1zbS0wIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC1zbS0xIHtcbiAgICBwYWRkaW5nOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC1zbS0yIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wLXNtLTMge1xuICAgIHBhZGRpbmc6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wLXNtLTQge1xuICAgIHBhZGRpbmc6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAtc20tNSB7XG4gICAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB4LXNtLTAge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5weC1zbS0xIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHgtc20tMiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5weC1zbS0zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHgtc20tNCB7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5weC1zbS01IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHktc20tMCB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB5LXNtLTEge1xuICAgIHBhZGRpbmctdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5weS1zbS0yIHtcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB5LXNtLTMge1xuICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5weS1zbS00IHtcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB5LXNtLTUge1xuICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC1zbS0wIHtcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LXNtLTEge1xuICAgIHBhZGRpbmctdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQtc20tMiB7XG4gICAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LXNtLTMge1xuICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQtc20tNCB7XG4gICAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LXNtLTUge1xuICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGUtc20tMCB7XG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBlLXNtLTEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wZS1zbS0yIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wZS1zbS0zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGUtc20tNCB7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGUtc20tNSB7XG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLXNtLTAge1xuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGItc20tMSB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi1zbS0yIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGItc20tMyB7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi1zbS00IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGItc20tNSB7XG4gICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wcy1zbS0wIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wcy1zbS0xIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wcy1zbS0yIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBzLXNtLTMge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBzLXNtLTQge1xuICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHMtc20tNSB7XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZ2FwLXNtLTAge1xuICAgIGdhcDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmdhcC1zbS0xIHtcbiAgICBnYXA6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5nYXAtc20tMiB7XG4gICAgZ2FwOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5nYXAtc20tMyB7XG4gICAgZ2FwOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZ2FwLXNtLTQge1xuICAgIGdhcDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZ2FwLXNtLTUge1xuICAgIGdhcDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnJvdy1nYXAtc20tMCB7XG4gICAgcm93LWdhcDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnJvdy1nYXAtc20tMSB7XG4gICAgcm93LWdhcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnJvdy1nYXAtc20tMiB7XG4gICAgcm93LWdhcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucm93LWdhcC1zbS0zIHtcbiAgICByb3ctZ2FwOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucm93LWdhcC1zbS00IHtcbiAgICByb3ctZ2FwOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5yb3ctZ2FwLXNtLTUge1xuICAgIHJvdy1nYXA6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5jb2x1bW4tZ2FwLXNtLTAge1xuICAgIGNvbHVtbi1nYXA6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5jb2x1bW4tZ2FwLXNtLTEge1xuICAgIGNvbHVtbi1nYXA6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5jb2x1bW4tZ2FwLXNtLTIge1xuICAgIGNvbHVtbi1nYXA6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmNvbHVtbi1nYXAtc20tMyB7XG4gICAgY29sdW1uLWdhcDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmNvbHVtbi1nYXAtc20tNCB7XG4gICAgY29sdW1uLWdhcDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuY29sdW1uLWdhcC1zbS01IHtcbiAgICBjb2x1bW4tZ2FwOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudGV4dC1zbS1zdGFydCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnRleHQtc20tZW5kIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnRleHQtc20tY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZsb2F0LW1kLXN0YXJ0IHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsb2F0LW1kLWVuZCB7XG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxvYXQtbWQtbm9uZSB7XG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5vYmplY3QtZml0LW1kLWNvbnRhaW4ge1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW4gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5vYmplY3QtZml0LW1kLWNvdmVyIHtcbiAgICBvYmplY3QtZml0OiBjb3ZlciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm9iamVjdC1maXQtbWQtZmlsbCB7XG4gICAgb2JqZWN0LWZpdDogZmlsbCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm9iamVjdC1maXQtbWQtc2NhbGUge1xuICAgIG9iamVjdC1maXQ6IHNjYWxlLWRvd24gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5vYmplY3QtZml0LW1kLW5vbmUge1xuICAgIG9iamVjdC1maXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLW1kLWlubGluZSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1tZC1pbmxpbmUtYmxvY2sge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtbWQtYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1tZC1ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1tZC1pbmxpbmUtZ3JpZCB7XG4gICAgZGlzcGxheTogaW5saW5lLWdyaWQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLW1kLXRhYmxlIHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtbWQtdGFibGUtcm93IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLW1kLXRhYmxlLWNlbGwge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLW1kLWZsZXgge1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLW1kLWlubGluZS1mbGV4IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtbWQtbm9uZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtbWQtZmlsbCB7XG4gICAgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LW1kLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtbWQtY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1tZC1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1tZC1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1tZC1ncm93LTAge1xuICAgIGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtbWQtZ3Jvdy0xIHtcbiAgICBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LW1kLXNocmluay0wIHtcbiAgICBmbGV4LXNocmluazogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtbWQtc2hyaW5rLTEge1xuICAgIGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1tZC13cmFwIHtcbiAgICBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LW1kLW5vd3JhcCB7XG4gICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LW1kLXdyYXAtcmV2ZXJzZSB7XG4gICAgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5qdXN0aWZ5LWNvbnRlbnQtbWQtc3RhcnQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmp1c3RpZnktY29udGVudC1tZC1lbmQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5qdXN0aWZ5LWNvbnRlbnQtbWQtY2VudGVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmp1c3RpZnktY29udGVudC1tZC1iZXR3ZWVuIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5qdXN0aWZ5LWNvbnRlbnQtbWQtYXJvdW5kIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmp1c3RpZnktY29udGVudC1tZC1ldmVubHkge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24taXRlbXMtbWQtc3RhcnQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24taXRlbXMtbWQtZW5kIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy1tZC1jZW50ZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy1tZC1iYXNlbGluZSB7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24taXRlbXMtbWQtc3RyZXRjaCB7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LW1kLXN0YXJ0IHtcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC1tZC1lbmQge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC1tZC1jZW50ZXIge1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQtbWQtYmV0d2VlbiB7XG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQtbWQtYXJvdW5kIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LW1kLXN0cmV0Y2gge1xuICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLW1kLWF1dG8ge1xuICAgIGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLW1kLXN0YXJ0IHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi1tZC1lbmQge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi1tZC1jZW50ZXIge1xuICAgIGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLXNlbGYtbWQtYmFzZWxpbmUge1xuICAgIGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi1tZC1zdHJldGNoIHtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7XG4gIH1cblxuICAub3JkZXItbWQtZmlyc3Qge1xuICAgIG9yZGVyOiAtMSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm9yZGVyLW1kLTAge1xuICAgIG9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAub3JkZXItbWQtMSB7XG4gICAgb3JkZXI6IDEgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5vcmRlci1tZC0yIHtcbiAgICBvcmRlcjogMiAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm9yZGVyLW1kLTMge1xuICAgIG9yZGVyOiAzICFpbXBvcnRhbnQ7XG4gIH1cblxuICAub3JkZXItbWQtNCB7XG4gICAgb3JkZXI6IDQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5vcmRlci1tZC01IHtcbiAgICBvcmRlcjogNSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm9yZGVyLW1kLWxhc3Qge1xuICAgIG9yZGVyOiA2ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1tZC0wIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLW1kLTEge1xuICAgIG1hcmdpbjogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tbWQtMiB7XG4gICAgbWFyZ2luOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLW1kLTMge1xuICAgIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tbWQtNCB7XG4gICAgbWFyZ2luOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLW1kLTUge1xuICAgIG1hcmdpbjogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tbWQtYXV0byB7XG4gICAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXgtbWQtMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5teC1tZC0xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm14LW1kLTIge1xuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm14LW1kLTMge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXgtbWQtNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXgtbWQtNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5teC1tZC1hdXRvIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm15LW1kLTAge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXktbWQtMSB7XG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5teS1tZC0yIHtcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5teS1tZC0zIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm15LW1kLTQge1xuICAgIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm15LW1kLTUge1xuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXktbWQtYXV0byB7XG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1tZC0wIHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtbWQtMSB7XG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LW1kLTIge1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LW1kLTMge1xuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1tZC00IHtcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1tZC01IHtcbiAgICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtbWQtYXV0byB7XG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1lLW1kLTAge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1lLW1kLTEge1xuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1lLW1kLTIge1xuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWUtbWQtMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWUtbWQtNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZS1tZC01IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZS1tZC1hdXRvIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1tZC0wIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItbWQtMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLW1kLTIge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLW1kLTMge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1tZC00IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1tZC01IHtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItbWQtYXV0byB7XG4gICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1zLW1kLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXMtbWQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tcy1tZC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXMtbWQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tcy1tZC00IHtcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXMtbWQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tcy1tZC1hdXRvIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAtbWQtMCB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAtbWQtMSB7XG4gICAgcGFkZGluZzogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAtbWQtMiB7XG4gICAgcGFkZGluZzogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC1tZC0zIHtcbiAgICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC1tZC00IHtcbiAgICBwYWRkaW5nOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wLW1kLTUge1xuICAgIHBhZGRpbmc6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5weC1tZC0wIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHgtbWQtMSB7XG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB4LW1kLTIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHgtbWQtMyB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB4LW1kLTQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHgtbWQtNSB7XG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB5LW1kLTAge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5weS1tZC0xIHtcbiAgICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHktbWQtMiB7XG4gICAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5weS1tZC0zIHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHktbWQtNCB7XG4gICAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5weS1tZC01IHtcbiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQtbWQtMCB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC1tZC0xIHtcbiAgICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LW1kLTIge1xuICAgIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC1tZC0zIHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LW1kLTQge1xuICAgIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC1tZC01IHtcbiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBlLW1kLTAge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wZS1tZC0xIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGUtbWQtMiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGUtbWQtMyB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBlLW1kLTQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBlLW1kLTUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi1tZC0wIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLW1kLTEge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGItbWQtMiB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLW1kLTMge1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGItbWQtNCB7XG4gICAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLW1kLTUge1xuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHMtbWQtMCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHMtbWQtMSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHMtbWQtMiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wcy1tZC0zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wcy1tZC00IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBzLW1kLTUge1xuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmdhcC1tZC0wIHtcbiAgICBnYXA6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5nYXAtbWQtMSB7XG4gICAgZ2FwOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZ2FwLW1kLTIge1xuICAgIGdhcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZ2FwLW1kLTMge1xuICAgIGdhcDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmdhcC1tZC00IHtcbiAgICBnYXA6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmdhcC1tZC01IHtcbiAgICBnYXA6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5yb3ctZ2FwLW1kLTAge1xuICAgIHJvdy1nYXA6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5yb3ctZ2FwLW1kLTEge1xuICAgIHJvdy1nYXA6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5yb3ctZ2FwLW1kLTIge1xuICAgIHJvdy1nYXA6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnJvdy1nYXAtbWQtMyB7XG4gICAgcm93LWdhcDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnJvdy1nYXAtbWQtNCB7XG4gICAgcm93LWdhcDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucm93LWdhcC1tZC01IHtcbiAgICByb3ctZ2FwOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuY29sdW1uLWdhcC1tZC0wIHtcbiAgICBjb2x1bW4tZ2FwOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuY29sdW1uLWdhcC1tZC0xIHtcbiAgICBjb2x1bW4tZ2FwOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuY29sdW1uLWdhcC1tZC0yIHtcbiAgICBjb2x1bW4tZ2FwOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5jb2x1bW4tZ2FwLW1kLTMge1xuICAgIGNvbHVtbi1nYXA6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5jb2x1bW4tZ2FwLW1kLTQge1xuICAgIGNvbHVtbi1nYXA6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmNvbHVtbi1nYXAtbWQtNSB7XG4gICAgY29sdW1uLWdhcDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnRleHQtbWQtc3RhcnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC50ZXh0LW1kLWVuZCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC50ZXh0LW1kLWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5mbG9hdC1sZy1zdGFydCB7XG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbG9hdC1sZy1lbmQge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsb2F0LWxnLW5vbmUge1xuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAub2JqZWN0LWZpdC1sZy1jb250YWluIHtcbiAgICBvYmplY3QtZml0OiBjb250YWluICFpbXBvcnRhbnQ7XG4gIH1cblxuICAub2JqZWN0LWZpdC1sZy1jb3ZlciB7XG4gICAgb2JqZWN0LWZpdDogY292ZXIgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5vYmplY3QtZml0LWxnLWZpbGwge1xuICAgIG9iamVjdC1maXQ6IGZpbGwgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5vYmplY3QtZml0LWxnLXNjYWxlIHtcbiAgICBvYmplY3QtZml0OiBzY2FsZS1kb3duICFpbXBvcnRhbnQ7XG4gIH1cblxuICAub2JqZWN0LWZpdC1sZy1ub25lIHtcbiAgICBvYmplY3QtZml0OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1sZy1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtbGctaW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLWxnLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtbGctZ3JpZCB7XG4gICAgZGlzcGxheTogZ3JpZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtbGctaW5saW5lLWdyaWQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ncmlkICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1sZy10YWJsZSB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLWxnLXRhYmxlLXJvdyB7XG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1sZy10YWJsZS1jZWxsIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1sZy1mbGV4IHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1sZy1pbmxpbmUtZmxleCB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLWxnLW5vbmUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LWxnLWZpbGwge1xuICAgIGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1sZy1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LWxnLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtbGctcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtbGctY29sdW1uLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtbGctZ3Jvdy0wIHtcbiAgICBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LWxnLWdyb3ctMSB7XG4gICAgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1sZy1zaHJpbmstMCB7XG4gICAgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LWxnLXNocmluay0xIHtcbiAgICBmbGV4LXNocmluazogMSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgtbGctd3JhcCB7XG4gICAgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1sZy1ub3dyYXAge1xuICAgIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC1sZy13cmFwLXJldmVyc2Uge1xuICAgIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LWxnLXN0YXJ0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5qdXN0aWZ5LWNvbnRlbnQtbGctZW5kIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LWxnLWNlbnRlciB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5qdXN0aWZ5LWNvbnRlbnQtbGctYmV0d2VlbiB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LWxnLWFyb3VuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5qdXN0aWZ5LWNvbnRlbnQtbGctZXZlbmx5IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWl0ZW1zLWxnLXN0YXJ0IHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWl0ZW1zLWxnLWVuZCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24taXRlbXMtbGctY2VudGVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24taXRlbXMtbGctYmFzZWxpbmUge1xuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWl0ZW1zLWxnLXN0cmV0Y2gge1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC1sZy1zdGFydCB7XG4gICAgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQtbGctZW5kIHtcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQtbGctY2VudGVyIHtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LWxnLWJldHdlZW4ge1xuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LWxnLWFyb3VuZCB7XG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC1sZy1zdHJldGNoIHtcbiAgICBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi1sZy1hdXRvIHtcbiAgICBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi1sZy1zdGFydCB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLXNlbGYtbGctZW5kIHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLXNlbGYtbGctY2VudGVyIHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLWxnLWJhc2VsaW5lIHtcbiAgICBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLXNlbGYtbGctc3RyZXRjaCB7XG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm9yZGVyLWxnLWZpcnN0IHtcbiAgICBvcmRlcjogLTEgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5vcmRlci1sZy0wIHtcbiAgICBvcmRlcjogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm9yZGVyLWxnLTEge1xuICAgIG9yZGVyOiAxICFpbXBvcnRhbnQ7XG4gIH1cblxuICAub3JkZXItbGctMiB7XG4gICAgb3JkZXI6IDIgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5vcmRlci1sZy0zIHtcbiAgICBvcmRlcjogMyAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm9yZGVyLWxnLTQge1xuICAgIG9yZGVyOiA0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAub3JkZXItbGctNSB7XG4gICAgb3JkZXI6IDUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5vcmRlci1sZy1sYXN0IHtcbiAgICBvcmRlcjogNiAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0tbGctMCB7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1sZy0xIHtcbiAgICBtYXJnaW46IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLWxnLTIge1xuICAgIG1hcmdpbjogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1sZy0zIHtcbiAgICBtYXJnaW46IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLWxnLTQge1xuICAgIG1hcmdpbjogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS1sZy01IHtcbiAgICBtYXJnaW46IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLWxnLWF1dG8ge1xuICAgIG1hcmdpbjogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm14LWxnLTAge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXgtbGctMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5teC1sZy0yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5teC1sZy0zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm14LWxnLTQge1xuICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm14LWxnLTUge1xuICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXgtbGctYXV0byB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5teS1sZy0wIHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm15LWxnLTEge1xuICAgIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXktbGctMiB7XG4gICAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXktbGctMyB7XG4gICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5teS1sZy00IHtcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5teS1sZy01IHtcbiAgICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm15LWxnLWF1dG8ge1xuICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtbGctMCB7XG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LWxnLTEge1xuICAgIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1sZy0yIHtcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC1sZy0zIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtbGctNCB7XG4gICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtbGctNSB7XG4gICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LWxnLWF1dG8ge1xuICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZS1sZy0wIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZS1sZy0xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZS1sZy0yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1lLWxnLTMge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1lLWxnLTQge1xuICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWUtbGctNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWUtbGctYXV0byB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItbGctMCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLWxnLTEge1xuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1sZy0yIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi1sZy0zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItbGctNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItbGctNSB7XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLWxnLWF1dG8ge1xuICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tcy1sZy0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1zLWxnLTEge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXMtbGctMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1zLWxnLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXMtbGctNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1zLWxnLTUge1xuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXMtbGctYXV0byB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wLWxnLTAge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wLWxnLTEge1xuICAgIHBhZGRpbmc6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wLWxnLTIge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAtbGctMyB7XG4gICAgcGFkZGluZzogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAtbGctNCB7XG4gICAgcGFkZGluZzogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC1sZy01IHtcbiAgICBwYWRkaW5nOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHgtbGctMCB7XG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB4LWxnLTEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5weC1sZy0yIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB4LWxnLTMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5weC1sZy00IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB4LWxnLTUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5weS1sZy0wIHtcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHktbGctMSB7XG4gICAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB5LWxnLTIge1xuICAgIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHktbGctMyB7XG4gICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB5LWxnLTQge1xuICAgIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHktbGctNSB7XG4gICAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LWxnLTAge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQtbGctMSB7XG4gICAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC1sZy0yIHtcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQtbGctMyB7XG4gICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC1sZy00IHtcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQtbGctNSB7XG4gICAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wZS1sZy0wIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGUtbGctMSB7XG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBlLWxnLTIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBlLWxnLTMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wZS1sZy00IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wZS1sZy01IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGItbGctMCB7XG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi1sZy0xIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLWxnLTIge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi1sZy0zIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLWxnLTQge1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi1sZy01IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBzLWxnLTAge1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBzLWxnLTEge1xuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBzLWxnLTIge1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHMtbGctMyB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHMtbGctNCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wcy1sZy01IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5nYXAtbGctMCB7XG4gICAgZ2FwOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZ2FwLWxnLTEge1xuICAgIGdhcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmdhcC1sZy0yIHtcbiAgICBnYXA6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmdhcC1sZy0zIHtcbiAgICBnYXA6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5nYXAtbGctNCB7XG4gICAgZ2FwOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5nYXAtbGctNSB7XG4gICAgZ2FwOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucm93LWdhcC1sZy0wIHtcbiAgICByb3ctZ2FwOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucm93LWdhcC1sZy0xIHtcbiAgICByb3ctZ2FwOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucm93LWdhcC1sZy0yIHtcbiAgICByb3ctZ2FwOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5yb3ctZ2FwLWxnLTMge1xuICAgIHJvdy1nYXA6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5yb3ctZ2FwLWxnLTQge1xuICAgIHJvdy1nYXA6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnJvdy1nYXAtbGctNSB7XG4gICAgcm93LWdhcDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmNvbHVtbi1nYXAtbGctMCB7XG4gICAgY29sdW1uLWdhcDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmNvbHVtbi1nYXAtbGctMSB7XG4gICAgY29sdW1uLWdhcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmNvbHVtbi1nYXAtbGctMiB7XG4gICAgY29sdW1uLWdhcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuY29sdW1uLWdhcC1sZy0zIHtcbiAgICBjb2x1bW4tZ2FwOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuY29sdW1uLWdhcC1sZy00IHtcbiAgICBjb2x1bW4tZ2FwOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5jb2x1bW4tZ2FwLWxnLTUge1xuICAgIGNvbHVtbi1nYXA6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC50ZXh0LWxnLXN0YXJ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudGV4dC1sZy1lbmQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudGV4dC1sZy1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmZsb2F0LXhsLXN0YXJ0IHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsb2F0LXhsLWVuZCB7XG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxvYXQteGwtbm9uZSB7XG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5vYmplY3QtZml0LXhsLWNvbnRhaW4ge1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW4gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5vYmplY3QtZml0LXhsLWNvdmVyIHtcbiAgICBvYmplY3QtZml0OiBjb3ZlciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm9iamVjdC1maXQteGwtZmlsbCB7XG4gICAgb2JqZWN0LWZpdDogZmlsbCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm9iamVjdC1maXQteGwtc2NhbGUge1xuICAgIG9iamVjdC1maXQ6IHNjYWxlLWRvd24gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5vYmplY3QtZml0LXhsLW5vbmUge1xuICAgIG9iamVjdC1maXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXhsLWlubGluZSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC14bC1pbmxpbmUtYmxvY2sge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQteGwtYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC14bC1ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC14bC1pbmxpbmUtZ3JpZCB7XG4gICAgZGlzcGxheTogaW5saW5lLWdyaWQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXhsLXRhYmxlIHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQteGwtdGFibGUtcm93IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXhsLXRhYmxlLWNlbGwge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXhsLWZsZXgge1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXhsLWlubGluZS1mbGV4IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQteGwtbm9uZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgteGwtZmlsbCB7XG4gICAgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXhsLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgteGwtY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC14bC1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC14bC1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC14bC1ncm93LTAge1xuICAgIGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgteGwtZ3Jvdy0xIHtcbiAgICBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXhsLXNocmluay0wIHtcbiAgICBmbGV4LXNocmluazogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgteGwtc2hyaW5rLTEge1xuICAgIGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC14bC13cmFwIHtcbiAgICBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXhsLW5vd3JhcCB7XG4gICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXhsLXdyYXAtcmV2ZXJzZSB7XG4gICAgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5qdXN0aWZ5LWNvbnRlbnQteGwtc3RhcnQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmp1c3RpZnktY29udGVudC14bC1lbmQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5qdXN0aWZ5LWNvbnRlbnQteGwtY2VudGVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmp1c3RpZnktY29udGVudC14bC1iZXR3ZWVuIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5qdXN0aWZ5LWNvbnRlbnQteGwtYXJvdW5kIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmp1c3RpZnktY29udGVudC14bC1ldmVubHkge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24taXRlbXMteGwtc3RhcnQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24taXRlbXMteGwtZW5kIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy14bC1jZW50ZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy14bC1iYXNlbGluZSB7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24taXRlbXMteGwtc3RyZXRjaCB7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LXhsLXN0YXJ0IHtcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC14bC1lbmQge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC14bC1jZW50ZXIge1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQteGwtYmV0d2VlbiB7XG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQteGwtYXJvdW5kIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1jb250ZW50LXhsLXN0cmV0Y2gge1xuICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLXhsLWF1dG8ge1xuICAgIGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLXhsLXN0YXJ0IHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi14bC1lbmQge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi14bC1jZW50ZXIge1xuICAgIGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLXNlbGYteGwtYmFzZWxpbmUge1xuICAgIGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tc2VsZi14bC1zdHJldGNoIHtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7XG4gIH1cblxuICAub3JkZXIteGwtZmlyc3Qge1xuICAgIG9yZGVyOiAtMSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm9yZGVyLXhsLTAge1xuICAgIG9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAub3JkZXIteGwtMSB7XG4gICAgb3JkZXI6IDEgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5vcmRlci14bC0yIHtcbiAgICBvcmRlcjogMiAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm9yZGVyLXhsLTMge1xuICAgIG9yZGVyOiAzICFpbXBvcnRhbnQ7XG4gIH1cblxuICAub3JkZXIteGwtNCB7XG4gICAgb3JkZXI6IDQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5vcmRlci14bC01IHtcbiAgICBvcmRlcjogNSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm9yZGVyLXhsLWxhc3Qge1xuICAgIG9yZGVyOiA2ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS14bC0wIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLXhsLTEge1xuICAgIG1hcmdpbjogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0teGwtMiB7XG4gICAgbWFyZ2luOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLXhsLTMge1xuICAgIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0teGwtNCB7XG4gICAgbWFyZ2luOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLXhsLTUge1xuICAgIG1hcmdpbjogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0teGwtYXV0byB7XG4gICAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXgteGwtMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5teC14bC0xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm14LXhsLTIge1xuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm14LXhsLTMge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXgteGwtNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXgteGwtNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5teC14bC1hdXRvIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm15LXhsLTAge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXkteGwtMSB7XG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5teS14bC0yIHtcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5teS14bC0zIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm15LXhsLTQge1xuICAgIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm15LXhsLTUge1xuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXkteGwtYXV0byB7XG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC14bC0wIHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQteGwtMSB7XG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXhsLTIge1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXhsLTMge1xuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC14bC00IHtcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC14bC01IHtcbiAgICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQteGwtYXV0byB7XG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1lLXhsLTAge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1lLXhsLTEge1xuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1lLXhsLTIge1xuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWUteGwtMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWUteGwtNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZS14bC01IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZS14bC1hdXRvIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi14bC0wIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWIteGwtMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXhsLTIge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXhsLTMge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi14bC00IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi14bC01IHtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWIteGwtYXV0byB7XG4gICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1zLXhsLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXMteGwtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tcy14bC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXMteGwtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tcy14bC00IHtcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXMteGwtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tcy14bC1hdXRvIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAteGwtMCB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAteGwtMSB7XG4gICAgcGFkZGluZzogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAteGwtMiB7XG4gICAgcGFkZGluZzogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC14bC0zIHtcbiAgICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC14bC00IHtcbiAgICBwYWRkaW5nOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wLXhsLTUge1xuICAgIHBhZGRpbmc6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5weC14bC0wIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHgteGwtMSB7XG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB4LXhsLTIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHgteGwtMyB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB4LXhsLTQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHgteGwtNSB7XG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB5LXhsLTAge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5weS14bC0xIHtcbiAgICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHkteGwtMiB7XG4gICAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5weS14bC0zIHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHkteGwtNCB7XG4gICAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5weS14bC01IHtcbiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQteGwtMCB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC14bC0xIHtcbiAgICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LXhsLTIge1xuICAgIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC14bC0zIHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LXhsLTQge1xuICAgIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC14bC01IHtcbiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBlLXhsLTAge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wZS14bC0xIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGUteGwtMiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGUteGwtMyB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBlLXhsLTQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBlLXhsLTUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi14bC0wIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLXhsLTEge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGIteGwtMiB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLXhsLTMge1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGIteGwtNCB7XG4gICAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLXhsLTUge1xuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHMteGwtMCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHMteGwtMSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHMteGwtMiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wcy14bC0zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wcy14bC00IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBzLXhsLTUge1xuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmdhcC14bC0wIHtcbiAgICBnYXA6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5nYXAteGwtMSB7XG4gICAgZ2FwOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZ2FwLXhsLTIge1xuICAgIGdhcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZ2FwLXhsLTMge1xuICAgIGdhcDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmdhcC14bC00IHtcbiAgICBnYXA6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmdhcC14bC01IHtcbiAgICBnYXA6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5yb3ctZ2FwLXhsLTAge1xuICAgIHJvdy1nYXA6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5yb3ctZ2FwLXhsLTEge1xuICAgIHJvdy1nYXA6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5yb3ctZ2FwLXhsLTIge1xuICAgIHJvdy1nYXA6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnJvdy1nYXAteGwtMyB7XG4gICAgcm93LWdhcDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnJvdy1nYXAteGwtNCB7XG4gICAgcm93LWdhcDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucm93LWdhcC14bC01IHtcbiAgICByb3ctZ2FwOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuY29sdW1uLWdhcC14bC0wIHtcbiAgICBjb2x1bW4tZ2FwOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuY29sdW1uLWdhcC14bC0xIHtcbiAgICBjb2x1bW4tZ2FwOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuY29sdW1uLWdhcC14bC0yIHtcbiAgICBjb2x1bW4tZ2FwOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5jb2x1bW4tZ2FwLXhsLTMge1xuICAgIGNvbHVtbi1nYXA6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5jb2x1bW4tZ2FwLXhsLTQge1xuICAgIGNvbHVtbi1nYXA6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmNvbHVtbi1nYXAteGwtNSB7XG4gICAgY29sdW1uLWdhcDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnRleHQteGwtc3RhcnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC50ZXh0LXhsLWVuZCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC50ZXh0LXhsLWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xuICAuZmxvYXQteHhsLXN0YXJ0IHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsb2F0LXh4bC1lbmQge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsb2F0LXh4bC1ub25lIHtcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm9iamVjdC1maXQteHhsLWNvbnRhaW4ge1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW4gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5vYmplY3QtZml0LXh4bC1jb3ZlciB7XG4gICAgb2JqZWN0LWZpdDogY292ZXIgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5vYmplY3QtZml0LXh4bC1maWxsIHtcbiAgICBvYmplY3QtZml0OiBmaWxsICFpbXBvcnRhbnQ7XG4gIH1cblxuICAub2JqZWN0LWZpdC14eGwtc2NhbGUge1xuICAgIG9iamVjdC1maXQ6IHNjYWxlLWRvd24gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5vYmplY3QtZml0LXh4bC1ub25lIHtcbiAgICBvYmplY3QtZml0OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC14eGwtaW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXh4bC1pbmxpbmUtYmxvY2sge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQteHhsLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQteHhsLWdyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXh4bC1pbmxpbmUtZ3JpZCB7XG4gICAgZGlzcGxheTogaW5saW5lLWdyaWQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXh4bC10YWJsZSB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXh4bC10YWJsZS1yb3cge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQteHhsLXRhYmxlLWNlbGwge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXh4bC1mbGV4IHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC14eGwtaW5saW5lLWZsZXgge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC14eGwtbm9uZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgteHhsLWZpbGwge1xuICAgIGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC14eGwtcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC14eGwtY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC14eGwtcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgteHhsLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbGV4LXh4bC1ncm93LTAge1xuICAgIGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgteHhsLWdyb3ctMSB7XG4gICAgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC14eGwtc2hyaW5rLTAge1xuICAgIGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC14eGwtc2hyaW5rLTEge1xuICAgIGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC14eGwtd3JhcCB7XG4gICAgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxleC14eGwtbm93cmFwIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsZXgteHhsLXdyYXAtcmV2ZXJzZSB7XG4gICAgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5qdXN0aWZ5LWNvbnRlbnQteHhsLXN0YXJ0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5qdXN0aWZ5LWNvbnRlbnQteHhsLWVuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmp1c3RpZnktY29udGVudC14eGwtY2VudGVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmp1c3RpZnktY29udGVudC14eGwtYmV0d2VlbiB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LXh4bC1hcm91bmQge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuanVzdGlmeS1jb250ZW50LXh4bC1ldmVubHkge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24taXRlbXMteHhsLXN0YXJ0IHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWl0ZW1zLXh4bC1lbmQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWl0ZW1zLXh4bC1jZW50ZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1pdGVtcy14eGwtYmFzZWxpbmUge1xuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWl0ZW1zLXh4bC1zdHJldGNoIHtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQteHhsLXN0YXJ0IHtcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC14eGwtZW5kIHtcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQteHhsLWNlbnRlciB7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC14eGwtYmV0d2VlbiB7XG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLWNvbnRlbnQteHhsLWFyb3VuZCB7XG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWxpZ24tY29udGVudC14eGwtc3RyZXRjaCB7XG4gICAgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLXNlbGYteHhsLWF1dG8ge1xuICAgIGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLXh4bC1zdGFydCB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLXNlbGYteHhsLWVuZCB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbGlnbi1zZWxmLXh4bC1jZW50ZXIge1xuICAgIGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLXNlbGYteHhsLWJhc2VsaW5lIHtcbiAgICBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmFsaWduLXNlbGYteHhsLXN0cmV0Y2gge1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5vcmRlci14eGwtZmlyc3Qge1xuICAgIG9yZGVyOiAtMSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm9yZGVyLXh4bC0wIHtcbiAgICBvcmRlcjogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm9yZGVyLXh4bC0xIHtcbiAgICBvcmRlcjogMSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm9yZGVyLXh4bC0yIHtcbiAgICBvcmRlcjogMiAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm9yZGVyLXh4bC0zIHtcbiAgICBvcmRlcjogMyAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm9yZGVyLXh4bC00IHtcbiAgICBvcmRlcjogNCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm9yZGVyLXh4bC01IHtcbiAgICBvcmRlcjogNSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm9yZGVyLXh4bC1sYXN0IHtcbiAgICBvcmRlcjogNiAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0teHhsLTAge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0teHhsLTEge1xuICAgIG1hcmdpbjogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm0teHhsLTIge1xuICAgIG1hcmdpbjogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS14eGwtMyB7XG4gICAgbWFyZ2luOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubS14eGwtNCB7XG4gICAgbWFyZ2luOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLXh4bC01IHtcbiAgICBtYXJnaW46IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tLXh4bC1hdXRvIHtcbiAgICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5teC14eGwtMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5teC14eGwtMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5teC14eGwtMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXgteHhsLTMge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXgteHhsLTQge1xuICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm14LXh4bC01IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm14LXh4bC1hdXRvIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm15LXh4bC0wIHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm15LXh4bC0xIHtcbiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm15LXh4bC0yIHtcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5teS14eGwtMyB7XG4gICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5teS14eGwtNCB7XG4gICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXkteHhsLTUge1xuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXkteHhsLWF1dG8ge1xuICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQteHhsLTAge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC14eGwtMSB7XG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXh4bC0yIHtcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC14eGwtMyB7XG4gICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXh4bC00IHtcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tdC14eGwtNSB7XG4gICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LXh4bC1hdXRvIHtcbiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWUteHhsLTAge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1lLXh4bC0xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZS14eGwtMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tZS14eGwtMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWUteHhsLTQge1xuICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWUteHhsLTUge1xuICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1lLXh4bC1hdXRvIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYi14eGwtMCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXh4bC0xIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWIteHhsLTIge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXh4bC0zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWIteHhsLTQge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLXh4bC01IHtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWIteHhsLWF1dG8ge1xuICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tcy14eGwtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tcy14eGwtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tcy14eGwtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1zLXh4bC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1zLXh4bC00IHtcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXMteHhsLTUge1xuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXMteHhsLWF1dG8ge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC14eGwtMCB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnAteHhsLTEge1xuICAgIHBhZGRpbmc6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wLXh4bC0yIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wLXh4bC0zIHtcbiAgICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC14eGwtNCB7XG4gICAgcGFkZGluZzogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucC14eGwtNSB7XG4gICAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB4LXh4bC0wIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHgteHhsLTEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5weC14eGwtMiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5weC14eGwtMyB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB4LXh4bC00IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB4LXh4bC01IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHkteHhsLTAge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5weS14eGwtMSB7XG4gICAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB5LXh4bC0yIHtcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB5LXh4bC0zIHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHkteHhsLTQge1xuICAgIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHkteHhsLTUge1xuICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC14eGwtMCB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC14eGwtMSB7XG4gICAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC14eGwtMiB7XG4gICAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LXh4bC0zIHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB0LXh4bC00IHtcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQteHhsLTUge1xuICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGUteHhsLTAge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wZS14eGwtMSB7XG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBlLXh4bC0yIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wZS14eGwtMyB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBlLXh4bC00IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wZS14eGwtNSB7XG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLXh4bC0wIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLXh4bC0xIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBiLXh4bC0yIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGIteHhsLTMge1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGIteHhsLTQge1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi14eGwtNSB7XG4gICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wcy14eGwtMCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHMteHhsLTEge1xuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBzLXh4bC0yIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBzLXh4bC0zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wcy14eGwtNCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wcy14eGwtNSB7XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZ2FwLXh4bC0wIHtcbiAgICBnYXA6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5nYXAteHhsLTEge1xuICAgIGdhcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmdhcC14eGwtMiB7XG4gICAgZ2FwOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5nYXAteHhsLTMge1xuICAgIGdhcDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmdhcC14eGwtNCB7XG4gICAgZ2FwOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5nYXAteHhsLTUge1xuICAgIGdhcDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnJvdy1nYXAteHhsLTAge1xuICAgIHJvdy1nYXA6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5yb3ctZ2FwLXh4bC0xIHtcbiAgICByb3ctZ2FwOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucm93LWdhcC14eGwtMiB7XG4gICAgcm93LWdhcDogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucm93LWdhcC14eGwtMyB7XG4gICAgcm93LWdhcDogMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnJvdy1nYXAteHhsLTQge1xuICAgIHJvdy1nYXA6IDEuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnJvdy1nYXAteHhsLTUge1xuICAgIHJvdy1nYXA6IDNyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5jb2x1bW4tZ2FwLXh4bC0wIHtcbiAgICBjb2x1bW4tZ2FwOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuY29sdW1uLWdhcC14eGwtMSB7XG4gICAgY29sdW1uLWdhcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmNvbHVtbi1nYXAteHhsLTIge1xuICAgIGNvbHVtbi1nYXA6IDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmNvbHVtbi1nYXAteHhsLTMge1xuICAgIGNvbHVtbi1nYXA6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5jb2x1bW4tZ2FwLXh4bC00IHtcbiAgICBjb2x1bW4tZ2FwOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5jb2x1bW4tZ2FwLXh4bC01IHtcbiAgICBjb2x1bW4tZ2FwOiAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudGV4dC14eGwtc3RhcnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC50ZXh0LXh4bC1lbmQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudGV4dC14eGwtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5mcy0xIHtcbiAgICBmb250LXNpemU6IDIuNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZzLTIge1xuICAgIGZvbnQtc2l6ZTogMnJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZzLTMge1xuICAgIGZvbnQtc2l6ZTogMS43NXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZzLTQge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50IHtcbiAgLmQtcHJpbnQtaW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXByaW50LWlubGluZS1ibG9jayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1wcmludC1ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXByaW50LWdyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kLXByaW50LWlubGluZS1ncmlkIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZ3JpZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtcHJpbnQtdGFibGUge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1wcmludC10YWJsZS1yb3cge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtcHJpbnQtdGFibGUtY2VsbCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtcHJpbnQtZmxleCB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmQtcHJpbnQtaW5saW5lLWZsZXgge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZC1wcmludC1ub25lIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLyoqXG4gKiBTaGFyZWQgQnV0dG9uIFN0eWxlc1xuICpcbiAqIEJhc2UgYnV0dG9uIHN0eWxlcyB1c2VkIGFjcm9zcyBmcm9udGVuZCBhbmQgYmFja2VuZFxuICovXG5cbi5idG4ge1xuICBmb250LXdlaWdodDogNTAwO1xuICBwYWRkaW5nOiA4cHggMjBweDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xufVxuXG4uYnRuOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uYnRuOmZvY3VzLFxuLmJ0bi5mb2N1cyB7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDNweCByZ2JhKDMwLCAzMCwgODYsIDAuMjUpO1xufVxuXG4uYnRuLmRpc2FibGVkLFxuLmJ0bjpkaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuNjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5idG46YWN0aXZlLFxuLmJ0bi5hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4uYnRuLXByaW1hcnkge1xuICAtLWJzLWJ0bi1jb2xvcjogI2ZmZmZmZjtcbiAgLS1icy1idG4tYmc6ICMxZTFlNTY7XG4gIC0tYnMtYnRuLWJvcmRlci1jb2xvcjogI2ZmZmZmZjtcbiAgLS1icy1idG4taG92ZXItY29sb3I6ICNmZmZmZmY7XG4gIC0tYnMtYnRuLWhvdmVyLWJnOiAjMWExYTQ5O1xuICAtLWJzLWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6ICNjY2NjY2M7XG4gIC0tYnMtYnRuLWZvY3VzLXNoYWRvdy1yZ2I6IDI1NSwgMjU1LCAyNTU7XG4gIC0tYnMtYnRuLWFjdGl2ZS1jb2xvcjogI2ZmZmZmZjtcbiAgLS1icy1idG4tYWN0aXZlLWJnOiAjMTgxODQ1O1xuICAtLWJzLWJ0bi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAjYmZiZmJmO1xuICAtLWJzLWJ0bi1hY3RpdmUtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSg1MSwgNTEsIDUxLCAwLjEyNSk7XG4gIC0tYnMtYnRuLWRpc2FibGVkLWNvbG9yOiAjZmZmZmZmO1xuICAtLWJzLWJ0bi1kaXNhYmxlZC1iZzogIzFlMWU1NjtcbiAgLS1icy1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAjZmZmZmZmO1xufVxuXG4uYnRuLXByaW1hcnk6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzIzMjhhICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogIzMyMzI4YSAhaW1wb3J0YW50O1xufVxuXG4uYnRuLXByaW1hcnk6Zm9jdXMsXG4uYnRuLXByaW1hcnk6YWN0aXZlLFxuLmJ0bi1wcmltYXJ5LmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMjMyOGEgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjMzIzMjhhICFpbXBvcnRhbnQ7XG59XG5cbi5idG4tcHJpbWFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4uYnRuLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMyMzI4YSAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICMzMjMyOGEgIWltcG9ydGFudDtcbn1cblxuLmJ0bi1zZWNvbmRhcnkge1xuICAtLWJzLWJ0bi1jb2xvcjogIzMzMzMzMztcbiAgLS1icy1idG4tYmc6ICNhMzdlYmE7XG4gIC0tYnMtYnRuLWJvcmRlci1jb2xvcjogI2ZmZmZmZjtcbiAgLS1icy1idG4taG92ZXItY29sb3I6ICMzMzMzMzM7XG4gIC0tYnMtYnRuLWhvdmVyLWJnOiAjYjE5MWM0O1xuICAtLWJzLWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6IHdoaXRlO1xuICAtLWJzLWJ0bi1mb2N1cy1zaGFkb3ctcmdiOiAyMjQsIDIyNCwgMjI0O1xuICAtLWJzLWJ0bi1hY3RpdmUtY29sb3I6ICMzMzMzMzM7XG4gIC0tYnMtYnRuLWFjdGl2ZS1iZzogI2I1OThjODtcbiAgLS1icy1idG4tYWN0aXZlLWJvcmRlci1jb2xvcjogd2hpdGU7XG4gIC0tYnMtYnRuLWFjdGl2ZS1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDUxLCA1MSwgNTEsIDAuMTI1KTtcbiAgLS1icy1idG4tZGlzYWJsZWQtY29sb3I6ICMzMzMzMzM7XG4gIC0tYnMtYnRuLWRpc2FibGVkLWJnOiAjYTM3ZWJhO1xuICAtLWJzLWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICNmZmZmZmY7XG59XG5cbi5idG4tc3VjY2VzcyB7XG4gIC0tYnMtYnRuLWNvbG9yOiAjMzMzMzMzO1xuICAtLWJzLWJ0bi1iZzogIzRjYWY1MDtcbiAgLS1icy1idG4tYm9yZGVyLWNvbG9yOiAjZmZmZmZmO1xuICAtLWJzLWJ0bi1ob3Zlci1jb2xvcjogIzMzMzMzMztcbiAgLS1icy1idG4taG92ZXItYmc6ICM2N2JiNmE7XG4gIC0tYnMtYnRuLWhvdmVyLWJvcmRlci1jb2xvcjogd2hpdGU7XG4gIC0tYnMtYnRuLWZvY3VzLXNoYWRvdy1yZ2I6IDIyNCwgMjI0LCAyMjQ7XG4gIC0tYnMtYnRuLWFjdGl2ZS1jb2xvcjogIzMzMzMzMztcbiAgLS1icy1idG4tYWN0aXZlLWJnOiAjNzBiZjczO1xuICAtLWJzLWJ0bi1hY3RpdmUtYm9yZGVyLWNvbG9yOiB3aGl0ZTtcbiAgLS1icy1idG4tYWN0aXZlLXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoNTEsIDUxLCA1MSwgMC4xMjUpO1xuICAtLWJzLWJ0bi1kaXNhYmxlZC1jb2xvcjogIzMzMzMzMztcbiAgLS1icy1idG4tZGlzYWJsZWQtYmc6ICM0Y2FmNTA7XG4gIC0tYnMtYnRuLWRpc2FibGVkLWJvcmRlci1jb2xvcjogI2ZmZmZmZjtcbn1cblxuLmJ0bi1pbmZvIHtcbiAgLS1icy1idG4tY29sb3I6ICMzMzMzMzM7XG4gIC0tYnMtYnRuLWJnOiAjMjE5NmYzO1xuICAtLWJzLWJ0bi1ib3JkZXItY29sb3I6ICNmZmZmZmY7XG4gIC0tYnMtYnRuLWhvdmVyLWNvbG9yOiAjMzMzMzMzO1xuICAtLWJzLWJ0bi1ob3Zlci1iZzogIzQyYTZmNTtcbiAgLS1icy1idG4taG92ZXItYm9yZGVyLWNvbG9yOiB3aGl0ZTtcbiAgLS1icy1idG4tZm9jdXMtc2hhZG93LXJnYjogMjI0LCAyMjQsIDIyNDtcbiAgLS1icy1idG4tYWN0aXZlLWNvbG9yOiAjMzMzMzMzO1xuICAtLWJzLWJ0bi1hY3RpdmUtYmc6ICM0ZGFiZjU7XG4gIC0tYnMtYnRuLWFjdGl2ZS1ib3JkZXItY29sb3I6IHdoaXRlO1xuICAtLWJzLWJ0bi1hY3RpdmUtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSg1MSwgNTEsIDUxLCAwLjEyNSk7XG4gIC0tYnMtYnRuLWRpc2FibGVkLWNvbG9yOiAjMzMzMzMzO1xuICAtLWJzLWJ0bi1kaXNhYmxlZC1iZzogIzIxOTZmMztcbiAgLS1icy1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAjZmZmZmZmO1xufVxuXG4uYnRuLXdhcm5pbmcge1xuICAtLWJzLWJ0bi1jb2xvcjogIzMzMzMzMztcbiAgLS1icy1idG4tYmc6ICNmZjk4MDA7XG4gIC0tYnMtYnRuLWJvcmRlci1jb2xvcjogI2ZmZmZmZjtcbiAgLS1icy1idG4taG92ZXItY29sb3I6ICMzMzMzMzM7XG4gIC0tYnMtYnRuLWhvdmVyLWJnOiAjZmZhNzI2O1xuICAtLWJzLWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6IHdoaXRlO1xuICAtLWJzLWJ0bi1mb2N1cy1zaGFkb3ctcmdiOiAyMjQsIDIyNCwgMjI0O1xuICAtLWJzLWJ0bi1hY3RpdmUtY29sb3I6ICMzMzMzMzM7XG4gIC0tYnMtYnRuLWFjdGl2ZS1iZzogI2ZmYWQzMztcbiAgLS1icy1idG4tYWN0aXZlLWJvcmRlci1jb2xvcjogd2hpdGU7XG4gIC0tYnMtYnRuLWFjdGl2ZS1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDUxLCA1MSwgNTEsIDAuMTI1KTtcbiAgLS1icy1idG4tZGlzYWJsZWQtY29sb3I6ICMzMzMzMzM7XG4gIC0tYnMtYnRuLWRpc2FibGVkLWJnOiAjZmY5ODAwO1xuICAtLWJzLWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICNmZmZmZmY7XG59XG5cbi5idG4tZGFuZ2VyIHtcbiAgLS1icy1idG4tY29sb3I6ICNmZmZmZmY7XG4gIC0tYnMtYnRuLWJnOiAjZjQ0MzM2O1xuICAtLWJzLWJ0bi1ib3JkZXItY29sb3I6ICNmZmZmZmY7XG4gIC0tYnMtYnRuLWhvdmVyLWNvbG9yOiAjZmZmZmZmO1xuICAtLWJzLWJ0bi1ob3Zlci1iZzogI2NmMzkyZTtcbiAgLS1icy1idG4taG92ZXItYm9yZGVyLWNvbG9yOiAjY2NjY2NjO1xuICAtLWJzLWJ0bi1mb2N1cy1zaGFkb3ctcmdiOiAyNTUsIDI1NSwgMjU1O1xuICAtLWJzLWJ0bi1hY3RpdmUtY29sb3I6ICNmZmZmZmY7XG4gIC0tYnMtYnRuLWFjdGl2ZS1iZzogI2MzMzYyYjtcbiAgLS1icy1idG4tYWN0aXZlLWJvcmRlci1jb2xvcjogI2JmYmZiZjtcbiAgLS1icy1idG4tYWN0aXZlLXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoNTEsIDUxLCA1MSwgMC4xMjUpO1xuICAtLWJzLWJ0bi1kaXNhYmxlZC1jb2xvcjogI2ZmZmZmZjtcbiAgLS1icy1idG4tZGlzYWJsZWQtYmc6ICNmNDQzMzY7XG4gIC0tYnMtYnRuLWRpc2FibGVkLWJvcmRlci1jb2xvcjogI2ZmZmZmZjtcbn1cblxuLmJ0bi1saWdodCB7XG4gIC0tYnMtYnRuLWNvbG9yOiAjMzMzMzMzO1xuICAtLWJzLWJ0bi1iZzogI2Y4ZjlmYTtcbiAgLS1icy1idG4tYm9yZGVyLWNvbG9yOiAjNWY2MDYyO1xuICAtLWJzLWJ0bi1ob3Zlci1jb2xvcjogIzMzMzMzMztcbiAgLS1icy1idG4taG92ZXItYmc6ICNmOWZhZmI7XG4gIC0tYnMtYnRuLWhvdmVyLWJvcmRlci1jb2xvcjogIzZmNzA3MjtcbiAgLS1icy1idG4tZm9jdXMtc2hhZG93LXJnYjogODgsIDg5LCA5MTtcbiAgLS1icy1idG4tYWN0aXZlLWNvbG9yOiAjMzMzMzMzO1xuICAtLWJzLWJ0bi1hY3RpdmUtYmc6ICNmOWZhZmI7XG4gIC0tYnMtYnRuLWFjdGl2ZS1ib3JkZXItY29sb3I6ICM2ZjcwNzI7XG4gIC0tYnMtYnRuLWFjdGl2ZS1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDUxLCA1MSwgNTEsIDAuMTI1KTtcbiAgLS1icy1idG4tZGlzYWJsZWQtY29sb3I6ICMzMzMzMzM7XG4gIC0tYnMtYnRuLWRpc2FibGVkLWJnOiAjZjhmOWZhO1xuICAtLWJzLWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICM1ZjYwNjI7XG59XG5cbi5idG4tZGFyayB7XG4gIC0tYnMtYnRuLWNvbG9yOiAjZmZmZmZmO1xuICAtLWJzLWJ0bi1iZzogIzVmNjA2MjtcbiAgLS1icy1idG4tYm9yZGVyLWNvbG9yOiAjZmZmZmZmO1xuICAtLWJzLWJ0bi1ob3Zlci1jb2xvcjogI2ZmZmZmZjtcbiAgLS1icy1idG4taG92ZXItYmc6ICM1MTUyNTM7XG4gIC0tYnMtYnRuLWhvdmVyLWJvcmRlci1jb2xvcjogI2NjY2NjYztcbiAgLS1icy1idG4tZm9jdXMtc2hhZG93LXJnYjogMjU1LCAyNTUsIDI1NTtcbiAgLS1icy1idG4tYWN0aXZlLWNvbG9yOiAjZmZmZmZmO1xuICAtLWJzLWJ0bi1hY3RpdmUtYmc6ICM0YzRkNGU7XG4gIC0tYnMtYnRuLWFjdGl2ZS1ib3JkZXItY29sb3I6ICNiZmJmYmY7XG4gIC0tYnMtYnRuLWFjdGl2ZS1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDUxLCA1MSwgNTEsIDAuMTI1KTtcbiAgLS1icy1idG4tZGlzYWJsZWQtY29sb3I6ICNmZmZmZmY7XG4gIC0tYnMtYnRuLWRpc2FibGVkLWJnOiAjNWY2MDYyO1xuICAtLWJzLWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICNmZmZmZmY7XG59XG5cbi5idG4tb3V0bGluZS1wcmltYXJ5IHtcbiAgY29sb3I6ICMxZTFlNTY7XG4gIGJvcmRlci1jb2xvcjogIzZjNzU3ZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi5idG4tb3V0bGluZS1wcmltYXJ5OmhvdmVyIHtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxZTFlNTY7XG4gIGJvcmRlci1jb2xvcjogIzFlMWU1Njtcbn1cblxuLmJ0bi1vdXRsaW5lLXByaW1hcnk6Zm9jdXMsXG4uYnRuLW91dGxpbmUtcHJpbWFyeTphY3RpdmUge1xuICBib3JkZXItY29sb3I6ICM2Yzc1N2Q7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDMwLCAzMCwgODYsIDAuMjUpO1xufVxuXG4uYnRuLWxnLFxuLmJ0bi1ncm91cC1sZyA+IC5idG4ge1xuICBwYWRkaW5nOiAxMnB4IDMwcHg7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG59XG5cbi5idG4tc20sXG4uYnRuLWdyb3VwLXNtID4gLmJ0biB7XG4gIHBhZGRpbmc6IDVweCAxNXB4O1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuXG4uYnRuLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYnRuLWljb24ge1xuICBwYWRkaW5nOiA4cHg7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uYnRuLWljb24uYnRuLXNtLFxuLmJ0bi1ncm91cC1zbSA+IC5idG4taWNvbi5idG4ge1xuICB3aWR0aDogMzJweDtcbiAgaGVpZ2h0OiAzMnB4O1xufVxuXG4uYnRuLWljb24uYnRuLWxnLFxuLmJ0bi1ncm91cC1sZyA+IC5idG4taWNvbi5idG4ge1xuICB3aWR0aDogNDhweDtcbiAgaGVpZ2h0OiA0OHB4O1xufVxuXG4vKipcbiAqIFF1aWxsIEVkaXRvciBTdHlsZXNcbiAqIENvbnNpc3RlbnQgc3R5bGluZyBmb3IgUXVpbGwgV1lTSVdZRyBlZGl0b3JzIGFjcm9zcyB0aGUgYXBwbGljYXRpb25cbiAqL1xuXG4ucXVpbGwtd3JhcHBlciB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG4gIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ucXVpbGwtd3JhcHBlciAucXVpbGwtZWRpdG9yLWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgbWluLWhlaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ucXVpbGwtd3JhcHBlciAucWwtdG9vbGJhciB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZWUyZTY7XG4gIGJhY2tncm91bmQ6ICNmOGY5ZmE7XG59XG5cbi5xdWlsbC13cmFwcGVyIC5xbC10b29sYmFyLnFsLXNub3cge1xuICBwYWRkaW5nOiA4cHg7XG59XG5cbi5xdWlsbC13cmFwcGVyIC5xbC1jb250YWluZXIge1xuICBib3JkZXI6IG5vbmU7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xufVxuXG4ucXVpbGwtd3JhcHBlciAucWwtY29udGFpbmVyLnFsLXNub3cge1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi5xdWlsbC13cmFwcGVyIC5xbC1lZGl0b3Ige1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIG1pbi1oZWlnaHQ6IDE1MHB4O1xuICBtYXgtaGVpZ2h0OiA0MDBweDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgcGFkZGluZzogMTJweCAxNXB4O1xufVxuXG4ucXVpbGwtd3JhcHBlciAucWwtZWRpdG9yIHAsXG4ucXVpbGwtd3JhcHBlciAucWwtZWRpdG9yIG9sLFxuLnF1aWxsLXdyYXBwZXIgLnFsLWVkaXRvciB1bCxcbi5xdWlsbC13cmFwcGVyIC5xbC1lZGl0b3IgYmxvY2txdW90ZSB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbn1cblxuLnF1aWxsLXdyYXBwZXIgLnFsLWVkaXRvciBoMSxcbi5xdWlsbC13cmFwcGVyIC5xbC1lZGl0b3IgLmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG59XG5cbi5xdWlsbC13cmFwcGVyIC5xbC1lZGl0b3IgaDIsXG4ucXVpbGwtd3JhcHBlciAucWwtZWRpdG9yIC5oMiB7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG59XG5cbi5xdWlsbC13cmFwcGVyIC5xbC1lZGl0b3IgaDMsXG4ucXVpbGwtd3JhcHBlciAucWwtZWRpdG9yIC5oMyB7XG4gIGZvbnQtc2l6ZTogMS4yNWVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xufVxuXG4ucXVpbGwtd3JhcHBlciAucWwtZWRpdG9yLnFsLWJsYW5rOjpiZWZvcmUge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxlZnQ6IDE1cHg7XG4gIHJpZ2h0OiAxNXB4O1xufVxuXG4ucXVpbGwtd3JhcHBlci5xdWlsbC1zaW1wbGUgLnFsLWVkaXRvciB7XG4gIG1pbi1oZWlnaHQ6IDEwMHB4O1xuICBtYXgtaGVpZ2h0OiAyNTBweDtcbn1cblxuLnF1aWxsLXdyYXBwZXIucXVpbGwtZnVsbCAucWwtZWRpdG9yIHtcbiAgbWluLWhlaWdodDogMjAwcHg7XG4gIG1heC1oZWlnaHQ6IDUwMHB4O1xufVxuXG4ucXVpbGwtd3JhcHBlci5xdWlsbC1pbmxpbmUge1xuICBib3JkZXI6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5xdWlsbC13cmFwcGVyLnF1aWxsLWlubGluZSAucWwtdG9vbGJhciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtIDAuMzc1cmVtIDAgMDtcbn1cblxuLnF1aWxsLXdyYXBwZXIucXVpbGwtaW5saW5lIC5xbC1jb250YWluZXIge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICBib3JkZXItdG9wOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwIDAgMC4zNzVyZW0gMC4zNzVyZW07XG59XG5cbnRleHRhcmVhW2RhdGEtd3lzaXd5Zz1xdWlsbF0ucXVpbGwtaW5pdGlhbGl6ZWQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIFN0YXIgUmF0aW5nIENvbXBvbmVudCBTdHlsZXNcbiAqL1xuXG4uc3Rhci1yYXRpbmctd2lkZ2V0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLnN0YXItcmF0aW5nLXdpZGdldC5yZWFkb25seSAuc3Rhci1yYXRpbmctZGlzcGxheSBpIHtcbiAgY29sb3I6ICNmZjk4MDA7XG4gIG1hcmdpbi1yaWdodDogMnB4O1xufVxuXG4uc3Rhci1yYXRpbmctd2lkZ2V0LmludGVyYWN0aXZlIC5zdGFyLXJhdGluZy1pbnB1dCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDJweDtcbn1cblxuLnN0YXItcmF0aW5nLXdpZGdldC5pbnRlcmFjdGl2ZSAuc3Rhci1yYXRpbmctaW5wdXQgLnN0YXItd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5zdGFyLXJhdGluZy13aWRnZXQuaW50ZXJhY3RpdmUgLnN0YXItcmF0aW5nLWlucHV0IC5zdGFyLXdyYXBwZXIgLnN0YXItcmFkaW8ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG9wYWNpdHk6IDA7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG59XG5cbi5zdGFyLXJhdGluZy13aWRnZXQuaW50ZXJhY3RpdmUgLnN0YXItcmF0aW5nLWlucHV0IC5zdGFyLXdyYXBwZXIgaSB7XG4gIGNvbG9yOiAjZGRkO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGVhc2U7XG59XG5cbi5zdGFyLXJhdGluZy13aWRnZXQuaW50ZXJhY3RpdmUgLnN0YXItcmF0aW5nLWlucHV0IC5zdGFyLXdyYXBwZXIgaS5mYXMuZmEtc3RhciB7XG4gIGNvbG9yOiAjZmY5ODAwO1xufVxuXG4uc3Rhci1yYXRpbmctd2lkZ2V0LmludGVyYWN0aXZlIC5zdGFyLXJhdGluZy1pbnB1dCAuc3Rhci13cmFwcGVyOmhvdmVyIGkge1xuICBjb2xvcjogI2ZmOTgwMDtcbn1cblxuLnN0YXItcmF0aW5nLXdpZGdldC5pbnRlcmFjdGl2ZSAuc3Rhci1yYXRpbmctaW5wdXQgLnN0YXItY2xlYXItYnRuIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tbGVmdDogOHB4O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uc3Rhci1yYXRpbmctd2lkZ2V0LmludGVyYWN0aXZlIC5zdGFyLXJhdGluZy1pbnB1dCAuc3Rhci1jbGVhci1idG46aG92ZXIge1xuICBjb2xvcjogI2RjMzU0NTtcbn1cblxuLnN0YXItcmF0aW5nLXdpZGdldC5zdGFyLXJhdGluZy1zbSB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLnN0YXItcmF0aW5nLXdpZGdldC5zdGFyLXJhdGluZy1zbSAuc3Rhci1yYXRpbmctaW5wdXQge1xuICBnYXA6IDFweDtcbn1cblxuLnN0YXItcmF0aW5nLXdpZGdldC5zdGFyLXJhdGluZy1tZCB7XG4gIGZvbnQtc2l6ZTogMzBweDtcbn1cblxuLnN0YXItcmF0aW5nLXdpZGdldC5zdGFyLXJhdGluZy1tZCAuc3Rhci1yYXRpbmctaW5wdXQge1xuICBnYXA6IDNweDtcbn1cblxuLnN0YXItcmF0aW5nLXdpZGdldC5zdGFyLXJhdGluZy1sZyB7XG4gIGZvbnQtc2l6ZTogMjhweDtcbn1cblxuLnN0YXItcmF0aW5nLXdpZGdldC5zdGFyLXJhdGluZy1sZyAuc3Rhci1yYXRpbmctaW5wdXQge1xuICBnYXA6IDNweDtcbn1cblxuLmJhY2tlbmQtZm9ybSAuc3Rhci1yYXRpbmctd2lkZ2V0LmludGVyYWN0aXZlIC5zdGFyLXJhdGluZy1pbnB1dCB7XG4gIGJhY2tncm91bmQ6ICNmOGY5ZmE7XG4gIHBhZGRpbmc6IDhweCAxMnB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG59XG5cbi5iYWNrZW5kLWZvcm0gLnN0YXItcmF0aW5nLXdpZGdldC5pbnRlcmFjdGl2ZSAuc3Rhci1yYXRpbmctaW5wdXQ6Zm9jdXMtd2l0aGluIHtcbiAgYm9yZGVyLWNvbG9yOiAjODBiZGZmO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgwLCAxMjMsIDI1NSwgMC4yNSk7XG59XG5cbi5yZXZpZXctZm9ybSAuc3Rhci1yYXRpbmctd2lkZ2V0LmludGVyYWN0aXZlIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLnJldmlldy1mb3JtIC5zdGFyLXJhdGluZy13aWRnZXQuaW50ZXJhY3RpdmUgLnN0YXItcmF0aW5nLWlucHV0IGkge1xuICBmb250LXNpemU6IDI0cHg7XG59XG5cbi5yZXZpZXctaXRlbSAuc3Rhci1yYXRpbmctd2lkZ2V0LnJlYWRvbmx5IC5zdGFyLXJhdGluZy1kaXNwbGF5IGkge1xuICBmb250LXNpemU6IDE0cHg7XG59XG5cbi5yZXZpZXctZWRpdG9yLW1vZGFsIC5zdGFyLXJhdGluZy13aWRnZXQuaW50ZXJhY3RpdmUgLnN0YXItcmF0aW5nLWlucHV0IGkge1xuICBmb250LXNpemU6IDE4cHg7XG59XG5cbi8qKlxuICogU2VsZWN0MiBBY2Nlc3NpYmlsaXR5IEltcHJvdmVtZW50c1xuICogXG4gKiBGaXhlcyBrZXlib2FyZCBuYXZpZ2F0aW9uIHZpc2liaWxpdHkgYW5kIGltcHJvdmVzIG92ZXJhbGwgYWNjZXNzaWJpbGl0eVxuICogZm9yIFNlbGVjdDIgZHJvcGRvd25zIGFjcm9zcyB0aGUgYXBwbGljYXRpb24uXG4gKi9cblxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWRbYXJpYS1zZWxlY3RlZF0sXG4uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0YWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWRbYXJpYS1zZWxlY3RlZF06aG92ZXIsXG4uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0YWJsZTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYjVlZDcgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLnNlbGVjdDItY29udGFpbmVyLS1mb2N1cyAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICBib3JkZXItY29sb3I6ICM4NmI3ZmUgIWltcG9ydGFudDtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEzLCAxMTAsIDI1MywgMC4yNSkgIWltcG9ydGFudDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24uc2VsZWN0Mi1rZXlib2FyZC1mb2N1c2VkIHtcbiAgYm9yZGVyLWNvbG9yOiAjODZiN2ZlICFpbXBvcnRhbnQ7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgxMywgMTEwLCAyNTMsIDAuMjUpICFpbXBvcnRhbnQ7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjODZiN2ZlICFpbXBvcnRhbnQ7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KSwgMCAwIDAgMC4ycmVtIHJnYmEoMTMsIDExMCwgMjUzLCAwLjI1KSAhaW1wb3J0YW50O1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcC01IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWRbYXJpYS1zZWxlY3RlZF0sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcC01IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWQuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLXNlbGVjdGFibGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwLTUgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uW2FyaWEtc2VsZWN0ZWQ9ZmFsc2VdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgY29sb3I6ICMyMTI1Mjk7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwLTUgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uW2FyaWEtc2VsZWN0ZWQ9ZmFsc2VdOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgY29sb3I6ICMyMTI1Mjk7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwLTUgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uW2FyaWEtc2VsZWN0ZWQ9dHJ1ZV0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xuICBjb2xvcjogIzIxMjUyOTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWRbYXJpYS1zZWxlY3RlZF0sXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0YWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDdiZmYgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChwcmVmZXJzLWNvbnRyYXN0OiBoaWdoKSB7XG4gIC5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkW2FyaWEtc2VsZWN0ZWRdLFxuICAuc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0YWJsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDA4MCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAycHggc29saWQgI2ZmZmZmZiAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcbiAgLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWRbYXJpYS1zZWxlY3RlZF0sXG4gIC5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RhYmxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKipcbiAqIENvb2tpZSBDb25zZW50IEJhbm5lciBTdHlsZXNcbiAqXG4gKiBTdHlsZXMgZm9yIHRoZSBjb29raWUgY29uc2VudCBiYW5uZXIgdGhhdCBhcHBlYXJzIGF0IHRoZSBib3R0b20gb2YgcGFnZXMuXG4gKlxuICogQHNlZSByZXNvdXJjZXMvdmlld3Mvc2hhcmVkL3BhcnRpYWxzL2Nvb2tpZS1jb25zZW50LWJhbm5lci5ibGFkZS5waHBcbiAqIEBzZWUgcmVzb3VyY2VzL2pzL3NoYXJlZC9jb21wb25lbnRzL2Nvb2tpZS1jb25zZW50LWJhbm5lci5qc1xuICovXG5cbi5jb29raWUtY29uc2VudC1iYW5uZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMC45NSksIHJnYmEoMCwgMCwgMCwgMC45OCkpO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgcGFkZGluZzogMTVweCAwO1xuICB6LWluZGV4OiAxMDAwMDtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xuICBib3gtc2hhZG93OiAwIC0ycHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIGFuaW1hdGlvbjogc2xpZGVVcCAwLjNzIGVhc2Utb3V0O1xufVxuXG4uY29va2llLWNvbnNlbnQtYmFubmVyIHAge1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4uY29va2llLWNvbnNlbnQtYmFubmVyIC5idG4tb3V0bGluZS1saWdodCB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpO1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLmNvb2tpZS1jb25zZW50LWJhbm5lciAuYnRuLW91dGxpbmUtbGlnaHQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpO1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLyogQW5pbWF0aW9ucyAqL1xuXG5Aa2V5ZnJhbWVzIHNsaWRlVXAge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc2xpZGVEb3duIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgfVxufVxuXG4vKiBBZGQgcGFkZGluZyB0byBib2R5IHdoZW4gYmFubmVyIGlzIHNob3duIHRvIHByZXZlbnQgY29udGVudCBvdmVybGFwICovXG5cbmJvZHkuaGFzLWNvb2tpZS1iYW5uZXIge1xuICBwYWRkaW5nLWJvdHRvbTogMHB4O1xufVxuXG4vKipcbiAqIEVuaGFuY2VkIERhdGFUYWJsZSBTdHlsZXNcbiAqXG4gKiBTdHlsZXMgZm9yIHRoZSBlbmhhbmNlZCBkYXRhdGFibGUgY29tcG9uZW50IGluY2x1ZGluZzpcbiAqIC0gRGF0YVRhYmxlcyB3cmFwcGVyIHBhZGRpbmdcbiAqIC0gSW5mbyBhbmQgcGFnaW5hdGlvbiBwYWRkaW5nXG4gKiAtIFNvcnRpbmcgaW5kaWNhdG9yc1xuICogLSBDaGVja2JveCBzdHlsZXNcbiAqIC0gU2VsZWN0ZWQgcm93IGhpZ2hsaWdodGluZ1xuICogLSBGaWx0ZXIgdG9nZ2xlIGJ1dHRvblxuICogLSBCdWxrIGFjdGlvbiBncm91cFxuICpcbiAqIEBzZWUgcmVzb3VyY2VzL3ZpZXdzL3NoYXJlZC9wYXJ0aWFscy90YWJsZXMvZW5oYW5jZWQtZGF0YXRhYmxlLmJsYWRlLnBocFxuICogQHNlZSByZXNvdXJjZXMvanMvc2hhcmVkL2NvbXBvbmVudHMvZW5oYW5jZWQtZGF0YXRhYmxlLmpzXG4gKi9cblxuLmVuaGFuY2VkLWRhdGF0YWJsZSAuZGF0YVRhYmxlc193cmFwcGVyIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLmVuaGFuY2VkLWRhdGF0YWJsZSAuZGF0YVRhYmxlc19pbmZvLFxuLmVuaGFuY2VkLWRhdGF0YWJsZSAuZGF0YVRhYmxlc19wYWdpbmF0ZSB7XG4gIHBhZGRpbmc6IDFyZW0gMDtcbn1cblxuLmVuaGFuY2VkLWRhdGF0YWJsZSAuZGF0YVRhYmxlc19sZW5ndGgsXG4uZW5oYW5jZWQtZGF0YXRhYmxlIC5kYXRhVGFibGVzX2ZpbHRlciB7XG4gIHBhZGRpbmc6IDAuNXJlbSAwO1xufVxuXG4uZW5oYW5jZWQtZGF0YXRhYmxlIC50YWJsZSB0aCxcbi5lbmhhbmNlZC1kYXRhdGFibGUgLnByb3NlIHRhYmxlIHRoLFxuLnByb3NlIC5lbmhhbmNlZC1kYXRhdGFibGUgdGFibGUgdGgge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5lbmhhbmNlZC1kYXRhdGFibGUgdGguc29ydGluZzphZnRlcixcbi5lbmhhbmNlZC1kYXRhdGFibGUgdGguc29ydGluZ19hc2M6YWZ0ZXIsXG4uZW5oYW5jZWQtZGF0YXRhYmxlIHRoLnNvcnRpbmdfZGVzYzphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDhweDtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLmVuaGFuY2VkLWRhdGF0YWJsZSB0aC5uby1zb3J0OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uZW5oYW5jZWQtZGF0YXRhYmxlIC5zZWxlY3QtYWxsLWNoZWNrYm94LFxuLmVuaGFuY2VkLWRhdGF0YWJsZSAucm93LWNoZWNrYm94IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uZW5oYW5jZWQtZGF0YXRhYmxlIC5zZWxlY3RlZC1yb3cge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLWJzLXByaW1hcnktcmdiKSwgMC4xKSAhaW1wb3J0YW50O1xufVxuXG4uZW5oYW5jZWQtZGF0YXRhYmxlIC5maWx0ZXItdG9nZ2xlLWJ0biB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmVuaGFuY2VkLWRhdGF0YWJsZSBbaWQkPV9maWx0ZXJfY29udGFpbmVyXSB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG59XG5cbi5lbmhhbmNlZC1kYXRhdGFibGUgLmJ1bGstYWN0aW9uLWdyb3VwIHtcbiAgbWF4LXdpZHRoOiAzMDBweDtcbn1cblxuLyoqXG4gKiBUb2dnbGUgU3dpdGNoIFN0eWxlc1xuICpcbiAqIFN0eWxlcyBmb3IgdG9nZ2xlIHN3aXRjaCBjb21wb25lbnQgaW5jbHVkaW5nOlxuICogLSBTbWFsbCBhbmQgbGFyZ2Ugc2l6ZSB2YXJpYW50c1xuICogLSBMb2FkaW5nIHN0YXRlXG4gKiAtIEVycm9yIHN0YXRlXG4gKlxuICogQHNlZSByZXNvdXJjZXMvdmlld3Mvc2hhcmVkL3BhcnRpYWxzL3VpL3RvZ2dsZS1zd2l0Y2guYmxhZGUucGhwXG4gKiBAc2VlIHJlc291cmNlcy9qcy9zaGFyZWQvY29tcG9uZW50cy90b2dnbGUtc3dpdGNoLmpzXG4gKi9cblxuLmZvcm0tc3dpdGNoLXNtIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgaGVpZ2h0OiAxcmVtO1xuICB3aWR0aDogMS43NXJlbTtcbn1cblxuLmZvcm0tc3dpdGNoLWxnIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgaGVpZ2h0OiAxLjVyZW07XG4gIHdpZHRoOiAyLjc1cmVtO1xufVxuXG4uZm9ybS1jaGVjay1pbnB1dC5pcy1sb2FkaW5nIHtcbiAgb3BhY2l0eTogMC41O1xuICBjdXJzb3I6IHdhaXQ7XG59XG5cbi5mb3JtLWNoZWNrLWlucHV0LnRvZ2dsZS1lcnJvciB7XG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbn1cblxuLyoqXG4gKiBOb3RpZmljYXRpb25zIERyb3Bkb3duIFN0eWxlc1xuICpcbiAqIFN0eWxlcyBmb3Igbm90aWZpY2F0aW9ucyBkcm9wZG93biBjb21wb25lbnQgaW5jbHVkaW5nOlxuICogLSBEcm9wZG93biBzaXppbmdcbiAqIC0gVW5yZWFkIG5vdGlmaWNhdGlvbiBoaWdobGlnaHRpbmdcbiAqIC0gTm90aWZpY2F0aW9uIGl0ZW0gc3R5bGluZ1xuICpcbiAqIEBzZWUgcmVzb3VyY2VzL3ZpZXdzL3NoYXJlZC9wYXJ0aWFscy91aS9ub3RpZmljYXRpb25zLWRyb3Bkb3duLmJsYWRlLnBocFxuICogQHNlZSByZXNvdXJjZXMvanMvc2hhcmVkL2NvbXBvbmVudHMvbm90aWZpY2F0aW9ucy1kcm9wZG93bi5qc1xuICovXG5cbi5ub3RpZmljYXRpb25zLWRyb3Bkb3duIHtcbiAgbWluLXdpZHRoOiAzMjBweDtcbn1cblxuLm5vdGlmaWNhdGlvbnMtZHJvcGRvd24gLm5vdGlmaWNhdGlvbi1pdGVtIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xufVxuXG4ubm90aWZpY2F0aW9ucy1kcm9wZG93biAubm90aWZpY2F0aW9uLWl0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDIpO1xufVxuXG4ubm90aWZpY2F0aW9ucy1kcm9wZG93biAubm90aWZpY2F0aW9uLWl0ZW0udW5yZWFkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS1icy1wcmltYXJ5LXJnYiksIDAuMDUpO1xufVxuXG4ubm90aWZpY2F0aW9ucy1kcm9wZG93biAubm90aWZpY2F0aW9uLWl0ZW0udW5yZWFkOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS1icy1wcmltYXJ5LXJnYiksIDAuMDgpO1xufVxuXG4ubm90aWZpY2F0aW9ucy1kcm9wZG93biAubm90aWZpY2F0aW9uLWl0ZW06bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAubm90aWZpY2F0aW9ucy1kcm9wZG93biB7XG4gICAgd2lkdGg6IDI4MHB4O1xuICB9XG59XG5cbi8qKlxuICogRnJvbnRlbmQgUmVzZXQgU3R5bGVzXG4gKiBcbiAqIE5vcm1hbGl6ZSBicm93c2VyIGRlZmF1bHRzIGZvciBjb25zaXN0ZW50IHJlbmRlcmluZ1xuICovXG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbmh0bWwsXG5ib2R5LFxuaDEsXG4uaDEsXG5oMixcbi5oMixcbmgzLFxuLmgzLFxuaDQsXG4uaDQsXG5oNSxcbi5oNSxcbmg2LFxuLmg2LFxucCxcbm9sLFxudWwsXG5maWd1cmUsXG5ibG9ja3F1b3RlLFxuZGwsXG5kZCB7XG4gIG1hcmdpbjogMDtcbn1cblxub2wsXG51bCB7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbmJvZHkge1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZVNwZWVkO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBmb250LWZhbWlseTogXCJQb3BwaW5zXCIsIFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgY29sb3I6ICMxMDEwMTA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG59XG5cbmltZyxcbnBpY3R1cmUge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbmlucHV0LFxuYnV0dG9uLFxudGV4dGFyZWEsXG5zZWxlY3Qge1xuICBmb250OiBpbmhlcml0O1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICBodG1sOmZvY3VzLXdpdGhpbiB7XG4gICAgc2Nyb2xsLWJlaGF2aW9yOiBhdXRvO1xuICB9XG5cbiAgKixcbiAgKjo6YmVmb3JlLFxuICAqOjphZnRlciB7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjAxbXMgIWltcG9ydGFudDtcbiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4wMW1zICFpbXBvcnRhbnQ7XG4gICAgc2Nyb2xsLWJlaGF2aW9yOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLyoqXG4gKiBGcm9udGVuZCBUeXBvZ3JhcGh5XG4gKiBcbiAqIFR5cG9ncmFwaHkgc3R5bGVzIGZvciB0aGUgZnJvbnRlbmRcbiAqL1xuXG5oMSxcbi5oMSxcbmgyLFxuLmgyLFxuaDMsXG4uaDMsXG5oNCxcbi5oNCxcbmg1LFxuLmg1IHtcbiAgZm9udC1mYW1pbHk6IFwiUGxheWZhaXIgRGlzcGxheVwiLCBzZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgY29sb3I6ICMxMDEwMTA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuaDYsXG4uaDYge1xuICBmb250LWZhbWlseTogXCJQb3BwaW5zXCIsIFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG59XG5cbmgxLFxuLmgxIHtcbiAgZm9udC1zaXplOiAyLjI1cmVtO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgaDEsXG4gIC5oMSB7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICB9XG59XG5cbmgyLFxuLmgyIHtcbiAgZm9udC1zaXplOiAxLjc1cmVtO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgaDIsXG4gIC5oMiB7XG4gICAgZm9udC1zaXplOiAyLjI1cmVtO1xuICB9XG59XG5cbmgzLFxuLmgzIHtcbiAgZm9udC1zaXplOiAxLjM3NXJlbTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIGgzLFxuICAuaDMge1xuICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgfVxufVxuXG5oNCxcbi5oNCB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICBoNCxcbiAgLmg0IHtcbiAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICB9XG59XG5cbmg1LFxuLmg1IHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgaDUsXG4gIC5oNSB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgfVxufVxuXG5oNixcbi5oNiB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICBoNixcbiAgLmg2IHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbn1cblxucCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbnA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbnVsLFxub2wge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBwYWRkaW5nLWxlZnQ6IDJyZW07XG59XG5cbnVsIGxpLFxub2wgbGkge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbnVsIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xufVxuXG5vbCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGVjaW1hbDtcbn1cblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMnJlbSAwO1xuICBwYWRkaW5nOiAxcmVtIDJyZW07XG4gIGJvcmRlci1sZWZ0OiA0cHggc29saWQgIzFlMWU1NjtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogIzc4Nzk3Yztcbn1cblxuY29kZSB7XG4gIHBhZGRpbmc6IDJweCA0cHg7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICBjb2xvcjogI2Y0NDMzNjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuXG5wcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMXJlbTtcbiAgbWFyZ2luOiAxcmVtIDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGNvbG9yOiAjNWY2MDYyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG5cbnByZSBjb2RlIHtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi50ZXh0LXByaW1hcnkge1xuICBjb2xvcjogIzFlMWU1NiAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1zZWNvbmRhcnkge1xuICBjb2xvcjogI2EzN2ViYSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1zdWNjZXNzIHtcbiAgY29sb3I6ICM0Y2FmNTAgIWltcG9ydGFudDtcbn1cblxuLnRleHQtZGFuZ2VyIHtcbiAgY29sb3I6ICNmNDQzMzYgIWltcG9ydGFudDtcbn1cblxuLnRleHQtd2FybmluZyB7XG4gIGNvbG9yOiAjZmY5ODAwICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LWluZm8ge1xuICBjb2xvcjogIzIxOTZmMyAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1tdXRlZCB7XG4gIGNvbG9yOiAjM2IzYzNjICFpbXBvcnRhbnQ7XG59XG5cbi5mb250LXdlaWdodC1ub3JtYWwge1xuICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XG59XG5cbi5mb250LXdlaWdodC1tZWRpdW0ge1xuICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG59XG5cbi5mb250LXdlaWdodC1ib2xkIHtcbiAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbn1cblxuLnRleHQtcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1sb3dlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXVwcGVyY2FzZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDtcbn1cblxuLnRleHQtY2FwaXRhbGl6ZSB7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICogRnJvbnRlbmQgVXRpbGl0eSBDbGFzc2VzXG4gKiBcbiAqIENvbW1vbiB1dGlsaXR5IGNsYXNzZXMgYW5kIG92ZXJyaWRlcyBmb3IgdGhlIGZyb250ZW5kXG4gKi9cblxuLm1pbi12aC0xMDAge1xuICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gMjAwcHgpICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi10b3A6IDEwMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMDBweDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5taW4tdmgtMTAwIHtcbiAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTAwcHgpICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAubWluLXZoLTEwMCB7XG4gICAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDUwcHgpICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICB9XG59XG5cbi5mdWxsLXZoLTEwMCB7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMDtcbn1cblxuLnBhZ2UtY2VudGVyZWQge1xuICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gMjAwcHgpO1xuICBtYXJnaW4tYm90dG9tOiAxMDBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlLWNlbnRlcmVkIHtcbiAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTAwcHgpO1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gIC5wYWdlLWNlbnRlcmVkIHtcbiAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gNTBweCk7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgfVxufVxuXG4uc3BhY2VyLXRvcCB7XG4gIHBhZGRpbmctdG9wOiAxMDBweDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5zcGFjZXItdG9wIHtcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgLnNwYWNlci10b3Age1xuICAgIHBhZGRpbmctdG9wOiAyNXB4O1xuICB9XG59XG5cbi5zcGFjZXItYm90dG9tIHtcbiAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLnNwYWNlci1ib3R0b20ge1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAuc3BhY2VyLWJvdHRvbSB7XG4gICAgcGFkZGluZy1ib3R0b206IDI1cHg7XG4gIH1cbn1cblxuLnRleHQtZWxlZ2FudCB7XG4gIGZvbnQtZmFtaWx5OiBcIlBsYXlmYWlyIERpc3BsYXlcIiwgc2VyaWY7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG59XG5cbi5vcGFjaXR5LTEwIHtcbiAgb3BhY2l0eTogMC4xICFpbXBvcnRhbnQ7XG59XG5cbi5vcGFjaXR5LTI1IHtcbiAgb3BhY2l0eTogMC4yNSAhaW1wb3J0YW50O1xufVxuXG4ub3BhY2l0eS01MCB7XG4gIG9wYWNpdHk6IDAuNSAhaW1wb3J0YW50O1xufVxuXG4ub3BhY2l0eS03NSB7XG4gIG9wYWNpdHk6IDAuNzUgIWltcG9ydGFudDtcbn1cblxuLm9wYWNpdHktOTAge1xuICBvcGFjaXR5OiAwLjkgIWltcG9ydGFudDtcbn1cblxuLnotMCB7XG4gIHotaW5kZXg6IDAgIWltcG9ydGFudDtcbn1cblxuLnotMSB7XG4gIHotaW5kZXg6IDEgIWltcG9ydGFudDtcbn1cblxuLnotMiB7XG4gIHotaW5kZXg6IDIgIWltcG9ydGFudDtcbn1cblxuLnotMyB7XG4gIHotaW5kZXg6IDMgIWltcG9ydGFudDtcbn1cblxuLnotMTAge1xuICB6LWluZGV4OiAxMCAhaW1wb3J0YW50O1xufVxuXG4uei0yMCB7XG4gIHotaW5kZXg6IDIwICFpbXBvcnRhbnQ7XG59XG5cbi50cmFuc2l0aW9uLWFsbCB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG59XG5cbi50cmFuc2l0aW9uLXRyYW5zZm9ybSB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2U7XG59XG5cbi50cmFuc2l0aW9uLW9wYWNpdHkge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcbn1cblxuLmhvdmVyLWxpZnQ6aG92ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7XG4gIGJveC1zaGFkb3c6IDAgMTBweCAzMHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLmhvdmVyLXNjYWxlOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbn1cblxuLmN1cnNvci1wb2ludGVyIHtcbiAgY3Vyc29yOiBwb2ludGVyICFpbXBvcnRhbnQ7XG59XG5cbi5jdXJzb3Itbm90LWFsbG93ZWQge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkICFpbXBvcnRhbnQ7XG59XG5cbi5vdmVyZmxvdy14LWF1dG8ge1xuICBvdmVyZmxvdy14OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5vdmVyZmxvdy15LWF1dG8ge1xuICBvdmVyZmxvdy15OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5vdmVyZmxvdy14LWhpZGRlbiB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuXG4ub3ZlcmZsb3cteS1oaWRkZW4ge1xuICBvdmVyZmxvdy15OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cblxubWFpbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNmY3Zjk7XG4gIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSAyMDBweCk7XG59XG5cblt4LWNsb2FrXSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmJ0bi1saW5rIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5idG4tbGluazpob3Zlcixcbi5idG4tbGluazpmb2N1cyB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uZm9ybS1jb250cm9sLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbixcbi5mb3JtLXNlbGVjdCxcbi5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4uZm9ybS1zZWxlY3Q6Zm9jdXMge1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5mb3JtLWNvbnRyb2wsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uLFxuLmZvcm0tc2VsZWN0IHtcbiAgYm9yZGVyLWNvbG9yOiAjZGFkOWQ5ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAuNDc1cmVtIDAuODVyZW0gIWltcG9ydGFudDtcbn1cblxuLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbCxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuaW5wdXQtZ3JvdXAgPiAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5idG4ge1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5pbnB1dC1ncm91cCA+IDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuXG4uaW5wdXQtZ3JvdXAgPiA6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5pbnB1dC1ncm91cCA+IDpub3QoOmZpcnN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLW1lbnUpIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMCAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtdGV4dCB7XG4gIGJvcmRlci1jb2xvcjogI2RhZDlkOTtcbiAgcGFkZGluZzogMC40NzVyZW0gMC44NXJlbTtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDp2YWxpZCxcbi53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246dmFsaWQsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItc2VsZWN0aW9uOnZhbGlkLFxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDppbnZhbGlkLFxuLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjppbnZhbGlkLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLXNlbGVjdGlvbjppbnZhbGlkIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOnZhbGlkLFxuLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjp2YWxpZCxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1zZWxlY3Rpb246dmFsaWQge1xuICBib3JkZXItY29sb3I6IHZhcigtLWJzLXN1Y2Nlc3MpO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOmludmFsaWQsXG4ud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOmludmFsaWQsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItc2VsZWN0aW9uOmludmFsaWQge1xuICBib3JkZXItY29sb3I6IHZhcigtLWJzLWRhbmdlcik7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6aW52YWxpZCArIC5zZWxlY3QyIC5zZWxlY3QyLXNlbGVjdGlvbixcbi53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246aW52YWxpZCArIC5zZWxlY3QyIC5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1zZWxlY3Rpb246aW52YWxpZCArIC5zZWxlY3QyIC5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtZGFuZ2VyKTtcbn1cblxuLmFsZXJ0IHVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xufVxuXG4uYWxlcnQgdWw6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5hbGVydCBwOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ucm91bmRlZC1pbWcge1xuICBib3JkZXItcmFkaXVzOiA1MCUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDYwcHg7XG4gIGhlaWdodDogNjBweDtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5cbi5lcnJvci1oZWxwLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi50b2FzdC10b3AtcmlnaHQge1xuICB0b3A6IDgwcHg7XG59XG5cbiN0b2FzdC1jb250YWluZXIgPiBkaXYge1xuICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xuICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG59XG5cbiN0b2FzdC1jb250YWluZXIgPiBkaXYudG9hc3Qtc3VjY2VzcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyOGE3NDUgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuI3RvYXN0LWNvbnRhaW5lciA+IGRpdi50b2FzdC1lcnJvciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkYzM1NDUgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuI3RvYXN0LWNvbnRhaW5lciA+IGRpdi50b2FzdC1pbmZvIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE3YTJiOCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuXG4jdG9hc3QtY29udGFpbmVyID4gZGl2LnRvYXN0LXdhcm5pbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZjMTA3ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMjEyNTI5ICFpbXBvcnRhbnQ7XG59XG5cbiN0b2FzdC1jb250YWluZXIgPiBkaXY6aG92ZXIge1xuICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG59XG5cbi50b2FzdC1jbG9zZS1idXR0b24ge1xuICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4udG9hc3QtY2xvc2UtYnV0dG9uOmhvdmVyLFxuLnRvYXN0LWNsb3NlLWJ1dHRvbjpmb2N1cyB7XG4gIGNvbG9yOiAjY2NjY2NjICFpbXBvcnRhbnQ7XG4gIG9wYWNpdHk6IDAuOCAhaW1wb3J0YW50O1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xufVxuXG4uaHItaGVhZGVyLXNwYWNlciB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMyMTI1Mjk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDE0LCAxNCwgMTQsIDAuMTgpO1xuICBtYXJnaW46IDA7XG59XG5cbi5oci1mb290ZXItc3BhY2VyIHtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgxNCwgMTQsIDE0LCAwLjE4KTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMyMTI1Mjk7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5jYXJhdHgtaGVhZGVyIC50b3AtaGVhZGVyIC50b3AtYnV0dG9ucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIGdhcDogMXJlbTtcbn1cblxuLmNhcmF0eC1oZWFkZXIgLnRvcC1oZWFkZXIgLnRvcC1idXR0b25zID4gKiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5jYXJhdHgtaGVhZGVyIC50b3AtaGVhZGVyIC50b3AtYnV0dG9ucyAuYnRuLWxpbmsge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmNhcmF0eC1oZWFkZXIgLnRvcC1oZWFkZXIgLnRvcC1idXR0b25zIC5kcm9wZG93biBidXR0b24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmNhcmF0eC1oZWFkZXIgLnRvcC1oZWFkZXIgLmxvZ28tY29udGFpbmVyIGltZyB7XG4gIG1heC1oZWlnaHQ6IDYwcHg7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4uY2FyYXR4LWhlYWRlciAubmF2YmFyIC5uYXYtbGluayB7XG4gIGNvbG9yOiAjMzEzMTMxO1xuICBmb250LXNpemU6IDE1cHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzIGVhc2U7XG59XG5cbi5jYXJhdHgtaGVhZGVyIC5uYXZiYXIgLm5hdi1saW5rOmhvdmVyLFxuLmNhcmF0eC1oZWFkZXIgLm5hdmJhciAubmF2LWxpbms6Zm9jdXMge1xuICBjb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG59XG5cbi5jYXJhdHgtaGVhZGVyIC5uYXZiYXIgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5jYXJhdHgtaGVhZGVyIC5tZWdhLW1lbnUge1xuICBib3JkZXItcmFkaXVzOiAwIDAgOHB4IDhweDtcbiAgYm94LXNoYWRvdzogMCA0cHggMjBweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGJvcmRlcjogbm9uZTtcbiAgbWluLWhlaWdodDogMjAwcHg7XG59XG5cbi5jYXJhdHgtaGVhZGVyIC5tZWdhLW1lbnUgLm1lZ2EtbWVudS1zY3JvbGw6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgd2lkdGg6IDZweDtcbn1cblxuLmNhcmF0eC1oZWFkZXIgLm1lZ2EtbWVudSAubWVnYS1tZW51LXNjcm9sbDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICBiYWNrZ3JvdW5kOiAjZjFmMWYxO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG59XG5cbi5jYXJhdHgtaGVhZGVyIC5tZWdhLW1lbnUgLm1lZ2EtbWVudS1zY3JvbGw6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgYmFja2dyb3VuZDogIzg4ODtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xufVxuXG4uY2FyYXR4LWhlYWRlciAubWVnYS1tZW51IC5tZWdhLW1lbnUtc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICM1NTU7XG59XG5cbi5jYXJhdHgtaGVhZGVyIC5tZWdhLW1lbnUgLm1lZ2EtbWVudS1jb2x1bW4ge1xuICBtaW4taGVpZ2h0OiAxODBweDtcbn1cblxuLmNhcmF0eC1oZWFkZXIgLm1lZ2EtbWVudSAubWVnYS1tZW51LWNvbHVtbiAubWVnYS1tZW51LWNvbnRlbnQge1xuICBmbGV4LWdyb3c6IDE7XG59XG5cbi5jYXJhdHgtaGVhZGVyIC5tZWdhLW1lbnUgLm1lZ2EtbWVudS1jb2x1bW4gLm1lZ2EtbWVudS1hY3Rpb24ge1xuICBtYXJnaW4tdG9wOiBhdXRvO1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbn1cblxuLmNhcmF0eC1oZWFkZXIgLmRyb3Bkb3duLW1lbnUge1xuICBtaW4taGVpZ2h0OiAxNTBweDtcbn1cblxuLmNhcmF0eC1oZWFkZXIgLmRyb3Bkb3duLW1lbnUgLm1lZ2EtbWVudS1jb2x1bW4ge1xuICBtaW4taGVpZ2h0OiAxMzBweDtcbn1cblxuLmNhcmF0eC1oZWFkZXIgLm1lbnUtYnRuOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLmNhcmF0eC1oZWFkZXIgI21vYmlsZU1lbnUgLmFjY29yZGlvbi1idXR0b24ge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG4uY2FyYXR4LWhlYWRlciAjbW9iaWxlTWVudSAuYWNjb3JkaW9uLWJ1dHRvbjpub3QoLmNvbGxhcHNlZCkge1xuICBjb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi5jYXJhdHgtaGVhZGVyICNtb2JpbGVNZW51IC5hY2NvcmRpb24tYnV0dG9uOjphZnRlciB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG4uY2FyYXR4LWhlYWRlciAjbW9iaWxlTWVudSAubmF2LWxpbmsge1xuICBwYWRkaW5nOiAwLjVyZW0gMDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuLmhlYWRlci1zZWFyY2gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5oZWFkZXItc2VhcmNoIGlucHV0W3R5cGU9dGV4dF0ge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA1MHB4O1xuICBwYWRkaW5nOiAxMHB4IDQ1cHggMTBweCAyMHB4O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZDZkOGQ5O1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4zcyBlYXNlO1xufVxuXG4uaGVhZGVyLXNlYXJjaCBpbnB1dFt0eXBlPXRleHRdOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbn1cblxuLmhlYWRlci1zZWFyY2ggLnNlYXJjaC1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICByaWdodDogMTVweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGNvbG9yOiAjNWY2MDYyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBhZGRpbmc6IDVweDtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4zcyBlYXNlO1xufVxuXG4uaGVhZGVyLXNlYXJjaCAuc2VhcmNoLWJ1dHRvbjpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbn1cblxuLmhlYWRlci1zZWFyY2ggLmhlYWRlci1zZWFyY2gtbGlzdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogMTAwMDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2Q2ZDhkOTtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDEwcHggMTBweDtcbiAgYm94LXNoYWRvdzogMCA0cHggOHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgbWF4LWhlaWdodDogMzUwcHg7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi5oZWFkZXItc2VhcmNoIC5oZWFkZXItc2VhcmNoLWxpc3QgdWwge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5oZWFkZXItc2VhcmNoIC5oZWFkZXItc2VhcmNoLWxpc3QgbGkge1xuICBwYWRkaW5nOiA4cHggMTVweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMGYwZjA7XG59XG5cbi5oZWFkZXItc2VhcmNoIC5oZWFkZXItc2VhcmNoLWxpc3QgbGk6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbi5oZWFkZXItc2VhcmNoIC5oZWFkZXItc2VhcmNoLWxpc3QgbGk6aG92ZXIsXG4uaGVhZGVyLXNlYXJjaCAuaGVhZGVyLXNlYXJjaC1saXN0IGxpLnNlbGVjdGVkIHtcbiAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbn1cblxuLmhlYWRlci1zZWFyY2ggLmhlYWRlci1zZWFyY2gtbGlzdCBsaSBhIHtcbiAgY29sb3I6ICMzMzM7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5oZWFkZXItc2VhcmNoIC5oZWFkZXItc2VhcmNoLWxpc3QgLnZpZXctYWxsLXJlc3VsdHMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOWY5O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbi5iZy1wdXJwbGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTM3ZWJhO1xufVxuXG4uYmctdGVhbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3ZWJhYWQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAuY2FyYXR4LWhlYWRlciAudG9wLWhlYWRlciAubG9nby1jb250YWluZXIgaW1nIHtcbiAgICBtYXgtaGVpZ2h0OiA1MHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAuY2FyYXR4LWhlYWRlciAudG9wLWJ1dHRvbnMgLmJ0bi1saW5rIHtcbiAgICBwYWRkaW5nOiAwLjI1cmVtO1xuICB9XG59XG5cbi8qKlxuICogUHJvZHVjdCBDYXJkIENvbXBvbmVudFxuICpcbiAqIE1pbmltYWwgY3VzdG9tIHN0eWxpbmcgZm9yIEJvb3RzdHJhcCA1IHByb2R1Y3QgY2FyZHNcbiAqL1xuXG4uYmctcHVycGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2EzN2ViYSAhaW1wb3J0YW50O1xufVxuXG4uYmctdGVhbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3ZWJhYWQgIWltcG9ydGFudDtcbn1cblxuLnByb2R1Y3QtYmFkZ2VzIHtcbiAgdG9wOiAwLjc1cmVtO1xuICBsZWZ0OiAwLjc1cmVtO1xuICB6LWluZGV4OiAxO1xufVxuXG4ucHJvZHVjdC1iYWRnZXMgLmJhZGdlICsgLmJhZGdlIHtcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbn1cblxuLnByb2R1Y3QtdHlwZS1iYWRnZSB7XG4gIHRvcDogMC43NXJlbTtcbiAgcmlnaHQ6IDAuNzVyZW07XG4gIHotaW5kZXg6IDE7XG59XG5cbi8qKlxuICogUHJvZHVjdCBDYXJvdXNlbCBDb21wb25lbnQgU3R5bGVzXG4gKiBCb290c3RyYXAgNSBjYXJvdXNlbCBlbmhhbmNlbWVudHMgZm9yIHByb2R1Y3QgZGlzcGxheXNcbiAqL1xuXG4uY2Fyb3VzZWwgLmNhcm91c2VsLWNvbnRyb2wtcHJldixcbi5jYXJvdXNlbCAuY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgd2lkdGg6IDUlO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcbn1cblxuLmNhcm91c2VsIC5jYXJvdXNlbC1jb250cm9sLXByZXYgLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLFxuLmNhcm91c2VsIC5jYXJvdXNlbC1jb250cm9sLXByZXYgLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLFxuLmNhcm91c2VsIC5jYXJvdXNlbC1jb250cm9sLW5leHQgLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLFxuLmNhcm91c2VsIC5jYXJvdXNlbC1jb250cm9sLW5leHQgLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgd2lkdGg6IDJyZW07XG4gIGhlaWdodDogMnJlbTtcbn1cblxuLmNhcm91c2VsIC5jYXJvdXNlbC1jb250cm9sLXByZXYgLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLmJnLWRhcmssXG4uY2Fyb3VzZWwgLmNhcm91c2VsLWNvbnRyb2wtcHJldiAuY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24uYmctZGFyayxcbi5jYXJvdXNlbCAuY2Fyb3VzZWwtY29udHJvbC1uZXh0IC5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi5iZy1kYXJrLFxuLmNhcm91c2VsIC5jYXJvdXNlbC1jb250cm9sLW5leHQgLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLmJnLWRhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLWJzLWRhcmstcmdiKSwgMC44KSAhaW1wb3J0YW50O1xufVxuXG4uY2Fyb3VzZWwgLmNhcm91c2VsLWNvbnRyb2wtcHJldiAuY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24uYmctZGFyazpob3Zlcixcbi5jYXJvdXNlbCAuY2Fyb3VzZWwtY29udHJvbC1wcmV2IC5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi5iZy1kYXJrOmhvdmVyLFxuLmNhcm91c2VsIC5jYXJvdXNlbC1jb250cm9sLW5leHQgLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLmJnLWRhcms6aG92ZXIsXG4uY2Fyb3VzZWwgLmNhcm91c2VsLWNvbnRyb2wtbmV4dCAuY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24uYmctZGFyazpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWRhcmspICFpbXBvcnRhbnQ7XG59XG5cbi5jYXJvdXNlbDpob3ZlciAuY2Fyb3VzZWwtY29udHJvbC1wcmV2LFxuLmNhcm91c2VsOmhvdmVyIC5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uY2Fyb3VzZWwgLmNhcm91c2VsLWluZGljYXRvcnMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm90dG9tOiBhdXRvO1xufVxuXG4uY2Fyb3VzZWwgLmNhcm91c2VsLWluZGljYXRvcnMgYnV0dG9uIHtcbiAgd2lkdGg6IDEwcHg7XG4gIGhlaWdodDogMTBweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1ncmF5LTQwMCk7XG4gIGJvcmRlcjogbm9uZTtcbiAgbWFyZ2luOiAwIDRweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbn1cblxuLmNhcm91c2VsIC5jYXJvdXNlbC1pbmRpY2F0b3JzIGJ1dHRvbi5hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xufVxuXG4uY2Fyb3VzZWwgLmNhcm91c2VsLWluZGljYXRvcnMgYnV0dG9uOmhvdmVyOm5vdCguYWN0aXZlKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWdyYXktNjAwKTtcbn1cblxuLmNhcm91c2VsLnByb2R1Y3QtY2Fyb3VzZWwgLmNhcm91c2VsLWlubmVyIHtcbiAgcGFkZGluZzogMXJlbSAwO1xufVxuXG4uY2Fyb3VzZWwucHJvZHVjdC1jYXJvdXNlbCAuY2Fyb3VzZWwtaXRlbSAucm93IHtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG59XG5cbi5jYXJvdXNlbC5wcm9kdWN0LWNhcm91c2VsIC5jYXJvdXNlbC1pdGVtIC5yb3cgPiBbY2xhc3MqPWNvbC1dIHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLmNhcm91c2VsLnByb2R1Y3QtY2Fyb3VzZWwgLmNhcm91c2VsLWl0ZW0gLnJvdyA+IFtjbGFzcyo9Y29sLV0gLnByb2R1Y3QtY2FyZCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmNhcm91c2VsIC5jYXJvdXNlbC1pbm5lciAucm93IHtcbiAgICBtYXJnaW46IDAgLTVweDtcbiAgfVxuXG4gIC5jYXJvdXNlbCAuY2Fyb3VzZWwtaW5uZXIgLmNvbC0xMiB7XG4gICAgcGFkZGluZzogMCA1cHg7XG4gIH1cblxuICAuY2Fyb3VzZWwgLmNhcm91c2VsLWNvbnRyb2wtcHJldixcbiAgLmNhcm91c2VsIC5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICAgIHdpZHRoOiAxMCU7XG4gIH1cbn1cblxuQG1lZGlhIChob3Zlcjogbm9uZSkge1xuICAuY2Fyb3VzZWwgLmNhcm91c2VsLWNvbnRyb2wtcHJldixcbiAgLmNhcm91c2VsIC5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLmNhcnQtdXBkYXRlZCB7XG4gIGFuaW1hdGlvbjogY2FydEJvdW5jZSAwLjVzIGVhc2U7XG59XG5cbkBrZXlmcmFtZXMgY2FydEJvdW5jZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG5cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG59XG5cbi5oZWFkZXItY2FydC13cmFwcGVyIC5kcm9wZG93bi1tZW51OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtMTBweDtcbiAgcmlnaHQ6IDEwcHg7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4uaGVhZGVyLXdpc2hsaXN0LXdyYXBwZXIgYSB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2U7XG59XG5cbi5oZWFkZXItd2lzaGxpc3Qtd3JhcHBlciBhOmhvdmVyIC5mYS1oZWFydCB7XG4gIGNvbG9yOiB2YXIoLS1icy1kYW5nZXIpICFpbXBvcnRhbnQ7XG59XG5cbi53aXNobGlzdC1jb3VudC1iYWRnZSB7XG4gIG1pbi13aWR0aDogMThweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi53aXNobGlzdC11cGRhdGVkIHtcbiAgYW5pbWF0aW9uOiB3aXNobGlzdFB1bHNlIDAuNXMgZWFzZTtcbn1cblxuQGtleWZyYW1lcyB3aXNobGlzdFB1bHNlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cblxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4zKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cblxuLndpc2hsaXN0LXRvZ2dsZS1idG4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG59XG5cbi53aXNobGlzdC10b2dnbGUtYnRuLndpc2hsaXN0LWxvYWRpbmcge1xuICBvcGFjaXR5OiAwLjc7XG4gIGN1cnNvcjogd2FpdDtcbn1cblxuLndpc2hsaXN0LXRvZ2dsZS1idG4gLmZhLWhlYXJ0IHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbn1cblxuLndpc2hsaXN0LXRvZ2dsZS1idG4gLmZhLWhlYXJ0Lndpc2hsaXN0LXB1bHNlIHtcbiAgYW5pbWF0aW9uOiBoZWFydEJlYXQgMC44cyBlYXNlIGluZmluaXRlO1xufVxuXG4ud2lzaGxpc3QtdG9nZ2xlLWJ0biAuZmEtaGVhcnQud2lzaGxpc3QtZmlsbGVkIHtcbiAgYW5pbWF0aW9uOiBmaWxsSGVhcnQgMC40cyBlYXNlO1xufVxuXG5Aa2V5ZnJhbWVzIGhlYXJ0QmVhdCB7XG4gIDAlLCAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG5cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMTUpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmlsbEhlYXJ0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC44KSByb3RhdGUoLTQ1ZGVnKTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjMpIHJvdGF0ZSgtNDVkZWcpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKSByb3RhdGUoMGRlZyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW5TY2FsZSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC41KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXRTY2FsZSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC41KTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLndpc2hsaXN0LXRvZ2dsZS1idG4ge1xuICAgIG1pbi13aWR0aDogNDRweDtcbiAgICBtaW4taGVpZ2h0OiA0NHB4O1xuICB9XG5cbiAgLndpc2hsaXN0LXRvZ2dsZS1idG4uYnRuLXNtLFxuICAuYnRuLWdyb3VwLXNtID4gLndpc2hsaXN0LXRvZ2dsZS1idG4uYnRuIHtcbiAgICBwYWRkaW5nOiAwLjVyZW07XG4gIH1cblxuICAuaGVhZGVyLXdpc2hsaXN0LXdyYXBwZXIge1xuICAgIG1hcmdpbjogMCAwLjI1cmVtO1xuICB9XG59XG5cbi53aXNobGlzdC1za2VsZXRvbiAuc2tlbGV0b24taXRlbSB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgI2YwZjBmMCAyNSUsICNlMGUwZTAgNTAlLCAjZjBmMGYwIDc1JSk7XG4gIGJhY2tncm91bmQtc2l6ZTogMjAwJSAxMDAlO1xuICBhbmltYXRpb246IGxvYWRpbmcgMS41cyBpbmZpbml0ZTtcbiAgYm9yZGVyLXJhZGl1czogMC4zNzVyZW07XG59XG5cbi53aXNobGlzdC1za2VsZXRvbiAuc2tlbGV0b24taXRlbS5za2VsZXRvbi1pbWFnZSB7XG4gIGhlaWdodDogMjAwcHg7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi53aXNobGlzdC1za2VsZXRvbiAuc2tlbGV0b24taXRlbS5za2VsZXRvbi10ZXh0IHtcbiAgaGVpZ2h0OiAyMHB4O1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbi53aXNobGlzdC1za2VsZXRvbiAuc2tlbGV0b24taXRlbS5za2VsZXRvbi10ZXh0LnNrZWxldG9uLXRpdGxlIHtcbiAgd2lkdGg6IDgwJTtcbn1cblxuLndpc2hsaXN0LXNrZWxldG9uIC5za2VsZXRvbi1pdGVtLnNrZWxldG9uLXRleHQuc2tlbGV0b24tcHJpY2Uge1xuICB3aWR0aDogNDAlO1xufVxuXG5Aa2V5ZnJhbWVzIGxvYWRpbmcge1xuICAwJSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMjAwJSAwO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwMCUgMDtcbiAgfVxufVxuXG4vKipcbiAqIEZyb250ZW5kIERhdGFUYWJsZSBDb21wb25lbnQgU3R5bGVzXG4gKiBFbmhhbmNlZCBmb3IgQm9vdHN0cmFwIDUgd2l0aCBtb2Rlcm4gZGVzaWduIHBhdHRlcm5zXG4gKi9cblxuLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIge1xuICBib3gtc2hhZG93OiAwIDAuMTI1cmVtIDAuMjVyZW0gcmdiYSgwLCAwLCAwLCAwLjA3NSksIDAgMC4wNXJlbSAwLjFyZW0gcmdiYSgwLCAwLCAwLCAwLjA2KTtcbn1cblxuLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLmNhcmQtaGVhZGVyLmJnLWxpZ2h0IHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2Y4ZjlmYSAwJSwgI2U5ZWNlZiAxMDAlKSAhaW1wb3J0YW50O1xufVxuXG4uZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAuY2FyZC1oZWFkZXIgLmNhcmQtdGl0bGUge1xuICBmb250LXdlaWdodDogNjAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDI1ZW07XG59XG5cbi5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC5jYXJkLWJvZHkgLmZvcm0tbGFiZWwge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogIzQ5NTA1NztcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG4uZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAuY2FyZC1ib2R5IC5mb3JtLWxhYmVsIGkge1xuICBvcGFjaXR5OiAwLjc7XG59XG5cbi5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC5jYXJkLWJvZHkgLmZvcm0tY29udHJvbCxcbi5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC5jYXJkLWJvZHkgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAuY2FyZC1ib2R5IC5zZWxlY3QyLXNlbGVjdGlvbixcbi5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC5jYXJkLWJvZHkgLmZvcm0tc2VsZWN0IHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2UtaW4tb3V0O1xufVxuXG4uZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAuY2FyZC1ib2R5IC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4uZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAuY2FyZC1ib2R5IC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLmNhcmQtYm9keSAuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4uZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAuY2FyZC1ib2R5IC5mb3JtLXNlbGVjdDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzg2YjdmZTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMTMsIDExMCwgMjUzLCAwLjI1KTtcbn1cblxuLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLmNhcmQtYm9keSAuZm9ybS1jb250cm9sOmhvdmVyOm5vdCg6Zm9jdXMpLFxuLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLmNhcmQtYm9keSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOmhvdmVyOm5vdCg6Zm9jdXMpLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC5jYXJkLWJvZHkgLnNlbGVjdDItc2VsZWN0aW9uOmhvdmVyOm5vdCg6Zm9jdXMpLFxuLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLmNhcmQtYm9keSAuZm9ybS1zZWxlY3Q6aG92ZXI6bm90KDpmb2N1cykge1xuICBib3JkZXItY29sb3I6ICNiNmQ3ZmY7XG59XG5cbi5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC5jYXJkLWJvZHkgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC10ZXh0IHtcbiAgYmFja2dyb3VuZDogI2Y4ZjlmYTtcbiAgYm9yZGVyLWNvbG9yOiAjZGVlMmU2O1xufVxuXG4uZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAuY2FyZC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtdGV4dC5ib3JkZXItZW5kLTAge1xuICBib3JkZXItcmlnaHQ6IDA7XG59XG5cbi5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC5jYXJkLWJvZHkgLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wuYm9yZGVyLXN0YXJ0LTAsXG4uZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAuY2FyZC1ib2R5IC5pbnB1dC1ncm91cCAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmJvcmRlci1zdGFydC0wLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC5jYXJkLWJvZHkgLmlucHV0LWdyb3VwIC5ib3JkZXItc3RhcnQtMC5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gIGJvcmRlci1sZWZ0OiAwO1xufVxuXG4uZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAuY2FyZC1ib2R5IC5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sLmJvcmRlci1zdGFydC0wOmZvY3VzLFxuLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLmNhcmQtYm9keSAuaW5wdXQtZ3JvdXAgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5ib3JkZXItc3RhcnQtMC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAuY2FyZC1ib2R5IC5pbnB1dC1ncm91cCAuYm9yZGVyLXN0YXJ0LTAuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMge1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4uZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAuY2FyZC1ib2R5IC5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sLmJvcmRlci1zdGFydC0wOmZvY3VzICsgLmlucHV0LWdyb3VwLXRleHQsXG4uZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAuY2FyZC1ib2R5IC5pbnB1dC1ncm91cCAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmJvcmRlci1zdGFydC0wLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzICsgLmlucHV0LWdyb3VwLXRleHQsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLmNhcmQtYm9keSAuaW5wdXQtZ3JvdXAgLmJvcmRlci1zdGFydC0wLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzICsgLmlucHV0LWdyb3VwLXRleHQge1xuICBib3JkZXItY29sb3I6ICM4NmI3ZmU7XG59XG5cbi5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC5kYXRhdGFibGUtYnVsay1hY3Rpb25zIHtcbiAgbWFyZ2luOiAwIDFyZW0gMXJlbSAxcmVtO1xuICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNkMWVjZjEgMCUsICNiZWU1ZWIgMTAwJSkgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyMywgMTYyLCAxODQsIDAuMikgIWltcG9ydGFudDtcbn1cblxuLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLmRhdGF0YWJsZS1idWxrLWFjdGlvbnMgLmJhZGdlIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBwYWRkaW5nOiAwLjVyZW0gMC43NXJlbTtcbn1cblxuLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLmRhdGF0YWJsZS1idWxrLWFjdGlvbnMgLmJ0bi1pbmZvIHtcbiAgLS1icy1idG4tYmc6ICMxN2EyYjg7XG4gIC0tYnMtYnRuLWJvcmRlci1jb2xvcjogIzE3YTJiODtcbiAgLS1icy1idG4taG92ZXItYmc6ICMxMzg0OTY7XG4gIC0tYnMtYnRuLWhvdmVyLWJvcmRlci1jb2xvcjogIzExN2E4YjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLnRhYmxlLFxuLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLnByb3NlIHRhYmxlLFxuLnByb3NlIC5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIHRhYmxlIHtcbiAgLS1icy10YWJsZS1iZzogdHJhbnNwYXJlbnQ7XG59XG5cbi5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC50YWJsZSB0aGVhZCB0aCxcbi5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC5wcm9zZSB0YWJsZSB0aGVhZCB0aCxcbi5wcm9zZSAuZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciB0YWJsZSB0aGVhZCB0aCB7XG4gIGJhY2tncm91bmQ6ICNmOGY5ZmEgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNkZWUyZTY7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBwYWRkaW5nOiAxcmVtIDAuNzVyZW07XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG59XG5cbi5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC50YWJsZSB0aGVhZCB0aC5ib3JkZXItMCxcbi5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC5wcm9zZSB0YWJsZSB0aGVhZCB0aC5ib3JkZXItMCxcbi5wcm9zZSAuZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciB0YWJsZSB0aGVhZCB0aC5ib3JkZXItMCB7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1sZWZ0OiAwO1xuICBib3JkZXItcmlnaHQ6IDA7XG59XG5cbi5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC50YWJsZSB0Ym9keSB0ZCxcbi5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC5wcm9zZSB0YWJsZSB0Ym9keSB0ZCxcbi5wcm9zZSAuZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciB0YWJsZSB0Ym9keSB0ZCB7XG4gIHBhZGRpbmc6IDAuODc1cmVtIDAuNzVyZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGNvbG9yOiAjNDk1MDU3O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U5ZWNlZjtcbn1cblxuLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLnRhYmxlIHRib2R5IHRyLFxuLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLnByb3NlIHRhYmxlIHRib2R5IHRyLFxuLnByb3NlIC5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIHRhYmxlIHRib2R5IHRyIHtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dDtcbn1cblxuLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLnRhYmxlIHRib2R5IHRyOmhvdmVyLFxuLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLnByb3NlIHRhYmxlIHRib2R5IHRyOmhvdmVyLFxuLnByb3NlIC5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIHRhYmxlIHRib2R5IHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMywgMTEwLCAyNTMsIDAuMDUpO1xufVxuXG4uZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAudGFibGUgdGJvZHkgdHI6bGFzdC1jaGlsZCB0ZCxcbi5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC5wcm9zZSB0YWJsZSB0Ym9keSB0cjpsYXN0LWNoaWxkIHRkLFxuLnByb3NlIC5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIHRhYmxlIHRib2R5IHRyOmxhc3QtY2hpbGQgdGQge1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuXG4uZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAuY2FyZC1mb290ZXIuYmctbGlnaHQge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZjhmOWZhIDAlLCAjZTllY2VmIDEwMCUpICFpbXBvcnRhbnQ7XG59XG5cbi5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC5jYXJkLWZvb3RlciAuYnRuIHtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlLWluLW91dDtcbn1cblxuLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19sZW5ndGgsXG4uZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX2ZpbHRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfaW5mbyB7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBwYWRkaW5nOiAxcmVtIDAuNzVyZW0gMC41cmVtIDAuNzVyZW07XG4gIG1hcmdpbjogMDtcbn1cblxuLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSB7XG4gIHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtIDFyZW0gMC43NXJlbTtcbn1cblxuLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAucGFnaW5hdGlvbiB7XG4gIG1hcmdpbjogMDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5wYWdpbmF0aW9uIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICB9XG59XG5cbi5kYXRhVGFibGVzX3dyYXBwZXIgLnBhZ2UtbGluayB7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICBwYWRkaW5nOiAwLjVyZW0gMC43NXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2UtaW4tb3V0O1xufVxuXG4uZGF0YVRhYmxlc193cmFwcGVyIC5wYWdlLWxpbms6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxMywgMTEwLCAyNTMsIDAuMjUpO1xufVxuXG4uZGF0YVRhYmxlc193cmFwcGVyIC5wYWdlLWl0ZW0uYWN0aXZlIC5wYWdlLWxpbmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkO1xuICBib3JkZXItY29sb3I6ICMwZDZlZmQ7XG4gIGNvbG9yOiAjZmZmO1xuICBib3gtc2hhZG93OiAwIDAuMTI1cmVtIDAuMjVyZW0gcmdiYSgxMywgMTEwLCAyNTMsIDAuNCk7XG59XG5cbi5kYXRhVGFibGVzX3dyYXBwZXIgLnBhZ2UtaXRlbS5kaXNhYmxlZCAucGFnZS1saW5rIHtcbiAgY29sb3I6ICNhZGI1YmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1jb2xvcjogI2RlZTJlNjtcbiAgb3BhY2l0eTogMC42O1xufVxuXG4uZGF0YVRhYmxlc19wcm9jZXNzaW5nIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjk1KSAhaW1wb3J0YW50O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDAuNXJlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAycmVtICFpbXBvcnRhbnQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHRvcDogNTAlICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSAhaW1wb3J0YW50O1xuICB6LWluZGV4OiAxMDUwICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDAgMC41cmVtIDFyZW0gcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDRweCk7XG59XG5cbi5kYXRhVGFibGVzX2VtcHR5IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDNyZW0gMnJlbSAhaW1wb3J0YW50O1xufVxuXG4uZGF0YVRhYmxlc19lbXB0eSBpIHtcbiAgb3BhY2l0eTogMC42O1xufVxuXG4uZGF0YVRhYmxlc19lbXB0eSBoNixcbi5kYXRhVGFibGVzX2VtcHR5IC5oNiB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmRhdGFUYWJsZXNfZW1wdHkgc21hbGwsXG4uZGF0YVRhYmxlc19lbXB0eSAuc21hbGwge1xuICBjb2xvcjogIzZjNzU3ZDtcbn1cblxuLmJ0bi1JblByb2Nlc3Mge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZmZjMTA3IDAlLCAjZmZiMzAwIDEwMCUpO1xuICBjb2xvcjogIzAwMDtcbiAgYm9yZGVyOiBub25lO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uYnRuLU91dEZvckRlbGl2ZXJ5IHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzE3YTJiOCAwJSwgIzEzODQ5NiAxMDAlKTtcbiAgY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmJ0bi1kZWxpdmVyZWQge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMjhhNzQ1IDAlLCAjMWU3ZTM0IDEwMCUpO1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiBub25lO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uYnRuLWJlaW5nUGFja2FnZWQge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjNmM3NTdkIDAlLCAjNTQ1YjYyIDEwMCUpO1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiBub25lO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uYnRuLUluUHJvY2Vzcyxcbi5idG4tT3V0Rm9yRGVsaXZlcnksXG4uYnRuLWRlbGl2ZXJlZCxcbi5idG4tYmVpbmdQYWNrYWdlZCB7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC43NXJlbTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBib3JkZXItcmFkaXVzOiAxcmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZS1pbi1vdXQ7XG59XG5cbi5idG4tdmlld09yZGVyIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzBkNmVmZCAwJSwgIzBiNWVkNyAxMDAlKTtcbiAgY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMC41cmVtIDEuMjVyZW07XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbn1cblxuLmJ0bi12aWV3LXF1ZXN0aW9uIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzE3YTJiOCAwJSwgIzEzODQ5NiAxMDAlKTtcbiAgY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMC4zNzVyZW0gMXJlbTtcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbn1cblxuLmJ0bi12aWV3LXF1ZXN0aW9uIGkge1xuICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAuZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAuY2FyZC1ib2R5IHtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG5cbiAgLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLmNhcmQtYm9keSAucm93LmctMyA+ICoge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cblxuICAuZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX2luZm8sXG4gIC5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gICAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIge1xuICAgIG1hcmdpbjogMCAtMC41cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gIH1cblxuICAuZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAuY2FyZC1ib2R5IHtcbiAgICBwYWRkaW5nOiAwLjc1cmVtO1xuICB9XG5cbiAgLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLnRhYmxlLFxuICAuZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAucHJvc2UgdGFibGUsXG4gIC5wcm9zZSAuZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciB0YWJsZSB7XG4gICAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIH1cblxuICAuZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAudGFibGUgdGhlYWQgdGgsXG4gIC5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC5wcm9zZSB0YWJsZSB0aGVhZCB0aCxcbiAgLnByb3NlIC5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIHRhYmxlIHRoZWFkIHRoLFxuICAuZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAudGFibGUgdGJvZHkgdGQsXG4gIC5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC5wcm9zZSB0YWJsZSB0Ym9keSB0ZCxcbiAgLnByb3NlIC5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIHRhYmxlIHRib2R5IHRkIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMC4zNzVyZW07XG4gIH1cblxuICAuZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAuZGF0YXRhYmxlLWJ1bGstYWN0aW9ucyB7XG4gICAgbWFyZ2luOiAwIDAuNzVyZW0gMXJlbSAwLjc1cmVtO1xuICB9XG5cbiAgLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLmRhdGF0YWJsZS1idWxrLWFjdGlvbnMgLmQtZmxleCB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDAuNzVyZW07XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC5kYXRhdGFibGUtYnVsay1hY3Rpb25zIC5kLWZsZXggLmQtZmxleCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxufVxuXG4vKipcbiAqIFRvYXN0L1RvYXN0ciBaLUluZGV4IE92ZXJyaWRlc1xuICogXG4gKiBUaGlzIGZpbGUgZW5zdXJlcyB0b2FzdCBub3RpZmljYXRpb25zIGFwcGVhciBCRUxPVyBoZWFkZXIgZHJvcGRvd24gbWVudXMuXG4gKiBCb290c3RyYXAgZHJvcGRvd25zIHVzZSB6LWluZGV4OiAxMDAwLCBzbyB3ZSBzZXQgdG9hc3RzIHRvIDk5OS5cbiAqL1xuXG4jdG9hc3QtY29udGFpbmVyIHtcbiAgei1pbmRleDogOTk5ICFpbXBvcnRhbnQ7XG59XG5cbiN0b2FzdC1jb250YWluZXIgPiBkaXYge1xuICB6LWluZGV4OiA5OTkgIWltcG9ydGFudDtcbn1cblxuLnRvYXN0LWNvbnRhaW5lciB7XG4gIHotaW5kZXg6IDk5OSAhaW1wb3J0YW50O1xufVxuXG4udG9hc3Qge1xuICB6LWluZGV4OiA5OTkgIWltcG9ydGFudDtcbn1cblxuLnRvYXN0LXRvcC1yaWdodCxcbi50b2FzdC10b3AtbGVmdCxcbi50b2FzdC10b3AtY2VudGVyLFxuLnRvYXN0LXRvcC1mdWxsLXdpZHRoLFxuLnRvYXN0LWJvdHRvbS1yaWdodCxcbi50b2FzdC1ib3R0b20tbGVmdCxcbi50b2FzdC1ib3R0b20tY2VudGVyLFxuLnRvYXN0LWJvdHRvbS1mdWxsLXdpZHRoIHtcbiAgei1pbmRleDogOTk5ICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICogRHluYW1pYyBGb3JtIENvbXBvbmVudCBTdHlsZXNcbiAqIEVuaGFuY2VtZW50cyBmb3IgZHluYW1pYyBmb3JtIGJ1aWxkZXJcbiAqL1xuXG4uZHluYW1pYy1mb3JtLWNvbnRhaW5lciAuZm9ybS1maWVsZC13cmFwcGVyIC5mb3JtLWNvbnRyb2wsXG4uZHluYW1pYy1mb3JtLWNvbnRhaW5lciAuZm9ybS1maWVsZC13cmFwcGVyIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLmZvcm0tZmllbGQtd3JhcHBlciAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uZHluYW1pYy1mb3JtLWNvbnRhaW5lciAuZm9ybS1maWVsZC13cmFwcGVyIC5mb3JtLXNlbGVjdCB7XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcbn1cblxuLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLmZvcm0tZmllbGQtd3JhcHBlciAuZm9ybS1jb250cm9sOmZvY3VzLFxuLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLmZvcm0tZmllbGQtd3JhcHBlciAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5keW5hbWljLWZvcm0tY29udGFpbmVyIC5mb3JtLWZpZWxkLXdyYXBwZXIgLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLmZvcm0tZmllbGQtd3JhcHBlciAuZm9ybS1zZWxlY3Q6Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEodmFyKC0tYnMtcHJpbWFyeS1yZ2IpLCAwLjE1KTtcbn1cblxuLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLmNoZWNrYm94LWdyb3VwLFxuLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLnJhZGlvLWdyb3VwIHtcbiAgcGFkZGluZzogMC41cmVtIDA7XG59XG5cbi5keW5hbWljLWZvcm0tY29udGFpbmVyIC5jaGVja2JveC1ncm91cCAuZm9ybS1jaGVjayxcbi5keW5hbWljLWZvcm0tY29udGFpbmVyIC5yYWRpby1ncm91cCAuZm9ybS1jaGVjayB7XG4gIHBhZGRpbmctbGVmdDogMS43NXJlbTtcbn1cblxuLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLmNoZWNrYm94LWdyb3VwIC5mb3JtLWNoZWNrOmhvdmVyLFxuLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLnJhZGlvLWdyb3VwIC5mb3JtLWNoZWNrOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtZ3JheS0xMDApO1xuICBtYXJnaW4tbGVmdDogLTAuNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAtMC41cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDIuMjVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgcGFkZGluZy10b3A6IDAuMjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1icy1ib3JkZXItcmFkaXVzKTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG59XG5cbi5keW5hbWljLWZvcm0tY29udGFpbmVyIC5maWxlLWlucHV0LXdyYXBwZXIgLmZvcm0tY29udHJvbFt0eXBlPWZpbGVdOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbixcbi5keW5hbWljLWZvcm0tY29udGFpbmVyIC5maWxlLWlucHV0LXdyYXBwZXIgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IFt0eXBlPWZpbGVdLnNlbGVjdDItc2VsZWN0aW9uOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuZHluYW1pYy1mb3JtLWNvbnRhaW5lciAuZmlsZS1pbnB1dC13cmFwcGVyIFt0eXBlPWZpbGVdLnNlbGVjdDItc2VsZWN0aW9uOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW07XG4gIG1hcmdpbjogLTAuMzc1cmVtIC0wLjc1cmVtO1xuICBtYXJnaW4taW5saW5lLWVuZDogMC43NXJlbTtcbiAgY29sb3I6IHZhcigtLWJzLWJ0bi1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWJ0bi1iZyk7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLWlubGluZS1lbmQ6IHZhcigtLWJzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tYnMtYm9yZGVyLWNvbG9yKTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2UtaW4tb3V0O1xufVxuXG4uZHluYW1pYy1mb3JtLWNvbnRhaW5lciAuZmlsZS1pbnB1dC13cmFwcGVyIC5mb3JtLWNvbnRyb2xbdHlwZT1maWxlXTpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSk6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uLFxuLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLmZpbGUtaW5wdXQtd3JhcHBlciAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgW3R5cGU9ZmlsZV0uc2VsZWN0Mi1zZWxlY3Rpb246aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuZHluYW1pYy1mb3JtLWNvbnRhaW5lciAuZmlsZS1pbnB1dC13cmFwcGVyIFt0eXBlPWZpbGVdLnNlbGVjdDItc2VsZWN0aW9uOmhvdmVyOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKTo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1idG4taG92ZXItYmcpO1xufVxuXG4uZHluYW1pYy1mb3JtLWNvbnRhaW5lciAuZmlsZS1pbnB1dC13cmFwcGVyIC5pbWFnZS1wcmV2aWV3IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uZHluYW1pYy1mb3JtLWNvbnRhaW5lciAuZmlsZS1pbnB1dC13cmFwcGVyIC5pbWFnZS1wcmV2aWV3IGltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBib3gtc2hhZG93OiAwIDAuMTI1cmVtIDAuMjVyZW0gcmdiYSgwLCAwLCAwLCAwLjA3NSk7XG59XG5cbi5keW5hbWljLWZvcm0tY29udGFpbmVyIC5jaGFyYWN0ZXItY291bnRlciB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xufVxuXG4uZHluYW1pYy1mb3JtLWNvbnRhaW5lciAuZm9ybS1zdWJtaXQtd3JhcHBlciB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1icy1ncmF5LTMwMCk7XG4gIHBhZGRpbmctdG9wOiAxLjVyZW07XG4gIG1hcmdpbi10b3A6IDJyZW07XG59XG5cbi5keW5hbWljLWZvcm0tY29udGFpbmVyIC5mb3JtLXN1Ym1pdC13cmFwcGVyIC5idG4tcHJpbWFyeSB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAyNWVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5keW5hbWljLWZvcm0tY29udGFpbmVyIC5mb3JtLXN1Ym1pdC13cmFwcGVyIC5idG4tcHJpbWFyeTpub3QoOmRpc2FibGVkKTpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgYm94LXNoYWRvdzogMCAwLjI1cmVtIDAuNXJlbSByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuXG4uZHluYW1pYy1mb3JtLWNvbnRhaW5lciAuZm9ybS1zdWJtaXQtd3JhcHBlciAuYnRuLXByaW1hcnk6ZGlzYWJsZWQge1xuICBjdXJzb3I6IHdhaXQ7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZHluYW1pYy1mb3JtLWNvbnRhaW5lciAucm93LmctNCAuZm9ybS1maWVsZC13cmFwcGVyLmZpZWxkLXR5cGUtdGV4dGFyZWEge1xuICAgIGdyaWQtY29sdW1uOiAxLy0xO1xuICB9XG59XG5cbi5keW5hbWljLWZvcm0tY29udGFpbmVyIC5uZWVkcy12YWxpZGF0aW9uIC5pbnZhbGlkLWZlZWRiYWNrLFxuLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLm5lZWRzLXZhbGlkYXRpb24gLmVycm9yLWhlbHAtYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbn1cblxuLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLm5lZWRzLXZhbGlkYXRpb24gLmludmFsaWQtZmVlZGJhY2s6OmJlZm9yZSxcbi5keW5hbWljLWZvcm0tY29udGFpbmVyIC5uZWVkcy12YWxpZGF0aW9uIC5lcnJvci1oZWxwLWJsb2NrOjpiZWZvcmUge1xuICBjb250ZW50OiBcIuKaoCBcIjtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLm5lZWRzLXZhbGlkYXRpb24gLmZvcm0tY29udHJvbDp2YWxpZCxcbi53YXMtdmFsaWRhdGVkIC5keW5hbWljLWZvcm0tY29udGFpbmVyIC5uZWVkcy12YWxpZGF0aW9uIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246dmFsaWQsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLndhcy12YWxpZGF0ZWQgLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLm5lZWRzLXZhbGlkYXRpb24gLnNlbGVjdDItc2VsZWN0aW9uOnZhbGlkLFxuLndhcy12YWxpZGF0ZWQgLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLm5lZWRzLXZhbGlkYXRpb24gLmZvcm0tc2VsZWN0OnZhbGlkIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1zdWNjZXNzKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBmaWxsPSclMjMyOGE3NDUnIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLyUzZSUzYy9zdmclM2VcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNhbGMoMC4zNzVlbSArIDAuMTg3NXJlbSkgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNhbGMoMC43NWVtICsgMC4zNzVyZW0pIGNhbGMoMC43NWVtICsgMC4zNzVyZW0pO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuZHluYW1pYy1mb3JtLWNvbnRhaW5lciAubmVlZHMtdmFsaWRhdGlvbiAuZm9ybS1jb250cm9sOnZhbGlkOmZvY3VzLFxuLndhcy12YWxpZGF0ZWQgLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLm5lZWRzLXZhbGlkYXRpb24gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjp2YWxpZDpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAud2FzLXZhbGlkYXRlZCAuZHluYW1pYy1mb3JtLWNvbnRhaW5lciAubmVlZHMtdmFsaWRhdGlvbiAuc2VsZWN0Mi1zZWxlY3Rpb246dmFsaWQ6Zm9jdXMsXG4ud2FzLXZhbGlkYXRlZCAuZHluYW1pYy1mb3JtLWNvbnRhaW5lciAubmVlZHMtdmFsaWRhdGlvbiAuZm9ybS1zZWxlY3Q6dmFsaWQ6Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHZhcigtLWJzLXN1Y2Nlc3MpO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEodmFyKC0tYnMtc3VjY2Vzcy1yZ2IpLCAwLjI1KTtcbn1cblxuLmR5bmFtaWMtZm9ybS1jb250YWluZXIuaXMtbG9hZGluZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmR5bmFtaWMtZm9ybS1jb250YWluZXIuaXMtbG9hZGluZzo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICB6LWluZGV4OiAxMDtcbiAgY3Vyc29yOiB3YWl0O1xufVxuXG4uZHluYW1pYy1mb3JtLWNvbnRhaW5lciAuZm9ybS1mbG9hdGluZyBsYWJlbC5hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuODUpIHRyYW5zbGF0ZVkoLTAuNXJlbSkgdHJhbnNsYXRlWCgwLjE1cmVtKTtcbn1cblxuLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLmctcmVjYXB0Y2hhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcbiAgLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLmctcmVjYXB0Y2hhIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICB9XG59XG5cbkBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcbiAgLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLmNoZWNrYm94LWdyb3VwIC5mb3JtLWNoZWNrOmhvdmVyLFxuICAuZHluYW1pYy1mb3JtLWNvbnRhaW5lciAucmFkaW8tZ3JvdXAgLmZvcm0tY2hlY2s6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7XG4gIH1cbn1cblxuLyoqXG4gKiBGcm9udGVuZCBGb3JtIFN0eWxlc1xuICpcbiAqIENvbXBsZXRlIGZvcm0gc3lzdGVtIGZvciBmcm9udGVuZC9jdXN0b21lci1mYWNpbmcgcGFnZXNcbiAqIFVzZXMgQm9vdHN0cmFwIDUgd2l0aCBzcXVhcmUgY29ybmVycyBkZXNpZ25cbiAqL1xuXG4uZnJvbnRlbmQtZm9ybSAubWItMyxcbi5mcm9udGVuZC1mb3JtIC5mb3JtLWdyb3VwLFxuLmN1c3RvbWVyLWZvcm0gLm1iLTMsXG4uY3VzdG9tZXItZm9ybSAuZm9ybS1ncm91cCxcbi5jaGVja291dC1mb3JtIC5tYi0zLFxuLmNoZWNrb3V0LWZvcm0gLmZvcm0tZ3JvdXAsXG4uYWNjb3VudC1mb3JtIC5tYi0zLFxuLmFjY291bnQtZm9ybSAuZm9ybS1ncm91cCxcbi5wcm9kdWN0LWZvcm0gLm1iLTMsXG4ucHJvZHVjdC1mb3JtIC5mb3JtLWdyb3VwLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLm1iLTMsXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuZm9ybS1ncm91cCxcbi5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5tYi0zLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG5cbi5mcm9udGVuZC1mb3JtIC5mb3JtLWxhYmVsLFxuLmZyb250ZW5kLWZvcm0gbGFiZWwsXG4uY3VzdG9tZXItZm9ybSAuZm9ybS1sYWJlbCxcbi5jdXN0b21lci1mb3JtIGxhYmVsLFxuLmNoZWNrb3V0LWZvcm0gLmZvcm0tbGFiZWwsXG4uY2hlY2tvdXQtZm9ybSBsYWJlbCxcbi5hY2NvdW50LWZvcm0gLmZvcm0tbGFiZWwsXG4uYWNjb3VudC1mb3JtIGxhYmVsLFxuLnByb2R1Y3QtZm9ybSAuZm9ybS1sYWJlbCxcbi5wcm9kdWN0LWZvcm0gbGFiZWwsXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuZm9ybS1sYWJlbCxcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIGxhYmVsLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLmZvcm0tbGFiZWwsXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogIzMzMztcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG59XG5cbi5mcm9udGVuZC1mb3JtIC5yZXF1aXJlZCxcbi5jdXN0b21lci1mb3JtIC5yZXF1aXJlZCxcbi5jaGVja291dC1mb3JtIC5yZXF1aXJlZCxcbi5hY2NvdW50LWZvcm0gLnJlcXVpcmVkLFxuLnByb2R1Y3QtZm9ybSAucmVxdWlyZWQsXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAucmVxdWlyZWQsXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAucmVxdWlyZWQge1xuICBjb2xvcjogI2RjMzU0NTtcbiAgbWFyZ2luLWxlZnQ6IDAuMjVyZW07XG59XG5cbi5mcm9udGVuZC1mb3JtIC5mb3JtLWNvbnRyb2wsXG4uZnJvbnRlbmQtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5mcm9udGVuZC1mb3JtIC5zZWxlY3QyLXNlbGVjdGlvbixcbi5jdXN0b21lci1mb3JtIC5mb3JtLWNvbnRyb2wsXG4uY3VzdG9tZXItZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5jdXN0b21lci1mb3JtIC5zZWxlY3QyLXNlbGVjdGlvbixcbi5jaGVja291dC1mb3JtIC5mb3JtLWNvbnRyb2wsXG4uY2hlY2tvdXQtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5jaGVja291dC1mb3JtIC5zZWxlY3QyLXNlbGVjdGlvbixcbi5hY2NvdW50LWZvcm0gLmZvcm0tY29udHJvbCxcbi5hY2NvdW50LWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuYWNjb3VudC1mb3JtIC5zZWxlY3QyLXNlbGVjdGlvbixcbi5wcm9kdWN0LWZvcm0gLmZvcm0tY29udHJvbCxcbi5wcm9kdWN0LWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucHJvZHVjdC1mb3JtIC5zZWxlY3QyLXNlbGVjdGlvbixcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5mb3JtLWNvbnRyb2wsXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5zZWxlY3QyLXNlbGVjdGlvbixcbi5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5mb3JtLWNvbnRyb2wsXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0MnB4O1xuICBwYWRkaW5nOiAwLjQ3NXJlbSAwLjg1cmVtO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGFkOWQ5O1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcbn1cblxuLmZyb250ZW5kLWZvcm0gLmZvcm0tY29udHJvbDpmb2N1cyxcbi5mcm9udGVuZC1mb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmZyb250ZW5kLWZvcm0gLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLmN1c3RvbWVyLWZvcm0gLmZvcm0tY29udHJvbDpmb2N1cyxcbi5jdXN0b21lci1mb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmN1c3RvbWVyLWZvcm0gLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLmNoZWNrb3V0LWZvcm0gLmZvcm0tY29udHJvbDpmb2N1cyxcbi5jaGVja291dC1mb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmNoZWNrb3V0LWZvcm0gLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLmFjY291bnQtZm9ybSAuZm9ybS1jb250cm9sOmZvY3VzLFxuLmFjY291bnQtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5hY2NvdW50LWZvcm0gLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLnByb2R1Y3QtZm9ybSAuZm9ybS1jb250cm9sOmZvY3VzLFxuLnByb2R1Y3QtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wcm9kdWN0LWZvcm0gLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmZvcm0tY29udHJvbDpmb2N1cyxcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLmZvcm0tY29udHJvbDpmb2N1cyxcbi5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzIHtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1jb2xvcjogIzFFMUU1NjtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDMwLCAzMCwgODYsIDAuMjUpO1xufVxuXG4uZnJvbnRlbmQtZm9ybSAuZm9ybS1jb250cm9sOjpwbGFjZWhvbGRlcixcbi5mcm9udGVuZC1mb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246OnBsYWNlaG9sZGVyLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5mcm9udGVuZC1mb3JtIC5zZWxlY3QyLXNlbGVjdGlvbjo6cGxhY2Vob2xkZXIsXG4uY3VzdG9tZXItZm9ybSAuZm9ybS1jb250cm9sOjpwbGFjZWhvbGRlcixcbi5jdXN0b21lci1mb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246OnBsYWNlaG9sZGVyLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5jdXN0b21lci1mb3JtIC5zZWxlY3QyLXNlbGVjdGlvbjo6cGxhY2Vob2xkZXIsXG4uY2hlY2tvdXQtZm9ybSAuZm9ybS1jb250cm9sOjpwbGFjZWhvbGRlcixcbi5jaGVja291dC1mb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246OnBsYWNlaG9sZGVyLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5jaGVja291dC1mb3JtIC5zZWxlY3QyLXNlbGVjdGlvbjo6cGxhY2Vob2xkZXIsXG4uYWNjb3VudC1mb3JtIC5mb3JtLWNvbnRyb2w6OnBsYWNlaG9sZGVyLFxuLmFjY291bnQtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOjpwbGFjZWhvbGRlcixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuYWNjb3VudC1mb3JtIC5zZWxlY3QyLXNlbGVjdGlvbjo6cGxhY2Vob2xkZXIsXG4ucHJvZHVjdC1mb3JtIC5mb3JtLWNvbnRyb2w6OnBsYWNlaG9sZGVyLFxuLnByb2R1Y3QtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOjpwbGFjZWhvbGRlcixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucHJvZHVjdC1mb3JtIC5zZWxlY3QyLXNlbGVjdGlvbjo6cGxhY2Vob2xkZXIsXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuZm9ybS1jb250cm9sOjpwbGFjZWhvbGRlcixcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246OnBsYWNlaG9sZGVyLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5zZWxlY3QyLXNlbGVjdGlvbjo6cGxhY2Vob2xkZXIsXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuZm9ybS1jb250cm9sOjpwbGFjZWhvbGRlcixcbi5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246OnBsYWNlaG9sZGVyLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5zZWxlY3QyLXNlbGVjdGlvbjo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmZyb250ZW5kLWZvcm0gLmZvcm0tY29udHJvbDpkaXNhYmxlZCxcbi5mcm9udGVuZC1mb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246ZGlzYWJsZWQsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmZyb250ZW5kLWZvcm0gLnNlbGVjdDItc2VsZWN0aW9uOmRpc2FibGVkLFxuLmZyb250ZW5kLWZvcm0gLmZvcm0tY29udHJvbFtyZWFkb25seV0sXG4uZnJvbnRlbmQtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgW3JlYWRvbmx5XS5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuZnJvbnRlbmQtZm9ybSBbcmVhZG9ubHldLnNlbGVjdDItc2VsZWN0aW9uLFxuLmN1c3RvbWVyLWZvcm0gLmZvcm0tY29udHJvbDpkaXNhYmxlZCxcbi5jdXN0b21lci1mb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246ZGlzYWJsZWQsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmN1c3RvbWVyLWZvcm0gLnNlbGVjdDItc2VsZWN0aW9uOmRpc2FibGVkLFxuLmN1c3RvbWVyLWZvcm0gLmZvcm0tY29udHJvbFtyZWFkb25seV0sXG4uY3VzdG9tZXItZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgW3JlYWRvbmx5XS5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuY3VzdG9tZXItZm9ybSBbcmVhZG9ubHldLnNlbGVjdDItc2VsZWN0aW9uLFxuLmNoZWNrb3V0LWZvcm0gLmZvcm0tY29udHJvbDpkaXNhYmxlZCxcbi5jaGVja291dC1mb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246ZGlzYWJsZWQsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmNoZWNrb3V0LWZvcm0gLnNlbGVjdDItc2VsZWN0aW9uOmRpc2FibGVkLFxuLmNoZWNrb3V0LWZvcm0gLmZvcm0tY29udHJvbFtyZWFkb25seV0sXG4uY2hlY2tvdXQtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgW3JlYWRvbmx5XS5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuY2hlY2tvdXQtZm9ybSBbcmVhZG9ubHldLnNlbGVjdDItc2VsZWN0aW9uLFxuLmFjY291bnQtZm9ybSAuZm9ybS1jb250cm9sOmRpc2FibGVkLFxuLmFjY291bnQtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOmRpc2FibGVkLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5hY2NvdW50LWZvcm0gLnNlbGVjdDItc2VsZWN0aW9uOmRpc2FibGVkLFxuLmFjY291bnQtZm9ybSAuZm9ybS1jb250cm9sW3JlYWRvbmx5XSxcbi5hY2NvdW50LWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IFtyZWFkb25seV0uc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmFjY291bnQtZm9ybSBbcmVhZG9ubHldLnNlbGVjdDItc2VsZWN0aW9uLFxuLnByb2R1Y3QtZm9ybSAuZm9ybS1jb250cm9sOmRpc2FibGVkLFxuLnByb2R1Y3QtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOmRpc2FibGVkLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wcm9kdWN0LWZvcm0gLnNlbGVjdDItc2VsZWN0aW9uOmRpc2FibGVkLFxuLnByb2R1Y3QtZm9ybSAuZm9ybS1jb250cm9sW3JlYWRvbmx5XSxcbi5wcm9kdWN0LWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IFtyZWFkb25seV0uc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnByb2R1Y3QtZm9ybSBbcmVhZG9ubHldLnNlbGVjdDItc2VsZWN0aW9uLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmZvcm0tY29udHJvbDpkaXNhYmxlZCxcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246ZGlzYWJsZWQsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLnNlbGVjdDItc2VsZWN0aW9uOmRpc2FibGVkLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmZvcm0tY29udHJvbFtyZWFkb25seV0sXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgW3JlYWRvbmx5XS5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSBbcmVhZG9ubHldLnNlbGVjdDItc2VsZWN0aW9uLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLmZvcm0tY29udHJvbDpkaXNhYmxlZCxcbi5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246ZGlzYWJsZWQsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLnNlbGVjdDItc2VsZWN0aW9uOmRpc2FibGVkLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLmZvcm0tY29udHJvbFtyZWFkb25seV0sXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgW3JlYWRvbmx5XS5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSBbcmVhZG9ubHldLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmZyb250ZW5kLWZvcm0gLmZvcm0tY29udHJvbC5mb3JtLWNvbnRyb2wtc20sXG4uZnJvbnRlbmQtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmZvcm0tY29udHJvbC1zbS5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuZnJvbnRlbmQtZm9ybSAuZm9ybS1jb250cm9sLXNtLnNlbGVjdDItc2VsZWN0aW9uLFxuLmN1c3RvbWVyLWZvcm0gLmZvcm0tY29udHJvbC5mb3JtLWNvbnRyb2wtc20sXG4uY3VzdG9tZXItZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmZvcm0tY29udHJvbC1zbS5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuY3VzdG9tZXItZm9ybSAuZm9ybS1jb250cm9sLXNtLnNlbGVjdDItc2VsZWN0aW9uLFxuLmNoZWNrb3V0LWZvcm0gLmZvcm0tY29udHJvbC5mb3JtLWNvbnRyb2wtc20sXG4uY2hlY2tvdXQtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmZvcm0tY29udHJvbC1zbS5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuY2hlY2tvdXQtZm9ybSAuZm9ybS1jb250cm9sLXNtLnNlbGVjdDItc2VsZWN0aW9uLFxuLmFjY291bnQtZm9ybSAuZm9ybS1jb250cm9sLmZvcm0tY29udHJvbC1zbSxcbi5hY2NvdW50LWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5mb3JtLWNvbnRyb2wtc20uc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmFjY291bnQtZm9ybSAuZm9ybS1jb250cm9sLXNtLnNlbGVjdDItc2VsZWN0aW9uLFxuLnByb2R1Y3QtZm9ybSAuZm9ybS1jb250cm9sLmZvcm0tY29udHJvbC1zbSxcbi5wcm9kdWN0LWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5mb3JtLWNvbnRyb2wtc20uc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnByb2R1Y3QtZm9ybSAuZm9ybS1jb250cm9sLXNtLnNlbGVjdDItc2VsZWN0aW9uLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmZvcm0tY29udHJvbC5mb3JtLWNvbnRyb2wtc20sXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmZvcm0tY29udHJvbC1zbS5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuZm9ybS1jb250cm9sLXNtLnNlbGVjdDItc2VsZWN0aW9uLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLmZvcm0tY29udHJvbC5mb3JtLWNvbnRyb2wtc20sXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmZvcm0tY29udHJvbC1zbS5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuZm9ybS1jb250cm9sLXNtLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgaGVpZ2h0OiAzNnB4O1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbn1cblxuLmZyb250ZW5kLWZvcm0gLmZvcm0tY29udHJvbC5mb3JtLWNvbnRyb2wtbGcsXG4uZnJvbnRlbmQtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmZvcm0tY29udHJvbC1sZy5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuZnJvbnRlbmQtZm9ybSAuZm9ybS1jb250cm9sLWxnLnNlbGVjdDItc2VsZWN0aW9uLFxuLmN1c3RvbWVyLWZvcm0gLmZvcm0tY29udHJvbC5mb3JtLWNvbnRyb2wtbGcsXG4uY3VzdG9tZXItZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmZvcm0tY29udHJvbC1sZy5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuY3VzdG9tZXItZm9ybSAuZm9ybS1jb250cm9sLWxnLnNlbGVjdDItc2VsZWN0aW9uLFxuLmNoZWNrb3V0LWZvcm0gLmZvcm0tY29udHJvbC5mb3JtLWNvbnRyb2wtbGcsXG4uY2hlY2tvdXQtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmZvcm0tY29udHJvbC1sZy5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuY2hlY2tvdXQtZm9ybSAuZm9ybS1jb250cm9sLWxnLnNlbGVjdDItc2VsZWN0aW9uLFxuLmFjY291bnQtZm9ybSAuZm9ybS1jb250cm9sLmZvcm0tY29udHJvbC1sZyxcbi5hY2NvdW50LWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5mb3JtLWNvbnRyb2wtbGcuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmFjY291bnQtZm9ybSAuZm9ybS1jb250cm9sLWxnLnNlbGVjdDItc2VsZWN0aW9uLFxuLnByb2R1Y3QtZm9ybSAuZm9ybS1jb250cm9sLmZvcm0tY29udHJvbC1sZyxcbi5wcm9kdWN0LWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5mb3JtLWNvbnRyb2wtbGcuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnByb2R1Y3QtZm9ybSAuZm9ybS1jb250cm9sLWxnLnNlbGVjdDItc2VsZWN0aW9uLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmZvcm0tY29udHJvbC5mb3JtLWNvbnRyb2wtbGcsXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmZvcm0tY29udHJvbC1sZy5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuZm9ybS1jb250cm9sLWxnLnNlbGVjdDItc2VsZWN0aW9uLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLmZvcm0tY29udHJvbC5mb3JtLWNvbnRyb2wtbGcsXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmZvcm0tY29udHJvbC1sZy5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuZm9ybS1jb250cm9sLWxnLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgaGVpZ2h0OiA1MHB4O1xuICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG59XG5cbi5mcm9udGVuZC1mb3JtIHRleHRhcmVhLmZvcm0tY29udHJvbCxcbi5mcm9udGVuZC1mb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCB0ZXh0YXJlYS5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuZnJvbnRlbmQtZm9ybSB0ZXh0YXJlYS5zZWxlY3QyLXNlbGVjdGlvbixcbi5jdXN0b21lci1mb3JtIHRleHRhcmVhLmZvcm0tY29udHJvbCxcbi5jdXN0b21lci1mb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCB0ZXh0YXJlYS5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuY3VzdG9tZXItZm9ybSB0ZXh0YXJlYS5zZWxlY3QyLXNlbGVjdGlvbixcbi5jaGVja291dC1mb3JtIHRleHRhcmVhLmZvcm0tY29udHJvbCxcbi5jaGVja291dC1mb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCB0ZXh0YXJlYS5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuY2hlY2tvdXQtZm9ybSB0ZXh0YXJlYS5zZWxlY3QyLXNlbGVjdGlvbixcbi5hY2NvdW50LWZvcm0gdGV4dGFyZWEuZm9ybS1jb250cm9sLFxuLmFjY291bnQtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgdGV4dGFyZWEuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmFjY291bnQtZm9ybSB0ZXh0YXJlYS5zZWxlY3QyLXNlbGVjdGlvbixcbi5wcm9kdWN0LWZvcm0gdGV4dGFyZWEuZm9ybS1jb250cm9sLFxuLnByb2R1Y3QtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgdGV4dGFyZWEuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnByb2R1Y3QtZm9ybSB0ZXh0YXJlYS5zZWxlY3QyLXNlbGVjdGlvbixcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIHRleHRhcmVhLmZvcm0tY29udHJvbCxcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCB0ZXh0YXJlYS5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSB0ZXh0YXJlYS5zZWxlY3QyLXNlbGVjdGlvbixcbi5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIHRleHRhcmVhLmZvcm0tY29udHJvbCxcbi5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCB0ZXh0YXJlYS5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSB0ZXh0YXJlYS5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gIGhlaWdodDogYXV0bztcbiAgbWluLWhlaWdodDogMTIwcHg7XG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbi5mcm9udGVuZC1mb3JtIC5mb3JtLXNlbGVjdCxcbi5jdXN0b21lci1mb3JtIC5mb3JtLXNlbGVjdCxcbi5jaGVja291dC1mb3JtIC5mb3JtLXNlbGVjdCxcbi5hY2NvdW50LWZvcm0gLmZvcm0tc2VsZWN0LFxuLnByb2R1Y3QtZm9ybSAuZm9ybS1zZWxlY3QsXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuZm9ybS1zZWxlY3QsXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuZm9ybS1zZWxlY3Qge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNDJweDtcbiAgcGFkZGluZzogMC40NzVyZW0gMi4yNXJlbSAwLjQ3NXJlbSAwLjg1cmVtO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyUzZSUzY3BhdGggZmlsbD0nbm9uZScgc3Ryb2tlPSclMjMzNDNhNDAnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNMiA1bDYgNiA2LTYnLyUzZSUzYy9zdmclM2VcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDAuNzVyZW0gY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDE2cHggMTJweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RhZDlkOTtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi5mcm9udGVuZC1mb3JtIC5mb3JtLXNlbGVjdDpmb2N1cyxcbi5jdXN0b21lci1mb3JtIC5mb3JtLXNlbGVjdDpmb2N1cyxcbi5jaGVja291dC1mb3JtIC5mb3JtLXNlbGVjdDpmb2N1cyxcbi5hY2NvdW50LWZvcm0gLmZvcm0tc2VsZWN0OmZvY3VzLFxuLnByb2R1Y3QtZm9ybSAuZm9ybS1zZWxlY3Q6Zm9jdXMsXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuZm9ybS1zZWxlY3Q6Zm9jdXMsXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuZm9ybS1zZWxlY3Q6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMxRTFFNTY7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgzMCwgMzAsIDg2LCAwLjI1KTtcbn1cblxuLmZyb250ZW5kLWZvcm0gLmZvcm0tc2VsZWN0OmRpc2FibGVkLFxuLmN1c3RvbWVyLWZvcm0gLmZvcm0tc2VsZWN0OmRpc2FibGVkLFxuLmNoZWNrb3V0LWZvcm0gLmZvcm0tc2VsZWN0OmRpc2FibGVkLFxuLmFjY291bnQtZm9ybSAuZm9ybS1zZWxlY3Q6ZGlzYWJsZWQsXG4ucHJvZHVjdC1mb3JtIC5mb3JtLXNlbGVjdDpkaXNhYmxlZCxcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5mb3JtLXNlbGVjdDpkaXNhYmxlZCxcbi5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5mb3JtLXNlbGVjdDpkaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XG59XG5cbi5mcm9udGVuZC1mb3JtIC5mb3JtLXNlbGVjdC5mb3JtLXNlbGVjdC1zbSxcbi5jdXN0b21lci1mb3JtIC5mb3JtLXNlbGVjdC5mb3JtLXNlbGVjdC1zbSxcbi5jaGVja291dC1mb3JtIC5mb3JtLXNlbGVjdC5mb3JtLXNlbGVjdC1zbSxcbi5hY2NvdW50LWZvcm0gLmZvcm0tc2VsZWN0LmZvcm0tc2VsZWN0LXNtLFxuLnByb2R1Y3QtZm9ybSAuZm9ybS1zZWxlY3QuZm9ybS1zZWxlY3Qtc20sXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuZm9ybS1zZWxlY3QuZm9ybS1zZWxlY3Qtc20sXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuZm9ybS1zZWxlY3QuZm9ybS1zZWxlY3Qtc20ge1xuICBoZWlnaHQ6IDM2cHg7XG4gIHBhZGRpbmctdG9wOiAwLjI1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG5cbi5mcm9udGVuZC1mb3JtIC5mb3JtLXNlbGVjdC5mb3JtLXNlbGVjdC1sZyxcbi5jdXN0b21lci1mb3JtIC5mb3JtLXNlbGVjdC5mb3JtLXNlbGVjdC1sZyxcbi5jaGVja291dC1mb3JtIC5mb3JtLXNlbGVjdC5mb3JtLXNlbGVjdC1sZyxcbi5hY2NvdW50LWZvcm0gLmZvcm0tc2VsZWN0LmZvcm0tc2VsZWN0LWxnLFxuLnByb2R1Y3QtZm9ybSAuZm9ybS1zZWxlY3QuZm9ybS1zZWxlY3QtbGcsXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuZm9ybS1zZWxlY3QuZm9ybS1zZWxlY3QtbGcsXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuZm9ybS1zZWxlY3QuZm9ybS1zZWxlY3QtbGcge1xuICBoZWlnaHQ6IDUwcHg7XG4gIHBhZGRpbmctdG9wOiAwLjc1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC43NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xufVxuXG4uZnJvbnRlbmQtZm9ybSAuZm9ybS1jaGVjayxcbi5jdXN0b21lci1mb3JtIC5mb3JtLWNoZWNrLFxuLmNoZWNrb3V0LWZvcm0gLmZvcm0tY2hlY2ssXG4uYWNjb3VudC1mb3JtIC5mb3JtLWNoZWNrLFxuLnByb2R1Y3QtZm9ybSAuZm9ybS1jaGVjayxcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5mb3JtLWNoZWNrLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLmZvcm0tY2hlY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWluLWhlaWdodDogMS41cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDEuNWVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjEyNXJlbTtcbn1cblxuLmZyb250ZW5kLWZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXQsXG4uY3VzdG9tZXItZm9ybSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dCxcbi5jaGVja291dC1mb3JtIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0LFxuLmFjY291bnQtZm9ybSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dCxcbi5wcm9kdWN0LWZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXQsXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dCxcbi5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1sZWZ0OiAtMS41ZW07XG59XG5cbi5mcm9udGVuZC1mb3JtIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0W3R5cGU9Y2hlY2tib3hdLFxuLmN1c3RvbWVyLWZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXRbdHlwZT1jaGVja2JveF0sXG4uY2hlY2tvdXQtZm9ybSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dFt0eXBlPWNoZWNrYm94XSxcbi5hY2NvdW50LWZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXRbdHlwZT1jaGVja2JveF0sXG4ucHJvZHVjdC1mb3JtIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0W3R5cGU9Y2hlY2tib3hdLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXRbdHlwZT1jaGVja2JveF0sXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dFt0eXBlPWNoZWNrYm94XSB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi5mcm9udGVuZC1mb3JtIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0W3R5cGU9cmFkaW9dLFxuLmN1c3RvbWVyLWZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXRbdHlwZT1yYWRpb10sXG4uY2hlY2tvdXQtZm9ybSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dFt0eXBlPXJhZGlvXSxcbi5hY2NvdW50LWZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXRbdHlwZT1yYWRpb10sXG4ucHJvZHVjdC1mb3JtIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0W3R5cGU9cmFkaW9dLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXRbdHlwZT1yYWRpb10sXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dFt0eXBlPXJhZGlvXSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cblxuLmZyb250ZW5kLWZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXQ6Y2hlY2tlZCxcbi5jdXN0b21lci1mb3JtIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0OmNoZWNrZWQsXG4uY2hlY2tvdXQtZm9ybSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dDpjaGVja2VkLFxuLmFjY291bnQtZm9ybSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dDpjaGVja2VkLFxuLnByb2R1Y3QtZm9ybSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dDpjaGVja2VkLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXQ6Y2hlY2tlZCxcbi5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0OmNoZWNrZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUUxRTU2O1xuICBib3JkZXItY29sb3I6ICMxRTFFNTY7XG59XG5cbi5mcm9udGVuZC1mb3JtIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0OmZvY3VzLFxuLmN1c3RvbWVyLWZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXQ6Zm9jdXMsXG4uY2hlY2tvdXQtZm9ybSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dDpmb2N1cyxcbi5hY2NvdW50LWZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXQ6Zm9jdXMsXG4ucHJvZHVjdC1mb3JtIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0OmZvY3VzLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXQ6Zm9jdXMsXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzFFMUU1NjtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDMwLCAzMCwgODYsIDAuMjUpO1xufVxuXG4uZnJvbnRlbmQtZm9ybSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dDpkaXNhYmxlZCxcbi5jdXN0b21lci1mb3JtIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0OmRpc2FibGVkLFxuLmNoZWNrb3V0LWZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXQ6ZGlzYWJsZWQsXG4uYWNjb3VudC1mb3JtIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0OmRpc2FibGVkLFxuLnByb2R1Y3QtZm9ybSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dDpkaXNhYmxlZCxcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0OmRpc2FibGVkLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXQ6ZGlzYWJsZWQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgZmlsdGVyOiBub25lO1xuICBvcGFjaXR5OiAwLjU7XG59XG5cbi5mcm9udGVuZC1mb3JtIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0OmRpc2FibGVkIH4gLmZvcm0tY2hlY2stbGFiZWwsXG4uY3VzdG9tZXItZm9ybSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dDpkaXNhYmxlZCB+IC5mb3JtLWNoZWNrLWxhYmVsLFxuLmNoZWNrb3V0LWZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXQ6ZGlzYWJsZWQgfiAuZm9ybS1jaGVjay1sYWJlbCxcbi5hY2NvdW50LWZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXQ6ZGlzYWJsZWQgfiAuZm9ybS1jaGVjay1sYWJlbCxcbi5wcm9kdWN0LWZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXQ6ZGlzYWJsZWQgfiAuZm9ybS1jaGVjay1sYWJlbCxcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0OmRpc2FibGVkIH4gLmZvcm0tY2hlY2stbGFiZWwsXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dDpkaXNhYmxlZCB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBvcGFjaXR5OiAwLjU7XG59XG5cbi5mcm9udGVuZC1mb3JtIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWxhYmVsLFxuLmN1c3RvbWVyLWZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2stbGFiZWwsXG4uY2hlY2tvdXQtZm9ybSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1sYWJlbCxcbi5hY2NvdW50LWZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2stbGFiZWwsXG4ucHJvZHVjdC1mb3JtIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWxhYmVsLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2stbGFiZWwsXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1sYWJlbCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmZyb250ZW5kLWZvcm0gLmZvcm0tY29udHJvbC5pcy12YWxpZCxcbi5mcm9udGVuZC1mb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuaXMtdmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmZyb250ZW5kLWZvcm0gLmlzLXZhbGlkLnNlbGVjdDItc2VsZWN0aW9uLFxuLmZyb250ZW5kLWZvcm0gLmZvcm0tc2VsZWN0LmlzLXZhbGlkLFxuLmN1c3RvbWVyLWZvcm0gLmZvcm0tY29udHJvbC5pcy12YWxpZCxcbi5jdXN0b21lci1mb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuaXMtdmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmN1c3RvbWVyLWZvcm0gLmlzLXZhbGlkLnNlbGVjdDItc2VsZWN0aW9uLFxuLmN1c3RvbWVyLWZvcm0gLmZvcm0tc2VsZWN0LmlzLXZhbGlkLFxuLmNoZWNrb3V0LWZvcm0gLmZvcm0tY29udHJvbC5pcy12YWxpZCxcbi5jaGVja291dC1mb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuaXMtdmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmNoZWNrb3V0LWZvcm0gLmlzLXZhbGlkLnNlbGVjdDItc2VsZWN0aW9uLFxuLmNoZWNrb3V0LWZvcm0gLmZvcm0tc2VsZWN0LmlzLXZhbGlkLFxuLmFjY291bnQtZm9ybSAuZm9ybS1jb250cm9sLmlzLXZhbGlkLFxuLmFjY291bnQtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmlzLXZhbGlkLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5hY2NvdW50LWZvcm0gLmlzLXZhbGlkLnNlbGVjdDItc2VsZWN0aW9uLFxuLmFjY291bnQtZm9ybSAuZm9ybS1zZWxlY3QuaXMtdmFsaWQsXG4ucHJvZHVjdC1mb3JtIC5mb3JtLWNvbnRyb2wuaXMtdmFsaWQsXG4ucHJvZHVjdC1mb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuaXMtdmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnByb2R1Y3QtZm9ybSAuaXMtdmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb24sXG4ucHJvZHVjdC1mb3JtIC5mb3JtLXNlbGVjdC5pcy12YWxpZCxcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5mb3JtLWNvbnRyb2wuaXMtdmFsaWQsXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmlzLXZhbGlkLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5pcy12YWxpZC5zZWxlY3QyLXNlbGVjdGlvbixcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5mb3JtLXNlbGVjdC5pcy12YWxpZCxcbi5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5mb3JtLWNvbnRyb2wuaXMtdmFsaWQsXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmlzLXZhbGlkLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5pcy12YWxpZC5zZWxlY3QyLXNlbGVjdGlvbixcbi5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5mb3JtLXNlbGVjdC5pcy12YWxpZCB7XG4gIGJvcmRlci1jb2xvcjogIzE5ODc1NDtcbiAgcGFkZGluZy1yaWdodDogY2FsYygxLjVlbSArIDAuNzVyZW0pO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDggOCclM2UlM2NwYXRoIGZpbGw9JyUyMzE5ODc1NCcgZD0nTTIuMyA2LjczTC42IDQuNTNjLS40LTEuMDQuNDYtMS40IDEuMS0uOGwxLjEgMS40IDMuNC0zLjhjLjYtLjYzIDEuNi0uMjcgMS4yLjdsLTQgNC42Yy0uNDMuNS0uOC40LTEuMS4xeicvJTNlJTNjL3N2ZyUzZVwiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2FsYygwLjM3NWVtICsgMC4xODc1cmVtKSBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY2FsYygwLjc1ZW0gKyAwLjM3NXJlbSkgY2FsYygwLjc1ZW0gKyAwLjM3NXJlbSk7XG59XG5cbi5mcm9udGVuZC1mb3JtIC5mb3JtLWNvbnRyb2wuaXMtdmFsaWQ6Zm9jdXMsXG4uZnJvbnRlbmQtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmlzLXZhbGlkLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5mcm9udGVuZC1mb3JtIC5pcy12YWxpZC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5mcm9udGVuZC1mb3JtIC5mb3JtLXNlbGVjdC5pcy12YWxpZDpmb2N1cyxcbi5jdXN0b21lci1mb3JtIC5mb3JtLWNvbnRyb2wuaXMtdmFsaWQ6Zm9jdXMsXG4uY3VzdG9tZXItZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmlzLXZhbGlkLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5jdXN0b21lci1mb3JtIC5pcy12YWxpZC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5jdXN0b21lci1mb3JtIC5mb3JtLXNlbGVjdC5pcy12YWxpZDpmb2N1cyxcbi5jaGVja291dC1mb3JtIC5mb3JtLWNvbnRyb2wuaXMtdmFsaWQ6Zm9jdXMsXG4uY2hlY2tvdXQtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmlzLXZhbGlkLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5jaGVja291dC1mb3JtIC5pcy12YWxpZC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5jaGVja291dC1mb3JtIC5mb3JtLXNlbGVjdC5pcy12YWxpZDpmb2N1cyxcbi5hY2NvdW50LWZvcm0gLmZvcm0tY29udHJvbC5pcy12YWxpZDpmb2N1cyxcbi5hY2NvdW50LWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5pcy12YWxpZC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuYWNjb3VudC1mb3JtIC5pcy12YWxpZC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5hY2NvdW50LWZvcm0gLmZvcm0tc2VsZWN0LmlzLXZhbGlkOmZvY3VzLFxuLnByb2R1Y3QtZm9ybSAuZm9ybS1jb250cm9sLmlzLXZhbGlkOmZvY3VzLFxuLnByb2R1Y3QtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmlzLXZhbGlkLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wcm9kdWN0LWZvcm0gLmlzLXZhbGlkLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLnByb2R1Y3QtZm9ybSAuZm9ybS1zZWxlY3QuaXMtdmFsaWQ6Zm9jdXMsXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuZm9ybS1jb250cm9sLmlzLXZhbGlkOmZvY3VzLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5pcy12YWxpZC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuaXMtdmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuZm9ybS1zZWxlY3QuaXMtdmFsaWQ6Zm9jdXMsXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuZm9ybS1jb250cm9sLmlzLXZhbGlkOmZvY3VzLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5pcy12YWxpZC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuaXMtdmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuZm9ybS1zZWxlY3QuaXMtdmFsaWQ6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMxOTg3NTQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyNSwgMTM1LCA4NCwgMC4yNSk7XG59XG5cbi5mcm9udGVuZC1mb3JtIC5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZCxcbi5mcm9udGVuZC1mb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuaXMtaW52YWxpZC5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuZnJvbnRlbmQtZm9ybSAuaXMtaW52YWxpZC5zZWxlY3QyLXNlbGVjdGlvbixcbi5mcm9udGVuZC1mb3JtIC5mb3JtLXNlbGVjdC5pcy1pbnZhbGlkLFxuLmN1c3RvbWVyLWZvcm0gLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkLFxuLmN1c3RvbWVyLWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5pcy1pbnZhbGlkLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5jdXN0b21lci1mb3JtIC5pcy1pbnZhbGlkLnNlbGVjdDItc2VsZWN0aW9uLFxuLmN1c3RvbWVyLWZvcm0gLmZvcm0tc2VsZWN0LmlzLWludmFsaWQsXG4uY2hlY2tvdXQtZm9ybSAuZm9ybS1jb250cm9sLmlzLWludmFsaWQsXG4uY2hlY2tvdXQtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmlzLWludmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmNoZWNrb3V0LWZvcm0gLmlzLWludmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uY2hlY2tvdXQtZm9ybSAuZm9ybS1zZWxlY3QuaXMtaW52YWxpZCxcbi5hY2NvdW50LWZvcm0gLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkLFxuLmFjY291bnQtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmlzLWludmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmFjY291bnQtZm9ybSAuaXMtaW52YWxpZC5zZWxlY3QyLXNlbGVjdGlvbixcbi5hY2NvdW50LWZvcm0gLmZvcm0tc2VsZWN0LmlzLWludmFsaWQsXG4ucHJvZHVjdC1mb3JtIC5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZCxcbi5wcm9kdWN0LWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5pcy1pbnZhbGlkLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wcm9kdWN0LWZvcm0gLmlzLWludmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb24sXG4ucHJvZHVjdC1mb3JtIC5mb3JtLXNlbGVjdC5pcy1pbnZhbGlkLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5pcy1pbnZhbGlkLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5pcy1pbnZhbGlkLnNlbGVjdDItc2VsZWN0aW9uLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmZvcm0tc2VsZWN0LmlzLWludmFsaWQsXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuZm9ybS1jb250cm9sLmlzLWludmFsaWQsXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmlzLWludmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLmlzLWludmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb24sXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuZm9ybS1zZWxlY3QuaXMtaW52YWxpZCB7XG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbiAgcGFkZGluZy1yaWdodDogY2FsYygxLjVlbSArIDAuNzVyZW0pO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDEyIDEyJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzZGMzNTQ1JyUzZSUzY2NpcmNsZSBjeD0nNicgY3k9JzYnIHI9JzQuNScvJTNlJTNjcGF0aCBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBkPSdNNS44IDMuNmguNEw2IDYuNXonLyUzZSUzY2NpcmNsZSBjeD0nNicgY3k9JzguMicgcj0nLjYnIGZpbGw9JyUyM2RjMzU0NScgc3Ryb2tlPSdub25lJy8lM2UlM2Mvc3ZnJTNlXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjYWxjKDAuMzc1ZW0gKyAwLjE4NzVyZW0pIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKSBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKTtcbn1cblxuLmZyb250ZW5kLWZvcm0gLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkOmZvY3VzLFxuLmZyb250ZW5kLWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5pcy1pbnZhbGlkLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5mcm9udGVuZC1mb3JtIC5pcy1pbnZhbGlkLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLmZyb250ZW5kLWZvcm0gLmZvcm0tc2VsZWN0LmlzLWludmFsaWQ6Zm9jdXMsXG4uY3VzdG9tZXItZm9ybSAuZm9ybS1jb250cm9sLmlzLWludmFsaWQ6Zm9jdXMsXG4uY3VzdG9tZXItZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmlzLWludmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmN1c3RvbWVyLWZvcm0gLmlzLWludmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4uY3VzdG9tZXItZm9ybSAuZm9ybS1zZWxlY3QuaXMtaW52YWxpZDpmb2N1cyxcbi5jaGVja291dC1mb3JtIC5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZDpmb2N1cyxcbi5jaGVja291dC1mb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuaXMtaW52YWxpZC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuY2hlY2tvdXQtZm9ybSAuaXMtaW52YWxpZC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5jaGVja291dC1mb3JtIC5mb3JtLXNlbGVjdC5pcy1pbnZhbGlkOmZvY3VzLFxuLmFjY291bnQtZm9ybSAuZm9ybS1jb250cm9sLmlzLWludmFsaWQ6Zm9jdXMsXG4uYWNjb3VudC1mb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuaXMtaW52YWxpZC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuYWNjb3VudC1mb3JtIC5pcy1pbnZhbGlkLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLmFjY291bnQtZm9ybSAuZm9ybS1zZWxlY3QuaXMtaW52YWxpZDpmb2N1cyxcbi5wcm9kdWN0LWZvcm0gLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkOmZvY3VzLFxuLnByb2R1Y3QtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmlzLWludmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnByb2R1Y3QtZm9ybSAuaXMtaW52YWxpZC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5wcm9kdWN0LWZvcm0gLmZvcm0tc2VsZWN0LmlzLWludmFsaWQ6Zm9jdXMsXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuZm9ybS1jb250cm9sLmlzLWludmFsaWQ6Zm9jdXMsXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmlzLWludmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmlzLWludmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuZm9ybS1zZWxlY3QuaXMtaW52YWxpZDpmb2N1cyxcbi5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZDpmb2N1cyxcbi5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuaXMtaW52YWxpZC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuaXMtaW52YWxpZC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5mb3JtLXNlbGVjdC5pcy1pbnZhbGlkOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjIwLCA1MywgNjksIDAuMjUpO1xufVxuXG4uZnJvbnRlbmQtZm9ybSAuaW52YWxpZC1mZWVkYmFjayxcbi5mcm9udGVuZC1mb3JtIC5lcnJvci1oZWxwLWJsb2NrLFxuLmZyb250ZW5kLWZvcm0gLnZhbGlkLWZlZWRiYWNrLFxuLmN1c3RvbWVyLWZvcm0gLmludmFsaWQtZmVlZGJhY2ssXG4uY3VzdG9tZXItZm9ybSAuZXJyb3ItaGVscC1ibG9jayxcbi5jdXN0b21lci1mb3JtIC52YWxpZC1mZWVkYmFjayxcbi5jaGVja291dC1mb3JtIC5pbnZhbGlkLWZlZWRiYWNrLFxuLmNoZWNrb3V0LWZvcm0gLmVycm9yLWhlbHAtYmxvY2ssXG4uY2hlY2tvdXQtZm9ybSAudmFsaWQtZmVlZGJhY2ssXG4uYWNjb3VudC1mb3JtIC5pbnZhbGlkLWZlZWRiYWNrLFxuLmFjY291bnQtZm9ybSAuZXJyb3ItaGVscC1ibG9jayxcbi5hY2NvdW50LWZvcm0gLnZhbGlkLWZlZWRiYWNrLFxuLnByb2R1Y3QtZm9ybSAuaW52YWxpZC1mZWVkYmFjayxcbi5wcm9kdWN0LWZvcm0gLmVycm9yLWhlbHAtYmxvY2ssXG4ucHJvZHVjdC1mb3JtIC52YWxpZC1mZWVkYmFjayxcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5pbnZhbGlkLWZlZWRiYWNrLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmVycm9yLWhlbHAtYmxvY2ssXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAudmFsaWQtZmVlZGJhY2ssXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuaW52YWxpZC1mZWVkYmFjayxcbi5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5lcnJvci1oZWxwLWJsb2NrLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLnZhbGlkLWZlZWRiYWNrIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDAuMjVyZW07XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbn1cblxuLmZyb250ZW5kLWZvcm0gLmludmFsaWQtZmVlZGJhY2ssXG4uZnJvbnRlbmQtZm9ybSAuZXJyb3ItaGVscC1ibG9jayxcbi5jdXN0b21lci1mb3JtIC5pbnZhbGlkLWZlZWRiYWNrLFxuLmN1c3RvbWVyLWZvcm0gLmVycm9yLWhlbHAtYmxvY2ssXG4uY2hlY2tvdXQtZm9ybSAuaW52YWxpZC1mZWVkYmFjayxcbi5jaGVja291dC1mb3JtIC5lcnJvci1oZWxwLWJsb2NrLFxuLmFjY291bnQtZm9ybSAuaW52YWxpZC1mZWVkYmFjayxcbi5hY2NvdW50LWZvcm0gLmVycm9yLWhlbHAtYmxvY2ssXG4ucHJvZHVjdC1mb3JtIC5pbnZhbGlkLWZlZWRiYWNrLFxuLnByb2R1Y3QtZm9ybSAuZXJyb3ItaGVscC1ibG9jayxcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5pbnZhbGlkLWZlZWRiYWNrLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmVycm9yLWhlbHAtYmxvY2ssXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuaW52YWxpZC1mZWVkYmFjayxcbi5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5lcnJvci1oZWxwLWJsb2NrIHtcbiAgY29sb3I6ICNkYzM1NDU7XG59XG5cbi5mcm9udGVuZC1mb3JtIC52YWxpZC1mZWVkYmFjayxcbi5jdXN0b21lci1mb3JtIC52YWxpZC1mZWVkYmFjayxcbi5jaGVja291dC1mb3JtIC52YWxpZC1mZWVkYmFjayxcbi5hY2NvdW50LWZvcm0gLnZhbGlkLWZlZWRiYWNrLFxuLnByb2R1Y3QtZm9ybSAudmFsaWQtZmVlZGJhY2ssXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAudmFsaWQtZmVlZGJhY2ssXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAudmFsaWQtZmVlZGJhY2sge1xuICBjb2xvcjogIzE5ODc1NDtcbn1cblxuLmZyb250ZW5kLWZvcm0gLmlzLWludmFsaWQgfiAuaW52YWxpZC1mZWVkYmFjayxcbi5mcm9udGVuZC1mb3JtIC5pcy1pbnZhbGlkIH4gLmVycm9yLWhlbHAtYmxvY2ssXG4uZnJvbnRlbmQtZm9ybSAud2FzLXZhbGlkYXRlZCA6aW52YWxpZCB+IC5pbnZhbGlkLWZlZWRiYWNrLFxuLmZyb250ZW5kLWZvcm0gLndhcy12YWxpZGF0ZWQgOmludmFsaWQgfiAuZXJyb3ItaGVscC1ibG9jayxcbi5jdXN0b21lci1mb3JtIC5pcy1pbnZhbGlkIH4gLmludmFsaWQtZmVlZGJhY2ssXG4uY3VzdG9tZXItZm9ybSAuaXMtaW52YWxpZCB+IC5lcnJvci1oZWxwLWJsb2NrLFxuLmN1c3RvbWVyLWZvcm0gLndhcy12YWxpZGF0ZWQgOmludmFsaWQgfiAuaW52YWxpZC1mZWVkYmFjayxcbi5jdXN0b21lci1mb3JtIC53YXMtdmFsaWRhdGVkIDppbnZhbGlkIH4gLmVycm9yLWhlbHAtYmxvY2ssXG4uY2hlY2tvdXQtZm9ybSAuaXMtaW52YWxpZCB+IC5pbnZhbGlkLWZlZWRiYWNrLFxuLmNoZWNrb3V0LWZvcm0gLmlzLWludmFsaWQgfiAuZXJyb3ItaGVscC1ibG9jayxcbi5jaGVja291dC1mb3JtIC53YXMtdmFsaWRhdGVkIDppbnZhbGlkIH4gLmludmFsaWQtZmVlZGJhY2ssXG4uY2hlY2tvdXQtZm9ybSAud2FzLXZhbGlkYXRlZCA6aW52YWxpZCB+IC5lcnJvci1oZWxwLWJsb2NrLFxuLmFjY291bnQtZm9ybSAuaXMtaW52YWxpZCB+IC5pbnZhbGlkLWZlZWRiYWNrLFxuLmFjY291bnQtZm9ybSAuaXMtaW52YWxpZCB+IC5lcnJvci1oZWxwLWJsb2NrLFxuLmFjY291bnQtZm9ybSAud2FzLXZhbGlkYXRlZCA6aW52YWxpZCB+IC5pbnZhbGlkLWZlZWRiYWNrLFxuLmFjY291bnQtZm9ybSAud2FzLXZhbGlkYXRlZCA6aW52YWxpZCB+IC5lcnJvci1oZWxwLWJsb2NrLFxuLnByb2R1Y3QtZm9ybSAuaXMtaW52YWxpZCB+IC5pbnZhbGlkLWZlZWRiYWNrLFxuLnByb2R1Y3QtZm9ybSAuaXMtaW52YWxpZCB+IC5lcnJvci1oZWxwLWJsb2NrLFxuLnByb2R1Y3QtZm9ybSAud2FzLXZhbGlkYXRlZCA6aW52YWxpZCB+IC5pbnZhbGlkLWZlZWRiYWNrLFxuLnByb2R1Y3QtZm9ybSAud2FzLXZhbGlkYXRlZCA6aW52YWxpZCB+IC5lcnJvci1oZWxwLWJsb2NrLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmlzLWludmFsaWQgfiAuaW52YWxpZC1mZWVkYmFjayxcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5pcy1pbnZhbGlkIH4gLmVycm9yLWhlbHAtYmxvY2ssXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAud2FzLXZhbGlkYXRlZCA6aW52YWxpZCB+IC5pbnZhbGlkLWZlZWRiYWNrLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLndhcy12YWxpZGF0ZWQgOmludmFsaWQgfiAuZXJyb3ItaGVscC1ibG9jayxcbi5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5pcy1pbnZhbGlkIH4gLmludmFsaWQtZmVlZGJhY2ssXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuaXMtaW52YWxpZCB+IC5lcnJvci1oZWxwLWJsb2NrLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLndhcy12YWxpZGF0ZWQgOmludmFsaWQgfiAuaW52YWxpZC1mZWVkYmFjayxcbi5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC53YXMtdmFsaWRhdGVkIDppbnZhbGlkIH4gLmVycm9yLWhlbHAtYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmZyb250ZW5kLWZvcm0gLmlzLXZhbGlkIH4gLnZhbGlkLWZlZWRiYWNrLFxuLmZyb250ZW5kLWZvcm0gLndhcy12YWxpZGF0ZWQgOnZhbGlkIH4gLnZhbGlkLWZlZWRiYWNrLFxuLmN1c3RvbWVyLWZvcm0gLmlzLXZhbGlkIH4gLnZhbGlkLWZlZWRiYWNrLFxuLmN1c3RvbWVyLWZvcm0gLndhcy12YWxpZGF0ZWQgOnZhbGlkIH4gLnZhbGlkLWZlZWRiYWNrLFxuLmNoZWNrb3V0LWZvcm0gLmlzLXZhbGlkIH4gLnZhbGlkLWZlZWRiYWNrLFxuLmNoZWNrb3V0LWZvcm0gLndhcy12YWxpZGF0ZWQgOnZhbGlkIH4gLnZhbGlkLWZlZWRiYWNrLFxuLmFjY291bnQtZm9ybSAuaXMtdmFsaWQgfiAudmFsaWQtZmVlZGJhY2ssXG4uYWNjb3VudC1mb3JtIC53YXMtdmFsaWRhdGVkIDp2YWxpZCB+IC52YWxpZC1mZWVkYmFjayxcbi5wcm9kdWN0LWZvcm0gLmlzLXZhbGlkIH4gLnZhbGlkLWZlZWRiYWNrLFxuLnByb2R1Y3QtZm9ybSAud2FzLXZhbGlkYXRlZCA6dmFsaWQgfiAudmFsaWQtZmVlZGJhY2ssXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuaXMtdmFsaWQgfiAudmFsaWQtZmVlZGJhY2ssXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAud2FzLXZhbGlkYXRlZCA6dmFsaWQgfiAudmFsaWQtZmVlZGJhY2ssXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuaXMtdmFsaWQgfiAudmFsaWQtZmVlZGJhY2ssXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAud2FzLXZhbGlkYXRlZCA6dmFsaWQgfiAudmFsaWQtZmVlZGJhY2sge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmZyb250ZW5kLWZvcm0gLmZvcm0tdGV4dCxcbi5jdXN0b21lci1mb3JtIC5mb3JtLXRleHQsXG4uY2hlY2tvdXQtZm9ybSAuZm9ybS10ZXh0LFxuLmFjY291bnQtZm9ybSAuZm9ybS10ZXh0LFxuLnByb2R1Y3QtZm9ybSAuZm9ybS10ZXh0LFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmZvcm0tdGV4dCxcbi5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5mb3JtLXRleHQge1xuICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIGNvbG9yOiAjNmM3NTdkO1xufVxuXG4uaW5wdXQtZ3JvdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5pbnB1dC1ncm91cCA+IC5zZWxlY3QyLXNlbGVjdGlvbixcbi5pbnB1dC1ncm91cCA+IC5mb3JtLXNlbGVjdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleDogMSAxIGF1dG87XG4gIHdpZHRoOiAxJTtcbiAgbWluLXdpZHRoOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sOmZvY3VzLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5pbnB1dC1ncm91cCA+IC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5pbnB1dC1ncm91cCA+IC5mb3JtLXNlbGVjdDpmb2N1cyB7XG4gIHotaW5kZXg6IDM7XG59XG5cbi5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtdGV4dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuNDc1cmVtIDAuODVyZW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RhZDlkOTtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDUgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDUgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSxcbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSxcbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUge1xuICBoZWlnaHQ6IDQycHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkYWQ5ZDk7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA1IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlOmZvY3VzLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA1IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGU6Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGU6Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZTpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZTpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMUUxRTU2O1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMzAsIDMwLCA4NiwgMC4yNSk7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNSAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSxcbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gIHBhZGRpbmc6IDAuNDc1cmVtIDAuODVyZW07XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNSAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkLFxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA1IC5zZWxlY3QyLWRyb3Bkb3duLFxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLWRyb3Bkb3duLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLWRyb3Bkb3duIHtcbiAgYm9yZGVyLWNvbG9yOiAjZGFkOWQ5O1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNSAuc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VhcmNoLS1kcm9wZG93biAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24gLnNlbGVjdDItc2VhcmNoX19maWVsZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkYWQ5ZDk7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cblxuLmRyb3Bkb3duIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUge1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSA0MHB4KTtcbn1cblxuLmRyb3Bkb3duIC5kcm9wZG93bi1tZW51Lm5vdGlmaWNhdGlvbkRyb3Bkb3duIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmRyb3Bkb3duIC5kcm9wZG93bi1tZW51Lm5vdGlmaWNhdGlvbkRyb3Bkb3duIC5ub3RpZmljYXRpb24tbGlzdCB7XG4gIG1heC1oZWlnaHQ6IDQwMHB4O1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG59XG5cbi50b3AtdXNlci1wcm9maWxlIC5kcm9wZG93bi1tZW51IHtcbiAgbWluLXdpZHRoOiAyMDBweDtcbn1cblxuLmhlYWRlci1jYXJ0LXdyYXBwZXIgLmRyb3Bkb3duLW1lbnUge1xuICBtaW4td2lkdGg6IDMyMHB4O1xufVxuXG4uaGVhZGVyLWNhcnQtd3JhcHBlciAuZHJvcGRvd24tbWVudSAuY2FydC1kcm9wZG93bi1jb250ZW50IHtcbiAgbWF4LWhlaWdodDogNDAwcHg7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IDEwcHggIWltcG9ydGFudDtcbiAgICByaWdodDogMTBweCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG59XG5cbi5kcm9wZG93bi1tZW51IHtcbiAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBcIlNvdXJjZSBTYW5zIFByb1wiLCBzYW5zLXNlcmlmO1xufVxuXG4uZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbSB7XG4gIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgXCJTb3VyY2UgU2FucyBQcm9cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBjb2xvcjogIzMzMztcbn1cblxuLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW0gaSB7XG4gIHdpZHRoOiAyMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1pdGVtOmhvdmVyLFxuLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW06Zm9jdXMge1xuICBjb2xvcjogIzAwMDtcbn1cblxuLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWhlYWRlciB7XG4gIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgXCJTb3VyY2UgU2FucyBQcm9cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBmb250LXdlaWdodDogNjAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gIGNvbG9yOiAjNmM3NTdkO1xufVxuXG4udG9wLXVzZXItcHJvZmlsZSAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbSB7XG4gIHBhZGRpbmc6IDAuNXJlbSAxLjI1cmVtO1xufVxuXG4ubm90aWZpY2F0aW9uRHJvcGRvd24gLmRyb3Bkb3duLWhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIGNvbG9yOiAjMzMzO1xufVxuXG4ubm90aWZpY2F0aW9uRHJvcGRvd24gLmRyb3Bkb3duLWhlYWRlciAuYnRuLWxpbmsge1xuICBmb250LXNpemU6IDEzcHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi5ub3RpZmljYXRpb25Ecm9wZG93biAuZnJvbnRlbmQtbm90aWZpY2F0aW9uLWl0ZW0gaDUsXG4ubm90aWZpY2F0aW9uRHJvcGRvd24gLmZyb250ZW5kLW5vdGlmaWNhdGlvbi1pdGVtIC5oNSB7XG4gIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgXCJTb3VyY2UgU2FucyBQcm9cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xufVxuXG4ubm90aWZpY2F0aW9uRHJvcGRvd24gLmZyb250ZW5kLW5vdGlmaWNhdGlvbi1pdGVtIGg1LmZ3LWJvbGQsXG4ubm90aWZpY2F0aW9uRHJvcGRvd24gLmZyb250ZW5kLW5vdGlmaWNhdGlvbi1pdGVtIC5mdy1ib2xkLmg1IHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLm5vdGlmaWNhdGlvbkRyb3Bkb3duIC5mcm9udGVuZC1ub3RpZmljYXRpb24taXRlbSBwIHtcbiAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBcIlNvdXJjZSBTYW5zIFByb1wiLCBzYW5zLXNlcmlmO1xufVxuXG4ubm90aWZpY2F0aW9uRHJvcGRvd24gLmZyb250ZW5kLW5vdGlmaWNhdGlvbi1pdGVtIHAuc21hbGwge1xuICBmb250LXNpemU6IDEzcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi5ub3RpZmljYXRpb25Ecm9wZG93biAuZnJvbnRlbmQtbm90aWZpY2F0aW9uLWl0ZW0gcC5zbWFsbDpsYXN0LWNoaWxkIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBvcGFjaXR5OiAwLjg7XG59XG5cbi5ub3RpZmljYXRpb25Ecm9wZG93biAuZHJvcGRvd24taXRlbS50ZXh0LWNlbnRlciB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbn1cblxuLmhlYWRlci1jYXJ0LXdyYXBwZXIgLmRyb3Bkb3duLW1lbnUgLmNhcnQtaXRlbSB7XG4gIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgXCJTb3VyY2UgU2FucyBQcm9cIiwgc2Fucy1zZXJpZjtcbn1cblxuLmhlYWRlci1jYXJ0LXdyYXBwZXIgLmRyb3Bkb3duLW1lbnUgLmNhcnQtaXRlbSAuaXRlbS1uYW1lIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBjb2xvcjogIzMzMztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uaGVhZGVyLWNhcnQtd3JhcHBlciAuZHJvcGRvd24tbWVudSAuY2FydC1pdGVtIC5pdGVtLW5hbWU6aG92ZXIge1xuICBjb2xvcjogIzAwMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5oZWFkZXItY2FydC13cmFwcGVyIC5kcm9wZG93bi1tZW51IC5jYXJ0LWl0ZW0gLml0ZW0tZGV0YWlscyB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG5cbi5oZWFkZXItY2FydC13cmFwcGVyIC5kcm9wZG93bi1tZW51IC5jYXJ0LWl0ZW0gLml0ZW0tZGV0YWlscyAuaXRlbS1wcmljZSB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAjMzMzO1xufVxuXG4uaGVhZGVyLWNhcnQtd3JhcHBlciAuZHJvcGRvd24tbWVudSAuY2FydC1pdGVtIC5pdGVtLWRldGFpbHMgLml0ZW0tdHlwZSB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbn1cblxuLmhlYWRlci1jYXJ0LXdyYXBwZXIgLmRyb3Bkb3duLW1lbnUgLmNhcnQtaXRlbSAucXVhbnRpdHktY29udHJvbHMge1xuICBmb250LXNpemU6IDEzcHg7XG59XG5cbi5oZWFkZXItY2FydC13cmFwcGVyIC5kcm9wZG93bi1tZW51IC5jYXJ0LWl0ZW0gLnF1YW50aXR5LWNvbnRyb2xzIGlucHV0IHtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBmb250LWZhbWlseTogXCJQb3BwaW5zXCIsIFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG59XG5cbi5oZWFkZXItY2FydC13cmFwcGVyIC5kcm9wZG93bi1tZW51IC5jYXJ0LXN1bW1hcnkgaDYsXG4uaGVhZGVyLWNhcnQtd3JhcHBlciAuZHJvcGRvd24tbWVudSAuY2FydC1zdW1tYXJ5IC5oNiB7XG4gIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgXCJTb3VyY2UgU2FucyBQcm9cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG59XG5cbi5oZWFkZXItY2FydC13cmFwcGVyIC5kcm9wZG93bi1tZW51IC5jYXJ0LXN1bW1hcnkgLnN1YnRvdGFsLXJvdyB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLmhlYWRlci1jYXJ0LXdyYXBwZXIgLmRyb3Bkb3duLW1lbnUgLmNhcnQtc3VtbWFyeSAuc3VidG90YWwtcm93IC5zdWJ0b3RhbC1sYWJlbCB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi5oZWFkZXItY2FydC13cmFwcGVyIC5kcm9wZG93bi1tZW51IC5jYXJ0LXN1bW1hcnkgLnN1YnRvdGFsLXJvdyAuc3VidG90YWwtYW1vdW50IHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmhlYWRlci1jYXJ0LXdyYXBwZXIgLmRyb3Bkb3duLW1lbnUgLmJ0biB7XG4gIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgXCJTb3VyY2UgU2FucyBQcm9cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG4uaGVhZGVyLWNhcnQtd3JhcHBlciAuZHJvcGRvd24tbWVudSAuZW1wdHktY2FydC1tZXNzYWdlIHtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4uaGVhZGVyLWNhcnQtd3JhcHBlciAuZHJvcGRvd24tbWVudSAuZW1wdHktY2FydC1tZXNzYWdlIGkge1xuICBmb250LXNpemU6IDMycHg7XG59XG5cbi5oZWFkZXItY2FydC13cmFwcGVyIC5kcm9wZG93bi1tZW51IC5jYXJ0LWxvYWRpbmcgcCB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbn1cblxuLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWRpdmlkZXIge1xuICBtYXJnaW46IDAuNXJlbSAwO1xufVxuXG4uZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbS5kaXNhYmxlZCxcbi5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1pdGVtOmRpc2FibGVkIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBvcGFjaXR5OiAwLjY7XG59XG5cbi5kcm9wZG93bi1tZW51IC5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMTNweCAhaW1wb3J0YW50O1xufVxuXG4uZHJvcGRvd24tbWVudSAudGV4dC1tdXRlZCB7XG4gIGNvbG9yOiAjNmM3NTdkICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIHBhZGRpbmc6IDAuNzVyZW0gMS4yNXJlbTtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1oZWFkZXIge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxuXG4gIC5ub3RpZmljYXRpb25Ecm9wZG93biAuZnJvbnRlbmQtbm90aWZpY2F0aW9uLWl0ZW0gaDUsXG4gIC5ub3RpZmljYXRpb25Ecm9wZG93biAuZnJvbnRlbmQtbm90aWZpY2F0aW9uLWl0ZW0gLmg1IHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gIH1cblxuICAubm90aWZpY2F0aW9uRHJvcGRvd24gLmZyb250ZW5kLW5vdGlmaWNhdGlvbi1pdGVtIHAuc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxuXG4gIC5oZWFkZXItY2FydC13cmFwcGVyIC5kcm9wZG93bi1tZW51IC5pdGVtLW5hbWUge1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgfVxuXG4gIC5oZWFkZXItY2FydC13cmFwcGVyIC5kcm9wZG93bi1tZW51IC5pdGVtLWRldGFpbHMge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxufVxuXG4ud2lzaGxpc3QtdG9nZ2xlLWJ0biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbn1cblxuLndpc2hsaXN0LXRvZ2dsZS1idG46bm90KC53aXNobGlzdGVkKSB7XG4gIGJvcmRlcjogMnB4IHNvbGlkICM2Yzc1N2Q7XG4gIGNvbG9yOiAjZGMzNTQ1O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4ud2lzaGxpc3QtdG9nZ2xlLWJ0bjpub3QoLndpc2hsaXN0ZWQpOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgYm9yZGVyLWNvbG9yOiAjNWE2MjY4O1xuICBjb2xvcjogI2RjMzU0NTtcbn1cblxuLndpc2hsaXN0LXRvZ2dsZS1idG46bm90KC53aXNobGlzdGVkKTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDEwOCwgMTE3LCAxMjUsIDAuMjUpO1xufVxuXG4ud2lzaGxpc3QtdG9nZ2xlLWJ0bi53aXNobGlzdGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAycHggc29saWQgI2RjMzU0NTtcbiAgY29sb3I6ICNkYzM1NDU7XG59XG5cbi53aXNobGlzdC10b2dnbGUtYnRuLndpc2hsaXN0ZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlZWYwO1xuICBib3JkZXItY29sb3I6ICNkYzM1NDU7XG4gIGNvbG9yOiAjZGMzNTQ1O1xufVxuXG4ud2lzaGxpc3QtdG9nZ2xlLWJ0bi53aXNobGlzdGVkOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjIwLCA1MywgNjksIDAuMjUpO1xufVxuXG4ud2lzaGxpc3QtdG9nZ2xlLWJ0bi53aXNobGlzdC1sb2FkaW5nIHtcbiAgb3BhY2l0eTogMC43O1xuICBjdXJzb3I6IHdhaXQ7XG59XG5cbi53aXNobGlzdC10b2dnbGUtYnRuIGkge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlO1xufVxuXG4ud2lzaGxpc3QtdG9nZ2xlLWJ0biBpLndpc2hsaXN0LXB1bHNlIHtcbiAgYW5pbWF0aW9uOiB3aXNobGlzdC1wdWxzZSAwLjVzIGVhc2U7XG59XG5cbi53aXNobGlzdC10b2dnbGUtYnRuLmJ0bi1sZyxcbi5idG4tZ3JvdXAtbGcgPiAud2lzaGxpc3QtdG9nZ2xlLWJ0bi5idG4ge1xuICBmb250LXdlaWdodDogNTAwO1xuICBwYWRkaW5nOiAwLjZyZW0gMS41cmVtO1xufVxuXG4ud2lzaGxpc3QtdG9nZ2xlLWJ0bi5idG4tbGcgaSxcbi5idG4tZ3JvdXAtbGcgPiAud2lzaGxpc3QtdG9nZ2xlLWJ0bi5idG4gaSB7XG4gIG1hcmdpbi1yaWdodDogMC4zNzVyZW07XG59XG5cbi53aXNobGlzdC10b2dnbGUtYnRuLmJ0bi1zbSxcbi5idG4tZ3JvdXAtc20gPiAud2lzaGxpc3QtdG9nZ2xlLWJ0bi5idG4ge1xuICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xufVxuXG5Aa2V5ZnJhbWVzIHdpc2hsaXN0LXB1bHNlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cblxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4zKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cblxuLnByb2R1Y3QtY2FyZC1ncmlkIC53aXNobGlzdC10b2dnbGUtYnRuIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDAuNXJlbTtcbiAgcmlnaHQ6IDAuNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIHBhZGRpbmc6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xufVxuXG4ucHJvZHVjdC1jYXJkLWdyaWQgLndpc2hsaXN0LXRvZ2dsZS1idG46bm90KC53aXNobGlzdGVkKSB7XG4gIGJvcmRlci1jb2xvcjogIzZjNzU3ZDtcbiAgY29sb3I6ICNkYzM1NDU7XG59XG5cbi5wcm9kdWN0LWNhcmQtZ3JpZCAud2lzaGxpc3QtdG9nZ2xlLWJ0bjpub3QoLndpc2hsaXN0ZWQpOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgYm9yZGVyLWNvbG9yOiAjNWE2MjY4O1xuICBjb2xvcjogI2RjMzU0NTtcbn1cblxuLnByb2R1Y3QtY2FyZC1ncmlkIC53aXNobGlzdC10b2dnbGUtYnRuLndpc2hsaXN0ZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6ICNkYzM1NDU7XG4gIGNvbG9yOiAjZGMzNTQ1O1xufVxuXG4ucHJvZHVjdC1jYXJkLWdyaWQgLndpc2hsaXN0LXRvZ2dsZS1idG4ud2lzaGxpc3RlZCBpIHtcbiAgY29sb3I6ICNkYzM1NDU7XG59XG5cbi5wcm9kdWN0LWNhcmQtbGlzdCAud2lzaGxpc3QtdG9nZ2xlLWJ0biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cblxuLndpc2hsaXN0LWRyb3Bkb3duLWNvbnRlbnQgLndpc2hsaXN0LXRvZ2dsZS1idG4ge1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbn1cblxuLmZpbHRlci1mb3JtIC5maWx0ZXItYXV0b2NvbXBsZXRlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZmlsdGVyLWZvcm0gLmZpbHRlci1hdXRvY29tcGxldGUgLmZpbHRlci1pbnB1dC13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZmlsdGVyLWZvcm0gLmZpbHRlci1hdXRvY29tcGxldGUgLmZpbHRlci1pbnB1dC13cmFwcGVyIC5maWx0ZXItc2VhcmNoLWlucHV0IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xufVxuXG4uZmlsdGVyLWZvcm0gLmZpbHRlci1hdXRvY29tcGxldGUgLmZpbHRlci1pbnB1dC13cmFwcGVyIC5maWx0ZXItc2VhcmNoLWlucHV0OmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjODZiN2ZlO1xufVxuXG4uZmlsdGVyLWZvcm0gLmZpbHRlci1hdXRvY29tcGxldGUgLmZpbHRlci1pbnB1dC13cmFwcGVyIC5maWx0ZXItc2VhcmNoLWlucHV0OmZvY3VzIHtcbiAgY3Vyc29yOiB0ZXh0O1xuICBib3JkZXItY29sb3I6ICM4NmI3ZmU7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgxMywgMTEwLCAyNTMsIDAuMjUpO1xufVxuXG4uZmlsdGVyLWZvcm0gLmZpbHRlci1hdXRvY29tcGxldGUgLmZpbHRlci1pbnB1dC13cmFwcGVyIC5maWx0ZXItZHJvcGRvd24taWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDEwcHg7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzO1xuICBwb2ludGVyLWV2ZW50czogYWxsO1xufVxuXG4uZmlsdGVyLWZvcm0gLmZpbHRlci1hdXRvY29tcGxldGUgLmZpbHRlci1zdWdnZXN0aW9ucy1kcm9wZG93biB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogMTA1MDtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwLjI1cmVtIDAuMjVyZW07XG4gIG1heC1oZWlnaHQ6IDI1MHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBub25lO1xuICBib3gtc2hhZG93OiAwIDRweCA2cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuXG4uZmlsdGVyLWZvcm0gLmZpbHRlci1hdXRvY29tcGxldGUgLmZpbHRlci1zdWdnZXN0aW9ucy1kcm9wZG93bi5zaG93IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5maWx0ZXItZm9ybSAuZmlsdGVyLWF1dG9jb21wbGV0ZSAuZmlsdGVyLXN1Z2dlc3Rpb25zLWRyb3Bkb3duLnNob3cgfiAuZmlsdGVyLWlucHV0LXdyYXBwZXIgLmZpbHRlci1kcm9wZG93bi1pY29uIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgxODBkZWcpO1xufVxuXG4uZmlsdGVyLWZvcm0gLmZpbHRlci1hdXRvY29tcGxldGUgLmZpbHRlci1zdWdnZXN0aW9ucy1kcm9wZG93biAuc3VnZ2VzdGlvbnMtbGlzdCB7XG4gIG1heC1oZWlnaHQ6IDI1MHB4O1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4uZmlsdGVyLWZvcm0gLmZpbHRlci1hdXRvY29tcGxldGUgLmZpbHRlci1zdWdnZXN0aW9ucy1kcm9wZG93biAuc3VnZ2VzdGlvbnMtbGlzdCAuc3VnZ2VzdGlvbi1pdGVtIHtcbiAgcGFkZGluZzogMC41cmVtIDAuNzVyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cztcbn1cblxuLmZpbHRlci1mb3JtIC5maWx0ZXItYXV0b2NvbXBsZXRlIC5maWx0ZXItc3VnZ2VzdGlvbnMtZHJvcGRvd24gLnN1Z2dlc3Rpb25zLWxpc3QgLnN1Z2dlc3Rpb24taXRlbTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG59XG5cbi5maWx0ZXItZm9ybSAuZmlsdGVyLWF1dG9jb21wbGV0ZSAuZmlsdGVyLXN1Z2dlc3Rpb25zLWRyb3Bkb3duIC5zdWdnZXN0aW9ucy1saXN0IC5zdWdnZXN0aW9uLWl0ZW0gc3Ryb25nIHtcbiAgY29sb3I6ICMwZDZlZmQ7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5maWx0ZXItZm9ybSAuZmlsdGVyLWF1dG9jb21wbGV0ZSAuZmlsdGVyLXN1Z2dlc3Rpb25zLWRyb3Bkb3duLnNob3cgfiAuZmlsdGVyLWlucHV0LXdyYXBwZXIgLmZpbHRlci1zZWFyY2gtaW5wdXQge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5maWx0ZXItZm9ybSAuZmlsdGVyLW1vYmlsZS1zZWxlY3QgLm1vYmlsZS1maWx0ZXItc2VsZWN0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmZpbHRlci1mb3JtIC5zZWxlY3RlZC10YWdzIHtcbiAgbWluLWhlaWdodDogMDtcbn1cblxuLmZpbHRlci1mb3JtIC5zZWxlY3RlZC10YWdzIC5iYWRnZSB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIHBhZGRpbmc6IDAuMzc1cmVtIDAuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuLmZpbHRlci1mb3JtIC5zZWxlY3RlZC10YWdzIC5iYWRnZSAuYnRuLWNsb3NlIHtcbiAgd2lkdGg6IDAuNWVtO1xuICBoZWlnaHQ6IDAuNWVtO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kLXNpemU6IDAuNWVtO1xuICBvcGFjaXR5OiAwLjc1O1xufVxuXG4uZmlsdGVyLWZvcm0gLnNlbGVjdGVkLXRhZ3MgLmJhZGdlIC5idG4tY2xvc2U6aG92ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmZpbHRlci1mb3JtIC5maWx0ZXItYXV0b2NvbXBsZXRlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmlsdGVyLWZvcm0gLmZpbHRlci1tb2JpbGUtc2VsZWN0IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZmlsdGVyLWZvcm0gLmZpbHRlci1hdXRvY29tcGxldGUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmlsdGVyLWZvcm0gLmZpbHRlci1tb2JpbGUtc2VsZWN0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnRvcC1idXR0b25zID4gKiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4udG9wLWJ1dHRvbnMgLmJ0bi1saW5rIHtcbiAgd2lkdGg6IDM1cHg7XG4gIGhlaWdodDogMzVweDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzO1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi50b3AtYnV0dG9ucyAuYnRuLWxpbms6aG92ZXIge1xuICBvcGFjaXR5OiAwLjg7XG59XG5cbi50b3AtYnV0dG9ucyAubm90aWZpY2F0aW9uQnRuIC5iYWRnZSB7XG4gIGZvbnQtc2l6ZTogMC42MjVyZW07XG4gIHBhZGRpbmc6IDAuMjVlbSAwLjRlbTtcbiAgbWluLXdpZHRoOiAxOHB4O1xuICBoZWlnaHQ6IDE4cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4udG9wLWJ1dHRvbnMgLnRvcC11c2VyLXByb2ZpbGUgLmJ0bi1saW5rIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnRvcC1idXR0b25zIC50b3AtdXNlci1wcm9maWxlIC5idG4tbGluayBpbWcsXG4udG9wLWJ1dHRvbnMgLnRvcC11c2VyLXByb2ZpbGUgLmJ0bi1saW5rIC51c2VyLWRyb3Bkb3duIHtcbiAgd2lkdGg6IDM1cHg7XG4gIGhlaWdodDogMzVweDtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgYm9yZGVyOiAycHggc29saWQgI2FhYTtcbn1cblxuLnRvcC1idXR0b25zIC5oZWFkZXItY2FydC13cmFwcGVyIC5jYXJ0LWljb24ge1xuICB3aWR0aDogMzVweDtcbiAgaGVpZ2h0OiAzNXB4O1xufVxuXG4udG9wLWJ1dHRvbnMgLmhlYWRlci1jYXJ0LXdyYXBwZXIgLmNhcnQtY291bnQtYmFkZ2Uge1xuICBmb250LXNpemU6IDAuNjI1cmVtO1xuICBwYWRkaW5nOiAwLjI1ZW0gMC40ZW07XG4gIG1pbi13aWR0aDogMThweDtcbiAgaGVpZ2h0OiAxOHB4O1xufVxuXG4udG9wLWJ1dHRvbnMgZm9ybVt0aXRsZSo9UmV0dXJuXSAuYnRuLWxpbmssXG4udG9wLWJ1dHRvbnMgZm9ybVt0aXRsZSo9XCJTdG9wIEltcGVyc29uYXRpbmdcIl0gLmJ0bi1saW5rLFxuLnRvcC1idXR0b25zIGFbdGl0bGUqPVJldHVybl0gLmJ0bi1saW5rLFxuLnRvcC1idXR0b25zIGFbdGl0bGUqPVwiU3RvcCBJbXBlcnNvbmF0aW5nXCJdIC5idG4tbGluayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmMxMDcgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbn1cblxuLnRvcC1idXR0b25zIGZvcm1bdGl0bGUqPVJldHVybl0gLmJ0bi1saW5rOmhvdmVyLFxuLnRvcC1idXR0b25zIGZvcm1bdGl0bGUqPVwiU3RvcCBJbXBlcnNvbmF0aW5nXCJdIC5idG4tbGluazpob3Zlcixcbi50b3AtYnV0dG9ucyBhW3RpdGxlKj1SZXR1cm5dIC5idG4tbGluazpob3Zlcixcbi50b3AtYnV0dG9ucyBhW3RpdGxlKj1cIlN0b3AgSW1wZXJzb25hdGluZ1wiXSAuYnRuLWxpbms6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZiMzAwICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudG9wLWJ1dHRvbnMge1xuICAgIGdhcDogMC43NXJlbSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5vcmRlci1jYXJkIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLm9yZGVyLWNhcmQgLmNhcmQge1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuM3MgZWFzZTtcbn1cblxuLm9yZGVyLWNhcmQgLmNhcmQ6aG92ZXIge1xuICBib3gtc2hhZG93OiAwIDAuNXJlbSAxcmVtIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG5cbi5vcmRlci1pdGVtLXRodW1iIHtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG59XG5cbi5vcmRlci1pdGVtLXRodW1iLXBsYWNlaG9sZGVyIHtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjb2xvcjogIzZjNzU3ZDtcbn1cblxuLm9yZGVyLWl0ZW0tbW9yZSB7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogIzZjNzU3ZDtcbn1cblxuLyoqXG4gKiBGaWx0ZXIgRm9ybSBDb21wb25lbnQgU3R5bGVzXG4gKi9cblxuLmZpbHRlci1zaWRlYmFyLWNhcmQgLmZpbHRlci1zZWN0aW9uIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlOWVjZWY7XG59XG5cbi5maWx0ZXItc2lkZWJhci1jYXJkIC5maWx0ZXItc2VjdGlvbjpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLmZpbHRlci1zaWRlYmFyLWNhcmQgLmZpbHRlci1zZWN0aW9uIC5hY2NvcmRpb24taGVhZGVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2U7XG59XG5cbi5maWx0ZXItc2lkZWJhci1jYXJkIC5maWx0ZXItc2VjdGlvbiAuYWNjb3JkaW9uLWhlYWRlcjpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNmOGY5ZmE7XG59XG5cbi5maWx0ZXItc2lkZWJhci1jYXJkIC5maWx0ZXItc2VjdGlvbiAuYWNjb3JkaW9uLWhlYWRlciAuZmEtY2hldnJvbi1kb3duLFxuLmZpbHRlci1zaWRlYmFyLWNhcmQgLmZpbHRlci1zZWN0aW9uIC5hY2NvcmRpb24taGVhZGVyIC5mYS1jaGV2cm9uLXVwIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTtcbn1cblxuLmZpbHRlci1zaWRlYmFyLWNhcmQgLmZpbHRlci1zZWN0aW9uIC5hY2NvcmRpb24tYm9keSB7XG4gIHBhZGRpbmc6IDAgMXJlbSAxcmVtO1xufVxuXG4uZmlsdGVyLXNpZGViYXItY2FyZCAuZmlsdGVyLXNlY3Rpb24gLmxpc3QtdW5zdHlsZWQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uZmlsdGVyLXNpZGViYXItY2FyZCAuZmlsdGVyLXNlY3Rpb24gLmxpc3QtdW5zdHlsZWQgbGkge1xuICBwYWRkaW5nOiAwLjI1cmVtIDA7XG59XG5cbi5maWx0ZXItc2lkZWJhci1jYXJkIC5maWx0ZXItc2VjdGlvbiAuZm9ybS1jaGVjayB7XG4gIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbi5maWx0ZXItc2lkZWJhci1jYXJkIC5maWx0ZXItc2VjdGlvbiAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dCB7XG4gIG1hcmdpbi10b3A6IDAuM3JlbTtcbn1cblxuLmZpbHRlci1zaWRlYmFyLWNhcmQgLmZpbHRlci1zZWN0aW9uIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgZm9udC1zaXplOiAwLjk1cmVtO1xuICBjb2xvcjogIzQ5NTA1NztcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uZmlsdGVyLXNpZGViYXItY2FyZCAuZmlsdGVyLXNlY3Rpb24gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2stbGFiZWw6aG92ZXIge1xuICBjb2xvcjogIzIxMjUyOTtcbn1cblxuLmZpbHRlci1zaWRlYmFyLWNhcmQgLmZpbHRlci1zZWN0aW9uIGg2LFxuLmZpbHRlci1zaWRlYmFyLWNhcmQgLmZpbHRlci1zZWN0aW9uIC5oNiB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5maWx0ZXItc2lkZWJhci1jYXJkIC5maWx0ZXItc2VjdGlvbiAuY29sbGFwc2Uge1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xufVxuXG4uZmlsdGVyLXByaWNlLWlucHV0cyAuaW5wdXQtZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuZmlsdGVyLXNpZGViYXItY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxufVxuXG4vKipcbiAqIEhvbWUgUGFnZSBTdHlsZXNcbiAqIFN0eWxlcyBzcGVjaWZpYyB0byB0aGUgaG9tZXBhZ2Ugd2l0aCBCb290c3RyYXAgNVxuICovXG5cbi5wYWdlX2lzX2hvbWVfcGFnZSB7XG4gIC8qIENpcmNsZSAqL1xuICAvKiBTcXVhcmUgKi9cbiAgLyogU3F1YXJlIHdpdGggcm91bmRlZCBjb3JuZXJzICovXG4gIC8qIFJlY3RhbmdsZSAqL1xuICAvKiBFbGxpcHNlICovXG4gIC8qIFRlYXJkcm9wICovXG4gIC8qIEhlYXJ0ICovXG4gIC0tbHV4dXJ5LWdvbGQ6ICNkNGFmMzc7XG4gIC0tc29mdC1jcmVhbTogI2ZhZjlmNjtcbiAgLS1kZWVwLWNoYXJjb2FsOiAjMmMyYzJjO1xuICAtLXdhcm0tZ3JheTogIzZiNmI2Yjtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5vYmplY3QtZml0LWNvdmVyIHtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIG1pbi1oZWlnaHQ6IDQwMHB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5vYmplY3QtZml0LWNvdmVyIHtcbiAgICBtaW4taGVpZ2h0OiAyNTBweDtcbiAgfVxufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLmJhZGdlIHtcbiAgYW5pbWF0aW9uOiBmYWRlSW5VcCAwLjVzIGVhc2Utb3V0O1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLnNoYXBlLWltYWdlLXdyYXBwZXIge1xuICBoZWlnaHQ6IDYwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLnNoYXBlLWljb24ge1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZm9udC1zaXplOiAycmVtO1xuICBjb2xvcjogdmFyKC0tYnMtZ3JheS02MDApO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1icy1ncmF5LTEwMCk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5zaGFwZS1yb3VuZCAuZmEtZ2VtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2E1XCI7XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAuc2hhcGUtcHJpbmNlc3MgLmZhLWdlbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjOFwiO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLnNoYXBlLWN1c2hpb24gLmZhLWdlbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ2NlwiO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLnNoYXBlLWVtZXJhbGQgLmZhLWdlbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFiMlwiO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLnNoYXBlLW92YWwgLmZhLWdlbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjExMVwiO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLnNoYXBlLXBlYXIgLmZhLWdlbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA0M1wiO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLnNoYXBlLWhlYXJ0IC5mYS1nZW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMDRcIjtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5uYXYtcGlsbHMgLm5hdi1saW5rIHtcbiAgY29sb3I6IHZhcigtLWJzLWdyYXktNjAwKTtcbiAgYm9yZGVyLXJhZGl1czogNTByZW07XG4gIHBhZGRpbmc6IDAuNXJlbSAxLjVyZW07XG4gIG1hcmdpbjogMCAwLjI1cmVtO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLm5hdi1waWxscyAubmF2LWxpbms6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1ncmF5LTEwMCk7XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAubmF2LXBpbGxzIC5uYXYtbGluay5hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5ob21lLWhlcm8tc2VjdGlvbi1ob21lcGFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAyNTBweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjAwcHgpIHtcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5ob21lLWhlcm8tc2VjdGlvbi1ob21lcGFnZSB7XG4gICAgaGVpZ2h0OiAzNDBweDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuaG9tZS1oZXJvLXNlY3Rpb24taG9tZXBhZ2Uge1xuICAgIGhlaWdodDogMzcwcHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAwcHgpIHtcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5ob21lLWhlcm8tc2VjdGlvbi1ob21lcGFnZSB7XG4gICAgaGVpZ2h0OiA0MDBweDtcbiAgfVxufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLmhvbWUtaGVyby1zZWN0aW9uLWhvbWVwYWdlIC5tYWluLWhlYWRpbmctdG9wIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjM1LCAyMzUsIDI0MiwgMCk7XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAuaG9tZS1oZXJvLXNlY3Rpb24taG9tZXBhZ2UgLmJhbm5lcnRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB3aWR0aDogNDclO1xuICBsZWZ0OiAyLjI1JTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMHB4LCAtNTIlKTtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5ob21lLWhlcm8tc2VjdGlvbi1ob21lcGFnZSAuYmFubmVydGV4dCAuYmFubmVydGV4dC1oZWFkaW5nIHtcbiAgZm9udC1zaXplOiA0NS41cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgZm9udC1mYW1pbHk6IFwiUGxheWZhaXIgRGlzcGxheVwiLCBzZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5ob21lLWhlcm8tc2VjdGlvbi1ob21lcGFnZSAuYmFubmVydGV4dCAuYmFubmVydGV4dC1oZWFkaW5nIC5saW5lZ3JlZDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWcvaG9tZS9saW5lZ3JhZC5wbmcpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAyNTBweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgei1pbmRleDogMTtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAxMHB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvdHRvbTogMDtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5ob21lLWhlcm8tc2VjdGlvbi1ob21lcGFnZSAuYmFubmVydGV4dCAuYmFubmVydGV4dC1zdWJoZWFkaW5nIHtcbiAgdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgZm9udC1mYW1pbHk6IFBvcHBpbnMsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIHNlY3Rpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFnZV9pc19ob21lX3BhZ2Ugc2VjdGlvbi5weS01IHtcbiAgICBwYWRkaW5nLXRvcDogNHJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiA0cmVtICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5jYXJkLmJvcmRlci13YXJuaW5nLFxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5jYXJkLmJvcmRlci1zdWNjZXNzLFxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5jYXJkLmJvcmRlci1wcmltYXJ5IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC50YWItcGFuZSB7XG4gIGFuaW1hdGlvbjogZmFkZUluIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAuYnRuLXNtLmJ0bi1vdXRsaW5lLXByaW1hcnk6aG92ZXIgLmZhLWFycm93LXJpZ2h0LFxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5idG4tZ3JvdXAtc20gPiAuYnRuLW91dGxpbmUtcHJpbWFyeS5idG46aG92ZXIgLmZhLWFycm93LXJpZ2h0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCk7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAucGFnZV9pc19ob21lX3BhZ2UgLmRpc3BsYXktNCB7XG4gICAgZm9udC1zaXplOiAyLjVyZW07XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLmRpc3BsYXktNiB7XG4gICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5sZWFkIHtcbiAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgfVxufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLnRleHQtbXV0ZWQucHktNSB7XG4gIG9wYWNpdHk6IDAuNztcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLnNlY3Rpb24tdGl0bGUge1xuICBmb250LWZhbWlseTogXCJQbGF5ZmFpciBEaXNwbGF5XCIsIHNlcmlmO1xuICBmb250LXNpemU6IDQycHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGNvbG9yOiB2YXIoLS1kZWVwLWNoYXJjb2FsKTtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuc2VjdGlvbi10aXRsZSB7XG4gICAgZm9udC1zaXplOiAzMnB4O1xuICB9XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAudGl0bGUtdW5kZXJsaW5lIHtcbiAgd2lkdGg6IDYwcHg7XG4gIGhlaWdodDogMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1sdXh1cnktZ29sZCk7XG4gIG1hcmdpbjogMCBhdXRvIDMwcHg7XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAuc2VjdGlvbi1zdWJ0aXRsZSB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgY29sb3I6IHZhcigtLXdhcm0tZ3JheSk7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIG1heC13aWR0aDogNjAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktY2F0ZWdvcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktY2F0ZWdvcnkgLmNhdGVnb3J5LWNhcmQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktY2F0ZWdvcnkgLmNhdGVnb3J5LWNhcmQ6aG92ZXIgLmNhdGVnb3J5LWltYWdlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpO1xuICBib3gtc2hhZG93OiAwIDE1cHggMzVweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1jYXRlZ29yeSAuY2F0ZWdvcnktY2FyZDpob3ZlciAuY2F0ZWdvcnktbGluayB7XG4gIGNvbG9yOiB2YXIoLS1sdXh1cnktZ29sZCk7XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1jYXRlZ29yeSAuY2F0ZWdvcnktaW1hZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogMzAwcHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIGJveC1zaGFkb3c6IDAgNXB4IDIwcHggcmdiYSgwLCAwLCAwLCAwLjA4KTtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5zaG9wLWJ5LWNhdGVnb3J5IC5jYXRlZ29yeS1pbWFnZSBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5zaG9wLWJ5LWNhdGVnb3J5IC5jYXRlZ29yeS1pbmZvIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwIDEwcHggMjBweDtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5zaG9wLWJ5LWNhdGVnb3J5IC5jYXRlZ29yeS10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlBsYXlmYWlyIERpc3BsYXlcIiwgc2VyaWY7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgY29sb3I6IHZhcigtLWRlZXAtY2hhcmNvYWwpO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktY2F0ZWdvcnkgLmNhdGVnb3J5LWxpbmsge1xuICBmb250LXNpemU6IDE0cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAycHg7XG4gIGNvbG9yOiAjMWUxZTU2O1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzIGVhc2U7XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAuZmVhdHVyZWQtY29sbGVjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNvZnQtY3JlYW0pO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLmZlYXR1cmVkLWNvbGxlY3Rpb24gLmZlYXR1cmVkLXByb2R1Y3QtY2FyZCB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAuZmVhdHVyZWQtY29sbGVjdGlvbiAuZmVhdHVyZWQtcHJvZHVjdC1jYXJkOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5mZWF0dXJlZC1jb2xsZWN0aW9uIC5mZWF0dXJlZC1wcm9kdWN0LWNhcmQgLmNhcmQge1xuICBib3JkZXI6IG5vbmU7XG4gIGJveC1zaGFkb3c6IDAgNXB4IDIwcHggcmdiYSgwLCAwLCAwLCAwLjA4KTtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5mZWF0dXJlZC1jb2xsZWN0aW9uIC5mZWF0dXJlZC1wcm9kdWN0LWNhcmQgLmNhcmQ6aG92ZXIge1xuICBib3gtc2hhZG93OiAwIDEwcHggNDBweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLmZlYXR1cmVkLWNvbGxlY3Rpb24gLmJ0bi1vdXRsaW5lLXByaW1hcnkge1xuICBwYWRkaW5nOiAxMnB4IDQwcHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgYm9yZGVyLXdpZHRoOiAycHg7XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAuZmVhdHVyZWQtY29sbGVjdGlvbiAuYnRuLW91dGxpbmUtcHJpbWFyeTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxZTFlNTY7XG4gIGJvcmRlci1jb2xvcjogIzFlMWU1Njtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5hcnRpc2FuLXNwb3RsaWdodCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLmFydGlzYW4tc3BvdGxpZ2h0IC5hcnRpc2FuLWNhcmQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDMwcHg7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBib3gtc2hhZG93OiAwIDVweCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4wOCk7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5hcnRpc2FuLXNwb3RsaWdodCAuYXJ0aXNhbi1jYXJkOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgYm94LXNoYWRvdzogMCAxNXB4IDQwcHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5hcnRpc2FuLXNwb3RsaWdodCAuYXJ0aXNhbi1pbWFnZSB7XG4gIHdpZHRoOiAyMDBweDtcbiAgaGVpZ2h0OiAyMDBweDtcbiAgbWFyZ2luOiAwIGF1dG8gMjVweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3JkZXI6IDVweCBzb2xpZCB2YXIoLS1zb2Z0LWNyZWFtKTtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5hcnRpc2FuLXNwb3RsaWdodCAuYXJ0aXNhbi1pbWFnZSBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5hcnRpc2FuLXNwb3RsaWdodCAuYXJ0aXNhbi1uYW1lIHtcbiAgZm9udC1mYW1pbHk6IFwiUGxheWZhaXIgRGlzcGxheVwiLCBzZXJpZjtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBjb2xvcjogdmFyKC0tZGVlcC1jaGFyY29hbCk7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5hcnRpc2FuLXNwb3RsaWdodCAuYXJ0aXNhbi1zcGVjaWFsdHkge1xuICBjb2xvcjogdmFyKC0tbHV4dXJ5LWdvbGQpO1xuICBmb250LXNpemU6IDE2cHg7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5hcnRpc2FuLXNwb3RsaWdodCAuYXJ0aXNhbi1leHBlcmllbmNlIHtcbiAgY29sb3I6IHZhcigtLXdhcm0tZ3JheSk7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5hcnRpc2FuLXNwb3RsaWdodCAuYXJ0aXNhbi1saW5rIHtcbiAgY29sb3I6ICMxZTFlNTY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLmFydGlzYW4tc3BvdGxpZ2h0IC5hcnRpc2FuLWxpbms6aG92ZXIge1xuICBjb2xvcjogdmFyKC0tbHV4dXJ5LWdvbGQpO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktb2NjYXNpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zb2Z0LWNyZWFtKTtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5zaG9wLWJ5LW9jY2FzaW9uIC5vY2Nhc2lvbi1jYXJkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogNDBweCAyMHB4O1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgYm94LXNoYWRvdzogMCA1cHggMjBweCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5zaG9wLWJ5LW9jY2FzaW9uIC5vY2Nhc2lvbi1jYXJkOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgYm94LXNoYWRvdzogMCAxNXB4IDQwcHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5zaG9wLWJ5LW9jY2FzaW9uIC5vY2Nhc2lvbi1jYXJkOmhvdmVyIC5vY2Nhc2lvbi1pY29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFlMWU1NjtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktb2NjYXNpb24gLm9jY2FzaW9uLWljb24ge1xuICB3aWR0aDogODBweDtcbiAgaGVpZ2h0OiA4MHB4O1xuICBtYXJnaW46IDAgYXV0byAyMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zb2Z0LWNyZWFtKTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZm9udC1zaXplOiAzMnB4O1xuICBjb2xvcjogIzFlMWU1NjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5zaG9wLWJ5LW9jY2FzaW9uIC5vY2Nhc2lvbi10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlBsYXlmYWlyIERpc3BsYXlcIiwgc2VyaWY7XG4gIGZvbnQtc2l6ZTogMjJweDtcbiAgY29sb3I6IHZhcigtLWRlZXAtY2hhcmNvYWwpO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktb2NjYXNpb24gLm9jY2FzaW9uLXN1YnRpdGxlIHtcbiAgY29sb3I6IHZhcigtLXdhcm0tZ3JheSk7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbWFyZ2luOiAwO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLmNhcmF0eC1wcm9taXNlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAuY2FyYXR4LXByb21pc2UgLnByb21pc2UtY2FyZCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogNDBweCAyMHB4O1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLmNhcmF0eC1wcm9taXNlIC5wcm9taXNlLWljb24ge1xuICB3aWR0aDogMTAwcHg7XG4gIGhlaWdodDogMTAwcHg7XG4gIG1hcmdpbjogMCBhdXRvIDI1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNvZnQtY3JlYW0pO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmb250LXNpemU6IDQwcHg7XG4gIGNvbG9yOiB2YXIoLS1sdXh1cnktZ29sZCk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2U7XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAuY2FyYXR4LXByb21pc2UgLnByb21pc2UtdGl0bGUge1xuICBmb250LWZhbWlseTogXCJQbGF5ZmFpciBEaXNwbGF5XCIsIHNlcmlmO1xuICBmb250LXNpemU6IDI0cHg7XG4gIGNvbG9yOiB2YXIoLS1kZWVwLWNoYXJjb2FsKTtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5jYXJhdHgtcHJvbWlzZSAucHJvbWlzZS1kZXNjcmlwdGlvbiB7XG4gIGNvbG9yOiB2YXIoLS13YXJtLWdyYXkpO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIG1heC13aWR0aDogMzAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLmN1cnJlbnQtb2ZmZXJzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc29mdC1jcmVhbSk7XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAuY3VycmVudC1vZmZlcnMgLnNhbGUtcHJvZHVjdC1jYXJkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLmN1cnJlbnQtb2ZmZXJzIC5zYWxlLXByb2R1Y3QtY2FyZDo6YmVmb3JlIHtcbiAgY29udGVudDogXCJQcml2YXRlIFNhbGVcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDIwcHg7XG4gIGxlZnQ6IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxZTFlNTY7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgcGFkZGluZzogNXB4IDE1cHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgei1pbmRleDogMTA7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAucGFnZV9pc19ob21lX3BhZ2UgLmNhdGVnb3J5LWltYWdlIHtcbiAgICBoZWlnaHQ6IDIwMHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5jYXRlZ29yeS10aXRsZSB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5hcnRpc2FuLWNhcmQge1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLmFydGlzYW4taW1hZ2Uge1xuICAgIHdpZHRoOiAxNTBweDtcbiAgICBoZWlnaHQ6IDE1MHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5wcm9taXNlLWljb24sXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAub2NjYXNpb24taWNvbiB7XG4gICAgd2lkdGg6IDcwcHg7XG4gICAgaGVpZ2h0OiA3MHB4O1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMXB4KSBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuaG9tZS1oZXJvLXNlY3Rpb24taG9tZXBhZ2UgLmJhbm5lcnRleHQgLmJhbm5lcnRleHQtaGVhZGluZyB7XG4gICAgZm9udC1zaXplOiAzNnB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAucGFnZV9pc19ob21lX3BhZ2UgLmhvbWUtaGVyby1zZWN0aW9uLWhvbWVwYWdlIHtcbiAgICBoZWlnaHQ6IDM1MHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5ob21lLWhlcm8tc2VjdGlvbi1ob21lcGFnZSAuYmFubmVydGV4dCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHdpZHRoOiA5MCU7XG4gICAgbGVmdDogNSU7XG4gICAgcmlnaHQ6IDUlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLmhvbWUtaGVyby1zZWN0aW9uLWhvbWVwYWdlIC5iYW5uZXJ0ZXh0IC5iYW5uZXJ0ZXh0LWhlYWRpbmcge1xuICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLmhvbWUtaGVyby1zZWN0aW9uLWhvbWVwYWdlIC5iYW5uZXJ0ZXh0IC5iYW5uZXJ0ZXh0LWhlYWRpbmcgLmxpbmVncmVkOjpiZWZvcmUge1xuICAgIHdpZHRoOiAxODBweDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB9XG5cbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5ob21lLWhlcm8tc2VjdGlvbi1ob21lcGFnZSAuYmFubmVydGV4dCBwIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5ob21lLWhlcm8tc2VjdGlvbi1ob21lcGFnZSAuYmFubmVydGV4dCBkaXYge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuaG9tZS1oZXJvLXNlY3Rpb24taG9tZXBhZ2UgLmJhbm5lcnRleHQgZGl2IGEuYnRuIHtcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogMjc1cHg7XG4gICAgbWFyZ2luOiAwIGF1dG8gMTVweCAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuaG9tZS1oZXJvLXNlY3Rpb24taG9tZXBhZ2Uge1xuICAgIGhlaWdodDogMzIwcHg7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLmhvbWUtaGVyby1zZWN0aW9uLWhvbWVwYWdlIC5iYW5uZXJ0ZXh0IC5iYW5uZXJ0ZXh0LWhlYWRpbmcge1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuaG9tZS1oZXJvLXNlY3Rpb24taG9tZXBhZ2UgLmJhbm5lcnRleHQgLmJhbm5lcnRleHQtaGVhZGluZyAubGluZWdyZWQ6OmJlZm9yZSB7XG4gICAgd2lkdGg6IDE0MHB4O1xuICAgIGhlaWdodDogOHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5ob21lLWhlcm8tc2VjdGlvbi1ob21lcGFnZSAuYmFubmVydGV4dCBwIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5ob21lLWhlcm8tc2VjdGlvbi1ob21lcGFnZSAuYmFubmVydGV4dCBhLmJ0biB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIHBhZGRpbmc6IDEwcHggMzBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5ob21lLWhlcm8tc2VjdGlvbi1ob21lcGFnZSB7XG4gICAgaGVpZ2h0OiAyODBweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuaG9tZS1oZXJvLXNlY3Rpb24taG9tZXBhZ2UgLmJhbm5lcnRleHQgLmJhbm5lcnRleHQtaGVhZGluZyB7XG4gICAgZm9udC1zaXplOiAyMnB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5ob21lLWhlcm8tc2VjdGlvbi1ob21lcGFnZSAuYmFubmVydGV4dCAuYmFubmVydGV4dC1oZWFkaW5nIC5saW5lZ3JlZDo6YmVmb3JlIHtcbiAgICB3aWR0aDogMTAwcHg7XG4gICAgaGVpZ2h0OiA2cHg7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLmhvbWUtaGVyby1zZWN0aW9uLWhvbWVwYWdlIC5iYW5uZXJ0ZXh0IHAge1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBwYWRkaW5nOiAwIDEwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc1MHB4KSB7XG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1jYXRlZ29yeSAucm93IHtcbiAgICBtYXJnaW4tbGVmdDogLThweDtcbiAgICBtYXJnaW4tcmlnaHQ6IC04cHg7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktY2F0ZWdvcnkgLmNvbC1tZC00IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4cHg7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5zaG9wLWJ5LWNhdGVnb3J5IC5jYXRlZ29yeS1jYXJkIHtcbiAgICB6b29tOiAwLjg1O1xuICB9XG5cbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5zaG9wLWJ5LWNhdGVnb3J5IC5jYXRlZ29yeS1jYXJkIC5jYXRlZ29yeS1pbWFnZSB7XG4gICAgaGVpZ2h0OiAxODBweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1jYXRlZ29yeSAuY2F0ZWdvcnktY2FyZCAuY2F0ZWdvcnktaW5mbyB7XG4gICAgcGFkZGluZzogMCA1cHggMTVweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1jYXRlZ29yeSAuY2F0ZWdvcnktY2FyZCAuY2F0ZWdvcnktdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktY2F0ZWdvcnkgLmNhdGVnb3J5LWNhcmQgLmNhdGVnb3J5LWxpbmsge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5zaG9wLWJ5LWNhdGVnb3J5IC5jYXRlZ29yeS1jYXJkIHtcbiAgICB6b29tOiAwLjc1O1xuICB9XG5cbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5zaG9wLWJ5LWNhdGVnb3J5IC5jYXRlZ29yeS1jYXJkIC5jYXRlZ29yeS1pbWFnZSB7XG4gICAgaGVpZ2h0OiAxNTBweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1jYXRlZ29yeSAuY2F0ZWdvcnktY2FyZCAuY2F0ZWdvcnktdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzUwcHgpIHtcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5mZWF0dXJlZC1jb2xsZWN0aW9uIC5jb2wtbWQtNCB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxuXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuZmVhdHVyZWQtY29sbGVjdGlvbiAuY29sLW1kLTQgLmZlYXR1cmVkLXByb2R1Y3QtY2FyZCB7XG4gICAgem9vbTogMC44NTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzUwcHgpIHtcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5hcnRpc2FuLXNwb3RsaWdodCAuY29sLW1kLTQge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLmFydGlzYW4tc3BvdGxpZ2h0IC5jb2wtbWQtNDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5hcnRpc2FuLXNwb3RsaWdodCAuYXJ0aXNhbi1jYXJkIHtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIHpvb206IDAuOTtcbiAgfVxuXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuYXJ0aXNhbi1zcG90bGlnaHQgLmFydGlzYW4tY2FyZCAuYXJ0aXNhbi1pbWFnZSB7XG4gICAgd2lkdGg6IDEyMHB4O1xuICAgIGhlaWdodDogMTIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuYXJ0aXNhbi1zcG90bGlnaHQgLmFydGlzYW4tY2FyZCAuYXJ0aXNhbi1uYW1lIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLmFydGlzYW4tc3BvdGxpZ2h0IC5hcnRpc2FuLWNhcmQgLmFydGlzYW4tc3BlY2lhbHR5IHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLmFydGlzYW4tc3BvdGxpZ2h0IC5hcnRpc2FuLWNhcmQgLmFydGlzYW4tZXhwZXJpZW5jZSB7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NTBweCkge1xuICAucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktb2NjYXNpb24gLmNvbC1tZC0zIHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktb2NjYXNpb24gLmNvbC1tZC0zIC5vY2Nhc2lvbi1jYXJkIHtcbiAgICBwYWRkaW5nOiAzMHB4IDE1cHg7XG4gICAgem9vbTogMC44NTtcbiAgfVxuXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1vY2Nhc2lvbiAuY29sLW1kLTMgLm9jY2FzaW9uLWNhcmQgLm9jY2FzaW9uLWljb24ge1xuICAgIHdpZHRoOiA2MHB4O1xuICAgIGhlaWdodDogNjBweDtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1vY2Nhc2lvbiAuY29sLW1kLTMgLm9jY2FzaW9uLWNhcmQgLm9jY2FzaW9uLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktb2NjYXNpb24gLmNvbC1tZC0zIC5vY2Nhc2lvbi1jYXJkIC5vY2Nhc2lvbi1zdWJ0aXRsZSB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NTBweCkge1xuICAucGFnZV9pc19ob21lX3BhZ2UgLmNhcmF0eC1wcm9taXNlIC5jb2wtbWQtNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuY2FyYXR4LXByb21pc2UgLmNvbC1tZC00Omxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLmNhcmF0eC1wcm9taXNlIC5jb2wtbWQtNCAucHJvbWlzZS1jYXJkIHtcbiAgICB6b29tOiAwLjk7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLmNhcmF0eC1wcm9taXNlIC5jb2wtbWQtNCAucHJvbWlzZS1jYXJkIC5wcm9taXNlLWljb24ge1xuICAgIHdpZHRoOiA3MHB4O1xuICAgIGhlaWdodDogNzBweDtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuY2FyYXR4LXByb21pc2UgLmNvbC1tZC00IC5wcm9taXNlLWNhcmQgLnByb21pc2UtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuY2FyYXR4LXByb21pc2UgLmNvbC1tZC00IC5wcm9taXNlLWNhcmQgLnByb21pc2UtZGVzY3JpcHRpb24ge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzUwcHgpIHtcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5jdXJyZW50LW9mZmVycyAuY29sLW1kLTMge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLmN1cnJlbnQtb2ZmZXJzIC5jb2wtbWQtMyAuc2FsZS1wcm9kdWN0LWNhcmQge1xuICAgIHpvb206IDAuODU7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLmN1cnJlbnQtb2ZmZXJzIC5jb2wtbWQtMyAuc2FsZS1wcm9kdWN0LWNhcmQ6OmJlZm9yZSB7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICAgIHBhZGRpbmc6IDNweCAxMHB4O1xuICAgIHRvcDogMTBweDtcbiAgICBsZWZ0OiAxMHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NTBweCkge1xuICAucGFnZV9pc19ob21lX3BhZ2Ugc2VjdGlvbiB7XG4gICAgcGFkZGluZzogNDBweCAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLnNlY3Rpb24tdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC50aXRsZS11bmRlcmxpbmUge1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLnNlY3Rpb24tc3VidGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc1MHB4KSBhbmQgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5idG4ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDMyMHB4KSB7XG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuaG9tZS1oZXJvLXNlY3Rpb24taG9tZXBhZ2Uge1xuICAgIGhlaWdodDogMjUwcHg7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLmhvbWUtaGVyby1zZWN0aW9uLWhvbWVwYWdlIC5iYW5uZXJ0ZXh0LWhlYWRpbmcge1xuICAgIGZvbnQtc2l6ZTogMjBweCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5zaG9wLWJ5LWNhdGVnb3J5IC5jb2wtbWQtNCxcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5zaG9wLWJ5LWNhdGVnb3J5IC5jb2wtbWQtMyxcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5mZWF0dXJlZC1jb2xsZWN0aW9uIC5jb2wtbWQtNCxcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5mZWF0dXJlZC1jb2xsZWN0aW9uIC5jb2wtbWQtMyxcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5zaG9wLWJ5LW9jY2FzaW9uIC5jb2wtbWQtNCxcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5zaG9wLWJ5LW9jY2FzaW9uIC5jb2wtbWQtMyxcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5jdXJyZW50LW9mZmVycyAuY29sLW1kLTQsXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuY3VycmVudC1vZmZlcnMgLmNvbC1tZC0zIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktY2F0ZWdvcnkgLmNvbC1tZC00IC5jYXRlZ29yeS1jYXJkLFxuICAucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktY2F0ZWdvcnkgLmNvbC1tZC00IC5mZWF0dXJlZC1wcm9kdWN0LWNhcmQsXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1jYXRlZ29yeSAuY29sLW1kLTQgLm9jY2FzaW9uLWNhcmQsXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1jYXRlZ29yeSAuY29sLW1kLTQgLnNhbGUtcHJvZHVjdC1jYXJkLFxuICAucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktY2F0ZWdvcnkgLmNvbC1tZC0zIC5jYXRlZ29yeS1jYXJkLFxuICAucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktY2F0ZWdvcnkgLmNvbC1tZC0zIC5mZWF0dXJlZC1wcm9kdWN0LWNhcmQsXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1jYXRlZ29yeSAuY29sLW1kLTMgLm9jY2FzaW9uLWNhcmQsXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1jYXRlZ29yeSAuY29sLW1kLTMgLnNhbGUtcHJvZHVjdC1jYXJkLFxuICAucGFnZV9pc19ob21lX3BhZ2UgLmZlYXR1cmVkLWNvbGxlY3Rpb24gLmNvbC1tZC00IC5jYXRlZ29yeS1jYXJkLFxuICAucGFnZV9pc19ob21lX3BhZ2UgLmZlYXR1cmVkLWNvbGxlY3Rpb24gLmNvbC1tZC00IC5mZWF0dXJlZC1wcm9kdWN0LWNhcmQsXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuZmVhdHVyZWQtY29sbGVjdGlvbiAuY29sLW1kLTQgLm9jY2FzaW9uLWNhcmQsXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuZmVhdHVyZWQtY29sbGVjdGlvbiAuY29sLW1kLTQgLnNhbGUtcHJvZHVjdC1jYXJkLFxuICAucGFnZV9pc19ob21lX3BhZ2UgLmZlYXR1cmVkLWNvbGxlY3Rpb24gLmNvbC1tZC0zIC5jYXRlZ29yeS1jYXJkLFxuICAucGFnZV9pc19ob21lX3BhZ2UgLmZlYXR1cmVkLWNvbGxlY3Rpb24gLmNvbC1tZC0zIC5mZWF0dXJlZC1wcm9kdWN0LWNhcmQsXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuZmVhdHVyZWQtY29sbGVjdGlvbiAuY29sLW1kLTMgLm9jY2FzaW9uLWNhcmQsXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuZmVhdHVyZWQtY29sbGVjdGlvbiAuY29sLW1kLTMgLnNhbGUtcHJvZHVjdC1jYXJkLFxuICAucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktb2NjYXNpb24gLmNvbC1tZC00IC5jYXRlZ29yeS1jYXJkLFxuICAucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktb2NjYXNpb24gLmNvbC1tZC00IC5mZWF0dXJlZC1wcm9kdWN0LWNhcmQsXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1vY2Nhc2lvbiAuY29sLW1kLTQgLm9jY2FzaW9uLWNhcmQsXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1vY2Nhc2lvbiAuY29sLW1kLTQgLnNhbGUtcHJvZHVjdC1jYXJkLFxuICAucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktb2NjYXNpb24gLmNvbC1tZC0zIC5jYXRlZ29yeS1jYXJkLFxuICAucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktb2NjYXNpb24gLmNvbC1tZC0zIC5mZWF0dXJlZC1wcm9kdWN0LWNhcmQsXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1vY2Nhc2lvbiAuY29sLW1kLTMgLm9jY2FzaW9uLWNhcmQsXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1vY2Nhc2lvbiAuY29sLW1kLTMgLnNhbGUtcHJvZHVjdC1jYXJkLFxuICAucGFnZV9pc19ob21lX3BhZ2UgLmN1cnJlbnQtb2ZmZXJzIC5jb2wtbWQtNCAuY2F0ZWdvcnktY2FyZCxcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5jdXJyZW50LW9mZmVycyAuY29sLW1kLTQgLmZlYXR1cmVkLXByb2R1Y3QtY2FyZCxcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5jdXJyZW50LW9mZmVycyAuY29sLW1kLTQgLm9jY2FzaW9uLWNhcmQsXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuY3VycmVudC1vZmZlcnMgLmNvbC1tZC00IC5zYWxlLXByb2R1Y3QtY2FyZCxcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5jdXJyZW50LW9mZmVycyAuY29sLW1kLTMgLmNhdGVnb3J5LWNhcmQsXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuY3VycmVudC1vZmZlcnMgLmNvbC1tZC0zIC5mZWF0dXJlZC1wcm9kdWN0LWNhcmQsXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuY3VycmVudC1vZmZlcnMgLmNvbC1tZC0zIC5vY2Nhc2lvbi1jYXJkLFxuICAucGFnZV9pc19ob21lX3BhZ2UgLmN1cnJlbnQtb2ZmZXJzIC5jb2wtbWQtMyAuc2FsZS1wcm9kdWN0LWNhcmQge1xuICAgIHpvb206IDE7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW5VcCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi8qKlxuICogU2hvcCBQYWdlIFN0eWxlc1xuICogU3R5bGVzIHNwZWNpZmljIHRvIHRoZSBzaG9wL2NhdGFsb2cgcGFnZXNcbiAqL1xuXG4ucGFnZV9pc19zaG9wX3BhZ2UgLnNob3AtcGFnZSB7XG4gIG1pbi1oZWlnaHQ6IDYwdmg7XG59XG5cbi5wYWdlX2lzX3Nob3BfcGFnZSAuc2hvcC1wYWdlIGgxIC50ZXh0LXB1cnBsZSxcbi5wYWdlX2lzX3Nob3BfcGFnZSAuc2hvcC1wYWdlIC5oMSAudGV4dC1wdXJwbGUge1xuICBjb2xvcjogI2EzN2ViYTtcbn1cblxuLnBhZ2VfaXNfc2hvcF9wYWdlIC5zaG9wLXBhZ2UgaDEgLnRleHQtdGVhbCxcbi5wYWdlX2lzX3Nob3BfcGFnZSAuc2hvcC1wYWdlIC5oMSAudGV4dC10ZWFsIHtcbiAgY29sb3I6ICM3ZWJhYWQ7XG59XG5cbi5wYWdlX2lzX3Nob3BfcGFnZSAuZHJvcGRvd24taXRlbS5hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1saWdodCk7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5wYWdlX2lzX3Nob3BfcGFnZSAuZHJvcGRvd24taXRlbS5hY3RpdmU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4pyTXCI7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICBjb2xvcjogdmFyKC0tYnMtc3VjY2Vzcyk7XG59XG5cbi5wYWdlX2lzX3Nob3BfcGFnZSAudmlldy10b2dnbGUtYnRuLmRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC42O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4ucGFnZV9pc19zaG9wX3BhZ2UgLnByb2R1Y3RzLWNvbnRhaW5lci5sb2FkaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiA0MDBweDtcbn1cblxuLnBhZ2VfaXNfc2hvcF9wYWdlIC5wcm9kdWN0cy1jb250YWluZXIubG9hZGluZzo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgei1pbmRleDogMTA7XG59XG5cbi5wYWdlX2lzX3Nob3BfcGFnZSAucHJvZHVjdHMtY29udGFpbmVyLmxvYWRpbmc6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBtYXJnaW46IC0yMHB4IDAgMCAtMjBweDtcbiAgYm9yZGVyOiA0cHggc29saWQgI2YzZjNmMztcbiAgYm9yZGVyLXRvcDogNHB4IHNvbGlkIHZhcigtLWJzLXByaW1hcnkpO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGFuaW1hdGlvbjogc3BpbiAxcyBsaW5lYXIgaW5maW5pdGU7XG4gIHotaW5kZXg6IDExO1xufVxuXG4ucGFnZV9pc19zaG9wX3BhZ2UgLmZpbHRlci1zaWRlYmFyLWNhcmQge1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB0b3A6IDFyZW07XG59XG5cbi5wYWdlX2lzX3Nob3BfcGFnZSAuZmlsdGVyLXNpZGViYXItY2FyZCAuZmlsdGVyLXNlY3Rpb24ge1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKSAhaW1wb3J0YW50O1xufVxuXG4ucGFnZV9pc19zaG9wX3BhZ2UgLmZpbHRlci1zaWRlYmFyLWNhcmQgLmZpbHRlci1zZWN0aW9uIC5zb3J0LW9wdGlvbixcbi5wYWdlX2lzX3Nob3BfcGFnZSAuZmlsdGVyLXNpZGViYXItY2FyZCAuZmlsdGVyLXNlY3Rpb24gLmRpYW1vbmQtc2hhcGUtb3B0aW9uIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG59XG5cbi5wYWdlX2lzX3Nob3BfcGFnZSAuZmlsdGVyLXNpZGViYXItY2FyZCAuZmlsdGVyLXNlY3Rpb24gLnNvcnQtb3B0aW9uLmFjdGl2ZSxcbi5wYWdlX2lzX3Nob3BfcGFnZSAuZmlsdGVyLXNpZGViYXItY2FyZCAuZmlsdGVyLXNlY3Rpb24gLnNvcnQtb3B0aW9uOmhvdmVyLFxuLnBhZ2VfaXNfc2hvcF9wYWdlIC5maWx0ZXItc2lkZWJhci1jYXJkIC5maWx0ZXItc2VjdGlvbiAuZGlhbW9uZC1zaGFwZS1vcHRpb24uYWN0aXZlLFxuLnBhZ2VfaXNfc2hvcF9wYWdlIC5maWx0ZXItc2lkZWJhci1jYXJkIC5maWx0ZXItc2VjdGlvbiAuZGlhbW9uZC1zaGFwZS1vcHRpb246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KSAhaW1wb3J0YW50O1xuICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLnBhZ2VfaXNfc2hvcF9wYWdlIC5maWx0ZXItc2lkZWJhci1jYXJkIC5maWx0ZXItc2VjdGlvbiAuZGlhbW9uZC1zaGFwZS1vcHRpb24ge1xuICBhc3BlY3QtcmF0aW86IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4ucGFnZV9pc19zaG9wX3BhZ2UgLmZpbHRlci1zaWRlYmFyLWNhcmQgLmZpbHRlci1zZWN0aW9uIC5kaWFtb25kLXNoYXBlLW9wdGlvbi5hY3RpdmUge1xuICBib3JkZXItY29sb3I6IHZhcigtLWJzLXByaW1hcnkpICFpbXBvcnRhbnQ7XG59XG5cbi5wYWdlX2lzX3Nob3BfcGFnZSAuZmlsdGVyLXNpZGViYXItY2FyZCAuZmlsdGVyLXNlY3Rpb24gaDYgLmZpbHRlci1jb3VudC1iYWRnZSxcbi5wYWdlX2lzX3Nob3BfcGFnZSAuZmlsdGVyLXNpZGViYXItY2FyZCAuZmlsdGVyLXNlY3Rpb24gLmg2IC5maWx0ZXItY291bnQtYmFkZ2Uge1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4ucGFnZV9pc19zaG9wX3BhZ2UgLmZpbHRlci1hY3RpdmUuZm9ybS1jb250cm9sLFxuLnBhZ2VfaXNfc2hvcF9wYWdlIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuZmlsdGVyLWFjdGl2ZS5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucGFnZV9pc19zaG9wX3BhZ2UgLmZpbHRlci1hY3RpdmUuc2VsZWN0Mi1zZWxlY3Rpb24sXG4ucGFnZV9pc19zaG9wX3BhZ2UgLmZpbHRlci1hY3RpdmUuZm9ybS1zZWxlY3Qge1xuICBib3JkZXItY29sb3I6IHZhcigtLWJzLXByaW1hcnkpICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKHZhcigtLWJzLXByaW1hcnktcmdiKSwgMC4xNSk7XG59XG5cbi5wYWdlX2lzX3Nob3BfcGFnZSAuZmlsdGVyLWFjdGl2ZS5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xufVxuXG4ucGFnZV9pc19zaG9wX3BhZ2UgLmZvcm0tY29udHJvbCxcbi5wYWdlX2lzX3Nob3BfcGFnZSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlX2lzX3Nob3BfcGFnZSAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4ucGFnZV9pc19zaG9wX3BhZ2UgLmZvcm0tc2VsZWN0LFxuLnBhZ2VfaXNfc2hvcF9wYWdlIC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG59XG5cbi5wYWdlX2lzX3Nob3BfcGFnZSAuYWN0aXZlLWZpbHRlcnMtY2FyZCAuYmFkZ2Uge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG4ucGFnZV9pc19zaG9wX3BhZ2UgLmFjdGl2ZS1maWx0ZXJzLWNhcmQgLmJhZGdlIGEge1xuICBvcGFjaXR5OiAwLjg7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluLW91dDtcbn1cblxuLnBhZ2VfaXNfc2hvcF9wYWdlIC5hY3RpdmUtZmlsdGVycy1jYXJkIC5iYWRnZSBhOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnBhZ2VfaXNfc2hvcF9wYWdlIC5wcmljZS1yYW5nZS1zbGlkZXIge1xuICBtYXJnaW46IDFyZW0gMC41cmVtO1xufVxuXG4ucGFnZV9pc19zaG9wX3BhZ2UgLnByaWNlLXJhbmdlLXNsaWRlciAudWktc2xpZGVyLXJhbmdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG59XG5cbi5wYWdlX2lzX3Nob3BfcGFnZSAucHJpY2UtcmFuZ2Utc2xpZGVyIC51aS1zbGlkZXItaGFuZGxlIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbn1cblxuLnBhZ2VfaXNfc2hvcF9wYWdlIC5wcmljZS1yYW5nZS1zbGlkZXIgLnVpLXNsaWRlci1oYW5kbGU6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSh2YXIoLS1icy1wcmltYXJ5LXJnYiksIDAuMjUpO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLnBhZ2VfaXNfc2hvcF9wYWdlIC5maWx0ZXItdG9nZ2xlLW1vYmlsZSB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDcwcHg7XG4gICAgei1pbmRleDogMTAwO1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc3BpbiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuLmJnLXB1cnBsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhMzdlYmEgIWltcG9ydGFudDtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4uYmctdGVhbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3ZWJhYWQgIWltcG9ydGFudDtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4udGV4dC1wdXJwbGUge1xuICBjb2xvcjogI2EzN2ViYSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC10ZWFsIHtcbiAgY29sb3I6ICM3ZWJhYWQgIWltcG9ydGFudDtcbn1cblxuI2ZpbHRlck9mZmNhbnZhcyAub2ZmY2FudmFzLWJvZHkgLmZpbHRlci1mb3JtIC5jYXJkIHtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuI2ZpbHRlck9mZmNhbnZhcyAub2ZmY2FudmFzLWJvZHkgLmZpbHRlci1mb3JtIC5jYXJkIC5jYXJkLWJvZHkge1xuICBwYWRkaW5nOiAwO1xufVxuXG4jZmlsdGVyT2ZmY2FudmFzIC5hcHBseS1maWx0ZXJzLW1vYmlsZSB7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIGJvdHRvbTogMDtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIHBhZGRpbmc6IDFyZW07XG4gIG1hcmdpbjogMCAtMXJlbSAtMXJlbTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJzLWdyYXktMzAwKTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG4gIC5wYWdlX2lzX3Nob3BfcGFnZSAuc2hvcC1wYWdlIC5wYWdlLWhlYWRlciB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICAgIGdhcDogMXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Nob3BfcGFnZSAuc2hvcC1wYWdlIC5wYWdlLWhlYWRlciBoMSxcbiAgLnBhZ2VfaXNfc2hvcF9wYWdlIC5zaG9wLXBhZ2UgLnBhZ2UtaGVhZGVyIC5oMSB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gIH1cblxuICAucGFnZV9pc19zaG9wX3BhZ2UgLnNob3AtcGFnZSAucGFnZS1oZWFkZXIgLmRyb3Bkb3duIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Nob3BfcGFnZSAuc2hvcC1wYWdlIC5wYWdlLWhlYWRlciAuZHJvcGRvd24gLmJ0biB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG5cbiAgLnBhZ2VfaXNfc2hvcF9wYWdlIC5zaG9wLXBhZ2UgLnZpZXctdG9nZ2xlLWJ0biB7XG4gICAgZmxleDogMTtcbiAgfVxufVxuXG4vKipcbiAqIFNob3BwaW5nIENhcnQgUGFnZSBTdHlsZXNcbiAqIFN0eWxlcyBzcGVjaWZpYyB0byB0aGUgc2hvcHBpbmcgY2FydCBwYWdlc1xuICovXG5cbi5wYWdlX2lzX2NhcnRfcGFnZSAuY2FyZC1ib2R5ID4gLmFsZXJ0LFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLmNhcmQtYm9keSA+IC5hbGVydCB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHggIWltcG9ydGFudDtcbn1cblxuLnBhZ2VfaXNfY2FydF9wYWdlIC5iZy1wdXJwbGUsXG4ucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAuYmctcHVycGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2EzN2ViYSAhaW1wb3J0YW50O1xuICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLnBhZ2VfaXNfY2FydF9wYWdlIC5iZy10ZWFsLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLmJnLXRlYWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2ViYWFkICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLmNhcnQtcXVhbnRpdHktY29udHJvbCxcbi5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC5jYXJ0LXF1YW50aXR5LWNvbnRyb2wge1xuICBtYXgtd2lkdGg6IDEyMHB4O1xufVxuXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLmNhcnQtcXVhbnRpdHktY29udHJvbCAuYnRuLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLmNhcnQtcXVhbnRpdHktY29udHJvbCAuYnRuIHtcbiAgd2lkdGg6IDM4cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLmNhcnQtcXVhbnRpdHktY29udHJvbCAuYnRuIGksXG4ucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAuY2FydC1xdWFudGl0eS1jb250cm9sIC5idG4gaSB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbn1cblxuLnBhZ2VfaXNfY2FydF9wYWdlIC5jYXJ0LXF1YW50aXR5LWNvbnRyb2wgLmZvcm0tY29udHJvbCxcbi5wYWdlX2lzX2NhcnRfcGFnZSAuY2FydC1xdWFudGl0eS1jb250cm9sIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2VfaXNfY2FydF9wYWdlIC5jYXJ0LXF1YW50aXR5LWNvbnRyb2wgLnNlbGVjdDItc2VsZWN0aW9uLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLmNhcnQtcXVhbnRpdHktY29udHJvbCAuZm9ybS1jb250cm9sLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLmNhcnQtcXVhbnRpdHktY29udHJvbCAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC5jYXJ0LXF1YW50aXR5LWNvbnRyb2wgLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgYm9yZGVyLWxlZnQ6IDA7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLnBhZ2VfaXNfY2FydF9wYWdlIC5jYXJ0LXF1YW50aXR5LWNvbnRyb2wgLmZvcm0tY29udHJvbDpmb2N1cyxcbi5wYWdlX2lzX2NhcnRfcGFnZSAuY2FydC1xdWFudGl0eS1jb250cm9sIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2VfaXNfY2FydF9wYWdlIC5jYXJ0LXF1YW50aXR5LWNvbnRyb2wgLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLmNhcnQtcXVhbnRpdHktY29udHJvbCAuZm9ybS1jb250cm9sOmZvY3VzLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLmNhcnQtcXVhbnRpdHktY29udHJvbCAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC5jYXJ0LXF1YW50aXR5LWNvbnRyb2wgLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyLWNvbG9yOiAjZGVlMmU2O1xufVxuXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLnRhYmxlLFxuLnBhZ2VfaXNfY2FydF9wYWdlIC5wcm9zZSB0YWJsZSxcbi5wcm9zZSAucGFnZV9pc19jYXJ0X3BhZ2UgdGFibGUsXG4ucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAudGFibGUsXG4ucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAucHJvc2UgdGFibGUsXG4ucHJvc2UgLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgdGFibGUge1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xufVxuXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLnRhYmxlIC5hbGlnbi1taWRkbGUgdGQsXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLnByb3NlIHRhYmxlIC5hbGlnbi1taWRkbGUgdGQsXG4ucHJvc2UgLnBhZ2VfaXNfY2FydF9wYWdlIHRhYmxlIC5hbGlnbi1taWRkbGUgdGQsXG4ucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAudGFibGUgLmFsaWduLW1pZGRsZSB0ZCxcbi5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC5wcm9zZSB0YWJsZSAuYWxpZ24tbWlkZGxlIHRkLFxuLnByb3NlIC5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIHRhYmxlIC5hbGlnbi1taWRkbGUgdGQge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLnRhYmxlIHRoZWFkIHRoOm50aC1jaGlsZCgxKSxcbi5wYWdlX2lzX2NhcnRfcGFnZSAucHJvc2UgdGFibGUgdGhlYWQgdGg6bnRoLWNoaWxkKDEpLFxuLnByb3NlIC5wYWdlX2lzX2NhcnRfcGFnZSB0YWJsZSB0aGVhZCB0aDpudGgtY2hpbGQoMSksXG4ucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAudGFibGUgdGhlYWQgdGg6bnRoLWNoaWxkKDEpLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLnByb3NlIHRhYmxlIHRoZWFkIHRoOm50aC1jaGlsZCgxKSxcbi5wcm9zZSAucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSB0YWJsZSB0aGVhZCB0aDpudGgtY2hpbGQoMSkge1xuICB3aWR0aDogYXV0bztcbn1cblxuLnBhZ2VfaXNfY2FydF9wYWdlIC50YWJsZSB0aGVhZCB0aDpudGgtY2hpbGQoMiksXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLnByb3NlIHRhYmxlIHRoZWFkIHRoOm50aC1jaGlsZCgyKSxcbi5wcm9zZSAucGFnZV9pc19jYXJ0X3BhZ2UgdGFibGUgdGhlYWQgdGg6bnRoLWNoaWxkKDIpLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLnRhYmxlIHRoZWFkIHRoOm50aC1jaGlsZCgyKSxcbi5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC5wcm9zZSB0YWJsZSB0aGVhZCB0aDpudGgtY2hpbGQoMiksXG4ucHJvc2UgLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgdGFibGUgdGhlYWQgdGg6bnRoLWNoaWxkKDIpIHtcbiAgd2lkdGg6IDEwMHB4O1xufVxuXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLnRhYmxlIHRoZWFkIHRoOm50aC1jaGlsZCgzKSxcbi5wYWdlX2lzX2NhcnRfcGFnZSAucHJvc2UgdGFibGUgdGhlYWQgdGg6bnRoLWNoaWxkKDMpLFxuLnByb3NlIC5wYWdlX2lzX2NhcnRfcGFnZSB0YWJsZSB0aGVhZCB0aDpudGgtY2hpbGQoMyksXG4ucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAudGFibGUgdGhlYWQgdGg6bnRoLWNoaWxkKDMpLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLnByb3NlIHRhYmxlIHRoZWFkIHRoOm50aC1jaGlsZCgzKSxcbi5wcm9zZSAucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSB0YWJsZSB0aGVhZCB0aDpudGgtY2hpbGQoMykge1xuICB3aWR0aDogMTI1cHg7XG59XG5cbi5wYWdlX2lzX2NhcnRfcGFnZSAudGFibGUgdGhlYWQgdGg6bnRoLWNoaWxkKDQpLFxuLnBhZ2VfaXNfY2FydF9wYWdlIC5wcm9zZSB0YWJsZSB0aGVhZCB0aDpudGgtY2hpbGQoNCksXG4ucHJvc2UgLnBhZ2VfaXNfY2FydF9wYWdlIHRhYmxlIHRoZWFkIHRoOm50aC1jaGlsZCg0KSxcbi5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC50YWJsZSB0aGVhZCB0aDpudGgtY2hpbGQoNCksXG4ucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAucHJvc2UgdGFibGUgdGhlYWQgdGg6bnRoLWNoaWxkKDQpLFxuLnByb3NlIC5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIHRhYmxlIHRoZWFkIHRoOm50aC1jaGlsZCg0KSB7XG4gIHdpZHRoOiAxMDBweDtcbn1cblxuLnBhZ2VfaXNfY2FydF9wYWdlIC50YWJsZSB0aGVhZCB0aDpudGgtY2hpbGQoNSksXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLnByb3NlIHRhYmxlIHRoZWFkIHRoOm50aC1jaGlsZCg1KSxcbi5wcm9zZSAucGFnZV9pc19jYXJ0X3BhZ2UgdGFibGUgdGhlYWQgdGg6bnRoLWNoaWxkKDUpLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLnRhYmxlIHRoZWFkIHRoOm50aC1jaGlsZCg1KSxcbi5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC5wcm9zZSB0YWJsZSB0aGVhZCB0aDpudGgtY2hpbGQoNSksXG4ucHJvc2UgLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgdGFibGUgdGhlYWQgdGg6bnRoLWNoaWxkKDUpIHtcbiAgd2lkdGg6IDYwcHg7XG59XG5cbi5wYWdlX2lzX2NhcnRfcGFnZSAudGFibGUgdGQ6bnRoLWNoaWxkKDEpIC5tZS0zLFxuLnBhZ2VfaXNfY2FydF9wYWdlIC5wcm9zZSB0YWJsZSB0ZDpudGgtY2hpbGQoMSkgLm1lLTMsXG4ucHJvc2UgLnBhZ2VfaXNfY2FydF9wYWdlIHRhYmxlIHRkOm50aC1jaGlsZCgxKSAubWUtMyxcbi5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC50YWJsZSB0ZDpudGgtY2hpbGQoMSkgLm1lLTMsXG4ucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAucHJvc2UgdGFibGUgdGQ6bnRoLWNoaWxkKDEpIC5tZS0zLFxuLnByb3NlIC5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIHRhYmxlIHRkOm50aC1jaGlsZCgxKSAubWUtMyB7XG4gIHdpZHRoOiA5MHB4O1xuICBmbGV4LXNocmluazogMDtcbn1cblxuLnBhZ2VfaXNfY2FydF9wYWdlIC50YWJsZSB0ZDpudGgtY2hpbGQoMiksXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLnByb3NlIHRhYmxlIHRkOm50aC1jaGlsZCgyKSxcbi5wcm9zZSAucGFnZV9pc19jYXJ0X3BhZ2UgdGFibGUgdGQ6bnRoLWNoaWxkKDIpLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLnRhYmxlIHRkOm50aC1jaGlsZCgyKSxcbi5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC5wcm9zZSB0YWJsZSB0ZDpudGgtY2hpbGQoMiksXG4ucHJvc2UgLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgdGFibGUgdGQ6bnRoLWNoaWxkKDIpIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHdpZHRoOiAxMDBweDtcbn1cblxuLnBhZ2VfaXNfY2FydF9wYWdlIC50YWJsZSB0ZDpudGgtY2hpbGQoMyksXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLnByb3NlIHRhYmxlIHRkOm50aC1jaGlsZCgzKSxcbi5wcm9zZSAucGFnZV9pc19jYXJ0X3BhZ2UgdGFibGUgdGQ6bnRoLWNoaWxkKDMpLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLnRhYmxlIHRkOm50aC1jaGlsZCgzKSxcbi5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC5wcm9zZSB0YWJsZSB0ZDpudGgtY2hpbGQoMyksXG4ucHJvc2UgLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgdGFibGUgdGQ6bnRoLWNoaWxkKDMpIHtcbiAgd2lkdGg6IDEyNXB4O1xufVxuXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLnRhYmxlIHRkOm50aC1jaGlsZCgzKSAuY2FydC1xdWFudGl0eS1jb250cm9sLFxuLnBhZ2VfaXNfY2FydF9wYWdlIC5wcm9zZSB0YWJsZSB0ZDpudGgtY2hpbGQoMykgLmNhcnQtcXVhbnRpdHktY29udHJvbCxcbi5wcm9zZSAucGFnZV9pc19jYXJ0X3BhZ2UgdGFibGUgdGQ6bnRoLWNoaWxkKDMpIC5jYXJ0LXF1YW50aXR5LWNvbnRyb2wsXG4ucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAudGFibGUgdGQ6bnRoLWNoaWxkKDMpIC5jYXJ0LXF1YW50aXR5LWNvbnRyb2wsXG4ucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAucHJvc2UgdGFibGUgdGQ6bnRoLWNoaWxkKDMpIC5jYXJ0LXF1YW50aXR5LWNvbnRyb2wsXG4ucHJvc2UgLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgdGFibGUgdGQ6bnRoLWNoaWxkKDMpIC5jYXJ0LXF1YW50aXR5LWNvbnRyb2wge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWF4LXdpZHRoOiAxMjBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5wYWdlX2lzX2NhcnRfcGFnZSAudGFibGUgdGQ6bnRoLWNoaWxkKDQpLFxuLnBhZ2VfaXNfY2FydF9wYWdlIC5wcm9zZSB0YWJsZSB0ZDpudGgtY2hpbGQoNCksXG4ucHJvc2UgLnBhZ2VfaXNfY2FydF9wYWdlIHRhYmxlIHRkOm50aC1jaGlsZCg0KSxcbi5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC50YWJsZSB0ZDpudGgtY2hpbGQoNCksXG4ucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAucHJvc2UgdGFibGUgdGQ6bnRoLWNoaWxkKDQpLFxuLnByb3NlIC5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIHRhYmxlIHRkOm50aC1jaGlsZCg0KSB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICB3aWR0aDogMTAwcHg7XG59XG5cbi5wYWdlX2lzX2NhcnRfcGFnZSAudGFibGUgdGQ6bnRoLWNoaWxkKDUpLFxuLnBhZ2VfaXNfY2FydF9wYWdlIC5wcm9zZSB0YWJsZSB0ZDpudGgtY2hpbGQoNSksXG4ucHJvc2UgLnBhZ2VfaXNfY2FydF9wYWdlIHRhYmxlIHRkOm50aC1jaGlsZCg1KSxcbi5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC50YWJsZSB0ZDpudGgtY2hpbGQoNSksXG4ucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAucHJvc2UgdGFibGUgdGQ6bnRoLWNoaWxkKDUpLFxuLnByb3NlIC5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIHRhYmxlIHRkOm50aC1jaGlsZCg1KSB7XG4gIHdpZHRoOiA2MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5wYWdlX2lzX2NhcnRfcGFnZSAuY2FyZCxcbi5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC5jYXJkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLmNhcmQucG9zaXRpb24tc3RpY2t5LFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLmNhcmQucG9zaXRpb24tc3RpY2t5IHtcbiAgei1pbmRleDogMTAyMDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5wYWdlX2lzX2NhcnRfcGFnZSAuY2FyZC5jYXJ0LXN1bW1hcnksXG4gIC5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC5jYXJkLmNhcnQtc3VtbWFyeSB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDJyZW07XG4gIH1cbn1cblxuLnBhZ2VfaXNfY2FydF9wYWdlIC5jYXJkIC5jYXJkLWhlYWRlci5iZy1wcmltYXJ5LFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLmNhcmQgLmNhcmQtaGVhZGVyLmJnLXByaW1hcnkge1xuICBiYWNrZ3JvdW5kOiAjMWUxZTU2ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLmNhcmQgLmNhcmQtaGVhZGVyLmJnLXByaW1hcnkgaDUsXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLmNhcmQgLmNhcmQtaGVhZGVyLmJnLXByaW1hcnkgLmg1LFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLmNhcmQgLmNhcmQtaGVhZGVyLmJnLXByaW1hcnkgaDUsXG4ucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAuY2FyZCAuY2FyZC1oZWFkZXIuYmctcHJpbWFyeSAuaDUge1xuICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxLjRyZW07XG59XG5cbi5wYWdlX2lzX2NhcnRfcGFnZSAuY2FyZCAuY2FyZC1oZWFkZXIuYmctcHJpbWFyeSBoNSBpLFxuLnBhZ2VfaXNfY2FydF9wYWdlIC5jYXJkIC5jYXJkLWhlYWRlci5iZy1wcmltYXJ5IC5oNSBpLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLmNhcmQgLmNhcmQtaGVhZGVyLmJnLXByaW1hcnkgaDUgaSxcbi5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC5jYXJkIC5jYXJkLWhlYWRlci5iZy1wcmltYXJ5IC5oNSBpIHtcbiAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi5wYWdlX2lzX2NhcnRfcGFnZSAuY2FyZCAuYWxlcnQtc3VjY2Vzcyxcbi5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC5jYXJkIC5hbGVydC1zdWNjZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNSwgMTM1LCA4NCwgMC4xKSAhaW1wb3J0YW50O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1LCAxMzUsIDg0LCAwLjIpICFpbXBvcnRhbnQ7XG59XG5cbi5wYWdlX2lzX2NhcnRfcGFnZSAuY2FyZCAuYWxlcnQtc3VjY2VzcyAuYnRuLW91dGxpbmUtZGFuZ2VyLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLmNhcmQgLmFsZXJ0LXN1Y2Nlc3MgLmJ0bi1vdXRsaW5lLWRhbmdlciB7XG4gIC0tYnMtYnRuLWJvcmRlci13aWR0aDogMXB4O1xuICAtLWJzLWJ0bi1ob3Zlci1iZzogI2RjMzU0NTtcbiAgLS1icy1idG4taG92ZXItY29sb3I6IHdoaXRlO1xufVxuXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLmNhcmQgLmJnLWxpZ2h0LFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLmNhcmQgLmJnLWxpZ2h0IHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2Y4ZjlmYSAwJSwgI2U5ZWNlZiAxMDAlKSAhaW1wb3J0YW50O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xufVxuXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLmNhcmQgLmJ0bi1zdWNjZXNzLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLmNhcmQgLmJ0bi1zdWNjZXNzIHtcbiAgYmFja2dyb3VuZDogIzMyMzI4YSAhaW1wb3J0YW50O1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXNpemU6IDAuOTVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgcGFkZGluZzogMC43NXJlbSAxLjVyZW07XG59XG5cbi5wYWdlX2lzX2NhcnRfcGFnZSAuY2FyZCAuYnRuLXN1Y2Nlc3M6aG92ZXIsXG4ucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAuY2FyZCAuYnRuLXN1Y2Nlc3M6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjNDU0NWE4ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLmNhcmQgLmJ0bi1zdWNjZXNzOmZvY3VzLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLmNhcmQgLmJ0bi1zdWNjZXNzOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDUwLCA1MCwgMTM4LCAwLjI1KTtcbn1cblxuLnBhZ2VfaXNfY2FydF9wYWdlIC5jYXJkLWJvZHkudGV4dC1jZW50ZXIgLmZhLXNob3BwaW5nLWNhcnQsXG4ucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAuY2FyZC1ib2R5LnRleHQtY2VudGVyIC5mYS1zaG9wcGluZy1jYXJ0IHtcbiAgb3BhY2l0eTogMC42O1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG5cbi5wYWdlX2lzX2NhcnRfcGFnZSAuY2FyZC1ib2R5LnRleHQtY2VudGVyIC5idG4tcHJpbWFyeSxcbi5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC5jYXJkLWJvZHkudGV4dC1jZW50ZXIgLmJ0bi1wcmltYXJ5IHtcbiAgcGFkZGluZzogMC43NXJlbSAycmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAucGFnZV9pc19jYXJ0X3BhZ2UgLnBvc2l0aW9uLXN0aWNreSxcbiAgLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLnBvc2l0aW9uLXN0aWNreSB7XG4gICAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi10b3A6IDJyZW07XG4gIH1cblxuICAucGFnZV9pc19jYXJ0X3BhZ2UgLmNhcmQtZm9vdGVyIC5kLWZsZXgsXG4gIC5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC5jYXJkLWZvb3RlciAuZC1mbGV4IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX2NhcnRfcGFnZSAuY2FyZC1mb290ZXIgLmQtZmxleCAuYnRuLFxuICAucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAuY2FyZC1mb290ZXIgLmQtZmxleCAuYnRuIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcbiAgLnBhZ2VfaXNfY2FydF9wYWdlIC50YWJsZS1yZXNwb25zaXZlLFxuICAucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAudGFibGUtcmVzcG9uc2l2ZSB7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX2NhcnRfcGFnZSAudGFibGUtcmVzcG9uc2l2ZSAuYmFkZ2UsXG4gIC5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC50YWJsZS1yZXNwb25zaXZlIC5iYWRnZSB7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfY2FydF9wYWdlIC50YWJsZS1yZXNwb25zaXZlIC5jYXJ0LXF1YW50aXR5LWNvbnRyb2wsXG4gIC5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC50YWJsZS1yZXNwb25zaXZlIC5jYXJ0LXF1YW50aXR5LWNvbnRyb2wge1xuICAgIG1heC13aWR0aDogMTAwcHg7XG4gIH1cblxuICAucGFnZV9pc19jYXJ0X3BhZ2UgLnRhYmxlLXJlc3BvbnNpdmUgLmNhcnQtcXVhbnRpdHktY29udHJvbCAuYnRuLFxuICAucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAudGFibGUtcmVzcG9uc2l2ZSAuY2FydC1xdWFudGl0eS1jb250cm9sIC5idG4ge1xuICAgIHdpZHRoOiAzMnB4O1xuICAgIHBhZGRpbmc6IDAuMjVyZW07XG4gIH1cbn1cblxuLyoqXG4gKiBJdGVtIERldGFpbHMgUGFnZSAtIENvbXBsZXRlIFJlZGVzaWduXG4gKiBBbWF6b24vZUJheSBpbnNwaXJlZCBsYXlvdXQgd2l0aCBwcm9wZXIgdmlzdWFsIGhpZXJhcmNoeVxuICogQm9keSBjbGFzczogLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2VcbiAqL1xuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAuY29udGFpbmVyLnBhZ2UtYm9keSB7XG4gIG1heC13aWR0aDogMTIwMHB4O1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDQwcHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LW1haW4ge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtbWFpbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDMwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWdhbGxlcnkge1xuICAgIGZsZXg6IDAgMCA0NTBweDtcbiAgICBtYXgtd2lkdGg6IDQ1MHB4O1xuICB9XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWdhbGxlcnkgLm1haW4taW1hZ2UtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWdhbGxlcnkgLm1haW4taW1hZ2UtY29udGFpbmVyOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy10b3A6IDEwMCU7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWdhbGxlcnkgLm1haW4taW1hZ2UtY29udGFpbmVyIC5tYWluLWltYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZ2FsbGVyeSAubWFpbi1pbWFnZS1jb250YWluZXIgLnpvb20taGludCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAxMHB4O1xuICByaWdodDogMTBweDtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICBjb2xvcjogd2hpdGU7XG4gIHBhZGRpbmc6IDVweCAxMHB4O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWdhbGxlcnkgLnRodW1ibmFpbC1ncmlkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maWxsLCBtaW5tYXgoNzBweCwgMWZyKSk7XG4gIGdhcDogOHB4O1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1nYWxsZXJ5IC50aHVtYm5haWwtZ3JpZCAudGh1bWJuYWlsLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNlMGUwZTA7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1nYWxsZXJ5IC50aHVtYm5haWwtZ3JpZCAudGh1bWJuYWlsLWl0ZW06OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLXRvcDogMTAwJTtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZ2FsbGVyeSAudGh1bWJuYWlsLWdyaWQgLnRodW1ibmFpbC1pdGVtIGltZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgcGFkZGluZzogM3B4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1nYWxsZXJ5IC50aHVtYm5haWwtZ3JpZCAudGh1bWJuYWlsLWl0ZW0uYWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiAjMWUxZTU2O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1nYWxsZXJ5IC50aHVtYm5haWwtZ3JpZCAudGh1bWJuYWlsLWl0ZW06aG92ZXIge1xuICBib3JkZXItY29sb3I6ICMyMzJmM2U7XG4gIG9wYWNpdHk6IDAuODtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZ2FsbGVyeSAudGh1bWJuYWlsLWdyaWQgLnRodW1ibmFpbC1pdGVtLnBkZi1wbGFjZWhvbGRlciB7XG4gIGJhY2tncm91bmQ6ICNmNWY1ZjU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1nYWxsZXJ5IC50aHVtYm5haWwtZ3JpZCAudGh1bWJuYWlsLWl0ZW0ucGRmLXBsYWNlaG9sZGVyIC5wZGYtaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBjb2xvcjogIzY2Njtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZ2FsbGVyeSAudGh1bWJuYWlsLWdyaWQgLnRodW1ibmFpbC1pdGVtLnZpZGVvLXBsYWNlaG9sZGVyIHtcbiAgYmFja2dyb3VuZDogIzAwMDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZ2FsbGVyeSAudGh1bWJuYWlsLWdyaWQgLnRodW1ibmFpbC1pdGVtLnZpZGVvLXBsYWNlaG9sZGVyIC5wbGF5LWljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtc2l6ZTogMjRweDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZ2FsbGVyeSAubWVkaWEtc2VjdGlvbiB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTBlMGUwO1xuICBwYWRkaW5nLXRvcDogMTVweDtcbiAgbWFyZ2luLXRvcDogMjBweDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZ2FsbGVyeSAubWVkaWEtc2VjdGlvbiBoNixcbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWdhbGxlcnkgLm1lZGlhLXNlY3Rpb24gLmg2IHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBjb2xvcjogIzMzMztcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZ2FsbGVyeSAubWVkaWEtc2VjdGlvbiAubWVkaWEtcGxhY2Vob2xkZXIge1xuICBiYWNrZ3JvdW5kOiAjZjhmOGY4O1xuICBib3JkZXI6IDFweCBkYXNoZWQgI2NjYztcbiAgcGFkZGluZzogMjBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogIzY2NjtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1nYWxsZXJ5IC5tZWRpYS1zZWN0aW9uIC5tZWRpYS1wbGFjZWhvbGRlciBpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMzJweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgY29sb3I6ICM5OTk7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8ge1xuICBmbGV4OiAxO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTBlMGUwO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIHBhZGRpbmc6IDIwcHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnByb2R1Y3QtdGl0bGUge1xuICBmb250LXNpemU6IDEuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMS4zO1xuICBjb2xvcjogIzBmMTExMTtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTBlMGUwO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5wcmljZS1zZWN0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTBlMGUwO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5wcmljZS1zZWN0aW9uIC5wcmljZS1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gIGdhcDogMTVweDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtaW5mbyAucHJpY2Utc2VjdGlvbiAucHJpY2Utcm93IC5jdXJyZW50LXByaWNlIHtcbiAgZm9udC1zaXplOiAyOHB4O1xuICBjb2xvcjogYmxhY2s7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnByaWNlLXNlY3Rpb24gLnByaWNlLXJvdyAub3JpZ2luYWwtcHJpY2Uge1xuICBmb250LXNpemU6IDE4cHg7XG4gIGNvbG9yOiAjNTY1OTU5O1xuICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtaW5mbyAucHJpY2Utc2VjdGlvbiAucHJpY2Utcm93IC5kaXNjb3VudC1iYWRnZSB7XG4gIGJhY2tncm91bmQ6ICNjYzBjMzk7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgcGFkZGluZzogNHB4IDhweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5wcmljZS1zZWN0aW9uIC5wcmljZS1kZXRhaWxzIHtcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGNvbG9yOiAjMDA3MTg1O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5wcmljZS1zZWN0aW9uIC5wcmljZS1kZXRhaWxzIC5zaGlwcGluZy1pbmZvIHtcbiAgY29sb3I6ICM1NjU5NTk7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnByaWNlLXNlY3Rpb24gLnJldmlld3Mtc3VtbWFyeS1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICBmb250LXNpemU6IDE0cHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnByaWNlLXNlY3Rpb24gLnJldmlld3Mtc3VtbWFyeS1pbmxpbmUgLnJldmlld3MtbGluayB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICMwMDcxODU7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnByaWNlLXNlY3Rpb24gLnJldmlld3Mtc3VtbWFyeS1pbmxpbmUgLnJldmlld3MtbGluazpob3ZlciB7XG4gIGNvbG9yOiAjYzQ1NTAwO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtaW5mbyAucHJpY2Utc2VjdGlvbiAucmV2aWV3cy1zdW1tYXJ5LWlubGluZSAucmV2aWV3cy1saW5rIC5zdGFycyB7XG4gIGNvbG9yOiAjMWUxZTU2O1xuICBmb250LXNpemU6IDE0cHg7XG4gIG1hcmdpbi1yaWdodDogM3B4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5wcmljZS1zZWN0aW9uIC5yZXZpZXdzLXN1bW1hcnktaW5saW5lIC5yZXZpZXdzLWxpbmsgLnJldmlldy1jb3VudCB7XG4gIGNvbG9yOiAjMDA3MTg1O1xuICBmb250LXNpemU6IDEzcHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnNlbGxlci1jYXJkIHtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBwYWRkaW5nOiAxNXB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5zZWxsZXItY2FyZCAuc2VsbGVyLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMTJweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtaW5mbyAuc2VsbGVyLWNhcmQgLnNlbGxlci1oZWFkZXIgLnNlbGxlci1hdmF0YXIge1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBib3JkZXI6IDJweCBzb2xpZCAjZGRkO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5zZWxsZXItY2FyZCAuc2VsbGVyLWhlYWRlciAuc2VsbGVyLWluZm8ge1xuICBmbGV4OiAxO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5zZWxsZXItY2FyZCAuc2VsbGVyLWhlYWRlciAuc2VsbGVyLWluZm8gLnNlbGxlci1uYW1lIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICMwZjExMTE7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbWFyZ2luLWJvdHRvbTogMnB4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5zZWxsZXItY2FyZCAuc2VsbGVyLWhlYWRlciAuc2VsbGVyLWluZm8gLnNlbGxlci1uYW1lIGEge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5zZWxsZXItY2FyZCAuc2VsbGVyLWhlYWRlciAuc2VsbGVyLWluZm8gLnNlbGxlci1uYW1lIGE6aG92ZXIge1xuICBjb2xvcjogI2M0NTUwMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnNlbGxlci1jYXJkIC5zZWxsZXItaGVhZGVyIC5zZWxsZXItaW5mbyAuc2VsbGVyLXJhdGluZyB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgY29sb3I6ICM1NjU5NTk7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnNlbGxlci1jYXJkIC5zZWxsZXItaGVhZGVyIC5zZWxsZXItaW5mbyAuc2VsbGVyLXJhdGluZyAuc3RhcnMge1xuICBjb2xvcjogIzFlMWU1NjtcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnNlbGxlci1jYXJkIC5zZWxsZXItZGV0YWlscyB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgY29sb3I6ICM1NjU5NTk7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnNlbGxlci1jYXJkIC5zZWxsZXItZGV0YWlscyAuZGV0YWlsLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWFyZ2luLWJvdHRvbTogM3B4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5zZWxsZXItY2FyZCAuc2VsbGVyLWRldGFpbHMgLmRldGFpbC1yb3cgc3Ryb25nIHtcbiAgY29sb3I6ICMwZjExMTE7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnN0b2NrLXN0YXR1cyB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIGZvbnQtc2l6ZTogMThweDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtaW5mbyAuc3RvY2stc3RhdHVzLmluLXN0b2NrIHtcbiAgY29sb3I6ICMwMDc2MDA7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnN0b2NrLXN0YXR1cy5sb3ctc3RvY2sge1xuICBjb2xvcjogI2IxMjcwNDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtaW5mbyAuc3RvY2stc3RhdHVzLm91dC1vZi1zdG9jayB7XG4gIGNvbG9yOiAjYjEyNzA0O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5wcm9kdWN0LW9wdGlvbnMge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5wcm9kdWN0LW9wdGlvbnMgLm9wdGlvbi1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2UwZTBlMDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtaW5mbyAucHJvZHVjdC1vcHRpb25zIC5vcHRpb24tZ3JvdXA6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnByb2R1Y3Qtb3B0aW9ucyAub3B0aW9uLWdyb3VwIC5vcHRpb24tbGFiZWwge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAjMGYxMTExO1xuICBtYXJnaW4tYm90dG9tOiA4cHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnByb2R1Y3Qtb3B0aW9ucyAub3B0aW9uLWdyb3VwIC5jb2xvci1vcHRpb25zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiA4cHg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtaW5mbyAucHJvZHVjdC1vcHRpb25zIC5vcHRpb24tZ3JvdXAgLmNvbG9yLW9wdGlvbnMgLmNvbG9yLXN3YXRjaCB7XG4gIHdpZHRoOiAzMnB4O1xuICBoZWlnaHQ6IDMycHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNlMGUwZTA7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnByb2R1Y3Qtb3B0aW9ucyAub3B0aW9uLWdyb3VwIC5jb2xvci1vcHRpb25zIC5jb2xvci1zd2F0Y2guYWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiAjMWUxZTU2O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5wcm9kdWN0LW9wdGlvbnMgLm9wdGlvbi1ncm91cCAuY29sb3Itb3B0aW9ucyAuY29sb3Itc3dhdGNoLmFjdGl2ZTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIuKck1wiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LXNoYWRvdzogMCAwIDJweCByZ2JhKDAsIDAsIDAsIDAuNSk7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnByb2R1Y3Qtb3B0aW9ucyAub3B0aW9uLWdyb3VwIC5jb2xvci1vcHRpb25zIC5jb2xvci1zd2F0Y2g6aG92ZXIge1xuICBib3JkZXItY29sb3I6ICMyMzJmM2U7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnByb2R1Y3Qtb3B0aW9ucyAub3B0aW9uLWdyb3VwIHNlbGVjdC5mb3JtLXNlbGVjdCB7XG4gIG1heC13aWR0aDogMjAwcHg7XG4gIGJvcmRlci1jb2xvcjogIzg4OGM4YztcbiAgYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoMTUsIDE3LCAxNywgMC4xNSk7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnByb2R1Y3Qtb3B0aW9ucyAub3B0aW9uLWdyb3VwIHNlbGVjdC5mb3JtLXNlbGVjdDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogI2U3NzYwMDtcbiAgYm94LXNoYWRvdzogMCAwIDNweCAycHggcmdiYSgyMjgsIDEyMSwgMTcsIDAuNSk7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnByb2R1Y3Qtb3B0aW9ucyAub3B0aW9uLWdyb3VwIC5jdXN0b20tb3B0aW9uLXBsYWNlaG9sZGVyIHtcbiAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgYm9yZGVyOiAxcHggZGFzaGVkICNjY2M7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICM2NjY7XG4gIGZvbnQtc2l6ZTogMTNweDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtaW5mbyAucXVhbnRpdHktc2VjdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnF1YW50aXR5LXNlY3Rpb24gLnF1YW50aXR5LWxhYmVsIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBtYXJnaW4tYm90dG9tOiA4cHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnF1YW50aXR5LXNlY3Rpb24gLnF1YW50aXR5LXNlbGVjdG9yIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM4ODhjOGM7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtaW5mbyAucXVhbnRpdHktc2VjdGlvbiAucXVhbnRpdHktc2VsZWN0b3IgLnF0eS1idG4ge1xuICBiYWNrZ3JvdW5kOiAjZjBmMmYyO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDhweCAxMnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgY29sb3I6ICMwZjExMTE7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnF1YW50aXR5LXNlY3Rpb24gLnF1YW50aXR5LXNlbGVjdG9yIC5xdHktYnRuOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2UzZTZlNjtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtaW5mbyAucXVhbnRpdHktc2VjdGlvbiAucXVhbnRpdHktc2VsZWN0b3IgLnF0eS1idG46YWN0aXZlIHtcbiAgYmFja2dyb3VuZDogI2RkZDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtaW5mbyAucXVhbnRpdHktc2VjdGlvbiAucXVhbnRpdHktc2VsZWN0b3IgLnF0eS1pbnB1dCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgd2lkdGg6IDUwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5xdWFudGl0eS1zZWN0aW9uIC5xdWFudGl0eS1zZWxlY3RvciAucXR5LWlucHV0OmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgYmFja2dyb3VuZDogI2ZmZjdlNjtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtaW5mbyAuYWN0aW9uLWJ1dHRvbnMge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlMGUwZTA7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnRydXN0LWJhZGdlcyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMTAwcHgsIDFmcikpO1xuICBnYXA6IDE1cHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnRydXN0LWJhZGdlcyAuYmFkZ2UtaXRlbSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtaW5mbyAudHJ1c3QtYmFkZ2VzIC5iYWRnZS1pdGVtIGkge1xuICBmb250LXNpemU6IDI0cHg7XG4gIGNvbG9yOiAjMWUxZTU2O1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnRydXN0LWJhZGdlcyAuYmFkZ2UtaXRlbSAuYmFkZ2UtdGV4dCB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgY29sb3I6ICM1NjU5NTk7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWRldGFpbHMtc2VjdGlvbiB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTBlMGUwO1xuICBwYWRkaW5nLXRvcDogMzBweDtcbiAgbWFyZ2luLXRvcDogMzBweDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZGV0YWlscy1zZWN0aW9uIC5kZXRhaWxzLWNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogMTAwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZGV0YWlscy1zZWN0aW9uIC5zZWN0aW9uLWhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICMwZjExMTE7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzFlMWU1Njtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZGV0YWlscy1zZWN0aW9uIC5rZXktZmVhdHVyZXMge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1kZXRhaWxzLXNlY3Rpb24gLmtleS1mZWF0dXJlcyB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWRldGFpbHMtc2VjdGlvbiAua2V5LWZlYXR1cmVzIHVsIGxpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZGV0YWlscy1zZWN0aW9uIC5rZXktZmVhdHVyZXMgdWwgbGk6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4pyTXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgY29sb3I6ICMxZTFlNTY7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1kZXRhaWxzLXNlY3Rpb24gLnByb2R1Y3QtZGVzY3JpcHRpb24ge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjg7XG4gIGNvbG9yOiAjMGYxMTExO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1kZXRhaWxzLXNlY3Rpb24gLnByb2R1Y3QtZGVzY3JpcHRpb24gcCB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWRldGFpbHMtc2VjdGlvbiAudmlkZW8tc2VjdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWRldGFpbHMtc2VjdGlvbiAudmlkZW8tc2VjdGlvbiAudmlkZW8tY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1kZXRhaWxzLXNlY3Rpb24gLnZpZGVvLXNlY3Rpb24gLnZpZGVvLWNvbnRhaW5lciAudmlkZW8tZW1iZWQtd3JhcHBlciB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWRldGFpbHMtc2VjdGlvbiAudmlkZW8tc2VjdGlvbiAudmlkZW8tY29udGFpbmVyIC52aWRlby1lbWJlZC13cmFwcGVyLm1wNC12aWRlby13cmFwcGVyIC52aWRlby1qcyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWRldGFpbHMtc2VjdGlvbiAudmlkZW8tc2VjdGlvbiAudmlkZW8tY29udGFpbmVyIC52aWRlby1lbWJlZC13cmFwcGVyLm1wNC12aWRlby13cmFwcGVyIC52aWRlby1qcyAudmpzLWJpZy1wbGF5LWJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogM2VtO1xuICBsaW5lLWhlaWdodDogMS41ZW07XG4gIGhlaWdodDogMS41ZW07XG4gIHdpZHRoOiAzZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuM2VtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDQzLCA1MSwgNjMsIDAuNyk7XG4gIGJvcmRlcjogMC4wNjY2NmVtIHNvbGlkICNmZmY7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1kZXRhaWxzLXNlY3Rpb24gLnZpZGVvLXNlY3Rpb24gLnZpZGVvLWNvbnRhaW5lciAudmlkZW8tZW1iZWQtd3JhcHBlci5tcDQtdmlkZW8td3JhcHBlciAudmlkZW8tanMgLnZqcy1jb250cm9sLWJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNDMsIDUxLCA2MywgMC43KTtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZGV0YWlscy1zZWN0aW9uIC5zcGVjaWZpY2F0aW9ucyB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWRldGFpbHMtc2VjdGlvbiAuc3BlY2lmaWNhdGlvbnMgLnNwZWMtdGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZGV0YWlscy1zZWN0aW9uIC5zcGVjaWZpY2F0aW9ucyAuc3BlYy10YWJsZSB0ciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTBlMGUwO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1kZXRhaWxzLXNlY3Rpb24gLnNwZWNpZmljYXRpb25zIC5zcGVjLXRhYmxlIHRyOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1kZXRhaWxzLXNlY3Rpb24gLnNwZWNpZmljYXRpb25zIC5zcGVjLXRhYmxlIHRoIHtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgcGFkZGluZzogMTJweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBjb2xvcjogIzBmMTExMTtcbiAgd2lkdGg6IDMwJTtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZGV0YWlscy1zZWN0aW9uIC5zcGVjaWZpY2F0aW9ucyAuc3BlYy10YWJsZSB0ZCB7XG4gIHBhZGRpbmc6IDEycHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgY29sb3I6ICM1NjU5NTk7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWRldGFpbHMtc2VjdGlvbiAuc2hpcHBpbmctcmV0dXJucy1ib3gge1xuICBiYWNrZ3JvdW5kOiAjZjVmN2ZhO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZDVkOWQ5O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWRldGFpbHMtc2VjdGlvbiAuc2hpcHBpbmctcmV0dXJucy1ib3ggLmJveC1oZWFkZXIge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjMGYxMTExO1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1kZXRhaWxzLXNlY3Rpb24gLnNoaXBwaW5nLXJldHVybnMtYm94IC5ib3gtaGVhZGVyIGkge1xuICBjb2xvcjogIzFlMWU1NjtcbiAgbWFyZ2luLXJpZ2h0OiA4cHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWRldGFpbHMtc2VjdGlvbiAuc2hpcHBpbmctcmV0dXJucy1ib3ggLmluZm8tZ3JpZCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMjUwcHgsIDFmcikpO1xuICBnYXA6IDIwcHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWRldGFpbHMtc2VjdGlvbiAuc2hpcHBpbmctcmV0dXJucy1ib3ggLmluZm8tZ3JpZCAuaW5mby1pdGVtIGg2LFxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZGV0YWlscy1zZWN0aW9uIC5zaGlwcGluZy1yZXR1cm5zLWJveCAuaW5mby1ncmlkIC5pbmZvLWl0ZW0gLmg2IHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogIzBmMTExMTtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1kZXRhaWxzLXNlY3Rpb24gLnNoaXBwaW5nLXJldHVybnMtYm94IC5pbmZvLWdyaWQgLmluZm8taXRlbSB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWRldGFpbHMtc2VjdGlvbiAuc2hpcHBpbmctcmV0dXJucy1ib3ggLmluZm8tZ3JpZCAuaW5mby1pdGVtIHVsIGxpIHtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBjb2xvcjogIzU2NTk1OTtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZGV0YWlscy1zZWN0aW9uIC5zaGlwcGluZy1yZXR1cm5zLWJveCAuaW5mby1ncmlkIC5pbmZvLWl0ZW0gdWwgbGk6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4oCiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgY29sb3I6ICM4ODg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC50YWJzLXNlY3Rpb24ge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAudGFicy1zZWN0aW9uIC5uYXYtdGFicyB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZTBlMGUwO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAudGFicy1zZWN0aW9uIC5uYXYtdGFicyAubmF2LWxpbmsge1xuICBjb2xvcjogIzU2NTk1OTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDEycHggMjBweDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAudGFicy1zZWN0aW9uIC5uYXYtdGFicyAubmF2LWxpbms6aG92ZXIge1xuICBjb2xvcjogIzBmMTExMTtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnRhYnMtc2VjdGlvbiAubmF2LXRhYnMgLm5hdi1saW5rLmFjdGl2ZSB7XG4gIGNvbG9yOiAjMGYxMTExO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjMWUxZTU2O1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAudGFicy1zZWN0aW9uIC50YWItY29udGVudCB7XG4gIHBhZGRpbmc6IDMwcHggMDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnRhYnMtc2VjdGlvbiAudGFiLWNvbnRlbnQgLnJldmlld3MtY29udGVudCAucmV2aWV3LXN1bW1hcnkge1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBwYWRkaW5nOiAyMHB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC50YWJzLXNlY3Rpb24gLnRhYi1jb250ZW50IC5yZXZpZXdzLWNvbnRlbnQgLnJldmlldy1zdW1tYXJ5IC5hdmVyYWdlLXJhdGluZyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMTVweDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnRhYnMtc2VjdGlvbiAudGFiLWNvbnRlbnQgLnJldmlld3MtY29udGVudCAucmV2aWV3LXN1bW1hcnkgLmF2ZXJhZ2UtcmF0aW5nIC5yYXRpbmctbnVtYmVyIHtcbiAgZm9udC1zaXplOiA0OHB4O1xuICBmb250LXdlaWdodDogMzAwO1xuICBjb2xvcjogIzBmMTExMTtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnRhYnMtc2VjdGlvbiAudGFiLWNvbnRlbnQgLnJldmlld3MtY29udGVudCAucmV2aWV3LXN1bW1hcnkgLmF2ZXJhZ2UtcmF0aW5nIC5zdGFycyB7XG4gIGNvbG9yOiAjMWUxZTU2O1xuICBmb250LXNpemU6IDIwcHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC50YWJzLXNlY3Rpb24gLnRhYi1jb250ZW50IC5yZXZpZXdzLWNvbnRlbnQgLnJldmlldy1zdW1tYXJ5IC5hdmVyYWdlLXJhdGluZyAucmV2aWV3LWNvdW50IHtcbiAgY29sb3I6ICM1NjU5NTk7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnRhYnMtc2VjdGlvbiAudGFiLWNvbnRlbnQgLnJldmlld3MtY29udGVudCAucmV2aWV3LWl0ZW0ge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2UwZTBlMDtcbiAgcGFkZGluZzogMjBweCAwO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAudGFicy1zZWN0aW9uIC50YWItY29udGVudCAucmV2aWV3cy1jb250ZW50IC5yZXZpZXctaXRlbSAucmV2aWV3LWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnRhYnMtc2VjdGlvbiAudGFiLWNvbnRlbnQgLnJldmlld3MtY29udGVudCAucmV2aWV3LWl0ZW0gLnJldmlldy1oZWFkZXIgLnJldmlld2VyLW5hbWUge1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogIzBmMTExMTtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnRhYnMtc2VjdGlvbiAudGFiLWNvbnRlbnQgLnJldmlld3MtY29udGVudCAucmV2aWV3LWl0ZW0gLnJldmlldy1oZWFkZXIgLnJldmlldy1kYXRlIHtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBjb2xvcjogIzU2NTk1OTtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnRhYnMtc2VjdGlvbiAudGFiLWNvbnRlbnQgLnJldmlld3MtY29udGVudCAucmV2aWV3LWl0ZW0gLnJldmlldy1yYXRpbmcge1xuICBjb2xvcjogIzFlMWU1NjtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnRhYnMtc2VjdGlvbiAudGFiLWNvbnRlbnQgLnJldmlld3MtY29udGVudCAucmV2aWV3LWl0ZW0gLnJldmlldy10ZXh0IHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMS42O1xuICBjb2xvcjogIzBmMTExMTtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnRhYnMtc2VjdGlvbiAudGFiLWNvbnRlbnQgLnFhLWNvbnRlbnQgLmFzay1xdWVzdGlvbi1ib3gge1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBwYWRkaW5nOiAyMHB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC50YWJzLXNlY3Rpb24gLnRhYi1jb250ZW50IC5xYS1jb250ZW50IC5hc2stcXVlc3Rpb24tYm94IHRleHRhcmVhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM4ODhjOGM7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgcGFkZGluZzogMTBweDtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAudGFicy1zZWN0aW9uIC50YWItY29udGVudCAucWEtY29udGVudCAuYXNrLXF1ZXN0aW9uLWJveCB0ZXh0YXJlYTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogI2U3NzYwMDtcbiAgYm94LXNoYWRvdzogMCAwIDNweCAycHggcmdiYSgyMjgsIDEyMSwgMTcsIDAuNSk7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC50YWJzLXNlY3Rpb24gLnRhYi1jb250ZW50IC5xYS1jb250ZW50IC5xYS1pdGVtIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlMGUwZTA7XG4gIHBhZGRpbmc6IDIwcHggMDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnRhYnMtc2VjdGlvbiAudGFiLWNvbnRlbnQgLnFhLWNvbnRlbnQgLnFhLWl0ZW0ucHJpdmF0ZS1yZXNwb25zZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAjNmM3NTdkO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAudGFicy1zZWN0aW9uIC50YWItY29udGVudCAucWEtY29udGVudCAucWEtaXRlbS5wcml2YXRlLXJlc3BvbnNlIC5wcml2YXRlLWxhYmVsIHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAudGFicy1zZWN0aW9uIC50YWItY29udGVudCAucWEtY29udGVudCAucWEtaXRlbS5wcml2YXRlLXJlc3BvbnNlIC5wcml2YXRlLWxhYmVsIGkge1xuICBtYXJnaW4tcmlnaHQ6IDVweDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnRhYnMtc2VjdGlvbiAudGFiLWNvbnRlbnQgLnFhLWNvbnRlbnQgLnFhLWl0ZW0gLnF1ZXN0aW9uIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICMwZjExMTE7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC50YWJzLXNlY3Rpb24gLnRhYi1jb250ZW50IC5xYS1jb250ZW50IC5xYS1pdGVtIC5xdWVzdGlvbiBzdHJvbmcge1xuICBjb2xvcjogIzU2NTk1OTtcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC50YWJzLXNlY3Rpb24gLnRhYi1jb250ZW50IC5xYS1jb250ZW50IC5xYS1pdGVtIC5xdWVzdGlvbiAucXVlc3Rpb24tbWV0YSB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgY29sb3I6ICM5OTk7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAudGFicy1zZWN0aW9uIC50YWItY29udGVudCAucWEtY29udGVudCAucWEtaXRlbSAuYW5zd2VyIHtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBjb2xvcjogIzU2NTk1OTtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAudGFicy1zZWN0aW9uIC50YWItY29udGVudCAucWEtY29udGVudCAucWEtaXRlbSAuYW5zd2VyIHN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAjMGYxMTExO1xuICBtYXJnaW4tcmlnaHQ6IDVweDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnRhYnMtc2VjdGlvbiAudGFiLWNvbnRlbnQgLnFhLWNvbnRlbnQgLnFhLWl0ZW0gLmFuc3dlciAuYW5zd2VyLW1ldGEge1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXNpemU6IDEycHg7XG4gIGNvbG9yOiAjOTk5O1xuICBtYXJnaW4tbGVmdDogMTBweDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucmVsYXRlZC1wcm9kdWN0cyB7XG4gIG1hcmdpbi10b3A6IDUwcHg7XG4gIHBhZGRpbmctdG9wOiAzMHB4O1xuICBib3JkZXItdG9wOiAycHggc29saWQgI2UwZTBlMDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnJlbGF0ZWQtcHJvZHVjdHMgaDMsXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucmVsYXRlZC1wcm9kdWN0cyAuaDMge1xuICBmb250LXNpemU6IDIwcHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjMGYxMTExO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucmVsYXRlZC1wcm9kdWN0cyAucHJvZHVjdHMtZ3JpZCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDIwMHB4LCAxZnIpKTtcbiAgZ2FwOiAyMHB4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucmVsYXRlZC1wcm9kdWN0cyAucHJvZHVjdHMtZ3JpZCAucHJvZHVjdC1jYXJkIHtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlMGUwZTA7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgcGFkZGluZzogMTVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucmVsYXRlZC1wcm9kdWN0cyAucHJvZHVjdHMtZ3JpZCAucHJvZHVjdC1jYXJkOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjYzQ1NTAwO1xuICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucmVsYXRlZC1wcm9kdWN0cyAucHJvZHVjdHMtZ3JpZCAucHJvZHVjdC1jYXJkIC5wcm9kdWN0LWltYWdlIHtcbiAgaGVpZ2h0OiAxNTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5yZWxhdGVkLXByb2R1Y3RzIC5wcm9kdWN0cy1ncmlkIC5wcm9kdWN0LWNhcmQgLnByb2R1Y3QtaW1hZ2UgaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb250YWluO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucmVsYXRlZC1wcm9kdWN0cyAucHJvZHVjdHMtZ3JpZCAucHJvZHVjdC1jYXJkIC5wcm9kdWN0LW5hbWUge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGNvbG9yOiAjMGYxMTExO1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIG1pbi1oZWlnaHQ6IDQwcHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5yZWxhdGVkLXByb2R1Y3RzIC5wcm9kdWN0cy1ncmlkIC5wcm9kdWN0LWNhcmQgLnByb2R1Y3QtbmFtZSBhIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnJlbGF0ZWQtcHJvZHVjdHMgLnByb2R1Y3RzLWdyaWQgLnByb2R1Y3QtY2FyZCAucHJvZHVjdC1uYW1lIGE6aG92ZXIge1xuICBjb2xvcjogI2M0NTUwMDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnJlbGF0ZWQtcHJvZHVjdHMgLnByb2R1Y3RzLWdyaWQgLnByb2R1Y3QtY2FyZCAucHJvZHVjdC1wcmljZSB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgY29sb3I6ICNiMTI3MDQ7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1tYWluIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG5cbiAgLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZ2FsbGVyeSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cblxuICAucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1nYWxsZXJ5IC5tYWluLWltYWdlLWNvbnRhaW5lciB7XG4gICAgdG91Y2gtYWN0aW9uOiBwYW4teSBwaW5jaC16b29tO1xuICB9XG5cbiAgLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZ2FsbGVyeSAudGh1bWJuYWlsLWdyaWQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDYsIDFmcik7XG4gIH1cblxuICAucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1nYWxsZXJ5IC50aHVtYm5haWwtZ3JpZCAudGh1bWJuYWlsLWl0ZW06bnRoLWNoaWxkKG4rNykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5wcm9kdWN0LXRpdGxlIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gIH1cblxuICAucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5wcmljZS1zZWN0aW9uIC5jdXJyZW50LXByaWNlIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gIH1cblxuICAucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1kZXRhaWxzLXNlY3Rpb24gLmNvbGxhcHNpYmxlLXNlY3Rpb24ge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTBlMGUwO1xuICB9XG5cbiAgLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZGV0YWlscy1zZWN0aW9uIC5jb2xsYXBzaWJsZS1zZWN0aW9uIC5zZWN0aW9uLXRvZ2dsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAxNXB4IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZGV0YWlscy1zZWN0aW9uIC5jb2xsYXBzaWJsZS1zZWN0aW9uIC5zZWN0aW9uLXRvZ2dsZSAuc2VjdGlvbi10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6ICMwZjExMTE7XG4gIH1cblxuICAucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1kZXRhaWxzLXNlY3Rpb24gLmNvbGxhcHNpYmxlLXNlY3Rpb24gLnNlY3Rpb24tdG9nZ2xlIC50b2dnbGUtaWNvbiB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGNvbG9yOiAjNTY1OTU5O1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xuICB9XG5cbiAgLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZGV0YWlscy1zZWN0aW9uIC5jb2xsYXBzaWJsZS1zZWN0aW9uIC5zZWN0aW9uLXRvZ2dsZS5jb2xsYXBzZWQgLnRvZ2dsZS1pY29uIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICB9XG5cbiAgLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZGV0YWlscy1zZWN0aW9uIC5jb2xsYXBzaWJsZS1zZWN0aW9uIC5zZWN0aW9uLWNvbnRlbnQge1xuICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICB9XG5cbiAgLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZGV0YWlscy1zZWN0aW9uIC5jb2xsYXBzaWJsZS1zZWN0aW9uIC5zZWN0aW9uLWNvbnRlbnQuY29sbGFwc2U6bm90KC5zaG93KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLmNvbnRhaW5lci5wYWdlLWJvZHkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICB9XG5cbiAgLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZ2FsbGVyeSAudGh1bWJuYWlsLWdyaWQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG4gIH1cblxuICAucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1nYWxsZXJ5IC50aHVtYm5haWwtZ3JpZCAudGh1bWJuYWlsLWl0ZW06bnRoLWNoaWxkKG4rNSkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucmVsYXRlZC1wcm9kdWN0cyAucHJvZHVjdHMtZ3JpZCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICBnYXA6IDEwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIHtcbiAgICBwYWRkaW5nOiAyNXB4O1xuICB9XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5zZWxlY3Rpb24ge1xuICBtYXgtd2lkdGg6IDUwMHB4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtN3B4O1xufVxuXG4vKipcbiAqIENoZWNrb3V0IFBhZ2UgU3R5bGVzXG4gKiBCb290c3RyYXAgNSBlbmhhbmNlbWVudHMgZm9yIHNpbmdsZSBwYWdlIGNoZWNrb3V0XG4gKi9cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAuc3RpY2t5LXRvcCB7XG4gIHBvc2l0aW9uOiBzdGlja3kgIWltcG9ydGFudDtcbiAgei1pbmRleDogMTA7XG4gIHRvcDogMjBweDtcbn1cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAjYWNjb3VudC1jcmVhdGlvbi1maWVsZHMge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucGFnZV9pc19jaGVja291dF9wYWdlICNzaGlwcGluZy1hZGRyZXNzLXNlY3Rpb24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucGFnZV9pc19jaGVja291dF9wYWdlIC5vcmRlci1zdW1tYXJ5IC5jYXJkIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMC4xMjUpLCAwIDAuMTI1cmVtIDAuMjVyZW0gcmdiYSgwLCAwLCAwLCAwLjA3NSk7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAub3JkZXItc3VtbWFyeSAuY2FyZC1oZWFkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NlZDRkYTtcbn1cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAub3JkZXItc3VtbWFyeSAuYm9yZGVyLWJvdHRvbTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ucGFnZV9pc19jaGVja291dF9wYWdlIC5jYXJkIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2VkNGRhO1xuICBib3gtc2hhZG93OiAwIDAuMTI1cmVtIDAuMjVyZW0gcmdiYSgwLCAwLCAwLCAwLjA3NSk7XG59XG5cbi5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgLmNhcmQgLmNhcmQtaGVhZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjZWQ0ZGE7XG59XG5cbi5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgLmNhcmQgLmNhcmQtaGVhZGVyIGg1LFxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAuY2FyZCAuY2FyZC1oZWFkZXIgLmg1IHtcbiAgY29sb3I6ICM0OTUwNTc7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgLmNhcmQgLmNhcmQtaGVhZGVyIGg1IGksXG4ucGFnZV9pc19jaGVja291dF9wYWdlIC5jYXJkIC5jYXJkLWhlYWRlciAuaDUgaSB7XG4gIGNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbn1cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAuYWxlcnQge1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gIHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuXG4ucGFnZV9pc19jaGVja291dF9wYWdlIC5hbGVydC5hbGVydC1zdWNjZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QxZWNmMTtcbiAgYm9yZGVyLWNvbG9yOiAjYmVlNWViO1xuICBjb2xvcjogIzBjNTQ2MDtcbn1cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAuYWxlcnQuYWxlcnQtd2FybmluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmYzY2Q7XG4gIGJvcmRlci1jb2xvcjogI2ZmZWFhNztcbiAgY29sb3I6ICM4NTY0MDQ7XG59XG5cbi5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgLmFsZXJ0LmFsZXJ0LWRhbmdlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGQ3ZGE7XG4gIGJvcmRlci1jb2xvcjogI2Y1YzZjYjtcbiAgY29sb3I6ICM3MjFjMjQ7XG59XG5cbi5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgI3BheW1lbnQtbWV0aG9kcyAuZm9ybS1jaGVjayB7XG4gIHBhZGRpbmc6IDAuNzVyZW07XG4gIHBhZGRpbmctbGVmdDogMi4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2UtaW4tb3V0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAjcGF5bWVudC1tZXRob2RzIC5mb3JtLWNoZWNrOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgYm9yZGVyLWNvbG9yOiAjYWRiNWJkO1xufVxuXG4ucGFnZV9pc19jaGVja291dF9wYWdlICNwYXltZW50LW1ldGhvZHMgLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi1sZWZ0OiAtMS41cmVtO1xuICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgI3BheW1lbnQtbWV0aG9kcyAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1sYWJlbCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ucGFnZV9pc19jaGVja291dF9wYWdlICNwYXltZW50LW1ldGhvZHMgLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXQ6Y2hlY2tlZCB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG4ucGFnZV9pc19jaGVja291dF9wYWdlIC5mb3JtLWNoZWNrIHtcbiAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dCB7XG4gIG1hcmdpbi1sZWZ0OiAtMS41cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2VkNGRhO1xufVxuXG4ucGFnZV9pc19jaGVja291dF9wYWdlIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0OmNoZWNrZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbn1cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKHZhcigtLWJzLXByaW1hcnktcmdiKSwgMC4yNSk7XG59XG5cbi5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2stbGFiZWwge1xuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbn1cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAjYWNjb3VudC1jcmVhdGlvbi1maWVsZHMge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAjc2hpcHBpbmctYWRkcmVzcy1zZWN0aW9uIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG5cbi5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgI3NhdmVkLWFkZHJlc3Nlcy1zZWN0aW9uIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG5cbi5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgI3BsYWNlLW9yZGVyLWJ0biB7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMS41cmVtO1xuICBmb250LXNpemU6IDEuMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAjcGxhY2Utb3JkZXItYnRuOmRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC43O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4ucGFnZV9pc19jaGVja291dF9wYWdlIC50ZXh0LW11dGVkIHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbn1cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAudGV4dC1tdXRlZCAuZmFzIHtcbiAgY29sb3I6IHZhcigtLWJzLXN1Y2Nlc3MpO1xufVxuXG4ucGFnZV9pc19jaGVja291dF9wYWdlIC5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZCxcbi5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5pcy1pbnZhbGlkLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgLmlzLWludmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb24sXG4ucGFnZV9pc19jaGVja291dF9wYWdlIC5mb3JtLXNlbGVjdC5pcy1pbnZhbGlkIHtcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMjAsIDUzLCA2OSwgMC4yNSk7XG59XG5cbi5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgLmZvcm0tY29udHJvbDpmb2N1cyxcbi5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucGFnZV9pc19jaGVja291dF9wYWdlIC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgLmZvcm0tc2VsZWN0OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEodmFyKC0tYnMtcHJpbWFyeS1yZ2IpLCAwLjI1KTtcbn1cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAuaW52YWxpZC1mZWVkYmFjayxcbi5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgLmVycm9yLWhlbHAtYmxvY2sge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xufVxuXG4ucGFnZV9pc19jaGVja291dF9wYWdlIC5tb2RhbC1jb250ZW50IHtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiAwIDAuNXJlbSAxcmVtIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG5cbi5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWhlYWRlciB7XG4gIHBhZGRpbmc6IDEuNXJlbSAxLjVyZW0gMDtcbn1cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAubW9kYWwtY29udGVudCAubW9kYWwtYm9keSB7XG4gIHBhZGRpbmc6IDEuNXJlbTtcbn1cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAubW9kYWwtY29udGVudCAuYnRuIHtcbiAgcGFkZGluZzogMC43NXJlbSAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAucGFnZV9pc19jaGVja291dF9wYWdlIC5zdGlja3ktdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICB0b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgLm9yZGVyLXN1bW1hcnkge1xuICAgIG1hcmdpbi10b3A6IDJyZW07XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgLmNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMCAxcmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgLnJvdyB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAucm93IC5jb2wtbWQtNixcbiAgLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAucm93IC5jb2wtbWQtMyB7XG4gICAgcGFkZGluZzogMCAwLjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxufVxuXG4ucGFnZV9pc19vcmRlcl9yZWNlaXZlZF9wYWdlIHRhYmxlIHRoIHtcbiAgY29sb3I6ICM2NjY2NjYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLnBhZ2VfaXNfb3JkZXJfcmVjZWl2ZWRfcGFnZSAucmVjaXZlZC1oZXJvLXRleHQgaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xufVxuXG4ucGFnZV9pc19vcmRlcl9yZWNlaXZlZF9wYWdlIC5yZWNpdmVkLWhlcm8tdGV4dCBoMSxcbi5wYWdlX2lzX29yZGVyX3JlY2VpdmVkX3BhZ2UgLnJlY2l2ZWQtaGVyby10ZXh0IC5oMSB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5wYWdlX2lzX29yZGVyX3JlY2VpdmVkX3BhZ2UgLmNsaW50LWRldGFpbHMtZm9yb3JkZXIge1xuICBwYWRkaW5nOiAycmVtIDA7XG59XG5cbi5wYWdlX2lzX29yZGVyX3JlY2VpdmVkX3BhZ2UgLm9yZGVyLWl0ZW0tZmluYWwtZGVkdGFpbHMtaGVhZGVyIHtcbiAgcGFkZGluZzogMnJlbSAwO1xufVxuXG4ucGFnZV9pc19vcmRlcl9yZWNlaXZlZF9wYWdlIC5vcmRlci1pdGVtLWZpbmFsLXRvdGFsIC50YWJsZSxcbi5wYWdlX2lzX29yZGVyX3JlY2VpdmVkX3BhZ2UgLm9yZGVyLWl0ZW0tZmluYWwtdG90YWwgLnByb3NlIHRhYmxlLFxuLnByb3NlIC5wYWdlX2lzX29yZGVyX3JlY2VpdmVkX3BhZ2UgLm9yZGVyLWl0ZW0tZmluYWwtdG90YWwgdGFibGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ucGFnZV9pc19vcmRlcl9yZWNlaXZlZF9wYWdlIC5vcmRlci1pdGVtLWZpbmFsLXRvdGFsIC50YWJsZSB0ZCxcbi5wYWdlX2lzX29yZGVyX3JlY2VpdmVkX3BhZ2UgLm9yZGVyLWl0ZW0tZmluYWwtdG90YWwgLnByb3NlIHRhYmxlIHRkLFxuLnByb3NlIC5wYWdlX2lzX29yZGVyX3JlY2VpdmVkX3BhZ2UgLm9yZGVyLWl0ZW0tZmluYWwtdG90YWwgdGFibGUgdGQge1xuICBwYWRkaW5nOiAwLjVyZW0gMDtcbn1cblxuLnBhZ2VfaXNfb3JkZXJfcmVjZWl2ZWRfcGFnZSAuYnRuLWJhY2ssXG4ucGFnZV9pc19vcmRlcl9yZWNlaXZlZF9wYWdlIC5idG4tZXhwb3J0LFxuLnBhZ2VfaXNfb3JkZXJfcmVjZWl2ZWRfcGFnZSAuYnRuLWV4cG9ydDIge1xuICBtYXJnaW46IDAuNXJlbTtcbn1cblxuLyoqXG4gKiBBY2NvdW50IFBhZ2UgU3R5bGVzXG4gKiBCb290c3RyYXAgNSBlbmhhbmNlbWVudHMgZm9yIHVzZXIgYWNjb3VudCBwYWdlXG4gKi9cblxuLnBhZ2VfaXNfYWNjb3VudF9wYWdlIC55b3VyLWFjY291bnQgLmFjY291bnQtdGFiLWJ0biB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEyNSk7XG59XG5cbi5wYWdlX2lzX2FjY291bnRfcGFnZSAueW91ci1hY2NvdW50IC5hY2NvdW50LXRhYi1idG46bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbi5wYWdlX2lzX2FjY291bnRfcGFnZSAueW91ci1hY2NvdW50IC5hY2NvdW50LXRhYi1idG4gc3ZnIHtcbiAgZmlsbDogY3VycmVudENvbG9yO1xuICBvcGFjaXR5OiAwLjc7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xufVxuXG4ucGFnZV9pc19hY2NvdW50X3BhZ2UgLnlvdXItYWNjb3VudCAuYWNjb3VudC10YWItYnRuOmhvdmVyLFxuLnBhZ2VfaXNfYWNjb3VudF9wYWdlIC55b3VyLWFjY291bnQgLmFjY291bnQtdGFiLWJ0bi5hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4ucGFnZV9pc19hY2NvdW50X3BhZ2UgLnlvdXItYWNjb3VudCAuYWNjb3VudC10YWItYnRuOmhvdmVyIHN2Zyxcbi5wYWdlX2lzX2FjY291bnRfcGFnZSAueW91ci1hY2NvdW50IC5hY2NvdW50LXRhYi1idG4uYWN0aXZlIHN2ZyB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5wYWdlX2lzX2FjY291bnRfcGFnZSAueW91ci1hY2NvdW50IC55b3VyLWFjY291bnQtZGFzaGJvYXJkIC5iZy1saWdodCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xMjUpO1xufVxuXG4ucGFnZV9pc19hY2NvdW50X3BhZ2UgLnlvdXItYWNjb3VudCAuQ3VzdG9tLU9yZGVyIC5uYXYtdGFicyAubmF2LWxpbmsuYnRuLWN1c3RvbS1vcmRlciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gIGNvbG9yOiAjNmM3NTdkO1xufVxuXG4ucGFnZV9pc19hY2NvdW50X3BhZ2UgLnlvdXItYWNjb3VudCAuQ3VzdG9tLU9yZGVyIC5uYXYtdGFicyAubmF2LWxpbmsuYnRuLWN1c3RvbS1vcmRlci5hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICBib3JkZXItY29sb3I6ICNkZWUyZTYgI2RlZTJlNiB3aGl0ZTtcbn1cblxuLnBhZ2VfaXNfYWNjb3VudF9wYWdlIC55b3VyLWFjY291bnQgLkN1c3RvbS1PcmRlciAubmF2LXRhYnMgLm5hdi1saW5rLmJ0bi1jdXN0b20tb3JkZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xuICBib3JkZXItY29sb3I6ICNhZGI1YmQ7XG59XG5cbi5wYWdlX2lzX2FjY291bnRfcGFnZSAueW91ci1hY2NvdW50IC5DdXN0b20tT3JkZXIgLmN1c3RvbS1vcmRlci10YWItY29udGVudCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3JkZXItcmFkaXVzOiAwIDAgMC4zNzVyZW0gMC4zNzVyZW07XG59XG5cbi5wYWdlX2lzX2FjY291bnRfcGFnZSAueW91ci1hY2NvdW50IC5DdXN0b20tT3JkZXIgLmN1c3RvbS1vcmRlci10YWItY29udGVudCAudGFiLXBhbmUge1xuICBwYWRkaW5nOiAxLjVyZW07XG59XG5cbi5wYWdlX2lzX2FjY291bnRfcGFnZSAueW91ci1hY2NvdW50IC5mb3JtLXRleHQge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBjb2xvcjogIzZjNzU3ZDtcbn1cblxuLnBhZ2VfaXNfYWNjb3VudF9wYWdlIC55b3VyLWFjY291bnQgLmNhcmQtYm9keSAuZGF0YVRhYmxlc193cmFwcGVyIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC5wYWdlX2lzX2FjY291bnRfcGFnZSAueW91ci1hY2NvdW50IC5hY2NvdW50LXRhYi1idG4ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC5wYWdlX2lzX2FjY291bnRfcGFnZSAueW91ci1hY2NvdW50IC5hY2NvdW50LXRhYi1idG4gc3ZnIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgYXV0byAwLjVyZW07XG4gIH1cbn1cblxuLyogUHJvZmlsZSBQYWdlIFN0eWxlcyAqL1xuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2Uge1xuICAvKiBNb2JpbGUgQ29sbGFwc2libGUgU2VjdGlvbnMgKi9cbiAgLyogQWNjb3JkaW9uLXN0eWxlIFNlY3Rpb25zICovXG4gIC8qIFNtb290aCBTY3JvbGxpbmcgZm9yIE1vYmlsZSAqL1xuICAvKiBNb2RhbCBTd2lwZSBJbmRpY2F0b3IgKi9cbiAgLyogQWNjZXNzaWJpbGl0eSBJbXByb3ZlbWVudHMgKi9cbiAgLyogSGlnaCBDb250cmFzdCBNb2RlICovXG4gIC8qIExvYWRpbmcgU3RhdGVzIGZvciBEeW5hbWljIENvbnRlbnQgKi9cbiAgLyogRW5oYW5jZWQgVG91Y2ggVGFyZ2V0cyAqL1xuICAvKiBNb2JpbGUgQWRkcmVzcyBCb29rIFN0eWxlcyAqL1xuICAvKiBNb2JpbGUgSGVhZGVyIFNlY3Rpb24gKi9cbiAgLyogTW9iaWxlIEFkZHJlc3MgQ2FyZHMgKi9cbiAgLyogTW9iaWxlIEVtcHR5IFN0YXRlICovXG4gIC8qIE1vYmlsZSBNb2RhbCBPcHRpbWl6YXRpb25zICovXG4gIC8qIFRvdWNoIEZlZWRiYWNrICovXG4gIC8qIEltcHJvdmVkIENhcmQgR3JpZCBvbiBTbWFsbCBUYWJsZXRzICovXG4gIC8qIExvYWRpbmcgU3RhdGVzICovXG4gIC8qIEFkZHJlc3MgQ2FyZCBIb3ZlciBFZmZlY3RzICovXG4gIC8qIExhbmRzY2FwZSBNb2JpbGUgT3B0aW1pemF0aW9uICovXG4gIC8qIEltcHJvdmVkIFNwYWNpbmcgKi9cbiAgLyogTW9iaWxlIEZvcm0gT3B0aW1pemF0aW9uIFN0eWxlcyAqL1xuICAvKiBCYXNlIEZvcm0gQ29udHJvbCBTdHlsZXMgKi9cbiAgLyogRW5oYW5jZWQgVG91Y2ggVGFyZ2V0cyBmb3IgQ2hlY2tib3hlcyBhbmQgUmFkaW9zICovXG4gIC8qIE1vYmlsZSBGb3JtIFNwYWNpbmcgKi9cbiAgLyogRW5oYW5jZWQgU2VsZWN0IERyb3Bkb3ducyAqL1xuICAvKiBJbnB1dCBHcm91cHMgKi9cbiAgLyogRmlsZSBVcGxvYWQgU3R5bGluZyAqL1xuICAvKiBGb3JtIFZhbGlkYXRpb24gRmVlZGJhY2sgKi9cbiAgLyogTW9iaWxlIEJ1dHRvbiBTdHlsZXMgKi9cbiAgLyogRm9ybSBSb3cgU3BhY2luZyAqL1xuICAvKiBNb2JpbGUtU3BlY2lmaWMgRm9ybSBMYXlvdXRzICovXG4gIC8qIFRvdWNoIEZlZWRiYWNrICovXG4gIC8qIExvYWRpbmcgU3RhdGVzICovXG4gIC8qIEltcHJvdmVkIEVycm9yIFN0YXRlcyAqL1xuICAvKiBQYXNzd29yZCBUb2dnbGUgQnV0dG9uIEVuaGFuY2VtZW50ICovXG4gIC8qIFJhbmdlIElucHV0cyAoaWYgYW55KSAqL1xuICAvKiBGbG9hdGluZyBMYWJlbHMgKGlmIHVzZWQpICovXG4gIC8qIGlPUy1TcGVjaWZpYyBGaXhlcyAqL1xuICAvKiBBbmRyb2lkLVNwZWNpZmljIEZpeGVzICovXG4gIC8qIE1vYmlsZSBEYXNoYm9hcmQgU3R5bGVzICovXG4gIC8qIE1vYmlsZSBTdGF0aXN0aWNzIENhcmRzICovXG4gIC8qIE1vYmlsZSBPcmRlciBDYXJkcyAtIFJlcGxhY2UgdGFibGUgb24gc21hbGwgc2NyZWVucyAqL1xuICAvKiBNb2JpbGUgV2VsY29tZSBTZWN0aW9uICovXG4gIC8qIE1vYmlsZSBRdWljayBBY3Rpb25zICovXG4gIC8qIE1vYmlsZSBOb3RpZmljYXRpb25zICovXG4gIC8qIERhc2hib2FyZCBUb3VjaCBGZWVkYmFjayAqL1xuICAvKiBJbXByb3ZlZCBEYXNoYm9hcmQgU3BhY2luZyBvbiBNb2JpbGUgKi9cbiAgLyogRGFzaGJvYXJkIExvYWRpbmcgU3RhdGVzICovXG4gIC8qIExhbmRzY2FwZSBNb2JpbGUgRGFzaGJvYXJkIE9wdGltaXphdGlvbiAqL1xuICAvKiBNb2JpbGUgT3JkZXJzIFBhZ2UgU3R5bGVzICovXG4gIC8qIE1vYmlsZSBGaWx0ZXIgU2VjdGlvbiAqL1xuICAvKiBNb2JpbGUgT3JkZXIgTGlzdCBDYXJkcyAqL1xuICAvKiBNb2JpbGUgU3RhdHVzIEd1aWRlICovXG4gIC8qIE1vYmlsZSBPcmRlcnMgUGFnaW5hdGlvbiAqL1xuICAvKiBPcmRlcnMgVG91Y2ggRmVlZGJhY2sgKi9cbiAgLyogT3JkZXJzIExvYWRpbmcgU3RhdGVzICovXG4gIC8qIEZpbHRlciBCYWRnZSBDb3VudGVyICovXG4gIC8qIEhpZ2ggQ29udHJhc3QgT3JkZXJzICovXG4gIC8qIExhbmRzY2FwZSBNb2JpbGUgT3JkZXJzICovXG4gIC8qIE1vYmlsZSBPcmRlciBEZXRhaWwgUGFnZSBTdHlsZXMgKi9cbiAgLyogTW9iaWxlIE9yZGVyIFN1bW1hcnkgKi9cbiAgLyogTW9iaWxlIFRpbWVsaW5lICovXG4gIC8qIE1vYmlsZSBPcmRlciBJdGVtcyAqL1xuICAvKiBNb2JpbGUgQWN0aW9uIEJ1dHRvbnMgKi9cbiAgLyogTW9iaWxlIEFkZHJlc3MgQ2FyZHMgT3JkZXIgRGV0YWlsICovXG4gIC8qIE9yZGVyIERldGFpbCBUb3VjaCBGZWVkYmFjayAqL1xuICAvKiBPcmRlciBEZXRhaWwgU3BhY2luZyAqL1xuICAvKiBTdGF0dXMgQmFkZ2UgQWRqdXN0bWVudHMgKi9cbiAgLyogT3JkZXIgRGV0YWlsIExvYWRpbmcgU3RhdGVzICovXG4gIC8qIEhpZ2ggQ29udHJhc3QgT3JkZXIgRGV0YWlsICovXG4gIC8qIFByaW50IFN0eWxlcyAqL1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIHtcbiAgICAvKiBDb2xsYXBzZSBDb250ZW50ICovXG4gICAgLyogQWRkcmVzcyBDYXJkIEV4cGFuZCBBcmVhICovXG4gICAgLyogVGV4dCBUcnVuY2F0aW9uICovXG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1jb2xsYXBzaWJsZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1jb2xsYXBzaWJsZTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXFxmMDc4XCI7XG4gICAgLyogZmEtY2hldnJvbi1kb3duICovXG4gICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgY29sb3I6ICM2Yzc1N2Q7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1jb2xsYXBzaWJsZS5jb2xsYXBzZWQ6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKC05MGRlZyk7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1jb2xsYXBzaWJsZTpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtY29sbGFwc2libGU6Zm9jdXMge1xuICAgIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICBvdXRsaW5lLW9mZnNldDogMnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1jb2xsYXBzZS1jb250ZW50IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgMC4zcyBlYXNlLCBvcGFjaXR5IDAuM3MgZWFzZTtcbiAgICBtYXgtaGVpZ2h0OiAyMDAwcHg7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9iaWxlLWNvbGxhcHNlLWNvbnRlbnQuY29sbGFwc2VkIHtcbiAgICBtYXgtaGVpZ2h0OiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtZXhwYW5kLWFyZWEge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDAuNXJlbTtcbiAgICByaWdodDogMC41cmVtO1xuICAgIHdpZHRoOiAzMnB4O1xuICAgIGhlaWdodDogMzJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1ncmF5LTEwMCk7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtZXhwYW5kLWFyZWE6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWdyYXktMjAwKTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9iaWxlLWV4cGFuZC1hcmVhIGkge1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtdGV4dC10cnVuY2F0ZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1heC1oZWlnaHQ6IDEwMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjNzIGVhc2U7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS10ZXh0LXRydW5jYXRlOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHRyYW5zcGFyZW50LCB3aGl0ZSk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS10ZXh0LXRydW5jYXRlLmV4cGFuZGVkIHtcbiAgICBtYXgtaGVpZ2h0OiBub25lO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtdGV4dC10cnVuY2F0ZS5leHBhbmRlZDo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS10ZXh0LXRydW5jYXRlIC5idG4tbGluayB7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtdGV4dC10cnVuY2F0ZSAuYnRuLWxpbms6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtY2FyZC5hY2NvcmRpb24tc3R5bGUge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucHJvZmlsZS1jYXJkLmFjY29yZGlvbi1zdHlsZSA+IGg0LFxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtY2FyZC5hY2NvcmRpb24tc3R5bGUgPiAuaDQsXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucHJvZmlsZS1jYXJkLmFjY29yZGlvbi1zdHlsZSA+IGg1LFxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtY2FyZC5hY2NvcmRpb24tc3R5bGUgPiAuaDUge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWdyYXktMTAwKTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYnMtZ3JheS0zMDApO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLWNhcmQuYWNjb3JkaW9uLXN0eWxlID4gZGl2IHtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmhvcml6b250YWwtc2Nyb2xsIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbiAgICBzY3JvbGxiYXItd2lkdGg6IHRoaW47XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmhvcml6b250YWwtc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgaGVpZ2h0OiA2cHg7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmhvcml6b250YWwtc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgYmFja2dyb3VuZDogI2YxZjFmMTtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmhvcml6b250YWwtc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgYmFja2dyb3VuZDogIzg4ODtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmhvcml6b250YWwtc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogIzU1NTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2RhbC1jb250ZW50OjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMC41cmVtO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtZ3JheS00MDApO1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9kYWwtZGlhbG9nIHtcbiAgICBtYXJnaW4tdG9wOiAyMHZoO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2U7XG4gIH1cbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtY29sbGFwc2libGU6OmFmdGVyLFxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1jb2xsYXBzZS1jb250ZW50LFxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS10ZXh0LXRydW5jYXRlLFxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1leHBhbmQtYXJlYSB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgKHByZWZlcnMtY29udHJhc3Q6IGhpZ2gpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtY29sbGFwc2libGUge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtY29sbGFwc2libGU6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9iaWxlLWV4cGFuZC1hcmVhIHtcbiAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1icy1kYXJrKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgfVxufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1sb2FkaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxMDBweDtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtbG9hZGluZzo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIG1hcmdpbjogLTE1cHggMCAwIC0xNXB4O1xuICBib3JkZXI6IDNweCBzb2xpZCAjZjNmM2YzO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJvcmRlci10b3A6IDNweCBzb2xpZCB2YXIoLS1icy1wcmltYXJ5KTtcbiAgYW5pbWF0aW9uOiBzcGluIDFzIGxpbmVhciBpbmZpbml0ZTtcbn1cblxuQGtleWZyYW1lcyBzcGluIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtdG91Y2gtdGFyZ2V0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWluLWhlaWdodDogNDhweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS10b3VjaC10YXJnZXQ6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtOHB4O1xuICAgIHJpZ2h0OiAtOHB4O1xuICAgIGJvdHRvbTogLThweDtcbiAgICBsZWZ0OiAtOHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmQtZmxleC5qdXN0aWZ5LWNvbnRlbnQtYmV0d2Vlbi5hbGlnbi1pdGVtcy1jZW50ZXIubWItNCB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuZC1mbGV4Lmp1c3RpZnktY29udGVudC1iZXR3ZWVuLmFsaWduLWl0ZW1zLWNlbnRlci5tYi00ID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5kLWZsZXguanVzdGlmeS1jb250ZW50LWJldHdlZW4uYWxpZ24taXRlbXMtY2VudGVyLm1iLTQgaDMsXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuZC1mbGV4Lmp1c3RpZnktY29udGVudC1iZXR3ZWVuLmFsaWduLWl0ZW1zLWNlbnRlci5tYi00IC5oMyB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmQtZmxleC5qdXN0aWZ5LWNvbnRlbnQtYmV0d2Vlbi5hbGlnbi1pdGVtcy1jZW50ZXIubWItNCBwIHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5kLWZsZXguanVzdGlmeS1jb250ZW50LWJldHdlZW4uYWxpZ24taXRlbXMtY2VudGVyLm1iLTQgLmJ0biB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogNDhweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIHtcbiAgICAvKiBDYXJkIEhlYWRlciBBZGp1c3RtZW50cyAqL1xuICAgIC8qIERyb3Bkb3duIEJ1dHRvbiBFbmhhbmNlbWVudCAqL1xuICAgIC8qIERyb3Bkb3duIE1lbnUgUG9zaXRpb25pbmcgKi9cbiAgICAvKiBEcm9wZG93biBJdGVtcyBUb3VjaCBGcmllbmRseSAqL1xuICAgIC8qIEFkZHJlc3MgRGV0YWlscyAqL1xuICAgIC8qIFZlcmlmaWNhdGlvbiBTdGF0dXMgKi9cbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuY29sLW1kLTYuY29sLWxnLTQge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmFkZHJlc3MtY2FyZCB7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5hZGRyZXNzLWNhcmQgaDUsXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuYWRkcmVzcy1jYXJkIC5oNSB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmFkZHJlc3MtY2FyZCAuYmFkZ2Uge1xuICAgIGZvbnQtc2l6ZTogMC43cmVtO1xuICAgIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5kcm9wZG93biAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5LmJ0bi1zbSxcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5kcm9wZG93biAuYnRuLWdyb3VwLXNtID4gLmJ0bi1vdXRsaW5lLXNlY29uZGFyeS5idG4ge1xuICAgIHdpZHRoOiA0NHB4O1xuICAgIGhlaWdodDogNDRweDtcbiAgICBtaW4td2lkdGg6IDQ0cHg7XG4gICAgbWluLWhlaWdodDogNDRweDtcbiAgICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmRyb3Bkb3duLW1lbnUge1xuICAgIG1pbi13aWR0aDogMTJyZW07XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuZHJvcGRvd24taXRlbSB7XG4gICAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICAgIG1pbi1oZWlnaHQ6IDQ0cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5kcm9wZG93bi1pdGVtIGkge1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuYWRkcmVzcy1kZXRhaWxzIHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmFkZHJlc3MtZGV0YWlscyBzdHJvbmcge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuYWRkcmVzcy1jYXJkIHNtYWxsLFxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmFkZHJlc3MtY2FyZCAuc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLWNhcmQudGV4dC1jZW50ZXIucHktNSB7XG4gICAgcGFkZGluZzogM3JlbSAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucHJvZmlsZS1jYXJkIC5mYS0zeCB7XG4gICAgZm9udC1zaXplOiAyLjVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtY2FyZCBoNCxcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLWNhcmQgLmg0IHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucHJvZmlsZS1jYXJkIHAge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLWNhcmQgLmJ0biB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgICBtaW4taGVpZ2h0OiA0OHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vZGFsLWRpYWxvZyB7XG4gICAgbWFyZ2luOiAwLjVyZW07XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAxcmVtKTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9kYWwtY29udGVudCB7XG4gICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2RhbC1oZWFkZXIsXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9kYWwtYm9keSxcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2RhbC1mb290ZXIge1xuICAgIHBhZGRpbmc6IDFyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vZGFsLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2RhbC1ib2R5IHAge1xuICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vZGFsLWZvb3RlciB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9kYWwtZm9vdGVyIC5idG4ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDQ4cHg7XG4gICAgbWFyZ2luOiAwLjI1cmVtIDA7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vZGFsLWZvb3RlciBmb3JtIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG5AbWVkaWEgKGhvdmVyOiBub25lKSBhbmQgKHBvaW50ZXI6IGNvYXJzZSkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmFkZHJlc3MtY2FyZDphY3RpdmUge1xuICAgIGJveC1zaGFkb3c6IDAgMC4yNXJlbSAwLjVyZW0gcmdiYSgwLCAwLCAwLCAwLjEpO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5kcm9wZG93bi1pdGVtOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtZ3JheS0xMDApO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucm93IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMjgwcHgsIDFmcikpO1xuICAgIGdhcDogMXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuY29sLW1kLTYuY29sLWxnLTQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5hZGRyZXNzLWNhcmQubG9hZGluZyB7XG4gIG9wYWNpdHk6IDAuNjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuZHJvcGRvd24taXRlbS5sb2FkaW5nIHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG5AbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmFkZHJlc3MtY2FyZDpob3ZlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xuICB9XG59XG5cbkBtZWRpYSAoaG92ZXI6IG5vbmUpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5hZGRyZXNzLWNhcmQ6aG92ZXIge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmQtZmxleC5qdXN0aWZ5LWNvbnRlbnQtYmV0d2Vlbi5hbGlnbi1pdGVtcy1jZW50ZXIubWItNCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5kLWZsZXguanVzdGlmeS1jb250ZW50LWJldHdlZW4uYWxpZ24taXRlbXMtY2VudGVyLm1iLTQgPiBkaXY6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmQtZmxleC5qdXN0aWZ5LWNvbnRlbnQtYmV0d2Vlbi5hbGlnbi1pdGVtcy1jZW50ZXIubWItNCAuYnRuIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDAgMC41cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5hZGRyZXNzLWNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnJvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC41cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5jb2wtbWQtNi5jb2wtbGctNCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICB9XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuZm9ybS1jb250cm9sLFxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5zZWxlY3QyLXNlbGVjdGlvbixcbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuZm9ybS1zZWxlY3QsXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmJ0biB7XG4gIG1pbi1oZWlnaHQ6IDQ4cHg7XG4gIC8qIFRvdWNoIHRhcmdldCBtaW5pbXVtICovXG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgLyogUHJldmVudCB6b29tIG9uIGlPUyAqL1xuICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuZm9ybS1jaGVjayB7XG4gIG1pbi1oZWlnaHQ6IDQ4cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuZm9ybS1jaGVjay1pbnB1dCB7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1yaWdodDogMC43NXJlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXI6IDJweCBzb2xpZCAjNmM3NTdkO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmZvcm0tY2hlY2staW5wdXQ6Y2hlY2tlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmZvcm0tY2hlY2stbGFiZWwge1xuICBmbGV4OiAxO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5mb3JtLWxhYmVsIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBmb250LXNpemU6IDAuOTVyZW07XG4gIGNvbG9yOiAjMjEyNTI5O1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmZvcm0tdGV4dCB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmZvcm0tc2VsZWN0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNiclM2UlM2NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzMzQzYTQwJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMicgZD0nTTIgNWw2IDYgNi02Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDE2cHggMTJweDtcbiAgcGFkZGluZy1yaWdodDogMi41cmVtO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbCxcbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmlucHV0LWdyb3VwID4gLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuaW5wdXQtZ3JvdXAgPiAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmlucHV0LWdyb3VwID4gLmZvcm0tc2VsZWN0LFxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5pbnB1dC1ncm91cCA+IC5idG4ge1xuICBtaW4taGVpZ2h0OiA0OHB4O1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmlucHV0LWdyb3VwLXRleHQge1xuICBtaW4taGVpZ2h0OiA0OHB4O1xuICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5idG4tZmlsZS11cGxvYWQge1xuICBtaW4taGVpZ2h0OiA0OHB4O1xuICBwYWRkaW5nOiAwLjc1cmVtIDEuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMC41cmVtO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmludmFsaWQtZmVlZGJhY2ssXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmVycm9yLWhlbHAtYmxvY2ssXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLnZhbGlkLWZlZWRiYWNrIHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuaXMtaW52YWxpZCB7XG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbiAgYm9yZGVyLXdpZHRoOiAycHg7XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuaXMtdmFsaWQge1xuICBib3JkZXItY29sb3I6ICMyOGE3NDU7XG4gIGJvcmRlci13aWR0aDogMnB4O1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmJ0biB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMS41cmVtO1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5idG4tcHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLnJvdy5tYi0zLFxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5yb3cubWItNCB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIHtcbiAgICAvKiBTdGFjayBmb3JtIGJ1dHRvbnMgdmVydGljYWxseSBvbiBtb2JpbGUgKi9cbiAgICAvKiBMYXJnZXIgc3BhY2luZyBiZXR3ZWVuIGZvcm0gc2VjdGlvbnMgKi9cbiAgICAvKiBDYXJkIHNwYWNpbmcgYWRqdXN0bWVudHMgKi9cbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuY29sLW1kLTYge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmNvbC1tZC02Omxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmJ0bi1ncm91cC1tb2JpbGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDAuNzVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmJ0bi1ncm91cC1tb2JpbGUgLmJ0biB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgaDUubWItMyxcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tYi0zLmg1IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXRvcDogMnJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmNhcmQtYm9keSB7XG4gICAgcGFkZGluZzogMS4yNXJlbTtcbiAgfVxufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmZvcm0tY29udHJvbDpmb2N1cyxcbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmZvcm0tc2VsZWN0OmZvY3VzLFxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5idG46Zm9jdXMge1xuICBvdXRsaW5lOiAzcHggc29saWQgcmdiYSgxMywgMTEwLCAyNTMsIDAuMjUpO1xuICBvdXRsaW5lLW9mZnNldDogMnB4O1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmJ0bltkaXNhYmxlZF0ge1xuICBvcGFjaXR5OiAwLjY1O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmJ0bi5sb2FkaW5nIHtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuYnRuLmxvYWRpbmc6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gIG1hcmdpbi10b3A6IC0xMHB4O1xuICBib3JkZXI6IDJweCBzb2xpZCAjZjNmM2YzO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAjMzQ5OGRiO1xuICBhbmltYXRpb246IHNwaW4gMXMgbGluZWFyIGluZmluaXRlO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkOmZvY3VzLFxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuaXMtaW52YWxpZC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmlzLWludmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICNkYzM1NDU7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyMCwgNTMsIDY5LCAwLjI1KTtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wYXNzd29yZC10b2dnbGUtYnRuIHtcbiAgbWluLXdpZHRoOiA0OHB4O1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIGlucHV0W3R5cGU9cmFuZ2VdIHtcbiAgaGVpZ2h0OiA0OHB4O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIGlucHV0W3R5cGU9cmFuZ2VdOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgaGVpZ2h0OiAzMnB4O1xuICB3aWR0aDogMzJweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBtYXJnaW4tdG9wOiAtMTRweDtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIGlucHV0W3R5cGU9cmFuZ2VdOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDRweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiAjZGRkO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2wsXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5mb3JtLWZsb2F0aW5nID4gLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuZm9ybS1mbG9hdGluZyA+IC5zZWxlY3QyLXNlbGVjdGlvbixcbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuZm9ybS1mbG9hdGluZyA+IC5mb3JtLXNlbGVjdCB7XG4gIG1pbi1oZWlnaHQ6IDU4cHg7XG4gIHBhZGRpbmctdG9wOiAxLjYyNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNjI1cmVtO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmZvcm0tZmxvYXRpbmcgPiBsYWJlbCB7XG4gIHBhZGRpbmc6IDFyZW0gMC43NXJlbTtcbn1cblxuQHN1cHBvcnRzICgtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmUpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5mb3JtLWNvbnRyb2wsXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uLFxuICAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5zZWxlY3QyLXNlbGVjdGlvbixcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5mb3JtLXNlbGVjdCB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIC8qIFByZXZlbnRzIHpvb20gKi9cbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSBzZWxlY3QuZm9ybS1zZWxlY3Qge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAwKSB7XG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIHtcbiAgICAvKiBUd28gY29sdW1ucyBvbiBtb2JpbGUgZm9yIGJldHRlciBzcGFjZSB1dGlsaXphdGlvbiAqL1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5zdGF0LWNhcmQge1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgbWluLWhlaWdodDogYXV0bztcbiAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5zdGF0LWNhcmQgLnN0YXQtdmFsdWUge1xuICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5zdGF0LWNhcmQgLnN0YXQtbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuY29sLXNtLTYge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZS5wYWdlLWlzLXByb2ZpbGUtb3JkZXJzIC50YWJsZS1yZXNwb25zaXZlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtb3JkZXItY2FyZHMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtb3JkZXItY2FyZCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjJzIGVhc2U7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1vcmRlci1jYXJkOmFjdGl2ZSB7XG4gICAgYm94LXNoYWRvdzogMCAwLjEyNXJlbSAwLjI1cmVtIHJnYmEoMCwgMCwgMCwgMC4wNzUpO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtb3JkZXItaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtb3JkZXItbnVtYmVyIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtb3JkZXItc3RhdHVzIHtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1vcmRlci1kZXRhaWxzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1vcmRlci1kYXRlIHtcbiAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtb3JkZXItdG90YWwge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9iaWxlLW9yZGVyLWFjdGlvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICAgIG1pbi1oZWlnaHQ6IDQ0cHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9iaWxlLW9yZGVyLWNhcmRzIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtaGVhZGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMS41cmVtIDFyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtaGVhZGVyIGgzLFxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtaGVhZGVyIC5oMyB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLWhlYWRlciBwIHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtaGVhZGVyIC5idG4ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMzAwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSB7XG4gICAgLyogVHdvIGNvbHVtbnMgZm9yIHF1aWNrIGFjdGlvbiBidXR0b25zIG9uIG1vYmlsZSAqL1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLWNhcmQgaDQsXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucHJvZmlsZS1jYXJkIC5oNCB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnF1aWNrLWFjdGlvbi1tb2JpbGUge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgIGdhcDogMC43NXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucXVpY2stYWN0aW9uLW1vYmlsZSAuYnRuIHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIHBhZGRpbmc6IDAuNzVyZW0gMC41cmVtO1xuICAgIG1pbi1oZWlnaHQ6IDQ4cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5xdWljay1hY3Rpb24tbW9iaWxlIC5idG4gaSB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5saXN0LWdyb3VwLWl0ZW0gaDYsXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubGlzdC1ncm91cC1pdGVtIC5oNiB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubGlzdC1ncm91cC1pdGVtIHAge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubGlzdC1ncm91cC1pdGVtIHNtYWxsLFxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmxpc3QtZ3JvdXAtaXRlbSAuc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBjb2xvcjogIzZjNzU3ZDtcbiAgfVxufVxuXG5AbWVkaWEgKGhvdmVyOiBub25lKSBhbmQgKHBvaW50ZXI6IGNvYXJzZSkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnN0YXQtY2FyZDphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1vcmRlci1jYXJkOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLWhlYWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5yb3cubWItNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtY2FyZCB7XG4gICAgcGFkZGluZzogMS4yNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtY2FyZDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9iaWxlLW9yZGVyLWNhcmQubG9hZGluZyB7XG4gIG9wYWNpdHk6IDAuNjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9iaWxlLW9yZGVyLWNhcmQubG9hZGluZzo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIG1hcmdpbjogLTEwcHggMCAwIC0xMHB4O1xuICBib3JkZXI6IDJweCBzb2xpZCAjZjNmM2YzO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCB2YXIoLS1icy1wcmltYXJ5KTtcbiAgYW5pbWF0aW9uOiBzcGluIDFzIGxpbmVhciBpbmZpbml0ZTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5zdGF0LWNhcmQge1xuICAgIHBhZGRpbmc6IDAuNzVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnN0YXQtY2FyZCAuc3RhdC12YWx1ZSB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtaGVhZGVyIHtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLWhlYWRlciBoMyxcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLWhlYWRlciAuaDMge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlICNtb2JpbGUtZmlsdGVyLXRvZ2dsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBtaW4taGVpZ2h0OiA0OHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlICNvcmRlci1maWx0ZXItZm9ybSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAjb3JkZXItZmlsdGVyLWZvcm0uc2hvdyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZWUyZTY7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuZmlsdGVyLWFjdGl2ZS1pbmRpY2F0b3Ige1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBwYWRkaW5nOiAwLjEyNXJlbSAwLjVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMXJlbTtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlICNtb2JpbGUtZmlsdGVyLXRvZ2dsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAjb3JkZXItZmlsdGVyLWZvcm0ge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSB7XG4gICAgLyogT3JkZXIgSGVhZGVyICovXG4gICAgLyogT3JkZXIgRGV0YWlscyAqL1xuICAgIC8qIEFjdGlvbiBCdXR0b25zICovXG4gICAgLyogUXVpY2sgVmlldyBEZXRhaWxzICovXG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1vcmRlcnMtbGlzdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1vcmRlci1pdGVtIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjJzIGVhc2U7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1vcmRlci1pdGVtOmFjdGl2ZSB7XG4gICAgYm94LXNoYWRvdzogMCAwLjEyNXJlbSAwLjI1cmVtIHJnYmEoMCwgMCwgMCwgMC4wNzUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1vcmRlci1oZWFkZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1vcmRlci1pZCB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtb3JkZXItZGF0ZSB7XG4gICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9iaWxlLW9yZGVyLXBheW1lbnQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtb3JkZXItdG90YWwge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtb3JkZXItaW5mbyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTllY2VmO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTllY2VmO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtb3JkZXItaXRlbXMge1xuICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1vcmRlci1hY3Rpb25zIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMTAwcHgsIDFmcikpO1xuICAgIGdhcDogMC41cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtb3JkZXItYWN0aW9ucyAuYnRuIHtcbiAgICBtaW4taGVpZ2h0OiA0NHB4O1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgcGFkZGluZzogMC41cmVtO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBnYXA6IDAuMjVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1vcmRlci1hY3Rpb25zIC5idG4gaSB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtb3JkZXItcXVpY2stZGV0YWlscyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGVlMmU2O1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtb3JkZXItcXVpY2stZGV0YWlscy5zaG93IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtb3JkZXJzLWxpc3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuc3RhdHVzLWd1aWRlLW1vYmlsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICAgIG1hcmdpbjogLTAuNXJlbTtcbiAgICBwYWRkaW5nOiAwLjVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnN0YXR1cy1ndWlkZS1tb2JpbGU6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICBoZWlnaHQ6IDRweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuc3RhdHVzLWd1aWRlLW1vYmlsZTo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgIGJhY2tncm91bmQ6ICNmMWYxZjE7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnN0YXR1cy1ndWlkZS1tb2JpbGU6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICBiYWNrZ3JvdW5kOiAjODg4O1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuc3RhdHVzLWd1aWRlLWl0ZW0ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDAuNXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuc3RhdHVzLWd1aWRlLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5yb3cuZy0yIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnN0YXR1cy1ndWlkZS1tb2JpbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucGFnaW5hdGlvbiB7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucGFnZS1saW5rIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMC43NXJlbTtcbiAgICBtaW4td2lkdGg6IDQ0cHg7XG4gICAgbWluLWhlaWdodDogNDRweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtb3JkZXItaXRlbS5sb2FkaW5nIHtcbiAgb3BhY2l0eTogMC42O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5maWx0ZXItY291bnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1kYW5nZXIpO1xuICBjb2xvcjogd2hpdGU7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG59XG5cbkBtZWRpYSAocHJlZmVycy1jb250cmFzdDogaGlnaCkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1vcmRlci1pdGVtIHtcbiAgICBib3JkZXItd2lkdGg6IDJweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9iaWxlLW9yZGVyLWlkIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1vcmRlci1hY3Rpb25zIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2Uge1xuICAgIC8qIE9yZGVyIFN0YXR1cyBTZWN0aW9uICovXG4gICAgLyogSW5mbyBHcmlkIG9uIE1vYmlsZSAqL1xuICAgIC8qIExhYmVscyBhbmQgVmFsdWVzICovXG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtY2FyZCAucm93IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5jb2wtbWQtNC50ZXh0LW1kLWVuZCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGVlMmU2O1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5jb2wtNi5jb2wtbWQtNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuY29sLTYuY29sLW1kLTQ6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSBsYWJlbC50ZXh0LW11dGVkLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSBwLmZ3LXNlbWlib2xkIHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnRpbWVsaW5lIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnRpbWVsaW5lOjpiZWZvcmUge1xuICAgIGxlZnQ6IDZweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAudGltZWxpbmUtbWFya2VyIHtcbiAgICBsZWZ0OiAtMTRweDtcbiAgICB3aWR0aDogMTBweDtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnRpbWVsaW5lLWNvbnRlbnQgaDYsXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAudGltZWxpbmUtY29udGVudCAuaDYge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnRpbWVsaW5lLWNvbnRlbnQgcCB7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC50aW1lbGluZS1pdGVtIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIHtcbiAgICAvKiBTaG93IG1vYmlsZSBjYXJkcyAqL1xuICAgIC8qIE9yZGVyIFN1bW1hcnkgb24gTW9iaWxlICovXG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1vcmRlci1pdGVtcyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1pdGVtLWNhcmQge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG4gICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtaXRlbS1oZWFkZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiAxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1pdGVtLWltYWdlIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICB3aWR0aDogODBweDtcbiAgICBoZWlnaHQ6IDgwcHg7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1pdGVtLWltYWdlIGltZyxcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtaXRlbS1pbWFnZSAucGxhY2Vob2xkZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9iaWxlLWl0ZW0taW1hZ2UgLnBsYWNlaG9sZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9iaWxlLWl0ZW0tZGV0YWlscyB7XG4gICAgZmxleDogMTtcbiAgICBtaW4td2lkdGg6IDA7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1pdGVtLW5hbWUge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtaXRlbS1za3Uge1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtaXRlbS1wcmljaW5nIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmctdG9wOiAwLjc1cmVtO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTllY2VmO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtaXRlbS1wcmljZSB7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBjb2xvcjogIzZjNzU3ZDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9iaWxlLWl0ZW0tcXR5IHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGNvbG9yOiAjNmM3NTdkO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtaXRlbS10b3RhbCB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1vcmRlci1zdW1tYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1zdW1tYXJ5LXJvdyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1zdW1tYXJ5LXJvdzpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNkZWUyZTY7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1zdW1tYXJ5LWxhYmVsIHtcbiAgICBjb2xvcjogIzQ5NTA1NztcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9iaWxlLXN1bW1hcnktdmFsdWUge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtc3VtbWFyeS12YWx1ZS50ZXh0LWRhbmdlciB7XG4gICAgY29sb3I6ICNkYzM1NDUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtb3JkZXItaXRlbXMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSB7XG4gICAgLyogQm90dG9tIEFjdGlvbnMgKi9cbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucHJvZmlsZS1hY3Rpb25zIC5idG4tZ3JvdXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBnYXA6IDAuNXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucHJvZmlsZS1hY3Rpb25zIC5idG4ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDQ4cHg7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnRleHQtY2VudGVyLm10LTQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDAuNzVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnRleHQtY2VudGVyLm10LTQgLmJ0biB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogNDhweDtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5jb2wtbWQtNiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuY29sLW1kLTY6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucHJvZmlsZS1jYXJkIGFkZHJlc3Mge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucHJvZmlsZS1jYXJkIGg1LFxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtY2FyZCAuaDUge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgKGhvdmVyOiBub25lKSBhbmQgKHBvaW50ZXI6IGNvYXJzZSkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1pdGVtLWNhcmQ6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtY2FyZCB7XG4gICAgcGFkZGluZzogMS4yNXJlbSAxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtY2FyZCBoNCxcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLWNhcmQgLmg0IHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5iYWRnZS5mcy02IHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMC41cmVtIDFyZW0gIWltcG9ydGFudDtcbiAgfVxufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1pdGVtLWNhcmQubG9hZGluZyB7XG4gIG9wYWNpdHk6IDAuNjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbkBtZWRpYSAocHJlZmVycy1jb250cmFzdDogaGlnaCkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1pdGVtLWNhcmQge1xuICAgIGJvcmRlci13aWR0aDogMnB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtc3VtbWFyeS1yb3c6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogM3B4O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCB7XG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9iaWxlLW9yZGVyLWl0ZW1zIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnRhYmxlLXJlc3BvbnNpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLyoqXG4gKiBQcm9maWxlIEVkaXQgUGFnZSBTdHlsZXNcbiAqL1xuXG4ucGFnZV9pc19lZGl0X3Byb2ZpbGUsXG4ucGFnZV9pc19wcm9maWxlX2VkaXQge1xuICAvKiBQcm9maWxlIGNhcmQgaG92ZXIgc3RhdGUgZGlzYWJsZWQgKi9cbn1cblxuLnBhZ2VfaXNfZWRpdF9wcm9maWxlIC5wcm9maWxlLWltYWdlLWxhcmdlLFxuLnBhZ2VfaXNfcHJvZmlsZV9lZGl0IC5wcm9maWxlLWltYWdlLWxhcmdlIHtcbiAgd2lkdGg6IDE1MHB4O1xuICBoZWlnaHQ6IDE1MHB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBib3JkZXI6IDNweCBzb2xpZCAjZGVlMmU2O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5wYWdlX2lzX2VkaXRfcHJvZmlsZSAucHJvZmlsZS1pbWFnZS1wbGFjZWhvbGRlcixcbi5wYWdlX2lzX3Byb2ZpbGVfZWRpdCAucHJvZmlsZS1pbWFnZS1wbGFjZWhvbGRlciB7XG4gIHdpZHRoOiAxNTBweDtcbiAgaGVpZ2h0OiAxNTBweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICBib3JkZXI6IDNweCBzb2xpZCAjZGVlMmU2O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5wYWdlX2lzX2VkaXRfcHJvZmlsZSAucHJvZmlsZS1pbWFnZS1wcmV2aWV3LFxuLnBhZ2VfaXNfcHJvZmlsZV9lZGl0IC5wcm9maWxlLWltYWdlLXByZXZpZXcge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLnBhZ2VfaXNfZWRpdF9wcm9maWxlIC5wcm9maWxlLWltYWdlLXNlY3Rpb24sXG4ucGFnZV9pc19wcm9maWxlX2VkaXQgLnByb2ZpbGUtaW1hZ2Utc2VjdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnBhZ2VfaXNfZWRpdF9wcm9maWxlIC5wcm9maWxlLWltYWdlLXNlY3Rpb246aG92ZXIgLmltYWdlLXVwbG9hZC1vdmVybGF5LFxuLnBhZ2VfaXNfcHJvZmlsZV9lZGl0IC5wcm9maWxlLWltYWdlLXNlY3Rpb246aG92ZXIgLmltYWdlLXVwbG9hZC1vdmVybGF5IHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLnBhZ2VfaXNfZWRpdF9wcm9maWxlIC5pbWFnZS11cGxvYWQtb3ZlcmxheSxcbi5wYWdlX2lzX3Byb2ZpbGVfZWRpdCAuaW1hZ2UtdXBsb2FkLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIHdpZHRoOiAxNTBweDtcbiAgaGVpZ2h0OiAxNTBweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjb2xvcjogd2hpdGU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnBhZ2VfaXNfZWRpdF9wcm9maWxlIC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4ucGFnZV9pc19lZGl0X3Byb2ZpbGUgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucGFnZV9pc19lZGl0X3Byb2ZpbGUgLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLnBhZ2VfaXNfcHJvZmlsZV9lZGl0IC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4ucGFnZV9pc19wcm9maWxlX2VkaXQgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucGFnZV9pc19wcm9maWxlX2VkaXQgLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEodmFyKC0tYnMtcHJpbWFyeS1yZ2IpLCAwLjI1KTtcbn1cblxuLnBhZ2VfaXNfZWRpdF9wcm9maWxlIC5idG4tb3V0bGluZS1wcmltYXJ5OmhvdmVyLFxuLnBhZ2VfaXNfcHJvZmlsZV9lZGl0IC5idG4tb3V0bGluZS1wcmltYXJ5OmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xuICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuXG4vKipcbiAqIEVtYWlsIFByZWZlcmVuY2VzIFBhZ2UgU3R5bGVzXG4gKi9cblxuLnBhZ2VfaXNfZW1haWxfcHJlZmVyZW5jZXMgLmNhcmQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xufVxuXG4ucGFnZV9pc19lbWFpbF9wcmVmZXJlbmNlcyAuY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMC4xMjVyZW0gMC4yNXJlbSByZ2JhKDAsIDAsIDAsIDAuMDc1KTtcbn1cblxuLnBhZ2VfaXNfZW1haWxfcHJlZmVyZW5jZXMgLmNhcmQtaGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZWUyZTY7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbn1cblxuLnBhZ2VfaXNfZW1haWxfcHJlZmVyZW5jZXMgLmZvcm0tY2hlY2sge1xuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbn1cblxuLnBhZ2VfaXNfZW1haWxfcHJlZmVyZW5jZXMgLmZvcm0tY2hlY2staW5wdXQ6Y2hlY2tlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xufVxuXG4ucGFnZV9pc19lbWFpbF9wcmVmZXJlbmNlcyAuZm9ybS1jaGVjay1sYWJlbCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cblxuLnBhZ2VfaXNfZW1haWxfcHJlZmVyZW5jZXMgLmZvcm0tY2hlY2stbGFiZWwgc3Ryb25nIHtcbiAgY29sb3I6ICM0OTUwNTc7XG4gIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ucGFnZV9pc19lbWFpbF9wcmVmZXJlbmNlcyAuaC1maXQge1xuICBoZWlnaHQ6IGZpdC1jb250ZW50O1xufVxuXG4ucGFnZV9pc19lbWFpbF9wcmVmZXJlbmNlcyAuYnRuLW91dGxpbmUtcHJpbWFyeTpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLnBhZ2VfaXNfZW1haWxfcHJlZmVyZW5jZXMgLnRleHQtcHJpbWFyeSB7XG4gIGNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KSAhaW1wb3J0YW50O1xufVxuXG4ucGFnZV9pc19lbWFpbF9wcmVmZXJlbmNlcyAuYmctbGlnaHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhICFpbXBvcnRhbnQ7XG59XG5cbi5wYWdlX2lzX2VtYWlsX3ByZWZlcmVuY2VzIC5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG5cbi5wcm9zZSBoMSxcbi5wcm9zZSAuaDEsXG4ucHJvc2UgaDIsXG4ucHJvc2UgLmgyLFxuLnByb3NlIGgzLFxuLnByb3NlIC5oMyxcbi5wcm9zZSBoNCxcbi5wcm9zZSAuaDQsXG4ucHJvc2UgaDUsXG4ucHJvc2UgLmg1LFxuLnByb3NlIGg2LFxuLnByb3NlIC5oNiB7XG4gIG1hcmdpbi10b3A6IDEuNWVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjc1ZW07XG59XG5cbi5wcm9zZSBoMTpmaXJzdC1jaGlsZCxcbi5wcm9zZSAuaDE6Zmlyc3QtY2hpbGQsXG4ucHJvc2UgaDI6Zmlyc3QtY2hpbGQsXG4ucHJvc2UgLmgyOmZpcnN0LWNoaWxkLFxuLnByb3NlIGgzOmZpcnN0LWNoaWxkLFxuLnByb3NlIC5oMzpmaXJzdC1jaGlsZCxcbi5wcm9zZSBoNDpmaXJzdC1jaGlsZCxcbi5wcm9zZSAuaDQ6Zmlyc3QtY2hpbGQsXG4ucHJvc2UgaDU6Zmlyc3QtY2hpbGQsXG4ucHJvc2UgLmg1OmZpcnN0LWNoaWxkLFxuLnByb3NlIGg2OmZpcnN0LWNoaWxkLFxuLnByb3NlIC5oNjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5wcm9zZSBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNWVtO1xuICBsaW5lLWhlaWdodDogMS43O1xufVxuXG4ucHJvc2UgdWwsXG4ucHJvc2Ugb2wge1xuICBtYXJnaW4tYm90dG9tOiAxLjI1ZW07XG4gIHBhZGRpbmctbGVmdDogMS41ZW07XG59XG5cbi5wcm9zZSB1bCBsaSxcbi5wcm9zZSBvbCBsaSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNWVtO1xufVxuXG4ucHJvc2UgYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMS41ZW0gMDtcbiAgcGFkZGluZy1sZWZ0OiAxLjVlbTtcbiAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCB2YXIoLS1icy1ncmF5LTMwMCk7XG59XG5cbi5wcm9zZSB0YWJsZSB7XG4gIG1hcmdpbjogMS41ZW0gMDtcbn1cblxuLnByb3NlIGltZyB7XG4gIG1hcmdpbjogMS41ZW0gMDtcbn1cblxuLnByb3NlIGEge1xuICBjb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4ucHJvc2UgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLm1heC13LW5vbmUge1xuICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnBhZ2VfaXNfY29tcGFyaXNvbl9wYWdlIC5jb21wYXJpc29uLXRhYmxlIHtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbn1cblxuLnBhZ2VfaXNfY29tcGFyaXNvbl9wYWdlIC5jb21wYXJpc29uLXRhYmxlIHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtZ3JheS0xMDApO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4ucGFnZV9pc19jb21wYXJpc29uX3BhZ2UgLmNvbXBhcmlzb24tdGFibGUgLmVtcHR5LWNlbGwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1ncmF5LTUwKTtcbiAgYm9yZGVyOiAycHggZGFzaGVkIHZhcigtLWJzLWJvcmRlci1jb2xvcik7XG59XG5cbi5wYWdlX2lzX2NvbXBhcmlzb25fcGFnZSAuY29tcGFyaXNvbi10YWJsZSAuZW1wdHktY2VsbCAuZW1wdHktcGxhY2Vob2xkZXIge1xuICBwYWRkaW5nOiAzcmVtIDA7XG59XG5cbi5wYWdlX2lzX2NvbXBhcmlzb25fcGFnZSAuY29tcGFyaXNvbi10YWJsZSAuZW1wdHktY2VsbCAuZW1wdHktcGxhY2Vob2xkZXIgLmZhLXBsdXMtY2lyY2xlIHtcbiAgY29sb3I6IHZhcigtLWJzLXNlY29uZGFyeSk7XG59XG5cbi5wYWdlX2lzX2NvbXBhcmlzb25fcGFnZSAuY29tcGFyaXNvbi1jb250YWluZXIge1xuICBtYXJnaW4tdG9wOiAycmVtO1xufVxuXG4ucGFnZV9pc19jb21wYXJpc29uX3BhZ2UgLnJlbW92ZS1pdGVtLWJ0biB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMHB4O1xuICByaWdodDogMTBweDtcbiAgei1pbmRleDogMTA7XG59XG5cbi5wYWdlX2lzX2NvbXBhcmlzb25fcGFnZSAucHJvZHVjdC1pbWFnZS1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDE1MHB4O1xufVxuXG4ucGFnZV9pc19jb21wYXJpc29uX3BhZ2UgLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyIC5wcm9kdWN0LWltYWdlIHtcbiAgbWF4LWhlaWdodDogMTIwcHg7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5wYWdlX2lzX2NvbXBhcmlzb25fcGFnZSAucHJpY2Utc2FsZSB7XG4gIGNvbG9yOiB2YXIoLS1icy1kYW5nZXIpO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnBhZ2VfaXNfY29tcGFyaXNvbl9wYWdlIC5wcmljZS1vcmlnaW5hbCB7XG4gIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICBjb2xvcjogdmFyKC0tYnMtc2Vjb25kYXJ5KTtcbiAgZm9udC1zaXplOiAwLjllbTtcbn1cblxuLnBhZ2VfaXNfbm90aWZpY2F0aW9ucyAubGlzdC1ncm91cC1pdGVtIGg1LFxuLnBhZ2VfaXNfbm90aWZpY2F0aW9ucyAubGlzdC1ncm91cC1pdGVtIC5oNSB7XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGNvbG9yOiAjMzMzO1xufVxuXG4ucGFnZV9pc19ub3RpZmljYXRpb25zIC5saXN0LWdyb3VwLWl0ZW0gaDUuZnctYm9sZCxcbi5wYWdlX2lzX25vdGlmaWNhdGlvbnMgLmxpc3QtZ3JvdXAtaXRlbSAuZnctYm9sZC5oNSB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5wYWdlX2lzX25vdGlmaWNhdGlvbnMgLmxpc3QtZ3JvdXAtaXRlbSBwIHtcbiAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgY29sb3I6ICM1NTU7XG59XG5cbi5wYWdlX2lzX25vdGlmaWNhdGlvbnMgLmxpc3QtZ3JvdXAtaXRlbSBzbWFsbCxcbi5wYWdlX2lzX25vdGlmaWNhdGlvbnMgLmxpc3QtZ3JvdXAtaXRlbSAuc21hbGwge1xuICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBjb2xvcjogIzZjNzU3ZDtcbn1cblxuLnBhZ2VfaXNfbm90aWZpY2F0aW9ucyAubGlzdC1ncm91cC1pdGVtIHNtYWxsIGksXG4ucGFnZV9pc19ub3RpZmljYXRpb25zIC5saXN0LWdyb3VwLWl0ZW0gLnNtYWxsIGkge1xuICBtYXJnaW4tcmlnaHQ6IDRweDtcbn1cblxuLnBhZ2VfaXNfbm90aWZpY2F0aW9ucyBoMSxcbi5wYWdlX2lzX25vdGlmaWNhdGlvbnMgLmgxIHtcbiAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMjhweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICMzMzM7XG59XG5cbi5wYWdlX2lzX25vdGlmaWNhdGlvbnMgLmFsZXJ0IGg0LFxuLnBhZ2VfaXNfbm90aWZpY2F0aW9ucyAuYWxlcnQgLmg0IHtcbiAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLnBhZ2VfaXNfbm90aWZpY2F0aW9ucyAuYWxlcnQgcCB7XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi5wYWdlX2lzX25vdGlmaWNhdGlvbnMgLmJhZGdlIHtcbiAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhZ2VfaXNfbm90aWZpY2F0aW9ucyAubGlzdC1ncm91cC1pdGVtIGg1LFxuICAucGFnZV9pc19ub3RpZmljYXRpb25zIC5saXN0LWdyb3VwLWl0ZW0gLmg1IHtcbiAgICBmb250LXNpemU6IDE3cHg7XG4gIH1cblxuICAucGFnZV9pc19ub3RpZmljYXRpb25zIC5saXN0LWdyb3VwLWl0ZW0gcCB7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfbm90aWZpY2F0aW9ucyAubGlzdC1ncm91cC1pdGVtIHNtYWxsLFxuICAucGFnZV9pc19ub3RpZmljYXRpb25zIC5saXN0LWdyb3VwLWl0ZW0gLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gIH1cblxuICAucGFnZV9pc19ub3RpZmljYXRpb25zIGgxLFxuICAucGFnZV9pc19ub3RpZmljYXRpb25zIC5oMSB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICB9XG59XG5cbi5wYWdlX2lzX25vdGlmaWNhdGlvbnMgLm5vdGlmaWNhdGlvbi11bnJlYWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTNmMmZkO1xuICBib3JkZXItbGVmdDogNHB4IHNvbGlkICMyMTk2RjM7XG59XG5cbi5wYWdlX2lzX25vdGlmaWNhdGlvbnMgLm5vdGlmaWNhdGlvbi11bnJlYWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmJkZWZiO1xufVxuXG4ucGFnZV9pc19ub3RpZmljYXRpb25zIC5ub3RpZmljYXRpb24tcmVjZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZjVlOTtcbiAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAjNENBRjUwO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDFzIGVhc2UtaW4tb3V0LCBib3JkZXItbGVmdC1jb2xvciAxcyBlYXNlLWluLW91dDtcbn1cblxuLnBhZ2VfaXNfbm90aWZpY2F0aW9ucyAubm90aWZpY2F0aW9uLXJlY2VudDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjOGU2Yzk7XG59XG5cbi5wYWdlX2lzX25vdGlmaWNhdGlvbnMgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG59XG5cbi5wYWdlX2lzX25vdGlmaWNhdGlvbnMgLmxpc3QtZ3JvdXAtaXRlbTpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpO1xufVxuXG4ud2lzaGxpc3QtcGFnZSB7XG4gIG1pbi1oZWlnaHQ6IDUwMHB4O1xufVxuXG4ud2lzaGxpc3QtcGFnZSAuZW1wdHktd2lzaGxpc3Qge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDRyZW0gMnJlbTtcbn1cblxuLndpc2hsaXN0LXBhZ2UgLmVtcHR5LXdpc2hsaXN0IC5lbXB0eS1pY29uIHtcbiAgZm9udC1zaXplOiA0cmVtO1xuICBjb2xvcjogdmFyKC0tYnMtZ3JheS00MDApO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBhbmltYXRpb246IHB1bHNlIDJzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xufVxuXG4ud2lzaGxpc3QtcGFnZSAuZW1wdHktd2lzaGxpc3QgaDMsXG4ud2lzaGxpc3QtcGFnZSAuZW1wdHktd2lzaGxpc3QgLmgzIHtcbiAgY29sb3I6IHZhcigtLWJzLWdyYXktNjAwKTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLndpc2hsaXN0LXBhZ2UgLmd1ZXN0LW5vdGljZSB7XG4gIGFuaW1hdGlvbjogc2xpZGVEb3duIDAuNXMgZWFzZTtcbn1cblxuLndpc2hsaXN0LXBhZ2UgLndpc2hsaXN0LWxpc3QgLndpc2hsaXN0LWl0ZW0tcm93IHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgYm9yZGVyLXJhZGl1czogMC4zNzVyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIHBhZGRpbmc6IDFyZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIG1pbi1oZWlnaHQ6IDgwcHg7XG59XG5cbi53aXNobGlzdC1wYWdlIC53aXNobGlzdC1saXN0IC53aXNobGlzdC1pdGVtLXJvdzpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG5cbi53aXNobGlzdC1wYWdlIC53aXNobGlzdC1saXN0IC53aXNobGlzdC1pdGVtLXJvdy5yZW1vdmluZyB7XG4gIGFuaW1hdGlvbjogcmVtb3ZlSXRlbSAwLjVzIGVhc2UgZm9yd2FyZHM7XG59XG5cbi53aXNobGlzdC1wYWdlIC53aXNobGlzdC1saXN0IC53aXNobGlzdC1pdGVtLXJvdyA+IC5kLWZsZXgge1xuICBnYXA6IDFyZW07XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAud2lzaGxpc3QtcGFnZSAud2lzaGxpc3QtbGlzdCAud2lzaGxpc3QtaXRlbS1yb3cgPiAuZC1mbGV4IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4ud2lzaGxpc3QtcGFnZSAud2lzaGxpc3QtbGlzdCAud2lzaGxpc3QtaXRlbS1yb3cgLndpc2hsaXN0LWl0ZW0taW1hZ2Uge1xuICBmbGV4LXNocmluazogMDtcbiAgd2lkdGg6IDgwcHg7XG4gIGhlaWdodDogODBweDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC53aXNobGlzdC1wYWdlIC53aXNobGlzdC1saXN0IC53aXNobGlzdC1pdGVtLXJvdyAud2lzaGxpc3QtaXRlbS1pbWFnZSB7XG4gICAgbWFyZ2luOiAwIGF1dG8gMXJlbTtcbiAgfVxufVxuXG4ud2lzaGxpc3QtcGFnZSAud2lzaGxpc3QtbGlzdCAud2lzaGxpc3QtaXRlbS1yb3cgLndpc2hsaXN0LWl0ZW0taW1hZ2UgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ud2lzaGxpc3QtcGFnZSAud2lzaGxpc3QtbGlzdCAud2lzaGxpc3QtaXRlbS1yb3cgLndpc2hsaXN0LWl0ZW0taW1hZ2UgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG5cbi53aXNobGlzdC1wYWdlIC53aXNobGlzdC1saXN0IC53aXNobGlzdC1pdGVtLXJvdyAud2lzaGxpc3QtaXRlbS1pbWFnZSAuaW1hZ2UtcGxhY2Vob2xkZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZjhmOWZhO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xufVxuXG4ud2lzaGxpc3QtcGFnZSAud2lzaGxpc3QtbGlzdCAud2lzaGxpc3QtaXRlbS1yb3cgLndpc2hsaXN0LWl0ZW0tZGV0YWlscyB7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC53aXNobGlzdC1wYWdlIC53aXNobGlzdC1saXN0IC53aXNobGlzdC1pdGVtLXJvdyAud2lzaGxpc3QtaXRlbS1kZXRhaWxzIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cbn1cblxuLndpc2hsaXN0LXBhZ2UgLndpc2hsaXN0LWxpc3QgLndpc2hsaXN0LWl0ZW0tcm93IC53aXNobGlzdC1pdGVtLWRldGFpbHMgaDYsXG4ud2lzaGxpc3QtcGFnZSAud2lzaGxpc3QtbGlzdCAud2lzaGxpc3QtaXRlbS1yb3cgLndpc2hsaXN0LWl0ZW0tZGV0YWlscyAuaDYge1xuICBmb250LXNpemU6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cblxuLndpc2hsaXN0LXBhZ2UgLndpc2hsaXN0LWxpc3QgLndpc2hsaXN0LWl0ZW0tcm93IC53aXNobGlzdC1pdGVtLWRldGFpbHMgaDYgYSxcbi53aXNobGlzdC1wYWdlIC53aXNobGlzdC1saXN0IC53aXNobGlzdC1pdGVtLXJvdyAud2lzaGxpc3QtaXRlbS1kZXRhaWxzIC5oNiBhIHtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLndpc2hsaXN0LXBhZ2UgLndpc2hsaXN0LWxpc3QgLndpc2hsaXN0LWl0ZW0tcm93IC53aXNobGlzdC1pdGVtLWRldGFpbHMgaDYgYTpob3Zlcixcbi53aXNobGlzdC1wYWdlIC53aXNobGlzdC1saXN0IC53aXNobGlzdC1pdGVtLXJvdyAud2lzaGxpc3QtaXRlbS1kZXRhaWxzIC5oNiBhOmhvdmVyIHtcbiAgY29sb3I6ICMwMDY2YzA7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4ud2lzaGxpc3QtcGFnZSAud2lzaGxpc3QtbGlzdCAud2lzaGxpc3QtaXRlbS1yb3cgLndpc2hsaXN0LWl0ZW0tZGV0YWlscyAucHJpY2UtaW5mbyAuaDUge1xuICBmb250LXNpemU6IDEuMjVyZW07XG59XG5cbi53aXNobGlzdC1wYWdlIC53aXNobGlzdC1saXN0IC53aXNobGlzdC1pdGVtLXJvdyAud2lzaGxpc3QtaXRlbS1hY3Rpb25zIHtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMC41cmVtO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLndpc2hsaXN0LXBhZ2UgLndpc2hsaXN0LWxpc3QgLndpc2hsaXN0LWl0ZW0tcm93IC53aXNobGlzdC1pdGVtLWFjdGlvbnMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxufVxuXG4ud2lzaGxpc3QtcGFnZSAud2lzaGxpc3QtbGlzdCAud2lzaGxpc3QtaXRlbS1yb3cgLndpc2hsaXN0LWl0ZW0tYWN0aW9ucyAuYnRuIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gIC53aXNobGlzdC1wYWdlIC53aXNobGlzdC1saXN0IC53aXNobGlzdC1pdGVtLXJvdyAud2lzaGxpc3QtaXRlbS1hY3Rpb25zIC5idG4ge1xuICAgIGZsZXg6IDE7XG4gICAgbWluLXdpZHRoOiAwO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAud2lzaGxpc3QtcGFnZSAud2lzaGxpc3QtbGlzdCAud2lzaGxpc3QtaXRlbS1yb3cgLndpc2hsaXN0LWl0ZW0tYWN0aW9ucyAubW92ZS10by10b3AsXG4gIC53aXNobGlzdC1wYWdlIC53aXNobGlzdC1saXN0IC53aXNobGlzdC1pdGVtLXJvdyAud2lzaGxpc3QtaXRlbS1hY3Rpb25zIC5yZW1vdmUtZnJvbS13aXNobGlzdCB7XG4gICAgd2lkdGg6IDQ0cHg7XG4gICAgcGFkZGluZzogMC4zNzVyZW07XG4gIH1cbn1cblxuQGtleWZyYW1lcyBwdWxzZSB7XG4gIDAlLCAxMDAlIHtcbiAgICBvcGFjaXR5OiAwLjU7XG4gIH1cblxuICA1MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzbGlkZURvd24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyByZW1vdmVJdGVtIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjgpO1xuICB9XG59XG5cbi53aXNobGlzdC1sb2FkaW5nLW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgei1pbmRleDogOTk5OTtcbn1cblxuLndpc2hsaXN0LWxvYWRpbmctb3ZlcmxheSAuc3Bpbm5lci1ib3JkZXIge1xuICB3aWR0aDogM3JlbTtcbiAgaGVpZ2h0OiAzcmVtO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLndpc2hsaXN0LXBhZ2UgLnBhZ2UtaGVhZGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxuXG4gIC53aXNobGlzdC1wYWdlIC5wYWdlLWhlYWRlciBoMSxcbiAgLndpc2hsaXN0LXBhZ2UgLnBhZ2UtaGVhZGVyIC5oMSB7XG4gICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICB9XG5cbiAgLndpc2hsaXN0LXBhZ2UgLmJ0biB7XG4gICAgbWluLWhlaWdodDogNDRweDtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgfVxuXG4gIC53aXNobGlzdC1wYWdlIC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG59XG5cbi5iZy1wdXJwbGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTM3ZWJhICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLmJnLXRlYWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2ViYWFkICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLnBhZ2UtaXMtc2VsbGVyLXByb2ZpbGUgLmNhcmQge1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuM3MgZWFzZTtcbn1cblxuLnBhZ2UtaXMtc2VsbGVyLXByb2ZpbGUgLmNhcmQ6aG92ZXIge1xuICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMCAwLjEyNXJlbSAwLjI1cmVtIHJnYmEoMCwgMCwgMCwgMC4wNzUpO1xufVxuXG4ucGFnZS1pcy1zZWxsZXItcHJvZmlsZSAuc2VsbGVyLWJpbyB7XG4gIG1heC13aWR0aDogODAwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIGNvbG9yOiAjNDk1MDU3O1xufVxuXG4ucGFnZS1pcy1zZWxsZXItcHJvZmlsZSAuc2VsbGVyLWJpbyBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLnBhZ2UtaXMtc2VsbGVyLXByb2ZpbGUgLnNlbGxlci1iaW8gcDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnBhZ2UtaXMtc2VsbGVyLXByb2ZpbGUgLnByb2R1Y3QtZ3JpZCAucHJvZHVjdC1jYXJkIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuM3MgZWFzZTtcbn1cblxuLnBhZ2UtaXMtc2VsbGVyLXByb2ZpbGUgLnByb2R1Y3QtZ3JpZCAucHJvZHVjdC1jYXJkOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDAgMC41cmVtIDFyZW0gcmdiYSgwLCAwLCAwLCAwLjE1KTtcbn1cblxuLnBhZ2UtaXMtc2VsbGVyLXByb2ZpbGUgLmVtcHR5LXN0YXRlIHtcbiAgcGFkZGluZzogNXJlbSAwO1xufVxuXG4ucGFnZS1pcy1zZWxsZXItcHJvZmlsZSAuZW1wdHktc3RhdGUgLmVtcHR5LWljb24ge1xuICBvcGFjaXR5OiAwLjM7XG59XG5cbi5wYWdlLWlzLXNlbGxlci1wcm9maWxlIC5jYXJkIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnM7XG59XG5cbi5wYWdlLWlzLXNlbGxlci1wcm9maWxlIC5jYXJkOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpO1xufVxuXG4ucGFnZS1pcy1zZWxsZXItcHJvZmlsZSAuc2VsbGVyLWJpbyB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgY29sb3I6ICMzMzM7XG4gIG1heC13aWR0aDogODAwcHg7XG59XG5cbi5wYWdlLWlzLXNlbGxlci1wcm9maWxlIC5zZWxsZXItYmlvIGgxLFxuLnBhZ2UtaXMtc2VsbGVyLXByb2ZpbGUgLnNlbGxlci1iaW8gLmgxLFxuLnBhZ2UtaXMtc2VsbGVyLXByb2ZpbGUgLnNlbGxlci1iaW8gaDIsXG4ucGFnZS1pcy1zZWxsZXItcHJvZmlsZSAuc2VsbGVyLWJpbyAuaDIsXG4ucGFnZS1pcy1zZWxsZXItcHJvZmlsZSAuc2VsbGVyLWJpbyBoMyxcbi5wYWdlLWlzLXNlbGxlci1wcm9maWxlIC5zZWxsZXItYmlvIC5oMyxcbi5wYWdlLWlzLXNlbGxlci1wcm9maWxlIC5zZWxsZXItYmlvIGg0LFxuLnBhZ2UtaXMtc2VsbGVyLXByb2ZpbGUgLnNlbGxlci1iaW8gLmg0LFxuLnBhZ2UtaXMtc2VsbGVyLXByb2ZpbGUgLnNlbGxlci1iaW8gaDUsXG4ucGFnZS1pcy1zZWxsZXItcHJvZmlsZSAuc2VsbGVyLWJpbyAuaDUsXG4ucGFnZS1pcy1zZWxsZXItcHJvZmlsZSAuc2VsbGVyLWJpbyBoNixcbi5wYWdlLWlzLXNlbGxlci1wcm9maWxlIC5zZWxsZXItYmlvIC5oNiB7XG4gIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbn1cblxuLnBhZ2UtaXMtc2VsbGVyLXByb2ZpbGUgLnNlbGxlci1iaW8gcCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5wYWdlLWlzLXNlbGxlci1wcm9maWxlIC5zZWxsZXItYmlvIHVsLFxuLnBhZ2UtaXMtc2VsbGVyLXByb2ZpbGUgLnNlbGxlci1iaW8gb2wge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBwYWRkaW5nLWxlZnQ6IDJyZW07XG59XG5cbi5wYWdlLWlzLXNlbGxlci1wcm9maWxlIC5zZWxsZXItYmlvIGltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4ucGFnZV9pc19zZWFyY2hfcmVzdWx0c19wYWdlIC5zZWFyY2gtcmVzdWx0cy1wYWdlIHtcbiAgbWluLWhlaWdodDogNzB2aDtcbn1cblxuLnBhZ2VfaXNfc2VhcmNoX3Jlc3VsdHNfcGFnZSAuc2VhcmNoLWhlYWRlciB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNmOGY5ZmEgMCUsICNlOWVjZWYgMTAwJSk7XG4gIHBhZGRpbmc6IDJyZW07XG4gIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5cbi5wYWdlX2lzX3NlYXJjaF9yZXN1bHRzX3BhZ2UgLm5vLXJlc3VsdHMge1xuICBiYWNrZ3JvdW5kOiAjZjhmOWZhO1xuICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICBtYXJnaW46IDJyZW0gMDtcbn1cblxuLnBhZ2VfaXNfc2VhcmNoX3Jlc3VsdHNfcGFnZSAuc2VhcmNoLXN1Z2dlc3Rpb25zIC5idG4ge1xuICBtYXJnaW46IDAuMjVyZW07XG59XG5cbi5wYWdlX2lzX3NlYXJjaF9yZXN1bHRzX3BhZ2UgLnNlYXJjaC10aXBzIHtcbiAgZm9udC1zaXplOiAwLjlyZW07XG59XG5cbi5wYWdlX2lzX3NlYXJjaF9yZXN1bHRzX3BhZ2UgLnVuaWZpZWQtc2VhcmNoLWNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogNjAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2VfaXNfc2VhcmNoX3Jlc3VsdHNfcGFnZSAuc2VhcmNoLWhlYWRlciB7XG4gICAgcGFkZGluZzogMS41cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfc2VhcmNoX3Jlc3VsdHNfcGFnZSAuc2VhcmNoLXJlc3VsdHMtbGlzdCAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxufVxuXG4ucGFnZV9pc19zZWFyY2hfcmVzdWx0c191bmlmaWVkX3BhZ2UgLnByb2R1Y3QtY2FyZCB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlMGUwZTA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5wYWdlX2lzX3NlYXJjaF9yZXN1bHRzX3VuaWZpZWRfcGFnZSAucHJvZHVjdC1jYXJkOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpO1xuICBib3gtc2hhZG93OiAwIDRweCAxMnB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLnBhZ2VfaXNfc2VhcmNoX3Jlc3VsdHNfdW5pZmllZF9wYWdlIC5jYXJkLWltZy1jb250YWluZXIge1xuICBoZWlnaHQ6IDIwMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmOTtcbn1cblxuLnBhZ2VfaXNfc2VhcmNoX3Jlc3VsdHNfdW5pZmllZF9wYWdlIC5wcm9kdWN0LWltYWdlIHtcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBvYmplY3QtZml0OiBjb250YWluO1xufVxuXG4ucGFnZV9pc19zZWFyY2hfcmVzdWx0c191bmlmaWVkX3BhZ2UgLnByb2R1Y3QtYmFkZ2VzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwcHg7XG4gIGxlZnQ6IDEwcHg7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5wYWdlX2lzX3NlYXJjaF9yZXN1bHRzX3VuaWZpZWRfcGFnZSAuYmFkZ2Utc2FsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkYzM1NDU7XG59XG5cbi5wYWdlX2lzX3NlYXJjaF9yZXN1bHRzX3VuaWZpZWRfcGFnZSAuYmFkZ2UtbmV3IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI4YTc0NTtcbn1cblxuLnBhZ2VfaXNfc2VhcmNoX3Jlc3VsdHNfdW5pZmllZF9wYWdlIC5iYWRnZS1mZWF0dXJlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxZTFlNTY7XG59XG5cbi5wYWdlX2lzX3NlYXJjaF9yZXN1bHRzX3VuaWZpZWRfcGFnZSAucHJvZHVjdC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICBjb2xvcjogIzMzMztcbn1cblxuLnBhZ2VfaXNfc2VhcmNoX3Jlc3VsdHNfdW5pZmllZF9wYWdlIC5wcm9kdWN0LXByaWNlIHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLnBhZ2VfaXNfc2VhcmNoX3Jlc3VsdHNfdW5pZmllZF9wYWdlIC5zYWxlLXByaWNlIHtcbiAgY29sb3I6ICNkYzM1NDU7XG4gIG1hcmdpbi1sZWZ0OiA4cHg7XG59XG5cbi5wYWdlX2lzX3NlYXJjaF9yZXN1bHRzX3VuaWZpZWRfcGFnZSAucHJvZHVjdC1saW5rIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLnBhZ2VfaXNfc2VhcmNoX3Jlc3VsdHNfdW5pZmllZF9wYWdlIC5iZy1wdXJwbGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTM3ZWJhO1xuICBjb2xvcjogd2hpdGU7XG59XG5cbi5wYWdlX2lzX3NlYXJjaF9yZXN1bHRzX3VuaWZpZWRfcGFnZSAuYmctdGVhbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3ZWJhYWQ7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLnBhZ2VfaXNfZGlzY292ZXJfcGFnZSB7XG4gIC8qIERpc2NvdmVyIFBhZ2UgU3R5bGluZyAqL1xufVxuXG4ucGFnZV9pc19kaXNjb3Zlcl9wYWdlIC5kaXNjb3Zlci1oZXJvIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2Y4ZjlmYSAwJSwgI2U5ZWNlZiAxMDAlKTtcbiAgcGFkZGluZzogODBweCAwO1xuICBtYXJnaW4tYm90dG9tOiA2MHB4O1xufVxuXG4ucGFnZV9pc19kaXNjb3Zlcl9wYWdlIC5kaXNjb3Zlci1oZXJvIGgxLFxuLnBhZ2VfaXNfZGlzY292ZXJfcGFnZSAuZGlzY292ZXItaGVybyAuaDEge1xuICBmb250LXNpemU6IDNyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC41cHg7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5wYWdlX2lzX2Rpc2NvdmVyX3BhZ2UgLmRpc2NvdmVyLWhlcm8gLmxlYWQge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBtYXgtd2lkdGg6IDcwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLnBhZ2VfaXNfZGlzY292ZXJfcGFnZSAuY29udGVudC1jYXJkIHtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiAwIDAuMTI1cmVtIDAuNXJlbSByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZSwgYm94LXNoYWRvdyAwLjNzIGVhc2U7XG59XG5cbi5wYWdlX2lzX2Rpc2NvdmVyX3BhZ2UgLmNvbnRlbnQtY2FyZDpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcbiAgYm94LXNoYWRvdzogMCAwLjVyZW0gMS41cmVtIHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLnBhZ2VfaXNfZGlzY292ZXJfcGFnZSAuY29udGVudC1jYXJkIC5jYXJkLWltZy10b3Age1xuICBoZWlnaHQ6IDIwMHB4O1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cblxuLnBhZ2VfaXNfZGlzY292ZXJfcGFnZSAuc2VjdGlvbi1oZWFkZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDNyZW07XG59XG5cbi5wYWdlX2lzX2Rpc2NvdmVyX3BhZ2UgLnNlY3Rpb24taGVhZGVyIGgyLFxuLnBhZ2VfaXNfZGlzY292ZXJfcGFnZSAuc2VjdGlvbi1oZWFkZXIgLmgyIHtcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGNvbG9yOiAjMmMzZTUwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4ucGFnZV9pc19kaXNjb3Zlcl9wYWdlIC5wbGFjZWhvbGRlci1pbWFnZSB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNlOWVjZWYgMCUsICNkZWUyZTYgMTAwJSk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIGhlaWdodDogMjAwcHg7XG59XG5cbi5wYWdlLWlzLXByb2ZpbGUtb3JkZXItZGV0YWlsIC50aW1lbGluZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1sZWZ0OiAzMHB4O1xufVxuXG4ucGFnZS1pcy1wcm9maWxlLW9yZGVyLWRldGFpbCAudGltZWxpbmU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMTBweDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZWUyZTY7XG59XG5cbi5wYWdlLWlzLXByb2ZpbGUtb3JkZXItZGV0YWlsIC50aW1lbGluZS1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJvdHRvbTogMS41cmVtO1xufVxuXG4ucGFnZS1pcy1wcm9maWxlLW9yZGVyLWRldGFpbCAudGltZWxpbmUtaXRlbTpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbi5wYWdlLWlzLXByb2ZpbGUtb3JkZXItZGV0YWlsIC50aW1lbGluZS1tYXJrZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC0yMHB4O1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMnB4O1xuICBoZWlnaHQ6IDEycHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCAjZGVlMmU2O1xufVxuXG4ucGFnZS1pcy1wcm9maWxlLW9yZGVyLWRldGFpbCAudGltZWxpbmUtY29udGVudCB7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbn1cblxuLyoqXG4gKiBDb29raWUgQ29uc2VudCBQYWdlIFN0eWxlc1xuICovXG5cbi5jb29raWUtY29uc2VudC1iYW5uZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC45KTtcbiAgY29sb3I6IHdoaXRlO1xuICBwYWRkaW5nOiAxcmVtIDA7XG4gIHotaW5kZXg6IDk5OTk7XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcbn1cblxuLmNvb2tpZS1jb25zZW50LWJhbm5lciAuYnRuLW91dGxpbmUtbGlnaHQge1xuICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cblxuLmNvb2tpZS1jb25zZW50LWJhbm5lciAuYnRuLW91dGxpbmUtbGlnaHQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIGJvcmRlci1jb2xvcjogd2hpdGU7XG59XG5cbi8qKlxuICogQXNrIFF1ZXN0aW9uIFBhZ2UgU3R5bGVzXG4gKiBTdHlsZXMgZm9yIHRoZSBnZW5lcmFsIGFzayBxdWVzdGlvbiBwYWdlXG4gKi9cblxuLnBhZ2UtaXMtYXNrLXF1ZXN0aW9uLWdlbmVyYWwgLmZvcm0tdGV4dC50ZXh0LXdhcm5pbmcge1xuICBjb2xvcjogIzg1NjQwNCAhaW1wb3J0YW50O1xufVxuXG4ucGFnZS1pcy1hc2stcXVlc3Rpb24tZ2VuZXJhbCAuZm9ybS10ZXh0LnRleHQtZGFuZ2VyIHtcbiAgY29sb3I6ICM3MjFjMjQgIWltcG9ydGFudDtcbn1cblxuLnBhZ2UtaXMtYXNrLXF1ZXN0aW9uLWdlbmVyYWwgI2dlbmVyYWxRdWVzdGlvbkZvcm0gdGV4dGFyZWEge1xuICByZXNpemU6IHZlcnRpY2FsO1xuICBtaW4taGVpZ2h0OiAxMjBweDtcbn1cblxuLyoqXG4gKiBQcm9maWxlIExheW91dCBQYWdlIFN0eWxlc1xuICogTW9iaWxlLWZpcnN0IHJlc3BvbnNpdmUgc3R5bGVzIGZvciBwcm9maWxlIGxheW91dFxuICovXG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSB7XG4gIC8qIE1vYmlsZS1GaXJzdCBQcm9maWxlIFBhZ2UgU3R5bGVzICovXG4gIC8qIEJhc2UgU3R5bGVzIChNb2JpbGUgRmlyc3QpICovXG4gIC8qIE1vYmlsZSBOYXZpZ2F0aW9uIFNwZWNpZmljICovXG4gIC8qIEJyZWFkY3J1bWIgTW9iaWxlIE9wdGltaXphdGlvbiAqL1xuICAvKiBBbGVydCBPcHRpbWl6YXRpb25zICovXG4gIC8qIE1vYmlsZSBUb3VjaCBJbXByb3ZlbWVudHMgKi9cbiAgLyogVG91Y2ggaW50ZXJhY3Rpb24gZmVlZGJhY2sgKi9cbiAgLyogU21vb3RoIHRyYW5zaXRpb25zIGZvciBtb2JpbGUgbmF2ICovXG4gIC8qIFRhYmxldCBTdHlsZXMgKG1kIGJyZWFrcG9pbnQgYW5kIHVwKSAqL1xuICAvKiBEZXNrdG9wIFN0eWxlcyAobGcgYnJlYWtwb2ludCBhbmQgdXApICovXG4gIC8qIExhcmdlIERlc2t0b3AgU3R5bGVzICh4bCBicmVha3BvaW50IGFuZCB1cCkgKi9cbiAgLyogQWNjZXNzaWJpbGl0eSBJbXByb3ZlbWVudHMgKi9cbiAgLyogSGlnaCBjb250cmFzdCBtb2RlIHN1cHBvcnQgKi9cbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLXNpZGViYXIge1xuICAvKiBiYWNrZ3JvdW5kLWNvbG9yIHJlbW92ZWQgLSB1c2luZyBjYXJkIGJhY2tncm91bmQgKi9cbiAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICAvKiBwYWRkaW5nIHJlbW92ZWQgLSB1c2luZyBjYXJkLWJvZHkgcGFkZGluZyAqL1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtc2lkZWJhciAubmF2LWxpbmsge1xuICBjb2xvcjogIzQ5NTA1NztcbiAgcGFkZGluZzogMXJlbSAxLjI1cmVtO1xuICAvKiBMYXJnZXIgdG91Y2ggdGFyZ2V0cyBmb3IgbW9iaWxlICovXG4gIG1hcmdpbi1ib3R0b206IDAuMTI1cmVtO1xuICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgbWluLWhlaWdodDogNDhweDtcbiAgLyogTWluaW11bSB0b3VjaCB0YXJnZXQgc2l6ZSAqL1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmb250LXdlaWdodDogNTAwO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLXNpZGViYXIgLm5hdi1saW5rOmhvdmVyLFxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLXNpZGViYXIgLm5hdi1saW5rOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJvcmRlci1jb2xvcjogI2NlZDRkYTtcbiAgb3V0bGluZTogbm9uZTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtc2lkZWJhciAubmF2LWxpbmsuYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJvcmRlci1jb2xvcjogI2NlZDRkYTtcbiAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLXNpZGViYXIgLm5hdi1saW5rLmFjdGl2ZSBpIHtcbiAgY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtc2lkZWJhciAubmF2LWxpbmsgaSB7XG4gIHdpZHRoOiAyNHB4O1xuICAvKiBMYXJnZXIgaWNvbnMgZm9yIG1vYmlsZSAqL1xuICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxLjFlbTtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLXNpZGViYXIgLm5hdi1saW5rIHNtYWxsLFxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLXNpZGViYXIgLm5hdi1saW5rIC5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgb3BhY2l0eTogMC44O1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtc2lkZWJhciAubmF2LWxpbms6Zm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1icy1wcmltYXJ5KTtcbiAgb3V0bGluZS1vZmZzZXQ6IDJweDtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLWF2YXRhciB7XG4gIHdpZHRoOiA2NHB4O1xuICAvKiBTbWFsbGVyIG9uIG1vYmlsZSAqL1xuICBoZWlnaHQ6IDY0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIGJvcmRlcjogM3B4IHNvbGlkICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucHJvZmlsZS1oZWFkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucHJvZmlsZS1jYXJkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICBwYWRkaW5nOiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLnN0YXQtY2FyZCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMS4yNXJlbSAxcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlOWVjZWY7XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuc3RhdC1jYXJkOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xuICBib3gtc2hhZG93OiAwIDRweCAxMnB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5zdGF0LWNhcmQgLnN0YXQtdmFsdWUge1xuICBmb250LXNpemU6IDEuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5zdGF0LWNhcmQgLnN0YXQtbGFiZWwge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5uYXYtcGlsbHMtbW9iaWxlIC5uYXYtbGluayB7XG4gIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuYnJlYWRjcnVtYiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBwYWRkaW5nOiAwLjVyZW0gMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5icmVhZGNydW1iIC5icmVhZGNydW1iLWl0ZW0ge1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmJyZWFkY3J1bWIgLmJyZWFkY3J1bWItaXRlbSArIC5icmVhZGNydW1iLWl0ZW06OmJlZm9yZSB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuM3JlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjNyZW07XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuYWxlcnQge1xuICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIHBhZGRpbmc6IDAuODc1cmVtIDFyZW07XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuYnRuIHtcbiAgbWluLWhlaWdodDogMzhweDtcbiAgLyogUmVkdWNlZCBoZWlnaHQgKi9cbiAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gIC8qIFJlZHVjZWQgcGFkZGluZyAqL1xuICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuYnRuOmhvdmVyLFxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5idG46Zm9jdXMge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmJ0bjpmb2N1cy12aXNpYmxlIHtcbiAgb3V0bGluZTogMnB4IHNvbGlkIHZhcigtLWJzLXByaW1hcnkpO1xuICBvdXRsaW5lLW9mZnNldDogMnB4O1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmJ0bjpkaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuNjtcbiAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAudG91Y2gtYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAxMjMsIDI1NSwgMC4xKSAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOTgpO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgI21vYmlsZS1wcm9maWxlLW5hdiB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLXNpZGViYXIge1xuICAgIC8qIHBhZGRpbmcgaGFuZGxlZCBieSBjYXJkLWJvZHkgKi9cbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucHJvZmlsZS1zaWRlYmFyIC5uYXYtbGluayB7XG4gICAgcGFkZGluZzogMC44NzVyZW0gMXJlbTtcbiAgICBtaW4taGVpZ2h0OiBhdXRvO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLXNpZGViYXIgLm5hdi1saW5rIGkge1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLWF2YXRhciB7XG4gICAgd2lkdGg6IDcycHg7XG4gICAgaGVpZ2h0OiA3MnB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLWNhcmQge1xuICAgIHBhZGRpbmc6IDEuMjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuc3RhdC1jYXJkIHtcbiAgICBwYWRkaW5nOiAxLjVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnN0YXQtY2FyZCAuc3RhdC12YWx1ZSB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5icmVhZGNydW1iIHtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLXNpZGViYXIge1xuICAgIC8qIHBhZGRpbmcgaGFuZGxlZCBieSBjYXJkLWJvZHkgKi9cbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucHJvZmlsZS1zaWRlYmFyIC5uYXYtbGluayB7XG4gICAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLWF2YXRhciB7XG4gICAgd2lkdGg6IDkwcHg7XG4gICAgaGVpZ2h0OiA5MHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLWhlYWRlciB7XG4gICAgcGFkZGluZzogMS41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtY2FyZCB7XG4gICAgcGFkZGluZzogMS41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuc3RhdC1jYXJkIC5zdGF0LXZhbHVlIHtcbiAgICBmb250LXNpemU6IDIuMjVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnN0YXQtY2FyZCAuc3RhdC1sYWJlbCB7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuYnJlYWRjcnVtYiB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5zdGF0LWNhcmQ6aG92ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtM3B4KTtcbiAgfVxufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtc2lkZWJhciAubmF2LWxpbmssXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucHJvZmlsZS1jYXJkLFxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnN0YXQtY2FyZCxcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5idG4ge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnN0YXQtY2FyZDpob3ZlcixcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5idG46aG92ZXIge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgKHByZWZlcnMtY29udHJhc3Q6IGhpZ2gpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLXNpZGViYXIgLm5hdi1saW5rIHtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjNmM3NTdkO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLXNpZGViYXIgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucHJvZmlsZS1jYXJkLFxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnN0YXQtY2FyZCB7XG4gICAgYm9yZGVyLXdpZHRoOiAycHg7XG4gIH1cbn1cblxuLyoqXG4gKiBQcm9maWxlIEFkZHJlc3NlcyBQYWdlIFN0eWxlc1xuICovXG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuYWRkcmVzcy1jYXJkIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmFkZHJlc3MtY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMC41cmVtIDFyZW0gcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmFkZHJlc3MtY2FyZC5kZWZhdWx0LWFkZHJlc3Mge1xuICBib3JkZXItY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZmZmIDAlLCAjZjhmOWZmIDEwMCUpO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmFkZHJlc3MtY2FyZCAuYWRkcmVzcy1kZXRhaWxzIHtcbiAgbWluLWhlaWdodDogMTIwcHg7XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuYWRkcmVzcy1jYXJkIC5iYWRnZSB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5hZGRyZXNzLWNhcmQgLmJhZGdlLmJnLXByaW1hcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KSAhaW1wb3J0YW50O1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmRyb3Bkb3duIC5idG4tb3V0bGluZS1zZWNvbmRhcnkuYnRuLXNtLmRyb3Bkb3duLXRvZ2dsZSxcbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuZHJvcGRvd24gLmJ0bi1ncm91cC1zbSA+IC5idG4tb3V0bGluZS1zZWNvbmRhcnkuZHJvcGRvd24tdG9nZ2xlLmJ0biB7XG4gIHdpZHRoOiAzMnB4O1xuICBoZWlnaHQ6IDMycHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAwO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLnRleHQtc3VjY2VzcyB7XG4gIGNvbG9yOiAjMTk4NzU0ICFpbXBvcnRhbnQ7XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuZmEtM3gge1xuICBmb250LXNpemU6IDNyZW07XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuYWRkcmVzcy1jYXJkIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5hZGRyZXNzLWNhcmQ6aG92ZXIge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG4ucHJvZmlsZS1zZWN1cml0eS1wYWdlIC5wYXNzd29yZC1yZXF1aXJlbWVudHMgLnJlcXVpcmVtZW50IHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xufVxuXG4ucHJvZmlsZS1zZWN1cml0eS1wYWdlIC5wYXNzd29yZC1yZXF1aXJlbWVudHMgLnJlcXVpcmVtZW50LnZhbGlkIGkge1xuICBjb2xvcjogIzE5ODc1NCAhaW1wb3J0YW50O1xufVxuXG4ucHJvZmlsZS1zZWN1cml0eS1wYWdlIC5wYXNzd29yZC1yZXF1aXJlbWVudHMgLnJlcXVpcmVtZW50LnZhbGlkIGk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMGNcIjtcbn1cblxuLnByb2ZpbGUtc2VjdXJpdHktcGFnZSAucGFzc3dvcmQtc3RyZW5ndGgge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcbn1cblxuLnByb2ZpbGUtc2VjdXJpdHktcGFnZSAucHJvZ3Jlc3MtYmFyIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbn1cblxuLnByb2ZpbGUtc2VjdXJpdHktcGFnZSAuaW5wdXQtZ3JvdXAgLmJ0biB7XG4gIGJvcmRlci1sZWZ0OiAwO1xufVxuXG4ucHJvZmlsZS1zZWN1cml0eS1wYWdlIC5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sOmZvY3VzICsgLmJ0bixcbi5wcm9maWxlLXNlY3VyaXR5LXBhZ2UgLmlucHV0LWdyb3VwIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMgKyAuYnRuLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wcm9maWxlLXNlY3VyaXR5LXBhZ2UgLmlucHV0LWdyb3VwIC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyArIC5idG4ge1xuICBib3JkZXItY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xufVxuXG4ucHJvZmlsZS1zZWN1cml0eS1wYWdlIC50YWJsZSBjb2RlLFxuLnByb2ZpbGUtc2VjdXJpdHktcGFnZSAucHJvc2UgdGFibGUgY29kZSxcbi5wcm9zZSAucHJvZmlsZS1zZWN1cml0eS1wYWdlIHRhYmxlIGNvZGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICBwYWRkaW5nOiAwLjJyZW0gMC40cmVtO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuXG4ucGFnZS1pcy1wcm9maWxlLWludm9pY2UgLmludm9pY2UtY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiA4MDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuQG1lZGlhIHByaW50IHtcbiAgLm5hdmJhcixcbiAgLmZvb3RlcixcbiAgLm5vLXByaW50LFxuICAuYnJlYWRjcnVtYiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmludm9pY2UtY29udGFpbmVyIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG5cbiAgYm9keSB7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gIH1cbn1cblxuLyoqXG4gKiBCbG9nIEluZGV4IFBhZ2UgU3R5bGVzXG4gKiBTdHlsZXMgZm9yIHRoZSBtYWluIGJsb2cgbGlzdGluZyBwYWdlXG4gKi9cblxuLnBhZ2UtaXMtYmxvZy1pbmRleCB7XG4gIC8qIEhlcm8gU2VjdGlvbiAqL1xuICAvKiBGZWF0dXJlZCBDYXJkcyAqL1xuICAvKiBDYXRlZ29yeSBCYWRnZXMgKi9cbiAgLyogQmxvZyBQb3N0IENhcmRzICovXG4gIC8qIFNpZGViYXIgKi9cbiAgLyogQXJjaGl2ZSBMaXN0ICovXG4gIC8qIFBvcHVsYXIgUG9zdHMgKi9cbn1cblxuLnBhZ2UtaXMtYmxvZy1pbmRleCAuaGVyby1mZWF0dXJlZCB7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiA0MDBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLnBhZ2UtaXMtYmxvZy1pbmRleCAuaGVyby1mZWF0dXJlZDo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMC4zKSwgcmdiYSgwLCAwLCAwLCAwLjgpKTtcbn1cblxuLnBhZ2UtaXMtYmxvZy1pbmRleCAuaGVyby1mZWF0dXJlZCAuY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbn1cblxuLnBhZ2UtaXMtYmxvZy1pbmRleCAuZmVhdHVyZWQtY2FyZCB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2U7XG59XG5cbi5wYWdlLWlzLWJsb2ctaW5kZXggLmZlYXR1cmVkLWNhcmQ6aG92ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7XG59XG5cbi5wYWdlLWlzLWJsb2ctaW5kZXggLmZlYXR1cmVkLWNhcmQgLnRodW1ibmFpbCB7XG4gIGhlaWdodDogMjUwcHg7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4ucGFnZS1pcy1ibG9nLWluZGV4IC5jYXRlZ29yeS1iYWRnZSB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbn1cblxuLnBhZ2UtaXMtYmxvZy1pbmRleCAuYmxvZy1wb3N0IHtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgcGFkZGluZy1ib3R0b206IDNyZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGVlMmU2O1xufVxuXG4ucGFnZS1pcy1ibG9nLWluZGV4IC5ibG9nLXBvc3Q6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbi5wYWdlLWlzLWJsb2ctaW5kZXggLmJsb2ctcG9zdC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG4ucGFnZS1pcy1ibG9nLWluZGV4IC5ibG9nLXBvc3QtdGl0bGUgYSB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5wYWdlLWlzLWJsb2ctaW5kZXggLmJsb2ctcG9zdC10aXRsZSBhOmhvdmVyIHtcbiAgY29sb3I6ICMwZDZlZmQ7XG59XG5cbi5wYWdlLWlzLWJsb2ctaW5kZXggLmJsb2ctcG9zdC1tZXRhIHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5wYWdlLWlzLWJsb2ctaW5kZXggLmJsb2ctcG9zdC1tZXRhIGEge1xuICBjb2xvcjogIzQ5NTA1NztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLnBhZ2UtaXMtYmxvZy1pbmRleCAuc2lkZWJhci1zZWN0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cblxuLnBhZ2UtaXMtYmxvZy1pbmRleCAuc2lkZWJhci1zZWN0aW9uIGg0LFxuLnBhZ2UtaXMtYmxvZy1pbmRleCAuc2lkZWJhci1zZWN0aW9uIC5oNCB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLnBhZ2UtaXMtYmxvZy1pbmRleCAuYXJjaGl2ZS1saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuLnBhZ2UtaXMtYmxvZy1pbmRleCAuYXJjaGl2ZS1saXN0IGxpIHtcbiAgcGFkZGluZzogMC41cmVtIDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjBmMGYwO1xufVxuXG4ucGFnZS1pcy1ibG9nLWluZGV4IC5hcmNoaXZlLWxpc3QgbGk6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbi5wYWdlLWlzLWJsb2ctaW5kZXggLnBvcHVsYXItcG9zdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLnBhZ2UtaXMtYmxvZy1pbmRleCAucG9wdWxhci1wb3N0IGltZyB7XG4gIHdpZHRoOiA2MHB4O1xuICBoZWlnaHQ6IDYwcHg7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG5cbi5wYWdlLWlzLWJsb2ctaW5kZXggLnBvcHVsYXItcG9zdC1jb250ZW50IGg2LFxuLnBhZ2UtaXMtYmxvZy1pbmRleCAucG9wdWxhci1wb3N0LWNvbnRlbnQgLmg2IHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbn1cblxuLnBhZ2UtaXMtYmxvZy1pbmRleCAucG9wdWxhci1wb3N0LWNvbnRlbnQgaDYgYSxcbi5wYWdlLWlzLWJsb2ctaW5kZXggLnBvcHVsYXItcG9zdC1jb250ZW50IC5oNiBhIHtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnBhZ2UtaXMtYmxvZy1pbmRleCAucG9wdWxhci1wb3N0LWNvbnRlbnQgaDYgYTpob3Zlcixcbi5wYWdlLWlzLWJsb2ctaW5kZXggLnBvcHVsYXItcG9zdC1jb250ZW50IC5oNiBhOmhvdmVyIHtcbiAgY29sb3I6ICMwZDZlZmQ7XG59XG5cbi5wYWdlLWlzLWJsb2ctaW5kZXggLnBvcHVsYXItcG9zdC1tZXRhIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBjb2xvcjogIzZjNzU3ZDtcbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLnBhZ2UtaXMtYmxvZy1pbmRleCAuZmVhdHVyZWQtY2FyZCB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxuXG4gIC5wYWdlLWlzLWJsb2ctaW5kZXggLmZlYXR1cmVkLWNhcmQ6aG92ZXIge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG4ucGFnZS1pcy1ibG9nLXNob3cge1xuICAvKiBCbG9nIFBvc3QgU3R5bGVzICovXG4gIC8qIE5hdmlnYXRpb24gKi9cbiAgLyogUmVsYXRlZCBQb3N0cyAqL1xuICAvKiBTaWRlYmFyIFN0eWxlcyAoc2FtZSBhcyBibG9nIGluZGV4KSAqL1xuICAvKiBBcmNoaXZlIExpc3QgKi9cbiAgLyogUG9wdWxhciBQb3N0cyAqL1xufVxuXG4ucGFnZS1pcy1ibG9nLXNob3cgLmJsb2ctcG9zdC1oZWFkZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDNyZW07XG59XG5cbi5wYWdlLWlzLWJsb2ctc2hvdyAuYmxvZy1wb3N0LXRpdGxlIHtcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5wYWdlLWlzLWJsb2ctc2hvdyAuYmxvZy1wb3N0LW1ldGEge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cblxuLnBhZ2UtaXMtYmxvZy1zaG93IC5ibG9nLXBvc3QtbWV0YSBhIHtcbiAgY29sb3I6ICM0OTUwNTc7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnBhZ2UtaXMtYmxvZy1zaG93IC5ibG9nLXBvc3QtbWV0YSBhOmhvdmVyIHtcbiAgY29sb3I6ICMwZDZlZmQ7XG59XG5cbi5wYWdlLWlzLWJsb2ctc2hvdyAuYmxvZy1wb3N0LWltYWdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuXG4ucGFnZS1pcy1ibG9nLXNob3cgLmJsb2ctcG9zdC1jb250ZW50IHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNzU7XG4gIGNvbG9yOiAjMjEyNTI5O1xufVxuXG4ucGFnZS1pcy1ibG9nLXNob3cgLmJsb2ctcG9zdC1jb250ZW50IHAge1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG5cbi5wYWdlLWlzLWJsb2ctc2hvdyAuYmxvZy1wb3N0LWNvbnRlbnQgaDIsXG4ucGFnZS1pcy1ibG9nLXNob3cgLmJsb2ctcG9zdC1jb250ZW50IC5oMixcbi5wYWdlLWlzLWJsb2ctc2hvdyAuYmxvZy1wb3N0LWNvbnRlbnQgaDMsXG4ucGFnZS1pcy1ibG9nLXNob3cgLmJsb2ctcG9zdC1jb250ZW50IC5oMyxcbi5wYWdlLWlzLWJsb2ctc2hvdyAuYmxvZy1wb3N0LWNvbnRlbnQgaDQsXG4ucGFnZS1pcy1ibG9nLXNob3cgLmJsb2ctcG9zdC1jb250ZW50IC5oNCB7XG4gIG1hcmdpbi10b3A6IDJyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5wYWdlLWlzLWJsb2ctc2hvdyAucG9zdC1uYXZpZ2F0aW9uIHtcbiAgbWFyZ2luOiAyMHB4O1xuICAvKiBtYXJnaW4tdG9wOiAzcmVtOyAqL1xuICAvKiBwYWRkaW5nLXRvcDogMnJlbTsgKi9cbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZWUyZTY7XG59XG5cbi5wYWdlLWlzLWJsb2ctc2hvdyAubmF2LXBvc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzIGVhc2U7XG59XG5cbi5wYWdlLWlzLWJsb2ctc2hvdyAubmF2LXBvc3Q6aG92ZXIge1xuICBjb2xvcjogIzBkNmVmZDtcbn1cblxuLnBhZ2UtaXMtYmxvZy1zaG93IC5uYXYtcG9zdC1sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbn1cblxuLnBhZ2UtaXMtYmxvZy1zaG93IC5yZWxhdGVkLXBvc3RzIHtcbiAgbWFyZ2luLXRvcDogM3JlbTtcbiAgcGFkZGluZy10b3A6IDNyZW07XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGVlMmU2O1xufVxuXG4ucGFnZS1pcy1ibG9nLXNob3cgLnJlbGF0ZWQtcG9zdC1jYXJkIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xufVxuXG4ucGFnZS1pcy1ibG9nLXNob3cgLnJlbGF0ZWQtcG9zdC1jYXJkOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpO1xufVxuXG4ucGFnZS1pcy1ibG9nLXNob3cgLnJlbGF0ZWQtcG9zdC1pbWFnZSB7XG4gIGhlaWdodDogMjAwcHg7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4ucGFnZS1pcy1ibG9nLXNob3cgLnNpZGViYXItc2VjdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5cbi5wYWdlLWlzLWJsb2ctc2hvdyAuc2lkZWJhci1zZWN0aW9uIGg0LFxuLnBhZ2UtaXMtYmxvZy1zaG93IC5zaWRlYmFyLXNlY3Rpb24gLmg0IHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4ucGFnZS1pcy1ibG9nLXNob3cgLmFyY2hpdmUtbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5wYWdlLWlzLWJsb2ctc2hvdyAuYXJjaGl2ZS1saXN0IGxpIHtcbiAgcGFkZGluZzogMC41cmVtIDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjBmMGYwO1xufVxuXG4ucGFnZS1pcy1ibG9nLXNob3cgLmFyY2hpdmUtbGlzdCBsaTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLnBhZ2UtaXMtYmxvZy1zaG93IC5wb3B1bGFyLXBvc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5wYWdlLWlzLWJsb2ctc2hvdyAucG9wdWxhci1wb3N0IGltZyB7XG4gIHdpZHRoOiA2MHB4O1xuICBoZWlnaHQ6IDYwcHg7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG5cbi5wYWdlLWlzLWJsb2ctc2hvdyAucG9wdWxhci1wb3N0LWNvbnRlbnQgaDYsXG4ucGFnZS1pcy1ibG9nLXNob3cgLnBvcHVsYXItcG9zdC1jb250ZW50IC5oNiB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG59XG5cbi5wYWdlLWlzLWJsb2ctc2hvdyAucG9wdWxhci1wb3N0LWNvbnRlbnQgaDYgYSxcbi5wYWdlLWlzLWJsb2ctc2hvdyAucG9wdWxhci1wb3N0LWNvbnRlbnQgLmg2IGEge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4ucGFnZS1pcy1ibG9nLXNob3cgLnBvcHVsYXItcG9zdC1jb250ZW50IGg2IGE6aG92ZXIsXG4ucGFnZS1pcy1ibG9nLXNob3cgLnBvcHVsYXItcG9zdC1jb250ZW50IC5oNiBhOmhvdmVyIHtcbiAgY29sb3I6ICMwZDZlZmQ7XG59XG5cbi5wYWdlLWlzLWJsb2ctc2hvdyAucG9wdWxhci1wb3N0LW1ldGEge1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGNvbG9yOiAjNmM3NTdkO1xufVxuXG4ucGFnZS1pcy1ibG9nLWNhdGVnb3JpZXMge1xuICAvKiBIZXJvIFNlY3Rpb24gKi9cbiAgLyogQ2F0ZWdvcnkgQ2FyZHMgKi9cbiAgLyogQ2F0ZWdvcnkgTGluayAqL1xuICAvKiBTaWRlYmFyIFN0eWxlcyAqL1xuICAvKiBQb3B1bGFyIFBvc3RzIFdpZGdldCAqL1xuICAvKiBSZXNwb25zaXZlICovXG59XG5cbi5wYWdlLWlzLWJsb2ctY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1oZXJvIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2Y4ZjlmYSAwJSwgI2U5ZWNlZiAxMDAlKTtcbiAgcGFkZGluZzogODBweCAwO1xuICBtYXJnaW4tYm90dG9tOiA2MHB4O1xufVxuXG4ucGFnZS1pcy1ibG9nLWNhdGVnb3JpZXMgLmNhdGVnb3JpZXMtaGVybyBoMSxcbi5wYWdlLWlzLWJsb2ctY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1oZXJvIC5oMSB7XG4gIGZvbnQtc2l6ZTogM3JlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjVweDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLnBhZ2UtaXMtYmxvZy1jYXRlZ29yaWVzIC5jYXRlZ29yaWVzLWhlcm8gLmxlYWQge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBtYXgtd2lkdGg6IDYwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLnBhZ2UtaXMtYmxvZy1jYXRlZ29yaWVzIC5jYXRlZ29yeS1jYXJkIHtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwLjc1cmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJveC1zaGFkb3c6IDAgMC4xMjVyZW0gMC41cmVtIHJnYmEoMCwgMCwgMCwgMC4wNSk7XG59XG5cbi5wYWdlLWlzLWJsb2ctY2F0ZWdvcmllcyAuY2F0ZWdvcnktY2FyZDpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcbiAgYm94LXNoYWRvdzogMCAwLjVyZW0gMS41cmVtIHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLnBhZ2UtaXMtYmxvZy1jYXRlZ29yaWVzIC5jYXRlZ29yeS1jYXJkOmhvdmVyIGltZyB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG59XG5cbi5wYWdlLWlzLWJsb2ctY2F0ZWdvcmllcyAuY2F0ZWdvcnktY2FyZCAuY2FyZC1pbWctd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaGVpZ2h0OiAyMDBweDtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzY2N2VlYSAwJSwgIzc2NGJhMiAxMDAlKTtcbn1cblxuLnBhZ2UtaXMtYmxvZy1jYXRlZ29yaWVzIC5jYXRlZ29yeS1jYXJkIC5jYXJkLWltZy13cmFwcGVyLm5vLWltYWdlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC1zaXplOiA0cmVtO1xufVxuXG4ucGFnZS1pcy1ibG9nLWNhdGVnb3JpZXMgLmNhdGVnb3J5LWNhcmQgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2U7XG59XG5cbi5wYWdlLWlzLWJsb2ctY2F0ZWdvcmllcyAuY2F0ZWdvcnktY2FyZCAuY2FyZC1ib2R5IHtcbiAgcGFkZGluZzogMS41cmVtO1xufVxuXG4ucGFnZS1pcy1ibG9nLWNhdGVnb3JpZXMgLmNhdGVnb3J5LWNhcmQgLmNhcmQtdGl0bGUge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbiAgY29sb3I6ICMyMTI1Mjk7XG59XG5cbi5wYWdlLWlzLWJsb2ctY2F0ZWdvcmllcyAuY2F0ZWdvcnktY2FyZCAuY2FyZC10ZXh0IHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAtd2Via2l0LWxpbmUtY2xhbXA6IDM7XG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5wYWdlLWlzLWJsb2ctY2F0ZWdvcmllcyAuY2F0ZWdvcnktc3RhdHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmctdG9wOiAxcmVtO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2U5ZWNlZjtcbn1cblxuLnBhZ2UtaXMtYmxvZy1jYXRlZ29yaWVzIC5jYXRlZ29yeS1zdGF0cyAuc3RhdCB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGNvbG9yOiAjNmM3NTdkO1xufVxuXG4ucGFnZS1pcy1ibG9nLWNhdGVnb3JpZXMgLmNhdGVnb3J5LXN0YXRzIC5zdGF0IHN0cm9uZyB7XG4gIGNvbG9yOiAjNDk1MDU3O1xufVxuXG4ucGFnZS1pcy1ibG9nLWNhdGVnb3JpZXMgLmNhdGVnb3J5LWxpbmsge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4ucGFnZS1pcy1ibG9nLWNhdGVnb3JpZXMgLmNhdGVnb3J5LWxpbms6aG92ZXIge1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLnBhZ2UtaXMtYmxvZy1jYXRlZ29yaWVzIC5ibG9nLXNpZGViYXIge1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB0b3A6IDEwMHB4O1xufVxuXG4ucGFnZS1pcy1ibG9nLWNhdGVnb3JpZXMgLnNpZGViYXItd2lkZ2V0IHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICBwYWRkaW5nOiAxLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIGJveC1zaGFkb3c6IDAgMC4xMjVyZW0gMC41cmVtIHJnYmEoMCwgMCwgMCwgMC4wNSk7XG59XG5cbi5wYWdlLWlzLWJsb2ctY2F0ZWdvcmllcyAuc2lkZWJhci13aWRnZXQgaDQsXG4ucGFnZS1pcy1ibG9nLWNhdGVnb3JpZXMgLnNpZGViYXItd2lkZ2V0IC5oNCB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgY29sb3I6ICMyMTI1Mjk7XG59XG5cbi5wYWdlLWlzLWJsb2ctY2F0ZWdvcmllcyAuc2lkZWJhci13aWRnZXQgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG59XG5cbi5wYWdlLWlzLWJsb2ctY2F0ZWdvcmllcyAuc2lkZWJhci13aWRnZXQgdWwgbGkge1xuICBwYWRkaW5nOiAwLjVyZW0gMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMWYzZjU7XG59XG5cbi5wYWdlLWlzLWJsb2ctY2F0ZWdvcmllcyAuc2lkZWJhci13aWRnZXQgdWwgbGk6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbi5wYWdlLWlzLWJsb2ctY2F0ZWdvcmllcyAuc2lkZWJhci13aWRnZXQgYSB7XG4gIGNvbG9yOiAjNDk1MDU3O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4ycyBlYXNlO1xufVxuXG4ucGFnZS1pcy1ibG9nLWNhdGVnb3JpZXMgLnNpZGViYXItd2lkZ2V0IGE6aG92ZXIge1xuICBjb2xvcjogIzBkNmVmZDtcbn1cblxuLnBhZ2UtaXMtYmxvZy1jYXRlZ29yaWVzIC5wb3B1bGFyLXBvc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5wYWdlLWlzLWJsb2ctY2F0ZWdvcmllcyAucG9wdWxhci1wb3N0Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ucGFnZS1pcy1ibG9nLWNhdGVnb3JpZXMgLnBvcHVsYXItcG9zdC1pbWcge1xuICBmbGV4LXNocmluazogMDtcbiAgd2lkdGg6IDYwcHg7XG4gIGhlaWdodDogNjBweDtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogI2U5ZWNlZjtcbn1cblxuLnBhZ2UtaXMtYmxvZy1jYXRlZ29yaWVzIC5wb3B1bGFyLXBvc3QtaW1nIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4ucGFnZS1pcy1ibG9nLWNhdGVnb3JpZXMgLnBvcHVsYXItcG9zdC1jb250ZW50IGg2LFxuLnBhZ2UtaXMtYmxvZy1jYXRlZ29yaWVzIC5wb3B1bGFyLXBvc3QtY29udGVudCAuaDYge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xufVxuXG4ucGFnZS1pcy1ibG9nLWNhdGVnb3JpZXMgLnBvcHVsYXItcG9zdC1jb250ZW50IC50ZXh0LW11dGVkIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2UtaXMtYmxvZy1jYXRlZ29yaWVzIC5jYXRlZ29yaWVzLWhlcm8gaDEsXG4gIC5wYWdlLWlzLWJsb2ctY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1oZXJvIC5oMSB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG5cbiAgLnBhZ2UtaXMtYmxvZy1jYXRlZ29yaWVzIC5ibG9nLXNpZGViYXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDA7XG4gICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgfVxufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5sb2dpbi1wYWdlLXdyYXBwZXIsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC5sb2dpbi1wYWdlLXdyYXBwZXIge1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1nL2Jhbm5lci9iZy1TaWduSW4ud2VicFwiKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmctdG9wOiAxMDBweDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbn1cblxuLm5vLXdlYnAgLnBhZ2VfaXNfbG9naW5fcGFnZSAubG9naW4tcGFnZS13cmFwcGVyLFxuLm5vLXdlYnAgLnBhZ2UtaXMtbG9naW4tcGFnZSAubG9naW4tcGFnZS13cmFwcGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltZy9iYW5uZXIvYmctU2lnbkluLnBuZ1wiKTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAucGFnZV9pc19sb2dpbl9wYWdlIC5sb2dpbi1wYWdlLXdyYXBwZXIsXG4gIC5wYWdlLWlzLWxvZ2luLXBhZ2UgLmxvZ2luLXBhZ2Utd3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDgwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gIC5wYWdlX2lzX2xvZ2luX3BhZ2UgLmxvZ2luLXBhZ2Utd3JhcHBlcixcbiAgLnBhZ2UtaXMtbG9naW4tcGFnZSAubG9naW4tcGFnZS13cmFwcGVyIHtcbiAgICBwYWRkaW5nLXRvcDogNjBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2VfaXNfbG9naW5fcGFnZSAubG9naW4tcGFnZS13cmFwcGVyLFxuICAucGFnZS1pcy1sb2dpbi1wYWdlIC5sb2dpbi1wYWdlLXdyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAucGFnZV9pc19sb2dpbl9wYWdlIC5sb2dpbi1wYWdlLXdyYXBwZXIsXG4gIC5wYWdlLWlzLWxvZ2luLXBhZ2UgLmxvZ2luLXBhZ2Utd3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDQwcHg7XG4gIH1cbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAubG9naW4tY29udGFpbmVyLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAubG9naW4tY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogOTAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLmxvZ2luLWNhcmQsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC5sb2dpbi1jYXJkIHtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgYm94LXNoYWRvdzogMCAyMHB4IDYwcHggcmdiYSgwLCAwLCAwLCAwLjA4KTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjA1KTtcbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAubG9naW4taGVhZGVyLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAubG9naW4taGVhZGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAzMHB4IDIwcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjBmMGYwO1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5sb2dpbi1oZWFkZXIgLmxvZ2luLWxvZ28taW1nLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAubG9naW4taGVhZGVyIC5sb2dpbi1sb2dvLWltZyB7XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAubG9naW4taGVhZGVyIC5sdXh1cnktdGFnbGluZSxcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLmxvZ2luLWhlYWRlciAubHV4dXJ5LXRhZ2xpbmUge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLmxvZ2luLWNvbnRlbnQsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC5sb2dpbi1jb250ZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWluLWhlaWdodDogNDAwcHg7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucGFnZV9pc19sb2dpbl9wYWdlIC5sb2dpbi1jb250ZW50LFxuICAucGFnZS1pcy1sb2dpbi1wYWdlIC5sb2dpbi1jb250ZW50IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLmxvZ2luLWNvbHVtbixcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLmxvZ2luLWNvbHVtbiB7XG4gIGZsZXg6IDE7XG4gIHBhZGRpbmc6IDIwcHggMzVweCA2MHB4IDM1cHg7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucGFnZV9pc19sb2dpbl9wYWdlIC5sb2dpbi1jb2x1bW4sXG4gIC5wYWdlLWlzLWxvZ2luLXBhZ2UgLmxvZ2luLWNvbHVtbiB7XG4gICAgcGFkZGluZzogMTVweCAyNXB4IDQ1cHggMjVweDtcbiAgfVxufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5sb2dpbi1mb3JtLWNvbHVtbiAuY29sdW1uLWNvbnRlbnQsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC5sb2dpbi1mb3JtLWNvbHVtbiAuY29sdW1uLWNvbnRlbnQge1xuICBtYXgtd2lkdGg6IDM0MHB4O1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAuYm9vay1zcGluZSxcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLmJvb2stc3BpbmUge1xuICB3aWR0aDogMXB4O1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCB0cmFuc3BhcmVudCAwJSwgI2UwZTBlMCAyMCUsICNlMGUwZTAgODAlLCB0cmFuc3BhcmVudCAxMDAlKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDQwcHggMDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5wYWdlX2lzX2xvZ2luX3BhZ2UgLmJvb2stc3BpbmUsXG4gIC5wYWdlLWlzLWxvZ2luLXBhZ2UgLmJvb2stc3BpbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAuYm9vay1zcGluZSAuc3BpbmUtZGVjb3JhdGlvbixcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLmJvb2stc3BpbmUgLnNwaW5lLWRlY29yYXRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBwYWRkaW5nOiAxMHB4IDA7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLmJvb2stc3BpbmUgLnNwaW5lLWRlY29yYXRpb24gLnNwaW5lLWdlbSxcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLmJvb2stc3BpbmUgLnNwaW5lLWRlY29yYXRpb24gLnNwaW5lLWdlbSB7XG4gIGNvbG9yOiAjZDRhZjM3O1xuICBmb250LXNpemU6IDE4cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC53ZWxjb21lLXRpdGxlLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAud2VsY29tZS10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMjhweDtcbiAgY29sb3I6ICMxZTFlNTY7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC53ZWxjb21lLXN1YnRpdGxlLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAud2VsY29tZS1zdWJ0aXRsZSB7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBmb250LXNpemU6IDE0cHg7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAuZm9ybS1ncm91cCxcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAxOHB4O1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5mb3JtLWxhYmVsLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAuZm9ybS1sYWJlbCB7XG4gIGNvbG9yOiAjNDk1MDU3O1xuICBmb250LXdlaWdodDogNTAwO1xuICBtYXJnaW4tYm90dG9tOiA2cHg7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5lbGVnYW50LWlucHV0LFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAuZWxlZ2FudC1pbnB1dCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgcGFkZGluZzogMTBweCAxNHB4O1xuICBmb250LXNpemU6IDE1cHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWZiZmM7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLmVsZWdhbnQtaW5wdXQ6Zm9jdXMsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC5lbGVnYW50LWlucHV0OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMWUxZTU2O1xuICBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYSgzMCwgMzAsIDg2LCAwLjA4KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAuZWxlZ2FudC1pbnB1dDo6cGxhY2Vob2xkZXIsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC5lbGVnYW50LWlucHV0OjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjYWRiNWJkO1xuICBmb250LXNpemU6IDE0cHg7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLmlucHV0LWdyb3VwLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAuaW5wdXQtZ3JvdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2VfaXNfbG9naW5fcGFnZSAuaW5wdXQtZ3JvdXAgLnNlbGVjdDItc2VsZWN0aW9uLFxuLnBhZ2VfaXNfbG9naW5fcGFnZSAuaW5wdXQtZ3JvdXAgLmVsZWdhbnQtaW5wdXQsXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5pbnB1dC1ncm91cCAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAuaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbCxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucGFnZS1pcy1sb2dpbi1wYWdlIC5pbnB1dC1ncm91cCAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC5pbnB1dC1ncm91cCAuZWxlZ2FudC1pbnB1dCxcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLmlucHV0LWdyb3VwIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICBwYWRkaW5nLWxlZnQ6IDQwcHggIWltcG9ydGFudDtcbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAuaW5wdXQtaWNvbixcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLmlucHV0LWljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDE0cHg7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIGNvbG9yOiAjYWRiNWJkO1xuICB6LWluZGV4OiAxMDtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5wYXNzd29yZC10b2dnbGUsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC5wYXNzd29yZC10b2dnbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxNHB4O1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjYWRiNWJkO1xuICB6LWluZGV4OiAxMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogNXB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMnM7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLnBhc3N3b3JkLXRvZ2dsZTpob3Zlcixcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLnBhc3N3b3JkLXRvZ2dsZTpob3ZlciB7XG4gIGNvbG9yOiAjNDk1MDU3O1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5mb3Jnb3QtbGluayxcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLmZvcmdvdC1saW5rIHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzO1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5mb3Jnb3QtbGluazpob3Zlcixcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLmZvcmdvdC1saW5rOmhvdmVyIHtcbiAgY29sb3I6ICMxZTFlNTY7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5idG4tZWxlZ2FudC1sb2dpbixcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLmJ0bi1lbGVnYW50LWxvZ2luIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzFlMWU1NiAwJSwgIzJhMmE3YSAxMDAlKTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgcGFkZGluZzogMTJweCAyNHB4O1xuICBmb250LXNpemU6IDE1cHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDE1cHggcmdiYSgzMCwgMzAsIDg2LCAwLjIpO1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5idG4tZWxlZ2FudC1sb2dpbjpob3Zlcixcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLmJ0bi1lbGVnYW50LWxvZ2luOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xuICBib3gtc2hhZG93OiAwIDZweCAyNXB4IHJnYmEoMzAsIDMwLCA4NiwgMC4zKTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzJhMmE3YSAwJSwgIzFlMWU1NiAxMDAlKTtcbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAuYnRuLWVsZWdhbnQtbG9naW46YWN0aXZlLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAuYnRuLWVsZWdhbnQtbG9naW46YWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5hbGVydC1lbGVnYW50LFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAuYWxlcnQtZWxlZ2FudCB7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgcGFkZGluZzogMTBweCAxNHB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBmb250LXNpemU6IDEzcHg7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAuYWxlcnQtZWxlZ2FudC5hbGVydC1kYW5nZXIsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC5hbGVydC1lbGVnYW50LmFsZXJ0LWRhbmdlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY1ZjU7XG4gIGNvbG9yOiAjZDk1MzRmO1xuICBib3JkZXItbGVmdDogM3B4IHNvbGlkICNkOTUzNGY7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLmNyZWF0ZS1hY2NvdW50LWNvbHVtbixcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLmNyZWF0ZS1hY2NvdW50LWNvbHVtbiB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNmYWZiZmMgMCUsICNmNWY3ZmEgMTAwJSk7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucGFnZV9pc19sb2dpbl9wYWdlIC5jcmVhdGUtYWNjb3VudC1jb2x1bW4sXG4gIC5wYWdlLWlzLWxvZ2luLXBhZ2UgLmNyZWF0ZS1hY2NvdW50LWNvbHVtbiB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlMGUwZTA7XG4gIH1cbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAubmV3LW1lbWJlci1zZWN0aW9uLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAubmV3LW1lbWJlci1zZWN0aW9uIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5qb2luLXRpdGxlLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAuam9pbi10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMjhweDtcbiAgY29sb3I6ICMxZTFlNTY7XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC41cHg7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLmpvaW4tc3VidGl0bGUsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC5qb2luLXN1YnRpdGxlIHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAuYmVuZWZpdHMtbGlzdCxcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLmJlbmVmaXRzLWxpc3Qge1xuICBtYXJnaW46IDI1cHggMDtcbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAuYmVuZWZpdC1pdGVtLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAuYmVuZWZpdC1pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG4gIGNvbG9yOiAjNDk1MDU3O1xuICBmb250LXNpemU6IDE0cHg7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLmJlbmVmaXQtaXRlbSBpLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAuYmVuZWZpdC1pdGVtIGkge1xuICBjb2xvcjogI2Q0YWYzNztcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLmJ0bi1jcmVhdGUtZWxlZ2FudCxcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLmJ0bi1jcmVhdGUtZWxlZ2FudCB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDJweCBzb2xpZCAjMWUxZTU2O1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGNvbG9yOiAjMWUxZTU2O1xuICBwYWRkaW5nOiAxMnB4IDI0cHg7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAuYnRuLWNyZWF0ZS1lbGVnYW50OmhvdmVyLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAuYnRuLWNyZWF0ZS1lbGVnYW50OmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzFlMWU1NjtcbiAgY29sb3I6IHdoaXRlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDE1cHggcmdiYSgzMCwgMzAsIDg2LCAwLjIpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLnNvY2lhbC1kaXZpZGVyLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAuc29jaWFsLWRpdmlkZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbjogMjVweCAwIDIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAuc29jaWFsLWRpdmlkZXI6OmJlZm9yZSxcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLnNvY2lhbC1kaXZpZGVyOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJhY2tncm91bmQ6ICNkZWUyZTY7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLnNvY2lhbC1kaXZpZGVyIHNwYW4sXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC5zb2NpYWwtZGl2aWRlciBzcGFuIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2ZhZmJmYyAwJSwgI2Y1ZjdmYSAxMDAlKTtcbiAgcGFkZGluZzogMCAxNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBmb250LXNpemU6IDEycHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAxcHg7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLnNvY2lhbC1sb2dpbi1lbGVnYW50LFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAuc29jaWFsLWxvZ2luLWVsZWdhbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZ2FwOiAxMHB4O1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5zb2NpYWwtYnRuLWVsZWdhbnQsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC5zb2NpYWwtYnRuLWVsZWdhbnQge1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5zb2NpYWwtYnRuLWVsZWdhbnQ6aG92ZXIsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC5zb2NpYWwtYnRuLWVsZWdhbnQ6aG92ZXIge1xuICBib3JkZXItY29sb3I6ICMxZTFlNTY7XG4gIGJveC1zaGFkb3c6IDAgM3B4IDEwcHggcmdiYSgzMCwgMzAsIDg2LCAwLjE1KTtcbiAgYmFja2dyb3VuZDogI2ZhZmJmYztcbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAuc29jaWFsLWJ0bi1lbGVnYW50IGltZyxcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLnNvY2lhbC1idG4tZWxlZ2FudCBpbWcge1xuICB3aWR0aDogMThweDtcbiAgaGVpZ2h0OiAxOHB4O1xuICBvYmplY3QtZml0OiBjb250YWluO1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5tb2JpbGUtY3JlYXRlLWFjY291bnQsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC5tb2JpbGUtY3JlYXRlLWFjY291bnQge1xuICBkaXNwbGF5OiBub25lO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2UwZTBlMDtcbiAgbWFyZ2luLXRvcDogMzBweDtcbiAgcGFkZGluZy10b3A6IDI1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5wYWdlX2lzX2xvZ2luX3BhZ2UgLm1vYmlsZS1jcmVhdGUtYWNjb3VudCxcbiAgLnBhZ2UtaXMtbG9naW4tcGFnZSAubW9iaWxlLWNyZWF0ZS1hY2NvdW50IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5tb2JpbGUtY3JlYXRlLWFjY291bnQgLmRpdmlkZXItdGV4dCxcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLm1vYmlsZS1jcmVhdGUtYWNjb3VudCAuZGl2aWRlci10ZXh0IHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAubW9iaWxlLWNyZWF0ZS1hY2NvdW50IC5idG4tb3V0bGluZS1lbGVnYW50LFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAubW9iaWxlLWNyZWF0ZS1hY2NvdW50IC5idG4tb3V0bGluZS1lbGVnYW50IHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMnB4IHNvbGlkICMxZTFlNTY7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgY29sb3I6ICMxZTFlNTY7XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAubW9iaWxlLWNyZWF0ZS1hY2NvdW50IC5idG4tb3V0bGluZS1lbGVnYW50OmhvdmVyLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAubW9iaWxlLWNyZWF0ZS1hY2NvdW50IC5idG4tb3V0bGluZS1lbGVnYW50OmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzFlMWU1NjtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6aW52YWxpZCxcbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjppbnZhbGlkLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlX2lzX2xvZ2luX3BhZ2UgLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItc2VsZWN0aW9uOmludmFsaWQsXG4ucGFnZV9pc19sb2dpbl9wYWdlIC53YXMtdmFsaWRhdGVkIC5lbGVnYW50LWlucHV0OmludmFsaWQsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6aW52YWxpZCxcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjppbnZhbGlkLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlLWlzLWxvZ2luLXBhZ2UgLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItc2VsZWN0aW9uOmludmFsaWQsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC53YXMtdmFsaWRhdGVkIC5lbGVnYW50LWlucHV0OmludmFsaWQge1xuICBib3JkZXItY29sb3I6ICNkYzM1NDU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDppbnZhbGlkOmZvY3VzLFxuLnBhZ2VfaXNfbG9naW5fcGFnZSAud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOmludmFsaWQ6Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2VfaXNfbG9naW5fcGFnZSAud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1zZWxlY3Rpb246aW52YWxpZDpmb2N1cyxcbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLndhcy12YWxpZGF0ZWQgLmVsZWdhbnQtaW5wdXQ6aW52YWxpZDpmb2N1cyxcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDppbnZhbGlkOmZvY3VzLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOmludmFsaWQ6Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2UtaXMtbG9naW4tcGFnZSAud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1zZWxlY3Rpb246aW52YWxpZDpmb2N1cyxcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLndhcy12YWxpZGF0ZWQgLmVsZWdhbnQtaW5wdXQ6aW52YWxpZDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbiAgYm94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEoMjIwLCA1MywgNjksIDAuMSk7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDp2YWxpZCxcbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjp2YWxpZCxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucGFnZV9pc19sb2dpbl9wYWdlIC53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLXNlbGVjdGlvbjp2YWxpZCxcbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLndhcy12YWxpZGF0ZWQgLmVsZWdhbnQtaW5wdXQ6dmFsaWQsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6dmFsaWQsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246dmFsaWQsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2UtaXMtbG9naW4tcGFnZSAud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1zZWxlY3Rpb246dmFsaWQsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC53YXMtdmFsaWRhdGVkIC5lbGVnYW50LWlucHV0OnZhbGlkIHtcbiAgYm9yZGVyLWNvbG9yOiAjMjhhNzQ1O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6dmFsaWQ6Zm9jdXMsXG4ucGFnZV9pc19sb2dpbl9wYWdlIC53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246dmFsaWQ6Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2VfaXNfbG9naW5fcGFnZSAud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1zZWxlY3Rpb246dmFsaWQ6Zm9jdXMsXG4ucGFnZV9pc19sb2dpbl9wYWdlIC53YXMtdmFsaWRhdGVkIC5lbGVnYW50LWlucHV0OnZhbGlkOmZvY3VzLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOnZhbGlkOmZvY3VzLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOnZhbGlkOmZvY3VzLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlLWlzLWxvZ2luLXBhZ2UgLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItc2VsZWN0aW9uOnZhbGlkOmZvY3VzLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAud2FzLXZhbGlkYXRlZCAuZWxlZ2FudC1pbnB1dDp2YWxpZDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzI4YTc0NTtcbiAgYm94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEoNDAsIDE2NywgNjksIDAuMSk7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLmludmFsaWQtZmVlZGJhY2ssXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5lcnJvci1oZWxwLWJsb2NrLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAuaW52YWxpZC1mZWVkYmFjayxcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLmVycm9yLWhlbHAtYmxvY2sge1xuICBmb250LXNpemU6IDEycHg7XG4gIG1hcmdpbi10b3A6IDRweDtcbiAgY29sb3I6ICNkYzM1NDU7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucGFnZV9pc19sb2dpbl9wYWdlIC5sb2dpbi1jYXJkLFxuICAucGFnZS1pcy1sb2dpbi1wYWdlIC5sb2dpbi1jYXJkIHtcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfbG9naW5fcGFnZSAubG9naW4taGVhZGVyLFxuICAucGFnZS1pcy1sb2dpbi1wYWdlIC5sb2dpbi1oZWFkZXIge1xuICAgIHBhZGRpbmc6IDI1cHggMjBweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2xvZ2luX3BhZ2UgLndlbGNvbWUtdGl0bGUsXG4gIC5wYWdlLWlzLWxvZ2luLXBhZ2UgLndlbGNvbWUtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2xvZ2luX3BhZ2UgLmpvaW4tdGl0bGUsXG4gIC5wYWdlLWlzLWxvZ2luLXBhZ2UgLmpvaW4tdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAucGFnZV9pc19sb2dpbl9wYWdlIC5sb2dpbi1jb250YWluZXIsXG4gIC5wYWdlLWlzLWxvZ2luLXBhZ2UgLmxvZ2luLWNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA3MDBweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2xvZ2luX3BhZ2UgLmxvZ2luLWNvbHVtbixcbiAgLnBhZ2UtaXMtbG9naW4tcGFnZSAubG9naW4tY29sdW1uIHtcbiAgICBwYWRkaW5nOiAzNXB4IDMwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xuICAucGFnZV9pc19sb2dpbl9wYWdlIC5sb2dpbi1jb250YWluZXIsXG4gIC5wYWdlLWlzLWxvZ2luLXBhZ2UgLmxvZ2luLWNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA5NTBweDtcbiAgfVxufVxuXG4ucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1wYWdlLXdyYXBwZXIge1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1nL2Jhbm5lci9iZy1TaWduSW4ud2VicFwiKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmctdG9wOiAxMDBweDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbn1cblxuLm5vLXdlYnAgLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAucmVnaXN0ZXItcGFnZS13cmFwcGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltZy9iYW5uZXIvYmctU2lnbkluLnBuZ1wiKTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1wYWdlLXdyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiA4MHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1wYWdlLXdyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1wYWdlLXdyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1wYWdlLXdyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICB9XG59XG5cbi5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnJlZ2lzdGVyLWNvbnRhaW5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEyMDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDAgMTVweDtcbn1cblxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAucmVnaXN0ZXItY2FyZCB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIGJveC1zaGFkb3c6IDAgMTBweCA0MHB4IHJnYmEoMzAsIDMwLCA4NiwgMC4wOCk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1heC13aWR0aDogNjAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4ucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1yb3cge1xuICBtaW4taGVpZ2h0OiA3MDBweDtcbn1cblxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAucmVnaXN0ZXItZm9ybS1zZWN0aW9uIHtcbiAgcGFkZGluZzogNjBweCA1MHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAucmVnaXN0ZXItbG9nbyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cblxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAucmVnaXN0ZXItbG9nbyBoMSxcbi5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnJlZ2lzdGVyLWxvZ28gLmgxIHtcbiAgZm9udC1zaXplOiAzNnB4O1xuICBjb2xvcjogIzFlMWU1NjtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgbWFyZ2luOiAwO1xufVxuXG4ucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1sb2dvIC50YWdsaW5lIHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbWFyZ2luLXRvcDogOHB4O1xuICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG59XG5cbi5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnJlZ2lzdGVyLWZvcm0gaDIsXG4ucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1mb3JtIC5oMiB7XG4gIGZvbnQtc2l6ZTogMjhweDtcbiAgY29sb3I6ICMxZTFlNTY7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnJlZ2lzdGVyLWZvcm0gLnN1YnRpdGxlIHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAuZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLmZvcm0tbGFiZWwge1xuICBjb2xvcjogIzQ5NTA1NztcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5idG4tcmVnaXN0ZXIge1xuICBiYWNrZ3JvdW5kOiAjMWUxZTU2O1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgY29sb3I6IHdoaXRlO1xuICBwYWRkaW5nOiAxNHB4IDMwcHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMTBweDtcbn1cblxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAuYnRuLXJlZ2lzdGVyOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzJhMmE3YTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xuICBib3gtc2hhZG93OiAwIDVweCAyMHB4IHJnYmEoMzAsIDMwLCA4NiwgMC4zKTtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4ucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1saW5rcyB7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAucmVnaXN0ZXItbGlua3MgYSB7XG4gIGNvbG9yOiAjMWUxZTU2O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAucmVnaXN0ZXItbGlua3MgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4ucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1pbWFnZS1zZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzFlMWU1NiAwJSwgIzJhMmE3YSAxMDAlKTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDYwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAucmVnaXN0ZXItaW1hZ2Utc2VjdGlvbjo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC01MCU7XG4gIHJpZ2h0OiAtNTAlO1xuICB3aWR0aDogMjAwJTtcbiAgaGVpZ2h0OiAyMDAlO1xuICBiYWNrZ3JvdW5kOiByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCB0cmFuc3BhcmVudCwgdHJhbnNwYXJlbnQgMTBweCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAzKSAxMHB4LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDMpIDIwcHgpO1xuICBhbmltYXRpb246IHNsaWRlIDIwcyBsaW5lYXIgaW5maW5pdGU7XG59XG5cbi5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnJlZ2lzdGVyLWltYWdlLWNvbnRlbnQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgei1pbmRleDogMjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1pbWFnZS1jb250ZW50IGgzLFxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAucmVnaXN0ZXItaW1hZ2UtY29udGVudCAuaDMge1xuICBmb250LXNpemU6IDMycHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4ucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1pbWFnZS1jb250ZW50IC5wcmljZS10YWcge1xuICBmb250LXNpemU6IDQ4cHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGNvbG9yOiAjZmZkNzAwO1xufVxuXG4ucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1pbWFnZS1jb250ZW50IC5wcmljZS1wZXJpb2Qge1xuICBmb250LXNpemU6IDE4cHg7XG4gIG9wYWNpdHk6IDAuOTtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAuY3Jvd24tZ3JhcGhpYyB7XG4gIGZvbnQtc2l6ZTogMTIwcHg7XG4gIG9wYWNpdHk6IDAuOTtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgYW5pbWF0aW9uOiBmbG9hdCA2cyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbn1cblxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAucHJlbWl1bS1mZWF0dXJlcyB7XG4gIG1hcmdpbjogNDBweCAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnByZW1pdW0tZmVhdHVyZXMgbGkge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnByZW1pdW0tZmVhdHVyZXMgbGkgaSB7XG4gIG1hcmdpbi1yaWdodDogMTVweDtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBjb2xvcjogI2ZmZDcwMDtcbn1cblxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAuYnRuLWxlYXJuLW1vcmUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgY29sb3I6IHdoaXRlO1xuICBwYWRkaW5nOiAxNHB4IDQwcHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgbWFyZ2luLXRvcDogMjBweDtcbn1cblxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAuYnRuLWxlYXJuLW1vcmU6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogIzFlMWU1NjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xuICBib3gtc2hhZG93OiAwIDVweCAyMHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5Aa2V5ZnJhbWVzIGZsb2F0IHtcbiAgMCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICB9XG5cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc2xpZGUge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MHB4LCA1MHB4KTtcbiAgfVxufVxuXG4ucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5pbnZhbGlkLWZlZWRiYWNrLFxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAuZXJyb3ItaGVscC1ibG9jayB7XG4gIGNvbG9yOiAjZGMzNTQ1O1xuICBmb250LXNpemU6IDEzcHg7XG4gIG1hcmdpbi10b3A6IDVweDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLmZvcm0tY29udHJvbDo6cGxhY2Vob2xkZXIsXG4ucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246OnBsYWNlaG9sZGVyLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnNlbGVjdDItc2VsZWN0aW9uOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjYWRiNWJkO1xuICBmb250LXNpemU6IDE0cHg7XG59XG5cbi5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkLFxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmlzLWludmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAuaXMtaW52YWxpZC5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbn1cblxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAuc29jaWFsLWxvZ2luLXNlY3Rpb24ge1xuICBwYWRkaW5nOiA0MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnNvY2lhbC1sb2dpbi10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgY29sb3I6ICMxZTFlNTY7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnNvY2lhbC1wcm92aWRlcnMtZ3JpZCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMjAwcHgsIDFmcikpO1xuICBnYXA6IDIwcHg7XG4gIG1heC13aWR0aDogODAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4ucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5zb2NpYWwtcHJvdmlkZXItY2FyZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAxNXB4IDIwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlMGUwZTA7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgYmFja2dyb3VuZDogI2Y4ZjlmYTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xufVxuXG4ucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5zb2NpYWwtcHJvdmlkZXItY2FyZDpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcbiAgYm94LXNoYWRvdzogMCA1cHggMTVweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGJvcmRlci1jb2xvcjogIzFlMWU1NjtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4ucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5zb2NpYWwtcHJvdmlkZXItY2FyZDpob3ZlciAuc29jaWFsLXByb3ZpZGVyLW5hbWUge1xuICBjb2xvcjogIzFlMWU1Njtcbn1cblxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAuc29jaWFsLXByb3ZpZGVyLWljb24ge1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBvYmplY3QtZml0OiBjb250YWluO1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG59XG5cbi5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnNvY2lhbC1wcm92aWRlci1uYW1lIHtcbiAgY29sb3I6ICM0OTUwNTc7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTQwMHB4KSB7XG4gIC5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnJlZ2lzdGVyLWNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAyMDBweCk7XG4gIH1cblxuICAucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1jYXJkIHtcbiAgICBtYXgtd2lkdGg6IDExMDBweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnJlZ2lzdGVyLXJvdyB7XG4gICAgbWluLWhlaWdodDogNTAwcHg7XG4gIH1cblxuICAucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1mb3JtLXNlY3Rpb24ge1xuICAgIHBhZGRpbmc6IDQwcHggMzBweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnJlZ2lzdGVyLWxvZ28gaDEsXG4gIC5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnJlZ2lzdGVyLWxvZ28gLmgxIHtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gIH1cblxuICAucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1mb3JtIGgyLFxuICAucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1mb3JtIC5oMiB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAuZm9ybS1ncm91cCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLmJ0bi1yZWdpc3RlciB7XG4gICAgcGFkZGluZzogMTJweCAyNXB4O1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnJlZ2lzdGVyLWltYWdlLXNlY3Rpb24ge1xuICAgIHBhZGRpbmc6IDQwcHg7XG4gIH1cblxuICAucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5jcm93bi1ncmFwaGljIHtcbiAgICBmb250LXNpemU6IDgwcHg7XG4gIH1cblxuICAucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1pbWFnZS1jb250ZW50IGgzLFxuICAucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1pbWFnZS1jb250ZW50IC5oMyB7XG4gICAgZm9udC1zaXplOiAyNnB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAucHJpY2UtdGFnIHtcbiAgICBmb250LXNpemU6IDM2cHg7XG4gIH1cblxuICAucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5wcmVtaXVtLWZlYXR1cmVzIGxpIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnNvY2lhbC1sb2dpbi1zZWN0aW9uIHtcbiAgICBwYWRkaW5nOiAzMHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAuc29jaWFsLXByb3ZpZGVycy1ncmlkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDE1MHB4LCAxZnIpKTtcbiAgICBnYXA6IDE1cHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnJlZ2lzdGVyLWltYWdlLXNlY3Rpb24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1mb3JtLXNlY3Rpb24ge1xuICAgIHBhZGRpbmc6IDQwcHggMzBweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnJlZ2lzdGVyLXJvdyB7XG4gICAgbWluLWhlaWdodDogYXV0bztcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAucmVnaXN0ZXItZm9ybS1zZWN0aW9uIHtcbiAgICBwYWRkaW5nOiAzMHB4IDIwcHg7XG4gIH1cblxuICAucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1sb2dvIGgxLFxuICAucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1sb2dvIC5oMSB7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAucmVnaXN0ZXItZm9ybSBoMixcbiAgLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAucmVnaXN0ZXItZm9ybSAuaDIge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnNvY2lhbC1sb2dpbi1zZWN0aW9uIHtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAuc29jaWFsLXByb3ZpZGVycy1ncmlkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICBnYXA6IDEwcHg7XG4gIH1cblxuICAucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5zb2NpYWwtcHJvdmlkZXItY2FyZCB7XG4gICAgcGFkZGluZzogMTJweCAxNXB4O1xuICB9XG59XG5cbi5wYWdlX2lzX3ZlcmlmeV9wYWdlIC52ZXJpZnktcGFnZS13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6ICNmOGY5ZmE7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogNTBweCAwO1xuICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gMzAwcHgpO1xufVxuXG4ucGFnZV9pc192ZXJpZnlfcGFnZSAudmVyaWZ5LWNvbnRhaW5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDYwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogMCAxNXB4O1xufVxuXG4ucGFnZV9pc192ZXJpZnlfcGFnZSAudmVyaWZ5LWNhcmQge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICBib3gtc2hhZG93OiAwIDEwcHggNDBweCByZ2JhKDMwLCAzMCwgODYsIDAuMDgpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDYwcHggNDBweDtcbn1cblxuLnBhZ2VfaXNfdmVyaWZ5X3BhZ2UgLnZlcmlmeS1pY29uIHtcbiAgZm9udC1zaXplOiA4MHB4O1xuICBjb2xvcjogIzFlMWU1NjtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgYW5pbWF0aW9uOiBwdWxzZSAycyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbn1cblxuQGtleWZyYW1lcyBwdWxzZSB7XG4gIDAlLCAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgb3BhY2l0eTogMC44O1xuICB9XG59XG5cbi5wYWdlX2lzX3ZlcmlmeV9wYWdlIC52ZXJpZnktdGl0bGUge1xuICBmb250LXNpemU6IDMycHg7XG4gIGNvbG9yOiAjMWUxZTU2O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG4ucGFnZV9pc192ZXJpZnlfcGFnZSAudmVyaWZ5LW1lc3NhZ2Uge1xuICBmb250LXNpemU6IDE4cHg7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuXG4ucGFnZV9pc192ZXJpZnlfcGFnZSAudmVyaWZ5LWluc3RydWN0aW9ucyB7XG4gIGJhY2tncm91bmQ6ICNmOGY5ZmE7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgcGFkZGluZzogMjBweDtcbiAgbWFyZ2luOiAzMHB4IDA7XG59XG5cbi5wYWdlX2lzX3ZlcmlmeV9wYWdlIC52ZXJpZnktaW5zdHJ1Y3Rpb25zIGg0LFxuLnBhZ2VfaXNfdmVyaWZ5X3BhZ2UgLnZlcmlmeS1pbnN0cnVjdGlvbnMgLmg0IHtcbiAgY29sb3I6ICMxZTFlNTY7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLnBhZ2VfaXNfdmVyaWZ5X3BhZ2UgLnZlcmlmeS1pbnN0cnVjdGlvbnMgdWwge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LXdpZHRoOiA0MDBweDtcbiAgY29sb3I6ICM0OTUwNTc7XG59XG5cbi5wYWdlX2lzX3ZlcmlmeV9wYWdlIC5idG4tcmVzZW5kIHtcbiAgYmFja2dyb3VuZDogIzFlMWU1NjtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgcGFkZGluZzogMTRweCA0MHB4O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG59XG5cbi5wYWdlX2lzX3ZlcmlmeV9wYWdlIC5idG4tcmVzZW5kOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzJhMmE3YTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xuICBib3gtc2hhZG93OiAwIDVweCAyMHB4IHJnYmEoMzAsIDMwLCA4NiwgMC4zKTtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4ucGFnZV9pc192ZXJpZnlfcGFnZSAucmVzZW5kLWxpbmsge1xuICBjb2xvcjogIzFlMWU1NjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG4ucGFnZV9pc192ZXJpZnlfcGFnZSAucmVzZW5kLWxpbms6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gIC5wYWdlX2lzX3ZlcmlmeV9wYWdlIC52ZXJpZnktY2FyZCB7XG4gICAgcGFkZGluZzogNDBweCAyMHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfdmVyaWZ5X3BhZ2UgLnZlcmlmeS1pY29uIHtcbiAgICBmb250LXNpemU6IDYwcHg7XG4gIH1cblxuICAucGFnZV9pc192ZXJpZnlfcGFnZSAudmVyaWZ5LXRpdGxlIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gIH1cblxuICAucGFnZV9pc192ZXJpZnlfcGFnZSAudmVyaWZ5LW1lc3NhZ2Uge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxufVxuXG4ucGFnZS1pcy1jaGVja291dC1zdWNjZXNzIC5jaGVja291dC1zdWNjZXNzLXdyYXBwZXIge1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1nL2Jhbm5lci9iZy1PcmRlci53ZWJwXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy10b3A6IDEwMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4O1xufVxuXG4ucGFnZS1pcy1jaGVja291dC1zdWNjZXNzIC5jaGVja291dC1zdWNjZXNzLXdyYXBwZXI6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIHotaW5kZXg6IDA7XG59XG5cbi5wYWdlLWlzLWNoZWNrb3V0LXN1Y2Nlc3MgLmNoZWNrb3V0LXN1Y2Nlc3MtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiA4MDBweDtcbn1cblxuLnBhZ2UtaXMtY2hlY2tvdXQtc3VjY2VzcyAuY2hlY2tvdXQtc3VjY2Vzcy1jYXJkIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjk4KTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICBib3gtc2hhZG93OiAwIDIwcHggNjBweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3Jnb3QtcGFzc3dvcmQtd3JhcHBlciB7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWcvYmFubmVyL2JnLVNpZ25Jbi53ZWJwXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy10b3A6IDEwMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4O1xufVxuXG4ubm8td2VicCAucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAuZm9yZ290LXBhc3N3b3JkLXdyYXBwZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1nL2Jhbm5lci9iZy1TaWduSW4ucG5nXCIpO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gIC5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3Jnb3QtcGFzc3dvcmQtd3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDgwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gIC5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3Jnb3QtcGFzc3dvcmQtd3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDYwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3Jnb3QtcGFzc3dvcmQtd3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDUwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gIC5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3Jnb3QtcGFzc3dvcmQtd3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDQwcHg7XG4gIH1cbn1cblxuLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmZvcmdvdC1wYXNzd29yZC1jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAwIDE1cHg7XG59XG5cbi5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3Jnb3QtcGFzc3dvcmQtY2FyZCB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIGJveC1zaGFkb3c6IDAgMTBweCA0MHB4IHJnYmEoMzAsIDMwLCA4NiwgMC4wOCk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1pbi1oZWlnaHQ6IGF1dG87XG59XG5cbi5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3Jnb3QtcGFzc3dvcmQtZm9ybS1zZWN0aW9uIHtcbiAgcGFkZGluZzogNjBweCA1MHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmZvcmdvdC1wYXNzd29yZC1sb2dvIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xufVxuXG4ucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAuZm9yZ290LXBhc3N3b3JkLWxvZ28gaDEsXG4ucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAuZm9yZ290LXBhc3N3b3JkLWxvZ28gLmgxIHtcbiAgZm9udC1zaXplOiAzNnB4O1xuICBjb2xvcjogIzFlMWU1NjtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgbWFyZ2luOiAwO1xufVxuXG4ucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAuZm9yZ290LXBhc3N3b3JkLWxvZ28gLnRhZ2xpbmUge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBtYXJnaW4tdG9wOiA4cHg7XG4gIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbn1cblxuLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmZvcmdvdC1wYXNzd29yZC1mb3JtIGgyLFxuLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmZvcmdvdC1wYXNzd29yZC1mb3JtIC5oMiB7XG4gIGZvbnQtc2l6ZTogMjhweDtcbiAgY29sb3I6ICMxZTFlNTY7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3Jnb3QtcGFzc3dvcmQtZm9ybSAuc3VidGl0bGUge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMS42O1xufVxuXG4ucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAuZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3JtLWxhYmVsIHtcbiAgY29sb3I6ICM0OTUwNTc7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4ucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAuZm9ybS1jb250cm9sLFxuLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTBlMGUwO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIHBhZGRpbmc6IDEycHggMTZweDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xufVxuXG4ucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAuZm9ybS1jb250cm9sOjpwbGFjZWhvbGRlcixcbi5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246OnBsYWNlaG9sZGVyLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5zZWxlY3QyLXNlbGVjdGlvbjo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2FkYjViZDtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4ucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAuZm9ybS1jb250cm9sOmZvY3VzLFxuLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMxZTFlNTY7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDMwLCAzMCwgODYsIDAuMSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbi5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5pbnB1dC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmlucHV0LWdyb3VwIC5zZWxlY3QyLXNlbGVjdGlvbixcbi5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5pbnB1dC1ncm91cCAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgcGFkZGluZy1sZWZ0OiA0NXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5pbnB1dC1pY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAxNnB4O1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgei1pbmRleDogMTA7XG59XG5cbi5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5idG4tcmVzZXQge1xuICBiYWNrZ3JvdW5kOiAjMWUxZTU2O1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgY29sb3I6IHdoaXRlO1xuICBwYWRkaW5nOiAxNHB4IDMwcHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMTBweDtcbn1cblxuLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmJ0bi1yZXNldDpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMyYTJhN2E7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgYm94LXNoYWRvdzogMCA1cHggMjBweCByZ2JhKDMwLCAzMCwgODYsIDAuMyk7XG59XG5cbi5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5iYWNrLXRvLWxvZ2luIHtcbiAgbWFyZ2luLXRvcDogMzBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAuYmFjay10by1sb2dpbiBhIHtcbiAgY29sb3I6ICMxZTFlNTY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmJhY2stdG8tbG9naW4gYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4ucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAuYmFjay10by1sb2dpbiBpIHtcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XG59XG5cbi5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5hbGVydCB7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgcGFkZGluZzogMTJweCAxNnB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmFsZXJ0LmFsZXJ0LXN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDRlZGRhO1xuICBjb2xvcjogIzE1NTcyNDtcbn1cblxuLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmFsZXJ0LmFsZXJ0LWRhbmdlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWU7XG4gIGNvbG9yOiAjYzMzO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxNDAwcHgpIHtcbiAgLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmZvcmdvdC1wYXNzd29yZC1mb3JtLXNlY3Rpb24ge1xuICAgIHBhZGRpbmc6IDQwcHggMzVweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3Jnb3QtcGFzc3dvcmQtbG9nbyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3Jnb3QtcGFzc3dvcmQtbG9nbyBoMSxcbiAgLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmZvcmdvdC1wYXNzd29yZC1sb2dvIC5oMSB7XG4gICAgZm9udC1zaXplOiAzMnB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmZvcmdvdC1wYXNzd29yZC1sb2dvIC50YWdsaW5lIHtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gIH1cblxuICAucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAuZm9yZ290LXBhc3N3b3JkLWZvcm0gaDIsXG4gIC5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3Jnb3QtcGFzc3dvcmQtZm9ybSAuaDIge1xuICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gIH1cblxuICAucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAuZm9yZ290LXBhc3N3b3JkLWZvcm0gLnN1YnRpdGxlIHtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3JtLWdyb3VwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmZvcm0tY29udHJvbCxcbiAgLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbixcbiAgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gICAgcGFkZGluZzogMTFweCAxNXB4O1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sLFxuICAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmlucHV0LWdyb3VwIC5zZWxlY3QyLXNlbGVjdGlvbixcbiAgLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmlucHV0LWdyb3VwIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICAgIHBhZGRpbmctbGVmdDogNDJweCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmJ0bi1yZXNldCB7XG4gICAgcGFkZGluZzogMTNweCAyOHB4O1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBtYXJnaW4tdG9wOiA4cHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3Jnb3QtcGFzc3dvcmQtZm9ybS1zZWN0aW9uIHtcbiAgICBwYWRkaW5nOiA0MHB4IDMwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gIC5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3Jnb3QtcGFzc3dvcmQtZm9ybS1zZWN0aW9uIHtcbiAgICBwYWRkaW5nOiAzMHB4IDIwcHg7XG4gIH1cblxuICAucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAuZm9yZ290LXBhc3N3b3JkLWxvZ28gaDEsXG4gIC5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3Jnb3QtcGFzc3dvcmQtbG9nbyAuaDEge1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3Jnb3QtcGFzc3dvcmQtZm9ybSBoMixcbiAgLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmZvcmdvdC1wYXNzd29yZC1mb3JtIC5oMiB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICB9XG59XG5cbi5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5pbnZhbGlkLWZlZWRiYWNrLFxuLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmVycm9yLWhlbHAtYmxvY2sge1xuICBmb250LXNpemU6IDEzcHg7XG4gIG1hcmdpbi10b3A6IDVweDtcbn1cblxuLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDppbnZhbGlkLFxuLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjppbnZhbGlkLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLXNlbGVjdGlvbjppbnZhbGlkIHtcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4ucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOnZhbGlkLFxuLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjp2YWxpZCxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1zZWxlY3Rpb246dmFsaWQge1xuICBib3JkZXItY29sb3I6ICMxOTg3NTQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG5cbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLXdyYXBwZXIge1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1nL2Jhbm5lci9iZy1TaWduSW4ud2VicFwiKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmctdG9wOiAxMDBweDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbn1cblxuLm5vLXdlYnAgLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucmVzZXQtcGFzc3dvcmQtd3JhcHBlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWcvYmFubmVyL2JnLVNpZ25Jbi5wbmdcIik7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucmVzZXQtcGFzc3dvcmQtd3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDgwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gIC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLXdyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5yZXNldC1wYXNzd29yZC13cmFwcGVyIHtcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucmVzZXQtcGFzc3dvcmQtd3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDQwcHg7XG4gIH1cbn1cblxuLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucmVzZXQtcGFzc3dvcmQtY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTIwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogMCAxNXB4O1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5yZXNldC1wYXNzd29yZC1jYXJkIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgYm94LXNoYWRvdzogMCAxMHB4IDQwcHggcmdiYSgzMCwgMzAsIDg2LCAwLjA4KTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucmVzZXQtcGFzc3dvcmQtcm93IHtcbiAgbWluLWhlaWdodDogNjAwcHg7XG59XG5cbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLWZvcm0tc2VjdGlvbiB7XG4gIHBhZGRpbmc6IDYwcHggNTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLWxvZ28ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG59XG5cbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLWxvZ28gaDEsXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5yZXNldC1wYXNzd29yZC1sb2dvIC5oMSB7XG4gIGZvbnQtc2l6ZTogMzZweDtcbiAgY29sb3I6ICMxZTFlNTY7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxldHRlci1zcGFjaW5nOiAycHg7XG4gIG1hcmdpbjogMDtcbn1cblxuLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucmVzZXQtcGFzc3dvcmQtbG9nbyAudGFnbGluZSB7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBmb250LXNpemU6IDE0cHg7XG4gIG1hcmdpbi10b3A6IDhweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5yZXNldC1wYXNzd29yZC1mb3JtIGgyLFxuLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucmVzZXQtcGFzc3dvcmQtZm9ybSAuaDIge1xuICBmb250LXNpemU6IDI4cHg7XG4gIGNvbG9yOiAjMWUxZTU2O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5yZXNldC1wYXNzd29yZC1mb3JtIC5zdWJ0aXRsZSB7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG59XG5cbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5mb3JtLWxhYmVsIHtcbiAgY29sb3I6ICM0OTUwNTc7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5mb3JtLWNvbnRyb2wsXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTBlMGUwO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIHBhZGRpbmc6IDEycHggMTZweDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5mb3JtLWNvbnRyb2w6OnBsYWNlaG9sZGVyLFxuLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOjpwbGFjZWhvbGRlcixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5zZWxlY3QyLXNlbGVjdGlvbjo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2FkYjViZDtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMxZTFlNTY7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDMwLCAzMCwgODYsIDAuMSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLmZvcm0tY29udHJvbFtyZWFkb25seV0sXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCBbcmVhZG9ubHldLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgW3JlYWRvbmx5XS5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLmlucHV0LWdyb3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLmlucHV0LWdyb3VwIC5zZWxlY3QyLXNlbGVjdGlvbixcbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLmlucHV0LWdyb3VwIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICBwYWRkaW5nLWxlZnQ6IDQ1cHggIWltcG9ydGFudDtcbn1cblxuLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAuaW5wdXQtaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMTZweDtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIHotaW5kZXg6IDEwO1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5wYXNzd29yZC10b2dnbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxNnB4O1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICB6LWluZGV4OiAxMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogNXB4O1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5wYXNzd29yZC10b2dnbGU6aG92ZXIge1xuICBjb2xvcjogIzFlMWU1Njtcbn1cblxuLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAuYnRuLXJlc2V0IHtcbiAgYmFja2dyb3VuZDogIzFlMWU1NjtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgcGFkZGluZzogMTRweCAzMHB4O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG59XG5cbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLmJ0bi1yZXNldDpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMyYTJhN2E7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgYm94LXNoYWRvdzogMCA1cHggMjBweCByZ2JhKDMwLCAzMCwgODYsIDAuMyk7XG59XG5cbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnBhc3N3b3JkLXJlcXVpcmVtZW50cyB7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICBmb250LXNpemU6IDEzcHg7XG59XG5cbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnBhc3N3b3JkLXJlcXVpcmVtZW50cyBoNixcbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnBhc3N3b3JkLXJlcXVpcmVtZW50cyAuaDYge1xuICBmb250LXNpemU6IDEzcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbiAgY29sb3I6ICM0OTUwNTc7XG59XG5cbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnBhc3N3b3JkLXJlcXVpcmVtZW50cyB1bCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5wYXNzd29yZC1yZXF1aXJlbWVudHMgbGkge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgbWFyZ2luLWJvdHRvbTogM3B4O1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5hbGVydCB7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgcGFkZGluZzogMTJweCAxNnB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAuYWxlcnQuYWxlcnQtc3VjY2VzcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkNGVkZGE7XG4gIGNvbG9yOiAjMTU1NzI0O1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5hbGVydC5hbGVydC1kYW5nZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVlO1xuICBjb2xvcjogI2MzMztcbn1cblxuLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucmVzZXQtcGFzc3dvcmQtaW1hZ2Utc2VjdGlvbiB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMxZTFlNTYgMCUsICMyYTJhN2EgMTAwJSk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiA2MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLWltYWdlLXNlY3Rpb246OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtNTAlO1xuICByaWdodDogLTUwJTtcbiAgd2lkdGg6IDIwMCU7XG4gIGhlaWdodDogMjAwJTtcbiAgYmFja2dyb3VuZDogcmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudCg0NWRlZywgdHJhbnNwYXJlbnQsIHRyYW5zcGFyZW50IDEwcHgsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMykgMTBweCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAzKSAyMHB4KTtcbiAgYW5pbWF0aW9uOiBzbGlkZSAyMHMgbGluZWFyIGluZmluaXRlO1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5yZXNldC1wYXNzd29yZC1pbWFnZS1jb250ZW50IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogd2hpdGU7XG4gIHotaW5kZXg6IDI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucmVzZXQtcGFzc3dvcmQtaW1hZ2UtY29udGVudCBoMyxcbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLWltYWdlLWNvbnRlbnQgLmgzIHtcbiAgZm9udC1zaXplOiAzMnB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucmVzZXQtcGFzc3dvcmQtaW1hZ2UtY29udGVudCBwIHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBvcGFjaXR5OiAwLjk7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIG1heC13aWR0aDogNDAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5rZXktZ3JhcGhpYyB7XG4gIGZvbnQtc2l6ZTogMTIwcHg7XG4gIG9wYWNpdHk6IDAuOTtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgYW5pbWF0aW9uOiByb3RhdGUgNHMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG59XG5cbkBrZXlmcmFtZXMgcm90YXRlIHtcbiAgMCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG5cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxMGRlZyk7XG4gIH1cbn1cblxuLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucGFzc3dvcmQtdGlwcyB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnBhc3N3b3JkLXRpcHMgbGkge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxNnB4O1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5wYXNzd29yZC10aXBzIGxpIGkge1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgb3BhY2l0eTogMC45O1xufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTBweCwgNTBweCk7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTQwMHB4KSB7XG4gIC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAyMDBweCk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuXG4gIC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLWNhcmQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTEwMHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG5cbiAgLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucmVzZXQtcGFzc3dvcmQtcm93IHtcbiAgICBtaW4taGVpZ2h0OiA0MjBweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLWZvcm0tc2VjdGlvbiB7XG4gICAgcGFkZGluZzogMzBweCAyNXB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucmVzZXQtcGFzc3dvcmQtbG9nbyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLWxvZ28gaDEsXG4gIC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLWxvZ28gLmgxIHtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gIH1cblxuICAucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5yZXNldC1wYXNzd29yZC1sb2dvIC50YWdsaW5lIHtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gIH1cblxuICAucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5yZXNldC1wYXNzd29yZC1mb3JtIGgyLFxuICAucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5yZXNldC1wYXNzd29yZC1mb3JtIC5oMiB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLWZvcm0gLnN1YnRpdGxlIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLmZvcm0tZ3JvdXAge1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIH1cblxuICAucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5mb3JtLWNvbnRyb2wsXG4gIC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbixcbiAgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgICBwYWRkaW5nOiAxMHB4IDE0cHg7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAuaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbCxcbiAgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLmlucHV0LWdyb3VwIC5zZWxlY3QyLXNlbGVjdGlvbixcbiAgLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAuaW5wdXQtZ3JvdXAgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gICAgcGFkZGluZy1sZWZ0OiA0MHB4ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5idG4tcmVzZXQge1xuICAgIHBhZGRpbmc6IDEycHggMjVweDtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgbWFyZ2luLXRvcDogOHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucGFzc3dvcmQtcmVxdWlyZW1lbnRzIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgcGFkZGluZzogOHB4IDEycHg7XG4gIH1cblxuICAucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5wYXNzd29yZC1yZXF1aXJlbWVudHMgaDYsXG4gIC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnBhc3N3b3JkLXJlcXVpcmVtZW50cyAuaDYge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLWltYWdlLXNlY3Rpb24ge1xuICAgIHBhZGRpbmc6IDQwcHg7XG4gIH1cblxuICAucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5rZXktZ3JhcGhpYyB7XG4gICAgZm9udC1zaXplOiA4MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cblxuICAucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5yZXNldC1wYXNzd29yZC1pbWFnZS1jb250ZW50IGgzLFxuICAucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5yZXNldC1wYXNzd29yZC1pbWFnZS1jb250ZW50IC5oMyB7XG4gICAgZm9udC1zaXplOiAyNnB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIH1cblxuICAucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5yZXNldC1wYXNzd29yZC1pbWFnZS1jb250ZW50IHAge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnBhc3N3b3JkLXRpcHMge1xuICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gIH1cblxuICAucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5wYXNzd29yZC10aXBzIGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnBhc3N3b3JkLXRpcHMgbGkgaSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5yZXNldC1wYXNzd29yZC1pbWFnZS1zZWN0aW9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucmVzZXQtcGFzc3dvcmQtZm9ybS1zZWN0aW9uIHtcbiAgICBwYWRkaW5nOiA0MHB4IDMwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gIC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLWZvcm0tc2VjdGlvbiB7XG4gICAgcGFkZGluZzogMzBweCAyMHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucmVzZXQtcGFzc3dvcmQtbG9nbyBoMSxcbiAgLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucmVzZXQtcGFzc3dvcmQtbG9nbyAuaDEge1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLWZvcm0gaDIsXG4gIC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLWZvcm0gLmgyIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gIH1cbn1cblxuLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAuaW52YWxpZC1mZWVkYmFjayxcbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLmVycm9yLWhlbHAtYmxvY2sge1xuICBmb250LXNpemU6IDEzcHg7XG4gIG1hcmdpbi10b3A6IDVweDtcbn1cblxuLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOmludmFsaWQsXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246aW52YWxpZCxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLXNlbGVjdGlvbjppbnZhbGlkIHtcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6dmFsaWQsXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246dmFsaWQsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1zZWxlY3Rpb246dmFsaWQge1xuICBib3JkZXItY29sb3I6ICMxOTg3NTQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG5cbi5wYWdlX2lzX2NhdGVnb3J5X3BhZ2UgLmNhdGVnb3J5LWhlcm8sXG4ucGFnZV9pc19zaG9wX3BhZ2UgLmNhdGVnb3J5LWhlcm8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDMwMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnBhZ2VfaXNfY2F0ZWdvcnlfcGFnZSAuY2F0ZWdvcnktaGVyby5jYXRlZ29yeS1oZXJvLXdpdGgtaW1hZ2UsXG4ucGFnZV9pc19zaG9wX3BhZ2UgLmNhdGVnb3J5LWhlcm8uY2F0ZWdvcnktaGVyby13aXRoLWltYWdlIHtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xufVxuXG4ucGFnZV9pc19jYXRlZ29yeV9wYWdlIC5jYXRlZ29yeS1oZXJvLmNhdGVnb3J5LWhlcm8tZWxlZ2FudCxcbi5wYWdlX2lzX3Nob3BfcGFnZSAuY2F0ZWdvcnktaGVyby5jYXRlZ29yeS1oZXJvLWVsZWdhbnQge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZjVmN2ZhIDAlLCAjYzNjZmUyIDEwMCUpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5wYWdlX2lzX2NhdGVnb3J5X3BhZ2UgLmNhdGVnb3J5LWhlcm8uY2F0ZWdvcnktaGVyby1lbGVnYW50OjpiZWZvcmUsXG4ucGFnZV9pc19zaG9wX3BhZ2UgLmNhdGVnb3J5LWhlcm8uY2F0ZWdvcnktaGVyby1lbGVnYW50OjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCAyMCUgODAlLCByZ2JhKDEyNCwgMTA1LCAyMzksIDAuMSkgMCUsIHRyYW5zcGFyZW50IDUwJSksIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgODAlIDIwJSwgcmdiYSgxMjQsIDEwNSwgMjM5LCAwLjEpIDAlLCB0cmFuc3BhcmVudCA1MCUpO1xufVxuXG4ucGFnZV9pc19jYXRlZ29yeV9wYWdlIC5jYXRlZ29yeS1oZXJvLmNhdGVnb3J5LWhlcm8tZWxlZ2FudCAuY2F0ZWdvcnktaGVyby1jb250ZW50LFxuLnBhZ2VfaXNfc2hvcF9wYWdlIC5jYXRlZ29yeS1oZXJvLmNhdGVnb3J5LWhlcm8tZWxlZ2FudCAuY2F0ZWdvcnktaGVyby1jb250ZW50IHtcbiAgY29sb3I6ICMzMzM7XG59XG5cbi5wYWdlX2lzX2NhdGVnb3J5X3BhZ2UgLmNhdGVnb3J5LWhlcm8uY2F0ZWdvcnktaGVyby1lbGVnYW50IC5jYXRlZ29yeS1icmVhZGNydW1iIGEsXG4ucGFnZV9pc19zaG9wX3BhZ2UgLmNhdGVnb3J5LWhlcm8uY2F0ZWdvcnktaGVyby1lbGVnYW50IC5jYXRlZ29yeS1icmVhZGNydW1iIGEge1xuICBjb2xvcjogIzZjNzU3ZDtcbn1cblxuLnBhZ2VfaXNfY2F0ZWdvcnlfcGFnZSAuY2F0ZWdvcnktaGVyby5jYXRlZ29yeS1oZXJvLWVsZWdhbnQgLmNhdGVnb3J5LWJyZWFkY3J1bWIgYTpob3Zlcixcbi5wYWdlX2lzX3Nob3BfcGFnZSAuY2F0ZWdvcnktaGVyby5jYXRlZ29yeS1oZXJvLWVsZWdhbnQgLmNhdGVnb3J5LWJyZWFkY3J1bWIgYTpob3ZlciB7XG4gIGNvbG9yOiAjN2M2OWVmICFpbXBvcnRhbnQ7XG59XG5cbi5wYWdlX2lzX2NhdGVnb3J5X3BhZ2UgLmNhdGVnb3J5LWhlcm8uY2F0ZWdvcnktaGVyby1lbGVnYW50IC5zdGF0LWl0ZW0sXG4ucGFnZV9pc19zaG9wX3BhZ2UgLmNhdGVnb3J5LWhlcm8uY2F0ZWdvcnktaGVyby1lbGVnYW50IC5zdGF0LWl0ZW0ge1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgYm94LXNoYWRvdzogMCA0cHggMTVweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGJvcmRlcjogbm9uZTtcbiAgY29sb3I6ICMzMzM7XG59XG5cbi5wYWdlX2lzX2NhdGVnb3J5X3BhZ2UgLmNhdGVnb3J5LWhlcm8tb3ZlcmxheSxcbi5wYWdlX2lzX3Nob3BfcGFnZSAuY2F0ZWdvcnktaGVyby1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpIDEwMCUpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnBhZ2VfaXNfY2F0ZWdvcnlfcGFnZSAuY2F0ZWdvcnktaGVyby1jb250ZW50LFxuLnBhZ2VfaXNfc2hvcF9wYWdlIC5jYXRlZ29yeS1oZXJvLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICMzMzM7XG4gIHBhZGRpbmc6IDNyZW0gMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5wYWdlX2lzX2NhdGVnb3J5X3BhZ2UgLmNhdGVnb3J5LWJyZWFkY3J1bWIsXG4ucGFnZV9pc19zaG9wX3BhZ2UgLmNhdGVnb3J5LWJyZWFkY3J1bWIge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG59XG5cbi5wYWdlX2lzX2NhdGVnb3J5X3BhZ2UgLmNhdGVnb3J5LWJyZWFkY3J1bWIgYSxcbi5wYWdlX2lzX3Nob3BfcGFnZSAuY2F0ZWdvcnktYnJlYWRjcnVtYiBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzIGVhc2U7XG59XG5cbi5wYWdlX2lzX2NhdGVnb3J5X3BhZ2UgLmNhdGVnb3J5LWJyZWFkY3J1bWIgYTpob3Zlcixcbi5wYWdlX2lzX3Nob3BfcGFnZSAuY2F0ZWdvcnktYnJlYWRjcnVtYiBhOmhvdmVyIHtcbiAgY29sb3I6ICM3YzY5ZWYgIWltcG9ydGFudDtcbn1cblxuLnBhZ2VfaXNfY2F0ZWdvcnlfcGFnZSAuY2F0ZWdvcnktaWNvbixcbi5wYWdlX2lzX3Nob3BfcGFnZSAuY2F0ZWdvcnktaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYW5pbWF0aW9uOiBzcGFya2xlIDNzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xufVxuXG5Aa2V5ZnJhbWVzIHNwYXJrbGUge1xuICAwJSwgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKSByb3RhdGUoMGRlZyk7XG4gICAgb3BhY2l0eTogMC41O1xuICB9XG5cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSkgcm90YXRlKDVkZWcpO1xuICAgIG9wYWNpdHk6IDAuNztcbiAgfVxufVxuXG4ucGFnZV9pc19jYXRlZ29yeV9wYWdlIC5jYXRlZ29yeS1oZXJvLXRpdGxlLFxuLnBhZ2VfaXNfc2hvcF9wYWdlIC5jYXRlZ29yeS1oZXJvLXRpdGxlIHtcbiAgZm9udC1zaXplOiAzLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiUGxheWZhaXIgRGlzcGxheVwiLCBzZXJpZjtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cbi5jYXRlZ29yeS1oZXJvLXdpdGgtaW1hZ2UgLnBhZ2VfaXNfY2F0ZWdvcnlfcGFnZSAuY2F0ZWdvcnktaGVyby10aXRsZSxcbi5jYXRlZ29yeS1oZXJvLXdpdGgtaW1hZ2UgLnBhZ2VfaXNfc2hvcF9wYWdlIC5jYXRlZ29yeS1oZXJvLXRpdGxlIHtcbiAgdGV4dC1zaGFkb3c6IDFweCAxcHggM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbn1cblxuLnBhZ2VfaXNfY2F0ZWdvcnlfcGFnZSAuY2F0ZWdvcnktaGVyby1kZXNjcmlwdGlvbixcbi5wYWdlX2lzX3Nob3BfcGFnZSAuY2F0ZWdvcnktaGVyby1kZXNjcmlwdGlvbiB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbWF4LXdpZHRoOiA3MDBweDtcbiAgbWFyZ2luOiAwIGF1dG8gMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgb3BhY2l0eTogMC45NTtcbn1cblxuLmNhdGVnb3J5LWhlcm8td2l0aC1pbWFnZSAucGFnZV9pc19jYXRlZ29yeV9wYWdlIC5jYXRlZ29yeS1oZXJvLWRlc2NyaXB0aW9uLFxuLmNhdGVnb3J5LWhlcm8td2l0aC1pbWFnZSAucGFnZV9pc19zaG9wX3BhZ2UgLmNhdGVnb3J5LWhlcm8tZGVzY3JpcHRpb24ge1xuICB0ZXh0LXNoYWRvdzogMXB4IDFweCA0cHggcmdiYSgwLCAwLCAwLCAwLjcpO1xufVxuXG4ucGFnZV9pc19jYXRlZ29yeV9wYWdlIC5jYXRlZ29yeS1oZXJvLXN0YXRzLFxuLnBhZ2VfaXNfc2hvcF9wYWdlIC5jYXRlZ29yeS1oZXJvLXN0YXRzIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGdhcDogMnJlbTtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tdG9wOiAycmVtO1xufVxuXG4ucGFnZV9pc19jYXRlZ29yeV9wYWdlIC5zdGF0LWl0ZW0sXG4ucGFnZV9pc19zaG9wX3BhZ2UgLnN0YXQtaXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xuICBwYWRkaW5nOiAwLjc1cmVtIDEuNXJlbTtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XG4gIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbn1cblxuLnBhZ2VfaXNfY2F0ZWdvcnlfcGFnZSAuc3RhdC1udW1iZXIsXG4ucGFnZV9pc19zaG9wX3BhZ2UgLnN0YXQtbnVtYmVyIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luOiAwIDAuMjVyZW07XG59XG5cbi5wYWdlX2lzX2NhdGVnb3J5X3BhZ2UgLnNlbGVjdGVkLWNhdGVnb3J5LWluZm8sXG4ucGFnZV9pc19zaG9wX3BhZ2UgLnNlbGVjdGVkLWNhdGVnb3J5LWluZm8ge1xuICBwYWRkaW5nOiAxcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xufVxuXG4ucGFnZV9pc19jYXRlZ29yeV9wYWdlIC5zZWxlY3RlZC1jYXRlZ29yeS1pbmZvIC5zZWxlY3RlZC1jYXRlZ29yeS1iYWRnZSAuYmFkZ2UsXG4ucGFnZV9pc19zaG9wX3BhZ2UgLnNlbGVjdGVkLWNhdGVnb3J5LWluZm8gLnNlbGVjdGVkLWNhdGVnb3J5LWJhZGdlIC5iYWRnZSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgcGFkZGluZzogMC41cmVtIDIuMjVyZW0gMC41cmVtIDFyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnBhZ2VfaXNfY2F0ZWdvcnlfcGFnZSAuc2VsZWN0ZWQtY2F0ZWdvcnktaW5mbyAuc2VsZWN0ZWQtY2F0ZWdvcnktYmFkZ2UgLmJhZGdlIC5jYXRlZ29yeS1yZW1vdmUtYnRuLFxuLnBhZ2VfaXNfc2hvcF9wYWdlIC5zZWxlY3RlZC1jYXRlZ29yeS1pbmZvIC5zZWxlY3RlZC1jYXRlZ29yeS1iYWRnZSAuYmFkZ2UgLmNhdGVnb3J5LXJlbW92ZS1idG4ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxMXB4O1xuICB0b3A6IDIxcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgcGFkZGluZzogNXB4O1xuICBtYXJnaW46IC01cHg7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvcGFjaXR5OiAwLjg7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xufVxuXG4ucGFnZV9pc19jYXRlZ29yeV9wYWdlIC5zZWxlY3RlZC1jYXRlZ29yeS1pbmZvIC5zZWxlY3RlZC1jYXRlZ29yeS1iYWRnZSAuYmFkZ2UgLmNhdGVnb3J5LXJlbW92ZS1idG46aG92ZXIsXG4ucGFnZV9pc19zaG9wX3BhZ2UgLnNlbGVjdGVkLWNhdGVnb3J5LWluZm8gLnNlbGVjdGVkLWNhdGVnb3J5LWJhZGdlIC5iYWRnZSAuY2F0ZWdvcnktcmVtb3ZlLWJ0bjpob3ZlciB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5wYWdlX2lzX2NhdGVnb3J5X3BhZ2UgLnNlbGVjdGVkLWNhdGVnb3J5LWluZm8gLnNlbGVjdGVkLWNhdGVnb3J5LWJhZGdlIC5iYWRnZSAuY2F0ZWdvcnktcmVtb3ZlLWJ0biBpLFxuLnBhZ2VfaXNfc2hvcF9wYWdlIC5zZWxlY3RlZC1jYXRlZ29yeS1pbmZvIC5zZWxlY3RlZC1jYXRlZ29yeS1iYWRnZSAuYmFkZ2UgLmNhdGVnb3J5LXJlbW92ZS1idG4gaSB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAucGFnZV9pc19jYXRlZ29yeV9wYWdlIC5jYXRlZ29yeS1oZXJvLFxuICAucGFnZV9pc19zaG9wX3BhZ2UgLmNhdGVnb3J5LWhlcm8ge1xuICAgIG1pbi1oZWlnaHQ6IDQwMHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfY2F0ZWdvcnlfcGFnZSAuY2F0ZWdvcnktaGVyby10aXRsZSxcbiAgLnBhZ2VfaXNfc2hvcF9wYWdlIC5jYXRlZ29yeS1oZXJvLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2VfaXNfY2F0ZWdvcnlfcGFnZSAuY2F0ZWdvcnktaGVybyxcbiAgLnBhZ2VfaXNfc2hvcF9wYWdlIC5jYXRlZ29yeS1oZXJvIHtcbiAgICBtaW4taGVpZ2h0OiAzNTBweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2NhdGVnb3J5X3BhZ2UgLmNhdGVnb3J5LWhlcm8tdGl0bGUsXG4gIC5wYWdlX2lzX3Nob3BfcGFnZSAuY2F0ZWdvcnktaGVyby10aXRsZSB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfY2F0ZWdvcnlfcGFnZSAuY2F0ZWdvcnktaGVyby1kZXNjcmlwdGlvbixcbiAgLnBhZ2VfaXNfc2hvcF9wYWdlIC5jYXRlZ29yeS1oZXJvLWRlc2NyaXB0aW9uIHtcbiAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICBwYWRkaW5nOiAwIDFyZW07XG4gIH1cblxuICAucGFnZV9pc19jYXRlZ29yeV9wYWdlIC5jYXRlZ29yeS1oZXJvLXN0YXRzLFxuICAucGFnZV9pc19zaG9wX3BhZ2UgLmNhdGVnb3J5LWhlcm8tc3RhdHMge1xuICAgIGdhcDogMXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX2NhdGVnb3J5X3BhZ2UgLnN0YXQtaXRlbSxcbiAgLnBhZ2VfaXNfc2hvcF9wYWdlIC5zdGF0LWl0ZW0ge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX2NhdGVnb3J5X3BhZ2UgLmNhdGVnb3J5LWJyZWFkY3J1bWIsXG4gIC5wYWdlX2lzX3Nob3BfcGFnZSAuY2F0ZWdvcnktYnJlYWRjcnVtYiB7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAucGFnZV9pc19jYXRlZ29yeV9wYWdlIC5jYXRlZ29yeS1oZXJvLXRpdGxlLFxuICAucGFnZV9pc19zaG9wX3BhZ2UgLmNhdGVnb3J5LWhlcm8tdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX2NhdGVnb3J5X3BhZ2UgLmNhdGVnb3J5LWhlcm8tZGVzY3JpcHRpb24sXG4gIC5wYWdlX2lzX3Nob3BfcGFnZSAuY2F0ZWdvcnktaGVyby1kZXNjcmlwdGlvbiB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAucHJvZHVjdC1jYXRlZ29yaWVzLXBhZ2Uge1xuICBwYWRkaW5nOiA0MHB4IDAgNjBweDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAucHJvZHVjdC1jYXRlZ29yaWVzLXBhZ2Uge1xuICAgIHBhZGRpbmc6IDMwcHggMCA0MHB4O1xuICB9XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAucGFnZS1oZWFkZXIge1xuICBtYXJnaW4tYm90dG9tOiAzcmVtO1xufVxuXG4ucGFnZS1pcy1wcm9kdWN0LWNhdGVnb3JpZXMgLnBhZ2UtaGVhZGVyIC5wYWdlLXRpdGxlIHtcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGNvbG9yOiAjMWUxZTU2O1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAtMC41cHg7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAucGFnZS1pcy1wcm9kdWN0LWNhdGVnb3JpZXMgLnBhZ2UtaGVhZGVyIC5wYWdlLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gIH1cbn1cblxuLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5wYWdlLWhlYWRlciAucGFnZS1zdWJ0aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBtYXJnaW46IDA7XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXJkLWxpbmsge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ucGFnZS1pcy1wcm9kdWN0LWNhdGVnb3JpZXMgLmNhdGVnb3JpZXMtY2F0YWxvZyAuY2F0ZWdvcnktY2FyZC1saW5rOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4ucGFnZS1pcy1wcm9kdWN0LWNhdGVnb3JpZXMgLmNhdGVnb3JpZXMtY2F0YWxvZyAuY2F0ZWdvcnktY2F0YWxvZy1jYXJkIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2UwZTBlMDtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQ6aG92ZXIge1xuICBib3gtc2hhZG93OiAwIDhweCAyNHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG4gIGJvcmRlci1jb2xvcjogI2QwZDBkMDtcbn1cblxuLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5jYXRlZ29yaWVzLWNhdGFsb2cgLmNhdGVnb3J5LWNhdGFsb2ctY2FyZDpob3ZlciAuY2F0ZWdvcnktaW1hZ2Uge1xuICBvcGFjaXR5OiAwLjk7XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQ6aG92ZXIgLmNhdGVnb3J5LW5hbWUge1xuICBjb2xvcjogIzFlMWU1Njtcbn1cblxuLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5jYXRlZ29yaWVzLWNhdGFsb2cgLmNhdGVnb3J5LWltYWdlLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctdG9wOiA3NSU7XG4gIGJhY2tncm91bmQ6ICNmOGY5ZmE7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1pbWFnZS13cmFwcGVyIC5jYXRlZ29yeS1pbWFnZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2U7XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1pbWFnZS13cmFwcGVyIC5jYXRlZ29yeS1pbWFnZS1wbGFjZWhvbGRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2Y1ZjdmYSAwJSwgI2U5ZWNlZiAxMDAlKTtcbn1cblxuLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5jYXRlZ29yaWVzLWNhdGFsb2cgLmNhdGVnb3J5LWltYWdlLXdyYXBwZXIgLmNhdGVnb3J5LWltYWdlLXBsYWNlaG9sZGVyIGkge1xuICBmb250LXNpemU6IDNyZW07XG4gIGNvbG9yOiAjYWRiNWJkO1xuICBvcGFjaXR5OiAwLjU7XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1pbWFnZS13cmFwcGVyIC5pdGVtLWNvdW50LWJhZGdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEycHg7XG4gIHJpZ2h0OiAxMnB4O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTUpO1xuICBjb2xvcjogIzQ5NTA1NztcbiAgcGFkZGluZzogNHB4IDEwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgYm94LXNoYWRvdzogMCAycHggOHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDRweCk7XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1pbmZvIHtcbiAgcGFkZGluZzogMS4yNXJlbTtcbiAgZmxleC1ncm93OiAxO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4ucGFnZS1pcy1wcm9kdWN0LWNhdGVnb3JpZXMgLmNhdGVnb3JpZXMtY2F0YWxvZyAuY2F0ZWdvcnktaW5mbyAuY2F0ZWdvcnktbmFtZSB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuM3MgZWFzZTtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbn1cblxuLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5jYXRlZ29yaWVzLWNhdGFsb2cgLmNhdGVnb3J5LWluZm8gLmNhdGVnb3J5LWRlc2NyaXB0aW9uIHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIG1hcmdpbjogMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgZmxleC1ncm93OiAxO1xufVxuXG4ucGFnZS1pcy1wcm9kdWN0LWNhdGVnb3JpZXMgLmVtcHR5LXN0YXRlIHtcbiAgcGFkZGluZzogNHJlbSAwO1xufVxuXG4ucGFnZS1pcy1wcm9kdWN0LWNhdGVnb3JpZXMgLmVtcHR5LXN0YXRlIGkge1xuICBjb2xvcjogI2RlZTJlNjtcbn1cblxuLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5lbXB0eS1zdGF0ZSBoMyxcbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuZW1wdHktc3RhdGUgLmgzIHtcbiAgY29sb3I6ICM0OTUwNTc7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuZW1wdHktc3RhdGUgcCB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuYm90dG9tLWN0YS1zZWN0aW9uIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlMGUwZTA7XG4gIHBhZGRpbmctdG9wOiAzcmVtO1xuICBtYXJnaW4tdG9wOiAzcmVtO1xufVxuXG4ucGFnZS1pcy1wcm9kdWN0LWNhdGVnb3JpZXMgLmJvdHRvbS1jdGEtc2VjdGlvbiAuY3RhLXRpdGxlIHtcbiAgZm9udC1zaXplOiAxLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICMxZTFlNTY7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5ib3R0b20tY3RhLXNlY3Rpb24gLmN0YS1zdWJ0aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuXG4ucGFnZS1pcy1wcm9kdWN0LWNhdGVnb3JpZXMgLmJvdHRvbS1jdGEtc2VjdGlvbiAuY3RhLWJ1dHRvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBnYXA6IDAuNXJlbTtcbn1cblxuLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5ib3R0b20tY3RhLXNlY3Rpb24gLmN0YS1idXR0b25zIC5idG4ge1xuICBtaW4td2lkdGg6IDE1MHB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5ib3R0b20tY3RhLXNlY3Rpb24gLmN0YS1idXR0b25zIC5idG4ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5jYXRlZ29yaWVzLWNhdGFsb2cgLmNhdGVnb3J5LWNhdGFsb2ctY2FyZCAuY2F0ZWdvcnktaW5mbyB7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgfVxuXG4gIC5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQgLmNhdGVnb3J5LWluZm8gLmNhdGVnb3J5LW5hbWUge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxuXG4gIC5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQgLmNhdGVnb3J5LWluZm8gLmNhdGVnb3J5LWRlc2NyaXB0aW9uIHtcbiAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5jYXRlZ29yaWVzLWNhdGFsb2cgLnJvdyB7XG4gICAgbWFyZ2luOiAwIC0wLjVyZW07XG4gIH1cblxuICAucGFnZS1pcy1wcm9kdWN0LWNhdGVnb3JpZXMgLmNhdGVnb3JpZXMtY2F0YWxvZyAucm93ID4gW2NsYXNzKj1jb2xdIHtcbiAgICBwYWRkaW5nOiAwIDAuNXJlbTtcbiAgfVxuXG4gIC5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQgLmNhdGVnb3J5LWltYWdlLXdyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiA2Ni42NyU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW5VcCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQge1xuICBhbmltYXRpb246IGZhZGVJblVwIDAuNXMgZWFzZS1vdXQ7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQ6bnRoLWNoaWxkKDEpIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjA1cztcbn1cblxuLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5jYXRlZ29yaWVzLWNhdGFsb2cgLmNhdGVnb3J5LWNhdGFsb2ctY2FyZDpudGgtY2hpbGQoMikge1xuICBhbmltYXRpb24tZGVsYXk6IDAuMXM7XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQ6bnRoLWNoaWxkKDMpIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjE1cztcbn1cblxuLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5jYXRlZ29yaWVzLWNhdGFsb2cgLmNhdGVnb3J5LWNhdGFsb2ctY2FyZDpudGgtY2hpbGQoNCkge1xuICBhbmltYXRpb24tZGVsYXk6IDAuMnM7XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQ6bnRoLWNoaWxkKDUpIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjI1cztcbn1cblxuLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5jYXRlZ29yaWVzLWNhdGFsb2cgLmNhdGVnb3J5LWNhdGFsb2ctY2FyZDpudGgtY2hpbGQoNikge1xuICBhbmltYXRpb24tZGVsYXk6IDAuM3M7XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQ6bnRoLWNoaWxkKDcpIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjM1cztcbn1cblxuLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5jYXRlZ29yaWVzLWNhdGFsb2cgLmNhdGVnb3J5LWNhdGFsb2ctY2FyZDpudGgtY2hpbGQoOCkge1xuICBhbmltYXRpb24tZGVsYXk6IDAuNHM7XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQ6bnRoLWNoaWxkKDkpIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjQ1cztcbn1cblxuLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5jYXRlZ29yaWVzLWNhdGFsb2cgLmNhdGVnb3J5LWNhdGFsb2ctY2FyZDpudGgtY2hpbGQoMTApIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjVzO1xufVxuXG4ucGFnZS1pcy1wcm9kdWN0LWNhdGVnb3JpZXMgLmNhdGVnb3JpZXMtY2F0YWxvZyAuY2F0ZWdvcnktY2F0YWxvZy1jYXJkOm50aC1jaGlsZCgxMSkge1xuICBhbmltYXRpb24tZGVsYXk6IDAuNTVzO1xufVxuXG4ucGFnZS1pcy1wcm9kdWN0LWNhdGVnb3JpZXMgLmNhdGVnb3JpZXMtY2F0YWxvZyAuY2F0ZWdvcnktY2F0YWxvZy1jYXJkOm50aC1jaGlsZCgxMikge1xuICBhbmltYXRpb24tZGVsYXk6IDAuNnM7XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQ6bnRoLWNoaWxkKDEzKSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMC42NXM7XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQ6bnRoLWNoaWxkKDE0KSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMC43cztcbn1cblxuLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5jYXRlZ29yaWVzLWNhdGFsb2cgLmNhdGVnb3J5LWNhdGFsb2ctY2FyZDpudGgtY2hpbGQoMTUpIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjc1cztcbn1cblxuLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5jYXRlZ29yaWVzLWNhdGFsb2cgLmNhdGVnb3J5LWNhdGFsb2ctY2FyZDpudGgtY2hpbGQoMTYpIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjhzO1xufVxuXG4ucGFnZS1pcy1wcm9kdWN0LWNhdGVnb3JpZXMgLmNhdGVnb3JpZXMtY2F0YWxvZyAuY2F0ZWdvcnktY2F0YWxvZy1jYXJkOm50aC1jaGlsZCgxNykge1xuICBhbmltYXRpb24tZGVsYXk6IDAuODVzO1xufVxuXG4ucGFnZS1pcy1wcm9kdWN0LWNhdGVnb3JpZXMgLmNhdGVnb3JpZXMtY2F0YWxvZyAuY2F0ZWdvcnktY2F0YWxvZy1jYXJkOm50aC1jaGlsZCgxOCkge1xuICBhbmltYXRpb24tZGVsYXk6IDAuOXM7XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQ6bnRoLWNoaWxkKDE5KSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMC45NXM7XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQ6bnRoLWNoaWxkKDIwKSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMXM7XG59XG5cbi5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAuc2VsbGVyLWFjY2Vzcy1wYWdlLXdyYXBwZXIge1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1nL2Jhbm5lci9iZy1TaWduSW4ud2VicFwiKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmctdG9wOiAxMDBweDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbn1cblxuLm5vLXdlYnAgLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5zZWxsZXItYWNjZXNzLXBhZ2Utd3JhcHBlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWcvYmFubmVyL2JnLVNpZ25Jbi5wbmdcIik7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5zZWxsZXItYWNjZXNzLXBhZ2Utd3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDgwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gIC5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAuc2VsbGVyLWFjY2Vzcy1wYWdlLXdyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLnNlbGxlci1hY2Nlc3MtcGFnZS13cmFwcGVyIHtcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5zZWxsZXItYWNjZXNzLXBhZ2Utd3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDQwcHg7XG4gIH1cbn1cblxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5zZWxsZXItYWNjZXNzLWNvbnRhaW5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbn1cblxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5zZWxsZXItYWNjZXNzLWNhcmQge1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICBib3gtc2hhZG93OiAwIDIwcHggNjBweCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xufVxuXG4ucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLnNlbGxlci1hY2Nlc3MtaGVhZGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAzMHB4IDIwcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjBmMGYwO1xufVxuXG4ucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLnNlbGxlci1hY2Nlc3MtaGVhZGVyIC5zZWxsZXItYWNjZXNzLWxvZ28taW1nIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4ucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLnNlbGxlci1hY2Nlc3MtaGVhZGVyIC5sdXh1cnktdGFnbGluZSB7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBmb250LXNpemU6IDEzcHg7XG4gIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbjogMDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5zZWxsZXItYWNjZXNzLWNvbnRlbnQge1xuICBwYWRkaW5nOiA0MHB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5zZWxsZXItYWNjZXNzLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDI1cHg7XG4gIH1cbn1cblxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5zZWxsZXItYWNjZXNzLWJvZHkge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4ucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLmZvcm0tbGFiZWwge1xuICBjb2xvcjogIzQ5NTA1NztcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbWFyZ2luLWJvdHRvbTogNnB4O1xuICBmb250LXNpemU6IDEzcHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbn1cblxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5mb3JtLWNvbnRyb2wsXG4ucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBwYWRkaW5nOiAxMHB4IDE0cHg7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmJmYztcbn1cblxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4ucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMWUxZTU2O1xuICBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYSgzMCwgMzAsIDg2LCAwLjA4KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5mb3JtLWNvbnRyb2w6OnBsYWNlaG9sZGVyLFxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246OnBsYWNlaG9sZGVyLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAuc2VsZWN0Mi1zZWxlY3Rpb246OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNhZGI1YmQ7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIHRleHRhcmVhLmZvcm0tY29udHJvbCxcbi5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgdGV4dGFyZWEuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIHRleHRhcmVhLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgcmVzaXplOiB2ZXJ0aWNhbDtcbiAgbWluLWhlaWdodDogODBweDtcbn1cblxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIHBhZGRpbmc6IDEwcHggMTRweDtcbiAgZm9udC1zaXplOiAxNXB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYmZjO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1pbi1oZWlnaHQ6IDQycHg7XG59XG5cbi5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQuc2VsZWN0Mi1jb250YWluZXItLWZvY3VzIC5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gIGJvcmRlci1jb2xvcjogIzFlMWU1NjtcbiAgYm94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEoMzAsIDMwLCA4NiwgMC4wOCk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyBoNCxcbi5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAuaDQge1xuICBjb2xvcjogIzFlMWU1NjtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNmMGYwZjA7XG59XG5cbi5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAuYWxlcnQtaW5mbyB7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgcGFkZGluZzogMTVweCAyMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmOGZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjYjhkYWZmO1xuICBjb2xvcjogIzAwNDA4NTtcbn1cblxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5hbGVydC1pbmZvIHVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xufVxuXG4ucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLmJ0bi1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzFlMWU1NiAwJSwgIzJhMmE3YSAxMDAlKTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgcGFkZGluZzogMTJweCAyNHB4O1xuICBmb250LXNpemU6IDE1cHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgYm94LXNoYWRvdzogMCA0cHggMTVweCByZ2JhKDMwLCAzMCwgODYsIDAuMik7XG59XG5cbi5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAuYnRuLXByaW1hcnk6aG92ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG4gIGJveC1zaGFkb3c6IDAgNnB4IDI1cHggcmdiYSgzMCwgMzAsIDg2LCAwLjMpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMmEyYTdhIDAlLCAjMWUxZTU2IDEwMCUpO1xufVxuXG4ucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLmJ0bi1wcmltYXJ5OmFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbn1cblxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5idG4tcHJpbWFyeS5idG4tbGcsXG4ucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLmJ0bi1ncm91cC1sZyA+IC5idG4tcHJpbWFyeS5idG4ge1xuICBwYWRkaW5nOiAxNHB4IDMycHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5idG4tb3V0bGluZS1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMnB4IHNvbGlkICMxZTFlNTY7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgY29sb3I6ICMxZTFlNTY7XG4gIHBhZGRpbmc6IDEycHggMjRweDtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG59XG5cbi5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAuYnRuLW91dGxpbmUtcHJpbWFyeTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMxZTFlNTY7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xuICBib3gtc2hhZG93OiAwIDRweCAxNXB4IHJnYmEoMzAsIDMwLCA4NiwgMC4yKTtcbn1cblxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5idG4tb3V0bGluZS1wcmltYXJ5LmJ0bi1sZyxcbi5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAuYnRuLWdyb3VwLWxnID4gLmJ0bi1vdXRsaW5lLXByaW1hcnkuYnRuIHtcbiAgcGFkZGluZzogMTRweCAzMnB4O1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cbi5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMnB4IHNvbGlkICM2Yzc1N2Q7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIHBhZGRpbmc6IDEycHggMjRweDtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG59XG5cbi5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5OmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzZjNzU3ZDtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4ucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDppbnZhbGlkLFxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246aW52YWxpZCxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItc2VsZWN0aW9uOmludmFsaWQge1xuICBib3JkZXItY29sb3I6ICNkYzM1NDU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG5cbi5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOmludmFsaWQ6Zm9jdXMsXG4ucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjppbnZhbGlkOmZvY3VzLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1zZWxlY3Rpb246aW52YWxpZDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbiAgYm94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEoMjIwLCA1MywgNjksIDAuMSk7XG59XG5cbi5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOnZhbGlkLFxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246dmFsaWQsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLXNlbGVjdGlvbjp2YWxpZCB7XG4gIGJvcmRlci1jb2xvcjogIzI4YTc0NTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cblxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6dmFsaWQ6Zm9jdXMsXG4ucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjp2YWxpZDpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItc2VsZWN0aW9uOnZhbGlkOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMjhhNzQ1O1xuICBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYSg0MCwgMTY3LCA2OSwgMC4xKTtcbn1cblxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5pbnZhbGlkLWZlZWRiYWNrLFxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5lcnJvci1oZWxwLWJsb2NrIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBtYXJnaW4tdG9wOiA0cHg7XG4gIGNvbG9yOiAjZGMzNTQ1O1xufVxuXG4ucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLmZvcm0tdGV4dCB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIG1hcmdpbi10b3A6IDRweDtcbn1cblxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC50ZXh0LWRhbmdlciB7XG4gIGNvbG9yOiAjZGMzNTQ1O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5zZWxsZXItYWNjZXNzLWNhcmQge1xuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIH1cblxuICAucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLnNlbGxlci1hY2Nlc3MtaGVhZGVyIHtcbiAgICBwYWRkaW5nOiAyNXB4IDIwcHg7XG4gIH1cblxuICAucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgaDQsXG4gIC5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAuaDQge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgfVxuXG4gIC5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAuZC1ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLmQtZ3JpZCAuYnRuIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG5cbiAgLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5kLWdyaWQgLmJ0bjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAuc2VsbGVyLWFjY2Vzcy1jb250YWluZXIge1xuICAgIG1heC13aWR0aDogNzUwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xuICAucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLnNlbGxlci1hY2Nlc3MtY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDExMDBweDtcbiAgfVxufVxuXG4vKipcbiAqIFByb2ZpbGUgU3VwcG9ydCBUaWNrZXQgRGV0YWlsIFBhZ2UgU3R5bGVzXG4gKi9cblxuLnBhZ2UtaXMtcHJvZmlsZS1zdXBwb3J0LXRpY2tldC1kZXRhaWwgLmNhcmQ6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG59XG5cbi5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXQtZGV0YWlsIC5tZXNzYWdlLWl0ZW0td3JhcHBlciB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXQtZGV0YWlsIC5tZXNzYWdlLWl0ZW0td3JhcHBlciB7XG4gICAgcGFkZGluZy1sZWZ0OiA1MHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG4gIH1cbn1cblxuLnBhZ2UtaXMtcHJvZmlsZS1zdXBwb3J0LXRpY2tldC1kZXRhaWwgLm1lc3NhZ2Utc2VwYXJhdG9yIHtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2RlZTJlNjtcbiAgbWFyZ2luOiAxLjVyZW0gMDtcbn1cblxuLnBhZ2UtaXMtcHJvZmlsZS1zdXBwb3J0LXRpY2tldC1kZXRhaWwgLm1lc3NhZ2UtaXRlbSB7XG4gIGJvcmRlci1sZWZ0OiA0cHggc29saWQgI2RlZTJlNjtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG4gIGFuaW1hdGlvbjogZmFkZUluIDAuM3MgZWFzZS1pbjtcbn1cblxuLnBhZ2UtaXMtcHJvZmlsZS1zdXBwb3J0LXRpY2tldC1kZXRhaWwgLm1lc3NhZ2UtaXRlbS5hZG1pbi1tZXNzYWdlIHtcbiAgYm9yZGVyLWxlZnQtY29sb3I6ICMwMDdiZmY7XG59XG5cbi5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXQtZGV0YWlsIC5tZXNzYWdlLWl0ZW0uY3VzdG9tZXItbWVzc2FnZSB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjNmM3NTdkO1xufVxuXG4ucGFnZS1pcy1wcm9maWxlLXN1cHBvcnQtdGlja2V0LWRldGFpbCAubWVzc2FnZS1pdGVtOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLnBhZ2UtaXMtcHJvZmlsZS1zdXBwb3J0LXRpY2tldC1kZXRhaWwgLm1lc3NhZ2UtaGVhZGVyIHtcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTllY2VmO1xufVxuXG4ucGFnZS1pcy1wcm9maWxlLXN1cHBvcnQtdGlja2V0LWRldGFpbCAubWVzc2FnZS1jb250ZW50IHtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTllY2VmO1xufVxuXG4ucGFnZS1pcy1wcm9maWxlLXN1cHBvcnQtdGlja2V0LWRldGFpbCAubWVzc2FnZS1zZW5kZXIge1xuICBjb2xvcjogIzQ5NTA1NztcbiAgZm9udC1zaXplOiAwLjk1cmVtO1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcHVsc2Uge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgb3BhY2l0eTogMC44O1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXQtZGV0YWlsIC51bnJlYWQtaW5kaWNhdG9yIHtcbiAgYW5pbWF0aW9uOiBwdWxzZSAxLjVzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xufVxuXG4ucGFnZS1pcy1wcm9maWxlLXN1cHBvcnQtdGlja2V0LWRldGFpbCAubWVzc2FnZS1hdHRhY2htZW50cyAuYXR0YWNobWVudC1pdGVtIGEuYnRuLW91dGxpbmUtc2Vjb25kYXJ5IHtcbiAgY29sb3I6ICMyMTI1Mjk7XG59XG5cbi5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXQtZGV0YWlsIC5tZXNzYWdlLWF0dGFjaG1lbnRzIC5hdHRhY2htZW50LWl0ZW0gYS5idG4tb3V0bGluZS1zZWNvbmRhcnkgLmZhLWZpbGUge1xuICBjb2xvcjogIzZjNzU3ZDtcbn1cblxuLnBhZ2UtaXMtcHJvZmlsZS1zdXBwb3J0LXRpY2tldC1kZXRhaWwgLm1lc3NhZ2UtYXR0YWNobWVudHMgLmF0dGFjaG1lbnQtaXRlbSBhLmJ0bi1vdXRsaW5lLXNlY29uZGFyeSBzbWFsbC50ZXh0LW11dGVkLFxuLnBhZ2UtaXMtcHJvZmlsZS1zdXBwb3J0LXRpY2tldC1kZXRhaWwgLm1lc3NhZ2UtYXR0YWNobWVudHMgLmF0dGFjaG1lbnQtaXRlbSBhLmJ0bi1vdXRsaW5lLXNlY29uZGFyeSAudGV4dC1tdXRlZC5zbWFsbCB7XG4gIGNvbG9yOiAjNmM3NTdkICFpbXBvcnRhbnQ7XG59XG5cbi5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXQtZGV0YWlsIC5tZXNzYWdlLWF0dGFjaG1lbnRzIC5hdHRhY2htZW50LWl0ZW0gYS5idG4tb3V0bGluZS1zZWNvbmRhcnk6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLnBhZ2UtaXMtcHJvZmlsZS1zdXBwb3J0LXRpY2tldC1kZXRhaWwgLm1lc3NhZ2UtYXR0YWNobWVudHMgLmF0dGFjaG1lbnQtaXRlbSBhLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpob3ZlciAuZmEtZmlsZSxcbi5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXQtZGV0YWlsIC5tZXNzYWdlLWF0dGFjaG1lbnRzIC5hdHRhY2htZW50LWl0ZW0gYS5idG4tb3V0bGluZS1zZWNvbmRhcnk6aG92ZXIgc21hbGwudGV4dC1tdXRlZCxcbi5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXQtZGV0YWlsIC5tZXNzYWdlLWF0dGFjaG1lbnRzIC5hdHRhY2htZW50LWl0ZW0gYS5idG4tb3V0bGluZS1zZWNvbmRhcnk6aG92ZXIgLnRleHQtbXV0ZWQuc21hbGwge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG4vKipcbiAqIFByb2ZpbGUgU3VwcG9ydCBUaWNrZXRzIFBhZ2UgU3R5bGVzXG4gKi9cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXRzICNzdXBwb3J0LXRpY2tldHMtdGFibGUgdGhlYWQgdGguc29ydGFibGUgaSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXRzICNzdXBwb3J0LXRpY2tldHMtdGFibGUgdGhlYWQgdGg6bnRoLWNoaWxkKDIpLFxuICAucGFnZS1pcy1wcm9maWxlLXN1cHBvcnQtdGlja2V0cyAjc3VwcG9ydC10aWNrZXRzLXRhYmxlIHRoZWFkIHRoOm50aC1jaGlsZCg0KSxcbiAgLnBhZ2UtaXMtcHJvZmlsZS1zdXBwb3J0LXRpY2tldHMgI3N1cHBvcnQtdGlja2V0cy10YWJsZSB0aGVhZCB0aDpudGgtY2hpbGQoNiksXG4gIC5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXRzICNzdXBwb3J0LXRpY2tldHMtdGFibGUgdGJvZHkgdGQ6bnRoLWNoaWxkKDIpLFxuICAucGFnZS1pcy1wcm9maWxlLXN1cHBvcnQtdGlja2V0cyAjc3VwcG9ydC10aWNrZXRzLXRhYmxlIHRib2R5IHRkOm50aC1jaGlsZCg0KSxcbiAgLnBhZ2UtaXMtcHJvZmlsZS1zdXBwb3J0LXRpY2tldHMgI3N1cHBvcnQtdGlja2V0cy10YWJsZSB0Ym9keSB0ZDpudGgtY2hpbGQoNikge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnBhZ2UtaXMtcHJvZmlsZS1zdXBwb3J0LXRpY2tldHMgI3N1cHBvcnQtdGlja2V0cy10YWJsZSB0Ym9keSB0ciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XG59XG5cbi5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXRzICNzdXBwb3J0LXRpY2tldHMtdGFibGUgdGJvZHkgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDIpO1xufVxuXG4ucGFnZS1pcy1wcm9maWxlLXN1cHBvcnQtdGlja2V0cyAjc3VwcG9ydC10aWNrZXRzLXRhYmxlIHRoZWFkIHRoLnNvcnRhYmxlIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ucGFnZS1pcy1wcm9maWxlLXN1cHBvcnQtdGlja2V0cyAjc3VwcG9ydC10aWNrZXRzLXRhYmxlIHRoZWFkIHRoLnNvcnRhYmxlOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjAyKTtcbn1cblxuLnBhZ2UtaXMtcHJvZmlsZS1zdXBwb3J0LXRpY2tldHMgI3N1cHBvcnQtdGlja2V0cy10YWJsZSB0aGVhZCB0aC5zb3J0YWJsZSBpIHtcbiAgb3BhY2l0eTogMC40O1xuICBmb250LXNpemU6IDAuODVlbTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG59XG5cbi5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXRzICNzdXBwb3J0LXRpY2tldHMtdGFibGUgdGhlYWQgdGguc29ydGFibGU6aG92ZXIgaSB7XG4gIG9wYWNpdHk6IDAuNztcbn1cblxuLnBhZ2UtaXMtcHJvZmlsZS1zdXBwb3J0LXRpY2tldHMgI3N1cHBvcnQtdGlja2V0cy10YWJsZSB0aGVhZCB0aC5zb3J0YWJsZSBpLmZhLXNvcnQtdXAsXG4ucGFnZS1pcy1wcm9maWxlLXN1cHBvcnQtdGlja2V0cyAjc3VwcG9ydC10aWNrZXRzLXRhYmxlIHRoZWFkIHRoLnNvcnRhYmxlIGkuZmEtc29ydC1kb3duIHtcbiAgb3BhY2l0eTogMTtcbiAgY29sb3I6ICMxZTFlNTY7XG59XG5cbi5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXRzICNwYWdpbmF0aW9uLWNvbnRhaW5lciAucGFnaW5hdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXRzICNwYWdpbmF0aW9uLWNvbnRhaW5lciAucGFnaW5hdGlvbiAucGFnZS1pdGVtLmRpc2FibGVkIC5wYWdlLWxpbmsge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICBvcGFjaXR5OiAwLjU7XG59XG5cbi5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXRzICNwYWdpbmF0aW9uLWNvbnRhaW5lciAucGFnaW5hdGlvbiAucGFnZS1pdGVtLmFjdGl2ZSAucGFnZS1saW5rIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFlMWU1NjtcbiAgYm9yZGVyLWNvbG9yOiAjMWUxZTU2O1xufVxuXG4ucGFnZS1pcy1wcm9maWxlLXN1cHBvcnQtdGlja2V0cyAudGFibGUgLmJhZGdlLFxuLnBhZ2UtaXMtcHJvZmlsZS1zdXBwb3J0LXRpY2tldHMgLnByb3NlIHRhYmxlIC5iYWRnZSxcbi5wcm9zZSAucGFnZS1pcy1wcm9maWxlLXN1cHBvcnQtdGlja2V0cyB0YWJsZSAuYmFkZ2Uge1xuICBmb250LXdlaWdodDogNTAwO1xuICBwYWRkaW5nOiAwLjM1ZW0gMC42NWVtO1xufVxuXG4ucGFnZS1pcy1wcm9maWxlLXN1cHBvcnQtdGlja2V0cyAudGFibGUgLmJhZGdlLmJnLWRhbmdlcixcbi5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXRzIC5wcm9zZSB0YWJsZSAuYmFkZ2UuYmctZGFuZ2VyLFxuLnByb3NlIC5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXRzIHRhYmxlIC5iYWRnZS5iZy1kYW5nZXIge1xuICBhbmltYXRpb246IHB1bHNlIDJzIGluZmluaXRlO1xufVxuXG4ucGFnZS1pcy1wcm9maWxlLXN1cHBvcnQtdGlja2V0cyAudGV4dC1kYW5nZXIge1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG5Aa2V5ZnJhbWVzIHB1bHNlIHtcbiAgMCUge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDAgcmdiYSgyMjAsIDUzLCA2OSwgMC40KTtcbiAgfVxuXG4gIDcwJSB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgNXB4IHJnYmEoMjIwLCA1MywgNjksIDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKDIyMCwgNTMsIDY5LCAwKTtcbiAgfVxufVxuXG4vKipcbiAqIFByZXZpZXcgRGlhbW9uZCBQYWdlIFN0eWxlc1xuICpcbiAqIFN0eWxlcyBzcGVjaWZpYyB0byB0aGUgZGlhbW9uZCBwcmV2aWV3IHBhZ2UsIGluY2x1ZGluZyB2aWRlbyBlbWJlZFxuICogYW5kIGlmcmFtZSBkaXNwbGF5IGFkanVzdG1lbnRzLlxuICpcbiAqIEBzZWUgcmVzb3VyY2VzL3ZpZXdzL2Zyb250ZW5kL2l0ZW1zL3ByZXZpZXctZGlhbW9uZC5ibGFkZS5waHBcbiAqIEBzZWUgcmVzb3VyY2VzL2pzL2Zyb250ZW5kL3BhZ2VzL3ByZXZpZXctZGlhbW9uZC1wYWdlLmpzXG4gKi9cblxuLnBhZ2VfaXNfZGlhbW9uZF9wcmV2aWV3X3BhZ2UgLmxhcmF2ZWwtZW1iZWRfX3Jlc3BvbnNpdmUtd3JhcHBlciB7XG4gIG1pbi1oZWlnaHQ6IDE5NnB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctYm90dG9tOiAwJSAhaW1wb3J0YW50O1xufVxuXG4ucGFnZV9pc19kaWFtb25kX3ByZXZpZXdfcGFnZSBpZnJhbWUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNjA4cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLmhlcm9TbGlkZXIge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xufVxuXG4iLCIvKipcbiAqIFNoYXJlZCBDb3JlIEluZGV4XG4gKlxuICogSW1wb3J0IGFsbCBzaGFyZWQgY29yZSBTQ1NTIGZpbGVzIGluIHRoZSBjb3JyZWN0IG9yZGVyXG4gKi9cblxuLy8gMS4gRnVuY3Rpb25zIChtdXN0IGJlIGZpcnN0IGFzIHRoZXkncmUgdXNlZCBpbiBvdGhlciBmaWxlcylcbkBpbXBvcnQgJ2Z1bmN0aW9ucyc7XG5cbi8vIDIuIFZhcmlhYmxlcyAodXNlcyBmdW5jdGlvbnMpXG5AaW1wb3J0ICd2YXJpYWJsZXMnO1xuXG4vLyAzLiBNaXhpbnMgKHVzZXMgZnVuY3Rpb25zIGFuZCB2YXJpYWJsZXMpXG5AaW1wb3J0ICdtaXhpbnMnOyIsIi8qKlxuICogU2hhcmVkIEZ1bmN0aW9uc1xuICpcbiAqIFNDU1MgZnVuY3Rpb25zIGZvciBjYWxjdWxhdGlvbnMgYW5kIHRyYW5zZm9ybWF0aW9uc1xuICovXG5cbkB1c2UgXCJzYXNzOm1hdGhcIjtcblxuLy8gQ29udmVydCBwaXhlbHMgdG8gcmVtXG5AZnVuY3Rpb24gcmVtKCRwaXhlbHMsICRjb250ZXh0OiAxNikge1xuICBAcmV0dXJuIG1hdGguZGl2KCRwaXhlbHMsICRjb250ZXh0KSAqIDFyZW07XG59XG5cbi8vIENvbnZlcnQgcGl4ZWxzIHRvIGVtXG5AZnVuY3Rpb24gZW0oJHBpeGVscywgJGNvbnRleHQ6IDE2KSB7XG4gIEByZXR1cm4gbWF0aC5kaXYoJHBpeGVscywgJGNvbnRleHQpICogMWVtO1xufVxuXG4vLyBDYWxjdWxhdGUgc3BhY2luZ1xuQGZ1bmN0aW9uIHNwYWNpbmcoJG11bHRpcGxpZXIpIHtcbiAgQHJldHVybiAkc3BhY2VyICogJG11bHRpcGxpZXI7XG59XG5cbi8vIFN0cmlwIHVuaXQgZnJvbSBhIHZhbHVlXG5AZnVuY3Rpb24gc3RyaXAtdW5pdCgkdmFsdWUpIHtcbiAgQHJldHVybiAkdmFsdWUgLyAoJHZhbHVlICogMCArIDEpO1xufVxuXG4vLyBDYWxjdWxhdGUgdGhlIGx1bWluYW5jZSBvZiBhIGNvbG9yXG5AZnVuY3Rpb24gbHVtaW5hbmNlKCRjb2xvcikge1xuICAkcmVkOiByZWQoJGNvbG9yKSAvIDI1NTtcbiAgJGdyZWVuOiBncmVlbigkY29sb3IpIC8gMjU1O1xuICAkYmx1ZTogYmx1ZSgkY29sb3IpIC8gMjU1O1xuICBcbiAgQHJldHVybiAwLjIxMjYgKiAkcmVkICsgMC43MTUyICogJGdyZWVuICsgMC4wNzIyICogJGJsdWU7XG59XG5cbi8vIENhbGN1bGF0ZSB0aGUgY29udHJhc3QgcmF0aW8gYmV0d2VlbiB0d28gY29sb3JzXG5AZnVuY3Rpb24gY29sb3ItY29udHJhc3QoJGNvbG9yKSB7XG4gICRsdW1pbmFuY2U6IGx1bWluYW5jZSgkY29sb3IpO1xuICBcbiAgQGlmICgkbHVtaW5hbmNlID4gMC41NSkge1xuICAgIEByZXR1cm4gJGJsYWNrOyAvLyBEYXJrZXIgdGV4dCBvbiBsaWdodCBiYWNrZ3JvdW5kc1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuICR3aGl0ZTsgLy8gTGlnaHQgdGV4dCBvbiBkYXJrIGJhY2tncm91bmRzXG4gIH1cbn1cblxuLy8gR2V0IGEgdmFsdWUgZnJvbSBhIG1hcFxuQGZ1bmN0aW9uIG1hcC1kZWVwLWdldCgkbWFwLCAka2V5cy4uLikge1xuICBAZWFjaCAka2V5IGluICRrZXlzIHtcbiAgICAkbWFwOiBtYXAtZ2V0KCRtYXAsICRrZXkpO1xuICB9XG4gIEByZXR1cm4gJG1hcDtcbn1cblxuLy8gWi1pbmRleCBtYW5hZ2VtZW50XG5AZnVuY3Rpb24gei1pbmRleCgkbGF5ZXIpIHtcbiAgJHotaW5kZXhlczogKFxuICAgIGRyb3Bkb3duOiAkei1pbmRleC1kcm9wZG93bixcbiAgICBzdGlja3k6ICR6LWluZGV4LXN0aWNreSxcbiAgICBmaXhlZDogJHotaW5kZXgtZml4ZWQsXG4gICAgbW9kYWwtYmFja2Ryb3A6ICR6LWluZGV4LW1vZGFsLWJhY2tkcm9wLFxuICAgIG1vZGFsOiAkei1pbmRleC1tb2RhbCxcbiAgICBwb3BvdmVyOiAkei1pbmRleC1wb3BvdmVyLFxuICAgIHRvb2x0aXA6ICR6LWluZGV4LXRvb2x0aXBcbiAgKTtcbiAgXG4gIEByZXR1cm4gbWFwLWdldCgkei1pbmRleGVzLCAkbGF5ZXIpO1xufVxuXG4vLyBUaW50IGEgY29sb3IgKG1peCB3aXRoIHdoaXRlKVxuQGZ1bmN0aW9uIHRpbnQoJGNvbG9yLCAkcGVyY2VudGFnZSkge1xuICBAcmV0dXJuIG1peCh3aGl0ZSwgJGNvbG9yLCAkcGVyY2VudGFnZSk7XG59XG5cbi8vIFNoYWRlIGEgY29sb3IgKG1peCB3aXRoIGJsYWNrKVxuQGZ1bmN0aW9uIHNoYWRlKCRjb2xvciwgJHBlcmNlbnRhZ2UpIHtcbiAgQHJldHVybiBtaXgoYmxhY2ssICRjb2xvciwgJHBlcmNlbnRhZ2UpO1xufSIsIi8qKlxuICogU2hhcmVkIFZhcmlhYmxlc1xuICpcbiAqIENvcmUgdmFyaWFibGVzIHVzZWQgdGhyb3VnaG91dCBib3RoIGZyb250ZW5kIGFuZCBiYWNrZW5kIHN0eWxpbmcuXG4gKiBUaGVzZSBwcm92aWRlIGEgY2VudHJhbCBwbGFjZSB0byBkZWZpbmUgY29sb3JzLCBzcGFjaW5nLCBhbmQgb3RoZXIgZGVzaWduIGVsZW1lbnRzLlxuICovXG5cbi8vIENvbG9yc1xuLy8gTWFpbiBicmFuZCBjb2xvcnNcbiRwcmltYXJ5OiAjMUUxRTU2OyAgICAgICAgLy8gRGVlcCBuYXZ5IGJsdWUgLSBwcmltYXJ5IGJyYW5kIGNvbG9yXG4kc2Vjb25kYXJ5OiAjYTM3ZWJhOyAgICAgIC8vIFB1cnBsZSAtIHNlY29uZGFyeSBhY2NlbnQgXG4kdGVydGlhcnk6ICM3ZWJhYWQ7ICAgICAgIC8vIFRlYWwgLSB0ZXJ0aWFyeSBhY2NlbnRcbiRxdWF0ZXJuYXJ5OiAjZTljNDZhOyAgICAgLy8gR29sZCAtIGZvciBsdXh1cnkgYWNjZW50c1xuXG4vLyBOZXV0cmFsIGNvbG9yc1xuJHdoaXRlOiAjZmZmZmZmO1xuJGxpZ2h0LWdyYXk6ICNmOGY5ZmE7XG4kbWlkLWdyYXk6ICNlMGUwZTA7XG4kZGFyay1ncmF5OiAjNWY2MDYyO1xuJGJsYWNrOiAjMzMzMzMzO1xuXG4vLyBTZW1hbnRpYyBjb2xvcnNcbiRzdWNjZXNzOiAjNGNhZjUwO1xuJGluZm86ICMyMTk2ZjM7XG4kd2FybmluZzogI2ZmOTgwMDtcbiRkYW5nZXI6ICNmNDQzMzY7XG5cbi8vIEl0ZW0gdHlwZSBzcGVjaWZpYyBjb2xvcnNcbiRqZXdlbHJ5LWNvbG9yOiAkc2Vjb25kYXJ5O1xuJGdlbXN0b25lLWNvbG9yOiAkdGVydGlhcnk7XG5cbi8vIFR5cG9ncmFwaHlcbiRmb250LWZhbWlseS1iYXNlOiAnU291cmNlIFNhbnMgUHJvJywgc2Fucy1zZXJpZjtcbiRmb250LWZhbWlseS1oZWFkaW5nOiAnUGxheWZhaXIgRGlzcGxheScsIHNlcmlmO1xuJGZvbnQtZmFtaWx5LWFkbWluOiAnTnVuaXRvJywgc2Fucy1zZXJpZjtcblxuJGZvbnQtc2l6ZS1iYXNlOiAxcmVtOyAgICAgICAgICAvLyAxNnB4XG4kZm9udC1zaXplLXNtOiAwLjg3NXJlbTsgICAgICAgIC8vIDE0cHhcbiRmb250LXNpemUtbGc6IDEuMTI1cmVtOyAgICAgICAgLy8gMThweFxuJGZvbnQtc2l6ZS14bDogMS4yNXJlbTsgICAgICAgICAvLyAyMHB4XG5cbiRmb250LXdlaWdodC1ub3JtYWw6IDQwMDtcbiRmb250LXdlaWdodC1tZWRpdW06IDUwMDtcbiRmb250LXdlaWdodC1ib2xkOiA3MDA7XG5cbi8vIFNwYWNpbmdcbiRzcGFjZXI6IDFyZW07ICAgICAgICAgICAgICAgICAgLy8gQmFzZSBzcGFjaW5nIHVuaXRcbiRjb250YWluZXItbWF4LXdpZHRoOiAxMzY1cHg7ICAgLy8gTWF4IHdpZHRoIGNvbnN0cmFpbnRcbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gIHhzOiAwLFxuICBzbTogNTc2cHgsXG4gIG1kOiA3NjhweCxcbiAgbGc6IDk5MnB4LFxuICB4bDogMTIwMHB4LFxuICB4eGw6IDE0MDBweFxuKTtcblxuLy8gQm9yZGVyIHJhZGl1c1xuJGJvcmRlci1yYWRpdXMtc206IDRweDtcbiRib3JkZXItcmFkaXVzOiA4cHg7XG4kYm9yZGVyLXJhZGl1cy1sZzogMTJweDtcbiRib3JkZXItcmFkaXVzLWNpcmNsZTogNTAlO1xuXG4vLyBCb3ggc2hhZG93c1xuJGJveC1zaGFkb3ctc206IDAgMXB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4kYm94LXNoYWRvdzogMCA0cHggNnB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiRib3gtc2hhZG93LWxnOiAwIDEwcHggMTVweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG5cbi8vIFotaW5kZXggc2NhbGVzXG4kei1pbmRleC1kcm9wZG93bjogMTAwMDtcbiR6LWluZGV4LXN0aWNreTogMTAyMDtcbiR6LWluZGV4LWZpeGVkOiAxMDMwO1xuJHotaW5kZXgtbW9kYWwtYmFja2Ryb3A6IDEwNDA7XG4kei1pbmRleC1tb2RhbDogMTA1MDtcbiR6LWluZGV4LXBvcG92ZXI6IDEwNjA7XG4kei1pbmRleC10b29sdGlwOiAxMDcwO1xuXG4vLyBUcmFuc2l0aW9uIHNwZWVkc1xuJHRyYW5zaXRpb24tc3BlZWQtZmFzdDogMC4xNXM7XG4kdHJhbnNpdGlvbi1zcGVlZDogMC4zcztcbiR0cmFuc2l0aW9uLXNwZWVkLXNsb3c6IDAuNXM7XG5cbi8vIEZvcm0gZWxlbWVudHMgcmVtb3ZlZCAtIGJhY2tlbmQgYW5kIGZyb250ZW5kIGhhdmUgc2VwYXJhdGUgZm9ybSBzeXN0ZW1zXG4vLyBFYWNoIHN5c3RlbSBkZWZpbmVzIGl0cyBvd24gZm9ybSB2YXJpYWJsZXMgdG8gcHJldmVudCBjb25mbGljdHNcblxuLy8gQnV0dG9uc1xuJGJ0bi1wYWRkaW5nLXk6IDhweDtcbiRidG4tcGFkZGluZy14OiAyMHB4O1xuJGJ0bi1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiRidG4tYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4kYnRuLXRyYW5zaXRpb246IGFsbCAkdHJhbnNpdGlvbi1zcGVlZCBlYXNlOyIsIi8qKlxuICogU2hhcmVkIE1peGluc1xuICpcbiAqIFJldXNhYmxlIFNDU1MgbWl4aW5zIGZvciBjb25zaXN0ZW50IHN0eWxpbmcgcGF0dGVybnNcbiAqL1xuXG4vLyBNZWRpYSBxdWVyeSBtaXhpbnMgZm9yIHJlc3BvbnNpdmUgZGVzaWduXG5AbWl4aW4gcmVzcG9uZC1iZWxvdygkYnJlYWtwb2ludCkge1xuICBAbWVkaWEgKG1heC13aWR0aDogJGJyZWFrcG9pbnQpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gcmVzcG9uZC1hYm92ZSgkYnJlYWtwb2ludCkge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gcmVzcG9uZC1iZXR3ZWVuKCRtaW4sICRtYXgpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gRmxleCBoZWxwZXJzXG5AbWl4aW4gZmxleC1jZW50ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuQG1peGluIGZsZXgtYmV0d2VlbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cblxuQG1peGluIGZsZXgtY29sdW1uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLy8gSGlkZSB0ZXh0IGJ1dCBrZWVwIGFjY2Vzc2libGVcbkBtaXhpbiB2aXN1YWxseS1oaWRkZW4ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlci13aWR0aDogMDtcbn1cblxuLy8gVHJ1bmNhdGUgdGV4dCB3aXRoIGVsbGlwc2lzXG5AbWl4aW4gdGV4dC10cnVuY2F0ZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4vLyBNdWx0aS1saW5lIHRleHQgdHJ1bmNhdGlvblxuQG1peGluIGxpbmUtY2xhbXAoJGxpbmVzOiAyKSB7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAtd2Via2l0LWxpbmUtY2xhbXA6ICRsaW5lcztcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cbi8vIEJveCBzaGFkb3dzXG5AbWl4aW4gYm94LXNoYWRvdygkbGV2ZWw6IDEpIHtcbiAgQGlmICRsZXZlbCA9PSAxIHtcbiAgICBib3gtc2hhZG93OiAkYm94LXNoYWRvdy1zbTtcbiAgfSBAZWxzZSBpZiAkbGV2ZWwgPT0gMiB7XG4gICAgYm94LXNoYWRvdzogJGJveC1zaGFkb3c7XG4gIH0gQGVsc2UgaWYgJGxldmVsID09IDMge1xuICAgIGJveC1zaGFkb3c6ICRib3gtc2hhZG93LWxnO1xuICB9XG59XG5cbi8vIEhvdmVyIHRyYW5zaXRpb25cbkBtaXhpbiBob3Zlci1saWZ0IHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZSwgYm94LXNoYWRvdyAwLjNzIGVhc2U7XG4gIFxuICAmOmhvdmVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygyKTtcbiAgfVxufVxuXG4vLyBCYWRnZSBzdHlsaW5nXG5AbWl4aW4gYmFkZ2UoJGJnLWNvbG9yLCAkdGV4dC1jb2xvcjogI2ZmZmZmZikge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAuMjVlbSAwLjYyNWVtO1xuICBmb250LXNpemU6IDAuNzVlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiZy1jb2xvcjtcbn1cblxuLy8gQnV0dG9uIHN0eWxlc1xuQG1peGluIGJ1dHRvbi12YXJpYW50KCRiZy1jb2xvciwgJHRleHQtY29sb3I6ICNmZmZmZmYsICRob3Zlci1iZzogbnVsbCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctY29sb3I7XG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAkYnRuLWJvcmRlci1yYWRpdXM7XG4gIHBhZGRpbmc6ICRidG4tcGFkZGluZy15ICRidG4tcGFkZGluZy14O1xuICBmb250LXdlaWdodDogJGJ0bi1mb250LXdlaWdodDtcbiAgdHJhbnNpdGlvbjogJGJ0bi10cmFuc2l0aW9uO1xuICBcbiAgQGlmICRob3Zlci1iZyA9PSBudWxsIHtcbiAgICAkaG92ZXItYmc6IGxpZ2h0ZW4oJGJnLWNvbG9yLCAxMCUpO1xuICB9XG4gIFxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItYmc7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xuICAgIGJveC1zaGFkb3c6IDAgNHB4IDZweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIH1cbiAgXG4gICY6YWN0aXZlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbiAgXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEoJGJnLWNvbG9yLCAwLjI1KTtcbiAgfVxuICBcbiAgJjpkaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogMC42NTtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICB9XG59XG5cbi8vIENvbnRhaW5lciB3aXRoIG1heCB3aWR0aFxuQG1peGluIGNvbnRhaW5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6ICRjb250YWluZXItbWF4LXdpZHRoO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gIFxuICBAaW5jbHVkZSByZXNwb25kLWFib3ZlKG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsIG1kKSkge1xuICAgIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xuICB9XG59XG5cbi8vIEN1c3RvbSBzY3JvbGxiYXIgc3R5bGluZ1xuQG1peGluIGN1c3RvbS1zY3JvbGxiYXIoJHRodW1iLWNvbG9yOiAkbWlkLWdyYXksICR0cmFjay1jb2xvcjogdHJhbnNwYXJlbnQpIHtcbiAgc2Nyb2xsYmFyLXdpZHRoOiB0aGluO1xuICBzY3JvbGxiYXItY29sb3I6ICR0aHVtYi1jb2xvciAkdHJhY2stY29sb3I7XG4gIFxuICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgd2lkdGg6IDVweDtcbiAgICBoZWlnaHQ6IDVweDtcbiAgfVxuICBcbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgIGJhY2tncm91bmQ6ICR0cmFjay1jb2xvcjtcbiAgfVxuICBcbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0aHVtYi1jb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJHRodW1iLWNvbG9yLCAxMCUpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBDbGVhcmZpeFxuQG1peGluIGNsZWFyZml4IHtcbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuLy8gQXNwZWN0IHJhdGlvIGJveFxuQG1peGluIGFzcGVjdC1yYXRpbygkd2lkdGgsICRoZWlnaHQpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBcbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmctdG9wOiAoJGhlaWdodCAvICR3aWR0aCkgKiAxMDAlO1xuICB9XG4gIFxuICA+ICoge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn0iLCIvKipcbiAqIEZyb250ZW5kIFZhcmlhYmxlc1xuICpcbiAqIEZyb250ZW5kLXNwZWNpZmljIHZhcmlhYmxlIG92ZXJyaWRlcyBhbmQgY3VzdG9tIHZhbHVlcy5cbiAqIFRoZXNlIHZhcmlhYmxlcyBhcmUgbG9hZGVkIGJlZm9yZSBCb290c3RyYXAgdG8gb3ZlcnJpZGUgZGVmYXVsdHMuXG4gKi9cblxuLy8gSW1wb3J0IHNoYXJlZCB2YXJpYWJsZXMgZmlyc3RcbkBpbXBvcnQgXCIuLi8uLi9zaGFyZWQvY29yZS92YXJpYWJsZXNcIjtcblxuLy8gRnJvbnRlbmQtc3BlY2lmaWMgQm9vdHN0cmFwIG92ZXJyaWRlc1xuLy8gTU9ESUZJRUQgQlkgSEFOU09OWFlaIC0gU3F1YXJlIGNvcm5lcnMgZm9yIGFsbCBmcm9udGVuZCBidXR0b25zXG4kYnRuLWJvcmRlci1yYWRpdXM6IDA7XG4kYnRuLWJvcmRlci1yYWRpdXMtc206IDA7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6IDA7XG5cbi8vIEZyb250ZW5kLXNwZWNpZmljIGNvbG9yIG92ZXJyaWRlc1xuJHByaW1hcnk6ICMxZTFlNTY7XG4kYm9yZGVyLWNvbG9yOiAjYjZiNmI2O1xuXG4vLyBGcm9udGVuZC1zcGVjaWZpYyBzcGFjaW5nXG4kY29udGFpbmVyLXBhZGRpbmctbW9iaWxlOiAwLjI1cmVtO1xuJGNvbnRhaW5lci1wYWRkaW5nLXNtYWxsOiAwLjVyZW07XG5cbiRmb250LWZhbWlseS1iYXNlOiBcIlBvcHBpbnNcIiwgXCJTb3VyY2UgU2FucyBQcm9cIiwgc2Fucy1zZXJpZjtcblxuLy8gRnJvbnRlbmQtc3BlY2lmaWMgdHlwb2dyYXBoeVxuJGZyb250ZW5kLWhlYWRpbmctZm9udDogXCJQbGF5ZmFpciBEaXNwbGF5XCIsIHNlcmlmO1xuXG4kZnJvbnRlbmQtYm9keS1mb250OiAkZm9udC1mYW1pbHktYmFzZTtcblxuLy8gRnJvbnRlbmQtc3BlY2lmaWMgY29tcG9uZW50IHNpemVzXG4kZnJvbnRlbmQtaGVhZGVyLWhlaWdodDogODBweDtcbiRmcm9udGVuZC1mb290ZXItaGVpZ2h0OiAyMDBweDtcbiIsIjpyb290LFxuW2RhdGEtYnMtdGhlbWU9XCJsaWdodFwiXSB7XG4gIC8vIE5vdGU6IEN1c3RvbSB2YXJpYWJsZSB2YWx1ZXMgb25seSBzdXBwb3J0IFNhc3NTY3JpcHQgaW5zaWRlIGAje31gLlxuXG4gIC8vIENvbG9yc1xuICAvL1xuICAvLyBHZW5lcmF0ZSBwYWxldHRlcyBmb3IgZnVsbCBjb2xvcnMsIGdyYXlzLCBhbmQgdGhlbWUgY29sb3JzLlxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICRjb2xvcnMge1xuICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJGdyYXlzIHtcbiAgICAtLSN7JHByZWZpeH1ncmF5LSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgLS0jeyRwcmVmaXh9I3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzLXJnYiB7XG4gICAgLS0jeyRwcmVmaXh9I3skY29sb3J9LXJnYjogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy10ZXh0IHtcbiAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn0tdGV4dC1lbXBoYXNpczogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy1iZy1zdWJ0bGUge1xuICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfS1iZy1zdWJ0bGU6ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtYm9yZGVyLXN1YnRsZSB7XG4gICAgLS0jeyRwcmVmaXh9I3skY29sb3J9LWJvcmRlci1zdWJ0bGU6ICN7JHZhbHVlfTtcbiAgfVxuXG4gIC0tI3skcHJlZml4fXdoaXRlLXJnYjogI3t0by1yZ2IoJHdoaXRlKX07XG4gIC0tI3skcHJlZml4fWJsYWNrLXJnYjogI3t0by1yZ2IoJGJsYWNrKX07XG5cbiAgLy8gRm9udHNcblxuICAvLyBOb3RlOiBVc2UgYGluc3BlY3RgIGZvciBsaXN0cyBzbyB0aGF0IHF1b3RlZCBpdGVtcyBrZWVwIHRoZSBxdW90ZXMuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8yMzgzI2lzc3VlY29tbWVudC0zMzYzNDkxNzJcbiAgLS0jeyRwcmVmaXh9Zm9udC1zYW5zLXNlcmlmOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYpfTtcbiAgLS0jeyRwcmVmaXh9Zm9udC1tb25vc3BhY2U6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktbW9ub3NwYWNlKX07XG4gIC0tI3skcHJlZml4fWdyYWRpZW50OiAjeyRncmFkaWVudH07XG5cbiAgLy8gUm9vdCBhbmQgYm9keVxuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcm9vdC1ib2R5LXZhcmlhYmxlc1xuICBAaWYgJGZvbnQtc2l6ZS1yb290ICE9IG51bGwge1xuICAgIC0tI3skcHJlZml4fXJvb3QtZm9udC1zaXplOiAjeyRmb250LXNpemUtcm9vdH07XG4gIH1cbiAgLS0jeyRwcmVmaXh9Ym9keS1mb250LWZhbWlseTogI3tpbnNwZWN0KCRmb250LWZhbWlseS1iYXNlKX07XG4gIEBpbmNsdWRlIHJmcygkZm9udC1zaXplLWJhc2UsIC0tI3skcHJlZml4fWJvZHktZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9Ym9keS1mb250LXdlaWdodDogI3skZm9udC13ZWlnaHQtYmFzZX07XG4gIC0tI3skcHJlZml4fWJvZHktbGluZS1oZWlnaHQ6ICN7JGxpbmUtaGVpZ2h0LWJhc2V9O1xuICBAaWYgJGJvZHktdGV4dC1hbGlnbiAhPSBudWxsIHtcbiAgICAtLSN7JHByZWZpeH1ib2R5LXRleHQtYWxpZ246ICN7JGJvZHktdGV4dC1hbGlnbn07XG4gIH1cblxuICAtLSN7JHByZWZpeH1ib2R5LWNvbG9yOiAjeyRib2R5LWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Ym9keS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LWNvbG9yKX07XG4gIC0tI3skcHJlZml4fWJvZHktYmc6ICN7JGJvZHktYmd9O1xuICAtLSN7JHByZWZpeH1ib2R5LWJnLXJnYjogI3t0by1yZ2IoJGJvZHktYmcpfTtcblxuICAtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcjogI3skYm9keS1lbXBoYXNpcy1jb2xvcn07XG4gIC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktZW1waGFzaXMtY29sb3IpfTtcblxuICAtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3I6ICN7JGJvZHktc2Vjb25kYXJ5LWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktc2Vjb25kYXJ5LWNvbG9yKX07XG4gIC0tI3skcHJlZml4fXNlY29uZGFyeS1iZzogI3skYm9keS1zZWNvbmRhcnktYmd9O1xuICAtLSN7JHByZWZpeH1zZWNvbmRhcnktYmctcmdiOiAje3RvLXJnYigkYm9keS1zZWNvbmRhcnktYmcpfTtcblxuICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1jb2xvcjogI3skYm9keS10ZXJ0aWFyeS1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRlcnRpYXJ5LWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktdGVydGlhcnktY29sb3IpfTtcbiAgLS0jeyRwcmVmaXh9dGVydGlhcnktYmc6ICN7JGJvZHktdGVydGlhcnktYmd9O1xuICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZy1yZ2I6ICN7dG8tcmdiKCRib2R5LXRlcnRpYXJ5LWJnKX07XG4gIC8vIHNjc3MtZG9jcy1lbmQgcm9vdC1ib2R5LXZhcmlhYmxlc1xuXG4gIC0tI3skcHJlZml4fWhlYWRpbmctY29sb3I6ICN7JGhlYWRpbmdzLWNvbG9yfTtcblxuICAtLSN7JHByZWZpeH1saW5rLWNvbG9yOiAjeyRsaW5rLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGluay1jb2xvci1yZ2I6ICN7dG8tcmdiKCRsaW5rLWNvbG9yKX07XG4gIC0tI3skcHJlZml4fWxpbmstZGVjb3JhdGlvbjogI3skbGluay1kZWNvcmF0aW9ufTtcblxuICAtLSN7JHByZWZpeH1saW5rLWhvdmVyLWNvbG9yOiAjeyRsaW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvci1yZ2I6ICN7dG8tcmdiKCRsaW5rLWhvdmVyLWNvbG9yKX07XG5cbiAgQGlmICRsaW5rLWhvdmVyLWRlY29yYXRpb24gIT0gbnVsbCB7XG4gICAgLS0jeyRwcmVmaXh9bGluay1ob3Zlci1kZWNvcmF0aW9uOiAjeyRsaW5rLWhvdmVyLWRlY29yYXRpb259O1xuICB9XG5cbiAgLS0jeyRwcmVmaXh9Y29kZS1jb2xvcjogI3skY29kZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWhpZ2hsaWdodC1iZzogI3skbWFyay1iZ307XG5cbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHJvb3QtYm9yZGVyLXZhclxuICAtLSN7JHByZWZpeH1ib3JkZXItd2lkdGg6ICN7JGJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fWJvcmRlci1zdHlsZTogI3skYm9yZGVyLXN0eWxlfTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yOiAjeyRib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQ6ICN7JGJvcmRlci1jb2xvci10cmFuc2x1Y2VudH07XG5cbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1czogI3skYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtc206ICN7JGJvcmRlci1yYWRpdXMtc219O1xuICAtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnOiAjeyRib3JkZXItcmFkaXVzLWxnfTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy14bDogI3skYm9yZGVyLXJhZGl1cy14bH07XG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMteHhsOiAjeyRib3JkZXItcmFkaXVzLXh4bH07XG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtMnhsOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy14eGwpOyAvLyBEZXByZWNhdGVkIGluIHY1LjMuMCBmb3IgY29uc2lzdGVuY3lcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1waWxsOiAjeyRib3JkZXItcmFkaXVzLXBpbGx9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHJvb3QtYm9yZGVyLXZhclxuXG4gIC0tI3skcHJlZml4fWJveC1zaGFkb3c6ICN7JGJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1ib3gtc2hhZG93LXNtOiAjeyRib3gtc2hhZG93LXNtfTtcbiAgLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1sZzogI3skYm94LXNoYWRvdy1sZ307XG4gIC0tI3skcHJlZml4fWJveC1zaGFkb3ctaW5zZXQ6ICN7JGJveC1zaGFkb3ctaW5zZXR9O1xuXG4gIC8vIEZvY3VzIHN0eWxlc1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcm9vdC1mb2N1cy12YXJpYWJsZXNcbiAgLS0jeyRwcmVmaXh9Zm9jdXMtcmluZy13aWR0aDogI3skZm9jdXMtcmluZy13aWR0aH07XG4gIC0tI3skcHJlZml4fWZvY3VzLXJpbmctb3BhY2l0eTogI3skZm9jdXMtcmluZy1vcGFjaXR5fTtcbiAgLS0jeyRwcmVmaXh9Zm9jdXMtcmluZy1jb2xvcjogI3skZm9jdXMtcmluZy1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgcm9vdC1mb2N1cy12YXJpYWJsZXNcblxuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcm9vdC1mb3JtLXZhbGlkYXRpb24tdmFyaWFibGVzXG4gIC0tI3skcHJlZml4fWZvcm0tdmFsaWQtY29sb3I6ICN7JGZvcm0tdmFsaWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1mb3JtLXZhbGlkLWJvcmRlci1jb2xvcjogI3skZm9ybS12YWxpZC1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtY29sb3I6ICN7JGZvcm0taW52YWxpZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWZvcm0taW52YWxpZC1ib3JkZXItY29sb3I6ICN7JGZvcm0taW52YWxpZC1ib3JkZXItY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHJvb3QtZm9ybS12YWxpZGF0aW9uLXZhcmlhYmxlc1xufVxuXG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICBAaW5jbHVkZSBjb2xvci1tb2RlKGRhcmssIHRydWUpIHtcbiAgICBjb2xvci1zY2hlbWU6IGRhcms7XG5cbiAgICAvLyBzY3NzLWRvY3Mtc3RhcnQgcm9vdC1kYXJrLW1vZGUtdmFyc1xuICAgIC0tI3skcHJlZml4fWJvZHktY29sb3I6ICN7JGJvZHktY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9Ym9keS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LWNvbG9yLWRhcmspfTtcbiAgICAtLSN7JHByZWZpeH1ib2R5LWJnOiAjeyRib2R5LWJnLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWJvZHktYmctcmdiOiAje3RvLXJnYigkYm9keS1iZy1kYXJrKX07XG5cbiAgICAtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcjogI3skYm9keS1lbXBoYXNpcy1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LWVtcGhhc2lzLWNvbG9yLWRhcmspfTtcblxuICAgIC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcjogI3skYm9keS1zZWNvbmRhcnktY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktc2Vjb25kYXJ5LWNvbG9yLWRhcmspfTtcbiAgICAtLSN7JHByZWZpeH1zZWNvbmRhcnktYmc6ICN7JGJvZHktc2Vjb25kYXJ5LWJnLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fXNlY29uZGFyeS1iZy1yZ2I6ICN7dG8tcmdiKCRib2R5LXNlY29uZGFyeS1iZy1kYXJrKX07XG5cbiAgICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1jb2xvcjogI3skYm9keS10ZXJ0aWFyeS1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LXRlcnRpYXJ5LWNvbG9yLWRhcmspfTtcbiAgICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZzogI3skYm9keS10ZXJ0aWFyeS1iZy1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZy1yZ2I6ICN7dG8tcmdiKCRib2R5LXRlcnRpYXJ5LWJnLWRhcmspfTtcblxuICAgIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtdGV4dC1kYXJrIHtcbiAgICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfS10ZXh0LWVtcGhhc2lzOiAjeyR2YWx1ZX07XG4gICAgfVxuXG4gICAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy1iZy1zdWJ0bGUtZGFyayB7XG4gICAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn0tYmctc3VidGxlOiAjeyR2YWx1ZX07XG4gICAgfVxuXG4gICAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy1ib3JkZXItc3VidGxlLWRhcmsge1xuICAgICAgLS0jeyRwcmVmaXh9I3skY29sb3J9LWJvcmRlci1zdWJ0bGU6ICN7JHZhbHVlfTtcbiAgICB9XG5cbiAgICAtLSN7JHByZWZpeH1oZWFkaW5nLWNvbG9yOiAjeyRoZWFkaW5ncy1jb2xvci1kYXJrfTtcblxuICAgIC0tI3skcHJlZml4fWxpbmstY29sb3I6ICN7JGxpbmstY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcjogI3skbGluay1ob3Zlci1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1saW5rLWNvbG9yLXJnYjogI3t0by1yZ2IoJGxpbmstY29sb3ItZGFyayl9O1xuICAgIC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3ItcmdiOiAje3RvLXJnYigkbGluay1ob3Zlci1jb2xvci1kYXJrKX07XG5cbiAgICAtLSN7JHByZWZpeH1jb2RlLWNvbG9yOiAjeyRjb2RlLWNvbG9yLWRhcmt9O1xuXG4gICAgLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yOiAjeyRib3JkZXItY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50OiAjeyRib3JkZXItY29sb3ItdHJhbnNsdWNlbnQtZGFya307XG5cbiAgICAtLSN7JHByZWZpeH1mb3JtLXZhbGlkLWNvbG9yOiAjeyRmb3JtLXZhbGlkLWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWZvcm0tdmFsaWQtYm9yZGVyLWNvbG9yOiAjeyRmb3JtLXZhbGlkLWJvcmRlci1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtY29sb3I6ICN7JGZvcm0taW52YWxpZC1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yOiAjeyRmb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yLWRhcmt9O1xuICAgIC8vIHNjc3MtZG9jcy1lbmQgcm9vdC1kYXJrLW1vZGUtdmFyc1xuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzY3NzL2RpbWVuc2lvbi1uby1ub24tbnVtZXJpYy12YWx1ZXNcblxuLy8gU0NTUyBSRlMgbWl4aW5cbi8vXG4vLyBBdXRvbWF0ZWQgcmVzcG9uc2l2ZSB2YWx1ZXMgZm9yIGZvbnQgc2l6ZXMsIHBhZGRpbmdzLCBtYXJnaW5zIGFuZCBtdWNoIG1vcmVcbi8vXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9ibG9iL21haW4vTElDRU5TRSlcblxuLy8gQ29uZmlndXJhdGlvblxuXG4vLyBCYXNlIHZhbHVlXG4kcmZzLWJhc2UtdmFsdWU6IDEuMjVyZW0gIWRlZmF1bHQ7XG4kcmZzLXVuaXQ6IHJlbSAhZGVmYXVsdDtcblxuQGlmICRyZnMtdW5pdCAhPSByZW0gYW5kICRyZnMtdW5pdCAhPSBweCB7XG4gIEBlcnJvciBcImAjeyRyZnMtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtdW5pdC4gVXNlIGBweGAgb3IgYHJlbWAuXCI7XG59XG5cbi8vIEJyZWFrcG9pbnQgYXQgd2hlcmUgdmFsdWVzIHN0YXJ0IGRlY3JlYXNpbmcgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsZXJcbiRyZnMtYnJlYWtwb2ludDogMTIwMHB4ICFkZWZhdWx0O1xuJHJmcy1icmVha3BvaW50LXVuaXQ6IHB4ICFkZWZhdWx0O1xuXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gcHggYW5kICRyZnMtYnJlYWtwb2ludC11bml0ICE9IGVtIGFuZCAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSByZW0ge1xuICBAZXJyb3IgXCJgI3skcmZzLWJyZWFrcG9pbnQtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtYnJlYWtwb2ludC11bml0LiBVc2UgYHB4YCwgYGVtYCBvciBgcmVtYC5cIjtcbn1cblxuLy8gUmVzaXplIHZhbHVlcyBiYXNlZCBvbiBzY3JlZW4gaGVpZ2h0IGFuZCB3aWR0aFxuJHJmcy10d28tZGltZW5zaW9uYWw6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBGYWN0b3Igb2YgZGVjcmVhc2VcbiRyZnMtZmFjdG9yOiAxMCAhZGVmYXVsdDtcblxuQGlmIHR5cGUtb2YoJHJmcy1mYWN0b3IpICE9IG51bWJlciBvciAkcmZzLWZhY3RvciA8PSAxIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1mYWN0b3J9YCBpcyBub3QgYSB2YWxpZCAgJHJmcy1mYWN0b3IsIGl0IG11c3QgYmUgZ3JlYXRlciB0aGFuIDEuXCI7XG59XG5cbi8vIE1vZGUuIFBvc3NpYmlsaXRpZXM6IFwibWluLW1lZGlhLXF1ZXJ5XCIsIFwibWF4LW1lZGlhLXF1ZXJ5XCJcbiRyZnMtbW9kZTogbWluLW1lZGlhLXF1ZXJ5ICFkZWZhdWx0O1xuXG4vLyBHZW5lcmF0ZSBlbmFibGUgb3IgZGlzYWJsZSBjbGFzc2VzLiBQb3NzaWJpbGl0aWVzOiBmYWxzZSwgXCJlbmFibGVcIiBvciBcImRpc2FibGVcIlxuJHJmcy1jbGFzczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIDEgcmVtID0gJHJmcy1yZW0tdmFsdWUgcHhcbiRyZnMtcmVtLXZhbHVlOiAxNiAhZGVmYXVsdDtcblxuLy8gU2FmYXJpIGlmcmFtZSByZXNpemUgYnVnOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvaXNzdWVzLzE0XG4kcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXg6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBEaXNhYmxlIFJGUyBieSBzZXR0aW5nICRlbmFibGUtcmZzIHRvIGZhbHNlXG4kZW5hYmxlLXJmczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gQ2FjaGUgJHJmcy1iYXNlLXZhbHVlIHVuaXRcbiRyZnMtYmFzZS12YWx1ZS11bml0OiB1bml0KCRyZnMtYmFzZS12YWx1ZSk7XG5cbkBmdW5jdGlvbiBkaXZpZGUoJGRpdmlkZW5kLCAkZGl2aXNvciwgJHByZWNpc2lvbjogMTApIHtcbiAgJHNpZ246IGlmKCRkaXZpZGVuZCA+IDAgYW5kICRkaXZpc29yID4gMCBvciAkZGl2aWRlbmQgPCAwIGFuZCAkZGl2aXNvciA8IDAsIDEsIC0xKTtcbiAgJGRpdmlkZW5kOiBhYnMoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3I6IGFicygkZGl2aXNvcik7XG4gIEBpZiAkZGl2aWRlbmQgPT0gMCB7XG4gICAgQHJldHVybiAwO1xuICB9XG4gIEBpZiAkZGl2aXNvciA9PSAwIHtcbiAgICBAZXJyb3IgXCJDYW5ub3QgZGl2aWRlIGJ5IDBcIjtcbiAgfVxuICAkcmVtYWluZGVyOiAkZGl2aWRlbmQ7XG4gICRyZXN1bHQ6IDA7XG4gICRmYWN0b3I6IDEwO1xuICBAd2hpbGUgKCRyZW1haW5kZXIgPiAwIGFuZCAkcHJlY2lzaW9uID49IDApIHtcbiAgICAkcXVvdGllbnQ6IDA7XG4gICAgQHdoaWxlICgkcmVtYWluZGVyID49ICRkaXZpc29yKSB7XG4gICAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyIC0gJGRpdmlzb3I7XG4gICAgICAkcXVvdGllbnQ6ICRxdW90aWVudCArIDE7XG4gICAgfVxuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArICRxdW90aWVudDtcbiAgICAkZmFjdG9yOiAkZmFjdG9yICogLjE7XG4gICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAqIDEwO1xuICAgICRwcmVjaXNpb246ICRwcmVjaXNpb24gLSAxO1xuICAgIEBpZiAoJHByZWNpc2lvbiA8IDAgYW5kICRyZW1haW5kZXIgPj0gJGRpdmlzb3IgKiA1KSB7XG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICsgMTtcbiAgICB9XG4gIH1cbiAgJHJlc3VsdDogJHJlc3VsdCAqICRmYWN0b3IgKiAkc2lnbjtcbiAgJGRpdmlkZW5kLXVuaXQ6IHVuaXQoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3ItdW5pdDogdW5pdCgkZGl2aXNvcik7XG4gICR1bml0LW1hcDogKFxuICAgIFwicHhcIjogMXB4LFxuICAgIFwicmVtXCI6IDFyZW0sXG4gICAgXCJlbVwiOiAxZW0sXG4gICAgXCIlXCI6IDElXG4gICk7XG4gIEBpZiAoJGRpdmlkZW5kLXVuaXQgIT0gJGRpdmlzb3ItdW5pdCBhbmQgbWFwLWhhcy1rZXkoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCkpIHtcbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogbWFwLWdldCgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KTtcbiAgfVxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbi8vIFJlbW92ZSBweC11bml0IGZyb20gJHJmcy1iYXNlLXZhbHVlIGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJhc2UtdmFsdWUtdW5pdCA9PSBweCB7XG4gICRyZnMtYmFzZS12YWx1ZTogZGl2aWRlKCRyZnMtYmFzZS12YWx1ZSwgJHJmcy1iYXNlLXZhbHVlICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1iYXNlLXZhbHVlLXVuaXQgPT0gcmVtIHtcbiAgJHJmcy1iYXNlLXZhbHVlOiBkaXZpZGUoJHJmcy1iYXNlLXZhbHVlLCBkaXZpZGUoJHJmcy1iYXNlLXZhbHVlICogMCArIDEsICRyZnMtcmVtLXZhbHVlKSk7XG59XG5cbi8vIENhY2hlICRyZnMtYnJlYWtwb2ludCB1bml0IHRvIHByZXZlbnQgbXVsdGlwbGUgY2FsbHNcbiRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlOiB1bml0KCRyZnMtYnJlYWtwb2ludCk7XG5cbi8vIFJlbW92ZSB1bml0IGZyb20gJHJmcy1icmVha3BvaW50IGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBweCB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1icmVha3BvaW50ICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gcmVtIG9yICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwiZW1cIiB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgZGl2aWRlKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxLCAkcmZzLXJlbS12YWx1ZSkpO1xufVxuXG4vLyBDYWxjdWxhdGUgdGhlIG1lZGlhIHF1ZXJ5IHZhbHVlXG4kcmZzLW1xLXZhbHVlOiBpZigkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSBweCwgI3skcmZzLWJyZWFrcG9pbnR9cHgsICN7ZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1yZW0tdmFsdWUpfSN7JHJmcy1icmVha3BvaW50LXVuaXR9KTtcbiRyZnMtbXEtcHJvcGVydHktd2lkdGg6IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksIG1heC13aWR0aCwgbWluLXdpZHRoKTtcbiRyZnMtbXEtcHJvcGVydHktaGVpZ2h0OiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCBtYXgtaGVpZ2h0LCBtaW4taGVpZ2h0KTtcblxuLy8gSW50ZXJuYWwgbWl4aW4gdXNlZCB0byBkZXRlcm1pbmUgd2hpY2ggbWVkaWEgcXVlcnkgbmVlZHMgdG8gYmUgdXNlZFxuQG1peGluIF9yZnMtbWVkaWEtcXVlcnkge1xuICBAaWYgJHJmcy10d28tZGltZW5zaW9uYWwge1xuICAgIEBpZiAkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5IHtcbiAgICAgIEBtZWRpYSAoI3skcmZzLW1xLXByb3BlcnR5LXdpZHRofTogI3skcmZzLW1xLXZhbHVlfSksICgjeyRyZnMtbXEtcHJvcGVydHktaGVpZ2h0fTogI3skcmZzLW1xLXZhbHVlfSkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSBhbmQgKCN7JHJmcy1tcS1wcm9wZXJ0eS1oZWlnaHR9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gSW50ZXJuYWwgbWl4aW4gdGhhdCBhZGRzIGRpc2FibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtcnVsZSB7XG4gIEBpZiAkcmZzLWNsYXNzID09IGRpc2FibGUgYW5kICRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnkge1xuICAgIC8vIEFkZGluZyBhbiBleHRyYSBjbGFzcyBpbmNyZWFzZXMgc3BlY2lmaWNpdHksIHdoaWNoIHByZXZlbnRzIHRoZSBtZWRpYSBxdWVyeSB0byBvdmVycmlkZSB0aGUgcHJvcGVydHlcbiAgICAmLFxuICAgIC5kaXNhYmxlLXJmcyAmLFxuICAgICYuZGlzYWJsZS1yZnMge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRyZnMtY2xhc3MgPT0gZW5hYmxlIGFuZCAkcmZzLW1vZGUgPT0gbWluLW1lZGlhLXF1ZXJ5IHtcbiAgICAuZW5hYmxlLXJmcyAmLFxuICAgICYuZW5hYmxlLXJmcyB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIEludGVybmFsIG1peGluIHRoYXQgYWRkcyBlbmFibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtbWVkaWEtcXVlcnktcnVsZSB7XG5cbiAgQGlmICRyZnMtY2xhc3MgPT0gZW5hYmxlIHtcbiAgICBAaWYgJHJmcy1tb2RlID09IG1pbi1tZWRpYS1xdWVyeSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBfcmZzLW1lZGlhLXF1ZXJ5ICgpIHtcbiAgICAgIC5lbmFibGUtcmZzICYsXG4gICAgICAmLmVuYWJsZS1yZnMge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpZiAkcmZzLWNsYXNzID09IGRpc2FibGUgYW5kICRyZnMtbW9kZSA9PSBtaW4tbWVkaWEtcXVlcnkge1xuICAgICAgLmRpc2FibGUtcmZzICYsXG4gICAgICAmLmRpc2FibGUtcmZzIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnkgKCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byBnZXQgdGhlIGZvcm1hdHRlZCBub24tcmVzcG9uc2l2ZSB2YWx1ZVxuQGZ1bmN0aW9uIHJmcy12YWx1ZSgkdmFsdWVzKSB7XG4gIC8vIENvbnZlcnQgdG8gbGlzdFxuICAkdmFsdWVzOiBpZih0eXBlLW9mKCR2YWx1ZXMpICE9IGxpc3QsICgkdmFsdWVzLCksICR2YWx1ZXMpO1xuXG4gICR2YWw6IFwiXCI7XG5cbiAgLy8gTG9vcCBvdmVyIGVhY2ggdmFsdWUgYW5kIGNhbGN1bGF0ZSB2YWx1ZVxuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgQGlmICR2YWx1ZSA9PSAwIHtcbiAgICAgICR2YWw6ICR2YWwgKyBcIiAwXCI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIENhY2hlICR2YWx1ZSB1bml0XG4gICAgICAkdW5pdDogaWYodHlwZS1vZigkdmFsdWUpID09IFwibnVtYmVyXCIsIHVuaXQoJHZhbHVlKSwgZmFsc2UpO1xuXG4gICAgICBAaWYgJHVuaXQgPT0gcHgge1xuICAgICAgICAvLyBDb252ZXJ0IHRvIHJlbSBpZiBuZWVkZWRcbiAgICAgICAgJHZhbDogJHZhbCArIFwiIFwiICsgaWYoJHJmcy11bml0ID09IHJlbSwgI3tkaXZpZGUoJHZhbHVlLCAkdmFsdWUgKiAwICsgJHJmcy1yZW0tdmFsdWUpfXJlbSwgJHZhbHVlKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICR1bml0ID09IHJlbSB7XG4gICAgICAgIC8vIENvbnZlcnQgdG8gcHggaWYgbmVlZGVkXG4gICAgICAgICR2YWw6ICR2YWwgKyBcIiBcIiArIGlmKCRyZnMtdW5pdCA9PSBweCwgI3tkaXZpZGUoJHZhbHVlLCAkdmFsdWUgKiAwICsgMSkgKiAkcmZzLXJlbS12YWx1ZX1weCwgJHZhbHVlKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBJZiAkdmFsdWUgaXNuJ3QgYSBudW1iZXIgKGxpa2UgaW5oZXJpdCkgb3IgJHZhbHVlIGhhcyBhIHVuaXQgKG5vdCBweCBvciByZW0sIGxpa2UgMS41ZW0pIG9yICQgaXMgMCwganVzdCBwcmludCB0aGUgdmFsdWVcbiAgICAgICAgJHZhbDogJHZhbCArIFwiIFwiICsgJHZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlbW92ZSBmaXJzdCBzcGFjZVxuICBAcmV0dXJuIHVucXVvdGUoc3RyLXNsaWNlKCR2YWwsIDIpKTtcbn1cblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIGdldCB0aGUgcmVzcG9uc2l2ZSB2YWx1ZSBjYWxjdWxhdGVkIGJ5IFJGU1xuQGZ1bmN0aW9uIHJmcy1mbHVpZC12YWx1ZSgkdmFsdWVzKSB7XG4gIC8vIENvbnZlcnQgdG8gbGlzdFxuICAkdmFsdWVzOiBpZih0eXBlLW9mKCR2YWx1ZXMpICE9IGxpc3QsICgkdmFsdWVzLCksICR2YWx1ZXMpO1xuXG4gICR2YWw6IFwiXCI7XG5cbiAgLy8gTG9vcCBvdmVyIGVhY2ggdmFsdWUgYW5kIGNhbGN1bGF0ZSB2YWx1ZVxuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgQGlmICR2YWx1ZSA9PSAwIHtcbiAgICAgICR2YWw6ICR2YWwgKyBcIiAwXCI7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBDYWNoZSAkdmFsdWUgdW5pdFxuICAgICAgJHVuaXQ6IGlmKHR5cGUtb2YoJHZhbHVlKSA9PSBcIm51bWJlclwiLCB1bml0KCR2YWx1ZSksIGZhbHNlKTtcblxuICAgICAgLy8gSWYgJHZhbHVlIGlzbid0IGEgbnVtYmVyIChsaWtlIGluaGVyaXQpIG9yICR2YWx1ZSBoYXMgYSB1bml0IChub3QgcHggb3IgcmVtLCBsaWtlIDEuNWVtKSBvciAkIGlzIDAsIGp1c3QgcHJpbnQgdGhlIHZhbHVlXG4gICAgICBAaWYgbm90ICR1bml0IG9yICR1bml0ICE9IHB4IGFuZCAkdW5pdCAhPSByZW0ge1xuICAgICAgICAkdmFsOiAkdmFsICsgXCIgXCIgKyAkdmFsdWU7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gUmVtb3ZlIHVuaXQgZnJvbSAkdmFsdWUgZm9yIGNhbGN1bGF0aW9uc1xuICAgICAgICAkdmFsdWU6IGRpdmlkZSgkdmFsdWUsICR2YWx1ZSAqIDAgKyBpZigkdW5pdCA9PSBweCwgMSwgZGl2aWRlKDEsICRyZnMtcmVtLXZhbHVlKSkpO1xuXG4gICAgICAgIC8vIE9ubHkgYWRkIHRoZSBtZWRpYSBxdWVyeSBpZiB0aGUgdmFsdWUgaXMgZ3JlYXRlciB0aGFuIHRoZSBtaW5pbXVtIHZhbHVlXG4gICAgICAgIEBpZiBhYnMoJHZhbHVlKSA8PSAkcmZzLWJhc2UtdmFsdWUgb3Igbm90ICRlbmFibGUtcmZzIHtcbiAgICAgICAgICAkdmFsOiAkdmFsICsgXCIgXCIgKyBpZigkcmZzLXVuaXQgPT0gcmVtLCAje2RpdmlkZSgkdmFsdWUsICRyZnMtcmVtLXZhbHVlKX1yZW0sICN7JHZhbHVlfXB4KTtcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgLy8gQ2FsY3VsYXRlIHRoZSBtaW5pbXVtIHZhbHVlXG4gICAgICAgICAgJHZhbHVlLW1pbjogJHJmcy1iYXNlLXZhbHVlICsgZGl2aWRlKGFicygkdmFsdWUpIC0gJHJmcy1iYXNlLXZhbHVlLCAkcmZzLWZhY3Rvcik7XG5cbiAgICAgICAgICAvLyBDYWxjdWxhdGUgZGlmZmVyZW5jZSBiZXR3ZWVuICR2YWx1ZSBhbmQgdGhlIG1pbmltdW0gdmFsdWVcbiAgICAgICAgICAkdmFsdWUtZGlmZjogYWJzKCR2YWx1ZSkgLSAkdmFsdWUtbWluO1xuXG4gICAgICAgICAgLy8gQmFzZSB2YWx1ZSBmb3JtYXR0aW5nXG4gICAgICAgICAgJG1pbi13aWR0aDogaWYoJHJmcy11bml0ID09IHJlbSwgI3tkaXZpZGUoJHZhbHVlLW1pbiwgJHJmcy1yZW0tdmFsdWUpfXJlbSwgI3skdmFsdWUtbWlufXB4KTtcblxuICAgICAgICAgIC8vIFVzZSBuZWdhdGl2ZSB2YWx1ZSBpZiBuZWVkZWRcbiAgICAgICAgICAkbWluLXdpZHRoOiBpZigkdmFsdWUgPCAwLCAtJG1pbi13aWR0aCwgJG1pbi13aWR0aCk7XG5cbiAgICAgICAgICAvLyBVc2UgYHZtaW5gIGlmIHR3by1kaW1lbnNpb25hbCBpcyBlbmFibGVkXG4gICAgICAgICAgJHZhcmlhYmxlLXVuaXQ6IGlmKCRyZnMtdHdvLWRpbWVuc2lvbmFsLCB2bWluLCB2dyk7XG5cbiAgICAgICAgICAvLyBDYWxjdWxhdGUgdGhlIHZhcmlhYmxlIHdpZHRoIGJldHdlZW4gMCBhbmQgJHJmcy1icmVha3BvaW50XG4gICAgICAgICAgJHZhcmlhYmxlLXdpZHRoOiAje2RpdmlkZSgkdmFsdWUtZGlmZiAqIDEwMCwgJHJmcy1icmVha3BvaW50KX0jeyR2YXJpYWJsZS11bml0fTtcblxuICAgICAgICAgIC8vIFJldHVybiB0aGUgY2FsY3VsYXRlZCB2YWx1ZVxuICAgICAgICAgICR2YWw6ICR2YWwgKyBcIiBjYWxjKFwiICsgJG1pbi13aWR0aCArIGlmKCR2YWx1ZSA8IDAsIFwiIC0gXCIsIFwiICsgXCIpICsgJHZhcmlhYmxlLXdpZHRoICsgXCIpXCI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBSZW1vdmUgZmlyc3Qgc3BhY2VcbiAgQHJldHVybiB1bnF1b3RlKHN0ci1zbGljZSgkdmFsLCAyKSk7XG59XG5cbi8vIFJGUyBtaXhpblxuQG1peGluIHJmcygkdmFsdWVzLCAkcHJvcGVydHk6IGZvbnQtc2l6ZSkge1xuICBAaWYgJHZhbHVlcyAhPSBudWxsIHtcbiAgICAkdmFsOiByZnMtdmFsdWUoJHZhbHVlcyk7XG4gICAgJGZsdWlkLXZhbDogcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZXMpO1xuXG4gICAgLy8gRG8gbm90IHByaW50IHRoZSBtZWRpYSBxdWVyeSBpZiByZXNwb25zaXZlICYgbm9uLXJlc3BvbnNpdmUgdmFsdWVzIGFyZSB0aGUgc2FtZVxuICAgIEBpZiAkdmFsID09ICRmbHVpZC12YWwge1xuICAgICAgI3skcHJvcGVydHl9OiAkdmFsO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBfcmZzLXJ1bGUgKCkge1xuICAgICAgICAjeyRwcm9wZXJ0eX06IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksICR2YWwsICRmbHVpZC12YWwpO1xuXG4gICAgICAgIC8vIEluY2x1ZGUgc2FmYXJpIGlmcmFtZSByZXNpemUgZml4IGlmIG5lZWRlZFxuICAgICAgICBtaW4td2lkdGg6IGlmKCRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeCwgKDAgKiAxdncpLCBudWxsKTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgX3Jmcy1tZWRpYS1xdWVyeS1ydWxlICgpIHtcbiAgICAgICAgI3skcHJvcGVydHl9OiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCAkZmx1aWQtdmFsLCAkdmFsKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gU2hvcnRoYW5kIGhlbHBlciBtaXhpbnNcbkBtaXhpbiBmb250LXNpemUoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUpO1xufVxuXG5AbWl4aW4gcGFkZGluZygkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZyk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLXRvcCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy10b3ApO1xufVxuXG5AbWl4aW4gcGFkZGluZy1yaWdodCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1yaWdodCk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLWJvdHRvbSgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1ib3R0b20pO1xufVxuXG5AbWl4aW4gcGFkZGluZy1sZWZ0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nLWxlZnQpO1xufVxuXG5AbWl4aW4gbWFyZ2luKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4pO1xufVxuXG5AbWl4aW4gbWFyZ2luLXRvcCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luLXRvcCk7XG59XG5cbkBtaXhpbiBtYXJnaW4tcmlnaHQoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbi1yaWdodCk7XG59XG5cbkBtaXhpbiBtYXJnaW4tYm90dG9tKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tYm90dG9tKTtcbn1cblxuQG1peGluIG1hcmdpbi1sZWZ0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tbGVmdCk7XG59XG4iLCIvLyBzY3NzLWRvY3Mtc3RhcnQgY29sb3ItbW9kZS1taXhpblxuQG1peGluIGNvbG9yLW1vZGUoJG1vZGU6IGxpZ2h0LCAkcm9vdDogZmFsc2UpIHtcbiAgQGlmICRjb2xvci1tb2RlLXR5cGUgPT0gXCJtZWRpYS1xdWVyeVwiIHtcbiAgICBAaWYgJHJvb3QgPT0gdHJ1ZSB7XG4gICAgICBAbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiAkbW9kZSkge1xuICAgICAgICA6cm9vdCB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6ICRtb2RlKSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgW2RhdGEtYnMtdGhlbWU9XCIjeyRtb2RlfVwiXSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgY29sb3ItbW9kZS1taXhpblxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGUsIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXhcblxuXG4vLyBSZWJvb3Rcbi8vXG4vLyBOb3JtYWxpemF0aW9uIG9mIEhUTUwgZWxlbWVudHMsIG1hbnVhbGx5IGZvcmtlZCBmcm9tIE5vcm1hbGl6ZS5jc3MgdG8gcmVtb3ZlXG4vLyBzdHlsZXMgdGFyZ2V0aW5nIGlycmVsZXZhbnQgYnJvd3NlcnMgd2hpbGUgYXBwbHlpbmcgbmV3IHN0eWxlcy5cbi8vXG4vLyBOb3JtYWxpemUgaXMgbGljZW5zZWQgTUlULiBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzXG5cblxuLy8gRG9jdW1lbnRcbi8vXG4vLyBDaGFuZ2UgZnJvbSBgYm94LXNpemluZzogY29udGVudC1ib3hgIHNvIHRoYXQgYHdpZHRoYCBpcyBub3QgYWZmZWN0ZWQgYnkgYHBhZGRpbmdgIG9yIGBib3JkZXJgLlxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5cbi8vIFJvb3Rcbi8vXG4vLyBBYmlsaXR5IHRvIHRoZSB2YWx1ZSBvZiB0aGUgcm9vdCBmb250IHNpemVzLCBhZmZlY3RpbmcgdGhlIHZhbHVlIG9mIGByZW1gLlxuLy8gbnVsbCBieSBkZWZhdWx0LCB0aHVzIG5vdGhpbmcgaXMgZ2VuZXJhdGVkLlxuXG46cm9vdCB7XG4gIEBpZiAkZm9udC1zaXplLXJvb3QgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1yb290LWZvbnQtc2l6ZSkpO1xuICB9XG5cbiAgQGlmICRlbmFibGUtc21vb3RoLXNjcm9sbCB7XG4gICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiBuby1wcmVmZXJlbmNlKSB7XG4gICAgICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBCb2R5XG4vL1xuLy8gMS4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuLy8gMi4gQXMgYSBiZXN0IHByYWN0aWNlLCBhcHBseSBhIGRlZmF1bHQgYGJhY2tncm91bmQtY29sb3JgLlxuLy8gMy4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4vLyA0LiBDaGFuZ2UgdGhlIGRlZmF1bHQgdGFwIGhpZ2hsaWdodCB0byBiZSBjb21wbGV0ZWx5IHRyYW5zcGFyZW50IGluIGlPUy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHJlYm9vdC1ib2R5LXJ1bGVzXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyAvLyAxXG4gIGZvbnQtZmFtaWx5OiB2YXIoLS0jeyRwcmVmaXh9Ym9keS1mb250LWZhbWlseSk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1mb250LXNpemUpKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1ib2R5LWZvbnQtd2VpZ2h0KTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogdmFyKC0tI3skcHJlZml4fWJvZHktdGV4dC1hbGlnbik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKTsgLy8gMlxuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDNcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKCRibGFjaywgMCk7IC8vIDRcbn1cbi8vIHNjc3MtZG9jcy1lbmQgcmVib290LWJvZHktcnVsZXNcblxuXG4vLyBDb250ZW50IGdyb3VwaW5nXG4vL1xuLy8gMS4gUmVzZXQgRmlyZWZveCdzIGdyYXkgY29sb3JcblxuaHIge1xuICBtYXJnaW46ICRoci1tYXJnaW4teSAwO1xuICBjb2xvcjogJGhyLWNvbG9yOyAvLyAxXG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogJGhyLWJvcmRlci13aWR0aCBzb2xpZCAkaHItYm9yZGVyLWNvbG9yO1xuICBvcGFjaXR5OiAkaHItb3BhY2l0eTtcbn1cblxuXG4vLyBUeXBvZ3JhcGh5XG4vL1xuLy8gMS4gUmVtb3ZlIHRvcCBtYXJnaW5zIGZyb20gaGVhZGluZ3Ncbi8vICAgIEJ5IGRlZmF1bHQsIGA8aDE+YC1gPGg2PmAgYWxsIHJlY2VpdmUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gV2UgbnVrZSB0aGUgdG9wXG4vLyAgICBtYXJnaW4gZm9yIGVhc2llciBjb250cm9sIHdpdGhpbiB0eXBlIHNjYWxlcyBhcyBpdCBhdm9pZHMgbWFyZ2luIGNvbGxhcHNpbmcuXG5cbiVoZWFkaW5nIHtcbiAgbWFyZ2luLXRvcDogMDsgLy8gMVxuICBtYXJnaW4tYm90dG9tOiAkaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTtcbiAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgZm9udC1zdHlsZTogJGhlYWRpbmdzLWZvbnQtc3R5bGU7XG4gIGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9aGVhZGluZy1jb2xvcik7XG59XG5cbmgxIHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoMS1mb250LXNpemUpO1xufVxuXG5oMiB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDItZm9udC1zaXplKTtcbn1cblxuaDMge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGgzLWZvbnQtc2l6ZSk7XG59XG5cbmg0IHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoNC1mb250LXNpemUpO1xufVxuXG5oNSB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDUtZm9udC1zaXplKTtcbn1cblxuaDYge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGg2LWZvbnQtc2l6ZSk7XG59XG5cblxuLy8gUmVzZXQgbWFyZ2lucyBvbiBwYXJhZ3JhcGhzXG4vL1xuLy8gU2ltaWxhcmx5LCB0aGUgdG9wIG1hcmdpbiBvbiBgPHA+YHMgZ2V0IHJlc2V0LiBIb3dldmVyLCB3ZSBhbHNvIHJlc2V0IHRoZVxuLy8gYm90dG9tIG1hcmdpbiB0byB1c2UgYHJlbWAgdW5pdHMgaW5zdGVhZCBvZiBgZW1gLlxuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xufVxuXG5cbi8vIEFiYnJldmlhdGlvbnNcbi8vXG4vLyAxLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4vLyAyLiBBZGQgZXhwbGljaXQgY3Vyc29yIHRvIGluZGljYXRlIGNoYW5nZWQgYmVoYXZpb3IuXG4vLyAzLiBQcmV2ZW50IHRoZSB0ZXh0LWRlY29yYXRpb24gdG8gYmUgc2tpcHBlZC5cblxuYWJiclt0aXRsZV0ge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDFcbiAgY3Vyc29yOiBoZWxwOyAvLyAyXG4gIHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogbm9uZTsgLy8gM1xufVxuXG5cbi8vIEFkZHJlc3NcblxuYWRkcmVzcyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cblxuLy8gTGlzdHNcblxub2wsXG51bCB7XG4gIHBhZGRpbmctbGVmdDogMnJlbTtcbn1cblxub2wsXG51bCxcbmRsIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxub2wgb2wsXG51bCB1bCxcbm9sIHVsLFxudWwgb2wge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5kdCB7XG4gIGZvbnQtd2VpZ2h0OiAkZHQtZm9udC13ZWlnaHQ7XG59XG5cbi8vIDEuIFVuZG8gYnJvd3NlciBkZWZhdWx0XG5cbmRkIHtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwOyAvLyAxXG59XG5cblxuLy8gQmxvY2txdW90ZVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuXG4vLyBTdHJvbmdcbi8vXG4vLyBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlcjtcbn1cblxuXG4vLyBTbWFsbFxuLy9cbi8vIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzXG5cbnNtYWxsIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRzbWFsbC1mb250LXNpemUpO1xufVxuXG5cbi8vIE1hcmtcblxubWFyayB7XG4gIHBhZGRpbmc6ICRtYXJrLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1oaWdobGlnaHQtYmcpO1xufVxuXG5cbi8vIFN1YiBhbmQgU3VwXG4vL1xuLy8gUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4vLyBhbGwgYnJvd3NlcnMuXG5cbnN1YixcbnN1cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRzdWItc3VwLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7IGJvdHRvbTogLS4yNWVtOyB9XG5zdXAgeyB0b3A6IC0uNWVtOyB9XG5cblxuLy8gTGlua3NcblxuYSB7XG4gIGNvbG9yOiByZ2JhKHZhcigtLSN7JHByZWZpeH1saW5rLWNvbG9yLXJnYiksIHZhcigtLSN7JHByZWZpeH1saW5rLW9wYWNpdHksIDEpKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuXG4gICY6aG92ZXIge1xuICAgIC0tI3skcHJlZml4fWxpbmstY29sb3ItcmdiOiB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvci1yZ2IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxufVxuXG4vLyBBbmQgdW5kbyB0aGVzZSBzdHlsZXMgZm9yIHBsYWNlaG9sZGVyIGxpbmtzL25hbWVkIGFuY2hvcnMgKHdpdGhvdXQgaHJlZikuXG4vLyBJdCB3b3VsZCBiZSBtb3JlIHN0cmFpZ2h0Zm9yd2FyZCB0byBqdXN0IHVzZSBhW2hyZWZdIGluIHByZXZpb3VzIGJsb2NrLCBidXQgdGhhdFxuLy8gY2F1c2VzIHNwZWNpZmljaXR5IGlzc3VlcyBpbiBtYW55IG90aGVyIHN0eWxlcyB0aGF0IGFyZSB0b28gY29tcGxleCB0byBmaXguXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTQwMlxuXG5hOm5vdChbaHJlZl0pOm5vdChbY2xhc3NdKSB7XG4gICYsXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG5cbi8vIENvZGVcblxucHJlLFxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWNvZGU7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgxZW0pOyAvLyBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG59XG5cbi8vIDEuIFJlbW92ZSBicm93c2VyIGRlZmF1bHQgdG9wIG1hcmdpblxuLy8gMi4gUmVzZXQgYnJvd3NlciBkZWZhdWx0IG9mIGAxZW1gIHRvIHVzZSBgcmVtYHNcbi8vIDMuIERvbid0IGFsbG93IGNvbnRlbnQgdG8gYnJlYWsgb3V0c2lkZVxuXG5wcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMDsgLy8gMVxuICBtYXJnaW4tYm90dG9tOiAxcmVtOyAvLyAyXG4gIG92ZXJmbG93OiBhdXRvOyAvLyAzXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogJHByZS1jb2xvcjtcblxuICAvLyBBY2NvdW50IGZvciBzb21lIGNvZGUgb3V0cHV0cyB0aGF0IHBsYWNlIGNvZGUgdGFncyBpbiBwcmUgdGFnc1xuICBjb2RlIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgd29yZC1icmVhazogbm9ybWFsO1xuICB9XG59XG5cbmNvZGUge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNvZGUtZm9udC1zaXplKTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1jb2RlLWNvbG9yKTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuXG4gIC8vIFN0cmVhbWxpbmUgdGhlIHN0eWxlIHdoZW4gaW5zaWRlIGFuY2hvcnMgdG8gYXZvaWQgYnJva2VuIHVuZGVybGluZSBhbmQgbW9yZVxuICBhID4gJiB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxua2JkIHtcbiAgcGFkZGluZzogJGtiZC1wYWRkaW5nLXkgJGtiZC1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgka2JkLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAka2JkLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAka2JkLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLXNtKTtcblxuICBrYmQge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKDFlbSk7XG4gICAgZm9udC13ZWlnaHQ6ICRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0O1xuICB9XG59XG5cblxuLy8gRmlndXJlc1xuLy9cbi8vIEFwcGx5IGEgY29uc2lzdGVudCBtYXJnaW4gc3RyYXRlZ3kgKG1hdGNoZXMgb3VyIHR5cGUgc3R5bGVzKS5cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuXG4vLyBJbWFnZXMgYW5kIGNvbnRlbnRcblxuaW1nLFxuc3ZnIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuXG4vLyBUYWJsZXNcbi8vXG4vLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzXG5cbnRhYmxlIHtcbiAgY2FwdGlvbi1zaWRlOiBib3R0b207XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG59XG5cbmNhcHRpb24ge1xuICBwYWRkaW5nLXRvcDogJHRhYmxlLWNlbGwtcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJHRhYmxlLWNlbGwtcGFkZGluZy15O1xuICBjb2xvcjogJHRhYmxlLWNhcHRpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi8vIDEuIFJlbW92ZXMgZm9udC13ZWlnaHQgYm9sZCBieSBpbmhlcml0aW5nXG4vLyAyLiBNYXRjaGVzIGRlZmF1bHQgYDx0ZD5gIGFsaWdubWVudCBieSBpbmhlcml0aW5nIGB0ZXh0LWFsaWduYC5cbi8vIDMuIEZpeCBhbGlnbm1lbnQgZm9yIFNhZmFyaVxuXG50aCB7XG4gIGZvbnQtd2VpZ2h0OiAkdGFibGUtdGgtZm9udC13ZWlnaHQ7IC8vIDFcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gMlxuICB0ZXh0LWFsaWduOiAtd2Via2l0LW1hdGNoLXBhcmVudDsgLy8gM1xufVxuXG50aGVhZCxcbnRib2R5LFxudGZvb3QsXG50cixcbnRkLFxudGgge1xuICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMDtcbn1cblxuXG4vLyBGb3Jtc1xuLy9cbi8vIDEuIEFsbG93IGxhYmVscyB0byB1c2UgYG1hcmdpbmAgZm9yIHNwYWNpbmcuXG5cbmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyAxXG59XG5cbi8vIFJlbW92ZSB0aGUgZGVmYXVsdCBgYm9yZGVyLXJhZGl1c2AgdGhhdCBtYWNPUyBDaHJvbWUgYWRkcy5cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0MDkzXG5cbmJ1dHRvbiB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLy8gRXhwbGljaXRseSByZW1vdmUgZm9jdXMgb3V0bGluZSBpbiBDaHJvbWl1bSB3aGVuIGl0IHNob3VsZG4ndCBiZVxuLy8gdmlzaWJsZSAoZS5nLiBhcyByZXN1bHQgb2YgbW91c2UgY2xpY2sgb3IgdG91Y2ggdGFwKS4gSXQgYWxyZWFkeVxuLy8gc2hvdWxkIGJlIGRvaW5nIHRoaXMgYXV0b21hdGljYWxseSwgYnV0IHNlZW1zIHRvIGN1cnJlbnRseSBiZVxuLy8gY29uZnVzZWQgYW5kIGFwcGxpZXMgaXRzIHZlcnkgdmlzaWJsZSB0d28tdG9uZSBvdXRsaW5lIGFueXdheS5cblxuYnV0dG9uOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xuICBvdXRsaW5lOiAwO1xufVxuXG4vLyAxLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmlcblxuaW5wdXQsXG5idXR0b24sXG5zZWxlY3QsXG5vcHRncm91cCxcbnRleHRhcmVhIHtcbiAgbWFyZ2luOiAwOyAvLyAxXG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG4vLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3hcbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuLy8gU2V0IHRoZSBjdXJzb3IgZm9yIG5vbi1gPGJ1dHRvbj5gIGJ1dHRvbnNcbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzMwNTYyXG5bcm9sZT1cImJ1dHRvblwiXSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuc2VsZWN0IHtcbiAgLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB3b3JkLXdyYXAgaW4gU2FmYXJpLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDk5MFxuICB3b3JkLXdyYXA6IG5vcm1hbDtcblxuICAvLyBVbmRvIHRoZSBvcGFjaXR5IGNoYW5nZSBmcm9tIENocm9tZVxuICAmOmRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi8vIFJlbW92ZSB0aGUgZHJvcGRvd24gYXJyb3cgb25seSBmcm9tIHRleHQgdHlwZSBpbnB1dHMgYnVpbHQgd2l0aCBkYXRhbGlzdHMgaW4gQ2hyb21lLlxuLy8gU2VlIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vYS81NDk5NzExOFxuXG5bbGlzdF06bm90KFt0eXBlPVwiZGF0ZVwiXSk6bm90KFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0pOm5vdChbdHlwZT1cIm1vbnRoXCJdKTpub3QoW3R5cGU9XCJ3ZWVrXCJdKTpub3QoW3R5cGU9XCJ0aW1lXCJdKTo6LXdlYmtpdC1jYWxlbmRhci1waWNrZXItaW5kaWNhdG9yIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vLyAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2Bcbi8vICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbi8vIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4vLyAzLiBPcGluaW9uYXRlZDogYWRkIFwiaGFuZFwiIGN1cnNvciB0byBub24tZGlzYWJsZWQgYnV0dG9uIGVsZW1lbnRzLlxuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSwgLy8gMVxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcblxuICBAaWYgJGVuYWJsZS1idXR0b24tcG9pbnRlcnMge1xuICAgICY6bm90KDpkaXNhYmxlZCkge1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyAvLyAzXG4gICAgfVxuICB9XG59XG5cbi8vIFJlbW92ZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgZnJvbSBGaXJlZm94LCBidXQgZG9uJ3QgcmVzdG9yZSB0aGUgb3V0bGluZSBsaWtlIE5vcm1hbGl6ZS5cblxuOjotbW96LWZvY3VzLWlubmVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vLyAxLiBUZXh0YXJlYXMgc2hvdWxkIHJlYWxseSBvbmx5IHJlc2l6ZSB2ZXJ0aWNhbGx5IHNvIHRoZXkgZG9uJ3QgYnJlYWsgdGhlaXIgKGhvcml6b250YWwpIGNvbnRhaW5lcnMuXG5cbnRleHRhcmVhIHtcbiAgcmVzaXplOiB2ZXJ0aWNhbDsgLy8gMVxufVxuXG4vLyAxLiBCcm93c2VycyBzZXQgYSBkZWZhdWx0IGBtaW4td2lkdGg6IG1pbi1jb250ZW50O2Agb24gZmllbGRzZXRzLFxuLy8gICAgdW5saWtlIGUuZy4gYDxkaXY+YHMsIHdoaWNoIGhhdmUgYG1pbi13aWR0aDogMDtgIGJ5IGRlZmF1bHQuXG4vLyAgICBTbyB3ZSByZXNldCB0aGF0IHRvIGVuc3VyZSBmaWVsZHNldHMgYmVoYXZlIG1vcmUgbGlrZSBhIHN0YW5kYXJkIGJsb2NrIGVsZW1lbnQuXG4vLyAgICBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMjM1OVxuLy8gICAgYW5kIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlLyN0aGUtZmllbGRzZXQtYW5kLWxlZ2VuZC1lbGVtZW50c1xuLy8gMi4gUmVzZXQgdGhlIGRlZmF1bHQgb3V0bGluZSBiZWhhdmlvciBvZiBmaWVsZHNldHMgc28gdGhleSBkb24ndCBhZmZlY3QgcGFnZSBsYXlvdXQuXG5cbmZpZWxkc2V0IHtcbiAgbWluLXdpZHRoOiAwOyAvLyAxXG4gIHBhZGRpbmc6IDA7IC8vIDJcbiAgbWFyZ2luOiAwOyAvLyAyXG4gIGJvcmRlcjogMDsgLy8gMlxufVxuXG4vLyAxLiBCeSB1c2luZyBgZmxvYXQ6IGxlZnRgLCB0aGUgbGVnZW5kIHdpbGwgYmVoYXZlIGxpa2UgYSBibG9jayBlbGVtZW50LlxuLy8gICAgVGhpcyB3YXkgdGhlIGJvcmRlciBvZiBhIGZpZWxkc2V0IHdyYXBzIGFyb3VuZCB0aGUgbGVnZW5kIGlmIHByZXNlbnQuXG4vLyAyLiBGaXggd3JhcHBpbmcgYnVnLlxuLy8gICAgU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjk3MTJcblxubGVnZW5kIHtcbiAgZmxvYXQ6IGxlZnQ7IC8vIDFcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRsZWdlbmQtbWFyZ2luLWJvdHRvbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRsZWdlbmQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRsZWdlbmQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuXG4gICsgKiB7XG4gICAgY2xlYXI6IGxlZnQ7IC8vIDJcbiAgfVxufVxuXG4vLyBGaXggaGVpZ2h0IG9mIGlucHV0cyB3aXRoIGEgdHlwZSBvZiBkYXRldGltZS1sb2NhbCwgZGF0ZSwgbW9udGgsIHdlZWssIG9yIHRpbWVcbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE4ODQyXG5cbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWZpZWxkcy13cmFwcGVyLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtdGV4dCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1pbnV0ZSxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWhvdXItZmllbGQsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1kYXktZmllbGQsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1tb250aC1maWVsZCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXllYXItZmllbGQge1xuICBwYWRkaW5nOiAwO1xufVxuXG46Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vIDEuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuLy8gMi4gVGhpcyBvdmVycmlkZXMgdGhlIGV4dHJhIHJvdW5kZWQgY29ybmVycyBvbiBzZWFyY2ggaW5wdXRzIGluIGlPUyBzbyB0aGF0IG91clxuLy8gICAgYC5mb3JtLWNvbnRyb2xgIGNsYXNzIGNhbiBwcm9wZXJseSBzdHlsZSB0aGVtLiBOb3RlIHRoYXQgdGhpcyBjYW5ub3Qgc2ltcGx5XG4vLyAgICBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXG4vLyAgICBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTg2LlxuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvLyAxXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyAyXG59XG5cbi8vIDEuIEEgZmV3IGlucHV0IHR5cGVzIHNob3VsZCBzdGF5IExUUlxuLy8gU2VlIGh0dHBzOi8vcnRsc3R5bGluZy5jb20vcG9zdHMvcnRsLXN0eWxpbmcjZm9ybS1pbnB1dHNcbi8vIDIuIFJUTCBvbmx5IG91dHB1dFxuLy8gU2VlIGh0dHBzOi8vcnRsY3NzLmNvbS9sZWFybi91c2FnZS1ndWlkZS9jb250cm9sLWRpcmVjdGl2ZXMvI3Jhd1xuXG4vKiBydGw6cmF3OlxuW3R5cGU9XCJ0ZWxcIl0sXG5bdHlwZT1cInVybFwiXSxcblt0eXBlPVwiZW1haWxcIl0sXG5bdHlwZT1cIm51bWJlclwiXSB7XG4gIGRpcmVjdGlvbjogbHRyO1xufVxuKi9cblxuLy8gUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuXG46Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vIFJlbW92ZSBwYWRkaW5nIGFyb3VuZCBjb2xvciBwaWNrZXJzIGluIHdlYmtpdCBicm93c2Vyc1xuXG46Oi13ZWJraXQtY29sb3Itc3dhdGNoLXdyYXBwZXIge1xuICBwYWRkaW5nOiAwO1xufVxuXG5cbi8vIDEuIEluaGVyaXQgZm9udCBmYW1pbHkgYW5kIGxpbmUgaGVpZ2h0IGZvciBmaWxlIGlucHV0IGJ1dHRvbnNcbi8vIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG5cbjo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICBmb250OiBpbmhlcml0OyAvLyAxXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAyXG59XG5cbi8vIENvcnJlY3QgZWxlbWVudCBkaXNwbGF5c1xuXG5vdXRwdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8vIFJlbW92ZSBib3JkZXIgZnJvbSBpZnJhbWVcblxuaWZyYW1lIHtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBTdW1tYXJ5XG4vL1xuLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzXG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07IC8vIDFcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5cbi8vIFByb2dyZXNzXG4vL1xuLy8gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cblxuLy8gSGlkZGVuIGF0dHJpYnV0ZVxuLy9cbi8vIEFsd2F5cyBoaWRlIGFuIGVsZW1lbnQgd2l0aCB0aGUgYGhpZGRlbmAgSFRNTCBhdHRyaWJ1dGUuXG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4vLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byByZXBsYWNlIG5lZ2F0aXZlIHZhbHVlcyB3aXRoIDBcbkBmdW5jdGlvbiB2YWxpZC1yYWRpdXMoJHJhZGl1cykge1xuICAkcmV0dXJuOiAoKTtcbiAgQGVhY2ggJHZhbHVlIGluICRyYWRpdXMge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gbnVtYmVyIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCBtYXgoJHZhbHVlLCAwKSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgJHZhbHVlKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkcmV0dXJuO1xufVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm9yZGVyLXJhZGl1cy1taXhpbnNcbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzLCAkZmFsbGJhY2stYm9yZGVyLXJhZGl1czogZmFsc2UpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG4gIEBlbHNlIGlmICRmYWxsYmFjay1ib3JkZXItcmFkaXVzICE9IGZhbHNlIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1lbmQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1zdGFydC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1zdGFydC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLWVuZC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1lbmQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tc3RhcnQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBib3JkZXItcmFkaXVzLW1peGluc1xuIiwiLy9cbi8vIEhlYWRpbmdzXG4vL1xuLmgxIHtcbiAgQGV4dGVuZCBoMTtcbn1cblxuLmgyIHtcbiAgQGV4dGVuZCBoMjtcbn1cblxuLmgzIHtcbiAgQGV4dGVuZCBoMztcbn1cblxuLmg0IHtcbiAgQGV4dGVuZCBoNDtcbn1cblxuLmg1IHtcbiAgQGV4dGVuZCBoNTtcbn1cblxuLmg2IHtcbiAgQGV4dGVuZCBoNjtcbn1cblxuXG4ubGVhZCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbGVhZC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGxlYWQtZm9udC13ZWlnaHQ7XG59XG5cbi8vIFR5cGUgZGlzcGxheSBjbGFzc2VzXG5AZWFjaCAkZGlzcGxheSwgJGZvbnQtc2l6ZSBpbiAkZGlzcGxheS1mb250LXNpemVzIHtcbiAgLmRpc3BsYXktI3skZGlzcGxheX0ge1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgICBmb250LWZhbWlseTogJGRpc3BsYXktZm9udC1mYW1pbHk7XG4gICAgZm9udC1zdHlsZTogJGRpc3BsYXktZm9udC1zdHlsZTtcbiAgICBmb250LXdlaWdodDogJGRpc3BsYXktZm9udC13ZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xuICB9XG59XG5cbi8vXG4vLyBFbXBoYXNpc1xuLy9cbi5zbWFsbCB7XG4gIEBleHRlbmQgc21hbGw7XG59XG5cbi5tYXJrIHtcbiAgQGV4dGVuZCBtYXJrO1xufVxuXG4vL1xuLy8gTGlzdHNcbi8vXG5cbi5saXN0LXVuc3R5bGVkIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuXG4vLyBJbmxpbmUgdHVybnMgbGlzdCBpdGVtcyBpbnRvIGlubGluZS1ibG9ja1xuLmxpc3QtaW5saW5lIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuLmxpc3QtaW5saW5lLWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRsaXN0LWlubGluZS1wYWRkaW5nO1xuICB9XG59XG5cblxuLy9cbi8vIE1pc2Ncbi8vXG5cbi8vIEJ1aWxkcyBvbiBgYWJicmBcbi5pbml0aWFsaXNtIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbml0aWFsaXNtLWZvbnQtc2l6ZSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi8vIEJsb2NrcXVvdGVzXG4uYmxvY2txdW90ZSB7XG4gIG1hcmdpbi1ib3R0b206ICRibG9ja3F1b3RlLW1hcmdpbi15O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJsb2NrcXVvdGUtZm9udC1zaXplKTtcblxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5ibG9ja3F1b3RlLWZvb3RlciB7XG4gIG1hcmdpbi10b3A6IC0kYmxvY2txdW90ZS1tYXJnaW4teTtcbiAgbWFyZ2luLWJvdHRvbTogJGJsb2NrcXVvdGUtbWFyZ2luLXk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmxvY2txdW90ZS1mb290ZXItZm9udC1zaXplKTtcbiAgY29sb3I6ICRibG9ja3F1b3RlLWZvb3Rlci1jb2xvcjtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFwyMDE0XFwwMEEwXCI7IC8vIGVtIGRhc2gsIG5ic3BcbiAgfVxufVxuIiwiLy8gTGlzdHNcblxuLy8gVW5zdHlsZWQga2VlcHMgbGlzdCBpdGVtcyBibG9jayBsZXZlbCwganVzdCByZW1vdmVzIGRlZmF1bHQgYnJvd3NlciBwYWRkaW5nIGFuZCBsaXN0LXN0eWxlXG5AbWl4aW4gbGlzdC11bnN0eWxlZCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbiIsIi8vIFJlc3BvbnNpdmUgaW1hZ2VzIChlbnN1cmUgaW1hZ2VzIGRvbid0IHNjYWxlIGJleW9uZCB0aGVpciBwYXJlbnRzKVxuLy9cbi8vIFRoaXMgaXMgcHVycG9zZWZ1bGx5IG9wdC1pbiB2aWEgYW4gZXhwbGljaXQgY2xhc3MgcmF0aGVyIHRoYW4gYmVpbmcgdGhlIGRlZmF1bHQgZm9yIGFsbCBgPGltZz5gcy5cbi8vIFdlIHByZXZpb3VzbHkgdHJpZWQgdGhlIFwiaW1hZ2VzIGFyZSByZXNwb25zaXZlIGJ5IGRlZmF1bHRcIiBhcHByb2FjaCBpbiBCb290c3RyYXAgdjIsXG4vLyBhbmQgYWJhbmRvbmVkIGl0IGluIEJvb3RzdHJhcCB2MyBiZWNhdXNlIGl0IGJyZWFrcyBsb3RzIG9mIHRoaXJkLXBhcnR5IHdpZGdldHMgKGluY2x1ZGluZyBHb29nbGUgTWFwcylcbi8vIHdoaWNoIHdlcmVuJ3QgZXhwZWN0aW5nIHRoZSBpbWFnZXMgd2l0aGluIHRoZW1zZWx2ZXMgdG8gYmUgaW52b2x1bnRhcmlseSByZXNpemVkLlxuLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xODE3OFxuLmltZy1mbHVpZCB7XG4gIEBpbmNsdWRlIGltZy1mbHVpZCgpO1xufVxuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcbi5pbWctdGh1bWJuYWlsIHtcbiAgcGFkZGluZzogJHRodW1ibmFpbC1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGh1bWJuYWlsLWJnO1xuICBib3JkZXI6ICR0aHVtYm5haWwtYm9yZGVyLXdpZHRoIHNvbGlkICR0aHVtYm5haWwtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0aHVtYm5haWwtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHRodW1ibmFpbC1ib3gtc2hhZG93KTtcblxuICAvLyBLZWVwIHRoZW0gYXQgbW9zdCAxMDAlIHdpZGVcbiAgQGluY2x1ZGUgaW1nLWZsdWlkKCk7XG59XG5cbi8vXG4vLyBGaWd1cmVzXG4vL1xuXG4uZmlndXJlIHtcbiAgLy8gRW5zdXJlcyB0aGUgY2FwdGlvbidzIHRleHQgYWxpZ25zIHdpdGggdGhlIGltYWdlLlxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5maWd1cmUtaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlciAqIC41O1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmZpZ3VyZS1jYXB0aW9uIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmaWd1cmUtY2FwdGlvbi1mb250LXNpemUpO1xuICBjb2xvcjogJGZpZ3VyZS1jYXB0aW9uLWNvbG9yO1xufVxuIiwiLy8gSW1hZ2UgTWl4aW5zXG4vLyAtIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vIC0gUmV0aW5hIGltYWdlXG5cblxuLy8gUmVzcG9uc2l2ZSBpbWFnZVxuLy9cbi8vIEtlZXAgaW1hZ2VzIGZyb20gc2NhbGluZyBiZXlvbmQgdGhlIHdpZHRoIG9mIHRoZWlyIHBhcmVudHMuXG5cbkBtaXhpbiBpbWctZmx1aWQge1xuICAvLyBQYXJ0IDE6IFNldCBhIG1heGltdW0gcmVsYXRpdmUgdG8gdGhlIHBhcmVudFxuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8vIFBhcnQgMjogT3ZlcnJpZGUgdGhlIGhlaWdodCB0byBhdXRvLCBvdGhlcndpc2UgaW1hZ2VzIHdpbGwgYmUgc3RyZXRjaGVkXG4gIC8vIHdoZW4gc2V0dGluZyBhIHdpZHRoIGFuZCBoZWlnaHQgYXR0cmlidXRlIG9uIHRoZSBpbWcgZWxlbWVudC5cbiAgaGVpZ2h0OiBhdXRvO1xufVxuIiwiLy8gQ29udGFpbmVyIHdpZHRoc1xuLy9cbi8vIFNldCB0aGUgY29udGFpbmVyIHdpZHRoLCBhbmQgb3ZlcnJpZGUgaXQgZm9yIGZpeGVkIG5hdmJhcnMgaW4gbWVkaWEgcXVlcmllcy5cblxuQGlmICRlbmFibGUtY29udGFpbmVyLWNsYXNzZXMge1xuICAvLyBTaW5nbGUgY29udGFpbmVyIGNsYXNzIHdpdGggYnJlYWtwb2ludCBtYXgtd2lkdGhzXG4gIC5jb250YWluZXIsXG4gIC8vIDEwMCUgd2lkZSBjb250YWluZXIgYXQgYWxsIGJyZWFrcG9pbnRzXG4gIC5jb250YWluZXItZmx1aWQge1xuICAgIEBpbmNsdWRlIG1ha2UtY29udGFpbmVyKCk7XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIGNvbnRhaW5lcnMgdGhhdCBhcmUgMTAwJSB3aWRlIHVudGlsIGEgYnJlYWtwb2ludFxuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICAuY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgIEBleHRlbmQgLmNvbnRhaW5lci1mbHVpZDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cykge1xuICAgICAgJXJlc3BvbnNpdmUtY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgbWF4LXdpZHRoOiAkY29udGFpbmVyLW1heC13aWR0aDtcbiAgICAgIH1cblxuICAgICAgLy8gRXh0ZW5kIGVhY2ggYnJlYWtwb2ludCB3aGljaCBpcyBzbWFsbGVyIG9yIGVxdWFsIHRvIHRoZSBjdXJyZW50IGJyZWFrcG9pbnRcbiAgICAgICRleHRlbmQtYnJlYWtwb2ludDogdHJ1ZTtcblxuICAgICAgQGVhY2ggJG5hbWUsICR3aWR0aCBpbiAkZ3JpZC1icmVha3BvaW50cyB7XG4gICAgICAgIEBpZiAoJGV4dGVuZC1icmVha3BvaW50KSB7XG4gICAgICAgICAgLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGdyaWQtYnJlYWtwb2ludHMpfSB7XG4gICAgICAgICAgICBAZXh0ZW5kICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBPbmNlIHRoZSBjdXJyZW50IGJyZWFrcG9pbnQgaXMgcmVhY2hlZCwgc3RvcCBleHRlbmRpbmdcbiAgICAgICAgICBAaWYgKCRicmVha3BvaW50ID09ICRuYW1lKSB7XG4gICAgICAgICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQ29udGFpbmVyIG1peGluc1xuXG4vLyBNT0RJRklFRCBCWSBIQU5TT05YWVogLSBDdXN0b20gcmVzcG9uc2l2ZSBjb250YWluZXIgcGFkZGluZ1xuQG1peGluIG1ha2UtY29udGFpbmVyKCRndXR0ZXI6ICRjb250YWluZXItcGFkZGluZy14KSB7XG4gIC0tI3skcHJlZml4fWd1dHRlci14OiAjeyRndXR0ZXJ9O1xuICAtLSN7JHByZWZpeH1ndXR0ZXIteTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIFxuICAvLyBDdXN0b20gcmVzcG9uc2l2ZSBwYWRkaW5nIC0gbmVhcmx5IG5vdGhpbmcgb24gbW9iaWxlLCBub3JtYWwgb24gbGFyZ2VyIHNjcmVlbnNcbiAgcGFkZGluZy1yaWdodDogMC40Mzc1cmVtOyAvLyA3cHggcGFkZGluZyBvbiBtb2JpbGUgKHdhcyA0cHgsIGFkZGVkIDNweClcbiAgcGFkZGluZy1sZWZ0OiAwLjQzNzVyZW07XG4gIFxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICB9XG4gIFxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXgpICogLjUpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXgpICogLjUpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICB9XG59XG4iLCIvLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxuLy9cbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcbi8vXG4vLyAgICAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KVxuLy9cbi8vIFRoZSBtYXAgZGVmaW5lZCBpbiB0aGUgYCRncmlkLWJyZWFrcG9pbnRzYCBnbG9iYWwgdmFyaWFibGUgaXMgdXNlZCBhcyB0aGUgYCRicmVha3BvaW50c2AgYXJndW1lbnQgYnkgZGVmYXVsdC5cblxuLy8gTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgJGJyZWFrcG9pbnQtbmFtZXM6ICh4cyBzbSBtZCBsZyB4bCB4eGwpKVxuLy8gICAgbWRcbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAaWYgbm90ICRuIHtcbiAgICBAZXJyb3IgXCJicmVha3BvaW50IGAjeyRuYW1lfWAgbm90IGZvdW5kIGluIGAjeyRicmVha3BvaW50c31gXCI7XG4gIH1cbiAgQHJldHVybiBpZigkbiA8IGxlbmd0aCgkYnJlYWtwb2ludC1uYW1lcyksIG50aCgkYnJlYWtwb2ludC1uYW1lcywgJG4gKyAxKSwgbnVsbCk7XG59XG5cbi8vIE1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIHNtYWxsZXN0IChmaXJzdCkgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1pbihzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICA1NzZweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1pbiAhPSAwLCAkbWluLCBudWxsKTtcbn1cblxuLy8gTWF4aW11bSBicmVha3BvaW50IHdpZHRoLlxuLy8gVGhlIG1heGltdW0gdmFsdWUgaXMgcmVkdWNlZCBieSAwLjAycHggdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mXG4vLyBgbWluLWAgYW5kIGBtYXgtYCBwcmVmaXhlcyBhbmQgdmlld3BvcnRzIHdpdGggZnJhY3Rpb25hbCB3aWR0aHMuXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL21lZGlhcXVlcmllcy00LyNtcS1taW4tbWF4XG4vLyBVc2VzIDAuMDJweCByYXRoZXIgdGhhbiAwLjAxcHggdG8gd29yayBhcm91bmQgYSBjdXJyZW50IHJvdW5kaW5nIGJ1ZyBpbiBTYWZhcmkuXG4vLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODI2MVxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWF4KG1kLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIDc2Ny45OHB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWF4IGFuZCAkbWF4ID4gMCwgJG1heCAtIC4wMiwgbnVsbCk7XG59XG5cbi8vIFJldHVybnMgYSBibGFuayBzdHJpbmcgaWYgc21hbGxlc3QgYnJlYWtwb2ludCwgb3RoZXJ3aXNlIHJldHVybnMgdGhlIG5hbWUgd2l0aCBhIGRhc2ggaW4gZnJvbnQuXG4vLyBVc2VmdWwgZm9yIG1ha2luZyByZXNwb25zaXZlIHV0aWxpdGllcy5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHhzLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIFwiXCIgIChSZXR1cm5zIGEgYmxhbmsgc3RyaW5nKVxuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiAgYnJlYWtwb2ludC1tYXgoJG5leHQsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuZXh0LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUm93XG4vL1xuLy8gUm93cyBjb250YWluIHlvdXIgY29sdW1ucy5cblxuOnJvb3Qge1xuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRncmlkLWJyZWFrcG9pbnRzIHtcbiAgICAtLSN7JHByZWZpeH1icmVha3BvaW50LSN7JG5hbWV9OiAjeyR2YWx1ZX07XG4gIH1cbn1cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLnJvdyB7XG4gICAgQGluY2x1ZGUgbWFrZS1yb3coKTtcblxuICAgID4gKiB7XG4gICAgICBAaW5jbHVkZSBtYWtlLWNvbC1yZWFkeSgpO1xuICAgIH1cbiAgfVxufVxuXG5AaWYgJGVuYWJsZS1jc3NncmlkIHtcbiAgLmdyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQodmFyKC0tI3skcHJlZml4fXJvd3MsIDEpLCAxZnIpO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KHZhcigtLSN7JHByZWZpeH1jb2x1bW5zLCAjeyRncmlkLWNvbHVtbnN9KSwgMWZyKTtcbiAgICBnYXA6IHZhcigtLSN7JHByZWZpeH1nYXAsICN7JGdyaWQtZ3V0dGVyLXdpZHRofSk7XG5cbiAgICBAaW5jbHVkZSBtYWtlLWNzc2dyaWQoKTtcbiAgfVxufVxuXG5cbi8vIENvbHVtbnNcbi8vXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zKCk7XG59XG4iLCIvLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuQG1peGluIG1ha2Utcm93KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICAtLSN7JHByZWZpeH1ndXR0ZXIteDogI3skZ3V0dGVyfTtcbiAgLS0jeyRwcmVmaXh9Z3V0dGVyLXk6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgLy8gVE9ETzogUmV2aXNpdCBjYWxjIG9yZGVyIGFmdGVyIGh0dHBzOi8vZ2l0aHViLmNvbS9yZWFjdC1ib290c3RyYXAvcmVhY3QtYm9vdHN0cmFwL2lzc3Vlcy82MDM5IGlzIGZpeGVkXG4gIG1hcmdpbi10b3A6IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXkpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tbGVmdDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3Rcbn1cblxuQG1peGluIG1ha2UtY29sLXJlYWR5KCkge1xuICAvLyBBZGQgYm94IHNpemluZyBpZiBvbmx5IHRoZSBncmlkIGlzIGxvYWRlZFxuICBib3gtc2l6aW5nOiBpZih2YXJpYWJsZS1leGlzdHMoaW5jbHVkZS1jb2x1bW4tYm94LXNpemluZykgYW5kICRpbmNsdWRlLWNvbHVtbi1ib3gtc2l6aW5nLCBib3JkZXItYm94LCBudWxsKTtcbiAgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gYmVjb21pbmcgdG9vIG5hcnJvdyB3aGVuIGF0IHNtYWxsZXIgZ3JpZCB0aWVycyBieVxuICAvLyBhbHdheXMgc2V0dGluZyBgd2lkdGg6IDEwMCU7YC4gVGhpcyB3b3JrcyBiZWNhdXNlIHdlIHNldCB0aGUgd2lkdGhcbiAgLy8gbGF0ZXIgb24gdG8gb3ZlcnJpZGUgdGhpcyBpbml0aWFsIHdpZHRoLlxuICBmbGV4LXNocmluazogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTsgLy8gUHJldmVudCBgLmNvbC1hdXRvYCwgYC5jb2xgICgmIHJlc3BvbnNpdmUgdmFyaWFudHMpIGZyb20gYnJlYWtpbmcgb3V0IHRoZSBncmlkXG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tI3skcHJlZml4fWd1dHRlci14KSAqIC41KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkgKiAuNSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi10b3A6IHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteSk7XG59XG5cbkBtaXhpbiBtYWtlLWNvbCgkc2l6ZTogZmFsc2UsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gIEBpZiAkc2l6ZSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoZGl2aWRlKCRzaXplLCAkY29sdW1ucykpO1xuXG4gIH0gQGVsc2Uge1xuICAgIGZsZXg6IDEgMSAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxufVxuXG5AbWl4aW4gbWFrZS1jb2wtYXV0bygpIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBhdXRvO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtb2Zmc2V0KCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICAkbnVtOiBkaXZpZGUoJHNpemUsICRjb2x1bW5zKTtcbiAgbWFyZ2luLWxlZnQ6IGlmKCRudW0gPT0gMCwgMCwgcGVyY2VudGFnZSgkbnVtKSk7XG59XG5cbi8vIFJvdyBjb2x1bW5zXG4vL1xuLy8gU3BlY2lmeSBvbiBhIHBhcmVudCBlbGVtZW50KGUuZy4sIC5yb3cpIHRvIGZvcmNlIGltbWVkaWF0ZSBjaGlsZHJlbiBpbnRvIE5OXG4vLyBudW1iZXIgb2YgY29sdW1ucy4gU3VwcG9ydHMgd3JhcHBpbmcgdG8gbmV3IGxpbmVzLCBidXQgZG9lcyBub3QgZG8gYSBNYXNvbnJ5XG4vLyBzdHlsZSBncmlkLlxuQG1peGluIHJvdy1jb2xzKCRjb3VudCkge1xuICA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBkaXZpZGUoMTAwJSwgJGNvdW50KTtcbiAgfVxufVxuXG4vLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXG4vL1xuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxuXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIC8vIFByb3ZpZGUgYmFzaWMgYC5jb2wte2JwfWAgY2xhc3NlcyBmb3IgZXF1YWwtd2lkdGggZmxleGJveCBjb2x1bW5zXG4gICAgICAuY29sI3skaW5maXh9IHtcbiAgICAgICAgZmxleDogMSAwIDAlOyAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIH1cblxuICAgICAgLnJvdy1jb2xzI3skaW5maXh9LWF1dG8gPiAqIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGdyaWQtcm93LWNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1yb3ctY29sdW1ucyB7XG4gICAgICAgICAgLnJvdy1jb2xzI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJvdy1jb2xzKCRpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZVxuICAgICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIiBhbmQgJGkgPT0gMCkgeyAvLyBBdm9pZCBlbWl0dGluZyB1c2VsZXNzIC5vZmZzZXQtMFxuICAgICAgICAgICAgLm9mZnNldCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLW9mZnNldCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBHdXR0ZXJzXG4gICAgICAvL1xuICAgICAgLy8gTWFrZSB1c2Ugb2YgYC5nLSpgLCBgLmd4LSpgIG9yIGAuZ3ktKmAgdXRpbGl0aWVzIHRvIGNoYW5nZSBzcGFjaW5nIGJldHdlZW4gdGhlIGNvbHVtbnMuXG4gICAgICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJGd1dHRlcnMge1xuICAgICAgICAuZyN7JGluZml4fS0jeyRrZXl9LFxuICAgICAgICAuZ3gjeyRpbmZpeH0tI3ska2V5fSB7XG4gICAgICAgICAgLS0jeyRwcmVmaXh9Z3V0dGVyLXg6ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5nI3skaW5maXh9LSN7JGtleX0sXG4gICAgICAgIC5neSN7JGluZml4fS0jeyRrZXl9IHtcbiAgICAgICAgICAtLSN7JHByZWZpeH1ndXR0ZXIteTogI3skdmFsdWV9O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYWtlLWNzc2dyaWQoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmctY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiAkaTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTdGFydCB3aXRoIGAxYCBiZWNhdXNlIGAwYCBpcyBhbmQgaW52YWxpZCB2YWx1ZS5cbiAgICAgICAgLy8gRW5kcyB3aXRoIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZS5cbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAoJGNvbHVtbnMgLSAxKSB7XG4gICAgICAgICAgLmctc3RhcnQjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW4tc3RhcnQ6ICRpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2ljIEJvb3RzdHJhcCB0YWJsZVxuLy9cblxuLnRhYmxlIHtcbiAgLy8gUmVzZXQgbmVlZGVkIGZvciBuZXN0aW5nIHRhYmxlc1xuICAtLSN7JHByZWZpeH10YWJsZS1jb2xvci10eXBlOiBpbml0aWFsO1xuICAtLSN7JHByZWZpeH10YWJsZS1iZy10eXBlOiBpbml0aWFsO1xuICAtLSN7JHByZWZpeH10YWJsZS1jb2xvci1zdGF0ZTogaW5pdGlhbDtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYmctc3RhdGU6IGluaXRpYWw7XG4gIC8vIEVuZCBvZiByZXNldFxuICAtLSN7JHByZWZpeH10YWJsZS1jb2xvcjogI3skdGFibGUtY29sb3J9O1xuICAtLSN7JHByZWZpeH10YWJsZS1iZzogI3skdGFibGUtYmd9O1xuICAtLSN7JHByZWZpeH10YWJsZS1ib3JkZXItY29sb3I6ICN7JHRhYmxlLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRhYmxlLWFjY2VudC1iZzogI3skdGFibGUtYWNjZW50LWJnfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1jb2xvcjogI3skdGFibGUtc3RyaXBlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRhYmxlLXN0cmlwZWQtYmc6ICN7JHRhYmxlLXN0cmlwZWQtYmd9O1xuICAtLSN7JHByZWZpeH10YWJsZS1hY3RpdmUtY29sb3I6ICN7JHRhYmxlLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRhYmxlLWFjdGl2ZS1iZzogI3skdGFibGUtYWN0aXZlLWJnfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtaG92ZXItY29sb3I6ICN7JHRhYmxlLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtaG92ZXItYmc6ICN7JHRhYmxlLWhvdmVyLWJnfTtcblxuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlcjtcbiAgdmVydGljYWwtYWxpZ246ICR0YWJsZS1jZWxsLXZlcnRpY2FsLWFsaWduO1xuICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH10YWJsZS1ib3JkZXItY29sb3IpO1xuXG4gIC8vIFRhcmdldCB0aCAmIHRkXG4gIC8vIFdlIG5lZWQgdGhlIGNoaWxkIGNvbWJpbmF0b3IgdG8gcHJldmVudCBzdHlsZXMgbGVha2luZyB0byBuZXN0ZWQgdGFibGVzIHdoaWNoIGRvZXNuJ3QgaGF2ZSBhIGAudGFibGVgIGNsYXNzLlxuICAvLyBXZSB1c2UgdGhlIHVuaXZlcnNhbCBzZWxlY3RvcnMgaGVyZSB0byBzaW1wbGlmeSB0aGUgc2VsZWN0b3IgKGVsc2Ugd2Ugd291bGQgbmVlZCA2IGRpZmZlcmVudCBzZWxlY3RvcnMpLlxuICAvLyBBbm90aGVyIGFkdmFudGFnZSBpcyB0aGF0IHRoaXMgZ2VuZXJhdGVzIGxlc3MgY29kZSBhbmQgbWFrZXMgdGhlIHNlbGVjdG9yIGxlc3Mgc3BlY2lmaWMgbWFraW5nIGl0IGVhc2llciB0byBvdmVycmlkZS5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC11bml2ZXJzYWxcbiAgPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmcteSAkdGFibGUtY2VsbC1wYWRkaW5nLXg7XG4gICAgLy8gRm9sbG93aW5nIHRoZSBwcmVjZXB0IG9mIGNhc2NhZGVzOiBodHRwczovL2NvZGVwZW4uaW8vbWlyaWFtc3V6YW5uZS9mdWxsL3ZZTmdvZGJcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXN0YXRlLCB2YXIoLS0jeyRwcmVmaXh9dGFibGUtY29sb3ItdHlwZSwgdmFyKC0tI3skcHJlZml4fXRhYmxlLWNvbG9yKSkpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH10YWJsZS1iZyk7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogJHRhYmxlLWJvcmRlci13aWR0aDtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA5OTk5cHggdmFyKC0tI3skcHJlZml4fXRhYmxlLWJnLXN0YXRlLCB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYmctdHlwZSwgdmFyKC0tI3skcHJlZml4fXRhYmxlLWFjY2VudC1iZykpKTtcbiAgfVxuXG4gID4gdGJvZHkge1xuICAgIHZlcnRpY2FsLWFsaWduOiBpbmhlcml0O1xuICB9XG5cbiAgPiB0aGVhZCB7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgfVxufVxuXG4udGFibGUtZ3JvdXAtZGl2aWRlciB7XG4gIGJvcmRlci10b3A6IGNhbGMoI3skdGFibGUtYm9yZGVyLXdpZHRofSAqIDIpIHNvbGlkICR0YWJsZS1ncm91cC1zZXBhcmF0b3ItY29sb3I7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG59XG5cbi8vXG4vLyBDaGFuZ2UgcGxhY2VtZW50IG9mIGNhcHRpb25zIHdpdGggYSBjbGFzc1xuLy9cblxuLmNhcHRpb24tdG9wIHtcbiAgY2FwdGlvbi1zaWRlOiB0b3A7XG59XG5cblxuLy9cbi8vIENvbmRlbnNlZCB0YWJsZSB3LyBoYWxmIHBhZGRpbmdcbi8vXG5cbi50YWJsZS1zbSB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtdW5pdmVyc2FsXG4gID4gOm5vdChjYXB0aW9uKSA+ICogPiAqIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nLXktc20gJHRhYmxlLWNlbGwtcGFkZGluZy14LXNtO1xuICB9XG59XG5cblxuLy8gQm9yZGVyIHZlcnNpb25zXG4vL1xuLy8gQWRkIG9yIHJlbW92ZSBib3JkZXJzIGFsbCBhcm91bmQgdGhlIHRhYmxlIGFuZCBiZXR3ZWVuIGFsbCB0aGUgY29sdW1ucy5cbi8vXG4vLyBXaGVuIGJvcmRlcnMgYXJlIGFkZGVkIG9uIGFsbCBzaWRlcyBvZiB0aGUgY2VsbHMsIHRoZSBjb3JuZXJzIGNhbiByZW5kZXIgb2RkIHdoZW5cbi8vIHRoZXNlIGJvcmRlcnMgZG8gbm90IGhhdmUgdGhlIHNhbWUgY29sb3Igb3IgaWYgdGhleSBhcmUgc2VtaS10cmFuc3BhcmVudC5cbi8vIFRoZXJlZm9yIHdlIGFkZCB0b3AgYW5kIGJvcmRlciBib3R0b21zIHRvIHRoZSBgdHJgcyBhbmQgbGVmdCBhbmQgcmlnaHQgYm9yZGVyc1xuLy8gdG8gdGhlIGB0ZGBzIG9yIGB0aGBzXG5cbi50YWJsZS1ib3JkZXJlZCB7XG4gID4gOm5vdChjYXB0aW9uKSA+ICoge1xuICAgIGJvcmRlci13aWR0aDogJHRhYmxlLWJvcmRlci13aWR0aCAwO1xuXG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC11bml2ZXJzYWxcbiAgICA+ICoge1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICR0YWJsZS1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbi50YWJsZS1ib3JkZXJsZXNzIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC11bml2ZXJzYWxcbiAgPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIH1cblxuICA+IDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgfVxufVxuXG4vLyBaZWJyYS1zdHJpcGluZ1xuLy9cbi8vIERlZmF1bHQgemVicmEtc3RyaXBlIHN0eWxlcyAoYWx0ZXJuYXRpbmcgZ3JheSBhbmQgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMpXG5cbi8vIEZvciByb3dzXG4udGFibGUtc3RyaXBlZCB7XG4gID4gdGJvZHkgPiB0cjpudGgtb2YtdHlwZSgjeyR0YWJsZS1zdHJpcGVkLW9yZGVyfSkgPiAqIHtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1jb2xvci10eXBlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1jb2xvcik7XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtYmctdHlwZTogdmFyKC0tI3skcHJlZml4fXRhYmxlLXN0cmlwZWQtYmcpO1xuICB9XG59XG5cbi8vIEZvciBjb2x1bW5zXG4udGFibGUtc3RyaXBlZC1jb2x1bW5zIHtcbiAgPiA6bm90KGNhcHRpb24pID4gdHIgPiA6bnRoLWNoaWxkKCN7JHRhYmxlLXN0cmlwZWQtY29sdW1ucy1vcmRlcn0pIHtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1jb2xvci10eXBlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1jb2xvcik7XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtYmctdHlwZTogdmFyKC0tI3skcHJlZml4fXRhYmxlLXN0cmlwZWQtYmcpO1xuICB9XG59XG5cbi8vIEFjdGl2ZSB0YWJsZVxuLy9cbi8vIFRoZSBgLnRhYmxlLWFjdGl2ZWAgY2xhc3MgY2FuIGJlIGFkZGVkIHRvIGhpZ2hsaWdodCByb3dzIG9yIGNlbGxzXG5cbi50YWJsZS1hY3RpdmUge1xuICAtLSN7JHByZWZpeH10YWJsZS1jb2xvci1zdGF0ZTogdmFyKC0tI3skcHJlZml4fXRhYmxlLWFjdGl2ZS1jb2xvcik7XG4gIC0tI3skcHJlZml4fXRhYmxlLWJnLXN0YXRlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYWN0aXZlLWJnKTtcbn1cblxuLy8gSG92ZXIgZWZmZWN0XG4vL1xuLy8gUGxhY2VkIGhlcmUgc2luY2UgaXQgaGFzIHRvIGNvbWUgYWZ0ZXIgdGhlIHBvdGVudGlhbCB6ZWJyYSBzdHJpcGluZ1xuXG4udGFibGUtaG92ZXIge1xuICA+IHRib2R5ID4gdHI6aG92ZXIgPiAqIHtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1jb2xvci1zdGF0ZTogdmFyKC0tI3skcHJlZml4fXRhYmxlLWhvdmVyLWNvbG9yKTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1iZy1zdGF0ZTogdmFyKC0tI3skcHJlZml4fXRhYmxlLWhvdmVyLWJnKTtcbiAgfVxufVxuXG5cbi8vIFRhYmxlIHZhcmlhbnRzXG4vL1xuLy8gVGFibGUgdmFyaWFudHMgc2V0IHRoZSB0YWJsZSBjZWxsIGJhY2tncm91bmRzLCBib3JkZXIgY29sb3JzXG4vLyBhbmQgdGhlIGNvbG9ycyBvZiB0aGUgc3RyaXBlZCwgaG92ZXJlZCAmIGFjdGl2ZSB0YWJsZXNcblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRhYmxlLXZhcmlhbnRzIHtcbiAgQGluY2x1ZGUgdGFibGUtdmFyaWFudCgkY29sb3IsICR2YWx1ZSk7XG59XG5cbi8vIFJlc3BvbnNpdmUgdGFibGVzXG4vL1xuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAudGFibGUtcmVzcG9uc2l2ZS0qYCBjbGFzc2VzIGZvciBjb25maWd1cmluZyB0aGUgc2NyZWVuXG4vLyBzaXplIG9mIHdoZXJlIHlvdXIgdGFibGUgd2lsbCBvdmVyZmxvdy5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgLnRhYmxlLXJlc3BvbnNpdmUjeyRpbmZpeH0ge1xuICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHNjc3MtZG9jcy1zdGFydCB0YWJsZS12YXJpYW50XG5AbWl4aW4gdGFibGUtdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kKSB7XG4gIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICRjb2xvcjogY29sb3ItY29udHJhc3Qob3BhcXVlKCRib2R5LWJnLCAkYmFja2dyb3VuZCkpO1xuICAgICRob3Zlci1iZzogbWl4KCRjb2xvciwgJGJhY2tncm91bmQsIHBlcmNlbnRhZ2UoJHRhYmxlLWhvdmVyLWJnLWZhY3RvcikpO1xuICAgICRzdHJpcGVkLWJnOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtc3RyaXBlZC1iZy1mYWN0b3IpKTtcbiAgICAkYWN0aXZlLWJnOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtYWN0aXZlLWJnLWZhY3RvcikpO1xuICAgICR0YWJsZS1ib3JkZXItY29sb3I6IG1peCgkY29sb3IsICRiYWNrZ3JvdW5kLCBwZXJjZW50YWdlKCR0YWJsZS1ib3JkZXItZmFjdG9yKSk7XG5cbiAgICAtLSN7JHByZWZpeH10YWJsZS1jb2xvcjogI3skY29sb3J9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWJnOiAjeyRiYWNrZ3JvdW5kfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1ib3JkZXItY29sb3I6ICN7JHRhYmxlLWJvcmRlci1jb2xvcn07XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1iZzogI3skc3RyaXBlZC1iZ307XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1jb2xvcjogI3tjb2xvci1jb250cmFzdCgkc3RyaXBlZC1iZyl9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWFjdGl2ZS1iZzogI3skYWN0aXZlLWJnfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1hY3RpdmUtY29sb3I6ICN7Y29sb3ItY29udHJhc3QoJGFjdGl2ZS1iZyl9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWhvdmVyLWJnOiAjeyRob3Zlci1iZ307XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtaG92ZXItY29sb3I6ICN7Y29sb3ItY29udHJhc3QoJGhvdmVyLWJnKX07XG5cbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXRhYmxlLWNvbG9yKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH10YWJsZS1ib3JkZXItY29sb3IpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIHRhYmxlLXZhcmlhbnRcbiIsIi8vXG4vLyBMYWJlbHNcbi8vXG5cbi5mb3JtLWxhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tbGFiZWwtbWFyZ2luLWJvdHRvbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWxhYmVsLWZvbnQtc2l6ZSk7XG4gIGZvbnQtc3R5bGU6ICRmb3JtLWxhYmVsLWZvbnQtc3R5bGU7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS1sYWJlbC1mb250LXdlaWdodDtcbiAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yO1xufVxuXG4vLyBGb3IgdXNlIHdpdGggaG9yaXpvbnRhbCBhbmQgaW5saW5lIGZvcm1zLCB3aGVuIHlvdSBuZWVkIHRoZSBsYWJlbCAob3IgbGVnZW5kKVxuLy8gdGV4dCB0byBhbGlnbiB3aXRoIHRoZSBmb3JtIGNvbnRyb2xzLlxuLmNvbC1mb3JtLWxhYmVsIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgdGhlIGA8bGVnZW5kPmAgZGVmYXVsdFxuICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7IC8vIE92ZXJyaWRlIHRoZSBgPGxlZ2VuZD5gIGRlZmF1bHRcbiAgZm9udC1zdHlsZTogJGZvcm0tbGFiZWwtZm9udC1zdHlsZTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1sZyB7XG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbn1cblxuLmNvbC1mb3JtLWxhYmVsLXNtIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xufVxuIiwiLy9cbi8vIEZvcm0gdGV4dFxuLy9cblxuLmZvcm0tdGV4dCB7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXRleHQtbWFyZ2luLXRvcDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLXRleHQtZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogJGZvcm0tdGV4dC1mb250LXN0eWxlO1xuICBmb250LXdlaWdodDogJGZvcm0tdGV4dC1mb250LXdlaWdodDtcbiAgY29sb3I6ICRmb3JtLXRleHQtY29sb3I7XG59XG4iLCIvL1xuLy8gR2VuZXJhbCBmb3JtIGNvbnRyb2xzIChwbHVzIGEgZmV3IHNwZWNpZmljIGhpZ2gtbGV2ZWwgaW50ZXJ2ZW50aW9ucylcbi8vXG5cbi5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICBhcHBlYXJhbmNlOiBub25lOyAvLyBGaXggYXBwZWFyYW5jZSBmb3IgZGF0ZSBpbnB1dHMgaW4gU2FmYXJpXG5cbiAgLy8gTm90ZTogVGhpcyBoYXMgbm8gZWZmZWN0IG9uIDxzZWxlY3Q+cyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLCAwKTtcblxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkaW5wdXQtdHJhbnNpdGlvbik7XG5cbiAgJlt0eXBlPVwiZmlsZVwiXSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gcHJldmVudCBwc2V1ZG8gZWxlbWVudCBidXR0b24gb3ZlcmxhcFxuXG4gICAgJjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSkge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxuXG4gIC8vIEN1c3RvbWl6ZSB0aGUgYDpmb2N1c2Agc3RhdGUgdG8gaW1pdGF0ZSBuYXRpdmUgV2ViS2l0IHN0eWxlcy5cbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRpbnB1dC1mb2N1cy1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZm9jdXMtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93LCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAmOjotd2Via2l0LWRhdGUtYW5kLXRpbWUtdmFsdWUge1xuICAgIC8vIE9uIEFuZHJvaWQgQ2hyb21lLCBmb3JtLWNvbnRyb2wncyBcIndpZHRoOiAxMDAlXCIgbWFrZXMgdGhlIGlucHV0IHdpZHRoIHRvbyBzbWFsbFxuICAgIC8vIFRlc3RlZCB1bmRlciBBbmRyb2lkIDExIC8gQ2hyb21lIDg5LCBBbmRyb2lkIDEyIC8gQ2hyb21lIDEwMCwgQW5kcm9pZCAxMyAvIENocm9tZSAxMDlcbiAgICAvL1xuICAgIC8vIE9uIGlPUyBTYWZhcmksIGZvcm0tY29udHJvbCdzIFwiYXBwZWFyYW5jZTogbm9uZVwiICsgXCJ3aWR0aDogMTAwJVwiIG1ha2VzIHRoZSBpbnB1dCB3aWR0aCB0b28gc21hbGxcbiAgICAvLyBUZXN0ZWQgdW5kZXIgaU9TIDE2LjIgLyBTYWZhcmkgMTYuMlxuICAgIG1pbi13aWR0aDogODVweDsgLy8gU2VlbXMgdG8gYmUgYSBnb29kIG1pbmltdW0gc2FmZSB3aWR0aFxuXG4gICAgLy8gQWRkIHNvbWUgaGVpZ2h0IHRvIGRhdGUgaW5wdXRzIG9uIGlPU1xuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjMzMDdcbiAgICAvLyBUT0RPOiB3ZSBjYW4gcmVtb3ZlIHRoaXMgd29ya2Fyb3VuZCBvbmNlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTg5NTkgaXMgcmVzb2x2ZWRcbiAgICAvLyBNdWx0aXBseSBsaW5lLWhlaWdodCBieSAxZW0gaWYgaXQgaGFzIG5vIHVuaXRcbiAgICBoZWlnaHQ6IGlmKHVuaXQoJGlucHV0LWxpbmUtaGVpZ2h0KSA9PSBcIlwiLCAkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sICRpbnB1dC1saW5lLWhlaWdodCk7XG5cbiAgICAvLyBBbmRyb2lkIENocm9tZSB0eXBlPVwiZGF0ZVwiIGlzIHRhbGxlciB0aGFuIHRoZSBvdGhlciBpbnB1dHNcbiAgICAvLyBiZWNhdXNlIG9mIFwibWFyZ2luOiAxcHggMjRweCAxcHggNHB4XCIgaW5zaWRlIHRoZSBzaGFkb3cgRE9NXG4gICAgLy8gVGVzdGVkIHVuZGVyIEFuZHJvaWQgMTEgLyBDaHJvbWUgODksIEFuZHJvaWQgMTIgLyBDaHJvbWUgMTAwLCBBbmRyb2lkIDEzIC8gQ2hyb21lIDEwOVxuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8vIFByZXZlbnQgZXhjZXNzaXZlIGRhdGUgaW5wdXQgaGVpZ2h0IGluIFdlYmtpdFxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzM0NDMzXG4gICY6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8vIFBsYWNlaG9sZGVyXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICAgIC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBpbnB1dHNcbiAgLy9cbiAgLy8gSFRNTDUgc2F5cyB0aGF0IGNvbnRyb2xzIHVuZGVyIGEgZmllbGRzZXQgPiBsZWdlbmQ6Zmlyc3QtY2hpbGQgd29uJ3QgYmVcbiAgLy8gZGlzYWJsZWQgaWYgdGhlIGZpZWxkc2V0IGlzIGRpc2FibGVkLiBEdWUgdG8gaW1wbGVtZW50YXRpb24gZGlmZmljdWx0eSwgd2VcbiAgLy8gZG9uJ3QgaG9ub3IgdGhhdCBlZGdlIGNhc2U7IHdlIHN0eWxlIHRoZW0gYXMgZGlzYWJsZWQgYW55d2F5LlxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGlucHV0LWRpc2FibGVkLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1iZztcbiAgICBib3JkZXItY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1ib3JkZXItY29sb3I7XG4gICAgLy8gaU9TIGZpeCBmb3IgdW5yZWFkYWJsZSBkaXNhYmxlZCBjb250ZW50OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTY1NS5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLy8gRmlsZSBpbnB1dCBidXR0b25zIHRoZW1pbmdcbiAgJjo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgICBtYXJnaW46ICgtJGlucHV0LXBhZGRpbmcteSkgKC0kaW5wdXQtcGFkZGluZy14KTtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogJGlucHV0LXBhZGRpbmcteDtcbiAgICBjb2xvcjogJGZvcm0tZmlsZS1idXR0b24tY29sb3I7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tZmlsZS1idXR0b24tYmcpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogMDtcbiAgICBib3JkZXItaW5saW5lLWVuZC13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aDtcbiAgICBib3JkZXItcmFkaXVzOiAwOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJ0bi10cmFuc2l0aW9uKTtcbiAgfVxuXG4gICY6aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tZmlsZS1idXR0b24taG92ZXItYmc7XG4gIH1cbn1cblxuLy8gUmVhZG9ubHkgY29udHJvbHMgYXMgcGxhaW4gdGV4dFxuLy9cbi8vIEFwcGx5IGNsYXNzIHRvIGEgcmVhZG9ubHkgaW5wdXQgdG8gbWFrZSBpdCBhcHBlYXIgbGlrZSByZWd1bGFyIHBsYWluXG4vLyB0ZXh0ICh3aXRob3V0IGFueSBib3JkZXIsIGJhY2tncm91bmQgY29sb3IsIGZvY3VzIGluZGljYXRvcilcblxuLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgMDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gbWF0Y2ggaW5wdXRzIGlmIHRoaXMgY2xhc3MgY29tZXMgb24gaW5wdXRzIHdpdGggZGVmYXVsdCBtYXJnaW5zXG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtcGxhaW50ZXh0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoIDA7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxuXG4gICYuZm9ybS1jb250cm9sLXNtLFxuICAmLmZvcm0tY29udHJvbC1sZyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xuLy9cbi8vIEJ1aWxkIG9uIGAuZm9ybS1jb250cm9sYCB3aXRoIG1vZGlmaWVyIGNsYXNzZXMgdG8gZGVjcmVhc2Ugb3IgaW5jcmVhc2UgdGhlXG4vLyBoZWlnaHQgYW5kIGZvbnQtc2l6ZSBvZiBmb3JtIGNvbnRyb2xzLlxuLy9cbi8vIFJlcGVhdGVkIGluIGBfaW5wdXRfZ3JvdXAuc2Nzc2AgdG8gYXZvaWQgU2FzcyBleHRlbmQgaXNzdWVzLlxuXG4uZm9ybS1jb250cm9sLXNtIHtcbiAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xuXG4gICY6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gICAgbWFyZ2luOiAoLSRpbnB1dC1wYWRkaW5nLXktc20pICgtJGlucHV0LXBhZGRpbmcteC1zbSk7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6ICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIH1cbn1cblxuLmZvcm0tY29udHJvbC1sZyB7XG4gIG1pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLWxnKTtcblxuICAmOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICAgIG1hcmdpbjogKC0kaW5wdXQtcGFkZGluZy15LWxnKSAoLSRpbnB1dC1wYWRkaW5nLXgtbGcpO1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAkaW5wdXQtcGFkZGluZy14LWxnO1xuICB9XG59XG5cbi8vIE1ha2Ugc3VyZSB0ZXh0YXJlYXMgZG9uJ3Qgc2hyaW5rIHRvbyBtdWNoIHdoZW4gcmVzaXplZFxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjkxMjRcbi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxudGV4dGFyZWEge1xuICAmLmZvcm0tY29udHJvbCB7XG4gICAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgfVxuXG4gICYuZm9ybS1jb250cm9sLXNtIHtcbiAgICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xuICB9XG5cbiAgJi5mb3JtLWNvbnRyb2wtbGcge1xuICAgIG1pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG4gIH1cbn1cbi8vIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi5mb3JtLWNvbnRyb2wtY29sb3Ige1xuICB3aWR0aDogJGZvcm0tY29sb3Itd2lkdGg7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteTtcblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgJjo6LW1vei1jb2xvci1zd2F0Y2gge1xuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJjo6LXdlYmtpdC1jb2xvci1zd2F0Y2gge1xuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20geyBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207IH1cbiAgJi5mb3JtLWNvbnRyb2wtbGcgeyBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7IH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcbiAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbikgPT0gMCB7XG4gICAgJHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWJhc2U7XG4gIH1cblxuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA+IDEge1xuICAgIEBlYWNoICR2YWx1ZSBpbiAkdHJhbnNpdGlvbiB7XG4gICAgICBAaWYgJHZhbHVlID09IG51bGwgb3IgJHZhbHVlID09IG5vbmUge1xuICAgICAgICBAd2FybiBcIlRoZSBrZXl3b3JkICdub25lJyBvciAnbnVsbCcgbXVzdCBiZSB1c2VkIGFzIGEgc2luZ2xlIGFyZ3VtZW50LlwiO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgICBAaWYgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBudWxsIHtcbiAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgIH1cblxuICAgIEBpZiAkZW5hYmxlLXJlZHVjZWQtbW90aW9uIGFuZCBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwgYW5kIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbm9uZSB7XG4gICAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gR3JhZGllbnRzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBncmFkaWVudC1iZy1taXhpblxuQG1peGluIGdyYWRpZW50LWJnKCRjb2xvcjogbnVsbCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG5cbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9Z3JhZGllbnQpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGdyYWRpZW50LWJnLW1peGluXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBncmFkaWVudC1taXhpbnNcbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xufVxuXG4vLyBWZXJ0aWNhbCBncmFkaWVudCwgZnJvbSB0b3AgdG8gYm90dG9tXG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC15KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiBudWxsLCAkZW5kLXBlcmNlbnQ6IG51bGwpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG59XG5cbkBtaXhpbiBncmFkaWVudC1kaXJlY3Rpb25hbCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkZGVnOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcbn1cblxuQG1peGluIGdyYWRpZW50LXgtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQteS10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbn1cblxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICRncmF5LTcwMCwgJG91dGVyLWNvbG9yOiAkZ3JheS04MDApIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoJHdoaXRlLCAuMTUpLCAkYW5nbGU6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgZ3JhZGllbnQtbWl4aW5zXG4iLCIvLyBTZWxlY3Rcbi8vXG4vLyBSZXBsYWNlcyB0aGUgYnJvd3NlciBkZWZhdWx0IHNlbGVjdCB3aXRoIGEgY3VzdG9tIG9uZSwgbW9zdGx5IHB1bGxlZCBmcm9tXG4vLyBodHRwczovL3ByaW1lci5naXRodWIuaW8vLlxuXG4uZm9ybS1zZWxlY3Qge1xuICAtLSN7JHByZWZpeH1mb3JtLXNlbGVjdC1iZy1pbWc6ICN7ZXNjYXBlLXN2ZygkZm9ybS1zZWxlY3QtaW5kaWNhdG9yKX07XG5cbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15ICRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZyAkZm9ybS1zZWxlY3QtcGFkZGluZy15ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXg7XG4gIGZvbnQtZmFtaWx5OiAkZm9ybS1zZWxlY3QtZm9udC1mYW1pbHk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1zZWxlY3QtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLXNlbGVjdC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRmb3JtLXNlbGVjdC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRmb3JtLXNlbGVjdC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tc2VsZWN0LWJnO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS1zZWxlY3QtYmctaW1nKSwgdmFyKC0tI3skcHJlZml4fWZvcm0tc2VsZWN0LWJnLWljb24sIG5vbmUpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZm9ybS1zZWxlY3QtYmctcG9zaXRpb247XG4gIGJhY2tncm91bmQtc2l6ZTogJGZvcm0tc2VsZWN0LWJnLXNpemU7XG4gIGJvcmRlcjogJGZvcm0tc2VsZWN0LWJvcmRlci13aWR0aCBzb2xpZCAkZm9ybS1zZWxlY3QtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzLCAwKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1zZWxlY3QtYm94LXNoYWRvdyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGZvcm0tc2VsZWN0LXRyYW5zaXRpb24pO1xuICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1zZWxlY3QtYm94LXNoYWRvdywgJGZvcm0tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgYm94LXNoYWRvdzogJGZvcm0tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuICB9XG5cbiAgJlttdWx0aXBsZV0sXG4gICZbc2l6ZV06bm90KFtzaXplPVwiMVwiXSkge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkZm9ybS1zZWxlY3QtZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC8vIFJlbW92ZSBvdXRsaW5lIGZyb20gc2VsZWN0IGJveCBpbiBGRlxuICAmOi1tb3otZm9jdXNyaW5nIHtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdGV4dC1zaGFkb3c6IDAgMCAwICRmb3JtLXNlbGVjdC1jb2xvcjtcbiAgfVxufVxuXG4uZm9ybS1zZWxlY3Qtc20ge1xuICBwYWRkaW5nLXRvcDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1zbTtcbiAgcGFkZGluZy1ib3R0b206ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXktc207XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLXNlbGVjdC1mb250LXNpemUtc20pO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLmZvcm0tc2VsZWN0LWxnIHtcbiAgcGFkZGluZy10b3A6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXktbGc7XG4gIHBhZGRpbmctYm90dG9tOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1zZWxlY3QtZm9udC1zaXplLWxnKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbkBpZiAkZW5hYmxlLWRhcmstbW9kZSB7XG4gIEBpbmNsdWRlIGNvbG9yLW1vZGUoZGFyaykge1xuICAgIC5mb3JtLXNlbGVjdCB7XG4gICAgICAtLSN7JHByZWZpeH1mb3JtLXNlbGVjdC1iZy1pbWc6ICN7ZXNjYXBlLXN2ZygkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLWRhcmspfTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBDaGVjay9yYWRpb1xuLy9cblxuLmZvcm0tY2hlY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWluLWhlaWdodDogJGZvcm0tY2hlY2stbWluLWhlaWdodDtcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1jaGVjay1wYWRkaW5nLXN0YXJ0O1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1jaGVjay1tYXJnaW4tYm90dG9tO1xuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogJGZvcm0tY2hlY2stcGFkZGluZy1zdGFydCAqIC0xO1xuICB9XG59XG5cbi5mb3JtLWNoZWNrLXJldmVyc2Uge1xuICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1jaGVjay1wYWRkaW5nLXN0YXJ0O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1wYWRkaW5nLXN0YXJ0ICogLTE7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuLmZvcm0tY2hlY2staW5wdXQge1xuICAtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnOiAjeyRmb3JtLWNoZWNrLWlucHV0LWJnfTtcblxuICB3aWR0aDogJGZvcm0tY2hlY2staW5wdXQtd2lkdGg7XG4gIGhlaWdodDogJGZvcm0tY2hlY2staW5wdXQtd2lkdGg7XG4gIG1hcmdpbi10b3A6ICgkbGluZS1oZWlnaHQtYmFzZSAtICRmb3JtLWNoZWNrLWlucHV0LXdpZHRoKSAqIC41OyAvLyBsaW5lLWhlaWdodCBtaW51cyBjaGVjayBoZWlnaHRcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmcpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZy1pbWFnZSk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBib3JkZXI6ICRmb3JtLWNoZWNrLWlucHV0LWJvcmRlcjtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgcHJpbnQtY29sb3ItYWRqdXN0OiBleGFjdDsgLy8gS2VlcCB0aGVtZWQgYXBwZWFyYW5jZSBmb3IgcHJpbnRcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1jaGVjay10cmFuc2l0aW9uKTtcblxuICAmW3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1jaGVjay1pbnB1dC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICZbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyLXJhZGl1czogJGZvcm0tY2hlY2stcmFkaW8tYm9yZGVyLXJhZGl1cztcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICBmaWx0ZXI6ICRmb3JtLWNoZWNrLWlucHV0LWFjdGl2ZS1maWx0ZXI7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJvcmRlcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cblxuICAmOmNoZWNrZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJvcmRlci1jb2xvcjtcblxuICAgICZbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICAgIC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmctaW1hZ2U6ICN7ZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWltYWdlKX0sIHZhcigtLSN7JHByZWZpeH1ncmFkaWVudCk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZy1pbWFnZTogI3tlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctaW1hZ2UpfTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgICAtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnLWltYWdlOiAje2VzY2FwZS1zdmcoJGZvcm0tY2hlY2stcmFkaW8tY2hlY2tlZC1iZy1pbWFnZSl9LCB2YXIoLS0jeyRwcmVmaXh9Z3JhZGllbnQpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmctaW1hZ2U6ICN7ZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1yYWRpby1jaGVja2VkLWJnLWltYWdlKX07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJlt0eXBlPVwiY2hlY2tib3hcIl06aW5kZXRlcm1pbmF0ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYm9yZGVyLWNvbG9yO1xuXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmctaW1hZ2U6ICN7ZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWltYWdlKX0sIHZhcigtLSN7JHByZWZpeH1ncmFkaWVudCk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnLWltYWdlOiAje2VzY2FwZS1zdmcoJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1pbWFnZSl9O1xuICAgIH1cbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGZpbHRlcjogbm9uZTtcbiAgICBvcGFjaXR5OiAkZm9ybS1jaGVjay1pbnB1dC1kaXNhYmxlZC1vcGFjaXR5O1xuICB9XG5cbiAgLy8gVXNlIGRpc2FibGVkIGF0dHJpYnV0ZSBpbiBhZGRpdGlvbiBvZiA6ZGlzYWJsZWQgcHNldWRvLWNsYXNzXG4gIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yODI0N1xuICAmW2Rpc2FibGVkXSxcbiAgJjpkaXNhYmxlZCB7XG4gICAgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICBvcGFjaXR5OiAkZm9ybS1jaGVjay1sYWJlbC1kaXNhYmxlZC1vcGFjaXR5O1xuICAgIH1cbiAgfVxufVxuXG4uZm9ybS1jaGVjay1sYWJlbCB7XG4gIGNvbG9yOiAkZm9ybS1jaGVjay1sYWJlbC1jb2xvcjtcbiAgY3Vyc29yOiAkZm9ybS1jaGVjay1sYWJlbC1jdXJzb3I7XG59XG5cbi8vXG4vLyBTd2l0Y2hcbi8vXG5cbi5mb3JtLXN3aXRjaCB7XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQ7XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIC0tI3skcHJlZml4fWZvcm0tc3dpdGNoLWJnOiAje2VzY2FwZS1zdmcoJGZvcm0tc3dpdGNoLWJnLWltYWdlKX07XG5cbiAgICB3aWR0aDogJGZvcm0tc3dpdGNoLXdpZHRoO1xuICAgIG1hcmdpbi1sZWZ0OiAkZm9ybS1zd2l0Y2gtcGFkZGluZy1zdGFydCAqIC0xO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLSN7JHByZWZpeH1mb3JtLXN3aXRjaC1iZyk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1zd2l0Y2gtYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1zd2l0Y2gtdHJhbnNpdGlvbik7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIC0tI3skcHJlZml4fWZvcm0tc3dpdGNoLWJnOiAje2VzY2FwZS1zdmcoJGZvcm0tc3dpdGNoLWZvY3VzLWJnLWltYWdlKX07XG4gICAgfVxuXG4gICAgJjpjaGVja2VkIHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLXBvc2l0aW9uO1xuXG4gICAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgICAtLSN7JHByZWZpeH1mb3JtLXN3aXRjaC1iZzogI3tlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLWltYWdlKX0sIHZhcigtLSN7JHByZWZpeH1ncmFkaWVudCk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1zd2l0Y2gtYmc6ICN7ZXNjYXBlLXN2ZygkZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1pbWFnZSl9O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuZm9ybS1jaGVjay1yZXZlcnNlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1zd2l0Y2gtcGFkZGluZy1zdGFydDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLXN3aXRjaC1wYWRkaW5nLXN0YXJ0ICogLTE7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuLmZvcm0tY2hlY2staW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4tZW5kO1xufVxuXG4uYnRuLWNoZWNrIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAmW2Rpc2FibGVkXSxcbiAgJjpkaXNhYmxlZCB7XG4gICAgKyAuYnRuIHtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgZmlsdGVyOiBub25lO1xuICAgICAgb3BhY2l0eTogJGZvcm0tY2hlY2stYnRuLWNoZWNrLWRpc2FibGVkLW9wYWNpdHk7XG4gICAgfVxuICB9XG59XG5cbkBpZiAkZW5hYmxlLWRhcmstbW9kZSB7XG4gIEBpbmNsdWRlIGNvbG9yLW1vZGUoZGFyaykge1xuICAgIC5mb3JtLXN3aXRjaCAuZm9ybS1jaGVjay1pbnB1dDpub3QoOmNoZWNrZWQpOm5vdCg6Zm9jdXMpIHtcbiAgICAgIC0tI3skcHJlZml4fWZvcm0tc3dpdGNoLWJnOiAje2VzY2FwZS1zdmcoJGZvcm0tc3dpdGNoLWJnLWltYWdlLWRhcmspfTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFJhbmdlXG4vL1xuLy8gU3R5bGUgcmFuZ2UgaW5wdXRzIHRoZSBzYW1lIGFjcm9zcyBicm93c2Vycy4gVmVuZG9yLXNwZWNpZmljIHJ1bGVzIGZvciBwc2V1ZG9cbi8vIGVsZW1lbnRzIGNhbm5vdCBiZSBtaXhlZC4gQXMgc3VjaCwgdGhlcmUgYXJlIG5vIHNoYXJlZCBzdHlsZXMgZm9yIGZvY3VzIG9yXG4vLyBhY3RpdmUgc3RhdGVzIG9uIHByZWZpeGVkIHNlbGVjdG9ycy5cblxuLmZvcm0tcmFuZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhZGQoJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0LCAkZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoICogMik7XG4gIHBhZGRpbmc6IDA7IC8vIE5lZWQgdG8gcmVzZXQgcGFkZGluZ1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuXG4gICAgLy8gUHNldWRvLWVsZW1lbnRzIG11c3QgYmUgc3BsaXQgYWNyb3NzIG11bHRpcGxlIHJ1bGVzZXRzIHRvIGhhdmUgYW4gZWZmZWN0LlxuICAgIC8vIE5vIGJveC1zaGFkb3coKSBtaXhpbiBmb3IgZm9jdXMgYWNjZXNzaWJpbGl0eS5cbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7IGJveC1zaGFkb3c6ICRmb3JtLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgICAmOjotbW96LXJhbmdlLXRodW1iICAgICB7IGJveC1zaGFkb3c6ICRmb3JtLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgfVxuXG4gICY6Oi1tb3otZm9jdXMtb3V0ZXIge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICB3aWR0aDogJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgbWFyZ2luLXRvcDogKCRmb3JtLXJhbmdlLXRyYWNrLWhlaWdodCAtICRmb3JtLXJhbmdlLXRodW1iLWhlaWdodCkgKiAuNTsgLy8gV2Via2l0IHNwZWNpZmljXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLXJhbmdlLXRodW1iLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICB3aWR0aDogJGZvcm0tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkZm9ybS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50OyAvLyBXaHk/XG4gICAgY3Vyc29yOiAkZm9ybS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFuZ2UtdHJhY2stYmc7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICB3aWR0aDogJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLXJhbmdlLXRodW1iLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICAgIHdpZHRoOiAkZm9ybS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRmb3JtLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiAkZm9ybS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFuZ2UtdHJhY2stYmc7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRmlyZWZveCBzcGVjaWZpYz9cbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cblxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG4iLCIuZm9ybS1mbG9hdGluZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQsXG4gID4gLmZvcm0tc2VsZWN0IHtcbiAgICBoZWlnaHQ6ICRmb3JtLWZsb2F0aW5nLWhlaWdodDtcbiAgICBtaW4taGVpZ2h0OiAkZm9ybS1mbG9hdGluZy1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRmb3JtLWZsb2F0aW5nLWxpbmUtaGVpZ2h0O1xuICB9XG5cbiAgPiBsYWJlbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDI7XG4gICAgaGVpZ2h0OiAxMDAlOyAvLyBhbGxvdyB0ZXh0YXJlYXNcbiAgICBwYWRkaW5nOiAkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXkgJGZvcm0tZmxvYXRpbmctcGFkZGluZy14O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7IC8vIFJlcXVpcmVkIGZvciBhbGlnbmluZyBsYWJlbCdzIHRleHQgd2l0aCB0aGUgaW5wdXQgYXMgaXQgYWZmZWN0cyBpbm5lciBib3ggbW9kZWxcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1mbG9hdGluZy10cmFuc2l0aW9uKTtcbiAgfVxuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gICAgcGFkZGluZzogJGZvcm0tZmxvYXRpbmctcGFkZGluZy15ICRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteDtcblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICY6bm90KDpwbGFjZWhvbGRlci1zaG93bikge1xuICAgICAgcGFkZGluZy10b3A6ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctdDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAkZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLWI7XG4gICAgfVxuICAgIC8vIER1cGxpY2F0ZWQgYmVjYXVzZSBgOi13ZWJraXQtYXV0b2ZpbGxgIGludmFsaWRhdGVzIG90aGVyIHNlbGVjdG9ycyB3aGVuIGdyb3VwZWRcbiAgICAmOi13ZWJraXQtYXV0b2ZpbGwge1xuICAgICAgcGFkZGluZy10b3A6ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctdDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAkZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLWI7XG4gICAgfVxuICB9XG5cbiAgPiAuZm9ybS1zZWxlY3Qge1xuICAgIHBhZGRpbmctdG9wOiAkZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLXQ7XG4gICAgcGFkZGluZy1ib3R0b206ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctYjtcbiAgfVxuXG4gID4gLmZvcm0tY29udHJvbDpmb2N1cyxcbiAgPiAuZm9ybS1jb250cm9sOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pLFxuICA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LFxuICA+IC5mb3JtLXNlbGVjdCB7XG4gICAgfiBsYWJlbCB7XG4gICAgICBjb2xvcjogcmdiYSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvci1yZ2IpLCAjeyRmb3JtLWZsb2F0aW5nLWxhYmVsLW9wYWNpdHl9KTtcbiAgICAgIHRyYW5zZm9ybTogJGZvcm0tZmxvYXRpbmctbGFiZWwtdHJhbnNmb3JtO1xuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaW5zZXQ6ICRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteSAoJGZvcm0tZmxvYXRpbmctcGFkZGluZy14ICogLjUpO1xuICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgaGVpZ2h0OiAkZm9ybS1mbG9hdGluZy1sYWJlbC1oZWlnaHQ7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIER1cGxpY2F0ZWQgYmVjYXVzZSBgOi13ZWJraXQtYXV0b2ZpbGxgIGludmFsaWRhdGVzIG90aGVyIHNlbGVjdG9ycyB3aGVuIGdyb3VwZWRcbiAgPiAuZm9ybS1jb250cm9sOi13ZWJraXQtYXV0b2ZpbGwge1xuICAgIH4gbGFiZWwge1xuICAgICAgY29sb3I6IHJnYmEodmFyKC0tI3skcHJlZml4fWJvZHktY29sb3ItcmdiKSwgI3skZm9ybS1mbG9hdGluZy1sYWJlbC1vcGFjaXR5fSk7XG4gICAgICB0cmFuc2Zvcm06ICRmb3JtLWZsb2F0aW5nLWxhYmVsLXRyYW5zZm9ybTtcbiAgICB9XG4gIH1cblxuICA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgICB+IGxhYmVsIHtcbiAgICAgIGJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aCAwOyAvLyBSZXF1aXJlZCB0byBwcm9wZXJseSBwb3NpdGlvbiBsYWJlbCB0ZXh0IC0gYXMgZXhwbGFpbmVkIGFib3ZlXG4gICAgfVxuICB9XG5cbiAgPiA6ZGlzYWJsZWQgfiBsYWJlbCB7XG4gICAgY29sb3I6ICRmb3JtLWZsb2F0aW5nLWxhYmVsLWRpc2FibGVkLWNvbG9yO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJnO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uaW5wdXQtZ3JvdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgLy8gRm9yIGZvcm0gdmFsaWRhdGlvbiBmZWVkYmFja1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5mb3JtLXNlbGVjdCxcbiAgPiAuZm9ybS1mbG9hdGluZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyAvLyBGb3IgZm9jdXMgc3RhdGUncyB6LWluZGV4XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgd2lkdGg6IDElO1xuICAgIG1pbi13aWR0aDogMDsgLy8gaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMzYyNDcxNDAvd2h5LWRvbnQtZmxleC1pdGVtcy1zaHJpbmstcGFzdC1jb250ZW50LXNpemVcbiAgfVxuXG4gIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGZvcm0gY29udHJvbCB0byB0aGUgdG9wIG9mIHN1cnJvdW5kaW5nIGVsZW1lbnRzXG4gID4gLmZvcm0tY29udHJvbDpmb2N1cyxcbiAgPiAuZm9ybS1zZWxlY3Q6Zm9jdXMsXG4gID4gLmZvcm0tZmxvYXRpbmc6Zm9jdXMtd2l0aGluIHtcbiAgICB6LWluZGV4OiA1O1xuICB9XG5cbiAgLy8gRW5zdXJlIGJ1dHRvbnMgYXJlIGFsd2F5cyBhYm92ZSBpbnB1dHMgZm9yIG1vcmUgdmlzdWFsbHkgcGxlYXNpbmcgYm9yZGVycy5cbiAgLy8gVGhpcyBpc24ndCBuZWVkZWQgZm9yIGAuaW5wdXQtZ3JvdXAtdGV4dGAgc2luY2UgaXQgc2hhcmVzIHRoZSBzYW1lIGJvcmRlci1jb2xvclxuICAvLyBhcyBvdXIgaW5wdXRzLlxuICAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgei1pbmRleDogNTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBUZXh0dWFsIGFkZG9uc1xuLy9cbi8vIFNlcnZlcyBhcyBhIGNhdGNoLWFsbCBlbGVtZW50IGZvciBhbnkgdGV4dCBvciByYWRpby9jaGVja2JveCBpbnB1dCB5b3Ugd2lzaFxuLy8gdG8gcHJlcGVuZCBvciBhcHBlbmQgdG8gYW4gaW5wdXQuXG5cbi5pbnB1dC1ncm91cC10ZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogJGlucHV0LWdyb3VwLWFkZG9uLXBhZGRpbmcteSAkaW5wdXQtZ3JvdXAtYWRkb24tcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7IC8vIE1hdGNoIGlucHV0c1xuICBmb250LXdlaWdodDogJGlucHV0LWdyb3VwLWFkZG9uLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1iZztcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkICRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xufVxuXG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGZvcm0gY29udHJvbCBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXJcbi8vIG1hbmlwdWxhdGlvbi5cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLWxnID4gLmJ0biB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLXNtID4gLmJ0biB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tc2VsZWN0LFxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tc2VsZWN0IHtcbiAgcGFkZGluZy1yaWdodDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteCArICRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZztcbn1cblxuXG4vLyBSb3VuZGVkIGNvcm5lcnNcbi8vXG4vLyBUaGVzZSBydWxlc2V0cyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIHNpemluZyBvbmVzIHRvIHByb3Blcmx5IG92ZXJyaWRlIHNtIGFuZCBsZ1xuLy8gYm9yZGVyLXJhZGl1cyB2YWx1ZXMgd2hlbiBleHRlbmRpbmcuIFRoZXkncmUgbW9yZSBzcGVjaWZpYyB0aGFuIHdlJ2QgbGlrZVxuLy8gd2l0aCB0aGUgYC5pbnB1dC1ncm91cCA+YCBwYXJ0LCBidXQgd2l0aG91dCBpdCwgd2UgY2Fubm90IG92ZXJyaWRlIHRoZSBzaXppbmcuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4uaW5wdXQtZ3JvdXAge1xuICAmOm5vdCguaGFzLXZhbGlkYXRpb24pIHtcbiAgICA+IDpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKTpub3QoLmRyb3Bkb3duLW1lbnUpOm5vdCguZm9ybS1mbG9hdGluZyksXG4gICAgPiAuZHJvcGRvd24tdG9nZ2xlOm50aC1sYXN0LWNoaWxkKG4gKyAzKSxcbiAgICA+IC5mb3JtLWZsb2F0aW5nOm5vdCg6bGFzdC1jaGlsZCkgPiAuZm9ybS1jb250cm9sLFxuICAgID4gLmZvcm0tZmxvYXRpbmc6bm90KDpsYXN0LWNoaWxkKSA+IC5mb3JtLXNlbGVjdCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItZW5kLXJhZGl1cygwKTtcbiAgICB9XG4gIH1cblxuICAmLmhhcy12YWxpZGF0aW9uIHtcbiAgICA+IDpudGgtbGFzdC1jaGlsZChuICsgMyk6bm90KC5kcm9wZG93bi10b2dnbGUpOm5vdCguZHJvcGRvd24tbWVudSk6bm90KC5mb3JtLWZsb2F0aW5nKSxcbiAgICA+IC5kcm9wZG93bi10b2dnbGU6bnRoLWxhc3QtY2hpbGQobiArIDQpLFxuICAgID4gLmZvcm0tZmxvYXRpbmc6bnRoLWxhc3QtY2hpbGQobiArIDMpID4gLmZvcm0tY29udHJvbCxcbiAgICA+IC5mb3JtLWZsb2F0aW5nOm50aC1sYXN0LWNoaWxkKG4gKyAzKSA+IC5mb3JtLXNlbGVjdCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItZW5kLXJhZGl1cygwKTtcbiAgICB9XG4gIH1cblxuICAkdmFsaWRhdGlvbi1tZXNzYWdlczogXCJcIjtcbiAgQGVhY2ggJHN0YXRlIGluIG1hcC1rZXlzKCRmb3JtLXZhbGlkYXRpb24tc3RhdGVzKSB7XG4gICAgJHZhbGlkYXRpb24tbWVzc2FnZXM6ICR2YWxpZGF0aW9uLW1lc3NhZ2VzICsgXCI6bm90KC5cIiArIHVucXVvdGUoJHN0YXRlKSArIFwiLXRvb2x0aXApXCIgKyBcIjpub3QoLlwiICsgdW5xdW90ZSgkc3RhdGUpICsgXCItZmVlZGJhY2spXCI7XG4gIH1cblxuICA+IDpub3QoOmZpcnN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLW1lbnUpI3skdmFsaWRhdGlvbi1tZXNzYWdlc30ge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKCN7JGlucHV0LWJvcmRlci13aWR0aH0gKiAtMSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgQGluY2x1ZGUgYm9yZGVyLXN0YXJ0LXJhZGl1cygwKTtcbiAgfVxuXG4gID4gLmZvcm0tZmxvYXRpbmc6bm90KDpmaXJzdC1jaGlsZCkgPiAuZm9ybS1jb250cm9sLFxuICA+IC5mb3JtLWZsb2F0aW5nOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmZvcm0tc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBib3JkZXItc3RhcnQtcmFkaXVzKDApO1xuICB9XG59XG4iLCIvLyBUaGlzIG1peGluIHVzZXMgYW4gYGlmKClgIHRlY2huaXF1ZSB0byBiZSBjb21wYXRpYmxlIHdpdGggRGFydCBTYXNzXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMTg3MyNpc3N1ZWNvbW1lbnQtMTUyMjkzNzI1IGZvciBtb3JlIGRldGFpbHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tdmFsaWRhdGlvbi1taXhpbnNcbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gIEBpZiAoJHN0YXRlID09IFwidmFsaWRcIiBvciAkc3RhdGUgPT0gXCJpbnZhbGlkXCIpIHtcbiAgICAud2FzLXZhbGlkYXRlZCAje2lmKCYsIFwiJlwiLCBcIlwiKX06I3skc3RhdGV9LFxuICAgICN7aWYoJiwgXCImXCIsIFwiXCIpfS5pcy0jeyRzdGF0ZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAje2lmKCYsIFwiJlwiLCBcIlwiKX0uaXMtI3skc3RhdGV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlKFxuICAkc3RhdGUsXG4gICRjb2xvcixcbiAgJGljb24sXG4gICR0b29sdGlwLWNvbG9yOiBjb2xvci1jb250cmFzdCgkY29sb3IpLFxuICAkdG9vbHRpcC1iZy1jb2xvcjogcmdiYSgkY29sb3IsICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eSksXG4gICRmb2N1cy1ib3gtc2hhZG93OiAwIDAgJGlucHV0LWJ0bi1mb2N1cy1ibHVyICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgJGlucHV0LWJ0bi1mb2N1cy1jb2xvci1vcGFjaXR5KSxcbiAgJGJvcmRlci1jb2xvcjogJGNvbG9yXG4pIHtcbiAgLiN7JHN0YXRlfS1mZWVkYmFjayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAkZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay1mb250LXNpemUpO1xuICAgIGZvbnQtc3R5bGU6ICRmb3JtLWZlZWRiYWNrLWZvbnQtc3R5bGU7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gIC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICB6LWluZGV4OiA1O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyAvLyBDb250YWluIHRvIHBhcmVudCB3aGVuIHBvc3NpYmxlXG4gICAgcGFkZGluZzogJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXkgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXg7XG4gICAgbWFyZ2luLXRvcDogLjFyZW07XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDtcbiAgICBjb2xvcjogJHRvb2x0aXAtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmctY29sb3I7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICAuZm9ybS1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG5cbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRpY29uKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiAkZm9jdXMtYm94LXNoYWRvdztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG4gIHRleHRhcmVhLmZvcm0tY29udHJvbCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1oZWlnaHQtaW5uZXI7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXIgcmlnaHQgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mb3JtLXNlbGVjdCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgJjpub3QoW211bHRpcGxlXSk6bm90KFtzaXplXSksXG4gICAgICAgICY6bm90KFttdWx0aXBsZV0pW3NpemU9XCIxXCJdIHtcbiAgICAgICAgICAtLSN7JHByZWZpeH1mb3JtLXNlbGVjdC1iZy1pY29uOiAje2VzY2FwZS1zdmcoJGljb24pfTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLWVuZDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZm9ybS1zZWxlY3QtYmctcG9zaXRpb24sICRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uO1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogJGZvcm0tc2VsZWN0LWJnLXNpemUsICRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogJGZvY3VzLWJveC1zaGFkb3c7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY29udHJvbC1jb2xvciB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHdpZHRoOiBhZGQoJGZvcm0tY29sb3Itd2lkdGgsICRpbnB1dC1oZWlnaHQtaW5uZXIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG5cbiAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJveC1zaGFkb3c6ICRmb2N1cy1ib3gtc2hhZG93O1xuICAgICAgfVxuXG4gICAgICB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmZvcm0tY2hlY2staW5saW5lIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2sge1xuICAgICAgbWFyZ2luLWxlZnQ6IC41ZW07XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICA+IC5mb3JtLWNvbnRyb2w6bm90KDpmb2N1cyksXG4gICAgPiAuZm9ybS1zZWxlY3Q6bm90KDpmb2N1cyksXG4gICAgPiAuZm9ybS1mbG9hdGluZzpub3QoOmZvY3VzLXdpdGhpbikge1xuICAgICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgICBAaWYgJHN0YXRlID09IFwidmFsaWRcIiB7XG4gICAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgfSBAZWxzZSBpZiAkc3RhdGUgPT0gXCJpbnZhbGlkXCIge1xuICAgICAgICAgIHotaW5kZXg6IDQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS12YWxpZGF0aW9uLW1peGluc1xuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYnRuIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IGJ0bi1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1idG4tcGFkZGluZy14OiAjeyRidG4tcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9YnRuLXBhZGRpbmcteTogI3skYnRuLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWJ0bi1mb250LWZhbWlseTogI3skYnRuLWZvbnQtZmFtaWx5fTtcbiAgQGluY2x1ZGUgcmZzKCRidG4tZm9udC1zaXplLCAtLSN7JHByZWZpeH1idG4tZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9YnRuLWZvbnQtd2VpZ2h0OiAjeyRidG4tZm9udC13ZWlnaHR9O1xuICAtLSN7JHByZWZpeH1idG4tbGluZS1oZWlnaHQ6ICN7JGJ0bi1saW5lLWhlaWdodH07XG4gIC0tI3skcHJlZml4fWJ0bi1jb2xvcjogI3skYnRuLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJnOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci13aWR0aDogI3skYnRuLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tYm9yZGVyLXJhZGl1czogI3skYnRuLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWJveC1zaGFkb3c6ICN7JGJ0bi1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLW9wYWNpdHk6ICN7JGJ0bi1kaXNhYmxlZC1vcGFjaXR5fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3c6IDAgMCAwICN7JGJ0bi1mb2N1cy13aWR0aH0gcmdiYSh2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLXNoYWRvdy1yZ2IpLCAuNSk7XG4gIC8vIHNjc3MtZG9jcy1lbmQgYnRuLWNzcy12YXJzXG5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9YnRuLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXgpO1xuICBmb250LWZhbWlseTogdmFyKC0tI3skcHJlZml4fWJ0bi1mb250LWZhbWlseSk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9YnRuLWZvbnQtc2l6ZSkpO1xuICBmb250LXdlaWdodDogdmFyKC0tI3skcHJlZml4fWJ0bi1mb250LXdlaWdodCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWxpbmUtaGVpZ2h0KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tY29sb3IpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgd2hpdGUtc3BhY2U6ICRidG4td2hpdGUtc3BhY2U7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGN1cnNvcjogaWYoJGVuYWJsZS1idXR0b24tcG9pbnRlcnMsIHBvaW50ZXIsIG51bGwpO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWJ0bi1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1idG4tYm9yZGVyLXJhZGl1cykpO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZyh2YXIoLS0jeyRwcmVmaXh9YnRuLWJnKSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tI3skcHJlZml4fWJ0bi1ib3gtc2hhZG93KSk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJ0bi10cmFuc2l0aW9uKTtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJvcmRlci1jb2xvcik7XG4gIH1cblxuICAuYnRuLWNoZWNrICsgJjpob3ZlciB7XG4gICAgLy8gb3ZlcnJpZGUgZm9yIHRoZSBjaGVja2JveC9yYWRpbyBidXR0b25zXG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ib3JkZXItY29sb3IpO1xuICB9XG5cbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1jb2xvcik7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1iZykpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1ib3JkZXItY29sb3IpO1xuICAgIG91dGxpbmU6IDA7XG4gICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1ib3gtc2hhZG93KSwgdmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfVxuICB9XG5cbiAgLmJ0bi1jaGVjazpmb2N1cy12aXNpYmxlICsgJiB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJvcmRlci1jb2xvcik7XG4gICAgb3V0bGluZTogMDtcbiAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWJveC1zaGFkb3cpLCB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9XG4gIH1cblxuICAuYnRuLWNoZWNrOmNoZWNrZWQgKyAmLFxuICA6bm90KC5idG4tY2hlY2spICsgJjphY3RpdmUsXG4gICY6Zmlyc3QtY2hpbGQ6YWN0aXZlLFxuICAmLmFjdGl2ZSxcbiAgJi5zaG93IHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJnKTtcbiAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBpZigkZW5hYmxlLWdyYWRpZW50cywgbm9uZSwgbnVsbCk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1ib3JkZXItY29sb3IpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtc2hhZG93KSk7XG5cbiAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tYWN0aXZlLXNoYWRvdyksIHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmOmRpc2FibGVkLFxuICAmLmRpc2FibGVkLFxuICBmaWVsZHNldDpkaXNhYmxlZCAmIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1jb2xvcik7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1iZyk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIG5vbmUsIG51bGwpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3IpO1xuICAgIG9wYWNpdHk6IHZhcigtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtb3BhY2l0eSk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBBbHRlcm5hdGUgYnV0dG9uc1xuLy9cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJ0bi12YXJpYW50LWxvb3BzXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi0jeyRjb2xvcn0ge1xuICAgIEBpZiAkY29sb3IgPT0gXCJsaWdodFwiIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KFxuICAgICAgICAkdmFsdWUsXG4gICAgICAgICR2YWx1ZSxcbiAgICAgICAgJGhvdmVyLWJhY2tncm91bmQ6IHNoYWRlLWNvbG9yKCR2YWx1ZSwgJGJ0bi1ob3Zlci1iZy1zaGFkZS1hbW91bnQpLFxuICAgICAgICAkaG92ZXItYm9yZGVyOiBzaGFkZS1jb2xvcigkdmFsdWUsICRidG4taG92ZXItYm9yZGVyLXNoYWRlLWFtb3VudCksXG4gICAgICAgICRhY3RpdmUtYmFja2dyb3VuZDogc2hhZGUtY29sb3IoJHZhbHVlLCAkYnRuLWFjdGl2ZS1iZy1zaGFkZS1hbW91bnQpLFxuICAgICAgICAkYWN0aXZlLWJvcmRlcjogc2hhZGUtY29sb3IoJHZhbHVlLCAkYnRuLWFjdGl2ZS1ib3JkZXItc2hhZGUtYW1vdW50KVxuICAgICAgKTtcbiAgICB9IEBlbHNlIGlmICRjb2xvciA9PSBcImRhcmtcIiB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudChcbiAgICAgICAgJHZhbHVlLFxuICAgICAgICAkdmFsdWUsXG4gICAgICAgICRob3Zlci1iYWNrZ3JvdW5kOiB0aW50LWNvbG9yKCR2YWx1ZSwgJGJ0bi1ob3Zlci1iZy10aW50LWFtb3VudCksXG4gICAgICAgICRob3Zlci1ib3JkZXI6IHRpbnQtY29sb3IoJHZhbHVlLCAkYnRuLWhvdmVyLWJvcmRlci10aW50LWFtb3VudCksXG4gICAgICAgICRhY3RpdmUtYmFja2dyb3VuZDogdGludC1jb2xvcigkdmFsdWUsICRidG4tYWN0aXZlLWJnLXRpbnQtYW1vdW50KSxcbiAgICAgICAgJGFjdGl2ZS1ib3JkZXI6IHRpbnQtY29sb3IoJHZhbHVlLCAkYnRuLWFjdGl2ZS1ib3JkZXItdGludC1hbW91bnQpXG4gICAgICApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJHZhbHVlLCAkdmFsdWUpO1xuICAgIH1cbiAgfVxufVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi1vdXRsaW5lLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkdmFsdWUpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGJ0bi12YXJpYW50LWxvb3BzXG5cblxuLy9cbi8vIExpbmsgYnV0dG9uc1xuLy9cblxuLy8gTWFrZSBhIGJ1dHRvbiBsb29rIGFuZCBiZWhhdmUgbGlrZSBhIGxpbmtcbi5idG4tbGluayB7XG4gIC0tI3skcHJlZml4fWJ0bi1mb250LXdlaWdodDogI3skZm9udC13ZWlnaHQtbm9ybWFsfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNvbG9yOiAjeyRidG4tbGluay1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1iZzogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItY29sb3I6ICN7JGJ0bi1saW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtY29sb3I6ICN7JGJ0bi1saW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtY29sb3I6ICN7JGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1ib3gtc2hhZG93OiAwIDAgMCAjMDAwOyAvLyBDYW4ndCB1c2UgYG5vbmVgIGFzIGtleXdvcmQgbmVnYXRlcyBhbGwgdmFsdWVzIHdoZW4gdXNlZCB3aXRoIG11bHRpcGxlIHNoYWRvd3NcbiAgLS0jeyRwcmVmaXh9YnRuLWZvY3VzLXNoYWRvdy1yZ2I6ICN7dG8tcmdiKG1peChjb2xvci1jb250cmFzdCgkbGluay1jb2xvciksICRsaW5rLWNvbG9yLCAxNSUpKX07XG5cbiAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmZvY3VzLXZpc2libGUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxuXG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tY29sb3IpO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItY29sb3IpO1xuICB9XG5cbiAgLy8gTm8gbmVlZCBmb3IgYW4gYWN0aXZlIHN0YXRlIGhlcmVcbn1cblxuXG4vL1xuLy8gQnV0dG9uIFNpemVzXG4vL1xuXG4uYnRuLWxnIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktbGcsICRidG4tcGFkZGluZy14LWxnLCAkYnRuLWZvbnQtc2l6ZS1sZywgJGJ0bi1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmJ0bi1zbSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LXNtLCAkYnRuLXBhZGRpbmcteC1zbSwgJGJ0bi1mb250LXNpemUtc20sICRidG4tYm9yZGVyLXJhZGl1cy1zbSk7XG59XG4iLCIvLyBCdXR0b24gdmFyaWFudHNcbi8vXG4vLyBFYXNpbHkgcHVtcCBvdXQgZGVmYXVsdCBzdHlsZXMsIGFzIHdlbGwgYXMgOmhvdmVyLCA6Zm9jdXMsIDphY3RpdmUsXG4vLyBhbmQgZGlzYWJsZWQgb3B0aW9ucyBmb3IgYWxsIGJ1dHRvbnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJ0bi12YXJpYW50LW1peGluXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoXG4gICRiYWNrZ3JvdW5kLFxuICAkYm9yZGVyLFxuICAkY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRiYWNrZ3JvdW5kKSxcbiAgJGhvdmVyLWJhY2tncm91bmQ6IGlmKCRjb2xvciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLWhvdmVyLWJnLXNoYWRlLWFtb3VudCksIHRpbnQtY29sb3IoJGJhY2tncm91bmQsICRidG4taG92ZXItYmctdGludC1hbW91bnQpKSxcbiAgJGhvdmVyLWJvcmRlcjogaWYoJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJGJvcmRlciwgJGJ0bi1ob3Zlci1ib3JkZXItc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYm9yZGVyLCAkYnRuLWhvdmVyLWJvcmRlci10aW50LWFtb3VudCkpLFxuICAkaG92ZXItY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRob3Zlci1iYWNrZ3JvdW5kKSxcbiAgJGFjdGl2ZS1iYWNrZ3JvdW5kOiBpZigkY29sb3IgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCBzaGFkZS1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1hY3RpdmUtYmctc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1hY3RpdmUtYmctdGludC1hbW91bnQpKSxcbiAgJGFjdGl2ZS1ib3JkZXI6IGlmKCRjb2xvciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCRib3JkZXIsICRidG4tYWN0aXZlLWJvcmRlci1zaGFkZS1hbW91bnQpLCB0aW50LWNvbG9yKCRib3JkZXIsICRidG4tYWN0aXZlLWJvcmRlci10aW50LWFtb3VudCkpLFxuICAkYWN0aXZlLWNvbG9yOiBjb2xvci1jb250cmFzdCgkYWN0aXZlLWJhY2tncm91bmQpLFxuICAkZGlzYWJsZWQtYmFja2dyb3VuZDogJGJhY2tncm91bmQsXG4gICRkaXNhYmxlZC1ib3JkZXI6ICRib3JkZXIsXG4gICRkaXNhYmxlZC1jb2xvcjogY29sb3ItY29udHJhc3QoJGRpc2FibGVkLWJhY2tncm91bmQpXG4pIHtcbiAgLS0jeyRwcmVmaXh9YnRuLWNvbG9yOiAjeyRjb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1iZzogI3skYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItY29sb3I6ICN7JGJvcmRlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1jb2xvcjogI3skaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYmc6ICN7JGhvdmVyLWJhY2tncm91bmR9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yOiAjeyRob3Zlci1ib3JkZXJ9O1xuICAtLSN7JHByZWZpeH1idG4tZm9jdXMtc2hhZG93LXJnYjogI3t0by1yZ2IobWl4KCRjb2xvciwgJGJvcmRlciwgMTUlKSl9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWNvbG9yOiAjeyRhY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJnOiAjeyRhY3RpdmUtYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAjeyRhY3RpdmUtYm9yZGVyfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1zaGFkb3c6ICN7JGJ0bi1hY3RpdmUtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1jb2xvcjogI3skZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYmc6ICN7JGRpc2FibGVkLWJhY2tncm91bmR9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAjeyRkaXNhYmxlZC1ib3JkZXJ9O1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tdmFyaWFudC1taXhpblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLW91dGxpbmUtdmFyaWFudC1taXhpblxuQG1peGluIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoXG4gICRjb2xvcixcbiAgJGNvbG9yLWhvdmVyOiBjb2xvci1jb250cmFzdCgkY29sb3IpLFxuICAkYWN0aXZlLWJhY2tncm91bmQ6ICRjb2xvcixcbiAgJGFjdGl2ZS1ib3JkZXI6ICRjb2xvcixcbiAgJGFjdGl2ZS1jb2xvcjogY29sb3ItY29udHJhc3QoJGFjdGl2ZS1iYWNrZ3JvdW5kKVxuKSB7XG4gIC0tI3skcHJlZml4fWJ0bi1jb2xvcjogI3skY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYm9yZGVyLWNvbG9yOiAjeyRjb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1jb2xvcjogI3skY29sb3ItaG92ZXJ9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYmc6ICN7JGFjdGl2ZS1iYWNrZ3JvdW5kfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJvcmRlci1jb2xvcjogI3skYWN0aXZlLWJvcmRlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1mb2N1cy1zaGFkb3ctcmdiOiAje3RvLXJnYigkY29sb3IpfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1jb2xvcjogI3skYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1iZzogI3skYWN0aXZlLWJhY2tncm91bmR9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJvcmRlci1jb2xvcjogI3skYWN0aXZlLWJvcmRlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtc2hhZG93OiAjeyRidG4tYWN0aXZlLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtY29sb3I6ICN7JGNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWJnOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWJvcmRlci1jb2xvcjogI3skY29sb3J9O1xuICAtLSN7JHByZWZpeH1ncmFkaWVudDogbm9uZTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgYnRuLW91dGxpbmUtdmFyaWFudC1taXhpblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLXNpemUtbWl4aW5cbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkYm9yZGVyLXJhZGl1cykge1xuICAtLSN7JHByZWZpeH1idG4tcGFkZGluZy15OiAjeyRwYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1idG4tcGFkZGluZy14OiAjeyRwYWRkaW5nLXh9O1xuICBAaW5jbHVkZSByZnMoJGZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9YnRuLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItcmFkaXVzOiAjeyRib3JkZXItcmFkaXVzfTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgYnRuLXNpemUtbWl4aW5cbiIsIi5mYWRlIHtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1mYWRlKTtcblxuICAmOm5vdCguc2hvdykge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbGxhcHNlLWNsYXNzZXNcbi5jb2xsYXBzZSB7XG4gICY6bm90KC5zaG93KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uY29sbGFwc2luZyB7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1jb2xsYXBzZSk7XG5cbiAgJi5jb2xsYXBzZS1ob3Jpem9udGFsIHtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1jb2xsYXBzZS13aWR0aCk7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgY29sbGFwc2UtY2xhc3Nlc1xuIiwiLy8gVGhlIGRyb3Bkb3duIHdyYXBwZXIgKGA8ZGl2PmApXG4uZHJvcHVwLFxuLmRyb3BlbmQsXG4uZHJvcGRvd24sXG4uZHJvcHN0YXJ0LFxuLmRyb3B1cC1jZW50ZXIsXG4uZHJvcGRvd24tY2VudGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZHJvcGRvd24tdG9nZ2xlIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAvLyBHZW5lcmF0ZSB0aGUgY2FyZXQgYXV0b21hdGljYWxseVxuICBAaW5jbHVkZSBjYXJldCgpO1xufVxuXG4vLyBUaGUgZHJvcGRvd24gbWVudVxuLmRyb3Bkb3duLW1lbnUge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgZHJvcGRvd24tY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24temluZGV4OiAjeyR6aW5kZXgtZHJvcGRvd259O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1taW4td2lkdGg6ICN7JGRyb3Bkb3duLW1pbi13aWR0aH07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLXBhZGRpbmcteDogI3skZHJvcGRvd24tcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tcGFkZGluZy15OiAjeyRkcm9wZG93bi1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1zcGFjZXI6ICN7JGRyb3Bkb3duLXNwYWNlcn07XG4gIEBpbmNsdWRlIHJmcygkZHJvcGRvd24tZm9udC1zaXplLCAtLSN7JHByZWZpeH1kcm9wZG93bi1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1jb2xvcjogI3skZHJvcGRvd24tY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1iZzogI3skZHJvcGRvd24tYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItY29sb3I6ICN7JGRyb3Bkb3duLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci1yYWRpdXM6ICN7JGRyb3Bkb3duLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItd2lkdGg6ICN7JGRyb3Bkb3duLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXM6ICN7JGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1kaXZpZGVyLWJnOiAjeyRkcm9wZG93bi1kaXZpZGVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teTogI3skZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teX07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJveC1zaGFkb3c6ICN7JGRyb3Bkb3duLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWNvbG9yOiAjeyRkcm9wZG93bi1saW5rLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogI3skZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICN7JGRyb3Bkb3duLWxpbmstaG92ZXItYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogI3skZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogI3skZHJvcGRvd24tbGluay1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAjeyRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6ICN7JGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taXRlbS1wYWRkaW5nLXk6ICN7JGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taGVhZGVyLWNvbG9yOiAjeyRkcm9wZG93bi1oZWFkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItcGFkZGluZy14OiAjeyRkcm9wZG93bi1oZWFkZXItcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteTogI3skZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteX07XG4gIC8vIHNjc3MtZG9jcy1lbmQgZHJvcGRvd24tY3NzLXZhcnNcblxuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi16aW5kZXgpO1xuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxuICBtaW4td2lkdGg6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1taW4td2lkdGgpO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tcGFkZGluZy14KTtcbiAgbWFyZ2luOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IG1hcmdpbiBvZiB1bFxuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWZvbnQtc2l6ZSkpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRW5zdXJlcyBwcm9wZXIgYWxpZ25tZW50IGlmIHBhcmVudCBoYXMgaXQgY2hhbmdlZCAoZS5nLiwgbW9kYWwgZm9vdGVyKVxuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tYmcpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWJveC1zaGFkb3cpKTtcblxuICAmW2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLXNwYWNlcik7XG4gIH1cblxuICBAaWYgJGRyb3Bkb3duLXBhZGRpbmcteSA9PSAwIHtcbiAgICA+IC5kcm9wZG93bi1pdGVtOmZpcnN0LWNoaWxkLFxuICAgID4gbGk6Zmlyc3QtY2hpbGQgLmRyb3Bkb3duLWl0ZW0ge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgICB9XG4gICAgPiAuZHJvcGRvd24taXRlbTpsYXN0LWNoaWxkLFxuICAgID4gbGk6bGFzdC1jaGlsZCAuZHJvcGRvd24taXRlbSB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cykpO1xuICAgIH1cblxuICB9XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCByZXNwb25zaXZlLWJyZWFrcG9pbnRzXG4vLyBXZSBkZWxpYmVyYXRlbHkgaGFyZGNvZGUgdGhlIGBicy1gIHByZWZpeCBiZWNhdXNlIHdlIGNoZWNrXG4vLyB0aGlzIGN1c3RvbSBwcm9wZXJ0eSBpbiBKUyB0byBkZXRlcm1pbmUgUG9wcGVyJ3MgcG9zaXRpb25pbmdcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tc3RhcnQge1xuICAgICAgLS1icy1wb3NpdGlvbjogc3RhcnQ7XG5cbiAgICAgICZbZGF0YS1icy1wb3BwZXJdIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tZW5kIHtcbiAgICAgIC0tYnMtcG9zaXRpb246IGVuZDtcblxuICAgICAgJltkYXRhLWJzLXBvcHBlcl0ge1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgcmVzcG9uc2l2ZS1icmVha3BvaW50c1xuXG4vLyBBbGxvdyBmb3IgZHJvcGRvd25zIHRvIGdvIGJvdHRvbSB1cCAoYWthLCBkcm9wdXAtbWVudSlcbi8vIEp1c3QgYWRkIC5kcm9wdXAgYWZ0ZXIgdGhlIHN0YW5kYXJkIC5kcm9wZG93biBjbGFzcyBhbmQgeW91J3JlIHNldC5cbi5kcm9wdXAge1xuICAuZHJvcGRvd24tbWVudVtkYXRhLWJzLXBvcHBlcl0ge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tc3BhY2VyKTtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KHVwKTtcbiAgfVxufVxuXG4uZHJvcGVuZCB7XG4gIC5kcm9wZG93bi1tZW51W2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLXNwYWNlcik7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChlbmQpO1xuICAgICY6OmFmdGVyIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcHN0YXJ0IHtcbiAgLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLXNwYWNlcik7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChzdGFydCk7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gYDxocj5gKSB3aXRoaW4gdGhlIGRyb3Bkb3duXG4uZHJvcGRvd24tZGl2aWRlciB7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teSkgMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1kaXZpZGVyLWJnKTtcbiAgb3BhY2l0eTogMTsgLy8gUmV2aXNpdCBpbiB2NiB0byBkZS1kdXBlIHN0eWxlcyB0aGF0IGNvbmZsaWN0IHdpdGggPGhyPiBlbGVtZW50XG59XG5cbi8vIExpbmtzLCBidXR0b25zLCBhbmQgbW9yZSB3aXRoaW4gdGhlIGRyb3Bkb3duIG1lbnVcbi8vXG4vLyBgPGJ1dHRvbj5gLXNwZWNpZmljIHN0eWxlcyBhcmUgZGVub3RlZCB3aXRoIGAvLyBGb3IgPGJ1dHRvbj5zYFxuLmRyb3Bkb3duLWl0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taXRlbS1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLXBhZGRpbmcteCk7XG4gIGNsZWFyOiBib3RoO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gcHJldmVudCBsaW5rcyBmcm9tIHJhbmRvbWx5IGJyZWFraW5nIG9udG8gbmV3IGxpbmVzXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGb3IgYDxidXR0b24+YHNcbiAgYm9yZGVyOiAwOyAvLyBGb3IgYDxidXR0b24+YHNcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taXRlbS1ib3JkZXItcmFkaXVzLCAwKSk7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1ob3Zlci1iZykpO1xuICB9XG5cbiAgJi5hY3RpdmUsXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstYWN0aXZlLWJnKSk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3IpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGlmKCRlbmFibGUtZ3JhZGllbnRzLCBub25lLCBudWxsKTtcbiAgfVxufVxuXG4uZHJvcGRvd24tbWVudS5zaG93IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIERyb3Bkb3duIHNlY3Rpb24gaGVhZGVyc1xuLmRyb3Bkb3duLWhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXgpO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBmb3IgdXNlIHdpdGggaGVhZGluZyBlbGVtZW50c1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1zbSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taGVhZGVyLWNvbG9yKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gYXMgd2l0aCA+IGxpID4gYVxufVxuXG4vLyBEcm9wZG93biB0ZXh0XG4uZHJvcGRvd24taXRlbS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWl0ZW0tcGFkZGluZy14KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWNvbG9yKTtcbn1cblxuLy8gRGFyayBkcm9wZG93bnNcbi5kcm9wZG93bi1tZW51LWRhcmsge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgZHJvcGRvd24tZGFyay1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1jb2xvcjogI3skZHJvcGRvd24tZGFyay1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJnOiAjeyRkcm9wZG93bi1kYXJrLWJnfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAjeyRkcm9wZG93bi1kYXJrLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJveC1zaGFkb3c6ICN7JGRyb3Bkb3duLWRhcmstYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstbGluay1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstbGluay1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWRpdmlkZXItYmc6ICN7JGRyb3Bkb3duLWRhcmstZGl2aWRlci1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICN7JGRyb3Bkb3duLWRhcmstbGluay1ob3Zlci1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAjeyRkcm9wZG93bi1kYXJrLWxpbmstYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICN7JGRyb3Bkb3duLWRhcmstbGluay1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAjeyRkcm9wZG93bi1kYXJrLWxpbmstZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstaGVhZGVyLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBkcm9wZG93bi1kYXJrLWNzcy12YXJzXG59XG4iLCIvLyBzY3NzLWRvY3Mtc3RhcnQgY2FyZXQtbWl4aW5zXG5AbWl4aW4gY2FyZXQtZG93bigkd2lkdGg6ICRjYXJldC13aWR0aCkge1xuICBib3JkZXItdG9wOiAkd2lkdGggc29saWQ7XG4gIGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBib3JkZXItbGVmdDogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtdXAoJHdpZHRoOiAkY2FyZXQtd2lkdGgpIHtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206ICR3aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWxlZnQ6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LWVuZCgkd2lkdGg6ICRjYXJldC13aWR0aCkge1xuICBib3JkZXItdG9wOiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogJHdpZHRoIHNvbGlkO1xufVxuXG5AbWl4aW4gY2FyZXQtc3RhcnQoJHdpZHRoOiAkY2FyZXQtd2lkdGgpIHtcbiAgYm9yZGVyLXRvcDogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6ICR3aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbTogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQoXG4gICRkaXJlY3Rpb246IGRvd24sXG4gICR3aWR0aDogJGNhcmV0LXdpZHRoLFxuICAkc3BhY2luZzogJGNhcmV0LXNwYWNpbmcsXG4gICR2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXZlcnRpY2FsLWFsaWduXG4pIHtcbiAgQGlmICRlbmFibGUtY2FyZXQge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1sZWZ0OiAkc3BhY2luZztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAkdmVydGljYWwtYWxpZ247XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgQGlmICRkaXJlY3Rpb24gPT0gZG93biB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWRvd24oJHdpZHRoKTtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSB1cCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXVwKCR3aWR0aCk7XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gZW5kIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtZW5kKCR3aWR0aCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gc3RhcnQge1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJHNwYWNpbmc7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiAkdmVydGljYWwtYWxpZ247XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXN0YXJ0KCR3aWR0aCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjplbXB0eTo6YWZ0ZXIge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGNhcmV0LW1peGluc1xuIiwiLy8gTWFrZSB0aGUgZGl2IGJlaGF2ZSBsaWtlIGEgYnV0dG9uXG4uYnRuLWdyb3VwLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8vIG1hdGNoIC5idG4gYWxpZ25tZW50IGdpdmVuIGZvbnQtc2l6ZSBoYWNrIGFib3ZlXG5cbiAgPiAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleDogMSAxIGF1dG87XG4gIH1cblxuICAvLyBCcmluZyB0aGUgaG92ZXIsIGZvY3VzZWQsIGFuZCBcImFjdGl2ZVwiIGJ1dHRvbnMgdG8gdGhlIGZyb250IHRvIG92ZXJsYXlcbiAgLy8gdGhlIGJvcmRlcnMgcHJvcGVybHlcbiAgPiAuYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLFxuICA+IC5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLFxuICA+IC5idG46aG92ZXIsXG4gID4gLmJ0bjpmb2N1cyxcbiAgPiAuYnRuOmFjdGl2ZSxcbiAgPiAuYnRuLmFjdGl2ZSB7XG4gICAgei1pbmRleDogMTtcbiAgfVxufVxuXG4vLyBPcHRpb25hbDogR3JvdXAgbXVsdGlwbGUgYnV0dG9uIGdyb3VwcyB0b2dldGhlciBmb3IgYSB0b29sYmFyXG4uYnRuLXRvb2xiYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAuaW5wdXQtZ3JvdXAge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi5idG4tZ3JvdXAge1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRidG4tYm9yZGVyLXJhZGl1cyk7XG5cbiAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVycyB3aGVuIGJ1dHRvbnMgYXJlIG5leHQgdG8gZWFjaCBvdGhlclxuICA+IDpub3QoLmJ0bi1jaGVjazpmaXJzdC1jaGlsZCkgKyAuYnRuLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKCN7JGJ0bi1ib3JkZXItd2lkdGh9ICogLTEpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICB9XG5cbiAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4gID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgPiAuYnRuLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdDpmaXJzdC1jaGlsZCxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItZW5kLXJhZGl1cygwKTtcbiAgfVxuXG4gIC8vIFRoZSBsZWZ0IHJhZGl1cyBzaG91bGQgYmUgMCBpZiB0aGUgYnV0dG9uIGlzOlxuICAvLyAtIHRoZSBcInRoaXJkIG9yIG1vcmVcIiBjaGlsZFxuICAvLyAtIHRoZSBzZWNvbmQgY2hpbGQgYW5kIHRoZSBwcmV2aW91cyBlbGVtZW50IGlzbid0IGAuYnRuLWNoZWNrYCAobWFraW5nIGl0IHRoZSBmaXJzdCBjaGlsZCB2aXN1YWxseSlcbiAgLy8gLSBwYXJ0IG9mIGEgYnRuLWdyb3VwIHdoaWNoIGlzbid0IHRoZSBmaXJzdCBjaGlsZFxuICA+IC5idG46bnRoLWNoaWxkKG4gKyAzKSxcbiAgPiA6bm90KC5idG4tY2hlY2spICsgLmJ0bixcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXN0YXJ0LXJhZGl1cygwKTtcbiAgfVxufVxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBidXR0b24gc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyIG1hbmlwdWxhdGlvbi5cblxuLmJ0bi1ncm91cC1zbSA+IC5idG4geyBAZXh0ZW5kIC5idG4tc207IH1cbi5idG4tZ3JvdXAtbGcgPiAuYnRuIHsgQGV4dGVuZCAuYnRuLWxnOyB9XG5cblxuLy9cbi8vIFNwbGl0IGJ1dHRvbiBkcm9wZG93bnNcbi8vXG5cbi5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteCAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteCAqIC43NTtcblxuICAmOjphZnRlcixcbiAgLmRyb3B1cCAmOjphZnRlcixcbiAgLmRyb3BlbmQgJjo6YWZ0ZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3BzdGFydCAmOjpiZWZvcmUge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG4uYnRuLXNtICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14LXNtICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14LXNtICogLjc1O1xufVxuXG4uYnRuLWxnICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14LWxnICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14LWxnICogLjc1O1xufVxuXG5cbi8vIFRoZSBjbGlja2FibGUgYnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbWVudVxuLy8gU2V0IHRoZSBzYW1lIGluc2V0IHNoYWRvdyBhcyB0aGUgOmFjdGl2ZSBzdGF0ZVxuLmJ0bi1ncm91cC5zaG93IC5kcm9wZG93bi10b2dnbGUge1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuXG4gIC8vIFNob3cgbm8gc2hhZG93IGZvciBgLmJ0bi1saW5rYCBzaW5jZSBpdCBoYXMgbm8gb3RoZXIgYnV0dG9uIHN0eWxlcy5cbiAgJi5idG4tbGluayB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBWZXJ0aWNhbCBidXR0b24gZ3JvdXBzXG4vL1xuXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKCN7JGJ0bi1ib3JkZXItd2lkdGh9ICogLTEpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICB9XG5cbiAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4gID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgfVxuXG4gID4gLmJ0biB+IC5idG4sXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gS2lja3N0YXJ0IGFueSBuYXZpZ2F0aW9uIGNvbXBvbmVudCB3aXRoIGEgc2V0IG9mIHN0eWxlIHJlc2V0cy4gV29ya3Mgd2l0aFxuLy8gYDxuYXY+YHMsIGA8dWw+YHMgb3IgYDxvbD5gcy5cblxuLm5hdiB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBuYXYtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstcGFkZGluZy14OiAjeyRuYXYtbGluay1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1wYWRkaW5nLXk6ICN7JG5hdi1saW5rLXBhZGRpbmcteX07XG4gIEBpbmNsdWRlIHJmcygkbmF2LWxpbmstZm9udC1zaXplLCAtLSN7JHByZWZpeH1uYXYtbGluay1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1mb250LXdlaWdodDogI3skbmF2LWxpbmstZm9udC13ZWlnaHR9O1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1jb2xvcjogI3skbmF2LWxpbmstY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1ob3Zlci1jb2xvcjogI3skbmF2LWxpbmstaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1kaXNhYmxlZC1jb2xvcjogI3skbmF2LWxpbmstZGlzYWJsZWQtY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG5hdi1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubmF2LWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLXBhZGRpbmcteCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9bmF2LWxpbmstZm9udC1zaXplKSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9bmF2LWxpbmstZm9udC13ZWlnaHQpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLWNvbG9yKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJG5hdi1saW5rLXRyYW5zaXRpb24pO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LWxpbmstaG92ZXItY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICB9XG5cbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRuYXYtbGluay1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGUgbGlnaHRlbnMgdGV4dFxuICAmLmRpc2FibGVkIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLWRpc2FibGVkLWNvbG9yKTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cbn1cblxuLy9cbi8vIFRhYnNcbi8vXG5cbi5uYXYtdGFicyB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBuYXYtdGFicy1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItd2lkdGg6ICN7JG5hdi10YWJzLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci1jb2xvcjogI3skbmF2LXRhYnMtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLXJhZGl1czogI3skbmF2LXRhYnMtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAjeyRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yOiAjeyRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWxpbmstYWN0aXZlLWJnOiAjeyRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZ307XG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjogI3skbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBuYXYtdGFicy1jc3MtdmFyc1xuXG4gIGJvcmRlci1ib3R0b206IHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItY29sb3IpO1xuXG4gIC5uYXYtbGluayB7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItd2lkdGgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItd2lkdGgpIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItcmFkaXVzKSk7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgLy8gUHJldmVudHMgYWN0aXZlIC5uYXYtbGluayB0YWIgb3ZlcmxhcHBpbmcgZm9jdXMgb3V0bGluZSBvZiBwcmV2aW91cy9uZXh0IC5uYXYtbGlua1xuICAgICAgaXNvbGF0aW9uOiBpc29sYXRlO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3IpO1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQsXG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLWRpc2FibGVkLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbmsge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWFjdGl2ZS1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICAvLyBNYWtlIGRyb3Bkb3duIGJvcmRlciBvdmVybGFwIHRhYiBib3JkZXJcbiAgICBtYXJnaW4tdG9wOiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIC8vIFJlbW92ZSB0aGUgdG9wIHJvdW5kZWQgY29ybmVycyBoZXJlIHNpbmNlIHRoZXJlIGlzIGEgaGFyZCBlZGdlIGFib3ZlIHRoZSBtZW51XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuXG4vL1xuLy8gUGlsbHNcbi8vXG5cbi5uYXYtcGlsbHMge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbmF2LXBpbGxzLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAjeyRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fW5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogI3skbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAjeyRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmd9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG5hdi1waWxscy1jc3MtdmFyc1xuXG4gIC5uYXYtbGluayB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWJvcmRlci1yYWRpdXMpKTtcblxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtbGluay1kaXNhYmxlZC1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLnNob3cgPiAubmF2LWxpbmsge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh2YXIoLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnKSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gVW5kZXJsaW5lXG4vL1xuXG4ubmF2LXVuZGVybGluZSB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBuYXYtdW5kZXJsaW5lLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW5hdi11bmRlcmxpbmUtZ2FwOiAjeyRuYXYtdW5kZXJsaW5lLWdhcH07XG4gIC0tI3skcHJlZml4fW5hdi11bmRlcmxpbmUtYm9yZGVyLXdpZHRoOiAjeyRuYXYtdW5kZXJsaW5lLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fW5hdi11bmRlcmxpbmUtbGluay1hY3RpdmUtY29sb3I6ICN7JG5hdi11bmRlcmxpbmUtbGluay1hY3RpdmUtY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG5hdi11bmRlcmxpbmUtY3NzLXZhcnNcblxuICBnYXA6IHZhcigtLSN7JHByZWZpeH1uYXYtdW5kZXJsaW5lLWdhcCk7XG5cbiAgLm5hdi1saW5rIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXVuZGVybGluZS1ib3JkZXItd2lkdGgpIHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAuc2hvdyA+IC5uYXYtbGluayB7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXVuZGVybGluZS1saW5rLWFjdGl2ZS1jb2xvcik7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogY3VycmVudGNvbG9yO1xuICB9XG59XG5cblxuLy9cbi8vIEp1c3RpZmllZCB2YXJpYW50c1xuLy9cblxuLm5hdi1maWxsIHtcbiAgPiAubmF2LWxpbmssXG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5uYXYtanVzdGlmaWVkIHtcbiAgPiAubmF2LWxpbmssXG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5uYXYtZmlsbCxcbi5uYXYtanVzdGlmaWVkIHtcbiAgLm5hdi1pdGVtIC5uYXYtbGluayB7XG4gICAgd2lkdGg6IDEwMCU7IC8vIE1ha2Ugc3VyZSBidXR0b24gd2lsbCBncm93XG4gIH1cbn1cblxuXG4vLyBUYWJiYWJsZSB0YWJzXG4vL1xuLy8gSGlkZSB0YWJiYWJsZSBwYW5lcyB0byBzdGFydCwgc2hvdyB0aGVtIHdoZW4gYC5hY3RpdmVgXG5cbi50YWItY29udGVudCB7XG4gID4gLnRhYi1wYW5lIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gID4gLmFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiIsIi8vIE5hdmJhclxuLy9cbi8vIFByb3ZpZGUgYSBzdGF0aWMgbmF2YmFyIGZyb20gd2hpY2ggd2UgZXhwYW5kIHRvIGNyZWF0ZSBmdWxsLXdpZHRoLCBmaXhlZCwgYW5kXG4vLyBvdGhlciBuYXZiYXIgdmFyaWF0aW9ucy5cblxuLm5hdmJhciB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXBhZGRpbmcteDogI3tpZigkbmF2YmFyLXBhZGRpbmcteCA9PSBudWxsLCAwLCAkbmF2YmFyLXBhZGRpbmcteCl9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItcGFkZGluZy15OiAjeyRuYXZiYXItcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWNvbG9yOiAjeyRuYXZiYXItbGlnaHQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItaG92ZXItY29sb3I6ICN7JG5hdmJhci1saWdodC1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1kaXNhYmxlZC1jb2xvcjogI3skbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWFjdGl2ZS1jb2xvcjogI3skbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1wYWRkaW5nLXk6ICN7JG5hdmJhci1icmFuZC1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtbWFyZ2luLWVuZDogI3skbmF2YmFyLWJyYW5kLW1hcmdpbi1lbmR9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtZm9udC1zaXplOiAjeyRuYXZiYXItYnJhbmQtZm9udC1zaXplfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLWNvbG9yOiAjeyRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtaG92ZXItY29sb3I6ICN7JG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg6ICN7JG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1wYWRkaW5nLXk6ICN7JG5hdmJhci10b2dnbGVyLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLXBhZGRpbmcteDogI3skbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItZm9udC1zaXplOiAjeyRuYXZiYXItdG9nZ2xlci1mb250LXNpemV9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1pY29uLWJnOiAje2VzY2FwZS1zdmcoJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmcpfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAjeyRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAjeyRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItZm9jdXMtd2lkdGg6ICN7JG5hdmJhci10b2dnbGVyLWZvY3VzLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItdHJhbnNpdGlvbjogI3skbmF2YmFyLXRvZ2dsZXItdHJhbnNpdGlvbn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLWNzcy12YXJzXG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIGFsbG93IHVzIHRvIGRvIHRoZSBsaW5lIGJyZWFrIGZvciBjb2xsYXBzaW5nIGNvbnRlbnRcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBzcGFjZSBvdXQgYnJhbmQgZnJvbSBsb2dvXG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXBhZGRpbmcteCk7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCk7XG5cbiAgLy8gQmVjYXVzZSBmbGV4IHByb3BlcnRpZXMgYXJlbid0IGluaGVyaXRlZCwgd2UgbmVlZCB0byByZWRlY2xhcmUgdGhlc2UgZmlyc3RcbiAgLy8gZmV3IHByb3BlcnRpZXMgc28gdGhhdCBjb250ZW50IG5lc3RlZCB3aXRoaW4gYmVoYXZlIHByb3Blcmx5LlxuICAvLyBUaGUgYGZsZXgtd3JhcGAgcHJvcGVydHkgaXMgaW5oZXJpdGVkIHRvIHNpbXBsaWZ5IHRoZSBleHBhbmRlZCBuYXZiYXJzXG4gICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogaW5oZXJpdDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuXG4gID4gLmNvbnRhaW5lcixcbiAgPiAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAZXh0ZW5kICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzO1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgPiAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aHMpfSB7XG4gICAgICBAZXh0ZW5kICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdmJhciBicmFuZFxuLy9cbi8vIFVzZWQgZm9yIGJyYW5kLCBwcm9qZWN0LCBvciBzaXRlIG5hbWVzLlxuXG4ubmF2YmFyLWJyYW5kIHtcbiAgcGFkZGluZy10b3A6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtcGFkZGluZy15KTtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtcGFkZGluZy15KTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLW1hcmdpbi1lbmQpO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1mb250LXNpemUpKTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtY29sb3IpO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtaG92ZXItY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIG5hdlxuLy9cbi8vIEN1c3RvbSBuYXZiYXIgbmF2aWdhdGlvbiAoZG9lc24ndCByZXF1aXJlIGAubmF2YCwgYnV0IGRvZXMgbWFrZSB1c2Ugb2YgYC5uYXYtbGlua2ApLlxuXG4ubmF2YmFyLW5hdiB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItbmF2LWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW5hdi1saW5rLXBhZGRpbmcteDogMDtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstcGFkZGluZy15OiAjeyRuYXYtbGluay1wYWRkaW5nLXl9O1xuICBAaW5jbHVkZSByZnMoJG5hdi1saW5rLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9bmF2LWxpbmstZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstZm9udC13ZWlnaHQ6ICN7JG5hdi1saW5rLWZvbnQtd2VpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItY29sb3IpO1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1ob3Zlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1ob3Zlci1jb2xvcik7XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWRpc2FibGVkLWNvbG9yKTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBuYXZiYXItbmF2LWNzcy12YXJzXG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLy8gY2Fubm90IHVzZSBgaW5oZXJpdGAgdG8gZ2V0IHRoZSBgLm5hdmJhcmBzIHZhbHVlXG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAubmF2LWxpbmsge1xuICAgICYuYWN0aXZlLFxuICAgICYuc2hvdyB7XG4gICAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1hY3RpdmUtY29sb3IpO1xuICAgIH1cbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIHRleHRcbi8vXG4vL1xuXG4ubmF2YmFyLXRleHQge1xuICBwYWRkaW5nLXRvcDogJG5hdi1saW5rLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRuYXYtbGluay1wYWRkaW5nLXk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWNvbG9yKTtcblxuICBhLFxuICBhOmhvdmVyLFxuICBhOmZvY3VzICB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItYWN0aXZlLWNvbG9yKTtcbiAgfVxufVxuXG5cbi8vIFJlc3BvbnNpdmUgbmF2YmFyXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgcmVzcG9uc2l2ZSBjb2xsYXBzaW5nIGFuZCB0b2dnbGluZyBvZiBuYXZiYXIgY29udGVudHMuXG4vLyBQb3dlcmVkIGJ5IHRoZSBjb2xsYXBzZSBCb290c3RyYXAgSmF2YVNjcmlwdCBwbHVnaW4uXG5cbi8vIFdoZW4gY29sbGFwc2VkLCBwcmV2ZW50IHRoZSB0b2dnbGVhYmxlIG5hdmJhciBjb250ZW50cyBmcm9tIGFwcGVhcmluZyBpblxuLy8gdGhlIGRlZmF1bHQgZmxleGJveCByb3cgb3JpZW50YXRpb24uIFJlcXVpcmVzIHRoZSB1c2Ugb2YgYGZsZXgtd3JhcDogd3JhcGBcbi8vIG9uIHRoZSBgLm5hdmJhcmAgcGFyZW50LlxuLm5hdmJhci1jb2xsYXBzZSB7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIGZsZXgtZ3JvdzogMTtcbiAgLy8gRm9yIGFsd2F5cyBleHBhbmRlZCBvciBleHRyYSBmdWxsIG5hdmJhcnMsIGVuc3VyZSBjb250ZW50IGFsaWducyBpdHNlbGZcbiAgLy8gcHJvcGVybHkgdmVydGljYWxseS4gQ2FuIGJlIGVhc2lseSBvdmVycmlkZGVuIHdpdGggZmxleCB1dGlsaXRpZXMuXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi8vIEJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG5hdmJhciB3aGVuIGluIGl0cyBjb2xsYXBzZWQgc3RhdGVcbi5uYXZiYXItdG9nZ2xlciB7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1wYWRkaW5nLXgpO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZSkpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWJvcmRlci1jb2xvcik7IC8vIHJlbW92ZSBkZWZhdWx0IGJ1dHRvbiBzdHlsZVxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24odmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLXRyYW5zaXRpb24pKTtcblxuICAmOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAwIDAgMCB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItZm9jdXMtd2lkdGgpO1xuICB9XG59XG5cbi8vIEtlZXAgYXMgYSBzZXBhcmF0ZSBlbGVtZW50IHNvIGZvbGtzIGNhbiBlYXNpbHkgb3ZlcnJpZGUgaXQgd2l0aCBhbm90aGVyIGljb25cbi8vIG9yIGltYWdlIGZpbGUgYXMgbmVlZGVkLlxuLm5hdmJhci10b2dnbGVyLWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxLjVlbTtcbiAgaGVpZ2h0OiAxLjVlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWljb24tYmcpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbn1cblxuLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgbWF4LWhlaWdodDogdmFyKC0tI3skcHJlZml4fXNjcm9sbC1oZWlnaHQsIDc1dmgpO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbmF2YmFyLWV4cGFuZC1sb29wXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC5uYXZiYXItZXhwYW5kLSpgIHJlc3BvbnNpdmUgY2xhc3NlcyBmb3IgY29uZmlndXJpbmdcbi8vIHdoZXJlIHlvdXIgbmF2YmFyIGNvbGxhcHNlcy5cbi5uYXZiYXItZXhwYW5kIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9zZWxlY3Rvci1uby11bmlvbi1jbGFzcy1uYW1lXG4gICAgJiN7JGluZml4fSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuZXh0KSB7XG4gICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgLm5hdmJhci1uYXYge1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItbmF2LWxpbmstcGFkZGluZy14KTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tI3skcHJlZml4fW5hdmJhci1uYXYtbGluay1wYWRkaW5nLXgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItbmF2LXNjcm9sbCB7XG4gICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5vZmZjYW52YXMge1xuICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgICAgei1pbmRleDogYXV0bztcbiAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24obm9uZSk7XG4gICAgICAgICAgLy8gc3R5bGVsaW50LWVuYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuICAgICAgICAgIC5vZmZjYW52YXMtaGVhZGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLm9mZmNhbnZhcy1ib2R5IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgb3ZlcmZsb3cteTogdmlzaWJsZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLWV4cGFuZC1sb29wXG5cbi8vIE5hdmJhciB0aGVtZXNcbi8vXG4vLyBTdHlsZXMgZm9yIHN3aXRjaGluZyBiZXR3ZWVuIG5hdmJhcnMgd2l0aCBsaWdodCBvciBkYXJrIGJhY2tncm91bmQuXG5cbi5uYXZiYXItbGlnaHQge1xuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgLm5hdmJhci1saWdodGBcIiwgXCJ2NS4yLjBcIiwgXCJ2Ni4wLjBcIiwgdHJ1ZSk7XG59XG5cbi5uYXZiYXItZGFyayxcbi5uYXZiYXJbZGF0YS1icy10aGVtZT1cImRhcmtcIl0ge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbmF2YmFyLWRhcmstY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWNvbG9yOiAjeyRuYXZiYXItZGFyay1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1ob3Zlci1jb2xvcjogI3skbmF2YmFyLWRhcmstaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItZGlzYWJsZWQtY29sb3I6ICN7JG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWFjdGl2ZS1jb2xvcjogI3skbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLWNvbG9yOiAjeyRuYXZiYXItZGFyay1icmFuZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1ob3Zlci1jb2xvcjogI3skbmF2YmFyLWRhcmstYnJhbmQtaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1ib3JkZXItY29sb3I6ICN7JG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItaWNvbi1iZzogI3tlc2NhcGUtc3ZnKCRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmcpfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBuYXZiYXItZGFyay1jc3MtdmFyc1xufVxuXG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICBAaW5jbHVkZSBjb2xvci1tb2RlKGRhcmspIHtcbiAgICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gICAgICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1pY29uLWJnOiAje2VzY2FwZS1zdmcoJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZyl9O1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uY2FyZCB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBjYXJkLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWNhcmQtc3BhY2VyLXk6ICN7JGNhcmQtc3BhY2VyLXl9O1xuICAtLSN7JHByZWZpeH1jYXJkLXNwYWNlci14OiAjeyRjYXJkLXNwYWNlci14fTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC10aXRsZS1zcGFjZXIteTogI3skY2FyZC10aXRsZS1zcGFjZXIteX07XG4gIC0tI3skcHJlZml4fWNhcmQtdGl0bGUtY29sb3I6ICN7JGNhcmQtdGl0bGUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1jYXJkLXN1YnRpdGxlLWNvbG9yOiAjeyRjYXJkLXN1YnRpdGxlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItd2lkdGg6ICN7JGNhcmQtYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItY29sb3I6ICN7JGNhcmQtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItcmFkaXVzOiAjeyRjYXJkLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1jYXJkLWJveC1zaGFkb3c6ICN7JGNhcmQtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1czogI3skY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy15OiAjeyRjYXJkLWNhcC1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXg6ICN7JGNhcmQtY2FwLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWNhcmQtY2FwLWJnOiAjeyRjYXJkLWNhcC1iZ307XG4gIC0tI3skcHJlZml4fWNhcmQtY2FwLWNvbG9yOiAjeyRjYXJkLWNhcC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWNhcmQtaGVpZ2h0OiAjeyRjYXJkLWhlaWdodH07XG4gIC0tI3skcHJlZml4fWNhcmQtY29sb3I6ICN7JGNhcmQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1jYXJkLWJnOiAjeyRjYXJkLWJnfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nOiAjeyRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmd9O1xuICAtLSN7JHByZWZpeH1jYXJkLWdyb3VwLW1hcmdpbjogI3skY2FyZC1ncm91cC1tYXJnaW59O1xuICAvLyBzY3NzLWRvY3MtZW5kIGNhcmQtY3NzLXZhcnNcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1pbi13aWR0aDogMDsgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzIyNzQwI2lzc3VlY29tbWVudC0zMDU4NjgxMDZcbiAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1oZWlnaHQpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLWJnKTtcbiAgYmFja2dyb3VuZC1jbGlwOiBib3JkZXItYm94O1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1jYXJkLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tI3skcHJlZml4fWNhcmQtYm94LXNoYWRvdykpO1xuXG4gID4gaHIge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gID4gLmxpc3QtZ3JvdXAge1xuICAgIGJvcmRlci10b3A6IGluaGVyaXQ7XG4gICAgYm9yZGVyLWJvdHRvbTogaW5oZXJpdDtcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQgIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG4gICAgfVxuICB9XG5cbiAgLy8gRHVlIHRvIHNwZWNpZmljaXR5IG9mIHRoZSBhYm92ZSBzZWxlY3RvciAoYC5jYXJkID4gLmxpc3QtZ3JvdXBgKSwgd2UgbXVzdFxuICAvLyB1c2UgYSBjaGlsZCBzZWxlY3RvciBoZXJlIHRvIHByZXZlbnQgZG91YmxlIGJvcmRlcnMuXG4gID4gLmNhcmQtaGVhZGVyICsgLmxpc3QtZ3JvdXAsXG4gID4gLmxpc3QtZ3JvdXAgKyAuY2FyZC1mb290ZXIge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cblxuLmNhcmQtYm9keSB7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBmb3IgZGVja3MgYW5kIGdyb3VwcyBzbyB0aGF0IGNhcmQgYmxvY2tzIHRha2UgdXBcbiAgLy8gYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZSwgZW5zdXJpbmcgZm9vdGVycyBhcmUgYWxpZ25lZCB0byB0aGUgYm90dG9tLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWNhcmQtc3BhY2VyLXkpIHZhcigtLSN7JHByZWZpeH1jYXJkLXNwYWNlci14KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLWNvbG9yKTtcbn1cblxuLmNhcmQtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC10aXRsZS1zcGFjZXIteSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC10aXRsZS1jb2xvcik7XG59XG5cbi5jYXJkLXN1YnRpdGxlIHtcbiAgbWFyZ2luLXRvcDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC10aXRsZS1zcGFjZXIteSkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tYm90dG9tOiAwO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtc3VidGl0bGUtY29sb3IpO1xufVxuXG4uY2FyZC10ZXh0Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC1saW5rIHtcbiAgJjpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gIH1cblxuICArIC5jYXJkLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1zcGFjZXIteCk7XG4gIH1cbn1cblxuLy9cbi8vIE9wdGlvbmFsIHRleHR1YWwgY2Fwc1xuLy9cblxuLmNhcmQtaGVhZGVyIHtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteCk7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIFJlbW92ZXMgdGhlIGRlZmF1bHQgbWFyZ2luLWJvdHRvbSBvZiA8aE4+XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtYmcpO1xuICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1jYXJkLWJvcmRlci1jb2xvcik7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSAwIDApO1xuICB9XG59XG5cbi5jYXJkLWZvb3RlciB7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXgpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLWJnKTtcbiAgYm9yZGVyLXRvcDogdmFyKC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItY29sb3IpO1xuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwIDAgdmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykgdmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xuICB9XG59XG5cblxuLy9cbi8vIEhlYWRlciBuYXZzXG4vL1xuXG4uY2FyZC1oZWFkZXItdGFicyB7XG4gIG1hcmdpbi1yaWdodDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy14KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy15KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgYm9yZGVyLWJvdHRvbTogMDtcblxuICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1iZyk7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtYmcpO1xuICB9XG59XG5cbi5jYXJkLWhlYWRlci1waWxscyB7XG4gIG1hcmdpbi1yaWdodDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy14KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3Rcbn1cblxuLy8gQ2FyZCBpbWFnZVxuLmNhcmQtaW1nLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWNhcmQtaW1nLW92ZXJsYXktcGFkZGluZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIHdpZHRoOiAxMDAlOyAvLyBSZXF1aXJlZCBiZWNhdXNlIHdlIHVzZSBmbGV4Ym94IGFuZCB0aGlzIGluaGVyZW50bHkgYXBwbGllcyBhbGlnbi1zZWxmOiBzdHJldGNoXG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy10b3Age1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy1ib3R0b20ge1xuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG59XG5cblxuLy9cbi8vIENhcmQgZ3JvdXBzXG4vL1xuXG4uY2FyZC1ncm91cCB7XG4gIC8vIFRoZSBjaGlsZCBzZWxlY3RvciBhbGxvd3MgbmVzdGVkIGAuY2FyZGAgd2l0aGluIGAuY2FyZC1ncm91cGBcbiAgLy8gdG8gZGlzcGxheSBwcm9wZXJseS5cbiAgPiAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fWNhcmQtZ3JvdXAtbWFyZ2luKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAgIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gICAgPiAuY2FyZCB7XG4gICAgICAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICsgLmNhcmQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICB9XG5cbiAgICAgIC8vIEhhbmRsZSByb3VuZGVkIGNvcm5lcnNcbiAgICAgIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1zdGFydC1yYWRpdXMoMCk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2FyZC1pbWctYm90dG9tLFxuICAgICAgICAgIC5jYXJkLWZvb3RlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYWNjb3JkaW9uIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IGFjY29yZGlvbi1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tY29sb3I6ICN7JGFjY29yZGlvbi1jb2xvcn07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1iZzogI3skYWNjb3JkaW9uLWJnfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLXRyYW5zaXRpb246ICN7JGFjY29yZGlvbi10cmFuc2l0aW9ufTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci1jb2xvcjogI3skYWNjb3JkaW9uLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItd2lkdGg6ICN7JGFjY29yZGlvbi1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXJhZGl1czogI3skYWNjb3JkaW9uLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24taW5uZXItYm9yZGVyLXJhZGl1czogI3skYWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLXBhZGRpbmcteDogI3skYWNjb3JkaW9uLWJ1dHRvbi1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLXBhZGRpbmcteTogI3skYWNjb3JkaW9uLWJ1dHRvbi1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWNvbG9yOiAjeyRhY2NvcmRpb24tYnV0dG9uLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1iZzogI3skYWNjb3JkaW9uLWJ1dHRvbi1iZ307XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbjogI3tlc2NhcGUtc3ZnKCRhY2NvcmRpb24tYnV0dG9uLWljb24pfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXdpZHRoOiAjeyRhY2NvcmRpb24taWNvbi13aWR0aH07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbi10cmFuc2Zvcm06ICN7JGFjY29yZGlvbi1pY29uLXRyYW5zZm9ybX07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbi10cmFuc2l0aW9uOiAjeyRhY2NvcmRpb24taWNvbi10cmFuc2l0aW9ufTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1hY3RpdmUtaWNvbjogI3tlc2NhcGUtc3ZnKCRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1pY29uKX07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tZm9jdXMtYm9yZGVyLWNvbG9yOiAjeyRhY2NvcmRpb24tYnV0dG9uLWZvY3VzLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tZm9jdXMtYm94LXNoYWRvdzogI3skYWNjb3JkaW9uLWJ1dHRvbi1mb2N1cy1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvZHktcGFkZGluZy14OiAjeyRhY2NvcmRpb24tYm9keS1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9keS1wYWRkaW5nLXk6ICN7JGFjY29yZGlvbi1ib2R5LXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1hY3RpdmUtY29sb3I6ICN7JGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWFjdGl2ZS1iZzogI3skYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtYmd9O1xuICAvLyBzY3NzLWRvY3MtZW5kIGFjY29yZGlvbi1jc3MtdmFyc1xufVxuXG4uYWNjb3JkaW9uLWJ1dHRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tcGFkZGluZy14KTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtYmFzZSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1jb2xvcik7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIFJlc2V0IGJ1dHRvbiBzdHlsZVxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1iZyk7XG4gIGJvcmRlcjogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgb3ZlcmZsb3ctYW5jaG9yOiBub25lO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tdHJhbnNpdGlvbikpO1xuXG4gICY6bm90KC5jb2xsYXBzZWQpIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1hY3RpdmUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYWN0aXZlLWJnKTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci13aWR0aCkpIDAgdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItY29sb3IpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tYWN0aXZlLWljb24pO1xuICAgICAgdHJhbnNmb3JtOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXRyYW5zZm9ybSk7XG4gICAgfVxuICB9XG5cbiAgLy8gQWNjb3JkaW9uIGljb25cbiAgJjo6YWZ0ZXIge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXdpZHRoKTtcbiAgICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24td2lkdGgpO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbik7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24td2lkdGgpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24odmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbi10cmFuc2l0aW9uKSk7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICB6LWluZGV4OiAyO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgei1pbmRleDogMztcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWZvY3VzLWJvcmRlci1jb2xvcik7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgfVxufVxuXG4uYWNjb3JkaW9uLWhlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5hY2NvcmRpb24taXRlbSB7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1iZyk7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLWNvbG9yKTtcblxuICAmOmZpcnN0LW9mLXR5cGUge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXJhZGl1cykpO1xuXG4gICAgLmFjY29yZGlvbi1idXR0b24ge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG4gICAgfVxuICB9XG5cbiAgJjpub3QoOmZpcnN0LW9mLXR5cGUpIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG5cbiAgLy8gT25seSBzZXQgYSBib3JkZXItcmFkaXVzIG9uIHRoZSBsYXN0IGl0ZW0gaWYgdGhlIGFjY29yZGlvbiBpcyBjb2xsYXBzZWRcbiAgJjpsYXN0LW9mLXR5cGUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXJhZGl1cykpO1xuXG4gICAgLmFjY29yZGlvbi1idXR0b24ge1xuICAgICAgJi5jb2xsYXBzZWQge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYWNjb3JkaW9uLWNvbGxhcHNlIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXJhZGl1cykpO1xuICAgIH1cbiAgfVxufVxuXG4uYWNjb3JkaW9uLWJvZHkge1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvZHktcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvZHktcGFkZGluZy14KTtcbn1cblxuXG4vLyBGbHVzaCBhY2NvcmRpb24gaXRlbXNcbi8vXG4vLyBSZW1vdmUgYm9yZGVycyBhbmQgYm9yZGVyLXJhZGl1cyB0byBrZWVwIGFjY29yZGlvbiBpdGVtcyBlZGdlLXRvLWVkZ2UuXG5cbi5hY2NvcmRpb24tZmx1c2gge1xuICAuYWNjb3JkaW9uLWNvbGxhcHNlIHtcbiAgICBib3JkZXItd2lkdGg6IDA7XG4gIH1cblxuICAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7IGJvcmRlci10b3A6IDA7IH1cbiAgICAmOmxhc3QtY2hpbGQgeyBib3JkZXItYm90dG9tOiAwOyB9XG5cbiAgICAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICAmLFxuICAgICAgJi5jb2xsYXBzZWQge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICBAaW5jbHVkZSBjb2xvci1tb2RlKGRhcmspIHtcbiAgICAuYWNjb3JkaW9uLWJ1dHRvbjo6YWZ0ZXIge1xuICAgICAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uOiAje2VzY2FwZS1zdmcoJGFjY29yZGlvbi1idXR0b24taWNvbi1kYXJrKX07XG4gICAgICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWFjdGl2ZS1pY29uOiAje2VzY2FwZS1zdmcoJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWljb24tZGFyayl9O1xuICAgIH1cbiAgfVxufVxuIiwiLmJyZWFkY3J1bWIge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgYnJlYWRjcnVtYi1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLXBhZGRpbmcteDogI3skYnJlYWRjcnVtYi1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLXBhZGRpbmcteTogI3skYnJlYWRjcnVtYi1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLW1hcmdpbi1ib3R0b206ICN7JGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbX07XG4gIEBpbmNsdWRlIHJmcygkYnJlYWRjcnVtYi1mb250LXNpemUsIC0tI3skcHJlZml4fWJyZWFkY3J1bWItZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1iZzogI3skYnJlYWRjcnVtYi1iZ307XG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItYm9yZGVyLXJhZGl1czogI3skYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiAjeyRicmVhZGNydW1iLWRpdmlkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLWl0ZW0tcGFkZGluZy14OiAjeyRicmVhZGNydW1iLWl0ZW0tcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1pdGVtLWFjdGl2ZS1jb2xvcjogI3skYnJlYWRjcnVtYi1hY3RpdmUtY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIGJyZWFkY3J1bWItY3NzLXZhcnNcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItcGFkZGluZy14KTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbSk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1mb250LXNpemUpKTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItYmcpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWJvcmRlci1yYWRpdXMpKTtcbn1cblxuLmJyZWFkY3J1bWItaXRlbSB7XG4gIC8vIFRoZSBzZXBhcmF0b3IgYmV0d2VlbiBicmVhZGNydW1icyAoYnkgZGVmYXVsdCwgYSBmb3J3YXJkLXNsYXNoOiBcIi9cIilcbiAgKyAuYnJlYWRjcnVtYi1pdGVtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWl0ZW0tcGFkZGluZy14KTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBmbG9hdDogbGVmdDsgLy8gU3VwcHJlc3MgaW5saW5lIHNwYWNpbmdzIGFuZCB1bmRlcmxpbmluZyBvZiB0aGUgc2VwYXJhdG9yXG4gICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1pdGVtLXBhZGRpbmcteCk7XG4gICAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItZGl2aWRlci1jb2xvcik7XG4gICAgICBjb250ZW50OiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1kaXZpZGVyLCBlc2NhcGUtc3ZnKCRicmVhZGNydW1iLWRpdmlkZXIpKSAje1wiLyogcnRsOlwifSB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1kaXZpZGVyLCBlc2NhcGUtc3ZnKCRicmVhZGNydW1iLWRpdmlkZXItZmxpcHBlZCkpICN7XCIqL1wifTtcbiAgICB9XG4gIH1cblxuICAmLmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWl0ZW0tYWN0aXZlLWNvbG9yKTtcbiAgfVxufVxuIiwiLnBhZ2luYXRpb24ge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcGFnaW5hdGlvbi1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLXBhZGRpbmcteDogI3skcGFnaW5hdGlvbi1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLXBhZGRpbmcteTogI3skcGFnaW5hdGlvbi1wYWRkaW5nLXl9O1xuICBAaW5jbHVkZSByZnMoJHBhZ2luYXRpb24tZm9udC1zaXplLCAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tY29sb3I6ICN7JHBhZ2luYXRpb24tY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJnOiAjeyRwYWdpbmF0aW9uLWJnfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItd2lkdGg6ICN7JHBhZ2luYXRpb24tYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItY29sb3I6ICN7JHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzOiAjeyRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ob3Zlci1iZzogI3skcGFnaW5hdGlvbi1ob3Zlci1iZ307XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9jdXMtY29sb3I6ICN7JHBhZ2luYXRpb24tZm9jdXMtY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvY3VzLWJnOiAjeyRwYWdpbmF0aW9uLWZvY3VzLWJnfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAjeyRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogI3skcGFnaW5hdGlvbi1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWFjdGl2ZS1iZzogI3skcGFnaW5hdGlvbi1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I6ICN7JHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICN7JHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAjeyRwYWdpbmF0aW9uLWRpc2FibGVkLWJnfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICN7JHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBwYWdpbmF0aW9uLWNzcy12YXJzXG5cbiAgZGlzcGxheTogZmxleDtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuXG4ucGFnZS1saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1wYWRkaW5nLXgpO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9udC1zaXplKSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1jb2xvcik7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYmcpO1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkcGFnaW5hdGlvbi10cmFuc2l0aW9uKTtcblxuICAmOmhvdmVyIHtcbiAgICB6LWluZGV4OiAyO1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ob3Zlci1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24taG92ZXItYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIHotaW5kZXg6IDM7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvY3VzLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb2N1cy1iZyk7XG4gICAgb3V0bGluZTogJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTtcbiAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICYuYWN0aXZlLFxuICAuYWN0aXZlID4gJiB7XG4gICAgei1pbmRleDogMztcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYWN0aXZlLWNvbG9yKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1hY3RpdmUtYmcpKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3IpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgLmRpc2FibGVkID4gJiB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yKTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1kaXNhYmxlZC1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3IpO1xuICB9XG59XG5cbi5wYWdlLWl0ZW0ge1xuICAmOm5vdCg6Zmlyc3QtY2hpbGQpIC5wYWdlLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiAkcGFnaW5hdGlvbi1tYXJnaW4tc3RhcnQ7XG4gIH1cblxuICBAaWYgJHBhZ2luYXRpb24tbWFyZ2luLXN0YXJ0ID09IGNhbGMoI3skcGFnaW5hdGlvbi1ib3JkZXItd2lkdGh9ICogLTEpIHtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItc3RhcnQtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMpKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMpKTtcbiAgICAgIH1cbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIC8vIEFkZCBib3JkZXItcmFkaXVzIHRvIGFsbCBwYWdlTGlua3MgaW4gY2FzZSB0aGV5IGhhdmUgbGVmdCBtYXJnaW5cbiAgICAucGFnZS1saW5rIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cykpO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBTaXppbmdcbi8vXG5cbi5wYWdpbmF0aW9uLWxnIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZywgJHBhZ2luYXRpb24tcGFkZGluZy14LWxnLCAkZm9udC1zaXplLWxnLCAkcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLnBhZ2luYXRpb24tc20ge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LXNtLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtc20sICRmb250LXNpemUtc20sICRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtc20pO1xufVxuIiwiLy8gUGFnaW5hdGlvblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcGFnaW5hdGlvbi1taXhpblxuQG1peGluIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkYm9yZGVyLXJhZGl1cykge1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLXBhZGRpbmcteDogI3skcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1wYWRkaW5nLXk6ICN7JHBhZGRpbmcteX07XG4gIEBpbmNsdWRlIHJmcygkZm9udC1zaXplLCAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tYm9yZGVyLXJhZGl1czogI3skYm9yZGVyLXJhZGl1c307XG59XG4vLyBzY3NzLWRvY3MtZW5kIHBhZ2luYXRpb24tbWl4aW5cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBSZXF1aXJlcyBvbmUgb2YgdGhlIGNvbnRleHR1YWwsIGNvbG9yIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGBjb2xvcmAgYW5kXG4vLyBgYmFja2dyb3VuZC1jb2xvcmAuXG5cbi5iYWRnZSB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBiYWRnZS1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1iYWRnZS1wYWRkaW5nLXg6ICN7JGJhZGdlLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWJhZGdlLXBhZGRpbmcteTogI3skYmFkZ2UtcGFkZGluZy15fTtcbiAgQGluY2x1ZGUgcmZzKCRiYWRnZS1mb250LXNpemUsIC0tI3skcHJlZml4fWJhZGdlLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fWJhZGdlLWZvbnQtd2VpZ2h0OiAjeyRiYWRnZS1mb250LXdlaWdodH07XG4gIC0tI3skcHJlZml4fWJhZGdlLWNvbG9yOiAjeyRiYWRnZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJhZGdlLWJvcmRlci1yYWRpdXM6ICN7JGJhZGdlLWJvcmRlci1yYWRpdXN9O1xuICAvLyBzY3NzLWRvY3MtZW5kIGJhZGdlLWNzcy12YXJzXG5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9YmFkZ2UtcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9YmFkZ2UtcGFkZGluZy14KTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1iYWRnZS1mb250LXNpemUpKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1iYWRnZS1mb250LXdlaWdodCk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJhZGdlLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWJhZGdlLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoKTtcblxuICAvLyBFbXB0eSBiYWRnZXMgY29sbGFwc2UgYXV0b21hdGljYWxseVxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vIFF1aWNrIGZpeCBmb3IgYmFkZ2VzIGluIGJ1dHRvbnNcbi5idG4gLmJhZGdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xcHg7XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5hbGVydCB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBhbGVydC1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1hbGVydC1iZzogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWFsZXJ0LXBhZGRpbmcteDogI3skYWxlcnQtcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9YWxlcnQtcGFkZGluZy15OiAjeyRhbGVydC1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1hbGVydC1tYXJnaW4tYm90dG9tOiAjeyRhbGVydC1tYXJnaW4tYm90dG9tfTtcbiAgLS0jeyRwcmVmaXh9YWxlcnQtY29sb3I6IGluaGVyaXQ7XG4gIC0tI3skcHJlZml4fWFsZXJ0LWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWFsZXJ0LWJvcmRlcjogI3skYWxlcnQtYm9yZGVyLXdpZHRofSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtYm9yZGVyLWNvbG9yKTtcbiAgLS0jeyRwcmVmaXh9YWxlcnQtYm9yZGVyLXJhZGl1czogI3skYWxlcnQtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWFsZXJ0LWxpbmstY29sb3I6IGluaGVyaXQ7XG4gIC8vIHNjc3MtZG9jcy1lbmQgYWxlcnQtY3NzLXZhcnNcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1hbGVydC1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1hbGVydC1wYWRkaW5nLXgpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtbWFyZ2luLWJvdHRvbSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtYmcpO1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1hbGVydC1ib3JkZXIpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1hbGVydC1ib3JkZXItcmFkaXVzKSk7XG59XG5cbi8vIEhlYWRpbmdzIGZvciBsYXJnZXIgYWxlcnRzXG4uYWxlcnQtaGVhZGluZyB7XG4gIC8vIFNwZWNpZmllZCB0byBwcmV2ZW50IGNvbmZsaWN0cyBvZiBjaGFuZ2luZyAkaGVhZGluZ3MtY29sb3JcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi8vIFByb3ZpZGUgY2xhc3MgZm9yIGxpbmtzIHRoYXQgbWF0Y2ggYWxlcnRzXG4uYWxlcnQtbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkYWxlcnQtbGluay1mb250LXdlaWdodDtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1hbGVydC1saW5rLWNvbG9yKTtcbn1cblxuXG4vLyBEaXNtaXNzaWJsZSBhbGVydHNcbi8vXG4vLyBFeHBhbmQgdGhlIHJpZ2h0IHBhZGRpbmcgYW5kIGFjY291bnQgZm9yIHRoZSBjbG9zZSBidXR0b24ncyBwb3NpdGlvbmluZy5cblxuLmFsZXJ0LWRpc21pc3NpYmxlIHtcbiAgcGFkZGluZy1yaWdodDogJGFsZXJ0LWRpc21pc3NpYmxlLXBhZGRpbmctcjtcblxuICAvLyBBZGp1c3QgY2xvc2UgbGluayBwb3NpdGlvblxuICAuYnRuLWNsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6ICRzdHJldGNoZWQtbGluay16LWluZGV4ICsgMTtcbiAgICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZy15ICogMS4yNSAkYWxlcnQtcGFkZGluZy14O1xuICB9XG59XG5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGFsZXJ0LW1vZGlmaWVyc1xuLy8gR2VuZXJhdGUgY29udGV4dHVhbCBtb2RpZmllciBjbGFzc2VzIGZvciBjb2xvcml6aW5nIHRoZSBhbGVydFxuQGVhY2ggJHN0YXRlIGluIG1hcC1rZXlzKCR0aGVtZS1jb2xvcnMpIHtcbiAgLmFsZXJ0LSN7JHN0YXRlfSB7XG4gICAgLS0jeyRwcmVmaXh9YWxlcnQtY29sb3I6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tdGV4dC1lbXBoYXNpcyk7XG4gICAgLS0jeyRwcmVmaXh9YWxlcnQtYmc6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tYmctc3VidGxlKTtcbiAgICAtLSN7JHByZWZpeH1hbGVydC1ib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tYm9yZGVyLXN1YnRsZSk7XG4gICAgLS0jeyRwcmVmaXh9YWxlcnQtbGluay1jb2xvcjogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS10ZXh0LWVtcGhhc2lzKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBhbGVydC1tb2RpZmllcnNcbiIsIi8vIERpc2FibGUgYW5pbWF0aW9uIGlmIHRyYW5zaXRpb25zIGFyZSBkaXNhYmxlZFxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcHJvZ3Jlc3Mta2V5ZnJhbWVzXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIEBrZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICAgIDAlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiAkcHJvZ3Jlc3MtaGVpZ2h0OyB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgcHJvZ3Jlc3Mta2V5ZnJhbWVzXG5cbi5wcm9ncmVzcyxcbi5wcm9ncmVzcy1zdGFja2VkIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHByb2dyZXNzLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXByb2dyZXNzLWhlaWdodDogI3skcHJvZ3Jlc3MtaGVpZ2h0fTtcbiAgQGluY2x1ZGUgcmZzKCRwcm9ncmVzcy1mb250LXNpemUsIC0tI3skcHJlZml4fXByb2dyZXNzLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fXByb2dyZXNzLWJnOiAjeyRwcm9ncmVzcy1iZ307XG4gIC0tI3skcHJlZml4fXByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICN7JHByb2dyZXNzLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1wcm9ncmVzcy1ib3gtc2hhZG93OiAjeyRwcm9ncmVzcy1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYmFyLWNvbG9yOiAjeyRwcm9ncmVzcy1iYXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1wcm9ncmVzcy1iYXItYmc6ICN7JHByb2dyZXNzLWJhci1iZ307XG4gIC0tI3skcHJlZml4fXByb2dyZXNzLWJhci10cmFuc2l0aW9uOiAjeyRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgcHJvZ3Jlc3MtY3NzLXZhcnNcblxuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1oZWlnaHQpO1xuICBvdmVyZmxvdzogaGlkZGVuOyAvLyBmb3JjZSByb3VuZGVkIGNvcm5lcnMgYnkgY3JvcHBpbmcgaXRcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1mb250LXNpemUpKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWJnKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYm9yZGVyLXJhZGl1cykpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1ib3gtc2hhZG93KSk7XG59XG5cbi5wcm9ncmVzcy1iYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1iYXItY29sb3IpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1iYXItYmcpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1iYXItdHJhbnNpdGlvbikpO1xufVxuXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xuICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkKCk7XG4gIGJhY2tncm91bmQtc2l6ZTogdmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWhlaWdodCkgdmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWhlaWdodCk7XG59XG5cbi5wcm9ncmVzcy1zdGFja2VkID4gLnByb2dyZXNzIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi5wcm9ncmVzcy1zdGFja2VkID4gLnByb2dyZXNzID4gLnByb2dyZXNzLWJhciB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIC5wcm9ncmVzcy1iYXItYW5pbWF0ZWQge1xuICAgIGFuaW1hdGlvbjogJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nIHByb2dyZXNzLWJhci1zdHJpcGVzO1xuXG4gICAgQGlmICRlbmFibGUtcmVkdWNlZC1tb3Rpb24ge1xuICAgICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEVhc2lseSB1c2FibGUgb24gPHVsPiwgPG9sPiwgb3IgPGRpdj4uXG5cbi5saXN0LWdyb3VwIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IGxpc3QtZ3JvdXAtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1jb2xvcjogI3skbGlzdC1ncm91cC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYmc6ICN7JGxpc3QtZ3JvdXAtYmd9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci1jb2xvcjogI3skbGlzdC1ncm91cC1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci13aWR0aDogI3skbGlzdC1ncm91cC1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICN7JGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg6ICN7JGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15OiAjeyRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24tY29sb3I6ICN7JGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6ICN7JGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24taG92ZXItYmc6ICN7JGxpc3QtZ3JvdXAtaG92ZXItYmd9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6ICN7JGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogI3skbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogI3skbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICN7JGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmd9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogI3skbGlzdC1ncm91cC1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1iZzogI3skbGlzdC1ncm91cC1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I6ICN7JGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbGlzdC1ncm91cC1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgLy8gTm8gbmVlZCB0byBzZXQgbGlzdC1zdHlsZTogbm9uZTsgc2luY2UgLmxpc3QtZ3JvdXAtaXRlbSBpcyBibG9jayBsZXZlbFxuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIHJlc2V0IHBhZGRpbmcgYmVjYXVzZSB1bCBhbmQgb2xcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKSk7XG59XG5cbi5saXN0LWdyb3VwLW51bWJlcmVkIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBjb3VudGVyLXJlc2V0OiBzZWN0aW9uO1xuXG4gID4gLmxpc3QtZ3JvdXAtaXRlbTo6YmVmb3JlIHtcbiAgICAvLyBJbmNyZW1lbnRzIG9ubHkgdGhpcyBpbnN0YW5jZSBvZiB0aGUgc2VjdGlvbiBjb3VudGVyXG4gICAgY29udGVudDogY291bnRlcnMoc2VjdGlvbiwgXCIuXCIpIFwiLiBcIjtcbiAgICBjb3VudGVyLWluY3JlbWVudDogc2VjdGlvbjtcbiAgfVxufVxuXG4vLyBJbnRlcmFjdGl2ZSBsaXN0IGl0ZW1zXG4vL1xuLy8gVXNlIGFuY2hvciBvciBidXR0b24gZWxlbWVudHMgaW5zdGVhZCBvZiBgbGlgcyBvciBgZGl2YHMgdG8gY3JlYXRlIGludGVyYWN0aXZlXG4vLyBsaXN0IGl0ZW1zLiBJbmNsdWRlcyBhbiBleHRyYSBgLmFjdGl2ZWAgbW9kaWZpZXIgY2xhc3MgZm9yIHNlbGVjdGVkIGl0ZW1zLlxuXG4ubGlzdC1ncm91cC1pdGVtLWFjdGlvbiB7XG4gIHdpZHRoOiAxMDAlOyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgYmVjb21lIDEwMCUgYnkgZGVmYXVsdCB0aG91Z2gpXG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24tY29sb3IpO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgaW5oZXJpdClcblxuICAvLyBIb3ZlciBzdGF0ZVxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICB6LWluZGV4OiAxOyAvLyBQbGFjZSBob3Zlci9mb2N1cyBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1iZyk7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmcpO1xuICB9XG59XG5cbi8vIEluZGl2aWR1YWwgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBvbiBgbGlgcyBvciBgZGl2YHMgd2l0aGluIHRoZSBgLmxpc3QtZ3JvdXBgIHBhcmVudC5cblxuLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1jb2xvcik7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYmcpO1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yKTtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyhpbmhlcml0KTtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoaW5oZXJpdCk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3IpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWRpc2FibGVkLWJnKTtcbiAgfVxuXG4gIC8vIEluY2x1ZGUgYm90aCBoZXJlIGZvciBgPGE+YHMgYW5kIGA8YnV0dG9uPmBzXG4gICYuYWN0aXZlIHtcbiAgICB6LWluZGV4OiAyOyAvLyBQbGFjZSBhY3RpdmUgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3RpdmUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL3NlbGVjdG9yLW5vLXJlZHVuZGFudC1uZXN0aW5nLXNlbGVjdG9yXG4gICYgKyAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuXG4gICAgJi5hY3RpdmUge1xuICAgICAgbWFyZ2luLXRvcDogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgICAgYm9yZGVyLXRvcC13aWR0aDogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gSG9yaXpvbnRhbFxuLy9cbi8vIENoYW5nZSB0aGUgbGF5b3V0IG9mIGxpc3QgZ3JvdXAgaXRlbXMgZnJvbSB2ZXJ0aWNhbCAoZGVmYXVsdCkgdG8gaG9yaXpvbnRhbC5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCN7JGluZml4fSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICA+IC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgICAgICAmOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tc3RhcnQtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpKTtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLWVuZC1yYWRpdXMoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtZW5kLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKSk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1zdGFydC1yYWRpdXMoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICsgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKTtcbiAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcblxuICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBGbHVzaCBsaXN0IGl0ZW1zXG4vL1xuLy8gUmVtb3ZlIGJvcmRlcnMgYW5kIGJvcmRlci1yYWRpdXMgdG8ga2VlcCBsaXN0IGdyb3VwIGl0ZW1zIGVkZ2UtdG8tZWRnZS4gTW9zdFxuLy8gdXNlZnVsIHdpdGhpbiBvdGhlciBjb21wb25lbnRzIChlLmcuLCBjYXJkcykuXG5cbi5saXN0LWdyb3VwLWZsdXNoIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcblxuICA+IC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci13aWR0aDogMCAwIHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci13aWR0aCk7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbGlzdC1ncm91cC1tb2RpZmllcnNcbi8vIExpc3QgZ3JvdXAgY29udGV4dHVhbCB2YXJpYW50c1xuLy9cbi8vIEFkZCBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0ZXh0IGFuZCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGluZGl2aWR1YWwgaXRlbXMuXG4vLyBPcmdhbml6YXRpb25hbGx5LCB0aGlzIG11c3QgY29tZSBhZnRlciB0aGUgYDpob3ZlcmAgc3RhdGVzLlxuXG5AZWFjaCAkc3RhdGUgaW4gbWFwLWtleXMoJHRoZW1lLWNvbG9ycykge1xuICAubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1jb2xvcjogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS10ZXh0LWVtcGhhc2lzKTtcbiAgICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJnOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LWJnLXN1YnRsZSk7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tYm9yZGVyLXN1YnRsZSk7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcik7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24taG92ZXItYmc6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tYm9yZGVyLXN1YnRsZSk7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3IpO1xuICAgIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS1ib3JkZXItc3VidGxlKTtcbiAgICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS1iZy1zdWJ0bGUpO1xuICAgIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aXZlLWJnOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LXRleHQtZW1waGFzaXMpO1xuICAgIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS10ZXh0LWVtcGhhc2lzKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBsaXN0LWdyb3VwLW1vZGlmaWVyc1xuIiwiLy8gVHJhbnNwYXJlbnQgYmFja2dyb3VuZCBhbmQgYm9yZGVyIHByb3BlcnRpZXMgaW5jbHVkZWQgZm9yIGJ1dHRvbiB2ZXJzaW9uLlxuLy8gaU9TIHJlcXVpcmVzIHRoZSBidXR0b24gZWxlbWVudCBpbnN0ZWFkIG9mIGFuIGFuY2hvciB0YWcuXG4vLyBJZiB5b3Ugd2FudCB0aGUgYW5jaG9yIHZlcnNpb24sIGl0IHJlcXVpcmVzIGBocmVmPVwiI1wiYC5cbi8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjU2FmYXJpX01vYmlsZVxuXG4uYnRuLWNsb3NlIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IGNsb3NlLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1jb2xvcjogI3skYnRuLWNsb3NlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWJnOiAjeyBlc2NhcGUtc3ZnKCRidG4tY2xvc2UtYmcpIH07XG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1vcGFjaXR5OiAjeyRidG4tY2xvc2Utb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1ob3Zlci1vcGFjaXR5OiAjeyRidG4tY2xvc2UtaG92ZXItb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1mb2N1cy1zaGFkb3c6ICN7JGJ0bi1jbG9zZS1mb2N1cy1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1idG4tY2xvc2UtZm9jdXMtb3BhY2l0eTogI3skYnRuLWNsb3NlLWZvY3VzLW9wYWNpdHl9O1xuICAtLSN7JHByZWZpeH1idG4tY2xvc2UtZGlzYWJsZWQtb3BhY2l0eTogI3skYnRuLWNsb3NlLWRpc2FibGVkLW9wYWNpdHl9O1xuICAtLSN7JHByZWZpeH1idG4tY2xvc2Utd2hpdGUtZmlsdGVyOiAjeyRidG4tY2xvc2Utd2hpdGUtZmlsdGVyfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBjbG9zZS1jc3MtdmFyc1xuXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICB3aWR0aDogJGJ0bi1jbG9zZS13aWR0aDtcbiAgaGVpZ2h0OiAkYnRuLWNsb3NlLWhlaWdodDtcbiAgcGFkZGluZzogJGJ0bi1jbG9zZS1wYWRkaW5nLXkgJGJ0bi1jbG9zZS1wYWRkaW5nLXg7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWNvbG9yKTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdmFyKC0tI3skcHJlZml4fWJ0bi1jbG9zZS1iZykgY2VudGVyIC8gJGJ0bi1jbG9zZS13aWR0aCBhdXRvIG5vLXJlcGVhdDsgLy8gaW5jbHVkZSB0cmFuc3BhcmVudCBmb3IgYnV0dG9uIGVsZW1lbnRzXG4gIGJvcmRlcjogMDsgLy8gZm9yIGJ1dHRvbiBlbGVtZW50c1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCk7XG4gIG9wYWNpdHk6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2Utb3BhY2l0eSk7XG5cbiAgLy8gT3ZlcnJpZGUgPGE+J3MgaG92ZXIgc3R5bGVcbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2UtY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvcGFjaXR5OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWhvdmVyLW9wYWNpdHkpO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWZvY3VzLXNoYWRvdyk7XG4gICAgb3BhY2l0eTogdmFyKC0tI3skcHJlZml4fWJ0bi1jbG9zZS1mb2N1cy1vcGFjaXR5KTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIG9wYWNpdHk6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2UtZGlzYWJsZWQtb3BhY2l0eSk7XG4gIH1cbn1cblxuQG1peGluIGJ0bi1jbG9zZS13aGl0ZSgpIHtcbiAgZmlsdGVyOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLXdoaXRlLWZpbHRlcik7XG59XG5cbi5idG4tY2xvc2Utd2hpdGUge1xuICBAaW5jbHVkZSBidG4tY2xvc2Utd2hpdGUoKTtcbn1cblxuQGlmICRlbmFibGUtZGFyay1tb2RlIHtcbiAgQGluY2x1ZGUgY29sb3ItbW9kZShkYXJrKSB7XG4gICAgLmJ0bi1jbG9zZSB7XG4gICAgICBAaW5jbHVkZSBidG4tY2xvc2Utd2hpdGUoKTtcbiAgICB9XG4gIH1cbn1cbiIsIi50b2FzdCB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCB0b2FzdC1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH10b2FzdC16aW5kZXg6ICN7JHppbmRleC10b2FzdH07XG4gIC0tI3skcHJlZml4fXRvYXN0LXBhZGRpbmcteDogI3skdG9hc3QtcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtcGFkZGluZy15OiAjeyR0b2FzdC1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH10b2FzdC1zcGFjaW5nOiAjeyR0b2FzdC1zcGFjaW5nfTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtbWF4LXdpZHRoOiAjeyR0b2FzdC1tYXgtd2lkdGh9O1xuICBAaW5jbHVkZSByZnMoJHRvYXN0LWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9dG9hc3QtZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtY29sb3I6ICN7JHRvYXN0LWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtYmc6ICN7JHRvYXN0LWJhY2tncm91bmQtY29sb3J9O1xuICAtLSN7JHByZWZpeH10b2FzdC1ib3JkZXItd2lkdGg6ICN7JHRvYXN0LWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci1jb2xvcjogI3skdG9hc3QtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLXJhZGl1czogI3skdG9hc3QtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fXRvYXN0LWJveC1zaGFkb3c6ICN7JHRvYXN0LWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH10b2FzdC1oZWFkZXItY29sb3I6ICN7JHRvYXN0LWhlYWRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRvYXN0LWhlYWRlci1iZzogI3skdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3J9O1xuICAtLSN7JHByZWZpeH10b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yOiAjeyR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCB0b2FzdC1jc3MtdmFyc1xuXG4gIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtbWF4LXdpZHRoKTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fXRvYXN0LWZvbnQtc2l6ZSkpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXRvYXN0LWNvbG9yKTtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH10b2FzdC1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci1jb2xvcik7XG4gIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH10b2FzdC1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLXJhZGl1cykpO1xuXG4gICYuc2hvd2luZyB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gICY6bm90KC5zaG93KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4udG9hc3QtY29udGFpbmVyIHtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtemluZGV4OiAjeyR6aW5kZXgtdG9hc3R9O1xuXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogdmFyKC0tI3skcHJlZml4fXRvYXN0LXppbmRleCk7XG4gIHdpZHRoOiBtYXgtY29udGVudDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICA+IDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3Qtc3BhY2luZyk7XG4gIH1cbn1cblxuLnRvYXN0LWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH10b2FzdC1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH10b2FzdC1wYWRkaW5nLXgpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXRvYXN0LWhlYWRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH10b2FzdC1oZWFkZXItYmcpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKGNhbGModmFyKC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci1yYWRpdXMpIC0gdmFyKC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci13aWR0aCkpKTtcblxuICAuYnRuLWNsb3NlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fXRvYXN0LXBhZGRpbmcteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtcGFkZGluZy14KTtcbiAgfVxufVxuXG4udG9hc3QtYm9keSB7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH10b2FzdC1wYWRkaW5nLXgpO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuLy8gLm1vZGFsLW9wZW4gICAgICAtIGJvZHkgY2xhc3MgZm9yIGtpbGxpbmcgdGhlIHNjcm9sbFxuLy8gLm1vZGFsICAgICAgICAgICAtIGNvbnRhaW5lciB0byBzY3JvbGwgd2l0aGluXG4vLyAubW9kYWwtZGlhbG9nICAgIC0gcG9zaXRpb25pbmcgc2hlbGwgZm9yIHRoZSBhY3R1YWwgbW9kYWxcbi8vIC5tb2RhbC1jb250ZW50ICAgLSBhY3R1YWwgbW9kYWwgdy8gYmcgYW5kIGNvcm5lcnMgYW5kIHN0dWZmXG5cblxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXG4ubW9kYWwge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbW9kYWwtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bW9kYWwtemluZGV4OiAjeyR6aW5kZXgtbW9kYWx9O1xuICAtLSN7JHByZWZpeH1tb2RhbC13aWR0aDogI3skbW9kYWwtbWR9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1wYWRkaW5nOiAjeyRtb2RhbC1pbm5lci1wYWRkaW5nfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtbWFyZ2luOiAjeyRtb2RhbC1kaWFsb2ctbWFyZ2lufTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtY29sb3I6ICN7JG1vZGFsLWNvbnRlbnQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1iZzogI3skbW9kYWwtY29udGVudC1iZ307XG4gIC0tI3skcHJlZml4fW1vZGFsLWJvcmRlci1jb2xvcjogI3skbW9kYWwtY29udGVudC1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1ib3JkZXItd2lkdGg6ICN7JG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtYm9yZGVyLXJhZGl1czogI3skbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtYm94LXNoYWRvdzogI3skbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtaW5uZXItYm9yZGVyLXJhZGl1czogI3skbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcteDogI3skbW9kYWwtaGVhZGVyLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXk6ICN7JG1vZGFsLWhlYWRlci1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZzogI3skbW9kYWwtaGVhZGVyLXBhZGRpbmd9OyAvLyBUb2RvIGluIHY2OiBTcGxpdCB0aGlzIHBhZGRpbmcgaW50byB4IGFuZCB5XG4gIC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICN7JG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiAjeyRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICN7JG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWdhcDogI3skbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVufTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWJnOiAjeyRtb2RhbC1mb290ZXItYmd9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAjeyRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogI3skbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aH07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbW9kYWwtY3NzLXZhcnNcblxuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogdmFyKC0tI3skcHJlZml4fW1vZGFsLXppbmRleCk7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgLy8gUHJldmVudCBDaHJvbWUgb24gV2luZG93cyBmcm9tIGFkZGluZyBhIGZvY3VzIG91dGxpbmUuIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTA5NTEuXG4gIG91dGxpbmU6IDA7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkb24ndCB1c2UgYC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtgIGR1ZSB0byBhXG4gIC8vIGduYXJseSBpT1MgU2FmYXJpIGJ1ZzogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1ODM0MlxuICAvLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE3Njk1XG59XG5cbi8vIFNoZWxsIGRpdiB0byBwb3NpdGlvbiB0aGUgbW9kYWwgd2l0aCBib3R0b20gcGFkZGluZ1xuLm1vZGFsLWRpYWxvZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogdmFyKC0tI3skcHJlZml4fW1vZGFsLW1hcmdpbik7XG4gIC8vIGFsbG93IGNsaWNrcyB0byBwYXNzIHRocm91Z2ggZm9yIGN1c3RvbSBjbGljayBoYW5kbGluZyB0byBjbG9zZSBtb2RhbFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAvLyBXaGVuIGZhZGluZyBpbiB0aGUgbW9kYWwsIGFuaW1hdGUgaXQgdG8gc2xpZGUgZG93blxuICAubW9kYWwuZmFkZSAmIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRtb2RhbC10cmFuc2l0aW9uKTtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1mYWRlLXRyYW5zZm9ybTtcbiAgfVxuICAubW9kYWwuc2hvdyAmIHtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1zaG93LXRyYW5zZm9ybTtcbiAgfVxuXG4gIC8vIFdoZW4gdHJ5aW5nIHRvIGNsb3NlLCBhbmltYXRlIGZvY3VzIHRvIHNjYWxlXG4gIC5tb2RhbC5tb2RhbC1zdGF0aWMgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2NhbGUtdHJhbnNmb3JtO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gdmFyKC0tI3skcHJlZml4fW1vZGFsLW1hcmdpbikgKiAyKTtcblxuICAubW9kYWwtY29udGVudCB7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLm1vZGFsLWJvZHkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6IGNhbGMoMTAwJSAtIHZhcigtLSN7JHByZWZpeH1tb2RhbC1tYXJnaW4pICogMik7XG59XG5cbi8vIEFjdHVhbCBtb2RhbFxuLm1vZGFsLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiAxMDAlOyAvLyBFbnN1cmUgYC5tb2RhbC1jb250ZW50YCBleHRlbmRzIHRoZSBmdWxsIHdpZHRoIG9mIHRoZSBwYXJlbnQgYC5tb2RhbC1kaWFsb2dgXG4gIC8vIGNvdW50ZXJhY3QgdGhlIHBvaW50ZXItZXZlbnRzOiBub25lOyBpbiB0aGUgLm1vZGFsLWRpYWxvZ1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW1vZGFsLWNvbG9yKTtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1tb2RhbC1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fW1vZGFsLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW1vZGFsLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fW1vZGFsLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtYm94LXNoYWRvdykpO1xuICAvLyBSZW1vdmUgZm9jdXMgb3V0bGluZSBmcm9tIG9wZW5lZCBtb2RhbFxuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXG4ubW9kYWwtYmFja2Ryb3Age1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbW9kYWwtYmFja2Ryb3AtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9YmFja2Ryb3AtemluZGV4OiAjeyR6aW5kZXgtbW9kYWwtYmFja2Ryb3B9O1xuICAtLSN7JHByZWZpeH1iYWNrZHJvcC1iZzogI3skbW9kYWwtYmFja2Ryb3AtYmd9O1xuICAtLSN7JHByZWZpeH1iYWNrZHJvcC1vcGFjaXR5OiAjeyRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5fTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBtb2RhbC1iYWNrZHJvcC1jc3MtdmFyc1xuXG4gIEBpbmNsdWRlIG92ZXJsYXktYmFja2Ryb3AodmFyKC0tI3skcHJlZml4fWJhY2tkcm9wLXppbmRleCksIHZhcigtLSN7JHByZWZpeH1iYWNrZHJvcC1iZyksIHZhcigtLSN7JHByZWZpeH1iYWNrZHJvcC1vcGFjaXR5KSk7XG59XG5cbi8vIE1vZGFsIGhlYWRlclxuLy8gVG9wIHNlY3Rpb24gb2YgdGhlIG1vZGFsIHcvIHRpdGxlIGFuZCBkaXNtaXNzXG4ubW9kYWwtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gUHV0IG1vZGFsIGhlYWRlciBlbGVtZW50cyAodGl0bGUgYW5kIGRpc21pc3MpIG9uIG9wcG9zaXRlIGVuZHNcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nKTtcbiAgYm9yZGVyLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fW1vZGFsLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcblxuICAuYnRuLWNsb3NlIHtcbiAgICBwYWRkaW5nOiBjYWxjKHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZy15KSAqIC41KSBjYWxjKHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZy14KSAqIC41KTtcbiAgICBtYXJnaW46IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXkpKSBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZy14KSkgY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcteSkpIGF1dG87XG4gIH1cbn1cblxuLy8gVGl0bGUgdGV4dCB3aXRoaW4gaGVhZGVyXG4ubW9kYWwtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogdmFyKC0tI3skcHJlZml4fW1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0KTtcbn1cblxuLy8gTW9kYWwgYm9keVxuLy8gV2hlcmUgYWxsIG1vZGFsIGNvbnRlbnQgcmVzaWRlcyAoc2libGluZyBvZiAubW9kYWwtaGVhZGVyIGFuZCAubW9kYWwtZm9vdGVyKVxuLm1vZGFsLWJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBzbyB0aGF0IHRoZSBib2R5IHRha2UgdXAgYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZVxuICAvLyB3aGVuIHRoZXJlIHNob3VsZCBiZSBhIGZpeGVkIGhlaWdodCBvbiBgLm1vZGFsLWRpYWxvZ2AuXG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtcGFkZGluZyk7XG59XG5cbi8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXG4ubW9kYWwtZm9vdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gdmVydGljYWxseSBjZW50ZXJcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgLy8gUmlnaHQgYWxpZ24gYnV0dG9ucyB3aXRoIGZsZXggcHJvcGVydHkgYmVjYXVzZSB0ZXh0LWFsaWduIGRvZXNuJ3Qgd29yayBvbiBmbGV4IGl0ZW1zXG4gIHBhZGRpbmc6IGNhbGModmFyKC0tI3skcHJlZml4fW1vZGFsLXBhZGRpbmcpIC0gdmFyKC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1nYXApICogLjUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWJnKTtcbiAgYm9yZGVyLXRvcDogdmFyKC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXModmFyKC0tI3skcHJlZml4fW1vZGFsLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcblxuICAvLyBQbGFjZSBtYXJnaW4gYmV0d2VlbiBmb290ZXIgZWxlbWVudHNcbiAgLy8gVGhpcyBzb2x1dGlvbiBpcyBmYXIgZnJvbSBpZGVhbCBiZWNhdXNlIG9mIHRoZSB1bml2ZXJzYWwgc2VsZWN0b3IgdXNhZ2UsXG4gIC8vIGJ1dCBpcyBuZWVkZWQgdG8gZml4IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQ4MDBcbiAgPiAqIHtcbiAgICBtYXJnaW46IGNhbGModmFyKC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1nYXApICogLjUpOyAvLyBUb2RvIGluIHY2OiByZXBsYWNlIHdpdGggZ2FwIG9uIHBhcmVudCBjbGFzc1xuICB9XG59XG5cbi8vIFNjYWxlIHVwIHRoZSBtb2RhbFxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAubW9kYWwge1xuICAgIC0tI3skcHJlZml4fW1vZGFsLW1hcmdpbjogI3skbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwfTtcbiAgICAtLSN7JHByZWZpeH1tb2RhbC1ib3gtc2hhZG93OiAjeyRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXB9O1xuICB9XG5cbiAgLy8gQXV0b21hdGljYWxseSBzZXQgbW9kYWwncyB3aWR0aCBmb3IgbGFyZ2VyIHZpZXdwb3J0c1xuICAubW9kYWwtZGlhbG9nIHtcbiAgICBtYXgtd2lkdGg6IHZhcigtLSN7JHByZWZpeH1tb2RhbC13aWR0aCk7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG5cbiAgLm1vZGFsLXNtIHtcbiAgICAtLSN7JHByZWZpeH1tb2RhbC13aWR0aDogI3skbW9kYWwtc219O1xuICB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgLm1vZGFsLWxnLFxuICAubW9kYWwteGwge1xuICAgIC0tI3skcHJlZml4fW1vZGFsLXdpZHRoOiAjeyRtb2RhbC1sZ307XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAubW9kYWwteGwge1xuICAgIC0tI3skcHJlZml4fW1vZGFsLXdpZHRoOiAjeyRtb2RhbC14bH07XG4gIH1cbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG1vZGFsLWZ1bGxzY3JlZW4tbG9vcFxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICRwb3N0Zml4OiBpZigkaW5maXggIT0gXCJcIiwgJGluZml4ICsgXCItZG93blwiLCBcIlwiKTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAubW9kYWwtZnVsbHNjcmVlbiN7JHBvc3RmaXh9IHtcbiAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG1hcmdpbjogMDtcblxuICAgICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgIH1cblxuICAgICAgLm1vZGFsLWhlYWRlcixcbiAgICAgIC5tb2RhbC1mb290ZXIge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgfVxuXG4gICAgICAubW9kYWwtYm9keSB7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIG1vZGFsLWZ1bGxzY3JlZW4tbG9vcFxuIiwiLy8gU2hhcmVkIGJldHdlZW4gbW9kYWxzIGFuZCBvZmZjYW52YXNlc1xuQG1peGluIG92ZXJsYXktYmFja2Ryb3AoJHppbmRleCwgJGJhY2tkcm9wLWJnLCAkYmFja2Ryb3Atb3BhY2l0eSkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleDtcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2Ryb3AtYmc7XG5cbiAgLy8gRmFkZSBmb3IgYmFja2Ryb3BcbiAgJi5mYWRlIHsgb3BhY2l0eTogMDsgfVxuICAmLnNob3cgeyBvcGFjaXR5OiAkYmFja2Ryb3Atb3BhY2l0eTsgfVxufVxuIiwiLy8gQmFzZSBjbGFzc1xuLnRvb2x0aXAge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgdG9vbHRpcC1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH10b29sdGlwLXppbmRleDogI3skemluZGV4LXRvb2x0aXB9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLW1heC13aWR0aDogI3skdG9vbHRpcC1tYXgtd2lkdGh9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLXBhZGRpbmcteDogI3skdG9vbHRpcC1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLXBhZGRpbmcteTogI3skdG9vbHRpcC1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLW1hcmdpbjogI3skdG9vbHRpcC1tYXJnaW59O1xuICBAaW5jbHVkZSByZnMoJHRvb2x0aXAtZm9udC1zaXplLCAtLSN7JHByZWZpeH10b29sdGlwLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtY29sb3I6ICN7JHRvb2x0aXAtY29sb3J9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLWJnOiAjeyR0b29sdGlwLWJnfTtcbiAgLS0jeyRwcmVmaXh9dG9vbHRpcC1ib3JkZXItcmFkaXVzOiAjeyR0b29sdGlwLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLW9wYWNpdHk6ICN7JHRvb2x0aXAtb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGg6ICN7JHRvb2x0aXAtYXJyb3ctd2lkdGh9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodDogI3skdG9vbHRpcC1hcnJvdy1oZWlnaHR9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHRvb2x0aXAtY3NzLXZhcnNcblxuICB6LWluZGV4OiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC16aW5kZXgpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1tYXJnaW4pO1xuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgJHRvb2x0aXAtbWFyZ2luYFwiLCBcInY1XCIsIFwidjUueFwiLCB0cnVlKTtcbiAgLy8gT3VyIHBhcmVudCBlbGVtZW50IGNhbiBiZSBhcmJpdHJhcnkgc2luY2UgdG9vbHRpcHMgYXJlIGJ5IGRlZmF1bHQgaW5zZXJ0ZWQgYXMgYSBzaWJsaW5nIG9mIHRoZWlyIHRhcmdldCBlbGVtZW50LlxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxuICBAaW5jbHVkZSByZXNldC10ZXh0KCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1mb250LXNpemUpKTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHRvb2x0aXAncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBvcGFjaXR5OiAwO1xuXG4gICYuc2hvdyB7IG9wYWNpdHk6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLW9wYWNpdHkpOyB9XG5cbiAgLnRvb2x0aXAtYXJyb3cge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCk7XG4gICAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtdG9wIC50b29sdGlwLWFycm93IHtcbiAgYm90dG9tOiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbiAgJjo6YmVmb3JlIHtcbiAgICB0b3A6IC0xcHg7XG4gICAgYm9yZGVyLXdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpIGNhbGModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpICogLjUpIDA7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYmcpO1xuICB9XG59XG5cbi8qIHJ0bDpiZWdpbjppZ25vcmUgKi9cbi5icy10b29sdGlwLWVuZCAudG9vbHRpcC1hcnJvdyB7XG4gIGxlZnQ6IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCk7XG4gIGhlaWdodDogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgcmlnaHQ6IC0xcHg7XG4gICAgYm9yZGVyLXdpZHRoOiBjYWxjKHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LXdpZHRoKSAqIC41KSB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpIGNhbGModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpICogLjUpIDA7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1iZyk7XG4gIH1cbn1cblxuLyogcnRsOmVuZDppZ25vcmUgKi9cblxuLmJzLXRvb2x0aXAtYm90dG9tIC50b29sdGlwLWFycm93IHtcbiAgdG9wOiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBib3R0b206IC0xcHg7XG4gICAgYm9yZGVyLXdpZHRoOiAwIGNhbGModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpICogLjUpIHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYmcpO1xuICB9XG59XG5cbi8qIHJ0bDpiZWdpbjppZ25vcmUgKi9cbi5icy10b29sdGlwLXN0YXJ0IC50b29sdGlwLWFycm93IHtcbiAgcmlnaHQ6IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCk7XG4gIGhlaWdodDogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgbGVmdDogLTFweDtcbiAgICBib3JkZXItd2lkdGg6IGNhbGModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpICogLjUpIDAgY2FsYyh2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCkgKiAuNSkgdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYmcpO1xuICB9XG59XG5cbi8qIHJ0bDplbmQ6aWdub3JlICovXG5cbi5icy10b29sdGlwLWF1dG8ge1xuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJ0b3BcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtdG9wO1xuICB9XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWVuZDtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJib3R0b21cIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtYm90dG9tO1xuICB9XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtc3RhcnQ7XG4gIH1cbn1cblxuLy8gV3JhcHBlciBmb3IgdGhlIHRvb2x0aXAgY29udGVudFxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLW1heC13aWR0aCk7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtcGFkZGluZy14KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1iZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYm9yZGVyLXJhZGl1cykpO1xufVxuIiwiQG1peGluIHJlc2V0LXRleHQge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkbyBOT1QgcmVzZXQgZm9udC1zaXplIG9yIG92ZXJmbG93LXdyYXAgLyB3b3JkLXdyYXAuXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRmFsbGJhY2sgZm9yIHdoZXJlIGBzdGFydGAgaXMgbm90IHN1cHBvcnRlZFxuICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gIGxpbmUtYnJlYWs6IGF1dG87XG59XG4iLCIucG9wb3ZlciB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBwb3BvdmVyLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXBvcG92ZXItemluZGV4OiAjeyR6aW5kZXgtcG9wb3Zlcn07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItbWF4LXdpZHRoOiAjeyRwb3BvdmVyLW1heC13aWR0aH07XG4gIEBpbmNsdWRlIHJmcygkcG9wb3Zlci1mb250LXNpemUsIC0tI3skcHJlZml4fXBvcG92ZXItZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1iZzogI3skcG9wb3Zlci1iZ307XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoOiAjeyRwb3BvdmVyLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLWNvbG9yOiAjeyRwb3BvdmVyLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXJhZGl1czogI3skcG9wb3Zlci1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzOiAjeyRwb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWJveC1zaGFkb3c6ICN7JHBvcG92ZXItYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDogI3skcG9wb3Zlci1oZWFkZXItcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItcGFkZGluZy15OiAjeyRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXl9O1xuICBAaW5jbHVkZSByZnMoJHBvcG92ZXItaGVhZGVyLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItY29sb3I6ICN7JHBvcG92ZXItaGVhZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItYmc6ICN7JHBvcG92ZXItaGVhZGVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1ib2R5LXBhZGRpbmcteDogI3skcG9wb3Zlci1ib2R5LXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYm9keS1wYWRkaW5nLXk6ICN7JHBvcG92ZXItYm9keS1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWJvZHktY29sb3I6ICN7JHBvcG92ZXItYm9keS1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGg6ICN7JHBvcG92ZXItYXJyb3ctd2lkdGh9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodDogI3skcG9wb3Zlci1hcnJvdy1oZWlnaHR9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWJvcmRlcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBwb3BvdmVyLWNzcy12YXJzXG5cbiAgei1pbmRleDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItemluZGV4KTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItbWF4LXdpZHRoKTtcbiAgLy8gT3VyIHBhcmVudCBlbGVtZW50IGNhbiBiZSBhcmJpdHJhcnkgc2luY2UgdG9vbHRpcHMgYXJlIGJ5IGRlZmF1bHQgaW5zZXJ0ZWQgYXMgYSBzaWJsaW5nIG9mIHRoZWlyIHRhcmdldCBlbGVtZW50LlxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxuICBAaW5jbHVkZSByZXNldC10ZXh0KCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1mb250LXNpemUpKTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHBvcG92ZXIncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3gtc2hhZG93KSk7XG5cbiAgLnBvcG92ZXItYXJyb3cge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCk7XG4gICAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci10b3Age1xuICA+IC5wb3BvdmVyLWFycm93IHtcbiAgICBib3R0b206IGNhbGMoLTEgKiAodmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KSkgLSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBib3JkZXItd2lkdGg6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCkgY2FsYyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCkgKiAuNSkgMDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctYm9yZGVyKTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBib3R0b206IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCk7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1iZyk7XG4gICAgfVxuICB9XG59XG5cbi8qIHJ0bDpiZWdpbjppZ25vcmUgKi9cbi5icy1wb3BvdmVyLWVuZCB7XG4gID4gLnBvcG92ZXItYXJyb3cge1xuICAgIGxlZnQ6IGNhbGMoLTEgKiAodmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KSkgLSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICB3aWR0aDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KTtcbiAgICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKTtcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBib3JkZXItd2lkdGg6IGNhbGModmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpICogLjUpIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCkgY2FsYyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCkgKiAuNSkgMDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctYm9yZGVyKTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBsZWZ0OiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1iZyk7XG4gICAgfVxuICB9XG59XG5cbi8qIHJ0bDplbmQ6aWdub3JlICovXG5cbi5icy1wb3BvdmVyLWJvdHRvbSB7XG4gID4gLnBvcG92ZXItYXJyb3cge1xuICAgIHRvcDogY2FsYygtMSAqICh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpKSAtIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvcmRlci13aWR0aDogMCBjYWxjKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKSAqIC41KSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1ib3JkZXIpO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHRvcDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKTtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJnKTtcbiAgICB9XG4gIH1cblxuICAvLyBUaGlzIHdpbGwgcmVtb3ZlIHRoZSBwb3BvdmVyLWhlYWRlcidzIGJvcmRlciBqdXN0IGJlbG93IHRoZSBhcnJvd1xuICAucG9wb3Zlci1oZWFkZXI6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKTtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItYmcpO1xuICB9XG59XG5cbi8qIHJ0bDpiZWdpbjppZ25vcmUgKi9cbi5icy1wb3BvdmVyLXN0YXJ0IHtcbiAgPiAucG9wb3Zlci1hcnJvdyB7XG4gICAgcmlnaHQ6IGNhbGMoLTEgKiAodmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KSkgLSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICB3aWR0aDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KTtcbiAgICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKTtcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBib3JkZXItd2lkdGg6IGNhbGModmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpICogLjUpIDAgY2FsYyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCkgKiAuNSkgdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctYm9yZGVyKTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICByaWdodDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKTtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1iZyk7XG4gICAgfVxuICB9XG59XG5cbi8qIHJ0bDplbmQ6aWdub3JlICovXG5cbi5icy1wb3BvdmVyLWF1dG8ge1xuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJ0b3BcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItdG9wO1xuICB9XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWVuZDtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJib3R0b21cIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItYm90dG9tO1xuICB9XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItc3RhcnQ7XG4gIH1cbn1cblxuLy8gT2Zmc2V0IHRoZSBwb3BvdmVyIHRvIGFjY291bnQgZm9yIHRoZSBwb3BvdmVyIGFycm93XG4ucG9wb3Zlci1oZWFkZXIge1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItcGFkZGluZy14KTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVzZXQgdGhlIGRlZmF1bHQgZnJvbSBSZWJvb3RcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1mb250LXNpemUpKTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1iZyk7XG4gIGJvcmRlci1ib3R0b206IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fXBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1cykpO1xuXG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnBvcG92ZXItYm9keSB7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvZHktcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib2R5LXBhZGRpbmcteCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib2R5LWNvbG9yKTtcbn1cbiIsIi8vIE5vdGVzIG9uIHRoZSBjbGFzc2VzOlxuLy9cbi8vIDEuIC5jYXJvdXNlbC5wb2ludGVyLWV2ZW50IHNob3VsZCBpZGVhbGx5IGJlIHBhbi15ICh0byBhbGxvdyBmb3IgdXNlcnMgdG8gc2Nyb2xsIHZlcnRpY2FsbHkpXG4vLyAgICBldmVuIHdoZW4gdGhlaXIgc2Nyb2xsIGFjdGlvbiBzdGFydGVkIG9uIGEgY2Fyb3VzZWwsIGJ1dCBmb3IgY29tcGF0aWJpbGl0eSAod2l0aCBGaXJlZm94KVxuLy8gICAgd2UncmUgcHJldmVudGluZyBhbGwgYWN0aW9ucyBpbnN0ZWFkXG4vLyAyLiBUaGUgLmNhcm91c2VsLWl0ZW0tc3RhcnQgYW5kIC5jYXJvdXNlbC1pdGVtLWVuZCBpcyB1c2VkIHRvIGluZGljYXRlIHdoZXJlXG4vLyAgICB0aGUgYWN0aXZlIHNsaWRlIGlzIGhlYWRpbmcuXG4vLyAzLiAuYWN0aXZlLmNhcm91c2VsLWl0ZW0gaXMgdGhlIGN1cnJlbnQgc2xpZGUuXG4vLyA0LiAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tc3RhcnQgYW5kIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1lbmQgaXMgdGhlIGN1cnJlbnRcbi8vICAgIHNsaWRlIGluIGl0cyBpbi10cmFuc2l0aW9uIHN0YXRlLiBPbmx5IG9uZSBvZiB0aGVzZSBvY2N1cnMgYXQgYSB0aW1lLlxuLy8gNS4gLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLXN0YXJ0IGFuZCAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tZW5kXG4vLyAgICBpcyB0aGUgdXBjb21pbmcgc2xpZGUgaW4gdHJhbnNpdGlvbi5cblxuLmNhcm91c2VsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY2Fyb3VzZWwucG9pbnRlci1ldmVudCB7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG59XG5cbi5jYXJvdXNlbC1pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG59XG5cbi5jYXJvdXNlbC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBub25lO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtdHJhbnNpdGlvbik7XG59XG5cbi5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbi5jYXJvdXNlbC1pdGVtLW5leHQsXG4uY2Fyb3VzZWwtaXRlbS1wcmV2IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jYXJvdXNlbC1pdGVtLW5leHQ6bm90KC5jYXJvdXNlbC1pdGVtLXN0YXJ0KSxcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1lbmQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG59XG5cbi5jYXJvdXNlbC1pdGVtLXByZXY6bm90KC5jYXJvdXNlbC1pdGVtLWVuZCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tc3RhcnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xufVxuXG5cbi8vXG4vLyBBbHRlcm5hdGUgdHJhbnNpdGlvbnNcbi8vXG5cbi5jYXJvdXNlbC1mYWRlIHtcbiAgLmNhcm91c2VsLWl0ZW0ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAuY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4gIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1zdGFydCxcbiAgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLWVuZCB7XG4gICAgei1pbmRleDogMTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXN0YXJ0LFxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tZW5kIHtcbiAgICB6LWluZGV4OiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IDBzICRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBMZWZ0L3JpZ2h0IGNvbnRyb2xzIGZvciBuYXZcbi8vXG5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYsXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogMTtcbiAgLy8gVXNlIGZsZXggZm9yIGFsaWdubWVudCAoMS0zKVxuICBkaXNwbGF5OiBmbGV4OyAvLyAxLiBhbGxvdyBmbGV4IHN0eWxlc1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyAyLiB2ZXJ0aWNhbGx5IGNlbnRlciBjb250ZW50c1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgLy8gMy4gaG9yaXpvbnRhbGx5IGNlbnRlciBjb250ZW50c1xuICB3aWR0aDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIHBhZGRpbmc6IDA7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbik7XG5cbiAgLy8gSG92ZXIvZm9jdXMgc3RhdGVcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLXByZXYge1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBpZigkZW5hYmxlLWdyYWRpZW50cywgbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKCRibGFjaywgLjI1KSwgcmdiYSgkYmxhY2ssIC4wMDEpKSwgbnVsbCk7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgcmlnaHQ6IDA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGlmKCRlbmFibGUtZ3JhZGllbnRzLCBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCByZ2JhKCRibGFjaywgLjI1KSwgcmdiYSgkYmxhY2ssIC4wMDEpKSwgbnVsbCk7XG59XG5cbi8vIEljb25zIGZvciB3aXRoaW5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGhlaWdodDogJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbn1cblxuLyogcnRsOm9wdGlvbnM6IHtcbiAgXCJhdXRvUmVuYW1lXCI6IHRydWUsXG4gIFwic3RyaW5nTWFwXCI6WyB7XG4gICAgXCJuYW1lXCIgICAgOiBcInByZXYtbmV4dFwiLFxuICAgIFwic2VhcmNoXCIgIDogXCJwcmV2XCIsXG4gICAgXCJyZXBsYWNlXCIgOiBcIm5leHRcIlxuICB9IF1cbn0gKi9cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnKTtcbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnKTtcbn1cblxuLy8gT3B0aW9uYWwgaW5kaWNhdG9yIHBpcHMvY29udHJvbHNcbi8vXG4vLyBBZGQgYSBjb250YWluZXIgKHN1Y2ggYXMgYSBsaXN0KSB3aXRoIHRoZSBmb2xsb3dpbmcgY2xhc3MgYW5kIGFkZCBhbiBpdGVtIChpZGVhbGx5IGEgZm9jdXNhYmxlIGNvbnRyb2wsXG4vLyBsaWtlIGEgYnV0dG9uKSB3aXRoIGRhdGEtYnMtdGFyZ2V0IGZvciBlYWNoIHNsaWRlIHlvdXIgY2Fyb3VzZWwgaG9sZHMuXG5cbi5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMDtcbiAgLy8gVXNlIHRoZSAuY2Fyb3VzZWwtY29udHJvbCdzIHdpZHRoIGFzIG1hcmdpbiBzbyB3ZSBkb24ndCBvdmVybGF5IHRob3NlXG4gIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIG1hcmdpbi1sZWZ0OiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcblxuICBbZGF0YS1icy10YXJnZXRdIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogJGNhcm91c2VsLWluZGljYXRvci13aWR0aDtcbiAgICBoZWlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjtcbiAgICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTlweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc7XG4gICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICBib3JkZXI6IDA7XG4gICAgLy8gVXNlIHRyYW5zcGFyZW50IGJvcmRlcnMgdG8gaW5jcmVhc2UgdGhlIGhpdCBhcmVhIGJ5IDEwcHggb24gdG9wIGFuZCBib3R0b20uXG4gICAgYm9yZGVyLXRvcDogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgb3BhY2l0eTogJGNhcm91c2VsLWluZGljYXRvci1vcGFjaXR5O1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLWluZGljYXRvci10cmFuc2l0aW9uKTtcbiAgfVxuXG4gIC5hY3RpdmUge1xuICAgIG9wYWNpdHk6ICRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLW9wYWNpdHk7XG4gIH1cbn1cblxuXG4vLyBPcHRpb25hbCBjYXB0aW9uc1xuLy9cbi8vXG5cbi5jYXJvdXNlbC1jYXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkgKiAuNTtcbiAgYm90dG9tOiAkY2Fyb3VzZWwtY2FwdGlvbi1zcGFjZXI7XG4gIGxlZnQ6ICgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpICogLjU7XG4gIHBhZGRpbmctdG9wOiAkY2Fyb3VzZWwtY2FwdGlvbi1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkY2Fyb3VzZWwtY2FwdGlvbi1wYWRkaW5nLXk7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vLyBEYXJrIG1vZGUgY2Fyb3VzZWxcblxuQG1peGluIGNhcm91c2VsLWRhcmsoKSB7XG4gIC5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbixcbiAgLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgICBmaWx0ZXI6ICRjYXJvdXNlbC1kYXJrLWNvbnRyb2wtaWNvbi1maWx0ZXI7XG4gIH1cblxuICAuY2Fyb3VzZWwtaW5kaWNhdG9ycyBbZGF0YS1icy10YXJnZXRdIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2Fyb3VzZWwtZGFyay1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICB9XG5cbiAgLmNhcm91c2VsLWNhcHRpb24ge1xuICAgIGNvbG9yOiAkY2Fyb3VzZWwtZGFyay1jYXB0aW9uLWNvbG9yO1xuICB9XG59XG5cbi5jYXJvdXNlbC1kYXJrIHtcbiAgQGluY2x1ZGUgY2Fyb3VzZWwtZGFyaygpO1xufVxuXG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICBAaW5jbHVkZSBjb2xvci1tb2RlKGRhcmspIHtcbiAgICBAaWYgJGNvbG9yLW1vZGUtdHlwZSA9PSBcIm1lZGlhLXF1ZXJ5XCIge1xuICAgICAgLmNhcm91c2VsIHtcbiAgICAgICAgQGluY2x1ZGUgY2Fyb3VzZWwtZGFyaygpO1xuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgLmNhcm91c2VsLFxuICAgICAgJi5jYXJvdXNlbCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcm91c2VsLWRhcmsoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIHNjc3MtZG9jcy1zdGFydCBjbGVhcmZpeFxuQG1peGluIGNsZWFyZml4KCkge1xuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBjbGVhcmZpeFxuIiwiLy9cbi8vIFJvdGF0aW5nIGJvcmRlclxuLy9cblxuLnNwaW5uZXItZ3Jvdyxcbi5zcGlubmVyLWJvcmRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1zcGlubmVyLXdpZHRoKTtcbiAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9c3Bpbm5lci1oZWlnaHQpO1xuICB2ZXJ0aWNhbC1hbGlnbjogdmFyKC0tI3skcHJlZml4fXNwaW5uZXItdmVydGljYWwtYWxpZ24pO1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYW5pbWF0aW9uOiB2YXIoLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tc3BlZWQpIGxpbmVhciBpbmZpbml0ZSB2YXIoLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tbmFtZSk7XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBzcGlubmVyLWJvcmRlci1rZXlmcmFtZXNcbkBrZXlmcmFtZXMgc3Bpbm5lci1ib3JkZXIge1xuICB0byB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZykgI3tcIi8qIHJ0bDppZ25vcmUgKi9cIn07IH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgc3Bpbm5lci1ib3JkZXIta2V5ZnJhbWVzXG5cbi5zcGlubmVyLWJvcmRlciB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBzcGlubmVyLWJvcmRlci1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1zcGlubmVyLXdpZHRoOiAjeyRzcGlubmVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1oZWlnaHQ6ICN7JHNwaW5uZXItaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjogI3skc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbn07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItYm9yZGVyLXdpZHRoOiAjeyRzcGlubmVyLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItYW5pbWF0aW9uLXNwZWVkOiAjeyRzcGlubmVyLWFuaW1hdGlvbi1zcGVlZH07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItYW5pbWF0aW9uLW5hbWU6IHNwaW5uZXItYm9yZGVyO1xuICAvLyBzY3NzLWRvY3MtZW5kIHNwaW5uZXItYm9yZGVyLWNzcy12YXJzXG5cbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9c3Bpbm5lci1ib3JkZXItd2lkdGgpIHNvbGlkIGN1cnJlbnRjb2xvcjtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnNwaW5uZXItYm9yZGVyLXNtIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwaW5uZXItYm9yZGVyLXNtLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXNwaW5uZXItd2lkdGg6ICN7JHNwaW5uZXItd2lkdGgtc219O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWhlaWdodDogI3skc3Bpbm5lci1oZWlnaHQtc219O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWJvcmRlci13aWR0aDogI3skc3Bpbm5lci1ib3JkZXItd2lkdGgtc219O1xuICAvLyBzY3NzLWRvY3MtZW5kIHNwaW5uZXItYm9yZGVyLXNtLWNzcy12YXJzXG59XG5cbi8vXG4vLyBHcm93aW5nIGNpcmNsZVxuLy9cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwaW5uZXItZ3Jvdy1rZXlmcmFtZXNcbkBrZXlmcmFtZXMgc3Bpbm5lci1ncm93IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBzcGlubmVyLWdyb3cta2V5ZnJhbWVzXG5cbi5zcGlubmVyLWdyb3cge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgc3Bpbm5lci1ncm93LWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXNwaW5uZXItd2lkdGg6ICN7JHNwaW5uZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWhlaWdodDogI3skc3Bpbm5lci1oZWlnaHR9O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLXZlcnRpY2FsLWFsaWduOiAjeyRzcGlubmVyLXZlcnRpY2FsLWFsaWdufTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tc3BlZWQ6ICN7JHNwaW5uZXItYW5pbWF0aW9uLXNwZWVkfTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tbmFtZTogc3Bpbm5lci1ncm93O1xuICAvLyBzY3NzLWRvY3MtZW5kIHNwaW5uZXItZ3Jvdy1jc3MtdmFyc1xuXG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNwaW5uZXItZ3Jvdy1zbSB7XG4gIC0tI3skcHJlZml4fXNwaW5uZXItd2lkdGg6ICN7JHNwaW5uZXItd2lkdGgtc219O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWhlaWdodDogI3skc3Bpbm5lci1oZWlnaHQtc219O1xufVxuXG5AaWYgJGVuYWJsZS1yZWR1Y2VkLW1vdGlvbiB7XG4gIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgLnNwaW5uZXItYm9yZGVyLFxuICAgIC5zcGlubmVyLWdyb3cge1xuICAgICAgLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tc3BlZWQ6ICN7JHNwaW5uZXItYW5pbWF0aW9uLXNwZWVkICogMn07XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuJW9mZmNhbnZhcy1jc3MtdmFycyB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBvZmZjYW52YXMtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXppbmRleDogI3skemluZGV4LW9mZmNhbnZhc307XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy13aWR0aDogI3skb2ZmY2FudmFzLWhvcml6b250YWwtd2lkdGh9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtaGVpZ2h0OiAjeyRvZmZjYW52YXMtdmVydGljYWwtaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteDogI3skb2ZmY2FudmFzLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXk6ICN7JG9mZmNhbnZhcy1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtY29sb3I6ICN7JG9mZmNhbnZhcy1jb2xvcn07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1iZzogI3skb2ZmY2FudmFzLWJnLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci13aWR0aDogI3skb2ZmY2FudmFzLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItY29sb3I6ICN7JG9mZmNhbnZhcy1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtYm94LXNoYWRvdzogI3skb2ZmY2FudmFzLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtdHJhbnNpdGlvbjogI3t0cmFuc2Zvcm0gJG9mZmNhbnZhcy10cmFuc2l0aW9uLWR1cmF0aW9uIGVhc2UtaW4tb3V0fTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXRpdGxlLWxpbmUtaGVpZ2h0OiAjeyRvZmZjYW52YXMtdGl0bGUtbGluZS1oZWlnaHR9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG9mZmNhbnZhcy1jc3MtdmFyc1xufVxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gIC5vZmZjYW52YXMjeyRpbmZpeH0ge1xuICAgIEBleHRlbmQgJW9mZmNhbnZhcy1jc3MtdmFycztcbiAgfVxufVxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gIC5vZmZjYW52YXMjeyRpbmZpeH0ge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmV4dCkge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgei1pbmRleDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy16aW5kZXgpO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1jb2xvcik7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJnKTtcbiAgICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJveC1zaGFkb3cpKTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24odmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy10cmFuc2l0aW9uKSk7XG5cbiAgICAgICYub2ZmY2FudmFzLXN0YXJ0IHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy13aWR0aCk7XG4gICAgICAgIGJvcmRlci1yaWdodDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICAgIH1cblxuICAgICAgJi5vZmZjYW52YXMtZW5kIHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtd2lkdGgpO1xuICAgICAgICBib3JkZXItbGVmdDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICAgICAgfVxuXG4gICAgICAmLm9mZmNhbnZhcy10b3Age1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtaGVpZ2h0KTtcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgICAgIH1cblxuICAgICAgJi5vZmZjYW52YXMtYm90dG9tIHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGhlaWdodDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1oZWlnaHQpO1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICBib3JkZXItdG9wOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgICB9XG5cbiAgICAgICYuc2hvd2luZyxcbiAgICAgICYuc2hvdzpub3QoLmhpZGluZykge1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICYuc2hvd2luZyxcbiAgICAgICYuaGlkaW5nLFxuICAgICAgJi5zaG93IHtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIikge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmV4dCkge1xuICAgICAgICAtLSN7JHByZWZpeH1vZmZjYW52YXMtaGVpZ2h0OiBhdXRvO1xuICAgICAgICAtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLXdpZHRoOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4gICAgICAgIC5vZmZjYW52YXMtaGVhZGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLm9mZmNhbnZhcy1ib2R5IHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIG92ZXJmbG93LXk6IHZpc2libGU7XG4gICAgICAgICAgLy8gUmVzZXQgYGJhY2tncm91bmQtY29sb3JgIGluIGNhc2UgYC5iZy0qYCBjbGFzc2VzIGFyZSB1c2VkIGluIG9mZmNhbnZhc1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLm9mZmNhbnZhcy1iYWNrZHJvcCB7XG4gIEBpbmNsdWRlIG92ZXJsYXktYmFja2Ryb3AoJHppbmRleC1vZmZjYW52YXMtYmFja2Ryb3AsICRvZmZjYW52YXMtYmFja2Ryb3AtYmcsICRvZmZjYW52YXMtYmFja2Ryb3Atb3BhY2l0eSk7XG59XG5cbi5vZmZjYW52YXMtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXgpO1xuXG4gIC5idG4tY2xvc2Uge1xuICAgIHBhZGRpbmc6IGNhbGModmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXkpICogLjUpIGNhbGModmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXgpICogLjUpO1xuICAgIG1hcmdpbi10b3A6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXkpKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXgpKTtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy15KSk7XG4gIH1cbn1cblxuLm9mZmNhbnZhcy10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXRpdGxlLWxpbmUtaGVpZ2h0KTtcbn1cblxuLm9mZmNhbnZhcy1ib2R5IHtcbiAgZmxleC1ncm93OiAxO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXgpO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuIiwiLnBsYWNlaG9sZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtaW4taGVpZ2h0OiAxZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGN1cnNvcjogd2FpdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudGNvbG9yO1xuICBvcGFjaXR5OiAkcGxhY2Vob2xkZXItb3BhY2l0eS1tYXg7XG5cbiAgJi5idG46OmJlZm9yZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbn1cblxuLy8gU2l6aW5nXG4ucGxhY2Vob2xkZXIteHMge1xuICBtaW4taGVpZ2h0OiAuNmVtO1xufVxuXG4ucGxhY2Vob2xkZXItc20ge1xuICBtaW4taGVpZ2h0OiAuOGVtO1xufVxuXG4ucGxhY2Vob2xkZXItbGcge1xuICBtaW4taGVpZ2h0OiAxLjJlbTtcbn1cblxuLy8gQW5pbWF0aW9uXG4ucGxhY2Vob2xkZXItZ2xvdyB7XG4gIC5wbGFjZWhvbGRlciB7XG4gICAgYW5pbWF0aW9uOiBwbGFjZWhvbGRlci1nbG93IDJzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcGxhY2Vob2xkZXItZ2xvdyB7XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogJHBsYWNlaG9sZGVyLW9wYWNpdHktbWluO1xuICB9XG59XG5cbi5wbGFjZWhvbGRlci13YXZlIHtcbiAgbWFzay1pbWFnZTogbGluZWFyLWdyYWRpZW50KDEzMGRlZywgJGJsYWNrIDU1JSwgcmdiYSgwLCAwLCAwLCAoMSAtICRwbGFjZWhvbGRlci1vcGFjaXR5LW1pbikpIDc1JSwgJGJsYWNrIDk1JSk7XG4gIG1hc2stc2l6ZTogMjAwJSAxMDAlO1xuICBhbmltYXRpb246IHBsYWNlaG9sZGVyLXdhdmUgMnMgbGluZWFyIGluZmluaXRlO1xufVxuXG5Aa2V5ZnJhbWVzIHBsYWNlaG9sZGVyLXdhdmUge1xuICAxMDAlIHtcbiAgICBtYXNrLXBvc2l0aW9uOiAtMjAwJSAwJTtcbiAgfVxufVxuIiwiLy8gQWxsLWNhcHMgYFJHQkEoKWAgZnVuY3Rpb24gdXNlZCBiZWNhdXNlIG9mIHRoaXMgU2FzcyBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL25vZGUtc2Fzcy9pc3N1ZXMvMjI1MVxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICRjb2xvci1yZ2I6IHRvLXJnYigkdmFsdWUpO1xuICAudGV4dC1iZy0jeyRjb2xvcn0ge1xuICAgIGNvbG9yOiBjb2xvci1jb250cmFzdCgkdmFsdWUpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogUkdCQSgkY29sb3ItcmdiLCB2YXIoLS0jeyRwcmVmaXh9Ymctb3BhY2l0eSwgMSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gIH1cbn1cbiIsIi8vIEFsbC1jYXBzIGBSR0JBKClgIGZ1bmN0aW9uIHVzZWQgYmVjYXVzZSBvZiB0aGlzIFNhc3MgYnVnOiBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9ub2RlLXNhc3MvaXNzdWVzLzIyNTFcbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAubGluay0jeyRjb2xvcn0ge1xuICAgIGNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH0jeyRjb2xvcn0tcmdiKSwgdmFyKC0tI3skcHJlZml4fWxpbmstb3BhY2l0eSwgMSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH0jeyRjb2xvcn0tcmdiKSwgdmFyKC0tI3skcHJlZml4fWxpbmstdW5kZXJsaW5lLW9wYWNpdHksIDEpKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuXG4gICAgQGlmICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UgIT0gMCB7XG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgICRob3Zlci1jb2xvcjogaWYoY29sb3ItY29udHJhc3QoJHZhbHVlKSA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCR2YWx1ZSwgJGxpbmstc2hhZGUtcGVyY2VudGFnZSksIHRpbnQtY29sb3IoJHZhbHVlLCAkbGluay1zaGFkZS1wZXJjZW50YWdlKSk7XG4gICAgICAgIGNvbG9yOiBSR0JBKCN7dG8tcmdiKCRob3Zlci1jb2xvcil9LCB2YXIoLS0jeyRwcmVmaXh9bGluay1vcGFjaXR5LCAxKSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBSR0JBKHRvLXJnYigkaG92ZXItY29sb3IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay11bmRlcmxpbmUtb3BhY2l0eSwgMSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIE9uZS1vZmYgc3BlY2lhbCBsaW5rIGhlbHBlciBhcyBhIGJyaWRnZSB1bnRpbCB2NlxuLmxpbmstYm9keS1lbXBoYXNpcyB7XG4gIGNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay1vcGFjaXR5LCAxKSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay11bmRlcmxpbmUtb3BhY2l0eSwgMSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG5cbiAgQGlmICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UgIT0gMCB7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay1vcGFjaXR5LCAuNzUpKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay11bmRlcmxpbmUtb3BhY2l0eSwgLjc1KSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICB9XG4gIH1cbn1cbiIsIi5mb2N1cy1yaW5nOmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbiAgLy8gQnkgZGVmYXVsdCwgdGhlcmUgaXMgbm8gYC0tYnMtZm9jdXMtcmluZy14YCwgYC0tYnMtZm9jdXMtcmluZy15YCwgb3IgYC0tYnMtZm9jdXMtcmluZy1ibHVyYCwgYnV0IHdlIHByb3ZpZGUgQ1NTIHZhcmlhYmxlcyB3aXRoIGZhbGxiYWNrcyB0byBpbml0aWFsIGAwYCB2YWx1ZXNcbiAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWZvY3VzLXJpbmcteCwgMCkgdmFyKC0tI3skcHJlZml4fWZvY3VzLXJpbmcteSwgMCkgdmFyKC0tI3skcHJlZml4fWZvY3VzLXJpbmctYmx1ciwgMCkgdmFyKC0tI3skcHJlZml4fWZvY3VzLXJpbmctd2lkdGgpIHZhcigtLSN7JHByZWZpeH1mb2N1cy1yaW5nLWNvbG9yKTtcbn1cbiIsIi5pY29uLWxpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZ2FwOiAkaWNvbi1saW5rLWdhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiByZ2JhKHZhcigtLSN7JHByZWZpeH1saW5rLWNvbG9yLXJnYiksIHZhcigtLSN7JHByZWZpeH1saW5rLW9wYWNpdHksIC41KSk7XG4gIHRleHQtdW5kZXJsaW5lLW9mZnNldDogJGljb24tbGluay11bmRlcmxpbmUtb2Zmc2V0O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgPiAuYmkge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIHdpZHRoOiAkaWNvbi1saW5rLWljb24tc2l6ZTtcbiAgICBoZWlnaHQ6ICRpY29uLWxpbmstaWNvbi1zaXplO1xuICAgIGZpbGw6IGN1cnJlbnRjb2xvcjtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRpY29uLWxpbmstaWNvbi10cmFuc2l0aW9uKTtcbiAgfVxufVxuXG4uaWNvbi1saW5rLWhvdmVyIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICA+IC5iaSB7XG4gICAgICB0cmFuc2Zvcm06IHZhcigtLSN7JHByZWZpeH1pY29uLWxpbmstdHJhbnNmb3JtLCAkaWNvbi1saW5rLWljb24tdHJhbnNmb3JtKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxuXG4ucmF0aW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLSN7JHByZWZpeH1hc3BlY3QtcmF0aW8pO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICA+ICoge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuQGVhY2ggJGtleSwgJHJhdGlvIGluICRhc3BlY3QtcmF0aW9zIHtcbiAgLnJhdGlvLSN7JGtleX0ge1xuICAgIC0tI3skcHJlZml4fWFzcGVjdC1yYXRpbzogI3skcmF0aW99O1xuICB9XG59XG4iLCIvLyBTaG9ydGhhbmRcblxuLmZpeGVkLXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLmZpeGVkLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLy8gUmVzcG9uc2l2ZSBzdGlja3kgdG9wIGFuZCBib3R0b21cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5zdGlja3kjeyRpbmZpeH0tdG9wIHtcbiAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICB0b3A6IDA7XG4gICAgICB6LWluZGV4OiAkemluZGV4LXN0aWNreTtcbiAgICB9XG5cbiAgICAuc3RpY2t5I3skaW5maXh9LWJvdHRvbSB7XG4gICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgei1pbmRleDogJHppbmRleC1zdGlja3k7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzY3NzLWRvY3Mtc3RhcnQgc3RhY2tzXG4uaHN0YWNrIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbn1cblxuLnZzdGFjayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBzdGFja3NcbiIsIi8vXG4vLyBWaXN1YWxseSBoaWRkZW5cbi8vXG5cbi52aXN1YWxseS1oaWRkZW4sXG4udmlzdWFsbHktaGlkZGVuLWZvY3VzYWJsZTpub3QoOmZvY3VzKTpub3QoOmZvY3VzLXdpdGhpbikge1xuICBAaW5jbHVkZSB2aXN1YWxseS1oaWRkZW4oKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBIaWRlIGNvbnRlbnQgdmlzdWFsbHkgd2hpbGUga2VlcGluZyBpdCBhY2Nlc3NpYmxlIHRvIGFzc2lzdGl2ZSB0ZWNobm9sb2dpZXNcbi8vXG4vLyBTZWU6IGh0dHBzOi8vd3d3LmExMXlwcm9qZWN0LmNvbS9wb3N0cy8yMDEzLTAxLTExLWhvdy10by1oaWRlLWNvbnRlbnQvXG4vLyBTZWU6IGh0dHBzOi8va2l0dHlnaXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cblxuQG1peGluIHZpc3VhbGx5LWhpZGRlbigpIHtcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogLTFweCAhaW1wb3J0YW50OyAvLyBGaXggZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjU2ODZcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG5cbiAgLy8gRml4IGZvciBwb3NpdGlvbmVkIHRhYmxlIGNhcHRpb24gdGhhdCBjb3VsZCBiZWNvbWUgYW5vbnltb3VzIGNlbGxzXG4gICY6bm90KGNhcHRpb24pIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLyBVc2UgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQsIG9yIG9uZSBvZiBpdHMgY2hpbGQgZWxlbWVudHMgaXMgZm9jdXNlZFxuLy8gKGkuZS4gd2hlbiBmb2N1cyBpcyB3aXRoaW4gdGhlIGVsZW1lbnQvY29udGFpbmVyIHRoYXQgdGhlIGNsYXNzIHdhcyBhcHBsaWVkIHRvKVxuLy9cbi8vIFVzZWZ1bCBmb3IgXCJTa2lwIHRvIG1haW4gY29udGVudFwiIGxpbmtzOyBzZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcblxuQG1peGluIHZpc3VhbGx5LWhpZGRlbi1mb2N1c2FibGUoKSB7XG4gICY6bm90KDpmb2N1cyk6bm90KDpmb2N1cy13aXRoaW4pIHtcbiAgICBAaW5jbHVkZSB2aXN1YWxseS1oaWRkZW4oKTtcbiAgfVxufVxuIiwiLy9cbi8vIFN0cmV0Y2hlZCBsaW5rXG4vL1xuXG4uc3RyZXRjaGVkLWxpbmsge1xuICAmOjojeyRzdHJldGNoZWQtbGluay1wc2V1ZG8tZWxlbWVudH0ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogJHN0cmV0Y2hlZC1saW5rLXotaW5kZXg7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuIiwiLy9cbi8vIFRleHQgdHJ1bmNhdGlvblxuLy9cblxuLnRleHQtdHJ1bmNhdGUge1xuICBAaW5jbHVkZSB0ZXh0LXRydW5jYXRlKCk7XG59XG4iLCIvLyBUZXh0IHRydW5jYXRlXG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXG5cbkBtaXhpbiB0ZXh0LXRydW5jYXRlKCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIi52ciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgd2lkdGg6IDFweDtcbiAgbWluLWhlaWdodDogMWVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Y29sb3I7XG4gIG9wYWNpdHk6ICRoci1vcGFjaXR5O1xufVxuIiwiLy8gVXRpbGl0eSBnZW5lcmF0b3Jcbi8vIFVzZWQgdG8gZ2VuZXJhdGUgdXRpbGl0aWVzICYgcHJpbnQgdXRpbGl0aWVzXG5AbWl4aW4gZ2VuZXJhdGUtdXRpbGl0eSgkdXRpbGl0eSwgJGluZml4OiBcIlwiLCAkaXMtcmZzLW1lZGlhLXF1ZXJ5OiBmYWxzZSkge1xuICAkdmFsdWVzOiBtYXAtZ2V0KCR1dGlsaXR5LCB2YWx1ZXMpO1xuXG4gIC8vIElmIHRoZSB2YWx1ZXMgYXJlIGEgbGlzdCBvciBzdHJpbmcsIGNvbnZlcnQgaXQgaW50byBhIG1hcFxuICBAaWYgdHlwZS1vZigkdmFsdWVzKSA9PSBcInN0cmluZ1wiIG9yIHR5cGUtb2YobnRoKCR2YWx1ZXMsIDEpKSAhPSBcImxpc3RcIiB7XG4gICAgJHZhbHVlczogemlwKCR2YWx1ZXMsICR2YWx1ZXMpO1xuICB9XG5cbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICR2YWx1ZXMge1xuICAgICRwcm9wZXJ0aWVzOiBtYXAtZ2V0KCR1dGlsaXR5LCBwcm9wZXJ0eSk7XG5cbiAgICAvLyBNdWx0aXBsZSBwcm9wZXJ0aWVzIGFyZSBwb3NzaWJsZSwgZm9yIGV4YW1wbGUgd2l0aCB2ZXJ0aWNhbCBvciBob3Jpem9udGFsIG1hcmdpbnMgb3IgcGFkZGluZ3NcbiAgICBAaWYgdHlwZS1vZigkcHJvcGVydGllcykgPT0gXCJzdHJpbmdcIiB7XG4gICAgICAkcHJvcGVydGllczogYXBwZW5kKCgpLCAkcHJvcGVydGllcyk7XG4gICAgfVxuXG4gICAgLy8gVXNlIGN1c3RvbSBjbGFzcyBpZiBwcmVzZW50XG4gICAgJHByb3BlcnR5LWNsYXNzOiBpZihtYXAtaGFzLWtleSgkdXRpbGl0eSwgY2xhc3MpLCBtYXAtZ2V0KCR1dGlsaXR5LCBjbGFzcyksIG50aCgkcHJvcGVydGllcywgMSkpO1xuICAgICRwcm9wZXJ0eS1jbGFzczogaWYoJHByb3BlcnR5LWNsYXNzID09IG51bGwsIFwiXCIsICRwcm9wZXJ0eS1jbGFzcyk7XG5cbiAgICAvLyBVc2UgY3VzdG9tIENTUyB2YXJpYWJsZSBuYW1lIGlmIHByZXNlbnQsIG90aGVyd2lzZSBkZWZhdWx0IHRvIGBjbGFzc2BcbiAgICAkY3NzLXZhcmlhYmxlLW5hbWU6IGlmKG1hcC1oYXMta2V5KCR1dGlsaXR5LCBjc3MtdmFyaWFibGUtbmFtZSksIG1hcC1nZXQoJHV0aWxpdHksIGNzcy12YXJpYWJsZS1uYW1lKSwgbWFwLWdldCgkdXRpbGl0eSwgY2xhc3MpKTtcblxuICAgIC8vIFN0YXRlIHBhcmFtcyB0byBnZW5lcmF0ZSBwc2V1ZG8tY2xhc3Nlc1xuICAgICRzdGF0ZTogaWYobWFwLWhhcy1rZXkoJHV0aWxpdHksIHN0YXRlKSwgbWFwLWdldCgkdXRpbGl0eSwgc3RhdGUpLCAoKSk7XG5cbiAgICAkaW5maXg6IGlmKCRwcm9wZXJ0eS1jbGFzcyA9PSBcIlwiIGFuZCBzdHItc2xpY2UoJGluZml4LCAxLCAxKSA9PSBcIi1cIiwgc3RyLXNsaWNlKCRpbmZpeCwgMiksICRpbmZpeCk7XG5cbiAgICAvLyBEb24ndCBwcmVmaXggaWYgdmFsdWUga2V5IGlzIG51bGwgKGUuZy4gd2l0aCBzaGFkb3cgY2xhc3MpXG4gICAgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyOiBpZigka2V5LCBpZigkcHJvcGVydHktY2xhc3MgPT0gXCJcIiBhbmQgJGluZml4ID09IFwiXCIsIFwiXCIsIFwiLVwiKSArICRrZXksIFwiXCIpO1xuXG4gICAgQGlmIG1hcC1nZXQoJHV0aWxpdHksIHJmcykge1xuICAgICAgLy8gSW5zaWRlIHRoZSBtZWRpYSBxdWVyeVxuICAgICAgQGlmICRpcy1yZnMtbWVkaWEtcXVlcnkge1xuICAgICAgICAkdmFsOiByZnMtdmFsdWUoJHZhbHVlKTtcblxuICAgICAgICAvLyBEbyBub3QgcmVuZGVyIGFueXRoaW5nIGlmIGZsdWlkIGFuZCBub24gZmx1aWQgdmFsdWVzIGFyZSB0aGUgc2FtZVxuICAgICAgICAkdmFsdWU6IGlmKCR2YWwgPT0gcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZSksIG51bGwsICR2YWwpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAkdmFsdWU6IHJmcy1mbHVpZC12YWx1ZSgkdmFsdWUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICRpcy1jc3MtdmFyOiBtYXAtZ2V0KCR1dGlsaXR5LCBjc3MtdmFyKTtcbiAgICAkaXMtbG9jYWwtdmFyczogbWFwLWdldCgkdXRpbGl0eSwgbG9jYWwtdmFycyk7XG4gICAgJGlzLXJ0bDogbWFwLWdldCgkdXRpbGl0eSwgcnRsKTtcblxuICAgIEBpZiAkdmFsdWUgIT0gbnVsbCB7XG4gICAgICBAaWYgJGlzLXJ0bCA9PSBmYWxzZSB7XG4gICAgICAgIC8qIHJ0bDpiZWdpbjpyZW1vdmUgKi9cbiAgICAgIH1cblxuICAgICAgQGlmICRpcy1jc3MtdmFyIHtcbiAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfSB7XG4gICAgICAgICAgLS0jeyRwcmVmaXh9I3skY3NzLXZhcmlhYmxlLW5hbWV9OiAjeyR2YWx1ZX07XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkcHNldWRvIGluICRzdGF0ZSB7XG4gICAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfS0jeyRwc2V1ZG99OiN7JHBzZXVkb30ge1xuICAgICAgICAgICAgLS0jeyRwcmVmaXh9I3skY3NzLXZhcmlhYmxlLW5hbWV9OiAjeyR2YWx1ZX07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfSB7XG4gICAgICAgICAgQGVhY2ggJHByb3BlcnR5IGluICRwcm9wZXJ0aWVzIHtcbiAgICAgICAgICAgIEBpZiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgIEBlYWNoICRsb2NhbC12YXIsICR2YXJpYWJsZSBpbiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgICAgLS0jeyRwcmVmaXh9I3skbG9jYWwtdmFyfTogI3skdmFyaWFibGV9O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAjeyRwcm9wZXJ0eX06ICR2YWx1ZSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRwc2V1ZG8gaW4gJHN0YXRlIHtcbiAgICAgICAgICAuI3skcHJvcGVydHktY2xhc3MgKyAkaW5maXggKyAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXJ9LSN7JHBzZXVkb306I3skcHNldWRvfSB7XG4gICAgICAgICAgICBAZWFjaCAkcHJvcGVydHkgaW4gJHByb3BlcnRpZXMge1xuICAgICAgICAgICAgICBAaWYgJGlzLWxvY2FsLXZhcnMge1xuICAgICAgICAgICAgICAgIEBlYWNoICRsb2NhbC12YXIsICR2YXJpYWJsZSBpbiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgICAgICAtLSN7JHByZWZpeH0jeyRsb2NhbC12YXJ9OiAjeyR2YXJpYWJsZX07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICN7JHByb3BlcnR5fTogJHZhbHVlIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpZiAkaXMtcnRsID09IGZhbHNlIHtcbiAgICAgICAgLyogcnRsOmVuZDpyZW1vdmUgKi9cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIExvb3Agb3ZlciBlYWNoIGJyZWFrcG9pbnRcbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG5cbiAgLy8gR2VuZXJhdGUgbWVkaWEgcXVlcnkgaWYgbmVlZGVkXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC8vIExvb3Agb3ZlciBlYWNoIHV0aWxpdHkgcHJvcGVydHlcbiAgICBAZWFjaCAka2V5LCAkdXRpbGl0eSBpbiAkdXRpbGl0aWVzIHtcbiAgICAgIC8vIFRoZSB1dGlsaXR5IGNhbiBiZSBkaXNhYmxlZCB3aXRoIGBmYWxzZWAsIHRodXMgY2hlY2sgaWYgdGhlIHV0aWxpdHkgaXMgYSBtYXAgZmlyc3RcbiAgICAgIC8vIE9ubHkgcHJvY2VlZCBpZiByZXNwb25zaXZlIG1lZGlhIHF1ZXJpZXMgYXJlIGVuYWJsZWQgb3IgaWYgaXQncyB0aGUgYmFzZSBtZWRpYSBxdWVyeVxuICAgICAgQGlmIHR5cGUtb2YoJHV0aWxpdHkpID09IFwibWFwXCIgYW5kIChtYXAtZ2V0KCR1dGlsaXR5LCByZXNwb25zaXZlKSBvciAkaW5maXggPT0gXCJcIikge1xuICAgICAgICBAaW5jbHVkZSBnZW5lcmF0ZS11dGlsaXR5KCR1dGlsaXR5LCAkaW5maXgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBSRlMgcmVzY2FsaW5nXG5AbWVkaWEgKG1pbi13aWR0aDogJHJmcy1tcS12YWx1ZSkge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgQGlmIChtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCkgPCAkcmZzLWJyZWFrcG9pbnQpIHtcbiAgICAgIC8vIExvb3Agb3ZlciBlYWNoIHV0aWxpdHkgcHJvcGVydHlcbiAgICAgIEBlYWNoICRrZXksICR1dGlsaXR5IGluICR1dGlsaXRpZXMge1xuICAgICAgICAvLyBUaGUgdXRpbGl0eSBjYW4gYmUgZGlzYWJsZWQgd2l0aCBgZmFsc2VgLCB0aHVzIGNoZWNrIGlmIHRoZSB1dGlsaXR5IGlzIGEgbWFwIGZpcnN0XG4gICAgICAgIC8vIE9ubHkgcHJvY2VlZCBpZiByZXNwb25zaXZlIG1lZGlhIHF1ZXJpZXMgYXJlIGVuYWJsZWQgb3IgaWYgaXQncyB0aGUgYmFzZSBtZWRpYSBxdWVyeVxuICAgICAgICBAaWYgdHlwZS1vZigkdXRpbGl0eSkgPT0gXCJtYXBcIiBhbmQgbWFwLWdldCgkdXRpbGl0eSwgcmZzKSBhbmQgKG1hcC1nZXQoJHV0aWxpdHksIHJlc3BvbnNpdmUpIG9yICRpbmZpeCA9PSBcIlwiKSB7XG4gICAgICAgICAgQGluY2x1ZGUgZ2VuZXJhdGUtdXRpbGl0eSgkdXRpbGl0eSwgJGluZml4LCB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIFByaW50IHV0aWxpdGllc1xuQG1lZGlhIHByaW50IHtcbiAgQGVhY2ggJGtleSwgJHV0aWxpdHkgaW4gJHV0aWxpdGllcyB7XG4gICAgLy8gVGhlIHV0aWxpdHkgY2FuIGJlIGRpc2FibGVkIHdpdGggYGZhbHNlYCwgdGh1cyBjaGVjayBpZiB0aGUgdXRpbGl0eSBpcyBhIG1hcCBmaXJzdFxuICAgIC8vIFRoZW4gY2hlY2sgaWYgdGhlIHV0aWxpdHkgbmVlZHMgcHJpbnQgc3R5bGVzXG4gICAgQGlmIHR5cGUtb2YoJHV0aWxpdHkpID09IFwibWFwXCIgYW5kIG1hcC1nZXQoJHV0aWxpdHksIHByaW50KSA9PSB0cnVlIHtcbiAgICAgIEBpbmNsdWRlIGdlbmVyYXRlLXV0aWxpdHkoJHV0aWxpdHksIFwiLXByaW50XCIpO1xuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBTaGFyZWQgQnV0dG9uIFN0eWxlc1xuICpcbiAqIEJhc2UgYnV0dG9uIHN0eWxlcyB1c2VkIGFjcm9zcyBmcm9udGVuZCBhbmQgYmFja2VuZFxuICovXG5cbi8vIEJhc2UgYnV0dG9uIHN0eWxlcyAtIGV4dGVuZHMgQm9vdHN0cmFwJ3MgLmJ0blxuLy8gV2Ugb25seSBvdmVycmlkZSBzcGVjaWZpYyBwcm9wZXJ0aWVzLCBsZXR0aW5nIEJvb3RzdHJhcCBoYW5kbGUgdGhlIHJlc3Rcbi5idG4ge1xuICAvLyBMZXQgQm9vdHN0cmFwIGhhbmRsZSBkaXNwbGF5LCBib3JkZXIsIGFuZCBvdGhlciBiYXNlIHByb3BlcnRpZXNcbiAgLy8gT25seSBvdmVycmlkZSBvdXIgY3VzdG9tIHZhbHVlc1xuICBmb250LXdlaWdodDogJGJ0bi1mb250LXdlaWdodDtcbiAgcGFkZGluZzogJGJ0bi1wYWRkaW5nLXkgJGJ0bi1wYWRkaW5nLXg7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICBib3JkZXItcmFkaXVzOiAkYnRuLWJvcmRlci1yYWRpdXM7XG4gIHRyYW5zaXRpb246ICRidG4tdHJhbnNpdGlvbjtcbiAgXG4gICY6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuICBcbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYSgkcHJpbWFyeSwgMC4yNSk7XG4gIH1cbiAgXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDAuNjU7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgfVxuICBcbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG59XG5cbi8vIEJ1dHRvbiB2YXJpYW50c1xuLmJ0bi1wcmltYXJ5IHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJHByaW1hcnksICR3aGl0ZSk7XG4gIFxuICAvLyBNT0RJRklFRCBCWSBIQU5TT05YWVogLSBDdXN0b20gaG92ZXIgY29sb3Igb3ZlcnJpZGVcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMyMzI4YSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogIzMyMzI4YSAhaW1wb3J0YW50O1xuICB9XG4gIFxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMjMyOGEgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6ICMzMjMyOGEgIWltcG9ydGFudDtcbiAgfVxuICBcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzIzMjhhICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjMzIzMjhhICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmJ0bi1zZWNvbmRhcnkge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkc2Vjb25kYXJ5LCAkd2hpdGUpO1xufVxuXG4uYnRuLXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkc3VjY2VzcywgJHdoaXRlKTtcbn1cblxuLmJ0bi1pbmZvIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGluZm8sICR3aGl0ZSk7XG59XG5cbi5idG4td2FybmluZyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCR3YXJuaW5nLCAkd2hpdGUpO1xufVxuXG4uYnRuLWRhbmdlciB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRkYW5nZXIsICR3aGl0ZSk7XG59XG5cbi5idG4tbGlnaHQge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkbGlnaHQtZ3JheSwgJGRhcmstZ3JheSk7XG59XG5cbi5idG4tZGFyayB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRkYXJrLWdyYXksICR3aGl0ZSk7XG59XG5cbi8vIE91dGxpbmUgYnV0dG9uIHZhcmlhbnRzXG4uYnRuLW91dGxpbmUtcHJpbWFyeSB7XG4gIGNvbG9yOiAkcHJpbWFyeTtcbiAgYm9yZGVyLWNvbG9yOiAjNmM3NTdkOyAvLyBHcmF5IGJvcmRlciBhcyByZXF1ZXN0ZWRcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7IC8vIEV4cGxpY2l0bHkgc3F1YXJlIGNvcm5lcnNcbiAgXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG4gICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeTtcbiAgfVxuICBcbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUge1xuICAgIGJvcmRlci1jb2xvcjogIzZjNzU3ZDtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgkcHJpbWFyeSwgMC4yNSk7XG4gIH1cbn1cblxuLy8gU2l6ZSB2YXJpYXRpb25zXG4uYnRuLWxnIHtcbiAgcGFkZGluZzogMTJweCAzMHB4O1xuICBmb250LXNpemU6ICRmb250LXNpemUtbGc7XG59XG5cbi5idG4tc20ge1xuICBwYWRkaW5nOiA1cHggMTVweDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xufVxuXG4vLyBCbG9jayBidXR0b25cbi5idG4tYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8vIEljb24gYnV0dG9uXG4uYnRuLWljb24ge1xuICBwYWRkaW5nOiAkYnRuLXBhZGRpbmcteTtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgQGluY2x1ZGUgZmxleC1jZW50ZXI7XG4gIFxuICAmLmJ0bi1zbSB7XG4gICAgd2lkdGg6IDMycHg7XG4gICAgaGVpZ2h0OiAzMnB4O1xuICB9XG4gIFxuICAmLmJ0bi1sZyB7XG4gICAgd2lkdGg6IDQ4cHg7XG4gICAgaGVpZ2h0OiA0OHB4O1xuICB9XG59IiwiLyoqXG4gKiBRdWlsbCBFZGl0b3IgU3R5bGVzXG4gKiBDb25zaXN0ZW50IHN0eWxpbmcgZm9yIFF1aWxsIFdZU0lXWUcgZWRpdG9ycyBhY3Jvc3MgdGhlIGFwcGxpY2F0aW9uXG4gKi9cblxuLy8gUXVpbGwgRWRpdG9yIENvbnRhaW5lciBTdHlsZXMgLSBDUklUSUNBTCBmb3IgcHJvcGVyIGxheW91dFxuLnF1aWxsLXdyYXBwZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgLy8gUXVpbGwgY29udGFpbmVyIGluc2lkZSB3cmFwcGVyXG4gICAgLnF1aWxsLWVkaXRvci1jb250YWluZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIG1pbi1oZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAvLyBRdWlsbCBUb29sYmFyIFN0eWxlc1xuICAgIC5xbC10b29sYmFyIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICAgICAgYmFja2dyb3VuZDogI2Y4ZjlmYTtcbiAgICAgICAgXG4gICAgICAgICYucWwtc25vdyB7XG4gICAgICAgICAgICBwYWRkaW5nOiA4cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBRdWlsbCBDb250YWluZXIgKGhvbGRzIHRoZSBlZGl0b3IpXG4gICAgLnFsLWNvbnRhaW5lciB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICAgIFxuICAgICAgICAmLnFsLXNub3cge1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gUXVpbGwgRWRpdG9yIENvbnRlbnQgQXJlYVxuICAgIC5xbC1lZGl0b3Ige1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDE1MHB4O1xuICAgICAgICBtYXgtaGVpZ2h0OiA0MDBweDtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgcGFkZGluZzogMTJweCAxNXB4O1xuXG4gICAgICAgIC8vIEVuc3VyZSBjb25zaXN0ZW50IGZvbnQgc2l6ZSBmb3IgYWxsIHRleHQgZWxlbWVudHNcbiAgICAgICAgcCxcbiAgICAgICAgb2wsXG4gICAgICAgIHVsLFxuICAgICAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAvLyBLZWVwIGhlYWRlcnMgcHJvcG9ydGlvbmFsXG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gRml4IGZvciBwbGFjZWhvbGRlciB0ZXh0XG4gICAgICAgICYucWwtYmxhbms6OmJlZm9yZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICAgIGxlZnQ6IDE1cHg7XG4gICAgICAgICAgICByaWdodDogMTVweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFZhcmlhbnQ6IFNpbXBsZSBlZGl0b3IgKGZld2VyIHRvb2xiYXIgb3B0aW9ucylcbiAgICAmLnF1aWxsLXNpbXBsZSB7XG4gICAgICAgIC5xbC1lZGl0b3Ige1xuICAgICAgICAgICAgbWluLWhlaWdodDogMTAwcHg7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAyNTBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFZhcmlhbnQ6IEZ1bGwgZWRpdG9yIChhbGwgdG9vbGJhciBvcHRpb25zKVxuICAgICYucXVpbGwtZnVsbCB7XG4gICAgICAgIC5xbC1lZGl0b3Ige1xuICAgICAgICAgICAgbWluLWhlaWdodDogMjAwcHg7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiA1MDBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFZhcmlhbnQ6IElubGluZSBlZGl0b3IgKG5vIGJvcmRlciBvbiB3cmFwcGVyKVxuICAgICYucXVpbGwtaW5saW5lIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBcbiAgICAgICAgLnFsLXRvb2xiYXIge1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbSAwLjM3NXJlbSAwIDA7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5xbC1jb250YWluZXIge1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgMC4zNzVyZW0gMC4zNzVyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIEF1dG8taW5pdDogQXBwbHkgUXVpbGwgdG8gdGV4dGFyZWFzIHdpdGggZGF0YS13eXNpd3lnPVwicXVpbGxcIlxudGV4dGFyZWFbZGF0YS13eXNpd3lnPVwicXVpbGxcIl0ge1xuICAgIC8vIFRoaXMgd2lsbCBiZSBoaWRkZW4gd2hlbiBRdWlsbCBpbml0aWFsaXplc1xuICAgICYucXVpbGwtaW5pdGlhbGl6ZWQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn0iLCIvKipcbiAqIFN0YXIgUmF0aW5nIENvbXBvbmVudCBTdHlsZXNcbiAqL1xuXG4uc3Rhci1yYXRpbmctd2lkZ2V0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgXG4gICAgLy8gRGlzcGxheSBtb2RlIHN0eWxlc1xuICAgICYucmVhZG9ubHkge1xuICAgICAgICAuc3Rhci1yYXRpbmctZGlzcGxheSB7XG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmOTgwMDsgLy8gU3Ryb25nIGFtYmVyL29yYW5nZSBjb2xvclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIEludGVyYWN0aXZlIG1vZGUgc3R5bGVzXG4gICAgJi5pbnRlcmFjdGl2ZSB7XG4gICAgICAgIC5zdGFyLXJhdGluZy1pbnB1dCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBnYXA6IDJweDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLnN0YXItd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgLnN0YXItcmFkaW8ge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2RkZDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4ycyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgJi5mYXMuZmEtc3RhciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmOTgwMDsgLy8gU3Ryb25nIGFtYmVyL29yYW5nZSBjb2xvclxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICY6aG92ZXIgaSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmY5ODAwOyAvLyBTdHJvbmcgYW1iZXIvb3JhbmdlIGNvbG9yXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAuc3Rhci1jbGVhci1idG4ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2RjMzU0NTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gU2l6ZSB2YXJpYXRpb25zXG4gICAgJi5zdGFyLXJhdGluZy1zbSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgXG4gICAgICAgIC5zdGFyLXJhdGluZy1pbnB1dCB7XG4gICAgICAgICAgICBnYXA6IDFweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAmLnN0YXItcmF0aW5nLW1kIHtcbiAgICAgICAgZm9udC1zaXplOiAzMHB4OyAvLyBJbmNyZWFzZWQgZnJvbSAyMHB4IHRvIG1ha2Ugc3RhcnMgNTAlIGJpZ2dlclxuICAgICAgICBcbiAgICAgICAgLnN0YXItcmF0aW5nLWlucHV0IHtcbiAgICAgICAgICAgIGdhcDogM3B4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgICYuc3Rhci1yYXRpbmctbGcge1xuICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgIFxuICAgICAgICAuc3Rhci1yYXRpbmctaW5wdXQge1xuICAgICAgICAgICAgZ2FwOiAzcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIEJhY2tlbmQgZm9ybSBzcGVjaWZpYyBzdHlsZXNcbi5iYWNrZW5kLWZvcm0ge1xuICAgIC5zdGFyLXJhdGluZy13aWRnZXQge1xuICAgICAgICAmLmludGVyYWN0aXZlIHtcbiAgICAgICAgICAgIC5zdGFyLXJhdGluZy1pbnB1dCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2Y4ZjlmYTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA4cHggMTJweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzgwYmRmZjtcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMCwgMTIzLCAyNTUsIDAuMjUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gRnJvbnRlbmQgcmV2aWV3IGZvcm0gc3R5bGVzXG4ucmV2aWV3LWZvcm0ge1xuICAgIC5zdGFyLXJhdGluZy13aWRnZXQge1xuICAgICAgICAmLmludGVyYWN0aXZlIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5zdGFyLXJhdGluZy1pbnB1dCB7XG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIFJldmlldyBkaXNwbGF5IHN0eWxlc1xuLnJldmlldy1pdGVtIHtcbiAgICAuc3Rhci1yYXRpbmctd2lkZ2V0IHtcbiAgICAgICAgJi5yZWFkb25seSB7XG4gICAgICAgICAgICAuc3Rhci1yYXRpbmctZGlzcGxheSB7XG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIE1vZGFsIHJldmlldyBlZGl0b3Igc3R5bGVzXG4ucmV2aWV3LWVkaXRvci1tb2RhbCB7XG4gICAgLnN0YXItcmF0aW5nLXdpZGdldCB7XG4gICAgICAgICYuaW50ZXJhY3RpdmUge1xuICAgICAgICAgICAgLnN0YXItcmF0aW5nLWlucHV0IHtcbiAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKipcbiAqIFNlbGVjdDIgQWNjZXNzaWJpbGl0eSBJbXByb3ZlbWVudHNcbiAqIFxuICogRml4ZXMga2V5Ym9hcmQgbmF2aWdhdGlvbiB2aXNpYmlsaXR5IGFuZCBpbXByb3ZlcyBvdmVyYWxsIGFjY2Vzc2liaWxpdHlcbiAqIGZvciBTZWxlY3QyIGRyb3Bkb3ducyBhY3Jvc3MgdGhlIGFwcGxpY2F0aW9uLlxuICovXG5cbi8vIEVuc3VyZSBoaWdobGlnaHRlZCBvcHRpb25zIGFyZSBjbGVhcmx5IHZpc2libGUgd2hlbiBuYXZpZ2F0aW5nIHdpdGgga2V5Ym9hcmRcbi5zZWxlY3QyLWNvbnRhaW5lciB7XG4gICAgLy8gRml4IGhpZ2hsaWdodCB2aXNpYmlsaXR5IGZvciBrZXlib2FyZCBuYXZpZ2F0aW9uXG4gICAgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZFthcmlhLXNlbGVjdGVkXSxcbiAgICAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RhYmxlIHtcbiAgICAgICAgLy8gVXNlIGEgaGlnaC1jb250cmFzdCBibHVlIHRoYXQgd29ya3MgaW4gYm90aCBsaWdodCBhbmQgZGFyayBjb250ZXh0c1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwYjVlZDcgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gSW1wcm92ZSBmb2N1cyB2aXNpYmlsaXR5IG9uIHRoZSBTZWxlY3QyIGNvbnRhaW5lciBpdHNlbGZcbiAgICAmLnNlbGVjdDItY29udGFpbmVyLS1mb2N1cyB7XG4gICAgICAgIC5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICM4NmI3ZmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTMsIDExMCwgMjUzLCAwLjI1KSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIEJldHRlciBrZXlib2FyZCBmb2N1cyBpbmRpY2F0b3JcbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4gICAgLnNlbGVjdDItc2VsZWN0aW9uLnNlbGVjdDIta2V5Ym9hcmQtZm9jdXNlZCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzg2YjdmZSAhaW1wb3J0YW50O1xuICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTMsIDExMCwgMjUzLCAwLjI1KSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbiAgICAvLyBFbnN1cmUgc2VhcmNoIGZpZWxkIGlzIHZpc2libGUgd2hlbiBmb2N1c2VkXG4gICAgLnNlbGVjdDItc2VhcmNoX19maWVsZDpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzg2YjdmZSAhaW1wb3J0YW50O1xuICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSksIDAgMCAwIDAuMnJlbSByZ2JhKDEzLCAxMTAsIDI1MywgMC4yNSkgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi8vIEJvb3RzdHJhcCA1IHRoZW1lIHNwZWNpZmljIGZpeGVzXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcC01IHtcbiAgICAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkW2FyaWEtc2VsZWN0ZWRdLFxuICAgIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWQuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLXNlbGVjdGFibGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgIC8vIEVuc3VyZSBkcm9wZG93biBvcHRpb25zIGhhdmUgcHJvcGVyIGNvbnRyYXN0XG4gICAgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIHtcbiAgICAgICAgLy8gRGVmYXVsdCBzdGF0ZVxuICAgICAgICAmW2FyaWEtc2VsZWN0ZWQ9XCJmYWxzZVwiXSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgICAgICAgICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gICAgICAgICAgICAgICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8vIFNlbGVjdGVkIHN0YXRlIChhbHJlYWR5IHNlbGVjdGVkIGl0ZW0pXG4gICAgICAgICZbYXJpYS1zZWxlY3RlZD1cInRydWVcIl0ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgICAgICAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gQWRtaW5MVEUgdGhlbWUgc3BlY2lmaWMgZml4ZXMgKGZvciBiYWNrZW5kKVxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IHtcbiAgICAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkW2FyaWEtc2VsZWN0ZWRdLFxuICAgIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWQuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLXNlbGVjdGFibGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4vLyBIaWdoIGNvbnRyYXN0IG1vZGUgc3VwcG9ydFxuQG1lZGlhIChwcmVmZXJzLWNvbnRyYXN0OiBoaWdoKSB7XG4gICAgLnNlbGVjdDItY29udGFpbmVyIHtcbiAgICAgICAgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZFthcmlhLXNlbGVjdGVkXSxcbiAgICAgICAgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0YWJsZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDgwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2ZmZmZmZiAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBEYXJrIG1vZGUgc3VwcG9ydCAoaWYgeW91ciBhcHAgaGFzIGRhcmsgbW9kZSlcbkBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcbiAgICAuc2VsZWN0Mi1jb250YWluZXIge1xuICAgICAgICAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkW2FyaWEtc2VsZWN0ZWRdLFxuICAgICAgICAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RhYmxlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyoqXG4gKiBDb29raWUgQ29uc2VudCBCYW5uZXIgU3R5bGVzXG4gKlxuICogU3R5bGVzIGZvciB0aGUgY29va2llIGNvbnNlbnQgYmFubmVyIHRoYXQgYXBwZWFycyBhdCB0aGUgYm90dG9tIG9mIHBhZ2VzLlxuICpcbiAqIEBzZWUgcmVzb3VyY2VzL3ZpZXdzL3NoYXJlZC9wYXJ0aWFscy9jb29raWUtY29uc2VudC1iYW5uZXIuYmxhZGUucGhwXG4gKiBAc2VlIHJlc291cmNlcy9qcy9zaGFyZWQvY29tcG9uZW50cy9jb29raWUtY29uc2VudC1iYW5uZXIuanNcbiAqL1xuXG4uY29va2llLWNvbnNlbnQtYmFubmVyIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwLjk1KSwgcmdiYSgwLCAwLCAwLCAwLjk4KSk7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgcGFkZGluZzogMTVweCAwO1xuICAgIHotaW5kZXg6IDEwMDAwO1xuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcbiAgICBib3gtc2hhZG93OiAwIC0ycHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gICAgYW5pbWF0aW9uOiBzbGlkZVVwIDAuM3MgZWFzZS1vdXQ7XG5cbiAgICBwIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICB9XG5cbiAgICAuYnRuLW91dGxpbmUtbGlnaHQge1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTtcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiBBbmltYXRpb25zICovXG5Aa2V5ZnJhbWVzIHNsaWRlVXAge1xuICAgIGZyb20ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgfVxuICAgIHRvIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBzbGlkZURvd24ge1xuICAgIGZyb20ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgfVxuICAgIHRvIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICAgIH1cbn1cblxuLyogQWRkIHBhZGRpbmcgdG8gYm9keSB3aGVuIGJhbm5lciBpcyBzaG93biB0byBwcmV2ZW50IGNvbnRlbnQgb3ZlcmxhcCAqL1xuYm9keS5oYXMtY29va2llLWJhbm5lciB7XG4gICAgcGFkZGluZy1ib3R0b206IDBweDtcbn1cbiIsIi8qKlxuICogRW5oYW5jZWQgRGF0YVRhYmxlIFN0eWxlc1xuICpcbiAqIFN0eWxlcyBmb3IgdGhlIGVuaGFuY2VkIGRhdGF0YWJsZSBjb21wb25lbnQgaW5jbHVkaW5nOlxuICogLSBEYXRhVGFibGVzIHdyYXBwZXIgcGFkZGluZ1xuICogLSBJbmZvIGFuZCBwYWdpbmF0aW9uIHBhZGRpbmdcbiAqIC0gU29ydGluZyBpbmRpY2F0b3JzXG4gKiAtIENoZWNrYm94IHN0eWxlc1xuICogLSBTZWxlY3RlZCByb3cgaGlnaGxpZ2h0aW5nXG4gKiAtIEZpbHRlciB0b2dnbGUgYnV0dG9uXG4gKiAtIEJ1bGsgYWN0aW9uIGdyb3VwXG4gKlxuICogQHNlZSByZXNvdXJjZXMvdmlld3Mvc2hhcmVkL3BhcnRpYWxzL3RhYmxlcy9lbmhhbmNlZC1kYXRhdGFibGUuYmxhZGUucGhwXG4gKiBAc2VlIHJlc291cmNlcy9qcy9zaGFyZWQvY29tcG9uZW50cy9lbmhhbmNlZC1kYXRhdGFibGUuanNcbiAqL1xuXG4uZW5oYW5jZWQtZGF0YXRhYmxlIHtcbiAgICAuZGF0YVRhYmxlc193cmFwcGVyIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAuZGF0YVRhYmxlc19pbmZvLFxuICAgIC5kYXRhVGFibGVzX3BhZ2luYXRlIHtcbiAgICAgICAgcGFkZGluZzogMXJlbSAwO1xuICAgIH1cblxuICAgIC5kYXRhVGFibGVzX2xlbmd0aCxcbiAgICAuZGF0YVRhYmxlc19maWx0ZXIge1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMDtcbiAgICB9XG5cbiAgICAudGFibGUgdGgge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgdGguc29ydGluZzphZnRlcixcbiAgICB0aC5zb3J0aW5nX2FzYzphZnRlcixcbiAgICB0aC5zb3J0aW5nX2Rlc2M6YWZ0ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiA4cHg7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgfVxuXG4gICAgdGgubm8tc29ydDphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuc2VsZWN0LWFsbC1jaGVja2JveCxcbiAgICAucm93LWNoZWNrYm94IHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgIC5zZWxlY3RlZC1yb3cge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLWJzLXByaW1hcnktcmdiKSwgMC4xKSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5maWx0ZXItdG9nZ2xlLWJ0biB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAvLyBGaWx0ZXIgY29udGFpbmVyIHdpdGggc21vb3RoIHRyYW5zaXRpb25cbiAgICAvLyBOb3RlOiBVc2luZyBhdHRyaWJ1dGUgc2VsZWN0b3IgdG8gbWF0Y2ggYW55IElEIGVuZGluZyB3aXRoIF9maWx0ZXJfY29udGFpbmVyXG4gICAgW2lkJD1cIl9maWx0ZXJfY29udGFpbmVyXCJdIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICB9XG5cbiAgICAuYnVsay1hY3Rpb24tZ3JvdXAge1xuICAgICAgICBtYXgtd2lkdGg6IDMwMHB4O1xuICAgIH1cbn1cbiIsIi8qKlxuICogVG9nZ2xlIFN3aXRjaCBTdHlsZXNcbiAqXG4gKiBTdHlsZXMgZm9yIHRvZ2dsZSBzd2l0Y2ggY29tcG9uZW50IGluY2x1ZGluZzpcbiAqIC0gU21hbGwgYW5kIGxhcmdlIHNpemUgdmFyaWFudHNcbiAqIC0gTG9hZGluZyBzdGF0ZVxuICogLSBFcnJvciBzdGF0ZVxuICpcbiAqIEBzZWUgcmVzb3VyY2VzL3ZpZXdzL3NoYXJlZC9wYXJ0aWFscy91aS90b2dnbGUtc3dpdGNoLmJsYWRlLnBocFxuICogQHNlZSByZXNvdXJjZXMvanMvc2hhcmVkL2NvbXBvbmVudHMvdG9nZ2xlLXN3aXRjaC5qc1xuICovXG5cbi5mb3JtLXN3aXRjaC1zbSAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgaGVpZ2h0OiAxcmVtO1xuICAgIHdpZHRoOiAxLjc1cmVtO1xufVxuXG4uZm9ybS1zd2l0Y2gtbGcgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIGhlaWdodDogMS41cmVtO1xuICAgIHdpZHRoOiAyLjc1cmVtO1xufVxuXG4uZm9ybS1jaGVjay1pbnB1dC5pcy1sb2FkaW5nIHtcbiAgICBvcGFjaXR5OiAwLjU7XG4gICAgY3Vyc29yOiB3YWl0O1xufVxuXG4uZm9ybS1jaGVjay1pbnB1dC50b2dnbGUtZXJyb3Ige1xuICAgIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbn1cbiIsIi8qKlxuICogTm90aWZpY2F0aW9ucyBEcm9wZG93biBTdHlsZXNcbiAqXG4gKiBTdHlsZXMgZm9yIG5vdGlmaWNhdGlvbnMgZHJvcGRvd24gY29tcG9uZW50IGluY2x1ZGluZzpcbiAqIC0gRHJvcGRvd24gc2l6aW5nXG4gKiAtIFVucmVhZCBub3RpZmljYXRpb24gaGlnaGxpZ2h0aW5nXG4gKiAtIE5vdGlmaWNhdGlvbiBpdGVtIHN0eWxpbmdcbiAqXG4gKiBAc2VlIHJlc291cmNlcy92aWV3cy9zaGFyZWQvcGFydGlhbHMvdWkvbm90aWZpY2F0aW9ucy1kcm9wZG93bi5ibGFkZS5waHBcbiAqIEBzZWUgcmVzb3VyY2VzL2pzL3NoYXJlZC9jb21wb25lbnRzL25vdGlmaWNhdGlvbnMtZHJvcGRvd24uanNcbiAqL1xuXG4ubm90aWZpY2F0aW9ucy1kcm9wZG93biB7XG4gICAgbWluLXdpZHRoOiAzMjBweDtcblxuICAgIC5ub3RpZmljYXRpb24taXRlbSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wMik7XG4gICAgICAgIH1cblxuICAgICAgICAmLnVucmVhZCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLWJzLXByaW1hcnktcmdiKSwgMC4wNSk7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tYnMtcHJpbWFyeS1yZ2IpLCAwLjA4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBSZXNwb25zaXZlIGFkanVzdG1lbnRzXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAubm90aWZpY2F0aW9ucy1kcm9wZG93biB7XG4gICAgICAgIHdpZHRoOiAyODBweDtcbiAgICB9XG59XG4iLCIvKipcbiAqIEZyb250ZW5kIFJlc2V0IFN0eWxlc1xuICogXG4gKiBOb3JtYWxpemUgYnJvd3NlciBkZWZhdWx0cyBmb3IgY29uc2lzdGVudCByZW5kZXJpbmdcbiAqL1xuXG4vLyBCb3ggc2l6aW5nXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4vLyBSZXNldCBtYXJnaW5zXG5odG1sLFxuYm9keSxcbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNixcbnAsXG5vbCxcbnVsLFxuZmlndXJlLFxuYmxvY2txdW90ZSxcbmRsLFxuZGQge1xuICBtYXJnaW46IDA7XG59XG5cbi8vIFJlc2V0IHBhZGRpbmdzXG5vbCxcbnVsIHtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLy8gU2V0IGNvcmUgYm9keSBkZWZhdWx0c1xuYm9keSB7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplU3BlZWQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIGNvbG9yOiAjMTAxMDEwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG59XG5cbi8vIEltYWdlc1xuaW1nLFxucGljdHVyZSB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLy8gRm9ybXNcbmlucHV0LFxuYnV0dG9uLFxudGV4dGFyZWEsXG5zZWxlY3Qge1xuICBmb250OiBpbmhlcml0O1xufVxuXG4vLyBSZW1vdmUgYW5pbWF0aW9ucyBmb3IgcmVkdWNlZCBtb3Rpb25cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIGh0bWw6Zm9jdXMtd2l0aGluIHtcbiAgICBzY3JvbGwtYmVoYXZpb3I6IGF1dG87XG4gIH1cblxuICAqLFxuICAqOjpiZWZvcmUsXG4gICo6OmFmdGVyIHtcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDAuMDFtcyAhaW1wb3J0YW50O1xuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDEgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjAxbXMgIWltcG9ydGFudDtcbiAgICBzY3JvbGwtYmVoYXZpb3I6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLyoqXG4gKiBGcm9udGVuZCBUeXBvZ3JhcGh5XG4gKiBcbiAqIFR5cG9ncmFwaHkgc3R5bGVzIGZvciB0aGUgZnJvbnRlbmRcbiAqL1xuXG4vLyBIZWFkaW5nc1xuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktaGVhZGluZztcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBjb2xvcjogIzEwMTAxMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5oNiB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbn1cblxuaDEge1xuICBmb250LXNpemU6IHJlbSgzNik7XG5cbiAgQGluY2x1ZGUgcmVzcG9uZC1hYm92ZShtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBsZykpIHtcbiAgICBmb250LXNpemU6IHJlbSg0OCk7XG4gIH1cbn1cblxuaDIge1xuICBmb250LXNpemU6IHJlbSgyOCk7XG5cbiAgQGluY2x1ZGUgcmVzcG9uZC1hYm92ZShtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBsZykpIHtcbiAgICBmb250LXNpemU6IHJlbSgzNik7XG4gIH1cbn1cblxuaDMge1xuICBmb250LXNpemU6IHJlbSgyMik7XG5cbiAgQGluY2x1ZGUgcmVzcG9uZC1hYm92ZShtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBsZykpIHtcbiAgICBmb250LXNpemU6IHJlbSgyOCk7XG4gIH1cbn1cblxuaDQge1xuICBmb250LXNpemU6IHJlbSgxOCk7XG5cbiAgQGluY2x1ZGUgcmVzcG9uZC1hYm92ZShtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBsZykpIHtcbiAgICBmb250LXNpemU6IHJlbSgyMik7XG4gIH1cbn1cblxuaDUge1xuICBmb250LXNpemU6IHJlbSgxNik7XG5cbiAgQGluY2x1ZGUgcmVzcG9uZC1hYm92ZShtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBsZykpIHtcbiAgICBmb250LXNpemU6IHJlbSgxOCk7XG4gIH1cbn1cblxuaDYge1xuICBmb250LXNpemU6IHJlbSgxNCk7XG5cbiAgQGluY2x1ZGUgcmVzcG9uZC1hYm92ZShtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBsZykpIHtcbiAgICBmb250LXNpemU6IHJlbSgxNik7XG4gIH1cbn1cblxuLy8gQm9keSB0ZXh0XG5wIHtcbiAgbWFyZ2luLWJvdHRvbTogc3BhY2luZygxKTtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8gTGlua3NcbmE6bm90KC5uYXYtbGluaykge1xuICAvLyBjb2xvcjogJHByaW1hcnk7XG4gIC8vIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgLy8gdHJhbnNpdGlvbjogY29sb3IgJHRyYW5zaXRpb24tc3BlZWQtZmFzdDtcblxuICAvLyAmOmhvdmVyIHtcbiAgLy8gICBjb2xvcjogZGFya2VuKCRwcmltYXJ5LCAxMCUpO1xuICAvLyAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAvLyB9XG59XG5cbi8vIExpc3RzXG51bCxcbm9sIHtcbiAgbWFyZ2luLWJvdHRvbTogc3BhY2luZygxKTtcbiAgcGFkZGluZy1sZWZ0OiBzcGFjaW5nKDIpO1xuXG4gIGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiBzcGFjaW5nKDAuNSk7XG4gIH1cbn1cblxudWwge1xuICBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG59XG5cbm9sIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBkZWNpbWFsO1xufVxuXG4vLyBCbG9ja3F1b3RlXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiBzcGFjaW5nKDIpIDA7XG4gIHBhZGRpbmc6IHNwYWNpbmcoMSkgc3BhY2luZygyKTtcbiAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAkcHJpbWFyeTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogbGlnaHRlbigkZGFyay1ncmF5LCAxMCUpO1xufVxuXG4vLyBDb2RlXG5jb2RlIHtcbiAgcGFkZGluZzogMnB4IDRweDtcbiAgZm9udC1zaXplOiA5MCU7XG4gIGNvbG9yOiAkZGFuZ2VyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JheTtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtc207XG59XG5cbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiBzcGFjaW5nKDEpO1xuICBtYXJnaW46IHNwYWNpbmcoMSkgMDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBjb2xvcjogJGRhcmstZ3JheTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyYXk7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuXG4gIGNvZGUge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cblxuLy8gVGV4dCB1dGlsaXRpZXNcbi50ZXh0LXByaW1hcnkge1xuICBjb2xvcjogJHByaW1hcnkgIWltcG9ydGFudDtcbn1cbi50ZXh0LXNlY29uZGFyeSB7XG4gIGNvbG9yOiAkc2Vjb25kYXJ5ICFpbXBvcnRhbnQ7XG59XG4udGV4dC1zdWNjZXNzIHtcbiAgY29sb3I6ICRzdWNjZXNzICFpbXBvcnRhbnQ7XG59XG4udGV4dC1kYW5nZXIge1xuICBjb2xvcjogJGRhbmdlciAhaW1wb3J0YW50O1xufVxuLnRleHQtd2FybmluZyB7XG4gIGNvbG9yOiAkd2FybmluZyAhaW1wb3J0YW50O1xufVxuLnRleHQtaW5mbyB7XG4gIGNvbG9yOiAkaW5mbyAhaW1wb3J0YW50O1xufVxuLnRleHQtbXV0ZWQge1xuICBjb2xvcjogIzNiM2MzYyAhaW1wb3J0YW50O1xufVxuXG4vLyBGb250IHdlaWdodHNcbi5mb250LXdlaWdodC1ub3JtYWwge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhaW1wb3J0YW50O1xufVxuLmZvbnQtd2VpZ2h0LW1lZGl1bSB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtICFpbXBvcnRhbnQ7XG59XG4uZm9udC13ZWlnaHQtYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZCAhaW1wb3J0YW50O1xufVxuXG4vLyBUZXh0IGFsaWdubWVudFxuLnRleHQtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbn1cbi50ZXh0LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xufVxuLnRleHQtcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xufVxuXG4vLyBUZXh0IHRyYW5zZm9ybVxuLnRleHQtbG93ZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZSAhaW1wb3J0YW50O1xufVxuLnRleHQtdXBwZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50O1xufVxuLnRleHQtY2FwaXRhbGl6ZSB7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplICFpbXBvcnRhbnQ7XG59XG4iLCIvKipcbiAqIEZyb250ZW5kIFV0aWxpdHkgQ2xhc3Nlc1xuICogXG4gKiBDb21tb24gdXRpbGl0eSBjbGFzc2VzIGFuZCBvdmVycmlkZXMgZm9yIHRoZSBmcm9udGVuZFxuICovXG5cbi8vIEZ1bGwgdmlld3BvcnQgaGVpZ2h0IHdpdGggcHJvcGVyIHNwYWNpbmdcbi8vIFJlcGxhY2VzIEJvb3RzdHJhcCdzIG1pbi12aC0xMDAgdG8gYWRkIGFwcHJvcHJpYXRlIG1hcmdpbnNcbi5taW4tdmgtMTAwIHtcbiAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDIwMHB4KSAhaW1wb3J0YW50OyAvLyAxMDBweCB0b3AgKyAxMDBweCBib3R0b21cbiAgbWFyZ2luLXRvcDogMTAwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEwMHB4O1xuICBcbiAgLy8gVGFibGV0IGFkanVzdG1lbnRzXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSAxMDBweCkgIWltcG9ydGFudDsgLy8gNTBweCB0b3AgKyA1MHB4IGJvdHRvbVxuICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgfVxuICBcbiAgLy8gTW9iaWxlIGFkanVzdG1lbnRzXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSA1MHB4KSAhaW1wb3J0YW50OyAvLyAyNXB4IHRvcCArIDI1cHggYm90dG9tXG4gICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICB9XG59XG5cbi8vIEFsdGVybmF0aXZlIGNsYXNzIGZvciBwYWdlcyB0aGF0IG5lZWQgZnVsbCB2aWV3cG9ydCB3aXRob3V0IG1hcmdpbnNcbi5mdWxsLXZoLTEwMCB7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMDtcbn1cblxuLy8gQ2VudGVyZWQgY29udGVudCBwYWdlcyAobGlrZSBlcnJvciBwYWdlcywgYXV0aCBwYWdlcylcbi5wYWdlLWNlbnRlcmVkIHtcbiAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDIwMHB4KTtcbiAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIFxuICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTAwcHgpO1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gIH1cbiAgXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSA1MHB4KTtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICB9XG59XG5cbi8vIFNwYWNpbmcgdXRpbGl0aWVzXG4uc3BhY2VyLXRvcCB7XG4gIHBhZGRpbmctdG9wOiAxMDBweDtcbiAgXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICB9XG4gIFxuICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgICBwYWRkaW5nLXRvcDogMjVweDtcbiAgfVxufVxuXG4uc3BhY2VyLWJvdHRvbSB7XG4gIHBhZGRpbmctYm90dG9tOiAxMDBweDtcbiAgXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICB9XG4gIFxuICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjVweDtcbiAgfVxufVxuXG4vLyBUZXh0IHV0aWxpdGllc1xuLnRleHQtZWxlZ2FudCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktaGVhZGluZztcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbn1cblxuLy8gT3BhY2l0eSB1dGlsaXRpZXNcbi5vcGFjaXR5LTEwIHsgb3BhY2l0eTogMC4xICFpbXBvcnRhbnQ7IH1cbi5vcGFjaXR5LTI1IHsgb3BhY2l0eTogMC4yNSAhaW1wb3J0YW50OyB9XG4ub3BhY2l0eS01MCB7IG9wYWNpdHk6IDAuNSAhaW1wb3J0YW50OyB9XG4ub3BhY2l0eS03NSB7IG9wYWNpdHk6IDAuNzUgIWltcG9ydGFudDsgfVxuLm9wYWNpdHktOTAgeyBvcGFjaXR5OiAwLjkgIWltcG9ydGFudDsgfVxuXG4vLyBaLWluZGV4IHV0aWxpdGllc1xuLnotMCB7IHotaW5kZXg6IDAgIWltcG9ydGFudDsgfVxuLnotMSB7IHotaW5kZXg6IDEgIWltcG9ydGFudDsgfVxuLnotMiB7IHotaW5kZXg6IDIgIWltcG9ydGFudDsgfVxuLnotMyB7IHotaW5kZXg6IDMgIWltcG9ydGFudDsgfVxuLnotMTAgeyB6LWluZGV4OiAxMCAhaW1wb3J0YW50OyB9XG4uei0yMCB7IHotaW5kZXg6IDIwICFpbXBvcnRhbnQ7IH1cblxuLy8gVHJhbnNpdGlvbiB1dGlsaXRpZXNcbi50cmFuc2l0aW9uLWFsbCB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG59XG5cbi50cmFuc2l0aW9uLXRyYW5zZm9ybSB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2U7XG59XG5cbi50cmFuc2l0aW9uLW9wYWNpdHkge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcbn1cblxuLy8gSG92ZXIgdXRpbGl0aWVzXG4uaG92ZXItbGlmdDpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcbiAgYm94LXNoYWRvdzogMCAxMHB4IDMwcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuXG4uaG92ZXItc2NhbGU6aG92ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xufVxuXG4vLyBDdXJzb3IgdXRpbGl0aWVzXG4uY3Vyc29yLXBvaW50ZXIgeyBjdXJzb3I6IHBvaW50ZXIgIWltcG9ydGFudDsgfVxuLmN1cnNvci1ub3QtYWxsb3dlZCB7IGN1cnNvcjogbm90LWFsbG93ZWQgIWltcG9ydGFudDsgfVxuXG4vLyBPdmVyZmxvdyB1dGlsaXRpZXNcbi5vdmVyZmxvdy14LWF1dG8geyBvdmVyZmxvdy14OiBhdXRvICFpbXBvcnRhbnQ7IH1cbi5vdmVyZmxvdy15LWF1dG8geyBvdmVyZmxvdy15OiBhdXRvICFpbXBvcnRhbnQ7IH1cbi5vdmVyZmxvdy14LWhpZGRlbiB7IG92ZXJmbG93LXg6IGhpZGRlbiAhaW1wb3J0YW50OyB9XG4ub3ZlcmZsb3cteS1oaWRkZW4geyBvdmVyZmxvdy15OiBoaWRkZW4gIWltcG9ydGFudDsgfSIsIi8vIE1haW4gbGF5b3V0IHN0eWxlc1xuXG4vLyBNYWluIGNvbnRlbnQgYXJlYVxubWFpbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyNDYsIDI0NywgMjQ5KTtcbiAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDIwMHB4KTsgLy8gRW5zdXJlIG1haW4gZmlsbHMgdmlld3BvcnQgbWludXMgaGVhZGVyL2Zvb3RlclxufSIsIi8vIEJvb3RzdHJhcCA1IE92ZXJyaWRlcyBhbmQgRXh0ZW5zaW9uc1xuLy8gT25seSBzdHlsZXMgdGhhdCBCb290c3RyYXAgY2Fubm90IGFjaGlldmVcblxuLy8gSGlkZSBlbGVtZW50cyB3aXRoIHgtY2xvYWsgYXR0cmlidXRlIChBbHBpbmUuanMpXG5beC1jbG9ha10ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLy8gUmVtb3ZlIHVuZGVybGluZSBmcm9tIGJ0bi1saW5rIGJ1dHRvbnNcbi5idG4tbGluayB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4vLyBHbG9iYWwgZnJvbnRlbmQgZm9ybSBjb250cm9sIG92ZXJyaWRlcyAtIHNxdWFyZSBjb3JuZXJzIGFuZCBjb25zaXN0ZW50IGJvcmRlciBjb2xvclxuLmZvcm0tY29udHJvbCxcbi5mb3JtLXNlbGVjdCxcbi5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4uZm9ybS1zZWxlY3Q6Zm9jdXMge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDsgLy8gRm9yY2Ugc3F1YXJlIGNvcm5lcnMgb24gYWxsIGZvcm0gZWxlbWVudHNcbn1cblxuLmZvcm0tY29udHJvbCxcbi5mb3JtLXNlbGVjdCB7XG4gICAgYm9yZGVyLWNvbG9yOiAjZGFkOWQ5ICFpbXBvcnRhbnQ7IC8vIENvbnNpc3RlbnQgYm9yZGVyIGNvbG9yIChsaWdodGVyIGdyYXkpXG4gICAgcGFkZGluZzogMC40NzVyZW0gMC44NXJlbSAhaW1wb3J0YW50OyAvLyBDb25zaXN0ZW50IHBhZGRpbmdcbn1cblxuLy8gSW5wdXQgZ3JvdXBzIGFsc28gbmVlZCBzcXVhcmUgY29ybmVyc1xuLmlucHV0LWdyb3VwIHtcbiAgICA+IC5mb3JtLWNvbnRyb2wsXG4gICAgPiAuZm9ybS1zZWxlY3QsXG4gICAgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbiAgICA+IC5idG4ge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgIC8vIE92ZXJyaWRlIEJvb3RzdHJhcCdzIHJvdW5kZWQgY29ybmVycyBmb3IgZmlyc3QvbGFzdCBjaGlsZFxuICAgID4gOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbiAgICA+IDpub3QoOmZpcnN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLW1lbnUpIHtcbiAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgIC5pbnB1dC1ncm91cC10ZXh0IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjZGFkOWQ5O1xuICAgICAgICBwYWRkaW5nOiAwLjQ3NXJlbSAwLjg1cmVtO1xuICAgIH1cbn1cblxuLy8gUGFnZSBpZGVudGlmaWNhdGlvbiBjbGFzc2VzICh1c2VkIGJ5IEphdmFTY3JpcHQpXG4vLyBObyBzdHlsaW5nIG5lZWRlZCAtIHRoZXNlIGFyZSBwdXJlbHkgZm9yIEpTIGhvb2tzXG5cbi8vIEZvcm0gdmFsaWRhdGlvbiBhZGp1c3RtZW50c1xuLndhcy12YWxpZGF0ZWQge1xuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAmOnZhbGlkLFxuICAgICAgICAmOmludmFsaWQge1xuICAgICAgICAgICAgLy8gUmVtb3ZlIEJvb3RzdHJhcCdzIHZhbGlkYXRpb24gaWNvbnMgaWYgbm90IGRlc2lyZWRcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJjp2YWxpZCB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJzLXN1Y2Nlc3MpO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmOmludmFsaWQge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1kYW5nZXIpO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIFNlbGVjdDIgdmFsaWRhdGlvbiBzdHlsaW5nXG4gICAgLmZvcm0tY29udHJvbDppbnZhbGlkICsgLnNlbGVjdDIgLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1kYW5nZXIpO1xuICAgIH1cbn1cblxuLy8gQWxlcnQgbGlzdCBzdHlsaW5nXG4uYWxlcnQge1xuICAgIHVsIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICAgICAgICBcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgcDpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG59XG5cbi8vIFV0aWxpdHkgY2xhc3NlcyBmb3IgaW1hZ2VzXG4ucm91bmRlZC1pbWcge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiA2MHB4O1xuICAgIGhlaWdodDogNjBweDtcbiAgICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cblxuLy8gRXJyb3IgaGVscCBibG9jayAoZm9yIGZvcm0gdmFsaWRhdGlvbilcbi5lcnJvci1oZWxwLWJsb2NrIHtcbiAgICBAZXh0ZW5kIC5pbnZhbGlkLWZlZWRiYWNrO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vLyBUb2FzdHIgb3ZlcnJpZGVzIHRvIG1hdGNoIEJvb3RzdHJhcCA1XG4udG9hc3QtdG9wLXJpZ2h0IHtcbiAgICB0b3A6IDgwcHg7IC8vIEFjY291bnQgZm9yIG5hdmJhciBoZWlnaHRcbn1cblxuLy8gRml4IHRvYXN0ciBjb250cmFzdCBpc3N1ZXMgLSBlbnN1cmUgcmVhZGFibGUgdGV4dCBjb2xvcnNcbiN0b2FzdC1jb250YWluZXIgPiBkaXYge1xuICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7IC8vIFdoaXRlIHRleHRcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7IC8vIFJlbW92ZSB0cmFuc3BhcmVuY3kgLSB0b3RhbGx5IHNvbGlkXG4gICAgXG4gICAgJi50b2FzdC1zdWNjZXNzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzI4YTc0NSAhaW1wb3J0YW50OyAvLyBCb290c3RyYXAgc3VjY2VzcyBncmVlblxuICAgICAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbiAgICAmLnRvYXN0LWVycm9yIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2RjMzU0NSAhaW1wb3J0YW50OyAvLyBCb290c3RyYXAgZGFuZ2VyIHJlZFxuICAgICAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbiAgICAmLnRvYXN0LWluZm8ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTdhMmI4ICFpbXBvcnRhbnQ7IC8vIEJvb3RzdHJhcCBpbmZvIGJsdWVcbiAgICAgICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbiAgICB9XG4gICAgXG4gICAgJi50b2FzdC13YXJuaW5nIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzEwNyAhaW1wb3J0YW50OyAvLyBCb290c3RyYXAgd2FybmluZyB5ZWxsb3dcbiAgICAgICAgY29sb3I6ICMyMTI1MjkgIWltcG9ydGFudDsgLy8gRGFyayB0ZXh0IGZvciB5ZWxsb3cgYmFja2dyb3VuZFxuICAgIH1cbiAgICBcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50OyAvLyBLZWVwIHNvbGlkIG9uIGhvdmVyIHRvb1xuICAgIH1cbn1cblxuLy8gRW5zdXJlIHRvYXN0IGNsb3NlIGJ1dHRvbiBpcyB2aXNpYmxlXG4udG9hc3QtY2xvc2UtYnV0dG9uIHtcbiAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xuICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICNjY2NjY2MgIWltcG9ydGFudDtcbiAgICAgICAgb3BhY2l0eTogMC44ICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4vLyBTZWxlY3QyIEJvb3RzdHJhcCA1IHRoZW1lIGFkanVzdG1lbnRzXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQge1xuICAgIC5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gICAgICAgIEBleHRlbmQgLmZvcm0tY29udHJvbDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xuICAgIH1cbn0iLCIvLyBGcm9udGVuZCBIZWFkZXIgU3R5bGVzXG4vLyBDdXN0b20gc3R5bGluZyBmb3IgQ2FyYXRYIGhlYWRlciBjb21wb25lbnQgd2l0aCBCb290c3RyYXAgNVxuXG4vLyBIZWFkZXIgc3BhY2VyIGxpbmVcbi5oci1oZWFkZXItc3BhY2VyIHtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiKDMzLCAzNywgNDEpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgxNCwgMTQsIDE0LCAwLjE4KTtcbiAgbWFyZ2luOiAwO1xufVxuXG4vLyBGb290ZXIgc3BhY2VyIGxpbmUgLSBpbnZlcnRlZCBjb2xvcnMgZm9yIHRyYW5zaXRpb24gZnJvbSBncmF5IGJvZHkgdG8gd2hpdGUgZm9vdGVyXG4uaHItZm9vdGVyLXNwYWNlciB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMTQsIDE0LCAxNCwgMC4xOCk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2IoMzMsIDM3LCA0MSk7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5jYXJhdHgtaGVhZGVyIHtcbiAgLy8gVG9wIGhlYWRlciBzdHlsaW5nXG4gIC50b3AtaGVhZGVyIHtcbiAgICAvLyBFbnN1cmUgY29uc2lzdGVudCB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgaGVhZGVyIGljb25zXG4gICAgLnRvcC1idXR0b25zIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgIGdhcDogMXJlbTtcblxuICAgICAgLy8gRW5zdXJlIGFsbCBkaXJlY3QgY2hpbGRyZW4gYWxpZ24gcHJvcGVybHlcbiAgICAgID4gKiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIC8vIFJlc2V0IGFueSBidXR0b24vbGluayBkZWZhdWx0cyB0aGF0IG1pZ2h0IGFmZmVjdCBwb3NpdGlvbmluZ1xuICAgICAgLmJ0bi1saW5rIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICB9XG5cbiAgICAgIC8vIEVuc3VyZSBkcm9wZG93biBidXR0b25zIGFsc28gYWxpZ24gcHJvcGVybHlcbiAgICAgIC5kcm9wZG93biBidXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmxvZ28tY29udGFpbmVyIHtcbiAgICAgIGltZyB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDYwcHg7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgIC51c2VyLWRyb3Bkb3duLFxuICAgIC5jYXJ0LWljb24ge1xuICAgICAgLy8gUmVtb3ZlZCB0YWNreSB6b29tIGVmZmVjdFxuICAgIH1cbiAgfVxuXG4gIC8vIE1haW4gbmF2aWdhdGlvblxuICAubmF2YmFyIHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgY29sb3I6ICMzMTMxMzE7XG4gICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4zcyBlYXNlO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICAgIH1cblxuICAgICAgLy8gSG92ZXIgdW5kZXJsaW5lIGVmZmVjdFxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAvLyBjb250ZW50OiBcIlwiO1xuICAgICAgICAvLyBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIC8vIHdpZHRoOiAwO1xuICAgICAgICAvLyBoZWlnaHQ6IDJweDtcbiAgICAgICAgLy8gYm90dG9tOiAwO1xuICAgICAgICAvLyBsZWZ0OiA1MCU7XG4gICAgICAgIC8vIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgLy8gYmFja2dyb3VuZC1jb2xvcjogI2EyZDI3NjtcbiAgICAgICAgLy8gdHJhbnNpdGlvbjogd2lkdGggMC4zcyBlYXNlO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyOjphZnRlciB7XG4gICAgICAgIC8vIHdpZHRoOiA2MCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRHJvcGRvd24gYXJyb3cgc3VwcmVzc2lvbiAod2UgaGF2ZSBpbmxpbmVuIGNhcmF0cylcbiAgICAuZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gTWVnYSBtZW51IHN0eWxpbmdcbiAgLm1lZ2EtbWVudSB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDhweCA4cHg7XG4gICAgYm94LXNoYWRvdzogMCA0cHggMjBweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG1pbi1oZWlnaHQ6IDIwMHB4OyAvLyBFbnN1cmUgbWluaW11bSBoZWlnaHQgZm9yIGZsZXhib3ggYWxpZ25tZW50XG5cbiAgICAubWVnYS1tZW51LXNjcm9sbCB7XG4gICAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgIHdpZHRoOiA2cHg7XG4gICAgICB9XG5cbiAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2YxZjFmMTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgfVxuXG4gICAgICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICM4ODg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjNTU1O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRmxleGJveCBjb2x1bW4gc3RydWN0dXJlIGZvciBib3R0b20tYWxpZ25lZCBidXR0b25zXG4gICAgLm1lZ2EtbWVudS1jb2x1bW4ge1xuICAgICAgbWluLWhlaWdodDogMTgwcHg7IC8vIEVuc3VyZSBjb25zaXN0ZW50IGNvbHVtbiBoZWlnaHRcblxuICAgICAgLm1lZ2EtbWVudS1jb250ZW50IHtcbiAgICAgICAgZmxleC1ncm93OiAxOyAvLyBUYWtlcyB1cCBhdmFpbGFibGUgc3BhY2VcbiAgICAgIH1cblxuICAgICAgLm1lZ2EtbWVudS1hY3Rpb24ge1xuICAgICAgICBtYXJnaW4tdG9wOiBhdXRvOyAvLyBQdXNoZXMgdG8gYm90dG9tXG4gICAgICAgIHBhZGRpbmctdG9wOiAxcmVtOyAvLyBBZGQgc3BhY2luZyBhYm92ZSBidXR0b25cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBEcm9wZG93biBtZW51IHN0eWxpbmcgKGZvciBzbWFsbGVyIGRyb3Bkb3ducylcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIG1pbi1oZWlnaHQ6IDE1MHB4OyAvLyBFbnN1cmUgbWluaW11bSBoZWlnaHQgZm9yIHNtYWxsZXIgZHJvcGRvd25zXG5cbiAgICAubWVnYS1tZW51LWNvbHVtbiB7XG4gICAgICBtaW4taGVpZ2h0OiAxMzBweDsgLy8gU21hbGxlciBoZWlnaHQgZm9yIHJlZ3VsYXIgZHJvcGRvd25zXG4gICAgfVxuICB9XG5cbiAgLy8gTW9iaWxlIG1lbnUgYnV0dG9uXG4gIC5tZW51LWJ0biB7XG4gICAgJjpmb2N1cyB7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC8vIE9mZmNhbnZhcyBtb2JpbGUgbWVudVxuICAjbW9iaWxlTWVudSB7XG4gICAgLmFjY29yZGlvbi1idXR0b24ge1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuXG4gICAgICAmOm5vdCguY29sbGFwc2VkKSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubmF2LWxpbmsge1xuICAgICAgcGFkZGluZzogMC41cmVtIDA7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBTZWFyY2ggc3R5bGluZyAoZnJvbSBhamF4LXNlYXJjaCBwYXJ0aWFsKVxuLmhlYWRlci1zZWFyY2gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNTBweDtcbiAgICBwYWRkaW5nOiAxMHB4IDQ1cHggMTBweCAyMHB4O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZDZkOGQ5O1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuM3MgZWFzZTtcblxuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgfVxuICB9XG5cbiAgLnNlYXJjaC1idXR0b24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMTVweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgY29sb3I6ICM1ZjYwNjI7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBhZGRpbmc6IDVweDtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzIGVhc2U7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICB9XG4gIH1cblxuICAuaGVhZGVyLXNlYXJjaC1saXN0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogMTAwMDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNkNmQ4ZDk7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgMTBweCAxMHB4O1xuICAgIGJveC1zaGFkb3c6IDAgNHB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgbWF4LWhlaWdodDogMzUwcHg7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgIHVsIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgIHBhZGRpbmc6IDhweCAxNXB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMGYwZjA7XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmLnNlbGVjdGVkIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAjMzMzO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cblxuICAgIC52aWV3LWFsbC1yZXN1bHRzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBDdXN0b20gYmFkZ2UgY29sb3JzIChmb3Igc2VhcmNoIHJlc3VsdHMpXG4uYmctcHVycGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2EzN2ViYTtcbn1cblxuLmJnLXRlYWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2ViYWFkO1xufVxuXG4vLyBSZXNwb25zaXZlIGFkanVzdG1lbnRzXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLmNhcmF0eC1oZWFkZXIge1xuICAgIC50b3AtaGVhZGVyIHtcbiAgICAgIC5sb2dvLWNvbnRhaW5lciBpbWcge1xuICAgICAgICBtYXgtaGVpZ2h0OiA1MHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLmNhcmF0eC1oZWFkZXIge1xuICAgIC50b3AtYnV0dG9ucyB7XG4gICAgICAuYnRuLWxpbmsge1xuICAgICAgICBwYWRkaW5nOiAwLjI1cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBQcm9kdWN0IENhcmQgQ29tcG9uZW50XG4gKlxuICogTWluaW1hbCBjdXN0b20gc3R5bGluZyBmb3IgQm9vdHN0cmFwIDUgcHJvZHVjdCBjYXJkc1xuICovXG5cbi8vIEN1c3RvbSBiYWRnZSBjb2xvcnMgZm9yIHByb2R1Y3QgdHlwZXNcbi5iZy1wdXJwbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNhMzdlYmEgIWltcG9ydGFudDtcbn1cblxuLmJnLXRlYWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3ZWJhYWQgIWltcG9ydGFudDtcbn1cblxuLy8gRW5oYW5jZWQgQm9vdHN0cmFwIGNhcmQgc3R5bGluZyBmb3IgcHJvZHVjdHMgb25seVxuLnByb2R1Y3QtY2FyZCB7XG4gICAgLy8gSG92ZXIgZWZmZWN0cyByZW1vdmVkIGZvciBjbGVhbmVyIGRlc2lnblxuICAgIFxuICAgIC8vIFByb2R1Y3QgaW1hZ2Ugc3R5bGluZyAoaG92ZXIgZWZmZWN0IHJlbW92ZWQpXG4gICAgLmNhcmQtaW1nLXRvcCB7XG4gICAgICAgIC8vIFN0YXRpYyBzdHlsaW5nIG9ubHlcbiAgICB9XG59XG5cbi8vIFByb2R1Y3QgYmFkZ2VzIHBvc2l0aW9uaW5nXG4ucHJvZHVjdC1iYWRnZXMge1xuICAgIHRvcDogMC43NXJlbTtcbiAgICBsZWZ0OiAwLjc1cmVtO1xuICAgIHotaW5kZXg6IDE7XG4gICAgXG4gICAgLmJhZGdlICsgLmJhZGdlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgICB9XG59XG5cbi5wcm9kdWN0LXR5cGUtYmFkZ2Uge1xuICAgIHRvcDogMC43NXJlbTtcbiAgICByaWdodDogMC43NXJlbTtcbiAgICB6LWluZGV4OiAxO1xufSIsIi8qKlxuICogUHJvZHVjdCBDYXJvdXNlbCBDb21wb25lbnQgU3R5bGVzXG4gKiBCb290c3RyYXAgNSBjYXJvdXNlbCBlbmhhbmNlbWVudHMgZm9yIHByb2R1Y3QgZGlzcGxheXNcbiAqL1xuXG4uY2Fyb3VzZWwge1xuICAvLyBDYXJvdXNlbCBjb250cm9sIHZpc2liaWxpdHkgb24gaG92ZXJcbiAgLmNhcm91c2VsLWNvbnRyb2wtcHJldixcbiAgLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gICAgd2lkdGg6IDUlO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2U7XG4gICAgXG4gICAgLy8gSWNvbiBzdHlsaW5nXG4gICAgLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLFxuICAgIC5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gICAgICB3aWR0aDogMnJlbTtcbiAgICAgIGhlaWdodDogMnJlbTtcbiAgICAgIFxuICAgICAgJi5iZy1kYXJrIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS1icy1kYXJrLXJnYiksIDAuOCkgIWltcG9ydGFudDtcbiAgICAgICAgXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWRhcmspICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIC8vIFNob3cgY29udHJvbHMgb24gaG92ZXJcbiAgJjpob3ZlciB7XG4gICAgLmNhcm91c2VsLWNvbnRyb2wtcHJldixcbiAgICAuY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG4gIFxuICAvLyBDdXN0b20gaW5kaWNhdG9ycyBwb3NpdGlvbmluZ1xuICAuY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvdHRvbTogYXV0bztcbiAgICBcbiAgICBidXR0b24ge1xuICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1ncmF5LTQwMCk7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBtYXJnaW46IDAgNHB4O1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgIFxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xuICAgICAgfVxuICAgICAgXG4gICAgICAmOmhvdmVyOm5vdCguYWN0aXZlKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWdyYXktNjAwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIC8vIFByb2R1Y3QgY2Fyb3VzZWwgc3BlY2lmaWNcbiAgJi5wcm9kdWN0LWNhcm91c2VsIHtcbiAgICAuY2Fyb3VzZWwtaW5uZXIge1xuICAgICAgcGFkZGluZzogMXJlbSAwO1xuICAgIH1cbiAgICBcbiAgICAvLyBFbnN1cmUgcHJvZHVjdCBjYXJkcyBhbGlnbiBwcm9wZXJseVxuICAgIC5jYXJvdXNlbC1pdGVtIHtcbiAgICAgIC5yb3cge1xuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgICAgXG4gICAgICAgID4gW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgXG4gICAgICAgICAgLnByb2R1Y3QtY2FyZCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIC8vIFJlc3BvbnNpdmUgYWRqdXN0bWVudHNcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgLmNhcm91c2VsLWlubmVyIHtcbiAgICAgIC5yb3cge1xuICAgICAgICBtYXJnaW46IDAgLTVweDtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgLmNvbC0xMiB7XG4gICAgICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBTdGFjayBjb250cm9scyBvbiBtb2JpbGVcbiAgICAuY2Fyb3VzZWwtY29udHJvbC1wcmV2LFxuICAgIC5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICAgICAgd2lkdGg6IDEwJTtcbiAgICB9XG4gIH1cbiAgXG4gIC8vIFRvdWNoIGRldmljZSBvcHRpbWl6YXRpb25zXG4gIEBtZWRpYSAoaG92ZXI6IG5vbmUpIHtcbiAgICAuY2Fyb3VzZWwtY29udHJvbC1wcmV2LFxuICAgIC5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gIH1cbn0iLCIvLyBDYXJ0IFdpZGdldCBTdHlsZXNcbi8vIE1pbmltYWwgY3VzdG9tIHN0eWxlcyBmb3IgdGhlIGhlYWRlciBjYXJ0IGNvbXBvbmVudFxuXG4vLyBDYXJ0IHVwZGF0ZSBhbmltYXRpb25cbi5jYXJ0LXVwZGF0ZWQge1xuICAgIGFuaW1hdGlvbjogY2FydEJvdW5jZSAwLjVzIGVhc2U7XG59XG5cbkBrZXlmcmFtZXMgY2FydEJvdW5jZSB7XG4gICAgMCUgeyB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG4gICAgNTAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxLjIpOyB9XG4gICAgMTAwJSB7IHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cbn1cblxuLy8gRW5zdXJlIGRyb3Bkb3duIGRvZXNuJ3QgY2xvc2Ugb24gaW50ZXJuYWwgY2xpY2tzXG4uaGVhZGVyLWNhcnQtd3JhcHBlciB7XG4gICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAvLyBQcmV2ZW50IGFjY2lkZW50YWwgY2xvc2VzXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAtMTBweDtcbiAgICAgICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIvLyBXaXNobGlzdCBXaWRnZXQgU3R5bGVzXG4vLyBFbmhhbmNlZCBzdHlsZXMgd2l0aCBhbmltYXRpb25zIGFuZCBtb2JpbGUgcmVzcG9uc2l2ZW5lc3NcblxuLy8gV2lzaGxpc3QgaWNvbiBob3ZlciBlZmZlY3Rcbi5oZWFkZXItd2lzaGxpc3Qtd3JhcHBlciB7XG4gICAgYSB7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2U7XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIC8vIFJlbW92ZWQgdGFja3kgem9vbSBlZmZlY3RcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmZhLWhlYXJ0IHtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYnMtZGFuZ2VyKSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBXaXNobGlzdCBiYWRnZSBzdHlsaW5nXG4ud2lzaGxpc3QtY291bnQtYmFkZ2Uge1xuICAgIG1pbi13aWR0aDogMThweDtcbiAgICBsaW5lLWhlaWdodDogMTtcbn1cblxuLy8gV2lzaGxpc3QgdXBkYXRlIGFuaW1hdGlvblxuLndpc2hsaXN0LXVwZGF0ZWQge1xuICAgIGFuaW1hdGlvbjogd2lzaGxpc3RQdWxzZSAwLjVzIGVhc2U7XG59XG5cbkBrZXlmcmFtZXMgd2lzaGxpc3RQdWxzZSB7XG4gICAgMCUgeyB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG4gICAgNTAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxLjMpOyB9XG4gICAgMTAwJSB7IHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cbn1cblxuLy8gTG9hZGluZyBzdGF0ZSBmb3Igd2lzaGxpc3QgYnV0dG9uc1xuLndpc2hsaXN0LXRvZ2dsZS1idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgIFxuICAgICYud2lzaGxpc3QtbG9hZGluZyB7XG4gICAgICAgIG9wYWNpdHk6IDAuNztcbiAgICAgICAgY3Vyc29yOiB3YWl0O1xuICAgIH1cbiAgICBcbiAgICAuZmEtaGVhcnQge1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICBcbiAgICAgICAgJi53aXNobGlzdC1wdWxzZSB7XG4gICAgICAgICAgICBhbmltYXRpb246IGhlYXJ0QmVhdCAwLjhzIGVhc2UgaW5maW5pdGU7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYud2lzaGxpc3QtZmlsbGVkIHtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogZmlsbEhlYXJ0IDAuNHMgZWFzZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gSGVhcnQgYW5pbWF0aW9uc1xuQGtleWZyYW1lcyBoZWFydEJlYXQge1xuICAgIDAlLCAxMDAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxuICAgIDUwJSB7IHRyYW5zZm9ybTogc2NhbGUoMS4xNSk7IH1cbn1cblxuQGtleWZyYW1lcyBmaWxsSGVhcnQge1xuICAgIDAlIHsgdHJhbnNmb3JtOiBzY2FsZSgwLjgpIHJvdGF0ZSgtNDVkZWcpOyB9XG4gICAgNTAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxLjMpIHJvdGF0ZSgtNDVkZWcpOyB9XG4gICAgMTAwJSB7IHRyYW5zZm9ybTogc2NhbGUoMSkgcm90YXRlKDBkZWcpOyB9XG59XG5cbi8vIEJhZGdlIGFuaW1hdGlvbnNcbkBrZXlmcmFtZXMgZmFkZUluU2NhbGUge1xuICAgIDAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC41KTtcbiAgICB9XG4gICAgMTAwJSB7IFxuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlT3V0U2NhbGUge1xuICAgIDAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgfVxuICAgIDEwMCUgeyBcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjUpO1xuICAgIH1cbn1cblxuLy8gTW9iaWxlIHJlc3BvbnNpdmVuZXNzXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAud2lzaGxpc3QtdG9nZ2xlLWJ0biB7XG4gICAgICAgIC8vIEVuc3VyZSB0b3VjaC1mcmllbmRseSBzaXplXG4gICAgICAgIG1pbi13aWR0aDogNDRweDtcbiAgICAgICAgbWluLWhlaWdodDogNDRweDtcbiAgICAgICAgXG4gICAgICAgICYuYnRuLXNtIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuaGVhZGVyLXdpc2hsaXN0LXdyYXBwZXIge1xuICAgICAgICAvLyBBZGp1c3Qgc3BhY2luZyBvbiBtb2JpbGVcbiAgICAgICAgbWFyZ2luOiAwIDAuMjVyZW07XG4gICAgfVxufVxuXG4vLyBTa2VsZXRvbiBsb2FkZXIgZm9yIHdpc2hsaXN0IGl0ZW1zXG4ud2lzaGxpc3Qtc2tlbGV0b24ge1xuICAgIC5za2VsZXRvbi1pdGVtIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjZjBmMGYwIDI1JSwgI2UwZTBlMCA1MCUsICNmMGYwZjAgNzUlKTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyMDAlIDEwMCU7XG4gICAgICAgIGFuaW1hdGlvbjogbG9hZGluZyAxLjVzIGluZmluaXRlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbTtcbiAgICAgICAgXG4gICAgICAgICYuc2tlbGV0b24taW1hZ2Uge1xuICAgICAgICAgICAgaGVpZ2h0OiAyMDBweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYuc2tlbGV0b24tdGV4dCB7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICYuc2tlbGV0b24tdGl0bGUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICYuc2tlbGV0b24tcHJpY2Uge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgbG9hZGluZyB7XG4gICAgMCUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAyMDAlIDA7IH1cbiAgICAxMDAlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwMCUgMDsgfVxufSIsIi8qKlxuICogRnJvbnRlbmQgRGF0YVRhYmxlIENvbXBvbmVudCBTdHlsZXNcbiAqIEVuaGFuY2VkIGZvciBCb290c3RyYXAgNSB3aXRoIG1vZGVybiBkZXNpZ24gcGF0dGVybnNcbiAqL1xuXG4uZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciB7XG4gIC8vIEVuaGFuY2VkIGNhcmQgc3R5bGluZyB3aXRoIGJldHRlciBzaGFkb3dzXG4gIGJveC1zaGFkb3c6IDAgMC4xMjVyZW0gMC4yNXJlbSByZ2JhKDAsIDAsIDAsIDAuMDc1KSwgMCAwLjA1cmVtIDAuMXJlbSByZ2JhKDAsIDAsIDAsIDAuMDYpO1xuICAvLyBIb3ZlciBlZmZlY3QgcmVtb3ZlZFxuICBcbiAgLy8gRW5oYW5jZWQgZmlsdGVyIHNlY3Rpb25cbiAgLmNhcmQtaGVhZGVyIHtcbiAgICAmLmJnLWxpZ2h0IHtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNmOGY5ZmEgMCUsICNlOWVjZWYgMTAwJSkgIWltcG9ydGFudDtcbiAgICB9XG4gICAgXG4gICAgLmNhcmQtdGl0bGUge1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMjVlbTtcbiAgICB9XG4gIH1cbiAgXG4gIC8vIEVuaGFuY2VkIGZpbHRlciBjb250cm9sc1xuICAuY2FyZC1ib2R5IHtcbiAgICAuZm9ybS1sYWJlbCB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGNvbG9yOiAjNDk1MDU3O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgICAgXG4gICAgICBpIHtcbiAgICAgICAgb3BhY2l0eTogMC43O1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuZm9ybS1jb250cm9sLFxuICAgIC5mb3JtLXNlbGVjdCB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlLWluLW91dDtcbiAgICAgIFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzg2YjdmZTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMTMsIDExMCwgMjUzLCAwLjI1KTtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgJjpob3Zlcjpub3QoOmZvY3VzKSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogI2I2ZDdmZjtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gRW5oYW5jZWQgc2VhcmNoIGlucHV0IGdyb3VwXG4gICAgLmlucHV0LWdyb3VwIHtcbiAgICAgIC5pbnB1dC1ncm91cC10ZXh0IHtcbiAgICAgICAgYmFja2dyb3VuZDogI2Y4ZjlmYTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjZGVlMmU2O1xuICAgICAgICBcbiAgICAgICAgJi5ib3JkZXItZW5kLTAge1xuICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgXG4gICAgICAuZm9ybS1jb250cm9sLmJvcmRlci1zdGFydC0wIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICAgIFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgIFxuICAgICAgICAgICsgLmlucHV0LWdyb3VwLXRleHQge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjODZiN2ZlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLy8gRW5oYW5jZWQgYnVsayBhY3Rpb25zIGFsZXJ0XG4gIC5kYXRhdGFibGUtYnVsay1hY3Rpb25zIHtcbiAgICBtYXJnaW46IDAgMXJlbSAxcmVtIDFyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNkMWVjZjEgMCUsICNiZWU1ZWIgMTAwJSkgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDIzLCAxNjIsIDE4NCwgMC4yKSAhaW1wb3J0YW50O1xuICAgIFxuICAgIC5iYWRnZSB7XG4gICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgcGFkZGluZzogMC41cmVtIDAuNzVyZW07XG4gICAgfVxuICAgIFxuICAgIC5idG4taW5mbyB7XG4gICAgICAtLWJzLWJ0bi1iZzogIzE3YTJiODtcbiAgICAgIC0tYnMtYnRuLWJvcmRlci1jb2xvcjogIzE3YTJiODtcbiAgICAgIC0tYnMtYnRuLWhvdmVyLWJnOiAjMTM4NDk2O1xuICAgICAgLS1icy1idG4taG92ZXItYm9yZGVyLWNvbG9yOiAjMTE3YThiO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB9XG4gIH1cbiAgXG4gIC8vIEVuaGFuY2VkIHRhYmxlIHN0eWxpbmdcbiAgLnRhYmxlIHtcbiAgICAtLWJzLXRhYmxlLWJnOiB0cmFuc3BhcmVudDtcbiAgICBcbiAgICB0aGVhZCB0aCB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZjhmOWZhICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2RlZTJlNjtcbiAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBwYWRkaW5nOiAxcmVtIDAuNzVyZW07XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG4gICAgICBcbiAgICAgICYuYm9yZGVyLTAge1xuICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICB0Ym9keSB7XG4gICAgICB0ZCB7XG4gICAgICAgIHBhZGRpbmc6IDAuODc1cmVtIDAuNzVyZW07XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgIGNvbG9yOiAjNDk1MDU3O1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U5ZWNlZjtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgdHIge1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0O1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMywgMTEwLCAyNTMsIDAuMDUpO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmOmxhc3QtY2hpbGQgdGQge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIC8vIEVuaGFuY2VkIGV4cG9ydCBmb290ZXJcbiAgLmNhcmQtZm9vdGVyIHtcbiAgICAmLmJnLWxpZ2h0IHtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNmOGY5ZmEgMCUsICNlOWVjZWYgMTAwJSkgIWltcG9ydGFudDtcbiAgICB9XG4gICAgXG4gICAgLmJ0biB7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2UtaW4tb3V0O1xuICAgICAgXG4gICAgICAvLyBIb3ZlciBlZmZlY3QgcmVtb3ZlZFxuICAgIH1cbiAgfVxufVxuXG4vLyBFbmhhbmNlZCBEYXRhVGFibGUgd3JhcHBlciBzdHlsaW5nXG4uZGF0YVRhYmxlc193cmFwcGVyIHtcbiAgLmRhdGFUYWJsZXNfbGVuZ3RoLFxuICAuZGF0YVRhYmxlc19maWx0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IC8vIFVzaW5nIGN1c3RvbSBjb250cm9sc1xuICB9XG4gIFxuICAuZGF0YVRhYmxlc19pbmZvIHtcbiAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgcGFkZGluZzogMXJlbSAwLjc1cmVtIDAuNXJlbSAwLjc1cmVtO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICBcbiAgLmRhdGFUYWJsZXNfcGFnaW5hdGUge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtIDFyZW0gMC43NXJlbTtcbiAgICBcbiAgICAucGFnaW5hdGlvbiB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIFxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAucGFnZS1saW5rIHtcbiAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZS1pbi1vdXQ7XG4gICAgXG4gICAgLy8gSG92ZXIgZWZmZWN0IHJlbW92ZWRcbiAgICBcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDEzLCAxMTAsIDI1MywgMC4yNSk7XG4gICAgfVxuICB9XG4gIFxuICAucGFnZS1pdGVtIHtcbiAgICAmLmFjdGl2ZSAucGFnZS1saW5rIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQ7XG4gICAgICBib3JkZXItY29sb3I6ICMwZDZlZmQ7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJveC1zaGFkb3c6IDAgMC4xMjVyZW0gMC4yNXJlbSByZ2JhKDEzLCAxMTAsIDI1MywgMC40KTtcbiAgICB9XG4gICAgXG4gICAgJi5kaXNhYmxlZCAucGFnZS1saW5rIHtcbiAgICAgIGNvbG9yOiAjYWRiNWJkO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIGJvcmRlci1jb2xvcjogI2RlZTJlNjtcbiAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICB9XG4gIH1cbn1cblxuLy8gRW5oYW5jZWQgcHJvY2Vzc2luZyBpbmRpY2F0b3Jcbi5kYXRhVGFibGVzX3Byb2Nlc3Npbmcge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTUpICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTYgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogMC41cmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDJyZW0gIWltcG9ydGFudDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgdG9wOiA1MCUgIWltcG9ydGFudDtcbiAgbGVmdDogNTAlICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpICFpbXBvcnRhbnQ7XG4gIHotaW5kZXg6IDEwNTAgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMCAwLjVyZW0gMXJlbSByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNHB4KTtcbn1cblxuLy8gRW5oYW5jZWQgZW1wdHkgc3RhdGVzXG4uZGF0YVRhYmxlc19lbXB0eSB7XG4gIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAzcmVtIDJyZW0gIWltcG9ydGFudDtcbiAgXG4gIGkge1xuICAgIG9wYWNpdHk6IDAuNjtcbiAgfVxuICBcbiAgaDYge1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIH1cbiAgXG4gIHNtYWxsIHtcbiAgICBjb2xvcjogIzZjNzU3ZDtcbiAgfVxufVxuXG4vLyBTdGF0dXMgYmFkZ2VzIC0gQXBwbGljYXRpb24gc3BlY2lmaWNcbi5idG4ge1xuICAmLUluUHJvY2VzcyB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2ZmYzEwNyAwJSwgI2ZmYjMwMCAxMDAlKTtcbiAgICBjb2xvcjogIzAwMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgfVxuICBcbiAgJi1PdXRGb3JEZWxpdmVyeSB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzE3YTJiOCAwJSwgIzEzODQ5NiAxMDAlKTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgfVxuICBcbiAgJi1kZWxpdmVyZWQge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMyOGE3NDUgMCUsICMxZTdlMzQgMTAwJSk7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIH1cbiAgXG4gICYtYmVpbmdQYWNrYWdlZCB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzZjNzU3ZCAwJSwgIzU0NWI2MiAxMDAlKTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgfVxufVxuXG4vLyBFbmhhbmNlZCBhY3Rpb24gYnV0dG9uc1xuLmJ0bi1JblByb2Nlc3MsXG4uYnRuLU91dEZvckRlbGl2ZXJ5LFxuLmJ0bi1kZWxpdmVyZWQsXG4uYnRuLWJlaW5nUGFja2FnZWQge1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNzVyZW07XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgYm9yZGVyLXJhZGl1czogMXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2UtaW4tb3V0O1xuICBcbiAgLy8gSG92ZXIgZWZmZWN0IHJlbW92ZWRcbn1cblxuLy8gRW5oYW5jZWQgdmlldyBidXR0b25zXG4uYnRuLXZpZXdPcmRlciB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMwZDZlZmQgMCUsICMwYjVlZDcgMTAwJSk7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDAuNXJlbSAxLjI1cmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gIFxuICAvLyBIb3ZlciBlZmZlY3QgcmVtb3ZlZFxufVxuXG4uYnRuLXZpZXctcXVlc3Rpb24ge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMTdhMmI4IDAlLCAjMTM4NDk2IDEwMCUpO1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiAwLjM3NXJlbSAxcmVtO1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgYm9yZGVyLXJhZGl1czogMC4zNzVyZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICBcbiAgLy8gSG92ZXIgZWZmZWN0IHJlbW92ZWRcbiAgXG4gIGkge1xuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbTtcbiAgfVxufVxuXG4vLyBFbmhhbmNlZCByZXNwb25zaXZlIGRlc2lnblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIHtcbiAgICAuY2FyZC1ib2R5IHtcbiAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICBcbiAgICAgIC5yb3cuZy0zIHtcbiAgICAgICAgPiAqIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5kYXRhVGFibGVzX3dyYXBwZXIge1xuICAgICAgLmRhdGFUYWJsZXNfaW5mbyxcbiAgICAgIC5kYXRhVGFibGVzX3BhZ2luYXRlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAuZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luOiAwIC0wLjVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBcbiAgICAuY2FyZC1ib2R5IHtcbiAgICAgIHBhZGRpbmc6IDAuNzVyZW07XG4gICAgfVxuICAgIFxuICAgIC50YWJsZSB7XG4gICAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgICAgIFxuICAgICAgdGhlYWQgdGgsXG4gICAgICB0Ym9keSB0ZCB7XG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbSAwLjM3NXJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmRhdGF0YWJsZS1idWxrLWFjdGlvbnMge1xuICAgICAgbWFyZ2luOiAwIDAuNzVyZW0gMXJlbSAwLjc1cmVtO1xuICAgICAgXG4gICAgICAuZC1mbGV4IHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZ2FwOiAwLjc1cmVtO1xuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50O1xuICAgICAgICBcbiAgICAgICAgLmQtZmxleCB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi8qKlxuICogVG9hc3QvVG9hc3RyIFotSW5kZXggT3ZlcnJpZGVzXG4gKiBcbiAqIFRoaXMgZmlsZSBlbnN1cmVzIHRvYXN0IG5vdGlmaWNhdGlvbnMgYXBwZWFyIEJFTE9XIGhlYWRlciBkcm9wZG93biBtZW51cy5cbiAqIEJvb3RzdHJhcCBkcm9wZG93bnMgdXNlIHotaW5kZXg6IDEwMDAsIHNvIHdlIHNldCB0b2FzdHMgdG8gOTk5LlxuICovXG5cbi8vIE92ZXJyaWRlIHRvYXN0ciB6LWluZGV4IHRvIGFwcGVhciBiZWxvdyBoZWFkZXIgZHJvcGRvd25zXG4jdG9hc3QtY29udGFpbmVyIHtcbiAgICB6LWluZGV4OiA5OTkgIWltcG9ydGFudDsgLy8gQmVsb3cgQm9vdHN0cmFwIGRyb3Bkb3duIHotaW5kZXggb2YgMTAwMFxuICAgIFxuICAgIC8vIEVuc3VyZSB0b2FzdHMgc3RpbGwgYXBwZWFyIGFib3ZlIHJlZ3VsYXIgY29udGVudFxuICAgID4gZGl2IHtcbiAgICAgICAgei1pbmRleDogOTk5ICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4vLyBBbHRlcm5hdGl2ZSBzZWxlY3RvcnMgZm9yIHRvYXN0ciAoaW4gY2FzZSBvZiBkaWZmZXJlbnQgaW1wbGVtZW50YXRpb25zKVxuLnRvYXN0LWNvbnRhaW5lciB7XG4gICAgei1pbmRleDogOTk5ICFpbXBvcnRhbnQ7XG59XG5cbi50b2FzdCB7XG4gICAgei1pbmRleDogOTk5ICFpbXBvcnRhbnQ7XG59XG5cbi8vIFRvYXN0ciBzcGVjaWZpYyBjbGFzc2VzXG4udG9hc3QtdG9wLXJpZ2h0LFxuLnRvYXN0LXRvcC1sZWZ0LFxuLnRvYXN0LXRvcC1jZW50ZXIsXG4udG9hc3QtdG9wLWZ1bGwtd2lkdGgsXG4udG9hc3QtYm90dG9tLXJpZ2h0LFxuLnRvYXN0LWJvdHRvbS1sZWZ0LFxuLnRvYXN0LWJvdHRvbS1jZW50ZXIsXG4udG9hc3QtYm90dG9tLWZ1bGwtd2lkdGgge1xuICAgIHotaW5kZXg6IDk5OSAhaW1wb3J0YW50O1xufSIsIi8qKlxuICogRHluYW1pYyBGb3JtIENvbXBvbmVudCBTdHlsZXNcbiAqIEVuaGFuY2VtZW50cyBmb3IgZHluYW1pYyBmb3JtIGJ1aWxkZXJcbiAqL1xuXG4uZHluYW1pYy1mb3JtLWNvbnRhaW5lciB7XG4gIC8vIEZvcm0gZmllbGQgd3JhcHBlciBlbmhhbmNlbWVudHNcbiAgLmZvcm0tZmllbGQtd3JhcHBlciB7XG4gICAgLy8gQWRkIHNtb290aCB0cmFuc2l0aW9uc1xuICAgIC5mb3JtLWNvbnRyb2wsXG4gICAgLmZvcm0tc2VsZWN0IHtcbiAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcbiAgICB9XG4gICAgXG4gICAgLy8gRW5oYW5jZWQgZm9jdXMgc3RhdGVzXG4gICAgLmZvcm0tY29udHJvbDpmb2N1cyxcbiAgICAuZm9ybS1zZWxlY3Q6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSh2YXIoLS1icy1wcmltYXJ5LXJnYiksIDAuMTUpO1xuICAgIH1cbiAgfVxuICBcbiAgLy8gQ2hlY2tib3ggYW5kIHJhZGlvIGdyb3Vwc1xuICAuY2hlY2tib3gtZ3JvdXAsXG4gIC5yYWRpby1ncm91cCB7XG4gICAgcGFkZGluZzogMC41cmVtIDA7XG4gICAgXG4gICAgLmZvcm0tY2hlY2sge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjc1cmVtO1xuICAgICAgXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtZ3JheS0xMDApO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTAuNXJlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMC41cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIuMjVyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICAgICAgcGFkZGluZy10b3A6IDAuMjVyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1icy1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAvLyBGaWxlIGlucHV0IGVuaGFuY2VtZW50c1xuICAuZmlsZS1pbnB1dC13cmFwcGVyIHtcbiAgICAuZm9ybS1jb250cm9sW3R5cGU9XCJmaWxlXCJdIHtcbiAgICAgICY6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICAgICAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTtcbiAgICAgICAgbWFyZ2luOiAtMC4zNzVyZW0gLTAuNzVyZW07XG4gICAgICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAwLjc1cmVtO1xuICAgICAgICBjb2xvcjogdmFyKC0tYnMtYnRuLWNvbG9yKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtYnRuLWJnKTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBib3JkZXItaW5saW5lLWVuZDogdmFyKC0tYnMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1ib3JkZXItY29sb3IpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZS1pbi1vdXQ7XG4gICAgICB9XG4gICAgICBcbiAgICAgICY6aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWJ0bi1ob3Zlci1iZyk7XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIEltYWdlIHByZXZpZXdcbiAgICAuaW1hZ2UtcHJldmlldyB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBcbiAgICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAuMTI1cmVtIDAuMjVyZW0gcmdiYSgwLCAwLCAwLCAwLjA3NSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAvLyBDaGFyYWN0ZXIgY291bnRlclxuICAuY2hhcmFjdGVyLWNvdW50ZXIge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgfVxuICBcbiAgLy8gU3VibWl0IGJ1dHRvbiB3cmFwcGVyXG4gIC5mb3JtLXN1Ym1pdC13cmFwcGVyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYnMtZ3JheS0zMDApO1xuICAgIHBhZGRpbmctdG9wOiAxLjVyZW07XG4gICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICBcbiAgICAuYnRuLXByaW1hcnkge1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAyNWVtO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIFxuICAgICAgJjpub3QoOmRpc2FibGVkKTpob3ZlciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwLjI1cmVtIDAuNXJlbSByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAgICAgfVxuICAgICAgXG4gICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgY3Vyc29yOiB3YWl0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLy8gVHdvLWNvbHVtbiBsYXlvdXQgYWRqdXN0bWVudHNcbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLnJvdy5nLTQge1xuICAgICAgLmZvcm0tZmllbGQtd3JhcHBlciB7XG4gICAgICAgICYuZmllbGQtdHlwZS10ZXh0YXJlYSB7XG4gICAgICAgICAgLy8gTWFrZSB0ZXh0YXJlYXMgc3BhbiBmdWxsIHdpZHRoIG9uIGRlc2t0b3BcbiAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIC0xO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAvLyBGb3JtIHZhbGlkYXRpb24gc3RhdGVzXG4gIC5uZWVkcy12YWxpZGF0aW9uIHtcbiAgICAvLyBDdXN0b20gZXJyb3IgbWVzc2FnZSBzdHlsaW5nXG4gICAgLmludmFsaWQtZmVlZGJhY2sge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgICAgIFxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJ+KaoCAnO1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBTdWNjZXNzIHN0YXRlIChhZnRlciB2YWxpZGF0aW9uKVxuICAgIC53YXMtdmFsaWRhdGVkICYge1xuICAgICAgLmZvcm0tY29udHJvbDp2YWxpZCxcbiAgICAgIC5mb3JtLXNlbGVjdDp2YWxpZCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtc3VjY2Vzcyk7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgOCA4JyUzZSUzY3BhdGggZmlsbD0nJTIzMjhhNzQ1JyBkPSdNMi4zIDYuNzNMLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjYWxjKDAuMzc1ZW0gKyAwLjE4NzVyZW0pIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKSBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKTtcbiAgICAgICAgXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtc3VjY2Vzcyk7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKHZhcigtLWJzLXN1Y2Nlc3MtcmdiKSwgMC4yNSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIC8vIEFKQVggZm9ybSBsb2FkaW5nIHN0YXRlXG4gICYuaXMtbG9hZGluZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgICAgei1pbmRleDogMTA7XG4gICAgICBjdXJzb3I6IHdhaXQ7XG4gICAgfVxuICB9XG4gIFxuICAvLyBGbG9hdGluZyBsYWJlbCBzdXBwb3J0XG4gIC5mb3JtLWZsb2F0aW5nIHtcbiAgICBsYWJlbCB7XG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC44NSkgdHJhbnNsYXRlWSgtMC41cmVtKSB0cmFuc2xhdGVYKDAuMTVyZW0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLy8gUmVDQVBUQ0hBIGNlbnRlcmluZ1xuICAuZy1yZWNhcHRjaGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICBcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG4gICAgLmctcmVjYXB0Y2hhIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbiAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgICB9XG4gIH1cbn1cblxuLy8gRGFyayBtb2RlIHN1cHBvcnRcbkBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcbiAgLmR5bmFtaWMtZm9ybS1jb250YWluZXIge1xuICAgIC5jaGVja2JveC1ncm91cCxcbiAgICAucmFkaW8tZ3JvdXAge1xuICAgICAgLmZvcm0tY2hlY2s6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi8qKlxuICogRnJvbnRlbmQgRm9ybSBTdHlsZXNcbiAqXG4gKiBDb21wbGV0ZSBmb3JtIHN5c3RlbSBmb3IgZnJvbnRlbmQvY3VzdG9tZXItZmFjaW5nIHBhZ2VzXG4gKiBVc2VzIEJvb3RzdHJhcCA1IHdpdGggc3F1YXJlIGNvcm5lcnMgZGVzaWduXG4gKi9cblxuLy8gRnJvbnRlbmQgZm9ybSBjb250ZXh0IC0gc2NvcGUgYWxsIGZyb250ZW5kIGZvcm1zXG4uZnJvbnRlbmQtZm9ybSxcbi5jdXN0b21lci1mb3JtLFxuLmNoZWNrb3V0LWZvcm0sXG4uYWNjb3VudC1mb3JtLFxuLnByb2R1Y3QtZm9ybSxcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0ge1xuICBcbiAgLy8gRm9ybSBncm91cHNcbiAgLm1iLTMsXG4gIC5mb3JtLWdyb3VwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIH1cbiAgXG4gIC8vIExhYmVsc1xuICAuZm9ybS1sYWJlbCxcbiAgbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBjb2xvcjogIzMzMztcbiAgICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgfVxuICBcbiAgLy8gUmVxdWlyZWQgZmllbGQgaW5kaWNhdG9yXG4gIC5yZXF1aXJlZCB7XG4gICAgY29sb3I6ICNkYzM1NDU7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW07XG4gIH1cbiAgXG4gIC8vIFRleHQgaW5wdXRzLCBzZWxlY3RzLCB0ZXh0YXJlYXNcbiAgLmZvcm0tY29udHJvbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA0MnB4O1xuICAgIHBhZGRpbmc6IDAuNDc1cmVtIDAuODVyZW07XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBjb2xvcjogIzIxMjUyOTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RhZDlkOTtcbiAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7IC8vIFNxdWFyZSBjb3JuZXJzIGZvciBmcm9udGVuZCAtIGZvcmNlIG92ZXJyaWRlIEJvb3RzdHJhcFxuICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcbiAgICBcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIGJvcmRlci1jb2xvcjogIzFFMUU1NjsgLy8gVXNlIHByaW1hcnkgY29sb3JcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMzAsIDMwLCA4NiwgMC4yNSk7XG4gICAgfVxuICAgIFxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gICAgXG4gICAgJjpkaXNhYmxlZCxcbiAgICAmW3JlYWRvbmx5XSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gICAgXG4gICAgLy8gU2l6ZSB2YXJpYW50c1xuICAgICYuZm9ybS1jb250cm9sLXNtIHtcbiAgICAgIGhlaWdodDogMzZweDtcbiAgICAgIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICB9XG4gICAgXG4gICAgJi5mb3JtLWNvbnRyb2wtbGcge1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICB9XG4gIH1cbiAgXG4gIC8vIFRleHRhcmVhc1xuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiAxMjBweDtcbiAgICByZXNpemU6IHZlcnRpY2FsO1xuICB9XG4gIFxuICAvLyBTZWxlY3QgZWxlbWVudHMgLSBCb290c3RyYXAgNSBzdHlsZSB3aXRoIHNxdWFyZSBjb3JuZXJzXG4gIC5mb3JtLXNlbGVjdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA0MnB4O1xuICAgIHBhZGRpbmc6IDAuNDc1cmVtIDIuMjVyZW0gMC40NzVyZW0gMC44NXJlbTtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNiclM2UlM2NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzMzQzYTQwJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMicgZD0nTTIgNWw2IDYgNi02Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMC43NXJlbSBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxNnB4IDEycHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RhZDlkOTtcbiAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7IC8vIFNxdWFyZSBjb3JuZXJzIC0gZm9yY2Ugb3ZlcnJpZGUgQm9vdHN0cmFwXG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICMxRTFFNTY7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDMwLCAzMCwgODYsIDAuMjUpO1xuICAgIH1cbiAgICBcbiAgICAmOmRpc2FibGVkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XG4gICAgfVxuICAgIFxuICAgIC8vIFNpemUgdmFyaWFudHNcbiAgICAmLmZvcm0tc2VsZWN0LXNtIHtcbiAgICAgIGhlaWdodDogMzZweDtcbiAgICAgIHBhZGRpbmctdG9wOiAwLjI1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgfVxuICAgIFxuICAgICYuZm9ybS1zZWxlY3QtbGcge1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgcGFkZGluZy10b3A6IDAuNzVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMC43NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgfVxuICB9XG4gIFxuICAvLyBDaGVja2JveGVzIGFuZCByYWRpb3MgLSBCb290c3RyYXAgNSBzdHlsZVxuICAuZm9ybS1jaGVjayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWluLWhlaWdodDogMS41cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS41ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC4xMjVyZW07XG4gICAgXG4gICAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW4tbGVmdDogLTEuNWVtO1xuICAgICAgXG4gICAgICAmW3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7IC8vIFNxdWFyZSBjb3JuZXJzXG4gICAgICB9XG4gICAgICBcbiAgICAgICZbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgfVxuICAgICAgXG4gICAgICAmOmNoZWNrZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUUxRTU2O1xuICAgICAgICBib3JkZXItY29sb3I6ICMxRTFFNTY7XG4gICAgICB9XG4gICAgICBcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICMxRTFFNTY7XG4gICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgzMCwgMzAsIDg2LCAwLjI1KTtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICBmaWx0ZXI6IG5vbmU7XG4gICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgJjpkaXNhYmxlZCB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cbiAgXG4gIC8vIEZvcm0gdmFsaWRhdGlvbiBzdGF0ZXNcbiAgLmZvcm0tY29udHJvbCxcbiAgLmZvcm0tc2VsZWN0IHtcbiAgICAmLmlzLXZhbGlkIHtcbiAgICAgIGJvcmRlci1jb2xvcjogIzE5ODc1NDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IGNhbGMoMS41ZW0gKyAwLjc1cmVtKTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgOCA4JyUzZSUzY3BhdGggZmlsbD0nJTIzMTk4NzU0JyBkPSdNMi4zIDYuNzNMLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNhbGMoMC4zNzVlbSArIDAuMTg3NXJlbSkgY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKSBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKTtcbiAgICAgIFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzE5ODc1NDtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDI1LCAxMzUsIDg0LCAwLjI1KTtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgJi5pcy1pbnZhbGlkIHtcbiAgICAgIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IGNhbGMoMS41ZW0gKyAwLjc1cmVtKTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTIgMTInIHdpZHRoPScxMicgaGVpZ2h0PScxMicgZmlsbD0nbm9uZScgc3Ryb2tlPSclMjNkYzM1NDUnJTNlJTNjY2lyY2xlIGN4PSc2JyBjeT0nNicgcj0nNC41Jy8lM2UlM2NwYXRoIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIGQ9J001LjggMy42aC40TDYgNi41eicvJTNlJTNjY2lyY2xlIGN4PSc2JyBjeT0nOC4yJyByPScuNicgZmlsbD0nJTIzZGMzNTQ1JyBzdHJva2U9J25vbmUnLyUzZSUzYy9zdmclM2VcIik7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2FsYygwLjM3NWVtICsgMC4xODc1cmVtKSBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNhbGMoMC43NWVtICsgMC4zNzVyZW0pIGNhbGMoMC43NWVtICsgMC4zNzVyZW0pO1xuICAgICAgXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjIwLCA1MywgNjksIDAuMjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLy8gRmVlZGJhY2sgbWVzc2FnZXNcbiAgLmludmFsaWQtZmVlZGJhY2ssXG4gIC52YWxpZC1mZWVkYmFjayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xuICAgIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgfVxuICBcbiAgLmludmFsaWQtZmVlZGJhY2sge1xuICAgIGNvbG9yOiAjZGMzNTQ1O1xuICB9XG4gIFxuICAudmFsaWQtZmVlZGJhY2sge1xuICAgIGNvbG9yOiAjMTk4NzU0O1xuICB9XG4gIFxuICAuaXMtaW52YWxpZCB+IC5pbnZhbGlkLWZlZWRiYWNrLFxuICAud2FzLXZhbGlkYXRlZCA6aW52YWxpZCB+IC5pbnZhbGlkLWZlZWRiYWNrIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICBcbiAgLmlzLXZhbGlkIH4gLnZhbGlkLWZlZWRiYWNrLFxuICAud2FzLXZhbGlkYXRlZCA6dmFsaWQgfiAudmFsaWQtZmVlZGJhY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIFxuICAvLyBGb3JtIHRleHQvaGVscFxuICAuZm9ybS10ZXh0IHtcbiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xuICAgIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgICBjb2xvcjogIzZjNzU3ZDtcbiAgfVxufVxuXG4vLyBJbnB1dCBncm91cHMgLSBCb290c3RyYXAgNSBzdHlsZSB3aXRoIHNxdWFyZSBjb3JuZXJzXG4uaW5wdXQtZ3JvdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHdpZHRoOiAxMDAlO1xuICBcbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5mb3JtLXNlbGVjdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIHdpZHRoOiAxJTtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxuICBcbiAgPiAuZm9ybS1jb250cm9sOmZvY3VzLFxuICA+IC5mb3JtLXNlbGVjdDpmb2N1cyB7XG4gICAgei1pbmRleDogMztcbiAgfVxuICBcbiAgLmlucHV0LWdyb3VwLXRleHQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAwLjQ3NXJlbSAwLjg1cmVtO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGFkOWQ5O1xuICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDsgLy8gU3F1YXJlIGNvcm5lcnNcbiAgfVxufVxuXG4vLyBTZWxlY3QyIGludGVncmF0aW9uIGZvciBmcm9udGVuZCAoaWYgdXNlZClcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNSxcbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCB7XG4gIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlLFxuICAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIHtcbiAgICBoZWlnaHQ6IDQycHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RhZDlkOTtcbiAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7IC8vIFNxdWFyZSBjb3JuZXJzXG4gICAgXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICMxRTFFNTY7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMzAsIDMwLCA4NiwgMC4yNSk7XG4gICAgfVxuICB9XG4gIFxuICAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gICAgcGFkZGluZzogMC40NzVyZW0gMC44NXJlbTtcbiAgICBcbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuICB9XG4gIFxuICAuc2VsZWN0Mi1kcm9wZG93biB7XG4gICAgYm9yZGVyLWNvbG9yOiAjZGFkOWQ5O1xuICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDsgLy8gU3F1YXJlIGNvcm5lcnNcbiAgfVxuICBcbiAgLnNlbGVjdDItc2VhcmNoLS1kcm9wZG93biAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGFkOWQ5O1xuICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDsgLy8gU3F1YXJlIGNvcm5lcnNcbiAgfVxufSIsIi8vIEhlYWRlciBkcm9wZG93biBzdHlsaW5nIGZvciB1bmlmaWVkIGRyb3Bkb3duIGJlaGF2aW9yXG4uZHJvcGRvd24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBcbiAgICAvLyBFbnN1cmUgZHJvcGRvd25zIGRvbid0IGNhdXNlIGhvcml6b250YWwgc2Nyb2xsXG4gICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSA0MHB4KTsgLy8gTGVhdmUgMjBweCBwYWRkaW5nIG9uIGVhY2ggc2lkZVxuICAgICAgICBcbiAgICAgICAgLy8gTm90aWZpY2F0aW9uIGRyb3Bkb3duIHNwZWNpZmljXG4gICAgICAgICYubm90aWZpY2F0aW9uRHJvcGRvd24ge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLm5vdGlmaWNhdGlvbi1saXN0IHtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA0MDBweDtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gUHJvZmlsZSBkcm9wZG93blxuLnRvcC11c2VyLXByb2ZpbGUge1xuICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgbWluLXdpZHRoOiAyMDBweDtcbiAgICB9XG59XG5cbi8vIENhcnQgZHJvcGRvd24gIFxuLmhlYWRlci1jYXJ0LXdyYXBwZXIge1xuICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgbWluLXdpZHRoOiAzMjBweDtcbiAgICAgICAgXG4gICAgICAgIC5jYXJ0LWRyb3Bkb3duLWNvbnRlbnQge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogNDAwcHg7XG4gICAgICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBNb2JpbGUgYWRqdXN0bWVudHNcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5kcm9wZG93biB7XG4gICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbGVmdDogMTBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcmlnaHQ6IDEwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLy8gVW5pZmllZCBIZWFkZXIgRHJvcGRvd24gVHlwb2dyYXBoeVxuLy8gQXBwbGllcyBjb25zaXN0ZW50IGZvbnQgc3R5bGluZyBhY3Jvc3MgYWxsIHRocmVlIGhlYWRlciBkcm9wZG93bnNcblxuLy8gRGVmaW5lIGZvbnQgdmFyaWFibGVzIGZvciBoZWFkZXIgZHJvcGRvd25zXG4kZHJvcGRvd24tZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuJGRyb3Bkb3duLWZvbnQtd2VpZ2h0LW5vcm1hbDogNDAwO1xuJGRyb3Bkb3duLWZvbnQtd2VpZ2h0LXNlbWlib2xkOiA2MDA7XG5cbi8vIEJhc2UgZHJvcGRvd24gc3R5bGluZ1xuLmRyb3Bkb3duLW1lbnUge1xuICBmb250LWZhbWlseTogJGRyb3Bkb3duLWZvbnQtZmFtaWx5O1xuXG4gIC8vIE92ZXJyaWRlIEJvb3RzdHJhcCBkZWZhdWx0c1xuICAuZHJvcGRvd24taXRlbSB7XG4gICAgZm9udC1mYW1pbHk6ICRkcm9wZG93bi1mb250LWZhbWlseTtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgZm9udC13ZWlnaHQ6ICRkcm9wZG93bi1mb250LXdlaWdodC1ub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICBjb2xvcjogIzMzMztcblxuICAgIC8vIEljb24gYWxpZ25tZW50XG4gICAgaSB7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICMwMDA7XG4gICAgfVxuICB9XG5cbiAgLmRyb3Bkb3duLWhlYWRlciB7XG4gICAgZm9udC1mYW1pbHk6ICRkcm9wZG93bi1mb250LWZhbWlseTtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgZm9udC13ZWlnaHQ6ICRkcm9wZG93bi1mb250LXdlaWdodC1zZW1pYm9sZDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgICBjb2xvcjogIzZjNzU3ZDtcbiAgfVxufVxuXG4vLyBQcm9maWxlIGRyb3Bkb3duIHNwZWNpZmljXG4udG9wLXVzZXItcHJvZmlsZSB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICAuZHJvcGRvd24taXRlbSB7XG4gICAgICBwYWRkaW5nOiAwLjVyZW0gMS4yNXJlbTtcbiAgICB9XG4gIH1cbn1cblxuLy8gTm90aWZpY2F0aW9ucyBkcm9wZG93biBzcGVjaWZpY1xuLm5vdGlmaWNhdGlvbkRyb3Bkb3duIHtcbiAgLmRyb3Bkb3duLWhlYWRlciB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiAkZHJvcGRvd24tZm9udC13ZWlnaHQtc2VtaWJvbGQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICBjb2xvcjogIzMzMztcblxuICAgIC8vIE1hcmsgYWxsIGFzIHJlYWQgYnV0dG9uXG4gICAgLmJ0bi1saW5rIHtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZHJvcGRvd24tZm9udC13ZWlnaHQtbm9ybWFsO1xuICAgIH1cbiAgfVxuXG4gIC8vIE5vdGlmaWNhdGlvbiBpdGVtc1xuICAuZnJvbnRlbmQtbm90aWZpY2F0aW9uLWl0ZW0ge1xuICAgIGg1IHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZHJvcGRvd24tZm9udC1mYW1pbHk7XG4gICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICBmb250LXdlaWdodDogJGRyb3Bkb3duLWZvbnQtd2VpZ2h0LXNlbWlib2xkO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG5cbiAgICAgICYuZnctYm9sZCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZHJvcGRvd24tZm9udC13ZWlnaHQtc2VtaWJvbGQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBmb250LWZhbWlseTogJGRyb3Bkb3duLWZvbnQtZmFtaWx5O1xuXG4gICAgICAvLyBNZXNzYWdlIHByZXZpZXdcbiAgICAgICYuc21hbGwge1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICB9XG5cbiAgICAgIC8vIFRpbWVzdGFtcFxuICAgICAgJi5zbWFsbDpsYXN0LWNoaWxkIHtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gRm9vdGVyIGxpbmtcbiAgLmRyb3Bkb3duLWl0ZW0udGV4dC1jZW50ZXIge1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgfVxufVxuXG4vLyBDYXJ0IGRyb3Bkb3duIHNwZWNpZmljXG4uaGVhZGVyLWNhcnQtd3JhcHBlciB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICAvLyBDYXJ0IGl0ZW0gc3R5bGluZ1xuICAgIC5jYXJ0LWl0ZW0ge1xuICAgICAgZm9udC1mYW1pbHk6ICRkcm9wZG93bi1mb250LWZhbWlseTtcblxuICAgICAgLml0ZW0tbmFtZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRkcm9wZG93bi1mb250LXdlaWdodC1zZW1pYm9sZDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgICAgY29sb3I6ICMzMzM7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuaXRlbS1kZXRhaWxzIHtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcblxuICAgICAgICAuaXRlbS1wcmljZSB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRkcm9wZG93bi1mb250LXdlaWdodC1zZW1pYm9sZDtcbiAgICAgICAgICBjb2xvcjogIzMzMztcbiAgICAgICAgfVxuXG4gICAgICAgIC5pdGVtLXR5cGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAucXVhbnRpdHktY29udHJvbHMge1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG5cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICBmb250LWZhbWlseTogJGRyb3Bkb3duLWZvbnQtZmFtaWx5O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ2FydCB0b3RhbHNcbiAgICAuY2FydC1zdW1tYXJ5IHtcbiAgICAgIGg2IHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRkcm9wZG93bi1mb250LWZhbWlseTtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBmb250LXdlaWdodDogJGRyb3Bkb3duLWZvbnQtd2VpZ2h0LXNlbWlib2xkO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG4gICAgICB9XG5cbiAgICAgIC5zdWJ0b3RhbC1yb3cge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG5cbiAgICAgICAgLnN1YnRvdGFsLWxhYmVsIHtcbiAgICAgICAgICBmb250LXdlaWdodDogJGRyb3Bkb3duLWZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zdWJ0b3RhbC1hbW91bnQge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZHJvcGRvd24tZm9udC13ZWlnaHQtc2VtaWJvbGQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBY3Rpb24gYnV0dG9uc1xuICAgIC5idG4ge1xuICAgICAgZm9udC1mYW1pbHk6ICRkcm9wZG93bi1mb250LWZhbWlseTtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZHJvcGRvd24tZm9udC13ZWlnaHQtbm9ybWFsO1xuICAgIH1cblxuICAgIC8vIEVtcHR5IGNhcnQgbWVzc2FnZVxuICAgIC5lbXB0eS1jYXJ0LW1lc3NhZ2Uge1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuXG4gICAgICBpIHtcbiAgICAgICAgZm9udC1zaXplOiAzMnB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIExvYWRpbmcgc3RhdGVcbiAgICAuY2FydC1sb2FkaW5nIHtcbiAgICAgIHAge1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIENvbW1vbiBkcm9wZG93biBzdGF0ZXNcbi5kcm9wZG93bi1tZW51IHtcbiAgLy8gRGl2aWRlcnNcbiAgLmRyb3Bkb3duLWRpdmlkZXIge1xuICAgIG1hcmdpbjogMC41cmVtIDA7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBpdGVtc1xuICAuZHJvcGRvd24taXRlbS5kaXNhYmxlZCxcbiAgLmRyb3Bkb3duLWl0ZW06ZGlzYWJsZWQge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBvcGFjaXR5OiAwLjY7XG4gIH1cblxuICAvLyBTbWFsbCB0ZXh0IHV0aWxpdHlcbiAgLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgfVxuXG4gIC50ZXh0LW11dGVkIHtcbiAgICBjb2xvcjogIzZjNzU3ZCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vIFJlc3BvbnNpdmUgYWRqdXN0bWVudHNcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgLmRyb3Bkb3duLWl0ZW0ge1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgcGFkZGluZzogMC43NXJlbSAxLjI1cmVtO1xuICAgIH1cblxuICAgIC5kcm9wZG93bi1oZWFkZXIge1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgIH1cbiAgfVxuXG4gIC5ub3RpZmljYXRpb25Ecm9wZG93biB7XG4gICAgLmZyb250ZW5kLW5vdGlmaWNhdGlvbi1pdGVtIHtcbiAgICAgIGg1IHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgfVxuXG4gICAgICBwLnNtYWxsIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5oZWFkZXItY2FydC13cmFwcGVyIHtcbiAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAuaXRlbS1uYW1lIHtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgfVxuXG4gICAgICAuaXRlbS1kZXRhaWxzIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gV2lzaGxpc3QgQnV0dG9uIFN0eWxlc1xuLy8gUHJvdmlkZXMgcHJvbWluZW50IHN0eWxpbmcgZm9yIHdpc2hsaXN0IHRvZ2dsZSBidXR0b25zXG5cbi53aXNobGlzdC10b2dnbGUtYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICBcbiAgICAvLyBEZWZhdWx0IHN0YXRlIC0gQWRkIHRvIFdpc2hsaXN0XG4gICAgJjpub3QoLndpc2hsaXN0ZWQpIHtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgIzZjNzU3ZDsgLy8gRGFya2VyIGdyYXkgYm9yZGVyXG4gICAgICAgIGNvbG9yOiAjZGMzNTQ1OyAvLyBSZWQgdGV4dFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjNWE2MjY4O1xuICAgICAgICAgICAgY29sb3I6ICNkYzM1NDU7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMTA4LCAxMTcsIDEyNSwgMC4yNSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gV2lzaGxpc3RlZCBzdGF0ZSAtIFJlbW92ZSBmcm9tIFdpc2hsaXN0XG4gICAgJi53aXNobGlzdGVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2RjMzU0NTsgLy8gUmVkIGJvcmRlclxuICAgICAgICBjb2xvcjogI2RjMzU0NTsgLy8gUmVkIHRleHRcbiAgICAgICAgXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZWVmMDtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbiAgICAgICAgICAgIGNvbG9yOiAjZGMzNTQ1O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyMCwgNTMsIDY5LCAwLjI1KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBMb2FkaW5nIHN0YXRlXG4gICAgJi53aXNobGlzdC1sb2FkaW5nIHtcbiAgICAgICAgb3BhY2l0eTogMC43O1xuICAgICAgICBjdXJzb3I6IHdhaXQ7XG4gICAgfVxuICAgIFxuICAgIC8vIEljb24gYW5pbWF0aW9uc1xuICAgIGkge1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlO1xuICAgICAgICBcbiAgICAgICAgJi53aXNobGlzdC1wdWxzZSB7XG4gICAgICAgICAgICBhbmltYXRpb246IHdpc2hsaXN0LXB1bHNlIDAuNXMgZWFzZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBNYWtlIGJ1dHRvbiBtb3JlIHByb21pbmVudCBvbiBpdGVtIGRldGFpbCBwYWdlc1xuICAgICYuYnRuLWxnIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgcGFkZGluZzogMC42cmVtIDEuNXJlbTtcbiAgICAgICAgXG4gICAgICAgIGkge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjM3NXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBTbWFsbGVyIGJ1dHRvbnMgKHByb2R1Y3QgY2FyZHMpXG4gICAgJi5idG4tc20ge1xuICAgICAgICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xuICAgIH1cbn1cblxuLy8gQW5pbWF0aW9uIGZvciBoZWFydCBwdWxzZVxuQGtleWZyYW1lcyB3aXNobGlzdC1wdWxzZSB7XG4gICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIH1cbiAgICA1MCUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMyk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIH1cbn1cblxuLy8gUHJvZHVjdCBjYXJkIHNwZWNpZmljIHN0eWxpbmcgLSBHUklEIFZJRVcgT05MWVxuLnByb2R1Y3QtY2FyZC1ncmlkIHtcbiAgICAud2lzaGxpc3QtdG9nZ2xlLWJ0biB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwLjVyZW07XG4gICAgICAgIHJpZ2h0OiAwLjVyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICAgICAgXG4gICAgICAgICY6bm90KC53aXNobGlzdGVkKSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgICAgICBjb2xvcjogI2RjMzU0NTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICM1YTYyNjg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNkYzM1NDU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYud2lzaGxpc3RlZCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xuICAgICAgICAgICAgY29sb3I6ICNkYzM1NDU7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZGMzNTQ1O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBQcm9kdWN0IGNhcmQgbGlzdCB2aWV3IHN0eWxpbmcgLSBOb3JtYWwgYnV0dG9uIGFwcGVhcmFuY2Vcbi5wcm9kdWN0LWNhcmQtbGlzdCB7XG4gICAgLndpc2hsaXN0LXRvZ2dsZS1idG4ge1xuICAgICAgICAvLyBSZXNldCBhbnkgYWJzb2x1dGUgcG9zaXRpb25pbmdcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAvLyBOb3JtYWwgYnV0dG9uIHN0eWxpbmcgLSBubyBzcGVjaWFsIG92ZXJyaWRlcyBuZWVkZWRcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgICB9XG59XG5cbi8vIFdpc2hsaXN0IGRyb3Bkb3duIHN0eWxpbmdcbi53aXNobGlzdC1kcm9wZG93bi1jb250ZW50IHtcbiAgICAud2lzaGxpc3QtdG9nZ2xlLWJ0biB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gICAgICAgIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIH1cbn0iLCIvLyBFbmhhbmNlZCBTaG9wIEZpbHRlcnMgQ29tcG9uZW50IFN0eWxlc1xuXG4uZmlsdGVyLWZvcm0ge1xuICAgIC8vIERlc2t0b3AgYXV0b2NvbXBsZXRlIGludGVyZmFjZVxuICAgIC5maWx0ZXItYXV0b2NvbXBsZXRlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBcbiAgICAgICAgLmZpbHRlci1pbnB1dC13cmFwcGVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmZpbHRlci1zZWFyY2gtaW5wdXQge1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4OyAvLyBTcGFjZSBmb3IgZHJvcGRvd24gaWNvblxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjODZiN2ZlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiB0ZXh0O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICM4NmI3ZmU7XG4gICAgICAgICAgICAgICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgxMywgMTEwLCAyNTMsIDAuMjUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmZpbHRlci1kcm9wZG93bi1pY29uIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycztcbiAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZmlsdGVyLXN1Z2dlc3Rpb25zLWRyb3Bkb3duIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMTAwJTsgLy8gRGlyZWN0bHkgYXR0YWNoZWQgdG8gaW5wdXRcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IDEwNTA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG4gICAgICAgICAgICBib3JkZXItdG9wOiBub25lOyAvLyBTZWFtbGVzcyBjb25uZWN0aW9uXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgMC4yNXJlbSAwLjI1cmVtO1xuICAgICAgICAgICAgbWF4LWhlaWdodDogMjUwcHg7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDZweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICYuc2hvdyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgLy8gUm90YXRlIGljb24gd2hlbiBvcGVuXG4gICAgICAgICAgICAgICAgfiAuZmlsdGVyLWlucHV0LXdyYXBwZXIgLmZpbHRlci1kcm9wZG93bi1pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLnN1Z2dlc3Rpb25zLWxpc3Qge1xuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDI1MHB4O1xuICAgICAgICAgICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgLnN1Z2dlc3Rpb24taXRlbSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtO1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXM7XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzBkNmVmZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8vIFdoZW4gZHJvcGRvd24gaXMgb3BlbiwgY29ubmVjdCBpbnB1dCBib3R0b20gYm9yZGVyXG4gICAgICAgIC5maWx0ZXItc3VnZ2VzdGlvbnMtZHJvcGRvd24uc2hvdyB+IC5maWx0ZXItaW5wdXQtd3JhcHBlciAuZmlsdGVyLXNlYXJjaC1pbnB1dCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBNb2JpbGUgc2VsZWN0IGludGVyZmFjZVxuICAgIC5maWx0ZXItbW9iaWxlLXNlbGVjdCB7XG4gICAgICAgIC5tb2JpbGUtZmlsdGVyLXNlbGVjdCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBUYWdzIGRpc3BsYXkgKHNoYXJlZCBiZXR3ZWVuIGRlc2t0b3AgYW5kIG1vYmlsZSlcbiAgICAuc2VsZWN0ZWQtdGFncyB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICAgIFxuICAgICAgICAuYmFkZ2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuMzc1cmVtIDAuNXJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5idG4tY2xvc2Uge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAwLjVlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDAuNWVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAwLjVlbTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjc1O1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gTWVkaWEgcXVlcmllc1xuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmZpbHRlci1mb3JtIHtcbiAgICAgICAgLy8gSGlkZSBkZXNrdG9wIGludGVyZmFjZSBvbiBtb2JpbGVcbiAgICAgICAgLmZpbHRlci1hdXRvY29tcGxldGUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvLyBTaG93IG1vYmlsZSBpbnRlcmZhY2VcbiAgICAgICAgLmZpbHRlci1tb2JpbGUtc2VsZWN0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5maWx0ZXItZm9ybSB7XG4gICAgICAgIC8vIFNob3cgZGVza3RvcCBpbnRlcmZhY2VcbiAgICAgICAgLmZpbHRlci1hdXRvY29tcGxldGUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLy8gSGlkZSBtb2JpbGUgaW50ZXJmYWNlXG4gICAgICAgIC5maWx0ZXItbW9iaWxlLXNlbGVjdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLy8gSGVhZGVyIEljb24gQ29uc2lzdGVuY3kgU3R5bGVzXG4vLyBFbnN1cmVzIGFsbCBoZWFkZXIgaWNvbnMgYXJlIHByb3Blcmx5IGFsaWduZWQgYW5kIHNpemVkXG5cbi50b3AtYnV0dG9ucyB7XG4gICAgLy8gRW5zdXJlIGFsbCBkaXJlY3QgY2hpbGRyZW4gKGljb25zKSBhcmUgcHJvcGVybHkgYWxpZ25lZFxuICAgID4gKiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgICBcbiAgICAvLyBTdGFuZGFyZCBpY29uIGNvbnRhaW5lciBzaXplXG4gICAgLmJ0bi1saW5rIHtcbiAgICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICAgIGhlaWdodDogMzVweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzO1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8vIFJlbW92ZSBhbnkgcG9zaXRpb25pbmcgb2Zmc2V0c1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICAgICAgdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgIC8vIE5vdGlmaWNhdGlvbiBpY29uIHNwZWNpZmljXG4gICAgLm5vdGlmaWNhdGlvbkJ0biB7XG4gICAgICAgIC5iYWRnZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuNjI1cmVtO1xuICAgICAgICAgICAgcGFkZGluZzogMC4yNWVtIDAuNGVtO1xuICAgICAgICAgICAgbWluLXdpZHRoOiAxOHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBVc2VyIGRyb3Bkb3duIGJ1dHRvblxuICAgIC50b3AtdXNlci1wcm9maWxlIHtcbiAgICAgICAgLmJ0bi1saW5rIHtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGltZywgLnVzZXItZHJvcGRvd24ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzVweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNhYWE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gQ2FydCBpY29uXG4gICAgLmhlYWRlci1jYXJ0LXdyYXBwZXIge1xuICAgICAgICAuY2FydC1pY29uIHtcbiAgICAgICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuY2FydC1jb3VudC1iYWRnZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuNjI1cmVtO1xuICAgICAgICAgICAgcGFkZGluZzogMC4yNWVtIDAuNGVtO1xuICAgICAgICAgICAgbWluLXdpZHRoOiAxOHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIEltcGVyc29uYXRpb24gaW5kaWNhdG9yXG4gICAgZm9ybSwgYSB7XG4gICAgICAgICZbdGl0bGUqPVwiUmV0dXJuXCJdLCAmW3RpdGxlKj1cIlN0b3AgSW1wZXJzb25hdGluZ1wiXSB7XG4gICAgICAgICAgICAuYnRuLWxpbmsge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmMxMDcgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZiMzAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBNb2JpbGUgYWRqdXN0bWVudHNcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC50b3AtYnV0dG9ucyB7XG4gICAgICAgIGdhcDogMC43NXJlbSAhaW1wb3J0YW50OyAvLyBTbGlnaHRseSBzbWFsbGVyIGdhcCBvbiBtb2JpbGVcbiAgICB9XG59IiwiLy8gT3JkZXIgQ2FyZCBDb21wb25lbnQgU3R5bGVzXG4ub3JkZXItY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBcbiAgICAuY2FyZCB7XG4gICAgICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4zcyBlYXNlO1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAuNXJlbSAxcmVtIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5vcmRlci1pdGVtLXRodW1iIHtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xufVxuXG4ub3JkZXItaXRlbS10aHVtYi1wbGFjZWhvbGRlciB7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgY29sb3I6ICM2Yzc1N2Q7XG59XG5cbi5vcmRlci1pdGVtLW1vcmUge1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogIzZjNzU3ZDtcbn0iLCIvKipcbiAqIEZpbHRlciBGb3JtIENvbXBvbmVudCBTdHlsZXNcbiAqL1xuXG4uZmlsdGVyLXNpZGViYXItY2FyZCB7XG4gICAgLmZpbHRlci1zZWN0aW9uIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlOWVjZWY7XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuYWNjb3JkaW9uLWhlYWRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnMgZWFzZTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2Y4ZjlmYTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZhLWNoZXZyb24tZG93bixcbiAgICAgICAgICAgIC5mYS1jaGV2cm9uLXVwIHtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmFjY29yZGlvbi1ib2R5IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMXJlbSAxcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmxpc3QtdW5zdHlsZWQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuMjVyZW0gMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5mb3JtLWNoZWNrIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuXG4gICAgICAgICAgICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMC4zcmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjk1cmVtO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjNDk1MDU3O1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBoNiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvbGxhcHNlIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIFByaWNlIGZpbHRlciBzcGVjaWZpYyBzdHlsZXNcbi5maWx0ZXItcHJpY2UtaW5wdXRzIHtcbiAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgfVxufVxuXG4vLyBSZXNwb25zaXZlIGFkanVzdG1lbnRzXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAuZmlsdGVyLXNpZGViYXItY2FyZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgfVxufSIsIi8qKlxuICogSG9tZSBQYWdlIFN0eWxlc1xuICogU3R5bGVzIHNwZWNpZmljIHRvIHRoZSBob21lcGFnZSB3aXRoIEJvb3RzdHJhcCA1XG4gKi9cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIHtcbiAgLy8gQmFubmVyIEltYWdlIFN0eWxpbmdcbiAgLm9iamVjdC1maXQtY292ZXIge1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIG1pbi1oZWlnaHQ6IDQwMHB4O1xuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICBtaW4taGVpZ2h0OiAyNTBweDtcbiAgICB9XG4gIH1cblxuICAvLyBCYWRnZSBBbmltYXRpb25cbiAgLmJhZGdlIHtcbiAgICBhbmltYXRpb246IGZhZGVJblVwIDAuNXMgZWFzZS1vdXQ7XG4gIH1cblxuICAvLyBDYXJkIHN0eWxlcyAtIGhvdmVyIGVmZmVjdHMgcmVtb3ZlZFxuICAuY2FyZCB7XG4gICAgLy8gU3RhdGljIHN0eWxpbmcgb25seVxuICB9XG5cbiAgLy8gU2hhcGUgY2FyZCBzcGVjaWZpYyBzdHlsZXNcbiAgLnNoYXBlLWNhcmQge1xuICAgIC8vIEhvdmVyIGVmZmVjdHMgcmVtb3ZlZCBmb3IgY2xlYW5lciBkZXNpZ25cbiAgfVxuXG4gIC5zaGFwZS1pbWFnZS13cmFwcGVyIHtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG5cbiAgLnNoYXBlLWljb24ge1xuICAgIHdpZHRoOiA1MHB4O1xuICAgIGhlaWdodDogNTBweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIGNvbG9yOiB2YXIoLS1icy1ncmF5LTYwMCk7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tYnMtZ3JheS0xMDApO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICB9XG5cbiAgLy8gRGlmZmVyZW50IGljb25zIGZvciBkaWZmZXJlbnQgZGlhbW9uZCBzaGFwZXNcbiAgLnNoYXBlLXJvdW5kIC5mYS1nZW06YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjNhNVwiO1xuICB9IC8qIENpcmNsZSAqL1xuICAuc2hhcGUtcHJpbmNlc3MgLmZhLWdlbTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxmMGM4XCI7XG4gIH0gLyogU3F1YXJlICovXG4gIC5zaGFwZS1jdXNoaW9uIC5mYS1nZW06YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjQ2NlwiO1xuICB9IC8qIFNxdWFyZSB3aXRoIHJvdW5kZWQgY29ybmVycyAqL1xuICAuc2hhcGUtZW1lcmFsZCAuZmEtZ2VtOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGYxYjJcIjtcbiAgfSAvKiBSZWN0YW5nbGUgKi9cbiAgLnNoYXBlLW92YWwgLmZhLWdlbTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxmMTExXCI7XG4gIH0gLyogRWxsaXBzZSAqL1xuICAuc2hhcGUtcGVhciAuZmEtZ2VtOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGYwNDNcIjtcbiAgfSAvKiBUZWFyZHJvcCAqL1xuICAuc2hhcGUtaGVhcnQgLmZhLWdlbTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxmMDA0XCI7XG4gIH0gLyogSGVhcnQgKi9cblxuICAvLyBOYXYgcGlsbHMgY3VzdG9taXphdGlvbiBmb3IgcHJvZHVjdCB0YWJzXG4gIC5uYXYtcGlsbHMge1xuICAgIC5uYXYtbGluayB7XG4gICAgICBjb2xvcjogdmFyKC0tYnMtZ3JheS02MDApO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTByZW07XG4gICAgICBwYWRkaW5nOiAwLjVyZW0gMS41cmVtO1xuICAgICAgbWFyZ2luOiAwIDAuMjVyZW07XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtZ3JheS0xMDApO1xuICAgICAgfVxuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIEhlcm8gc2VjdGlvbiBlbmhhbmNlbWVudHNcbiAgLy8gLmhlcm8tc2VjdGlvbiB7XG4gIC8vICAgLmJhZGdlIHtcbiAgLy8gICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG4gIC8vICAgICBmb250LXdlaWdodDogNjAwO1xuICAvLyAgIH1cblxuICAvLyAgIC5kaXNwbGF5LTQge1xuICAvLyAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG4gIC8vICAgfVxuICAvLyB9XG5cbiAgLmhvbWUtaGVyby1zZWN0aW9uLWhvbWVwYWdlIHtcbiAgICAvLyBGaXggYSB0YWcgYmVoYXZpb3IgaWYgd2UgYXJlIHJlbmRlcmluZyB0aGlzIGFzIGFuIGEgdGFnOlxuXG4gICAgLy8gT24gaG92ZXIsIHNob3cgYm94IHNoYWRvd1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgaGVpZ2h0OiAyNTBweDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgLy8gdGVtcCBkaXNhYmxlIHJvdW5kZWQtY29ybmVyXG4gICAgLy8gYm9yZGVyLXJhZGl1czogMTJweDtcblxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjAwcHgpIHtcbiAgICAgIGhlaWdodDogMzQwcHg7XG4gICAgfVxuXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MDBweCkge1xuICAgICAgaGVpZ2h0OiAzNzBweDtcbiAgICB9XG5cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMDBweCkge1xuICAgICAgaGVpZ2h0OiA0MDBweDtcbiAgICB9XG5cbiAgICAubWFpbi1oZWFkaW5nLXRvcCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjM1LCAyMzUsIDI0MiwgMCk7XG4gICAgfVxuXG4gICAgLmJhbm5lcnRleHQge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB3aWR0aDogNDclO1xuICAgICAgbGVmdDogMi4yNSU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwcHgsIC01MiUpO1xuXG4gICAgICAuYmFubmVydGV4dC1oZWFkaW5nIHtcbiAgICAgICAgZm9udC1zaXplOiA0NS41cHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcblxuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWhlYWRpbmc7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcblxuICAgICAgICAubGluZWdyZWQ6OmJlZm9yZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWcvaG9tZS9saW5lZ3JhZC5wbmcpO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB3aWR0aDogMjUwcHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5iYW5uZXJ0ZXh0LXN1YmhlYWRpbmcge1xuICAgICAgICB0ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAgICAgICBmb250LWZhbWlseTogUG9wcGlucywgc2Fucy1zZXJpZjtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFNlY3Rpb24gc3BhY2luZyBjb25zaXN0ZW5jeVxuICBzZWN0aW9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIC8vIEVuc3VyZSBjb25zaXN0ZW50IHNwYWNpbmdcbiAgICAmLnB5LTUge1xuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA0cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0cmVtICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gQmFubmVyIHNlY3Rpb25zIHdpdGggaW1hZ2VzXG4gIC5jYXJkIHtcbiAgICAmLmJvcmRlci13YXJuaW5nLFxuICAgICYuYm9yZGVyLXN1Y2Nlc3MsXG4gICAgJi5ib3JkZXItcHJpbWFyeSB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICBpbWcge1xuICAgICAgICAvLyBIb3ZlciBlZmZlY3QgcmVtb3ZlZFxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFRhYiBjb250ZW50IHRyYW5zaXRpb25zXG4gIC50YWItcGFuZSB7XG4gICAgYW5pbWF0aW9uOiBmYWRlSW4gMC4zcyBlYXNlLWluLW91dDtcbiAgfVxuXG4gIC8vIFZpZXcgQWxsIGJ1dHRvbnNcbiAgLmJ0bi1zbSB7XG4gICAgJi5idG4tb3V0bGluZS1wcmltYXJ5IHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICAuZmEtYXJyb3ctcmlnaHQge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSB0eXBvZ3JhcGh5IGFkanVzdG1lbnRzXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIC5kaXNwbGF5LTQge1xuICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgfVxuXG4gICAgLmRpc3BsYXktNiB7XG4gICAgICBmb250LXNpemU6IDEuNzVyZW07XG4gICAgfVxuXG4gICAgLmxlYWQge1xuICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgfVxuICB9XG5cbiAgLy8gRW1wdHkgc3RhdGUgc3R5bGluZ1xuICAudGV4dC1tdXRlZCB7XG4gICAgJi5weS01IHtcbiAgICAgIG9wYWNpdHk6IDAuNztcbiAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICB9XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIE5FVyBFTEVHQU5UIEhPTUVQQUdFIFNUWUxFU1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gQ29sb3IgcGFsZXR0ZSBmb3IgbHV4dXJ5IGFlc3RoZXRpY1xuICAtLWx1eHVyeS1nb2xkOiAjZDRhZjM3O1xuICAtLXNvZnQtY3JlYW06ICNmYWY5ZjY7XG4gIC0tZGVlcC1jaGFyY29hbDogIzJjMmMyYztcbiAgLS13YXJtLWdyYXk6ICM2YjZiNmI7XG5cbiAgLy8gQ29tbW9uIHNlY3Rpb24gdGl0bGUgc3R5bGVzXG4gIC5zZWN0aW9uLXRpdGxlIHtcbiAgICBmb250LWZhbWlseTogXCJQbGF5ZmFpciBEaXNwbGF5XCIsIHNlcmlmO1xuICAgIGZvbnQtc2l6ZTogNDJweDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGNvbG9yOiB2YXIoLS1kZWVwLWNoYXJjb2FsKTtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICB9XG4gIH1cblxuICAudGl0bGUtdW5kZXJsaW5lIHtcbiAgICB3aWR0aDogNjBweDtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1sdXh1cnktZ29sZCk7XG4gICAgbWFyZ2luOiAwIGF1dG8gMzBweDtcbiAgfVxuXG4gIC5zZWN0aW9uLXN1YnRpdGxlIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgY29sb3I6IHZhcigtLXdhcm0tZ3JheSk7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBtYXgtd2lkdGg6IDYwMHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG5cbiAgLy8gU2hvcCBieSBDYXRlZ29yeSBTZWN0aW9uXG4gIC5zaG9wLWJ5LWNhdGVnb3J5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhOyAvLyBCb290c3RyYXAgZ3JheS0xMDAgZm9yIHN1YnRsZSBncmF5IGJhY2tncm91bmRcblxuICAgIC5jYXRlZ29yeS1jYXJkIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIC5jYXRlZ29yeS1pbWFnZSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpO1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMTVweCAzNXB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICAgICAgICBcbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgLy8gUmVtb3ZlZCB0YWNreSB6b29tIGVmZmVjdFxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXRlZ29yeS1saW5rIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tbHV4dXJ5LWdvbGQpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNhdGVnb3J5LWltYWdlIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBoZWlnaHQ6IDMwMHB4O1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgIGJveC1zaGFkb3c6IDAgNXB4IDIwcHggcmdiYSgwLCAwLCAwLCAwLjA4KTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuY2F0ZWdvcnktaW5mbyB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiAwIDEwcHggMjBweDtcbiAgICB9XG5cbiAgICAuY2F0ZWdvcnktdGl0bGUge1xuICAgICAgZm9udC1mYW1pbHk6IFwiUGxheWZhaXIgRGlzcGxheVwiLCBzZXJpZjtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgIGNvbG9yOiB2YXIoLS1kZWVwLWNoYXJjb2FsKTtcbiAgICB9XG5cbiAgICAuY2F0ZWdvcnktbGluayB7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICAgIGNvbG9yOiAjMWUxZTU2O1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4zcyBlYXNlO1xuICAgIH1cbiAgfVxuXG4gIC8vIEZlYXR1cmVkIENvbGxlY3Rpb24gU2VjdGlvblxuICAuZmVhdHVyZWQtY29sbGVjdGlvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc29mdC1jcmVhbSk7XG5cbiAgICAuZmVhdHVyZWQtcHJvZHVjdC1jYXJkIHtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICAgICAgfVxuXG4gICAgICAvLyBPdmVycmlkZSBwcm9kdWN0IGNhcmQgc3R5bGVzIGZvciBlbGVnYW50IGxvb2tcbiAgICAgIC5jYXJkIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3gtc2hhZG93OiAwIDVweCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4wOCk7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAxMHB4IDQwcHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5idG4tb3V0bGluZS1wcmltYXJ5IHtcbiAgICAgIHBhZGRpbmc6IDEycHggNDBweDtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGJvcmRlci13aWR0aDogMnB4O1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzFlMWU1NjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMWUxZTU2O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIEFydGlzYW4gU3BvdGxpZ2h0IFNlY3Rpb25cbiAgLmFydGlzYW4tc3BvdGxpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcblxuICAgIC5hcnRpc2FuLWNhcmQge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgYm94LXNoYWRvdzogMCA1cHggMjBweCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMTVweCA0MHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG5cbiAgICAgICAgLmFydGlzYW4taW1hZ2UgaW1nIHtcbiAgICAgICAgICAvLyBSZW1vdmVkIHRhY2t5IHpvb20gZWZmZWN0XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYXJ0aXNhbi1pbWFnZSB7XG4gICAgICB3aWR0aDogMjAwcHg7XG4gICAgICBoZWlnaHQ6IDIwMHB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG8gMjVweDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBib3JkZXI6IDVweCBzb2xpZCB2YXIoLS1zb2Z0LWNyZWFtKTtcblxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2U7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmFydGlzYW4tbmFtZSB7XG4gICAgICBmb250LWZhbWlseTogXCJQbGF5ZmFpciBEaXNwbGF5XCIsIHNlcmlmO1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgY29sb3I6IHZhcigtLWRlZXAtY2hhcmNvYWwpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIH1cblxuICAgIC5hcnRpc2FuLXNwZWNpYWx0eSB7XG4gICAgICBjb2xvcjogdmFyKC0tbHV4dXJ5LWdvbGQpO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgfVxuXG4gICAgLmFydGlzYW4tZXhwZXJpZW5jZSB7XG4gICAgICBjb2xvcjogdmFyKC0td2FybS1ncmF5KTtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuXG4gICAgLmFydGlzYW4tbGluayB7XG4gICAgICBjb2xvcjogIzFlMWU1NjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1sdXh1cnktZ29sZCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gU2hvcCBieSBPY2Nhc2lvbiBTZWN0aW9uXG4gIC5zaG9wLWJ5LW9jY2FzaW9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zb2Z0LWNyZWFtKTtcblxuICAgIC5vY2Nhc2lvbi1jYXJkIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgcGFkZGluZzogNDBweCAyMHB4O1xuICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICBib3gtc2hhZG93OiAwIDVweCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4wOCk7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAxNXB4IDQwcHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcblxuICAgICAgICAub2NjYXNpb24taWNvbiB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzFlMWU1NjtcbiAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAub2NjYXNpb24taWNvbiB7XG4gICAgICB3aWR0aDogODBweDtcbiAgICAgIGhlaWdodDogODBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvIDIwcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zb2Z0LWNyZWFtKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBmb250LXNpemU6IDMycHg7XG4gICAgICBjb2xvcjogIzFlMWU1NjtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgfVxuXG4gICAgLm9jY2FzaW9uLXRpdGxlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlBsYXlmYWlyIERpc3BsYXlcIiwgc2VyaWY7XG4gICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICBjb2xvcjogdmFyKC0tZGVlcC1jaGFyY29hbCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIH1cblxuICAgIC5vY2Nhc2lvbi1zdWJ0aXRsZSB7XG4gICAgICBjb2xvcjogdmFyKC0td2FybS1ncmF5KTtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cblxuICAvLyBDYXJhdFggUHJvbWlzZSBTZWN0aW9uXG4gIC5jYXJhdHgtcHJvbWlzZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG5cbiAgICAucHJvbWlzZS1jYXJkIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDQwcHggMjBweDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIC5wcm9taXNlLWljb24ge1xuICAgICAgICAgIC8vIFJlbW92ZWQgdGFja3kgem9vbSBlZmZlY3RcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5wcm9taXNlLWljb24ge1xuICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvIDI1cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zb2Z0LWNyZWFtKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICBjb2xvcjogdmFyKC0tbHV4dXJ5LWdvbGQpO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTtcbiAgICB9XG5cbiAgICAucHJvbWlzZS10aXRsZSB7XG4gICAgICBmb250LWZhbWlseTogXCJQbGF5ZmFpciBEaXNwbGF5XCIsIHNlcmlmO1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgY29sb3I6IHZhcigtLWRlZXAtY2hhcmNvYWwpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICB9XG5cbiAgICAucHJvbWlzZS1kZXNjcmlwdGlvbiB7XG4gICAgICBjb2xvcjogdmFyKC0td2FybS1ncmF5KTtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICBtYXgtd2lkdGg6IDMwMHB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuICB9XG5cbiAgLy8gQ3VycmVudCBPZmZlcnMgU2VjdGlvbiAoUHJpdmF0ZSBTYWxlKVxuICAuY3VycmVudC1vZmZlcnMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNvZnQtY3JlYW0pO1xuXG4gICAgLnNhbGUtcHJvZHVjdC1jYXJkIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgLy8gQWRkIHN1YnRsZSBcIlByaXZhdGUgU2FsZVwiIGJhZGdlXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlByaXZhdGUgU2FsZVwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMjBweDtcbiAgICAgICAgbGVmdDogMjBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzFlMWU1NjtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBwYWRkaW5nOiA1cHggMTVweDtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIGFkanVzdG1lbnRzIGZvciBuZXcgc2VjdGlvbnNcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgLmNhdGVnb3J5LWltYWdlIHtcbiAgICAgIGhlaWdodDogMjAwcHg7XG4gICAgfVxuXG4gICAgLmNhdGVnb3J5LXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICB9XG5cbiAgICAuYXJ0aXNhbi1jYXJkIHtcbiAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgfVxuXG4gICAgLmFydGlzYW4taW1hZ2Uge1xuICAgICAgd2lkdGg6IDE1MHB4O1xuICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICB9XG5cbiAgICAucHJvbWlzZS1pY29uLFxuICAgIC5vY2Nhc2lvbi1pY29uIHtcbiAgICAgIHdpZHRoOiA3MHB4O1xuICAgICAgaGVpZ2h0OiA3MHB4O1xuICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgIH1cbiAgfVxuICBcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBDT01QUkVIRU5TSVZFIE1PQklMRSBTVFlMRVMgKDAtMTAwMHB4KVxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIFxuICAvLyBIZXJvIFNlY3Rpb24gTWVkaXVtIFNjcmVlbnMgKDEwMDAtMTIwMHB4KVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAwMXB4KSBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgLmhvbWUtaGVyby1zZWN0aW9uLWhvbWVwYWdlIHtcbiAgICAgIC5iYW5uZXJ0ZXh0IHtcbiAgICAgICAgLmJhbm5lcnRleHQtaGVhZGluZyB7XG4gICAgICAgICAgZm9udC1zaXplOiAzNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIC8vIEhlcm8gU2VjdGlvbiBNb2JpbGUgT3B0aW1pemF0aW9uXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAuaG9tZS1oZXJvLXNlY3Rpb24taG9tZXBhZ2Uge1xuICAgICAgaGVpZ2h0OiAzNTBweDtcbiAgICAgIFxuICAgICAgLmJhbm5lcnRleHQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB3aWR0aDogOTAlOyAvLyBGdWxsIHdpZHRoIHdpdGggcGFkZGluZ1xuICAgICAgICBsZWZ0OiA1JTtcbiAgICAgICAgcmlnaHQ6IDUlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgXG4gICAgICAgIC5iYW5uZXJ0ZXh0LWhlYWRpbmcge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgXG4gICAgICAgICAgLmxpbmVncmVkOjpiZWZvcmUge1xuICAgICAgICAgICAgd2lkdGg6IDE4MHB4O1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgcCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLy8gQ2VudGVyIGJ1dHRvbnNcbiAgICAgICAgZGl2IHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgXG4gICAgICAgICAgYS5idG4ge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1heC13aWR0aDogMjc1cHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0byAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgLmhvbWUtaGVyby1zZWN0aW9uLWhvbWVwYWdlIHtcbiAgICAgIGhlaWdodDogMzIwcHg7XG4gICAgICBcbiAgICAgIC5iYW5uZXJ0ZXh0IHtcbiAgICAgICAgLmJhbm5lcnRleHQtaGVhZGluZyB7XG4gICAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICAgIFxuICAgICAgICAgIC5saW5lZ3JlZDo6YmVmb3JlIHtcbiAgICAgICAgICAgIHdpZHRoOiAxNDBweDtcbiAgICAgICAgICAgIGhlaWdodDogOHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgcCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgYS5idG4ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4IDMwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgIC5ob21lLWhlcm8tc2VjdGlvbi1ob21lcGFnZSB7XG4gICAgICBoZWlnaHQ6IDI4MHB4O1xuICAgICAgXG4gICAgICAuYmFubmVydGV4dCB7XG4gICAgICAgIC5iYW5uZXJ0ZXh0LWhlYWRpbmcge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICBcbiAgICAgICAgICAubGluZWdyZWQ6OmJlZm9yZSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDZweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIHAge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIC8vIFNob3AgYnkgQ2F0ZWdvcnkgLSAyIENvbHVtbiBNb2JpbGUgTGF5b3V0XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NTBweCkge1xuICAgIC5zaG9wLWJ5LWNhdGVnb3J5IHtcbiAgICAgIC5yb3cge1xuICAgICAgICBtYXJnaW4tbGVmdDogLThweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtOHB4O1xuICAgICAgfVxuICAgICAgXG4gICAgICAuY29sLW1kLTQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogOHB4O1xuICAgICAgICBmbGV4OiAwIDAgNTAlO1xuICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgLmNhdGVnb3J5LWNhcmQge1xuICAgICAgICB6b29tOiAwLjg1O1xuICAgICAgICBcbiAgICAgICAgLmNhdGVnb3J5LWltYWdlIHtcbiAgICAgICAgICBoZWlnaHQ6IDE4MHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuY2F0ZWdvcnktaW5mbyB7XG4gICAgICAgICAgcGFkZGluZzogMCA1cHggMTVweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmNhdGVnb3J5LXRpdGxlIHtcbiAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuY2F0ZWdvcnktbGluayB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAuc2hvcC1ieS1jYXRlZ29yeSB7XG4gICAgICAuY2F0ZWdvcnktY2FyZCB7XG4gICAgICAgIHpvb206IDAuNzU7XG4gICAgICAgIFxuICAgICAgICAuY2F0ZWdvcnktaW1hZ2Uge1xuICAgICAgICAgIGhlaWdodDogMTUwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5jYXRlZ29yeS10aXRsZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAvLyBGZWF0dXJlZCBDb2xsZWN0aW9uIC0gMiBDb2x1bW4gTW9iaWxlXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NTBweCkge1xuICAgIC5mZWF0dXJlZC1jb2xsZWN0aW9uIHtcbiAgICAgIC5jb2wtbWQtNCB7XG4gICAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgICBcbiAgICAgICAgLmZlYXR1cmVkLXByb2R1Y3QtY2FyZCB7XG4gICAgICAgICAgem9vbTogMC44NTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLy8gQXJ0aXNhbiBTcG90bGlnaHQgLSBLZWVwIGFzIHNpbmdsZSBjb2x1bW4gYnV0IG9wdGltaXplXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NTBweCkge1xuICAgIC5hcnRpc2FuLXNwb3RsaWdodCB7XG4gICAgICAuY29sLW1kLTQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICBcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBcbiAgICAgIC5hcnRpc2FuLWNhcmQge1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICB6b29tOiAwLjk7XG4gICAgICAgIFxuICAgICAgICAuYXJ0aXNhbi1pbWFnZSB7XG4gICAgICAgICAgd2lkdGg6IDEyMHB4O1xuICAgICAgICAgIGhlaWdodDogMTIwcHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmFydGlzYW4tbmFtZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuYXJ0aXNhbi1zcGVjaWFsdHkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmFydGlzYW4tZXhwZXJpZW5jZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAvLyBTaG9wIGJ5IE9jY2FzaW9uIC0gMiBDb2x1bW4gTW9iaWxlXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NTBweCkge1xuICAgIC5zaG9wLWJ5LW9jY2FzaW9uIHtcbiAgICAgIC5jb2wtbWQtMyB7XG4gICAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICBcbiAgICAgICAgLm9jY2FzaW9uLWNhcmQge1xuICAgICAgICAgIHBhZGRpbmc6IDMwcHggMTVweDtcbiAgICAgICAgICB6b29tOiAwLjg1O1xuICAgICAgICAgIFxuICAgICAgICAgIC5vY2Nhc2lvbi1pY29uIHtcbiAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgXG4gICAgICAgICAgLm9jY2FzaW9uLXRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgXG4gICAgICAgICAgLm9jY2FzaW9uLXN1YnRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIC8vIENhcmF0WCBQcm9taXNlIC0gU2luZ2xlIGNvbHVtbiBvbiBtb2JpbGVcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc1MHB4KSB7XG4gICAgLmNhcmF0eC1wcm9taXNlIHtcbiAgICAgIC5jb2wtbWQtNCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgIFxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5wcm9taXNlLWNhcmQge1xuICAgICAgICAgIHpvb206IDAuOTtcbiAgICAgICAgICBcbiAgICAgICAgICAucHJvbWlzZS1pY29uIHtcbiAgICAgICAgICAgIHdpZHRoOiA3MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA3MHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgXG4gICAgICAgICAgLnByb21pc2UtdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICBcbiAgICAgICAgICAucHJvbWlzZS1kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAvLyBQcml2YXRlIFNhbGUgLSAyIENvbHVtbiBNb2JpbGVcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc1MHB4KSB7XG4gICAgLmN1cnJlbnQtb2ZmZXJzIHtcbiAgICAgIC5jb2wtbWQtMyB7XG4gICAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgICBcbiAgICAgICAgLnNhbGUtcHJvZHVjdC1jYXJkIHtcbiAgICAgICAgICB6b29tOiAwLjg1O1xuICAgICAgICAgIFxuICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAzcHggMTBweDtcbiAgICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAvLyBHZW5lcmFsIFNlY3Rpb24gQWRqdXN0bWVudHNcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc1MHB4KSB7XG4gICAgc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nOiA0MHB4IDAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgXG4gICAgLnNlY3Rpb24tdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICB9XG4gICAgXG4gICAgLnRpdGxlLXVuZGVybGluZSB7XG4gICAgICB3aWR0aDogNDBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuICAgIFxuICAgIC5zZWN0aW9uLXN1YnRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICB9XG4gICAgXG4gICAgLy8gTWFrZSBhbGwgYnV0dG9ucyBzdGFjayBvbiB2ZXJ5IHNtYWxsIHNjcmVlbnNcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgIC5idG4ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIC8vIFZlcnkgU21hbGwgU2NyZWVucyAoMzIwcHggYW5kIGJlbG93KVxuICBAbWVkaWEgKG1heC13aWR0aDogMzIwcHgpIHtcbiAgICAuaG9tZS1oZXJvLXNlY3Rpb24taG9tZXBhZ2Uge1xuICAgICAgaGVpZ2h0OiAyNTBweDtcbiAgICAgIFxuICAgICAgLmJhbm5lcnRleHQtaGVhZGluZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBVc2Ugc2luZ2xlIGNvbHVtbiBmb3IgZXZlcnl0aGluZyBvbiB2ZXJ5IHNtYWxsIHNjcmVlbnNcbiAgICAuc2hvcC1ieS1jYXRlZ29yeSxcbiAgICAuZmVhdHVyZWQtY29sbGVjdGlvbixcbiAgICAuc2hvcC1ieS1vY2Nhc2lvbixcbiAgICAuY3VycmVudC1vZmZlcnMge1xuICAgICAgLmNvbC1tZC00LFxuICAgICAgLmNvbC1tZC0zIHtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgXG4gICAgICAgIC8vIFJlc2V0IHpvb20gZm9yIHNpbmdsZSBjb2x1bW5cbiAgICAgICAgLmNhdGVnb3J5LWNhcmQsXG4gICAgICAgIC5mZWF0dXJlZC1wcm9kdWN0LWNhcmQsXG4gICAgICAgIC5vY2Nhc2lvbi1jYXJkLFxuICAgICAgICAuc2FsZS1wcm9kdWN0LWNhcmQge1xuICAgICAgICAgIHpvb206IDE7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQW5pbWF0aW9uc1xuQGtleWZyYW1lcyBmYWRlSW5VcCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbiIsIi8qKlxuICogU2hvcCBQYWdlIFN0eWxlc1xuICogU3R5bGVzIHNwZWNpZmljIHRvIHRoZSBzaG9wL2NhdGFsb2cgcGFnZXNcbiAqL1xuXG4ucGFnZV9pc19zaG9wX3BhZ2Uge1xuICAvLyBTaG9wIHBhZ2Ugd3JhcHBlclxuICAuc2hvcC1wYWdlIHtcbiAgICBtaW4taGVpZ2h0OiA2MHZoO1xuICAgIFxuICAgIC8vIFBhZ2UgaGVhZGVyIHdpdGggaWNvblxuICAgIGgxIHtcbiAgICAgIC50ZXh0LXB1cnBsZSB7XG4gICAgICAgIGNvbG9yOiAjYTM3ZWJhO1xuICAgICAgfVxuICAgICAgXG4gICAgICAudGV4dC10ZWFsIHtcbiAgICAgICAgY29sb3I6ICM3ZWJhYWQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAvLyBTb3J0IGRyb3Bkb3duXG4gIC5kcm9wZG93bi1pdGVtLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtbGlnaHQpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICfinJMnO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG4gICAgICBjb2xvcjogdmFyKC0tYnMtc3VjY2Vzcyk7XG4gICAgfVxuICB9XG4gIFxuICAvLyBWaWV3IHRvZ2dsZSBidXR0b25zXG4gIC52aWV3LXRvZ2dsZS1idG4ge1xuICAgICYuZGlzYWJsZWQge1xuICAgICAgb3BhY2l0eTogMC42O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB9XG4gIH1cbiAgXG4gIC8vIExpc3QgdmlldyBzcGVjaWZpYyBzdHlsZXNcbiAgLmxpc3QtdmlldyB7XG4gICAgLmNhcmQge1xuICAgICAgLy8gSG92ZXIgZWZmZWN0IHJlbW92ZWQgZm9yIGNsZWFuZXIgZGVzaWduXG4gICAgfVxuICB9XG4gIFxuICAvLyBQcm9kdWN0cyBsb2FkaW5nIHN0YXRlXG4gIC5wcm9kdWN0cy1jb250YWluZXIge1xuICAgICYubG9hZGluZyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtaW4taGVpZ2h0OiA0MDBweDtcbiAgICAgIFxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgfVxuICAgICAgXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIG1hcmdpbjogLTIwcHggMCAwIC0yMHB4O1xuICAgICAgICBib3JkZXI6IDRweCBzb2xpZCAjZjNmM2YzO1xuICAgICAgICBib3JkZXItdG9wOiA0cHggc29saWQgdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgYW5pbWF0aW9uOiBzcGluIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgICAgICAgei1pbmRleDogMTE7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAvLyBGaWx0ZXIgc2lkZWJhciBlbmhhbmNlbWVudHMgIFxuICAuZmlsdGVyLXNpZGViYXItY2FyZCB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDFyZW07XG4gICAgXG4gICAgLmZpbHRlci1zZWN0aW9uIHtcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpICFpbXBvcnRhbnQ7XG4gICAgICBcbiAgICAgIC5zb3J0LW9wdGlvbixcbiAgICAgIC5kaWFtb25kLXNoYXBlLW9wdGlvbiB7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICAgICAgICBcbiAgICAgICAgJi5hY3RpdmUsXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLXByaW1hcnkpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIFxuICAgICAgLmRpYW1vbmQtc2hhcGUtb3B0aW9uIHtcbiAgICAgICAgYXNwZWN0LXJhdGlvOiAxO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJzLXByaW1hcnkpICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIFxuICAgICAgLy8gRmlsdGVyIGNvdW50IGJhZGdlc1xuICAgICAgaDYgLmZpbHRlci1jb3VudC1iYWRnZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgICAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAvLyBBY3RpdmUgZmlsdGVyIHZpc3VhbCBmZWVkYmFja1xuICAuZmlsdGVyLWFjdGl2ZSB7XG4gICAgLy8gVGV4dCBpbnB1dHMgYW5kIHNlbGVjdHNcbiAgICAmLmZvcm0tY29udHJvbCxcbiAgICAmLmZvcm0tc2VsZWN0IHtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSkgIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKHZhcigtLWJzLXByaW1hcnktcmdiKSwgMC4xNSk7XG4gICAgfVxuICAgIFxuICAgIC8vIENoZWNrYm94ZXMgY29udGFpbmVyXG4gICAgJi5mb3JtLWNoZWNrIHtcbiAgICAgIC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLy8gRmlsdGVyIGZlZWRiYWNrIHRyYW5zaXRpb25zXG4gIC5mb3JtLWNvbnRyb2wsXG4gIC5mb3JtLXNlbGVjdCxcbiAgLmZvcm0tY2hlY2stbGFiZWwge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICB9XG4gIFxuICAvLyBBY3RpdmUgZmlsdGVycyBzdHlsaW5nXG4gIC5hY3RpdmUtZmlsdGVycy1jYXJkIHtcbiAgICAuYmFkZ2Uge1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBcbiAgICAgIGEge1xuICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluLW91dDtcbiAgICAgICAgXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIC8vIFByaWNlIHJhbmdlIHNsaWRlciAoaWYgdXNpbmcgalF1ZXJ5IFVJKVxuICAucHJpY2UtcmFuZ2Utc2xpZGVyIHtcbiAgICBtYXJnaW46IDFyZW0gMC41cmVtO1xuICAgIFxuICAgIC51aS1zbGlkZXItcmFuZ2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgfVxuICAgIFxuICAgIC51aS1zbGlkZXItaGFuZGxlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgICBcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSh2YXIoLS1icy1wcmltYXJ5LXJnYiksIDAuMjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLy8gTW9iaWxlIGZpbHRlciBidXR0b25cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgLmZpbHRlci10b2dnbGUtbW9iaWxlIHtcbiAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICB0b3A6IDcwcHg7XG4gICAgICB6LWluZGV4OiAxMDA7XG4gICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgIH1cbiAgfVxufVxuXG4vLyBMb2FkaW5nIHNwaW5uZXIgYW5pbWF0aW9uXG5Aa2V5ZnJhbWVzIHNwaW4ge1xuICAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gIDEwMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9XG59XG5cbi8vIEN1c3RvbSBiYWRnZSBjb2xvcnMgKHVzZWQgdGhyb3VnaG91dCB0aGUgYXBwKVxuLmJnLXB1cnBsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhMzdlYmEgIWltcG9ydGFudDtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4uYmctdGVhbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3ZWJhYWQgIWltcG9ydGFudDtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4udGV4dC1wdXJwbGUge1xuICBjb2xvcjogI2EzN2ViYSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC10ZWFsIHtcbiAgY29sb3I6ICM3ZWJhYWQgIWltcG9ydGFudDtcbn1cblxuLy8gRmlsdGVyIG9mZmNhbnZhcyBjdXN0b21pemF0aW9uXG4jZmlsdGVyT2ZmY2FudmFzIHtcbiAgLm9mZmNhbnZhcy1ib2R5IHtcbiAgICAvLyBSZW1vdmUgY2FyZCBzdHlsaW5nIGluIG1vYmlsZVxuICAgIC5maWx0ZXItZm9ybSAuY2FyZCB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBcbiAgICAgIC5jYXJkLWJvZHkge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLy8gQXBwbHkgYnV0dG9uIGZvciBtb2JpbGUgKGlmIGFkZGVkKVxuICAuYXBwbHktZmlsdGVycy1tb2JpbGUge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgbWFyZ2luOiAwIC0xcmVtIC0xcmVtO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1icy1ncmF5LTMwMCk7XG4gIH1cbn1cblxuLy8gUmVzcG9uc2l2ZSBhZGp1c3RtZW50c1xuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG4gIC5wYWdlX2lzX3Nob3BfcGFnZSB7XG4gICAgLnNob3AtcGFnZSB7XG4gICAgICAvLyBTdGFjayBoZWFkZXIgZWxlbWVudHMgb24gbW9iaWxlXG4gICAgICAucGFnZS1oZWFkZXIge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICAgICAgICBnYXA6IDFyZW07XG4gICAgICAgIFxuICAgICAgICBoMSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5kcm9wZG93biB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgXG4gICAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIFxuICAgICAgLy8gRnVsbCB3aWR0aCB2aWV3IHRvZ2dsZSBvbiBtb2JpbGVcbiAgICAgIC52aWV3LXRvZ2dsZS1idG4ge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi8qKlxuICogU2hvcHBpbmcgQ2FydCBQYWdlIFN0eWxlc1xuICogU3R5bGVzIHNwZWNpZmljIHRvIHRoZSBzaG9wcGluZyBjYXJ0IHBhZ2VzXG4gKi9cblxuLnBhZ2VfaXNfY2FydF9wYWdlLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2Uge1xuICBcbiAgLy8gQWxlcnQgc3BhY2luZyBmaXggZm9yIG11bHRpcGxlIHNlbGxlciBub3RpY2VcbiAgLmNhcmQtYm9keSA+IC5hbGVydCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweCAhaW1wb3J0YW50O1xuICB9XG4gIC8vIEN1c3RvbSBiYWRnZSBjb2xvcnMgZm9yIHByb2R1Y3QgdHlwZXNcbiAgLmJnLXB1cnBsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2EzN2ViYSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICB9XG4gIFxuICAuYmctdGVhbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzdlYmFhZCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICB9XG4gIFxuICAvLyBDYXJ0IHF1YW50aXR5IGNvbnRyb2xzXG4gIC5jYXJ0LXF1YW50aXR5LWNvbnRyb2wge1xuICAgIG1heC13aWR0aDogMTIwcHg7XG4gICAgXG4gICAgLmJ0biB7XG4gICAgICB3aWR0aDogMzhweDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBcbiAgICAgIGkge1xuICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjZGVlMmU2O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLy8gRW5oYW5jZWQgY2FydCB0YWJsZSBzdHlsaW5nIHdpdGggZml4ZWQgY29sdW1uIHdpZHRoc1xuICAudGFibGUge1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gICAgXG4gICAgLmFsaWduLW1pZGRsZSB7XG4gICAgICB0ZCB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIERlZmluZSBjb2x1bW4gd2lkdGhzIGZvciBjb25zaXN0ZW5jeSBhY3Jvc3Mgc2VsbGVyIHRhYmxlc1xuICAgIHRoZWFkIHRoIHtcbiAgICAgIC8vIFByb2R1Y3QgY29sdW1uIChpbWFnZSArIHRpdGxlKSAtIGZsZXhpYmxlIHdpZHRoXG4gICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuICAgICAgXG4gICAgICAvLyBQcmljZSBjb2x1bW4gLSAxMDBweFxuICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICB9XG4gICAgICBcbiAgICAgIC8vIFF1YW50aXR5IGNvbHVtbiAtIDEyNXB4XG4gICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgIHdpZHRoOiAxMjVweDtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgLy8gVG90YWwgY29sdW1uIC0gMTAwcHhcbiAgICAgICY6bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgfVxuICAgICAgXG4gICAgICAvLyBBY3Rpb24gY29sdW1uIC0gNjBweFxuICAgICAgJjpudGgtY2hpbGQoNSkge1xuICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gQXBwbHkgc2FtZSB3aWR0aHMgdG8gdGQgZWxlbWVudHNcbiAgICB0ZCB7XG4gICAgICAvLyBQcm9kdWN0IGNvbHVtblxuICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICAvLyBGaXhlZCB3aWR0aCBmb3IgaW1hZ2UgY29udGFpbmVyXG4gICAgICAgIC5tZS0zIHtcbiAgICAgICAgICB3aWR0aDogOTBweDtcbiAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgXG4gICAgICAvLyBQcmljZSBjb2x1bW5cbiAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgLy8gUXVhbnRpdHkgY29sdW1uXG4gICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgIHdpZHRoOiAxMjVweDtcbiAgICAgICAgLmNhcnQtcXVhbnRpdHktY29udHJvbCB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMjBweDtcbiAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgXG4gICAgICAvLyBUb3RhbCBjb2x1bW4gIFxuICAgICAgJjpudGgtY2hpbGQoNCkge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgfVxuICAgICAgXG4gICAgICAvLyBBY3Rpb24gY29sdW1uXG4gICAgICAmOm50aC1jaGlsZCg1KSB7XG4gICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIFByb2R1Y3QgaW1hZ2Ugc3R5bGluZ1xuICAgIGltZyB7XG4gICAgICAvLyBIb3ZlciBlZmZlY3QgcmVtb3ZlZFxuICAgIH1cbiAgICBcbiAgICAvLyBSZW1vdmUgYnV0dG9uIHN0eWxpbmdcbiAgICAucmVtb3ZlLWl0ZW0tYnRuIHtcbiAgICAgIC8vIEhvdmVyIGVmZmVjdCByZW1vdmVkXG4gICAgfVxuICB9XG4gIFxuICAvLyBDYXJ0IHN1bW1hcnkgZW5oYW5jZW1lbnRzXG4gIC5jYXJkIHtcbiAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7IC8vIFNxdWFyZSBjb3JuZXJzXG4gICAgXG4gICAgJi5wb3NpdGlvbi1zdGlja3kge1xuICAgICAgei1pbmRleDogMTAyMDtcbiAgICB9XG4gICAgXG4gICAgLy8gTWFrZSBjYXJ0IHN1bW1hcnkgc3RpY2t5IG9uIGRlc2t0b3BcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICYuY2FydC1zdW1tYXJ5IHtcbiAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgdG9wOiAycmVtO1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgJi5iZy1wcmltYXJ5IHtcbiAgICAgICAgYmFja2dyb3VuZDogIzFlMWU1NiAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgXG4gICAgICAgIGg1IHtcbiAgICAgICAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTsgLy8gQmlnZ2VyIGNhcnQgc3VtbWFyeSB0aXRsZVxuICAgICAgICAgIFxuICAgICAgICAgIGkge1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIFByb21vIGNvZGUgc2VjdGlvblxuICAgIC5hbGVydC1zdWNjZXNzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjUsIDEzNSwgODQsIDAuMSkgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjUsIDEzNSwgODQsIDAuMikgIWltcG9ydGFudDtcbiAgICAgIFxuICAgICAgLmJ0bi1vdXRsaW5lLWRhbmdlciB7XG4gICAgICAgIC0tYnMtYnRuLWJvcmRlci13aWR0aDogMXB4O1xuICAgICAgICAtLWJzLWJ0bi1ob3Zlci1iZzogI2RjMzU0NTtcbiAgICAgICAgLS1icy1idG4taG92ZXItY29sb3I6IHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBFbmhhbmNlZCB0b3RhbCBzZWN0aW9uXG4gICAgLmJnLWxpZ2h0IHtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNmOGY5ZmEgMCUsICNlOWVjZWYgMTAwJSkgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG4gICAgfVxuICAgIFxuICAgIC8vIENoZWNrb3V0IGJ1dHRvbiBlbmhhbmNlbWVudFxuICAgIC5idG4tc3VjY2VzcyB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMzIzMjhhICFpbXBvcnRhbnQ7IC8vIEJyaWdodGVyIGNvbXBsZW1lbnRhcnkgY29sb3IgdG8gbmF2eVxuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGZvbnQtc2l6ZTogMC45NXJlbTsgLy8gU2xpZ2h0bHkgc21hbGxlciBmb250XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgcGFkZGluZzogMC43NXJlbSAxLjVyZW07XG4gICAgICBcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjNDU0NWE4ICFpbXBvcnRhbnQ7IC8vIEV2ZW4gYnJpZ2h0ZXIgb24gaG92ZXJcbiAgICAgICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICBcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoNTAsIDUwLCAxMzgsIDAuMjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLy8gRW1wdHkgY2FydCBzdGF0ZVxuICAuY2FyZC1ib2R5IHtcbiAgICAmLnRleHQtY2VudGVyIHtcbiAgICAgIC5mYS1zaG9wcGluZy1jYXJ0IHtcbiAgICAgICAgb3BhY2l0eTogMC42O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgICB9XG4gICAgICBcbiAgICAgIC5idG4tcHJpbWFyeSB7XG4gICAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMnJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLy8gUmVzcG9uc2l2ZSBhZGp1c3RtZW50c1xuICBAbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgICAucG9zaXRpb24tc3RpY2t5IHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgfVxuICAgIFxuICAgIC5jYXJkLWZvb3RlciB7XG4gICAgICAuZC1mbGV4IHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZ2FwOiAxcmVtO1xuICAgICAgICBcbiAgICAgICAgLmJ0biB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuICAgIC50YWJsZS1yZXNwb25zaXZlIHtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBcbiAgICAgIC5iYWRnZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgLmNhcnQtcXVhbnRpdHktY29udHJvbCB7XG4gICAgICAgIG1heC13aWR0aDogMTAwcHg7XG4gICAgICAgIFxuICAgICAgICAuYnRuIHtcbiAgICAgICAgICB3aWR0aDogMzJweDtcbiAgICAgICAgICBwYWRkaW5nOiAwLjI1cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLyoqXG4gKiBJdGVtIERldGFpbHMgUGFnZSAtIENvbXBsZXRlIFJlZGVzaWduXG4gKiBBbWF6b24vZUJheSBpbnNwaXJlZCBsYXlvdXQgd2l0aCBwcm9wZXIgdmlzdWFsIGhpZXJhcmNoeVxuICogQm9keSBjbGFzczogLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2VcbiAqL1xuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSB7XG4gIC8vIEJhc2UgY29udGFpbmVyIGFkanVzdG1lbnRzIGZvciB0aGUgbWFpbiBwYWdlIGJvZHkgb25seVxuICAuY29udGFpbmVyLnBhZ2UtYm9keSB7XG4gICAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gTWFpbiBQcm9kdWN0IFNlY3Rpb25cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC5wcm9kdWN0LW1haW4ge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBnYXA6IDMwcHg7XG4gICAgfVxuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIEdhbGxlcnkgU2VjdGlvbiAoTGVmdClcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC5wcm9kdWN0LWdhbGxlcnkge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgZmxleDogMCAwIDQ1MHB4O1xuICAgICAgbWF4LXdpZHRoOiA0NTBweDtcbiAgICB9XG5cbiAgICAvLyBNYWluIGltYWdlIGNvbnRhaW5lclxuICAgIC5tYWluLWltYWdlLWNvbnRhaW5lciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAvLyBBc3BlY3QgcmF0aW8gYm94IGZvciBjb25zaXN0ZW50IGhlaWdodFxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMDAlOyAvLyAxOjEgYXNwZWN0IHJhdGlvXG4gICAgICB9XG5cbiAgICAgIC5tYWluLWltYWdlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIH1cblxuICAgICAgLy8gWm9vbSBpY29uIG92ZXJsYXlcbiAgICAgIC56b29tLWhpbnQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMTBweDtcbiAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFRodW1ibmFpbCBncmlkXG4gICAgLnRodW1ibmFpbC1ncmlkIHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCg3MHB4LCAxZnIpKTtcbiAgICAgIGdhcDogOHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcblxuICAgICAgLnRodW1ibmFpbC1pdGVtIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjZTBlMGUwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAvLyBTcXVhcmUgYXNwZWN0IHJhdGlvXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICBwYWRkaW5nOiAzcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMWUxZTU2O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMjMyZjNlO1xuICAgICAgICAgIG9wYWNpdHk6IDAuODtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFBERiBwbGFjZWhvbGRlclxuICAgICAgICAmLnBkZi1wbGFjZWhvbGRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgICAucGRmLWljb24ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgICAgY29sb3I6ICM2NjY7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gVmlkZW8gcGxhY2Vob2xkZXJcbiAgICAgICAgJi52aWRlby1wbGFjZWhvbGRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogIzAwMDtcblxuICAgICAgICAgIC5wbGF5LWljb24ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEb2N1bWVudC9NZWRpYSBzZWN0aW9uXG4gICAgLm1lZGlhLXNlY3Rpb24ge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlMGUwZTA7XG4gICAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgICAgIGg2IHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICBjb2xvcjogIzMzMztcbiAgICAgIH1cblxuICAgICAgLm1lZGlhLXBsYWNlaG9sZGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2Y4ZjhmODtcbiAgICAgICAgYm9yZGVyOiAxcHggZGFzaGVkICNjY2M7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgY29sb3I6ICM2NjY7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAgICAgICBpIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmb250LXNpemU6IDMycHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICBjb2xvcjogIzk5OTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBQcm9kdWN0IEluZm8gU2VjdGlvbiAoUmlnaHQpXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAucHJvZHVjdC1pbmZvIHtcbiAgICBmbGV4OiAxO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2UwZTBlMDtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgcGFkZGluZzogMjBweDtcblxuICAgIC8vIFRpdGxlIHNlY3Rpb25cbiAgICAucHJvZHVjdC10aXRsZSB7XG4gICAgICBmb250LXNpemU6IDEuNzVyZW07XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICBjb2xvcjogIzBmMTExMTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTBlMGUwO1xuICAgIH1cblxuICAgIC8vIFByaWNlIHNlY3Rpb25cbiAgICAucHJpY2Utc2VjdGlvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2UwZTBlMDtcblxuICAgICAgLnByaWNlLXJvdyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbiAgICAgICAgZ2FwOiAxNXB4O1xuXG4gICAgICAgIC5jdXJyZW50LXByaWNlIHtcbiAgICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIH1cblxuICAgICAgICAub3JpZ2luYWwtcHJpY2Uge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICBjb2xvcjogIzU2NTk1OTtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kaXNjb3VudC1iYWRnZSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogI2NjMGMzOTtcbiAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgcGFkZGluZzogNHB4IDhweDtcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAucHJpY2UtZGV0YWlscyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBjb2xvcjogIzAwNzE4NTtcblxuICAgICAgICAuc2hpcHBpbmctaW5mbyB7XG4gICAgICAgICAgY29sb3I6ICM1NjU5NTk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gUmV2aWV3cyBzdW1tYXJ5IGlubGluZSB3aXRoIHByaWNlXG4gICAgICAucmV2aWV3cy1zdW1tYXJ5LWlubGluZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcblxuICAgICAgICAucmV2aWV3cy1saW5rIHtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgY29sb3I6ICMwMDcxODU7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAjYzQ1NTAwO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnN0YXJzIHtcbiAgICAgICAgICAgIGNvbG9yOiAjMWUxZTU2O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnJldmlldy1jb3VudCB7XG4gICAgICAgICAgICBjb2xvcjogIzAwNzE4NTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZWxsZXIgY2FyZFxuICAgIC5zZWxsZXItY2FyZCB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAuc2VsbGVyLWhlYWRlciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogMTJweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAgICAgICAuc2VsbGVyLWF2YXRhciB7XG4gICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjZGRkO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNlbGxlci1pbmZvIHtcbiAgICAgICAgICBmbGV4OiAxO1xuXG4gICAgICAgICAgLnNlbGxlci1uYW1lIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBjb2xvcjogIzBmMTExMTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJweDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNjNDU1MDA7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuc2VsbGVyLXJhdGluZyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICBjb2xvcjogIzU2NTk1OTtcblxuICAgICAgICAgICAgLnN0YXJzIHtcbiAgICAgICAgICAgICAgY29sb3I6ICMxZTFlNTY7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuc2VsbGVyLWRldGFpbHMge1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIGNvbG9yOiAjNTY1OTU5O1xuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuXG4gICAgICAgIC5kZXRhaWwtcm93IHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzcHg7XG5cbiAgICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgY29sb3I6ICMwZjExMTE7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU3RvY2sgc3RhdHVzXG4gICAgLnN0b2NrLXN0YXR1cyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuXG4gICAgICAmLmluLXN0b2NrIHtcbiAgICAgICAgY29sb3I6ICMwMDc2MDA7XG4gICAgICB9XG5cbiAgICAgICYubG93LXN0b2NrIHtcbiAgICAgICAgY29sb3I6ICNiMTI3MDQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICB9XG5cbiAgICAgICYub3V0LW9mLXN0b2NrIHtcbiAgICAgICAgY29sb3I6ICNiMTI3MDQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUHJvZHVjdCBvcHRpb25zXG4gICAgLnByb2R1Y3Qtb3B0aW9ucyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAub3B0aW9uLWdyb3VwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTBlMGUwO1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5vcHRpb24tbGFiZWwge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgIGNvbG9yOiAjMGYxMTExO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIENvbG9yIHN3YXRjaGVzXG4gICAgICAgIC5jb2xvci1vcHRpb25zIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGdhcDogOHB4O1xuICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgICAgIC5jb2xvci1zd2F0Y2gge1xuICAgICAgICAgICAgd2lkdGg6IDMycHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDMycHg7XG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjZTBlMGUwO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzFlMWU1NjtcblxuICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCLinJNcIjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICB0ZXh0LXNoYWRvdzogMCAwIDJweCByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzIzMmYzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTaXplIHNlbGVjdG9yXG4gICAgICAgIHNlbGVjdC5mb3JtLXNlbGVjdCB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICM4ODhjOGM7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoMTUsIDE3LCAxNywgMC4xNSk7XG5cbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2U3NzYwMDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAzcHggMnB4IHJnYmEoMjI4LCAxMjEsIDE3LCAwLjUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEN1c3RvbSBvcHRpb24gcGxhY2Vob2xkZXJcbiAgICAgICAgLmN1c3RvbS1vcHRpb24tcGxhY2Vob2xkZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNmNWY1ZjU7XG4gICAgICAgICAgYm9yZGVyOiAxcHggZGFzaGVkICNjY2M7XG4gICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgY29sb3I6ICM2NjY7XG4gICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUXVhbnRpdHkgc2VsZWN0b3JcbiAgICAucXVhbnRpdHktc2VjdGlvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAucXVhbnRpdHktbGFiZWwge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgICAgIH1cblxuICAgICAgLnF1YW50aXR5LXNlbGVjdG9yIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM4ODhjOGM7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAucXR5LWJ0biB7XG4gICAgICAgICAgYmFja2dyb3VuZDogI2YwZjJmMjtcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgcGFkZGluZzogOHB4IDEycHg7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICBjb2xvcjogIzBmMTExMTtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2UzZTZlNjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZGRkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5xdHktaW5wdXQge1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG5cbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmN2U2O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFjdGlvbiBidXR0b25zXG4gICAgLmFjdGlvbi1idXR0b25zIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTBlMGUwO1xuXG4gICAgICAvLyBMZXQgQm9vdHN0cmFwIGhhbmRsZSBhbGwgYnV0dG9uIHN0eWxpbmdcbiAgICAgIC8vIFRoZSBidXR0b25zIHVzZSBzdGFuZGFyZCBCb290c3RyYXAgY2xhc3NlczpcbiAgICAgIC8vIC0gYnRuIGJ0bi1wcmltYXJ5IGJ0bi1sZyBmb3IgQWRkIHRvIENhcnRcbiAgICAgIC8vIC0gYnRuIGJ0bi1vdXRsaW5lLXNlY29uZGFyeSBidG4tbGcgZm9yIFdpc2hsaXN0XG4gICAgfVxuXG4gICAgLy8gVHJ1c3QgYmFkZ2VzXG4gICAgLnRydXN0LWJhZGdlcyB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgxMDBweCwgMWZyKSk7XG4gICAgICBnYXA6IDE1cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAuYmFkZ2UtaXRlbSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBpIHtcbiAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgY29sb3I6ICMxZTFlNTY7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmJhZGdlLXRleHQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICBjb2xvcjogIzU2NTk1OTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIFByb2R1Y3QgRGV0YWlscyBTZWN0aW9uXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAucHJvZHVjdC1kZXRhaWxzLXNlY3Rpb24ge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlMGUwZTA7XG4gICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcblxuICAgIC5kZXRhaWxzLWNvbnRhaW5lciB7XG4gICAgICBtYXgtd2lkdGg6IDEwMDBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cblxuICAgIC8vIFNlY3Rpb24gaGVhZGVyc1xuICAgIC5zZWN0aW9uLWhlYWRlciB7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgY29sb3I6ICMwZjExMTE7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzFlMWU1NjtcbiAgICB9XG5cbiAgICAvLyBLZXkgZmVhdHVyZXNcbiAgICAua2V5LWZlYXR1cmVzIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG5cbiAgICAgIHVsIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuXG4gICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwi4pyTXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgY29sb3I6ICMxZTFlNTY7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEZXNjcmlwdGlvblxuICAgIC5wcm9kdWN0LWRlc2NyaXB0aW9uIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBsaW5lLWhlaWdodDogMS44O1xuICAgICAgY29sb3I6ICMwZjExMTE7XG5cbiAgICAgIHAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFZpZGVvIFNlY3Rpb25cbiAgICAudmlkZW8tc2VjdGlvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gICAgICAudmlkZW8tY29udGFpbmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBcbiAgICAgICAgLy8gVGhlIHZpZGVvLWVtYmVkLXdyYXBwZXIgaXMgZ2VuZXJhdGVkIGJ5IFZpZGVvRW1iZWRIZWxwZXJcbiAgICAgICAgLnZpZGVvLWVtYmVkLXdyYXBwZXIge1xuICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICBcbiAgICAgICAgICAvLyBNUDQgdmlkZW8gcGxheWVyIHNwZWNpZmljIHN0eWxlc1xuICAgICAgICAgICYubXA0LXZpZGVvLXdyYXBwZXIge1xuICAgICAgICAgICAgLnZpZGVvLWpzIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgIC8vIE92ZXJyaWRlIFZpZGVvLmpzIGRlZmF1bHQgYmlnIHBsYXkgYnV0dG9uXG4gICAgICAgICAgICAgIC52anMtYmlnLXBsYXktYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDNlbTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxLjVlbTtcbiAgICAgICAgICAgICAgICB3aWR0aDogM2VtO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuM2VtO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNDMsIDUxLCA2MywgMC43KTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDAuMDY2NjZlbSBzb2xpZCAjZmZmO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgLy8gQ29udHJvbCBiYXIgc3R5bGluZ1xuICAgICAgICAgICAgICAudmpzLWNvbnRyb2wtYmFyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDQzLCA1MSwgNjMsIDAuNyk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTcGVjaWZpY2F0aW9ucyB0YWJsZVxuICAgIC5zcGVjaWZpY2F0aW9ucyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gICAgICAuc3BlYy10YWJsZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuXG4gICAgICAgIHRyIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2UwZTBlMDtcblxuICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRoIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICAgICAgICAgIHBhZGRpbmc6IDEycHg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICBjb2xvcjogIzBmMTExMTtcbiAgICAgICAgICB3aWR0aDogMzAlO1xuICAgICAgICB9XG5cbiAgICAgICAgdGQge1xuICAgICAgICAgIHBhZGRpbmc6IDEycHg7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIGNvbG9yOiAjNTY1OTU5O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2hpcHBpbmcgaW5mbyBib3hcbiAgICAuc2hpcHBpbmctcmV0dXJucy1ib3gge1xuICAgICAgYmFja2dyb3VuZDogI2Y1ZjdmYTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkNWQ5ZDk7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcblxuICAgICAgLmJveC1oZWFkZXIge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGNvbG9yOiAjMGYxMTExO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuXG4gICAgICAgIGkge1xuICAgICAgICAgIGNvbG9yOiAjMWUxZTU2O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5pbmZvLWdyaWQge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDI1MHB4LCAxZnIpKTtcbiAgICAgICAgZ2FwOiAyMHB4O1xuXG4gICAgICAgIC5pbmZvLWl0ZW0ge1xuICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBjb2xvcjogIzBmMTExMTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICB1bCB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgIGNvbG9yOiAjNTY1OTU5O1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCLigKJcIjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzg4ODtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBUYWJzIFNlY3Rpb24gKFJldmlld3MgJiBRJkEpXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAudGFicy1zZWN0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuXG4gICAgLm5hdi10YWJzIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZTBlMGUwO1xuXG4gICAgICAubmF2LWxpbmsge1xuICAgICAgICBjb2xvcjogIzU2NTk1OTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIHBhZGRpbmc6IDEycHggMjBweDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAjMGYxMTExO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgY29sb3I6ICMwZjExMTE7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzFlMWU1NjtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRhYi1jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDMwcHggMDtcblxuICAgICAgLy8gUmV2aWV3cyB0YWJcbiAgICAgIC5yZXZpZXdzLWNvbnRlbnQge1xuICAgICAgICAucmV2aWV3LXN1bW1hcnkge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG4gICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcblxuICAgICAgICAgIC5hdmVyYWdlLXJhdGluZyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogMTVweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG5cbiAgICAgICAgICAgIC5yYXRpbmctbnVtYmVyIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiA0OHB4O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgICBjb2xvcjogIzBmMTExMTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnN0YXJzIHtcbiAgICAgICAgICAgICAgY29sb3I6ICMxZTFlNTY7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnJldmlldy1jb3VudCB7XG4gICAgICAgICAgICAgIGNvbG9yOiAjNTY1OTU5O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnJldmlldy1pdGVtIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2UwZTBlMDtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4IDA7XG5cbiAgICAgICAgICAucmV2aWV3LWhlYWRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAgICAgICAgICAgLnJldmlld2VyLW5hbWUge1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICBjb2xvcjogIzBmMTExMTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnJldmlldy1kYXRlIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICBjb2xvcjogIzU2NTk1OTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAucmV2aWV3LXJhdGluZyB7XG4gICAgICAgICAgICBjb2xvcjogIzFlMWU1NjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnJldmlldy10ZXh0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICAgICAgICBjb2xvcjogIzBmMTExMTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gUSZBIHRhYlxuICAgICAgLnFhLWNvbnRlbnQge1xuICAgICAgICAuYXNrLXF1ZXN0aW9uLWJveCB7XG4gICAgICAgICAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gICAgICAgICAgdGV4dGFyZWEge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjODg4YzhjO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcblxuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2U3NzYwMDtcbiAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDNweCAycHggcmdiYSgyMjgsIDEyMSwgMTcsIDAuNSk7XG4gICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnFhLWl0ZW0ge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTBlMGUwO1xuICAgICAgICAgIHBhZGRpbmc6IDIwcHggMDtcblxuICAgICAgICAgIC8vIFByaXZhdGUgcmVzcG9uc2Ugc3R5bGluZ1xuICAgICAgICAgICYucHJpdmF0ZS1yZXNwb25zZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkICM2Yzc1N2Q7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5wcml2YXRlLWxhYmVsIHtcbiAgICAgICAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAucXVlc3Rpb24ge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIGNvbG9yOiAjMGYxMTExO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgICAgY29sb3I6ICM1NjU5NTk7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAucXVlc3Rpb24tbWV0YSB7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgICAgY29sb3I6ICM5OTk7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5hbnN3ZXIge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgY29sb3I6ICM1NjU5NTk7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgIGNvbG9yOiAjMGYxMTExO1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmFuc3dlci1tZXRhIHtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICBjb2xvcjogIzk5OTtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gUmVsYXRlZCBQcm9kdWN0c1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLnJlbGF0ZWQtcHJvZHVjdHMge1xuICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNlMGUwZTA7XG5cbiAgICBoMyB7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgY29sb3I6ICMwZjExMTE7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cblxuICAgIC5wcm9kdWN0cy1ncmlkIHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgyMDBweCwgMWZyKSk7XG4gICAgICBnYXA6IDIwcHg7XG5cbiAgICAgIC5wcm9kdWN0LWNhcmQge1xuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2UwZTBlMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAjYzQ1NTAwO1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdC1pbWFnZSB7XG4gICAgICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdC1uYW1lIHtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgY29sb3I6ICMwZjExMTE7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgY29sb3I6ICNjNDU1MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnByb2R1Y3QtcHJpY2Uge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICBjb2xvcjogI2IxMjcwNDtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIE1vYmlsZSBTdHlsZXNcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5wcm9kdWN0LW1haW4ge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG5cbiAgICAucHJvZHVjdC1nYWxsZXJ5IHtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgIC8vIE1vYmlsZSBzd2lwZSBnYWxsZXJ5XG4gICAgICAubWFpbi1pbWFnZS1jb250YWluZXIge1xuICAgICAgICB0b3VjaC1hY3Rpb246IHBhbi15IHBpbmNoLXpvb207XG4gICAgICB9XG5cbiAgICAgIC50aHVtYm5haWwtZ3JpZCB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDYsIDFmcik7XG5cbiAgICAgICAgLnRodW1ibmFpbC1pdGVtIHtcbiAgICAgICAgICAmOm50aC1jaGlsZChuICsgNykge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgLy8gU2hvdyBvbmx5IDYgb24gbW9iaWxlXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnByb2R1Y3QtaW5mbyB7XG4gICAgICAucHJvZHVjdC10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgIH1cblxuICAgICAgLnByaWNlLXNlY3Rpb24gLmN1cnJlbnQtcHJpY2Uge1xuICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ29sbGFwc2libGUgc2VjdGlvbnMgb24gbW9iaWxlXG4gICAgLnByb2R1Y3QtZGV0YWlscy1zZWN0aW9uIHtcbiAgICAgIC5jb2xsYXBzaWJsZS1zZWN0aW9uIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlMGUwZTA7XG5cbiAgICAgICAgLnNlY3Rpb24tdG9nZ2xlIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgICAuc2VjdGlvbi10aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgY29sb3I6ICMwZjExMTE7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnRvZ2dsZS1pY29uIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIGNvbG9yOiAjNTY1OTU5O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3M7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5jb2xsYXBzZWQgLnRvZ2dsZS1pY29uIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNlY3Rpb24tY29udGVudCB7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG5cbiAgICAgICAgICAmLmNvbGxhcHNlOm5vdCguc2hvdykge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAuY29udGFpbmVyLnBhZ2UtYm9keSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgIH1cblxuICAgIC5wcm9kdWN0LWdhbGxlcnkgLnRodW1ibmFpbC1ncmlkIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG5cbiAgICAgIC50aHVtYm5haWwtaXRlbSB7XG4gICAgICAgICY6bnRoLWNoaWxkKG4gKyA1KSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgLy8gU2hvdyBvbmx5IDQgb24gc21hbGwgbW9iaWxlXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAucmVsYXRlZC1wcm9kdWN0cyAucHJvZHVjdHMtZ3JpZCB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgICAgZ2FwOiAxMHB4O1xuICAgIH1cbiAgfVxuICBcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIFByb2R1Y3QgSW5mbyBQYWRkaW5nIGZvciBMYXJnZSBTY3JlZW5zXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgLnByb2R1Y3QtaW5mbyB7XG4gICAgICBwYWRkaW5nOiAyNXB4O1xuICAgIH1cbiAgfVxuICBcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIFNlbGVjdGlvbiBFbGVtZW50cyBNYXggV2lkdGhcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC5zZWxlY3Rpb24ge1xuICAgIG1heC13aWR0aDogNTAwcHg7XG4gIH1cbiAgXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBTZWxlY3QyIERyb3Bkb3duIEFkanVzdG1lbnRzXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBGaXggdmVydGljYWwgYWxpZ25tZW50IG9mIFNlbGVjdDIgcmVuZGVyZWQgdGV4dCBvbiBpdGVtIGRldGFpbHMgcGFnZVxuICAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQge1xuICAgIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcbiAgICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogLTdweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxuICogQ2hlY2tvdXQgUGFnZSBTdHlsZXNcbiAqIEJvb3RzdHJhcCA1IGVuaGFuY2VtZW50cyBmb3Igc2luZ2xlIHBhZ2UgY2hlY2tvdXRcbiAqL1xuXG4ucGFnZV9pc19jaGVja291dF9wYWdlIHtcbiAgICAuc3RpY2t5LXRvcCB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGlja3kgIWltcG9ydGFudDtcbiAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgIHRvcDogMjBweDsgLy8gTW92ZWQgZnJvbSBpbmxpbmUgc3R5bGVcbiAgICB9XG4gICAgXG4gICAgLy8gSW5pdGlhbGx5IGhpZGRlbiBlbGVtZW50c1xuICAgICNhY2NvdW50LWNyZWF0aW9uLWZpZWxkcyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IC8vIE1vdmVkIGZyb20gaW5saW5lIHN0eWxlXG4gICAgfVxuICAgIFxuICAgICNzaGlwcGluZy1hZGRyZXNzLXNlY3Rpb24ge1xuICAgICAgICBkaXNwbGF5OiBub25lOyAvLyBNb3ZlZCBmcm9tIGlubGluZSBzdHlsZVxuICAgIH1cbiAgICBcbiAgICAvLyBPcmRlciBzdW1tYXJ5IGVuaGFuY2VtZW50c1xuICAgIC5vcmRlci1zdW1tYXJ5IHtcbiAgICAgICAgLmNhcmQge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMC4xMjUpLCAwIDAuMTI1cmVtIDAuMjVyZW0gcmdiYSgwLCAwLCAwLCAwLjA3NSk7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjZWQ0ZGE7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8vIENhcnQgaXRlbXMgc3R5bGluZ1xuICAgICAgICAuYm9yZGVyLWJvdHRvbTpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBGb3JtIHNlY3Rpb24gZW5oYW5jZW1lbnRzXG4gICAgLmNhcmQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjZWQ0ZGE7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMC4xMjVyZW0gMC4yNXJlbSByZ2JhKDAsIDAsIDAsIDAuMDc1KTtcbiAgICAgICAgXG4gICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjZWQ0ZGE7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGg1IHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzQ5NTA1NztcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIEFkZHJlc3MgdmVyaWZpY2F0aW9uIHN0eWxpbmdcbiAgICAuYWxlcnQge1xuICAgICAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtO1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICBcbiAgICAgICAgJi5hbGVydC1zdWNjZXNzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkMWVjZjE7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICNiZWU1ZWI7XG4gICAgICAgICAgICBjb2xvcjogIzBjNTQ2MDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJi5hbGVydC13YXJuaW5nIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYzY2Q7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICNmZmVhYTc7XG4gICAgICAgICAgICBjb2xvcjogIzg1NjQwNDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJi5hbGVydC1kYW5nZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZDdkYTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2Y1YzZjYjtcbiAgICAgICAgICAgIGNvbG9yOiAjNzIxYzI0O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIFBheW1lbnQgbWV0aG9kIHN0eWxpbmcgLSBvbmx5IGFwcGx5IGJvcmRlciB0byBwYXltZW50IG1ldGhvZCBmb3JtIGNoZWNrc1xuICAgICNwYXltZW50LW1ldGhvZHMgLmZvcm0tY2hlY2sge1xuICAgICAgICBwYWRkaW5nOiAwLjc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIuMjVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC4zNzVyZW07XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlLWluLW91dDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICNhZGI1YmQ7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMS41cmVtO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmZvcm0tY2hlY2staW5wdXQ6Y2hlY2tlZCB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gR2VuZXJhbCBmb3JtLWNoZWNrIHN0eWxpbmcgKGZvciBjaGVja2JveGVzL3JhZGlvcyB3aXRob3V0IGJvcmRlcnMpXG4gICAgLmZvcm0tY2hlY2sge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgICAgICBcbiAgICAgICAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xLjVyZW07XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2VkNGRhO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAmOmNoZWNrZWQge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEodmFyKC0tYnMtcHJpbWFyeS1yZ2IpLCAwLjI1KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gQWNjb3VudCBjcmVhdGlvbiBmaWVsZHMgYW5pbWF0aW9uXG4gICAgI2FjY291bnQtY3JlYXRpb24tZmllbGRzIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgfVxuICAgIFxuICAgIC8vIFNoaXBwaW5nIGFkZHJlc3Mgc2VjdGlvbiBhbmltYXRpb25cbiAgICAjc2hpcHBpbmctYWRkcmVzcy1zZWN0aW9uIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgfVxuICAgIFxuICAgIC8vIFNhdmVkIGFkZHJlc3NlcyBzZWN0aW9uIGFuaW1hdGlvblxuICAgICNzYXZlZC1hZGRyZXNzZXMtc2VjdGlvbiB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICAgIH1cbiAgICBcbiAgICAvLyBQbGFjZSBvcmRlciBidXR0b24gZW5oYW5jZW1lbnRzXG4gICAgI3BsYWNlLW9yZGVyLWJ0biB7XG4gICAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMS41cmVtO1xuICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgICAgb3BhY2l0eTogMC43O1xuICAgICAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBTZWN1cml0eSBub3RpY2Ugc3R5bGluZ1xuICAgIC50ZXh0LW11dGVkIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgXG4gICAgICAgIC5mYXMge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWJzLXN1Y2Nlc3MpO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIEZvcm0gdmFsaWRhdGlvbiBlbmhhbmNlbWVudHNcbiAgICAuZm9ybS1jb250cm9sLFxuICAgIC5mb3JtLXNlbGVjdCB7XG4gICAgICAgICYuaXMtaW52YWxpZCB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICNkYzM1NDU7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMjAsIDUzLCA2OSwgMC4yNSk7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKHZhcigtLWJzLXByaW1hcnktcmdiKSwgMC4yNSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmludmFsaWQtZmVlZGJhY2sge1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xuICAgIH1cbiAgICBcbiAgICAvLyBHdWVzdCBvciBsb2dpbiBtb2RhbCBlbmhhbmNlbWVudHNcbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwLjVyZW0gMXJlbSByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAgICAgICBcbiAgICAgICAgLm1vZGFsLWhlYWRlciB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjVyZW0gMS41cmVtIDA7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2RhbC1ib2R5IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjc1cmVtIDEuNXJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIFJlc3BvbnNpdmUgYWRqdXN0bWVudHNcbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5wYWdlX2lzX2NoZWNrb3V0X3BhZ2Uge1xuICAgICAgICAuc3RpY2t5LXRvcCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHRvcDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAub3JkZXItc3VtbWFyeSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAucGFnZV9pc19jaGVja291dF9wYWdlIHtcbiAgICAgICAgLmNvbnRhaW5lciB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5jYXJkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5yb3cge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAuY29sLW1kLTYsXG4gICAgICAgICAgICAuY29sLW1kLTMge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMC41cmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLy8gT3JkZXIgUmVjZWl2ZWQgUGFnZSBTdHlsZXNcbi5wYWdlX2lzX29yZGVyX3JlY2VpdmVkX3BhZ2Uge1xuICAgIC8vIFRhYmxlIGhlYWRpbmcgb3ZlcnJpZGVzXG4gICAgdGFibGUgdGgge1xuICAgICAgICBjb2xvcjogIzY2NjY2NiAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbiAgICAvLyBPcmRlciByZWNlaXZlZCBzZWN0aW9uc1xuICAgIC5yZWNpdmVkLWhlcm8tdGV4dCB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmNsaW50LWRldGFpbHMtZm9yb3JkZXIge1xuICAgICAgICBwYWRkaW5nOiAycmVtIDA7XG4gICAgfVxuICAgIFxuICAgIC5vcmRlci1pdGVtLWZpbmFsLWRlZHRhaWxzLWhlYWRlciB7XG4gICAgICAgIHBhZGRpbmc6IDJyZW0gMDtcbiAgICB9XG4gICAgXG4gICAgLm9yZGVyLWl0ZW0tZmluYWwtdG90YWwge1xuICAgICAgICAudGFibGUge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbSAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIEFjdGlvbiBidXR0b25zXG4gICAgLmJ0bi1iYWNrLFxuICAgIC5idG4tZXhwb3J0LFxuICAgIC5idG4tZXhwb3J0MiB7XG4gICAgICAgIG1hcmdpbjogMC41cmVtO1xuICAgIH1cbn0iLCIvKipcbiAqIEFjY291bnQgUGFnZSBTdHlsZXNcbiAqIEJvb3RzdHJhcCA1IGVuaGFuY2VtZW50cyBmb3IgdXNlciBhY2NvdW50IHBhZ2VcbiAqL1xuXG4ucGFnZV9pc19hY2NvdW50X3BhZ2Uge1xuICAgIC55b3VyLWFjY291bnQge1xuICAgICAgICAuYWNjb3VudC10YWItYnRuIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xMjUpO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgZmlsbDogY3VycmVudENvbG9yO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNztcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8vIERhc2hib2FyZCB1c2VyIGluZm8gc3R5bGluZ1xuICAgICAgICAueW91ci1hY2NvdW50LWRhc2hib2FyZCB7XG4gICAgICAgICAgICAuYmctbGlnaHQge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xMjUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvLyBDdXN0b20gb3JkZXIgc3R5bGluZ1xuICAgICAgICAuQ3VzdG9tLU9yZGVyIHtcbiAgICAgICAgICAgIC5uYXYtdGFicyB7XG4gICAgICAgICAgICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgICAgICAgICAgICAgJi5idG4tY3VzdG9tLW9yZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2RlZTJlNiAjZGVlMmU2IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2FkYjViZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmN1c3RvbS1vcmRlci10YWItY29udGVudCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwLjM3NXJlbSAwLjM3NXJlbTtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAudGFiLXBhbmUge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvLyBGb3JtIHN0eWxpbmcgZW5oYW5jZW1lbnRzXG4gICAgICAgIC5mb3JtLXRleHQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvLyBEYXRhVGFibGUgd3JhcHBlciBzdHlsaW5nXG4gICAgICAgIC5jYXJkLWJvZHkge1xuICAgICAgICAgICAgLmRhdGFUYWJsZXNfd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gQWNjb3VudCBwYWdlIHJlc3BvbnNpdmUgYWRqdXN0bWVudHNcbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5wYWdlX2lzX2FjY291bnRfcGFnZSB7XG4gICAgICAgIC55b3VyLWFjY291bnQge1xuICAgICAgICAgICAgLmFjY291bnQtdGFiLWJ0biB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0byAwLjVyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi8qIFByb2ZpbGUgUGFnZSBTdHlsZXMgKi9cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIHtcbiAgICAgICAgLyogTW9iaWxlIENvbGxhcHNpYmxlIFNlY3Rpb25zICovXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAubW9iaWxlLWNvbGxhcHNpYmxlIHtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDJyZW07XG4gICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtY29sbGFwc2libGU6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGYwNzgnOyAvKiBmYS1jaGV2cm9uLWRvd24gKi9cbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnRm9udCBBd2Vzb21lIDUgRnJlZSc7XG4gICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2U7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtY29sbGFwc2libGUuY29sbGFwc2VkOjphZnRlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKC05MGRlZyk7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtY29sbGFwc2libGU6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLWNvbGxhcHNpYmxlOmZvY3VzIHtcbiAgICAgICAgICAgIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICAgICAgICAgIG91dGxpbmUtb2Zmc2V0OiAycHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvKiBDb2xsYXBzZSBDb250ZW50ICovXG4gICAgICAgIC5tb2JpbGUtY29sbGFwc2UtY29udGVudCB7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjNzIGVhc2UsIG9wYWNpdHkgMC4zcyBlYXNlO1xuICAgICAgICAgICAgbWF4LWhlaWdodDogMjAwMHB4O1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS1jb2xsYXBzZS1jb250ZW50LmNvbGxhcHNlZCB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAwO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLyogQWRkcmVzcyBDYXJkIEV4cGFuZCBBcmVhICovXG4gICAgICAgIC5tb2JpbGUtZXhwYW5kLWFyZWEge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiAwLjVyZW07XG4gICAgICAgICAgICByaWdodDogMC41cmVtO1xuICAgICAgICAgICAgd2lkdGg6IDMycHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDMycHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1ncmF5LTEwMCk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtZXhwYW5kLWFyZWE6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtZ3JheS0yMDApO1xuICAgICAgICAgICAgLy8gUmVtb3ZlZCB0YWNreSB6b29tIGVmZmVjdFxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLWV4cGFuZC1hcmVhOmFjdGl2ZSB7XG4gICAgICAgICAgICAvLyBSZW1vdmVkIHRhY2t5IHpvb20gZWZmZWN0XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtZXhwYW5kLWFyZWEgaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvKiBUZXh0IFRydW5jYXRpb24gKi9cbiAgICAgICAgLm1vYmlsZS10ZXh0LXRydW5jYXRlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMHB4O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgMC4zcyBlYXNlO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLXRleHQtdHJ1bmNhdGU6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgdHJhbnNwYXJlbnQsIHdoaXRlKTtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLXRleHQtdHJ1bmNhdGUuZXhwYW5kZWQge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS10ZXh0LXRydW5jYXRlLmV4cGFuZGVkOjphZnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLXRleHQtdHJ1bmNhdGUgLmJ0bi1saW5rIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtdGV4dC10cnVuY2F0ZSAuYnRuLWxpbms6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogQWNjb3JkaW9uLXN0eWxlIFNlY3Rpb25zICovXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5wcm9maWxlLWNhcmQuYWNjb3JkaW9uLXN0eWxlIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucHJvZmlsZS1jYXJkLmFjY29yZGlvbi1zdHlsZSA+IGg0LFxuICAgICAgICAucHJvZmlsZS1jYXJkLmFjY29yZGlvbi1zdHlsZSA+IGg1IHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1ncmF5LTEwMCk7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYnMtZ3JheS0zMDApO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucHJvZmlsZS1jYXJkLmFjY29yZGlvbi1zdHlsZSA+IGRpdiB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIFNtb290aCBTY3JvbGxpbmcgZm9yIE1vYmlsZSAqL1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAuaG9yaXpvbnRhbC1zY3JvbGwge1xuICAgICAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAgICAgICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICAgICAgICAgICAgc2Nyb2xsYmFyLXdpZHRoOiB0aGluO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuaG9yaXpvbnRhbC1zY3JvbGw6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgICAgIGhlaWdodDogNnB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuaG9yaXpvbnRhbC1zY3JvbGw6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmMWYxZjE7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5ob3Jpem9udGFsLXNjcm9sbDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzg4ODtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmhvcml6b250YWwtc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjNTU1O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIE1vZGFsIFN3aXBlIEluZGljYXRvciAqL1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAubW9kYWwtY29udGVudDo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwLjVyZW07XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICAgIGhlaWdodDogNHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtZ3JheS00MDApO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9kYWwtZGlhbG9nIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwdmg7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIEFjY2Vzc2liaWxpdHkgSW1wcm92ZW1lbnRzICovXG4gICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgLm1vYmlsZS1jb2xsYXBzaWJsZTo6YWZ0ZXIsXG4gICAgICAgIC5tb2JpbGUtY29sbGFwc2UtY29udGVudCxcbiAgICAgICAgLm1vYmlsZS10ZXh0LXRydW5jYXRlLFxuICAgICAgICAubW9iaWxlLWV4cGFuZC1hcmVhIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogSGlnaCBDb250cmFzdCBNb2RlICovXG4gICAgQG1lZGlhIChwcmVmZXJzLWNvbnRyYXN0OiBoaWdoKSB7XG4gICAgICAgIC5tb2JpbGUtY29sbGFwc2libGUge1xuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtY29sbGFwc2libGU6Zm9jdXMge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtZXhwYW5kLWFyZWEge1xuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tYnMtZGFyayk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBMb2FkaW5nIFN0YXRlcyBmb3IgRHluYW1pYyBDb250ZW50ICovXG4gICAgLm1vYmlsZS1sb2FkaW5nIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtaW4taGVpZ2h0OiAxMDBweDtcbiAgICB9XG4gICAgXG4gICAgLm1vYmlsZS1sb2FkaW5nOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgIG1hcmdpbjogLTE1cHggMCAwIC0xNXB4O1xuICAgICAgICBib3JkZXI6IDNweCBzb2xpZCAjZjNmM2YzO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJvcmRlci10b3A6IDNweCBzb2xpZCB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICAgICAgYW5pbWF0aW9uOiBzcGluIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgICB9XG4gICAgXG4gICAgQGtleWZyYW1lcyBzcGluIHtcbiAgICAgICAgMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICAgICAgICAxMDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfVxuICAgIH1cbiAgICBcbiAgICAvKiBFbmhhbmNlZCBUb3VjaCBUYXJnZXRzICovXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5tb2JpbGUtdG91Y2gtdGFyZ2V0IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQ4cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS10b3VjaC10YXJnZXQ6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogLThweDtcbiAgICAgICAgICAgIHJpZ2h0OiAtOHB4O1xuICAgICAgICAgICAgYm90dG9tOiAtOHB4O1xuICAgICAgICAgICAgbGVmdDogLThweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBNb2JpbGUgQWRkcmVzcyBCb29rIFN0eWxlcyAqL1xuICAgIFxuICAgIC8qIE1vYmlsZSBIZWFkZXIgU2VjdGlvbiAqL1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAuZC1mbGV4Lmp1c3RpZnktY29udGVudC1iZXR3ZWVuLmFsaWduLWl0ZW1zLWNlbnRlci5tYi00IHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZC1mbGV4Lmp1c3RpZnktY29udGVudC1iZXR3ZWVuLmFsaWduLWl0ZW1zLWNlbnRlci5tYi00ID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5kLWZsZXguanVzdGlmeS1jb250ZW50LWJldHdlZW4uYWxpZ24taXRlbXMtY2VudGVyLm1iLTQgaDMge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5kLWZsZXguanVzdGlmeS1jb250ZW50LWJldHdlZW4uYWxpZ24taXRlbXMtY2VudGVyLm1iLTQgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZC1mbGV4Lmp1c3RpZnktY29udGVudC1iZXR3ZWVuLmFsaWduLWl0ZW1zLWNlbnRlci5tYi00IC5idG4ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA0OHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIE1vYmlsZSBBZGRyZXNzIENhcmRzICovXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5jb2wtbWQtNi5jb2wtbGctNCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuYWRkcmVzcy1jYXJkIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvKiBDYXJkIEhlYWRlciBBZGp1c3RtZW50cyAqL1xuICAgICAgICAuYWRkcmVzcy1jYXJkIGg1IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmFkZHJlc3MtY2FyZCAuYmFkZ2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjdyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLyogRHJvcGRvd24gQnV0dG9uIEVuaGFuY2VtZW50ICovXG4gICAgICAgIC5kcm9wZG93biAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5LmJ0bi1zbSB7XG4gICAgICAgICAgICB3aWR0aDogNDRweDtcbiAgICAgICAgICAgIGhlaWdodDogNDRweDtcbiAgICAgICAgICAgIG1pbi13aWR0aDogNDRweDtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQ0cHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8qIERyb3Bkb3duIE1lbnUgUG9zaXRpb25pbmcgKi9cbiAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgbWluLXdpZHRoOiAxMnJlbTtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLyogRHJvcGRvd24gSXRlbXMgVG91Y2ggRnJpZW5kbHkgKi9cbiAgICAgICAgLmRyb3Bkb3duLWl0ZW0ge1xuICAgICAgICAgICAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICAgICAgICAgICAgbWluLWhlaWdodDogNDRweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5kcm9wZG93bi1pdGVtIGkge1xuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8qIEFkZHJlc3MgRGV0YWlscyAqL1xuICAgICAgICAuYWRkcmVzcy1kZXRhaWxzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuYWRkcmVzcy1kZXRhaWxzIHN0cm9uZyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8qIFZlcmlmaWNhdGlvbiBTdGF0dXMgKi9cbiAgICAgICAgLmFkZHJlc3MtY2FyZCBzbWFsbCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogTW9iaWxlIEVtcHR5IFN0YXRlICovXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5wcm9maWxlLWNhcmQudGV4dC1jZW50ZXIucHktNSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzcmVtIDEuNXJlbSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucHJvZmlsZS1jYXJkIC5mYS0zeCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnByb2ZpbGUtY2FyZCBoNCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucHJvZmlsZS1jYXJkIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnByb2ZpbGUtY2FyZCAuYnRuIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQ4cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogTW9iaWxlIE1vZGFsIE9wdGltaXphdGlvbnMgKi9cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgLm1vZGFsLWRpYWxvZyB7XG4gICAgICAgICAgICBtYXJnaW46IDAuNXJlbTtcbiAgICAgICAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMXJlbSk7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vZGFsLWhlYWRlcixcbiAgICAgICAgLm1vZGFsLWJvZHksXG4gICAgICAgIC5tb2RhbC1mb290ZXIge1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vZGFsLXRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2RhbC1ib2R5IHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9kYWwtZm9vdGVyIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vZGFsLWZvb3RlciAuYnRuIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWluLWhlaWdodDogNDhweDtcbiAgICAgICAgICAgIG1hcmdpbjogMC4yNXJlbSAwO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9kYWwtZm9vdGVyIGZvcm0ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBUb3VjaCBGZWVkYmFjayAqL1xuICAgIEBtZWRpYSAoaG92ZXI6IG5vbmUpIGFuZCAocG9pbnRlcjogY29hcnNlKSB7XG4gICAgICAgIC5hZGRyZXNzLWNhcmQ6YWN0aXZlIHtcbiAgICAgICAgICAgIC8vIFJlbW92ZWQgdGFja3kgem9vbSBlZmZlY3RcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMC4yNXJlbSAwLjVyZW0gcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZHJvcGRvd24taXRlbTphY3RpdmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtZ3JheS0xMDApO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuYnRuOmFjdGl2ZSB7XG4gICAgICAgICAgICAvLyBSZW1vdmVkIHRhY2t5IHpvb20gZWZmZWN0XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogSW1wcm92ZWQgQ2FyZCBHcmlkIG9uIFNtYWxsIFRhYmxldHMgKi9cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAucm93IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDI4MHB4LCAxZnIpKTtcbiAgICAgICAgICAgIGdhcDogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmNvbC1tZC02LmNvbC1sZy00IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogTG9hZGluZyBTdGF0ZXMgKi9cbiAgICAuYWRkcmVzcy1jYXJkLmxvYWRpbmcge1xuICAgICAgICBvcGFjaXR5OiAwLjY7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgICBcbiAgICAuZHJvcGRvd24taXRlbS5sb2FkaW5nIHtcbiAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgICBcbiAgICAvKiBBZGRyZXNzIENhcmQgSG92ZXIgRWZmZWN0cyAqL1xuICAgIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gICAgICAgIC5hZGRyZXNzLWNhcmQ6aG92ZXIge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIEBtZWRpYSAoaG92ZXI6IG5vbmUpIHtcbiAgICAgICAgLmFkZHJlc3MtY2FyZDpob3ZlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogTGFuZHNjYXBlIE1vYmlsZSBPcHRpbWl6YXRpb24gKi9cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgICAgICAuZC1mbGV4Lmp1c3RpZnktY29udGVudC1iZXR3ZWVuLmFsaWduLWl0ZW1zLWNlbnRlci5tYi00IHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZC1mbGV4Lmp1c3RpZnktY29udGVudC1iZXR3ZWVuLmFsaWduLWl0ZW1zLWNlbnRlci5tYi00ID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5kLWZsZXguanVzdGlmeS1jb250ZW50LWJldHdlZW4uYWxpZ24taXRlbXMtY2VudGVyLm1iLTQgLmJ0biB7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBJbXByb3ZlZCBTcGFjaW5nICovXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5wcm9maWxlLWNvbnRlbnQge1xuICAgICAgICAgICAgcGFkZGluZzogMCAwLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5hZGRyZXNzLWNhcmQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnJvdyB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTAuNXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTAuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmNvbC1tZC02LmNvbC1sZy00IHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIE1vYmlsZSBGb3JtIE9wdGltaXphdGlvbiBTdHlsZXMgKi9cbiAgICBcbiAgICAvKiBCYXNlIEZvcm0gQ29udHJvbCBTdHlsZXMgKi9cbiAgICAuZm9ybS1jb250cm9sLFxuICAgIC5mb3JtLXNlbGVjdCxcbiAgICAuYnRuIHtcbiAgICAgICAgbWluLWhlaWdodDogNDhweDsgLyogVG91Y2ggdGFyZ2V0IG1pbmltdW0gKi9cbiAgICAgICAgZm9udC1zaXplOiAxNnB4OyAvKiBQcmV2ZW50IHpvb20gb24gaU9TICovXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICB9XG4gICAgXG4gICAgLyogRW5oYW5jZWQgVG91Y2ggVGFyZ2V0cyBmb3IgQ2hlY2tib3hlcyBhbmQgUmFkaW9zICovXG4gICAgLmZvcm0tY2hlY2sge1xuICAgICAgICBtaW4taGVpZ2h0OiA0OHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiAwLjc1cmVtIDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgICBcbiAgICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC43NXJlbTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjNmM3NTdkO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuICAgIH1cbiAgICBcbiAgICAuZm9ybS1jaGVjay1pbnB1dDpjaGVja2VkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgICAgIC8vIFJlbW92ZWQgdGFja3kgem9vbSBlZmZlY3RcbiAgICB9XG4gICAgXG4gICAgLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICB9XG4gICAgXG4gICAgLyogTW9iaWxlIEZvcm0gU3BhY2luZyAqL1xuICAgIC5mb3JtLWxhYmVsIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgICAgICBmb250LXNpemU6IDAuOTVyZW07XG4gICAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgIH1cbiAgICBcbiAgICAuZm9ybS10ZXh0IHtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgIG1hcmdpbi10b3A6IDAuMjVyZW07XG4gICAgfVxuICAgIFxuICAgIC8qIEVuaGFuY2VkIFNlbGVjdCBEcm9wZG93bnMgKi9cbiAgICAuZm9ybS1zZWxlY3Qge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyUzZSUzY3BhdGggZmlsbD0nbm9uZScgc3Ryb2tlPSclMjMzNDNhNDAnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNMiA1bDYgNiA2LTYnLyUzZSUzYy9zdmclM2VcIik7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTZweCAxMnB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyLjVyZW07XG4gICAgfVxuICAgIFxuICAgIC8qIElucHV0IEdyb3VwcyAqL1xuICAgIC5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wsXG4gICAgLmlucHV0LWdyb3VwID4gLmZvcm0tc2VsZWN0LFxuICAgIC5pbnB1dC1ncm91cCA+IC5idG4ge1xuICAgICAgICBtaW4taGVpZ2h0OiA0OHB4O1xuICAgIH1cbiAgICBcbiAgICAuaW5wdXQtZ3JvdXAtdGV4dCB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQ4cHg7XG4gICAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgIH1cbiAgICBcbiAgICAvKiBGaWxlIFVwbG9hZCBTdHlsaW5nICovXG4gICAgLmJ0bi1maWxlLXVwbG9hZCB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQ4cHg7XG4gICAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMS41cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiAwLjVyZW07XG4gICAgfVxuICAgIFxuICAgIC8qIEZvcm0gVmFsaWRhdGlvbiBGZWVkYmFjayAqL1xuICAgIC5pbnZhbGlkLWZlZWRiYWNrLFxuICAgIC52YWxpZC1mZWVkYmFjayB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgIG1hcmdpbi10b3A6IDAuMjVyZW07XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICBcbiAgICAuaXMtaW52YWxpZCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAycHg7XG4gICAgfVxuICAgIFxuICAgIC5pcy12YWxpZCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzI4YTc0NTtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAycHg7XG4gICAgfVxuICAgIFxuICAgIC8qIE1vYmlsZSBCdXR0b24gU3R5bGVzICovXG4gICAgLmJ0biB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMS41cmVtO1xuICAgICAgICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgICAgICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gICAgXG4gICAgLmJ0bi1wcmltYXJ5IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgfVxuICAgIFxuICAgIC5idG4tcHJpbWFyeTphY3RpdmUge1xuICAgICAgICAvLyBSZW1vdmVkIHRhY2t5IHpvb20gZWZmZWN0XG4gICAgfVxuICAgIFxuICAgIC8qIEZvcm0gUm93IFNwYWNpbmcgKi9cbiAgICAucm93Lm1iLTMsXG4gICAgLnJvdy5tYi00IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgIC8qIE1vYmlsZS1TcGVjaWZpYyBGb3JtIExheW91dHMgKi9cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLmNvbC1tZC02IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5jb2wtbWQtNjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8qIFN0YWNrIGZvcm0gYnV0dG9ucyB2ZXJ0aWNhbGx5IG9uIG1vYmlsZSAqL1xuICAgICAgICAuYnRuLWdyb3VwLW1vYmlsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGdhcDogMC43NXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmJ0bi1ncm91cC1tb2JpbGUgLmJ0biB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLyogTGFyZ2VyIHNwYWNpbmcgYmV0d2VlbiBmb3JtIHNlY3Rpb25zICovXG4gICAgICAgIGg1Lm1iLTMge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMnJlbSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvKiBDYXJkIHNwYWNpbmcgYWRqdXN0bWVudHMgKi9cbiAgICAgICAgLmNhcmQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuY2FyZC1ib2R5IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEuMjVyZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogVG91Y2ggRmVlZGJhY2sgKi9cbiAgICAuZm9ybS1jb250cm9sOmZvY3VzLFxuICAgIC5mb3JtLXNlbGVjdDpmb2N1cyxcbiAgICAuYnRuOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogM3B4IHNvbGlkIHJnYmEoMTMsIDExMCwgMjUzLCAwLjI1KTtcbiAgICAgICAgb3V0bGluZS1vZmZzZXQ6IDJweDtcbiAgICB9XG4gICAgXG4gICAgLyogTG9hZGluZyBTdGF0ZXMgKi9cbiAgICAuYnRuW2Rpc2FibGVkXSB7XG4gICAgICAgIG9wYWNpdHk6IDAuNjU7XG4gICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuICAgIFxuICAgIC5idG4ubG9hZGluZyB7XG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cbiAgICBcbiAgICAuYnRuLmxvYWRpbmc6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xMHB4O1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjZjNmM2YzO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjMzQ5OGRiO1xuICAgICAgICBhbmltYXRpb246IHNwaW4gMXMgbGluZWFyIGluZmluaXRlO1xuICAgIH1cbiAgICBcbiAgICAvKiBJbXByb3ZlZCBFcnJvciBTdGF0ZXMgKi9cbiAgICAuZm9ybS1jb250cm9sLmlzLWludmFsaWQ6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICNkYzM1NDU7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyMCwgNTMsIDY5LCAwLjI1KTtcbiAgICB9XG4gICAgXG4gICAgLyogUGFzc3dvcmQgVG9nZ2xlIEJ1dHRvbiBFbmhhbmNlbWVudCAqL1xuICAgIC5wYXNzd29yZC10b2dnbGUtYnRuIHtcbiAgICAgICAgbWluLXdpZHRoOiA0OHB4O1xuICAgICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICB9XG4gICAgXG4gICAgLyogUmFuZ2UgSW5wdXRzIChpZiBhbnkpICovXG4gICAgaW5wdXRbdHlwZT1cInJhbmdlXCJdIHtcbiAgICAgICAgaGVpZ2h0OiA0OHB4O1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gICAgXG4gICAgaW5wdXRbdHlwZT1cInJhbmdlXCJdOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgaGVpZ2h0OiAzMnB4O1xuICAgICAgICB3aWR0aDogMzJweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBtYXJnaW4tdG9wOiAtMTRweDtcbiAgICB9XG4gICAgXG4gICAgaW5wdXRbdHlwZT1cInJhbmdlXCJdOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDRweDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZGRkO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgfVxuICAgIFxuICAgIC8qIEZsb2F0aW5nIExhYmVscyAoaWYgdXNlZCkgKi9cbiAgICAuZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2wsXG4gICAgLmZvcm0tZmxvYXRpbmcgPiAuZm9ybS1zZWxlY3Qge1xuICAgICAgICBtaW4taGVpZ2h0OiA1OHB4O1xuICAgICAgICBwYWRkaW5nLXRvcDogMS42MjVyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjYyNXJlbTtcbiAgICB9XG4gICAgXG4gICAgLmZvcm0tZmxvYXRpbmcgPiBsYWJlbCB7XG4gICAgICAgIHBhZGRpbmc6IDFyZW0gMC43NXJlbTtcbiAgICB9XG4gICAgXG4gICAgLyogaU9TLVNwZWNpZmljIEZpeGVzICovXG4gICAgQHN1cHBvcnRzICgtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmUpIHtcbiAgICAgICAgLmZvcm0tY29udHJvbCxcbiAgICAgICAgLmZvcm0tc2VsZWN0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsgLyogUHJldmVudHMgem9vbSAqL1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBzZWxlY3QuZm9ybS1zZWxlY3Qge1xuICAgICAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIEFuZHJvaWQtU3BlY2lmaWMgRml4ZXMgKi9cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAwKSB7XG4gICAgICAgIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAgICAgICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogTW9iaWxlIERhc2hib2FyZCBTdHlsZXMgKi9cbiAgICBcbiAgICAvKiBNb2JpbGUgU3RhdGlzdGljcyBDYXJkcyAqL1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAuc3RhdC1jYXJkIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnN0YXQtY2FyZCAuc3RhdC12YWx1ZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNzVyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuc3RhdC1jYXJkIC5zdGF0LWxhYmVsIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvKiBUd28gY29sdW1ucyBvbiBtb2JpbGUgZm9yIGJldHRlciBzcGFjZSB1dGlsaXphdGlvbiAqL1xuICAgICAgICAuY29sLXNtLTYge1xuICAgICAgICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIE1vYmlsZSBPcmRlciBDYXJkcyAtIFJlcGxhY2UgdGFibGUgb24gc21hbGwgc2NyZWVucyAqL1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAvLyBPbmx5IGhpZGUgdGFibGUgb24gb3JkZXJzIHBhZ2Ugd2hlcmUgd2UgaGF2ZSBtb2JpbGUgY2FyZHNcbiAgICAgICAgJi5wYWdlLWlzLXByb2ZpbGUtb3JkZXJzIC50YWJsZS1yZXNwb25zaXZlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtb3JkZXItY2FyZHMge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtb3JkZXItY2FyZCB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjJzIGVhc2U7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtb3JkZXItY2FyZDphY3RpdmUge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwLjEyNXJlbSAwLjI1cmVtIHJnYmEoMCwgMCwgMCwgMC4wNzUpO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLW9yZGVyLWhlYWRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLW9yZGVyLW51bWJlciB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLW9yZGVyLXN0YXR1cyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtb3JkZXItZGV0YWlscyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtb3JkZXItZGF0ZSB7XG4gICAgICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtb3JkZXItdG90YWwge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtb3JkZXItYWN0aW9uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQ0cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIC5tb2JpbGUtb3JkZXItY2FyZHMge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBNb2JpbGUgV2VsY29tZSBTZWN0aW9uICovXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5wcm9maWxlLWhlYWRlciB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjVyZW0gMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnByb2ZpbGUtaGVhZGVyIGgzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucHJvZmlsZS1oZWFkZXIgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnByb2ZpbGUtaGVhZGVyIC5idG4ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDMwMHB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogTW9iaWxlIFF1aWNrIEFjdGlvbnMgKi9cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLnByb2ZpbGUtY2FyZCBoNCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvKiBUd28gY29sdW1ucyBmb3IgcXVpY2sgYWN0aW9uIGJ1dHRvbnMgb24gbW9iaWxlICovXG4gICAgICAgIC5xdWljay1hY3Rpb24tbW9iaWxlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgICAgICAgICBnYXA6IDAuNzVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5xdWljay1hY3Rpb24tbW9iaWxlIC5idG4ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMC41cmVtO1xuICAgICAgICAgICAgbWluLWhlaWdodDogNDhweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucXVpY2stYWN0aW9uLW1vYmlsZSAuYnRuIGkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIE1vYmlsZSBOb3RpZmljYXRpb25zICovXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmxpc3QtZ3JvdXAtaXRlbSBoNiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5saXN0LWdyb3VwLWl0ZW0gcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmxpc3QtZ3JvdXAtaXRlbSBzbWFsbCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBEYXNoYm9hcmQgVG91Y2ggRmVlZGJhY2sgKi9cbiAgICBAbWVkaWEgKGhvdmVyOiBub25lKSBhbmQgKHBvaW50ZXI6IGNvYXJzZSkge1xuICAgICAgICAuc3RhdC1jYXJkOmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICAgICAgICAgICAgLy8gUmVtb3ZlZCB0YWNreSB6b29tIGVmZmVjdFxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLW9yZGVyLWNhcmQ6YWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogSW1wcm92ZWQgRGFzaGJvYXJkIFNwYWNpbmcgb24gTW9iaWxlICovXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5wcm9maWxlLWhlYWRlciB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5yb3cubWItNCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnByb2ZpbGUtY2FyZCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjI1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucHJvZmlsZS1jYXJkOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBEYXNoYm9hcmQgTG9hZGluZyBTdGF0ZXMgKi9cbiAgICAubW9iaWxlLW9yZGVyLWNhcmQubG9hZGluZyB7XG4gICAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuICAgIFxuICAgIC5tb2JpbGUtb3JkZXItY2FyZC5sb2FkaW5nOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgbWFyZ2luOiAtMTBweCAwIDAgLTEwcHg7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNmM2YzZjM7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIHZhcigtLWJzLXByaW1hcnkpO1xuICAgICAgICBhbmltYXRpb246IHNwaW4gMXMgbGluZWFyIGluZmluaXRlO1xuICAgIH1cbiAgICBcbiAgICAvKiBMYW5kc2NhcGUgTW9iaWxlIERhc2hib2FyZCBPcHRpbWl6YXRpb24gKi9cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgICAgICAuc3RhdC1jYXJkIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNzVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5zdGF0LWNhcmQgLnN0YXQtdmFsdWUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5wcm9maWxlLWhlYWRlciB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucHJvZmlsZS1oZWFkZXIgaDMge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIE1vYmlsZSBPcmRlcnMgUGFnZSBTdHlsZXMgKi9cbiAgICBcbiAgICAvKiBNb2JpbGUgRmlsdGVyIFNlY3Rpb24gKi9cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgI21vYmlsZS1maWx0ZXItdG9nZ2xlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgbWluLWhlaWdodDogNDhweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgI29yZGVyLWZpbHRlci1mb3JtIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICNvcmRlci1maWx0ZXItZm9ybS5zaG93IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5maWx0ZXItYWN0aXZlLWluZGljYXRvciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuMTI1cmVtIDAuNXJlbTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDFyZW07XG4gICAgICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAjbW9iaWxlLWZpbHRlci10b2dnbGUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgI29yZGVyLWZpbHRlci1mb3JtIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogTW9iaWxlIE9yZGVyIExpc3QgQ2FyZHMgKi9cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLm1vYmlsZS1vcmRlcnMtbGlzdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS1vcmRlci1pdGVtIHtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuMnMgZWFzZTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS1vcmRlci1pdGVtOmFjdGl2ZSB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAuMTI1cmVtIDAuMjVyZW0gcmdiYSgwLCAwLCAwLCAwLjA3NSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvKiBPcmRlciBIZWFkZXIgKi9cbiAgICAgICAgLm1vYmlsZS1vcmRlci1oZWFkZXIge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS1vcmRlci1pZCB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLW9yZGVyLWRhdGUge1xuICAgICAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLW9yZGVyLXBheW1lbnQge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtb3JkZXItdG90YWwge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8qIE9yZGVyIERldGFpbHMgKi9cbiAgICAgICAgLm1vYmlsZS1vcmRlci1pbmZvIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbSAwO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlOWVjZWY7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U5ZWNlZjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS1vcmRlci1pdGVtcyB7XG4gICAgICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8qIEFjdGlvbiBCdXR0b25zICovXG4gICAgICAgIC5tb2JpbGUtb3JkZXItYWN0aW9ucyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgxMDBweCwgMWZyKSk7XG4gICAgICAgICAgICBnYXA6IDAuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS1vcmRlci1hY3Rpb25zIC5idG4ge1xuICAgICAgICAgICAgbWluLWhlaWdodDogNDRweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgZ2FwOiAwLjI1cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLW9yZGVyLWFjdGlvbnMgLmJ0biBpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLyogUXVpY2sgVmlldyBEZXRhaWxzICovXG4gICAgICAgIC5tb2JpbGUtb3JkZXItcXVpY2stZGV0YWlscyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZWUyZTY7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtb3JkZXItcXVpY2stZGV0YWlscy5zaG93IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAubW9iaWxlLW9yZGVycy1saXN0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogTW9iaWxlIFN0YXR1cyBHdWlkZSAqL1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAuc3RhdHVzLWd1aWRlLW1vYmlsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgICAgIG1hcmdpbjogLTAuNXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnN0YXR1cy1ndWlkZS1tb2JpbGU6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgICAgIGhlaWdodDogNHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuc3RhdHVzLWd1aWRlLW1vYmlsZTo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2YxZjFmMTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnN0YXR1cy1ndWlkZS1tb2JpbGU6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM4ODg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5zdGF0dXMtZ3VpZGUtaXRlbSB7XG4gICAgICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogMC41cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuc3RhdHVzLWd1aWRlLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5yb3cuZy0yIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIC5zdGF0dXMtZ3VpZGUtbW9iaWxlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogTW9iaWxlIE9yZGVycyBQYWdpbmF0aW9uICovXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5wYWdpbmF0aW9uIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICAgICAgcGFkZGluZzogMC41cmVtIDAuNzVyZW07XG4gICAgICAgICAgICBtaW4td2lkdGg6IDQ0cHg7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA0NHB4O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBPcmRlcnMgVG91Y2ggRmVlZGJhY2sgKi9cbiAgICBAbWVkaWEgKGhvdmVyOiBub25lKSBhbmQgKHBvaW50ZXI6IGNvYXJzZSkge1xuICAgICAgICAubW9iaWxlLW9yZGVyLWl0ZW06YWN0aXZlIHtcbiAgICAgICAgICAgIC8vIFJlbW92ZWQgdGFja3kgem9vbSBlZmZlY3RcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBPcmRlcnMgTG9hZGluZyBTdGF0ZXMgKi9cbiAgICAubW9iaWxlLW9yZGVyLWl0ZW0ubG9hZGluZyB7XG4gICAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuICAgIFxuICAgIC8qIEZpbHRlciBCYWRnZSBDb3VudGVyICovXG4gICAgLmZpbHRlci1jb3VudCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWRhbmdlcik7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgICB9XG4gICAgXG4gICAgLyogSGlnaCBDb250cmFzdCBPcmRlcnMgKi9cbiAgICBAbWVkaWEgKHByZWZlcnMtY29udHJhc3Q6IGhpZ2gpIHtcbiAgICAgICAgLm1vYmlsZS1vcmRlci1pdGVtIHtcbiAgICAgICAgICAgIGJvcmRlci13aWR0aDogMnB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLW9yZGVyLWlkIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIExhbmRzY2FwZSBNb2JpbGUgT3JkZXJzICovXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAgICAgLm1vYmlsZS1vcmRlci1hY3Rpb25zIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogTW9iaWxlIE9yZGVyIERldGFpbCBQYWdlIFN0eWxlcyAqL1xuICAgIFxuICAgIC8qIE1vYmlsZSBPcmRlciBTdW1tYXJ5ICovXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5wcm9maWxlLWNhcmQgLnJvdyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvKiBPcmRlciBTdGF0dXMgU2VjdGlvbiAqL1xuICAgICAgICAuY29sLW1kLTQudGV4dC1tZC1lbmQge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDEuNXJlbTtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvKiBJbmZvIEdyaWQgb24gTW9iaWxlICovXG4gICAgICAgIC5jb2wtNi5jb2wtbWQtNCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuY29sLTYuY29sLW1kLTQ6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvKiBMYWJlbHMgYW5kIFZhbHVlcyAqL1xuICAgICAgICBsYWJlbC50ZXh0LW11dGVkLnNtYWxsIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgcC5mdy1zZW1pYm9sZCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIE1vYmlsZSBUaW1lbGluZSAqL1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAudGltZWxpbmUge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAudGltZWxpbmU6OmJlZm9yZSB7XG4gICAgICAgICAgICBsZWZ0OiA2cHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC50aW1lbGluZS1tYXJrZXIge1xuICAgICAgICAgICAgbGVmdDogLTE0cHg7XG4gICAgICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnRpbWVsaW5lLWNvbnRlbnQgaDYge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnRpbWVsaW5lLWNvbnRlbnQgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC50aW1lbGluZS1pdGVtIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIE1vYmlsZSBPcmRlciBJdGVtcyAqL1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAvKiBTaG93IG1vYmlsZSBjYXJkcyAqL1xuICAgICAgICAubW9iaWxlLW9yZGVyLWl0ZW1zIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLWl0ZW0tY2FyZCB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLWl0ZW0taGVhZGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBnYXA6IDFyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLWl0ZW0taW1hZ2Uge1xuICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgICAgIGhlaWdodDogODBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS1pdGVtLWltYWdlIGltZyxcbiAgICAgICAgLm1vYmlsZS1pdGVtLWltYWdlIC5wbGFjZWhvbGRlciB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMC4zNzVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtaXRlbS1pbWFnZSAucGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtaXRlbS1kZXRhaWxzIHtcbiAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtaXRlbS1uYW1lIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gICAgICAgICAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLWl0ZW0tc2t1IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS1pdGVtLXByaWNpbmcge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMC43NXJlbTtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTllY2VmO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLWl0ZW0tcHJpY2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLWl0ZW0tcXR5IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS1pdGVtLXRvdGFsIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8qIE9yZGVyIFN1bW1hcnkgb24gTW9iaWxlICovXG4gICAgICAgIC5tb2JpbGUtb3JkZXItc3VtbWFyeSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtc3VtbWFyeS1yb3cge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtc3VtbWFyeS1yb3c6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZGVlMmU2O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS1zdW1tYXJ5LWxhYmVsIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNDk1MDU3O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLXN1bW1hcnktdmFsdWUge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtc3VtbWFyeS12YWx1ZS50ZXh0LWRhbmdlciB7XG4gICAgICAgICAgICBjb2xvcjogI2RjMzU0NSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAubW9iaWxlLW9yZGVyLWl0ZW1zIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogTW9iaWxlIEFjdGlvbiBCdXR0b25zICovXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5wcm9maWxlLWFjdGlvbnMgLmJ0bi1ncm91cCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZ2FwOiAwLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5wcm9maWxlLWFjdGlvbnMgLmJ0biB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQ4cHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8qIEJvdHRvbSBBY3Rpb25zICovXG4gICAgICAgIC50ZXh0LWNlbnRlci5tdC00IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgZ2FwOiAwLjc1cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAudGV4dC1jZW50ZXIubXQtNCAuYnRuIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWluLWhlaWdodDogNDhweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIE1vYmlsZSBBZGRyZXNzIENhcmRzIE9yZGVyIERldGFpbCAqL1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAuY29sLW1kLTYge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmNvbC1tZC02Omxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnByb2ZpbGUtY2FyZCBhZGRyZXNzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucHJvZmlsZS1jYXJkIGg1IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIE9yZGVyIERldGFpbCBUb3VjaCBGZWVkYmFjayAqL1xuICAgIEBtZWRpYSAoaG92ZXI6IG5vbmUpIGFuZCAocG9pbnRlcjogY29hcnNlKSB7XG4gICAgICAgIC5tb2JpbGUtaXRlbS1jYXJkOmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIE9yZGVyIERldGFpbCBTcGFjaW5nICovXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5wcm9maWxlLWNhcmQge1xuICAgICAgICAgICAgcGFkZGluZzogMS4yNXJlbSAxcmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnByb2ZpbGUtY2FyZCBoNCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIFN0YXR1cyBCYWRnZSBBZGp1c3RtZW50cyAqL1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAuYmFkZ2UuZnMtNiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIE9yZGVyIERldGFpbCBMb2FkaW5nIFN0YXRlcyAqL1xuICAgIC5tb2JpbGUtaXRlbS1jYXJkLmxvYWRpbmcge1xuICAgICAgICBvcGFjaXR5OiAwLjY7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgICBcbiAgICAvKiBIaWdoIENvbnRyYXN0IE9yZGVyIERldGFpbCAqL1xuICAgIEBtZWRpYSAocHJlZmVycy1jb250cmFzdDogaGlnaCkge1xuICAgICAgICAubW9iaWxlLWl0ZW0tY2FyZCB7XG4gICAgICAgICAgICBib3JkZXItd2lkdGg6IDJweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS1zdW1tYXJ5LXJvdzpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci10b3Atd2lkdGg6IDNweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBQcmludCBTdHlsZXMgKi9cbiAgICBAbWVkaWEgcHJpbnQge1xuICAgICAgICAubW9iaWxlLW9yZGVyLWl0ZW1zIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnRhYmxlLXJlc3BvbnNpdmUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn0gLy8gRW5kIG9mIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZVxuXG4vKipcbiAqIFByb2ZpbGUgRWRpdCBQYWdlIFN0eWxlc1xuICovXG4ucGFnZV9pc19lZGl0X3Byb2ZpbGUsXG4ucGFnZV9pc19wcm9maWxlX2VkaXQge1xuICAgIFxuICAgIC5wcm9maWxlLWltYWdlLWxhcmdlIHtcbiAgICAgICAgd2lkdGg6IDE1MHB4O1xuICAgICAgICBoZWlnaHQ6IDE1MHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICBib3JkZXI6IDNweCBzb2xpZCAjZGVlMmU2O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuICAgIFxuICAgIC5wcm9maWxlLWltYWdlLXBsYWNlaG9sZGVyIHtcbiAgICAgICAgd2lkdGg6IDE1MHB4O1xuICAgICAgICBoZWlnaHQ6IDE1MHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gICAgICAgIGJvcmRlcjogM3B4IHNvbGlkICNkZWUyZTY7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG4gICAgXG4gICAgLnByb2ZpbGUtaW1hZ2UtcHJldmlldyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICBcbiAgICAucHJvZmlsZS1pbWFnZS1zZWN0aW9uIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlciAuaW1hZ2UtdXBsb2FkLW92ZXJsYXkge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuaW1hZ2UtdXBsb2FkLW92ZXJsYXkge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgIHdpZHRoOiAxNTBweDtcbiAgICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gICAgXG4gICAgLmZvcm0tY29udHJvbDpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKHZhcigtLWJzLXByaW1hcnktcmdiKSwgMC4yNSk7XG4gICAgfVxuICAgIFxuICAgIC5idG4tb3V0bGluZS1wcmltYXJ5OmhvdmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xuICAgICAgICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLDAsMCwuMSk7XG4gICAgfVxuICAgIFxuICAgIC8qIFByb2ZpbGUgY2FyZCBob3ZlciBzdGF0ZSBkaXNhYmxlZCAqL1xufVxuXG4vKipcbiAqIEVtYWlsIFByZWZlcmVuY2VzIFBhZ2UgU3R5bGVzXG4gKi9cbi5wYWdlX2lzX2VtYWlsX3ByZWZlcmVuY2VzIHtcbiAgICAuY2FyZCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG4gICAgICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMC4xMjVyZW0gMC4yNXJlbSByZ2JhKDAsIDAsIDAsIDAuMDc1KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICAgICAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICAgIH1cbiAgICBcbiAgICAuZm9ybS1jaGVjayB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICAgIH1cbiAgICBcbiAgICAuZm9ybS1jaGVjay1pbnB1dDpjaGVja2VkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgfVxuICAgIFxuICAgIC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICBcbiAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNDk1MDU3O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5oLWZpdCB7XG4gICAgICAgIGhlaWdodDogZml0LWNvbnRlbnQ7XG4gICAgfVxuICAgIFxuICAgIC5idG4tb3V0bGluZS1wcmltYXJ5OmhvdmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xuICAgICAgICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLDAsMCwuMSk7XG4gICAgfVxuICAgIFxuICAgIC50ZXh0LXByaW1hcnkge1xuICAgICAgICBjb2xvcjogdmFyKC0tYnMtcHJpbWFyeSkgIWltcG9ydGFudDtcbiAgICB9XG4gICAgXG4gICAgLmJnLWxpZ2h0IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbiAgICAuc21hbGwge1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIH1cbn0iLCIvLyBDb250ZW50IFBhZ2UgU3R5bGVzXG4vLyBGb3IgbGVnYWwgcGFnZXMsIGFib3V0IHVzLCBhbmQgb3RoZXIgY29udGVudC1oZWF2eSBwYWdlc1xuXG4ucHJvc2Uge1xuICAgIC8vIFR5cG9ncmFwaHkgYWRqdXN0bWVudHMgZm9yIGNvbnRlbnQtaGVhdnkgcGFnZXNcbiAgICBcbiAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMS41ZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuNzVlbTtcbiAgICAgICAgXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS4yNWVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS43O1xuICAgIH1cbiAgICBcbiAgICB1bCwgb2wge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjI1ZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMS41ZW07XG4gICAgICAgIFxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgQGV4dGVuZCAuYmxvY2txdW90ZTtcbiAgICAgICAgbWFyZ2luOiAxLjVlbSAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuNWVtO1xuICAgICAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkIHZhcigtLWJzLWdyYXktMzAwKTtcbiAgICB9XG4gICAgXG4gICAgdGFibGUge1xuICAgICAgICBAZXh0ZW5kIC50YWJsZTtcbiAgICAgICAgQGV4dGVuZCAudGFibGUtYm9yZGVyZWQ7XG4gICAgICAgIG1hcmdpbjogMS41ZW0gMDtcbiAgICB9XG4gICAgXG4gICAgaW1nIHtcbiAgICAgICAgQGV4dGVuZCAuaW1nLWZsdWlkO1xuICAgICAgICBtYXJnaW46IDEuNWVtIDA7XG4gICAgfVxuICAgIFxuICAgIC8vIExpbmtzIGluIGNvbnRlbnRcbiAgICBhIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBNYXggd2lkdGggdXRpbGl0eSBmb3IgY29udGVudFxuLm1heC13LW5vbmUge1xuICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xufSIsIi8vIENvbXBhcmlzb24gUGFnZSBTdHlsZXNcbi8vIEN1c3RvbSBzdHlsZXMgZm9yIHByb2R1Y3QgY29tcGFyaXNvbiBmdW5jdGlvbmFsaXR5XG5cbi5wYWdlX2lzX2NvbXBhcmlzb25fcGFnZSB7XG4gICAgLmNvbXBhcmlzb24tdGFibGUge1xuICAgICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICAgICAgICBcbiAgICAgICAgdGgge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtZ3JheS0xMDApO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmVtcHR5LWNlbGwge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtZ3JheS01MCk7XG4gICAgICAgICAgICBib3JkZXI6IDJweCBkYXNoZWQgdmFyKC0tYnMtYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmVtcHR5LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzcmVtIDA7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgLmZhLXBsdXMtY2lyY2xlIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWJzLXNlY29uZGFyeSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5jb21wYXJpc29uLWNvbnRhaW5lciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgfVxuICAgIFxuICAgIC5yZW1vdmUtaXRlbS1idG4ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgIH1cbiAgICBcbiAgICAucHJvZHVjdC1pbWFnZS1jb250YWluZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDE1MHB4O1xuICAgICAgICBcbiAgICAgICAgLnByb2R1Y3QtaW1hZ2Uge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogMTIwcHg7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAucHJpY2Utc2FsZSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1icy1kYW5nZXIpO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG4gICAgXG4gICAgLnByaWNlLW9yaWdpbmFsIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1icy1zZWNvbmRhcnkpO1xuICAgICAgICBmb250LXNpemU6IDAuOWVtO1xuICAgIH1cbn0iLCIvLyBOb3RpZmljYXRpb25zIFBhZ2UgU3R5bGVzXG4ucGFnZV9pc19ub3RpZmljYXRpb25zIHtcbiAgLy8gSW1wb3J0IHR5cG9ncmFwaHkgdmFyaWFibGVzXG4gICRub3RpZmljYXRpb24tZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG4gICRub3RpZmljYXRpb24tZm9udC13ZWlnaHQtbm9ybWFsOiA0MDA7XG4gICRub3RpZmljYXRpb24tZm9udC13ZWlnaHQtc2VtaWJvbGQ6IDYwMDtcblxuICAvLyBOb3RpZmljYXRpb25zIGxpc3RcbiAgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgaDUge1xuICAgICAgZm9udC1mYW1pbHk6ICRub3RpZmljYXRpb24tZm9udC1mYW1pbHk7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBmb250LXdlaWdodDogJG5vdGlmaWNhdGlvbi1mb250LXdlaWdodC1zZW1pYm9sZDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICBjb2xvcjogIzMzMztcblxuICAgICAgJi5mdy1ib2xkIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRub3RpZmljYXRpb24tZm9udC13ZWlnaHQtc2VtaWJvbGQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBmb250LWZhbWlseTogJG5vdGlmaWNhdGlvbi1mb250LWZhbWlseTtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkbm90aWZpY2F0aW9uLWZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICBjb2xvcjogIzU1NTtcbiAgICB9XG5cbiAgICBzbWFsbCB7XG4gICAgICBmb250LWZhbWlseTogJG5vdGlmaWNhdGlvbi1mb250LWZhbWlseTtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgIGNvbG9yOiAjNmM3NTdkO1xuXG4gICAgICBpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUGFnZSB0aXRsZVxuICBoMSB7XG4gICAgZm9udC1mYW1pbHk6ICRub3RpZmljYXRpb24tZm9udC1mYW1pbHk7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiAkbm90aWZpY2F0aW9uLWZvbnQtd2VpZ2h0LXNlbWlib2xkO1xuICAgIGNvbG9yOiAjMzMzO1xuICB9XG5cbiAgLy8gQWxlcnQgc3R5bGluZ1xuICAuYWxlcnQge1xuICAgIGg0IHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkbm90aWZpY2F0aW9uLWZvbnQtZmFtaWx5O1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgZm9udC13ZWlnaHQ6ICRub3RpZmljYXRpb24tZm9udC13ZWlnaHQtc2VtaWJvbGQ7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBmb250LWZhbWlseTogJG5vdGlmaWNhdGlvbi1mb250LWZhbWlseTtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkbm90aWZpY2F0aW9uLWZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgICB9XG4gIH1cblxuICAvLyBCYWRnZSBzdHlsaW5nXG4gIC5iYWRnZSB7XG4gICAgZm9udC1mYW1pbHk6ICRub3RpZmljYXRpb24tZm9udC1mYW1pbHk7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGZvbnQtd2VpZ2h0OiAkbm90aWZpY2F0aW9uLWZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgfVxuXG4gIC8vIFJlc3BvbnNpdmUgYWRqdXN0bWVudHNcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICBoNSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgIH1cblxuICAgICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIH1cblxuICAgICAgc21hbGwge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaDEge1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gTm90aWZpY2F0aW9ucyBJbmRleCBQYWdlIFN0eWxlc1xuLnBhZ2VfaXNfbm90aWZpY2F0aW9ucyB7XG4gICAgLm5vdGlmaWNhdGlvbi11bnJlYWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTNmMmZkO1xuICAgICAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkICMyMTk2RjM7XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiYmRlZmI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubm90aWZpY2F0aW9uLXJlY2VudCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlOGY1ZTk7XG4gICAgICAgIGJvcmRlci1sZWZ0OiA0cHggc29saWQgIzRDQUY1MDtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxcyBlYXNlLWluLW91dCwgYm9yZGVyLWxlZnQtY29sb3IgMXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjOGU2Yzk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgICAgICAgXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCk7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLy8gV2lzaGxpc3QgUGFnZSBTdHlsZXNcbi8vIEFtYXpvbi1zdHlsZSBzaW5nbGUgcm93IGxheW91dFxuXG4ud2lzaGxpc3QtcGFnZSB7XG4gICAgbWluLWhlaWdodDogNTAwcHg7XG4gICAgXG4gICAgLy8gRW1wdHkgc3RhdGUgc3R5bGluZ1xuICAgIC5lbXB0eS13aXNobGlzdCB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogNHJlbSAycmVtO1xuICAgICAgICBcbiAgICAgICAgLmVtcHR5LWljb24ge1xuICAgICAgICAgICAgZm9udC1zaXplOiA0cmVtO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWJzLWdyYXktNDAwKTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgICAgICBhbmltYXRpb246IHB1bHNlIDJzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tYnMtZ3JheS02MDApO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBHdWVzdCBub3RpY2Ugc3R5bGluZ1xuICAgIC5ndWVzdC1ub3RpY2Uge1xuICAgICAgICBhbmltYXRpb246IHNsaWRlRG93biAwLjVzIGVhc2U7XG4gICAgfVxuICAgIFxuICAgIC8vIEFtYXpvbi1zdHlsZSBsaXN0IGxheW91dFxuICAgIC53aXNobGlzdC1saXN0IHtcbiAgICAgICAgLndpc2hsaXN0LWl0ZW0tcm93IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMC4zNzVyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA4MHB4O1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDJweCA4cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAmLnJlbW92aW5nIHtcbiAgICAgICAgICAgICAgICBhbmltYXRpb246IHJlbW92ZUl0ZW0gMC41cyBlYXNlIGZvcndhcmRzO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAvLyBNYWluIGZsZXggY29udGFpbmVyXG4gICAgICAgICAgICA+IC5kLWZsZXgge1xuICAgICAgICAgICAgICAgIGdhcDogMXJlbTtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLy8gUHJvZHVjdCBpbWFnZSBzZWN0aW9uXG4gICAgICAgICAgICAud2lzaGxpc3QtaXRlbS1pbWFnZSB7XG4gICAgICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0byAxcmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAuaW1hZ2UtcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjhmOWZhO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLy8gSXRlbSBkZXRhaWxzIHNlY3Rpb25cbiAgICAgICAgICAgIC53aXNobGlzdC1pdGVtLWRldGFpbHMge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMXJlbTtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMDA2NmMwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIC5wcmljZS1pbmZvIHtcbiAgICAgICAgICAgICAgICAgICAgLmg1IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLy8gQWN0aW9uIGJ1dHRvbnMgc2VjdGlvblxuICAgICAgICAgICAgLndpc2hsaXN0LWl0ZW0tYWN0aW9ucyB7XG4gICAgICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBnYXA6IDAuNXJlbTtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgLm1vdmUtdG8tdG9wLFxuICAgICAgICAgICAgICAgIC5yZW1vdmUtZnJvbS13aXNobGlzdCB7XG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQ0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjM3NXJlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gQW5pbWF0aW9uc1xuQGtleWZyYW1lcyBwdWxzZSB7XG4gICAgMCUsIDEwMCUgeyBvcGFjaXR5OiAwLjU7IH1cbiAgICA1MCUgeyBvcGFjaXR5OiAxOyB9XG59XG5cbkBrZXlmcmFtZXMgc2xpZGVEb3duIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJlbW92ZUl0ZW0ge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC44KTtcbiAgICB9XG59XG5cbi8vIExvYWRpbmcgb3ZlcmxheSBmb3Igd2lzaGxpc3QgYWN0aW9uc1xuLndpc2hsaXN0LWxvYWRpbmctb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHotaW5kZXg6IDk5OTk7XG4gICAgXG4gICAgLnNwaW5uZXItYm9yZGVyIHtcbiAgICAgICAgd2lkdGg6IDNyZW07XG4gICAgICAgIGhlaWdodDogM3JlbTtcbiAgICB9XG59XG5cbi8vIE1vYmlsZS1zcGVjaWZpYyBhZGp1c3RtZW50c1xuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgLndpc2hsaXN0LXBhZ2Uge1xuICAgICAgICAucGFnZS1oZWFkZXIge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgaDEge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLy8gRW5zdXJlIHRvdWNoLWZyaWVuZGx5IGJ1dHRvbiBzaXplc1xuICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQ0cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLy8gT3B0aW1pemUgY2FyZCBzcGFjaW5nIG9uIG1vYmlsZVxuICAgICAgICAuY2FyZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBCYWRnZSBjb2xvciBzdHlsZXMgKGxlZ2FjeSBzdHlsZXMgZm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkpXG4uYmctcHVycGxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTM3ZWJhICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHdoaXRlO1xufVxuXG4uYmctdGVhbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzdlYmFhZCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiB3aGl0ZTtcbn0iLCIvLyBTZWxsZXIgUHJvZmlsZSBQYWdlIFN0eWxlc1xuLy8gUmVtb3ZlcyB1bndhbnRlZCBob3ZlciBlZmZlY3RzIGFuZCBwcm92aWRlcyBjbGVhbiBzdHlsaW5nXG5cbi5wYWdlLWlzLXNlbGxlci1wcm9maWxlIHtcbiAgICAvLyBSZW1vdmUgY2FyZCBob3ZlciB0cmFuc2Zvcm0gZWZmZWN0XG4gICAgLmNhcmQge1xuICAgICAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuM3MgZWFzZTtcbiAgICAgICAgXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAuMTI1cmVtIDAuMjVyZW0gcmdiYSgwLCAwLCAwLCAwLjA3NSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gU2VsbGVyIGJpbyBzdHlsaW5nXG4gICAgLnNlbGxlci1iaW8ge1xuICAgICAgICBtYXgtd2lkdGg6IDgwMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICBjb2xvcjogIzQ5NTA1NztcbiAgICAgICAgXG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIFByb2R1Y3QgZ3JpZFxuICAgIC5wcm9kdWN0LWdyaWQge1xuICAgICAgICAucHJvZHVjdC1jYXJkIHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4zcyBlYXNlO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDAuNXJlbSAxcmVtIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gRW1wdHkgc3RhdGVcbiAgICAuZW1wdHktc3RhdGUge1xuICAgICAgICBwYWRkaW5nOiA1cmVtIDA7XG4gICAgICAgIFxuICAgICAgICAuZW1wdHktaWNvbiB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjM7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLy8gU2VsbGVyIFByb2ZpbGUgU2hvdyBQYWdlIFN0eWxlc1xuLnBhZ2UtaXMtc2VsbGVyLXByb2ZpbGUge1xuICAgIC5jYXJkIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnM7XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuc2VsbGVyLWJpbyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgY29sb3I6ICMzMzM7XG4gICAgICAgIG1heC13aWR0aDogODAwcHg7XG4gICAgICAgIFxuICAgICAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgdWwsIG9sIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG59IiwiLy8gU2VhcmNoIFJlc3VsdHMgUGFnZSBTdHlsZXNcbi5wYWdlX2lzX3NlYXJjaF9yZXN1bHRzX3BhZ2Uge1xuICAgIC5zZWFyY2gtcmVzdWx0cy1wYWdlIHtcbiAgICAgICAgbWluLWhlaWdodDogNzB2aDtcbiAgICB9XG4gICAgXG4gICAgLnNlYXJjaC1oZWFkZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZjhmOWZhIDAlLCAjZTllY2VmIDEwMCUpO1xuICAgICAgICBwYWRkaW5nOiAycmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIH1cbiAgICBcbiAgICAubm8tcmVzdWx0cyB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmOGY5ZmE7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgICAgIG1hcmdpbjogMnJlbSAwO1xuICAgIH1cbiAgICBcbiAgICAuc2VhcmNoLXN1Z2dlc3Rpb25zIHtcbiAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICBtYXJnaW46IDAuMjVyZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLnNlYXJjaC10aXBzIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgfVxuICAgIFxuICAgIC51bmlmaWVkLXNlYXJjaC1jb250YWluZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDYwMHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG4gICAgXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIC5zZWFyY2gtaGVhZGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnNlYXJjaC1yZXN1bHRzLWxpc3QgLmNhcmQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIvLyBTZWFyY2ggQWpheCBVbmlmaWVkIFBhZ2UgU3R5bGVzXG4ucGFnZV9pc19zZWFyY2hfcmVzdWx0c191bmlmaWVkX3BhZ2Uge1xuICAgIC5wcm9kdWN0LWNhcmQge1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZTBlMGUwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDRweCAxMnB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jYXJkLWltZy1jb250YWluZXIge1xuICAgICAgICBoZWlnaHQ6IDIwMHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmOTtcbiAgICB9XG5cbiAgICAucHJvZHVjdC1pbWFnZSB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICB9XG5cbiAgICAucHJvZHVjdC1iYWRnZXMge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgbGVmdDogMTBweDtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICB9XG5cbiAgICAuYmFkZ2Utc2FsZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkYzM1NDU7XG4gICAgfVxuXG4gICAgLmJhZGdlLW5ldyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyOGE3NDU7XG4gICAgfVxuXG4gICAgLmJhZGdlLWZlYXR1cmVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzFlMWU1NjtcbiAgICB9XG5cbiAgICAucHJvZHVjdC10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICBjb2xvcjogIzMzMztcbiAgICB9XG5cbiAgICAucHJvZHVjdC1wcmljZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxuXG4gICAgLnNhbGUtcHJpY2Uge1xuICAgICAgICBjb2xvcjogI2RjMzU0NTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgICB9XG5cbiAgICAucHJvZHVjdC1saW5rIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAuYmctcHVycGxlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2EzN2ViYTtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgIH1cblxuICAgIC5iZy10ZWFsIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzdlYmFhZDtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgIH1cbn0iLCIvLyBEaXNjb3ZlciBQYWdlIFN0eWxlc1xuLnBhZ2VfaXNfZGlzY292ZXJfcGFnZSB7XG4gICAgLyogRGlzY292ZXIgUGFnZSBTdHlsaW5nICovXG4gICAgLmRpc2NvdmVyLWhlcm8ge1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZjhmOWZhIDAlLCAjZTllY2VmIDEwMCUpO1xuICAgICAgICBwYWRkaW5nOiA4MHB4IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgICAgIFxuICAgICAgICBoMSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDNyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjVweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5sZWFkIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA3MDBweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5jb250ZW50LWNhcmQge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMC4xMjVyZW0gMC41cmVtIHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLCBib3gtc2hhZG93IDAuM3MgZWFzZTtcbiAgICAgICAgXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwLjVyZW0gMS41cmVtIHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmNhcmQtaW1nLXRvcCB7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwMHB4O1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLnNlY3Rpb24taGVhZGVyIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICAgICAgICBcbiAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgY29sb3I6ICMyYzNlNTA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5wbGFjZWhvbGRlci1pbWFnZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNlOWVjZWYgMCUsICNkZWUyZTYgMTAwJSk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgICAgIGhlaWdodDogMjAwcHg7XG4gICAgfVxufSIsIi8vIFByb2ZpbGUgT3JkZXIgRGV0YWlsIFBhZ2UgU3R5bGVzXG4ucGFnZS1pcy1wcm9maWxlLW9yZGVyLWRldGFpbCB7XG4gICAgLy8gVGltZWxpbmUgU3R5bGVzXG4gICAgLnRpbWVsaW5lIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICAgIFxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiAxMHB4O1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDJweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkZWUyZTY7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLnRpbWVsaW5lLWl0ZW0ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW07XG4gICAgICAgIFxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLnRpbWVsaW5lLW1hcmtlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogLTIwcHg7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDEycHg7XG4gICAgICAgIGhlaWdodDogMTJweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2ZmZjtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICNkZWUyZTY7XG4gICAgfVxuICAgIFxuICAgIC50aW1lbGluZS1jb250ZW50IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgIH1cbn0iLCIvKipcbiAqIENvb2tpZSBDb25zZW50IFBhZ2UgU3R5bGVzXG4gKi9cblxuLmNvb2tpZS1jb25zZW50LWJhbm5lciB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC45KTtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgcGFkZGluZzogMXJlbSAwO1xuICAgIHotaW5kZXg6IDk5OTk7XG4gICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xuXG4gICAgLmJ0bi1vdXRsaW5lLWxpZ2h0IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxufSIsIi8qKlxuICogQXNrIFF1ZXN0aW9uIFBhZ2UgU3R5bGVzXG4gKiBTdHlsZXMgZm9yIHRoZSBnZW5lcmFsIGFzayBxdWVzdGlvbiBwYWdlXG4gKi9cblxuLnBhZ2UtaXMtYXNrLXF1ZXN0aW9uLWdlbmVyYWwge1xuICAgIC8vIFBhZ2Utc3BlY2lmaWMgc3R5bGVzIGNhbiBiZSBhZGRlZCBoZXJlIGFzIG5lZWRlZFxuICAgIFxuICAgIC5mb3JtLXRleHQge1xuICAgICAgICAmLnRleHQtd2FybmluZyB7XG4gICAgICAgICAgICBjb2xvcjogIzg1NjQwNCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmLnRleHQtZGFuZ2VyIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNzIxYzI0ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgI2dlbmVyYWxRdWVzdGlvbkZvcm0ge1xuICAgICAgICB0ZXh0YXJlYSB7XG4gICAgICAgICAgICByZXNpemU6IHZlcnRpY2FsO1xuICAgICAgICAgICAgbWluLWhlaWdodDogMTIwcHg7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyoqXG4gKiBQcm9maWxlIExheW91dCBQYWdlIFN0eWxlc1xuICogTW9iaWxlLWZpcnN0IHJlc3BvbnNpdmUgc3R5bGVzIGZvciBwcm9maWxlIGxheW91dFxuICovXG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSB7XG4gICAgLyogTW9iaWxlLUZpcnN0IFByb2ZpbGUgUGFnZSBTdHlsZXMgKi9cbiAgICBcbiAgICAvKiBCYXNlIFN0eWxlcyAoTW9iaWxlIEZpcnN0KSAqL1xuICAgIC5wcm9maWxlLXNpZGViYXIge1xuICAgICAgICAvKiBiYWNrZ3JvdW5kLWNvbG9yIHJlbW92ZWQgLSB1c2luZyBjYXJkIGJhY2tncm91bmQgKi9cbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICAgICAgICAvKiBwYWRkaW5nIHJlbW92ZWQgLSB1c2luZyBjYXJkLWJvZHkgcGFkZGluZyAqL1xuXG4gICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICBjb2xvcjogIzQ5NTA1NztcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW0gMS4yNXJlbTsgLyogTGFyZ2VyIHRvdWNoIHRhcmdldHMgZm9yIG1vYmlsZSAqL1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4xMjVyZW07XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA0OHB4OyAvKiBNaW5pbXVtIHRvdWNoIHRhcmdldCBzaXplICovXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcblxuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XG4gICAgICAgICAgICAgICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjY2VkNGRhO1xuICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICNjZWQ0ZGE7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoMCwwLDAsMC4xKTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuXG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyNHB4OyAvKiBMYXJnZXIgaWNvbnMgZm9yIG1vYmlsZSAqL1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMC43NXJlbTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjFlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc21hbGwge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEZvY3VzIGluZGljYXRvcnMgZm9yIGtleWJvYXJkIG5hdmlnYXRpb25cbiAgICAgICAgICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgICAgICAgICAgb3V0bGluZTogMnB4IHNvbGlkIHZhcigtLWJzLXByaW1hcnkpO1xuICAgICAgICAgICAgICAgIG91dGxpbmUtb2Zmc2V0OiAycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLnByb2ZpbGUtYXZhdGFyIHtcbiAgICAgICAgd2lkdGg6IDY0cHg7IC8qIFNtYWxsZXIgb24gbW9iaWxlICovXG4gICAgICAgIGhlaWdodDogNjRweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgYm9yZGVyOiAzcHggc29saWQgI2ZmZjtcbiAgICAgICAgYm94LXNoYWRvdzogMCAycHggOHB4IHJnYmEoMCwwLDAsMC4xKTtcbiAgICB9XG4gICAgXG4gICAgLnByb2ZpbGUtaGVhZGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIH1cbiAgICBcbiAgICAucHJvZmlsZS1jYXJkIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIH1cbiAgICBcbiAgICAuc3RhdC1jYXJkIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiAxLjI1cmVtIDFyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2U5ZWNlZjtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDEycHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnN0YXQtdmFsdWUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgIH1cblxuICAgICAgICAuc3RhdC1sYWJlbCB7XG4gICAgICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuMjVyZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogTW9iaWxlIE5hdmlnYXRpb24gU3BlY2lmaWMgKi9cbiAgICAubmF2LXBpbGxzLW1vYmlsZSAubmF2LWxpbmsge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICAgIH1cbiAgICBcbiAgICAvKiBCcmVhZGNydW1iIE1vYmlsZSBPcHRpbWl6YXRpb24gKi9cbiAgICAuYnJlYWRjcnVtYiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcblxuICAgICAgICAuYnJlYWRjcnVtYi1pdGVtIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG5cbiAgICAgICAgICAgICsgLmJyZWFkY3J1bWItaXRlbTo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjNyZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjNyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogQWxlcnQgT3B0aW1pemF0aW9ucyAqL1xuICAgIC5hbGVydCB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgcGFkZGluZzogMC44NzVyZW0gMXJlbTtcbiAgICB9XG4gICAgXG4gICAgLyogTW9iaWxlIFRvdWNoIEltcHJvdmVtZW50cyAqL1xuICAgIC5idG4ge1xuICAgICAgICBtaW4taGVpZ2h0OiAzOHB4OyAvKiBSZWR1Y2VkIGhlaWdodCAqL1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTsgLyogUmVkdWNlZCBwYWRkaW5nICovXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDhweCByZ2JhKDAsMCwwLDAuMTUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgICAgIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICAgICAgICAgIG91dGxpbmUtb2Zmc2V0OiAycHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIFRvdWNoIGludGVyYWN0aW9uIGZlZWRiYWNrICovXG4gICAgLnRvdWNoLWFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMTIzLCAyNTUsIDAuMSkgIWltcG9ydGFudDtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk4KTtcbiAgICB9XG4gICAgXG4gICAgLyogU21vb3RoIHRyYW5zaXRpb25zIGZvciBtb2JpbGUgbmF2ICovXG4gICAgI21vYmlsZS1wcm9maWxlLW5hdiB7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICAgIH1cbiAgICBcbiAgICAvKiBUYWJsZXQgU3R5bGVzIChtZCBicmVha3BvaW50IGFuZCB1cCkgKi9cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgLnByb2ZpbGUtc2lkZWJhciB7XG4gICAgICAgICAgICAvKiBwYWRkaW5nIGhhbmRsZWQgYnkgY2FyZC1ib2R5ICovXG5cbiAgICAgICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMC44NzVyZW0gMXJlbTtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiBhdXRvO1xuXG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucHJvZmlsZS1hdmF0YXIge1xuICAgICAgICAgICAgd2lkdGg6IDcycHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDcycHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5wcm9maWxlLWNhcmQge1xuICAgICAgICAgICAgcGFkZGluZzogMS4yNXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5zdGF0LWNhcmQge1xuICAgICAgICAgICAgcGFkZGluZzogMS41cmVtO1xuXG4gICAgICAgICAgICAuc3RhdC12YWx1ZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuYnJlYWRjcnVtYiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBEZXNrdG9wIFN0eWxlcyAobGcgYnJlYWtwb2ludCBhbmQgdXApICovXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIC5wcm9maWxlLXNpZGViYXIge1xuICAgICAgICAgICAgLyogcGFkZGluZyBoYW5kbGVkIGJ5IGNhcmQtYm9keSAqL1xuXG4gICAgICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnByb2ZpbGUtYXZhdGFyIHtcbiAgICAgICAgICAgIHdpZHRoOiA5MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA5MHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucHJvZmlsZS1oZWFkZXIge1xuICAgICAgICAgICAgcGFkZGluZzogMS41cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnByb2ZpbGUtY2FyZCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5zdGF0LWNhcmQge1xuICAgICAgICAgICAgLnN0YXQtdmFsdWUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMi4yNXJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnN0YXQtbGFiZWwge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5icmVhZGNydW1iIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBMYXJnZSBEZXNrdG9wIFN0eWxlcyAoeGwgYnJlYWtwb2ludCBhbmQgdXApICovXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgICAuc3RhdC1jYXJkOmhvdmVyIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtM3B4KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBBY2Nlc3NpYmlsaXR5IEltcHJvdmVtZW50cyAqL1xuICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICAgIC5wcm9maWxlLXNpZGViYXIgLm5hdi1saW5rLFxuICAgICAgICAucHJvZmlsZS1jYXJkLFxuICAgICAgICAuc3RhdC1jYXJkLFxuICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5zdGF0LWNhcmQ6aG92ZXIsXG4gICAgICAgIC5idG46aG92ZXIge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIEhpZ2ggY29udHJhc3QgbW9kZSBzdXBwb3J0ICovXG4gICAgQG1lZGlhIChwcmVmZXJzLWNvbnRyYXN0OiBoaWdoKSB7XG4gICAgICAgIC5wcm9maWxlLXNpZGViYXIgLm5hdi1saW5rIHtcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICM2Yzc1N2Q7XG5cbiAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucHJvZmlsZS1jYXJkLFxuICAgICAgICAuc3RhdC1jYXJkIHtcbiAgICAgICAgICAgIGJvcmRlci13aWR0aDogMnB4O1xuICAgICAgICB9XG4gICAgfVxufSIsIi8qKlxuICogUHJvZmlsZSBBZGRyZXNzZXMgUGFnZSBTdHlsZXNcbiAqL1xuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2Uge1xuICAgIC5hZGRyZXNzLWNhcmQge1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAuNXJlbSAxcmVtIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLmRlZmF1bHQtYWRkcmVzcyB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2ZmZiAwJSwgI2Y4ZjlmZiAxMDAlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5hZGRyZXNzLWRldGFpbHMge1xuICAgICAgICAgICAgbWluLWhlaWdodDogMTIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuYmFkZ2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuXG4gICAgICAgICAgICAmLmJnLXByaW1hcnkge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLXByaW1hcnkpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLy8gSWNvbi1vbmx5IGRyb3Bkb3duIHRvZ2dsZSBidXR0b25zXG4gICAgLmRyb3Bkb3duIC5idG4tb3V0bGluZS1zZWNvbmRhcnkuYnRuLXNtLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICAgIHdpZHRoOiAzMnB4O1xuICAgICAgICBoZWlnaHQ6IDMycHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC50ZXh0LXN1Y2Nlc3Mge1xuICAgICAgICBjb2xvcjogIzE5ODc1NCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5mYS0zeCB7XG4gICAgICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICB9XG5cbiAgICAvLyBBY2Nlc3NpYmlsaXR5IGltcHJvdmVtZW50cyBmb3IgcmVkdWNlZCBtb3Rpb25cbiAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgICAuYWRkcmVzcy1jYXJkIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvLyBQcm9maWxlIFNlY3VyaXR5IFBhZ2UgU3R5bGVzXG4ucHJvZmlsZS1zZWN1cml0eS1wYWdlIHtcbiAgICAucGFzc3dvcmQtcmVxdWlyZW1lbnRzIHtcbiAgICAgICAgLnJlcXVpcmVtZW50IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICYudmFsaWQge1xuICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzE5ODc1NCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYwMGNcIjsgLy8gZmEtY2hlY2tcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAucGFzc3dvcmQtc3RyZW5ndGgge1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcbiAgICB9XG4gICAgXG4gICAgLnByb2dyZXNzLWJhciB7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgfVxuICAgIFxuICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICAgIC5idG4ge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5mb3JtLWNvbnRyb2w6Zm9jdXMgKyAuYnRuIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLnRhYmxlIGNvZGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICAgICAgICBwYWRkaW5nOiAwLjJyZW0gMC40cmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIH1cbn0iLCIvLyBQcm9maWxlIEludm9pY2UgUGFnZSBTdHlsZXNcbi5wYWdlLWlzLXByb2ZpbGUtaW52b2ljZSB7XG4gICAgLmludm9pY2UtY29udGFpbmVyIHtcbiAgICAgICAgbWF4LXdpZHRoOiA4MDBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICB9XG59XG5cbi8vIFByaW50IHN0eWxlcyBmb3IgaW52b2ljZVxuQG1lZGlhIHByaW50IHtcbiAgICAubmF2YmFyLFxuICAgIC5mb290ZXIsXG4gICAgLm5vLXByaW50LFxuICAgIC5icmVhZGNydW1iIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbiAgICAuaW52b2ljZS1jb250YWluZXIge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuICAgIFxuICAgIGJvZHkge1xuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICB9XG59IiwiLyoqXG4gKiBCbG9nIEluZGV4IFBhZ2UgU3R5bGVzXG4gKiBTdHlsZXMgZm9yIHRoZSBtYWluIGJsb2cgbGlzdGluZyBwYWdlXG4gKi9cblxuLnBhZ2UtaXMtYmxvZy1pbmRleCB7XG4gICAgLyogSGVybyBTZWN0aW9uICovXG4gICAgLmhlcm8tZmVhdHVyZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWluLWhlaWdodDogNDAwcHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLDAsMCwwLjMpLCByZ2JhKDAsMCwwLDAuOCkpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIEZlYXR1cmVkIENhcmRzICovXG4gICAgLmZlYXR1cmVkLWNhcmQge1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRodW1ibmFpbCB7XG4gICAgICAgICAgICBoZWlnaHQ6IDI1MHB4O1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBDYXRlZ29yeSBCYWRnZXMgKi9cbiAgICAuY2F0ZWdvcnktYmFkZ2Uge1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gICAgfVxuXG4gICAgLyogQmxvZyBQb3N0IENhcmRzICovXG4gICAgLmJsb2ctcG9zdCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzcmVtO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RlZTJlNjtcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5ibG9nLXBvc3QtdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzBkNmVmZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5ibG9nLXBvc3QtbWV0YSB7XG4gICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICM0OTUwNTc7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyogU2lkZWJhciAqL1xuICAgIC5zaWRlYmFyLXNlY3Rpb24ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuXG4gICAgICAgIGg0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBBcmNoaXZlIExpc3QgKi9cbiAgICAuYXJjaGl2ZS1saXN0IHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjBmMGYwO1xuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBQb3B1bGFyIFBvc3RzICovXG4gICAgLnBvcHVsYXItcG9zdCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGdhcDogMXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wb3B1bGFyLXBvc3QtY29udGVudCB7XG4gICAgICAgIGg2IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMwZDZlZmQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnBvcHVsYXItcG9zdC1tZXRhIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICB9XG5cbiAgICAvLyBBY2Nlc3NpYmlsaXR5IGltcHJvdmVtZW50cyBmb3IgcmVkdWNlZCBtb3Rpb25cbiAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgICAuZmVhdHVyZWQtY2FyZCB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLy8gQmxvZyBTaG93IFBhZ2UgU3R5bGVzXG4ucGFnZS1pcy1ibG9nLXNob3cge1xuICAgIC8qIEJsb2cgUG9zdCBTdHlsZXMgKi9cbiAgICAuYmxvZy1wb3N0LWhlYWRlciB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgICB9XG4gICAgXG4gICAgLmJsb2ctcG9zdC10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIH1cbiAgICBcbiAgICAuYmxvZy1wb3N0LW1ldGEge1xuICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICM0OTUwNTc7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzBkNmVmZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuYmxvZy1wb3N0LWltYWdlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIH1cbiAgICBcbiAgICAuYmxvZy1wb3N0LWNvbnRlbnQge1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS43NTtcbiAgICAgICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgICAgIFxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgaDIsXG4gICAgICAgIGgzLFxuICAgICAgICBoNCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBOYXZpZ2F0aW9uICovXG4gICAgLnBvc3QtbmF2aWdhdGlvbiB7XG4gICAgICAgIG1hcmdpbjogMjBweDtcbiAgICAgICAgLyogbWFyZ2luLXRvcDogM3JlbTsgKi9cbiAgICAgICAgLyogcGFkZGluZy10b3A6IDJyZW07ICovXG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgIH1cbiAgICBcbiAgICAubmF2LXBvc3Qge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzIGVhc2U7XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAjMGQ2ZWZkO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5uYXYtcG9zdC1sYWJlbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgICB9XG4gICAgXG4gICAgLyogUmVsYXRlZCBQb3N0cyAqL1xuICAgIC5yZWxhdGVkLXBvc3RzIHtcbiAgICAgICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgICAgICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgIH1cbiAgICBcbiAgICAucmVsYXRlZC1wb3N0LWNhcmQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2U7XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAucmVsYXRlZC1wb3N0LWltYWdlIHtcbiAgICAgICAgaGVpZ2h0OiAyMDBweDtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgfVxuICAgIFxuICAgIC8qIFNpZGViYXIgU3R5bGVzIChzYW1lIGFzIGJsb2cgaW5kZXgpICovXG4gICAgLnNpZGViYXItc2VjdGlvbiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgIFxuICAgICAgICBoNCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIEFyY2hpdmUgTGlzdCAqL1xuICAgIC5hcmNoaXZlLWxpc3Qge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgcGFkZGluZzogMC41cmVtIDA7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2YwZjBmMDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIFBvcHVsYXIgUG9zdHMgKi9cbiAgICAucG9wdWxhci1wb3N0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZ2FwOiAxcmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICBcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLnBvcHVsYXItcG9zdC1jb250ZW50IHtcbiAgICAgICAgaDYge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMwZDZlZmQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5wb3B1bGFyLXBvc3QtbWV0YSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgfVxufSIsIi8vIEJsb2cgQ2F0ZWdvcmllcyBQYWdlIFN0eWxlc1xuLnBhZ2UtaXMtYmxvZy1jYXRlZ29yaWVzIHtcbiAgICAvKiBIZXJvIFNlY3Rpb24gKi9cbiAgICAuY2F0ZWdvcmllcy1oZXJvIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2Y4ZjlmYSAwJSwgI2U5ZWNlZiAxMDAlKTtcbiAgICAgICAgcGFkZGluZzogODBweCAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgICAgICBcbiAgICAgICAgaDEge1xuICAgICAgICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC41cHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubGVhZCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgICAgIG1heC13aWR0aDogNjAwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBDYXRlZ29yeSBDYXJkcyAqL1xuICAgIC5jYXRlZ29yeS1jYXJkIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjc1cmVtO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMC4xMjVyZW0gMC41cmVtIHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMC41cmVtIDEuNXJlbSByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmNhcmQtaW1nLXdyYXBwZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGhlaWdodDogMjAwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjNjY3ZWVhIDAlLCAjNzY0YmEyIDEwMCUpO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAmLm5vLWltYWdlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuY2FyZC1ib2R5IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmNhcmQtdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuY2FyZC10ZXh0IHtcbiAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAzO1xuICAgICAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmNhdGVnb3J5LXN0YXRzIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlOWVjZWY7XG4gICAgICAgIFxuICAgICAgICAuc3RhdCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM0OTUwNTc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogQ2F0ZWdvcnkgTGluayAqL1xuICAgIC5jYXRlZ29yeS1saW5rIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogU2lkZWJhciBTdHlsZXMgKi9cbiAgICAuYmxvZy1zaWRlYmFyIHtcbiAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgdG9wOiAxMDBweDtcbiAgICB9XG4gICAgXG4gICAgLnNpZGViYXItd2lkZ2V0IHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICAgICAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMC4xMjVyZW0gMC41cmVtIHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gICAgICAgIFxuICAgICAgICBoNCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbSAwO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjFmM2Y1O1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNDk1MDU3O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGVhc2U7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjMGQ2ZWZkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIFBvcHVsYXIgUG9zdHMgV2lkZ2V0ICovXG4gICAgLnBvcHVsYXItcG9zdCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGdhcDogMXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5wb3B1bGFyLXBvc3QtaW1nIHtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGJhY2tncm91bmQ6ICNlOWVjZWY7XG4gICAgICAgIFxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAucG9wdWxhci1wb3N0LWNvbnRlbnQge1xuICAgICAgICBoNiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAudGV4dC1tdXRlZCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogUmVzcG9uc2l2ZSAqL1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAuY2F0ZWdvcmllcy1oZXJvIGgxIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmJsb2ctc2lkZWJhciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgICAgICB9XG4gICAgfVxufSIsIi8vIEF1dGggTG9naW4gUGFnZSBTdHlsZXMgLSBFbGVnYW50IEpld2VscnkgVGhlbWVcbi5wYWdlX2lzX2xvZ2luX3BhZ2UsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIHtcbiAgICBcbiAgICAvLyBNYWluIHdyYXBwZXIgd2l0aCBkaWFtb25kIGJhY2tncm91bmRcbiAgICAubG9naW4tcGFnZS13cmFwcGVyIHtcbiAgICAgICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1nL2Jhbm5lci9iZy1TaWduSW4ud2VicCcpO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcGFkZGluZy10b3A6IDEwMHB4OyAvLyBNYXhpbXVtIHRvcCBwYWRkaW5nXG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gICAgICAgIFxuICAgICAgICAvLyBGYWxsYmFjayB0byBQTkcgaWYgV2ViUCBub3Qgc3VwcG9ydGVkXG4gICAgICAgIC5uby13ZWJwICYge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1nL2Jhbm5lci9iZy1TaWduSW4ucG5nJyk7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8vIFByb2dyZXNzaXZlbHkgcmVkdWNlIHRvcCBwYWRkaW5nIG9uIHNtYWxsZXIgc2NyZWVuc1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogODBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNjBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBDb250YWluZXIgZm9yIGNvbnN0cmFpbmVkIHdpZHRoXG4gICAgLmxvZ2luLWNvbnRhaW5lciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDkwMHB4OyAvLyBSZWR1Y2VkIGZyb20gMTIwMHB4XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICAgIFxuICAgIC8vIE1haW4gbG9naW4gY2FyZCAtIGVsZWdhbnQgZGVzaWduXG4gICAgLmxvZ2luLWNhcmQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICAgICAgICBib3gtc2hhZG93OiAwIDIwcHggNjBweCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICAgIH1cbiAgICBcbiAgICAvLyBMb2dvIGhlYWRlciBzZWN0aW9uXG4gICAgLmxvZ2luLWhlYWRlciB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMzBweCAyMHB4O1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2YwZjBmMDtcbiAgICAgICAgXG4gICAgICAgIC5sb2dpbi1sb2dvLWltZyB7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubHV4dXJ5LXRhZ2xpbmUge1xuICAgICAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gTWFpbiBjb250ZW50IGFyZWEgd2l0aCBjb2x1bW5zXG4gICAgLmxvZ2luLWNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBtaW4taGVpZ2h0OiA0MDBweDtcbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBDb2x1bW4gc3R5bGluZ1xuICAgIC5sb2dpbi1jb2x1bW4ge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDM1cHggNjBweCAzNXB4OyAvLyB0b3AgcmVkdWNlZCBieSAyMHB4LCBib3R0b20gaW5jcmVhc2VkIGJ5IDIwcHhcbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgcGFkZGluZzogMTVweCAyNXB4IDQ1cHggMjVweDsgLy8gc2FtZSBhZGp1c3RtZW50IGZvciBtb2JpbGVcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBMZWZ0IGNvbHVtbiAtIGxvZ2luIGZvcm1cbiAgICAubG9naW4tZm9ybS1jb2x1bW4ge1xuICAgICAgICAuY29sdW1uLWNvbnRlbnQge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAzNDBweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIEVsZWdhbnQgZGl2aWRlciAtIFwiYm9vayBzcGluZVwiIGVmZmVjdFxuICAgIC5ib29rLXNwaW5lIHtcbiAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgXG4gICAgICAgICAgICB0cmFuc3BhcmVudCAwJSwgXG4gICAgICAgICAgICAjZTBlMGUwIDIwJSwgXG4gICAgICAgICAgICAjZTBlMGUwIDgwJSwgXG4gICAgICAgICAgICB0cmFuc3BhcmVudCAxMDAlXG4gICAgICAgICk7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luOiA0MHB4IDA7XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5zcGluZS1kZWNvcmF0aW9uIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAuc3BpbmUtZ2VtIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2Q0YWYzNzsgLy8gR29sZCBjb2xvclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBGb3JtIHR5cG9ncmFwaHlcbiAgICAud2VsY29tZS10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgY29sb3I6ICMxZTFlNTY7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjVweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICBcbiAgICAud2VsY29tZS1zdWJ0aXRsZSB7XG4gICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgXG4gICAgLy8gRm9ybSBzdHlsaW5nXG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICAgIH1cbiAgICBcbiAgICAuZm9ybS1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAjNDk1MDU3O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA2cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgIH1cbiAgICBcbiAgICAuZWxlZ2FudC1pbnB1dCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgcGFkZGluZzogMTBweCAxNHB4O1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmYWZiZmM7XG4gICAgICAgIFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzFlMWU1NjtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDNweCByZ2JhKDMwLCAzMCwgODYsIDAuMDgpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAjYWRiNWJkO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgXG4gICAgICAgIC5mb3JtLWNvbnRyb2wsXG4gICAgICAgIC5lbGVnYW50LWlucHV0LFxuICAgICAgICAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNDBweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5pbnB1dC1pY29uIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAxNHB4O1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICBjb2xvcjogI2FkYjViZDtcbiAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB9XG4gICAgXG4gICAgLnBhc3N3b3JkLXRvZ2dsZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDE0cHg7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgY29sb3I6ICNhZGI1YmQ7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4ycztcbiAgICAgICAgXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICM0OTUwNTc7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gRm9yZ290IHBhc3N3b3JkIGxpbmtcbiAgICAuZm9yZ290LWxpbmsge1xuICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMnM7XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAjMWUxZTU2O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gRWxlZ2FudCBsb2dpbiBidXR0b25cbiAgICAuYnRuLWVsZWdhbnQtbG9naW4ge1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMWUxZTU2IDAlLCAjMmEyYTdhIDEwMCUpO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBwYWRkaW5nOiAxMnB4IDI0cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgYm94LXNoYWRvdzogMCA0cHggMTVweCByZ2JhKDMwLCAzMCwgODYsIDAuMik7XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgNnB4IDI1cHggcmdiYSgzMCwgMzAsIDg2LCAwLjMpO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzJhMmE3YSAwJSwgIzFlMWU1NiAxMDAlKTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIEFsZXJ0IHN0eWxpbmdcbiAgICAuYWxlcnQtZWxlZ2FudCB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgcGFkZGluZzogMTBweCAxNHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgXG4gICAgICAgICYuYWxlcnQtZGFuZ2VyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY1ZjU7XG4gICAgICAgICAgICBjb2xvcjogI2Q5NTM0ZjtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAzcHggc29saWQgI2Q5NTM0ZjtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBSaWdodCBjb2x1bW4gLSBjcmVhdGUgYWNjb3VudFxuICAgIC5jcmVhdGUtYWNjb3VudC1jb2x1bW4ge1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZmFmYmZjIDAlLCAjZjVmN2ZhIDEwMCUpO1xuICAgICAgICBcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2UwZTBlMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAubmV3LW1lbWJlci1zZWN0aW9uIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICBcbiAgICAuam9pbi10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgY29sb3I6ICMxZTFlNTY7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC41cHg7XG4gICAgfVxuICAgIFxuICAgIC5qb2luLXN1YnRpdGxlIHtcbiAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICB9XG4gICAgXG4gICAgLy8gQmVuZWZpdHMgbGlzdFxuICAgIC5iZW5lZml0cy1saXN0IHtcbiAgICAgICAgbWFyZ2luOiAyNXB4IDA7XG4gICAgfVxuICAgIFxuICAgIC5iZW5lZml0LWl0ZW0ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgICAgICAgY29sb3I6ICM0OTUwNTc7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgXG4gICAgICAgIGkge1xuICAgICAgICAgICAgY29sb3I6ICNkNGFmMzc7IC8vIEdvbGQgYWNjZW50XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gQ3JlYXRlIGFjY291bnQgYnV0dG9uXG4gICAgLmJ0bi1jcmVhdGUtZWxlZ2FudCB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjMWUxZTU2O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgIGNvbG9yOiAjMWUxZTU2O1xuICAgICAgICBwYWRkaW5nOiAxMnB4IDI0cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzFlMWU1NjtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDE1cHggcmdiYSgzMCwgMzAsIDg2LCAwLjIpO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIFNvY2lhbCBsb2dpbiBkaXZpZGVyXG4gICAgLnNvY2lhbC1kaXZpZGVyIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDI1cHggMCAyMHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIFxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2RlZTJlNjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZmFmYmZjIDAlLCAjZjVmN2ZhIDEwMCUpO1xuICAgICAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBTb2NpYWwgbG9naW4gYnV0dG9uc1xuICAgIC5zb2NpYWwtbG9naW4tZWxlZ2FudCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBnYXA6IDEwcHg7XG4gICAgfVxuICAgIFxuICAgIC5zb2NpYWwtYnRuLWVsZWdhbnQge1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICMxZTFlNTY7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDNweCAxMHB4IHJnYmEoMzAsIDMwLCA4NiwgMC4xNSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmFmYmZjO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIE1vYmlsZSBvbmx5IGNyZWF0ZSBhY2NvdW50IHNlY3Rpb25cbiAgICAubW9iaWxlLWNyZWF0ZS1hY2NvdW50IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlMGUwZTA7XG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyNXB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZGl2aWRlci10ZXh0IHtcbiAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmJ0bi1vdXRsaW5lLWVsZWdhbnQge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjMWUxZTU2O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICAgICAgY29sb3I6ICMxZTFlNTY7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogIzFlMWU1NjtcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gRm9ybSB2YWxpZGF0aW9uIHN0eWxlc1xuICAgIC53YXMtdmFsaWRhdGVkIHtcbiAgICAgICAgLmZvcm0tY29udHJvbCxcbiAgICAgICAgLmVsZWdhbnQtaW5wdXQge1xuICAgICAgICAgICAgJjppbnZhbGlkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICNkYzM1NDU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYSgyMjAsIDUzLCA2OSwgMC4xKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICY6dmFsaWQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzI4YTc0NTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICMyOGE3NDU7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDNweCByZ2JhKDQwLCAxNjcsIDY5LCAwLjEpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuaW52YWxpZC1mZWVkYmFjayB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgbWFyZ2luLXRvcDogNHB4O1xuICAgICAgICBjb2xvcjogI2RjMzU0NTtcbiAgICB9XG4gICAgXG4gICAgLy8gUmVzcG9uc2l2ZSBhZGp1c3RtZW50c1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAubG9naW4tY2FyZCB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubG9naW4taGVhZGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDI1cHggMjBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLndlbGNvbWUtdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuam9pbi10aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gTWVkaXVtIHNjcmVlbnMgZm9yIGJldHRlciByZWFkYWJpbGl0eVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgIC5sb2dpbi1jb250YWluZXIge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA3MDBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmxvZ2luLWNvbHVtbiB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzNXB4IDMwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gTGFyZ2Ugc2NyZWVucyAtIHByZXZlbnQgb3Zlci1zdHJldGNoaW5nXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xuICAgICAgICAubG9naW4tY29udGFpbmVyIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogOTUwcHg7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLy8gQXV0aCBSZWdpc3RlciBQYWdlIFN0eWxlc1xuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSB7XG4gICAgLnJlZ2lzdGVyLXBhZ2Utd3JhcHBlciB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltZy9iYW5uZXIvYmctU2lnbkluLndlYnAnKTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMDBweDsgLy8gTWF4aW11bSB0b3AgcGFkZGluZ1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgICAgICBcbiAgICAgICAgLy8gRmFsbGJhY2sgdG8gUE5HIGlmIFdlYlAgbm90IHN1cHBvcnRlZFxuICAgICAgICAubm8td2VicCAmIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltZy9iYW5uZXIvYmctU2lnbkluLnBuZycpO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvLyBQcm9ncmVzc2l2ZWx5IHJlZHVjZSB0b3AgcGFkZGluZyBvbiBzbWFsbGVyIHNjcmVlbnNcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDgwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDYwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDUwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDQwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLnJlZ2lzdGVyLWNvbnRhaW5lciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEyMDBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICB9XG4gICAgXG4gICAgLnJlZ2lzdGVyLWNhcmQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgICAgICBib3gtc2hhZG93OiAwIDEwcHggNDBweCByZ2JhKDMwLCAzMCwgODYsIDAuMDgpO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBtYXgtd2lkdGg6IDYwMHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG4gICAgXG4gICAgLnJlZ2lzdGVyLXJvdyB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDcwMHB4O1xuICAgIH1cbiAgICBcbiAgICAvLyBMZWZ0IHNpZGUgLSBGb3JtXG4gICAgLnJlZ2lzdGVyLWZvcm0tc2VjdGlvbiB7XG4gICAgICAgIHBhZGRpbmc6IDYwcHggNTBweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICAgIFxuICAgIC5yZWdpc3Rlci1sb2dvIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgICBcbiAgICAgICAgaDEge1xuICAgICAgICAgICAgZm9udC1zaXplOiAzNnB4O1xuICAgICAgICAgICAgY29sb3I6ICMxZTFlNTY7XG4gICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnRhZ2xpbmUge1xuICAgICAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLnJlZ2lzdGVyLWZvcm0ge1xuICAgICAgICBoMiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgICAgICBjb2xvcjogIzFlMWU1NjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuc3VidGl0bGUge1xuICAgICAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG4gICAgXG4gICAgLmZvcm0tbGFiZWwge1xuICAgICAgICBjb2xvcjogIzQ5NTA1NztcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICBcbiAgICAvLyBGb3JtIGNvbnRyb2xzIG5vdyB1c2UgZGVmYXVsdCBmcm9udGVuZCBzdHlsZXMgZnJvbSBfZm9ybXMuc2Nzc1xuICAgIFxuICAgIC5idG4tcmVnaXN0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMWUxZTU2O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBwYWRkaW5nOiAxNHB4IDMwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzJhMmE3YTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgNXB4IDIwcHggcmdiYSgzMCwgMzAsIDg2LCAwLjMpO1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5yZWdpc3Rlci1saW5rcyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICMxZTFlNTY7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBSaWdodCBzaWRlIC0gUHJlbWl1bSBDVEFcbiAgICAucmVnaXN0ZXItaW1hZ2Utc2VjdGlvbiB7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMxZTFlNTYgMCUsICMyYTJhN2EgMTAwJSk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiA2MHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIFxuICAgICAgICAvLyBCYWNrZ3JvdW5kIHBhdHRlcm5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAtNTAlO1xuICAgICAgICAgICAgcmlnaHQ6IC01MCU7XG4gICAgICAgICAgICB3aWR0aDogMjAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMjAwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoXG4gICAgICAgICAgICAgICAgNDVkZWcsXG4gICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQsXG4gICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgMTBweCxcbiAgICAgICAgICAgICAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDMpIDEwcHgsXG4gICAgICAgICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAzKSAyMHB4XG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBzbGlkZSAyMHMgbGluZWFyIGluZmluaXRlO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5yZWdpc3Rlci1pbWFnZS1jb250ZW50IHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgXG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucHJpY2UtdGFnIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNDhweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgY29sb3I6ICNmZmQ3MDA7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5wcmljZS1wZXJpb2Qge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgb3BhY2l0eTogMC45O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuY3Jvd24tZ3JhcGhpYyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTIwcHg7XG4gICAgICAgIG9wYWNpdHk6IDAuOTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgYW5pbWF0aW9uOiBmbG9hdCA2cyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbiAgICB9XG4gICAgXG4gICAgLnByZW1pdW0tZmVhdHVyZXMge1xuICAgICAgICBtYXJnaW46IDQwcHggMDtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZDcwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuYnRuLWxlYXJuLW1vcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNmZmY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBwYWRkaW5nOiAxNHB4IDQwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgIGNvbG9yOiAjMWUxZTU2O1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCA1cHggMjBweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gQW5pbWF0aW9uc1xuICAgIEBrZXlmcmFtZXMgZmxvYXQge1xuICAgICAgICAwJSwgMTAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpOyB9XG4gICAgICAgIDUwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7IH1cbiAgICB9XG4gICAgXG4gICAgQGtleWZyYW1lcyBzbGlkZSB7XG4gICAgICAgIDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH1cbiAgICAgICAgMTAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlKDUwcHgsIDUwcHgpOyB9XG4gICAgfVxuICAgIFxuICAgIC8vIEZvcm0gdmFsaWRhdGlvbiBzdHlsZXNcbiAgICAuaW52YWxpZC1mZWVkYmFjaywgLmVycm9yLWhlbHAtYmxvY2sge1xuICAgICAgICBjb2xvcjogI2RjMzU0NTtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICBcbiAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgY29sb3I6ICNhZGI1YmQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYuaXMtaW52YWxpZCB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICNkYzM1NDU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gU29jaWFsIGxvZ2luIGNhcmQgc2VjdGlvblxuICAgIC5zb2NpYWwtbG9naW4tc2VjdGlvbiB7XG4gICAgICAgIHBhZGRpbmc6IDQwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgXG4gICAgLnNvY2lhbC1sb2dpbi10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgY29sb3I6ICMxZTFlNTY7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuICAgIFxuICAgIC5zb2NpYWwtcHJvdmlkZXJzLWdyaWQge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDIwMHB4LCAxZnIpKTtcbiAgICAgICAgZ2FwOiAyMHB4O1xuICAgICAgICBtYXgtd2lkdGg6IDgwMHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG4gICAgXG4gICAgLnNvY2lhbC1wcm92aWRlci1jYXJkIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMjBweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2UwZTBlMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZjhmOWZhO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgNXB4IDE1cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMWUxZTU2O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLnNvY2lhbC1wcm92aWRlci1uYW1lIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzFlMWU1NjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuc29jaWFsLXByb3ZpZGVyLWljb24ge1xuICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgfVxuICAgIFxuICAgIC5zb2NpYWwtcHJvdmlkZXItbmFtZSB7XG4gICAgICAgIGNvbG9yOiAjNDk1MDU3O1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgfVxuICAgIFxuICAgIC8vIE1lZGl1bSBzY3JlZW5zIGFkanVzdG1lbnRcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxNDAwcHgpIHtcbiAgICAgICAgLnJlZ2lzdGVyLWNvbnRhaW5lciB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDIwMHB4KTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnJlZ2lzdGVyLWNhcmQge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMTAwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5yZWdpc3Rlci1yb3cge1xuICAgICAgICAgICAgbWluLWhlaWdodDogNTAwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5yZWdpc3Rlci1mb3JtLXNlY3Rpb24ge1xuICAgICAgICAgICAgcGFkZGluZzogNDBweCAzMHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucmVnaXN0ZXItbG9nbyBoMSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5yZWdpc3Rlci1mb3JtIGgyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmZvcm0tZ3JvdXAge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLy8gRm9ybSBjb250cm9scyB1c2UgZGVmYXVsdCBmcm9udGVuZCBzdHlsZXNcbiAgICAgICAgXG4gICAgICAgIC5idG4tcmVnaXN0ZXIge1xuICAgICAgICAgICAgcGFkZGluZzogMTJweCAyNXB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucmVnaXN0ZXItaW1hZ2Utc2VjdGlvbiB7XG4gICAgICAgICAgICBwYWRkaW5nOiA0MHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuY3Jvd24tZ3JhcGhpYyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDgwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5yZWdpc3Rlci1pbWFnZS1jb250ZW50IHtcbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI2cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5wcmljZS10YWcge1xuICAgICAgICAgICAgZm9udC1zaXplOiAzNnB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucHJlbWl1bS1mZWF0dXJlcyBsaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuc29jaWFsLWxvZ2luLXNlY3Rpb24ge1xuICAgICAgICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnNvY2lhbC1wcm92aWRlcnMtZ3JpZCB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDE1MHB4LCAxZnIpKTtcbiAgICAgICAgICAgIGdhcDogMTVweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBNb2JpbGUgcmVzcG9uc2l2ZVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAucmVnaXN0ZXItaW1hZ2Utc2VjdGlvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucmVnaXN0ZXItZm9ybS1zZWN0aW9uIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDQwcHggMzBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnJlZ2lzdGVyLXJvdyB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAgICAgICAucmVnaXN0ZXItZm9ybS1zZWN0aW9uIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnJlZ2lzdGVyLWxvZ28gaDEge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucmVnaXN0ZXItZm9ybSBoMiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5zb2NpYWwtbG9naW4tc2VjdGlvbiB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuc29jaWFsLXByb3ZpZGVycy1ncmlkIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgICAgICAgICAgZ2FwOiAxMHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuc29jaWFsLXByb3ZpZGVyLWNhcmQge1xuICAgICAgICAgICAgcGFkZGluZzogMTJweCAxNXB4O1xuICAgICAgICB9XG4gICAgfVxufSIsIi8vIEF1dGggVmVyaWZ5IEVtYWlsIFBhZ2UgU3R5bGVzXG4ucGFnZV9pc192ZXJpZnlfcGFnZSB7XG4gICAgLnZlcmlmeS1wYWdlLXdyYXBwZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZDogI2Y4ZjlmYTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwYWRkaW5nOiA1MHB4IDA7XG4gICAgICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSAzMDBweCk7XG4gICAgfVxuICAgIFxuICAgIC52ZXJpZnktY29udGFpbmVyIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogNjAwcHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgfVxuICAgIFxuICAgIC52ZXJpZnktY2FyZCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMTBweCA0MHB4IHJnYmEoMzAsIDMwLCA4NiwgMC4wOCk7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogNjBweCA0MHB4O1xuICAgIH1cbiAgICBcbiAgICAudmVyaWZ5LWljb24ge1xuICAgICAgICBmb250LXNpemU6IDgwcHg7XG4gICAgICAgIGNvbG9yOiAjMWUxZTU2O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICBhbmltYXRpb246IHB1bHNlIDJzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xuICAgIH1cbiAgICBcbiAgICBAa2V5ZnJhbWVzIHB1bHNlIHtcbiAgICAgICAgMCUsIDEwMCUgeyBcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IFxuICAgICAgICAgICAgb3BhY2l0eTogMTsgXG4gICAgICAgIH1cbiAgICAgICAgNTAlIHsgXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpOyBcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuODsgXG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLnZlcmlmeS10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICAgICAgY29sb3I6ICMxZTFlNTY7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuICAgIFxuICAgIC52ZXJpZnktbWVzc2FnZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgfVxuICAgIFxuICAgIC52ZXJpZnktaW5zdHJ1Y3Rpb25zIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2Y4ZjlmYTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICBtYXJnaW46IDMwcHggMDtcbiAgICAgICAgXG4gICAgICAgIGg0IHtcbiAgICAgICAgICAgIGNvbG9yOiAjMWUxZTU2O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgdWwge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICAgICAgICAgIGNvbG9yOiAjNDk1MDU3O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5idG4tcmVzZW5kIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzFlMWU1NjtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgcGFkZGluZzogMTRweCA0MHB4O1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMyYTJhN2E7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDVweCAyMHB4IHJnYmEoMzAsIDMwLCA4NiwgMC4zKTtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAucmVzZW5kLWxpbmsge1xuICAgICAgICBjb2xvcjogIzFlMWU1NjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgICAgICAgLnZlcmlmeS1jYXJkIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDQwcHggMjBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnZlcmlmeS1pY29uIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNjBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnZlcmlmeS10aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC52ZXJpZnktbWVzc2FnZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLy8gQ2hlY2tvdXQgU3VjY2VzcyBQYWdlIFN0eWxlcyAtIEJhc2VkIG9uIExvZ2luIFBhZ2UgRGVzaWduXG4ucGFnZS1pcy1jaGVja291dC1zdWNjZXNzIHtcbiAgICBcbiAgICAvLyBNYWluIHdyYXBwZXIgd2l0aCBiYWNrZ3JvdW5kIGltYWdlXG4gICAgLmNoZWNrb3V0LXN1Y2Nlc3Mtd3JhcHBlciB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltZy9iYW5uZXIvYmctT3JkZXIud2VicCcpO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcGFkZGluZy10b3A6IDEwMHB4OyAvLyBNYXhpbXVtIHRvcCBwYWRkaW5nXG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gICAgICAgIFxuICAgICAgICAvLyBTZW1pLXRyYW5zcGFyZW50IG92ZXJsYXkgZm9yIGJldHRlciByZWFkYWJpbGl0eVxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gICAgICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIENvbnRhaW5lciBmb3IgdGhlIGNhcmRcbiAgICAuY2hlY2tvdXQtc3VjY2Vzcy1jb250YWluZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDgwMHB4OyAvLyBTbGlnaHRseSB3aWRlciB0aGFuIGxvZ2luIGZvciBvcmRlciBkZXRhaWxzXG4gICAgfVxuICAgIFxuICAgIC8vIE1haW4gY2FyZCBzdHlsaW5nXG4gICAgLmNoZWNrb3V0LXN1Y2Nlc3MtY2FyZCB7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45OCk7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICAgICAgYm94LXNoYWRvdzogMCAyMHB4IDYwcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbn0iLCIvLyBBdXRoIEZvcmdvdCBQYXNzd29yZCBQYWdlIFN0eWxlc1xuLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2Uge1xuICAgIC5mb3Jnb3QtcGFzc3dvcmQtd3JhcHBlciB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltZy9iYW5uZXIvYmctU2lnbkluLndlYnAnKTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMDBweDsgLy8gTWF4aW11bSB0b3AgcGFkZGluZ1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgICAgICBcbiAgICAgICAgLy8gRmFsbGJhY2sgdG8gUE5HIGlmIFdlYlAgbm90IHN1cHBvcnRlZFxuICAgICAgICAubm8td2VicCAmIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltZy9iYW5uZXIvYmctU2lnbkluLnBuZycpO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvLyBQcm9ncmVzc2l2ZWx5IHJlZHVjZSB0b3AgcGFkZGluZyBvbiBzbWFsbGVyIHNjcmVlbnNcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDgwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDYwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDUwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDQwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmZvcmdvdC1wYXNzd29yZC1jb250YWluZXIge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgfVxuICAgIFxuICAgIC5mb3Jnb3QtcGFzc3dvcmQtY2FyZCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMTBweCA0MHB4IHJnYmEoMzAsIDMwLCA4NiwgMC4wOCk7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgfVxuICAgIFxuICAgIC8vIEZvcm0gc2VjdGlvblxuICAgIC5mb3Jnb3QtcGFzc3dvcmQtZm9ybS1zZWN0aW9uIHtcbiAgICAgICAgcGFkZGluZzogNjBweCA1MHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG4gICAgXG4gICAgLmZvcmdvdC1wYXNzd29yZC1sb2dvIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgICBcbiAgICAgICAgaDEge1xuICAgICAgICAgICAgZm9udC1zaXplOiAzNnB4O1xuICAgICAgICAgICAgY29sb3I6ICMxZTFlNTY7XG4gICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnRhZ2xpbmUge1xuICAgICAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmZvcmdvdC1wYXNzd29yZC1mb3JtIHtcbiAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICAgICAgY29sb3I6ICMxZTFlNTY7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnN1YnRpdGxlIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cbiAgICBcbiAgICAuZm9ybS1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAjNDk1MDU3O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB9XG4gICAgXG4gICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNlMGUwZTA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgcGFkZGluZzogMTJweCAxNnB4O1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gICAgICAgIFxuICAgICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgICBjb2xvcjogI2FkYjViZDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICMxZTFlNTY7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgzMCwgMzAsIDg2LCAwLjEpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIFxuICAgICAgICAuZm9ybS1jb250cm9sLFxuICAgICAgICAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNDVweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5pbnB1dC1pY29uIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAxNnB4O1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgei1pbmRleDogMTA7XG4gICAgfVxuICAgIFxuICAgIC5idG4tcmVzZXQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMWUxZTU2O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBwYWRkaW5nOiAxNHB4IDMwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzJhMmE3YTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgNXB4IDIwcHggcmdiYSgzMCwgMzAsIDg2LCAwLjMpO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5iYWNrLXRvLWxvZ2luIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogIzFlMWU1NjtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBpIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIEFsZXJ0IHN0eWxpbmdcbiAgICAuYWxlcnQge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgIHBhZGRpbmc6IDEycHggMTZweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIFxuICAgICAgICAmLmFsZXJ0LXN1Y2Nlc3Mge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Q0ZWRkYTtcbiAgICAgICAgICAgIGNvbG9yOiAjMTU1NzI0O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmLmFsZXJ0LWRhbmdlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVlO1xuICAgICAgICAgICAgY29sb3I6ICNjMzM7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gTWVkaXVtIHNjcmVlbnMgYWRqdXN0bWVudFxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDE0MDBweCkge1xuICAgICAgICAuZm9yZ290LXBhc3N3b3JkLWZvcm0tc2VjdGlvbiB7XG4gICAgICAgICAgICBwYWRkaW5nOiA0MHB4IDM1cHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5mb3Jnb3QtcGFzc3dvcmQtbG9nbyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBoMSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAudGFnbGluZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZm9yZ290LXBhc3N3b3JkLWZvcm0ge1xuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5zdWJ0aXRsZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE4cHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgICAgcGFkZGluZzogMTFweCAxNXB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgICAgICAgLmZvcm0tY29udHJvbCxcbiAgICAgICAgICAgIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNDJweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuYnRuLXJlc2V0IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEzcHggMjhweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBNb2JpbGUgcmVzcG9uc2l2ZVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAuZm9yZ290LXBhc3N3b3JkLWZvcm0tc2VjdGlvbiB7XG4gICAgICAgICAgICBwYWRkaW5nOiA0MHB4IDMwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gICAgICAgIC5mb3Jnb3QtcGFzc3dvcmQtZm9ybS1zZWN0aW9uIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmZvcmdvdC1wYXNzd29yZC1sb2dvIGgxIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmZvcmdvdC1wYXNzd29yZC1mb3JtIGgyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBGb3JtIHZhbGlkYXRpb24gc3R5bGVzXG4gICAgLmludmFsaWQtZmVlZGJhY2sge1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICB9XG4gICAgXG4gICAgLndhcy12YWxpZGF0ZWQge1xuICAgICAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICAgICY6aW52YWxpZCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICY6dmFsaWQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzE5ODc1NDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi8vIEF1dGggUmVzZXQgUGFzc3dvcmQgUGFnZSBTdHlsZXNcbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2Uge1xuICAgIC5yZXNldC1wYXNzd29yZC13cmFwcGVyIHtcbiAgICAgICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1nL2Jhbm5lci9iZy1TaWduSW4ud2VicCcpO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcGFkZGluZy10b3A6IDEwMHB4OyAvLyBNYXhpbXVtIHRvcCBwYWRkaW5nXG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gICAgICAgIFxuICAgICAgICAvLyBGYWxsYmFjayB0byBQTkcgaWYgV2ViUCBub3Qgc3VwcG9ydGVkXG4gICAgICAgIC5uby13ZWJwICYge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1nL2Jhbm5lci9iZy1TaWduSW4ucG5nJyk7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8vIFByb2dyZXNzaXZlbHkgcmVkdWNlIHRvcCBwYWRkaW5nIG9uIHNtYWxsZXIgc2NyZWVuc1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogODBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNjBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAucmVzZXQtcGFzc3dvcmQtY29udGFpbmVyIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTIwMHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgIH1cbiAgICBcbiAgICAucmVzZXQtcGFzc3dvcmQtY2FyZCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMTBweCA0MHB4IHJnYmEoMzAsIDMwLCA4NiwgMC4wOCk7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICAgIFxuICAgIC5yZXNldC1wYXNzd29yZC1yb3cge1xuICAgICAgICBtaW4taGVpZ2h0OiA2MDBweDtcbiAgICB9XG4gICAgXG4gICAgLy8gTGVmdCBzaWRlIC0gRm9ybVxuICAgIC5yZXNldC1wYXNzd29yZC1mb3JtLXNlY3Rpb24ge1xuICAgICAgICBwYWRkaW5nOiA2MHB4IDUwcHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgICBcbiAgICAucmVzZXQtcGFzc3dvcmQtbG9nbyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgXG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICAgICAgICAgIGNvbG9yOiAjMWUxZTU2O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC50YWdsaW5lIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogOHB4O1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5yZXNldC1wYXNzd29yZC1mb3JtIHtcbiAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICAgICAgY29sb3I6ICMxZTFlNTY7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnN1YnRpdGxlIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cbiAgICBcbiAgICAuZm9ybS1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAjNDk1MDU3O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB9XG4gICAgXG4gICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNlMGUwZTA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgcGFkZGluZzogMTJweCAxNnB4O1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gICAgICAgIFxuICAgICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgICBjb2xvcjogI2FkYjViZDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICMxZTFlNTY7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgzMCwgMzAsIDg2LCAwLjEpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJltyZWFkb25seV0ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmlucHV0LWdyb3VwIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBcbiAgICAgICAgLmZvcm0tY29udHJvbCxcbiAgICAgICAgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQ1cHggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuaW5wdXQtaWNvbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMTZweDtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgIH1cbiAgICBcbiAgICAucGFzc3dvcmQtdG9nZ2xlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMTZweDtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICMxZTFlNTY7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmJ0bi1yZXNldCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMxZTFlNTY7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIHBhZGRpbmc6IDE0cHggMzBweDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMmEyYTdhO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCA1cHggMjBweCByZ2JhKDMwLCAzMCwgODYsIDAuMyk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLnBhc3N3b3JkLXJlcXVpcmVtZW50cyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIFxuICAgICAgICBoNiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgICAgICAgICAgY29sb3I6ICM0OTUwNTc7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gQWxlcnQgc3R5bGluZ1xuICAgIC5hbGVydCB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgcGFkZGluZzogMTJweCAxNnB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgXG4gICAgICAgICYuYWxlcnQtc3VjY2VzcyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDRlZGRhO1xuICAgICAgICAgICAgY29sb3I6ICMxNTU3MjQ7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYuYWxlcnQtZGFuZ2VyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZWU7XG4gICAgICAgICAgICBjb2xvcjogI2MzMztcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBSaWdodCBzaWRlIC0gSW1hZ2VcbiAgICAucmVzZXQtcGFzc3dvcmQtaW1hZ2Utc2VjdGlvbiB7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMxZTFlNTYgMCUsICMyYTJhN2EgMTAwJSk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiA2MHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIFxuICAgICAgICAvLyBCYWNrZ3JvdW5kIHBhdHRlcm4gLSBzYW1lIGFzIGxvZ2luXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogLTUwJTtcbiAgICAgICAgICAgIHJpZ2h0OiAtNTAlO1xuICAgICAgICAgICAgd2lkdGg6IDIwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KFxuICAgICAgICAgICAgICAgIDQ1ZGVnLFxuICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50LFxuICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50IDEwcHgsXG4gICAgICAgICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAzKSAxMHB4LFxuICAgICAgICAgICAgICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMykgMjBweFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogc2xpZGUgMjBzIGxpbmVhciBpbmZpbml0ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAucmVzZXQtcGFzc3dvcmQtaW1hZ2UtY29udGVudCB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIFxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDMycHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5rZXktZ3JhcGhpYyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTIwcHg7XG4gICAgICAgIG9wYWNpdHk6IDAuOTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgYW5pbWF0aW9uOiByb3RhdGUgNHMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG4gICAgfVxuICAgIFxuICAgIEBrZXlmcmFtZXMgcm90YXRlIHtcbiAgICAgICAgMCUsIDEwMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICAgICAgICA1MCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgxMGRlZyk7IH1cbiAgICB9XG4gICAgXG4gICAgLnBhc3N3b3JkLXRpcHMge1xuICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC45O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIEBrZXlmcmFtZXMgc2xpZGUge1xuICAgICAgICAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG4gICAgICAgIDEwMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MHB4LCA1MHB4KTsgfVxuICAgIH1cbiAgICBcbiAgICAvLyBNZWRpdW0gc2NyZWVucyBhZGp1c3RtZW50XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTQwMHB4KSB7XG4gICAgICAgIC5yZXNldC1wYXNzd29yZC1jb250YWluZXIge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDIwMHB4KTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnJlc2V0LXBhc3N3b3JkLWNhcmQge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDExMDBweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucmVzZXQtcGFzc3dvcmQtcm93IHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQyMHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucmVzZXQtcGFzc3dvcmQtZm9ybS1zZWN0aW9uIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHggMjVweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnJlc2V0LXBhc3N3b3JkLWxvZ28ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgaDEge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLnRhZ2xpbmUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnJlc2V0LXBhc3N3b3JkLWZvcm0ge1xuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5zdWJ0aXRsZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAxNHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgICAgICAgLmZvcm0tY29udHJvbCxcbiAgICAgICAgICAgIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNDBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuYnRuLXJlc2V0IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMjVweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnBhc3N3b3JkLXJlcXVpcmVtZW50cyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICBwYWRkaW5nOiA4cHggMTJweDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLy8gUmlnaHQgcGFuZWwgYWRqdXN0bWVudHNcbiAgICAgICAgLnJlc2V0LXBhc3N3b3JkLWltYWdlLXNlY3Rpb24ge1xuICAgICAgICAgICAgcGFkZGluZzogNDBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmtleS1ncmFwaGljIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogODBweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5yZXNldC1wYXNzd29yZC1pbWFnZS1jb250ZW50IHtcbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI2cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucGFzc3dvcmQtdGlwcyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gTW9iaWxlIHJlc3BvbnNpdmVcbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgLnJlc2V0LXBhc3N3b3JkLWltYWdlLXNlY3Rpb24ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnJlc2V0LXBhc3N3b3JkLWZvcm0tc2VjdGlvbiB7XG4gICAgICAgICAgICBwYWRkaW5nOiA0MHB4IDMwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gICAgICAgIC5yZXNldC1wYXNzd29yZC1mb3JtLXNlY3Rpb24ge1xuICAgICAgICAgICAgcGFkZGluZzogMzBweCAyMHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucmVzZXQtcGFzc3dvcmQtbG9nbyBoMSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5yZXNldC1wYXNzd29yZC1mb3JtIGgyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBGb3JtIHZhbGlkYXRpb24gc3R5bGVzXG4gICAgLmludmFsaWQtZmVlZGJhY2sge1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICB9XG4gICAgXG4gICAgLndhcy12YWxpZGF0ZWQge1xuICAgICAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICAgICY6aW52YWxpZCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICY6dmFsaWQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzE5ODc1NDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi8vIFNob3AgQ2F0ZWdvcnkgUGFnZSBTdHlsZXNcbi8vIEFsc28gYXBwbGllZCB0byBzaG9wIHBhZ2VzIGZvciBqZXdlbHJ5IGFuZCBnZW1zdG9uZXMgaGVyb2VzXG4ucGFnZV9pc19jYXRlZ29yeV9wYWdlLCAucGFnZV9pc19zaG9wX3BhZ2Uge1xuICAgIC8vIENhdGVnb3J5IEhlcm8gU3R5bGVzXG4gICAgLmNhdGVnb3J5LWhlcm8ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDMwMHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgXG4gICAgICAgICYuY2F0ZWdvcnktaGVyby13aXRoLWltYWdlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmLmNhdGVnb3J5LWhlcm8tZWxlZ2FudCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZjVmN2ZhIDAlLCAjYzNjZmUyIDEwMCUpO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogXG4gICAgICAgICAgICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgMjAlIDgwJSwgcmdiYSgxMjQsIDEwNSwgMjM5LCAwLjEpIDAlLCB0cmFuc3BhcmVudCA1MCUpLFxuICAgICAgICAgICAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IDgwJSAyMCUsIHJnYmEoMTI0LCAxMDUsIDIzOSwgMC4xKSAwJSwgdHJhbnNwYXJlbnQgNTAlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmNhdGVnb3J5LWhlcm8tY29udGVudCB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICMzMzM7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5jYXRlZ29yeS1icmVhZGNydW1iIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzdjNjllZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLnN0YXQtaXRlbSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCA0cHggMTVweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjMzMzO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5jYXRlZ29yeS1oZXJvLW92ZXJsYXkge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxuICAgICAgICAgICAgdG8gYm90dG9tLFxuICAgICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpIDAlLFxuICAgICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpIDUwJSxcbiAgICAgICAgICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KSAxMDAlXG4gICAgICAgICk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgICBcbiAgICAuY2F0ZWdvcnktaGVyby1jb250ZW50IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAjMzMzO1xuICAgICAgICBwYWRkaW5nOiAzcmVtIDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICBcbiAgICAuY2F0ZWdvcnktYnJlYWRjcnVtYiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjFlbTtcbiAgICAgICAgXG4gICAgICAgIGEge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4zcyBlYXNlO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzdjNjllZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5jYXRlZ29yeS1pY29uIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBhbmltYXRpb246IHNwYXJrbGUgM3MgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG4gICAgfVxuICAgIFxuICAgIEBrZXlmcmFtZXMgc3BhcmtsZSB7XG4gICAgICAgIDAlLCAxMDAlIHsgXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpIHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgfVxuICAgICAgICA1MCUgeyBcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoNWRlZyk7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjc7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmNhdGVnb3J5LWhlcm8tdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDMuNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgICAgICBmb250LWZhbWlseTogJ1BsYXlmYWlyIERpc3BsYXknLCBzZXJpZjtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgIFxuICAgICAgICAuY2F0ZWdvcnktaGVyby13aXRoLWltYWdlICYge1xuICAgICAgICAgICAgdGV4dC1zaGFkb3c6IDFweCAxcHggM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuY2F0ZWdvcnktaGVyby1kZXNjcmlwdGlvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgbWF4LXdpZHRoOiA3MDBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gMnJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgb3BhY2l0eTogMC45NTtcbiAgICAgICAgXG4gICAgICAgIC5jYXRlZ29yeS1oZXJvLXdpdGgtaW1hZ2UgJiB7XG4gICAgICAgICAgICB0ZXh0LXNoYWRvdzogMXB4IDFweCA0cHggcmdiYSgwLCAwLCAwLCAwLjcpO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5jYXRlZ29yeS1oZXJvLXN0YXRzIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGdhcDogMnJlbTtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgIH1cbiAgICBcbiAgICAuc3RhdC1pdGVtIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMS41cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICAgIH1cbiAgICBcbiAgICAuc3RhdC1udW1iZXIge1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBtYXJnaW46IDAgMC4yNXJlbTtcbiAgICB9XG4gICAgXG4gICAgLnNlbGVjdGVkLWNhdGVnb3J5LWluZm8ge1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgICAgICBcbiAgICAgICAgLnNlbGVjdGVkLWNhdGVnb3J5LWJhZGdlIHtcbiAgICAgICAgICAgIC5iYWRnZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbSAyLjI1cmVtIDAuNXJlbSAxcmVtOyAvLyBFeHRyYSBwYWRkaW5nLXJpZ2h0IGZvciB0aGUgWCBidXR0b25cbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IC8vIEZvciBhYnNvbHV0ZSBwb3NpdGlvbmluZyBvZiBYIGJ1dHRvblxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIC8vIFggYnV0dG9uIHN0eWxpbmcgd2l0aCBpbXByb3ZlZCBjbGlja2FiaWxpdHlcbiAgICAgICAgICAgICAgICAuY2F0ZWdvcnktcmVtb3ZlLWJ0biB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDExcHg7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMjFweDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyAvLyBDZW50ZXIgdmVydGljYWxseSBmcm9tIHRoZSB0b3AgcG9zaXRpb25cbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNXB4OyAvLyBJbmNyZWFzZSBjbGlja2FibGUgYXJlYVxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IC01cHg7IC8vIE5lZ2F0aXZlIG1hcmdpbiB0byBleHRlbmQgY2xpY2thYmxlIGFyZWEgd2l0aG91dCBhZmZlY3RpbmcgYmFkZ2Ugc2l6ZVxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC44O1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgLy8gRW5zdXJlIGljb24gZG9lc24ndCBpbnRlcmZlcmUgd2l0aCBjbGlja1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIFJlc3BvbnNpdmUgYWRqdXN0bWVudHNcbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcbiAgICAgICAgLmNhdGVnb3J5LWhlcm8ge1xuICAgICAgICAgICAgbWluLWhlaWdodDogNDAwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5jYXRlZ29yeS1oZXJvLXRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAuY2F0ZWdvcnktaGVybyB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAzNTBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmNhdGVnb3J5LWhlcm8tdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuY2F0ZWdvcnktaGVyby1kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmNhdGVnb3J5LWhlcm8tc3RhdHMge1xuICAgICAgICAgICAgZ2FwOiAxcmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuc3RhdC1pdGVtIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuY2F0ZWdvcnktYnJlYWRjcnVtYiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gICAgICAgIC5jYXRlZ29yeS1oZXJvLXRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmNhdGVnb3J5LWhlcm8tZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxufSIsIi8vIFByb2R1Y3QgQ2F0ZWdvcmllcyBQYWdlIFN0eWxlc1xuLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIHtcbiAgICAucHJvZHVjdC1jYXRlZ29yaWVzLXBhZ2Uge1xuICAgICAgICBwYWRkaW5nOiA0MHB4IDAgNjBweDtcbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgcGFkZGluZzogMzBweCAwIDQwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gUGFnZSBIZWFkZXJcbiAgICAucGFnZS1oZWFkZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICAgICAgICBcbiAgICAgICAgLnBhZ2UtdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgY29sb3I6ICMxZTFlNTY7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuNXB4O1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5wYWdlLXN1YnRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBDYXRlZ29yaWVzIENhdGFsb2cgR3JpZFxuICAgIC5jYXRlZ29yaWVzLWNhdGFsb2cge1xuICAgICAgICAuY2F0ZWdvcnktY2FyZC1saW5rIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmNhdGVnb3J5LWNhdGFsb2ctY2FyZCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2UwZTBlMDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgOHB4IDI0cHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICNkMGQwZDA7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgLmNhdGVnb3J5LWltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC45O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAuY2F0ZWdvcnktbmFtZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMWUxZTU2O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLy8gQ2F0ZWdvcnkgSW1hZ2UgU2VjdGlvblxuICAgICAgICAuY2F0ZWdvcnktaW1hZ2Utd3JhcHBlciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNzUlOyAvLyA0OjMgYXNwZWN0IHJhdGlvXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjhmOWZhO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmNhdGVnb3J5LWltYWdlIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAuY2F0ZWdvcnktaW1hZ2UtcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNmNWY3ZmEgMCUsICNlOWVjZWYgMTAwJSk7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNhZGI1YmQ7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC8vIEl0ZW0gQ291bnQgQmFkZ2VcbiAgICAgICAgICAgIC5pdGVtLWNvdW50LWJhZGdlIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAxMnB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAxMnB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45NSk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM0OTUwNTc7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNHB4IDEwcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDJweCA4cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgICAgICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig0cHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvLyBDYXRlZ29yeSBJbmZvIFNlY3Rpb25cbiAgICAgICAgLmNhdGVnb3J5LWluZm8ge1xuICAgICAgICAgICAgcGFkZGluZzogMS4yNXJlbTtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAuY2F0ZWdvcnktbmFtZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzIGVhc2U7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmNhdGVnb3J5LWRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBFbXB0eSBTdGF0ZVxuICAgIC5lbXB0eS1zdGF0ZSB7XG4gICAgICAgIHBhZGRpbmc6IDRyZW0gMDtcbiAgICAgICAgXG4gICAgICAgIGkge1xuICAgICAgICAgICAgY29sb3I6ICNkZWUyZTY7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNDk1MDU3O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBCb3R0b20gQ1RBIFNlY3Rpb25cbiAgICAuYm90dG9tLWN0YS1zZWN0aW9uIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlMGUwZTA7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgICAgICBcbiAgICAgICAgLmN0YS10aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuODc1cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGNvbG9yOiAjMWUxZTU2O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuY3RhLXN1YnRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5jdGEtYnV0dG9ucyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBnYXA6IDAuNXJlbTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxNTBweDtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gUmVzcG9uc2l2ZSBhZGp1c3RtZW50c1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAuY2F0ZWdvcmllcy1jYXRhbG9nIHtcbiAgICAgICAgICAgIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQge1xuICAgICAgICAgICAgICAgIC5jYXRlZ29yeS1pbmZvIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIC5jYXRlZ29yeS1uYW1lIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgLmNhdGVnb3J5LWRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgICAuY2F0ZWdvcmllcy1jYXRhbG9nIHtcbiAgICAgICAgICAgIC5yb3cge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAtMC41cmVtO1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgID4gW2NsYXNzKj1cImNvbFwiXSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMC41cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmNhdGVnb3J5LWNhdGFsb2ctY2FyZCB7XG4gICAgICAgICAgICAgICAgLmNhdGVnb3J5LWltYWdlLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogNjYuNjclOyAvLyBTbGlnaHRseSB3aWRlciBhc3BlY3QgcmF0aW8gb24gbW9iaWxlXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIEFuaW1hdGlvbiBmb3IgcGFnZSBsb2FkXG4gICAgQGtleWZyYW1lcyBmYWRlSW5VcCB7XG4gICAgICAgIGZyb20ge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcbiAgICAgICAgfVxuICAgICAgICB0byB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5jYXRlZ29yaWVzLWNhdGFsb2cgLmNhdGVnb3J5LWNhdGFsb2ctY2FyZCB7XG4gICAgICAgIGFuaW1hdGlvbjogZmFkZUluVXAgMC41cyBlYXNlLW91dDtcbiAgICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgICAgICAgXG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMjAge1xuICAgICAgICAgICAgJjpudGgtY2hpbGQoI3skaX0pIHtcbiAgICAgICAgICAgICAgICBhbmltYXRpb24tZGVsYXk6ICN7JGkgKiAwLjA1fXM7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLy8gUmVxdWVzdCBTZWxsZXIgQWNjZXNzIFBhZ2UgU3R5bGVzIC0gRWxlZ2FudCBUaGVtZSB3aXRoIExvZ2luIEJhY2tncm91bmRcbi5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyB7XG4gICAgXG4gICAgLy8gTWFpbiB3cmFwcGVyIHdpdGggZGlhbW9uZCBiYWNrZ3JvdW5kIChzYW1lIGFzIGxvZ2luKVxuICAgIC5zZWxsZXItYWNjZXNzLXBhZ2Utd3JhcHBlciB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltZy9iYW5uZXIvYmctU2lnbkluLndlYnAnKTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMDBweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgICAgICAgXG4gICAgICAgIC8vIEZhbGxiYWNrIHRvIFBORyBpZiBXZWJQIG5vdCBzdXBwb3J0ZWRcbiAgICAgICAgLm5vLXdlYnAgJiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWcvYmFubmVyL2JnLVNpZ25Jbi5wbmcnKTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLy8gUHJvZ3Jlc3NpdmVseSByZWR1Y2UgdG9wIHBhZGRpbmcgb24gc21hbGxlciBzY3JlZW5zXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA4MHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIENvbnRhaW5lciBmb3IgY29uc3RyYWluZWQgd2lkdGhcbiAgICAuc2VsbGVyLWFjY2Vzcy1jb250YWluZXIge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAwcHg7IC8vIFNsaWdodGx5IHdpZGVyIGZvciB0aGUgZm9ybVxuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgICBcbiAgICAvLyBNYWluIGNhcmQgLSBlbGVnYW50IGRlc2lnblxuICAgIC5zZWxsZXItYWNjZXNzLWNhcmQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICAgICAgICBib3gtc2hhZG93OiAwIDIwcHggNjBweCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICAgIH1cbiAgICBcbiAgICAvLyBMb2dvIGhlYWRlciBzZWN0aW9uXG4gICAgLnNlbGxlci1hY2Nlc3MtaGVhZGVyIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiAzMHB4IDIwcHg7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjBmMGYwO1xuICAgICAgICBcbiAgICAgICAgLnNlbGxlci1hY2Nlc3MtbG9nby1pbWcge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmx1eHVyeS10YWdsaW5lIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIE1haW4gY29udGVudCBhcmVhXG4gICAgLnNlbGxlci1hY2Nlc3MtY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IDQwcHg7XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDI1cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLnNlbGxlci1hY2Nlc3MtYm9keSB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuICAgIFxuICAgIC8vIEZvcm0gc3R5bGluZ1xuICAgIC5mb3JtLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICM0OTUwNTc7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDZweDtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gICAgfVxuICAgIFxuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMTRweDtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYmZjO1xuICAgICAgICBcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICMxZTFlNTY7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYSgzMCwgMzAsIDg2LCAwLjA4KTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgICBjb2xvcjogI2FkYjViZDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICAgICAgICByZXNpemU6IHZlcnRpY2FsO1xuICAgICAgICBtaW4taGVpZ2h0OiA4MHB4O1xuICAgIH1cbiAgICBcbiAgICAvLyBTZWxlY3QyIHNwZWNpZmljIHN0eWxpbmdcbiAgICAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQge1xuICAgICAgICAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTRweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYmZjO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgbWluLWhlaWdodDogNDJweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJi5zZWxlY3QyLWNvbnRhaW5lci0tZm9jdXMge1xuICAgICAgICAgICAgLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICMxZTFlNTY7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEoMzAsIDMwLCA4NiwgMC4wOCk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIFNlY3Rpb24gaGVhZGluZ3NcbiAgICBoNCB7XG4gICAgICAgIGNvbG9yOiAjMWUxZTU2O1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2YwZjBmMDtcbiAgICB9XG4gICAgXG4gICAgLy8gQWxlcnQgc3R5bGluZ1xuICAgIC5hbGVydC1pbmZvIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGY4ZmY7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNiOGRhZmY7XG4gICAgICAgIGNvbG9yOiAjMDA0MDg1O1xuICAgICAgICBcbiAgICAgICAgdWwge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBCdXR0b24gc3R5bGluZ1xuICAgIC5idG4tcHJpbWFyeSB7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMxZTFlNTYgMCUsICMyYTJhN2EgMTAwJSk7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIHBhZGRpbmc6IDEycHggMjRweDtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDE1cHggcmdiYSgzMCwgMzAsIDg2LCAwLjIpO1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDZweCAyNXB4IHJnYmEoMzAsIDMwLCA4NiwgMC4zKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMyYTJhN2EgMCUsICMxZTFlNTYgMTAwJSk7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJi5idG4tbGcge1xuICAgICAgICAgICAgcGFkZGluZzogMTRweCAzMnB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5idG4tb3V0bGluZS1wcmltYXJ5IHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICMxZTFlNTY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgY29sb3I6ICMxZTFlNTY7XG4gICAgICAgIHBhZGRpbmc6IDEycHggMjRweDtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMxZTFlNTY7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDRweCAxNXB4IHJnYmEoMzAsIDMwLCA4NiwgMC4yKTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJi5idG4tbGcge1xuICAgICAgICAgICAgcGFkZGluZzogMTRweCAzMnB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5idG4tb3V0bGluZS1zZWNvbmRhcnkge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgIzZjNzU3ZDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgcGFkZGluZzogMTJweCAyNHB4O1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgICAgXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzZjNzU3ZDtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBGb3JtIHZhbGlkYXRpb24gc3R5bGVzXG4gICAgLndhcy12YWxpZGF0ZWQge1xuICAgICAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICAgICY6aW52YWxpZCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEoMjIwLCA1MywgNjksIDAuMSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAmOnZhbGlkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICMyOGE3NDU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMjhhNzQ1O1xuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYSg0MCwgMTY3LCA2OSwgMC4xKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmludmFsaWQtZmVlZGJhY2sge1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDRweDtcbiAgICAgICAgY29sb3I6ICNkYzM1NDU7XG4gICAgfVxuICAgIFxuICAgIC8vIFNtYWxsIHRleHRcbiAgICAuZm9ybS10ZXh0IHtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgbWFyZ2luLXRvcDogNHB4O1xuICAgIH1cbiAgICBcbiAgICAvLyBSZXF1aXJlZCBhc3Rlcmlza1xuICAgIC50ZXh0LWRhbmdlciB7XG4gICAgICAgIGNvbG9yOiAjZGMzNTQ1O1xuICAgIH1cbiAgICBcbiAgICAvLyBSZXNwb25zaXZlIGFkanVzdG1lbnRzXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5zZWxsZXItYWNjZXNzLWNhcmQge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnNlbGxlci1hY2Nlc3MtaGVhZGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDI1cHggMjBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgaDQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZC1ncmlkIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBNZWRpdW0gc2NyZWVuc1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgIC5zZWxsZXItYWNjZXNzLWNvbnRhaW5lciB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDc1MHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIExhcmdlIHNjcmVlbnMgLSBwcmV2ZW50IG92ZXItc3RyZXRjaGluZ1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcbiAgICAgICAgLnNlbGxlci1hY2Nlc3MtY29udGFpbmVyIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTEwMHB4O1xuICAgICAgICB9XG4gICAgfVxufSIsIi8qKlxuICogUHJvZmlsZSBTdXBwb3J0IFRpY2tldCBEZXRhaWwgUGFnZSBTdHlsZXNcbiAqL1xuXG4ucGFnZS1pcy1wcm9maWxlLXN1cHBvcnQtdGlja2V0LWRldGFpbCB7XG4gICAgLy8gUmVwbHkgZm9ybSBjYXJkIGJvdHRvbSBtYXJnaW5cbiAgICAuY2FyZDpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICB9XG4gICAgXG4gICAgLy8gTWVzc2FnZSB3cmFwcGVyIHJlc3BvbnNpdmUgcGFkZGluZ1xuICAgIC5tZXNzYWdlLWl0ZW0td3JhcHBlciB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgXG4gICAgICAgIC8vIERlc2t0b3Agdmlld3BvcnQgLSBhZGQgaG9yaXpvbnRhbCBwYWRkaW5nXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA1MHB4O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNTBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAubWVzc2FnZS1zZXBhcmF0b3Ige1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgICAgICBtYXJnaW46IDEuNXJlbSAwO1xuICAgIH1cbiAgICBcbiAgICAubWVzc2FnZS1pdGVtIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAjZGVlMmU2O1xuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgICAgICAgYW5pbWF0aW9uOiBmYWRlSW4gMC4zcyBlYXNlLWluO1xuICAgICAgICBcbiAgICAgICAgJi5hZG1pbi1tZXNzYWdlIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAjMDA3YmZmO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmLmN1c3RvbWVyLW1lc3NhZ2Uge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoMCwwLDAsMC4xKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAubWVzc2FnZS1oZWFkZXIge1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlOWVjZWY7XG4gICAgfVxuICAgIFxuICAgIC5tZXNzYWdlLWNvbnRlbnQge1xuICAgICAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNlOWVjZWY7XG4gICAgfVxuICAgIFxuICAgIC5tZXNzYWdlLXNlbmRlciB7XG4gICAgICAgIGNvbG9yOiAjNDk1MDU3O1xuICAgICAgICBmb250LXNpemU6IDAuOTVyZW07XG4gICAgfVxuICAgIFxuICAgIEBrZXlmcmFtZXMgZmFkZUluIHtcbiAgICAgICAgZnJvbSB7IFxuICAgICAgICAgICAgb3BhY2l0eTogMDsgXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7IFxuICAgICAgICB9XG4gICAgICAgIHRvIHsgXG4gICAgICAgICAgICBvcGFjaXR5OiAxOyBcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgXG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gUHVsc2UgYW5pbWF0aW9uIGZvciB1bnJlYWQgaW5kaWNhdG9yc1xuICAgIEBrZXlmcmFtZXMgcHVsc2Uge1xuICAgICAgICAwJSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgICAgICA1MCUge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgICAgICAgICAgb3BhY2l0eTogMC44O1xuICAgICAgICB9XG4gICAgICAgIDEwMCUge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLnVucmVhZC1pbmRpY2F0b3Ige1xuICAgICAgICBhbmltYXRpb246IHB1bHNlIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG4gICAgfVxuICAgIFxuICAgIC8vIEF0dGFjaG1lbnQgbGluayBzdHlsaW5nXG4gICAgLm1lc3NhZ2UtYXR0YWNobWVudHMge1xuICAgICAgICAuYXR0YWNobWVudC1pdGVtIHtcbiAgICAgICAgICAgIGEuYnRuLW91dGxpbmUtc2Vjb25kYXJ5IHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzIxMjUyOTsgLy8gQWxtb3N0IGJsYWNrIGZvciBmaWxlbmFtZVxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIC5mYS1maWxlIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICM2Yzc1N2Q7IC8vIEtlZXAgaWNvbiBncmF5XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIHNtYWxsLnRleHQtbXV0ZWQge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzZjNzU3ZCAhaW1wb3J0YW50OyAvLyBLZWVwIGZpbGUgc2l6ZSBncmF5XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjsgLy8gV2hpdGUgdGV4dCBvbiBob3ZlciAod2hlbiBiYWNrZ3JvdW5kIHR1cm5zIGdyYXkpXG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAuZmEtZmlsZSxcbiAgICAgICAgICAgICAgICAgICAgc21hbGwudGV4dC1tdXRlZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi8qKlxuICogUHJvZmlsZSBTdXBwb3J0IFRpY2tldHMgUGFnZSBTdHlsZXNcbiAqL1xuXG4ucGFnZS1pcy1wcm9maWxlLXN1cHBvcnQtdGlja2V0cyB7XG4gICAgLy8gTW9iaWxlIHRhYmxlIGFkanVzdG1lbnRzXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICNzdXBwb3J0LXRpY2tldHMtdGFibGUge1xuICAgICAgICAgICAgLy8gSGlkZSBzb3J0IGljb25zIG9uIG1vYmlsZVxuICAgICAgICAgICAgdGhlYWQgdGguc29ydGFibGUgaSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLy8gSGlkZSBTdGF0dXMsIE1lc3NhZ2VzLCBhbmQgQWN0aW9uIGNvbHVtbnMgb24gbW9iaWxlXG4gICAgICAgICAgICB0aGVhZCB0aDpudGgtY2hpbGQoMiksICAvLyBTdGF0dXMgY29sdW1uXG4gICAgICAgICAgICB0aGVhZCB0aDpudGgtY2hpbGQoNCksICAvLyBNZXNzYWdlcyBjb2x1bW5cbiAgICAgICAgICAgIHRoZWFkIHRoOm50aC1jaGlsZCg2KSwgIC8vIEFjdGlvbiBjb2x1bW5cbiAgICAgICAgICAgIHRib2R5IHRkOm50aC1jaGlsZCgyKSwgIC8vIFN0YXR1cyBjb2x1bW4gZGF0YVxuICAgICAgICAgICAgdGJvZHkgdGQ6bnRoLWNoaWxkKDQpLCAgLy8gTWVzc2FnZXMgY29sdW1uIGRhdGFcbiAgICAgICAgICAgIHRib2R5IHRkOm50aC1jaGlsZCg2KSB7IC8vIEFjdGlvbiBjb2x1bW4gZGF0YVxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gTWFrZSB0YWJsZSByb3dzIGNsaWNrYWJsZVxuICAgICNzdXBwb3J0LXRpY2tldHMtdGFibGUge1xuICAgICAgICB0Ym9keSB0ciB7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjAyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBTb3J0YWJsZSB0YWJsZSBoZWFkZXIgc3R5bGluZ1xuICAgICNzdXBwb3J0LXRpY2tldHMtdGFibGUge1xuICAgICAgICB0aGVhZCB0aC5zb3J0YWJsZSB7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjAyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC40O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NWVtO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAmOmhvdmVyIGkge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLy8gQWN0aXZlIHNvcnQgY29sdW1uXG4gICAgICAgICAgICBpLmZhLXNvcnQtdXAsXG4gICAgICAgICAgICBpLmZhLXNvcnQtZG93biB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gUGFnaW5hdGlvbiBzdHlsaW5nXG4gICAgI3BhZ2luYXRpb24tY29udGFpbmVyIHtcbiAgICAgICAgLnBhZ2luYXRpb24ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLnBhZ2UtaXRlbS5kaXNhYmxlZCB7XG4gICAgICAgICAgICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5wYWdlLWl0ZW0uYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHByaW1hcnk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIEJhZGdlIHN0eWxpbmcgYWRqdXN0bWVudHMgZm9yIGJldHRlciB2aXN1YWwgaGllcmFyY2h5XG4gICAgLnRhYmxlIHtcbiAgICAgICAgLmJhZGdlIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjM1ZW0gMC42NWVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvLyBOZXcgUmVwbHkgYmFkZ2UgYW5pbWF0aW9uXG4gICAgICAgIC5iYWRnZS5iZy1kYW5nZXIge1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBwdWxzZSAycyBpbmZpbml0ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBVbnJlYWQgdGV4dCBzdHlsaW5nXG4gICAgLnRleHQtZGFuZ2VyIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB9XG4gICAgXG4gICAgLy8gUHVsc2UgYW5pbWF0aW9uIGZvciBuZXcgcmVwbHkgYmFkZ2VcbiAgICBAa2V5ZnJhbWVzIHB1bHNlIHtcbiAgICAgICAgMCUge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKDIyMCwgNTMsIDY5LCAwLjQpO1xuICAgICAgICB9XG4gICAgICAgIDcwJSB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCA1cHggcmdiYSgyMjAsIDUzLCA2OSwgMCk7XG4gICAgICAgIH1cbiAgICAgICAgMTAwJSB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAwIHJnYmEoMjIwLCA1MywgNjksIDApO1xuICAgICAgICB9XG4gICAgfVxufSIsIi8qKlxuICogUHJldmlldyBEaWFtb25kIFBhZ2UgU3R5bGVzXG4gKlxuICogU3R5bGVzIHNwZWNpZmljIHRvIHRoZSBkaWFtb25kIHByZXZpZXcgcGFnZSwgaW5jbHVkaW5nIHZpZGVvIGVtYmVkXG4gKiBhbmQgaWZyYW1lIGRpc3BsYXkgYWRqdXN0bWVudHMuXG4gKlxuICogQHNlZSByZXNvdXJjZXMvdmlld3MvZnJvbnRlbmQvaXRlbXMvcHJldmlldy1kaWFtb25kLmJsYWRlLnBocFxuICogQHNlZSByZXNvdXJjZXMvanMvZnJvbnRlbmQvcGFnZXMvcHJldmlldy1kaWFtb25kLXBhZ2UuanNcbiAqL1xuXG4ucGFnZV9pc19kaWFtb25kX3ByZXZpZXdfcGFnZSB7XG4gICAgLy8gT3ZlcnJpZGUgbGFyYXZlbC1lbWJlZCByZXNwb25zaXZlIHdyYXBwZXJcbiAgICAubGFyYXZlbC1lbWJlZF9fcmVzcG9uc2l2ZS13cmFwcGVyIHtcbiAgICAgICAgbWluLWhlaWdodDogMTk2cHggIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLy8gSWZyYW1lIGRpc3BsYXlcbiAgICBpZnJhbWUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogNjA4cHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICB9XG59XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/