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

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

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

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

@-webkit-keyframes slideDown {
  0% {
    opacity: 0;
    transform: translateY(-20px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

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

.heroSlider {
  margin-top: 20px;
}



/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3NzL2Zyb250ZW5kLmNzcyIsIm1hcHBpbmdzIjoiQUFBQTs7QUFBQTs7Ozs7RUNPRTs7QUNQRjs7OztFRGFFOztBRWJGOzs7O0VGbUJFOztBR25CRjs7Ozs7RUgwQkU7O0FJMUJGOzs7O0VKZ0NFOztBS2hDRjs7Ozs7RUx1Q0U7O0FHdkNGOzs7OztFSDhDRTs7QU05Q0Y7O0VBU0k7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUlBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUlBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUlBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBR0Y7RUFDQTtFQU1BO0VBQ0E7RUFDQTtFQU9BO0VDMk9JO0VEek9KO0VBQ0E7RUFLQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBTUE7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUlBO0VBQ0E7RUFDQTtFQUlBO0VBQ0E7RUFDQTtFQUNBO0FOd0NGOztBUXZKSTtFRnFIQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFHRTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUlBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFHRjtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFFQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7QU53Q0o7O0FTN01BOzs7RUFHRTtBVGdORjs7QVNqTUk7RUFOSjtJQU9NO0VUcU1KO0FBQ0Y7O0FTeExBO0VBQ0U7RUFDQTtFRjZPSTtFRTNPSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVDJMRjs7QVNsTEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FUcUxGOztBUzNLQTs7Ozs7Ozs7Ozs7O0VBQ0U7RUFDQTtFQUdBO0VBQ0E7RUFDQTtBVHVMRjs7QVNwTEE7O0VGdU1RO0FQZFI7O0FPOUlJO0VFM0NKOztJRjhNUTtFUGZOO0FBQ0Y7O0FTM0xBOztFRmtNUTtBUEZSOztBTzFKSTtFRXRDSjs7SUZ5TVE7RVBITjtBQUNGOztBU2xNQTs7RUY2TFE7QVBVUjs7QU90S0k7RUVqQ0o7O0lGb01RO0VQU047QUFDRjs7QVN6TUE7O0VGd0xRO0FQc0JSOztBT2xMSTtFRTVCSjs7SUYrTFE7RVBxQk47QUFDRjs7QVNoTkE7O0VGK0tNO0FQc0NOOztBU2hOQTs7RUYwS007QVAyQ047O0FTMU1BO0VBQ0U7RUFDQTtBVDZNRjs7QVNuTUE7RUFDRTtVQUFBO0VBQ0E7RUFDQTtVQUFBO0FUc01GOztBU2hNQTtFQUNFO0VBQ0E7RUFDQTtBVG1NRjs7QVM3TEE7O0VBRUU7QVRnTUY7O0FTN0xBOzs7RUFHRTtFQUNBO0FUZ01GOztBUzdMQTs7OztFQUlFO0FUZ01GOztBUzdMQTtFQUNFO0FUZ01GOztBUzNMQTtFQUNFO0VBQ0E7QVQ4TEY7O0FTeExBO0VBQ0U7QVQyTEY7O0FTbkxBOztFQUVFO0FUc0xGOztBUzlLQTs7RUY2RU07QVBzR047O0FTNUtBOztFQUNFO0VBQ0E7QVRnTEY7O0FTdktBOztFQUVFO0VGeURJO0VFdkRKO0VBQ0E7QVQwS0Y7O0FTdktBO0VBQU07QVQyS047O0FTMUtBO0VBQU07QVQ4S047O0FTektBO0VBQ0U7RUFDQTtBVDRLRjs7QVMxS0U7RUFDRTtBVDZLSjs7QVNsS0U7O0VBRUU7RUFDQTtBVHFLSjs7QVM5SkE7Ozs7RUFJRTtFRmVJO0FQbUpOOztBUzFKQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VGR0k7QVAySk47O0FTekpFO0VGRkk7RUVJRjtFQUNBO0FUNEpKOztBU3hKQTtFRlRNO0VFV0o7RUFDQTtBVDJKRjs7QVN4SkU7RUFDRTtBVDJKSjs7QVN2SkE7RUFDRTtFRnJCSTtFRXVCSjtFQUNBO0VDcFNFO0FWK2JKOztBU3hKRTtFQUNFO0VGNUJFO0FQd0xOOztBU2pKQTtFQUNFO0FUb0pGOztBUzlJQTs7RUFFRTtBVGlKRjs7QVN6SUE7RUFDRTtFQUNBO0FUNElGOztBU3pJQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FUNElGOztBU3JJQTtFQUVFO0VBQ0E7QVR1SUY7O0FTcElBOzs7Ozs7RUFNRTtFQUNBO0VBQ0E7QVR1SUY7O0FTL0hBO0VBQ0U7QVRrSUY7O0FTNUhBO0VBRUU7QVQ4SEY7O0FTdEhBO0VBQ0U7QVR5SEY7O0FTcEhBOzs7OztFQUtFO0VBQ0E7RUYzSEk7RUU2SEo7QVR1SEY7O0FTbkhBOztFQUVFO0FUc0hGOztBU2pIQTtFQUNFO0FUb0hGOztBU2pIQTtFQUdFO0FUa0hGOztBUy9HRTtFQUNFO0FUa0hKOztBUzNHQTtFQUNFO0FUOEdGOztBU3RHQTs7OztFQUlFO0FUeUdGOztBU3RHSTs7OztFQUNFO0FUNEdOOztBU3JHQTtFQUNFO0VBQ0E7QVR3R0Y7O0FTbkdBO0VBQ0U7QVRzR0Y7O0FTNUZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QVQrRkY7O0FTdkZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUZoTk07RUVtTk47QVR5RkY7O0FPeGNJO0VFd1dKO0lGck1RO0VQMFNOO0FBQ0Y7O0FTN0ZFO0VBQ0U7QVRnR0o7O0FTekZBOzs7Ozs7O0VBT0U7QVQ0RkY7O0FTekZBO0VBQ0U7QVQ0RkY7O0FTbkZBO0VBQ0U7RUFDQTtBVHNGRjs7QVM5RUE7Ozs7Ozs7Q1R1RkM7O0FTNUVEO0VBQ0U7QVQrRUY7O0FTMUVBO0VBQ0U7QVQ2RUY7O0FTdEVBO0VBQ0U7RUFDQTtBVHlFRjs7QVMzRUE7RUFDRTtFQUNBO0FUeUVGOztBU3BFQTtFQUNFO0FUdUVGOztBU2xFQTtFQUNFO0FUcUVGOztBUzlEQTtFQUNFO0VBQ0E7QVRpRUY7O0FTekRBO0VBQ0U7QVQ0REY7O0FTcERBO0VBQ0U7QVR1REY7O0FXM25CQTtFSm1RTTtFSWpRSjtBWDhuQkY7O0FXem5CRTtFSmdRTTtFSTVQSjtFQUNBO0FYMG5CSjs7QU8zaEJJO0VJcEdGO0lKdVFNO0VQNlhOO0FBQ0Y7O0FXcm9CRTtFSmdRTTtFSTVQSjtFQUNBO0FYc29CSjs7QU92aUJJO0VJcEdGO0lKdVFNO0VQeVlOO0FBQ0Y7O0FXanBCRTtFSmdRTTtFSTVQSjtFQUNBO0FYa3BCSjs7QU9uakJJO0VJcEdGO0lKdVFNO0VQcVpOO0FBQ0Y7O0FXN3BCRTtFSmdRTTtFSTVQSjtFQUNBO0FYOHBCSjs7QU8vakJJO0VJcEdGO0lKdVFNO0VQaWFOO0FBQ0Y7O0FXenFCRTtFSmdRTTtFSTVQSjtFQUNBO0FYMHFCSjs7QU8za0JJO0VJcEdGO0lKdVFNO0VQNmFOO0FBQ0Y7O0FXcnJCRTtFSmdRTTtFSTVQSjtFQUNBO0FYc3JCSjs7QU92bEJJO0VJcEdGO0lKdVFNO0VQeWJOO0FBQ0Y7O0FXenFCQTtFQ3ZERTtFQUNBO0Fab3VCRjs7QVd6cUJBO0VDNURFO0VBQ0E7QVp5dUJGOztBVzNxQkE7RUFDRTtBWDhxQkY7O0FXNXFCRTtFQUNFO0FYK3FCSjs7QVdycUJBO0VKOE1NO0VJNU1KO0FYd3FCRjs7QVdwcUJBOztFQUNFO0VKdU1JO0FQa2VOOztBV3RxQkU7O0VBQ0U7QVgwcUJKOztBV3RxQkE7RUFDRTtFQUNBO0VKNkxJO0VJM0xKO0FYeXFCRjs7QVd2cUJFO0VBQ0U7QVgwcUJKOztBYTF3QkE7O0VDSUU7RUFHQTtBZHl3QkY7O0FhMXdCQTtFQUNFO0VBQ0E7RUFDQTtFSEdFO0VJUkY7RUFHQTtBZGt4QkY7O0FhcHdCQTtFQUVFO0Fic3dCRjs7QWFud0JBO0VBQ0U7RUFDQTtBYnN3QkY7O0FhbndCQTtFTnlQTTtFTXZQSjtBYnN3QkY7O0FleHlCRTs7Ozs7OztFQ0ZBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0FoQmt6QkY7O0FpQi92Qkk7RUZ6REY7Ozs7Ozs7SUNTRTtJQUNBO0VoQjB6QkY7QUFDRjs7QWlCNXdCSTtFRnpERjs7Ozs7OztJQ2NFO0lBQ0E7RWhCazBCRjtBQUNGOztBaUJ6eEJJO0VGNUNFOztJQUNFO0VmMDBCTjtBQUNGOztBaUJoeUJJO0VGNUNFOzs7SUFDRTtFZmsxQk47QUFDRjs7QWlCeHlCSTtFRjVDRTs7OztJQUNFO0VmMjFCTjtBQUNGOztBaUJqekJJO0VGNUNFOzs7OztJQUNFO0VmcTJCTjtBQUNGOztBaUIzekJJO0VGNUNFOzs7Ozs7SUFDRTtFZmczQk47QUFDRjs7QWtCajRCQTtFQUVJO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtBbEJ3NEJKOztBa0JuNEJFO0VDTkE7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7QW5CNDRCRjs7QWtCMTRCSTtFQ09GO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkJ1NEJGOztBbUJ4MUJNO0VBQ0U7QW5CMjFCUjs7QW1CeDFCTTtFQXBDSjtFQUNBO0FuQmc0QkY7O0FtQmwzQkU7RUFDRTtFQUNBO0FuQnEzQko7O0FtQnYzQkU7RUFDRTtFQUNBO0FuQjAzQko7O0FtQjUzQkU7RUFDRTtFQUNBO0FuQiszQko7O0FtQmo0QkU7RUFDRTtFQUNBO0FuQm80Qko7O0FtQnQ0QkU7RUFDRTtFQUNBO0FuQnk0Qko7O0FtQjM0QkU7RUFDRTtFQUNBO0FuQjg0Qko7O0FtQi8yQk07RUFoREo7RUFDQTtBbkJtNkJGOztBbUI5MkJVO0VBaEVOO0VBQ0E7QW5CazdCSjs7QW1CbjNCVTtFQWhFTjtFQUNBO0FuQnU3Qko7O0FtQngzQlU7RUFoRU47RUFDQTtBbkI0N0JKOztBbUI3M0JVO0VBaEVOO0VBQ0E7QW5CaThCSjs7QW1CbDRCVTtFQWhFTjtFQUNBO0FuQnM4Qko7O0FtQnY0QlU7RUFoRU47RUFDQTtBbkIyOEJKOztBbUI1NEJVO0VBaEVOO0VBQ0E7QW5CZzlCSjs7QW1CajVCVTtFQWhFTjtFQUNBO0FuQnE5Qko7O0FtQnQ1QlU7RUFoRU47RUFDQTtBbkIwOUJKOztBbUIzNUJVO0VBaEVOO0VBQ0E7QW5CKzlCSjs7QW1CaDZCVTtFQWhFTjtFQUNBO0FuQm8rQko7O0FtQnI2QlU7RUFoRU47RUFDQTtBbkJ5K0JKOztBbUJsNkJZO0VBeERWO0FuQjg5QkY7O0FtQnQ2Qlk7RUF4RFY7QW5CaytCRjs7QW1CMTZCWTtFQXhEVjtBbkJzK0JGOztBbUI5NkJZO0VBeERWO0FuQjArQkY7O0FtQmw3Qlk7RUF4RFY7QW5COCtCRjs7QW1CdDdCWTtFQXhEVjtBbkJrL0JGOztBbUIxN0JZO0VBeERWO0FuQnMvQkY7O0FtQjk3Qlk7RUF4RFY7QW5CMC9CRjs7QW1CbDhCWTtFQXhEVjtBbkI4L0JGOztBbUJ0OEJZO0VBeERWO0FuQmtnQ0Y7O0FtQjE4Qlk7RUF4RFY7QW5Cc2dDRjs7QW1CbjhCUTs7RUFFRTtBbkJzOEJWOztBbUJuOEJROztFQUVFO0FuQnM4QlY7O0FtQjc4QlE7O0VBRUU7QW5CZzlCVjs7QW1CNzhCUTs7RUFFRTtBbkJnOUJWOztBbUJ2OUJROztFQUVFO0FuQjA5QlY7O0FtQnY5QlE7O0VBRUU7QW5CMDlCVjs7QW1CaitCUTs7RUFFRTtBbkJvK0JWOztBbUJqK0JROztFQUVFO0FuQm8rQlY7O0FtQjMrQlE7O0VBRUU7QW5COCtCVjs7QW1CMytCUTs7RUFFRTtBbkI4K0JWOztBbUJyL0JROztFQUVFO0FuQncvQlY7O0FtQnIvQlE7O0VBRUU7QW5Cdy9CVjs7QWlCbGpDSTtFRVVFO0lBQ0U7RW5CNGlDTjs7RW1CemlDSTtJQXBDSjtJQUNBO0VuQmlsQ0E7O0VtQm5rQ0E7SUFDRTtJQUNBO0VuQnNrQ0Y7O0VtQnhrQ0E7SUFDRTtJQUNBO0VuQjJrQ0Y7O0VtQjdrQ0E7SUFDRTtJQUNBO0VuQmdsQ0Y7O0VtQmxsQ0E7SUFDRTtJQUNBO0VuQnFsQ0Y7O0VtQnZsQ0E7SUFDRTtJQUNBO0VuQjBsQ0Y7O0VtQjVsQ0E7SUFDRTtJQUNBO0VuQitsQ0Y7O0VtQmhrQ0k7SUFoREo7SUFDQTtFbkJvbkNBOztFbUIvakNRO0lBaEVOO0lBQ0E7RW5CbW9DRjs7RW1CcGtDUTtJQWhFTjtJQUNBO0VuQndvQ0Y7O0VtQnprQ1E7SUFoRU47SUFDQTtFbkI2b0NGOztFbUI5a0NRO0lBaEVOO0lBQ0E7RW5Ca3BDRjs7RW1CbmxDUTtJQWhFTjtJQUNBO0VuQnVwQ0Y7O0VtQnhsQ1E7SUFoRU47SUFDQTtFbkI0cENGOztFbUI3bENRO0lBaEVOO0lBQ0E7RW5CaXFDRjs7RW1CbG1DUTtJQWhFTjtJQUNBO0VuQnNxQ0Y7O0VtQnZtQ1E7SUFoRU47SUFDQTtFbkIycUNGOztFbUI1bUNRO0lBaEVOO0lBQ0E7RW5CZ3JDRjs7RW1Cam5DUTtJQWhFTjtJQUNBO0VuQnFyQ0Y7O0VtQnRuQ1E7SUFoRU47SUFDQTtFbkIwckNGOztFbUJubkNVO0lBeERWO0VuQitxQ0E7O0VtQnZuQ1U7SUF4RFY7RW5CbXJDQTs7RW1CM25DVTtJQXhEVjtFbkJ1ckNBOztFbUIvbkNVO0lBeERWO0VuQjJyQ0E7O0VtQm5vQ1U7SUF4RFY7RW5CK3JDQTs7RW1Cdm9DVTtJQXhEVjtFbkJtc0NBOztFbUIzb0NVO0lBeERWO0VuQnVzQ0E7O0VtQi9vQ1U7SUF4RFY7RW5CMnNDQTs7RW1CbnBDVTtJQXhEVjtFbkIrc0NBOztFbUJ2cENVO0lBeERWO0VuQm10Q0E7O0VtQjNwQ1U7SUF4RFY7RW5CdXRDQTs7RW1CL3BDVTtJQXhEVjtFbkIydENBOztFbUJ4cENNOztJQUVFO0VuQjJwQ1I7O0VtQnhwQ007O0lBRUU7RW5CMnBDUjs7RW1CbHFDTTs7SUFFRTtFbkJxcUNSOztFbUJscUNNOztJQUVFO0VuQnFxQ1I7O0VtQjVxQ007O0lBRUU7RW5CK3FDUjs7RW1CNXFDTTs7SUFFRTtFbkIrcUNSOztFbUJ0ckNNOztJQUVFO0VuQnlyQ1I7O0VtQnRyQ007O0lBRUU7RW5CeXJDUjs7RW1CaHNDTTs7SUFFRTtFbkJtc0NSOztFbUJoc0NNOztJQUVFO0VuQm1zQ1I7O0VtQjFzQ007O0lBRUU7RW5CNnNDUjs7RW1CMXNDTTs7SUFFRTtFbkI2c0NSO0FBQ0Y7O0FpQnh3Q0k7RUVVRTtJQUNFO0VuQmt3Q047O0VtQi92Q0k7SUFwQ0o7SUFDQTtFbkJ1eUNBOztFbUJ6eENBO0lBQ0U7SUFDQTtFbkI0eENGOztFbUI5eENBO0lBQ0U7SUFDQTtFbkJpeUNGOztFbUJueUNBO0lBQ0U7SUFDQTtFbkJzeUNGOztFbUJ4eUNBO0lBQ0U7SUFDQTtFbkIyeUNGOztFbUI3eUNBO0lBQ0U7SUFDQTtFbkJnekNGOztFbUJsekNBO0lBQ0U7SUFDQTtFbkJxekNGOztFbUJ0eENJO0lBaERKO0lBQ0E7RW5CMDBDQTs7RW1CcnhDUTtJQWhFTjtJQUNBO0VuQnkxQ0Y7O0VtQjF4Q1E7SUFoRU47SUFDQTtFbkI4MUNGOztFbUIveENRO0lBaEVOO0lBQ0E7RW5CbTJDRjs7RW1CcHlDUTtJQWhFTjtJQUNBO0VuQncyQ0Y7O0VtQnp5Q1E7SUFoRU47SUFDQTtFbkI2MkNGOztFbUI5eUNRO0lBaEVOO0lBQ0E7RW5CazNDRjs7RW1CbnpDUTtJQWhFTjtJQUNBO0VuQnUzQ0Y7O0VtQnh6Q1E7SUFoRU47SUFDQTtFbkI0M0NGOztFbUI3ekNRO0lBaEVOO0lBQ0E7RW5CaTRDRjs7RW1CbDBDUTtJQWhFTjtJQUNBO0VuQnM0Q0Y7O0VtQnYwQ1E7SUFoRU47SUFDQTtFbkIyNENGOztFbUI1MENRO0lBaEVOO0lBQ0E7RW5CZzVDRjs7RW1CejBDVTtJQXhEVjtFbkJxNENBOztFbUI3MENVO0lBeERWO0VuQnk0Q0E7O0VtQmoxQ1U7SUF4RFY7RW5CNjRDQTs7RW1CcjFDVTtJQXhEVjtFbkJpNUNBOztFbUJ6MUNVO0lBeERWO0VuQnE1Q0E7O0VtQjcxQ1U7SUF4RFY7RW5CeTVDQTs7RW1CajJDVTtJQXhEVjtFbkI2NUNBOztFbUJyMkNVO0lBeERWO0VuQmk2Q0E7O0VtQnoyQ1U7SUF4RFY7RW5CcTZDQTs7RW1CNzJDVTtJQXhEVjtFbkJ5NkNBOztFbUJqM0NVO0lBeERWO0VuQjY2Q0E7O0VtQnIzQ1U7SUF4RFY7RW5CaTdDQTs7RW1COTJDTTs7SUFFRTtFbkJpM0NSOztFbUI5MkNNOztJQUVFO0VuQmkzQ1I7O0VtQngzQ007O0lBRUU7RW5CMjNDUjs7RW1CeDNDTTs7SUFFRTtFbkIyM0NSOztFbUJsNENNOztJQUVFO0VuQnE0Q1I7O0VtQmw0Q007O0lBRUU7RW5CcTRDUjs7RW1CNTRDTTs7SUFFRTtFbkIrNENSOztFbUI1NENNOztJQUVFO0VuQis0Q1I7O0VtQnQ1Q007O0lBRUU7RW5CeTVDUjs7RW1CdDVDTTs7SUFFRTtFbkJ5NUNSOztFbUJoNkNNOztJQUVFO0VuQm02Q1I7O0VtQmg2Q007O0lBRUU7RW5CbTZDUjtBQUNGOztBaUI5OUNJO0VFVUU7SUFDRTtFbkJ3OUNOOztFbUJyOUNJO0lBcENKO0lBQ0E7RW5CNi9DQTs7RW1CLytDQTtJQUNFO0lBQ0E7RW5Cay9DRjs7RW1CcC9DQTtJQUNFO0lBQ0E7RW5CdS9DRjs7RW1Cei9DQTtJQUNFO0lBQ0E7RW5CNC9DRjs7RW1COS9DQTtJQUNFO0lBQ0E7RW5CaWdERjs7RW1CbmdEQTtJQUNFO0lBQ0E7RW5Cc2dERjs7RW1CeGdEQTtJQUNFO0lBQ0E7RW5CMmdERjs7RW1CNStDSTtJQWhESjtJQUNBO0VuQmdpREE7O0VtQjMrQ1E7SUFoRU47SUFDQTtFbkIraURGOztFbUJoL0NRO0lBaEVOO0lBQ0E7RW5Cb2pERjs7RW1Cci9DUTtJQWhFTjtJQUNBO0VuQnlqREY7O0VtQjEvQ1E7SUFoRU47SUFDQTtFbkI4akRGOztFbUIvL0NRO0lBaEVOO0lBQ0E7RW5CbWtERjs7RW1CcGdEUTtJQWhFTjtJQUNBO0VuQndrREY7O0VtQnpnRFE7SUFoRU47SUFDQTtFbkI2a0RGOztFbUI5Z0RRO0lBaEVOO0lBQ0E7RW5Ca2xERjs7RW1CbmhEUTtJQWhFTjtJQUNBO0VuQnVsREY7O0VtQnhoRFE7SUFoRU47SUFDQTtFbkI0bERGOztFbUI3aERRO0lBaEVOO0lBQ0E7RW5CaW1ERjs7RW1CbGlEUTtJQWhFTjtJQUNBO0VuQnNtREY7O0VtQi9oRFU7SUF4RFY7RW5CMmxEQTs7RW1CbmlEVTtJQXhEVjtFbkIrbERBOztFbUJ2aURVO0lBeERWO0VuQm1tREE7O0VtQjNpRFU7SUF4RFY7RW5CdW1EQTs7RW1CL2lEVTtJQXhEVjtFbkIybURBOztFbUJuakRVO0lBeERWO0VuQittREE7O0VtQnZqRFU7SUF4RFY7RW5CbW5EQTs7RW1CM2pEVTtJQXhEVjtFbkJ1bkRBOztFbUIvakRVO0lBeERWO0VuQjJuREE7O0VtQm5rRFU7SUF4RFY7RW5CK25EQTs7RW1CdmtEVTtJQXhEVjtFbkJtb0RBOztFbUIza0RVO0lBeERWO0VuQnVvREE7O0VtQnBrRE07O0lBRUU7RW5CdWtEUjs7RW1CcGtETTs7SUFFRTtFbkJ1a0RSOztFbUI5a0RNOztJQUVFO0VuQmlsRFI7O0VtQjlrRE07O0lBRUU7RW5CaWxEUjs7RW1CeGxETTs7SUFFRTtFbkIybERSOztFbUJ4bERNOztJQUVFO0VuQjJsRFI7O0VtQmxtRE07O0lBRUU7RW5CcW1EUjs7RW1CbG1ETTs7SUFFRTtFbkJxbURSOztFbUI1bURNOztJQUVFO0VuQittRFI7O0VtQjVtRE07O0lBRUU7RW5CK21EUjs7RW1CdG5ETTs7SUFFRTtFbkJ5bkRSOztFbUJ0bkRNOztJQUVFO0VuQnluRFI7QUFDRjs7QWlCcHJESTtFRVVFO0lBQ0U7RW5COHFETjs7RW1CM3FESTtJQXBDSjtJQUNBO0VuQm10REE7O0VtQnJzREE7SUFDRTtJQUNBO0VuQndzREY7O0VtQjFzREE7SUFDRTtJQUNBO0VuQjZzREY7O0VtQi9zREE7SUFDRTtJQUNBO0VuQmt0REY7O0VtQnB0REE7SUFDRTtJQUNBO0VuQnV0REY7O0VtQnp0REE7SUFDRTtJQUNBO0VuQjR0REY7O0VtQjl0REE7SUFDRTtJQUNBO0VuQml1REY7O0VtQmxzREk7SUFoREo7SUFDQTtFbkJzdkRBOztFbUJqc0RRO0lBaEVOO0lBQ0E7RW5CcXdERjs7RW1CdHNEUTtJQWhFTjtJQUNBO0VuQjB3REY7O0VtQjNzRFE7SUFoRU47SUFDQTtFbkIrd0RGOztFbUJodERRO0lBaEVOO0lBQ0E7RW5Cb3hERjs7RW1CcnREUTtJQWhFTjtJQUNBO0VuQnl4REY7O0VtQjF0RFE7SUFoRU47SUFDQTtFbkI4eERGOztFbUIvdERRO0lBaEVOO0lBQ0E7RW5CbXlERjs7RW1CcHVEUTtJQWhFTjtJQUNBO0VuQnd5REY7O0VtQnp1RFE7SUFoRU47SUFDQTtFbkI2eURGOztFbUI5dURRO0lBaEVOO0lBQ0E7RW5Ca3pERjs7RW1CbnZEUTtJQWhFTjtJQUNBO0VuQnV6REY7O0VtQnh2RFE7SUFoRU47SUFDQTtFbkI0ekRGOztFbUJydkRVO0lBeERWO0VuQml6REE7O0VtQnp2RFU7SUF4RFY7RW5CcXpEQTs7RW1CN3ZEVTtJQXhEVjtFbkJ5ekRBOztFbUJqd0RVO0lBeERWO0VuQjZ6REE7O0VtQnJ3RFU7SUF4RFY7RW5CaTBEQTs7RW1CendEVTtJQXhEVjtFbkJxMERBOztFbUI3d0RVO0lBeERWO0VuQnkwREE7O0VtQmp4RFU7SUF4RFY7RW5CNjBEQTs7RW1CcnhEVTtJQXhEVjtFbkJpMURBOztFbUJ6eERVO0lBeERWO0VuQnExREE7O0VtQjd4RFU7SUF4RFY7RW5CeTFEQTs7RW1CanlEVTtJQXhEVjtFbkI2MURBOztFbUIxeERNOztJQUVFO0VuQjZ4RFI7O0VtQjF4RE07O0lBRUU7RW5CNnhEUjs7RW1CcHlETTs7SUFFRTtFbkJ1eURSOztFbUJweURNOztJQUVFO0VuQnV5RFI7O0VtQjl5RE07O0lBRUU7RW5CaXpEUjs7RW1COXlETTs7SUFFRTtFbkJpekRSOztFbUJ4ekRNOztJQUVFO0VuQjJ6RFI7O0VtQnh6RE07O0lBRUU7RW5CMnpEUjs7RW1CbDBETTs7SUFFRTtFbkJxMERSOztFbUJsMERNOztJQUVFO0VuQnEwRFI7O0VtQjUwRE07O0lBRUU7RW5CKzBEUjs7RW1CNTBETTs7SUFFRTtFbkIrMERSO0FBQ0Y7O0FpQjE0REk7RUVVRTtJQUNFO0VuQm80RE47O0VtQmo0REk7SUFwQ0o7SUFDQTtFbkJ5NkRBOztFbUIzNURBO0lBQ0U7SUFDQTtFbkI4NURGOztFbUJoNkRBO0lBQ0U7SUFDQTtFbkJtNkRGOztFbUJyNkRBO0lBQ0U7SUFDQTtFbkJ3NkRGOztFbUIxNkRBO0lBQ0U7SUFDQTtFbkI2NkRGOztFbUIvNkRBO0lBQ0U7SUFDQTtFbkJrN0RGOztFbUJwN0RBO0lBQ0U7SUFDQTtFbkJ1N0RGOztFbUJ4NURJO0lBaERKO0lBQ0E7RW5CNDhEQTs7RW1CdjVEUTtJQWhFTjtJQUNBO0VuQjI5REY7O0VtQjU1RFE7SUFoRU47SUFDQTtFbkJnK0RGOztFbUJqNkRRO0lBaEVOO0lBQ0E7RW5CcStERjs7RW1CdDZEUTtJQWhFTjtJQUNBO0VuQjArREY7O0VtQjM2RFE7SUFoRU47SUFDQTtFbkIrK0RGOztFbUJoN0RRO0lBaEVOO0lBQ0E7RW5Cby9ERjs7RW1CcjdEUTtJQWhFTjtJQUNBO0VuQnkvREY7O0VtQjE3RFE7SUFoRU47SUFDQTtFbkI4L0RGOztFbUIvN0RRO0lBaEVOO0lBQ0E7RW5CbWdFRjs7RW1CcDhEUTtJQWhFTjtJQUNBO0VuQndnRUY7O0VtQno4RFE7SUFoRU47SUFDQTtFbkI2Z0VGOztFbUI5OERRO0lBaEVOO0lBQ0E7RW5Ca2hFRjs7RW1CMzhEVTtJQXhEVjtFbkJ1Z0VBOztFbUIvOERVO0lBeERWO0VuQjJnRUE7O0VtQm45RFU7SUF4RFY7RW5CK2dFQTs7RW1CdjlEVTtJQXhEVjtFbkJtaEVBOztFbUIzOURVO0lBeERWO0VuQnVoRUE7O0VtQi85RFU7SUF4RFY7RW5CMmhFQTs7RW1CbitEVTtJQXhEVjtFbkIraEVBOztFbUJ2K0RVO0lBeERWO0VuQm1pRUE7O0VtQjMrRFU7SUF4RFY7RW5CdWlFQTs7RW1CLytEVTtJQXhEVjtFbkIyaUVBOztFbUJuL0RVO0lBeERWO0VuQitpRUE7O0VtQnYvRFU7SUF4RFY7RW5CbWpFQTs7RW1CaC9ETTs7SUFFRTtFbkJtL0RSOztFbUJoL0RNOztJQUVFO0VuQm0vRFI7O0VtQjEvRE07O0lBRUU7RW5CNi9EUjs7RW1CMS9ETTs7SUFFRTtFbkI2L0RSOztFbUJwZ0VNOztJQUVFO0VuQnVnRVI7O0VtQnBnRU07O0lBRUU7RW5CdWdFUjs7RW1COWdFTTs7SUFFRTtFbkJpaEVSOztFbUI5Z0VNOztJQUVFO0VuQmloRVI7O0VtQnhoRU07O0lBRUU7RW5CMmhFUjs7RW1CeGhFTTs7SUFFRTtFbkIyaEVSOztFbUJsaUVNOztJQUVFO0VuQnFpRVI7O0VtQmxpRU07O0lBRUU7RW5CcWlFUjtBQUNGOztBb0IzcEVBOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtBcEI0cEVGOztBb0JycEVFOztFQUNFO0VBRUE7RUFDQTtFQUNBO0VBQ0E7QXBCd3BFSjs7QW9CcnBFRTs7RUFDRTtBcEJ5cEVKOztBb0J0cEVFOztFQUNFO0FwQjBwRUo7O0FvQnRwRUE7RUFDRTtBcEJ5cEVGOztBb0JscEVBO0VBQ0U7QXBCcXBFRjs7QW9CM29FRTtFQUNFO0FwQjhvRUo7O0FvQi9uRUU7O0VBQ0U7QXBCbW9FSjs7QW9CaG9FSTs7RUFDRTtBcEJvb0VOOztBb0I3bkVFO0VBQ0U7QXBCZ29FSjs7QW9CN25FRTtFQUNFO0FwQmdvRUo7O0FvQnRuRUU7RUFDRTtFQUNBO0FwQnluRUo7O0FvQm5uRUU7RUFDRTtFQUNBO0FwQnNuRUo7O0FvQjltRUE7RUFDRTtFQUNBO0FwQmluRUY7O0FvQnptRUU7RUFDRTtFQUNBO0FwQjRtRUo7O0FxQnh2RUU7RUFPRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FyQm92RUo7O0FxQnR3RUU7RUFPRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FyQmt3RUo7O0FxQnB4RUU7RUFPRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FyQmd4RUo7O0FxQmx5RUU7RUFPRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FyQjh4RUo7O0FxQmh6RUU7RUFPRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FyQjR5RUo7O0FxQjl6RUU7RUFPRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FyQjB6RUo7O0FxQjUwRUU7RUFPRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FyQncwRUo7O0FxQjExRUU7RUFPRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FyQnMxRUo7O0FvQnJzRUk7RUFDRTtFQUNBO0FwQndzRU47O0FpQm55RUk7RUd5RkE7SUFDRTtJQUNBO0VwQjhzRUo7QUFDRjs7QWlCMXlFSTtFR3lGQTtJQUNFO0lBQ0E7RXBCcXRFSjtBQUNGOztBaUJqekVJO0VHeUZBO0lBQ0U7SUFDQTtFcEI0dEVKO0FBQ0Y7O0FpQnh6RUk7RUd5RkE7SUFDRTtJQUNBO0VwQm11RUo7QUFDRjs7QWlCL3pFSTtFR3lGQTtJQUNFO0lBQ0E7RXBCMHVFSjtBQUNGOztBc0I5NEVBO0VBQ0U7QXRCaTVFRjs7QXNCeDRFQTtFQUNFO0VBQ0E7RUFDQTtFZjhRSTtFZTFRSjtBdEJ5NEVGOztBc0JyNEVBO0VBQ0U7RUFDQTtFZm9RSTtBUHFvRU47O0FzQnI0RUE7RUFDRTtFQUNBO0VmOFBJO0FQMm9FTjs7QXVCdDZFQTtFQUNFO0VoQjBSSTtFZ0J0Uko7QXZCdTZFRjs7QXdCNTZFQTs7RUFDRTtFQUNBO0VBQ0E7RWpCd1JJO0VpQnJSSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtLQUFBO1VBQUE7RWRHRTtFZUhFO0F6Qmk3RU47O0F5Qjc2RU07RURoQk47O0lDaUJRO0V6Qms3RU47QUFDRjs7QXdCaDdFRTs7RUFDRTtBeEJvN0VKOztBd0JsN0VJOztFQUNFO0F4QnM3RU47O0F3Qmo3RUU7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFLRTtBeEJpN0VOOztBd0I3NkVFOztFQU1FO0VBTUE7RUFLQTtBeEJtNkVKOztBd0I5NUVFOztFQUNFO0VBQ0E7QXhCazZFSjs7QXdCOTVFRTtFQUNFO0VBRUE7QXhCaTZFSjs7QXdCcDZFRTtFQUNFO0VBRUE7QXhCaTZFSjs7QXdCcDZFRTs7RUFDRTtFQUVBO0F4Qmk2RUo7O0F3Qno1RUU7O0VBRUU7RUFHQTtBeEIwNUVKOztBd0J0NUVFO0VBQ0U7RUFDQTtFQUNBO1VBQUE7RUFDQTtFRTlGRjtFRmdHRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUN6RkU7RUFBQTtBekJvL0VOOztBd0J0NkVFOztFQUNFO0VBQ0E7RUFDQTtVQUFBO0VBQ0E7RUU5RkY7RUZnR0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VDekZFO0F6Qm8vRU47O0F5QmgvRU07RUQwRUo7SUN6RU07SUFBQTtFekJxL0VOO0V3QjU2RUE7O0lDekVNO0V6QnEvRU47QUFDRjs7QXdCOTVFRTtFQUNFO0F4Qms2RUo7O0F3Qm42RUU7O0VBQ0U7QXhCazZFSjs7QXdCejVFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEI0NUVGOztBd0IxNUVFO0VBQ0U7QXhCNjVFSjs7QXdCMTVFRTs7RUFFRTtFQUNBO0F4QjY1RUo7O0F3Qmw1RUE7RUFDRTtFQUNBO0VqQnlJSTtFRzVRRjtBVjBoRko7O0F3Qm41RUU7RUFDRTtFQUNBO0VBQ0E7VUFBQTtBeEJzNUVKOztBd0J6NUVFO0VBQ0U7RUFDQTtFQUNBO1VBQUE7QXhCczVFSjs7QXdCbDVFQTtFQUNFO0VBQ0E7RWpCNEhJO0VHNVFGO0FWdWlGSjs7QXdCbjVFRTtFQUNFO0VBQ0E7RUFDQTtVQUFBO0F4QnM1RUo7O0F3Qno1RUU7RUFDRTtFQUNBO0VBQ0E7VUFBQTtBeEJzNUVKOztBd0I5NEVFOztFQUNFO0F4Qms1RUo7O0F3Qi80RUU7RUFDRTtBeEJrNUVKOztBd0IvNEVFO0VBQ0U7QXhCazVFSjs7QXdCNzRFQTtFQUNFO0VBQ0E7RUFDQTtBeEJnNUVGOztBd0I5NEVFO0VBQ0U7QXhCaTVFSjs7QXdCOTRFRTtFQUNFO0VkdkxBO0FWeWtGSjs7QXdCOTRFRTtFQUNFO0VkNUxBO0FWOGtGSjs7QXdCOTRFRTtFQUFvQjtBeEJrNUV0Qjs7QXdCajVFRTtFQUFvQjtBeEJxNUV0Qjs7QTJCcG1GQTtFQUNFO0VBRUE7RUFDQTtFQUNBO0VwQnFSSTtFb0JsUko7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VqQkZFO0VlSEU7RUVTSjtLQUFBO1VBQUE7QTNCb21GRjs7QXlCem1GTTtFRWZOO0lGZ0JRO0V6QjZtRk47QUFDRjs7QTJCeG1GRTtFQUNFO0VBQ0E7RUFLRTtBM0J1bUZOOztBMkJubUZFOztFQUVFO0VBQ0E7QTNCc21GSjs7QTJCbm1GRTtFQUVFO0EzQnFtRko7O0EyQmhtRkU7RUFDRTtFQUNBO0EzQm1tRko7O0EyQi9sRkE7RUFDRTtFQUNBO0VBQ0E7RXBCbU9JO0VHNVFGO0FWNm9GSjs7QTJCL2xGQTtFQUNFO0VBQ0E7RUFDQTtFcEIyTkk7RUc1UUY7QVZxcEZKOztBMkI3bEZJO0VBQ0U7QTNCZ21GTjs7QTRCeHFGQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E1QjJxRkY7O0E0QnpxRkU7RUFDRTtFQUNBO0E1QjRxRko7O0E0QnhxRkE7RUFDRTtFQUNBO0VBQ0E7QTVCMnFGRjs7QTRCenFGRTtFQUNFO0VBQ0E7RUFDQTtBNUI0cUZKOztBNEJ4cUZBO0VBQ0U7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0tBQUE7VUFBQTtFQUNBO0E1QjBxRkY7O0E0QnZxRkU7RWxCMUJFO0FWcXNGSjs7QTRCdnFGRTtFQUVFO0E1QnlxRko7O0E0QnRxRkU7RUFDRTtBNUJ5cUZKOztBNEJ0cUZFO0VBQ0U7RUFDQTtFQUNBO0E1QnlxRko7O0E0QnRxRkU7RUFDRTtFQUNBO0E1QnlxRko7O0E0QnZxRkk7RUFJSTtBNUJ1cUZSOztBNEJucUZJO0VBSUk7QTVCbXFGUjs7QTRCOXBGRTtFQUNFO0VBQ0E7RUFLRTtBNUI2cEZOOztBNEJ6cEZFO0VBQ0U7RUFDQTtFQUNBO0E1QjRwRko7O0E0QnJwRkk7O0VBQ0U7RUFDQTtBNUJ5cEZOOztBNEIzb0ZBO0VBQ0U7QTVCOG9GRjs7QTRCNW9GRTtFQUNFO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RWxCaEhBO0VlSEU7QXpCbXdGTjs7QXlCL3ZGTTtFR3lHSjtJSHhHTTtFekJtd0ZOO0FBQ0Y7O0E0QmxwRkk7RUFDRTtBNUJxcEZOOztBNEJscEZJO0VBQ0U7RUFLRTtBNUJpcEZSOztBNEI1b0ZFO0VBQ0U7RUFDQTtBNUIrb0ZKOztBNEI3b0ZJO0VBQ0U7RUFDQTtBNUJncEZOOztBNEIzb0ZBO0VBQ0U7RUFDQTtBNUI4b0ZGOztBNEIzb0ZBO0VBQ0U7RUFDQTtFQUNBO0E1QjhvRkY7O0E0QjFvRkk7O0VBQ0U7RUFDQTtFQUNBO0E1QjhvRk47O0E0QnZvRkk7RUFDRTtBNUIwb0ZOOztBNkI1ekZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtLQUFBO1VBQUE7QTdCK3pGRjs7QTZCN3pGRTtFQUNFO0E3QmcwRko7O0E2QjV6Rkk7RUFBMEI7QTdCZzBGOUI7O0E2Qi96Rkk7RUFBMEI7QTdCbTBGOUI7O0E2QmgwRkU7RUFDRTtBN0JtMEZKOztBNkJoMEZFO0VBQ0U7RUFDQTtFQUNBO0VIekJGO0VHMkJFO0VuQlpBO0VlSEU7RUFBQTtFSW1CRjtVQUFBO0E3QmswRko7O0F5QmoxRk07RUlNSjtJSkxNO0lBQUE7RXpCcTFGTjtBQUNGOztBNkJ0MEZJO0VIakNGO0ExQjIyRkY7O0E2QnIwRkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RW5CN0JBO0FWczJGSjs7QTZCcDBGRTtFQUNFO0VBQ0E7RUhuREY7RUdxREU7RW5CdENBO0VlSEU7RUFBQTtFSTZDRjtPQUFBO0E3QnMwRko7O0F5Qi8yRk07RUlpQ0o7SUpoQ007SUFBQTtFekJtM0ZOO0FBQ0Y7O0E2QjEwRkk7RUgzREY7QTFCeTRGRjs7QTZCejBGRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFbkJ2REE7QVZvNEZKOztBNkJ4MEZFO0VBQ0U7QTdCMjBGSjs7QTZCejBGSTtFQUNFO0E3QjQwRk47O0E2QnowRkk7RUFDRTtBN0I0MEZOOztBOEJuNkZBO0VBQ0U7QTlCczZGRjs7QThCcDZGRTs7OztFQUdFOztFOUJ5NkZGO0U4Qng2RkU7O0U5QjI2RkY7RThCMTZGRTtBOUI0NkZKOztBOEJ6NkZFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUxSRTtBekJxN0ZOOztBeUJqN0ZNO0VLVEo7SUxVTTtFekJxN0ZOO0FBQ0Y7O0E4Qi82RkU7OztFQUVFO0E5Qm03Rko7O0E4Qmo3Rkk7RUFDRTtBOUJzN0ZOOztBOEJ2N0ZJO0VBQ0U7QTlCczdGTjs7QThCdjdGSTs7O0VBQ0U7QTlCczdGTjs7QThCbjdGSTtFQUVFO0VBQ0E7QTlCMDdGTjs7QThCNzdGSTtFQUVFO0VBQ0E7QTlCMDdGTjs7QThCNzdGSTs7Ozs7O0VBRUU7RUFDQTtBOUIwN0ZOOztBOEJ2N0ZJOzs7RUFDRTtFQUNBO0E5QjQ3Rk47O0E4Qng3RkU7RUFDRTtFQUNBO0E5QjI3Rko7O0E4QnA3Rkk7RUFDRTtFQUNBO0E5QjQ3Rk47O0E4Qjk3Rkk7RUFDRTtFQUNBO0E5QjQ3Rk47O0E4Qjk3Rkk7Ozs7OztFQUNFO0VBQ0E7QTlCNDdGTjs7QThCMTdGTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFcEJoREo7QVZtL0ZKOztBOEJ6OEZNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VwQmhESjtBVm0vRko7O0E4Qno4Rk07Ozs7OztFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFcEJoREo7QVZtL0ZKOztBOEI1N0ZJOztFQUNFO0VBQ0E7QTlCZzhGTjs7QThCMzdGSTtFQUNFO0E5Qjg3Rk47O0E4QjE3RkU7RUFDRTtBOUI2N0ZKOztBOEIzN0ZJO0VBQ0U7QTlCODdGTjs7QStCcGhHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9CdWhHRjs7QStCcmhHRTs7OztFQUdFO0VBQ0E7RUFDQTtFQUNBO0EvQnloR0o7O0ErQnJoR0U7Ozs7RUFHRTtBL0J5aEdKOztBK0JuaEdFO0VBQ0U7RUFDQTtBL0JzaEdKOztBK0JwaEdJO0VBQ0U7QS9CdWhHTjs7QStCNWdHQTtFQUNFO0VBQ0E7RUFDQTtFeEI4T0k7RXdCNU9KO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VyQnRDRTtBVnNqR0o7O0ErQnRnR0E7Ozs7O0VBSUU7RXhCd05JO0VHNVFGO0FWZ2tHSjs7QStCdmdHQTs7Ozs7RUFJRTtFeEIrTUk7RUc1UUY7QVYwa0dKOztBK0J4Z0dBOztFQUVFO0EvQjJnR0Y7O0ErQjkvRkk7Ozs7O0VyQmpFQTtFQUNBO0FWdWtHSjs7QStCOS9GSTs7Ozs7RXJCMUVBO0VBQ0E7QVZnbEdKOztBK0IxL0ZFO0VBQ0U7RXJCMUVBO0VBQ0E7QVZ3a0dKOztBK0IzL0ZFOzs7RXJCOUVFO0VBQ0E7QVYra0dKOztBZ0N2bUdFO0VBQ0U7RUFDQTtFQUNBO0V6QmtRRTtFeUIvUEY7QWhDeW1HSjs7QWdDdG1HRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0V6QnFQRTtFeUJsUEY7RUFDQTtFdEIzQkE7QVZvb0dKOztBZ0NwbUdJOzs7O0VBRUU7QWhDeW1HTjs7QWdDeHBHSTs7Ozs7RUFxREU7RUFHRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQ3ltR1I7O0FnQ3RtR007Ozs7O0VBQ0U7RUFDQTtBaEM2bUdSOztBZ0M5cUdJOzs7OztFQTBFSTtFQUNBO0FoQzRtR1I7O0FnQ3ZyR0k7O0VBa0ZFO0FoQzBtR047O0FnQ3ZtR1E7Ozs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtBaEM0bUdWOztBZ0N4bUdNOztFQUNFO0VBQ0E7QWhDNG1HUjs7QWdDNXNHSTs7RUF3R0k7QWhDeW1HUjs7QWdDanRHSTs7RUErR0U7QWhDdW1HTjs7QWdDcm1HTTs7RUFDRTtBaEN5bUdSOztBZ0N0bUdNOztFQUNFO0FoQzBtR1I7O0FnQ3ZtR007O0VBQ0U7QWhDMm1HUjs7QWdDdG1HSTtFQUNFO0FoQ3ltR047O0FnQ3p1R0k7Ozs7Ozs7OztFQTBJTTtBaEMybUdWOztBZ0NqdUdFOztFQUNFO0VBQ0E7RUFDQTtFekJrUUU7RXlCL1BGO0FoQ291R0o7O0FnQ2p1R0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFekJxUEU7RXlCbFBGO0VBQ0E7RXRCM0JBO0FWK3ZHSjs7QWdDL3RHSTs7Ozs7O0VBRUU7QWhDc3VHTjs7QWdDcnhHSTs7Ozs7RUFxREU7RUFHRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQ3N1R1I7O0FnQ251R007Ozs7O0VBQ0U7RUFDQTtBaEMwdUdSOztBZ0MzeUdJOzs7OztFQTBFSTtFQUNBO0FoQ3l1R1I7O0FnQ3B6R0k7O0VBa0ZFO0FoQ3V1R047O0FnQ3B1R1E7Ozs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtBaEN5dUdWOztBZ0NydUdNOztFQUNFO0VBQ0E7QWhDeXVHUjs7QWdDejBHSTs7RUF3R0k7QWhDc3VHUjs7QWdDOTBHSTs7RUErR0U7QWhDb3VHTjs7QWdDbHVHTTs7RUFDRTtBaENzdUdSOztBZ0NudUdNOztFQUNFO0FoQ3V1R1I7O0FnQ3B1R007O0VBQ0U7QWhDd3VHUjs7QWdDbnVHSTs7RUFDRTtBaEN1dUdOOztBZ0N2MkdJOzs7Ozs7Ozs7RUE0SU07QWhDdXVHVjs7QWlDcjNHQTtFQUVFO0VBQ0E7RUFDQTtFMUJ1Ukk7RTBCclJKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RTFCc1FJO0UwQnBRSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0tBQUE7TUFBQTtVQUFBO0VBQ0E7RXZCakJFO0VnQmZGO0VEWUk7QXpCMjRHTjs7QXlCdjRHTTtFUWhCTjtJUmlCUTtFekIyNEdOO0FBQ0Y7O0FpQ3YzR0U7RUFDRTtFQUVBO0VBQ0E7QWpDeTNHSjs7QWlDdDNHRTtFQUVFO0VBQ0E7RUFDQTtBakN3M0dKOztBaUNyM0dFO0VBQ0U7RVByREY7RU91REU7RUFDQTtFQUtFO0FqQ28zR047O0FpQ2gzR0U7RUFDRTtFQUNBO0VBS0U7QWpDKzJHTjs7QWlDMzJHRTs7Ozs7RUFLRTtFQUNBO0VBR0E7QWpDNDJHSjs7QWlDejJHSTs7Ozs7RUFLSTtBakM0MkdSOztBaUN2MkdFOzs7RUFHRTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FqQ3kyR0o7O0FpQzcxR0U7RUN0R0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEN1OEdGOztBaUM5MkdFO0VDdEdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDdzlHRjs7QWlDLzNHRTtFQ3RHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQ3krR0Y7O0FpQ2g1R0U7RUN0R0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEMwL0dGOztBaUNqNkdFO0VDdEdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDMmdIRjs7QWlDbDdHRTtFQ3RHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQzRoSEY7O0FpQ244R0U7RUN0R0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEM2aUhGOztBaUNwOUdFO0VDdEdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDOGpIRjs7QWlDMzhHRTtFQ3ZHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQ3NqSEY7O0FpQzU5R0U7RUN2R0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEN1a0hGOztBaUM3K0dFO0VDdkdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDd2xIRjs7QWlDOS9HRTtFQ3ZHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQ3ltSEY7O0FpQy9nSEU7RUN2R0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEMwbkhGOztBaUNoaUhFO0VDdkdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDMm9IRjs7QWlDampIRTtFQ3ZHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQzRwSEY7O0FpQ2xrSEU7RUN2R0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEM2cUhGOztBaUN2a0hBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7QWpDeWtIRjs7QWlDL2pIRTtFQUNFO0FqQ2trSEo7O0FpQy9qSEU7RUFDRTtBakNra0hKOztBaUN2akhBOztFQ3hJRTtFQUNBO0UzQjhOSTtFMkI1Tko7QWxDb3NIRjs7QWlDM2pIQTs7RUM1SUU7RUFDQTtFM0I4Tkk7RTJCNU5KO0FsQzRzSEY7O0FtQy93SEE7RVZnQk07QXpCbXdITjs7QXlCL3ZITTtFVXBCTjtJVnFCUTtFekJtd0hOO0FBQ0Y7O0FtQ3R4SEU7RUFDRTtBbkN5eEhKOztBbUNueEhFO0VBQ0U7QW5Dc3hISjs7QW1DbHhIQTtFQUNFO0VBQ0E7RVZESTtBekJ1eEhOOztBeUJueEhNO0VVTE47SVZNUTtFekJ1eEhOO0FBQ0Y7O0FtQ3p4SEU7RUFDRTtFQUNBO0VWTkU7QXpCbXlITjs7QXlCL3hITTtFVUFKO0lWQ007RXpCbXlITjtBQUNGOztBb0N4ekhBOzs7Ozs7RUFNRTtBcEMyekhGOztBb0N4ekhBO0VBQ0U7QXBDMnpIRjs7QXFDbnlISTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBckNKO0VBQ0E7RUFDQTtFQUNBO0FyQzQwSEY7O0FxQ2x4SEk7RUFDRTtBckNxeEhOOztBb0NuMEhBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFN0J1UUk7RTZCclFKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7R3BDczBIQztFb0NyMEhEO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTdCME9JO0U2QnhPSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTFCekNFO0FWKzJISjs7QW9DbDBIRTtFQUNFO0VBQ0E7RUFDQTtBcENxMEhKOztBb0M3eUhJO0VBQ0U7QXBDZ3pITjs7QW9DOXlITTtFQUNFO0VBQ0E7QXBDaXpIUjs7QW9DN3lISTtFQUNFO0FwQ2d6SE47O0FvQzl5SE07RUFDRTtFQUNBO0FwQ2l6SFI7O0FpQjMxSEk7RW1CNEJBO0lBQ0U7RXBDbTBISjs7RW9DajBISTtJQUNFO0lBQ0E7RXBDbzBITjs7RW9DaDBIRTtJQUNFO0VwQ20wSEo7O0VvQ2owSEk7SUFDRTtJQUNBO0VwQ28wSE47QUFDRjs7QWlCLzJISTtFbUI0QkE7SUFDRTtFcEN1MUhKOztFb0NyMUhJO0lBQ0U7SUFDQTtFcEN3MUhOOztFb0NwMUhFO0lBQ0U7RXBDdTFISjs7RW9DcjFISTtJQUNFO0lBQ0E7RXBDdzFITjtBQUNGOztBaUJuNEhJO0VtQjRCQTtJQUNFO0VwQzIySEo7O0VvQ3oySEk7SUFDRTtJQUNBO0VwQzQySE47O0VvQ3gySEU7SUFDRTtFcEMyMkhKOztFb0N6MkhJO0lBQ0U7SUFDQTtFcEM0MkhOO0FBQ0Y7O0FpQnY1SEk7RW1CNEJBO0lBQ0U7RXBDKzNISjs7RW9DNzNISTtJQUNFO0lBQ0E7RXBDZzRITjs7RW9DNTNIRTtJQUNFO0VwQyszSEo7O0VvQzczSEk7SUFDRTtJQUNBO0VwQ2c0SE47QUFDRjs7QWlCMzZISTtFbUI0QkE7SUFDRTtFcENtNUhKOztFb0NqNUhJO0lBQ0U7SUFDQTtFcENvNUhOOztFb0NoNUhFO0lBQ0U7RXBDbTVISjs7RW9DajVISTtJQUNFO0lBQ0E7RXBDbzVITjtBQUNGOztBb0MzNEhFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXBDODRISjs7QXFDbCtISTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBOUJKO0VBQ0E7RUFDQTtFQUNBO0FyQ29nSUY7O0FxQ2o5SEk7RUFDRTtBckNvOUhOOztBb0NwNUhFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEN1NUhKOztBcUN6L0hJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUF2Qko7RUFDQTtFQUNBO0VBQ0E7QXJDb2hJRjs7QXFDeCtISTtFQUNFO0FyQzIrSE47O0FvQ2o2SEk7RUFDRTtBcENvNkhOOztBb0M5NUhFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcENpNkhKOztBcUNwaElJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXJDdWhJTjs7QXFDNWdJTTtFQUNFO0FyQytnSVI7O0FxQzVnSU07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQW5DTjtFQUNBO0VBQ0E7QXJDbWpJRjs7QXFDN2dJSTtFQUNFO0FyQ2doSU47O0FvQ3I3SEk7RUFDRTtBcEN3N0hOOztBb0NqN0hBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcENvN0hGOztBb0M5NkhBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFMUJ0S0U7QVZ3bElKOztBb0MvNkhFOztFQUVFO0VWMUxGO0ExQjZtSUY7O0FvQzk2SEU7O0VBRUU7RUFDQTtFVmxNRjtBMUJvbklGOztBb0M5NkhFOztFQUVFO0VBQ0E7RUFDQTtBcENpN0hKOztBb0MzNkhBO0VBQ0U7QXBDODZIRjs7QW9DMTZIQTtFQUNFO0VBQ0E7RUFDQTtFN0JtRUk7RTZCakVKO0VBQ0E7QXBDNjZIRjs7QW9DejZIQTtFQUNFO0VBQ0E7RUFDQTtBcEM0NkhGOztBb0N4NkhBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwQzA2SEY7O0FzQ2hxSUE7O0VBRUU7RUFDQTtFQUNBO0F0Q21xSUY7O0FzQ2pxSUU7O0VBQ0U7RUFDQTtBdENxcUlKOztBc0NocUlFOzs7Ozs7Ozs7Ozs7RUFNRTtBdEN5cUlKOztBc0NwcUlBO0VBQ0U7RUFDQTtFQUNBO0F0Q3VxSUY7O0FzQ3JxSUU7RUFDRTtBdEN3cUlKOztBc0NwcUlBO0U1QmhCSTtBVndySUo7O0FzQ3BxSUU7O0VBRUU7QXRDdXFJSjs7QXNDbnFJRTs7O0U1QlZFO0VBQ0E7QVZtcklKOztBc0NocUlFOzs7RTVCTkU7RUFDQTtBVjRxSUo7O0FzQ3BwSUE7RUFDRTtFQUNBO0F0Q3VwSUY7O0FzQ3JwSUU7OztFQUdFO0F0Q3dwSUo7O0FzQ3JwSUU7RUFDRTtBdEN3cElKOztBc0NwcElBOztFQUNFO0VBQ0E7QXRDd3BJRjs7QXNDcnBJQTs7RUFDRTtFQUNBO0F0Q3lwSUY7O0FzQ3JvSUE7RUFDRTtFQUNBO0VBQ0E7QXRDd29JRjs7QXNDdG9JRTs7RUFFRTtBdEN5b0lKOztBc0N0b0lFOztFQUVFO0F0Q3lvSUo7O0FzQ3JvSUU7O0U1QjFGRTtFQUNBO0FWb3VJSjs7QXNDdG9JRTs7RTVCN0dFO0VBQ0E7QVZ3dklKOztBdUNoeElBO0VBRUU7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkMrd0lGOztBdUM1d0lBO0VBQ0U7RUFDQTtFaENzUUk7RWdDcFFKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWRmSTtBekIreElOOztBeUIzeElNO0VjR047SWRGUTtFekIreElOO0FBQ0Y7O0F1Q254SUU7O0VBRUU7QXZDc3hJSjs7QXVDbHhJRTtFQUNFO0VBQ0E7QXZDcXhJSjs7QXVDanhJRTtFQUNFO0VBQ0E7RUFDQTtBdkNveElKOztBdUM1d0lBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtBdkM0d0lGOztBdUMxd0lFO0VBQ0U7RUFDQTtFN0I1Q0E7RUFDQTtBVjB6SUo7O0F1QzV3SUk7O0VBR0U7RUFDQTtBdkM4d0lOOztBdUMzd0lJOztFQUVFO0VBQ0E7RUFDQTtBdkM4d0lOOztBdUMxd0lFOztFQUVFO0VBQ0E7RUFDQTtBdkM2d0lKOztBdUMxd0lFO0VBRUU7RTdCdkVBO0VBQ0E7QVZvMUlKOztBdUNud0lBO0VBRUU7RUFDQTtFQUNBO0F2Q3F3SUY7O0F1Q2x3SUU7RTdCbEdFO0FWdzJJSjs7QXVDbndJSTtFQUNFO0VBQ0E7RUFDQTtBdkNzd0lOOztBdUNsd0lFOztFQUVFO0ViN0hGO0ExQm00SUY7O0F1QzV2SUE7RUFFRTtFQUNBO0VBQ0E7RUFHQTtBdkM0dklGOztBdUMxdklFO0VBQ0U7RUFDQTtFQUNBO0F2QzZ2SUo7O0F1QzN2SUk7O0VBRUU7QXZDOHZJTjs7QXVDMXZJRTs7RUFFRTtFQUNBO0VBQ0E7QXZDNnZJSjs7QXVDbnZJRTs7RUFFRTtFQUNBO0F2Q3N2SUo7O0F1Q2p2SUU7O0VBRUU7RUFDQTtFQUNBO0F2Q292SUo7O0F1Qzl1SUU7O0VBQ0U7QXZDa3ZJSjs7QXVDeHVJRTtFQUNFO0F2QzJ1SUo7O0F1Q3p1SUU7RUFDRTtBdkM0dUlKOztBd0NyN0lBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeENxN0lGOztBd0MvNklFOzs7Ozs7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXhDdzdJSjs7QXdDcDZJQTtFQUNFO0VBQ0E7RUFDQTtFakM0Tkk7RWlDMU5KO0VBQ0E7RUFDQTtBeEN1NklGOztBd0NyNklFOztFQUVFO0F4Q3c2SUo7O0F3Qzk1SUE7RUFFRTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4QzY1SUY7O0F3QzE1SUk7O0VBRUU7QXhDNjVJTjs7QXdDejVJRTtFQUNFO0F4QzQ1SUo7O0F3Q241SUE7RUFDRTtFQUNBO0VBQ0E7QXhDczVJRjs7QXdDcDVJRTs7O0VBR0U7QXhDdTVJSjs7QXdDMTRJQTtFQUNFO0VBQ0E7RUFHQTtBeEMyNElGOztBd0N2NElBO0VBQ0U7RWpDeUlJO0VpQ3ZJSjtFQUNBO0VBQ0E7RUFDQTtFOUJ4SUU7RWVIRTtBekJ1aEpOOztBeUJuaEpNO0VlaUlOO0lmaElRO0V6QnVoSk47QUFDRjs7QXdDOTRJRTtFQUNFO0F4Q2k1SUo7O0F3Qzk0SUU7RUFDRTtFQUNBO0VBQ0E7QXhDaTVJSjs7QXdDMzRJQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhDODRJRjs7QXdDMzRJQTtFQUNFO0VBQ0E7QXhDODRJRjs7QWlCeGdKSTtFdUJzSUE7SUFFSTtJQUNBO0V4Q3E0SU47O0V3Q240SU07SUFDRTtFeENzNElSOztFd0NwNElRO0lBQ0U7RXhDdTRJVjs7RXdDcDRJUTtJQUNFO0lBQ0E7RXhDdTRJVjs7RXdDbjRJTTtJQUNFO0V4Q3M0SVI7O0V3Q240SU07SUFDRTtJQUNBO0V4Q3M0SVI7O0V3Q240SU07SUFDRTtFeENzNElSOztFd0NuNElNO0lBRUU7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lmOU5KO0V6Qm9tSko7O0V3Q2o0SVE7SUFDRTtFeENvNElWOztFd0NqNElRO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RXhDbzRJVjtBQUNGOztBaUJqa0pJO0V1QnNJQTtJQUVJO0lBQ0E7RXhDODdJTjs7RXdDNTdJTTtJQUNFO0V4Qys3SVI7O0V3Qzc3SVE7SUFDRTtFeENnOElWOztFd0M3N0lRO0lBQ0U7SUFDQTtFeENnOElWOztFd0M1N0lNO0lBQ0U7RXhDKzdJUjs7RXdDNTdJTTtJQUNFO0lBQ0E7RXhDKzdJUjs7RXdDNTdJTTtJQUNFO0V4Qys3SVI7O0V3QzU3SU07SUFFRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SWY5Tko7RXpCNnBKSjs7RXdDMTdJUTtJQUNFO0V4QzY3SVY7O0V3QzE3SVE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFeEM2N0lWO0FBQ0Y7O0FpQjFuSkk7RXVCc0lBO0lBRUk7SUFDQTtFeEN1L0lOOztFd0NyL0lNO0lBQ0U7RXhDdy9JUjs7RXdDdC9JUTtJQUNFO0V4Q3kvSVY7O0V3Q3QvSVE7SUFDRTtJQUNBO0V4Q3kvSVY7O0V3Q3IvSU07SUFDRTtFeEN3L0lSOztFd0NyL0lNO0lBQ0U7SUFDQTtFeEN3L0lSOztFd0NyL0lNO0lBQ0U7RXhDdy9JUjs7RXdDci9JTTtJQUVFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJZjlOSjtFekJzdEpKOztFd0NuL0lRO0lBQ0U7RXhDcy9JVjs7RXdDbi9JUTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0V4Q3MvSVY7QUFDRjs7QWlCbnJKSTtFdUJzSUE7SUFFSTtJQUNBO0V4Q2dqSk47O0V3QzlpSk07SUFDRTtFeENpakpSOztFd0MvaUpRO0lBQ0U7RXhDa2pKVjs7RXdDL2lKUTtJQUNFO0lBQ0E7RXhDa2pKVjs7RXdDOWlKTTtJQUNFO0V4Q2lqSlI7O0V3QzlpSk07SUFDRTtJQUNBO0V4Q2lqSlI7O0V3QzlpSk07SUFDRTtFeENpakpSOztFd0M5aUpNO0lBRUU7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lmOU5KO0V6Qit3Sko7O0V3QzVpSlE7SUFDRTtFeEMraUpWOztFd0M1aUpRO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RXhDK2lKVjtBQUNGOztBaUI1dUpJO0V1QnNJQTtJQUVJO0lBQ0E7RXhDeW1KTjs7RXdDdm1KTTtJQUNFO0V4QzBtSlI7O0V3Q3htSlE7SUFDRTtFeEMybUpWOztFd0N4bUpRO0lBQ0U7SUFDQTtFeEMybUpWOztFd0N2bUpNO0lBQ0U7RXhDMG1KUjs7RXdDdm1KTTtJQUNFO0lBQ0E7RXhDMG1KUjs7RXdDdm1KTTtJQUNFO0V4QzBtSlI7O0V3Q3ZtSk07SUFFRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SWY5Tko7RXpCdzBKSjs7RXdDcm1KUTtJQUNFO0V4Q3dtSlY7O0V3Q3JtSlE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFeEN3bUpWO0FBQ0Y7O0F3Qy9wSkk7RUFFSTtFQUNBO0F4Q2lxSlI7O0F3Qy9wSlE7RUFDRTtBeENrcUpWOztBd0NocUpVO0VBQ0U7QXhDbXFKWjs7QXdDaHFKVTtFQUNFO0VBQ0E7QXhDbXFKWjs7QXdDL3BKUTtFQUNFO0F4Q2txSlY7O0F3Qy9wSlE7RUFDRTtFQUNBO0F4Q2txSlY7O0F3Qy9wSlE7RUFDRTtBeENrcUpWOztBd0MvcEpRO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VmOU5KO0F6Qmc0Sk47O0F3QzdwSlU7RUFDRTtBeENncUpaOztBd0M3cEpVO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXhDZ3FKWjs7QXdDL29KQTs7RUFHRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4Q2lwSkY7O0F3QzNvSkk7RUFDRTtBeEM4b0pOOztBeUN2NkpBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFL0JqQkU7QVZ5N0pKOztBeUNwNkpFO0VBQ0U7RUFDQTtBekN1NkpKOztBeUNwNkpFO0VBQ0U7RUFDQTtBekN1NkpKOztBeUNyNkpJO0VBQ0U7RS9CdEJGO0VBQ0E7QVYrN0pKOztBeUN0NkpJO0VBQ0U7RS9CYkY7RUFDQTtBVnU3Sko7O0F5Q3A2SkU7O0VBRUU7QXpDdTZKSjs7QXlDbjZKQTtFQUdFO0VBQ0E7RUFDQTtBekNvNkpGOztBeUNqNkpBO0VBQ0U7RUFDQTtBekNvNkpGOztBeUNqNkpBO0VBQ0U7RUFDQTtFQUNBO0F6Q282SkY7O0F5Q2o2SkE7RUFDRTtBekNvNkpGOztBeUM1NUpFO0VBQ0U7QXpDKzVKSjs7QXlDdjVKQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpDMDVKRjs7QXlDeDVKRTtFL0I3RkU7QVZ5L0pKOztBeUN2NUpBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXpDMDVKRjs7QXlDeDVKRTtFL0J4R0U7QVZvZ0tKOztBeUNsNUpBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXpDcTVKRjs7QXlDbjVKRTtFQUNFO0VBQ0E7QXpDczVKSjs7QXlDbDVKQTtFQUNFO0VBQ0E7QXpDcTVKRjs7QXlDajVKQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFL0IxSUU7QVYraEtKOztBeUNqNUpBOzs7RUFHRTtBekNvNUpGOztBeUNqNUpBOztFL0IzSUk7RUFDQTtBVmlpS0o7O0F5Q2w1SkE7O0UvQmxJSTtFQUNBO0FWeWhLSjs7QXlDMzRKRTtFQUNFO0F6Qzg0Sko7O0FpQnpnS0k7RXdCdUhKO0lBUUk7SUFDQTtFekMrNEpGOztFeUM1NEpFO0lBRUU7SUFDQTtFekM4NEpKOztFeUM1NEpJO0lBQ0U7SUFDQTtFekMrNEpOOztFeUMxNEpNO0kvQjNLSjtJQUNBO0VWeWpLRjs7RXlDNTRKUTs7SUFHRTtFekM4NEpWOztFeUM1NEpROztJQUdFO0V6Qzg0SlY7O0V5QzE0Sk07SS9CNUtKO0lBQ0E7RVYwaktGOztFeUM1NEpROztJQUdFO0V6Qzg0SlY7O0V5QzU0SlE7O0lBR0U7RXpDODRKVjtBQUNGOztBMENubktBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFDcW5LRjs7QTBDam5LQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RW5DMlBJO0VtQ3pQSjtFQUNBO0VBQ0E7RUFDQTtFaEN0QkU7RWdDd0JGO0VqQjNCSTtBekJncEtOOztBeUI1b0tNO0VpQldOO0lqQlZRO0V6QmdwS047QUFDRjs7QTBDeG5LRTtFQUNFO0VBQ0E7RUFDQTtBMUMybktKOztBMEN6bktJO0VBQ0U7RUFDQTtBMUM0bktOOztBMEN2bktFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFakJsREU7QXpCNnFLTjs7QXlCenFLTTtFaUJzQ0o7SWpCckNNO0V6QjZxS047QUFDRjs7QTBDN25LRTtFQUNFO0ExQ2dvS0o7O0EwQzduS0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBMUNnb0tKOztBMEM1bktBO0VBQ0U7QTFDK25LRjs7QTBDNW5LQTtFQUNFO0VBQ0E7RUFDQTtBMUMrbktGOztBMEM3bktFO0VoQy9ERTtFQUNBO0FWZ3NLSjs7QTBDL25LSTtFaENsRUE7RUFDQTtBVnFzS0o7O0EwQy9uS0U7RUFDRTtBMUNrb0tKOztBMEM5bktFO0VoQzlERTtFQUNBO0FWZ3NLSjs7QTBDL25LTTtFaENsRUY7RUFDQTtBVnFzS0o7O0EwQy9uS0k7RWhDdkVBO0VBQ0E7QVYwc0tKOztBMEM5bktBO0VBQ0U7QTFDaW9LRjs7QTBDeG5LRTtFQUNFO0ExQzJuS0o7O0EwQ3huS0U7RUFDRTtFQUNBO0VoQ3BIQTtBVmd2S0o7O0EwQ3puS0k7RUFBZ0I7QTFDNm5LcEI7O0EwQzVuS0k7RUFBZTtBMUNnb0tuQjs7QTBDN25LTTs7RWhDM0hGO0FWNnZLSjs7QTBDeG5LSTtFQUNFO0VBQ0E7QTFDMm5LTjs7QTJDcnhLQTtFQUVFO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFcEMrUUk7RW9DN1FKO0VBQ0E7RWpDQUU7QVZxeEtKOztBMkMvd0tFO0VBQ0U7QTNDa3hLSjs7QTJDaHhLSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0EzQ214S047O0EyQy93S0U7RUFDRTtBM0NreEtKOztBNEN2ektBO0VBRUU7RUFDQTtFckM0Ukk7RXFDMVJKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFaENwQkE7RUFDQTtBWjQwS0Y7O0E0Q3J6S0E7RUFDRTtFQUNBO0VBQ0E7RXJDZ1FJO0VxQzlQSjtFQUNBO0VBQ0E7RUFDQTtFbkJwQkk7QXpCNjBLTjs7QXlCejBLTTtFbUJRTjtJbkJQUTtFekI2MEtOO0FBQ0Y7O0E0QzV6S0U7RUFDRTtFQUNBO0VBRUE7RUFDQTtBNUM4ektKOztBNEMzektFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUM4ektKOztBNEMzektFOztFQUVFO0VBQ0E7RWxCdERGO0VrQndERTtBNUM4ektKOztBNEMzektFOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0E1Qzh6S0o7O0E0Q3p6S0U7RUFDRTs7QzVDNnpLSDtBQUNEOztBNEM3eUtJO0VsQ3hFQTtBVnkzS0o7O0E0Q3R5S0E7RUNsR0U7RUFDQTtFdEMwUkk7RXNDeFJKO0E3QzQ0S0Y7O0E0Q3p5S0E7RUN0R0U7RUFDQTtFdEMwUkk7RXNDeFJKO0E3Q201S0Y7O0E4Q3I1S0E7RUFFRTtFQUNBO0V2Q3VSSTtFdUNyUko7RUFDQTtFQUNBO0VBR0E7RUFDQTtFdkMrUUk7RXVDN1FKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFcENKRTtBVjA1S0o7O0E4Q2o1S0U7RUFDRTtBOUNvNUtKOztBOEMvNEtBO0VBQ0U7RUFDQTtBOUNrNUtGOztBK0NsN0tBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VyQ0hFO0FWczdLSjs7QStDOTZLQTtFQUVFO0EvQ2c3S0Y7O0ErQzU2S0E7RUFDRTtFQUNBO0EvQys2S0Y7O0ErQ3Y2S0E7RUFDRTtBL0MwNktGOztBK0N2NktFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0MwNktKOztBK0NsNktFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QS9DcTZLSjs7QStDejZLRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0EvQzQ2S0o7O0ErQ2g3S0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBL0NtN0tKOztBK0N2N0tFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QS9DMDdLSjs7QStDOTdLRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0EvQ2k4S0o7O0ErQ3I4S0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBL0N3OEtKOztBK0M1OEtFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QS9DKzhLSjs7QStDbjlLRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0EvQ3M5S0o7O0FnRGxoTEU7RUFDRTtJQUFLO0VoRHNoTFA7QUFDRjs7QWdEeGhMRTtFQUNFO0lBQUs7RWhEc2hMUDtBQUNGOztBZ0RsaExBOztFQUdFO0V6Q2tSSTtFeUNoUko7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0V6Q3NRSTtFeUNwUUo7RXRDUkU7QVYyaExKOztBZ0Q5Z0xBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFdkJ4Qkk7QXpCMGlMTjs7QXlCdGlMTTtFdUJZTjtJdkJYUTtFekIwaUxOO0FBQ0Y7O0FnRHBoTEE7RXRCQUU7RXNCRUE7QWhEdWhMRjs7QWdEcGhMQTtFQUNFO0FoRHVoTEY7O0FnRHBoTEE7RUFDRTtBaER1aExGOztBZ0RuaExFO0VBQ0U7VUFBQTtBaERzaExKOztBZ0RuaExNO0VBSko7SUFLTTtZQUFBO0VoRHVoTE47QUFDRjs7QWlEbmxMQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBR0E7RUFDQTtFdkNYRTtBVjZsTEo7O0FpRDlrTEE7RUFDRTtFQUNBO0FqRGlsTEY7O0FpRC9rTEU7RUFFRTtFQUNBO0FqRGlsTEo7O0FpRHhrTEE7RUFDRTtFQUNBO0VBQ0E7QWpEMmtMRjs7QWlEeGtMRTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtBakQya0xKOztBaUR4a0xFO0VBQ0U7RUFDQTtBakQya0xKOztBaURua0xBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpEc2tMRjs7QWlEcGtMRTtFdkN2REU7RUFDQTtBVituTEo7O0FpRHJrTEU7RXZDN0NFO0VBQ0E7QVZzbkxKOztBaUR0a0xFOztFQUVFO0VBQ0E7RUFDQTtBakR5a0xKOztBaURya0xFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWpEd2tMSjs7QWlEcGtMRTtFQUNFO0FqRHVrTEo7O0FpRHJrTEk7RUFDRTtFQUNBO0FqRHdrTE47O0FpRDNqTEk7RUFDRTtBakQ4akxOOztBaUQzakxRO0V2Q3ZESjtFQVpBO0FWbW9MSjs7QWlEM2pMUTtFdkN4RUo7RUFZQTtBVjRuTEo7O0FpRDNqTFE7RUFDRTtBakQ4akxWOztBaUQzakxRO0VBQ0U7RUFDQTtBakQ4akxWOztBaUQ1akxVO0VBQ0U7RUFDQTtBakQrakxaOztBaUJycExJO0VnQzhEQTtJQUNFO0VqRDJsTEo7O0VpRHhsTE07SXZDdkRKO0lBWkE7RVZncUxGOztFaUR4bExNO0l2Q3hFSjtJQVlBO0VWeXBMRjs7RWlEeGxMTTtJQUNFO0VqRDJsTFI7O0VpRHhsTE07SUFDRTtJQUNBO0VqRDJsTFI7O0VpRHpsTFE7SUFDRTtJQUNBO0VqRDRsTFY7QUFDRjs7QWlCbnJMSTtFZ0M4REE7SUFDRTtFakR5bkxKOztFaUR0bkxNO0l2Q3ZESjtJQVpBO0VWOHJMRjs7RWlEdG5MTTtJdkN4RUo7SUFZQTtFVnVyTEY7O0VpRHRuTE07SUFDRTtFakR5bkxSOztFaUR0bkxNO0lBQ0U7SUFDQTtFakR5bkxSOztFaUR2bkxRO0lBQ0U7SUFDQTtFakQwbkxWO0FBQ0Y7O0FpQmp0TEk7RWdDOERBO0lBQ0U7RWpEdXBMSjs7RWlEcHBMTTtJdkN2REo7SUFaQTtFVjR0TEY7O0VpRHBwTE07SXZDeEVKO0lBWUE7RVZxdExGOztFaURwcExNO0lBQ0U7RWpEdXBMUjs7RWlEcHBMTTtJQUNFO0lBQ0E7RWpEdXBMUjs7RWlEcnBMUTtJQUNFO0lBQ0E7RWpEd3BMVjtBQUNGOztBaUIvdUxJO0VnQzhEQTtJQUNFO0VqRHFyTEo7O0VpRGxyTE07SXZDdkRKO0lBWkE7RVYwdkxGOztFaURsckxNO0l2Q3hFSjtJQVlBO0VWbXZMRjs7RWlEbHJMTTtJQUNFO0VqRHFyTFI7O0VpRGxyTE07SUFDRTtJQUNBO0VqRHFyTFI7O0VpRG5yTFE7SUFDRTtJQUNBO0VqRHNyTFY7QUFDRjs7QWlCN3dMSTtFZ0M4REE7SUFDRTtFakRtdExKOztFaURodExNO0l2Q3ZESjtJQVpBO0VWd3hMRjs7RWlEaHRMTTtJdkN4RUo7SUFZQTtFVml4TEY7O0VpRGh0TE07SUFDRTtFakRtdExSOztFaURodExNO0lBQ0U7SUFDQTtFakRtdExSOztFaURqdExRO0lBQ0U7SUFDQTtFakRvdExWO0FBQ0Y7O0FpRHZzTEE7RXZDaEpJO0FWMjFMSjs7QWlEeHNMRTtFQUNFO0FqRDJzTEo7O0FpRHpzTEk7RUFDRTtBakQ0c0xOOztBaUQvckxFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpEa3NMSjs7QWlENXNMRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqRCtzTEo7O0FpRHp0TEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakQ0dExKOztBaUR0dUxFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpEeXVMSjs7QWlEbnZMRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqRHN2TEo7O0FpRGh3TEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakRtd0xKOztBaUQ3d0xFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpEZ3hMSjs7QWlEMXhMRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqRDZ4TEo7O0FrRHo5TEE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RXhDSkU7RXdDTUY7QWxEeTlMRjs7QWtEdDlMRTtFQUNFO0VBQ0E7RUFDQTtBbER5OUxKOztBa0R0OUxFO0VBQ0U7RUFDQTtFQUNBO0FsRHk5TEo7O0FrRHQ5TEU7O0VBRUU7RUFDQTtLQUFBO01BQUE7VUFBQTtFQUNBO0FsRHk5TEo7O0FrRGo5TEE7RUFIRTtBbER3OUxGOztBa0QvOExJO0VBVEY7QWxENDlMRjs7QW1EN2dNQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTVDeVJJO0U0Q3ZSSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0U1QzJRSTtFNEN6UUo7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0V6Q1JFO0FWc2hNSjs7QW1EM2dNRTtFQUNFO0FuRDhnTUo7O0FtRDNnTUU7RUFDRTtBbkQ4Z01KOztBbUQxZ01BO0VBQ0U7RUFFQTtFQUNBO0VBQ0E7RUFBQTtFQUFBO0VBQ0E7RUFDQTtBbkQ0Z01GOztBbUQxZ01FO0VBQ0U7QW5ENmdNSjs7QW1EemdNQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0V6Q2hDRTtFQUNBO0FWNmlNSjs7QW1EM2dNRTtFQUNFO0VBQ0E7QW5EOGdNSjs7QW1EMWdNQTtFQUNFO0VBQ0E7QW5ENmdNRjs7QW9EM2tNQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0FwRHlrTUY7O0FvRGxrTUE7RUFDRTtFQUNBO0VBQ0E7RUFFQTtBcERva01GOztBb0Rqa01FO0UzQjVDSTtFMkI4Q0Y7QXBEb2tNSjs7QXlCOW1NTTtFMkJ3Q0o7STNCdkNNO0V6QmtuTU47QUFDRjs7QW9EeGtNRTtFQUNFO0FwRDJrTUo7O0FvRHZrTUU7RUFDRTtBcEQwa01KOztBb0R0a01BO0VBQ0U7QXBEeWtNRjs7QW9EdmtNRTtFQUNFO0VBQ0E7QXBEMGtNSjs7QW9EdmtNRTtFQUNFO0FwRDBrTUo7O0FvRHRrTUE7RUFDRTtFQUNBO0VBQ0E7QXBEeWtNRjs7QW9EcmtNQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFMUNyRkU7RTBDeUZGO0FwRHFrTUY7O0FvRGprTUE7RUFFRTtFQUNBO0VBQ0E7RUNsSEE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJEc3JNRjs7QXFEbnJNRTtFQUFTO0FyRHVyTVg7O0FxRHRyTUU7RUFBUztBckQwck1YOztBb0Qxa01BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0UxQ3RHRTtFQUNBO0FWb3JNSjs7QW9ENWtNRTtFQUNFO0VBQ0E7QXBEK2tNSjs7QW9EMWtNQTtFQUNFO0VBQ0E7QXBENmtNRjs7QW9EeGtNQTtFQUNFO0VBR0E7RUFDQTtBcER5a01GOztBb0Rya01BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFMUMxSEU7RUFDQTtBVm1zTUo7O0FvRHBrTUU7RUFDRTtBcER1a01KOztBaUJuck1JO0VtQ2tIRjtJQUNFO0lBQ0E7RXBEcWtNRjs7RW9EamtNQTtJQUNFO0lBQ0E7SUFDQTtFcERva01GOztFb0Rqa01BO0lBQ0U7RXBEb2tNRjtBQUNGOztBaUJwc01JO0VtQ29JRjs7SUFFRTtFcERva01GO0FBQ0Y7O0FpQjNzTUk7RW1DMklGO0lBQ0U7RXBEb2tNRjtBQUNGOztBb0Qzak1JO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXBEOGpNTjs7QW9ENWpNTTtFQUNFO0VBQ0E7RTFDMU1KO0FWMHdNSjs7QW9ENWpNTTs7RTFDOU1GO0FWK3dNSjs7QW9ENWpNTTtFQUNFO0FwRCtqTVI7O0FpQjF0TUk7RW1DeUlBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RXBEcWxNSjs7RW9EbmxNSTtJQUNFO0lBQ0E7STFDMU1KO0VWaXlNRjs7RW9EbmxNSTs7STFDOU1GO0VWc3lNRjs7RW9EbmxNSTtJQUNFO0VwRHNsTU47QUFDRjs7QWlCbHZNSTtFbUN5SUE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFcEQ2bU1KOztFb0QzbU1JO0lBQ0U7SUFDQTtJMUMxTUo7RVZ5ek1GOztFb0QzbU1JOztJMUM5TUY7RVY4ek1GOztFb0QzbU1JO0lBQ0U7RXBEOG1NTjtBQUNGOztBaUIxd01JO0VtQ3lJQTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VwRHFvTUo7O0VvRG5vTUk7SUFDRTtJQUNBO0kxQzFNSjtFVmkxTUY7O0VvRG5vTUk7O0kxQzlNRjtFVnMxTUY7O0VvRG5vTUk7SUFDRTtFcERzb01OO0FBQ0Y7O0FpQmx5TUk7RW1DeUlBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RXBENnBNSjs7RW9EM3BNSTtJQUNFO0lBQ0E7STFDMU1KO0VWeTJNRjs7RW9EM3BNSTs7STFDOU1GO0VWODJNRjs7RW9EM3BNSTtJQUNFO0VwRDhwTU47QUFDRjs7QWlCMXpNSTtFbUN5SUE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFcERxck1KOztFb0Ruck1JO0lBQ0U7SUFDQTtJMUMxTUo7RVZpNE1GOztFb0Ruck1JOztJMUM5TUY7RVZzNE1GOztFb0Ruck1JO0lBQ0U7RXBEc3JNTjtBQUNGOztBc0Q3NU1BO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFL0N3Ukk7RStDdFJKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQ2xCQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VoRGdSSTtFK0NyUUo7RUFDQTtBdERzNk1GOztBc0RwNk1FO0VBQVM7QXREdzZNWDs7QXNEdDZNRTtFQUNFO0VBQ0E7RUFDQTtBdER5Nk1KOztBc0R2Nk1JO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXREMDZNTjs7QXNEcjZNQTs7RUFDRTtBdER5Nk1GOztBc0R2Nk1FOztFQUNFO0VBQ0E7RUFDQTtBdEQyNk1KOztBc0R2Nk1BOztBQUNBOztFQUNFO0VBQ0E7RUFDQTtBdEQ0Nk1GOztBc0QxNk1FOztFQUNFO0VBQ0E7RUFDQTtBdEQ4Nk1KOztBc0QxNk1BOztBQUVBOztFQUNFO0F0RDg2TUY7O0FzRDU2TUU7O0VBQ0U7RUFDQTtFQUNBO0F0RGc3TUo7O0FzRDU2TUE7O0FBQ0E7O0VBQ0U7RUFDQTtFQUNBO0F0RGk3TUY7O0FzRC82TUU7O0VBQ0U7RUFDQTtFQUNBO0F0RG03TUo7O0FzRC82TUE7O0FBa0JBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFNUNqR0U7QVZvZ05KOztBd0R2aE5BO0VBRUU7RUFDQTtFakQ0Ukk7RWlEMVJKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0d4RDBoTkM7RXdEemhORDtFQUNBO0VBQ0E7RWpEbVJJO0VpRGpSSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VEekJBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWhEZ1JJO0VpRC9QSjtFQUNBO0VBQ0E7RUFDQTtFOUNoQkU7QVZvak5KOztBd0RoaU5FO0VBQ0U7RUFDQTtFQUNBO0F4RG1pTko7O0F3RGppTkk7O0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4RG9pTk47O0F3RDloTkU7O0VBQ0U7QXhEa2lOSjs7QXdEaGlOSTs7OztFQUVFO0F4RHFpTk47O0F3RGxpTkk7O0VBQ0U7RUFDQTtBeERzaU5OOztBd0RuaU5JOztFQUNFO0VBQ0E7QXhEdWlOTjs7QXdEbGlOQTs7QUFFRTs7RUFDRTtFQUNBO0VBQ0E7QXhEc2lOSjs7QXdEcGlOSTs7OztFQUVFO0F4RHlpTk47O0F3RHRpTkk7O0VBQ0U7RUFDQTtBeEQwaU5OOztBd0R2aU5JOztFQUNFO0VBQ0E7QXhEMmlOTjs7QXdEdGlOQTs7QUFHRTs7RUFDRTtBeER5aU5KOztBd0R2aU5JOzs7O0VBRUU7QXhENGlOTjs7QXdEemlOSTs7RUFDRTtFQUNBO0F4RDZpTk47O0F3RDFpTkk7O0VBQ0U7RUFDQTtBeEQ4aU5OOztBd0R6aU5FOztFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhENmlOSjs7QXdEemlOQTs7QUFFRTs7RUFDRTtFQUNBO0VBQ0E7QXhENmlOSjs7QXdEM2lOSTs7OztFQUVFO0F4RGdqTk47O0F3RDdpTkk7O0VBQ0U7RUFDQTtBeERpak5OOztBd0Q5aU5JOztFQUNFO0VBQ0E7QXhEa2pOTjs7QXdEN2lOQTs7QUFrQkE7RUFDRTtFQUNBO0VqRDJHSTtFaUR6R0o7RUFDQTtFQUNBO0U5QzVKRTtFQUNBO0FWNnJOSjs7QXdEL2hORTtFQUNFO0F4RGtpTko7O0F3RDloTkE7RUFDRTtFQUNBO0F4RGlpTkY7O0F5RHR0TkE7RUFDRTtBekR5dE5GOztBeUR0dE5BO0VBQ0U7QXpEeXRORjs7QXlEdHROQTtFQUNFO0VBQ0E7RUFDQTtBekR5dE5GOztBMEQvdU5FO0VBQ0U7RUFDQTtFQUNBO0ExRGt2Tko7O0F5RDN0TkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7VUFBQTtFaENsQkk7QXpCaXZOTjs7QXlCN3VOTTtFZ0NRTjtJaENQUTtFekJpdk5OO0FBQ0Y7O0F5RGp1TkE7OztFQUdFO0F6RG91TkY7O0F5RGp1TkE7O0VBRUU7QXpEb3VORjs7QXlEanVOQTs7RUFFRTtBekRvdU5GOztBeUQzdE5FO0VBQ0U7RUFDQTtFQUNBO0F6RDh0Tko7O0F5RDN0TkU7OztFQUdFO0VBQ0E7QXpEOHROSjs7QXlEM3RORTs7RUFFRTtFQUNBO0VoQzVERTtBekIyeE5OOztBeUJ2eE5NO0VnQ3FESjs7SWhDcERNO0V6QjR4Tk47QUFDRjs7QXlENXROQTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VoQ3RGSTtBekJxek5OOztBeUJqek5NO0VnQ2tFTjs7SWhDakVRO0V6QnN6Tk47QUFDRjs7QXlEbHVORTs7OztFQUVFO0VBQ0E7RUFDQTtFQUNBO0F6RHV1Tko7O0F5RHB1TkE7RUFDRTtBekR1dU5GOztBeURwdU5BO0VBQ0U7QXpEdXVORjs7QXlEbHVOQTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpEcXVORjs7QXlEbHVOQTs7Ozs7OztHekQydU5HOztBeURudU5IO0VBQ0U7QXpEc3VORjs7QXlEcHVOQTtFQUNFO0F6RHV1TkY7O0F5RC90TkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0F6RGl1TkY7O0F5RC90TkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RWhDeEtFO0F6QjA0Tk47O0F5QnQ0Tk07RWdDb0pKO0loQ25KTTtFekIwNE5OO0FBQ0Y7O0F5RHB1TkU7RUFDRTtBekR1dU5KOztBeUQ5dE5BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBekRpdU5GOztBeUQzdE5FOztFQUVFO0F6RDh0Tko7O0F5RDN0TkU7RUFDRTtBekQ4dE5KOztBeUQzdE5FO0VBQ0U7QXpEOHROSjs7QXlEeHVORTs7OztFQUVFO0F6RDZ1Tko7O0F5RDF1TkU7O0VBQ0U7QXpEOHVOSjs7QXlEM3VORTs7RUFDRTtBekQrdU5KOztBMkR6OE5BOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtVQUFBO0EzRDI4TkY7O0EyRHY4TkE7RUFDRTtJQUFLO0UzRDI4Tkw7QUFDRjs7QTJENzhOQTtFQUNFO0lBQUs7RTNEMjhOTDtBQUNGOztBMkR4OE5BO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtBM0R3OE5GOztBMkRyOE5BO0VBRUU7RUFDQTtFQUNBO0EzRHU4TkY7O0EyRDk3TkE7RUFDRTtJQUNFO0UzRGk4TkY7O0UyRC83TkE7SUFDRTtJQUNBO0UzRGs4TkY7QUFDRjs7QTJEejhOQTtFQUNFO0lBQ0U7RTNEaThORjs7RTJELzdOQTtJQUNFO0lBQ0E7RTNEazhORjtBQUNGOztBMkQ5N05BO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7QTNEODdORjs7QTJEMzdOQTtFQUNFO0VBQ0E7QTNEODdORjs7QTJEMTdORTtFQUNFOztJQUVFO0UzRDY3Tko7QUFDRjs7QTREN2dPQTs7Ozs7O0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1RG9oT0Y7O0FpQnY5Tkk7RTJDNUNGO0lBRUk7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJbkM1QkE7RXpCbWlPSjtBQUNGOztBeUJoaU9NO0VtQ1lKO0luQ1hNO0V6Qm9pT047QUFDRjs7QWlCOStOSTtFMkM1QkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1RDhnT047QUFDRjs7QWlCeC9OSTtFMkNwQkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1RGdoT047QUFDRjs7QWlCbGdPSTtFMkNaRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1RGtoT047QUFDRjs7QWlCOWdPSTtFMkNGRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFNURvaE9OO0FBQ0Y7O0FpQnpoT0k7RTJDT0U7O0lBRUU7RTVEc2hPTjtBQUNGOztBaUJoaU9JO0UyQ1lFOzs7SUFHRTtFNUR3aE9OO0FBQ0Y7O0FpQnJqT0k7RTJDL0JGO0lBaUVNO0lBQ0E7SUFDQTtFNUR3aE9OOztFNER0aE9NO0lBQ0U7RTVEeWhPUjs7RTREdGhPTTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBRUE7RTVEd2hPUjtBQUNGOztBaUI1ak9JO0UyQzVDRjtJQUVJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SW5DNUJBO0V6QndvT0o7QUFDRjs7QXlCcm9PTTtFbUNZSjtJbkNYTTtFekJ5b09OO0FBQ0Y7O0FpQm5sT0k7RTJDNUJFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFNURtbk9OO0FBQ0Y7O0FpQjdsT0k7RTJDcEJFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFNURxbk9OO0FBQ0Y7O0FpQnZtT0k7RTJDWkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFNUR1bk9OO0FBQ0Y7O0FpQm5uT0k7RTJDRkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTVEeW5PTjtBQUNGOztBaUI5bk9JO0UyQ09FOztJQUVFO0U1RDJuT047QUFDRjs7QWlCcm9PSTtFMkNZRTs7O0lBR0U7RTVENm5PTjtBQUNGOztBaUIxcE9JO0UyQy9CRjtJQWlFTTtJQUNBO0lBQ0E7RTVENm5PTjs7RTREM25PTTtJQUNFO0U1RDhuT1I7O0U0RDNuT007SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUVBO0U1RDZuT1I7QUFDRjs7QWlCanFPSTtFMkM1Q0Y7SUFFSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0luQzVCQTtFekI2dU9KO0FBQ0Y7O0F5QjF1T007RW1DWUo7SW5DWE07RXpCOHVPTjtBQUNGOztBaUJ4ck9JO0UyQzVCRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTVEd3RPTjtBQUNGOztBaUJsc09JO0UyQ3BCRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTVEMHRPTjtBQUNGOztBaUI1c09JO0UyQ1pFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTVENHRPTjtBQUNGOztBaUJ4dE9JO0UyQ0ZFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1RDh0T047QUFDRjs7QWlCbnVPSTtFMkNPRTs7SUFFRTtFNURndU9OO0FBQ0Y7O0FpQjF1T0k7RTJDWUU7OztJQUdFO0U1RGt1T047QUFDRjs7QWlCL3ZPSTtFMkMvQkY7SUFpRU07SUFDQTtJQUNBO0U1RGt1T047O0U0RGh1T007SUFDRTtFNURtdU9SOztFNERodU9NO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFFQTtFNURrdU9SO0FBQ0Y7O0FpQnR3T0k7RTJDNUNGO0lBRUk7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJbkM1QkE7RXpCazFPSjtBQUNGOztBeUIvME9NO0VtQ1lKO0luQ1hNO0V6Qm0xT047QUFDRjs7QWlCN3hPSTtFMkM1QkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1RDZ6T047QUFDRjs7QWlCdnlPSTtFMkNwQkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1RCt6T047QUFDRjs7QWlCanpPSTtFMkNaRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1RGkwT047QUFDRjs7QWlCN3pPSTtFMkNGRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFNURtME9OO0FBQ0Y7O0FpQngwT0k7RTJDT0U7O0lBRUU7RTVEcTBPTjtBQUNGOztBaUIvME9JO0UyQ1lFOzs7SUFHRTtFNUR1ME9OO0FBQ0Y7O0FpQnAyT0k7RTJDL0JGO0lBaUVNO0lBQ0E7SUFDQTtFNUR1ME9OOztFNERyME9NO0lBQ0U7RTVEdzBPUjs7RTREcjBPTTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBRUE7RTVEdTBPUjtBQUNGOztBaUIzMk9JO0UyQzVDRjtJQUVJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SW5DNUJBO0V6QnU3T0o7QUFDRjs7QXlCcDdPTTtFbUNZSjtJbkNYTTtFekJ3N09OO0FBQ0Y7O0FpQmw0T0k7RTJDNUJFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFNURrNk9OO0FBQ0Y7O0FpQjU0T0k7RTJDcEJFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFNURvNk9OO0FBQ0Y7O0FpQnQ1T0k7RTJDWkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFNURzNk9OO0FBQ0Y7O0FpQmw2T0k7RTJDRkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTVEdzZPTjtBQUNGOztBaUI3Nk9JO0UyQ09FOztJQUVFO0U1RDA2T047QUFDRjs7QWlCcDdPSTtFMkNZRTs7O0lBR0U7RTVENDZPTjtBQUNGOztBaUJ6OE9JO0UyQy9CRjtJQWlFTTtJQUNBO0lBQ0E7RTVENDZPTjs7RTREMTZPTTtJQUNFO0U1RDY2T1I7O0U0RDE2T007SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUVBO0U1RDQ2T1I7QUFDRjs7QTRENS9PRTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RW5DNUJBO0F6QjJoUE47O0F5QnZoUE07RW1DWUo7SW5DWE07RXpCMmhQTjtBQUNGOztBNERqZ1BNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNURvZ1BSOztBNERqZ1BNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNURvZ1BSOztBNERqZ1BNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVEb2dQUjs7QTREamdQTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNURvZ1BSOztBNERqZ1BNOztFQUVFO0E1RG9nUFI7O0E0RGpnUE07OztFQUdFO0E1RG9nUFI7O0E0RHorT0E7RVBwSEU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJEaW1QRjs7QXFEOWxQRTtFQUFTO0FyRGttUFg7O0FxRGptUEU7RUFBUztBckRxbVBYOztBNER2L09BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTVEMC9PRjs7QTREeC9PRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E1RDIvT0o7O0E0RHYvT0E7RUFDRTtFQUNBO0E1RDAvT0Y7O0E0RHYvT0E7RUFDRTtFQUNBO0VBQ0E7QTVEMC9PRjs7QTZEMW9QQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0Q2b1BGOztBNkQzb1BFO0VBQ0U7RUFDQTtBN0Q4b1BKOztBNkR6b1BBO0VBQ0U7QTdENG9QRjs7QTZEem9QQTtFQUNFO0E3RDRvUEY7O0E2RHpvUEE7RUFDRTtBN0Q0b1BGOztBNkR2b1BFO0VBQ0U7VUFBQTtBN0Qwb1BKOztBNkR0b1BBO0VBQ0U7SUFDRTtFN0R5b1BGO0FBQ0Y7O0E2RDVvUEE7RUFDRTtJQUNFO0U3RHlvUEY7QUFDRjs7QTZEdG9QQTtFQUNFO1VBQUE7RUFDQTtVQUFBO0VBQ0E7VUFBQTtBN0R5b1BGOztBNkR0b1BBO0VBQ0U7SUFDRTtZQUFBO0U3RHlvUEY7QUFDRjs7QTZENW9QQTtFQUNFO0lBQ0U7WUFBQTtFN0R5b1BGO0FBQ0Y7O0EwRHhyUEU7RUFDRTtFQUNBO0VBQ0E7QTFEMnJQSjs7QThEN3JQRTtFQUNFO0VBQ0E7QTlEZ3NQSjs7QThEbHNQRTtFQUNFO0VBQ0E7QTlEcXNQSjs7QThEdnNQRTtFQUNFO0VBQ0E7QTlEMHNQSjs7QThENXNQRTtFQUNFO0VBQ0E7QTlEK3NQSjs7QThEanRQRTtFQUNFO0VBQ0E7QTlEb3RQSjs7QThEdHRQRTtFQUNFO0VBQ0E7QTlEeXRQSjs7QThEM3RQRTtFQUNFO0VBQ0E7QTlEOHRQSjs7QThEaHVQRTtFQUNFO0VBQ0E7QTlEbXVQSjs7QStEdHVQRTtFQUNFO0VBQ0E7VUFBQTtBL0R5dVBKOztBK0R0dVBNOztFQUdFO0VBQ0E7VUFBQTtBL0R3dVBSOztBK0RqdlBFO0VBQ0U7RUFDQTtVQUFBO0EvRG92UEo7O0ErRGp2UE07O0VBR0U7RUFDQTtVQUFBO0EvRG12UFI7O0ErRDV2UEU7RUFDRTtFQUNBO1VBQUE7QS9EK3ZQSjs7QStENXZQTTs7RUFHRTtFQUNBO1VBQUE7QS9EOHZQUjs7QStEdndQRTtFQUNFO0VBQ0E7VUFBQTtBL0Qwd1BKOztBK0R2d1BNOztFQUdFO0VBQ0E7VUFBQTtBL0R5d1BSOztBK0RseFBFO0VBQ0U7RUFDQTtVQUFBO0EvRHF4UEo7O0ErRGx4UE07O0VBR0U7RUFDQTtVQUFBO0EvRG94UFI7O0ErRDd4UEU7RUFDRTtFQUNBO1VBQUE7QS9EZ3lQSjs7QStEN3hQTTs7RUFHRTtFQUNBO1VBQUE7QS9EK3hQUjs7QStEeHlQRTtFQUNFO0VBQ0E7VUFBQTtBL0QyeVBKOztBK0R4eVBNOztFQUdFO0VBQ0E7VUFBQTtBL0QweVBSOztBK0RuelBFO0VBQ0U7RUFDQTtVQUFBO0EvRHN6UEo7O0ErRG56UE07O0VBR0U7RUFDQTtVQUFBO0EvRHF6UFI7O0ErRDl5UEE7RUFDRTtFQUNBO1VBQUE7QS9EaXpQRjs7QStEOXlQSTs7RUFFRTtFQUNBO1VBQUE7QS9EaXpQTjs7QWdFMzBQQTtFQUNFO0VBRUE7QWhFNjBQRjs7QWlFaDFQQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO1VBQUE7RUFDQTtFQUNBO1VBQUE7QWpFbTFQRjs7QWlFajFQRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0V4Q0lFO0F6QmkxUE47O0F5QjcwUE07RXdDWko7SXhDYU07RXpCaTFQTjtBQUNGOztBaUVuMVBJOztFQUNFO0FqRXUxUE47O0FrRTEyUEE7RUFDRTtFQUNBO0FsRTYyUEY7O0FrRTMyUEU7RUFDRTtFQUNBO0VBQ0E7QWxFODJQSjs7QWtFMzJQRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxFODJQSjs7QWtFejJQRTtFQUNFO0FsRTQyUEo7O0FrRTcyUEU7RUFDRTtBbEVnM1BKOztBa0VqM1BFO0VBQ0U7QWxFbzNQSjs7QWtFcjNQRTtFQUNFO0FsRXczUEo7O0FtRTc0UEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRWc1UEY7O0FtRTc0UEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRWc1UEY7O0FtRXg0UEk7RUFDRTtFQUFBO0VBQ0E7RUFDQTtBbkUyNFBOOztBbUV4NFBJO0VBQ0U7RUFBQTtFQUNBO0VBQ0E7QW5FMjRQTjs7QWlCNTJQSTtFa0R4Q0E7SUFDRTtJQUFBO0lBQ0E7SUFDQTtFbkV3NVBKOztFbUVyNVBFO0lBQ0U7SUFBQTtJQUNBO0lBQ0E7RW5FdzVQSjtBQUNGOztBaUIxM1BJO0VrRHhDQTtJQUNFO0lBQUE7SUFDQTtJQUNBO0VuRXM2UEo7O0VtRW42UEU7SUFDRTtJQUFBO0lBQ0E7SUFDQTtFbkVzNlBKO0FBQ0Y7O0FpQng0UEk7RWtEeENBO0lBQ0U7SUFBQTtJQUNBO0lBQ0E7RW5FbzdQSjs7RW1FajdQRTtJQUNFO0lBQUE7SUFDQTtJQUNBO0VuRW83UEo7QUFDRjs7QWlCdDVQSTtFa0R4Q0E7SUFDRTtJQUFBO0lBQ0E7SUFDQTtFbkVrOFBKOztFbUUvN1BFO0lBQ0U7SUFBQTtJQUNBO0lBQ0E7RW5FazhQSjtBQUNGOztBaUJwNlBJO0VrRHhDQTtJQUNFO0lBQUE7SUFDQTtJQUNBO0VuRWc5UEo7O0VtRTc4UEU7SUFDRTtJQUFBO0lBQ0E7SUFDQTtFbkVnOVBKO0FBQ0Y7O0FvRWgvUEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBcEVtL1BGOztBb0VoL1BBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXBFbS9QRjs7QXFFMy9QQTs7RUNJRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0RTQvUEY7O0FzRXovUEU7O0VBQ0U7QXRFNi9QSjs7QXVFM2dRRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2RThnUUo7O0F3RXRoUUE7RUNBRTtFQUNBO0VBQ0E7QXpFMGhRRjs7QTBFaGlRQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUVtaVFGOztBMkV2K1BRO0VBT0k7QTNFbytQWjs7QTJFMytQUTtFQU9JO0EzRXcrUFo7O0EyRS8rUFE7RUFPSTtBM0U0K1BaOztBMkVuL1BRO0VBT0k7QTNFZy9QWjs7QTJFdi9QUTtFQU9JO0EzRW8vUFo7O0EyRTMvUFE7RUFPSTtBM0V3L1BaOztBMkUvL1BRO0VBT0k7QTNFNC9QWjs7QTJFbmdRUTtFQU9JO0EzRWdnUVo7O0EyRXZnUVE7RUFPSTtBM0VvZ1FaOztBMkUzZ1FRO0VBT0k7S0FBQTtBM0V3Z1FaOztBMkUvZ1FRO0VBT0k7S0FBQTtBM0U0Z1FaOztBMkVuaFFRO0VBT0k7S0FBQTtBM0VnaFFaOztBMkV2aFFRO0VBT0k7S0FBQTtBM0VvaFFaOztBMkUzaFFRO0VBT0k7S0FBQTtBM0V3aFFaOztBMkUvaFFRO0VBT0k7QTNFNGhRWjs7QTJFbmlRUTtFQU9JO0EzRWdpUVo7O0EyRXZpUVE7RUFPSTtBM0VvaVFaOztBMkUzaVFRO0VBT0k7QTNFd2lRWjs7QTJFL2lRUTtFQU9JO0EzRTRpUVo7O0EyRW5qUVE7RUFPSTtBM0VnalFaOztBMkV2alFRO0VBT0k7QTNFb2pRWjs7QTJFM2pRUTtFQU9JO0EzRXdqUVo7O0EyRS9qUVE7RUFPSTtBM0U0alFaOztBMkVua1FRO0VBT0k7QTNFZ2tRWjs7QTJFdmtRUTtFQU9JO0EzRW9rUVo7O0EyRTNrUVE7RUFPSTtBM0V3a1FaOztBMkUva1FRO0VBT0k7QTNFNGtRWjs7QTJFbmxRUTtFQU9JO0EzRWdsUVo7O0EyRXZsUVE7RUFPSTtBM0VvbFFaOztBMkUzbFFRO0VBT0k7QTNFd2xRWjs7QTJFL2xRUTtFQU9JO0EzRTRsUVo7O0EyRW5tUVE7RUFPSTtBM0VnbVFaOztBMkV2bVFRO0VBT0k7QTNFb21RWjs7QTJFM21RUTtFQU9JO0EzRXdtUVo7O0EyRS9tUVE7RUFPSTtBM0U0bVFaOztBMkVublFRO0VBT0k7QTNFZ25RWjs7QTJFdm5RUTtFQU9JO0EzRW9uUVo7O0EyRTNuUVE7RUFPSTtBM0V3blFaOztBMkUvblFRO0VBT0k7QTNFNG5RWjs7QTJFbm9RUTtFQU9JO0EzRWdvUVo7O0EyRXZvUVE7RUFPSTtBM0Vvb1FaOztBMkUzb1FRO0VBT0k7QTNFd29RWjs7QTJFL29RUTtFQU9JO0EzRTRvUVo7O0EyRW5wUVE7RUFPSTtBM0VncFFaOztBMkV2cFFRO0VBT0k7QTNFb3BRWjs7QTJFM3BRUTtFQU9JO0EzRXdwUVo7O0EyRXpxUVE7RUFDRTtBM0U0cVFWOztBMkU3cVFRO0VBQ0U7QTNFZ3JRVjs7QTJFanJRUTtFQUNFO0EzRW9yUVY7O0EyRXJyUVE7RUFDRTtBM0V3clFWOztBMkV6clFRO0VBQ0U7QTNFNHJRVjs7QTJFN3JRUTtFQUNFO0EzRWdzUVY7O0EyRWpzUVE7RUFDRTtBM0Vvc1FWOztBMkVyc1FRO0VBQ0U7QTNFd3NRVjs7QTJFL3JRUTtFQU9JO0EzRTRyUVo7O0EyRW5zUVE7RUFPSTtBM0Vnc1FaOztBMkV2c1FRO0VBT0k7QTNFb3NRWjs7QTJFM3NRUTtFQU9JO0EzRXdzUVo7O0EyRS9zUVE7RUFPSTtFQUFBO0EzRTRzUVo7O0EyRW50UVE7RUFPSTtBM0VndFFaOztBMkV2dFFRO0VBT0k7QTNFb3RRWjs7QTJFM3RRUTtFQU9JO0EzRXd0UVo7O0EyRS90UVE7RUFPSTtBM0U0dFFaOztBMkVudVFRO0VBT0k7QTNFZ3VRWjs7QTJFdnVRUTtFQU9JO0EzRW91UVo7O0EyRTN1UVE7RUFPSTtBM0V3dVFaOztBMkUvdVFRO0VBT0k7QTNFNHVRWjs7QTJFbnZRUTtFQU9JO0EzRWd2UVo7O0EyRXZ2UVE7RUFPSTtBM0VvdlFaOztBMkUzdlFRO0VBT0k7QTNFd3ZRWjs7QTJFL3ZRUTtFQU9JO0EzRTR2UVo7O0EyRW53UVE7RUFPSTtBM0Vnd1FaOztBMkV2d1FRO0VBT0k7QTNFb3dRWjs7QTJFM3dRUTtFQU9JO0EzRXd3UVo7O0EyRS93UVE7RUFPSTtBM0U0d1FaOztBMkVueFFRO0VBT0k7QTNFZ3hRWjs7QTJFdnhRUTtFQU9JO0EzRW94UVo7O0EyRTN4UVE7RUFPSTtBM0V3eFFaOztBMkUveFFRO0VBT0k7QTNFNHhRWjs7QTJFbnlRUTtFQU9JO0EzRWd5UVo7O0EyRXZ5UVE7RUFPSTtBM0VveVFaOztBMkUzeVFRO0VBT0k7QTNFd3lRWjs7QTJFL3lRUTtFQU9JO0EzRTR5UVo7O0EyRW56UVE7RUFPSTtBM0VnelFaOztBMkV2elFRO0VBSVE7RUFHSjtBM0VxelFaOztBMkU1elFRO0VBSVE7RUFHSjtBM0UwelFaOztBMkVqMFFRO0VBSVE7RUFHSjtBM0UrelFaOztBMkV0MFFRO0VBSVE7RUFHSjtBM0VvMFFaOztBMkUzMFFRO0VBSVE7RUFHSjtBM0V5MFFaOztBMkVoMVFRO0VBSVE7RUFHSjtBM0U4MFFaOztBMkVyMVFRO0VBSVE7RUFHSjtBM0VtMVFaOztBMkUxMVFRO0VBSVE7RUFHSjtBM0V3MVFaOztBMkUvMVFRO0VBSVE7RUFHSjtBM0U2MVFaOztBMkVwMlFRO0VBSVE7RUFHSjtBM0VrMlFaOztBMkV6MlFRO0VBT0k7QTNFczJRWjs7QTJFNzJRUTtFQU9JO0EzRTAyUVo7O0EyRWozUVE7RUFPSTtBM0U4MlFaOztBMkVyM1FRO0VBT0k7QTNFazNRWjs7QTJFejNRUTtFQU9JO0EzRXMzUVo7O0EyRTczUVE7RUFPSTtBM0UwM1FaOztBMkVqNFFRO0VBT0k7QTNFODNRWjs7QTJFcjRRUTtFQU9JO0EzRWs0UVo7O0EyRXo0UVE7RUFPSTtBM0VzNFFaOztBMkU3NFFRO0VBT0k7QTNFMDRRWjs7QTJFajVRUTtFQU9JO0EzRTg0UVo7O0EyRXI1UVE7RUFPSTtBM0VrNVFaOztBMkV6NVFRO0VBT0k7QTNFczVRWjs7QTJFdjZRUTtFQUNFO0EzRTA2UVY7O0EyRTM2UVE7RUFDRTtBM0U4NlFWOztBMkUvNlFRO0VBQ0U7QTNFazdRVjs7QTJFbjdRUTtFQUNFO0EzRXM3UVY7O0EyRXY3UVE7RUFDRTtBM0UwN1FWOztBMkVqN1FRO0VBT0k7QTNFODZRWjs7QTJFcjdRUTtFQU9JO0EzRWs3UVo7O0EyRXo3UVE7RUFPSTtBM0VzN1FaOztBMkU3N1FRO0VBT0k7QTNFMDdRWjs7QTJFajhRUTtFQU9JO0EzRTg3UVo7O0EyRXI4UVE7RUFPSTtBM0VrOFFaOztBMkV6OFFRO0VBT0k7QTNFczhRWjs7QTJFNzhRUTtFQU9JO0EzRTA4UVo7O0EyRWo5UVE7RUFPSTtBM0U4OFFaOztBMkVyOVFRO0VBT0k7QTNFazlRWjs7QTJFejlRUTtFQU9JO0EzRXM5UVo7O0EyRTc5UVE7RUFPSTtBM0UwOVFaOztBMkVqK1FRO0VBT0k7QTNFODlRWjs7QTJFcitRUTtFQU9JO0EzRWsrUVo7O0EyRXorUVE7RUFPSTtBM0VzK1FaOztBMkU3K1FRO0VBT0k7QTNFMCtRWjs7QTJFai9RUTtFQU9JO0EzRTgrUVo7O0EyRXIvUVE7RUFPSTtBM0VrL1FaOztBMkV6L1FRO0VBT0k7QTNFcy9RWjs7QTJFNy9RUTtFQU9JO0EzRTAvUVo7O0EyRWpnUlE7RUFPSTtBM0U4L1FaOztBMkVyZ1JRO0VBT0k7QTNFa2dSWjs7QTJFemdSUTtFQU9JO0EzRXNnUlo7O0EyRTdnUlE7RUFPSTtBM0UwZ1JaOztBMkVqaFJRO0VBT0k7QTNFOGdSWjs7QTJFcmhSUTtFQU9JO0EzRWtoUlo7O0EyRXpoUlE7RUFPSTtBM0VzaFJaOztBMkU3aFJRO0VBT0k7QTNFMGhSWjs7QTJFamlSUTtFQU9JO0EzRThoUlo7O0EyRXJpUlE7RUFPSTtBM0VraVJaOztBMkV6aVJRO0VBT0k7QTNFc2lSWjs7QTJFN2lSUTtFQU9JO0EzRTBpUlo7O0EyRWpqUlE7RUFPSTtBM0U4aVJaOztBMkVyalJRO0VBT0k7QTNFa2pSWjs7QTJFempSUTtFQU9JO0EzRXNqUlo7O0EyRTdqUlE7RUFPSTtBM0UwalJaOztBMkVqa1JRO0VBT0k7QTNFOGpSWjs7QTJFcmtSUTtFQU9JO0EzRWtrUlo7O0EyRXprUlE7RUFPSTtBM0Vza1JaOztBMkU3a1JRO0VBT0k7QTNFMGtSWjs7QTJFamxSUTtFQU9JO0EzRThrUlo7O0EyRXJsUlE7RUFPSTtBM0VrbFJaOztBMkV6bFJRO0VBT0k7QTNFc2xSWjs7QTJFN2xSUTtFQU9JO0EzRTBsUlo7O0EyRWptUlE7RUFPSTtBM0U4bFJaOztBMkVybVJRO0VBT0k7QTNFa21SWjs7QTJFem1SUTtFQU9JO0EzRXNtUlo7O0EyRTdtUlE7RUFPSTtBM0UwbVJaOztBMkVqblJRO0VBT0k7QTNFOG1SWjs7QTJFcm5SUTtFQU9JO0EzRWtuUlo7O0EyRXpuUlE7RUFPSTtBM0VzblJaOztBMkU3blJRO0VBT0k7QTNFMG5SWjs7QTJFam9SUTtFQU9JO0EzRThuUlo7O0EyRXJvUlE7RUFPSTtBM0Vrb1JaOztBMkV6b1JRO0VBT0k7QTNFc29SWjs7QTJFN29SUTtFQU9JO0EzRTBvUlo7O0EyRWpwUlE7RUFPSTtBM0U4b1JaOztBMkVycFJRO0VBT0k7QTNFa3BSWjs7QTJFenBSUTtFQU9JO0EzRXNwUlo7O0EyRTdwUlE7RUFPSTtBM0UwcFJaOztBMkVqcVJRO0VBT0k7QTNFOHBSWjs7QTJFcnFSUTtFQU9JO0EzRWtxUlo7O0EyRXpxUlE7RUFPSTtBM0VzcVJaOztBMkU3cVJRO0VBT0k7QTNFMHFSWjs7QTJFanJSUTtFQU9JO0EzRThxUlo7O0EyRXJyUlE7RUFPSTtBM0VrclJaOztBMkV6clJRO0VBT0k7RUFBQTtBM0V1clJaOztBMkU5clJRO0VBT0k7RUFBQTtBM0U0clJaOztBMkVuc1JRO0VBT0k7RUFBQTtBM0Vpc1JaOztBMkV4c1JRO0VBT0k7RUFBQTtBM0Vzc1JaOztBMkU3c1JRO0VBT0k7RUFBQTtBM0Uyc1JaOztBMkVsdFJRO0VBT0k7RUFBQTtBM0VndFJaOztBMkV2dFJRO0VBT0k7RUFBQTtBM0VxdFJaOztBMkU1dFJRO0VBT0k7RUFBQTtBM0UwdFJaOztBMkVqdVJRO0VBT0k7RUFBQTtBM0UrdFJaOztBMkV0dVJRO0VBT0k7RUFBQTtBM0VvdVJaOztBMkUzdVJRO0VBT0k7RUFBQTtBM0V5dVJaOztBMkVodlJRO0VBT0k7RUFBQTtBM0U4dVJaOztBMkVydlJRO0VBT0k7RUFBQTtBM0VtdlJaOztBMkUxdlJRO0VBT0k7RUFBQTtBM0V3dlJaOztBMkUvdlJRO0VBT0k7QTNFNHZSWjs7QTJFbndSUTtFQU9JO0EzRWd3Ulo7O0EyRXZ3UlE7RUFPSTtBM0Vvd1JaOztBMkUzd1JRO0VBT0k7QTNFd3dSWjs7QTJFL3dSUTtFQU9JO0EzRTR3Ulo7O0EyRW54UlE7RUFPSTtBM0VneFJaOztBMkV2eFJRO0VBT0k7QTNFb3hSWjs7QTJFM3hSUTtFQU9JO0EzRXd4Ulo7O0EyRS94UlE7RUFPSTtBM0U0eFJaOztBMkVueVJRO0VBT0k7QTNFZ3lSWjs7QTJFdnlSUTtFQU9JO0EzRW95Ulo7O0EyRTN5UlE7RUFPSTtBM0V3eVJaOztBMkUveVJRO0VBT0k7QTNFNHlSWjs7QTJFbnpSUTtFQU9JO0EzRWd6Ulo7O0EyRXZ6UlE7RUFPSTtBM0VvelJaOztBMkUzelJRO0VBT0k7QTNFd3pSWjs7QTJFL3pSUTtFQU9JO0EzRTR6Ulo7O0EyRW4wUlE7RUFPSTtBM0VnMFJaOztBMkV2MFJRO0VBT0k7QTNFbzBSWjs7QTJFMzBSUTtFQU9JO0EzRXcwUlo7O0EyRS8wUlE7RUFPSTtBM0U0MFJaOztBMkVuMVJRO0VBT0k7QTNFZzFSWjs7QTJFdjFSUTtFQU9JO0EzRW8xUlo7O0EyRTMxUlE7RUFPSTtBM0V3MVJaOztBMkUvMVJRO0VBT0k7QTNFNDFSWjs7QTJFbjJSUTtFQU9JO0EzRWcyUlo7O0EyRXYyUlE7RUFPSTtBM0VvMlJaOztBMkUzMlJRO0VBT0k7QTNFdzJSWjs7QTJFLzJSUTtFQU9JO0EzRTQyUlo7O0EyRW4zUlE7RUFPSTtBM0VnM1JaOztBMkV2M1JRO0VBT0k7QTNFbzNSWjs7QTJFMzNSUTtFQU9JO0EzRXczUlo7O0EyRS8zUlE7RUFPSTtBM0U0M1JaOztBMkVuNFJRO0VBT0k7QTNFZzRSWjs7QTJFdjRSUTtFQU9JO0VBQUE7QTNFcTRSWjs7QTJFNTRSUTtFQU9JO0VBQUE7QTNFMDRSWjs7QTJFajVSUTtFQU9JO0VBQUE7QTNFKzRSWjs7QTJFdDVSUTtFQU9JO0VBQUE7QTNFbzVSWjs7QTJFMzVSUTtFQU9JO0VBQUE7QTNFeTVSWjs7QTJFaDZSUTtFQU9JO0VBQUE7QTNFODVSWjs7QTJFcjZSUTtFQU9JO0VBQUE7QTNFbTZSWjs7QTJFMTZSUTtFQU9JO0VBQUE7QTNFdzZSWjs7QTJFLzZSUTtFQU9JO0VBQUE7QTNFNjZSWjs7QTJFcDdSUTtFQU9JO0VBQUE7QTNFazdSWjs7QTJFejdSUTtFQU9JO0VBQUE7QTNFdTdSWjs7QTJFOTdSUTtFQU9JO0VBQUE7QTNFNDdSWjs7QTJFbjhSUTtFQU9JO0EzRWc4Ulo7O0EyRXY4UlE7RUFPSTtBM0VvOFJaOztBMkUzOFJRO0VBT0k7QTNFdzhSWjs7QTJFLzhSUTtFQU9JO0EzRTQ4Ulo7O0EyRW45UlE7RUFPSTtBM0VnOVJaOztBMkV2OVJRO0VBT0k7QTNFbzlSWjs7QTJFMzlSUTtFQU9JO0EzRXc5Ulo7O0EyRS85UlE7RUFPSTtBM0U0OVJaOztBMkVuK1JRO0VBT0k7QTNFZytSWjs7QTJFditSUTtFQU9JO0EzRW8rUlo7O0EyRTMrUlE7RUFPSTtBM0V3K1JaOztBMkUvK1JRO0VBT0k7QTNFNCtSWjs7QTJFbi9SUTtFQU9JO0EzRWcvUlo7O0EyRXYvUlE7RUFPSTtBM0VvL1JaOztBMkUzL1JRO0VBT0k7QTNFdy9SWjs7QTJFLy9SUTtFQU9JO0EzRTQvUlo7O0EyRW5nU1E7RUFPSTtBM0VnZ1NaOztBMkV2Z1NRO0VBT0k7QTNFb2dTWjs7QTJFM2dTUTtFQU9JO0EzRXdnU1o7O0EyRS9nU1E7RUFPSTtBM0U0Z1NaOztBMkVuaFNRO0VBT0k7QTNFZ2hTWjs7QTJFdmhTUTtFQU9JO0EzRW9oU1o7O0EyRTNoU1E7RUFPSTtBM0V3aFNaOztBMkUvaFNRO0VBT0k7QTNFNGhTWjs7QTJFbmlTUTtFQU9JO0EzRWdpU1o7O0EyRXZpU1E7RUFPSTtBM0VvaVNaOztBMkUzaVNRO0VBT0k7QTNFd2lTWjs7QTJFL2lTUTtFQU9JO0EzRTRpU1o7O0EyRW5qU1E7RUFPSTtBM0VnalNaOztBMkV2alNRO0VBT0k7QTNFb2pTWjs7QTJFM2pTUTtFQU9JO0EzRXdqU1o7O0EyRS9qU1E7RUFPSTtBM0U0alNaOztBMkVua1NRO0VBT0k7QTNFZ2tTWjs7QTJFdmtTUTtFQU9JO0EzRW9rU1o7O0EyRTNrU1E7RUFPSTtBM0V3a1NaOztBMkUva1NRO0VBT0k7QTNFNGtTWjs7QTJFbmxTUTtFQU9JO09BQUE7QTNFZ2xTWjs7QTJFdmxTUTtFQU9JO09BQUE7QTNFb2xTWjs7QTJFM2xTUTtFQU9JO09BQUE7QTNFd2xTWjs7QTJFL2xTUTtFQU9JO09BQUE7QTNFNGxTWjs7QTJFbm1TUTtFQU9JO09BQUE7QTNFZ21TWjs7QTJFdm1TUTtFQU9JO09BQUE7QTNFb21TWjs7QTJFM21TUTtFQU9JO0EzRXdtU1o7O0EyRS9tU1E7RUFPSTtBM0U0bVNaOztBMkVublNRO0VBT0k7QTNFZ25TWjs7QTJFdm5TUTtFQU9JO0EzRW9uU1o7O0EyRTNuU1E7RUFPSTtBM0V3blNaOztBMkUvblNRO0VBT0k7QTNFNG5TWjs7QTJFbm9TUTtFQU9JO0EzRWdvU1o7O0EyRXZvU1E7RUFPSTtBM0Vvb1NaOztBMkUzb1NRO0VBT0k7QTNFd29TWjs7QTJFL29TUTtFQU9JO0EzRTRvU1o7O0EyRW5wU1E7RUFPSTtBM0VncFNaOztBMkV2cFNRO0VBT0k7QTNFb3BTWjs7QTJFM3BTUTtFQU9JO0EzRXdwU1o7O0EyRS9wU1E7RUFPSTtBM0U0cFNaOztBMkVucVNRO0VBT0k7QTNFZ3FTWjs7QTJFdnFTUTtFQU9JO0EzRW9xU1o7O0EyRTNxU1E7RUFPSTtBM0V3cVNaOztBMkUvcVNRO0VBT0k7QTNFNHFTWjs7QTJFbnJTUTtFQU9JO0EzRWdyU1o7O0EyRXZyU1E7RUFPSTtBM0VvclNaOztBMkUzclNRO0VBT0k7QTNFd3JTWjs7QTJFL3JTUTtFQU9JO0EzRTRyU1o7O0EyRW5zU1E7RUFPSTtBM0Vnc1NaOztBMkV2c1NRO0VBT0k7QTNFb3NTWjs7QTJFM3NTUTtFQU9JO0EzRXdzU1o7O0EyRS9zU1E7RUFPSTtBM0U0c1NaOztBMkVudFNRO0VBT0k7QTNFZ3RTWjs7QTJFdnRTUTtFQU9JO0EzRW90U1o7O0EyRTN0U1E7RUFPSTtBM0V3dFNaOztBMkUvdFNRO0VBT0k7QTNFNHRTWjs7QTJFbnVTUTtFQU9JO0EzRWd1U1o7O0EyRXJ2U1E7O0FBY0E7RUFPSTtFQUFBO0EzRXV1U1o7O0EyRXB0U1E7O0FBMUJBO0VBSVE7RUFHSjtBM0U4dVNaOztBMkVydlNRO0VBSVE7RUFHSjtBM0VtdlNaOztBMkUxdlNRO0VBSVE7RUFHSjtBM0V3dlNaOztBMkUvdlNRO0VBSVE7RUFHSjtBM0U2dlNaOztBMkVwd1NRO0VBSVE7RUFHSjtBM0Vrd1NaOztBMkV6d1NRO0VBSVE7RUFHSjtBM0V1d1NaOztBMkU5d1NRO0VBSVE7RUFHSjtBM0U0d1NaOztBMkVueFNRO0VBSVE7RUFHSjtBM0VpeFNaOztBMkV4eFNRO0VBSVE7RUFHSjtBM0VzeFNaOztBMkU3eFNRO0VBSVE7RUFHSjtBM0UyeFNaOztBMkVseVNRO0VBSVE7RUFHSjtBM0VneVNaOztBMkV2eVNRO0VBSVE7RUFHSjtBM0VxeVNaOztBMkU1eVNRO0VBSVE7RUFHSjtBM0UweVNaOztBMkVqelNRO0VBSVE7RUFHSjtBM0UreVNaOztBMkV0elNRO0VBSVE7RUFHSjtBM0VvelNaOztBMkUzelNRO0VBSVE7RUFHSjtBM0V5elNaOztBMkVoMFNRO0VBSVE7RUFHSjtBM0U4elNaOztBMkVyMFNRO0VBSVE7RUFHSjtBM0VtMFNaOztBMkVwMVNRO0VBQ0U7QTNFdTFTVjs7QTJFeDFTUTtFQUNFO0EzRTIxU1Y7O0EyRTUxU1E7RUFDRTtBM0UrMVNWOztBMkVoMlNRO0VBQ0U7QTNFbTJTVjs7QTJFMTFTUTtFQU9JO0EzRXUxU1o7O0EyRTkxU1E7RUFPSTtBM0UyMVNaOztBMkVsMlNRO0VBT0k7QTNFKzFTWjs7QTJFdDJTUTtFQU9JO0EzRW0yU1o7O0EyRTEyU1E7RUFPSTtBM0V1MlNaOztBMkU5MlNRO0VBT0k7QTNFMjJTWjs7QTJFbDNTUTtFQU9JO0EzRSsyU1o7O0EyRXQzU1E7RUFPSTtBM0VtM1NaOztBMkVwNFNRO0VBQ0U7QTNFdTRTVjs7QTJFbjRTVTtFQUNFO0EzRXM0U1o7O0EyRTU0U1E7RUFDRTtBM0UrNFNWOztBMkUzNFNVO0VBQ0U7QTNFODRTWjs7QTJFcDVTUTtFQUNFO0EzRXU1U1Y7O0EyRW41U1U7RUFDRTtBM0VzNVNaOztBMkU1NVNRO0VBQ0U7QTNFKzVTVjs7QTJFMzVTVTtFQUNFO0EzRTg1U1o7O0EyRXA2U1E7RUFDRTtBM0V1NlNWOztBMkVuNlNVO0VBQ0U7QTNFczZTWjs7QTJFbDZTUTtFQU9JO0EzRSs1U1o7O0EyRTE1U1U7RUFPSTtBM0V1NVNkOztBMkUxNlNRO0VBT0k7QTNFdTZTWjs7QTJFbDZTVTtFQU9JO0EzRSs1U2Q7O0EyRWw3U1E7RUFPSTtBM0UrNlNaOztBMkUxNlNVO0VBT0k7QTNFdTZTZDs7QTJFMTdTUTtFQUlRO0VBR0o7VUFBQTtBM0V3N1NaOztBMkUvN1NRO0VBSVE7RUFHSjtVQUFBO0EzRTY3U1o7O0EyRXA4U1E7RUFJUTtFQUdKO1VBQUE7QTNFazhTWjs7QTJFejhTUTtFQUlRO0VBR0o7VUFBQTtBM0V1OFNaOztBMkU5OFNRO0VBSVE7RUFHSjtVQUFBO0EzRTQ4U1o7O0EyRW45U1E7RUFJUTtFQUdKO1VBQUE7QTNFaTlTWjs7QTJFeDlTUTtFQUlRO0VBR0o7VUFBQTtBM0VzOVNaOztBMkU3OVNRO0VBSVE7RUFHSjtVQUFBO0EzRTI5U1o7O0EyRWwrU1E7RUFJUTtFQUdKO1VBQUE7QTNFZytTWjs7QTJFai9TUTtFQUNFO0EzRW8vU1Y7O0EyRWgvU1U7RUFDRTtBM0VtL1NaOztBMkV6L1NRO0VBQ0U7QTNFNC9TVjs7QTJFeC9TVTtFQUNFO0EzRTIvU1o7O0EyRWpnVFE7RUFDRTtBM0VvZ1RWOztBMkVoZ1RVO0VBQ0U7QTNFbWdUWjs7QTJFemdUUTtFQUNFO0EzRTRnVFY7O0EyRXhnVFU7RUFDRTtBM0UyZ1RaOztBMkVqaFRRO0VBQ0U7QTNFb2hUVjs7QTJFaGhUVTtFQUNFO0EzRW1oVFo7O0EyRXpoVFE7RUFDRTtBM0U0aFRWOztBMkV4aFRVO0VBQ0U7QTNFMmhUWjs7QTJFdmhUUTtFQUlRO0VBR0o7QTNFcWhUWjs7QTJFNWhUUTtFQUlRO0VBR0o7QTNFMGhUWjs7QTJFamlUUTtFQUlRO0VBR0o7QTNFK2hUWjs7QTJFdGlUUTtFQUlRO0VBR0o7QTNFb2lUWjs7QTJFM2lUUTtFQUlRO0VBR0o7QTNFeWlUWjs7QTJFaGpUUTtFQUlRO0VBR0o7QTNFOGlUWjs7QTJFcmpUUTtFQUlRO0VBR0o7QTNFbWpUWjs7QTJFMWpUUTtFQUlRO0VBR0o7QTNFd2pUWjs7QTJFL2pUUTtFQUlRO0VBR0o7QTNFNmpUWjs7QTJFcGtUUTtFQUlRO0VBR0o7QTNFa2tUWjs7QTJFemtUUTtFQUlRO0VBR0o7QTNFdWtUWjs7QTJFOWtUUTtFQUlRO0VBR0o7QTNFNGtUWjs7QTJFbmxUUTtFQUlRO0VBR0o7QTNFaWxUWjs7QTJFeGxUUTtFQUlRO0VBR0o7QTNFc2xUWjs7QTJFdm1UUTtFQUNFO0EzRTBtVFY7O0EyRTNtVFE7RUFDRTtBM0U4bVRWOztBMkUvbVRRO0VBQ0U7QTNFa25UVjs7QTJFbm5UUTtFQUNFO0EzRXNuVFY7O0EyRXZuVFE7RUFDRTtBM0UwblRWOztBMkVqblRRO0VBT0k7QTNFOG1UWjs7QTJFcm5UUTtFQU9JO0EzRWtuVFo7O0EyRXpuVFE7RUFPSTtBM0VzblRaOztBMkU3blRRO0VBT0k7QTNFMG5UWjs7QTJFam9UUTtFQU9JO0EzRThuVFo7O0EyRXJvVFE7RUFPSTtBM0Vrb1RaOztBMkV6b1RRO0VBT0k7QTNFc29UWjs7QTJFN29UUTtFQU9JO0EzRTBvVFo7O0EyRWpwVFE7RUFPSTtBM0U4b1RaOztBMkVycFRRO0VBT0k7S0FBQTtVQUFBO0EzRWtwVFo7O0EyRXpwVFE7RUFPSTtLQUFBO01BQUE7VUFBQTtBM0VzcFRaOztBMkU3cFRRO0VBT0k7S0FBQTtNQUFBO1VBQUE7QTNFMHBUWjs7QTJFanFUUTtFQU9JO0EzRThwVFo7O0EyRXJxVFE7RUFPSTtBM0VrcVRaOztBMkV6cVRRO0VBT0k7QTNFc3FUWjs7QTJFN3FUUTtFQU9JO0EzRTBxVFo7O0EyRWpyVFE7RUFPSTtBM0U4cVRaOztBMkVyclRRO0VBT0k7QTNFa3JUWjs7QTJFenJUUTtFQU9JO0EzRXNyVFo7O0EyRTdyVFE7RUFPSTtBM0UwclRaOztBMkVqc1RRO0VBT0k7QTNFOHJUWjs7QTJFcnNUUTtFQU9JO0EzRWtzVFo7O0EyRXpzVFE7RUFPSTtBM0Vzc1RaOztBMkU3c1RRO0VBT0k7RUFBQTtBM0Uyc1RaOztBMkVsdFRRO0VBT0k7RUFBQTtBM0VndFRaOztBMkV2dFRRO0VBT0k7RUFBQTtBM0VxdFRaOztBMkU1dFRRO0VBT0k7RUFBQTtBM0UwdFRaOztBMkVqdVRRO0VBT0k7RUFBQTtBM0UrdFRaOztBMkV0dVRRO0VBT0k7RUFBQTtBM0VvdVRaOztBMkUzdVRRO0VBT0k7RUFBQTtBM0V5dVRaOztBMkVodlRRO0VBT0k7RUFBQTtBM0U4dVRaOztBMkVydlRRO0VBT0k7RUFBQTtBM0VtdlRaOztBMkUxdlRRO0VBT0k7RUFBQTtBM0V3dlRaOztBMkUvdlRRO0VBT0k7RUFBQTtBM0U2dlRaOztBMkVwd1RRO0VBT0k7RUFBQTtBM0Vrd1RaOztBMkV6d1RRO0VBT0k7RUFBQTtBM0V1d1RaOztBMkU5d1RRO0VBT0k7RUFBQTtBM0U0d1RaOztBMkVueFRRO0VBT0k7RUFBQTtBM0VpeFRaOztBMkV4eFRRO0VBT0k7RUFBQTtBM0VzeFRaOztBMkU3eFRRO0VBT0k7RUFBQTtBM0UyeFRaOztBMkVseVRRO0VBT0k7RUFBQTtBM0VneVRaOztBMkV2eVRRO0VBT0k7RUFBQTtBM0VxeVRaOztBMkU1eVRRO0VBT0k7RUFBQTtBM0UweVRaOztBMkVqelRRO0VBT0k7RUFBQTtBM0UreVRaOztBMkV0elRRO0VBT0k7RUFBQTtBM0VvelRaOztBMkUzelRRO0VBT0k7RUFBQTtBM0V5elRaOztBMkVoMFRRO0VBT0k7RUFBQTtBM0U4elRaOztBMkVyMFRRO0VBT0k7RUFBQTtBM0VtMFRaOztBMkUxMFRRO0VBT0k7RUFBQTtBM0V3MFRaOztBMkUvMFRRO0VBT0k7RUFBQTtBM0U2MFRaOztBMkVwMVRRO0VBT0k7RUFBQTtBM0VrMVRaOztBMkV6MVRRO0VBT0k7RUFBQTtBM0V1MVRaOztBMkU5MVRRO0VBT0k7RUFBQTtBM0U0MVRaOztBMkVuMlRRO0VBT0k7RUFBQTtBM0VpMlRaOztBMkV4MlRRO0VBT0k7RUFBQTtBM0VzMlRaOztBMkU3MlRRO0VBT0k7RUFBQTtBM0UyMlRaOztBMkVsM1RRO0VBT0k7RUFBQTtBM0VnM1RaOztBMkV2M1RRO0VBT0k7RUFBQTtBM0VxM1RaOztBMkU1M1RRO0VBT0k7RUFBQTtBM0UwM1RaOztBMkVqNFRRO0VBT0k7QTNFODNUWjs7QTJFcjRUUTtFQU9JO0EzRWs0VFo7O0EyRXo0VFE7RUFPSTtBM0VzNFRaOztBMkU3NFRRO0VBT0k7QTNFMDRUWjs7QTJFajVUUTtFQU9JO0EzRTg0VFo7O0EyRXI1VFE7RUFPSTtBM0VrNVRaOztBMkV6NVRRO0VBT0k7QTNFczVUWjs7QWlCaDZUSTtFMERHSTtJQU9JO0UzRTI1VFY7O0UyRWw2VE07SUFPSTtFM0UrNVRWOztFMkV0NlRNO0lBT0k7RTNFbTZUVjs7RTJFMTZUTTtJQU9JO09BQUE7RTNFdTZUVjs7RTJFOTZUTTtJQU9JO09BQUE7RTNFMjZUVjs7RTJFbDdUTTtJQU9JO09BQUE7RTNFKzZUVjs7RTJFdDdUTTtJQU9JO09BQUE7RTNFbTdUVjs7RTJFMTdUTTtJQU9JO09BQUE7RTNFdTdUVjs7RTJFOTdUTTtJQU9JO0UzRTI3VFY7O0UyRWw4VE07SUFPSTtFM0UrN1RWOztFMkV0OFRNO0lBT0k7RTNFbThUVjs7RTJFMThUTTtJQU9JO0UzRXU4VFY7O0UyRTk4VE07SUFPSTtFM0UyOFRWOztFMkVsOVRNO0lBT0k7RTNFKzhUVjs7RTJFdDlUTTtJQU9JO0UzRW05VFY7O0UyRTE5VE07SUFPSTtFM0V1OVRWOztFMkU5OVRNO0lBT0k7RTNFMjlUVjs7RTJFbCtUTTtJQU9JO0UzRSs5VFY7O0UyRXQrVE07SUFPSTtFM0VtK1RWOztFMkUxK1RNO0lBT0k7RTNFdStUVjs7RTJFOStUTTtJQU9JO0UzRTIrVFY7O0UyRWwvVE07SUFPSTtFM0UrK1RWOztFMkV0L1RNO0lBT0k7RTNFbS9UVjs7RTJFMS9UTTtJQU9JO0UzRXUvVFY7O0UyRTkvVE07SUFPSTtFM0UyL1RWOztFMkVsZ1VNO0lBT0k7RTNFKy9UVjs7RTJFdGdVTTtJQU9JO0UzRW1nVVY7O0UyRTFnVU07SUFPSTtFM0V1Z1VWOztFMkU5Z1VNO0lBT0k7RTNFMmdVVjs7RTJFbGhVTTtJQU9JO0UzRStnVVY7O0UyRXRoVU07SUFPSTtFM0VtaFVWOztFMkUxaFVNO0lBT0k7RTNFdWhVVjs7RTJFOWhVTTtJQU9JO0UzRTJoVVY7O0UyRWxpVU07SUFPSTtFM0UraFVWOztFMkV0aVVNO0lBT0k7RTNFbWlVVjs7RTJFMWlVTTtJQU9JO0UzRXVpVVY7O0UyRTlpVU07SUFPSTtFM0UyaVVWOztFMkVsalVNO0lBT0k7RTNFK2lVVjs7RTJFdGpVTTtJQU9JO0UzRW1qVVY7O0UyRTFqVU07SUFPSTtFM0V1alVWOztFMkU5alVNO0lBT0k7RTNFMmpVVjs7RTJFbGtVTTtJQU9JO0UzRStqVVY7O0UyRXRrVU07SUFPSTtFM0Vta1VWOztFMkUxa1VNO0lBT0k7RTNFdWtVVjs7RTJFOWtVTTtJQU9JO0UzRTJrVVY7O0UyRWxsVU07SUFPSTtFM0Ura1VWOztFMkV0bFVNO0lBT0k7RTNFbWxVVjs7RTJFMWxVTTtJQU9JO0UzRXVsVVY7O0UyRTlsVU07SUFPSTtFM0UybFVWOztFMkVsbVVNO0lBT0k7RTNFK2xVVjs7RTJFdG1VTTtJQU9JO0UzRW1tVVY7O0UyRTFtVU07SUFPSTtFM0V1bVVWOztFMkU5bVVNO0lBT0k7RTNFMm1VVjs7RTJFbG5VTTtJQU9JO0UzRSttVVY7O0UyRXRuVU07SUFPSTtFM0VtblVWOztFMkUxblVNO0lBT0k7RTNFdW5VVjs7RTJFOW5VTTtJQU9JO0UzRTJuVVY7O0UyRWxvVU07SUFPSTtFM0UrblVWOztFMkV0b1VNO0lBT0k7RTNFbW9VVjs7RTJFMW9VTTtJQU9JO0UzRXVvVVY7O0UyRTlvVU07SUFPSTtFM0Uyb1VWOztFMkVscFVNO0lBT0k7RTNFK29VVjs7RTJFdHBVTTtJQU9JO0UzRW1wVVY7O0UyRTFwVU07SUFPSTtFM0V1cFVWOztFMkU5cFVNO0lBT0k7RTNFMnBVVjs7RTJFbHFVTTtJQU9JO0UzRStwVVY7O0UyRXRxVU07SUFPSTtFM0VtcVVWOztFMkUxcVVNO0lBT0k7RTNFdXFVVjs7RTJFOXFVTTtJQU9JO0UzRTJxVVY7O0UyRWxyVU07SUFPSTtJQUFBO0UzRWdyVVY7O0UyRXZyVU07SUFPSTtJQUFBO0UzRXFyVVY7O0UyRTVyVU07SUFPSTtJQUFBO0UzRTByVVY7O0UyRWpzVU07SUFPSTtJQUFBO0UzRStyVVY7O0UyRXRzVU07SUFPSTtJQUFBO0UzRW9zVVY7O0UyRTNzVU07SUFPSTtJQUFBO0UzRXlzVVY7O0UyRWh0VU07SUFPSTtJQUFBO0UzRThzVVY7O0UyRXJ0VU07SUFPSTtJQUFBO0UzRW10VVY7O0UyRTF0VU07SUFPSTtJQUFBO0UzRXd0VVY7O0UyRS90VU07SUFPSTtJQUFBO0UzRTZ0VVY7O0UyRXB1VU07SUFPSTtJQUFBO0UzRWt1VVY7O0UyRXp1VU07SUFPSTtJQUFBO0UzRXV1VVY7O0UyRTl1VU07SUFPSTtJQUFBO0UzRTR1VVY7O0UyRW52VU07SUFPSTtJQUFBO0UzRWl2VVY7O0UyRXh2VU07SUFPSTtFM0VxdlVWOztFMkU1dlVNO0lBT0k7RTNFeXZVVjs7RTJFaHdVTTtJQU9JO0UzRTZ2VVY7O0UyRXB3VU07SUFPSTtFM0Vpd1VWOztFMkV4d1VNO0lBT0k7RTNFcXdVVjs7RTJFNXdVTTtJQU9JO0UzRXl3VVY7O0UyRWh4VU07SUFPSTtFM0U2d1VWOztFMkVweFVNO0lBT0k7RTNFaXhVVjs7RTJFeHhVTTtJQU9JO0UzRXF4VVY7O0UyRTV4VU07SUFPSTtFM0V5eFVWOztFMkVoeVVNO0lBT0k7RTNFNnhVVjs7RTJFcHlVTTtJQU9JO0UzRWl5VVY7O0UyRXh5VU07SUFPSTtFM0VxeVVWOztFMkU1eVVNO0lBT0k7RTNFeXlVVjs7RTJFaHpVTTtJQU9JO0UzRTZ5VVY7O0UyRXB6VU07SUFPSTtFM0VpelVWOztFMkV4elVNO0lBT0k7RTNFcXpVVjs7RTJFNXpVTTtJQU9JO0UzRXl6VVY7O0UyRWgwVU07SUFPSTtFM0U2elVWOztFMkVwMFVNO0lBT0k7RTNFaTBVVjs7RTJFeDBVTTtJQU9JO0UzRXEwVVY7O0UyRTUwVU07SUFPSTtFM0V5MFVWOztFMkVoMVVNO0lBT0k7RTNFNjBVVjs7RTJFcDFVTTtJQU9JO0UzRWkxVVY7O0UyRXgxVU07SUFPSTtFM0VxMVVWOztFMkU1MVVNO0lBT0k7RTNFeTFVVjs7RTJFaDJVTTtJQU9JO0UzRTYxVVY7O0UyRXAyVU07SUFPSTtFM0VpMlVWOztFMkV4MlVNO0lBT0k7RTNFcTJVVjs7RTJFNTJVTTtJQU9JO0UzRXkyVVY7O0UyRWgzVU07SUFPSTtFM0U2MlVWOztFMkVwM1VNO0lBT0k7RTNFaTNVVjs7RTJFeDNVTTtJQU9JO0UzRXEzVVY7O0UyRTUzVU07SUFPSTtFM0V5M1VWOztFMkVoNFVNO0lBT0k7SUFBQTtFM0U4M1VWOztFMkVyNFVNO0lBT0k7SUFBQTtFM0VtNFVWOztFMkUxNFVNO0lBT0k7SUFBQTtFM0V3NFVWOztFMkUvNFVNO0lBT0k7SUFBQTtFM0U2NFVWOztFMkVwNVVNO0lBT0k7SUFBQTtFM0VrNVVWOztFMkV6NVVNO0lBT0k7SUFBQTtFM0V1NVVWOztFMkU5NVVNO0lBT0k7SUFBQTtFM0U0NVVWOztFMkVuNlVNO0lBT0k7SUFBQTtFM0VpNlVWOztFMkV4NlVNO0lBT0k7SUFBQTtFM0VzNlVWOztFMkU3NlVNO0lBT0k7SUFBQTtFM0UyNlVWOztFMkVsN1VNO0lBT0k7SUFBQTtFM0VnN1VWOztFMkV2N1VNO0lBT0k7SUFBQTtFM0VxN1VWOztFMkU1N1VNO0lBT0k7RTNFeTdVVjs7RTJFaDhVTTtJQU9JO0UzRTY3VVY7O0UyRXA4VU07SUFPSTtFM0VpOFVWOztFMkV4OFVNO0lBT0k7RTNFcThVVjs7RTJFNThVTTtJQU9JO0UzRXk4VVY7O0UyRWg5VU07SUFPSTtFM0U2OFVWOztFMkVwOVVNO0lBT0k7RTNFaTlVVjs7RTJFeDlVTTtJQU9JO0UzRXE5VVY7O0UyRTU5VU07SUFPSTtFM0V5OVVWOztFMkVoK1VNO0lBT0k7RTNFNjlVVjs7RTJFcCtVTTtJQU9JO0UzRWkrVVY7O0UyRXgrVU07SUFPSTtFM0VxK1VWOztFMkU1K1VNO0lBT0k7RTNFeStVVjs7RTJFaC9VTTtJQU9JO0UzRTYrVVY7O0UyRXAvVU07SUFPSTtFM0VpL1VWOztFMkV4L1VNO0lBT0k7RTNFcS9VVjs7RTJFNS9VTTtJQU9JO0UzRXkvVVY7O0UyRWhnVk07SUFPSTtFM0U2L1VWOztFMkVwZ1ZNO0lBT0k7RTNFaWdWVjs7RTJFeGdWTTtJQU9JO0UzRXFnVlY7O0UyRTVnVk07SUFPSTtFM0V5Z1ZWOztFMkVoaFZNO0lBT0k7RTNFNmdWVjs7RTJFcGhWTTtJQU9JO0UzRWloVlY7O0UyRXhoVk07SUFPSTtFM0VxaFZWOztFMkU1aFZNO0lBT0k7RTNFeWhWVjs7RTJFaGlWTTtJQU9JO0UzRTZoVlY7O0UyRXBpVk07SUFPSTtFM0VpaVZWOztFMkV4aVZNO0lBT0k7RTNFcWlWVjs7RTJFNWlWTTtJQU9JO0UzRXlpVlY7O0UyRWhqVk07SUFPSTtFM0U2aVZWOztFMkVwalZNO0lBT0k7RTNFaWpWVjs7RTJFeGpWTTtJQU9JO0UzRXFqVlY7O0UyRTVqVk07SUFPSTtFM0V5alZWOztFMkVoa1ZNO0lBT0k7RTNFNmpWVjs7RTJFcGtWTTtJQU9JO0UzRWlrVlY7O0UyRXhrVk07SUFPSTtFM0Vxa1ZWOztFMkU1a1ZNO0lBT0k7U0FBQTtFM0V5a1ZWOztFMkVobFZNO0lBT0k7U0FBQTtFM0U2a1ZWOztFMkVwbFZNO0lBT0k7U0FBQTtFM0VpbFZWOztFMkV4bFZNO0lBT0k7U0FBQTtFM0VxbFZWOztFMkU1bFZNO0lBT0k7U0FBQTtFM0V5bFZWOztFMkVobVZNO0lBT0k7U0FBQTtFM0U2bFZWOztFMkVwbVZNO0lBT0k7RTNFaW1WVjs7RTJFeG1WTTtJQU9JO0UzRXFtVlY7O0UyRTVtVk07SUFPSTtFM0V5bVZWO0FBQ0Y7O0FpQnBuVkk7RTBER0k7SUFPSTtFM0UrbVZWOztFMkV0blZNO0lBT0k7RTNFbW5WVjs7RTJFMW5WTTtJQU9JO0UzRXVuVlY7O0UyRTluVk07SUFPSTtPQUFBO0UzRTJuVlY7O0UyRWxvVk07SUFPSTtPQUFBO0UzRStuVlY7O0UyRXRvVk07SUFPSTtPQUFBO0UzRW1vVlY7O0UyRTFvVk07SUFPSTtPQUFBO0UzRXVvVlY7O0UyRTlvVk07SUFPSTtPQUFBO0UzRTJvVlY7O0UyRWxwVk07SUFPSTtFM0Urb1ZWOztFMkV0cFZNO0lBT0k7RTNFbXBWVjs7RTJFMXBWTTtJQU9JO0UzRXVwVlY7O0UyRTlwVk07SUFPSTtFM0UycFZWOztFMkVscVZNO0lBT0k7RTNFK3BWVjs7RTJFdHFWTTtJQU9JO0UzRW1xVlY7O0UyRTFxVk07SUFPSTtFM0V1cVZWOztFMkU5cVZNO0lBT0k7RTNFMnFWVjs7RTJFbHJWTTtJQU9JO0UzRStxVlY7O0UyRXRyVk07SUFPSTtFM0VtclZWOztFMkUxclZNO0lBT0k7RTNFdXJWVjs7RTJFOXJWTTtJQU9JO0UzRTJyVlY7O0UyRWxzVk07SUFPSTtFM0UrclZWOztFMkV0c1ZNO0lBT0k7RTNFbXNWVjs7RTJFMXNWTTtJQU9JO0UzRXVzVlY7O0UyRTlzVk07SUFPSTtFM0Uyc1ZWOztFMkVsdFZNO0lBT0k7RTNFK3NWVjs7RTJFdHRWTTtJQU9JO0UzRW10VlY7O0UyRTF0Vk07SUFPSTtFM0V1dFZWOztFMkU5dFZNO0lBT0k7RTNFMnRWVjs7RTJFbHVWTTtJQU9JO0UzRSt0VlY7O0UyRXR1Vk07SUFPSTtFM0VtdVZWOztFMkUxdVZNO0lBT0k7RTNFdXVWVjs7RTJFOXVWTTtJQU9JO0UzRTJ1VlY7O0UyRWx2Vk07SUFPSTtFM0UrdVZWOztFMkV0dlZNO0lBT0k7RTNFbXZWVjs7RTJFMXZWTTtJQU9JO0UzRXV2VlY7O0UyRTl2Vk07SUFPSTtFM0UydlZWOztFMkVsd1ZNO0lBT0k7RTNFK3ZWVjs7RTJFdHdWTTtJQU9JO0UzRW13VlY7O0UyRTF3Vk07SUFPSTtFM0V1d1ZWOztFMkU5d1ZNO0lBT0k7RTNFMndWVjs7RTJFbHhWTTtJQU9JO0UzRSt3VlY7O0UyRXR4Vk07SUFPSTtFM0VteFZWOztFMkUxeFZNO0lBT0k7RTNFdXhWVjs7RTJFOXhWTTtJQU9JO0UzRTJ4VlY7O0UyRWx5Vk07SUFPSTtFM0UreFZWOztFMkV0eVZNO0lBT0k7RTNFbXlWVjs7RTJFMXlWTTtJQU9JO0UzRXV5VlY7O0UyRTl5Vk07SUFPSTtFM0UyeVZWOztFMkVselZNO0lBT0k7RTNFK3lWVjs7RTJFdHpWTTtJQU9JO0UzRW16VlY7O0UyRTF6Vk07SUFPSTtFM0V1elZWOztFMkU5elZNO0lBT0k7RTNFMnpWVjs7RTJFbDBWTTtJQU9JO0UzRSt6VlY7O0UyRXQwVk07SUFPSTtFM0VtMFZWOztFMkUxMFZNO0lBT0k7RTNFdTBWVjs7RTJFOTBWTTtJQU9JO0UzRTIwVlY7O0UyRWwxVk07SUFPSTtFM0UrMFZWOztFMkV0MVZNO0lBT0k7RTNFbTFWVjs7RTJFMTFWTTtJQU9JO0UzRXUxVlY7O0UyRTkxVk07SUFPSTtFM0UyMVZWOztFMkVsMlZNO0lBT0k7RTNFKzFWVjs7RTJFdDJWTTtJQU9JO0UzRW0yVlY7O0UyRTEyVk07SUFPSTtFM0V1MlZWOztFMkU5MlZNO0lBT0k7RTNFMjJWVjs7RTJFbDNWTTtJQU9JO0UzRSsyVlY7O0UyRXQzVk07SUFPSTtFM0VtM1ZWOztFMkUxM1ZNO0lBT0k7RTNFdTNWVjs7RTJFOTNWTTtJQU9JO0UzRTIzVlY7O0UyRWw0Vk07SUFPSTtFM0UrM1ZWOztFMkV0NFZNO0lBT0k7SUFBQTtFM0VvNFZWOztFMkUzNFZNO0lBT0k7SUFBQTtFM0V5NFZWOztFMkVoNVZNO0lBT0k7SUFBQTtFM0U4NFZWOztFMkVyNVZNO0lBT0k7SUFBQTtFM0VtNVZWOztFMkUxNVZNO0lBT0k7SUFBQTtFM0V3NVZWOztFMkUvNVZNO0lBT0k7SUFBQTtFM0U2NVZWOztFMkVwNlZNO0lBT0k7SUFBQTtFM0VrNlZWOztFMkV6NlZNO0lBT0k7SUFBQTtFM0V1NlZWOztFMkU5NlZNO0lBT0k7SUFBQTtFM0U0NlZWOztFMkVuN1ZNO0lBT0k7SUFBQTtFM0VpN1ZWOztFMkV4N1ZNO0lBT0k7SUFBQTtFM0VzN1ZWOztFMkU3N1ZNO0lBT0k7SUFBQTtFM0UyN1ZWOztFMkVsOFZNO0lBT0k7SUFBQTtFM0VnOFZWOztFMkV2OFZNO0lBT0k7SUFBQTtFM0VxOFZWOztFMkU1OFZNO0lBT0k7RTNFeThWVjs7RTJFaDlWTTtJQU9JO0UzRTY4VlY7O0UyRXA5Vk07SUFPSTtFM0VpOVZWOztFMkV4OVZNO0lBT0k7RTNFcTlWVjs7RTJFNTlWTTtJQU9JO0UzRXk5VlY7O0UyRWgrVk07SUFPSTtFM0U2OVZWOztFMkVwK1ZNO0lBT0k7RTNFaStWVjs7RTJFeCtWTTtJQU9JO0UzRXErVlY7O0UyRTUrVk07SUFPSTtFM0V5K1ZWOztFMkVoL1ZNO0lBT0k7RTNFNitWVjs7RTJFcC9WTTtJQU9JO0UzRWkvVlY7O0UyRXgvVk07SUFPSTtFM0VxL1ZWOztFMkU1L1ZNO0lBT0k7RTNFeS9WVjs7RTJFaGdXTTtJQU9JO0UzRTYvVlY7O0UyRXBnV007SUFPSTtFM0VpZ1dWOztFMkV4Z1dNO0lBT0k7RTNFcWdXVjs7RTJFNWdXTTtJQU9JO0UzRXlnV1Y7O0UyRWhoV007SUFPSTtFM0U2Z1dWOztFMkVwaFdNO0lBT0k7RTNFaWhXVjs7RTJFeGhXTTtJQU9JO0UzRXFoV1Y7O0UyRTVoV007SUFPSTtFM0V5aFdWOztFMkVoaVdNO0lBT0k7RTNFNmhXVjs7RTJFcGlXTTtJQU9JO0UzRWlpV1Y7O0UyRXhpV007SUFPSTtFM0VxaVdWOztFMkU1aVdNO0lBT0k7RTNFeWlXVjs7RTJFaGpXTTtJQU9JO0UzRTZpV1Y7O0UyRXBqV007SUFPSTtFM0VpaldWOztFMkV4aldNO0lBT0k7RTNFcWpXVjs7RTJFNWpXTTtJQU9JO0UzRXlqV1Y7O0UyRWhrV007SUFPSTtFM0U2aldWOztFMkVwa1dNO0lBT0k7RTNFaWtXVjs7RTJFeGtXTTtJQU9JO0UzRXFrV1Y7O0UyRTVrV007SUFPSTtFM0V5a1dWOztFMkVobFdNO0lBT0k7RTNFNmtXVjs7RTJFcGxXTTtJQU9JO0lBQUE7RTNFa2xXVjs7RTJFemxXTTtJQU9JO0lBQUE7RTNFdWxXVjs7RTJFOWxXTTtJQU9JO0lBQUE7RTNFNGxXVjs7RTJFbm1XTTtJQU9JO0lBQUE7RTNFaW1XVjs7RTJFeG1XTTtJQU9JO0lBQUE7RTNFc21XVjs7RTJFN21XTTtJQU9JO0lBQUE7RTNFMm1XVjs7RTJFbG5XTTtJQU9JO0lBQUE7RTNFZ25XVjs7RTJFdm5XTTtJQU9JO0lBQUE7RTNFcW5XVjs7RTJFNW5XTTtJQU9JO0lBQUE7RTNFMG5XVjs7RTJFam9XTTtJQU9JO0lBQUE7RTNFK25XVjs7RTJFdG9XTTtJQU9JO0lBQUE7RTNFb29XVjs7RTJFM29XTTtJQU9JO0lBQUE7RTNFeW9XVjs7RTJFaHBXTTtJQU9JO0UzRTZvV1Y7O0UyRXBwV007SUFPSTtFM0VpcFdWOztFMkV4cFdNO0lBT0k7RTNFcXBXVjs7RTJFNXBXTTtJQU9JO0UzRXlwV1Y7O0UyRWhxV007SUFPSTtFM0U2cFdWOztFMkVwcVdNO0lBT0k7RTNFaXFXVjs7RTJFeHFXTTtJQU9JO0UzRXFxV1Y7O0UyRTVxV007SUFPSTtFM0V5cVdWOztFMkVocldNO0lBT0k7RTNFNnFXVjs7RTJFcHJXTTtJQU9JO0UzRWlyV1Y7O0UyRXhyV007SUFPSTtFM0VxcldWOztFMkU1cldNO0lBT0k7RTNFeXJXVjs7RTJFaHNXTTtJQU9JO0UzRTZyV1Y7O0UyRXBzV007SUFPSTtFM0Vpc1dWOztFMkV4c1dNO0lBT0k7RTNFcXNXVjs7RTJFNXNXTTtJQU9JO0UzRXlzV1Y7O0UyRWh0V007SUFPSTtFM0U2c1dWOztFMkVwdFdNO0lBT0k7RTNFaXRXVjs7RTJFeHRXTTtJQU9JO0UzRXF0V1Y7O0UyRTV0V007SUFPSTtFM0V5dFdWOztFMkVodVdNO0lBT0k7RTNFNnRXVjs7RTJFcHVXTTtJQU9JO0UzRWl1V1Y7O0UyRXh1V007SUFPSTtFM0VxdVdWOztFMkU1dVdNO0lBT0k7RTNFeXVXVjs7RTJFaHZXTTtJQU9JO0UzRTZ1V1Y7O0UyRXB2V007SUFPSTtFM0VpdldWOztFMkV4dldNO0lBT0k7RTNFcXZXVjs7RTJFNXZXTTtJQU9JO0UzRXl2V1Y7O0UyRWh3V007SUFPSTtFM0U2dldWOztFMkVwd1dNO0lBT0k7RTNFaXdXVjs7RTJFeHdXTTtJQU9JO0UzRXF3V1Y7O0UyRTV3V007SUFPSTtFM0V5d1dWOztFMkVoeFdNO0lBT0k7RTNFNndXVjs7RTJFcHhXTTtJQU9JO0UzRWl4V1Y7O0UyRXh4V007SUFPSTtFM0VxeFdWOztFMkU1eFdNO0lBT0k7RTNFeXhXVjs7RTJFaHlXTTtJQU9JO1NBQUE7RTNFNnhXVjs7RTJFcHlXTTtJQU9JO1NBQUE7RTNFaXlXVjs7RTJFeHlXTTtJQU9JO1NBQUE7RTNFcXlXVjs7RTJFNXlXTTtJQU9JO1NBQUE7RTNFeXlXVjs7RTJFaHpXTTtJQU9JO1NBQUE7RTNFNnlXVjs7RTJFcHpXTTtJQU9JO1NBQUE7RTNFaXpXVjs7RTJFeHpXTTtJQU9JO0UzRXF6V1Y7O0UyRTV6V007SUFPSTtFM0V5eldWOztFMkVoMFdNO0lBT0k7RTNFNnpXVjtBQUNGOztBaUJ4MFdJO0UwREdJO0lBT0k7RTNFbTBXVjs7RTJFMTBXTTtJQU9JO0UzRXUwV1Y7O0UyRTkwV007SUFPSTtFM0UyMFdWOztFMkVsMVdNO0lBT0k7T0FBQTtFM0UrMFdWOztFMkV0MVdNO0lBT0k7T0FBQTtFM0VtMVdWOztFMkUxMVdNO0lBT0k7T0FBQTtFM0V1MVdWOztFMkU5MVdNO0lBT0k7T0FBQTtFM0UyMVdWOztFMkVsMldNO0lBT0k7T0FBQTtFM0UrMVdWOztFMkV0MldNO0lBT0k7RTNFbTJXVjs7RTJFMTJXTTtJQU9JO0UzRXUyV1Y7O0UyRTkyV007SUFPSTtFM0UyMldWOztFMkVsM1dNO0lBT0k7RTNFKzJXVjs7RTJFdDNXTTtJQU9JO0UzRW0zV1Y7O0UyRTEzV007SUFPSTtFM0V1M1dWOztFMkU5M1dNO0lBT0k7RTNFMjNXVjs7RTJFbDRXTTtJQU9JO0UzRSszV1Y7O0UyRXQ0V007SUFPSTtFM0VtNFdWOztFMkUxNFdNO0lBT0k7RTNFdTRXVjs7RTJFOTRXTTtJQU9JO0UzRTI0V1Y7O0UyRWw1V007SUFPSTtFM0UrNFdWOztFMkV0NVdNO0lBT0k7RTNFbTVXVjs7RTJFMTVXTTtJQU9JO0UzRXU1V1Y7O0UyRTk1V007SUFPSTtFM0UyNVdWOztFMkVsNldNO0lBT0k7RTNFKzVXVjs7RTJFdDZXTTtJQU9JO0UzRW02V1Y7O0UyRTE2V007SUFPSTtFM0V1NldWOztFMkU5NldNO0lBT0k7RTNFMjZXVjs7RTJFbDdXTTtJQU9JO0UzRSs2V1Y7O0UyRXQ3V007SUFPSTtFM0VtN1dWOztFMkUxN1dNO0lBT0k7RTNFdTdXVjs7RTJFOTdXTTtJQU9JO0UzRTI3V1Y7O0UyRWw4V007SUFPSTtFM0UrN1dWOztFMkV0OFdNO0lBT0k7RTNFbThXVjs7RTJFMThXTTtJQU9JO0UzRXU4V1Y7O0UyRTk4V007SUFPSTtFM0UyOFdWOztFMkVsOVdNO0lBT0k7RTNFKzhXVjs7RTJFdDlXTTtJQU9JO0UzRW05V1Y7O0UyRTE5V007SUFPSTtFM0V1OVdWOztFMkU5OVdNO0lBT0k7RTNFMjlXVjs7RTJFbCtXTTtJQU9JO0UzRSs5V1Y7O0UyRXQrV007SUFPSTtFM0VtK1dWOztFMkUxK1dNO0lBT0k7RTNFdStXVjs7RTJFOStXTTtJQU9JO0UzRTIrV1Y7O0UyRWwvV007SUFPSTtFM0UrK1dWOztFMkV0L1dNO0lBT0k7RTNFbS9XVjs7RTJFMS9XTTtJQU9JO0UzRXUvV1Y7O0UyRTkvV007SUFPSTtFM0UyL1dWOztFMkVsZ1hNO0lBT0k7RTNFKy9XVjs7RTJFdGdYTTtJQU9JO0UzRW1nWFY7O0UyRTFnWE07SUFPSTtFM0V1Z1hWOztFMkU5Z1hNO0lBT0k7RTNFMmdYVjs7RTJFbGhYTTtJQU9JO0UzRStnWFY7O0UyRXRoWE07SUFPSTtFM0VtaFhWOztFMkUxaFhNO0lBT0k7RTNFdWhYVjs7RTJFOWhYTTtJQU9JO0UzRTJoWFY7O0UyRWxpWE07SUFPSTtFM0UraFhWOztFMkV0aVhNO0lBT0k7RTNFbWlYVjs7RTJFMWlYTTtJQU9JO0UzRXVpWFY7O0UyRTlpWE07SUFPSTtFM0UyaVhWOztFMkVsalhNO0lBT0k7RTNFK2lYVjs7RTJFdGpYTTtJQU9JO0UzRW1qWFY7O0UyRTFqWE07SUFPSTtFM0V1alhWOztFMkU5alhNO0lBT0k7RTNFMmpYVjs7RTJFbGtYTTtJQU9JO0UzRStqWFY7O0UyRXRrWE07SUFPSTtFM0Vta1hWOztFMkUxa1hNO0lBT0k7RTNFdWtYVjs7RTJFOWtYTTtJQU9JO0UzRTJrWFY7O0UyRWxsWE07SUFPSTtFM0Ura1hWOztFMkV0bFhNO0lBT0k7RTNFbWxYVjs7RTJFMWxYTTtJQU9JO0lBQUE7RTNFd2xYVjs7RTJFL2xYTTtJQU9JO0lBQUE7RTNFNmxYVjs7RTJFcG1YTTtJQU9JO0lBQUE7RTNFa21YVjs7RTJFem1YTTtJQU9JO0lBQUE7RTNFdW1YVjs7RTJFOW1YTTtJQU9JO0lBQUE7RTNFNG1YVjs7RTJFbm5YTTtJQU9JO0lBQUE7RTNFaW5YVjs7RTJFeG5YTTtJQU9JO0lBQUE7RTNFc25YVjs7RTJFN25YTTtJQU9JO0lBQUE7RTNFMm5YVjs7RTJFbG9YTTtJQU9JO0lBQUE7RTNFZ29YVjs7RTJFdm9YTTtJQU9JO0lBQUE7RTNFcW9YVjs7RTJFNW9YTTtJQU9JO0lBQUE7RTNFMG9YVjs7RTJFanBYTTtJQU9JO0lBQUE7RTNFK29YVjs7RTJFdHBYTTtJQU9JO0lBQUE7RTNFb3BYVjs7RTJFM3BYTTtJQU9JO0lBQUE7RTNFeXBYVjs7RTJFaHFYTTtJQU9JO0UzRTZwWFY7O0UyRXBxWE07SUFPSTtFM0VpcVhWOztFMkV4cVhNO0lBT0k7RTNFcXFYVjs7RTJFNXFYTTtJQU9JO0UzRXlxWFY7O0UyRWhyWE07SUFPSTtFM0U2cVhWOztFMkVwclhNO0lBT0k7RTNFaXJYVjs7RTJFeHJYTTtJQU9JO0UzRXFyWFY7O0UyRTVyWE07SUFPSTtFM0V5clhWOztFMkVoc1hNO0lBT0k7RTNFNnJYVjs7RTJFcHNYTTtJQU9JO0UzRWlzWFY7O0UyRXhzWE07SUFPSTtFM0Vxc1hWOztFMkU1c1hNO0lBT0k7RTNFeXNYVjs7RTJFaHRYTTtJQU9JO0UzRTZzWFY7O0UyRXB0WE07SUFPSTtFM0VpdFhWOztFMkV4dFhNO0lBT0k7RTNFcXRYVjs7RTJFNXRYTTtJQU9JO0UzRXl0WFY7O0UyRWh1WE07SUFPSTtFM0U2dFhWOztFMkVwdVhNO0lBT0k7RTNFaXVYVjs7RTJFeHVYTTtJQU9JO0UzRXF1WFY7O0UyRTV1WE07SUFPSTtFM0V5dVhWOztFMkVodlhNO0lBT0k7RTNFNnVYVjs7RTJFcHZYTTtJQU9JO0UzRWl2WFY7O0UyRXh2WE07SUFPSTtFM0VxdlhWOztFMkU1dlhNO0lBT0k7RTNFeXZYVjs7RTJFaHdYTTtJQU9JO0UzRTZ2WFY7O0UyRXB3WE07SUFPSTtFM0Vpd1hWOztFMkV4d1hNO0lBT0k7RTNFcXdYVjs7RTJFNXdYTTtJQU9JO0UzRXl3WFY7O0UyRWh4WE07SUFPSTtFM0U2d1hWOztFMkVweFhNO0lBT0k7RTNFaXhYVjs7RTJFeHhYTTtJQU9JO0UzRXF4WFY7O0UyRTV4WE07SUFPSTtFM0V5eFhWOztFMkVoeVhNO0lBT0k7RTNFNnhYVjs7RTJFcHlYTTtJQU9JO0UzRWl5WFY7O0UyRXh5WE07SUFPSTtJQUFBO0UzRXN5WFY7O0UyRTd5WE07SUFPSTtJQUFBO0UzRTJ5WFY7O0UyRWx6WE07SUFPSTtJQUFBO0UzRWd6WFY7O0UyRXZ6WE07SUFPSTtJQUFBO0UzRXF6WFY7O0UyRTV6WE07SUFPSTtJQUFBO0UzRTB6WFY7O0UyRWowWE07SUFPSTtJQUFBO0UzRSt6WFY7O0UyRXQwWE07SUFPSTtJQUFBO0UzRW8wWFY7O0UyRTMwWE07SUFPSTtJQUFBO0UzRXkwWFY7O0UyRWgxWE07SUFPSTtJQUFBO0UzRTgwWFY7O0UyRXIxWE07SUFPSTtJQUFBO0UzRW0xWFY7O0UyRTExWE07SUFPSTtJQUFBO0UzRXcxWFY7O0UyRS8xWE07SUFPSTtJQUFBO0UzRTYxWFY7O0UyRXAyWE07SUFPSTtFM0VpMlhWOztFMkV4MlhNO0lBT0k7RTNFcTJYVjs7RTJFNTJYTTtJQU9JO0UzRXkyWFY7O0UyRWgzWE07SUFPSTtFM0U2MlhWOztFMkVwM1hNO0lBT0k7RTNFaTNYVjs7RTJFeDNYTTtJQU9JO0UzRXEzWFY7O0UyRTUzWE07SUFPSTtFM0V5M1hWOztFMkVoNFhNO0lBT0k7RTNFNjNYVjs7RTJFcDRYTTtJQU9JO0UzRWk0WFY7O0UyRXg0WE07SUFPSTtFM0VxNFhWOztFMkU1NFhNO0lBT0k7RTNFeTRYVjs7RTJFaDVYTTtJQU9JO0UzRTY0WFY7O0UyRXA1WE07SUFPSTtFM0VpNVhWOztFMkV4NVhNO0lBT0k7RTNFcTVYVjs7RTJFNTVYTTtJQU9JO0UzRXk1WFY7O0UyRWg2WE07SUFPSTtFM0U2NVhWOztFMkVwNlhNO0lBT0k7RTNFaTZYVjs7RTJFeDZYTTtJQU9JO0UzRXE2WFY7O0UyRTU2WE07SUFPSTtFM0V5NlhWOztFMkVoN1hNO0lBT0k7RTNFNjZYVjs7RTJFcDdYTTtJQU9JO0UzRWk3WFY7O0UyRXg3WE07SUFPSTtFM0VxN1hWOztFMkU1N1hNO0lBT0k7RTNFeTdYVjs7RTJFaDhYTTtJQU9JO0UzRTY3WFY7O0UyRXA4WE07SUFPSTtFM0VpOFhWOztFMkV4OFhNO0lBT0k7RTNFcThYVjs7RTJFNThYTTtJQU9JO0UzRXk4WFY7O0UyRWg5WE07SUFPSTtFM0U2OFhWOztFMkVwOVhNO0lBT0k7RTNFaTlYVjs7RTJFeDlYTTtJQU9JO0UzRXE5WFY7O0UyRTU5WE07SUFPSTtFM0V5OVhWOztFMkVoK1hNO0lBT0k7RTNFNjlYVjs7RTJFcCtYTTtJQU9JO0UzRWkrWFY7O0UyRXgrWE07SUFPSTtFM0VxK1hWOztFMkU1K1hNO0lBT0k7RTNFeStYVjs7RTJFaC9YTTtJQU9JO0UzRTYrWFY7O0UyRXAvWE07SUFPSTtTQUFBO0UzRWkvWFY7O0UyRXgvWE07SUFPSTtTQUFBO0UzRXEvWFY7O0UyRTUvWE07SUFPSTtTQUFBO0UzRXkvWFY7O0UyRWhnWU07SUFPSTtTQUFBO0UzRTYvWFY7O0UyRXBnWU07SUFPSTtTQUFBO0UzRWlnWVY7O0UyRXhnWU07SUFPSTtTQUFBO0UzRXFnWVY7O0UyRTVnWU07SUFPSTtFM0V5Z1lWOztFMkVoaFlNO0lBT0k7RTNFNmdZVjs7RTJFcGhZTTtJQU9JO0UzRWloWVY7QUFDRjs7QWlCNWhZSTtFMERHSTtJQU9JO0UzRXVoWVY7O0UyRTloWU07SUFPSTtFM0UyaFlWOztFMkVsaVlNO0lBT0k7RTNFK2hZVjs7RTJFdGlZTTtJQU9JO09BQUE7RTNFbWlZVjs7RTJFMWlZTTtJQU9JO09BQUE7RTNFdWlZVjs7RTJFOWlZTTtJQU9JO09BQUE7RTNFMmlZVjs7RTJFbGpZTTtJQU9JO09BQUE7RTNFK2lZVjs7RTJFdGpZTTtJQU9JO09BQUE7RTNFbWpZVjs7RTJFMWpZTTtJQU9JO0UzRXVqWVY7O0UyRTlqWU07SUFPSTtFM0UyallWOztFMkVsa1lNO0lBT0k7RTNFK2pZVjs7RTJFdGtZTTtJQU9JO0UzRW1rWVY7O0UyRTFrWU07SUFPSTtFM0V1a1lWOztFMkU5a1lNO0lBT0k7RTNFMmtZVjs7RTJFbGxZTTtJQU9JO0UzRStrWVY7O0UyRXRsWU07SUFPSTtFM0VtbFlWOztFMkUxbFlNO0lBT0k7RTNFdWxZVjs7RTJFOWxZTTtJQU9JO0UzRTJsWVY7O0UyRWxtWU07SUFPSTtFM0UrbFlWOztFMkV0bVlNO0lBT0k7RTNFbW1ZVjs7RTJFMW1ZTTtJQU9JO0UzRXVtWVY7O0UyRTltWU07SUFPSTtFM0UybVlWOztFMkVsbllNO0lBT0k7RTNFK21ZVjs7RTJFdG5ZTTtJQU9JO0UzRW1uWVY7O0UyRTFuWU07SUFPSTtFM0V1bllWOztFMkU5bllNO0lBT0k7RTNFMm5ZVjs7RTJFbG9ZTTtJQU9JO0UzRStuWVY7O0UyRXRvWU07SUFPSTtFM0Vtb1lWOztFMkUxb1lNO0lBT0k7RTNFdW9ZVjs7RTJFOW9ZTTtJQU9JO0UzRTJvWVY7O0UyRWxwWU07SUFPSTtFM0Urb1lWOztFMkV0cFlNO0lBT0k7RTNFbXBZVjs7RTJFMXBZTTtJQU9JO0UzRXVwWVY7O0UyRTlwWU07SUFPSTtFM0UycFlWOztFMkVscVlNO0lBT0k7RTNFK3BZVjs7RTJFdHFZTTtJQU9JO0UzRW1xWVY7O0UyRTFxWU07SUFPSTtFM0V1cVlWOztFMkU5cVlNO0lBT0k7RTNFMnFZVjs7RTJFbHJZTTtJQU9JO0UzRStxWVY7O0UyRXRyWU07SUFPSTtFM0VtcllWOztFMkUxcllNO0lBT0k7RTNFdXJZVjs7RTJFOXJZTTtJQU9JO0UzRTJyWVY7O0UyRWxzWU07SUFPSTtFM0UrcllWOztFMkV0c1lNO0lBT0k7RTNFbXNZVjs7RTJFMXNZTTtJQU9JO0UzRXVzWVY7O0UyRTlzWU07SUFPSTtFM0Uyc1lWOztFMkVsdFlNO0lBT0k7RTNFK3NZVjs7RTJFdHRZTTtJQU9JO0UzRW10WVY7O0UyRTF0WU07SUFPSTtFM0V1dFlWOztFMkU5dFlNO0lBT0k7RTNFMnRZVjs7RTJFbHVZTTtJQU9JO0UzRSt0WVY7O0UyRXR1WU07SUFPSTtFM0VtdVlWOztFMkUxdVlNO0lBT0k7RTNFdXVZVjs7RTJFOXVZTTtJQU9JO0UzRTJ1WVY7O0UyRWx2WU07SUFPSTtFM0UrdVlWOztFMkV0dllNO0lBT0k7RTNFbXZZVjs7RTJFMXZZTTtJQU9JO0UzRXV2WVY7O0UyRTl2WU07SUFPSTtFM0UydllWOztFMkVsd1lNO0lBT0k7RTNFK3ZZVjs7RTJFdHdZTTtJQU9JO0UzRW13WVY7O0UyRTF3WU07SUFPSTtFM0V1d1lWOztFMkU5d1lNO0lBT0k7RTNFMndZVjs7RTJFbHhZTTtJQU9JO0UzRSt3WVY7O0UyRXR4WU07SUFPSTtFM0VteFlWOztFMkUxeFlNO0lBT0k7RTNFdXhZVjs7RTJFOXhZTTtJQU9JO0UzRTJ4WVY7O0UyRWx5WU07SUFPSTtFM0UreFlWOztFMkV0eVlNO0lBT0k7RTNFbXlZVjs7RTJFMXlZTTtJQU9JO0UzRXV5WVY7O0UyRTl5WU07SUFPSTtJQUFBO0UzRTR5WVY7O0UyRW56WU07SUFPSTtJQUFBO0UzRWl6WVY7O0UyRXh6WU07SUFPSTtJQUFBO0UzRXN6WVY7O0UyRTd6WU07SUFPSTtJQUFBO0UzRTJ6WVY7O0UyRWwwWU07SUFPSTtJQUFBO0UzRWcwWVY7O0UyRXYwWU07SUFPSTtJQUFBO0UzRXEwWVY7O0UyRTUwWU07SUFPSTtJQUFBO0UzRTAwWVY7O0UyRWoxWU07SUFPSTtJQUFBO0UzRSswWVY7O0UyRXQxWU07SUFPSTtJQUFBO0UzRW8xWVY7O0UyRTMxWU07SUFPSTtJQUFBO0UzRXkxWVY7O0UyRWgyWU07SUFPSTtJQUFBO0UzRTgxWVY7O0UyRXIyWU07SUFPSTtJQUFBO0UzRW0yWVY7O0UyRTEyWU07SUFPSTtJQUFBO0UzRXcyWVY7O0UyRS8yWU07SUFPSTtJQUFBO0UzRTYyWVY7O0UyRXAzWU07SUFPSTtFM0VpM1lWOztFMkV4M1lNO0lBT0k7RTNFcTNZVjs7RTJFNTNZTTtJQU9JO0UzRXkzWVY7O0UyRWg0WU07SUFPSTtFM0U2M1lWOztFMkVwNFlNO0lBT0k7RTNFaTRZVjs7RTJFeDRZTTtJQU9JO0UzRXE0WVY7O0UyRTU0WU07SUFPSTtFM0V5NFlWOztFMkVoNVlNO0lBT0k7RTNFNjRZVjs7RTJFcDVZTTtJQU9JO0UzRWk1WVY7O0UyRXg1WU07SUFPSTtFM0VxNVlWOztFMkU1NVlNO0lBT0k7RTNFeTVZVjs7RTJFaDZZTTtJQU9JO0UzRTY1WVY7O0UyRXA2WU07SUFPSTtFM0VpNllWOztFMkV4NllNO0lBT0k7RTNFcTZZVjs7RTJFNTZZTTtJQU9JO0UzRXk2WVY7O0UyRWg3WU07SUFPSTtFM0U2NllWOztFMkVwN1lNO0lBT0k7RTNFaTdZVjs7RTJFeDdZTTtJQU9JO0UzRXE3WVY7O0UyRTU3WU07SUFPSTtFM0V5N1lWOztFMkVoOFlNO0lBT0k7RTNFNjdZVjs7RTJFcDhZTTtJQU9JO0UzRWk4WVY7O0UyRXg4WU07SUFPSTtFM0VxOFlWOztFMkU1OFlNO0lBT0k7RTNFeThZVjs7RTJFaDlZTTtJQU9JO0UzRTY4WVY7O0UyRXA5WU07SUFPSTtFM0VpOVlWOztFMkV4OVlNO0lBT0k7RTNFcTlZVjs7RTJFNTlZTTtJQU9JO0UzRXk5WVY7O0UyRWgrWU07SUFPSTtFM0U2OVlWOztFMkVwK1lNO0lBT0k7RTNFaStZVjs7RTJFeCtZTTtJQU9JO0UzRXErWVY7O0UyRTUrWU07SUFPSTtFM0V5K1lWOztFMkVoL1lNO0lBT0k7RTNFNitZVjs7RTJFcC9ZTTtJQU9JO0UzRWkvWVY7O0UyRXgvWU07SUFPSTtFM0VxL1lWOztFMkU1L1lNO0lBT0k7SUFBQTtFM0UwL1lWOztFMkVqZ1pNO0lBT0k7SUFBQTtFM0UrL1lWOztFMkV0Z1pNO0lBT0k7SUFBQTtFM0VvZ1pWOztFMkUzZ1pNO0lBT0k7SUFBQTtFM0V5Z1pWOztFMkVoaFpNO0lBT0k7SUFBQTtFM0U4Z1pWOztFMkVyaFpNO0lBT0k7SUFBQTtFM0VtaFpWOztFMkUxaFpNO0lBT0k7SUFBQTtFM0V3aFpWOztFMkUvaFpNO0lBT0k7SUFBQTtFM0U2aFpWOztFMkVwaVpNO0lBT0k7SUFBQTtFM0VraVpWOztFMkV6aVpNO0lBT0k7SUFBQTtFM0V1aVpWOztFMkU5aVpNO0lBT0k7SUFBQTtFM0U0aVpWOztFMkVualpNO0lBT0k7SUFBQTtFM0VpalpWOztFMkV4alpNO0lBT0k7RTNFcWpaVjs7RTJFNWpaTTtJQU9JO0UzRXlqWlY7O0UyRWhrWk07SUFPSTtFM0U2alpWOztFMkVwa1pNO0lBT0k7RTNFaWtaVjs7RTJFeGtaTTtJQU9JO0UzRXFrWlY7O0UyRTVrWk07SUFPSTtFM0V5a1pWOztFMkVobFpNO0lBT0k7RTNFNmtaVjs7RTJFcGxaTTtJQU9JO0UzRWlsWlY7O0UyRXhsWk07SUFPSTtFM0VxbFpWOztFMkU1bFpNO0lBT0k7RTNFeWxaVjs7RTJFaG1aTTtJQU9JO0UzRTZsWlY7O0UyRXBtWk07SUFPSTtFM0VpbVpWOztFMkV4bVpNO0lBT0k7RTNFcW1aVjs7RTJFNW1aTTtJQU9JO0UzRXltWlY7O0UyRWhuWk07SUFPSTtFM0U2bVpWOztFMkVwblpNO0lBT0k7RTNFaW5aVjs7RTJFeG5aTTtJQU9JO0UzRXFuWlY7O0UyRTVuWk07SUFPSTtFM0V5blpWOztFMkVob1pNO0lBT0k7RTNFNm5aVjs7RTJFcG9aTTtJQU9JO0UzRWlvWlY7O0UyRXhvWk07SUFPSTtFM0Vxb1pWOztFMkU1b1pNO0lBT0k7RTNFeW9aVjs7RTJFaHBaTTtJQU9JO0UzRTZvWlY7O0UyRXBwWk07SUFPSTtFM0VpcFpWOztFMkV4cFpNO0lBT0k7RTNFcXBaVjs7RTJFNXBaTTtJQU9JO0UzRXlwWlY7O0UyRWhxWk07SUFPSTtFM0U2cFpWOztFMkVwcVpNO0lBT0k7RTNFaXFaVjs7RTJFeHFaTTtJQU9JO0UzRXFxWlY7O0UyRTVxWk07SUFPSTtFM0V5cVpWOztFMkVoclpNO0lBT0k7RTNFNnFaVjs7RTJFcHJaTTtJQU9JO0UzRWlyWlY7O0UyRXhyWk07SUFPSTtFM0VxclpWOztFMkU1clpNO0lBT0k7RTNFeXJaVjs7RTJFaHNaTTtJQU9JO0UzRTZyWlY7O0UyRXBzWk07SUFPSTtFM0Vpc1pWOztFMkV4c1pNO0lBT0k7U0FBQTtFM0Vxc1pWOztFMkU1c1pNO0lBT0k7U0FBQTtFM0V5c1pWOztFMkVodFpNO0lBT0k7U0FBQTtFM0U2c1pWOztFMkVwdFpNO0lBT0k7U0FBQTtFM0VpdFpWOztFMkV4dFpNO0lBT0k7U0FBQTtFM0VxdFpWOztFMkU1dFpNO0lBT0k7U0FBQTtFM0V5dFpWOztFMkVodVpNO0lBT0k7RTNFNnRaVjs7RTJFcHVaTTtJQU9JO0UzRWl1WlY7O0UyRXh1Wk07SUFPSTtFM0VxdVpWO0FBQ0Y7O0FpQmh2Wkk7RTBER0k7SUFPSTtFM0UydVpWOztFMkVsdlpNO0lBT0k7RTNFK3VaVjs7RTJFdHZaTTtJQU9JO0UzRW12WlY7O0UyRTF2Wk07SUFPSTtPQUFBO0UzRXV2WlY7O0UyRTl2Wk07SUFPSTtPQUFBO0UzRTJ2WlY7O0UyRWx3Wk07SUFPSTtPQUFBO0UzRSt2WlY7O0UyRXR3Wk07SUFPSTtPQUFBO0UzRW13WlY7O0UyRTF3Wk07SUFPSTtPQUFBO0UzRXV3WlY7O0UyRTl3Wk07SUFPSTtFM0Uyd1pWOztFMkVseFpNO0lBT0k7RTNFK3daVjs7RTJFdHhaTTtJQU9JO0UzRW14WlY7O0UyRTF4Wk07SUFPSTtFM0V1eFpWOztFMkU5eFpNO0lBT0k7RTNFMnhaVjs7RTJFbHlaTTtJQU9JO0UzRSt4WlY7O0UyRXR5Wk07SUFPSTtFM0VteVpWOztFMkUxeVpNO0lBT0k7RTNFdXlaVjs7RTJFOXlaTTtJQU9JO0UzRTJ5WlY7O0UyRWx6Wk07SUFPSTtFM0UreVpWOztFMkV0elpNO0lBT0k7RTNFbXpaVjs7RTJFMXpaTTtJQU9JO0UzRXV6WlY7O0UyRTl6Wk07SUFPSTtFM0UyelpWOztFMkVsMFpNO0lBT0k7RTNFK3paVjs7RTJFdDBaTTtJQU9JO0UzRW0wWlY7O0UyRTEwWk07SUFPSTtFM0V1MFpWOztFMkU5MFpNO0lBT0k7RTNFMjBaVjs7RTJFbDFaTTtJQU9JO0UzRSswWlY7O0UyRXQxWk07SUFPSTtFM0VtMVpWOztFMkUxMVpNO0lBT0k7RTNFdTFaVjs7RTJFOTFaTTtJQU9JO0UzRTIxWlY7O0UyRWwyWk07SUFPSTtFM0UrMVpWOztFMkV0MlpNO0lBT0k7RTNFbTJaVjs7RTJFMTJaTTtJQU9JO0UzRXUyWlY7O0UyRTkyWk07SUFPSTtFM0UyMlpWOztFMkVsM1pNO0lBT0k7RTNFKzJaVjs7RTJFdDNaTTtJQU9JO0UzRW0zWlY7O0UyRTEzWk07SUFPSTtFM0V1M1pWOztFMkU5M1pNO0lBT0k7RTNFMjNaVjs7RTJFbDRaTTtJQU9JO0UzRSszWlY7O0UyRXQ0Wk07SUFPSTtFM0VtNFpWOztFMkUxNFpNO0lBT0k7RTNFdTRaVjs7RTJFOTRaTTtJQU9JO0UzRTI0WlY7O0UyRWw1Wk07SUFPSTtFM0UrNFpWOztFMkV0NVpNO0lBT0k7RTNFbTVaVjs7RTJFMTVaTTtJQU9JO0UzRXU1WlY7O0UyRTk1Wk07SUFPSTtFM0UyNVpWOztFMkVsNlpNO0lBT0k7RTNFKzVaVjs7RTJFdDZaTTtJQU9JO0UzRW02WlY7O0UyRTE2Wk07SUFPSTtFM0V1NlpWOztFMkU5NlpNO0lBT0k7RTNFMjZaVjs7RTJFbDdaTTtJQU9JO0UzRSs2WlY7O0UyRXQ3Wk07SUFPSTtFM0VtN1pWOztFMkUxN1pNO0lBT0k7RTNFdTdaVjs7RTJFOTdaTTtJQU9JO0UzRTI3WlY7O0UyRWw4Wk07SUFPSTtFM0UrN1pWOztFMkV0OFpNO0lBT0k7RTNFbThaVjs7RTJFMThaTTtJQU9JO0UzRXU4WlY7O0UyRTk4Wk07SUFPSTtFM0UyOFpWOztFMkVsOVpNO0lBT0k7RTNFKzhaVjs7RTJFdDlaTTtJQU9JO0UzRW05WlY7O0UyRTE5Wk07SUFPSTtFM0V1OVpWOztFMkU5OVpNO0lBT0k7RTNFMjlaVjs7RTJFbCtaTTtJQU9JO0UzRSs5WlY7O0UyRXQrWk07SUFPSTtFM0VtK1pWOztFMkUxK1pNO0lBT0k7RTNFdStaVjs7RTJFOStaTTtJQU9JO0UzRTIrWlY7O0UyRWwvWk07SUFPSTtFM0UrK1pWOztFMkV0L1pNO0lBT0k7RTNFbS9aVjs7RTJFMS9aTTtJQU9JO0UzRXUvWlY7O0UyRTkvWk07SUFPSTtFM0UyL1pWOztFMkVsZ2FNO0lBT0k7SUFBQTtFM0VnZ2FWOztFMkV2Z2FNO0lBT0k7SUFBQTtFM0VxZ2FWOztFMkU1Z2FNO0lBT0k7SUFBQTtFM0UwZ2FWOztFMkVqaGFNO0lBT0k7SUFBQTtFM0UrZ2FWOztFMkV0aGFNO0lBT0k7SUFBQTtFM0VvaGFWOztFMkUzaGFNO0lBT0k7SUFBQTtFM0V5aGFWOztFMkVoaWFNO0lBT0k7SUFBQTtFM0U4aGFWOztFMkVyaWFNO0lBT0k7SUFBQTtFM0VtaWFWOztFMkUxaWFNO0lBT0k7SUFBQTtFM0V3aWFWOztFMkUvaWFNO0lBT0k7SUFBQTtFM0U2aWFWOztFMkVwamFNO0lBT0k7SUFBQTtFM0VramFWOztFMkV6amFNO0lBT0k7SUFBQTtFM0V1amFWOztFMkU5amFNO0lBT0k7SUFBQTtFM0U0amFWOztFMkVua2FNO0lBT0k7SUFBQTtFM0Vpa2FWOztFMkV4a2FNO0lBT0k7RTNFcWthVjs7RTJFNWthTTtJQU9JO0UzRXlrYVY7O0UyRWhsYU07SUFPSTtFM0U2a2FWOztFMkVwbGFNO0lBT0k7RTNFaWxhVjs7RTJFeGxhTTtJQU9JO0UzRXFsYVY7O0UyRTVsYU07SUFPSTtFM0V5bGFWOztFMkVobWFNO0lBT0k7RTNFNmxhVjs7RTJFcG1hTTtJQU9JO0UzRWltYVY7O0UyRXhtYU07SUFPSTtFM0VxbWFWOztFMkU1bWFNO0lBT0k7RTNFeW1hVjs7RTJFaG5hTTtJQU9JO0UzRTZtYVY7O0UyRXBuYU07SUFPSTtFM0VpbmFWOztFMkV4bmFNO0lBT0k7RTNFcW5hVjs7RTJFNW5hTTtJQU9JO0UzRXluYVY7O0UyRWhvYU07SUFPSTtFM0U2bmFWOztFMkVwb2FNO0lBT0k7RTNFaW9hVjs7RTJFeG9hTTtJQU9JO0UzRXFvYVY7O0UyRTVvYU07SUFPSTtFM0V5b2FWOztFMkVocGFNO0lBT0k7RTNFNm9hVjs7RTJFcHBhTTtJQU9JO0UzRWlwYVY7O0UyRXhwYU07SUFPSTtFM0VxcGFWOztFMkU1cGFNO0lBT0k7RTNFeXBhVjs7RTJFaHFhTTtJQU9JO0UzRTZwYVY7O0UyRXBxYU07SUFPSTtFM0VpcWFWOztFMkV4cWFNO0lBT0k7RTNFcXFhVjs7RTJFNXFhTTtJQU9JO0UzRXlxYVY7O0UyRWhyYU07SUFPSTtFM0U2cWFWOztFMkVwcmFNO0lBT0k7RTNFaXJhVjs7RTJFeHJhTTtJQU9JO0UzRXFyYVY7O0UyRTVyYU07SUFPSTtFM0V5cmFWOztFMkVoc2FNO0lBT0k7RTNFNnJhVjs7RTJFcHNhTTtJQU9JO0UzRWlzYVY7O0UyRXhzYU07SUFPSTtFM0Vxc2FWOztFMkU1c2FNO0lBT0k7RTNFeXNhVjs7RTJFaHRhTTtJQU9JO0lBQUE7RTNFOHNhVjs7RTJFcnRhTTtJQU9JO0lBQUE7RTNFbXRhVjs7RTJFMXRhTTtJQU9JO0lBQUE7RTNFd3RhVjs7RTJFL3RhTTtJQU9JO0lBQUE7RTNFNnRhVjs7RTJFcHVhTTtJQU9JO0lBQUE7RTNFa3VhVjs7RTJFenVhTTtJQU9JO0lBQUE7RTNFdXVhVjs7RTJFOXVhTTtJQU9JO0lBQUE7RTNFNHVhVjs7RTJFbnZhTTtJQU9JO0lBQUE7RTNFaXZhVjs7RTJFeHZhTTtJQU9JO0lBQUE7RTNFc3ZhVjs7RTJFN3ZhTTtJQU9JO0lBQUE7RTNFMnZhVjs7RTJFbHdhTTtJQU9JO0lBQUE7RTNFZ3dhVjs7RTJFdndhTTtJQU9JO0lBQUE7RTNFcXdhVjs7RTJFNXdhTTtJQU9JO0UzRXl3YVY7O0UyRWh4YU07SUFPSTtFM0U2d2FWOztFMkVweGFNO0lBT0k7RTNFaXhhVjs7RTJFeHhhTTtJQU9JO0UzRXF4YVY7O0UyRTV4YU07SUFPSTtFM0V5eGFWOztFMkVoeWFNO0lBT0k7RTNFNnhhVjs7RTJFcHlhTTtJQU9JO0UzRWl5YVY7O0UyRXh5YU07SUFPSTtFM0VxeWFWOztFMkU1eWFNO0lBT0k7RTNFeXlhVjs7RTJFaHphTTtJQU9JO0UzRTZ5YVY7O0UyRXB6YU07SUFPSTtFM0VpemFWOztFMkV4emFNO0lBT0k7RTNFcXphVjs7RTJFNXphTTtJQU9JO0UzRXl6YVY7O0UyRWgwYU07SUFPSTtFM0U2emFWOztFMkVwMGFNO0lBT0k7RTNFaTBhVjs7RTJFeDBhTTtJQU9JO0UzRXEwYVY7O0UyRTUwYU07SUFPSTtFM0V5MGFWOztFMkVoMWFNO0lBT0k7RTNFNjBhVjs7RTJFcDFhTTtJQU9JO0UzRWkxYVY7O0UyRXgxYU07SUFPSTtFM0VxMWFWOztFMkU1MWFNO0lBT0k7RTNFeTFhVjs7RTJFaDJhTTtJQU9JO0UzRTYxYVY7O0UyRXAyYU07SUFPSTtFM0VpMmFWOztFMkV4MmFNO0lBT0k7RTNFcTJhVjs7RTJFNTJhTTtJQU9JO0UzRXkyYVY7O0UyRWgzYU07SUFPSTtFM0U2MmFWOztFMkVwM2FNO0lBT0k7RTNFaTNhVjs7RTJFeDNhTTtJQU9JO0UzRXEzYVY7O0UyRTUzYU07SUFPSTtFM0V5M2FWOztFMkVoNGFNO0lBT0k7RTNFNjNhVjs7RTJFcDRhTTtJQU9JO0UzRWk0YVY7O0UyRXg0YU07SUFPSTtFM0VxNGFWOztFMkU1NGFNO0lBT0k7RTNFeTRhVjs7RTJFaDVhTTtJQU9JO0UzRTY0YVY7O0UyRXA1YU07SUFPSTtFM0VpNWFWOztFMkV4NWFNO0lBT0k7RTNFcTVhVjs7RTJFNTVhTTtJQU9JO1NBQUE7RTNFeTVhVjs7RTJFaDZhTTtJQU9JO1NBQUE7RTNFNjVhVjs7RTJFcDZhTTtJQU9JO1NBQUE7RTNFaTZhVjs7RTJFeDZhTTtJQU9JO1NBQUE7RTNFcTZhVjs7RTJFNTZhTTtJQU9JO1NBQUE7RTNFeTZhVjs7RTJFaDdhTTtJQU9JO1NBQUE7RTNFNjZhVjs7RTJFcDdhTTtJQU9JO0UzRWk3YVY7O0UyRXg3YU07SUFPSTtFM0VxN2FWOztFMkU1N2FNO0lBT0k7RTNFeTdhVjtBQUNGOztBNEVoL2FBO0VEK0NRO0lBT0k7RTNFKzdhVjs7RTJFdDhhTTtJQU9JO0UzRW04YVY7O0UyRTE4YU07SUFPSTtFM0V1OGFWOztFMkU5OGFNO0lBT0k7RTNFMjhhVjtBQUNGOztBNEUvK2FBO0VENEJRO0lBT0k7RTNFaTlhVjs7RTJFeDlhTTtJQU9JO0UzRXE5YVY7O0UyRTU5YU07SUFPSTtFM0V5OWFWOztFMkVoK2FNO0lBT0k7RTNFNjlhVjs7RTJFcCthTTtJQU9JO0UzRWkrYVY7O0UyRXgrYU07SUFPSTtFM0VxK2FWOztFMkU1K2FNO0lBT0k7RTNFeSthVjs7RTJFaC9hTTtJQU9JO0UzRTYrYVY7O0UyRXAvYU07SUFPSTtFM0VpL2FWOztFMkV4L2FNO0lBT0k7RTNFcS9hVjs7RTJFNS9hTTtJQU9JO0UzRXkvYVY7QUFDRjs7QTZFbmtiQTs7OztFN0V5a2JFOztBNkVqa2JGO0VBR0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0Vra2JGOztBNkVoa2JFO0VBQ0U7QTdFbWtiSjs7QTZFaGtiRTs7RUFFRTtFQUNBO0E3RW1rYko7O0E2RWhrYkU7O0VBRUU7RUFDQTtBN0Vta2JKOztBNkVoa2JFOztFQUVFO0E3RW1rYko7O0E2RTlqYkE7RTNDcEJFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDc2xiRjs7QTZFM2tiRTtFQUNFO0VBQ0E7QTdFOGtiSjs7QTZFM2tiRTs7O0VBR0U7RUFDQTtBN0U4a2JKOztBNkUza2JFOztFQUVFO0VBQ0E7QTdFOGtiSjs7QTZFMWtiQTtFM0MzQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEN5bmJGOztBNkV2bGJBO0UzQy9DRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQzBvYkY7O0E2RXBtYkE7RTNDbkRFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDMnBiRjs7QTZFam5iQTtFM0N2REU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEM0cWJGOztBNkU5bmJBO0UzQzNERTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQzZyYkY7O0E2RTNvYkE7RTNDL0RFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDOHNiRjs7QTZFeHBiQTtFM0NuRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEMrdGJGOztBNkVwcWJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTdFdXFiRjs7QTZFcnFiRTtFQUNFO0VBQ0E7RUFDQTtBN0V3cWJKOztBNkVycWJFOztFQUVFO0VBQ0E7QTdFd3FiSjs7QTZFbnFiQTs7RUFDRTtFQUNBO0E3RXVxYkY7O0E2RXBxYkE7O0VBQ0U7RUFDQTtBN0V3cWJGOztBNkVwcWJBO0VBQ0U7RUFDQTtBN0V1cWJGOztBNkVucWJBO0VBQ0U7RUFDQTtFQUNBO0V6RXpHQTtFQUNBO0VBQ0E7QUpneGJGOztBNkV0cWJFOztFQUNFO0VBQ0E7QTdFMHFiSjs7QTZFdnFiRTs7RUFDRTtFQUNBO0E3RTJxYko7O0E4RXp6YkE7OztFOUU4emJFOztBOEV4emJGO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTlFMnpiSjs7QThFeHpiSTtFQUNJO0VBQ0E7RUFDQTtBOUUyemJSOztBOEV2emJJO0VBQ0k7RUFDQTtFQUNBO0E5RTB6YlI7O0E4RXh6YlE7RUFDSTtBOUUyemJaOztBOEV0emJJO0VBQ0k7RUFDQTtBOUV5emJSOztBOEV2emJRO0VBQ0k7QTlFMHpiWjs7QThFcnpiSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUV3emJSOztBOEVyemJROzs7O0VBSUk7RUFDQTtBOUV3emJaOztBOEVwemJROztFQUNJO0VBQ0E7QTlFd3piWjs7QThFcnpiUTs7RUFDSTtFQUNBO0E5RXl6Ylo7O0E4RXR6YlE7O0VBQ0k7RUFDQTtBOUUwemJaOztBOEV0emJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUV5emJaOztBOEVuemJRO0VBQ0k7RUFDQTtBOUVzemJaOztBOEVoemJRO0VBQ0k7RUFDQTtBOUVtemJaOztBOEU5eWJJO0VBQ0k7RUFDQTtBOUVpemJSOztBOEUveWJRO0VBQ0k7RUFDQTtFQUNBO0E5RWt6Ylo7O0E4RS95YlE7RUFDSTtFQUNBO0VBQ0E7QTlFa3piWjs7QThFMXliSTtFQUNJO0E5RTZ5YlI7O0ErRXg2YkE7O0UvRTQ2YkU7O0ErRXg2YkY7RUFDSTtFQUNBO0tBQUE7TUFBQTtVQUFBO0EvRTI2Yko7O0ErRXQ2Ylk7RUFDSTtFQUNBO0EvRXk2YmhCOztBK0VsNmJRO0VBQ0k7RUFDQTtFQUNBO0EvRXE2Ylo7O0ErRW42Ylk7RUFDSTtFQUNBO0VBQ0E7QS9FczZiaEI7O0ErRXA2YmdCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QS9FdTZicEI7O0ErRXA2YmdCO0VBQ0k7RUFDQTtBL0V1NmJwQjs7QStFcjZib0I7RUFDSTtBL0V3NmJ4Qjs7QStFcDZiZ0I7RUFDSTtBL0V1NmJwQjs7QStFbjZiWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9FczZiaEI7O0ErRXA2YmdCO0VBQ0k7QS9FdTZicEI7O0ErRWg2Ykk7RUFDSTtBL0VtNmJSOztBK0VqNmJRO0VBQ0k7QS9FbzZiWjs7QStFaDZiSTtFQUNJO0EvRW02YlI7O0ErRWo2YlE7RUFDSTtBL0VvNmJaOztBK0VoNmJJO0VBQ0k7QS9FbTZiUjs7QStFajZiUTtFQUNJO0EvRW82Ylo7O0ErRTM1Ylk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBL0U4NWJoQjs7QStFNTViZ0I7RUFDSTtFQUNBO0EvRSs1YnBCOztBK0VyNWJRO0VBQ0k7QS9FdzViWjs7QStFcjViZ0I7RUFDSTtBL0V3NWJwQjs7QStFNTRiZ0I7RUFDSTtBL0UrNGJwQjs7QStFbjRiZ0I7RUFDSTtBL0VzNGJwQjs7QWdGemhjQTs7Ozs7RWhGZ2ljRTs7QWdGdGhjRTs7RUFHSTtFQUNBO0FoRndoY1I7O0FnRnRoY1E7O0VBQ0k7RUFDQTtBaEYwaGNaOztBZ0ZwaGNRO0VBQ0k7RUFDQTtFQUNBO0FoRnVoY1o7O0FnRmxoY0k7O0VBRUk7RUFDQTtFQUNBO0FoRnFoY1I7O0FnRmpoY0k7RUFDSTtFQUNBO0VBQ0E7QWhGb2hjUjs7QWdGOWdjSTs7RUFFSTtFQUNBO0FoRmloY1I7O0FnRjNnY1E7RUFDSTtFQUNBO0FoRjhnY1o7O0FnRjVnY1k7RUFDSTtFQUNBO0FoRitnY2hCOztBZ0YxZ2NRO0VBQ0k7RUFDQTtFQUNBO0FoRjZnY1o7O0FnRnRnY0k7O0VBRUk7RUFDQTtBaEZ5Z2NSOztBZ0ZwZ2NBO0VBRVE7O0lBRUk7SUFDQTtJQUNBO0VoRnNnY1Y7QUFDRjs7QWdGamdjQTtFQUVROztJQUVJO0lBQ0E7RWhGbWdjVjtBQUNGOztBaUY1bWNBOzs7O0VqRmtuY0U7O0FpRjNtY0Y7OztFQUdFO0FqRjhtY0Y7O0FpRjFtY0E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQWVFO0FqRm1uY0Y7O0FpRi9tY0E7O0VBRUU7RUFDQTtBakZrbmNGOztBaUY5bWNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakZpbmNGOztBaUY3bWNBOztFQUVFO0VBQ0E7RUFDQTtBakZnbmNGOztBaUY1bWNBOzs7O0VBSUU7QWpGK21jRjs7QWlGM21jQTtFQUNFO0lBQ0U7RWpGOG1jRjs7RWlGM21jQTs7O0lBR0U7WUFBQTtJQUNBO1lBQUE7SUFDQTtJQUNBO0VqRjhtY0Y7QUFDRjs7QWtGOXJjQTs7OztFbEZvc2NFOztBa0Y3cmNGOzs7Ozs7Ozs7O0VBS0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEZxc2NGOztBa0Zsc2NBOztFQUNFO0FsRnNzY0Y7O0FrRm5zY0E7O0VBQ0U7QWxGdXNjRjs7QUlqdGNFO0U4RVNGOztJQUlJO0VsRjBzY0Y7QUFDRjs7QWtGdnNjQTs7RUFDRTtBbEYyc2NGOztBSTd0Y0U7RThFaUJGOztJQUlJO0VsRjhzY0Y7QUFDRjs7QWtGM3NjQTs7RUFDRTtBbEYrc2NGOztBSXp1Y0U7RThFeUJGOztJQUlJO0VsRmt0Y0Y7QUFDRjs7QWtGL3NjQTs7RUFDRTtBbEZtdGNGOztBSXJ2Y0U7RThFaUNGOztJQUlJO0VsRnN0Y0Y7QUFDRjs7QWtGbnRjQTs7RUFDRTtBbEZ1dGNGOztBSWp3Y0U7RThFeUNGOztJQUlJO0VsRjB0Y0Y7QUFDRjs7QWtGdnRjQTs7RUFDRTtBbEYydGNGOztBSTd3Y0U7RThFaURGOztJQUlJO0VsRjh0Y0Y7QUFDRjs7QWtGMXRjQTtFQUNFO0FsRjZ0Y0Y7O0FrRjN0Y0U7RUFDRTtBbEY4dGNKOztBa0Y3c2NBOztFQUVFO0VBQ0E7QWxGZ3RjRjs7QWtGOXNjRTs7RUFDRTtBbEZrdGNKOztBa0Y5c2NBO0VBQ0U7QWxGaXRjRjs7QWtGOXNjQTtFQUNFO0FsRml0Y0Y7O0FrRjdzY0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRmd0Y0Y7O0FrRjVzY0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRitzY0Y7O0FrRjVzY0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxGK3NjRjs7QWtGN3NjRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxGZ3RjSjs7QWtGM3NjQTtFQUNFO0FsRjhzY0Y7O0FrRjVzY0E7RUFDRTtBbEYrc2NGOztBa0Y3c2NBO0VBQ0U7QWxGZ3RjRjs7QWtGOXNjQTtFQUNFO0FsRml0Y0Y7O0FrRi9zY0E7RUFDRTtBbEZrdGNGOztBa0ZodGNBO0VBQ0U7QWxGbXRjRjs7QWtGanRjQTtFQUNFO0FsRm90Y0Y7O0FrRmh0Y0E7RUFDRTtBbEZtdGNGOztBa0ZqdGNBO0VBQ0U7QWxGb3RjRjs7QWtGbHRjQTtFQUNFO0FsRnF0Y0Y7O0FrRmp0Y0E7RUFDRTtBbEZvdGNGOztBa0ZsdGNBO0VBQ0U7QWxGcXRjRjs7QWtGbnRjQTtFQUNFO0FsRnN0Y0Y7O0FrRmx0Y0E7RUFDRTtBbEZxdGNGOztBa0ZudGNBO0VBQ0U7QWxGc3RjRjs7QWtGcHRjQTtFQUNFO0FsRnV0Y0Y7O0FtRmo2Y0E7Ozs7RW5GdTZjRTs7QW1GLzVjRjtFQUNFO0VBQ0E7RUFDQTtBbkZrNmNGOztBbUYvNWNFO0VBTkY7SUFPSTtJQUNBO0lBQ0E7RW5GbTZjRjtBQUNGOztBbUZoNmNFO0VBYkY7SUFjSTtJQUNBO0lBQ0E7RW5GbzZjRjtBQUNGOztBbUZoNmNBO0VBQ0U7RUFDQTtBbkZtNmNGOztBbUYvNWNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QW5GazZjRjs7QW1GaDZjRTtFQU5GO0lBT0k7SUFDQTtFbkZvNmNGO0FBQ0Y7O0FtRmw2Y0U7RUFYRjtJQVlJO0lBQ0E7RW5GczZjRjtBQUNGOztBbUZsNmNBO0VBQ0U7QW5GcTZjRjs7QW1GbjZjRTtFQUhGO0lBSUk7RW5GdTZjRjtBQUNGOztBbUZyNmNFO0VBUEY7SUFRSTtFbkZ5NmNGO0FBQ0Y7O0FtRnQ2Y0E7RUFDRTtBbkZ5NmNGOztBbUZ2NmNFO0VBSEY7SUFJSTtFbkYyNmNGO0FBQ0Y7O0FtRno2Y0U7RUFQRjtJQVFJO0VuRjY2Y0Y7QUFDRjs7QW1GejZjQTtFQUNFO0VBQ0E7QW5GNDZjRjs7QW1GeDZjQTtFQUFjO0FuRjQ2Y2Q7O0FtRjM2Y0E7RUFBYztBbkYrNmNkOztBbUY5NmNBO0VBQWM7QW5GazdjZDs7QW1GajdjQTtFQUFjO0FuRnE3Y2Q7O0FtRnA3Y0E7RUFBYztBbkZ3N2NkOztBbUZyN2NBO0VBQU87QW5GeTdjUDs7QW1GeDdjQTtFQUFPO0FuRjQ3Y1A7O0FtRjM3Y0E7RUFBTztBbkYrN2NQOztBbUY5N2NBO0VBQU87QW5GazhjUDs7QW1GajhjQTtFQUFRO0FuRnE4Y1I7O0FtRnA4Y0E7RUFBUTtBbkZ3OGNSOztBbUZyOGNBO0VBQ0U7QW5GdzhjRjs7QW1GcjhjQTtFQUNFO0FuRnc4Y0Y7O0FtRnI4Y0E7RUFDRTtBbkZ3OGNGOztBbUZwOGNBO0VBQ0U7RUFDQTtBbkZ1OGNGOztBbUZwOGNBO0VBQ0U7QW5GdThjRjs7QW1GbjhjQTtFQUFrQjtBbkZ1OGNsQjs7QW1GdDhjQTtFQUFzQjtBbkYwOGN0Qjs7QW1GdjhjQTtFQUFtQjtBbkYyOGNuQjs7QW1GMThjQTtFQUFtQjtBbkY4OGNuQjs7QW1GNzhjQTtFQUFxQjtBbkZpOWNyQjs7QW1GaDljQTtFQUFxQjtBbkZvOWNyQjs7QW9GbGxkQTtFQUNFO0VBQ0E7QXBGcWxkRjs7QXFGdGxkQTtFQUNJO0FyRnlsZEo7O0FxRnJsZEE7RUFDSTtBckZ3bGRKOztBcUZ0bGRJOztFQUVJO0FyRnlsZFI7O0FxRnBsZEE7Ozs7O0VBSUk7QXJGd2xkSjs7QXFGcmxkQTs7O0VBRUk7RUFDQTtBckZ5bGRKOztBcUZwbGRJOzs7OztFQUlJO0FyRndsZFI7O0FxRnBsZEk7RUFDSTtFQUNBO0FyRnVsZFI7O0FxRnBsZEk7RUFDSTtFQUNBO0FyRnVsZFI7O0FxRnBsZEk7RUFDSTtFQUNBO0FyRnVsZFI7O0FxRnBsZEk7RUFDSTtFQUNBO0FyRnVsZFI7O0FxRjdrZFE7Ozs7OztFQUdJO0FyRm1sZFo7O0FxRmhsZFE7OztFQUNJO0FyRnFsZFo7O0FxRmxsZFE7OztFQUNJO0FyRnVsZFo7O0FxRmxsZEk7OztFQUNJO0FyRnVsZFI7O0FxRmpsZEk7RUFDSTtFQUNBO0FyRm9sZFI7O0FxRmxsZFE7RUFDSTtBckZxbGRaOztBcUZqbGRJO0VBQ0k7QXJGb2xkUjs7QXFGL2tkQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0tBQUE7QXJGa2xkSjs7QXFGOWtkQTtFQUVJO0FyRmdsZEo7O0FxRjVrZEE7RUFDSTtBckYra2RKOztBcUYza2RBO0VBQ0k7RUFDQTtBckY4a2RKOztBcUY1a2RJO0VBQ0k7RUFDQTtBckYra2RSOztBcUY1a2RJO0VBQ0k7RUFDQTtBckYra2RSOztBcUY1a2RJO0VBQ0k7RUFDQTtBckYra2RSOztBcUY1a2RJO0VBQ0k7RUFDQTtBckYra2RSOztBcUY1a2RJO0VBQ0k7QXJGK2tkUjs7QXFGMWtkQTtFQUNJO0VBQ0E7QXJGNmtkSjs7QXFGM2tkSTs7RUFFSTtFQUNBO0FyRjhrZFI7O0FxRnhrZEk7RUFFSTtFQUNBO0FyRjBrZFI7O0FzRmx2ZEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBdEZxdmRGOztBc0ZqdmRBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0Rm92ZEY7O0FzRjd1ZEk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBdEZndmROOztBc0Y3dWRNO0VBQ0U7RUFDQTtBdEZndmRSOztBc0Y1dWRNO0VBQ0U7RUFDQTtBdEYrdWRSOztBc0YzdWRNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXRGOHVkUjs7QXNGMXVkTTtFQUNFO0VBQ0E7QXRGNnVkUjs7QXNGanVkSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEZvdWROOztBc0ZsdWRNOztFQUVFO0F0RnF1ZFI7O0FzRi9zZEk7RUFDRTtBdEZrdGROOztBc0Y3c2RFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXRGZ3RkSjs7QXNGN3NkTTtFQUNFO0F0Rmd0ZFI7O0FzRjdzZE07RUFDRTtFQUNBO0F0Rmd0ZFI7O0FzRjdzZE07RUFDRTtFQUNBO0F0Rmd0ZFI7O0FzRjlzZFE7RUFDRTtBdEZpdGRWOztBc0Yzc2RJO0VBQ0U7QXRGOHNkTjs7QXNGNXNkTTtFQUNFO0F0RitzZFI7O0FzRjVzZE07RUFDRTtFQUNBO0F0RitzZFI7O0FzRnpzZEU7RUFDRTtBdEY0c2RKOztBc0Yxc2RJO0VBQ0U7QXRGNnNkTjs7QXNGdnNkSTtFQUNFO0F0RjBzZE47O0FzRnBzZEk7RUFDRTtFQUNBO0VBQ0E7QXRGdXNkTjs7QXNGcnNkTTtFQUNFO0VBQ0E7QXRGd3NkUjs7QXNGcnNkTTtFQUNFO0F0RndzZFI7O0FzRnBzZEk7RUFDRTtFQUNBO0F0RnVzZE47O0FzRmpzZEE7RUFDRTtBdEZvc2RGOztBc0Zsc2RFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEZxc2RKOztBc0Zuc2RJO0VBQ0U7RUFDQTtBdEZzc2ROOztBc0Zsc2RFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRGcXNkSjs7QXNGbnNkSTtFQUNFO0F0RnNzZE47O0FzRmxzZEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRGcXNkSjs7QXNGbnNkSTtFQUNFO0VBQ0E7RUFDQTtBdEZzc2ROOztBc0Zuc2RJO0VBQ0U7RUFDQTtBdEZzc2ROOztBc0Zwc2RNO0VBQ0U7QXRGdXNkUjs7QXNGcHNkTTs7RUFFRTtBdEZ1c2RSOztBc0Zwc2RNO0VBQ0U7RUFDQTtFQUNBO0F0RnVzZFI7O0FzRm5zZEk7RUFDRTtFQUNBO0VBQ0E7QXRGc3NkTjs7QXNGaHNkQTtFQUNFO0F0Rm1zZEY7O0FzRmhzZEE7RUFDRTtBdEZtc2RGOztBc0YvcmRBO0VBR007SUFDRTtFdEZnc2ROO0FBQ0Y7O0FzRjNyZEE7RUFHTTtJQUNFO0V0RjRyZE47QUFDRjs7QXVGbitkQTs7OztFdkZ5K2RFOztBdUZsK2RGO0VBQ0k7QXZGcStkSjs7QXVGbCtkQTtFQUNJO0F2RnErZEo7O0F1RnY5ZEE7RUFDSTtFQUNBO0VBQ0E7QXZGMDlkSjs7QXVGeDlkSTtFQUNJO0F2RjI5ZFI7O0F1RnY5ZEE7RUFDSTtFQUNBO0VBQ0E7QXZGMDlkSjs7QXdGamdlQTs7O0V4RnNnZUU7O0F3Ri8vZEE7O0VBRUU7RUFDQTtFQUNBO0F4RmtnZUo7O0F3Ri8vZEk7Ozs7RUFFRTtFQUNBO0F4Rm9nZU47O0F3RmxnZU07Ozs7RUFDRTtBeEZ3Z2VSOztBd0Z0Z2VROzs7O0VBQ0U7QXhGNGdlVjs7QXdGcGdlSTs7RUFFRTtBeEZ1Z2VOOztBd0ZsZ2VFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXhGcWdlSjs7QXdGbmdlSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4RnNnZU47O0F3RnBnZU07RUFDRTtFQUNBO0F4RnVnZVI7O0F3RnBnZU07RUFDRTtBeEZ1Z2VSOztBd0ZoZ2VJO0VBQ0U7QXhGbWdlTjs7QXdGOS9kTTtFQUNFO0F4RmlnZVI7O0F3Ri8vZFE7RUFDRTtBeEZrZ2VWOztBd0ZoZ2VVO0VBQ0U7QXhGbWdlWjs7QXdGMy9kRTtFQUVJO0lBQ0U7RXhGNi9kTjs7RXdGMS9kSTtJQUNFO0V4RjYvZE47O0V3RngvZEU7O0lBRUU7RXhGMi9kSjtBQUNGOztBd0Z2L2RFO0VBQ0U7O0lBRUU7RXhGMC9kSjtBQUNGOztBeUZwbWVBO0VBQ0k7VUFBQTtBekZ1bWVKOztBeUZwbWVBO0VBQ0k7SUFBSztFekZ3bWVQOztFeUZ2bWVFO0lBQU07RXpGMm1lUjs7RXlGMW1lRTtJQUFPO0V6RjhtZVQ7QUFDRjs7QXlGbG5lQTtFQUNJO0lBQUs7RXpGd21lUDs7RXlGdm1lRTtJQUFNO0V6RjJtZVI7O0V5RjFtZUU7SUFBTztFekY4bWVUO0FBQ0Y7O0F5RnhtZVE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBekYybWVaOztBMEYvbmVJO0VBQ0k7QTFGa29lUjs7QTBGN25lWTtFQUNJO0ExRmdvZWhCOztBMEZ6bmVBO0VBQ0k7RUFDQTtBMUY0bmVKOztBMEZ4bmVBO0VBQ0k7VUFBQTtBMUYybmVKOztBMEZ4bmVBO0VBQ0k7SUFBSztFMUY0bmVQOztFMEYzbmVFO0lBQU07RTFGK25lUjs7RTBGOW5lRTtJQUFPO0UxRmtvZVQ7QUFDRjs7QTBGdG9lQTtFQUNJO0lBQUs7RTFGNG5lUDs7RTBGM25lRTtJQUFNO0UxRituZVI7O0UwRjluZUU7SUFBTztFMUZrb2VUO0FBQ0Y7O0EwRi9uZUE7RUFDSTtFQUNBO0ExRmtvZUo7O0EwRmhvZUk7RUFDSTtFQUNBO0ExRm1vZVI7O0EwRmhvZUk7RUFDSTtBMUZtb2VSOztBMEZqb2VRO0VBQ0k7VUFBQTtBMUZvb2VaOztBMEZqb2VRO0VBQ0k7VUFBQTtBMUZvb2VaOztBMEY5bmVBO0VBQ0k7SUFBVztFMUZrb2ViOztFMEZqb2VFO0lBQU07RTFGcW9lUjtBQUNGOztBMEZ4b2VBO0VBQ0k7SUFBVztFMUZrb2ViOztFMEZqb2VFO0lBQU07RTFGcW9lUjtBQUNGOztBMEZub2VBO0VBQ0k7SUFBSztFMUZ1b2VQOztFMEZ0b2VFO0lBQU07RTFGMG9lUjs7RTBGem9lRTtJQUFPO0UxRjZvZVQ7QUFDRjs7QTBGanBlQTtFQUNJO0lBQUs7RTFGdW9lUDs7RTBGdG9lRTtJQUFNO0UxRjBvZVI7O0UwRnpvZUU7SUFBTztFMUY2b2VUO0FBQ0Y7O0EwRjFvZUE7RUFDSTtJQUNJO0lBQ0E7RTFGNm9lTjs7RTBGM29lRTtJQUNJO0lBQ0E7RTFGOG9lTjtBQUNGOztBMEZ0cGVBO0VBQ0k7SUFDSTtJQUNBO0UxRjZvZU47O0UwRjNvZUU7SUFDSTtJQUNBO0UxRjhvZU47QUFDRjs7QTBGM29lQTtFQUNJO0lBQ0k7SUFDQTtFMUY4b2VOOztFMEY1b2VFO0lBQ0k7SUFDQTtFMUYrb2VOO0FBQ0Y7O0EwRnZwZUE7RUFDSTtJQUNJO0lBQ0E7RTFGOG9lTjs7RTBGNW9lRTtJQUNJO0lBQ0E7RTFGK29lTjtBQUNGOztBMEYzb2VBO0VBQ0k7SUFFSTtJQUNBO0UxRjZvZU47O0UwRjNvZU07O0lBQ0k7RTFGK29lVjs7RTBGM29lRTtJQUVJO0UxRjZvZU47QUFDRjs7QTBGeG9lSTtFQUNJO0VBQ0E7RUFDQTtVQUFBO0VBQ0E7QTFGMm9lUjs7QTBGem9lUTtFQUNJO0VBQ0E7QTFGNG9lWjs7QTBGem9lUTtFQUNJO0VBQ0E7QTFGNG9lWjs7QTBGMW9lWTtFQUNJO0ExRjZvZWhCOztBMEYxb2VZO0VBQ0k7QTFGNm9laEI7O0EwRnZvZUE7RUFDSTtJQUFLO0UxRjJvZVA7O0UwRjFvZUU7SUFBTztFMUY4b2VUO0FBQ0Y7O0EwRmpwZUE7RUFDSTtJQUFLO0UxRjJvZVA7O0UwRjFvZUU7SUFBTztFMUY4b2VUO0FBQ0Y7O0EyRjV4ZUE7OztFM0ZpeWVFOztBMkY1eGVGO0VBRUU7QTNGOHhlRjs7QTJGenhlSTtFQUNFO0EzRjR4ZU47O0EyRnp4ZUk7RUFDRTtFQUNBO0EzRjR4ZU47O0EyRnR4ZUk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBM0Z5eGVOOztBMkZ2eGVNO0VBQ0U7QTNGMHhlUjs7QTJGdHhlSTs7OztFQUVFO0VBQ0E7RUFDQTtBM0YyeGVOOztBMkZ6eGVNOzs7O0VBQ0U7RUFDQTtBM0YreGVSOztBMkY1eGVNOzs7O0VBQ0U7QTNGa3llUjs7QTJGNXhlTTtFQUNFO0VBQ0E7QTNGK3hlUjs7QTJGN3hlUTtFQUNFO0EzRmd5ZVY7O0EyRjV4ZU07OztFQUNFO0EzRml5ZVI7O0EyRi94ZVE7OztFQUNFO0EzRm95ZVY7O0EyRmx5ZVU7OztFQUNFO0EzRnV5ZVo7O0EyRi94ZUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBM0ZreWVKOztBMkZoeWVJO0VBQ0U7RUFDQTtFQUNBO0EzRm15ZU47O0EyRmh5ZUk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzRm15ZU47O0EyRjl4ZUU7OztFQUNFO0EzRm15ZUo7O0EyRmp5ZUk7OztFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0ZzeWVOOztBMkZweWVNOzs7RUFDRTtFQUNBO0VBQ0E7QTNGeXllUjs7QTJGcHllTTs7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0Z5eWVSOztBMkZ0eWVNOzs7RUFDRTtBM0YyeWVSOztBMkZ6eWVROzs7RUFDRTtBM0Y4eWVWOztBMkYzeWVROzs7RUFDRTtBM0ZnemVWOztBMkZ4eWVJO0VBQ0U7QTNGMnllTjs7QTJGeHllSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0EzRjJ5ZU47O0EyRmx5ZUU7O0VBRUU7QTNGcXllSjs7QTJGbHllRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNGcXllSjs7QTJGbHllRTtFQUNFO0EzRnF5ZUo7O0EyRm55ZUk7RUFDRTtFQUNBO0EzRnN5ZU47O0EyRnB5ZU07RUFKRjtJQUtJO0UzRnd5ZU47QUFDRjs7QTJGcHllRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0Z1eWVKOztBMkZueWVJO0VBQ0U7QTNGc3llTjs7QTJGanllSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0EzRm95ZU47O0EyRmp5ZUk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBM0ZveWVOOztBMkY5eGVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO1VBQUE7QTNGaXllRjs7QTJGN3hlQTtFQUNFO0VBQ0E7QTNGZ3llRjs7QTJGOXhlRTtFQUNFO0EzRml5ZUo7O0EyRjl4ZUU7O0VBQ0U7RUFDQTtFQUNBO0EzRmt5ZUo7O0EyRi94ZUU7O0VBQ0U7QTNGbXllSjs7QTJGN3hlRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0EzRmd5ZUo7O0EyRjd4ZUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBM0ZneWVKOztBMkY3eGVFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTNGZ3llSjs7QTJGN3hlRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0EzRmd5ZUo7O0EyRjN4ZUE7Ozs7RUFJRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0Y4eGVGOztBMkZ4eGVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0YyeGVGOztBMkZ0eGVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0Z5eGVGOztBMkZyeGVFO0VBQ0U7QTNGd3hlSjs7QTJGbnhlQTtFQUVJO0lBQ0U7RTNGcXhlSjs7RTJGbHhlTTtJQUNFO0UzRnF4ZVI7O0UyRi93ZUk7O0lBRUU7SUFDQTtJQUNBO0UzRmt4ZU47QUFDRjs7QTJGN3dlQTtFQUNFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFM0ZneGVGOztFMkY5d2VFO0lBQ0U7RTNGaXhlSjs7RTJGOXdlRTs7O0lBQ0U7RTNGbXhlSjs7RTJGanhlSTs7Ozs7O0lBRUU7RTNGd3hlTjs7RTJGcHhlRTtJQUNFO0UzRnV4ZUo7O0UyRnJ4ZUk7SUFDRTtJQUNBO0lBQ0E7RTNGd3hlTjs7RTJGdHhlTTtJQUNFO0UzRnl4ZVI7QUFDRjs7QTRGOXBmQTs7Ozs7RTVGcXFmRTs7QTRGN3BmRjtFQUNJO0E1RmdxZko7O0E0RjdwZkk7RUFDSTtBNUZncWZSOztBNEYzcGZBO0VBQ0k7QTVGOHBmSjs7QTRGM3BmQTtFQUNJO0E1RjhwZko7O0E0RjFwZkE7Ozs7Ozs7O0VBUUk7QTVGNnBmSjs7QTZGaHNmQTs7O0U3RnFzZkU7O0E2RjVyZkU7Ozs7RUFFRTtBN0Zpc2ZOOztBNkY3cmZJOzs7O0VBRUU7RUFDQTtBN0Zrc2ZOOztBNkY3cmZFOztFQUVFO0E3RmdzZko7O0E2RjlyZkk7O0VBQ0U7QTdGa3NmTjs7QTZGaHNmTTs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdGb3NmUjs7QTZGNXJmTTs7O0VBQ0U7RUFDQTtFQUNBO1VBQUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtVQUFBO0VBQ0E7RUFDQTtFQUFBO0E3RmlzZlI7O0E2RjlyZk07OztFQUNFO0E3Rm1zZlI7O0E2RjlyZkk7RUFDRTtBN0Zpc2ZOOztBNkYvcmZNO0VBQ0U7RUFDQTtFQUNBO0E3RmtzZlI7O0E2RjVyZkU7RUFDRTtFQUNBO0VBQ0E7QTdGK3JmSjs7QTZGM3JmRTtFQUNFO0VBQ0E7RUFDQTtBN0Y4cmZKOztBNkY1cmZJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTdGK3JmTjs7QTZGN3JmTTtFQUNFO0VBQ0E7QTdGZ3NmUjs7QTZGN3JmTTtFQUNFO0E3RmdzZlI7O0E2RjFyZkU7RUFHTTtJQUVFO0U3RjByZlI7QUFDRjs7QTZGbHJmSTs7RUFDRTtFQUNBO0VBQ0E7QTdGc3JmTjs7QTZGcHJmTTs7RUFDRTtBN0Z3cmZSOztBNkZscmZNOzs7O0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0Z1cmZSOztBNkZycmZROzs7O0VBQ0U7RUFDQTtBN0YycmZWOztBNkZwcmZFO0VBQ0U7QTdGdXJmSjs7QTZGcnJmSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0Z3cmZOOztBNkZqcmZNO0VBQ0U7QTdGb3JmUjs7QTZGOXFmRTtFQUNFO0E3RmlyZko7O0E2RjlxZkU7RUFDRTtJQUNFO0lBQ0E7RTdGaXJmSjtBQUNGOztBNkY1cWZBO0VBSU07O0lBQ0U7RTdGNnFmTjtBQUNGOztBOEZoM2ZBOzs7OztFOUZ1M2ZFOztBOEZ0MmZBOzs7Ozs7Ozs7Ozs7OztFQUVFO0E5RnEzZko7O0E4RmozZkU7Ozs7Ozs7Ozs7Ozs7O0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUZnNGZKOztBOEY1M2ZFOzs7Ozs7O0VBQ0U7RUFDQTtBOUZxNGZKOztBOEZqNGZFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUZ3NWZKOztBOEZ0NWZJOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RjY2Zk47O0E4RjE2Zkk7RUFDRTtFQUNBO0E5Rmk4Zk47O0E4Rm44Zkk7RUFDRTtFQUNBO0E5Rmk4Zk47O0E4Rm44Zkk7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQUNFO0VBQ0E7QTlGaThmTjs7QThGOTdmSTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBRUU7RUFDQTtBOUZ5K2ZOOztBOEZyK2ZJOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFDRTtFQUNBO0VBQ0E7QTlGNC9mTjs7QThGei9mSTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBQ0U7RUFDQTtFQUNBO0E5RmdoZ0JOOztBOEYzZ2dCRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBQ0U7RUFDQTtFQUNBO0E5RmtpZ0JKOztBOEY5aGdCRTs7Ozs7OztFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7S0FBQTtVQUFBO0E5RnVpZ0JKOztBOEZyaWdCSTs7Ozs7OztFQUNFO0VBQ0E7RUFDQTtBOUY4aWdCTjs7QThGM2lnQkk7Ozs7Ozs7RUFDRTtBOUZvamdCTjs7QThGaGpnQkk7Ozs7Ozs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RnlqZ0JOOztBOEZ0amdCSTs7Ozs7OztFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlGK2pnQk47O0E4RjFqZ0JFOzs7Ozs7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTlGbWtnQko7O0E4RmprZ0JJOzs7Ozs7O0VBQ0U7RUFDQTtBOUYwa2dCTjs7QThGeGtnQk07Ozs7Ozs7RUFDRTtBOUZpbGdCUjs7QThGOWtnQk07Ozs7Ozs7RUFDRTtBOUZ1bGdCUjs7QThGcGxnQk07Ozs7Ozs7RUFDRTtFQUNBO0E5RjZsZ0JSOztBOEYxbGdCTTs7Ozs7OztFQUNFO0VBQ0E7RUFDQTtBOUZtbWdCUjs7QThGaG1nQk07Ozs7Ozs7RUFDRTtFQUNBO0VBQ0E7QTlGeW1nQlI7O0E4RnRtZ0JNOzs7Ozs7O0VBQ0U7RUFDQTtBOUYrbWdCUjs7QThGM21nQkk7Ozs7Ozs7RUFDRTtBOUZvbmdCTjs7QThGN21nQkk7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlGMm9nQk47O0E4RnpvZ0JNOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBQ0U7RUFDQTtBOUZ1cWdCUjs7QThGbnFnQkk7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlGaXNnQk47O0E4Ri9yZ0JNOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBQ0U7RUFDQTtBOUY2dGdCUjs7QThGdnRnQkU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQUVFO0VBQ0E7RUFDQTtFQUNBO0E5RjZ1Z0JKOztBOEYxdWdCRTs7Ozs7Ozs7Ozs7Ozs7RUFDRTtBOUYwdmdCSjs7QThGdnZnQkU7Ozs7Ozs7RUFDRTtBOUZnd2dCSjs7QThGN3ZnQkU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFFRTtBOUYweGdCSjs7QThGdnhnQkU7Ozs7Ozs7Ozs7Ozs7O0VBRUU7QTlGc3lnQko7O0E4Rmx5Z0JFOzs7Ozs7O0VBQ0U7RUFDQTtFQUNBO0E5RjJ5Z0JKOztBOEZ0eWdCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlGeXlnQkY7O0E4RnZ5Z0JFOzs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RjJ5Z0JKOztBOEZ4eWdCRTs7O0VBRUU7QTlGNHlnQko7O0E4Rnp5Z0JFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RjR5Z0JKOztBOEZweWdCRTs7Ozs7O0VBRUU7RUFDQTtFQUNBO0E5RjJ5Z0JKOztBOEZ6eWdCSTs7Ozs7O0VBQ0U7RUFDQTtBOUZpemdCTjs7QThGN3lnQkU7OztFQUNFO0E5Rmt6Z0JKOztBOEZoemdCSTs7O0VBQ0U7RUFDQTtBOUZxemdCTjs7QThGanpnQkU7OztFQUNFO0VBQ0E7QTlGc3pnQko7O0E4Rm56Z0JFOzs7RUFDRTtFQUNBO0E5Rnd6Z0JKOztBK0Y3bmhCQTtFQUNJO0EvRmdvaEJKOztBK0Y3bmhCSTtFQUNJO0EvRmdvaEJSOztBK0Y3bmhCUTtFQUNJO0EvRmdvaEJaOztBK0Y5bmhCWTtFQUNJO0VBQ0E7RUFDQTtBL0Zpb2hCaEI7O0ErRnpuaEJJO0VBQ0k7QS9GNG5oQlI7O0ErRnRuaEJJO0VBQ0k7QS9GeW5oQlI7O0ErRnZuaEJRO0VBQ0k7RUFDQTtBL0YwbmhCWjs7QStGcG5oQkE7RUFFUTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RS9Gc25oQlY7QUFDRjs7QWdHOXBoQkE7RUFDRTtBaEdpcWhCRjs7QWdHOXBoQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoR2lxaEJKOztBZ0c5cGhCSTtFQUNFO0VBQ0E7QWhHaXFoQk47O0FnRzlwaEJJOztFQUVFO0FoR2lxaEJOOztBZ0c3cGhCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEdncWhCSjs7QWdHenBoQkk7RUFDRTtBaEc0cGhCTjs7QWdHcnBoQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoR3dwaEJKOztBZ0dycGhCSTtFQUNFO0VBQ0E7QWhHd3BoQk47O0FnR2xwaEJJOztFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhHc3BoQk47O0FnR3BwaEJNOztFQUNFO0FoR3dwaEJSOztBZ0dwcGhCSTtFQUNFO0FoR3VwaEJOOztBZ0dwcGhCTTtFQUNFO0VBQ0E7QWhHdXBoQlI7O0FnR25waEJNO0VBQ0U7RUFDQTtBaEdzcGhCUjs7QWdHaHBoQkU7RUFDRTtBaEdtcGhCSjs7QWdHM29oQkk7RUFDRTtBaEc4b2hCTjs7QWdHNW9oQk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoRytvaEJSOztBZ0c3b2hCUTtFQUNFO0VBQ0E7QWhHZ3BoQlY7O0FnRzVvaEJNO0VBQ0U7RUFDQTtFQUNBO0FoRytvaEJSOztBZ0c3b2hCUTtFQUNFO0VBQ0E7QWhHZ3BoQlY7O0FnRzdvaEJRO0VBQ0U7QWhHZ3BoQlY7O0FnRzVvaEJNO0VBQ0U7QWhHK29oQlI7O0FnRzdvaEJRO0VBQ0U7RUFDQTtBaEdncGhCVjs7QWdHem9oQk07O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoRzZvaEJSOztBZ0cxb2hCTTtFQUNFO0FoRzZvaEJSOztBZ0czb2hCUTtFQUNFO0FoRzhvaEJWOztBZ0czb2hCUTtFQUNFO0FoRzhvaEJWOztBZ0d4b2hCSTtFQUNFO0VBQ0E7RUFDQTtBaEcyb2hCTjs7QWdHdm9oQkk7RUFDRTtBaEcwb2hCTjs7QWdHeG9oQk07RUFDRTtBaEcyb2hCUjs7QWdHcm9oQk07RUFDRTtBaEd3b2hCUjs7QWdHL25oQkU7RUFDRTtBaEdrb2hCSjs7QWdHOW5oQkU7O0VBRUU7RUFDQTtBaEdpb2hCSjs7QWdHN25oQkU7RUFDRTtBaEdnb2hCSjs7QWdHN25oQkU7RUFDRTtBaEdnb2hCSjs7QWdHM25oQkE7RUFFSTtJQUNFO0lBQ0E7RWhHNm5oQko7O0VnRzFuaEJFO0lBQ0U7RWhHNm5oQko7O0VnR3ZuaEJJOztJQUNFO0VoRzJuaEJOOztFZ0d4bmhCSTtJQUNFO0VoRzJuaEJOOztFZ0dwbmhCSTtJQUNFO0VoR3VuaEJOOztFZ0dwbmhCSTtJQUNFO0VoR3VuaEJOO0FBQ0Y7O0FpR24zaEJBO0VBQ0k7RUFDQTtBakdzM2hCSjs7QWlHbjNoQkk7RUFDSTtFQUNBO0VBQ0E7QWpHczNoQlI7O0FpR3AzaEJRO0VBQ0k7RUFDQTtFQUNBO0FqR3UzaEJaOztBaUdwM2hCUTtFQUNJO0FqR3UzaEJaOztBaUdsM2hCSTtFQUNJO0VBQ0E7RUFDQTtBakdxM2hCUjs7QWlHbjNoQlE7RUFDSTtFQUNBO0VBQ0E7QWpHczNoQlo7O0FpR24zaEJRO0VBQ0k7QWpHczNoQlo7O0FpR2ozaEJJO0VBQ0k7RUFDQTtBakdvM2hCUjs7QWlHaDNoQkk7RUFDSTtBakdtM2hCUjs7QWlHajNoQlE7RUFDSTtVQUFBO0FqR28zaEJaOztBaUcvMmhCSTs7RUFDSTtFQUNBO0FqR20zaEJSOztBaUdqM2hCUTs7RUFDSTtBakdxM2hCWjs7QWlHaDNoQkk7O0VBQ0k7QWpHbzNoQlI7O0FpRy8yaEJBO0VBQ0k7SUFDSTtFakdrM2hCTjs7RWlHaDNoQkU7SUFDSTtFakdtM2hCTjs7RWlHajNoQkU7SUFDSTtFakdvM2hCTjtBQUNGOztBaUc3M2hCQTtFQUNJO0lBQ0k7RWpHazNoQk47O0VpR2gzaEJFO0lBQ0k7RWpHbTNoQk47O0VpR2ozaEJFO0lBQ0k7RWpHbzNoQk47QUFDRjs7QWlHLzJoQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpHazNoQlI7O0FpR2gzaEJRO0VBQ0k7RUFDQTtBakdtM2hCWjs7QWlHajNoQlk7RUFDSTtFQUNBO0VBQ0E7QWpHbzNoQmhCOztBaUdoM2hCUTtFQUNJO0VBQ0E7RUFDQTtBakdtM2hCWjs7QWlHajNoQlk7RUFDSTtBakdvM2hCaEI7O0FpRzUyaEJJO0VBRUk7RUFFQTtFQUNBO0VBQ0E7QWpHNjJoQlI7O0FpR3YyaEJJO0VBQ0k7RUFDQTtFQUNBO0FqRzAyaEJSOztBa0duL2hCSTtFQUNJO0FsR3MvaEJSOztBa0dwL2hCUTtFQUNJO0FsR3UvaEJaOztBa0dyL2hCWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FsR3cvaEJoQjs7QWtHdC9oQmdCO0VBQ0k7QWxHeS9oQnBCOztBa0d0L2hCZ0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBbEd5L2hCcEI7O0FrR3IvaEJZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEd3L2hCaEI7O0FrR3AvaEJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxHdS9oQlo7O0FrR3IvaEJZO0VBQ0k7QWxHdy9oQmhCOztBa0dyL2hCZ0I7RUFDSTtBbEd3L2hCcEI7O0FrR3AvaEJZO0VBQ0k7RUFDQTtBbEd1L2hCaEI7O0FrR3IvaEJnQjtFQUNJO0VBQ0E7RUFDQTtBbEd3L2hCcEI7O0FrR3QvaEJvQjtFQUNJO0FsR3kvaEJ4Qjs7QWtHdC9oQm9CO0VBQ0k7RUFDQTtBbEd5L2hCeEI7O0FrR2wvaEJRO0VBQ0k7RUFDQTtFQUNBO0FsR3EvaEJaOztBa0cvK2hCUTtFQUNJO0VBQ0E7QWxHay9oQlo7O0FrRzcraEJJO0VBQ0k7QWxHZy9oQlI7O0FrRzkraEJRO0VBQ0k7RUFDQTtFQUNBO0FsR2kvaEJaOztBa0cvK2hCWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxHay9oQmhCOztBa0doL2hCZ0I7RUFDSTtBbEdtL2hCcEI7O0FrRzMraEJBO0VBR1E7SUFDSTtFbEc0K2hCVjs7RWtHeCtoQk07SUFDSTtFbEcyK2hCVjtBQUNGOztBa0d2K2hCQTtFQUdRO0lBQ0k7RWxHdytoQlY7O0VrR3AraEJNO0lBQ0k7RWxHdStoQlY7QUFDRjs7QW1HeG5pQkk7RUFDSTtFQUNBO0VBQ0E7QW5HMm5pQlI7O0FtR3ZuaUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBT0E7RUFDQTtBbkdvbmlCUjs7QW1HMW5pQlE7RUFDSTtBbkc2bmlCWjs7QW1Hbm5pQlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkdzbmlCWjs7QW1HaG5pQlE7RUFDSTtBbkdtbmlCWjs7QW1Ham5pQlk7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QW5HcW5pQmhCOztBbUc5bWlCUTtFQUNJO0VBQ0E7QW5HaW5pQlo7O0FtRzltaUJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QW5HaW5pQlo7O0FtRzFtaUJZOzs7O0VBQ0k7RUFDQTtBbkdnbmlCaEI7O0FtRzltaUJnQjs7OztFQUNJO0FuR29uaUJwQjs7QW1HNW1pQkE7RUFDSTtJQUNJO0VuRyttaUJOO0FBQ0Y7O0FvR3hzaUJBO0VBQ0k7QXBHMnNpQko7O0FvR3pzaUJJO0VBQ0k7QXBHNHNpQlI7O0FvRzFzaUJRO0VBQ0k7QXBHNnNpQlo7O0FvR3hzaUJBO0VBQ0k7RUFDQTtFQUNBO0tBQUE7RUFDQTtFQUNBO0FwRzJzaUJKOztBb0d4c2lCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEcyc2lCSjs7QW9HeHNpQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEcyc2lCSjs7QXFHdHZpQkE7OztFckcydmlCRTs7QXFHdHZpQkY7RUFpREk7RUFHQTtFQUdBO0VBR0E7RUFHQTtFQUdBO0VBR0E7RUF1TEY7RUFDQTtFQUNBO0VBQ0E7QXJHdWdpQkY7O0FxR2x3aUJFO0VBQ0U7S0FBQTtFQUNBO0FyR3F3aUJKOztBcUdud2lCSTtFQUpGO0lBS0k7RXJHdXdpQko7QUFDRjs7QXFHbndpQkU7RUFDRTtVQUFBO0FyR3N3aUJKOztBcUd6dmlCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FyRzR2aUJKOztBcUd6dmlCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FyRzR2aUJKOztBcUd4dmlCRTtFQUNFO0FyRzJ2aUJKOztBcUd6dmlCRTtFQUNFO0FyRzR2aUJKOztBcUcxdmlCRTtFQUNFO0FyRzZ2aUJKOztBcUczdmlCRTtFQUNFO0FyRzh2aUJKOztBcUc1dmlCRTtFQUNFO0FyRyt2aUJKOztBcUc3dmlCRTtFQUNFO0FyR2d3aUJKOztBcUc5dmlCRTtFQUNFO0FyR2l3aUJKOztBcUc1dmlCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJHK3ZpQk47O0FxRzd2aUJNO0VBQ0U7QXJHZ3dpQlI7O0FxRzd2aUJNO0VBQ0U7QXJHZ3dpQlI7O0FxRy91aUJFO0VBS0U7RUFFQTtFQUNBO0VBQ0E7RUFDQTtLQUFBO0FyRzZ1aUJKOztBcUd6dWlCSTtFQWRGO0lBZUk7RXJHNnVpQko7QUFDRjs7QXFHM3VpQkk7RUFsQkY7SUFtQkk7RXJHK3VpQko7QUFDRjs7QXFHN3VpQkk7RUF0QkY7SUF1Qkk7RXJHaXZpQko7QUFDRjs7QXFHL3VpQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FyR2t2aUJOOztBcUcvdWlCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJHa3ZpQk47O0FxR2h2aUJNO0VBQ0U7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0FyR2t2aUJSOztBcUdodmlCUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJHbXZpQlY7O0FxRy91aUJNO0VBQ0U7S0FBQTtVQUFBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckdrdmlCUjs7QXFHNXVpQkU7RUFDRTtFQUNBO0FyRyt1aUJKOztBcUczdWlCTTtFQURGO0lBRUk7SUFDQTtFckcrdWlCTjtBQUNGOztBcUd6dWlCSTs7O0VBR0U7QXJHNHVpQk47O0FxR251aUJFO0VBQ0U7VUFBQTtBckdzdWlCSjs7QXFHL3RpQlE7O0VBQ0U7QXJHbXVpQlY7O0FxRzV0aUJFO0VBQ0U7SUFDRTtFckcrdGlCSjs7RXFHNXRpQkU7SUFDRTtFckcrdGlCSjs7RXFHNXRpQkU7SUFDRTtFckcrdGlCSjtBQUNGOztBcUcxdGlCSTtFQUNFO0VBQ0E7QXJHNnRpQk47O0FxRzlzaUJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FyR2l0aUJKOztBcUcvc2lCSTtFQVJGO0lBU0k7RXJHbXRpQko7QUFDRjs7QXFHaHRpQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBckdtdGlCSjs7QXFHaHRpQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FyR210aUJKOztBcUcvc2lCRTtFQUNFO0FyR2t0aUJKOztBcUdodGlCSTtFQUNFO0VBQ0E7RUFDQTtBckdtdGlCTjs7QXFHaHRpQlE7RUFDRTtFQUNBO0FyR210aUJWOztBcUc1c2lCUTtFQUNFO0FyRytzaUJWOztBcUcxc2lCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckc2c2lCTjs7QXFHM3NpQk07RUFDRTtFQUNBO0VBQ0E7S0FBQTtFQUNBO0FyRzhzaUJSOztBcUcxc2lCSTtFQUNFO0VBQ0E7QXJHNnNpQk47O0FxRzFzaUJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FyRzZzaUJOOztBcUcxc2lCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJHNnNpQk47O0FxR3hzaUJFO0VBQ0U7QXJHMnNpQko7O0FxR3pzaUJJO0VBQ0U7QXJHNHNpQk47O0FxRzFzaUJNO0VBQ0U7QXJHNnNpQlI7O0FxR3pzaUJNO0VBQ0U7RUFDQTtBckc0c2lCUjs7QXFHMXNpQlE7RUFDRTtBckc2c2lCVjs7QXFHeHNpQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJHMnNpQk47O0FxR3pzaUJNO0VBQ0U7RUFDQTtBckc0c2lCUjs7QXFHdHNpQkU7RUFDRTtBckd5c2lCSjs7QXFHdnNpQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJHMHNpQk47O0FxR3hzaUJNO0VBQ0U7RUFDQTtBckcyc2lCUjs7QXFHbnNpQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJHc3NpQk47O0FxR3BzaUJNO0VBQ0U7RUFDQTtFQUNBO0tBQUE7RUFDQTtBckd1c2lCUjs7QXFHbnNpQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBckdzc2lCTjs7QXFHbnNpQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FyR3NzaUJOOztBcUduc2lCSTtFQUNFO0VBQ0E7RUFDQTtBckdzc2lCTjs7QXFHbnNpQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJHc3NpQk47O0FxR3BzaUJNO0VBQ0U7QXJHdXNpQlI7O0FxR2pzaUJFO0VBQ0U7QXJHb3NpQko7O0FxR2xzaUJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckdxc2lCTjs7QXFHbnNpQk07RUFDRTtFQUNBO0FyR3NzaUJSOztBcUdwc2lCUTtFQUNFO0VBQ0E7QXJHdXNpQlY7O0FxR2xzaUJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckdxc2lCTjs7QXFHbHNpQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBckdxc2lCTjs7QXFHbHNpQkk7RUFDRTtFQUNBO0VBQ0E7QXJHcXNpQk47O0FxR2hzaUJFO0VBQ0U7QXJHbXNpQko7O0FxR2pzaUJJO0VBQ0U7RUFDQTtBckdvc2lCTjs7QXFHM3JpQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FyRzhyaUJOOztBcUczcmlCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FyRzhyaUJOOztBcUczcmlCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJHOHJpQk47O0FxR3pyaUJFO0VBQ0U7QXJHNHJpQko7O0FxRzFyaUJJO0VBQ0U7QXJHNnJpQk47O0FxRzFyaUJNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckc2cmlCUjs7QXFHdnJpQkU7RUFDRTtJQUNFO0VyRzByaUJKOztFcUd2cmlCRTtJQUNFO0VyRzByaUJKOztFcUd2cmlCRTtJQUNFO0VyRzByaUJKOztFcUd2cmlCRTtJQUNFO0lBQ0E7RXJHMHJpQko7O0VxR3ZyaUJFOztJQUVFO0lBQ0E7SUFDQTtFckcwcmlCSjtBQUNGOztBcUdscmlCRTtFQUdNO0lBQ0U7RXJHbXJpQlI7QUFDRjs7QXFHN3FpQkU7RUFDRTtJQUNFO0VyR2dyaUJKOztFcUc5cWlCSTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VyR2lyaUJOOztFcUcvcWlCTTtJQUNFO0lBQ0E7SUFDQTtFckdrcmlCUjs7RXFHaHJpQlE7SUFDRTtJQUNBO0lBQ0E7RXJHbXJpQlY7O0VxRy9xaUJNO0lBQ0U7SUFDQTtJQUNBO0VyR2tyaUJSOztFcUc5cWlCTTtJQUNFO0VyR2lyaUJSOztFcUcvcWlCUTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VyR2tyaUJWO0FBQ0Y7O0FxRzVxaUJFO0VBQ0U7SUFDRTtFckcrcWlCSjs7RXFHNXFpQk07SUFDRTtFckcrcWlCUjs7RXFHN3FpQlE7SUFDRTtJQUNBO0VyR2dyaUJWOztFcUc1cWlCTTtJQUNFO0lBQ0E7RXJHK3FpQlI7O0VxRzVxaUJNO0lBQ0U7SUFDQTtFckcrcWlCUjtBQUNGOztBcUcxcWlCRTtFQUNFO0lBQ0U7RXJHNnFpQko7O0VxRzFxaUJNO0lBQ0U7RXJHNnFpQlI7O0VxRzNxaUJRO0lBQ0U7SUFDQTtFckc4cWlCVjs7RXFHMXFpQk07SUFDRTtJQUNBO0VyRzZxaUJSO0FBQ0Y7O0FxR3ZxaUJFO0VBRUk7SUFDRTtJQUNBO0VyR3lxaUJOOztFcUd0cWlCSTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXJHeXFpQk47O0VxR3RxaUJJO0lBQ0U7RXJHeXFpQk47O0VxR3ZxaUJNO0lBQ0U7RXJHMHFpQlI7O0VxR3ZxaUJNO0lBQ0U7RXJHMHFpQlI7O0VxR3ZxaUJNO0lBQ0U7SUFDQTtFckcwcWlCUjs7RXFHdnFpQk07SUFDRTtFckcwcWlCUjtBQUNGOztBcUdycWlCRTtFQUVJO0lBQ0U7RXJHdXFpQk47O0VxR3JxaUJNO0lBQ0U7RXJHd3FpQlI7O0VxR3JxaUJNO0lBQ0U7RXJHd3FpQlI7QUFDRjs7QXFHbHFpQkU7RUFFSTtJQUNFO0lBQ0E7RXJHb3FpQk47O0VxR2xxaUJNO0lBQ0U7RXJHcXFpQlI7QUFDRjs7QXFHL3BpQkU7RUFFSTtJQUNFO0VyR2lxaUJOOztFcUcvcGlCTTtJQUNFO0VyR2txaUJSOztFcUc5cGlCSTtJQUNFO0lBQ0E7RXJHaXFpQk47O0VxRy9waUJNO0lBQ0U7SUFDQTtJQUNBO0VyR2txaUJSOztFcUcvcGlCTTtJQUNFO0VyR2txaUJSOztFcUcvcGlCTTtJQUNFO0VyR2txaUJSOztFcUcvcGlCTTtJQUNFO0VyR2txaUJSO0FBQ0Y7O0FxRzVwaUJFO0VBRUk7SUFDRTtJQUNBO0lBQ0E7RXJHOHBpQk47O0VxRzVwaUJNO0lBQ0U7SUFDQTtFckcrcGlCUjs7RXFHN3BpQlE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFckdncWlCVjs7RXFHN3BpQlE7SUFDRTtFckdncWlCVjs7RXFHN3BpQlE7SUFDRTtFckdncWlCVjtBQUNGOztBcUd6cGlCRTtFQUVJO0lBQ0U7RXJHMnBpQk47O0VxR3pwaUJNO0lBQ0U7RXJHNHBpQlI7O0VxR3pwaUJNO0lBQ0U7RXJHNHBpQlI7O0VxRzFwaUJRO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RXJHNnBpQlY7O0VxRzFwaUJRO0lBQ0U7RXJHNnBpQlY7O0VxRzFwaUJRO0lBQ0U7RXJHNnBpQlY7QUFDRjs7QXFHdHBpQkU7RUFFSTtJQUNFO0lBQ0E7RXJHd3BpQk47O0VxR3RwaUJNO0lBQ0U7RXJHeXBpQlI7O0VxR3ZwaUJRO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RXJHMHBpQlY7QUFDRjs7QXFHbnBpQkU7RUFDRTtJQUNFO0VyR3NwaUJKOztFcUducGlCRTtJQUNFO0lBQ0E7RXJHc3BpQko7O0VxR25waUJFO0lBQ0U7SUFDQTtFckdzcGlCSjs7RXFHbnBpQkU7SUFDRTtJQUNBO0VyR3NwaUJKO0FBQ0Y7O0FxR25waUJJO0VBQ0U7SUFDRTtJQUNBO0VyR3NwaUJOO0FBQ0Y7O0FxR2pwaUJFO0VBQ0U7SUFDRTtFckdvcGlCSjs7RXFHbHBpQkk7SUFDRTtFckdxcGlCTjs7RXFHNW9pQkk7Ozs7Ozs7O0lBRUU7SUFDQTtFckdxcGlCTjs7RXFHbHBpQk07Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBSUU7RXJHaXJpQlI7QUFDRjs7QXFHMXFpQkE7RUFDRTtJQUNFO0lBQ0E7RXJHNnFpQkY7O0VxRzNxaUJBO0lBQ0U7SUFDQTtFckc4cWlCRjtBQUNGOztBcUd0cmlCQTtFQUNFO0lBQ0U7SUFDQTtFckc2cWlCRjs7RXFHM3FpQkE7SUFDRTtJQUNBO0VyRzhxaUJGO0FBQ0Y7O0FxRzNxaUJBO0VBQ0U7SUFDRTtFckc4cWlCRjs7RXFHNXFpQkE7SUFDRTtFckcrcWlCRjtBQUNGOztBcUdycmlCQTtFQUNFO0lBQ0U7RXJHOHFpQkY7O0VxRzVxaUJBO0lBQ0U7RXJHK3FpQkY7QUFDRjs7QXNHL29rQkE7OztFdEdvcGtCRTs7QXNHN29rQkE7RUFDRTtBdEdncGtCSjs7QXNHNW9rQk07O0VBQ0U7QXRHZ3BrQlI7O0FzRzdva0JNOztFQUNFO0F0R2lwa0JSOztBc0czb2tCRTtFQUNFO0VBQ0E7QXRHOG9rQko7O0FzRzVva0JJO0VBQ0U7RUFDQTtFQUNBO0F0Rytva0JOOztBc0d6b2tCSTtFQUNFO0VBQ0E7QXRHNG9rQk47O0FzRy9ua0JJO0VBQ0U7RUFDQTtBdEdrb2tCTjs7QXNHaG9rQk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0R21va0JSOztBc0dob2tCTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7VUFBQTtFQUNBO0F0R21va0JSOztBc0c3bmtCRTtFQUNFO0VBQUE7RUFDQTtBdEdnb2tCSjs7QXNHOW5rQkk7RUFDRTtBdEdpb2tCTjs7QXNHL25rQk07O0VBRUU7QXRHa29rQlI7O0FzR2hva0JROzs7O0VBRUU7RUFDQTtBdEdxb2tCVjs7QXNHam9rQk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtBdEdvb2tCUjs7QXNHbG9rQlE7RUFDRTtBdEdxb2tCVjs7QXNHaG9rQk07O0VBQ0U7RUFDQTtFQUNBO0F0R29va0JSOztBc0c1bmtCSTs7OztFQUVFO0VBQ0E7QXRHaW9rQk47O0FzRzVua0JNO0VBQ0U7RUFDQTtBdEcrbmtCUjs7QXNHem5rQkU7Ozs7O0VBR0U7QXRHOG5rQko7O0FzR3pua0JJO0VBQ0U7RUFDQTtBdEc0bmtCTjs7QXNHMW5rQk07RUFDRTtFQUNBO0F0RzZua0JSOztBc0czbmtCUTtFQUNFO0F0Rzhua0JWOztBc0d2bmtCRTtFQUNFO0F0RzBua0JKOztBc0d4bmtCSTtFQUNFO0F0RzJua0JOOztBc0d4bmtCSTtFQUNFO0F0RzJua0JOOztBc0d6bmtCTTtFQUNFO0VBQ0E7QXRHNG5rQlI7O0FzR3Rua0JFO0VBQ0U7SUFDRTtJQUFBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXRHeW5rQko7QUFDRjs7QXNHcG5rQkE7RUFDRTtJQUFLO0V0R3dua0JMOztFc0d2bmtCQTtJQUFPO0V0RzJua0JQO0FBQ0Y7O0FzRzlua0JBO0VBQ0U7SUFBSztFdEd3bmtCTDs7RXNHdm5rQkE7SUFBTztFdEcybmtCUDtBQUNGOztBc0d4bmtCQTtFQUNFO0VBQ0E7QXRHMm5rQkY7O0FzR3hua0JBO0VBQ0U7RUFDQTtBdEcybmtCRjs7QXNHeG5rQkE7RUFDRTtBdEcybmtCRjs7QXNHeG5rQkE7RUFDRTtBdEcybmtCRjs7QXNHcG5rQkk7RUFDRTtFQUNBO0VBQ0E7QXRHdW5rQk47O0FzR3Jua0JNO0VBQ0U7QXRHd25rQlI7O0FzR2xua0JFO0VBQ0U7RUFBQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRHcW5rQko7O0FzR2hua0JBO0VBSU07SUFDRTtJQUNBO0lBQ0E7RXRHZ25rQk47O0VzRzlta0JNOztJQUNFO0V0R2tua0JSOztFc0cvbWtCTTtJQUNFO0V0R2tua0JSOztFc0dobmtCUTtJQUNFO0lBQ0E7RXRHbW5rQlY7O0VzRzdta0JJO0lBQ0U7RXRHZ25rQk47QUFDRjs7QXVHaDRrQkE7OztFdkdxNGtCRTs7QXVHNTNrQkE7O0VBQ0U7QXZHZzRrQko7O0F1Rzcza0JFOztFQUNFO0VBQ0E7QXZHaTRrQko7O0F1Rzkza0JFOztFQUNFO0VBQ0E7QXZHazRrQko7O0F1Rzkza0JFOztFQUNFO0F2R2s0a0JKOztBdUdoNGtCSTs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBdkdvNGtCTjs7QXVHbDRrQk07O0VBQ0U7QXZHczRrQlI7O0F1R2w0a0JJOzs7Ozs7RUFDRTtFQUNBO0VBQ0E7QXZHMDRrQk47O0F1R3g0a0JNOzs7Ozs7RUFDRTtFQUNBO0F2R2c1a0JSOztBdUcxNGtCRTs7Ozs7O0VBQ0U7QXZHazVrQko7O0F1Ry80a0JNOzs7Ozs7RUFDRTtBdkd1NWtCUjs7QXVHaDVrQk07Ozs7OztFQUNFO0F2R3c1a0JSOztBdUdwNWtCTTs7Ozs7O0VBQ0U7QXZHNDVrQlI7O0F1R3g1a0JNOzs7Ozs7RUFDRTtBdkdnNmtCUjs7QXVHNTVrQk07Ozs7OztFQUNFO0F2R282a0JSOztBdUdoNmtCTTs7Ozs7O0VBQ0U7QXZHdzZrQlI7O0F1Ry81a0JROzs7Ozs7RUFDRTtFQUNBO0F2R3U2a0JWOztBdUdsNmtCTTs7Ozs7O0VBQ0U7RUFDQTtBdkcwNmtCUjs7QXVHdDZrQk07Ozs7OztFQUNFO0F2Rzg2a0JSOztBdUc3NmtCUTs7Ozs7O0VBQ0U7RUFDQTtFQUNBO0F2R3E3a0JWOztBdUdoN2tCTTs7Ozs7O0VBQ0U7RUFDQTtBdkd3N2tCUjs7QXVHcDdrQk07Ozs7OztFQUNFO0VBQ0E7QXZHNDdrQlI7O0F1RzU2a0JFOztFQUNFO0F2R2c3a0JKOztBdUc5NmtCSTs7RUFDRTtBdkdrN2tCTjs7QXVHOTZrQkk7RUFDRTs7SUFDRTtJQUFBO0lBQ0E7RXZHazdrQk47QUFDRjs7QXVHOTZrQk07O0VBQ0U7RUFDQTtFQUNBO0F2R2s3a0JSOztBdUdoN2tCUTs7OztFQUNFO0VBQ0E7QXZHczdrQlY7O0F1R3A3a0JVOzs7O0VBQ0U7QXZHMDdrQlo7O0F1R243a0JJOztFQUNFO0VBQ0E7QXZHdTdrQk47O0F1R3I3a0JNOztFQUNFO0VBQ0E7RUFDQTtBdkd5N2tCUjs7QXVHcDdrQkk7O0VBQ0U7RUFDQTtBdkd3N2tCTjs7QXVHcDdrQkk7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2R3c3a0JOOztBdUd0N2tCTTs7RUFDRTtFQUNBO0F2RzA3a0JSOztBdUd2N2tCTTs7RUFDRTtBdkcyN2tCUjs7QXVHbjdrQk07O0VBQ0U7RUFDQTtBdkd1N2tCUjs7QXVHcDdrQk07O0VBQ0U7RUFDQTtFQUNBO0F2R3c3a0JSOztBdUdsN2tCRTtFQUNFOztJQUNFO0lBQ0E7RXZHczdrQko7O0V1R2w3a0JJOztJQUNFO0lBQ0E7RXZHczdrQk47O0V1R3A3a0JNOztJQUNFO0V2R3c3a0JSO0FBQ0Y7O0F1R243a0JFO0VBQ0U7O0lBQ0U7RXZHdTdrQko7O0V1R3I3a0JJOztJQUNFO0V2R3k3a0JOOztFdUd0N2tCSTs7SUFDRTtFdkcwN2tCTjs7RXVHeDdrQk07O0lBQ0U7SUFDQTtFdkc0N2tCUjtBQUNGOztBd0dsc2xCQTs7OztFeEd3c2xCRTs7QXdHaHNsQkE7RUFDRTtFQUNBO0VBQ0E7QXhHbXNsQko7O0F3RzdybEJFO0VBQ0U7QXhHZ3NsQko7O0F3RzlybEJJO0VBSEY7SUFJSTtJQUNBO0V4R2tzbEJKO0FBQ0Y7O0F3RzNybEJJO0VBREY7SUFFSTtJQUNBO0V4RytybEJKO0FBQ0Y7O0F3RzVybEJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4RytybEJOOztBd0c1cmxCTTtFQUNFO0VBQ0E7RUFDQTtBeEcrcmxCUjs7QXdHNXJsQk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7S0FBQTtFQUNBO0VBQ0E7QXhHK3JsQlI7O0F3RzNybEJNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4RzhybEJSOztBd0d6cmxCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F4RzRybEJOOztBd0cxcmxCTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEc2cmxCUjs7QXdHMXJsQlE7RUFDRTtFQUNBO0VBQ0E7QXhHNnJsQlY7O0F3RzFybEJRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0tBQUE7RUFDQTtBeEc2cmxCVjs7QXdHMXJsQlE7RUFDRTtBeEc2cmxCVjs7QXdHMXJsQlE7RUFDRTtFQUNBO0F4RzZybEJWOztBd0d6cmxCUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F4RzRybEJWOztBd0cxcmxCVTtFQUNFO0VBQ0E7RUFDQTtBeEc2cmxCWjs7QXdHeHJsQlE7RUFDRTtBeEcycmxCVjs7QXdHenJsQlU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhHNHJsQlo7O0F3R3JybEJJO0VBQ0U7RUFDQTtFQUNBO0F4R3dybEJOOztBd0d0cmxCTTs7RUFDRTtFQUNBO0VBQ0E7QXhHMHJsQlI7O0F3R3ZybEJNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhHMHJsQlI7O0F3R3hybEJRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXhHMnJsQlY7O0F3R2xybEJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEdxcmxCSjs7QXdHbHJsQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEdxcmxCTjs7QXdHanJsQkk7RUFDRTtFQUNBO0VBQ0E7QXhHb3JsQk47O0F3R2xybEJNO0VBQ0U7RUFDQTtFQUNBO0F4R3FybEJSOztBd0ducmxCUTtFQUNFO0VBQ0E7RUFDQTtBeEdzcmxCVjs7QXdHbnJsQlE7RUFDRTtFQUNBO0VBQ0E7QXhHc3JsQlY7O0F3R25ybEJRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEdzcmxCVjs7QXdHbHJsQk07RUFDRTtFQUNBO0VBQ0E7QXhHcXJsQlI7O0F3R25ybEJRO0VBQ0U7QXhHc3JsQlY7O0F3R2pybEJNO0VBQ0U7RUFDQTtFQUNBO0F4R29ybEJSOztBd0dscmxCUTtFQUNFO0VBQ0E7QXhHcXJsQlY7O0F3R25ybEJVO0VBQ0U7RUFDQTtBeEdzcmxCWjs7QXdHbnJsQlU7RUFDRTtFQUNBO0VBQ0E7QXhHc3JsQlo7O0F3R25ybEJVO0VBQ0U7RUFDQTtBeEdzcmxCWjs7QXdHL3FsQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4R2tybEJOOztBd0docmxCTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F4R21ybEJSOztBd0dqcmxCUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0tBQUE7RUFDQTtBeEdvcmxCVjs7QXdHanJsQlE7RUFDRTtBeEdvcmxCVjs7QXdHbHJsQlU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBeEdxcmxCWjs7QXdHbnJsQlk7RUFDRTtFQUNBO0F4R3NybEJkOztBd0dwcmxCYztFQUNFO0VBQ0E7QXhHdXJsQmhCOztBd0dscmxCVTtFQUNFO0VBQ0E7QXhHcXJsQlo7O0F3R25ybEJZO0VBQ0U7RUFDQTtBeEdzcmxCZDs7QXdHaHJsQk07RUFDRTtFQUNBO0VBQ0E7QXhHbXJsQlI7O0F3R2pybEJRO0VBQ0U7RUFDQTtFQUNBO0F4R29ybEJWOztBd0dscmxCVTtFQUNFO0F4R3FybEJaOztBd0c5cWxCSTtFQUNFO0VBQ0E7QXhHaXJsQk47O0F3Ry9xbEJNO0VBQ0U7QXhHa3JsQlI7O0F3Ry9xbEJNO0VBQ0U7RUFDQTtBeEdrcmxCUjs7QXdHL3FsQk07RUFDRTtBeEdrcmxCUjs7QXdHN3FsQkk7RUFDRTtBeEdncmxCTjs7QXdHOXFsQk07RUFDRTtFQUNBO0VBQ0E7QXhHaXJsQlI7O0F3Ry9xbEJRO0VBQ0U7QXhHa3JsQlY7O0F3Ry9xbEJRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXhHa3JsQlY7O0F3RzlxbEJRO0VBQ0U7RUFDQTtFQUNBO0F4R2lybEJWOztBd0cvcWxCVTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEdrcmxCWjs7QXdHaHJsQlk7RUFDRTtBeEdtcmxCZDs7QXdHanJsQmM7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4R29ybEJoQjs7QXdHaHJsQlk7RUFDRTtBeEdtcmxCZDs7QXdHN3FsQlE7RUFDRTtFQUNBO0VBQ0E7QXhHZ3JsQlY7O0F3RzlxbEJVO0VBQ0U7RUFDQTtBeEdpcmxCWjs7QXdHNXFsQlE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhHK3FsQlY7O0F3R3pxbEJJO0VBQ0U7QXhHNHFsQk47O0F3RzFxbEJNO0VBQ0U7RUFDQTtFQUNBO0F4RzZxbEJSOztBd0cxcWxCTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F4RzZxbEJSOztBd0czcWxCUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEc4cWxCVjs7QXdHNXFsQlU7RUFDRTtBeEcrcWxCWjs7QXdHNXFsQlU7RUFDRTtBeEcrcWxCWjs7QXdHM3FsQlE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4RzhxbEJWOztBd0c1cWxCVTtFQUNFO0VBQ0E7QXhHK3FsQlo7O0F3R3hxbEJJO0VBQ0U7RUFDQTtFQUNBO0F4RzJxbEJOOztBd0dscWxCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F4R3FxbEJOOztBd0ducWxCTTtFQUNFO0F4R3NxbEJSOztBd0dwcWxCUTtFQUNFO0VBQ0E7RUFDQTtBeEd1cWxCVjs7QXdHcHFsQlE7RUFDRTtFQUNBO0VBQ0E7QXhHdXFsQlY7O0F3RzlwbEJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXhHaXFsQko7O0F3Ry9wbEJJO0VBQ0U7RUFDQTtBeEdrcWxCTjs7QXdHOXBsQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhHaXFsQk47O0F3RzdwbEJJO0VBQ0U7QXhHZ3FsQk47O0F3RzlwbEJNO0VBQ0U7RUFDQTtBeEdpcWxCUjs7QXdHL3BsQlE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4R2txbEJWOztBd0docWxCVTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhHbXFsQlo7O0F3RzVwbEJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXhHK3BsQk47O0F3RzdwbEJNO0VBQ0U7QXhHZ3FsQlI7O0F3RzNwbEJJO0VBQ0U7QXhHOHBsQk47O0F3RzVwbEJNO0VBQ0U7RUFDQTtFQUNBO0F4RytwbEJSOztBd0c1cGxCUTtFQUNFO0VBQ0E7QXhHK3BsQlY7O0F3RzNwbEJZO0VBQ0U7RUFDQTtBeEc4cGxCZDs7QXdHM3BsQmM7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEc4cGxCaEI7O0F3RzFwbEJjO0VBQ0U7QXhHNnBsQmhCOztBd0dwcGxCSTtFQUNFO0F4R3VwbEJOOztBd0dycGxCTTtFQUNFO0VBQ0E7QXhHd3BsQlI7O0F3R3RwbEJRO0VBQ0U7QXhHeXBsQlY7O0F3R3ZwbEJVO0VBQ0U7QXhHMHBsQlo7O0F3R3RwbEJRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhHeXBsQlY7O0F3R3RwbEJRO0VBQ0U7RUFDQTtFQUNBO0F4R3lwbEJWOztBd0ducGxCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhHc3BsQk47O0F3R3BwbEJNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXhHdXBsQlI7O0F3R3JwbEJRO0VBQ0U7RUFDQTtBeEd3cGxCVjs7QXdHcHBsQk07RUFDRTtFQUNBO0VBQ0E7QXhHdXBsQlI7O0F3R3BwbEJVOztFQUNFO0VBQ0E7RUFDQTtFQUNBO0F4R3dwbEJaOztBd0dycGxCVTtFQUNFO0VBQ0E7QXhHd3BsQlo7O0F3R3RwbEJZO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEd5cGxCZDs7QXdHdnBsQmM7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBeEcwcGxCaEI7O0F3RzlvbEJFO0VBQ0U7QXhHaXBsQko7O0F3Ry9vbEJJO0VBQ0U7QXhHa3BsQk47O0F3R2hwbEJNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhHbXBsQlI7O0F3R2pwbEJRO0VBQ0U7RUFDQTtBeEdvcGxCVjs7QXdHanBsQlE7RUFDRTtFQUNBO0VBQ0E7QXhHb3BsQlY7O0F3Ry9vbEJJO0VBQ0U7QXhHa3BsQk47O0F3RzlvbEJRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXhHaXBsQlY7O0F3Ry9vbEJVO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXhHa3BsQlo7O0F3R2hwbEJZO0VBQ0U7RUFDQTtFQUNBO0F4R21wbEJkOztBd0docGxCWTtFQUNFO0VBQ0E7QXhHbXBsQmQ7O0F3R2hwbEJZO0VBQ0U7RUFDQTtBeEdtcGxCZDs7QXdHOW9sQlE7RUFDRTtFQUNBO0F4R2lwbEJWOztBd0cvb2xCVTtFQUNFO0VBQ0E7RUFDQTtBeEdrcGxCWjs7QXdHaHBsQlk7RUFDRTtFQUNBO0F4R21wbEJkOztBd0docGxCWTtFQUNFO0VBQ0E7QXhHbXBsQmQ7O0F3Ry9vbEJVO0VBQ0U7RUFDQTtBeEdrcGxCWjs7QXdHL29sQlU7RUFDRTtFQUNBO0VBQ0E7QXhHa3BsQlo7O0F3RzNvbEJRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXhHOG9sQlY7O0F3RzVvbEJVO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEcrb2xCWjs7QXdHN29sQlk7RUFDRTtFQUNBO0VBQ0E7QXhHZ3BsQmQ7O0F3RzNvbEJRO0VBQ0U7RUFDQTtBeEc4b2xCVjs7QXdHM29sQlU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4RzhvbEJaOztBd0c1b2xCWTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEcrb2xCZDs7QXdHN29sQmM7RUFDRTtBeEdncGxCaEI7O0F3RzNvbEJVO0VBQ0U7RUFDQTtFQUNBO0F4RzhvbEJaOztBd0c1b2xCWTtFQUNFO0VBQ0E7QXhHK29sQmQ7O0F3RzVvbEJZO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXhHK29sQmQ7O0F3RzNvbEJVO0VBQ0U7RUFDQTtFQUNBO0F4RzhvbEJaOztBd0c1b2xCWTtFQUNFO0VBQ0E7RUFDQTtBeEcrb2xCZDs7QXdHNW9sQlk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4RytvbEJkOztBd0dwb2xCRTtFQUNFO0VBQ0E7RUFDQTtBeEd1b2xCSjs7QXdHcm9sQkk7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXhHeW9sQk47O0F3R3RvbEJJO0VBQ0U7RUFDQTtFQUNBO0F4R3lvbEJOOztBd0d2b2xCTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhHMG9sQlI7O0F3R3hvbEJRO0VBQ0U7RUFDQTtBeEcyb2xCVjs7QXdHeG9sQlE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4RzJvbEJWOztBd0d6b2xCVTtFQUNFO0VBQ0E7RUFDQTtLQUFBO0F4RzRvbEJaOztBd0d4b2xCUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F4RzJvbEJWOztBd0d6b2xCVTtFQUNFO0VBQ0E7QXhHNG9sQlo7O0F3RzFvbEJZO0VBQ0U7QXhHNm9sQmQ7O0F3R3hvbEJRO0VBQ0U7RUFDQTtFQUNBO0F4RzJvbEJWOztBd0dsb2xCRTtFQUNFO0lBQ0U7RXhHcW9sQko7O0V3R2xvbEJFO0lBQ0U7SUFDQTtFeEdxb2xCSjs7RXdHbG9sQkk7SUFDRTtFeEdxb2xCTjs7RXdHbG9sQkk7SUFDRTtFeEdxb2xCTjs7RXdHbG9sQlE7SUFDRTtFeEdxb2xCVjs7RXdHOW5sQkk7SUFDRTtFeEdpb2xCTjs7RXdHOW5sQkk7SUFDRTtFeEdpb2xCTjs7RXdHM25sQkk7SUFDRTtFeEc4bmxCTjs7RXdHNW5sQk07SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0V4RytubEJSOztFd0c3bmxCUTtJQUNFO0lBQ0E7SUFDQTtFeEdnb2xCVjs7RXdHN25sQlE7SUFDRTtJQUNBO0lBQ0E7RXhHZ29sQlY7O0V3RzdubEJRO0lBQ0U7RXhHZ29sQlY7O0V3RzVubEJNO0lBQ0U7RXhHK25sQlI7O0V3RzdubEJRO0lBQ0U7RXhHZ29sQlY7QUFDRjs7QXdHMW5sQkU7RUFDRTtJQUNFO0lBQ0E7RXhHNm5sQko7O0V3RzFubEJFO0lBQ0U7RXhHNm5sQko7O0V3RzFubEJNO0lBQ0U7RXhHNm5sQlI7O0V3R3hubEJFO0lBQ0U7SUFDQTtFeEcybmxCSjtBQUNGOztBd0dybmxCRTtFQUNFO0lBQ0U7RXhHd25sQko7QUFDRjs7QXdHbG5sQkU7RUFDRTtBeEdxbmxCSjs7QXdHNW1sQk07RUFDRTtFQUNBO0F4RyttbEJSOztBeUdqc25CQTs7O0V6R3NzbkJFOztBeUdoc25CRTtFQUNJO0VBQUE7RUFDQTtFQUNBO0F6R21zbkJSOztBeUcvcm5CSTtFQUNJO0F6R2tzbkJSOztBeUcvcm5CSTtFQUNJO0F6R2tzbkJSOztBeUc3cm5CUTtFQUNJO0VBQ0E7QXpHZ3NuQlo7O0F5RzdybkJRO0VBQ0k7RUFDQTtBekdnc25CWjs7QXlHNXJuQlE7RUFDSTtBekcrcm5CWjs7QXlHMXJuQkk7RUFDSTtFQUNBO0VBQ0E7QXpHNnJuQlI7O0F5RzNybkJRO0VBQ0k7RUFDQTtBekc4cm5CWjs7QXlHNXJuQlk7O0VBQ0k7RUFDQTtBekdnc25CaEI7O0F5RzlybkJnQjs7RUFDSTtBekdrc25CcEI7O0F5RzNybkJJO0VBQ0k7RUFDQTtFQUNBO0F6RzhybkJSOztBeUc1cm5CUTtFQUNJO0VBQ0E7RUFDQTtBekcrcm5CWjs7QXlHNXJuQlE7RUFDSTtFQUNBO0VBQ0E7QXpHK3JuQlo7O0F5RzVybkJRO0VBQ0k7RUFDQTtFQUNBO0F6RytybkJaOztBeUcxcm5CSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpHNnJuQlI7O0F5RzNybkJRO0VBQ0k7RUFDQTtBekc4cm5CWjs7QXlHM3JuQlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBekc4cm5CWjs7QXlHM3JuQlE7RUFDSTtFQUNBO0VBQ0E7QXpHOHJuQlo7O0F5RzNybkJRO0VBQ0k7RUFDQTtBekc4cm5CWjs7QXlHenJuQkk7RUFDSTtFQUNBO0F6RzRybkJSOztBeUcxcm5CUTtFQUNJO0VBQ0E7QXpHNnJuQlo7O0F5RzNybkJZO0VBQ0k7RUFDQTtBekc4cm5CaEI7O0F5RzNybkJZO0VBQ0k7RUFDQTtBekc4cm5CaEI7O0F5RzFybkJRO0VBQ0k7QXpHNnJuQlo7O0F5R3hybkJJO0VBQ0k7RUFDQTtBekcycm5CUjs7QXlHdnJuQkk7RUFDSTtFQUNBO0F6RzBybkJSOztBeUd0cm5CSTtFQUNJO0VBQ0E7QXpHeXJuQlI7O0F5R3JybkJJO0VBQ0k7RUFDQTtFQUNBO0F6R3dybkJSOztBeUd0cm5CUTtFQUNJO0VBQ0E7QXpHeXJuQlo7O0F5R3BybkJJO0VBQ0k7QXpHdXJuQlI7O0F5R3JybkJRO0VBQ0k7QXpHd3JuQlo7O0F5R2pybkJROzs7O0VBQ0k7RUFDQTtBekd1cm5CWjs7QXlHcHJuQlE7Ozs7RUFDSTtFQUNBO0F6RzBybkJaOztBeUd0cm5CSTs7RUFDSTtFQUNBO0F6RzBybkJSOztBeUd0cm5CSTtFQUNJO0VBQ0E7QXpHeXJuQlI7O0F5R3ZybkJRO0VBQ0k7QXpHMHJuQlo7O0F5R3ZybkJRO0VBQ0k7QXpHMHJuQlo7O0F5R3ZybkJRO0VBQ0k7RUFDQTtBekcwcm5CWjs7QXlHcHJuQkE7RUFFUTtJQUNJO0lBQ0E7RXpHc3JuQlY7O0V5R25ybkJNO0lBQ0k7RXpHc3JuQlY7QUFDRjs7QXlHbHJuQkE7RUFFUTtJQUNJO0V6R29ybkJWOztFeUdqcm5CTTtJQUNJO0V6R29ybkJWOztFeUdqcm5CTTtJQUNJO0V6R29ybkJWOztFeUdscm5CVTs7SUFFSTtJQUNBO0V6R3FybkJkO0FBQ0Y7O0EwR2g3bkJJO0VBQ0k7RUFDQTtBMUdtN25CUjs7QTBHOTZuQlE7RUFDSTtBMUdpN25CWjs7QTBHOTZuQlE7O0VBQ0k7QTFHazduQlo7O0EwRzk2bkJJO0VBQ0k7QTFHaTduQlI7O0EwRzk2bkJJO0VBQ0k7QTFHaTduQlI7O0EwRzc2bkJROzs7RUFDSTtBMUdrN25CWjs7QTBHaDduQlk7OztFQUNJO0ExR3E3bkJoQjs7QTBHLzZuQkk7OztFQUdJO0ExR2s3bkJSOztBMkczOW5CQTs7O0UzR2crbkJFOztBMkd6OW5CTTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNHNDluQlo7O0EyRzE5bkJZO0VBQ0k7QTNHNjluQmhCOztBMkcxOW5CWTtFQUNJO0VBQ0E7RUFDQTtBM0c2OW5CaEI7O0EyRzE5bkJZOztFQUVJO0VBQ0E7QTNHNjluQmhCOztBMkczOW5CZ0I7O0VBQ0k7QTNHKzluQnBCOztBMkd4OW5CWTtFQUNJO0EzRzI5bkJoQjs7QTJHbjluQm9CO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTNHczluQnhCOztBMkdwOW5Cd0I7RUFDSTtFQUNBO0VBQ0E7QTNHdTluQjVCOztBMkdwOW5Cd0I7RUFDSTtFQUNBO0EzR3U5bkI1Qjs7QTJHajluQlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBM0dvOW5CaEI7O0EyR2w5bkJnQjtFQUNJO0EzR3E5bkJwQjs7QTJHLzhuQlE7RUFDSTtFQUNBO0EzR2s5bkJaOztBMkc3OG5CWTtFQUNJO0EzR2c5bkJoQjs7QTJHejhuQkE7RUFHWTtJQUNJO0UzRzA4bkJkOztFMkd4OG5CYztJQUNJO0lBQ0E7RTNHMjhuQmxCO0FBQ0Y7O0E0R2xqb0JBOztBQUVBO0VBQ1E7RUF3SEo7RUFvQkE7RUE0QkE7RUFvQkE7RUFVQTtFQWlCQTtFQXlCQTtFQW1CQTtFQUVBO0VBMEJBO0VBcUVBO0VBMkJBO0VBMkNBO0VBZ0JBO0VBYUE7RUFXQTtFQWFBO0VBZ0JBO0VBcUJBO0VBRUE7RUFVQTtFQW1DQTtFQWNBO0VBT0E7RUFhQTtFQVVBO0VBa0JBO0VBaUJBO0VBTUE7RUFxQ0E7RUFRQTtFQTBCQTtFQU1BO0VBTUE7RUEwQkE7RUFZQTtFQVlBO0VBT0E7RUFFQTtFQXlCQTtFQTBFQTtFQXdCQTtFQWdDQTtFQXNCQTtFQVlBO0VBb0JBO0VBb0JBO0VBbUJBO0VBRUE7RUF3Q0E7RUE4R0E7RUFpREE7RUFnQkE7RUFPQTtFQU1BO0VBY0E7RUFXQTtFQU9BO0VBRUE7RUFtQ0E7RUE2QkE7RUE2SEE7RUE0QkE7RUFxQkE7RUFPQTtFQWFBO0VBUUE7RUFNQTtFQVdBO0E1R3lrbEJKOztBNEd6bm9CUTtFQUZSO0lBc0NRO0lBY0E7SUErQkE7RTVHK2lvQk47O0U0Ry9ub0JNO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7T0FBQTtRQUFBO1lBQUE7SUFDQTtFNUdrb29CVjs7RTRHL25vQk07SUFDSTtJQUFrQjtJQUNsQjtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTVHbW9vQlY7O0U0R2hvb0JNO0lBQ0k7RTVHbW9vQlY7O0U0R2hvb0JNO0lBQ0k7RTVHbW9vQlY7O0U0R2hvb0JNO0lBQ0k7SUFDQTtJQUNBO0U1R21vb0JWOztFNEcvbm9CTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0U1R2tvb0JWOztFNEcvbm9CTTtJQUNJO0lBQ0E7SUFDQTtFNUdrb29CVjs7RTRHOW5vQk07SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFNUdpb29CVjs7RTRHOW5vQk07SUFDSTtFNUdpb29CVjs7RTRHem5vQk07SUFDSTtJQUNBO0U1RzRub0JWOztFNEd4bm9CTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0U1RzJub0JWOztFNEd4bm9CTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTVHMm5vQlY7O0U0R3hub0JNO0lBQ0k7RTVHMm5vQlY7O0U0R3hub0JNO0lBQ0k7RTVHMm5vQlY7O0U0R3hub0JNO0lBQ0k7SUFDQTtJQUNBO0U1RzJub0JWOztFNEd4bm9CTTtJQUNJO0U1RzJub0JWO0FBQ0Y7O0E0R3Zub0JJO0VBQ0k7SUFDSTtJQUNBO0U1RzBub0JWOztFNEd2bm9CTTs7OztJQUVJO0lBQ0E7SUFDQTtJQUNBO0U1RzRub0JWOztFNEd6bm9CTTtJQUNJO0U1RzRub0JWO0FBQ0Y7O0E0R3hub0JJO0VBQ0k7SUFDSTtJQUNBO0lBQ0E7SUFDQTtFNUcybm9CVjs7RTRHeG5vQk07SUFDSTtFNUcybm9CVjs7RTRHeG5vQk07SUFDSTtJQUNBO0U1RzJub0JWOztFNEd4bm9CTTtJQUNJO0lBQ0E7RTVHMm5vQlY7O0U0R3hub0JNO0lBQ0k7RTVHMm5vQlY7QUFDRjs7QTRHdm5vQkk7RUFDSTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFNUcwbm9CVjs7RTRHdm5vQk07SUFDSTtJQUNBO0U1RzBub0JWO0FBQ0Y7O0E0R3Rub0JJO0VBQ0k7Ozs7SUFJSTtFNUd5bm9CVjtBQUNGOztBNEdybm9CSTtFQUNJO0lBQ0k7RTVHd25vQlY7O0U0R3Jub0JNO0lBQ0k7SUFDQTtFNUd3bm9CVjs7RTRHcm5vQk07SUFDSTtJQUNBO0U1R3dub0JWO0FBQ0Y7O0E0R3Bub0JJO0VBQ0k7RUFDQTtBNUd1bm9CUjs7QTRHcG5vQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO1VBQUE7QTVHdW5vQlI7O0E0R3Bub0JJO0VBQ0k7SUFBSztFNUd3bm9CWDs7RTRHdm5vQk07SUFBTztFNUcybm9CYjtBQUNGOztBNEd4bm9CSTtFQUNJO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7RTVHMm5vQlY7O0U0R3hub0JNO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1RzJub0JWO0FBQ0Y7O0E0R3Jub0JJO0VBQ0k7SUFDSTtJQUNBO0lBQ0E7RTVHd25vQlY7O0U0R3Jub0JNO0lBQ0k7RTVHd25vQlY7O0U0R3Jub0JNOztJQUNJO0U1R3lub0JWOztFNEd0bm9CTTtJQUNJO0U1R3lub0JWOztFNEd0bm9CTTtJQUNJO0lBQ0E7RTVHeW5vQlY7QUFDRjs7QTRHcm5vQkk7RUFqU0o7SUEyU1E7SUFZQTtJQVNBO0lBT0E7SUFjQTtJQVVBO0U1R2lrb0JOOztFNEc5bm9CTTtJQUNJO0U1R2lvb0JWOztFNEc5bm9CTTtJQUNJO0lBQ0E7RTVHaW9vQlY7O0U0Rzdub0JNOztJQUNJO0lBQ0E7SUFDQTtFNUdpb29CVjs7RTRHOW5vQk07SUFDSTtJQUNBO0U1R2lvb0JWOztFNEc3bm9CTTs7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1R2lvb0JWOztFNEc3bm9CTTtJQUNJO0lBQ0E7SUFDQTtFNUdnb29CVjs7RTRHNW5vQk07SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1Rytub0JWOztFNEc1bm9CTTtJQUNJO0lBQ0E7RTVHK25vQlY7O0U0RzNub0JNO0lBQ0k7SUFDQTtFNUc4bm9CVjs7RTRHM25vQk07SUFDSTtFNUc4bm9CVjs7RTRHMW5vQk07O0lBQ0k7RTVHOG5vQlY7QUFDRjs7QTRHMW5vQkk7RUFDSTtJQUNJO0U1RzZub0JWOztFNEcxbm9CTTtJQUNJO0U1RzZub0JWOztFNEcxbm9CTTs7SUFDSTtJQUNBO0U1Rzhub0JWOztFNEczbm9CTTtJQUNJO0lBQ0E7RTVHOG5vQlY7O0U0RzNub0JNO0lBQ0k7SUFDQTtJQUNBO0U1Rzhub0JWO0FBQ0Y7O0E0RzFub0JJO0VBQ0k7SUFDSTtJQUNBO0U1RzZub0JWOztFNEcxbm9CTTtJQUNJO0U1RzZub0JWOztFNEcxbm9CTTs7O0lBR0k7RTVHNm5vQlY7O0U0RzFub0JNO0lBQ0k7RTVHNm5vQlY7O0U0RzFub0JNO0lBQ0k7SUFDQTtFNUc2bm9CVjs7RTRHMW5vQk07SUFDSTtJQUNBO0U1RzZub0JWOztFNEcxbm9CTTtJQUNJO0lBQ0E7SUFDQTtFNUc2bm9CVjs7RTRHMW5vQk07SUFDSTtJQUNBO0U1RzZub0JWO0FBQ0Y7O0E0R3pub0JJO0VBQ0k7SUFFSTtFNUcybm9CVjs7RTRHeG5vQk07SUFDSTtFNUcybm9CVjtBQUNGOztBNEdubm9CSTtFQUNJO0lBQ0k7SUFDQTtJQUNBO0U1R3Nub0JWOztFNEdubm9CTTtJQUNJO0U1R3Nub0JWO0FBQ0Y7O0E0R2xub0JJO0VBQ0k7RUFDQTtBNUdxbm9CUjs7QTRHbG5vQkk7RUFDSTtFQUNBO0E1R3Fub0JSOztBNEdqbm9CSTtFQUNJO0lBQ0k7RTVHb25vQlY7QUFDRjs7QTRHam5vQkk7RUFDSTtJQUNJO0U1R29ub0JWO0FBQ0Y7O0E0R2hub0JJO0VBQ0k7SUFDSTtJQUNBO0U1R21ub0JWOztFNEdobm9CTTtJQUNJO0U1R21ub0JWOztFNEdobm9CTTtJQUNJO0U1R21ub0JWO0FBQ0Y7O0E0Ry9tb0JJO0VBQ0k7SUFDSTtFNUdrbm9CVjs7RTRHL21vQk07SUFDSTtFNUdrbm9CVjs7RTRHL21vQk07SUFDSTtJQUNBO0U1R2tub0JWOztFNEcvbW9CTTtJQUNJO0lBQ0E7RTVHa25vQlY7QUFDRjs7QTRHNW1vQkk7Ozs7O0VBR0k7RUFBa0I7RUFDbEI7RUFBaUI7RUFDakI7RUFDQTtBNUdtbm9CUjs7QTRHL21vQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUdrbm9CUjs7QTRHL21vQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUdrbm9CUjs7QTRHL21vQkk7RUFDSTtFQUNBO0E1R2tub0JSOztBNEc5bW9CSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0tBQUE7TUFBQTtVQUFBO0VBQ0E7QTVHaW5vQlI7O0E0Rzdtb0JJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTVHZ25vQlI7O0E0Rzdtb0JJO0VBQ0k7RUFDQTtFQUNBO0E1R2dub0JSOztBNEc1bW9CSTtFQUNJO0VBQ0E7RUFDQTtBNUcrbW9CUjs7QTRHM21vQkk7Ozs7O0VBR0k7QTVHZ25vQlI7O0E0Rzdtb0JJO0VBQ0k7RUFDQTtFQUNBO0E1R2dub0JSOztBNEc1bW9CSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUcrbW9CUjs7QTRHM21vQkk7OztFQUVJO0VBQ0E7RUFDQTtBNUcrbW9CUjs7QTRHNW1vQkk7RUFDSTtFQUNBO0E1Ryttb0JSOztBNEc1bW9CSTtFQUNJO0VBQ0E7QTVHK21vQlI7O0E0RzNtb0JJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTVHOG1vQlI7O0E0RzNtb0JJO0VBQ0k7RUFDQTtBNUc4bW9CUjs7QTRHdG1vQkk7O0VBRUk7QTVHeW1vQlI7O0E0R3Jtb0JJO0VBMW9CSjtJQW1wQlE7SUFXQTtJQU1BO0U1R2tsb0JOOztFNEczbW9CTTtJQUNJO0U1Rzhtb0JWOztFNEczbW9CTTtJQUNJO0U1Rzhtb0JWOztFNEcxbW9CTTtJQUNJO0lBQ0E7SUFDQTtFNUc2bW9CVjs7RTRHMW1vQk07SUFDSTtFNUc2bW9CVjs7RTRHem1vQk07O0lBQ0k7SUFDQTtFNUc2bW9CVjs7RTRHem1vQk07SUFDSTtFNUc0bW9CVjs7RTRHem1vQk07SUFDSTtFNUc0bW9CVjtBQUNGOztBNEd4bW9CSTs7Ozs7RUFHSTtFQUNBO0E1RzZtb0JSOztBNEd6bW9CSTtFQUNJO0VBQ0E7QTVHNG1vQlI7O0E0R3ptb0JJO0VBQ0k7RUFDQTtBNUc0bW9CUjs7QTRHem1vQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7VUFBQTtBNUc0bW9CUjs7QTRHeG1vQkk7OztFQUNJO0VBQ0E7QTVHNm1vQlI7O0E0R3ptb0JJO0VBQ0k7RUFDQTtBNUc0bW9CUjs7QTRHeG1vQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBNUcybW9CUjs7QTRHeG1vQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUcybW9CUjs7QTRHeG1vQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1RzJtb0JSOztBNEd2bW9CSTs7OztFQUVJO0VBQ0E7RUFDQTtBNUc0bW9CUjs7QTRHem1vQkk7RUFDSTtBNUc0bW9CUjs7QTRHeG1vQkk7RUFDSTs7OztJQUVJO0lBQWlCO0U1Rzhtb0IzQjs7RTRHM21vQk07SUFDSTtFNUc4bW9CVjtBQUNGOztBNEcxbW9CSTtFQUNJO0lBQ0k7RTVHNm1vQlY7QUFDRjs7QTRHdm1vQkk7RUF4eEJKO0lBeXlCUTtFNUcybG9CTjs7RTRHM21vQk07SUFDSTtJQUNBO0lBQ0E7RTVHOG1vQlY7O0U0RzNtb0JNO0lBQ0k7SUFDQTtFNUc4bW9CVjs7RTRHM21vQk07SUFDSTtJQUNBO0U1Rzhtb0JWOztFNEcxbW9CTTtJQUNJO0lBQ0E7RTVHNm1vQlY7QUFDRjs7QTRHem1vQkk7RUFFSTtJQUNJO0U1RzJtb0JWOztFNEd4bW9CTTtJQUNJO0U1RzJtb0JWOztFNEd4bW9CTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFNUcybW9CVjs7RTRHeG1vQk07SUFDSTtFNUcybW9CVjs7RTRHeG1vQk07SUFDSTtJQUNBO0lBQ0E7SUFDQTtFNUcybW9CVjs7RTRHeG1vQk07SUFDSTtJQUNBO0lBQ0E7SUFDQTtFNUcybW9CVjs7RTRHeG1vQk07SUFDSTtFNUcybW9CVjs7RTRHeG1vQk07SUFDSTtJQUNBO0lBQ0E7SUFDQTtFNUcybW9CVjs7RTRHeG1vQk07SUFDSTtJQUNBO0U1RzJtb0JWOztFNEd4bW9CTTtJQUNJO0lBQ0E7RTVHMm1vQlY7O0U0R3htb0JNO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFNUcybW9CVjtBQUNGOztBNEd4bW9CSTtFQUNJO0lBQ0k7RTVHMm1vQlY7QUFDRjs7QTRHdm1vQkk7RUFDSTtJQUNJO0lBQ0E7RTVHMG1vQlY7O0U0R3Ztb0JNOztJQUNJO0lBQ0E7RTVHMm1vQlY7O0U0R3htb0JNO0lBQ0k7SUFDQTtFNUcybW9CVjs7RTRHeG1vQk07SUFDSTtJQUNBO0lBQ0E7RTVHMm1vQlY7QUFDRjs7QTRHdm1vQkk7RUFuNUJKO0lBeTVCUTtFNUdzbW9CTjs7RTRHM21vQk07O0lBQ0k7SUFDQTtFNUcrbW9CVjs7RTRHM21vQk07SUFDSTtJQUNBO0lBQ0E7RTVHOG1vQlY7O0U0RzNtb0JNO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFNUc4bW9CVjs7RTRHM21vQk07SUFDSTtJQUNBO0lBQ0E7RTVHOG1vQlY7QUFDRjs7QTRHMW1vQkk7RUFDSTtJQUNJO0U1RzZtb0JWOztFNEcxbW9CTTs7SUFDSTtJQUNBO0U1Rzhtb0JWOztFNEczbW9CTTtJQUNJO0lBQ0E7RTVHOG1vQlY7O0U0RzNtb0JNOztJQUNJO0lBQ0E7RTVHK21vQlY7QUFDRjs7QTRHM21vQkk7RUFDSTtJQUNJO0U1Rzhtb0JWOztFNEcxbW9CTTtJQUNJO0U1RzZtb0JWO0FBQ0Y7O0E0R3ptb0JJO0VBQ0k7SUFDSTtFNUc0bW9CVjs7RTRHem1vQk07SUFDSTtFNUc0bW9CVjs7RTRHem1vQk07SUFDSTtJQUNBO0U1RzRtb0JWOztFNEd6bW9CTTtJQUNJO0U1RzRtb0JWO0FBQ0Y7O0E0R3htb0JJO0VBQ0k7RUFDQTtBNUcybW9CUjs7QTRHeG1vQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO1VBQUE7QTVHMm1vQlI7O0E0R3Ztb0JJO0VBQ0k7SUFDSTtFNUcwbW9CVjs7RTRHdm1vQk07SUFDSTtFNUcwbW9CVjs7RTRHdm1vQk07SUFDSTtFNUcwbW9CVjs7RTRHdm1vQk07O0lBQ0k7RTVHMm1vQlY7QUFDRjs7QTRHcm1vQkk7RUFDSTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0U1R3dtb0JWOztFNEdybW9CTTtJQUNJO0U1R3dtb0JWOztFNEdybW9CTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0U1R3dtb0JWOztFNEdybW9CTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFNUd3bW9CVjtBQUNGOztBNEdybW9CSTtFQUNJO0lBQ0k7RTVHd21vQlY7O0U0R3Jtb0JNO0lBQ0k7RTVHd21vQlY7QUFDRjs7QTRHcG1vQkk7RUExakNKO0lBOGtDUTtJQWlDQTtJQWdCQTtJQXFCQTtFNUdraG9CTjs7RTRHM21vQk07SUFDSTtFNUc4bW9CVjs7RTRHM21vQk07SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFNUc4bW9CVjs7RTRHM21vQk07SUFDSTtJQUNBO0U1Rzhtb0JWOztFNEcxbW9CTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0U1RzZtb0JWOztFNEcxbW9CTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFNUc2bW9CVjs7RTRHMW1vQk07SUFDSTtJQUNBO0U1RzZtb0JWOztFNEcxbW9CTTtJQUNJO0U1RzZtb0JWOztFNEcxbW9CTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0U1RzZtb0JWOztFNEd6bW9CTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1RzRtb0JWOztFNEd6bW9CTTtJQUNJO0lBQ0E7RTVHNG1vQlY7O0U0R3htb0JNO0lBQ0k7SUFDQTtJQUNBO0U1RzJtb0JWOztFNEd4bW9CTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1RzJtb0JWOztFNEd4bW9CTTtJQUNJO0U1RzJtb0JWOztFNEd2bW9CTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0U1RzBtb0JWOztFNEd2bW9CTTtJQUNJO0U1RzBtb0JWO0FBQ0Y7O0E0R3Ztb0JJO0VBQ0k7SUFDSTtFNUcwbW9CVjtBQUNGOztBNEd0bW9CSTtFQUNJO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTVHeW1vQlY7O0U0R3Rtb0JNO0lBQ0k7RTVHeW1vQlY7O0U0R3Rtb0JNO0lBQ0k7RTVHeW1vQlY7O0U0R3Rtb0JNO0lBQ0k7SUFDQTtFNUd5bW9CVjs7RTRHdG1vQk07SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTVHeW1vQlY7O0U0R3Rtb0JNO0lBQ0k7RTVHeW1vQlY7O0U0R3Rtb0JNO0lBQ0k7RTVHeW1vQlY7QUFDRjs7QTRHdG1vQkk7RUFDSTtJQUNJO0U1R3ltb0JWO0FBQ0Y7O0E0R3Jtb0JJO0VBQ0k7SUFDSTtFNUd3bW9CVjs7RTRHcm1vQk07SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTVHd21vQlY7QUFDRjs7QTRHN2xvQkk7RUFDSTtFQUNBO0E1R2dtb0JSOztBNEc1bG9CSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1Rytsb0JSOztBNEczbG9CSTtFQUNJO0lBQ0k7RTVHOGxvQlY7O0U0RzNsb0JNO0lBQ0k7RTVHOGxvQlY7QUFDRjs7QTRHMWxvQkk7RUFDSTtJQUNJO0U1RzZsb0JWO0FBQ0Y7O0E0R3Zsb0JJO0VBeHhDSjtJQTZ4Q1E7SUFRQTtJQVNBO0U1R3drb0JOOztFNEc3bG9CTTtJQUNJO0U1R2dtb0JWOztFNEc1bG9CTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0U1Rytsb0JWOztFNEczbG9CTTtJQUNJO0U1Rzhsb0JWOztFNEczbG9CTTtJQUNJO0U1Rzhsb0JWOztFNEcxbG9CTTtJQUNJO0lBQ0E7SUFDQTtFNUc2bG9CVjs7RTRHMWxvQk07SUFDSTtFNUc2bG9CVjtBQUNGOztBNEd6bG9CSTtFQUNJO0lBQ0k7RTVHNGxvQlY7O0U0R3psb0JNO0lBQ0k7RTVHNGxvQlY7O0U0R3psb0JNO0lBQ0k7SUFDQTtJQUNBO0U1RzRsb0JWOztFNEd6bG9CTTs7SUFDSTtFNUc2bG9CVjs7RTRHMWxvQk07SUFDSTtFNUc2bG9CVjs7RTRHMWxvQk07SUFDSTtFNUc2bG9CVjtBQUNGOztBNEd6bG9CSTtFQXgxQ0o7SUF5MUNRO0lBaUZBO0U1RzZnb0JOOztFNEc3bG9CTTtJQUNJO0U1R2dtb0JWOztFNEc3bG9CTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTVHZ21vQlY7O0U0Rzdsb0JNO0lBQ0k7SUFDQTtJQUNBO0U1R2dtb0JWOztFNEc3bG9CTTtJQUNJO0lBQ0E7SUFDQTtFNUdnbW9CVjs7RTRHN2xvQk07O0lBRUk7SUFDQTtJQUNBO09BQUE7SUFDQTtFNUdnbW9CVjs7RTRHN2xvQk07SUFDSTtJQUNBO0lBQ0E7SUFDQTtFNUdnbW9CVjs7RTRHN2xvQk07SUFDSTtJQUNBO0U1R2dtb0JWOztFNEc3bG9CTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0U1R2dtb0JWOztFNEc3bG9CTTtJQUNJO0lBQ0E7SUFDQTtFNUdnbW9CVjs7RTRHN2xvQk07SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1R2dtb0JWOztFNEc3bG9CTTtJQUNJO0lBQ0E7RTVHZ21vQlY7O0U0Rzdsb0JNO0lBQ0k7SUFDQTtFNUdnbW9CVjs7RTRHN2xvQk07SUFDSTtJQUNBO0U1R2dtb0JWOztFNEc1bG9CTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0U1Rytsb0JWOztFNEc1bG9CTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0U1Rytsb0JWOztFNEc1bG9CTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTVHK2xvQlY7O0U0RzVsb0JNO0lBQ0k7RTVHK2xvQlY7O0U0RzVsb0JNO0lBQ0k7RTVHK2xvQlY7O0U0RzVsb0JNO0lBQ0k7RTVHK2xvQlY7QUFDRjs7QTRHNWxvQkk7RUFDSTtJQUNJO0U1Rytsb0JWO0FBQ0Y7O0E0RzNsb0JJO0VBcjlDSjtJQWsrQ1E7RTVHbWxvQk47O0U0Ry9sb0JNO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7RTVHa21vQlY7O0U0Ry9sb0JNO0lBQ0k7SUFDQTtFNUdrbW9CVjs7RTRHOWxvQk07SUFDSTtJQUNBO0lBQ0E7RTVHaW1vQlY7O0U0Rzlsb0JNO0lBQ0k7SUFDQTtJQUNBO0U1R2ltb0JWO0FBQ0Y7O0E0Rzdsb0JJO0VBQ0k7SUFDSTtFNUdnbW9CVjs7RTRHN2xvQk07SUFDSTtFNUdnbW9CVjs7RTRHN2xvQk07SUFDSTtJQUNBO0U1R2dtb0JWOztFNEc3bG9CTTs7SUFDSTtJQUNBO0U1R2ltb0JWO0FBQ0Y7O0E0Rzdsb0JJO0VBQ0k7SUFDSTtFNUdnbW9CVjtBQUNGOztBNEc1bG9CSTtFQUNJO0lBQ0k7SUFDQTtFNUcrbG9CVjs7RTRHNWxvQk07O0lBQ0k7SUFDQTtFNUdnbW9CVjtBQUNGOztBNEc1bG9CSTtFQUNJO0lBQ0k7SUFDQTtFNUcrbG9CVjtBQUNGOztBNEczbG9CSTtFQUNJO0VBQ0E7QTVHOGxvQlI7O0E0RzFsb0JJO0VBQ0k7SUFDSTtFNUc2bG9CVjs7RTRHMWxvQk07SUFDSTtFNUc2bG9CVjtBQUNGOztBNEd6bG9CSTtFQUNJO0lBQ0k7RTVHNGxvQlY7O0U0R3psb0JNO0lBQ0k7RTVHNGxvQlY7QUFDRjs7QTRHeGxvQkE7O0U1RzRsb0JFOztBNEd6bG9CRjs7RUFpRUk7QTVHNmhvQko7O0E0RzNsb0JJOztFQUNJO0VBQ0E7RUFDQTtFQUNBO0tBQUE7RUFDQTtFQUNBO0VBQ0E7QTVHK2xvQlI7O0E0RzVsb0JJOztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUdnbW9CUjs7QTRHN2xvQkk7O0VBQ0k7RUFDQTtFQUNBO0E1R2ltb0JSOztBNEc5bG9CSTs7RUFDSTtBNUdrbW9CUjs7QTRHaG1vQlE7O0VBQ0k7QTVHb21vQlo7O0E0R2htb0JJOztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1R29tb0JSOztBNEdqbW9CSTs7Ozs7O0VBQ0k7RUFDQTtBNUd5bW9CUjs7QTRHdG1vQkk7O0VBQ0k7RUFDQTtBNUcwbW9CUjs7QTRHcG1vQkE7O0U1R3dtb0JFOztBNEdwbW9CRTtFQUNJO0VBQ0E7QTVHdW1vQlI7O0E0R3Jtb0JRO0VBQ0k7QTVHd21vQlo7O0E0R3Btb0JJO0VBQ0k7RUFDQTtBNUd1bW9CUjs7QTRHcG1vQkk7RUFDSTtBNUd1bW9CUjs7QTRHcG1vQkk7RUFDSTtFQUNBO0E1R3Vtb0JSOztBNEdwbW9CSTtFQUNJO0VBQ0E7QTVHdW1vQlI7O0E0R3Jtb0JRO0VBQ0k7RUFDQTtFQUNBO0E1R3dtb0JaOztBNEdwbW9CSTtFQUNJO0VBQUE7RUFBQTtBNUd1bW9CUjs7QTRHcG1vQkk7RUFDSTtFQUNBO0E1R3Vtb0JSOztBNEdwbW9CSTtFQUNJO0E1R3Vtb0JSOztBNEdwbW9CSTtFQUNJO0E1R3Vtb0JSOztBNEdwbW9CSTtFQUNJO0E1R3Vtb0JSOztBNkdoeXJCSTs7Ozs7Ozs7Ozs7O0VBQ0k7RUFDQTtBN0c4eXJCUjs7QTZHNXlyQlE7Ozs7Ozs7Ozs7OztFQUNJO0E3RzB6ckJaOztBNkd0enJCSTtFQUNJO0VBQ0E7QTdHeXpyQlI7O0E2R3R6ckJJOztFQUNJO0VBQ0E7QTdHMHpyQlI7O0E2R3h6ckJROztFQUNJO0E3RzR6ckJaOztBNkd4enJCSTtFQUVJO0VBQ0E7RUFDQTtBN0cwenJCUjs7QTZHdnpyQkk7RUFHSTtBN0d3enJCUjs7QTZHcnpyQkk7RUFFSTtBN0d1enJCUjs7QTZHbnpyQkk7RUFDSTtFQUNBO0E3R3N6ckJSOztBNkdwenJCUTtFQUNJO0E3R3V6ckJaOztBNkdqenJCQTtFQUNJO0E3R296ckJKOztBOEc1MnJCSTtFQUNJO0E5RysyckJSOztBOEc3MnJCUTtFQUNJO0VBQ0E7QTlHZzNyQlo7O0E4RzcyckJRO0VBQ0k7RUFDQTtBOUdnM3JCWjs7QThHOTJyQlk7RUFDSTtBOUdpM3JCaEI7O0E4Ry8yckJnQjtFQUNJO0E5R2szckJwQjs7QThHNTJyQkk7RUFDSTtBOUcrMnJCUjs7QThHNTJyQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBOUcrMnJCUjs7QThHNTJyQkk7RUFDSTtFQUNBO0E5RysyckJSOztBOEc3MnJCUTtFQUNJO0VBQ0E7RUFDQTtBOUdnM3JCWjs7QThHNTJyQkk7RUFDSTtFQUNBO0E5RysyckJSOztBOEc1MnJCSTtFQUNJO0VBQ0E7RUFDQTtBOUcrMnJCUjs7QStHOTVyQkk7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0drNnJCTjs7QStHaDZyQk07O0VBQ0U7QS9HbzZyQlI7O0ErR2g2ckJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0dtNnJCTjs7QStHaDZyQkk7O0VBQ0U7RUFDQTtFQUNBO0EvR282ckJOOztBK0dsNnJCTTs7RUFDRTtBL0dzNnJCUjs7QStHaDZyQkU7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QS9HbzZyQko7O0ErRy81ckJJOztFQUNFO0VBQ0E7RUFDQTtBL0dtNnJCTjs7QStHaDZyQkk7RUFDRTtFQUNBO0VBQ0E7QS9HbTZyQk47O0ErRzk1ckJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0dpNnJCSjs7QStHNzVyQkU7RUFFSTs7SUFDRTtFL0dnNnJCTjs7RStHNzVyQkk7SUFDRTtFL0dnNnJCTjs7RStHNzVyQkk7O0lBQ0U7RS9HaTZyQk47O0UrRzc1ckJFOztJQUNFO0UvR2k2ckJKO0FBQ0Y7O0FnSHovckJJO0VBQ0k7RUFDQTtBaEg0L3JCUjs7QWdIMS9yQlE7RUFDSTtBaEg2L3JCWjs7QWdIei9yQkk7RUFDSTtFQUNBO0VBQ0E7QWhINC9yQlI7O0FnSDEvckJRO0VBQ0k7QWhINi9yQlo7O0FnSHovckJJO0VBQ0k7QWhINC9yQlI7O0FnSDEvckJRO0VBQ0k7QWhINi9yQlo7O0FpSG5oc0JBO0VBQ0k7QWpIc2hzQko7O0FpSG5oc0JJO0VBQ0k7RUFDQTtBakhzaHNCUjs7QWlIcGhzQlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtVQUFBO0FqSHVoc0JaOztBaUhwaHNCUTs7RUFDSTtFQUNBO0FqSHdoc0JaOztBaUhuaHNCSTtFQUNJO1VBQUE7QWpIc2hzQlI7O0FpSGpoc0JRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpIb2hzQlo7O0FpSGxoc0JZO0VBQ0k7QWpIcWhzQmhCOztBaUhsaHNCWTtFQUNJO1VBQUE7QWpIcWhzQmhCOztBaUhqaHNCWTtFQUNJO0FqSG9oc0JoQjs7QWlIbGhzQmdCO0VBSEo7SUFJUTtJQUNBO0VqSHNoc0JsQjtBQUNGOztBaUhsaHNCWTtFQUNJO0VBQ0E7RUFDQTtBakhxaHNCaEI7O0FpSG5oc0JnQjtFQUxKO0lBTVE7RWpIdWhzQmxCO0FBQ0Y7O0FpSHJoc0JnQjtFQUNJO0VBQ0E7RUFDQTtBakh3aHNCcEI7O0FpSHJoc0JnQjtFQUNJO0VBQ0E7RUFDQTtLQUFBO0VBQ0E7QWpId2hzQnBCOztBaUhyaHNCZ0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakh3aHNCcEI7O0FpSG5oc0JZO0VBQ0k7QWpIc2hzQmhCOztBaUhwaHNCZ0I7RUFISjtJQUlRO0lBQ0E7RWpId2hzQmxCO0FBQ0Y7O0FpSHRoc0JnQjs7RUFDSTtFQUNBO0VBQ0E7QWpIMGhzQnBCOztBaUh4aHNCb0I7O0VBQ0k7RUFDQTtBakg0aHNCeEI7O0FpSDFoc0J3Qjs7RUFDSTtFQUNBO0FqSDhoc0I1Qjs7QWlIeGhzQm9CO0VBQ0k7QWpIMmhzQnhCOztBaUhyaHNCWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FqSHdoc0JoQjs7QWlIdGhzQmdCO0VBTko7SUFPUTtJQUNBO0lBQ0E7RWpIMGhzQmxCO0FBQ0Y7O0FpSHhoc0JnQjtFQUNJO0FqSDJoc0JwQjs7QWlIemhzQm9CO0VBSEo7SUFJUTtJQUNBO0VqSDZoc0J0QjtBQUNGOztBaUh4aHNCb0I7RUFGSjs7SUFHUTtJQUNBO0VqSDZoc0J0QjtBQUNGOztBaUhyaHNCQTtFQUNJO0lBQVc7RWpIeWhzQmI7O0VpSHhoc0JFO0lBQU07RWpINGhzQlI7QUFDRjs7QWlIL2hzQkE7RUFDSTtJQUFXO0VqSHloc0JiOztFaUh4aHNCRTtJQUFNO0VqSDRoc0JSO0FBQ0Y7O0FpSDFoc0JBO0VBQ0k7SUFDSTtJQUNBO0VqSDZoc0JOOztFaUgzaHNCRTtJQUNJO0lBQ0E7RWpIOGhzQk47QUFDRjs7QWlIdGlzQkE7RUFDSTtJQUNJO0lBQ0E7RWpINmhzQk47O0VpSDNoc0JFO0lBQ0k7SUFDQTtFakg4aHNCTjtBQUNGOztBaUgzaHNCQTtFQUNJO0lBQ0k7SUFDQTtFakg4aHNCTjs7RWlINWhzQkU7SUFDSTtJQUNBO0VqSCtoc0JOO0FBQ0Y7O0FpSHZpc0JBO0VBQ0k7SUFDSTtJQUNBO0VqSDhoc0JOOztFaUg1aHNCRTtJQUNJO0lBQ0E7RWpIK2hzQk47QUFDRjs7QWlIM2hzQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakg4aHNCSjs7QWlINWhzQkk7RUFDSTtFQUNBO0FqSCtoc0JSOztBaUgxaHNCQTtFQUVRO0lBQ0k7SUFDQTtFakg0aHNCVjs7RWlIMWhzQlU7O0lBQ0k7RWpIOGhzQmQ7O0VpSHpoc0JNO0lBQ0k7SUFDQTtFakg0aHNCVjs7RWlIeGhzQk07SUFDSTtFakgyaHNCVjtBQUNGOztBaUh0aHNCQTtFQUNJO0VBQ0E7QWpIeWhzQko7O0FpSHRoc0JBO0VBQ0k7RUFDQTtBakh5aHNCSjs7QWtIcndzQkk7RUFDSTtBbEh3d3NCUjs7QWtIdHdzQlE7RUFDSTtFQUNBO0FsSHl3c0JaOztBa0hwd3NCSTtFQUNJO0VBQ0E7RUFDQTtBbEh1d3NCUjs7QWtIcndzQlE7RUFDSTtBbEh3d3NCWjs7QWtIdHdzQlk7RUFDSTtBbEh5d3NCaEI7O0FrSGx3c0JRO0VBQ0k7RUFDQTtBbEhxd3NCWjs7QWtIbndzQlk7RUFDSTtFQUNBO0FsSHN3c0JoQjs7QWtIaHdzQkk7RUFDSTtBbEhtd3NCUjs7QWtIandzQlE7RUFDSTtBbEhvd3NCWjs7QW1IanpzQkk7RUFDSTtBbkhvenNCUjs7QW1IbHpzQlE7RUFDSTtBbkhxenNCWjs7QW1IanpzQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBbkhvenNCUjs7QW1IbHpzQlE7Ozs7Ozs7Ozs7OztFQUNJO0VBQ0E7QW5IZzBzQlo7O0FtSDd6c0JRO0VBQ0k7QW5IZzBzQlo7O0FtSDd6c0JROztFQUNJO0VBQ0E7QW5IaTBzQlo7O0FtSDl6c0JRO0VBQ0k7RUFDQTtBbkhpMHNCWjs7QW9ILzFzQkk7RUFDSTtBcEhrMnNCUjs7QW9ILzFzQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBcEhrMnNCUjs7QW9ILzFzQkk7RUFDSTtFQUNBO0VBQ0E7QXBIazJzQlI7O0FvSDkxc0JRO0VBQ0k7QXBIaTJzQlo7O0FvSDcxc0JJO0VBQ0k7QXBIZzJzQlI7O0FvSDcxc0JJO0VBQ0k7RUFDQTtBcEhnMnNCUjs7QW9INzFzQkk7RUFDSTtJQUNJO0VwSGcyc0JWOztFb0g3MXNCTTtJQUNJO0VwSGcyc0JWO0FBQ0Y7O0FxSHY0c0JJO0VBQ0k7RUFDQTtFQUNBO0FySDA0c0JSOztBcUh4NHNCUTtFQUNJO0VBQ0E7QXJIMjRzQlo7O0FxSHY0c0JJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FySDA0c0JSOztBcUh2NHNCSTtFQUNJO0VBQ0E7RUFDQTtLQUFBO0FySDA0c0JSOztBcUh2NHNCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FySDA0c0JSOztBcUh2NHNCSTtFQUNJO0FySDA0c0JSOztBcUh2NHNCSTtFQUNJO0FySDA0c0JSOztBcUh2NHNCSTtFQUNJO0FySDA0c0JSOztBcUh2NHNCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FySDA0c0JSOztBcUh2NHNCSTtFQUNJO0VBQ0E7QXJIMDRzQlI7O0FxSHY0c0JJO0VBQ0k7RUFDQTtBckgwNHNCUjs7QXFIdjRzQkk7RUFDSTtFQUNBO0FySDA0c0JSOztBcUh2NHNCSTtFQUNJO0VBQ0E7QXJIMDRzQlI7O0FxSHY0c0JJO0VBQ0k7RUFDQTtBckgwNHNCUjs7QXNIcjlzQkE7RUFDSTtBdEh3OXNCSjs7QXNIdjlzQkk7RUFDSTtFQUNBO0VBQ0E7QXRIMDlzQlI7O0FzSHg5c0JROztFQUNJO0VBQ0E7RUFDQTtFQUNBO0F0SDQ5c0JaOztBc0h6OXNCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F0SDQ5c0JaOztBc0h4OXNCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEgyOXNCUjs7QXNIejlzQlE7RUFDSTtFQUNBO0F0SDQ5c0JaOztBc0h6OXNCUTtFQUNJO0VBQ0E7S0FBQTtBdEg0OXNCWjs7QXNIeDlzQkk7RUFDSTtFQUNBO0F0SDI5c0JSOztBc0h6OXNCUTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBdEg2OXNCWjs7QXNIejlzQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEg0OXNCUjs7QXVIdGh0Qkk7RUFDSTtFQUNBO0F2SHlodEJSOztBdUh2aHRCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2SDBodEJaOztBdUh0aHRCSTtFQUNJO0VBQ0E7QXZIeWh0QlI7O0F1SHZodEJRO0VBQ0k7QXZIMGh0Qlo7O0F1SHRodEJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2SHlodEJSOztBdUh0aHRCSTtFQUNJO0F2SHlodEJSOztBd0hqa3RCQTs7RXhIcWt0QkU7O0F3SGprdEJGO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO1VBQUE7QXhIb2t0Qko7O0F3SGxrdEJJO0VBQ0k7QXhIcWt0QlI7O0F3SG5rdEJRO0VBQ0k7RUFDQTtBeEhza3RCWjs7QXlIMWx0QkE7OztFekgrbHRCRTs7QXlIdGx0Qk07RUFDSTtBekh5bHRCWjs7QXlIdGx0QlE7RUFDSTtBekh5bHRCWjs7QXlIcGx0QlE7RUFDSTtFQUNBO0F6SHVsdEJaOztBMEg1bXRCQTs7O0UxSGludEJFOztBMEg1bXRCRjtFQUNJO0VBRUE7RUErR0E7RUFLQTtFQWlCQTtFQU9BO0VBeUJBO0VBTUE7RUFLQTtFQXdDQTtFQXdDQTtFQU9BO0VBZUE7QTFIbTJzQko7O0EwSHhudEJJO0VBQ0k7RUFDQTtFQUNBO0ExSDJudEJSOztBMEh6bnRCUTtFQUNJO0VBQ0E7RUFBdUI7RUFDdkI7RUFDQTtFQUNBO0VBQ0E7RUFBa0I7RUFDbEI7RUFDQTtFQUNBO0VBQ0E7QTFIOG50Qlo7O0EwSDVudEJZOztFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFIK250QmhCOztBMEg1bnRCWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFIK250QmhCOztBMEg3bnRCZ0I7RUFDSTtBMUhnb3RCcEI7O0EwSDVudEJZO0VBQ0k7RUFBYTtFQUNiO0VBQ0E7RUFDQTtBMUhnb3RCaEI7O0EwSDdudEJZOztFQUNJO0VBQ0E7QTFIaW90QmhCOztBMEg3bnRCWTtFQUNJO0VBQ0E7QTFIZ290QmhCOztBMEgzbnRCSTtFQUNJO0VBQWE7RUFDYjtFQUNBO0VBQ0E7S0FBQTtFQUNBO0VBQ0E7QTFIK250QlI7O0EwSDVudEJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTFIK250QlI7O0EwSDVudEJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTFIK250QlI7O0EwSDVudEJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExSCtudEJSOztBMEg3bnRCUTtFQUNJO0VBQ0E7QTFIZ290Qlo7O0EwSDdudEJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTFIZ290Qlo7O0EwSDdudEJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUhnb3RCWjs7QTBIM250Qkk7RUFDSTtBMUg4bnRCUjs7QTBIMW50Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBMUg2bnRCUjs7QTBIM250QlE7RUFDSTtBMUg4bnRCWjs7QTBINW50Qlk7RUFDSTtFQUNBO0ExSCtudEJoQjs7QTBIem50Qkk7RUFDSTtFQUNBO0VBQ0E7QTFING50QlI7O0EwSHhudEJJO0VBQ0k7RUFBa0I7RUFDbEI7RUFBc0I7RUFDdEI7RUFDQTtFQUNBO0ExSDZudEJSOztBMEgzbnRCUTs7RUFFSTtFQUNBO0ExSDhudEJaOztBMEgzbnRCUTtFQUNJO0VBQ0E7QTFIOG50Qlo7O0EwSDNudEJRO0VBQ0k7RUFDQTtBMUg4bnRCWjs7QTBIem50Qkk7RUFDSTtFQUNBO0ExSDRudEJSOztBMEh4bnRCSTtFQUNJO0ExSDJudEJSOztBMEh2bnRCSTtFQUNJO0lBQ0k7RTFIMG50QlY7O0UwSHhudEJVO0lBQ0k7SUFDQTtFMUgybnRCZDs7RTBIem50QmM7SUFDSTtJQUNBO0lBQ0E7RTFING50QmxCOztFMEh2bnRCTTtJQUNJO0lBQ0E7RTFIMG50QlY7O0UwSHZudEJNO0lBQ0k7SUFDQTtFMUgwbnRCVjs7RTBIdm50Qk07SUFDSTtFMUgwbnRCVjs7RTBIeG50QlU7SUFDSTtFMUgybnRCZDs7RTBIdm50Qk07SUFDSTtFMUgwbnRCVjtBQUNGOztBMEh0bnRCSTtFQUNJO0lBQ0k7RTFIeW50QlY7O0UwSHZudEJVO0lBQ0k7RTFIMG50QmQ7O0UwSHRudEJNO0lBQ0k7SUFDQTtFMUh5bnRCVjs7RTBIdG50Qk07SUFDSTtJQUNBO0UxSHludEJWOztFMEh0bnRCTTtJQUNJO0lBQ0E7RTFIeW50QlY7O0UwSHJudEJVO0lBQ0k7RTFId250QmQ7O0UwSHJudEJVO0lBQ0k7RTFId250QmQ7O0UwSHBudEJNO0lBQ0k7RTFIdW50QlY7QUFDRjs7QTBIbm50Qkk7RUFDSTtJQUNJO0UxSHNudEJWO0FBQ0Y7O0EwSGxudEJJO0VBQ0k7Ozs7SUFJSTtFMUhxbnRCVjs7RTBIbG50Qk07O0lBRUk7RTFIcW50QlY7QUFDRjs7QTBIam50Qkk7RUFDSTtJQUNJO0UxSG9udEJWOztFMEhsbnRCVTtJQUNJO0UxSHFudEJkOztFMEhqbnRCTTs7SUFFSTtFMUhvbnRCVjtBQUNGOztBMkgvNXRCQTs7RTNIbTZ0QkU7O0EySDk1dEJFO0VBQ0k7RUFDQTtFQUNBO0EzSGk2dEJSOztBMkgvNXRCUTtFQUNJO0VBQ0E7QTNIazZ0Qlo7O0EySC81dEJRO0VBQ0k7RUFDQTtBM0hrNnRCWjs7QTJILzV0QlE7RUFDSTtBM0hrNnRCWjs7QTJILzV0QlE7RUFDSTtBM0hrNnRCWjs7QTJIaDZ0Qlk7RUFDSTtBM0htNnRCaEI7O0EySDk1dEJJO0VBQ0k7QTNIaTZ0QlI7O0EySDc1dEJJOztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0hpNnRCUjs7QTJIOTV0Qkk7RUFDSTtBM0hpNnRCUjs7QTJIOTV0Qkk7RUFDSTtBM0hpNnRCUjs7QTJINzV0Qkk7RUFDSTtJQUNJO0UzSGc2dEJWOztFMkg5NXRCVTtJQUNJO0UzSGk2dEJkO0FBQ0Y7O0E0SDU5dEJRO0VBQ0k7RUFDQTtBNUgrOXRCWjs7QTRINTl0QmdCO0VBQ0k7QTVIKzl0QnBCOztBNEg3OXRCb0I7RUFDSTtBNUhnK3RCeEI7O0E0SHo5dEJJO0VBQ0k7QTVINDl0QlI7O0E0SHo5dEJJO0VBQ0k7QTVINDl0QlI7O0E0SHg5dEJRO0VBQ0k7QTVIMjl0Qlo7O0E0SHg5dEJROzs7RUFDSTtBNUg2OXRCWjs7QTRIejl0Qkk7OztFQUNJO0VBQ0E7RUFDQTtFQUNBO0E1SDg5dEJSOztBNkhyZ3VCSTtFQUNJO0VBQ0E7RUFDQTtBN0h3Z3VCUjs7QTZIbmd1QkE7RUFDSTs7OztJQUlJO0U3SHNndUJOOztFNkhuZ3VCRTtJQUNJO0lBQ0E7SUFDQTtFN0hzZ3VCTjs7RTZIbmd1QkU7SUFDSTtFN0hzZ3VCTjtBQUNGOztBOEhoaXVCQTs7O0U5SHFpdUJFOztBOEhoaXVCRjtFQUNJO0VBeUJBO0VBY0E7RUFRQTtFQXFDQTtFQVVBO0VBZUE7QTlINDd0Qko7O0E4SHhpdUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5SDJpdUJSOztBOEh6aXVCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5SDRpdUJaOztBOEh6aXVCUTtFQUNJO0VBQ0E7QTlINGl1Qlo7O0E4SHZpdUJJO0VBQ0k7QTlIMGl1QlI7O0E4SHhpdUJRO0VBQ0k7QTlIMml1Qlo7O0E4SHhpdUJRO0VBQ0k7RUFDQTtLQUFBO0E5SDJpdUJaOztBOEh0aXVCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E5SHlpdUJSOztBOEhyaXVCSTtFQUNJO0VBQ0E7RUFDQTtBOUh3aXVCUjs7QThIdGl1QlE7RUFDSTtBOUh5aXVCWjs7QThIcml1Qkk7RUFDSTtFQUNBO0VBQ0E7QTlId2l1QlI7O0E4SHRpdUJRO0VBQ0k7RUFDQTtBOUh5aXVCWjs7QThIdml1Qlk7RUFDSTtBOUgwaXVCaEI7O0E4SHJpdUJJO0VBQ0k7RUFDQTtFQUNBO0E5SHdpdUJSOztBOEh0aXVCUTtFQUNJO0VBQ0E7QTlIeWl1Qlo7O0E4SHBpdUJJO0VBQ0k7QTlIdWl1QlI7O0E4SHJpdUJROztFQUNJO0VBQ0E7QTlIeWl1Qlo7O0E4SHBpdUJJO0VBQ0k7RUFDQTtBOUh1aXVCUjs7QThIcml1QlE7RUFDSTtFQUNBO0E5SHdpdUJaOztBOEh0aXVCWTtFQUNJO0E5SHlpdUJoQjs7QThIbml1Qkk7RUFDSTtFQUNBO0VBQ0E7QTlIc2l1QlI7O0E4SHBpdUJRO0VBQ0k7RUFDQTtFQUNBO0tBQUE7RUFDQTtBOUh1aXVCWjs7QThIbGl1QlE7O0VBQ0k7RUFDQTtBOUhzaXVCWjs7QThIcGl1Qlk7O0VBQ0k7RUFDQTtBOUh3aXVCaEI7O0E4SHRpdUJnQjs7RUFDSTtBOUgwaXVCcEI7O0E4SHBpdUJJO0VBQ0k7RUFDQTtBOUh1aXVCUjs7QThIbml1Qkk7RUFDSTtJQUNJO0U5SHNpdUJWOztFOEhwaXVCVTtJQUNJO0U5SHVpdUJkO0FBQ0Y7O0ErSG5zdUJBO0VBQ0k7RUFvREE7RUEyQkE7RUFxQkE7RUFVQTtFQWVBO0EvSDhrdUJKOztBK0gxc3VCSTtFQUNJO0VBQ0E7QS9INnN1QlI7O0ErSDFzdUJJO0VBQ0k7RUFDQTtFQUNBO0EvSDZzdUJSOztBK0gxc3VCSTtFQUNJO0VBQ0E7RUFDQTtBL0g2c3VCUjs7QStIM3N1QlE7RUFDSTtFQUNBO0VBQ0E7QS9IOHN1Qlo7O0ErSDVzdUJZO0VBQ0k7QS9IK3N1QmhCOztBK0gxc3VCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0EvSDZzdUJSOztBK0gxc3VCSTtFQUNJO0VBQ0E7RUFDQTtBL0g2c3VCUjs7QStIM3N1QlE7RUFDSTtBL0g4c3VCWjs7QStIM3N1QlE7Ozs7OztFQUdJO0VBQ0E7QS9IaXR1Qlo7O0ErSDVzdUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QS9IK3N1QlI7O0ErSDVzdUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0grc3VCUjs7QStIN3N1QlE7RUFDSTtBL0hndHVCWjs7QStINXN1Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBL0grc3VCUjs7QStIM3N1Qkk7RUFDSTtFQUNBO0VBQ0E7QS9IOHN1QlI7O0ErSDNzdUJJO0VBQ0k7RUFDQTtBL0g4c3VCUjs7QStINXN1QlE7RUFDSTtBL0grc3VCWjs7QStIM3N1Qkk7RUFDSTtFQUNBO0tBQUE7QS9IOHN1QlI7O0ErSDFzdUJJO0VBQ0k7QS9INnN1QlI7O0ErSDNzdUJROztFQUNJO0VBQ0E7QS9IK3N1Qlo7O0ErSDFzdUJJO0VBQ0k7RUFDQTtBL0g2c3VCUjs7QStIM3N1QlE7RUFDSTtFQUNBO0EvSDhzdUJaOztBK0g1c3VCWTtFQUNJO0EvSCtzdUJoQjs7QStIenN1Qkk7RUFDSTtFQUNBO0VBQ0E7QS9INHN1QlI7O0ErSDFzdUJRO0VBQ0k7RUFDQTtFQUNBO0tBQUE7RUFDQTtBL0g2c3VCWjs7QStIeHN1QlE7O0VBQ0k7RUFDQTtBL0g0c3VCWjs7QStIMXN1Qlk7O0VBQ0k7RUFDQTtBL0g4c3VCaEI7O0ErSDVzdUJnQjs7RUFDSTtBL0hndHVCcEI7O0ErSDFzdUJJO0VBQ0k7RUFDQTtBL0g2c3VCUjs7QWdJMzJ1QkE7RUFDSTtFQXFCQTtFQThFQTtFQVVBO0VBaURBO0VBdUNBO0FoSThxdUJKOztBZ0lsM3VCSTtFQUNJO0VBQ0E7RUFDQTtBaElxM3VCUjs7QWdJbjN1QlE7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWhJdTN1Qlo7O0FnSXAzdUJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWhJdTN1Qlo7O0FnSWwzdUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoSXEzdUJSOztBZ0luM3VCUTtFQUNJO0VBQ0E7QWhJczN1Qlo7O0FnSXAzdUJZO0VBQ0k7QWhJdTN1QmhCOztBZ0luM3VCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FoSXMzdUJaOztBZ0lwM3VCWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhJdTN1QmhCOztBZ0luM3VCUTtFQUNJO0VBQ0E7RUFDQTtLQUFBO0VBQ0E7QWhJczN1Qlo7O0FnSW4zdUJRO0VBQ0k7QWhJczN1Qlo7O0FnSW4zdUJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWhJczN1Qlo7O0FnSW4zdUJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoSXMzdUJaOztBZ0lsM3VCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhJcTN1QlI7O0FnSW4zdUJRO0VBQ0k7RUFDQTtBaElzM3VCWjs7QWdJcDN1Qlk7RUFDSTtBaEl1M3VCaEI7O0FnSWozdUJJO0VBQ0k7RUFDQTtBaElvM3VCUjs7QWdJbDN1QlE7RUFDSTtBaElxM3VCWjs7QWdJaDN1Qkk7RUFDSTtFQUFBO0VBQ0E7QWhJbTN1QlI7O0FnSWgzdUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEltM3VCUjs7QWdJajN1QlE7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWhJcTN1Qlo7O0FnSWwzdUJRO0VBQ0k7RUFDQTtFQUNBO0FoSXEzdUJaOztBZ0luM3VCWTtFQUNJO0VBQ0E7QWhJczN1QmhCOztBZ0lwM3VCZ0I7RUFDSTtBaEl1M3VCcEI7O0FnSWwzdUJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoSXEzdUJaOztBZ0luM3VCWTtFQUNJO0FoSXMzdUJoQjs7QWdJaDN1Qkk7RUFDSTtFQUNBO0VBQ0E7QWhJbTN1QlI7O0FnSWozdUJRO0VBQ0k7QWhJbzN1Qlo7O0FnSWgzdUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoSW0zdUJSOztBZ0lqM3VCUTtFQUNJO0VBQ0E7RUFDQTtLQUFBO0FoSW8zdUJaOztBZ0kvMnVCUTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBaEltM3VCWjs7QWdJaDN1QlE7RUFDSTtBaEltM3VCWjs7QWdJOTJ1Qkk7RUFDSTs7SUFDSTtFaElrM3VCVjs7RWdJLzJ1Qk07SUFDSTtJQUNBO0lBQ0E7RWhJazN1QlY7QUFDRjs7QWlJOWp2Qkk7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaklra3ZCUjs7QWlJL2p2QlE7O0VBQ0k7QWpJbWt2Qlo7O0FpSS9qdkJRO0VBdEJKOztJQXVCUTtFaklva3ZCVjtBQUNGOztBaUlsa3ZCUTtFQTFCSjs7SUEyQlE7RWpJdWt2QlY7QUFDRjs7QWlJcmt2QlE7RUE5Qko7O0lBK0JRO0VqSTBrdkJWO0FBQ0Y7O0FpSXhrdkJRO0VBbENKOztJQW1DUTtFakk2a3ZCVjtBQUNGOztBaUl6a3ZCSTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqSTZrdkJSOztBaUl6a3ZCSTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqSTZrdkJSOztBaUl6a3ZCSTs7RUFDSTtFQUNBO0VBQ0E7QWpJNmt2QlI7O0FpSTNrdkJROztFQUNJO0VBQ0E7QWpJK2t2Qlo7O0FpSTVrdkJROztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaklnbHZCWjs7QWlJM2t2Qkk7O0VBQ0k7RUFDQTtBakkra3ZCUjs7QWlJN2t2QlE7RUFKSjs7SUFLUTtFaklrbHZCVjtBQUNGOztBaUk5a3ZCSTs7RUFDSTtFQUNBO0FqSWtsdkJSOztBaUlobHZCUTtFQUpKOztJQUtRO0VqSXFsdkJWO0FBQ0Y7O0FpSWhsdkJROztFQUNJO0VBQ0E7QWpJb2x2Qlo7O0FpSS9rdkJJOztFQUNJO0VBQ0E7RUFNQTtFQUNBO0FqSThrdkJSOztBaUk1a3ZCUTtFQVhKOztJQVlRO0VqSWlsdkJWO0FBQ0Y7O0FpSS9rdkJROztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakltbHZCWjs7QWlJamx2Qlk7O0VBQ0k7RUFDQTtFQUNBO0FqSXFsdkJoQjs7QWlJL2t2Qkk7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqSW1sdkJSOztBaUlobHZCSTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBaklvbHZCUjs7QWlJaGx2Qkk7O0VBQ0k7QWpJb2x2QlI7O0FpSWpsdkJJOztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaklxbHZCUjs7QWlJbGx2Qkk7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqSXNsdkJSOztBaUlwbHZCUTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBakl3bHZCWjs7QWlJcmx2QlE7RUFDSTtFQUNBO0FqSXlsdkJaOztBaUkzbHZCUTtFQUNJO0VBQ0E7QWpJeWx2Qlo7O0FpSTNsdkJROztFQUNJO0VBQ0E7QWpJeWx2Qlo7O0FpSXJsdkJJOztFQUNJO0FqSXlsdkJSOztBaUl2bHZCUTs7Ozs7Ozs7RUFHSTtBakkrbHZCWjs7QWlJM2x2Qkk7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpJK2x2QlI7O0FpSTVsdkJJOztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaklnbXZCUjs7QWlJOWx2QlE7O0VBQ0k7QWpJa212Qlo7O0FpSTdsdkJJOztFQUNJO0VBQ0E7RUFDQTtFQUNBO0FqSWltdkJSOztBaUkvbHZCUTs7RUFDSTtFQUNBO0FqSW1tdkJaOztBaUk5bHZCSTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpJa212QlI7O0FpSWhtdkJROztFQUNJO0VBQ0E7RUFDQTtBaklvbXZCWjs7QWlJam12QlE7O0VBQ0k7QWpJcW12Qlo7O0FpSWhtdkJJOztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpJb212QlI7O0FpSWxtdkJROztFQUNJO0VBQ0E7RUFDQTtBaklzbXZCWjs7QWlJam12Qkk7O0VBQ0k7QWpJcW12QlI7O0FpSW5tdkJRO0VBSEo7O0lBSVE7RWpJd212QlY7QUFDRjs7QWlJcm12Qkk7O0VBQ0k7QWpJeW12QlI7O0FpSXRtdkJJOztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpJMG12QlI7O0FpSXZtdkJJOztFQUNJO0VBQ0E7RUFDQTtFQUNBO0FqSTJtdkJSOztBaUl2bXZCSTs7RUFDSTtBakkybXZCUjs7QWlJeG12Qkk7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqSTRtdkJSOztBaUkxbXZCUTs7RUFDSTtFQUNBO0VBQ0E7QWpJOG12Qlo7O0FpSXptdkJJOztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpJNm12QlI7O0FpSTNtdkJROztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpJK212Qlo7O0FpSTFtdkJJOztFQUNJO0VBQ0E7RUFDQTtBakk4bXZCUjs7QWlJNW12QlE7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpJZ252Qlo7O0FpSTdtdkJROztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqSWludkJaOztBaUk1bXZCSTs7RUFDSTtFQUNBO0VBQ0E7QWpJZ252QlI7O0FpSTdtdkJJOztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqSWludkJSOztBaUkvbXZCUTs7RUFDSTtFQUNBO0VBQ0E7QWpJbW52Qlo7O0FpSWhudkJROztFQUNJO0VBQ0E7RUFDQTtLQUFBO0FqSW9udkJaOztBaUkvbXZCSTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqSW1udkJSOztBaUlqbnZCUTtFQVBKOztJQVFRO0VqSXNudkJWO0FBQ0Y7O0FpSXBudkJROztFQUNJO0VBQ0E7RUFDQTtBakl3bnZCWjs7QWlJcm52QlE7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpJeW52Qlo7O0FpSXZudkJZOztFQUNJO0VBQ0E7QWpJMm52QmhCOztBaUlsbnZCWTs7Ozs7Ozs7RUFDSTtFQUNBO0FqSTRudkJoQjs7QWlJMW52QmdCOzs7Ozs7OztFQUNJO0VBQ0E7QWpJb292QnBCOztBaUlob3ZCWTs7Ozs7Ozs7RUFDSTtFQUNBO0FqSTBvdkJoQjs7QWlJeG92QmdCOzs7Ozs7OztFQUNJO0VBQ0E7QWpJa3B2QnBCOztBaUk1b3ZCSTs7OztFQUNJO0VBQ0E7RUFDQTtBaklrcHZCUjs7QWlJOW92Qkk7RUFDSTs7SUFDSTtFaklrcHZCVjs7RWlJL292Qk07O0lBQ0k7RWpJbXB2QlY7O0VpSWhwdkJNOztJQUNJO0VqSW9wdkJWOztFaUlqcHZCTTs7SUFDSTtFaklxcHZCVjtBQUNGOztBaUlqcHZCSTtFQUNJOztJQUNJO0VqSXFwdkJWOztFaUlscHZCTTs7SUFDSTtFaklzcHZCVjtBQUNGOztBaUlscHZCSTtFQUNJOztJQUNJO0VqSXNwdkJWO0FBQ0Y7O0FrSTdwd0JJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbElncXdCUjs7QWtJN3B3QlE7RUFDSTtBbElncXdCWjs7QWtJNXB3QlE7RUF0Qko7SUF1QlE7RWxJZ3F3QlY7QUFDRjs7QWtJOXB3QlE7RUExQko7SUEyQlE7RWxJa3F3QlY7QUFDRjs7QWtJaHF3QlE7RUE5Qko7SUErQlE7RWxJb3F3QlY7QUFDRjs7QWtJbHF3QlE7RUFsQ0o7SUFtQ1E7RWxJc3F3QlY7QUFDRjs7QWtJbnF3Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBbElzcXdCUjs7QWtJbnF3Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxJc3F3QlI7O0FrSW5xd0JJO0VBQ0k7QWxJc3F3QlI7O0FrSWxxd0JJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWxJcXF3QlI7O0FrSWxxd0JJO0VBQ0k7RUFDQTtBbElxcXdCUjs7QWtJbnF3QlE7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEl1cXdCWjs7QWtJcHF3QlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBbEl1cXdCWjs7QWtJbHF3QlE7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWxJc3F3Qlo7O0FrSW5xd0JRO0VBQ0k7RUFDQTtFQUNBO0FsSXNxd0JaOztBa0lscXdCSTtFQUNJO0FsSXFxd0JSOztBa0lscXdCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxJcXF3QlI7O0FrSWhxd0JJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEltcXdCUjs7QWtJanF3QlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBbElvcXdCWjs7QWtJaHF3Qkk7RUFDSTtFQUNBO0FsSW1xd0JSOztBa0lqcXdCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FsSW9xd0JaOztBa0lscXdCWTtFQUNJO0FsSXFxd0JoQjs7QWtJL3B3Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbElrcXdCUjs7QWtJL3B3QlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQU9BO1VBQUE7QWxJNHB3Qlo7O0FrSXhwd0JJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWxJMnB3QlI7O0FrSXpwd0JROztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxJNnB3Qlo7O0FrSTFwd0JRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWxJNnB3Qlo7O0FrSTFwd0JRO0VBQ0k7RUFDQTtFQUNBO0FsSTZwd0JaOztBa0l6cHdCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO1VBQUE7QWxJNHB3QlI7O0FrSXpwd0JJO0VBQ0k7RUFDQTtFQUNBO0FsSTRwd0JSOztBa0kxcHdCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxJNnB3Qlo7O0FrSTNwd0JZO0VBQ0k7RUFDQTtFQUNBO0FsSThwd0JoQjs7QWtJenB3Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxJNHB3QlI7O0FrSTFwd0JRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEk2cHdCWjs7QWtJeHB3Qkk7RUFDSTtJQUFXO0VsSTRwd0JqQjs7RWtJM3B3Qk07SUFBTTtFbEkrcHdCWjtBQUNGOztBa0lscXdCSTtFQUNJO0lBQVc7RWxJNHB3QmpCOztFa0kzcHdCTTtJQUFNO0VsSStwd0JaO0FBQ0Y7O0FrSTdwd0JJO0VBQ0k7SUFBSztFbElpcXdCWDs7RWtJaHF3Qk07SUFBTztFbElvcXdCYjtBQUNGOztBa0l2cXdCSTtFQUNJO0lBQUs7RWxJaXF3Qlg7O0VrSWhxd0JNO0lBQU87RWxJb3F3QmI7QUFDRjs7QWtJanF3Qkk7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWxJcXF3QlI7O0FrSWpxd0JRO0VBQ0k7RUFDQTtBbElzcXdCWjs7QWtJeHF3QlE7RUFDSTtFQUNBO0FsSXNxd0JaOztBa0l4cXdCUTs7O0VBQ0k7RUFDQTtBbElzcXdCWjs7QWtJbnF3QlE7OztFQUNJO0FsSXdxd0JaOztBa0lucXdCSTtFQUNJO0VBQ0E7QWxJc3F3QlI7O0FrSW5xd0JJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWxJc3F3QlI7O0FrSW5xd0JJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbElzcXdCUjs7QWtJbnF3Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxJc3F3QlI7O0FrSXBxd0JRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEl1cXdCWjs7QWtJcnF3Qlk7RUFDSTtBbEl3cXdCaEI7O0FrSW5xd0JJO0VBQ0k7RUFDQTtFQUNBO0tBQUE7RUFDQTtBbElzcXdCUjs7QWtJbnF3Qkk7RUFDSTtFQUNBO0VBQ0E7QWxJc3F3QlI7O0FrSWxxd0JJO0VBQ0k7SUFDSTtFbElxcXdCVjs7RWtJbHF3Qk07SUFDSTtFbElxcXdCVjs7RWtJbHF3Qk07SUFDSTtFbElxcXdCVjs7RWtJbHF3Qk07SUFDSTtFbElxcXdCVjs7RWtJbHF3Qk07O0lBQ0k7RWxJc3F3QlY7O0VrSW5xd0JNOztJQUNJO0VsSXVxd0JWOztFa0lwcXdCTTtJQUNJO0VsSXVxd0JWOztFa0lscXdCTTtJQUNJO0lBQ0E7RWxJcXF3QlY7O0VrSWxxd0JNO0lBQ0k7RWxJcXF3QlY7O0VrSWxxd0JNO0lBQ0k7RWxJcXF3QlY7O0VrSWpxd0JVOztJQUNJO0VsSXFxd0JkOztFa0lqcXdCTTtJQUNJO0VsSW9xd0JWOztFa0lqcXdCTTtJQUNJO0lBQ0E7RWxJb3F3QlY7O0VrSWpxd0JNO0lBQ0k7RWxJb3F3QlY7O0VrSWpxd0JNO0lBQ0k7SUFDQTtFbElvcXdCVjtBQUNGOztBa0locXdCSTtFQUNJO0lBQ0k7RWxJbXF3QlY7O0VrSWhxd0JNO0lBQ0k7RWxJbXF3QlY7O0VrSWhxd0JNO0lBQ0k7RWxJbXF3QlY7QUFDRjs7QWtJaHF3Qkk7RUFDSTtJQUNJO0VsSW1xd0JWOztFa0locXdCTTs7SUFDSTtFbElvcXdCVjs7RWtJanF3Qk07O0lBQ0k7RWxJcXF3QlY7O0VrSWxxd0JNO0lBQ0k7RWxJcXF3QlY7O0VrSWxxd0JNO0lBQ0k7SUFDQTtFbElxcXdCVjs7RWtJbHF3Qk07SUFDSTtFbElxcXdCVjtBQUNGOztBbUk5bXhCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5JaW54QlI7O0FtSTlteEJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QW5JaW54QlI7O0FtSTlteEJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuSWlueEJSOztBbUk5bXhCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO1VBQUE7QW5JaW54QlI7O0FtSTlteEJJO0VBQ0k7SUFDSTtJQUNBO0VuSWlueEJWOztFbUkvbXhCTTtJQUNJO0lBQ0E7RW5Ja254QlY7QUFDRjs7QW1JL214Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBbklrbnhCUjs7QW1JL214Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBbklrbnhCUjs7QW1JL214Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBbklrbnhCUjs7QW1JaG54QlE7O0VBQ0k7RUFDQTtFQUNBO0FuSW9ueEJaOztBbUlqbnhCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FuSW9ueEJaOztBbUlobnhCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkltbnhCUjs7QW1Jam54QlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBbklvbnhCWjs7QW1JaG54Qkk7RUFDSTtFQUNBO0VBQ0E7QW5JbW54QlI7O0FtSWpueEJRO0VBQ0k7QW5Jb254Qlo7O0FtSWhueEJJO0VBQ0k7SUFDSTtFbkltbnhCVjs7RW1JaG54Qk07SUFDSTtFbkltbnhCVjs7RW1JaG54Qk07SUFDSTtFbkltbnhCVjs7RW1JaG54Qk07SUFDSTtFbkltbnhCVjtBQUNGOztBb0kvdXhCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBJa3Z4QlI7O0FvSS91eEJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcElrdnhCWjs7QW9JN3V4Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBcElndnhCUjs7QW9JNXV4Qkk7RUFDSTtFQUNBO1VBQUE7RUFDQTtFQUNBO0VBQ0E7QXBJK3V4QlI7O0FxSTV4eEJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckkreHhCUjs7QXFJNXh4QlE7RUFDSTtBckkreHhCWjs7QXFJM3h4QlE7RUF0Qko7SUF1QlE7RXJJK3h4QlY7QUFDRjs7QXFJN3h4QlE7RUExQko7SUEyQlE7RXJJaXl4QlY7QUFDRjs7QXFJL3h4QlE7RUE5Qko7SUErQlE7RXJJbXl4QlY7QUFDRjs7QXFJanl4QlE7RUFsQ0o7SUFtQ1E7RXJJcXl4QlY7QUFDRjs7QXFJbHl4Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBcklxeXhCUjs7QXFJbHl4Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FySXF5eEJSOztBcUlqeXhCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FySW95eEJSOztBcUlqeXhCSTtFQUNJO0VBQ0E7QXJJb3l4QlI7O0FxSWx5eEJROztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJJc3l4Qlo7O0FxSW55eEJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXJJc3l4Qlo7O0FxSWp5eEJROztFQUNJO0VBQ0E7RUFDQTtFQUNBO0FySXF5eEJaOztBcUlseXhCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FySXF5eEJaOztBcUlqeXhCSTtFQUNJO0FySW95eEJSOztBcUlqeXhCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FySW95eEJSOztBcUlqeXhCSTs7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FySXN5eEJSOztBcUlweXhCUTtFQUNJO0VBQ0E7QXJJeXl4Qlo7O0FxSTN5eEJRO0VBQ0k7RUFDQTtBckl5eXhCWjs7QXFJM3l4QlE7OztFQUNJO0VBQ0E7QXJJeXl4Qlo7O0FxSXR5eEJROzs7RUFDSTtFQUNBO0VBQ0E7QXJJMnl4Qlo7O0FxSXZ5eEJJO0VBQ0k7QXJJMHl4QlI7O0FxSXh5eEJROzs7RUFFSTtBckk0eXhCWjs7QXFJeHl4Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJJMnl4QlI7O0FxSXh5eEJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckkyeXhCUjs7QXFJenl4QlE7RUFDSTtFQUNBO0VBQ0E7QXJJNHl4Qlo7O0FxSXh5eEJJO0VBQ0k7RUFDQTtBckkyeXhCUjs7QXFJenl4QlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJJNHl4Qlo7O0FxSTF5eEJZO0VBQ0k7QXJJNnl4QmhCOztBcUl6eXhCUTtFQUNJO0FySTR5eEJaOztBcUl2eXhCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJJMHl4QlI7O0FxSXh5eEJRO0VBQ0k7RUFDQTtBckkyeXhCWjs7QXFJeHl4QlE7RUFDSTtFQUNBO0FySTJ5eEJaOztBcUl0eXhCSTtFQUNJO0lBQ0k7RXJJeXl4QlY7O0VxSXR5eEJNO0lBQ0k7RXJJeXl4QlY7O0VxSXZ5eEJVOztJQUNJO0VySTJ5eEJkOztFcUl4eXhCVTtJQUNJO0VySTJ5eEJkOztFcUl0eXhCVTs7SUFDSTtJQUNBO0VySTB5eEJkOztFcUl2eXhCVTtJQUNJO0lBQ0E7RXJJMHl4QmQ7O0VxSXR5eEJNO0lBQ0k7RXJJeXl4QlY7O0VxSXR5eEJNOzs7SUFDSTtJQUNBO0VySTJ5eEJWOztFcUl2eXhCVTs7O0lBRUk7RXJJMnl4QmQ7O0VxSXZ5eEJNO0lBQ0k7SUFDQTtJQUNBO0VySTB5eEJWO0FBQ0Y7O0FxSXR5eEJJO0VBQ0k7SUFDSTtFckl5eXhCVjtBQUNGOztBcUl0eXhCSTtFQUNJO0lBQ0k7RXJJeXl4QlY7O0VxSXR5eEJNOztJQUNJO0VySTB5eEJWOztFcUl2eXhCTTs7SUFDSTtFckkyeXhCVjtBQUNGOztBcUl2eXhCSTs7RUFDSTtFQUNBO0FySTJ5eEJSOztBcUl0eXhCWTs7O0VBQ0k7RUFDQTtBckkyeXhCaEI7O0FxSXh5eEJZOzs7RUFDSTtFQUNBO0FySTZ5eEJoQjs7QXNJdGx5Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0SXlseUJSOztBc0l0bHlCUTtFQUNJO0F0SXlseUJaOztBc0lybHlCUTtFQXRCSjtJQXVCUTtFdEl5bHlCVjtBQUNGOztBc0l2bHlCUTtFQTFCSjtJQTJCUTtFdEkybHlCVjtBQUNGOztBc0l6bHlCUTtFQTlCSjtJQStCUTtFdEk2bHlCVjtBQUNGOztBc0kzbHlCUTtFQWxDSjtJQW1DUTtFdEkrbHlCVjtBQUNGOztBc0k1bHlCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F0SStseUJSOztBc0k1bHlCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F0SStseUJSOztBc0k1bHlCSTtFQUNJO0F0SStseUJSOztBc0kzbHlCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F0SThseUJSOztBc0kzbHlCSTtFQUNJO0VBQ0E7QXRJOGx5QlI7O0FzSTVseUJROztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRJZ215Qlo7O0FzSTdseUJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXRJZ215Qlo7O0FzSTNseUJROztFQUNJO0VBQ0E7RUFDQTtFQUNBO0F0SStseUJaOztBc0k1bHlCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F0SStseUJaOztBc0kzbHlCSTtFQUNJO0F0SThseUJSOztBc0kzbHlCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F0SThseUJSOztBc0kzbHlCSTs7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0SWdteUJSOztBc0k5bHlCUTtFQUNJO0VBQ0E7QXRJbW15Qlo7O0FzSXJteUJRO0VBQ0k7RUFDQTtBdEltbXlCWjs7QXNJcm15QlE7OztFQUNJO0VBQ0E7QXRJbW15Qlo7O0FzSWhteUJROzs7RUFDSTtFQUNBO0VBQ0E7QXRJcW15Qlo7O0FzSWxteUJROzs7RUFDSTtFQUNBO0F0SXVteUJaOztBc0lubXlCSTtFQUNJO0F0SXNteUJSOztBc0lwbXlCUTs7O0VBRUk7QXRJd215Qlo7O0FzSXBteUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0SXVteUJSOztBc0lwbXlCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0SXVteUJSOztBc0lybXlCUTtFQUNJO0F0SXdteUJaOztBc0lwbXlCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRJdW15QlI7O0FzSXJteUJRO0VBQ0k7RUFDQTtFQUNBO0F0SXdteUJaOztBc0lwbXlCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRJdW15QlI7O0FzSXJteUJROztFQUNJO0VBQ0E7RUFDQTtFQUNBO0F0SXlteUJaOztBc0l0bXlCUTtFQUNJO0VBQ0E7QXRJeW15Qlo7O0FzSXRteUJRO0VBQ0k7RUFDQTtBdEl5bXlCWjs7QXNJcG15Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0SXVteUJSOztBc0lybXlCUTtFQUNJO0VBQ0E7QXRJd215Qlo7O0FzSXJteUJRO0VBQ0k7RUFDQTtBdEl3bXlCWjs7QXNJbm15Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdElzbXlCUjs7QXNJbm15QlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQU9BO1VBQUE7QXRJZ215Qlo7O0FzSTVseUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXRJK2x5QlI7O0FzSTdseUJROztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRJaW15Qlo7O0FzSTlseUJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdElpbXlCWjs7QXNJN2x5Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtVQUFBO0F0SWdteUJSOztBc0k3bHlCSTtFQUNJO0lBQVc7RXRJaW15QmpCOztFc0lobXlCTTtJQUFNO0V0SW9teUJaO0FBQ0Y7O0FzSXZteUJJO0VBQ0k7SUFBVztFdElpbXlCakI7O0VzSWhteUJNO0lBQU07RXRJb215Qlo7QUFDRjs7QXNJbG15Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBdElxbXlCUjs7QXNJbm15QlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0SXNteUJaOztBc0lwbXlCWTtFQUNJO0VBQ0E7RUFDQTtBdEl1bXlCaEI7O0FzSWxteUJJO0VBQ0k7SUFBSztFdElzbXlCWDs7RXNJcm15Qk07SUFBTztFdEl5bXlCYjtBQUNGOztBc0l0bXlCSTtFQUNJO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7RXRJeW15QlY7O0VzSXRteUJNO0lBQ0k7SUFDQTtJQUNBO0V0SXlteUJWOztFc0l0bXlCTTtJQUNJO0V0SXlteUJWOztFc0l0bXlCTTtJQUNJO0V0SXlteUJWOztFc0l0bXlCTTtJQUNJO0V0SXlteUJWOztFc0l2bXlCVTs7SUFDSTtFdEkybXlCZDs7RXNJeG15QlU7SUFDSTtFdEkybXlCZDs7RXNJdG15QlU7O0lBQ0k7SUFDQTtFdEkwbXlCZDs7RXNJdm15QlU7SUFDSTtJQUNBO0V0STBteUJkOztFc0l0bXlCTTtJQUNJO0V0SXlteUJWOztFc0l0bXlCTTs7O0lBQ0k7SUFDQTtFdEkybXlCVjs7RXNJdm15QlU7OztJQUVJO0V0STJteUJkOztFc0l2bXlCTTtJQUNJO0lBQ0E7SUFDQTtFdEkwbXlCVjs7RXNJdm15Qk07SUFDSTtJQUNBO0V0STBteUJWOztFc0l4bXlCVTs7SUFDSTtFdEk0bXlCZDs7RXNJdm15Qk07SUFDSTtFdEkwbXlCVjs7RXNJdm15Qk07SUFDSTtJQUNBO0V0STBteUJWOztFc0l0bXlCVTs7SUFDSTtJQUNBO0V0STBteUJkOztFc0l2bXlCVTtJQUNJO0V0STBteUJkOztFc0l0bXlCTTtJQUNJO0V0SXlteUJWOztFc0l2bXlCVTtJQUNJO0lBQ0E7RXRJMG15QmQ7O0VzSXhteUJjO0lBQ0k7RXRJMm15QmxCO0FBQ0Y7O0FzSXJteUJJO0VBQ0k7SUFDSTtFdEl3bXlCVjs7RXNJcm15Qk07SUFDSTtFdEl3bXlCVjtBQUNGOztBc0lybXlCSTtFQUNJO0lBQ0k7RXRJd215QlY7O0VzSXJteUJNOztJQUNJO0V0SXlteUJWOztFc0l0bXlCTTs7SUFDSTtFdEkwbXlCVjtBQUNGOztBc0l0bXlCSTs7RUFDSTtFQUNBO0F0STBteUJSOztBc0lybXlCWTs7O0VBQ0k7RUFDQTtBdEkwbXlCaEI7O0FzSXZteUJZOzs7RUFDSTtFQUNBO0F0STRteUJoQjs7QXVJemt6Qkk7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZJNmt6QlI7O0F1STNrekJROztFQUNJO0VBQ0E7RUFDQTtBdkkra3pCWjs7QXVJNWt6QlE7O0VBQ0k7RUFDQTtBdklnbHpCWjs7QXVJOWt6Qlk7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZJa2x6QmhCOztBdUk3a3pCWTs7RUFDSTtBdklpbHpCaEI7O0F1STlrekJZOztFQUNJO0F2SWtsekJoQjs7QXVJaGx6QmdCOztFQUNJO0F2SW9sekJwQjs7QXVJaGx6Qlk7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXZJb2x6QmhCOztBdUkva3pCSTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFNQTtFQUNBO0VBQ0E7QXZJOGt6QlI7O0F1STNrekJJOztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkkra3pCUjs7QXVJNWt6Qkk7O0VBQ0k7RUFDQTtFQUNBO0F2SWdsekJSOztBdUk5a3pCUTs7RUFDSTtFQUNBO0F2SWtsekJaOztBdUlobHpCWTs7RUFDSTtBdklvbHpCaEI7O0F1SS9rekJJOztFQUNJO0VBQ0E7VUFBQTtBdkltbHpCUjs7QXVJaGx6Qkk7RUFDSTtJQUNJO0lBQ0E7RXZJbWx6QlY7O0V1SWpsekJNO0lBQ0k7SUFDQTtFdklvbHpCVjtBQUNGOztBdUk1bHpCSTtFQUNJO0lBQ0k7SUFDQTtFdkltbHpCVjs7RXVJamx6Qk07SUFDSTtJQUNBO0V2SW9sekJWO0FBQ0Y7O0F1SWpsekJJOztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdklxbHpCUjs7QXVJbmx6QlE7O0VBQ0k7QXZJdWx6Qlo7O0F1SW5sekJJOztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkl1bHpCUjs7QXVJcmx6QlE7O0VBQ0k7QXZJeWx6Qlo7O0F1SXJsekJJOztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZJeWx6QlI7O0F1SXRsekJJOztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtVQUFBO0VBQ0E7RUFDQTtBdkkwbHpCUjs7QXVJdmx6Qkk7O0VBQ0k7RUFDQTtBdkkybHpCUjs7QXVJeGx6Qkk7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXZJNGx6QlI7O0F1SXpsekJZOztFQUNJO0VBQ0E7RUFDQTtBdkk2bHpCaEI7O0F1STFsekJnQjs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZJOGx6QnBCOztBdUk1bHpCb0I7O0VBQ0k7QXZJZ216QnhCOztBdUk3bHpCb0I7O0VBQ0k7RUFDQTtBdklpbXpCeEI7O0F1SXpsekJJO0VBQ0k7O0lBQ0k7RXZJNmx6QlY7O0V1STFsekJNOztJQUNJO0V2SThsekJWO0FBQ0Y7O0F1STNsekJJO0VBQ0k7O0lBQ0k7RXZJK2x6QlY7O0V1STVsekJNOztJQUNJO0V2SWdtekJWOztFdUk3bHpCTTs7SUFDSTtJQUNBO0V2SWltekJWOztFdUk5bHpCTTs7SUFDSTtFdklrbXpCVjs7RXVJL2x6Qk07O0lBQ0k7SUFDQTtFdkltbXpCVjs7RXVJaG16Qk07O0lBQ0k7RXZJb216QlY7QUFDRjs7QXVJam16Qkk7RUFDSTs7SUFDSTtFdklxbXpCVjs7RXVJbG16Qk07O0lBQ0k7RXZJc216QlY7QUFDRjs7QXdJNzF6Qkk7RUFDSTtBeElnMnpCUjs7QXdJOTF6QlE7RUFISjtJQUlRO0V4SWsyekJWO0FBQ0Y7O0F3STkxekJJO0VBQ0k7QXhJaTJ6QlI7O0F3SS8xekJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeElrMnpCWjs7QXdJaDJ6Qlk7RUFQSjtJQVFRO0V4SW8yekJkO0FBQ0Y7O0F3SWoyekJRO0VBQ0k7RUFDQTtFQUNBO0F4SW8yekJaOztBd0k5MXpCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F4SWkyekJaOztBd0kvMXpCWTtFQUNJO0F4SWsyekJoQjs7QXdJOTF6QlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4SWkyekJaOztBd0kvMXpCWTtFQUNJO0VBQ0E7QXhJazJ6QmhCOztBd0loMnpCZ0I7RUFDSTtBeEltMnpCcEI7O0F3SWgyekJnQjtFQUNJO0F4SW0yekJwQjs7QXdJNzF6QlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBeElnMnpCWjs7QXdJOTF6Qlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7S0FBQTtFQUNBO0F4SWkyekJoQjs7QXdJOTF6Qlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhJaTJ6QmhCOztBd0kvMXpCZ0I7RUFDSTtFQUNBO0VBQ0E7QXhJazJ6QnBCOztBd0k3MXpCWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7VUFBQTtBeElnMnpCaEI7O0F3STMxekJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXhJODF6Qlo7O0F3STUxekJZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4SSsxekJoQjs7QXdJNTF6Qlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4SSsxekJoQjs7QXdJejF6Qkk7RUFDSTtBeEk0MXpCUjs7QXdJMTF6QlE7RUFDSTtBeEk2MXpCWjs7QXdJMTF6QlE7O0VBQ0k7RUFDQTtBeEk4MXpCWjs7QXdJMzF6QlE7RUFDSTtFQUNBO0F4STgxekJaOztBd0l6MXpCSTtFQUNJO0VBQ0E7RUFDQTtBeEk0MXpCUjs7QXdJMTF6QlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBeEk2MXpCWjs7QXdJMTF6QlE7RUFDSTtFQUNBO0VBQ0E7QXhJNjF6Qlo7O0F3STExekJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXhJNjF6Qlo7O0F3STMxekJZO0VBQ0k7QXhJODF6QmhCOztBd0k1MXpCZ0I7RUFISjtJQUlRO0lBQ0E7RXhJZzJ6QmxCO0FBQ0Y7O0F3STExekJJO0VBR1k7SUFDSTtFeEkyMXpCbEI7O0V3SXoxekJrQjtJQUNJO0V4STQxekJ0Qjs7RXdJejF6QmtCO0lBQ0k7RXhJNDF6QnRCO0FBQ0Y7O0F3SXQxekJJO0VBRVE7SUFDSTtFeEl3MXpCZDs7RXdJdDF6QmM7SUFDSTtFeEl5MXpCbEI7O0V3SXAxekJjO0lBQ0k7RXhJdTF6QmxCO0FBQ0Y7O0F3SWoxekJJO0VBQ0k7SUFDSTtJQUNBO0V4SW8xekJWOztFd0lsMXpCTTtJQUNJO0lBQ0E7RXhJcTF6QlY7QUFDRjs7QXdJbDF6Qkk7RUFDSTtVQUFBO0VBQ0E7VUFBQTtBeElxMXpCUjs7QXdJbDF6Qlk7RUFDSTtVQUFBO0F4SXExekJoQjs7QXdJdDF6Qlk7RUFDSTtVQUFBO0F4SXkxekJoQjs7QXdJMTF6Qlk7RUFDSTtVQUFBO0F4STYxekJoQjs7QXdJOTF6Qlk7RUFDSTtVQUFBO0F4SWkyekJoQjs7QXdJbDJ6Qlk7RUFDSTtVQUFBO0F4SXEyekJoQjs7QXdJdDJ6Qlk7RUFDSTtVQUFBO0F4SXkyekJoQjs7QXdJMTJ6Qlk7RUFDSTtVQUFBO0F4STYyekJoQjs7QXdJOTJ6Qlk7RUFDSTtVQUFBO0F4SWkzekJoQjs7QXdJbDN6Qlk7RUFDSTtVQUFBO0F4SXEzekJoQjs7QXdJdDN6Qlk7RUFDSTtVQUFBO0F4SXkzekJoQjs7QXdJMTN6Qlk7RUFDSTtVQUFBO0F4STYzekJoQjs7QXdJOTN6Qlk7RUFDSTtVQUFBO0F4SWk0ekJoQjs7QXdJbDR6Qlk7RUFDSTtVQUFBO0F4SXE0ekJoQjs7QXdJdDR6Qlk7RUFDSTtVQUFBO0F4SXk0ekJoQjs7QXdJMTR6Qlk7RUFDSTtVQUFBO0F4STY0ekJoQjs7QXdJOTR6Qlk7RUFDSTtVQUFBO0F4SWk1ekJoQjs7QXdJbDV6Qlk7RUFDSTtVQUFBO0F4SXE1ekJoQjs7QXdJdDV6Qlk7RUFDSTtVQUFBO0F4SXk1ekJoQjs7QXdJMTV6Qlk7RUFDSTtVQUFBO0F4STY1ekJoQjs7QXdJOTV6Qlk7RUFDSTtVQUFBO0F4SWk2ekJoQjs7QXlJOXAwQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F6SWlxMEJSOztBeUk5cDBCUTtFQUNJO0F6SWlxMEJaOztBeUk3cDBCUTtFQXRCSjtJQXVCUTtFeklpcTBCVjtBQUNGOztBeUkvcDBCUTtFQTFCSjtJQTJCUTtFekltcTBCVjtBQUNGOztBeUlqcTBCUTtFQTlCSjtJQStCUTtFeklxcTBCVjtBQUNGOztBeUlucTBCUTtFQWxDSjtJQW1DUTtFekl1cTBCVjtBQUNGOztBeUlucTBCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpJc3EwQlI7O0F5SWxxMEJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeklxcTBCUjs7QXlJanEwQkk7RUFDSTtFQUNBO0VBQ0E7QXpJb3EwQlI7O0F5SWxxMEJRO0VBQ0k7RUFDQTtBeklxcTBCWjs7QXlJbHEwQlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpJcXEwQlo7O0F5SWhxMEJJO0VBQ0k7QXpJbXEwQlI7O0F5SWpxMEJRO0VBSEo7SUFJUTtFeklxcTBCVjtBQUNGOztBeUlscTBCSTtFQUNJO0VBQ0E7QXpJcXEwQlI7O0F5SWpxMEJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F6SW9xMEJSOztBeUlqcTBCSTs7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F6SXNxMEJSOztBeUlwcTBCUTs7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXpJeXEwQlo7O0F5SXRxMEJRO0VBQ0k7RUFDQTtBekkycTBCWjs7QXlJN3EwQlE7RUFDSTtFQUNBO0F6STJxMEJaOztBeUk3cTBCUTs7O0VBQ0k7RUFDQTtBekkycTBCWjs7QXlJdnEwQkk7OztFQUNJO0VBQ0E7QXpJNHEwQlI7O0F5SXZxMEJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBekkwcTBCWjs7QXlJdHEwQlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBekl5cTBCaEI7O0F5SW5xMEJJOztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBekl1cTBCUjs7QXlJbnEwQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F6SXNxMEJSOztBeUlwcTBCUTtFQUNJO0VBQ0E7QXpJdXEwQlo7O0F5SWxxMEJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpJcXEwQlI7O0F5SW5xMEJRO0VBQ0k7RUFDQTtFQUNBO0F6SXNxMEJaOztBeUlucTBCUTtFQUNJO0F6SXNxMEJaOztBeUlucTBCUTs7RUFDSTtFQUNBO0F6SXVxMEJaOztBeUlucTBCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeklzcTBCUjs7QXlJcHEwQlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBekl1cTBCWjs7QXlJcHEwQlE7O0VBQ0k7RUFDQTtBekl3cTBCWjs7QXlJcHEwQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpJdXEwQlI7O0F5SXJxMEJRO0VBQ0k7RUFDQTtBekl3cTBCWjs7QXlJanEwQlk7OztFQUNJO0VBQ0E7QXpJc3EwQmhCOztBeUlwcTBCZ0I7OztFQUNJO0VBQ0E7QXpJeXEwQnBCOztBeUlycTBCWTs7O0VBQ0k7RUFDQTtBekkwcTBCaEI7O0F5SXhxMEJnQjs7O0VBQ0k7RUFDQTtBekk2cTBCcEI7O0F5SXZxMEJJOztFQUNJO0VBQ0E7RUFDQTtBekkycTBCUjs7QXlJdnEwQkk7RUFDSTtFQUNBO0VBQ0E7QXpJMHEwQlI7O0F5SXRxMEJJO0VBQ0k7QXpJeXEwQlI7O0F5SXJxMEJJO0VBQ0k7SUFDSTtFekl3cTBCVjs7RXlJcnEwQk07SUFDSTtFekl3cTBCVjs7RXlJcnEwQk07O0lBQ0k7RXpJeXEwQlY7O0V5SXRxMEJNO0lBQ0k7RXpJeXEwQlY7O0V5SXZxMEJVO0lBQ0k7SUFDQTtFekkwcTBCZDs7RXlJeHEwQmM7SUFDSTtFekkycTBCbEI7QUFDRjs7QXlJcnEwQkk7RUFDSTtJQUNJO0V6SXdxMEJWO0FBQ0Y7O0F5SXBxMEJJO0VBQ0k7SUFDSTtFekl1cTBCVjtBQUNGOztBMElsLzBCQTs7RTFJcy8wQkU7O0EwSWgvMEJFO0VBQ0k7QTFJbS8wQlI7O0EwSS8rMEJJO0VBQ0k7RUFDQTtBMUlrLzBCUjs7QTBJLyswQlE7RUFMSjtJQU1RO0lBQ0E7RTFJbS8wQlY7QUFDRjs7QTBJaC8wQkk7RUFDSTtFQUNBO0VBQ0E7QTFJbS8wQlI7O0EwSWgvMEJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7VUFBQTtBMUltLzBCUjs7QTBJai8wQlE7RUFDSTtBMUlvLzBCWjs7QTBJai8wQlE7RUFDSTtBMUlvLzBCWjs7QTBJai8wQlE7RUFDSTtBMUlvLzBCWjs7QTBJaC8wQkk7RUFDSTtFQUNBO0VBQ0E7QTFJbS8wQlI7O0EwSWgvMEJJO0VBQ0k7RUFDQTtBMUltLzBCUjs7QTBJaC8wQkk7RUFDSTtFQUNBO0ExSW0vMEJSOztBMEloLzBCSTtFQUNJO0lBQ0k7SUFDQTtFMUltLzBCVjs7RTBJai8wQk07SUFDSTtJQUNBO0UxSW8vMEJWO0FBQ0Y7O0EwSWgvMEJJO0VBQ0k7SUFDSTtJQUNBO0UxSW0vMEJWOztFMElqLzBCTTtJQUNJO0lBQ0E7RTFJby8wQlY7O0UwSWwvMEJNO0lBQ0k7SUFDQTtFMUlxLzBCVjtBQUNGOztBMElsLzBCSTtFQUNJO1VBQUE7QTFJcS8wQlI7O0EwSS8rMEJZO0VBQ0k7QTFJay8wQmhCOztBMEloLzBCZ0I7RUFDSTtBMUltLzBCcEI7O0EwSWgvMEJnQjs7RUFDSTtBMUlvLzBCcEI7O0EwSWovMEJnQjtFQUNJO0ExSW8vMEJwQjs7QTBJbC8wQm9COzs7RUFFSTtBMUlzLzBCeEI7O0EySXZtMUJBOztFM0kybTFCRTs7QTJJcm0xQkU7RUFHUTtJQUNJO0UzSXNtMUJkOztFMklsbTFCVTs7Ozs7O0lBTUk7RTNJcW0xQmQ7QUFDRjs7QTJJL2wxQlE7RUFDSTtFQUNBO0EzSWttMUJaOztBMklobTFCWTtFQUNJO0EzSW1tMUJoQjs7QTJJNWwxQlE7RUFDSTtFQUNBO0tBQUE7TUFBQTtVQUFBO0VBQ0E7QTNJK2wxQlo7O0EySTdsMUJZO0VBQ0k7QTNJZ20xQmhCOztBMkk3bDFCWTtFQUNJO0VBQ0E7RUFDQTtBM0lnbTFCaEI7O0EySTdsMUJZO0VBQ0k7QTNJZ20xQmhCOztBMkk1bDFCWTs7RUFFSTtFQUNBO0EzSStsMUJoQjs7QTJJeGwxQlE7RUFDSTtBM0kybDFCWjs7QTJJeGwxQmdCO0VBQ0k7RUFDQTtBM0kybDFCcEI7O0EySXRsMUJnQjtFQUNJO0VBQ0E7QTNJeWwxQnBCOztBMklqbDFCUTs7O0VBQ0k7RUFDQTtBM0lzbDFCWjs7QTJJbGwxQlE7OztFQUNJO1VBQUE7QTNJdWwxQlo7O0EySWxsMUJJO0VBQ0k7QTNJcWwxQlI7O0EySWpsMUJJO0VBQ0k7SUFDSTtFM0lvbDFCVjs7RTJJbGwxQk07SUFDSTtFM0lxbDFCVjs7RTJJbmwxQk07SUFDSTtFM0lzbDFCVjtBQUNGOztBRHJtMUJBO0VBQ0k7QUN3bTFCSiIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2Zyb250ZW5kLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvZnJvbnRlbmQuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvY29yZS9faW5kZXguc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvY29yZS9fZnVuY3Rpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL2NvcmUvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC9jb3JlL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9jb3JlL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9fcm9vdC5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL3ZlbmRvci9fcmZzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvbWl4aW5zL19jb2xvci1tb2RlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvX3JlYm9vdC5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL190eXBlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvbWl4aW5zL19saXN0cy5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL19pbWFnZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9taXhpbnMvX2ltYWdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvX2NvbnRhaW5lcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9taXhpbnMvX2NvbnRhaW5lci5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9fZ3JpZC5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL21peGlucy9fZ3JpZC5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL190YWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9taXhpbnMvX3RhYmxlLXZhcmlhbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvZm9ybXMvX2xhYmVscy5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL2Zvcm1zL19mb3JtLXRleHQuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9mb3Jtcy9fZm9ybS1jb250cm9sLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvbWl4aW5zL190cmFuc2l0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9mb3Jtcy9fZm9ybS1zZWxlY3Quc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9mb3Jtcy9fZm9ybS1jaGVjay5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL2Zvcm1zL19mb3JtLXJhbmdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvZm9ybXMvX2Zsb2F0aW5nLWxhYmVscy5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL2Zvcm1zL19pbnB1dC1ncm91cC5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL21peGlucy9fZm9ybXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9fYnV0dG9ucy5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL21peGlucy9fYnV0dG9ucy5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL190cmFuc2l0aW9ucy5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL19kcm9wZG93bi5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL21peGlucy9fY2FyZXQuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9fYnV0dG9uLWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvX25hdi5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL19uYXZiYXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9fY2FyZC5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL19hY2NvcmRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9fYnJlYWRjcnVtYi5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL19wYWdpbmF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvbWl4aW5zL19wYWdpbmF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvX2JhZGdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvX2FsZXJ0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvX3Byb2dyZXNzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvX2xpc3QtZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9fY2xvc2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9fdG9hc3RzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvX21vZGFsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvbWl4aW5zL19iYWNrZHJvcC5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL190b29sdGlwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvbWl4aW5zL19yZXNldC10ZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvX3BvcG92ZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9fY2Fyb3VzZWwuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9taXhpbnMvX2NsZWFyZml4LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvX3NwaW5uZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvX29mZmNhbnZhcy5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL19wbGFjZWhvbGRlcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9oZWxwZXJzL19jb2xvci1iZy5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL2hlbHBlcnMvX2NvbG9yZWQtbGlua3Muc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9oZWxwZXJzL19mb2N1cy1yaW5nLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvaGVscGVycy9faWNvbi1saW5rLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvaGVscGVycy9fcmF0aW8uc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9oZWxwZXJzL19wb3NpdGlvbi5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL2hlbHBlcnMvX3N0YWNrcy5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL2hlbHBlcnMvX3Zpc3VhbGx5LWhpZGRlbi5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL21peGlucy9fdmlzdWFsbHktaGlkZGVuLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvaGVscGVycy9fc3RyZXRjaGVkLWxpbmsuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9oZWxwZXJzL190ZXh0LXRydW5jYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9taXhpbnMvX3RleHQtdHJ1bmNhdGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvdmVuZG9yL2Jvb3RzdHJhcC01LjMuMC9oZWxwZXJzL192ci5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC92ZW5kb3IvYm9vdHN0cmFwLTUuMy4wL21peGlucy9fdXRpbGl0aWVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL3ZlbmRvci9ib290c3RyYXAtNS4zLjAvdXRpbGl0aWVzL19hcGkuc2NzcyIsIndlYnBhY2s6Ly8vLi9zaGFyZWQvbGliL19idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2hhcmVkL2NvbXBvbmVudHMvX3F1aWxsLWVkaXRvci5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC9jb21wb25lbnRzL19zdGFyLXJhdGluZy5zY3NzIiwid2VicGFjazovLy8uL3NoYXJlZC9jb21wb25lbnRzL19zZWxlY3QyLWFjY2Vzc2liaWxpdHkuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9jb3JlL19yZXNldC5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL2NvcmUvX3R5cG9ncmFwaHkuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9jb3JlL191dGlsaXRpZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9jb3JlL19sYXlvdXQuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9jb3JlL19ib290c3RyYXAtb3ZlcnJpZGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvbGliL19oZWFkZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9saWIvY29tcG9uZW50cy9fcHJvZHVjdC1jYXJkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvbGliL2NvbXBvbmVudHMvX3Byb2R1Y3QtY2Fyb3VzZWwuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9saWIvY29tcG9uZW50cy9fY2FydC13aWRnZXQuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9saWIvY29tcG9uZW50cy9fd2lzaGxpc3Qtd2lkZ2V0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvbGliL2NvbXBvbmVudHMvX2RhdGF0YWJsZS5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL2xpYi9jb21wb25lbnRzL190b2FzdC1vdmVycmlkZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9saWIvZm9ybXMvX2R5bmFtaWMtZm9ybS5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL2xpYi9fZm9ybXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9jb21wb25lbnRzL19oZWFkZXItZHJvcGRvd25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvY29tcG9uZW50cy9faGVhZGVyLWRyb3Bkb3duLXR5cG9ncmFwaHkuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9jb21wb25lbnRzL193aXNobGlzdC1idXR0b24uc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9jb21wb25lbnRzL19zaG9wLWZpbHRlcnMtZW5oYW5jZWQuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9jb21wb25lbnRzL19oZWFkZXItaWNvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9jb21wb25lbnRzL19vcmRlci1jYXJkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvcGFnZXMvX2hvbWUuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9wYWdlcy9fc2hvcC5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL3BhZ2VzL19jYXJ0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvcGFnZXMvX2l0ZW0tZGV0YWlscy1wYWdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvcGFnZXMvX2NoZWNrb3V0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvcGFnZXMvX29yZGVyLXJlY2VpdmVkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvcGFnZXMvX2FjY291bnQuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9wYWdlcy9fcHJvZmlsZS5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL3BhZ2VzL19jb250ZW50LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvcGFnZXMvX2NvbXBhcmlzb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9wYWdlcy9fbm90aWZpY2F0aW9ucy5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL3BhZ2VzL19ub3RpZmljYXRpb25zLWluZGV4LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvcGFnZXMvX3dpc2hsaXN0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvcGFnZXMvX3NlbGxlci1wcm9maWxlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvcGFnZXMvX3NlbGxlci1wcm9maWxlLXNob3cuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9wYWdlcy9fc2VhcmNoLXVuaWZpZWQuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9wYWdlcy9fc2VhcmNoLWFqYXgtdW5pZmllZC5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL3BhZ2VzL19kaXNjb3Zlci5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL3BhZ2VzL19wcm9maWxlLW9yZGVyLWRldGFpbC5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL3BhZ2VzL19jb29raWUtY29uc2VudC1wYWdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvcGFnZXMvX2Fzay1xdWVzdGlvbi1wYWdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvcGFnZXMvX3Byb2ZpbGUtbGF5b3V0LXBhZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9wYWdlcy9fcHJvZmlsZS1hZGRyZXNzZXMtcGFnZS5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL3BhZ2VzL19wcm9maWxlLXNlY3VyaXR5LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvcGFnZXMvX3Byb2ZpbGUtaW52b2ljZS5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL3BhZ2VzL19ibG9nLWluZGV4LXBhZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9wYWdlcy9fYmxvZy1zaG93LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvcGFnZXMvX2Jsb2ctY2F0ZWdvcmllcy5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL3BhZ2VzL19hdXRoLWxvZ2luLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvcGFnZXMvX2F1dGgtcmVnaXN0ZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9wYWdlcy9fYXV0aC12ZXJpZnkuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9wYWdlcy9fY2hlY2tvdXQtc3VjY2Vzcy5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL3BhZ2VzL19hdXRoLXBhc3N3b3JkLWVtYWlsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vZnJvbnRlbmQvcGFnZXMvX2F1dGgtcGFzc3dvcmQtcmVzZXQuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9wYWdlcy9fc2hvcC1jYXRlZ29yeS5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL3BhZ2VzL19wcm9kdWN0LWNhdGVnb3JpZXMtcGFnZS5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kL3BhZ2VzL19yZXF1ZXN0LXNlbGxlci1hY2Nlc3Muc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9wYWdlcy9fcHJvZmlsZS1zdXBwb3J0LXRpY2tldC1kZXRhaWwuc2NzcyIsIndlYnBhY2s6Ly8vLi9mcm9udGVuZC9wYWdlcy9fcHJvZmlsZS1zdXBwb3J0LXRpY2tldHMuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENhcmF0WCBGcm9udGVuZCBTdHlsZXNcbiAqIFxuICogTWFpbiBlbnRyeSBwb2ludCBmb3IgYWxsIGZyb250ZW5kIHN0eWxlcy5cbiAqIEZvbGxvd3MgYSBzdHJ1Y3R1cmVkIG9yZ2FuaXphdGlvbiB3aXRoIHNoYXJlZCBjb3JlLCBmcm9udGVuZC1zcGVjaWZpYyBsaWJyYXJpZXMsIGFuZCBwYWdlIHN0eWxlcy5cbiAqL1xuXG4vLyAxLiBTaGFyZWQgQ29yZSAoZnVuY3Rpb25zLCB2YXJpYWJsZXMsIG1peGlucylcbkBpbXBvcnQgXCJzaGFyZWQvY29yZS9pbmRleFwiO1xuXG4vLyAxLjUuIEZyb250ZW5kLXNwZWNpZmljIHZhcmlhYmxlcyAobXVzdCBjb21lIGJlZm9yZSBCb290c3RyYXApXG5AaW1wb3J0IFwiZnJvbnRlbmQvY29yZS92YXJpYWJsZXNcIjtcblxuLy8gMi4gQm9vdHN0cmFwIDUgKHdpdGggb3VyIHZhcmlhYmxlIG92ZXJyaWRlcylcbkBpbXBvcnQgXCJ2ZW5kb3JzL2Jvb3RzdHJhcFwiO1xuXG4vLyAyLjUuIFZlbmRvciBMaWJyYXJpZXMgKFNlbGVjdDIgQ1NTIGxvYWRlZCB2aWEgQ0ROKVxuXG4vLyAzLiBTaGFyZWQgTGlicmFyaWVzXG5AaW1wb3J0IFwic2hhcmVkL2xpYi9idXR0b25zXCI7XG5AaW1wb3J0IFwic2hhcmVkL2NvbXBvbmVudHMvcXVpbGwtZWRpdG9yXCI7XG5AaW1wb3J0IFwic2hhcmVkL2NvbXBvbmVudHMvc3Rhci1yYXRpbmdcIjtcbkBpbXBvcnQgXCJzaGFyZWQvY29tcG9uZW50cy9zZWxlY3QyLWFjY2Vzc2liaWxpdHlcIjsgLy8gSW1wcm92ZSBTZWxlY3QyIGtleWJvYXJkIG5hdmlnYXRpb24gdmlzaWJpbGl0eVxuLy8gUmVtb3ZlZCBzaGFyZWQvbGliL2Zvcm1zIC0gZnJvbnRlbmQgaGFzIGl0cyBvd24gZm9ybSBzeXN0ZW1cblxuLy8gNC4gRnJvbnRlbmQgQ29yZSAoYmFzZSBzdHlsZXMpXG5AaW1wb3J0IFwiZnJvbnRlbmQvY29yZS9yZXNldFwiO1xuQGltcG9ydCBcImZyb250ZW5kL2NvcmUvdHlwb2dyYXBoeVwiO1xuQGltcG9ydCBcImZyb250ZW5kL2NvcmUvdXRpbGl0aWVzXCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvY29yZS9sYXlvdXRcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9jb3JlL2Jvb3RzdHJhcC1vdmVycmlkZXNcIjtcblxuLy8gNS4gRnJvbnRlbmQgTGlicmFyaWVzIChjb21wb25lbnRzKVxuQGltcG9ydCBcImZyb250ZW5kL2xpYi9oZWFkZXJcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9saWIvbmF2aWdhdGlvblwiO1xuQGltcG9ydCBcImZyb250ZW5kL2xpYi9mb290ZXJcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9saWIvY29tcG9uZW50cy9wcm9kdWN0LWNhcmRcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9saWIvY29tcG9uZW50cy9wcm9kdWN0LWNhcm91c2VsXCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvbGliL2NvbXBvbmVudHMvY2FydC13aWRnZXRcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9saWIvY29tcG9uZW50cy93aXNobGlzdC13aWRnZXRcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9saWIvY29tcG9uZW50cy9zZWFyY2hcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9saWIvY29tcG9uZW50cy9wYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvbGliL2NvbXBvbmVudHMvYnJlYWRjcnVtYnNcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9saWIvY29tcG9uZW50cy9hbGVydHNcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9saWIvY29tcG9uZW50cy9tb2RhbHNcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9saWIvY29tcG9uZW50cy9kYXRhdGFibGVcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9saWIvY29tcG9uZW50cy90b2FzdC1vdmVycmlkZXNcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9saWIvZm9ybXMvZHluYW1pYy1mb3JtXCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvbGliL2Zvcm1zXCI7IC8vIEZyb250ZW5kLXNwZWNpZmljIGZvcm0gb3ZlcnJpZGVzIChzcXVhcmUgY29ybmVycylcbkBpbXBvcnQgXCJmcm9udGVuZC9jb21wb25lbnRzL2hlYWRlci1kcm9wZG93bnNcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9jb21wb25lbnRzL2hlYWRlci1kcm9wZG93bi10eXBvZ3JhcGh5XCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvY29tcG9uZW50cy93aXNobGlzdC1idXR0b25cIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9jb21wb25lbnRzL3Nob3AtZmlsdGVycy1lbmhhbmNlZFwiO1xuQGltcG9ydCBcImZyb250ZW5kL2NvbXBvbmVudHMvaGVhZGVyLWljb25zXCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvY29tcG9uZW50cy9vcmRlci1jYXJkXCI7XG5cbi8vIDYuIEZyb250ZW5kIFBhZ2VzIChwYWdlLXNwZWNpZmljIHN0eWxlcylcbkBpbXBvcnQgXCJmcm9udGVuZC9wYWdlcy9ob21lXCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvcGFnZXMvc2hvcFwiO1xuQGltcG9ydCBcImZyb250ZW5kL3BhZ2VzL2NhcnRcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9wYWdlcy9wcm9kdWN0LWRldGFpbFwiO1xuQGltcG9ydCBcImZyb250ZW5kL3BhZ2VzL2l0ZW0tZGV0YWlscy1wYWdlXCI7IC8vIE5ldyBBbWF6b24vZUJheSBzdHlsZSBpdGVtIGRldGFpbHNcbkBpbXBvcnQgXCJmcm9udGVuZC9wYWdlcy9jaGVja291dFwiO1xuQGltcG9ydCBcImZyb250ZW5kL3BhZ2VzL29yZGVyLXJlY2VpdmVkXCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvcGFnZXMvYWNjb3VudFwiO1xuQGltcG9ydCBcImZyb250ZW5kL3BhZ2VzL3Byb2ZpbGVcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9wYWdlcy9jb250ZW50XCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvcGFnZXMvY29tcGFyaXNvblwiO1xuQGltcG9ydCBcImZyb250ZW5kL3BhZ2VzL25vdGlmaWNhdGlvbnNcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9wYWdlcy9ub3RpZmljYXRpb25zLWluZGV4XCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvcGFnZXMvd2lzaGxpc3RcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9wYWdlcy9zZWxsZXItcHJvZmlsZVwiO1xuQGltcG9ydCBcImZyb250ZW5kL3BhZ2VzL3NlbGxlci1wcm9maWxlLXNob3dcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9wYWdlcy9zZWFyY2gtdW5pZmllZFwiO1xuQGltcG9ydCBcImZyb250ZW5kL3BhZ2VzL3NlYXJjaC1hamF4LXVuaWZpZWRcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9wYWdlcy9kaXNjb3ZlclwiO1xuQGltcG9ydCBcImZyb250ZW5kL3BhZ2VzL3Byb2ZpbGUtb3JkZXItZGV0YWlsXCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvcGFnZXMvY29va2llLWNvbnNlbnQtcGFnZVwiO1xuQGltcG9ydCBcImZyb250ZW5kL3BhZ2VzL2Fzay1xdWVzdGlvbi1wYWdlXCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvcGFnZXMvcHJvZmlsZS1sYXlvdXQtcGFnZVwiO1xuQGltcG9ydCBcImZyb250ZW5kL3BhZ2VzL3Byb2ZpbGUtYWRkcmVzc2VzLXBhZ2VcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9wYWdlcy9wcm9maWxlLXNlY3VyaXR5XCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvcGFnZXMvcHJvZmlsZS1pbnZvaWNlXCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvcGFnZXMvYmxvZy1pbmRleC1wYWdlXCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvcGFnZXMvYmxvZy1zaG93XCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvcGFnZXMvYmxvZy1jYXRlZ29yaWVzXCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvcGFnZXMvYXV0aC1sb2dpblwiO1xuQGltcG9ydCBcImZyb250ZW5kL3BhZ2VzL2F1dGgtcmVnaXN0ZXJcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9wYWdlcy9hdXRoLXZlcmlmeVwiO1xuQGltcG9ydCBcImZyb250ZW5kL3BhZ2VzL2NoZWNrb3V0LXN1Y2Nlc3NcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9wYWdlcy9hdXRoLXBhc3N3b3JkLWVtYWlsXCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvcGFnZXMvYXV0aC1wYXNzd29yZC1yZXNldFwiO1xuQGltcG9ydCBcImZyb250ZW5kL3BhZ2VzL3Nob3AtY2F0ZWdvcnlcIjtcbkBpbXBvcnQgXCJmcm9udGVuZC9wYWdlcy9wcm9kdWN0LWNhdGVnb3JpZXMtcGFnZVwiO1xuQGltcG9ydCBcImZyb250ZW5kL3BhZ2VzL3JlcXVlc3Qtc2VsbGVyLWFjY2Vzc1wiO1xuQGltcG9ydCBcImZyb250ZW5kL3BhZ2VzL3Byb2ZpbGUtc3VwcG9ydC10aWNrZXQtZGV0YWlsXCI7XG5AaW1wb3J0IFwiZnJvbnRlbmQvcGFnZXMvcHJvZmlsZS1zdXBwb3J0LXRpY2tldHNcIjtcblxuQGltcG9ydCBcImZyb250ZW5kL3RoZW1lXCI7XG5cbi8vIEhvbWUgcGFnZSBzcGVjaWZpYyBzdHlsZXNcbi5oZXJvU2xpZGVyIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vKipcbiAqIENhcmF0WCBGcm9udGVuZCBTdHlsZXNcbiAqIFxuICogTWFpbiBlbnRyeSBwb2ludCBmb3IgYWxsIGZyb250ZW5kIHN0eWxlcy5cbiAqIEZvbGxvd3MgYSBzdHJ1Y3R1cmVkIG9yZ2FuaXphdGlvbiB3aXRoIHNoYXJlZCBjb3JlLCBmcm9udGVuZC1zcGVjaWZpYyBsaWJyYXJpZXMsIGFuZCBwYWdlIHN0eWxlcy5cbiAqL1xuXG4vKipcbiAqIFNoYXJlZCBDb3JlIEluZGV4XG4gKlxuICogSW1wb3J0IGFsbCBzaGFyZWQgY29yZSBTQ1NTIGZpbGVzIGluIHRoZSBjb3JyZWN0IG9yZGVyXG4gKi9cblxuLyoqXG4gKiBTaGFyZWQgRnVuY3Rpb25zXG4gKlxuICogU0NTUyBmdW5jdGlvbnMgZm9yIGNhbGN1bGF0aW9ucyBhbmQgdHJhbnNmb3JtYXRpb25zXG4gKi9cblxuLyoqXG4gKiBTaGFyZWQgVmFyaWFibGVzXG4gKlxuICogQ29yZSB2YXJpYWJsZXMgdXNlZCB0aHJvdWdob3V0IGJvdGggZnJvbnRlbmQgYW5kIGJhY2tlbmQgc3R5bGluZy5cbiAqIFRoZXNlIHByb3ZpZGUgYSBjZW50cmFsIHBsYWNlIHRvIGRlZmluZSBjb2xvcnMsIHNwYWNpbmcsIGFuZCBvdGhlciBkZXNpZ24gZWxlbWVudHMuXG4gKi9cblxuLyoqXG4gKiBTaGFyZWQgTWl4aW5zXG4gKlxuICogUmV1c2FibGUgU0NTUyBtaXhpbnMgZm9yIGNvbnNpc3RlbnQgc3R5bGluZyBwYXR0ZXJuc1xuICovXG5cbi8qKlxuICogRnJvbnRlbmQgVmFyaWFibGVzXG4gKlxuICogRnJvbnRlbmQtc3BlY2lmaWMgdmFyaWFibGUgb3ZlcnJpZGVzIGFuZCBjdXN0b20gdmFsdWVzLlxuICogVGhlc2UgdmFyaWFibGVzIGFyZSBsb2FkZWQgYmVmb3JlIEJvb3RzdHJhcCB0byBvdmVycmlkZSBkZWZhdWx0cy5cbiAqL1xuXG4vKipcbiAqIFNoYXJlZCBWYXJpYWJsZXNcbiAqXG4gKiBDb3JlIHZhcmlhYmxlcyB1c2VkIHRocm91Z2hvdXQgYm90aCBmcm9udGVuZCBhbmQgYmFja2VuZCBzdHlsaW5nLlxuICogVGhlc2UgcHJvdmlkZSBhIGNlbnRyYWwgcGxhY2UgdG8gZGVmaW5lIGNvbG9ycywgc3BhY2luZywgYW5kIG90aGVyIGRlc2lnbiBlbGVtZW50cy5cbiAqL1xuXG46cm9vdCxcbltkYXRhLWJzLXRoZW1lPWxpZ2h0XSB7XG4gIC0tYnMtYmx1ZTogIzBkNmVmZDtcbiAgLS1icy1pbmRpZ286ICM2NjEwZjI7XG4gIC0tYnMtcHVycGxlOiAjNmY0MmMxO1xuICAtLWJzLXBpbms6ICNkNjMzODQ7XG4gIC0tYnMtcmVkOiAjZGMzNTQ1O1xuICAtLWJzLW9yYW5nZTogI2ZkN2UxNDtcbiAgLS1icy15ZWxsb3c6ICNmZmMxMDc7XG4gIC0tYnMtZ3JlZW46ICMxOTg3NTQ7XG4gIC0tYnMtdGVhbDogIzIwYzk5NztcbiAgLS1icy1jeWFuOiAjMGRjYWYwO1xuICAtLWJzLWJsYWNrOiAjMzMzMzMzO1xuICAtLWJzLXdoaXRlOiAjZmZmZmZmO1xuICAtLWJzLWdyYXk6ICM2Yzc1N2Q7XG4gIC0tYnMtZ3JheS1kYXJrOiAjMzQzYTQwO1xuICAtLWJzLWdyYXktMTAwOiAjZjhmOWZhO1xuICAtLWJzLWdyYXktMjAwOiAjZTllY2VmO1xuICAtLWJzLWdyYXktMzAwOiAjZGVlMmU2O1xuICAtLWJzLWdyYXktNDAwOiAjY2VkNGRhO1xuICAtLWJzLWdyYXktNTAwOiAjYWRiNWJkO1xuICAtLWJzLWdyYXktNjAwOiAjNmM3NTdkO1xuICAtLWJzLWdyYXktNzAwOiAjNDk1MDU3O1xuICAtLWJzLWdyYXktODAwOiAjMzQzYTQwO1xuICAtLWJzLWdyYXktOTAwOiAjMjEyNTI5O1xuICAtLWJzLXByaW1hcnk6ICMxZTFlNTY7XG4gIC0tYnMtc2Vjb25kYXJ5OiAjYTM3ZWJhO1xuICAtLWJzLXN1Y2Nlc3M6ICM0Y2FmNTA7XG4gIC0tYnMtaW5mbzogIzIxOTZmMztcbiAgLS1icy13YXJuaW5nOiAjZmY5ODAwO1xuICAtLWJzLWRhbmdlcjogI2Y0NDMzNjtcbiAgLS1icy1saWdodDogI2Y4ZjlmYTtcbiAgLS1icy1kYXJrOiAjMjEyNTI5O1xuICAtLWJzLXByaW1hcnktcmdiOiAzMCwgMzAsIDg2O1xuICAtLWJzLXNlY29uZGFyeS1yZ2I6IDE2MywgMTI2LCAxODY7XG4gIC0tYnMtc3VjY2Vzcy1yZ2I6IDc2LCAxNzUsIDgwO1xuICAtLWJzLWluZm8tcmdiOiAzMywgMTUwLCAyNDM7XG4gIC0tYnMtd2FybmluZy1yZ2I6IDI1NSwgMTUyLCAwO1xuICAtLWJzLWRhbmdlci1yZ2I6IDI0NCwgNjcsIDU0O1xuICAtLWJzLWxpZ2h0LXJnYjogMjQ4LCAyNDksIDI1MDtcbiAgLS1icy1kYXJrLXJnYjogMzMsIDM3LCA0MTtcbiAgLS1icy1wcmltYXJ5LXRleHQtZW1waGFzaXM6ICMwYzBjMjI7XG4gIC0tYnMtc2Vjb25kYXJ5LXRleHQtZW1waGFzaXM6ICM0MTMyNGE7XG4gIC0tYnMtc3VjY2Vzcy10ZXh0LWVtcGhhc2lzOiAjMWU0NjIwO1xuICAtLWJzLWluZm8tdGV4dC1lbXBoYXNpczogIzBkM2M2MTtcbiAgLS1icy13YXJuaW5nLXRleHQtZW1waGFzaXM6ICM2NjNkMDA7XG4gIC0tYnMtZGFuZ2VyLXRleHQtZW1waGFzaXM6ICM2MjFiMTY7XG4gIC0tYnMtbGlnaHQtdGV4dC1lbXBoYXNpczogIzQ5NTA1NztcbiAgLS1icy1kYXJrLXRleHQtZW1waGFzaXM6ICM0OTUwNTc7XG4gIC0tYnMtcHJpbWFyeS1iZy1zdWJ0bGU6ICNkMmQyZGQ7XG4gIC0tYnMtc2Vjb25kYXJ5LWJnLXN1YnRsZTogI2VkZTVmMTtcbiAgLS1icy1zdWNjZXNzLWJnLXN1YnRsZTogI2RiZWZkYztcbiAgLS1icy1pbmZvLWJnLXN1YnRsZTogI2QzZWFmZDtcbiAgLS1icy13YXJuaW5nLWJnLXN1YnRsZTogI2ZmZWFjYztcbiAgLS1icy1kYW5nZXItYmctc3VidGxlOiAjZmRkOWQ3O1xuICAtLWJzLWxpZ2h0LWJnLXN1YnRsZTogI2ZjZmNmZDtcbiAgLS1icy1kYXJrLWJnLXN1YnRsZTogI2NlZDRkYTtcbiAgLS1icy1wcmltYXJ5LWJvcmRlci1zdWJ0bGU6ICNhNWE1YmI7XG4gIC0tYnMtc2Vjb25kYXJ5LWJvcmRlci1zdWJ0bGU6ICNkYWNiZTM7XG4gIC0tYnMtc3VjY2Vzcy1ib3JkZXItc3VidGxlOiAjYjdkZmI5O1xuICAtLWJzLWluZm8tYm9yZGVyLXN1YnRsZTogI2E2ZDVmYTtcbiAgLS1icy13YXJuaW5nLWJvcmRlci1zdWJ0bGU6ICNmZmQ2OTk7XG4gIC0tYnMtZGFuZ2VyLWJvcmRlci1zdWJ0bGU6ICNmYmI0YWY7XG4gIC0tYnMtbGlnaHQtYm9yZGVyLXN1YnRsZTogI2U5ZWNlZjtcbiAgLS1icy1kYXJrLWJvcmRlci1zdWJ0bGU6ICNhZGI1YmQ7XG4gIC0tYnMtd2hpdGUtcmdiOiAyNTUsIDI1NSwgMjU1O1xuICAtLWJzLWJsYWNrLXJnYjogNTEsIDUxLCA1MTtcbiAgLS1icy1mb250LXNhbnMtc2VyaWY6IHN5c3RlbS11aSwgLWFwcGxlLXN5c3RlbSwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgXCJOb3RvIFNhbnNcIiwgXCJMaWJlcmF0aW9uIFNhbnNcIiwgQXJpYWwsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIjtcbiAgLS1icy1mb250LW1vbm9zcGFjZTogU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZTtcbiAgLS1icy1ncmFkaWVudDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSk7XG4gIC0tYnMtYm9keS1mb250LWZhbWlseTogXCJQb3BwaW5zXCIsIFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG4gIC0tYnMtYm9keS1mb250LXNpemU6IDFyZW07XG4gIC0tYnMtYm9keS1mb250LXdlaWdodDogNDAwO1xuICAtLWJzLWJvZHktbGluZS1oZWlnaHQ6IDEuNTtcbiAgLS1icy1ib2R5LWNvbG9yOiAjMjEyNTI5O1xuICAtLWJzLWJvZHktY29sb3ItcmdiOiAzMywgMzcsIDQxO1xuICAtLWJzLWJvZHktYmc6ICNmZmZmZmY7XG4gIC0tYnMtYm9keS1iZy1yZ2I6IDI1NSwgMjU1LCAyNTU7XG4gIC0tYnMtZW1waGFzaXMtY29sb3I6ICMzMzMzMzM7XG4gIC0tYnMtZW1waGFzaXMtY29sb3ItcmdiOiA1MSwgNTEsIDUxO1xuICAtLWJzLXNlY29uZGFyeS1jb2xvcjogcmdiYSgzMywgMzcsIDQxLCAwLjc1KTtcbiAgLS1icy1zZWNvbmRhcnktY29sb3ItcmdiOiAzMywgMzcsIDQxO1xuICAtLWJzLXNlY29uZGFyeS1iZzogI2U5ZWNlZjtcbiAgLS1icy1zZWNvbmRhcnktYmctcmdiOiAyMzMsIDIzNiwgMjM5O1xuICAtLWJzLXRlcnRpYXJ5LWNvbG9yOiByZ2JhKDMzLCAzNywgNDEsIDAuNSk7XG4gIC0tYnMtdGVydGlhcnktY29sb3ItcmdiOiAzMywgMzcsIDQxO1xuICAtLWJzLXRlcnRpYXJ5LWJnOiAjZjhmOWZhO1xuICAtLWJzLXRlcnRpYXJ5LWJnLXJnYjogMjQ4LCAyNDksIDI1MDtcbiAgLS1icy1oZWFkaW5nLWNvbG9yOiBpbmhlcml0O1xuICAtLWJzLWxpbmstY29sb3I6ICMxZTFlNTY7XG4gIC0tYnMtbGluay1jb2xvci1yZ2I6IDMwLCAzMCwgODY7XG4gIC0tYnMtbGluay1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIC0tYnMtbGluay1ob3Zlci1jb2xvcjogIzE4MTg0NTtcbiAgLS1icy1saW5rLWhvdmVyLWNvbG9yLXJnYjogMjQsIDI0LCA2OTtcbiAgLS1icy1jb2RlLWNvbG9yOiAjZDYzMzg0O1xuICAtLWJzLWhpZ2hsaWdodC1iZzogI2ZmZjNjZDtcbiAgLS1icy1ib3JkZXItd2lkdGg6IDFweDtcbiAgLS1icy1ib3JkZXItc3R5bGU6IHNvbGlkO1xuICAtLWJzLWJvcmRlci1jb2xvcjogI2I2YjZiNjtcbiAgLS1icy1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQ6IHJnYmEoMTEyLCAxMTIsIDExMiwgMC4zNSk7XG4gIC0tYnMtYm9yZGVyLXJhZGl1czogOHB4O1xuICAtLWJzLWJvcmRlci1yYWRpdXMtc206IDRweDtcbiAgLS1icy1ib3JkZXItcmFkaXVzLWxnOiAxMnB4O1xuICAtLWJzLWJvcmRlci1yYWRpdXMteGw6IDA7XG4gIC0tYnMtYm9yZGVyLXJhZGl1cy14eGw6IDA7XG4gIC0tYnMtYm9yZGVyLXJhZGl1cy0yeGw6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMteHhsKTtcbiAgLS1icy1ib3JkZXItcmFkaXVzLXBpbGw6IDUwcmVtO1xuICAtLWJzLWJveC1zaGFkb3c6IDAgNHB4IDZweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIC0tYnMtYm94LXNoYWRvdy1zbTogMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgLS1icy1ib3gtc2hhZG93LWxnOiAwIDEwcHggMTVweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIC0tYnMtYm94LXNoYWRvdy1pbnNldDogaW5zZXQgMCAxcHggMnB4IHJnYmEoNTEsIDUxLCA1MSwgMC4wNzUpO1xuICAtLWJzLWZvY3VzLXJpbmctd2lkdGg6IDAuMjVyZW07XG4gIC0tYnMtZm9jdXMtcmluZy1vcGFjaXR5OiAwLjI1O1xuICAtLWJzLWZvY3VzLXJpbmctY29sb3I6IHJnYmEoMzAsIDMwLCA4NiwgMC4yNSk7XG4gIC0tYnMtZm9ybS12YWxpZC1jb2xvcjogIzRjYWY1MDtcbiAgLS1icy1mb3JtLXZhbGlkLWJvcmRlci1jb2xvcjogIzRjYWY1MDtcbiAgLS1icy1mb3JtLWludmFsaWQtY29sb3I6ICNmNDQzMzY7XG4gIC0tYnMtZm9ybS1pbnZhbGlkLWJvcmRlci1jb2xvcjogI2Y0NDMzNjtcbn1cblxuW2RhdGEtYnMtdGhlbWU9ZGFya10ge1xuICBjb2xvci1zY2hlbWU6IGRhcms7XG4gIC0tYnMtYm9keS1jb2xvcjogI2FkYjViZDtcbiAgLS1icy1ib2R5LWNvbG9yLXJnYjogMTczLCAxODEsIDE4OTtcbiAgLS1icy1ib2R5LWJnOiAjMjEyNTI5O1xuICAtLWJzLWJvZHktYmctcmdiOiAzMywgMzcsIDQxO1xuICAtLWJzLWVtcGhhc2lzLWNvbG9yOiAjZmZmZmZmO1xuICAtLWJzLWVtcGhhc2lzLWNvbG9yLXJnYjogMjU1LCAyNTUsIDI1NTtcbiAgLS1icy1zZWNvbmRhcnktY29sb3I6IHJnYmEoMTczLCAxODEsIDE4OSwgMC43NSk7XG4gIC0tYnMtc2Vjb25kYXJ5LWNvbG9yLXJnYjogMTczLCAxODEsIDE4OTtcbiAgLS1icy1zZWNvbmRhcnktYmc6ICMzNDNhNDA7XG4gIC0tYnMtc2Vjb25kYXJ5LWJnLXJnYjogNTIsIDU4LCA2NDtcbiAgLS1icy10ZXJ0aWFyeS1jb2xvcjogcmdiYSgxNzMsIDE4MSwgMTg5LCAwLjUpO1xuICAtLWJzLXRlcnRpYXJ5LWNvbG9yLXJnYjogMTczLCAxODEsIDE4OTtcbiAgLS1icy10ZXJ0aWFyeS1iZzogIzJiMzAzNTtcbiAgLS1icy10ZXJ0aWFyeS1iZy1yZ2I6IDQzLCA0OCwgNTM7XG4gIC0tYnMtcHJpbWFyeS10ZXh0LWVtcGhhc2lzOiAjNzg3ODlhO1xuICAtLWJzLXNlY29uZGFyeS10ZXh0LWVtcGhhc2lzOiAjYzhiMmQ2O1xuICAtLWJzLXN1Y2Nlc3MtdGV4dC1lbXBoYXNpczogIzk0Y2Y5NjtcbiAgLS1icy1pbmZvLXRleHQtZW1waGFzaXM6ICM3YWMwZjg7XG4gIC0tYnMtd2FybmluZy10ZXh0LWVtcGhhc2lzOiAjZmZjMTY2O1xuICAtLWJzLWRhbmdlci10ZXh0LWVtcGhhc2lzOiAjZjg4ZTg2O1xuICAtLWJzLWxpZ2h0LXRleHQtZW1waGFzaXM6ICNmOGY5ZmE7XG4gIC0tYnMtZGFyay10ZXh0LWVtcGhhc2lzOiAjZGVlMmU2O1xuICAtLWJzLXByaW1hcnktYmctc3VidGxlOiAjMDYwNjExO1xuICAtLWJzLXNlY29uZGFyeS1iZy1zdWJ0bGU6ICMyMTE5MjU7XG4gIC0tYnMtc3VjY2Vzcy1iZy1zdWJ0bGU6ICMwZjIzMTA7XG4gIC0tYnMtaW5mby1iZy1zdWJ0bGU6ICMwNzFlMzE7XG4gIC0tYnMtd2FybmluZy1iZy1zdWJ0bGU6ICMzMzFlMDA7XG4gIC0tYnMtZGFuZ2VyLWJnLXN1YnRsZTogIzMxMGQwYjtcbiAgLS1icy1saWdodC1iZy1zdWJ0bGU6ICMzNDNhNDA7XG4gIC0tYnMtZGFyay1iZy1zdWJ0bGU6ICMzNDM3M2E7XG4gIC0tYnMtcHJpbWFyeS1ib3JkZXItc3VidGxlOiAjMTIxMjM0O1xuICAtLWJzLXNlY29uZGFyeS1ib3JkZXItc3VidGxlOiAjNjI0YzcwO1xuICAtLWJzLXN1Y2Nlc3MtYm9yZGVyLXN1YnRsZTogIzJlNjkzMDtcbiAgLS1icy1pbmZvLWJvcmRlci1zdWJ0bGU6ICMxNDVhOTI7XG4gIC0tYnMtd2FybmluZy1ib3JkZXItc3VidGxlOiAjOTk1YjAwO1xuICAtLWJzLWRhbmdlci1ib3JkZXItc3VidGxlOiAjOTIyODIwO1xuICAtLWJzLWxpZ2h0LWJvcmRlci1zdWJ0bGU6ICM0OTUwNTc7XG4gIC0tYnMtZGFyay1ib3JkZXItc3VidGxlOiAjMzQzYTQwO1xuICAtLWJzLWhlYWRpbmctY29sb3I6IGluaGVyaXQ7XG4gIC0tYnMtbGluay1jb2xvcjogIzc4Nzg5YTtcbiAgLS1icy1saW5rLWhvdmVyLWNvbG9yOiAjOTM5M2FlO1xuICAtLWJzLWxpbmstY29sb3ItcmdiOiAxMjAsIDEyMCwgMTU0O1xuICAtLWJzLWxpbmstaG92ZXItY29sb3ItcmdiOiAxNDcsIDE0NywgMTc0O1xuICAtLWJzLWNvZGUtY29sb3I6ICNlNjg1YjU7XG4gIC0tYnMtYm9yZGVyLWNvbG9yOiAjNDk1MDU3O1xuICAtLWJzLWJvcmRlci1jb2xvci10cmFuc2x1Y2VudDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTtcbiAgLS1icy1mb3JtLXZhbGlkLWNvbG9yOiAjNzViNzk4O1xuICAtLWJzLWZvcm0tdmFsaWQtYm9yZGVyLWNvbG9yOiAjNzViNzk4O1xuICAtLWJzLWZvcm0taW52YWxpZC1jb2xvcjogI2VhODY4ZjtcbiAgLS1icy1mb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yOiAjZWE4NjhmO1xufVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IG5vLXByZWZlcmVuY2UpIHtcbiAgOnJvb3Qge1xuICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICB9XG59XG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1icy1ib2R5LWZvbnQtZmFtaWx5KTtcbiAgZm9udC1zaXplOiB2YXIoLS1icy1ib2R5LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1icy1ib2R5LWZvbnQtd2VpZ2h0KTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJzLWJvZHktbGluZS1oZWlnaHQpO1xuICBjb2xvcjogdmFyKC0tYnMtYm9keS1jb2xvcik7XG4gIHRleHQtYWxpZ246IHZhcigtLWJzLWJvZHktdGV4dC1hbGlnbik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWJvZHktYmcpO1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSg1MSwgNTEsIDUxLCAwKTtcbn1cblxuaHIge1xuICBtYXJnaW46IDFyZW0gMDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogdmFyKC0tYnMtYm9yZGVyLXdpZHRoKSBzb2xpZDtcbiAgb3BhY2l0eTogMC4yNTtcbn1cblxuaDYsXG4uaDYsXG5oNSxcbi5oNSxcbmg0LFxuLmg0LFxuaDMsXG4uaDMsXG5oMixcbi5oMixcbmgxLFxuLmgxIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBjb2xvcjogdmFyKC0tYnMtaGVhZGluZy1jb2xvcik7XG59XG5cbmgxLFxuLmgxIHtcbiAgZm9udC1zaXplOiBjYWxjKDEuMzc1cmVtICsgMS41dncpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIGgxLFxuICAuaDEge1xuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICB9XG59XG5cbmgyLFxuLmgyIHtcbiAgZm9udC1zaXplOiBjYWxjKDEuMzI1cmVtICsgMC45dncpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIGgyLFxuICAuaDIge1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgfVxufVxuXG5oMyxcbi5oMyB7XG4gIGZvbnQtc2l6ZTogY2FsYygxLjNyZW0gKyAwLjZ2dyk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgaDMsXG4gIC5oMyB7XG4gICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICB9XG59XG5cbmg0LFxuLmg0IHtcbiAgZm9udC1zaXplOiBjYWxjKDEuMjc1cmVtICsgMC4zdncpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIGg0LFxuICAuaDQge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG59XG5cbmg1LFxuLmg1IHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuXG5oNixcbi5oNiB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxucCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbmFiYnJbdGl0bGVdIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xuICBjdXJzb3I6IGhlbHA7XG4gIHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogbm9uZTtcbn1cblxuYWRkcmVzcyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbm9sLFxudWwge1xuICBwYWRkaW5nLWxlZnQ6IDJyZW07XG59XG5cbm9sLFxudWwsXG5kbCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbm9sIG9sLFxudWwgdWwsXG5vbCB1bCxcbnVsIG9sIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuZHQge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG5kZCB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuc21hbGwsXG4uc21hbGwge1xuICBmb250LXNpemU6IDAuODc1ZW07XG59XG5cbm1hcmssXG4ubWFyayB7XG4gIHBhZGRpbmc6IDAuMTg3NWVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1oaWdobGlnaHQtYmcpO1xufVxuXG5zdWIsXG5zdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogMC43NWVtO1xuICBsaW5lLWhlaWdodDogMDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG5hIHtcbiAgY29sb3I6IHJnYmEodmFyKC0tYnMtbGluay1jb2xvci1yZ2IpLCB2YXIoLS1icy1saW5rLW9wYWNpdHksIDEpKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbmE6aG92ZXIge1xuICAtLWJzLWxpbmstY29sb3ItcmdiOiB2YXIoLS1icy1saW5rLWhvdmVyLWNvbG9yLXJnYik7XG59XG5cbmE6bm90KFtocmVmXSk6bm90KFtjbGFzc10pLFxuYTpub3QoW2hyZWZdKTpub3QoW2NsYXNzXSk6aG92ZXIge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5wcmUsXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1icy1mb250LW1vbm9zcGFjZSk7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG5wcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbn1cblxucHJlIGNvZGUge1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG59XG5cbmNvZGUge1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIGNvbG9yOiB2YXIoLS1icy1jb2RlLWNvbG9yKTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xufVxuXG5hID4gY29kZSB7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG5rYmQge1xuICBwYWRkaW5nOiAwLjE4NzVyZW0gMC4zNzVyZW07XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgY29sb3I6IHZhcigtLWJzLWJvZHktYmcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1ib2R5LWNvbG9yKTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuXG5rYmQga2JkIHtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cbmltZyxcbnN2ZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbnRhYmxlIHtcbiAgY2FwdGlvbi1zaWRlOiBib3R0b207XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG59XG5cbmNhcHRpb24ge1xuICBwYWRkaW5nLXRvcDogMC41cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICBjb2xvcjogdmFyKC0tYnMtc2Vjb25kYXJ5LWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxudGgge1xuICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICB0ZXh0LWFsaWduOiAtd2Via2l0LW1hdGNoLXBhcmVudDtcbn1cblxudGhlYWQsXG50Ym9keSxcbnRmb290LFxudHIsXG50ZCxcbnRoIHtcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDA7XG59XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5idXR0b24ge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG5idXR0b246Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XG4gIG91dGxpbmU6IDA7XG59XG5cbmlucHV0LFxuYnV0dG9uLFxuc2VsZWN0LFxub3B0Z3JvdXAsXG50ZXh0YXJlYSB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG5bcm9sZT1idXR0b25dIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5zZWxlY3Qge1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbn1cblxuc2VsZWN0OmRpc2FibGVkIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuW2xpc3RdOm5vdChbdHlwZT1kYXRlXSk6bm90KFt0eXBlPWRhdGV0aW1lLWxvY2FsXSk6bm90KFt0eXBlPW1vbnRoXSk6bm90KFt0eXBlPXdlZWtdKTpub3QoW3R5cGU9dGltZV0pOjotd2Via2l0LWNhbGVuZGFyLXBpY2tlci1pbmRpY2F0b3Ige1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbmJ1dHRvbixcblt0eXBlPWJ1dHRvbl0sXG5bdHlwZT1yZXNldF0sXG5bdHlwZT1zdWJtaXRdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG59XG5cbmJ1dHRvbjpub3QoOmRpc2FibGVkKSxcblt0eXBlPWJ1dHRvbl06bm90KDpkaXNhYmxlZCksXG5bdHlwZT1yZXNldF06bm90KDpkaXNhYmxlZCksXG5bdHlwZT1zdWJtaXRdOm5vdCg6ZGlzYWJsZWQpIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG46Oi1tb3otZm9jdXMtaW5uZXIge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbnRleHRhcmVhIHtcbiAgcmVzaXplOiB2ZXJ0aWNhbDtcbn1cblxuZmllbGRzZXQge1xuICBtaW4td2lkdGg6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG5sZWdlbmQge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC1zaXplOiBjYWxjKDEuMjc1cmVtICsgMC4zdncpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICBsZWdlbmQge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG59XG5cbmxlZ2VuZCArICoge1xuICBjbGVhcjogbGVmdDtcbn1cblxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtZmllbGRzLXdyYXBwZXIsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC10ZXh0LFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtbWludXRlLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtaG91ci1maWVsZCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWRheS1maWVsZCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1vbnRoLWZpZWxkLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQteWVhci1maWVsZCB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuW3R5cGU9c2VhcmNoXSB7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbn1cblxuLyogcnRsOnJhdzpcblt0eXBlPVwidGVsXCJdLFxuW3R5cGU9XCJ1cmxcIl0sXG5bdHlwZT1cImVtYWlsXCJdLFxuW3R5cGU9XCJudW1iZXJcIl0ge1xuICBkaXJlY3Rpb246IGx0cjtcbn1cbiovXG5cbjo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuOjotd2Via2l0LWNvbG9yLXN3YXRjaC13cmFwcGVyIHtcbiAgcGFkZGluZzogMDtcbn1cblxuOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG5vdXRwdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbmlmcmFtZSB7XG4gIGJvcmRlcjogMDtcbn1cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5sZWFkIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBmb250LXdlaWdodDogMzAwO1xufVxuXG4uZGlzcGxheS0xIHtcbiAgZm9udC1zaXplOiBjYWxjKDEuNjI1cmVtICsgNC41dncpO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5kaXNwbGF5LTEge1xuICAgIGZvbnQtc2l6ZTogNXJlbTtcbiAgfVxufVxuXG4uZGlzcGxheS0yIHtcbiAgZm9udC1zaXplOiBjYWxjKDEuNTc1cmVtICsgMy45dncpO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5kaXNwbGF5LTIge1xuICAgIGZvbnQtc2l6ZTogNC41cmVtO1xuICB9XG59XG5cbi5kaXNwbGF5LTMge1xuICBmb250LXNpemU6IGNhbGMoMS41MjVyZW0gKyAzLjN2dyk7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmRpc3BsYXktMyB7XG4gICAgZm9udC1zaXplOiA0cmVtO1xuICB9XG59XG5cbi5kaXNwbGF5LTQge1xuICBmb250LXNpemU6IGNhbGMoMS40NzVyZW0gKyAyLjd2dyk7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmRpc3BsYXktNCB7XG4gICAgZm9udC1zaXplOiAzLjVyZW07XG4gIH1cbn1cblxuLmRpc3BsYXktNSB7XG4gIGZvbnQtc2l6ZTogY2FsYygxLjQyNXJlbSArIDIuMXZ3KTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuZGlzcGxheS01IHtcbiAgICBmb250LXNpemU6IDNyZW07XG4gIH1cbn1cblxuLmRpc3BsYXktNiB7XG4gIGZvbnQtc2l6ZTogY2FsYygxLjM3NXJlbSArIDEuNXZ3KTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuZGlzcGxheS02IHtcbiAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgfVxufVxuXG4ubGlzdC11bnN0eWxlZCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmxpc3QtaW5saW5lIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubGlzdC1pbmxpbmUtaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmxpc3QtaW5saW5lLWl0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xufVxuXG4uaW5pdGlhbGlzbSB7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmJsb2NrcXVvdGUsXG4ucHJvc2UgYmxvY2txdW90ZSB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cblxuLmJsb2NrcXVvdGUgPiA6bGFzdC1jaGlsZCxcbi5wcm9zZSBibG9ja3F1b3RlID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uYmxvY2txdW90ZS1mb290ZXIge1xuICBtYXJnaW4tdG9wOiAtMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xuICBjb2xvcjogIzZjNzU3ZDtcbn1cblxuLmJsb2NrcXVvdGUtZm9vdGVyOjpiZWZvcmUge1xuICBjb250ZW50OiBcIuKAlMKgXCI7XG59XG5cbi5pbWctZmx1aWQsXG4ucHJvc2UgaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5pbWctdGh1bWJuYWlsIHtcbiAgcGFkZGluZzogMC4yNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtYm9keS1iZyk7XG4gIGJvcmRlcjogdmFyKC0tYnMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1ib3JkZXItY29sb3IpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1icy1ib3JkZXItcmFkaXVzKTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5maWd1cmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5maWd1cmUtaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmZpZ3VyZS1jYXB0aW9uIHtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xuICBjb2xvcjogdmFyKC0tYnMtc2Vjb25kYXJ5LWNvbG9yKTtcbn1cblxuLmNvbnRhaW5lcixcbi5jb250YWluZXItZmx1aWQsXG4uY29udGFpbmVyLXh4bCxcbi5jb250YWluZXIteGwsXG4uY29udGFpbmVyLWxnLFxuLmNvbnRhaW5lci1tZCxcbi5jb250YWluZXItc20ge1xuICAtLWJzLWd1dHRlci14OiAxLjVyZW07XG4gIC0tYnMtZ3V0dGVyLXk6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjQzNzVyZW07XG4gIHBhZGRpbmctbGVmdDogMC40Mzc1cmVtO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmNvbnRhaW5lcixcbiAgLmNvbnRhaW5lci1mbHVpZCxcbiAgLmNvbnRhaW5lci14eGwsXG4gIC5jb250YWluZXIteGwsXG4gIC5jb250YWluZXItbGcsXG4gIC5jb250YWluZXItbWQsXG4gIC5jb250YWluZXItc20ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbnRhaW5lcixcbiAgLmNvbnRhaW5lci1mbHVpZCxcbiAgLmNvbnRhaW5lci14eGwsXG4gIC5jb250YWluZXIteGwsXG4gIC5jb250YWluZXItbGcsXG4gIC5jb250YWluZXItbWQsXG4gIC5jb250YWluZXItc20ge1xuICAgIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tYnMtZ3V0dGVyLXgpICogMC41KTtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tYnMtZ3V0dGVyLXgpICogMC41KTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmNvbnRhaW5lci1zbSxcbiAgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA1NDBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbnRhaW5lci1tZCxcbiAgLmNvbnRhaW5lci1zbSxcbiAgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA3MjBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmNvbnRhaW5lci1sZyxcbiAgLmNvbnRhaW5lci1tZCxcbiAgLmNvbnRhaW5lci1zbSxcbiAgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA5NjBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5jb250YWluZXIteGwsXG4gIC5jb250YWluZXItbGcsXG4gIC5jb250YWluZXItbWQsXG4gIC5jb250YWluZXItc20sXG4gIC5jb250YWluZXIge1xuICAgIG1heC13aWR0aDogMTE0MHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcbiAgLmNvbnRhaW5lci14eGwsXG4gIC5jb250YWluZXIteGwsXG4gIC5jb250YWluZXItbGcsXG4gIC5jb250YWluZXItbWQsXG4gIC5jb250YWluZXItc20sXG4gIC5jb250YWluZXIge1xuICAgIG1heC13aWR0aDogMTQwMHB4O1xuICB9XG59XG5cbjpyb290IHtcbiAgLS1icy1icmVha3BvaW50LXhzOiAwO1xuICAtLWJzLWJyZWFrcG9pbnQtc206IDU3NnB4O1xuICAtLWJzLWJyZWFrcG9pbnQtbWQ6IDc2OHB4O1xuICAtLWJzLWJyZWFrcG9pbnQtbGc6IDk5MnB4O1xuICAtLWJzLWJyZWFrcG9pbnQteGw6IDEyMDBweDtcbiAgLS1icy1icmVha3BvaW50LXh4bDogMTQwMHB4O1xufVxuXG4ucm93IHtcbiAgLS1icy1ndXR0ZXIteDogMS41cmVtO1xuICAtLWJzLWd1dHRlci15OiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi10b3A6IGNhbGMoLTEgKiB2YXIoLS1icy1ndXR0ZXIteSkpO1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoLTAuNSAqIHZhcigtLWJzLWd1dHRlci14KSk7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC0wLjUgKiB2YXIoLS1icy1ndXR0ZXIteCkpO1xufVxuXG4ucm93ID4gKiB7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLWJzLWd1dHRlci14KSAqIDAuNSk7XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1icy1ndXR0ZXIteCkgKiAwLjUpO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1icy1ndXR0ZXIteSk7XG59XG5cbi5jb2wge1xuICBmbGV4OiAxIDAgMCU7XG59XG5cbi5yb3ctY29scy1hdXRvID4gKiB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogYXV0bztcbn1cblxuLnJvdy1jb2xzLTEgPiAqIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ucm93LWNvbHMtMiA+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+IC5idG4taWNvbi5idG4ge1xuICB3aWR0aDogNDhweDtcbiAgaGVpZ2h0OiA0OHB4O1xufVxuXG4vKipcbiAqIFF1aWxsIEVkaXRvciBTdHlsZXNcbiAqIENvbnNpc3RlbnQgc3R5bGluZyBmb3IgUXVpbGwgV1lTSVdZRyBlZGl0b3JzIGFjcm9zcyB0aGUgYXBwbGljYXRpb25cbiAqL1xuXG4ucXVpbGwtd3JhcHBlciB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG4gIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ucXVpbGwtd3JhcHBlciAucXVpbGwtZWRpdG9yLWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgbWluLWhlaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ucXVpbGwtd3JhcHBlciAucWwtdG9vbGJhciB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZWUyZTY7XG4gIGJhY2tncm91bmQ6ICNmOGY5ZmE7XG59XG5cbi5xdWlsbC13cmFwcGVyIC5xbC10b29sYmFyLnFsLXNub3cge1xuICBwYWRkaW5nOiA4cHg7XG59XG5cbi5xdWlsbC13cmFwcGVyIC5xbC1jb250YWluZXIge1xuICBib3JkZXI6IG5vbmU7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xufVxuXG4ucXVpbGwtd3JhcHBlciAucWwtY29udGFpbmVyLnFsLXNub3cge1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi5xdWlsbC13cmFwcGVyIC5xbC1lZGl0b3Ige1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIG1pbi1oZWlnaHQ6IDE1MHB4O1xuICBtYXgtaGVpZ2h0OiA0MDBweDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgcGFkZGluZzogMTJweCAxNXB4O1xufVxuXG4ucXVpbGwtd3JhcHBlciAucWwtZWRpdG9yIHAsXG4ucXVpbGwtd3JhcHBlciAucWwtZWRpdG9yIG9sLFxuLnF1aWxsLXdyYXBwZXIgLnFsLWVkaXRvciB1bCxcbi5xdWlsbC13cmFwcGVyIC5xbC1lZGl0b3IgYmxvY2txdW90ZSB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbn1cblxuLnF1aWxsLXdyYXBwZXIgLnFsLWVkaXRvciBoMSxcbi5xdWlsbC13cmFwcGVyIC5xbC1lZGl0b3IgLmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG59XG5cbi5xdWlsbC13cmFwcGVyIC5xbC1lZGl0b3IgaDIsXG4ucXVpbGwtd3JhcHBlciAucWwtZWRpdG9yIC5oMiB7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG59XG5cbi5xdWlsbC13cmFwcGVyIC5xbC1lZGl0b3IgaDMsXG4ucXVpbGwtd3JhcHBlciAucWwtZWRpdG9yIC5oMyB7XG4gIGZvbnQtc2l6ZTogMS4yNWVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xufVxuXG4ucXVpbGwtd3JhcHBlciAucWwtZWRpdG9yLnFsLWJsYW5rOjpiZWZvcmUge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxlZnQ6IDE1cHg7XG4gIHJpZ2h0OiAxNXB4O1xufVxuXG4ucXVpbGwtd3JhcHBlci5xdWlsbC1zaW1wbGUgLnFsLWVkaXRvciB7XG4gIG1pbi1oZWlnaHQ6IDEwMHB4O1xuICBtYXgtaGVpZ2h0OiAyNTBweDtcbn1cblxuLnF1aWxsLXdyYXBwZXIucXVpbGwtZnVsbCAucWwtZWRpdG9yIHtcbiAgbWluLWhlaWdodDogMjAwcHg7XG4gIG1heC1oZWlnaHQ6IDUwMHB4O1xufVxuXG4ucXVpbGwtd3JhcHBlci5xdWlsbC1pbmxpbmUge1xuICBib3JkZXI6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5xdWlsbC13cmFwcGVyLnF1aWxsLWlubGluZSAucWwtdG9vbGJhciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtIDAuMzc1cmVtIDAgMDtcbn1cblxuLnF1aWxsLXdyYXBwZXIucXVpbGwtaW5saW5lIC5xbC1jb250YWluZXIge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICBib3JkZXItdG9wOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwIDAgMC4zNzVyZW0gMC4zNzVyZW07XG59XG5cbnRleHRhcmVhW2RhdGEtd3lzaXd5Zz1xdWlsbF0ucXVpbGwtaW5pdGlhbGl6ZWQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIFN0YXIgUmF0aW5nIENvbXBvbmVudCBTdHlsZXNcbiAqL1xuXG4uc3Rhci1yYXRpbmctd2lkZ2V0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLnN0YXItcmF0aW5nLXdpZGdldC5yZWFkb25seSAuc3Rhci1yYXRpbmctZGlzcGxheSBpIHtcbiAgY29sb3I6ICNmZjk4MDA7XG4gIG1hcmdpbi1yaWdodDogMnB4O1xufVxuXG4uc3Rhci1yYXRpbmctd2lkZ2V0LmludGVyYWN0aXZlIC5zdGFyLXJhdGluZy1pbnB1dCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDJweDtcbn1cblxuLnN0YXItcmF0aW5nLXdpZGdldC5pbnRlcmFjdGl2ZSAuc3Rhci1yYXRpbmctaW5wdXQgLnN0YXItd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5zdGFyLXJhdGluZy13aWRnZXQuaW50ZXJhY3RpdmUgLnN0YXItcmF0aW5nLWlucHV0IC5zdGFyLXdyYXBwZXIgLnN0YXItcmFkaW8ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG9wYWNpdHk6IDA7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG59XG5cbi5zdGFyLXJhdGluZy13aWRnZXQuaW50ZXJhY3RpdmUgLnN0YXItcmF0aW5nLWlucHV0IC5zdGFyLXdyYXBwZXIgaSB7XG4gIGNvbG9yOiAjZGRkO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGVhc2U7XG59XG5cbi5zdGFyLXJhdGluZy13aWRnZXQuaW50ZXJhY3RpdmUgLnN0YXItcmF0aW5nLWlucHV0IC5zdGFyLXdyYXBwZXIgaS5mYXMuZmEtc3RhciB7XG4gIGNvbG9yOiAjZmY5ODAwO1xufVxuXG4uc3Rhci1yYXRpbmctd2lkZ2V0LmludGVyYWN0aXZlIC5zdGFyLXJhdGluZy1pbnB1dCAuc3Rhci13cmFwcGVyOmhvdmVyIGkge1xuICBjb2xvcjogI2ZmOTgwMDtcbn1cblxuLnN0YXItcmF0aW5nLXdpZGdldC5pbnRlcmFjdGl2ZSAuc3Rhci1yYXRpbmctaW5wdXQgLnN0YXItY2xlYXItYnRuIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tbGVmdDogOHB4O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uc3Rhci1yYXRpbmctd2lkZ2V0LmludGVyYWN0aXZlIC5zdGFyLXJhdGluZy1pbnB1dCAuc3Rhci1jbGVhci1idG46aG92ZXIge1xuICBjb2xvcjogI2RjMzU0NTtcbn1cblxuLnN0YXItcmF0aW5nLXdpZGdldC5zdGFyLXJhdGluZy1zbSB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLnN0YXItcmF0aW5nLXdpZGdldC5zdGFyLXJhdGluZy1zbSAuc3Rhci1yYXRpbmctaW5wdXQge1xuICBnYXA6IDFweDtcbn1cblxuLnN0YXItcmF0aW5nLXdpZGdldC5zdGFyLXJhdGluZy1tZCB7XG4gIGZvbnQtc2l6ZTogMzBweDtcbn1cblxuLnN0YXItcmF0aW5nLXdpZGdldC5zdGFyLXJhdGluZy1tZCAuc3Rhci1yYXRpbmctaW5wdXQge1xuICBnYXA6IDNweDtcbn1cblxuLnN0YXItcmF0aW5nLXdpZGdldC5zdGFyLXJhdGluZy1sZyB7XG4gIGZvbnQtc2l6ZTogMjhweDtcbn1cblxuLnN0YXItcmF0aW5nLXdpZGdldC5zdGFyLXJhdGluZy1sZyAuc3Rhci1yYXRpbmctaW5wdXQge1xuICBnYXA6IDNweDtcbn1cblxuLmJhY2tlbmQtZm9ybSAuc3Rhci1yYXRpbmctd2lkZ2V0LmludGVyYWN0aXZlIC5zdGFyLXJhdGluZy1pbnB1dCB7XG4gIGJhY2tncm91bmQ6ICNmOGY5ZmE7XG4gIHBhZGRpbmc6IDhweCAxMnB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG59XG5cbi5iYWNrZW5kLWZvcm0gLnN0YXItcmF0aW5nLXdpZGdldC5pbnRlcmFjdGl2ZSAuc3Rhci1yYXRpbmctaW5wdXQ6Zm9jdXMtd2l0aGluIHtcbiAgYm9yZGVyLWNvbG9yOiAjODBiZGZmO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgwLCAxMjMsIDI1NSwgMC4yNSk7XG59XG5cbi5yZXZpZXctZm9ybSAuc3Rhci1yYXRpbmctd2lkZ2V0LmludGVyYWN0aXZlIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLnJldmlldy1mb3JtIC5zdGFyLXJhdGluZy13aWRnZXQuaW50ZXJhY3RpdmUgLnN0YXItcmF0aW5nLWlucHV0IGkge1xuICBmb250LXNpemU6IDI0cHg7XG59XG5cbi5yZXZpZXctaXRlbSAuc3Rhci1yYXRpbmctd2lkZ2V0LnJlYWRvbmx5IC5zdGFyLXJhdGluZy1kaXNwbGF5IGkge1xuICBmb250LXNpemU6IDE0cHg7XG59XG5cbi5yZXZpZXctZWRpdG9yLW1vZGFsIC5zdGFyLXJhdGluZy13aWRnZXQuaW50ZXJhY3RpdmUgLnN0YXItcmF0aW5nLWlucHV0IGkge1xuICBmb250LXNpemU6IDE4cHg7XG59XG5cbi8qKlxuICogU2VsZWN0MiBBY2Nlc3NpYmlsaXR5IEltcHJvdmVtZW50c1xuICogXG4gKiBGaXhlcyBrZXlib2FyZCBuYXZpZ2F0aW9uIHZpc2liaWxpdHkgYW5kIGltcHJvdmVzIG92ZXJhbGwgYWNjZXNzaWJpbGl0eVxuICogZm9yIFNlbGVjdDIgZHJvcGRvd25zIGFjcm9zcyB0aGUgYXBwbGljYXRpb24uXG4gKi9cblxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWRbYXJpYS1zZWxlY3RlZF0sXG4uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0YWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWRbYXJpYS1zZWxlY3RlZF06aG92ZXIsXG4uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0YWJsZTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYjVlZDcgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLnNlbGVjdDItY29udGFpbmVyLS1mb2N1cyAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICBib3JkZXItY29sb3I6ICM4NmI3ZmUgIWltcG9ydGFudDtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEzLCAxMTAsIDI1MywgMC4yNSkgIWltcG9ydGFudDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24uc2VsZWN0Mi1rZXlib2FyZC1mb2N1c2VkIHtcbiAgYm9yZGVyLWNvbG9yOiAjODZiN2ZlICFpbXBvcnRhbnQ7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgxMywgMTEwLCAyNTMsIDAuMjUpICFpbXBvcnRhbnQ7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjODZiN2ZlICFpbXBvcnRhbnQ7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KSwgMCAwIDAgMC4ycmVtIHJnYmEoMTMsIDExMCwgMjUzLCAwLjI1KSAhaW1wb3J0YW50O1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcC01IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWRbYXJpYS1zZWxlY3RlZF0sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcC01IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWQuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLXNlbGVjdGFibGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwLTUgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uW2FyaWEtc2VsZWN0ZWQ9ZmFsc2VdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgY29sb3I6ICMyMTI1Mjk7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwLTUgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uW2FyaWEtc2VsZWN0ZWQ9ZmFsc2VdOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgY29sb3I6ICMyMTI1Mjk7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwLTUgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uW2FyaWEtc2VsZWN0ZWQ9dHJ1ZV0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xuICBjb2xvcjogIzIxMjUyOTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWRbYXJpYS1zZWxlY3RlZF0sXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0YWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDdiZmYgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChwcmVmZXJzLWNvbnRyYXN0OiBoaWdoKSB7XG4gIC5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkW2FyaWEtc2VsZWN0ZWRdLFxuICAuc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0YWJsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDA4MCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAycHggc29saWQgI2ZmZmZmZiAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcbiAgLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWRbYXJpYS1zZWxlY3RlZF0sXG4gIC5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RhYmxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKipcbiAqIEZyb250ZW5kIFJlc2V0IFN0eWxlc1xuICogXG4gKiBOb3JtYWxpemUgYnJvd3NlciBkZWZhdWx0cyBmb3IgY29uc2lzdGVudCByZW5kZXJpbmdcbiAqL1xuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5odG1sLFxuYm9keSxcbmgxLFxuLmgxLFxuaDIsXG4uaDIsXG5oMyxcbi5oMyxcbmg0LFxuLmg0LFxuaDUsXG4uaDUsXG5oNixcbi5oNixcbnAsXG5vbCxcbnVsLFxuZmlndXJlLFxuYmxvY2txdW90ZSxcbmRsLFxuZGQge1xuICBtYXJnaW46IDA7XG59XG5cbm9sLFxudWwge1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG5ib2R5IHtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVTcGVlZDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBcIlNvdXJjZSBTYW5zIFByb1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDFyZW07XG4gIGNvbG9yOiAjMTAxMDEwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xufVxuXG5pbWcsXG5waWN0dXJlIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5pbnB1dCxcbmJ1dHRvbixcbnRleHRhcmVhLFxuc2VsZWN0IHtcbiAgZm9udDogaW5oZXJpdDtcbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgaHRtbDpmb2N1cy13aXRoaW4ge1xuICAgIHNjcm9sbC1iZWhhdmlvcjogYXV0bztcbiAgfVxuXG4gICosXG4gICo6OmJlZm9yZSxcbiAgKjo6YWZ0ZXIge1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4wMW1zICFpbXBvcnRhbnQ7XG4gICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMSAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMDFtcyAhaW1wb3J0YW50O1xuICAgIHNjcm9sbC1iZWhhdmlvcjogYXV0byAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8qKlxuICogRnJvbnRlbmQgVHlwb2dyYXBoeVxuICogXG4gKiBUeXBvZ3JhcGh5IHN0eWxlcyBmb3IgdGhlIGZyb250ZW5kXG4gKi9cblxuaDEsXG4uaDEsXG5oMixcbi5oMixcbmgzLFxuLmgzLFxuaDQsXG4uaDQsXG5oNSxcbi5oNSB7XG4gIGZvbnQtZmFtaWx5OiBcIlBsYXlmYWlyIERpc3BsYXlcIiwgc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGNvbG9yOiAjMTAxMDEwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbmg2LFxuLmg2IHtcbiAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBcIlNvdXJjZSBTYW5zIFByb1wiLCBzYW5zLXNlcmlmO1xufVxuXG5oMSxcbi5oMSB7XG4gIGZvbnQtc2l6ZTogMi4yNXJlbTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIGgxLFxuICAuaDEge1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgfVxufVxuXG5oMixcbi5oMiB7XG4gIGZvbnQtc2l6ZTogMS43NXJlbTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIGgyLFxuICAuaDIge1xuICAgIGZvbnQtc2l6ZTogMi4yNXJlbTtcbiAgfVxufVxuXG5oMyxcbi5oMyB7XG4gIGZvbnQtc2l6ZTogMS4zNzVyZW07XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICBoMyxcbiAgLmgzIHtcbiAgICBmb250LXNpemU6IDEuNzVyZW07XG4gIH1cbn1cblxuaDQsXG4uaDQge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgaDQsXG4gIC5oNCB7XG4gICAgZm9udC1zaXplOiAxLjM3NXJlbTtcbiAgfVxufVxuXG5oNSxcbi5oNSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIGg1LFxuICAuaDUge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIH1cbn1cblxuaDYsXG4uaDYge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgaDYsXG4gIC5oNiB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG59XG5cbnAge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5wOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG51bCxcbm9sIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAycmVtO1xufVxuXG51bCBsaSxcbm9sIGxpIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG51bCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbn1cblxub2wge1xuICBsaXN0LXN0eWxlLXR5cGU6IGRlY2ltYWw7XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDJyZW0gMDtcbiAgcGFkZGluZzogMXJlbSAycmVtO1xuICBib3JkZXItbGVmdDogNHB4IHNvbGlkICMxZTFlNTY7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICM3ODc5N2M7XG59XG5cbmNvZGUge1xuICBwYWRkaW5nOiAycHggNHB4O1xuICBmb250LXNpemU6IDkwJTtcbiAgY29sb3I6ICNmNDQzMzY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbn1cblxucHJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDFyZW07XG4gIG1hcmdpbjogMXJlbSAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBjb2xvcjogIzVmNjA2MjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG5wcmUgY29kZSB7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4udGV4dC1wcmltYXJ5IHtcbiAgY29sb3I6ICMxZTFlNTYgIWltcG9ydGFudDtcbn1cblxuLnRleHQtc2Vjb25kYXJ5IHtcbiAgY29sb3I6ICNhMzdlYmEgIWltcG9ydGFudDtcbn1cblxuLnRleHQtc3VjY2VzcyB7XG4gIGNvbG9yOiAjNGNhZjUwICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LWRhbmdlciB7XG4gIGNvbG9yOiAjZjQ0MzM2ICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXdhcm5pbmcge1xuICBjb2xvcjogI2ZmOTgwMCAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1pbmZvIHtcbiAgY29sb3I6ICMyMTk2ZjMgIWltcG9ydGFudDtcbn1cblxuLnRleHQtbXV0ZWQge1xuICBjb2xvcjogIzNiM2MzYyAhaW1wb3J0YW50O1xufVxuXG4uZm9udC13ZWlnaHQtbm9ybWFsIHtcbiAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xufVxuXG4uZm9udC13ZWlnaHQtbWVkaXVtIHtcbiAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xufVxuXG4uZm9udC13ZWlnaHQtYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbn1cblxuLnRleHQtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbn1cblxuLnRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbn1cblxuLnRleHQtbG93ZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC11cHBlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LWNhcGl0YWxpemUge1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZSAhaW1wb3J0YW50O1xufVxuXG4vKipcbiAqIEZyb250ZW5kIFV0aWxpdHkgQ2xhc3Nlc1xuICogXG4gKiBDb21tb24gdXRpbGl0eSBjbGFzc2VzIGFuZCBvdmVycmlkZXMgZm9yIHRoZSBmcm9udGVuZFxuICovXG5cbi5taW4tdmgtMTAwIHtcbiAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDIwMHB4KSAhaW1wb3J0YW50O1xuICBtYXJnaW4tdG9wOiAxMDBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAubWluLXZoLTEwMCB7XG4gICAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDEwMHB4KSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgLm1pbi12aC0xMDAge1xuICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSA1MHB4KSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgfVxufVxuXG4uZnVsbC12aC0xMDAge1xuICBtaW4taGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50O1xuICBtYXJnaW46IDA7XG59XG5cbi5wYWdlLWNlbnRlcmVkIHtcbiAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDIwMHB4KTtcbiAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAucGFnZS1jZW50ZXJlZCB7XG4gICAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDEwMHB4KTtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAucGFnZS1jZW50ZXJlZCB7XG4gICAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDUwcHgpO1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gIH1cbn1cblxuLnNwYWNlci10b3Age1xuICBwYWRkaW5nLXRvcDogMTAwcHg7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuc3BhY2VyLXRvcCB7XG4gICAgcGFkZGluZy10b3A6IDUwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gIC5zcGFjZXItdG9wIHtcbiAgICBwYWRkaW5nLXRvcDogMjVweDtcbiAgfVxufVxuXG4uc3BhY2VyLWJvdHRvbSB7XG4gIHBhZGRpbmctYm90dG9tOiAxMDBweDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5zcGFjZXItYm90dG9tIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgLnNwYWNlci1ib3R0b20ge1xuICAgIHBhZGRpbmctYm90dG9tOiAyNXB4O1xuICB9XG59XG5cbi50ZXh0LWVsZWdhbnQge1xuICBmb250LWZhbWlseTogXCJQbGF5ZmFpciBEaXNwbGF5XCIsIHNlcmlmO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xufVxuXG4ub3BhY2l0eS0xMCB7XG4gIG9wYWNpdHk6IDAuMSAhaW1wb3J0YW50O1xufVxuXG4ub3BhY2l0eS0yNSB7XG4gIG9wYWNpdHk6IDAuMjUgIWltcG9ydGFudDtcbn1cblxuLm9wYWNpdHktNTAge1xuICBvcGFjaXR5OiAwLjUgIWltcG9ydGFudDtcbn1cblxuLm9wYWNpdHktNzUge1xuICBvcGFjaXR5OiAwLjc1ICFpbXBvcnRhbnQ7XG59XG5cbi5vcGFjaXR5LTkwIHtcbiAgb3BhY2l0eTogMC45ICFpbXBvcnRhbnQ7XG59XG5cbi56LTAge1xuICB6LWluZGV4OiAwICFpbXBvcnRhbnQ7XG59XG5cbi56LTEge1xuICB6LWluZGV4OiAxICFpbXBvcnRhbnQ7XG59XG5cbi56LTIge1xuICB6LWluZGV4OiAyICFpbXBvcnRhbnQ7XG59XG5cbi56LTMge1xuICB6LWluZGV4OiAzICFpbXBvcnRhbnQ7XG59XG5cbi56LTEwIHtcbiAgei1pbmRleDogMTAgIWltcG9ydGFudDtcbn1cblxuLnotMjAge1xuICB6LWluZGV4OiAyMCAhaW1wb3J0YW50O1xufVxuXG4udHJhbnNpdGlvbi1hbGwge1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xufVxuXG4udHJhbnNpdGlvbi10cmFuc2Zvcm0ge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xufVxuXG4udHJhbnNpdGlvbi1vcGFjaXR5IHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2U7XG59XG5cbi5ob3Zlci1saWZ0OmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpO1xuICBib3gtc2hhZG93OiAwIDEwcHggMzBweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG5cbi5ob3Zlci1zY2FsZTpob3ZlciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG59XG5cbi5jdXJzb3ItcG9pbnRlciB7XG4gIGN1cnNvcjogcG9pbnRlciAhaW1wb3J0YW50O1xufVxuXG4uY3Vyc29yLW5vdC1hbGxvd2VkIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZCAhaW1wb3J0YW50O1xufVxuXG4ub3ZlcmZsb3cteC1hdXRvIHtcbiAgb3ZlcmZsb3cteDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ub3ZlcmZsb3cteS1hdXRvIHtcbiAgb3ZlcmZsb3cteTogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ub3ZlcmZsb3cteC1oaWRkZW4ge1xuICBvdmVyZmxvdy14OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cblxuLm92ZXJmbG93LXktaGlkZGVuIHtcbiAgb3ZlcmZsb3cteTogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG5cbm1haW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjZmN2Y5O1xuICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gMjAwcHgpO1xufVxuXG5beC1jbG9ha10ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5idG4tbGluayB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uYnRuLWxpbms6aG92ZXIsXG4uYnRuLWxpbms6Zm9jdXMge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmZvcm0tY29udHJvbCxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uZm9ybS1zZWxlY3QsXG4uZm9ybS1jb250cm9sOmZvY3VzLFxuLmZvcm0tc2VsZWN0OmZvY3VzIHtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuXG4uZm9ybS1jb250cm9sLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbixcbi5mb3JtLXNlbGVjdCB7XG4gIGJvcmRlci1jb2xvcjogI2RhZDlkOSAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwLjQ3NXJlbSAwLjg1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmlucHV0LWdyb3VwID4gLnNlbGVjdDItc2VsZWN0aW9uLFxuLmlucHV0LWdyb3VwID4gLmZvcm0tc2VsZWN0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuYnRuIHtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuXG4uaW5wdXQtZ3JvdXAgPiA6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cblxuLmlucHV0LWdyb3VwID4gOmxhc3QtY2hpbGQge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMCAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuXG4uaW5wdXQtZ3JvdXAgPiA6bm90KDpmaXJzdC1jaGlsZCk6bm90KC5kcm9wZG93bi1tZW51KSB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuXG4uaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLXRleHQge1xuICBib3JkZXItY29sb3I6ICNkYWQ5ZDk7XG4gIHBhZGRpbmc6IDAuNDc1cmVtIDAuODVyZW07XG59XG5cbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6dmFsaWQsXG4ud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOnZhbGlkLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLXNlbGVjdGlvbjp2YWxpZCxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6aW52YWxpZCxcbi53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246aW52YWxpZCxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1zZWxlY3Rpb246aW52YWxpZCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDp2YWxpZCxcbi53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246dmFsaWQsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItc2VsZWN0aW9uOnZhbGlkIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1zdWNjZXNzKTtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDppbnZhbGlkLFxuLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjppbnZhbGlkLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLXNlbGVjdGlvbjppbnZhbGlkIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1kYW5nZXIpO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOmludmFsaWQgKyAuc2VsZWN0MiAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4ud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOmludmFsaWQgKyAuc2VsZWN0MiAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItc2VsZWN0aW9uOmludmFsaWQgKyAuc2VsZWN0MiAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICBib3JkZXItY29sb3I6IHZhcigtLWJzLWRhbmdlcik7XG59XG5cbi5hbGVydCB1bCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbn1cblxuLmFsZXJ0IHVsOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uYWxlcnQgcDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnJvdW5kZWQtaW1nIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiA2MHB4O1xuICBoZWlnaHQ6IDYwcHg7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4uZXJyb3ItaGVscC1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4udG9hc3QtdG9wLXJpZ2h0IHtcbiAgdG9wOiA4MHB4O1xufVxuXG4jdG9hc3QtY29udGFpbmVyID4gZGl2IHtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbiAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xufVxuXG4jdG9hc3QtY29udGFpbmVyID4gZGl2LnRvYXN0LXN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjhhNzQ1ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG5cbiN0b2FzdC1jb250YWluZXIgPiBkaXYudG9hc3QtZXJyb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGMzNTQ1ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG5cbiN0b2FzdC1jb250YWluZXIgPiBkaXYudG9hc3QtaW5mbyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxN2EyYjggIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuI3RvYXN0LWNvbnRhaW5lciA+IGRpdi50b2FzdC13YXJuaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzEwNyAhaW1wb3J0YW50O1xuICBjb2xvcjogIzIxMjUyOSAhaW1wb3J0YW50O1xufVxuXG4jdG9hc3QtY29udGFpbmVyID4gZGl2OmhvdmVyIHtcbiAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xufVxuXG4udG9hc3QtY2xvc2UtYnV0dG9uIHtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnRvYXN0LWNsb3NlLWJ1dHRvbjpob3Zlcixcbi50b2FzdC1jbG9zZS1idXR0b246Zm9jdXMge1xuICBjb2xvcjogI2NjY2NjYyAhaW1wb3J0YW50O1xuICBvcGFjaXR5OiAwLjggIWltcG9ydGFudDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTtcbn1cblxuLmhyLWhlYWRlci1zcGFjZXIge1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMjEyNTI5O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgxNCwgMTQsIDE0LCAwLjE4KTtcbiAgbWFyZ2luOiAwO1xufVxuXG4uaHItZm9vdGVyLXNwYWNlciB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMTQsIDE0LCAxNCwgMC4xOCk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMjEyNTI5O1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi10b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uY2FyYXR4LWhlYWRlciAudG9wLWhlYWRlciAudG9wLWJ1dHRvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBnYXA6IDFyZW07XG59XG5cbi5jYXJhdHgtaGVhZGVyIC50b3AtaGVhZGVyIC50b3AtYnV0dG9ucyA+ICoge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uY2FyYXR4LWhlYWRlciAudG9wLWhlYWRlciAudG9wLWJ1dHRvbnMgLmJ0bi1saW5rIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5jYXJhdHgtaGVhZGVyIC50b3AtaGVhZGVyIC50b3AtYnV0dG9ucyAuZHJvcGRvd24gYnV0dG9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5jYXJhdHgtaGVhZGVyIC50b3AtaGVhZGVyIC5sb2dvLWNvbnRhaW5lciBpbWcge1xuICBtYXgtaGVpZ2h0OiA2MHB4O1xuICB3aWR0aDogYXV0bztcbn1cblxuLmNhcmF0eC1oZWFkZXIgLm5hdmJhciAubmF2LWxpbmsge1xuICBjb2xvcjogIzMxMzEzMTtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4zcyBlYXNlO1xufVxuXG4uY2FyYXR4LWhlYWRlciAubmF2YmFyIC5uYXYtbGluazpob3Zlcixcbi5jYXJhdHgtaGVhZGVyIC5uYXZiYXIgLm5hdi1saW5rOmZvY3VzIHtcbiAgY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xufVxuXG4uY2FyYXR4LWhlYWRlciAubmF2YmFyIC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uY2FyYXR4LWhlYWRlciAubWVnYS1tZW51IHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDhweCA4cHg7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDIwcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBib3JkZXI6IG5vbmU7XG4gIG1pbi1oZWlnaHQ6IDIwMHB4O1xufVxuXG4uY2FyYXR4LWhlYWRlciAubWVnYS1tZW51IC5tZWdhLW1lbnUtc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhciB7XG4gIHdpZHRoOiA2cHg7XG59XG5cbi5jYXJhdHgtaGVhZGVyIC5tZWdhLW1lbnUgLm1lZ2EtbWVudS1zY3JvbGw6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgYmFja2dyb3VuZDogI2YxZjFmMTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xufVxuXG4uY2FyYXR4LWhlYWRlciAubWVnYS1tZW51IC5tZWdhLW1lbnUtc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gIGJhY2tncm91bmQ6ICM4ODg7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbn1cblxuLmNhcmF0eC1oZWFkZXIgLm1lZ2EtbWVudSAubWVnYS1tZW51LXNjcm9sbDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjNTU1O1xufVxuXG4uY2FyYXR4LWhlYWRlciAubWVnYS1tZW51IC5tZWdhLW1lbnUtY29sdW1uIHtcbiAgbWluLWhlaWdodDogMTgwcHg7XG59XG5cbi5jYXJhdHgtaGVhZGVyIC5tZWdhLW1lbnUgLm1lZ2EtbWVudS1jb2x1bW4gLm1lZ2EtbWVudS1jb250ZW50IHtcbiAgZmxleC1ncm93OiAxO1xufVxuXG4uY2FyYXR4LWhlYWRlciAubWVnYS1tZW51IC5tZWdhLW1lbnUtY29sdW1uIC5tZWdhLW1lbnUtYWN0aW9uIHtcbiAgbWFyZ2luLXRvcDogYXV0bztcbiAgcGFkZGluZy10b3A6IDFyZW07XG59XG5cbi5jYXJhdHgtaGVhZGVyIC5kcm9wZG93bi1tZW51IHtcbiAgbWluLWhlaWdodDogMTUwcHg7XG59XG5cbi5jYXJhdHgtaGVhZGVyIC5kcm9wZG93bi1tZW51IC5tZWdhLW1lbnUtY29sdW1uIHtcbiAgbWluLWhlaWdodDogMTMwcHg7XG59XG5cbi5jYXJhdHgtaGVhZGVyIC5tZW51LWJ0bjpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5jYXJhdHgtaGVhZGVyICNtb2JpbGVNZW51IC5hY2NvcmRpb24tYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuLmNhcmF0eC1oZWFkZXIgI21vYmlsZU1lbnUgLmFjY29yZGlvbi1idXR0b246bm90KC5jb2xsYXBzZWQpIHtcbiAgY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4uY2FyYXR4LWhlYWRlciAjbW9iaWxlTWVudSAuYWNjb3JkaW9uLWJ1dHRvbjo6YWZ0ZXIge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuLmNhcmF0eC1oZWFkZXIgI21vYmlsZU1lbnUgLm5hdi1saW5rIHtcbiAgcGFkZGluZzogMC41cmVtIDA7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbi5oZWFkZXItc2VhcmNoIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaGVhZGVyLXNlYXJjaCBpbnB1dFt0eXBlPXRleHRdIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNTBweDtcbiAgcGFkZGluZzogMTBweCA0NXB4IDEwcHggMjBweDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2Q2ZDhkOTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuM3MgZWFzZTtcbn1cblxuLmhlYWRlci1zZWFyY2ggaW5wdXRbdHlwZT10ZXh0XTpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG59XG5cbi5oZWFkZXItc2VhcmNoIC5zZWFyY2gtYnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDE1cHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjb2xvcjogIzVmNjA2MjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nOiA1cHg7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuM3MgZWFzZTtcbn1cblxuLmhlYWRlci1zZWFyY2ggLnNlYXJjaC1idXR0b246aG92ZXIge1xuICBjb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG59XG5cbi5oZWFkZXItc2VhcmNoIC5oZWFkZXItc2VhcmNoLWxpc3Qge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDEwMDA7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkNmQ4ZDk7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAxMHB4IDEwcHg7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIG1heC1oZWlnaHQ6IDM1MHB4O1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4uaGVhZGVyLXNlYXJjaCAuaGVhZGVyLXNlYXJjaC1saXN0IHVsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uaGVhZGVyLXNlYXJjaCAuaGVhZGVyLXNlYXJjaC1saXN0IGxpIHtcbiAgcGFkZGluZzogOHB4IDE1cHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjBmMGYwO1xufVxuXG4uaGVhZGVyLXNlYXJjaCAuaGVhZGVyLXNlYXJjaC1saXN0IGxpOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4uaGVhZGVyLXNlYXJjaCAuaGVhZGVyLXNlYXJjaC1saXN0IGxpOmhvdmVyLFxuLmhlYWRlci1zZWFyY2ggLmhlYWRlci1zZWFyY2gtbGlzdCBsaS5zZWxlY3RlZCB7XG4gIGJhY2tncm91bmQ6ICNmNWY1ZjU7XG59XG5cbi5oZWFkZXItc2VhcmNoIC5oZWFkZXItc2VhcmNoLWxpc3QgbGkgYSB7XG4gIGNvbG9yOiAjMzMzO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uaGVhZGVyLXNlYXJjaCAuaGVhZGVyLXNlYXJjaC1saXN0IC52aWV3LWFsbC1yZXN1bHRzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmOTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG4uYmctcHVycGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2EzN2ViYTtcbn1cblxuLmJnLXRlYWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2ViYWFkO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLmNhcmF0eC1oZWFkZXIgLnRvcC1oZWFkZXIgLmxvZ28tY29udGFpbmVyIGltZyB7XG4gICAgbWF4LWhlaWdodDogNTBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLmNhcmF0eC1oZWFkZXIgLnRvcC1idXR0b25zIC5idG4tbGluayB7XG4gICAgcGFkZGluZzogMC4yNXJlbTtcbiAgfVxufVxuXG4vKipcbiAqIFByb2R1Y3QgQ2FyZCBDb21wb25lbnRcbiAqXG4gKiBNaW5pbWFsIGN1c3RvbSBzdHlsaW5nIGZvciBCb290c3RyYXAgNSBwcm9kdWN0IGNhcmRzXG4gKi9cblxuLmJnLXB1cnBsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhMzdlYmEgIWltcG9ydGFudDtcbn1cblxuLmJnLXRlYWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2ViYWFkICFpbXBvcnRhbnQ7XG59XG5cbi5wcm9kdWN0LWJhZGdlcyB7XG4gIHRvcDogMC43NXJlbTtcbiAgbGVmdDogMC43NXJlbTtcbiAgei1pbmRleDogMTtcbn1cblxuLnByb2R1Y3QtYmFkZ2VzIC5iYWRnZSArIC5iYWRnZSB7XG4gIG1hcmdpbi10b3A6IDAuMjVyZW07XG59XG5cbi5wcm9kdWN0LXR5cGUtYmFkZ2Uge1xuICB0b3A6IDAuNzVyZW07XG4gIHJpZ2h0OiAwLjc1cmVtO1xuICB6LWluZGV4OiAxO1xufVxuXG4vKipcbiAqIFByb2R1Y3QgQ2Fyb3VzZWwgQ29tcG9uZW50IFN0eWxlc1xuICogQm9vdHN0cmFwIDUgY2Fyb3VzZWwgZW5oYW5jZW1lbnRzIGZvciBwcm9kdWN0IGRpc3BsYXlzXG4gKi9cblxuLmNhcm91c2VsIC5jYXJvdXNlbC1jb250cm9sLXByZXYsXG4uY2Fyb3VzZWwgLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHdpZHRoOiA1JTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2U7XG59XG5cbi5jYXJvdXNlbCAuY2Fyb3VzZWwtY29udHJvbC1wcmV2IC5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbixcbi5jYXJvdXNlbCAuY2Fyb3VzZWwtY29udHJvbC1wcmV2IC5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbixcbi5jYXJvdXNlbCAuY2Fyb3VzZWwtY29udHJvbC1uZXh0IC5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbixcbi5jYXJvdXNlbCAuY2Fyb3VzZWwtY29udHJvbC1uZXh0IC5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIHdpZHRoOiAycmVtO1xuICBoZWlnaHQ6IDJyZW07XG59XG5cbi5jYXJvdXNlbCAuY2Fyb3VzZWwtY29udHJvbC1wcmV2IC5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi5iZy1kYXJrLFxuLmNhcm91c2VsIC5jYXJvdXNlbC1jb250cm9sLXByZXYgLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLmJnLWRhcmssXG4uY2Fyb3VzZWwgLmNhcm91c2VsLWNvbnRyb2wtbmV4dCAuY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24uYmctZGFyayxcbi5jYXJvdXNlbCAuY2Fyb3VzZWwtY29udHJvbC1uZXh0IC5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi5iZy1kYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS1icy1kYXJrLXJnYiksIDAuOCkgIWltcG9ydGFudDtcbn1cblxuLmNhcm91c2VsIC5jYXJvdXNlbC1jb250cm9sLXByZXYgLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLmJnLWRhcms6aG92ZXIsXG4uY2Fyb3VzZWwgLmNhcm91c2VsLWNvbnRyb2wtcHJldiAuY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24uYmctZGFyazpob3Zlcixcbi5jYXJvdXNlbCAuY2Fyb3VzZWwtY29udHJvbC1uZXh0IC5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi5iZy1kYXJrOmhvdmVyLFxuLmNhcm91c2VsIC5jYXJvdXNlbC1jb250cm9sLW5leHQgLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLmJnLWRhcms6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1kYXJrKSAhaW1wb3J0YW50O1xufVxuXG4uY2Fyb3VzZWw6aG92ZXIgLmNhcm91c2VsLWNvbnRyb2wtcHJldixcbi5jYXJvdXNlbDpob3ZlciAuY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmNhcm91c2VsIC5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvdHRvbTogYXV0bztcbn1cblxuLmNhcm91c2VsIC5jYXJvdXNlbC1pbmRpY2F0b3JzIGJ1dHRvbiB7XG4gIHdpZHRoOiAxMHB4O1xuICBoZWlnaHQ6IDEwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtZ3JheS00MDApO1xuICBib3JkZXI6IG5vbmU7XG4gIG1hcmdpbjogMCA0cHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG59XG5cbi5jYXJvdXNlbCAuY2Fyb3VzZWwtaW5kaWNhdG9ycyBidXR0b24uYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcbn1cblxuLmNhcm91c2VsIC5jYXJvdXNlbC1pbmRpY2F0b3JzIGJ1dHRvbjpob3Zlcjpub3QoLmFjdGl2ZSkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1ncmF5LTYwMCk7XG59XG5cbi5jYXJvdXNlbC5wcm9kdWN0LWNhcm91c2VsIC5jYXJvdXNlbC1pbm5lciB7XG4gIHBhZGRpbmc6IDFyZW0gMDtcbn1cblxuLmNhcm91c2VsLnByb2R1Y3QtY2Fyb3VzZWwgLmNhcm91c2VsLWl0ZW0gLnJvdyB7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xufVxuXG4uY2Fyb3VzZWwucHJvZHVjdC1jYXJvdXNlbCAuY2Fyb3VzZWwtaXRlbSAucm93ID4gW2NsYXNzKj1jb2wtXSB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5jYXJvdXNlbC5wcm9kdWN0LWNhcm91c2VsIC5jYXJvdXNlbC1pdGVtIC5yb3cgPiBbY2xhc3MqPWNvbC1dIC5wcm9kdWN0LWNhcmQge1xuICB3aWR0aDogMTAwJTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5jYXJvdXNlbCAuY2Fyb3VzZWwtaW5uZXIgLnJvdyB7XG4gICAgbWFyZ2luOiAwIC01cHg7XG4gIH1cblxuICAuY2Fyb3VzZWwgLmNhcm91c2VsLWlubmVyIC5jb2wtMTIge1xuICAgIHBhZGRpbmc6IDAgNXB4O1xuICB9XG5cbiAgLmNhcm91c2VsIC5jYXJvdXNlbC1jb250cm9sLXByZXYsXG4gIC5jYXJvdXNlbCAuY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgICB3aWR0aDogMTAlO1xuICB9XG59XG5cbkBtZWRpYSAoaG92ZXI6IG5vbmUpIHtcbiAgLmNhcm91c2VsIC5jYXJvdXNlbC1jb250cm9sLXByZXYsXG4gIC5jYXJvdXNlbCAuY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5jYXJ0LXVwZGF0ZWQge1xuICBhbmltYXRpb246IGNhcnRCb3VuY2UgMC41cyBlYXNlO1xufVxuXG5Aa2V5ZnJhbWVzIGNhcnRCb3VuY2Uge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuXG4uaGVhZGVyLWNhcnQtd3JhcHBlciAuZHJvcGRvd24tbWVudTpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTEwcHg7XG4gIHJpZ2h0OiAxMHB4O1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLmhlYWRlci13aXNobGlzdC13cmFwcGVyIGEge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlO1xufVxuXG4uaGVhZGVyLXdpc2hsaXN0LXdyYXBwZXIgYTpob3ZlciAuZmEtaGVhcnQge1xuICBjb2xvcjogdmFyKC0tYnMtZGFuZ2VyKSAhaW1wb3J0YW50O1xufVxuXG4ud2lzaGxpc3QtY291bnQtYmFkZ2Uge1xuICBtaW4td2lkdGg6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4ud2lzaGxpc3QtdXBkYXRlZCB7XG4gIGFuaW1hdGlvbjogd2lzaGxpc3RQdWxzZSAwLjVzIGVhc2U7XG59XG5cbkBrZXlmcmFtZXMgd2lzaGxpc3RQdWxzZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG5cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMyk7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG59XG5cbi53aXNobGlzdC10b2dnbGUtYnRuIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xufVxuXG4ud2lzaGxpc3QtdG9nZ2xlLWJ0bi53aXNobGlzdC1sb2FkaW5nIHtcbiAgb3BhY2l0eTogMC43O1xuICBjdXJzb3I6IHdhaXQ7XG59XG5cbi53aXNobGlzdC10b2dnbGUtYnRuIC5mYS1oZWFydCB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG59XG5cbi53aXNobGlzdC10b2dnbGUtYnRuIC5mYS1oZWFydC53aXNobGlzdC1wdWxzZSB7XG4gIGFuaW1hdGlvbjogaGVhcnRCZWF0IDAuOHMgZWFzZSBpbmZpbml0ZTtcbn1cblxuLndpc2hsaXN0LXRvZ2dsZS1idG4gLmZhLWhlYXJ0Lndpc2hsaXN0LWZpbGxlZCB7XG4gIGFuaW1hdGlvbjogZmlsbEhlYXJ0IDAuNHMgZWFzZTtcbn1cblxuQGtleWZyYW1lcyBoZWFydEJlYXQge1xuICAwJSwgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjE1KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZpbGxIZWFydCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCkgcm90YXRlKC00NWRlZyk7XG4gIH1cblxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4zKSByb3RhdGUoLTQ1ZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSkgcm90YXRlKDBkZWcpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluU2NhbGUge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlT3V0U2NhbGUge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC53aXNobGlzdC10b2dnbGUtYnRuIHtcbiAgICBtaW4td2lkdGg6IDQ0cHg7XG4gICAgbWluLWhlaWdodDogNDRweDtcbiAgfVxuXG4gIC53aXNobGlzdC10b2dnbGUtYnRuLmJ0bi1zbSxcbiAgLmJ0bi1ncm91cC1zbSA+IC53aXNobGlzdC10b2dnbGUtYnRuLmJ0biB7XG4gICAgcGFkZGluZzogMC41cmVtO1xuICB9XG5cbiAgLmhlYWRlci13aXNobGlzdC13cmFwcGVyIHtcbiAgICBtYXJnaW46IDAgMC4yNXJlbTtcbiAgfVxufVxuXG4ud2lzaGxpc3Qtc2tlbGV0b24gLnNrZWxldG9uLWl0ZW0ge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICNmMGYwZjAgMjUlLCAjZTBlMGUwIDUwJSwgI2YwZjBmMCA3NSUpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDIwMCUgMTAwJTtcbiAgYW5pbWF0aW9uOiBsb2FkaW5nIDEuNXMgaW5maW5pdGU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtO1xufVxuXG4ud2lzaGxpc3Qtc2tlbGV0b24gLnNrZWxldG9uLWl0ZW0uc2tlbGV0b24taW1hZ2Uge1xuICBoZWlnaHQ6IDIwMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4ud2lzaGxpc3Qtc2tlbGV0b24gLnNrZWxldG9uLWl0ZW0uc2tlbGV0b24tdGV4dCB7XG4gIGhlaWdodDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG4ud2lzaGxpc3Qtc2tlbGV0b24gLnNrZWxldG9uLWl0ZW0uc2tlbGV0b24tdGV4dC5za2VsZXRvbi10aXRsZSB7XG4gIHdpZHRoOiA4MCU7XG59XG5cbi53aXNobGlzdC1za2VsZXRvbiAuc2tlbGV0b24taXRlbS5za2VsZXRvbi10ZXh0LnNrZWxldG9uLXByaWNlIHtcbiAgd2lkdGg6IDQwJTtcbn1cblxuQGtleWZyYW1lcyBsb2FkaW5nIHtcbiAgMCUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDIwMCUgMDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMDAlIDA7XG4gIH1cbn1cblxuLyoqXG4gKiBGcm9udGVuZCBEYXRhVGFibGUgQ29tcG9uZW50IFN0eWxlc1xuICogRW5oYW5jZWQgZm9yIEJvb3RzdHJhcCA1IHdpdGggbW9kZXJuIGRlc2lnbiBwYXR0ZXJuc1xuICovXG5cbi5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIHtcbiAgYm94LXNoYWRvdzogMCAwLjEyNXJlbSAwLjI1cmVtIHJnYmEoMCwgMCwgMCwgMC4wNzUpLCAwIDAuMDVyZW0gMC4xcmVtIHJnYmEoMCwgMCwgMCwgMC4wNik7XG59XG5cbi5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC5jYXJkLWhlYWRlci5iZy1saWdodCB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNmOGY5ZmEgMCUsICNlOWVjZWYgMTAwJSkgIWltcG9ydGFudDtcbn1cblxuLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLmNhcmQtaGVhZGVyIC5jYXJkLXRpdGxlIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyNWVtO1xufVxuXG4uZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAuY2FyZC1ib2R5IC5mb3JtLWxhYmVsIHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICM0OTUwNTc7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLmNhcmQtYm9keSAuZm9ybS1sYWJlbCBpIHtcbiAgb3BhY2l0eTogMC43O1xufVxuXG4uZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAuY2FyZC1ib2R5IC5mb3JtLWNvbnRyb2wsXG4uZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAuY2FyZC1ib2R5IC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLmNhcmQtYm9keSAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAuY2FyZC1ib2R5IC5mb3JtLXNlbGVjdCB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG4gIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlLWluLW91dDtcbn1cblxuLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLmNhcmQtYm9keSAuZm9ybS1jb250cm9sOmZvY3VzLFxuLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLmNhcmQtYm9keSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC5jYXJkLWJvZHkgLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLmNhcmQtYm9keSAuZm9ybS1zZWxlY3Q6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICM4NmI3ZmU7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDEzLCAxMTAsIDI1MywgMC4yNSk7XG59XG5cbi5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC5jYXJkLWJvZHkgLmZvcm0tY29udHJvbDpob3Zlcjpub3QoOmZvY3VzKSxcbi5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC5jYXJkLWJvZHkgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjpob3Zlcjpub3QoOmZvY3VzKSxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAuY2FyZC1ib2R5IC5zZWxlY3QyLXNlbGVjdGlvbjpob3Zlcjpub3QoOmZvY3VzKSxcbi5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC5jYXJkLWJvZHkgLmZvcm0tc2VsZWN0OmhvdmVyOm5vdCg6Zm9jdXMpIHtcbiAgYm9yZGVyLWNvbG9yOiAjYjZkN2ZmO1xufVxuXG4uZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAuY2FyZC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtdGV4dCB7XG4gIGJhY2tncm91bmQ6ICNmOGY5ZmE7XG4gIGJvcmRlci1jb2xvcjogI2RlZTJlNjtcbn1cblxuLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLmNhcmQtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLXRleHQuYm9yZGVyLWVuZC0wIHtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xufVxuXG4uZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAuY2FyZC1ib2R5IC5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sLmJvcmRlci1zdGFydC0wLFxuLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLmNhcmQtYm9keSAuaW5wdXQtZ3JvdXAgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5ib3JkZXItc3RhcnQtMC5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAuY2FyZC1ib2R5IC5pbnB1dC1ncm91cCAuYm9yZGVyLXN0YXJ0LTAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICBib3JkZXItbGVmdDogMDtcbn1cblxuLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLmNhcmQtYm9keSAuaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbC5ib3JkZXItc3RhcnQtMDpmb2N1cyxcbi5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC5jYXJkLWJvZHkgLmlucHV0LWdyb3VwIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuYm9yZGVyLXN0YXJ0LTAuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLmNhcmQtYm9keSAuaW5wdXQtZ3JvdXAgLmJvcmRlci1zdGFydC0wLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLmNhcmQtYm9keSAuaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbC5ib3JkZXItc3RhcnQtMDpmb2N1cyArIC5pbnB1dC1ncm91cC10ZXh0LFxuLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLmNhcmQtYm9keSAuaW5wdXQtZ3JvdXAgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5ib3JkZXItc3RhcnQtMC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyArIC5pbnB1dC1ncm91cC10ZXh0LFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC5jYXJkLWJvZHkgLmlucHV0LWdyb3VwIC5ib3JkZXItc3RhcnQtMC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyArIC5pbnB1dC1ncm91cC10ZXh0IHtcbiAgYm9yZGVyLWNvbG9yOiAjODZiN2ZlO1xufVxuXG4uZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAuZGF0YXRhYmxlLWJ1bGstYWN0aW9ucyB7XG4gIG1hcmdpbjogMCAxcmVtIDFyZW0gMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZDFlY2YxIDAlLCAjYmVlNWViIDEwMCUpICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjMsIDE2MiwgMTg0LCAwLjIpICFpbXBvcnRhbnQ7XG59XG5cbi5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC5kYXRhdGFibGUtYnVsay1hY3Rpb25zIC5iYWRnZSB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgcGFkZGluZzogMC41cmVtIDAuNzVyZW07XG59XG5cbi5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC5kYXRhdGFibGUtYnVsay1hY3Rpb25zIC5idG4taW5mbyB7XG4gIC0tYnMtYnRuLWJnOiAjMTdhMmI4O1xuICAtLWJzLWJ0bi1ib3JkZXItY29sb3I6ICMxN2EyYjg7XG4gIC0tYnMtYnRuLWhvdmVyLWJnOiAjMTM4NDk2O1xuICAtLWJzLWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6ICMxMTdhOGI7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbi5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC50YWJsZSxcbi5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC5wcm9zZSB0YWJsZSxcbi5wcm9zZSAuZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciB0YWJsZSB7XG4gIC0tYnMtdGFibGUtYmc6IHRyYW5zcGFyZW50O1xufVxuXG4uZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAudGFibGUgdGhlYWQgdGgsXG4uZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAucHJvc2UgdGFibGUgdGhlYWQgdGgsXG4ucHJvc2UgLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgdGFibGUgdGhlYWQgdGgge1xuICBiYWNrZ3JvdW5kOiAjZjhmOWZhICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZGVlMmU2O1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgcGFkZGluZzogMXJlbSAwLjc1cmVtO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xufVxuXG4uZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAudGFibGUgdGhlYWQgdGguYm9yZGVyLTAsXG4uZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAucHJvc2UgdGFibGUgdGhlYWQgdGguYm9yZGVyLTAsXG4ucHJvc2UgLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgdGFibGUgdGhlYWQgdGguYm9yZGVyLTAge1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItbGVmdDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xufVxuXG4uZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAudGFibGUgdGJvZHkgdGQsXG4uZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAucHJvc2UgdGFibGUgdGJvZHkgdGQsXG4ucHJvc2UgLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgdGFibGUgdGJvZHkgdGQge1xuICBwYWRkaW5nOiAwLjg3NXJlbSAwLjc1cmVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBjb2xvcjogIzQ5NTA1NztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlOWVjZWY7XG59XG5cbi5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC50YWJsZSB0Ym9keSB0cixcbi5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC5wcm9zZSB0YWJsZSB0Ym9keSB0cixcbi5wcm9zZSAuZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciB0YWJsZSB0Ym9keSB0ciB7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQ7XG59XG5cbi5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC50YWJsZSB0Ym9keSB0cjpob3Zlcixcbi5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC5wcm9zZSB0YWJsZSB0Ym9keSB0cjpob3Zlcixcbi5wcm9zZSAuZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciB0YWJsZSB0Ym9keSB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTMsIDExMCwgMjUzLCAwLjA1KTtcbn1cblxuLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLnRhYmxlIHRib2R5IHRyOmxhc3QtY2hpbGQgdGQsXG4uZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAucHJvc2UgdGFibGUgdGJvZHkgdHI6bGFzdC1jaGlsZCB0ZCxcbi5wcm9zZSAuZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciB0YWJsZSB0Ym9keSB0cjpsYXN0LWNoaWxkIHRkIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbn1cblxuLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLmNhcmQtZm9vdGVyLmJnLWxpZ2h0IHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2Y4ZjlmYSAwJSwgI2U5ZWNlZiAxMDAlKSAhaW1wb3J0YW50O1xufVxuXG4uZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAuY2FyZC1mb290ZXIgLmJ0biB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZS1pbi1vdXQ7XG59XG5cbi5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfbGVuZ3RoLFxuLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19maWx0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX2luZm8ge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgcGFkZGluZzogMXJlbSAwLjc1cmVtIDAuNXJlbSAwLjc1cmVtO1xuICBtYXJnaW46IDA7XG59XG5cbi5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUge1xuICBwYWRkaW5nOiAwLjVyZW0gMC43NXJlbSAxcmVtIDAuNzVyZW07XG59XG5cbi5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLnBhZ2luYXRpb24ge1xuICBtYXJnaW46IDA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAucGFnaW5hdGlvbiB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgfVxufVxuXG4uZGF0YVRhYmxlc193cmFwcGVyIC5wYWdlLWxpbmsge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgcGFkZGluZzogMC41cmVtIDAuNzVyZW07XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlLWluLW91dDtcbn1cblxuLmRhdGFUYWJsZXNfd3JhcHBlciAucGFnZS1saW5rOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMTMsIDExMCwgMjUzLCAwLjI1KTtcbn1cblxuLmRhdGFUYWJsZXNfd3JhcHBlciAucGFnZS1pdGVtLmFjdGl2ZSAucGFnZS1saW5rIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkNmVmZDtcbiAgYm9yZGVyLWNvbG9yOiAjMGQ2ZWZkO1xuICBjb2xvcjogI2ZmZjtcbiAgYm94LXNoYWRvdzogMCAwLjEyNXJlbSAwLjI1cmVtIHJnYmEoMTMsIDExMCwgMjUzLCAwLjQpO1xufVxuXG4uZGF0YVRhYmxlc193cmFwcGVyIC5wYWdlLWl0ZW0uZGlzYWJsZWQgLnBhZ2UtbGluayB7XG4gIGNvbG9yOiAjYWRiNWJkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6ICNkZWUyZTY7XG4gIG9wYWNpdHk6IDAuNjtcbn1cblxuLmRhdGFUYWJsZXNfcHJvY2Vzc2luZyB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45NSkgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNiAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZzogMnJlbSAhaW1wb3J0YW50O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB0b3A6IDUwJSAhaW1wb3J0YW50O1xuICBsZWZ0OiA1MCUgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgIWltcG9ydGFudDtcbiAgei1pbmRleDogMTA1MCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwIDAuNXJlbSAxcmVtIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cig0cHgpO1xufVxuXG4uZGF0YVRhYmxlc19lbXB0eSB7XG4gIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAzcmVtIDJyZW0gIWltcG9ydGFudDtcbn1cblxuLmRhdGFUYWJsZXNfZW1wdHkgaSB7XG4gIG9wYWNpdHk6IDAuNjtcbn1cblxuLmRhdGFUYWJsZXNfZW1wdHkgaDYsXG4uZGF0YVRhYmxlc19lbXB0eSAuaDYge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5kYXRhVGFibGVzX2VtcHR5IHNtYWxsLFxuLmRhdGFUYWJsZXNfZW1wdHkgLnNtYWxsIHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG59XG5cbi5idG4tSW5Qcm9jZXNzIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2ZmYzEwNyAwJSwgI2ZmYjMwMCAxMDAlKTtcbiAgY29sb3I6ICMwMDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmJ0bi1PdXRGb3JEZWxpdmVyeSB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMxN2EyYjggMCUsICMxMzg0OTYgMTAwJSk7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXI6IG5vbmU7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5idG4tZGVsaXZlcmVkIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzI4YTc0NSAwJSwgIzFlN2UzNCAxMDAlKTtcbiAgY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmJ0bi1iZWluZ1BhY2thZ2VkIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzZjNzU3ZCAwJSwgIzU0NWI2MiAxMDAlKTtcbiAgY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmJ0bi1JblByb2Nlc3MsXG4uYnRuLU91dEZvckRlbGl2ZXJ5LFxuLmJ0bi1kZWxpdmVyZWQsXG4uYnRuLWJlaW5nUGFja2FnZWQge1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNzVyZW07XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgYm9yZGVyLXJhZGl1czogMXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2UtaW4tb3V0O1xufVxuXG4uYnRuLXZpZXdPcmRlciB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMwZDZlZmQgMCUsICMwYjVlZDcgMTAwJSk7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDAuNXJlbSAxLjI1cmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG59XG5cbi5idG4tdmlldy1xdWVzdGlvbiB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMxN2EyYjggMCUsICMxMzg0OTYgMTAwJSk7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDAuMzc1cmVtIDFyZW07XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG59XG5cbi5idG4tdmlldy1xdWVzdGlvbiBpIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLmNhcmQtYm9keSB7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgfVxuXG4gIC5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC5jYXJkLWJvZHkgLnJvdy5nLTMgPiAqIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG5cbiAgLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19pbmZvLFxuICAuZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIHtcbiAgICBtYXJnaW46IDAgLTAuNXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICB9XG5cbiAgLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLmNhcmQtYm9keSB7XG4gICAgcGFkZGluZzogMC43NXJlbTtcbiAgfVxuXG4gIC5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC50YWJsZSxcbiAgLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLnByb3NlIHRhYmxlLFxuICAucHJvc2UgLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgdGFibGUge1xuICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICB9XG5cbiAgLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLnRhYmxlIHRoZWFkIHRoLFxuICAuZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAucHJvc2UgdGFibGUgdGhlYWQgdGgsXG4gIC5wcm9zZSAuZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciB0YWJsZSB0aGVhZCB0aCxcbiAgLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLnRhYmxlIHRib2R5IHRkLFxuICAuZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAucHJvc2UgdGFibGUgdGJvZHkgdGQsXG4gIC5wcm9zZSAuZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciB0YWJsZSB0Ym9keSB0ZCB7XG4gICAgcGFkZGluZzogMC41cmVtIDAuMzc1cmVtO1xuICB9XG5cbiAgLmZyb250ZW5kLWRhdGF0YWJsZS1jb250YWluZXIgLmRhdGF0YWJsZS1idWxrLWFjdGlvbnMge1xuICAgIG1hcmdpbjogMCAwLjc1cmVtIDFyZW0gMC43NXJlbTtcbiAgfVxuXG4gIC5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIC5kYXRhdGFibGUtYnVsay1hY3Rpb25zIC5kLWZsZXgge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiAwLjc1cmVtO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciAuZGF0YXRhYmxlLWJ1bGstYWN0aW9ucyAuZC1mbGV4IC5kLWZsZXgge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbn1cblxuLyoqXG4gKiBUb2FzdC9Ub2FzdHIgWi1JbmRleCBPdmVycmlkZXNcbiAqIFxuICogVGhpcyBmaWxlIGVuc3VyZXMgdG9hc3Qgbm90aWZpY2F0aW9ucyBhcHBlYXIgQkVMT1cgaGVhZGVyIGRyb3Bkb3duIG1lbnVzLlxuICogQm9vdHN0cmFwIGRyb3Bkb3ducyB1c2Ugei1pbmRleDogMTAwMCwgc28gd2Ugc2V0IHRvYXN0cyB0byA5OTkuXG4gKi9cblxuI3RvYXN0LWNvbnRhaW5lciB7XG4gIHotaW5kZXg6IDk5OSAhaW1wb3J0YW50O1xufVxuXG4jdG9hc3QtY29udGFpbmVyID4gZGl2IHtcbiAgei1pbmRleDogOTk5ICFpbXBvcnRhbnQ7XG59XG5cbi50b2FzdC1jb250YWluZXIge1xuICB6LWluZGV4OiA5OTkgIWltcG9ydGFudDtcbn1cblxuLnRvYXN0IHtcbiAgei1pbmRleDogOTk5ICFpbXBvcnRhbnQ7XG59XG5cbi50b2FzdC10b3AtcmlnaHQsXG4udG9hc3QtdG9wLWxlZnQsXG4udG9hc3QtdG9wLWNlbnRlcixcbi50b2FzdC10b3AtZnVsbC13aWR0aCxcbi50b2FzdC1ib3R0b20tcmlnaHQsXG4udG9hc3QtYm90dG9tLWxlZnQsXG4udG9hc3QtYm90dG9tLWNlbnRlcixcbi50b2FzdC1ib3R0b20tZnVsbC13aWR0aCB7XG4gIHotaW5kZXg6IDk5OSAhaW1wb3J0YW50O1xufVxuXG4vKipcbiAqIER5bmFtaWMgRm9ybSBDb21wb25lbnQgU3R5bGVzXG4gKiBFbmhhbmNlbWVudHMgZm9yIGR5bmFtaWMgZm9ybSBidWlsZGVyXG4gKi9cblxuLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLmZvcm0tZmllbGQtd3JhcHBlciAuZm9ybS1jb250cm9sLFxuLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLmZvcm0tZmllbGQtd3JhcHBlciAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5keW5hbWljLWZvcm0tY29udGFpbmVyIC5mb3JtLWZpZWxkLXdyYXBwZXIgLnNlbGVjdDItc2VsZWN0aW9uLFxuLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLmZvcm0tZmllbGQtd3JhcHBlciAuZm9ybS1zZWxlY3Qge1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XG59XG5cbi5keW5hbWljLWZvcm0tY29udGFpbmVyIC5mb3JtLWZpZWxkLXdyYXBwZXIgLmZvcm0tY29udHJvbDpmb2N1cyxcbi5keW5hbWljLWZvcm0tY29udGFpbmVyIC5mb3JtLWZpZWxkLXdyYXBwZXIgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuZHluYW1pYy1mb3JtLWNvbnRhaW5lciAuZm9ybS1maWVsZC13cmFwcGVyIC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5keW5hbWljLWZvcm0tY29udGFpbmVyIC5mb3JtLWZpZWxkLXdyYXBwZXIgLmZvcm0tc2VsZWN0OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKHZhcigtLWJzLXByaW1hcnktcmdiKSwgMC4xNSk7XG59XG5cbi5keW5hbWljLWZvcm0tY29udGFpbmVyIC5jaGVja2JveC1ncm91cCxcbi5keW5hbWljLWZvcm0tY29udGFpbmVyIC5yYWRpby1ncm91cCB7XG4gIHBhZGRpbmc6IDAuNXJlbSAwO1xufVxuXG4uZHluYW1pYy1mb3JtLWNvbnRhaW5lciAuY2hlY2tib3gtZ3JvdXAgLmZvcm0tY2hlY2ssXG4uZHluYW1pYy1mb3JtLWNvbnRhaW5lciAucmFkaW8tZ3JvdXAgLmZvcm0tY2hlY2sge1xuICBwYWRkaW5nLWxlZnQ6IDEuNzVyZW07XG59XG5cbi5keW5hbWljLWZvcm0tY29udGFpbmVyIC5jaGVja2JveC1ncm91cCAuZm9ybS1jaGVjazpob3Zlcixcbi5keW5hbWljLWZvcm0tY29udGFpbmVyIC5yYWRpby1ncm91cCAuZm9ybS1jaGVjazpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWdyYXktMTAwKTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjVyZW07XG4gIG1hcmdpbi1yaWdodDogLTAuNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAyLjI1cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gIHBhZGRpbmctdG9wOiAwLjI1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cyk7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xufVxuXG4uZHluYW1pYy1mb3JtLWNvbnRhaW5lciAuZmlsZS1pbnB1dC13cmFwcGVyIC5mb3JtLWNvbnRyb2xbdHlwZT1maWxlXTo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24sXG4uZHluYW1pYy1mb3JtLWNvbnRhaW5lciAuZmlsZS1pbnB1dC13cmFwcGVyIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCBbdHlwZT1maWxlXS5zZWxlY3QyLXNlbGVjdGlvbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLmZpbGUtaW5wdXQtd3JhcHBlciBbdHlwZT1maWxlXS5zZWxlY3QyLXNlbGVjdGlvbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xuICBtYXJnaW46IC0wLjM3NXJlbSAtMC43NXJlbTtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDAuNzVyZW07XG4gIGNvbG9yOiB2YXIoLS1icy1idG4tY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1idG4tYmcpO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1pbmxpbmUtZW5kOiB2YXIoLS1icy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJzLWJvcmRlci1jb2xvcik7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlLWluLW91dDtcbn1cblxuLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLmZpbGUtaW5wdXQtd3JhcHBlciAuZm9ybS1jb250cm9sW3R5cGU9ZmlsZV06aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbixcbi5keW5hbWljLWZvcm0tY29udGFpbmVyIC5maWxlLWlucHV0LXdyYXBwZXIgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IFt0eXBlPWZpbGVdLnNlbGVjdDItc2VsZWN0aW9uOmhvdmVyOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKTo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLmZpbGUtaW5wdXQtd3JhcHBlciBbdHlwZT1maWxlXS5zZWxlY3QyLXNlbGVjdGlvbjpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSk6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtYnRuLWhvdmVyLWJnKTtcbn1cblxuLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLmZpbGUtaW5wdXQtd3JhcHBlciAuaW1hZ2UtcHJldmlldyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLmZpbGUtaW5wdXQtd3JhcHBlciAuaW1hZ2UtcHJldmlldyBpbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgYm94LXNoYWRvdzogMCAwLjEyNXJlbSAwLjI1cmVtIHJnYmEoMCwgMCwgMCwgMC4wNzUpO1xufVxuXG4uZHluYW1pYy1mb3JtLWNvbnRhaW5lciAuY2hhcmFjdGVyLWNvdW50ZXIge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbn1cblxuLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLmZvcm0tc3VibWl0LXdyYXBwZXIge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYnMtZ3JheS0zMDApO1xuICBwYWRkaW5nLXRvcDogMS41cmVtO1xuICBtYXJnaW4tdG9wOiAycmVtO1xufVxuXG4uZHluYW1pYy1mb3JtLWNvbnRhaW5lciAuZm9ybS1zdWJtaXQtd3JhcHBlciAuYnRuLXByaW1hcnkge1xuICBmb250LXdlaWdodDogNTAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMjVlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uZHluYW1pYy1mb3JtLWNvbnRhaW5lciAuZm9ybS1zdWJtaXQtd3JhcHBlciAuYnRuLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6aG92ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XG4gIGJveC1zaGFkb3c6IDAgMC4yNXJlbSAwLjVyZW0gcmdiYSgwLCAwLCAwLCAwLjE1KTtcbn1cblxuLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLmZvcm0tc3VibWl0LXdyYXBwZXIgLmJ0bi1wcmltYXJ5OmRpc2FibGVkIHtcbiAgY3Vyc29yOiB3YWl0O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLnJvdy5nLTQgLmZvcm0tZmllbGQtd3JhcHBlci5maWVsZC10eXBlLXRleHRhcmVhIHtcbiAgICBncmlkLWNvbHVtbjogMS8tMTtcbiAgfVxufVxuXG4uZHluYW1pYy1mb3JtLWNvbnRhaW5lciAubmVlZHMtdmFsaWRhdGlvbiAuaW52YWxpZC1mZWVkYmFjayxcbi5keW5hbWljLWZvcm0tY29udGFpbmVyIC5uZWVkcy12YWxpZGF0aW9uIC5lcnJvci1oZWxwLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIG1hcmdpbi10b3A6IDAuMjVyZW07XG59XG5cbi5keW5hbWljLWZvcm0tY29udGFpbmVyIC5uZWVkcy12YWxpZGF0aW9uIC5pbnZhbGlkLWZlZWRiYWNrOjpiZWZvcmUsXG4uZHluYW1pYy1mb3JtLWNvbnRhaW5lciAubmVlZHMtdmFsaWRhdGlvbiAuZXJyb3ItaGVscC1ibG9jazo6YmVmb3JlIHtcbiAgY29udGVudDogXCLimqAgXCI7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5keW5hbWljLWZvcm0tY29udGFpbmVyIC5uZWVkcy12YWxpZGF0aW9uIC5mb3JtLWNvbnRyb2w6dmFsaWQsXG4ud2FzLXZhbGlkYXRlZCAuZHluYW1pYy1mb3JtLWNvbnRhaW5lciAubmVlZHMtdmFsaWRhdGlvbiAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOnZhbGlkLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC53YXMtdmFsaWRhdGVkIC5keW5hbWljLWZvcm0tY29udGFpbmVyIC5uZWVkcy12YWxpZGF0aW9uIC5zZWxlY3QyLXNlbGVjdGlvbjp2YWxpZCxcbi53YXMtdmFsaWRhdGVkIC5keW5hbWljLWZvcm0tY29udGFpbmVyIC5uZWVkcy12YWxpZGF0aW9uIC5mb3JtLXNlbGVjdDp2YWxpZCB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtc3VjY2Vzcyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgOCA4JyUzZSUzY3BhdGggZmlsbD0nJTIzMjhhNzQ1JyBkPSdNMi4zIDYuNzNMLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjYWxjKDAuMzc1ZW0gKyAwLjE4NzVyZW0pIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKSBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKTtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLm5lZWRzLXZhbGlkYXRpb24gLmZvcm0tY29udHJvbDp2YWxpZDpmb2N1cyxcbi53YXMtdmFsaWRhdGVkIC5keW5hbWljLWZvcm0tY29udGFpbmVyIC5uZWVkcy12YWxpZGF0aW9uIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246dmFsaWQ6Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLndhcy12YWxpZGF0ZWQgLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLm5lZWRzLXZhbGlkYXRpb24gLnNlbGVjdDItc2VsZWN0aW9uOnZhbGlkOmZvY3VzLFxuLndhcy12YWxpZGF0ZWQgLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLm5lZWRzLXZhbGlkYXRpb24gLmZvcm0tc2VsZWN0OnZhbGlkOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1zdWNjZXNzKTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKHZhcigtLWJzLXN1Y2Nlc3MtcmdiKSwgMC4yNSk7XG59XG5cbi5keW5hbWljLWZvcm0tY29udGFpbmVyLmlzLWxvYWRpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5keW5hbWljLWZvcm0tY29udGFpbmVyLmlzLWxvYWRpbmc6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgei1pbmRleDogMTA7XG4gIGN1cnNvcjogd2FpdDtcbn1cblxuLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLmZvcm0tZmxvYXRpbmcgbGFiZWwuYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjg1KSB0cmFuc2xhdGVZKC0wLjVyZW0pIHRyYW5zbGF0ZVgoMC4xNXJlbSk7XG59XG5cbi5keW5hbWljLWZvcm0tY29udGFpbmVyIC5nLXJlY2FwdGNoYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG4gIC5keW5hbWljLWZvcm0tY29udGFpbmVyIC5nLXJlY2FwdGNoYSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgfVxufVxuXG5AbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gIC5keW5hbWljLWZvcm0tY29udGFpbmVyIC5jaGVja2JveC1ncm91cCAuZm9ybS1jaGVjazpob3ZlcixcbiAgLmR5bmFtaWMtZm9ybS1jb250YWluZXIgLnJhZGlvLWdyb3VwIC5mb3JtLWNoZWNrOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpO1xuICB9XG59XG5cbi8qKlxuICogRnJvbnRlbmQgRm9ybSBTdHlsZXNcbiAqXG4gKiBDb21wbGV0ZSBmb3JtIHN5c3RlbSBmb3IgZnJvbnRlbmQvY3VzdG9tZXItZmFjaW5nIHBhZ2VzXG4gKiBVc2VzIEJvb3RzdHJhcCA1IHdpdGggc3F1YXJlIGNvcm5lcnMgZGVzaWduXG4gKi9cblxuLmZyb250ZW5kLWZvcm0gLm1iLTMsXG4uZnJvbnRlbmQtZm9ybSAuZm9ybS1ncm91cCxcbi5jdXN0b21lci1mb3JtIC5tYi0zLFxuLmN1c3RvbWVyLWZvcm0gLmZvcm0tZ3JvdXAsXG4uY2hlY2tvdXQtZm9ybSAubWItMyxcbi5jaGVja291dC1mb3JtIC5mb3JtLWdyb3VwLFxuLmFjY291bnQtZm9ybSAubWItMyxcbi5hY2NvdW50LWZvcm0gLmZvcm0tZ3JvdXAsXG4ucHJvZHVjdC1mb3JtIC5tYi0zLFxuLnByb2R1Y3QtZm9ybSAuZm9ybS1ncm91cCxcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5tYi0zLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmZvcm0tZ3JvdXAsXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAubWItMyxcbi5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5mb3JtLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xufVxuXG4uZnJvbnRlbmQtZm9ybSAuZm9ybS1sYWJlbCxcbi5mcm9udGVuZC1mb3JtIGxhYmVsLFxuLmN1c3RvbWVyLWZvcm0gLmZvcm0tbGFiZWwsXG4uY3VzdG9tZXItZm9ybSBsYWJlbCxcbi5jaGVja291dC1mb3JtIC5mb3JtLWxhYmVsLFxuLmNoZWNrb3V0LWZvcm0gbGFiZWwsXG4uYWNjb3VudC1mb3JtIC5mb3JtLWxhYmVsLFxuLmFjY291bnQtZm9ybSBsYWJlbCxcbi5wcm9kdWN0LWZvcm0gLmZvcm0tbGFiZWwsXG4ucHJvZHVjdC1mb3JtIGxhYmVsLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmZvcm0tbGFiZWwsXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSBsYWJlbCxcbi5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5mb3JtLWxhYmVsLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgY29sb3I6ICMzMzM7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xufVxuXG4uZnJvbnRlbmQtZm9ybSAucmVxdWlyZWQsXG4uY3VzdG9tZXItZm9ybSAucmVxdWlyZWQsXG4uY2hlY2tvdXQtZm9ybSAucmVxdWlyZWQsXG4uYWNjb3VudC1mb3JtIC5yZXF1aXJlZCxcbi5wcm9kdWN0LWZvcm0gLnJlcXVpcmVkLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLnJlcXVpcmVkLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLnJlcXVpcmVkIHtcbiAgY29sb3I6ICNkYzM1NDU7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xufVxuXG4uZnJvbnRlbmQtZm9ybSAuZm9ybS1jb250cm9sLFxuLmZyb250ZW5kLWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuZnJvbnRlbmQtZm9ybSAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uY3VzdG9tZXItZm9ybSAuZm9ybS1jb250cm9sLFxuLmN1c3RvbWVyLWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuY3VzdG9tZXItZm9ybSAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uY2hlY2tvdXQtZm9ybSAuZm9ybS1jb250cm9sLFxuLmNoZWNrb3V0LWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuY2hlY2tvdXQtZm9ybSAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uYWNjb3VudC1mb3JtIC5mb3JtLWNvbnRyb2wsXG4uYWNjb3VudC1mb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmFjY291bnQtZm9ybSAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4ucHJvZHVjdC1mb3JtIC5mb3JtLWNvbnRyb2wsXG4ucHJvZHVjdC1mb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnByb2R1Y3QtZm9ybSAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuZm9ybS1jb250cm9sLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuZm9ybS1jb250cm9sLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNDJweDtcbiAgcGFkZGluZzogMC40NzVyZW0gMC44NXJlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RhZDlkOTtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XG59XG5cbi5mcm9udGVuZC1mb3JtIC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4uZnJvbnRlbmQtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5mcm9udGVuZC1mb3JtIC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5jdXN0b21lci1mb3JtIC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4uY3VzdG9tZXItZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5jdXN0b21lci1mb3JtIC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5jaGVja291dC1mb3JtIC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4uY2hlY2tvdXQtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5jaGVja291dC1mb3JtIC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5hY2NvdW50LWZvcm0gLmZvcm0tY29udHJvbDpmb2N1cyxcbi5hY2NvdW50LWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuYWNjb3VudC1mb3JtIC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5wcm9kdWN0LWZvcm0gLmZvcm0tY29udHJvbDpmb2N1cyxcbi5wcm9kdWN0LWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucHJvZHVjdC1mb3JtIC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6ICMxRTFFNTY7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgzMCwgMzAsIDg2LCAwLjI1KTtcbn1cblxuLmZyb250ZW5kLWZvcm0gLmZvcm0tY29udHJvbDo6cGxhY2Vob2xkZXIsXG4uZnJvbnRlbmQtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOjpwbGFjZWhvbGRlcixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuZnJvbnRlbmQtZm9ybSAuc2VsZWN0Mi1zZWxlY3Rpb246OnBsYWNlaG9sZGVyLFxuLmN1c3RvbWVyLWZvcm0gLmZvcm0tY29udHJvbDo6cGxhY2Vob2xkZXIsXG4uY3VzdG9tZXItZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOjpwbGFjZWhvbGRlcixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuY3VzdG9tZXItZm9ybSAuc2VsZWN0Mi1zZWxlY3Rpb246OnBsYWNlaG9sZGVyLFxuLmNoZWNrb3V0LWZvcm0gLmZvcm0tY29udHJvbDo6cGxhY2Vob2xkZXIsXG4uY2hlY2tvdXQtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOjpwbGFjZWhvbGRlcixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuY2hlY2tvdXQtZm9ybSAuc2VsZWN0Mi1zZWxlY3Rpb246OnBsYWNlaG9sZGVyLFxuLmFjY291bnQtZm9ybSAuZm9ybS1jb250cm9sOjpwbGFjZWhvbGRlcixcbi5hY2NvdW50LWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjo6cGxhY2Vob2xkZXIsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmFjY291bnQtZm9ybSAuc2VsZWN0Mi1zZWxlY3Rpb246OnBsYWNlaG9sZGVyLFxuLnByb2R1Y3QtZm9ybSAuZm9ybS1jb250cm9sOjpwbGFjZWhvbGRlcixcbi5wcm9kdWN0LWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjo6cGxhY2Vob2xkZXIsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnByb2R1Y3QtZm9ybSAuc2VsZWN0Mi1zZWxlY3Rpb246OnBsYWNlaG9sZGVyLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmZvcm0tY29udHJvbDo6cGxhY2Vob2xkZXIsXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOjpwbGFjZWhvbGRlcixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuc2VsZWN0Mi1zZWxlY3Rpb246OnBsYWNlaG9sZGVyLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLmZvcm0tY29udHJvbDo6cGxhY2Vob2xkZXIsXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOjpwbGFjZWhvbGRlcixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuc2VsZWN0Mi1zZWxlY3Rpb246OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5mcm9udGVuZC1mb3JtIC5mb3JtLWNvbnRyb2w6ZGlzYWJsZWQsXG4uZnJvbnRlbmQtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOmRpc2FibGVkLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5mcm9udGVuZC1mb3JtIC5zZWxlY3QyLXNlbGVjdGlvbjpkaXNhYmxlZCxcbi5mcm9udGVuZC1mb3JtIC5mb3JtLWNvbnRyb2xbcmVhZG9ubHldLFxuLmZyb250ZW5kLWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IFtyZWFkb25seV0uc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmZyb250ZW5kLWZvcm0gW3JlYWRvbmx5XS5zZWxlY3QyLXNlbGVjdGlvbixcbi5jdXN0b21lci1mb3JtIC5mb3JtLWNvbnRyb2w6ZGlzYWJsZWQsXG4uY3VzdG9tZXItZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOmRpc2FibGVkLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5jdXN0b21lci1mb3JtIC5zZWxlY3QyLXNlbGVjdGlvbjpkaXNhYmxlZCxcbi5jdXN0b21lci1mb3JtIC5mb3JtLWNvbnRyb2xbcmVhZG9ubHldLFxuLmN1c3RvbWVyLWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IFtyZWFkb25seV0uc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmN1c3RvbWVyLWZvcm0gW3JlYWRvbmx5XS5zZWxlY3QyLXNlbGVjdGlvbixcbi5jaGVja291dC1mb3JtIC5mb3JtLWNvbnRyb2w6ZGlzYWJsZWQsXG4uY2hlY2tvdXQtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOmRpc2FibGVkLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5jaGVja291dC1mb3JtIC5zZWxlY3QyLXNlbGVjdGlvbjpkaXNhYmxlZCxcbi5jaGVja291dC1mb3JtIC5mb3JtLWNvbnRyb2xbcmVhZG9ubHldLFxuLmNoZWNrb3V0LWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IFtyZWFkb25seV0uc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmNoZWNrb3V0LWZvcm0gW3JlYWRvbmx5XS5zZWxlY3QyLXNlbGVjdGlvbixcbi5hY2NvdW50LWZvcm0gLmZvcm0tY29udHJvbDpkaXNhYmxlZCxcbi5hY2NvdW50LWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjpkaXNhYmxlZCxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuYWNjb3VudC1mb3JtIC5zZWxlY3QyLXNlbGVjdGlvbjpkaXNhYmxlZCxcbi5hY2NvdW50LWZvcm0gLmZvcm0tY29udHJvbFtyZWFkb25seV0sXG4uYWNjb3VudC1mb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCBbcmVhZG9ubHldLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5hY2NvdW50LWZvcm0gW3JlYWRvbmx5XS5zZWxlY3QyLXNlbGVjdGlvbixcbi5wcm9kdWN0LWZvcm0gLmZvcm0tY29udHJvbDpkaXNhYmxlZCxcbi5wcm9kdWN0LWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjpkaXNhYmxlZCxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucHJvZHVjdC1mb3JtIC5zZWxlY3QyLXNlbGVjdGlvbjpkaXNhYmxlZCxcbi5wcm9kdWN0LWZvcm0gLmZvcm0tY29udHJvbFtyZWFkb25seV0sXG4ucHJvZHVjdC1mb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCBbcmVhZG9ubHldLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wcm9kdWN0LWZvcm0gW3JlYWRvbmx5XS5zZWxlY3QyLXNlbGVjdGlvbixcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5mb3JtLWNvbnRyb2w6ZGlzYWJsZWQsXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOmRpc2FibGVkLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5zZWxlY3QyLXNlbGVjdGlvbjpkaXNhYmxlZCxcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5mb3JtLWNvbnRyb2xbcmVhZG9ubHldLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IFtyZWFkb25seV0uc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgW3JlYWRvbmx5XS5zZWxlY3QyLXNlbGVjdGlvbixcbi5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5mb3JtLWNvbnRyb2w6ZGlzYWJsZWQsXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOmRpc2FibGVkLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5zZWxlY3QyLXNlbGVjdGlvbjpkaXNhYmxlZCxcbi5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5mb3JtLWNvbnRyb2xbcmVhZG9ubHldLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IFtyZWFkb25seV0uc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gW3JlYWRvbmx5XS5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5mcm9udGVuZC1mb3JtIC5mb3JtLWNvbnRyb2wuZm9ybS1jb250cm9sLXNtLFxuLmZyb250ZW5kLWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5mb3JtLWNvbnRyb2wtc20uc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmZyb250ZW5kLWZvcm0gLmZvcm0tY29udHJvbC1zbS5zZWxlY3QyLXNlbGVjdGlvbixcbi5jdXN0b21lci1mb3JtIC5mb3JtLWNvbnRyb2wuZm9ybS1jb250cm9sLXNtLFxuLmN1c3RvbWVyLWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5mb3JtLWNvbnRyb2wtc20uc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmN1c3RvbWVyLWZvcm0gLmZvcm0tY29udHJvbC1zbS5zZWxlY3QyLXNlbGVjdGlvbixcbi5jaGVja291dC1mb3JtIC5mb3JtLWNvbnRyb2wuZm9ybS1jb250cm9sLXNtLFxuLmNoZWNrb3V0LWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5mb3JtLWNvbnRyb2wtc20uc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmNoZWNrb3V0LWZvcm0gLmZvcm0tY29udHJvbC1zbS5zZWxlY3QyLXNlbGVjdGlvbixcbi5hY2NvdW50LWZvcm0gLmZvcm0tY29udHJvbC5mb3JtLWNvbnRyb2wtc20sXG4uYWNjb3VudC1mb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuZm9ybS1jb250cm9sLXNtLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5hY2NvdW50LWZvcm0gLmZvcm0tY29udHJvbC1zbS5zZWxlY3QyLXNlbGVjdGlvbixcbi5wcm9kdWN0LWZvcm0gLmZvcm0tY29udHJvbC5mb3JtLWNvbnRyb2wtc20sXG4ucHJvZHVjdC1mb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuZm9ybS1jb250cm9sLXNtLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wcm9kdWN0LWZvcm0gLmZvcm0tY29udHJvbC1zbS5zZWxlY3QyLXNlbGVjdGlvbixcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5mb3JtLWNvbnRyb2wuZm9ybS1jb250cm9sLXNtLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5mb3JtLWNvbnRyb2wtc20uc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmZvcm0tY29udHJvbC1zbS5zZWxlY3QyLXNlbGVjdGlvbixcbi5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5mb3JtLWNvbnRyb2wuZm9ybS1jb250cm9sLXNtLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5mb3JtLWNvbnRyb2wtc20uc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLmZvcm0tY29udHJvbC1zbS5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gIGhlaWdodDogMzZweDtcbiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG5cbi5mcm9udGVuZC1mb3JtIC5mb3JtLWNvbnRyb2wuZm9ybS1jb250cm9sLWxnLFxuLmZyb250ZW5kLWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5mb3JtLWNvbnRyb2wtbGcuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmZyb250ZW5kLWZvcm0gLmZvcm0tY29udHJvbC1sZy5zZWxlY3QyLXNlbGVjdGlvbixcbi5jdXN0b21lci1mb3JtIC5mb3JtLWNvbnRyb2wuZm9ybS1jb250cm9sLWxnLFxuLmN1c3RvbWVyLWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5mb3JtLWNvbnRyb2wtbGcuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmN1c3RvbWVyLWZvcm0gLmZvcm0tY29udHJvbC1sZy5zZWxlY3QyLXNlbGVjdGlvbixcbi5jaGVja291dC1mb3JtIC5mb3JtLWNvbnRyb2wuZm9ybS1jb250cm9sLWxnLFxuLmNoZWNrb3V0LWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5mb3JtLWNvbnRyb2wtbGcuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmNoZWNrb3V0LWZvcm0gLmZvcm0tY29udHJvbC1sZy5zZWxlY3QyLXNlbGVjdGlvbixcbi5hY2NvdW50LWZvcm0gLmZvcm0tY29udHJvbC5mb3JtLWNvbnRyb2wtbGcsXG4uYWNjb3VudC1mb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuZm9ybS1jb250cm9sLWxnLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5hY2NvdW50LWZvcm0gLmZvcm0tY29udHJvbC1sZy5zZWxlY3QyLXNlbGVjdGlvbixcbi5wcm9kdWN0LWZvcm0gLmZvcm0tY29udHJvbC5mb3JtLWNvbnRyb2wtbGcsXG4ucHJvZHVjdC1mb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuZm9ybS1jb250cm9sLWxnLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wcm9kdWN0LWZvcm0gLmZvcm0tY29udHJvbC1sZy5zZWxlY3QyLXNlbGVjdGlvbixcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5mb3JtLWNvbnRyb2wuZm9ybS1jb250cm9sLWxnLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5mb3JtLWNvbnRyb2wtbGcuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmZvcm0tY29udHJvbC1sZy5zZWxlY3QyLXNlbGVjdGlvbixcbi5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5mb3JtLWNvbnRyb2wuZm9ybS1jb250cm9sLWxnLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5mb3JtLWNvbnRyb2wtbGcuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLmZvcm0tY29udHJvbC1sZy5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gIGhlaWdodDogNTBweDtcbiAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xufVxuXG4uZnJvbnRlbmQtZm9ybSB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wsXG4uZnJvbnRlbmQtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgdGV4dGFyZWEuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmZyb250ZW5kLWZvcm0gdGV4dGFyZWEuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uY3VzdG9tZXItZm9ybSB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wsXG4uY3VzdG9tZXItZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgdGV4dGFyZWEuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmN1c3RvbWVyLWZvcm0gdGV4dGFyZWEuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uY2hlY2tvdXQtZm9ybSB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wsXG4uY2hlY2tvdXQtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgdGV4dGFyZWEuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmNoZWNrb3V0LWZvcm0gdGV4dGFyZWEuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uYWNjb3VudC1mb3JtIHRleHRhcmVhLmZvcm0tY29udHJvbCxcbi5hY2NvdW50LWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IHRleHRhcmVhLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5hY2NvdW50LWZvcm0gdGV4dGFyZWEuc2VsZWN0Mi1zZWxlY3Rpb24sXG4ucHJvZHVjdC1mb3JtIHRleHRhcmVhLmZvcm0tY29udHJvbCxcbi5wcm9kdWN0LWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IHRleHRhcmVhLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wcm9kdWN0LWZvcm0gdGV4dGFyZWEuc2VsZWN0Mi1zZWxlY3Rpb24sXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wsXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgdGV4dGFyZWEuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgdGV4dGFyZWEuc2VsZWN0Mi1zZWxlY3Rpb24sXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wsXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgdGV4dGFyZWEuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gdGV4dGFyZWEuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICBoZWlnaHQ6IGF1dG87XG4gIG1pbi1oZWlnaHQ6IDEyMHB4O1xuICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG4uZnJvbnRlbmQtZm9ybSAuZm9ybS1zZWxlY3QsXG4uY3VzdG9tZXItZm9ybSAuZm9ybS1zZWxlY3QsXG4uY2hlY2tvdXQtZm9ybSAuZm9ybS1zZWxlY3QsXG4uYWNjb3VudC1mb3JtIC5mb3JtLXNlbGVjdCxcbi5wcm9kdWN0LWZvcm0gLmZvcm0tc2VsZWN0LFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmZvcm0tc2VsZWN0LFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLmZvcm0tc2VsZWN0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDQycHg7XG4gIHBhZGRpbmc6IDAuNDc1cmVtIDIuMjVyZW0gMC40NzVyZW0gMC44NXJlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzIxMjUyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNiclM2UlM2NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzMzQzYTQwJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMicgZD0nTTIgNWw2IDYgNi02Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAwLjc1cmVtIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxNnB4IDEycHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkYWQ5ZDk7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuXG4uZnJvbnRlbmQtZm9ybSAuZm9ybS1zZWxlY3Q6Zm9jdXMsXG4uY3VzdG9tZXItZm9ybSAuZm9ybS1zZWxlY3Q6Zm9jdXMsXG4uY2hlY2tvdXQtZm9ybSAuZm9ybS1zZWxlY3Q6Zm9jdXMsXG4uYWNjb3VudC1mb3JtIC5mb3JtLXNlbGVjdDpmb2N1cyxcbi5wcm9kdWN0LWZvcm0gLmZvcm0tc2VsZWN0OmZvY3VzLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmZvcm0tc2VsZWN0OmZvY3VzLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLmZvcm0tc2VsZWN0OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMUUxRTU2O1xuICBvdXRsaW5lOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMzAsIDMwLCA4NiwgMC4yNSk7XG59XG5cbi5mcm9udGVuZC1mb3JtIC5mb3JtLXNlbGVjdDpkaXNhYmxlZCxcbi5jdXN0b21lci1mb3JtIC5mb3JtLXNlbGVjdDpkaXNhYmxlZCxcbi5jaGVja291dC1mb3JtIC5mb3JtLXNlbGVjdDpkaXNhYmxlZCxcbi5hY2NvdW50LWZvcm0gLmZvcm0tc2VsZWN0OmRpc2FibGVkLFxuLnByb2R1Y3QtZm9ybSAuZm9ybS1zZWxlY3Q6ZGlzYWJsZWQsXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuZm9ybS1zZWxlY3Q6ZGlzYWJsZWQsXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuZm9ybS1zZWxlY3Q6ZGlzYWJsZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xufVxuXG4uZnJvbnRlbmQtZm9ybSAuZm9ybS1zZWxlY3QuZm9ybS1zZWxlY3Qtc20sXG4uY3VzdG9tZXItZm9ybSAuZm9ybS1zZWxlY3QuZm9ybS1zZWxlY3Qtc20sXG4uY2hlY2tvdXQtZm9ybSAuZm9ybS1zZWxlY3QuZm9ybS1zZWxlY3Qtc20sXG4uYWNjb3VudC1mb3JtIC5mb3JtLXNlbGVjdC5mb3JtLXNlbGVjdC1zbSxcbi5wcm9kdWN0LWZvcm0gLmZvcm0tc2VsZWN0LmZvcm0tc2VsZWN0LXNtLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmZvcm0tc2VsZWN0LmZvcm0tc2VsZWN0LXNtLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLmZvcm0tc2VsZWN0LmZvcm0tc2VsZWN0LXNtIHtcbiAgaGVpZ2h0OiAzNnB4O1xuICBwYWRkaW5nLXRvcDogMC4yNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuMjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuXG4uZnJvbnRlbmQtZm9ybSAuZm9ybS1zZWxlY3QuZm9ybS1zZWxlY3QtbGcsXG4uY3VzdG9tZXItZm9ybSAuZm9ybS1zZWxlY3QuZm9ybS1zZWxlY3QtbGcsXG4uY2hlY2tvdXQtZm9ybSAuZm9ybS1zZWxlY3QuZm9ybS1zZWxlY3QtbGcsXG4uYWNjb3VudC1mb3JtIC5mb3JtLXNlbGVjdC5mb3JtLXNlbGVjdC1sZyxcbi5wcm9kdWN0LWZvcm0gLmZvcm0tc2VsZWN0LmZvcm0tc2VsZWN0LWxnLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmZvcm0tc2VsZWN0LmZvcm0tc2VsZWN0LWxnLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLmZvcm0tc2VsZWN0LmZvcm0tc2VsZWN0LWxnIHtcbiAgaGVpZ2h0OiA1MHB4O1xuICBwYWRkaW5nLXRvcDogMC43NXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNzVyZW07XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbn1cblxuLmZyb250ZW5kLWZvcm0gLmZvcm0tY2hlY2ssXG4uY3VzdG9tZXItZm9ybSAuZm9ybS1jaGVjayxcbi5jaGVja291dC1mb3JtIC5mb3JtLWNoZWNrLFxuLmFjY291bnQtZm9ybSAuZm9ybS1jaGVjayxcbi5wcm9kdWN0LWZvcm0gLmZvcm0tY2hlY2ssXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuZm9ybS1jaGVjayxcbi5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5mb3JtLWNoZWNrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6IDEuNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAxLjVlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC4xMjVyZW07XG59XG5cbi5mcm9udGVuZC1mb3JtIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0LFxuLmN1c3RvbWVyLWZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXQsXG4uY2hlY2tvdXQtZm9ybSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dCxcbi5hY2NvdW50LWZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXQsXG4ucHJvZHVjdC1mb3JtIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0LFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXQsXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tbGVmdDogLTEuNWVtO1xufVxuXG4uZnJvbnRlbmQtZm9ybSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dFt0eXBlPWNoZWNrYm94XSxcbi5jdXN0b21lci1mb3JtIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0W3R5cGU9Y2hlY2tib3hdLFxuLmNoZWNrb3V0LWZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXRbdHlwZT1jaGVja2JveF0sXG4uYWNjb3VudC1mb3JtIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0W3R5cGU9Y2hlY2tib3hdLFxuLnByb2R1Y3QtZm9ybSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dFt0eXBlPWNoZWNrYm94XSxcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0W3R5cGU9Y2hlY2tib3hdLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXRbdHlwZT1jaGVja2JveF0ge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4uZnJvbnRlbmQtZm9ybSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dFt0eXBlPXJhZGlvXSxcbi5jdXN0b21lci1mb3JtIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0W3R5cGU9cmFkaW9dLFxuLmNoZWNrb3V0LWZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXRbdHlwZT1yYWRpb10sXG4uYWNjb3VudC1mb3JtIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0W3R5cGU9cmFkaW9dLFxuLnByb2R1Y3QtZm9ybSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dFt0eXBlPXJhZGlvXSxcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0W3R5cGU9cmFkaW9dLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXRbdHlwZT1yYWRpb10ge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbi5mcm9udGVuZC1mb3JtIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0OmNoZWNrZWQsXG4uY3VzdG9tZXItZm9ybSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dDpjaGVja2VkLFxuLmNoZWNrb3V0LWZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXQ6Y2hlY2tlZCxcbi5hY2NvdW50LWZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXQ6Y2hlY2tlZCxcbi5wcm9kdWN0LWZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXQ6Y2hlY2tlZCxcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0OmNoZWNrZWQsXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dDpjaGVja2VkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFFMUU1NjtcbiAgYm9yZGVyLWNvbG9yOiAjMUUxRTU2O1xufVxuXG4uZnJvbnRlbmQtZm9ybSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dDpmb2N1cyxcbi5jdXN0b21lci1mb3JtIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0OmZvY3VzLFxuLmNoZWNrb3V0LWZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXQ6Zm9jdXMsXG4uYWNjb3VudC1mb3JtIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0OmZvY3VzLFxuLnByb2R1Y3QtZm9ybSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dDpmb2N1cyxcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0OmZvY3VzLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXQ6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMxRTFFNTY7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgzMCwgMzAsIDg2LCAwLjI1KTtcbn1cblxuLmZyb250ZW5kLWZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXQ6ZGlzYWJsZWQsXG4uY3VzdG9tZXItZm9ybSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dDpkaXNhYmxlZCxcbi5jaGVja291dC1mb3JtIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0OmRpc2FibGVkLFxuLmFjY291bnQtZm9ybSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dDpkaXNhYmxlZCxcbi5wcm9kdWN0LWZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXQ6ZGlzYWJsZWQsXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dDpkaXNhYmxlZCxcbi5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0OmRpc2FibGVkIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGZpbHRlcjogbm9uZTtcbiAgb3BhY2l0eTogMC41O1xufVxuXG4uZnJvbnRlbmQtZm9ybSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dDpkaXNhYmxlZCB+IC5mb3JtLWNoZWNrLWxhYmVsLFxuLmN1c3RvbWVyLWZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXQ6ZGlzYWJsZWQgfiAuZm9ybS1jaGVjay1sYWJlbCxcbi5jaGVja291dC1mb3JtIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0OmRpc2FibGVkIH4gLmZvcm0tY2hlY2stbGFiZWwsXG4uYWNjb3VudC1mb3JtIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0OmRpc2FibGVkIH4gLmZvcm0tY2hlY2stbGFiZWwsXG4ucHJvZHVjdC1mb3JtIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0OmRpc2FibGVkIH4gLmZvcm0tY2hlY2stbGFiZWwsXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dDpkaXNhYmxlZCB+IC5mb3JtLWNoZWNrLWxhYmVsLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXQ6ZGlzYWJsZWQgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgb3BhY2l0eTogMC41O1xufVxuXG4uZnJvbnRlbmQtZm9ybSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1sYWJlbCxcbi5jdXN0b21lci1mb3JtIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWxhYmVsLFxuLmNoZWNrb3V0LWZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2stbGFiZWwsXG4uYWNjb3VudC1mb3JtIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWxhYmVsLFxuLnByb2R1Y3QtZm9ybSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1sYWJlbCxcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWxhYmVsLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2stbGFiZWwge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5mcm9udGVuZC1mb3JtIC5mb3JtLWNvbnRyb2wuaXMtdmFsaWQsXG4uZnJvbnRlbmQtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmlzLXZhbGlkLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5mcm9udGVuZC1mb3JtIC5pcy12YWxpZC5zZWxlY3QyLXNlbGVjdGlvbixcbi5mcm9udGVuZC1mb3JtIC5mb3JtLXNlbGVjdC5pcy12YWxpZCxcbi5jdXN0b21lci1mb3JtIC5mb3JtLWNvbnRyb2wuaXMtdmFsaWQsXG4uY3VzdG9tZXItZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmlzLXZhbGlkLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5jdXN0b21lci1mb3JtIC5pcy12YWxpZC5zZWxlY3QyLXNlbGVjdGlvbixcbi5jdXN0b21lci1mb3JtIC5mb3JtLXNlbGVjdC5pcy12YWxpZCxcbi5jaGVja291dC1mb3JtIC5mb3JtLWNvbnRyb2wuaXMtdmFsaWQsXG4uY2hlY2tvdXQtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmlzLXZhbGlkLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5jaGVja291dC1mb3JtIC5pcy12YWxpZC5zZWxlY3QyLXNlbGVjdGlvbixcbi5jaGVja291dC1mb3JtIC5mb3JtLXNlbGVjdC5pcy12YWxpZCxcbi5hY2NvdW50LWZvcm0gLmZvcm0tY29udHJvbC5pcy12YWxpZCxcbi5hY2NvdW50LWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5pcy12YWxpZC5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuYWNjb3VudC1mb3JtIC5pcy12YWxpZC5zZWxlY3QyLXNlbGVjdGlvbixcbi5hY2NvdW50LWZvcm0gLmZvcm0tc2VsZWN0LmlzLXZhbGlkLFxuLnByb2R1Y3QtZm9ybSAuZm9ybS1jb250cm9sLmlzLXZhbGlkLFxuLnByb2R1Y3QtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmlzLXZhbGlkLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wcm9kdWN0LWZvcm0gLmlzLXZhbGlkLnNlbGVjdDItc2VsZWN0aW9uLFxuLnByb2R1Y3QtZm9ybSAuZm9ybS1zZWxlY3QuaXMtdmFsaWQsXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuZm9ybS1jb250cm9sLmlzLXZhbGlkLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5pcy12YWxpZC5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuaXMtdmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb24sXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuZm9ybS1zZWxlY3QuaXMtdmFsaWQsXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuZm9ybS1jb250cm9sLmlzLXZhbGlkLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5pcy12YWxpZC5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuaXMtdmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb24sXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuZm9ybS1zZWxlY3QuaXMtdmFsaWQge1xuICBib3JkZXItY29sb3I6ICMxOTg3NTQ7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMS41ZW0gKyAwLjc1cmVtKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBmaWxsPSclMjMxOTg3NTQnIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLyUzZSUzYy9zdmclM2VcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNhbGMoMC4zNzVlbSArIDAuMTg3NXJlbSkgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNhbGMoMC43NWVtICsgMC4zNzVyZW0pIGNhbGMoMC43NWVtICsgMC4zNzVyZW0pO1xufVxuXG4uZnJvbnRlbmQtZm9ybSAuZm9ybS1jb250cm9sLmlzLXZhbGlkOmZvY3VzLFxuLmZyb250ZW5kLWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5pcy12YWxpZC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuZnJvbnRlbmQtZm9ybSAuaXMtdmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4uZnJvbnRlbmQtZm9ybSAuZm9ybS1zZWxlY3QuaXMtdmFsaWQ6Zm9jdXMsXG4uY3VzdG9tZXItZm9ybSAuZm9ybS1jb250cm9sLmlzLXZhbGlkOmZvY3VzLFxuLmN1c3RvbWVyLWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5pcy12YWxpZC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuY3VzdG9tZXItZm9ybSAuaXMtdmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4uY3VzdG9tZXItZm9ybSAuZm9ybS1zZWxlY3QuaXMtdmFsaWQ6Zm9jdXMsXG4uY2hlY2tvdXQtZm9ybSAuZm9ybS1jb250cm9sLmlzLXZhbGlkOmZvY3VzLFxuLmNoZWNrb3V0LWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5pcy12YWxpZC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuY2hlY2tvdXQtZm9ybSAuaXMtdmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4uY2hlY2tvdXQtZm9ybSAuZm9ybS1zZWxlY3QuaXMtdmFsaWQ6Zm9jdXMsXG4uYWNjb3VudC1mb3JtIC5mb3JtLWNvbnRyb2wuaXMtdmFsaWQ6Zm9jdXMsXG4uYWNjb3VudC1mb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuaXMtdmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmFjY291bnQtZm9ybSAuaXMtdmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4uYWNjb3VudC1mb3JtIC5mb3JtLXNlbGVjdC5pcy12YWxpZDpmb2N1cyxcbi5wcm9kdWN0LWZvcm0gLmZvcm0tY29udHJvbC5pcy12YWxpZDpmb2N1cyxcbi5wcm9kdWN0LWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5pcy12YWxpZC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucHJvZHVjdC1mb3JtIC5pcy12YWxpZC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5wcm9kdWN0LWZvcm0gLmZvcm0tc2VsZWN0LmlzLXZhbGlkOmZvY3VzLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmZvcm0tY29udHJvbC5pcy12YWxpZDpmb2N1cyxcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuaXMtdmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmlzLXZhbGlkLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmZvcm0tc2VsZWN0LmlzLXZhbGlkOmZvY3VzLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLmZvcm0tY29udHJvbC5pcy12YWxpZDpmb2N1cyxcbi5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuaXMtdmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLmlzLXZhbGlkLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLmZvcm0tc2VsZWN0LmlzLXZhbGlkOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMTk4NzU0O1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjUsIDEzNSwgODQsIDAuMjUpO1xufVxuXG4uZnJvbnRlbmQtZm9ybSAuZm9ybS1jb250cm9sLmlzLWludmFsaWQsXG4uZnJvbnRlbmQtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmlzLWludmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmZyb250ZW5kLWZvcm0gLmlzLWludmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uZnJvbnRlbmQtZm9ybSAuZm9ybS1zZWxlY3QuaXMtaW52YWxpZCxcbi5jdXN0b21lci1mb3JtIC5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZCxcbi5jdXN0b21lci1mb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuaXMtaW52YWxpZC5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuY3VzdG9tZXItZm9ybSAuaXMtaW52YWxpZC5zZWxlY3QyLXNlbGVjdGlvbixcbi5jdXN0b21lci1mb3JtIC5mb3JtLXNlbGVjdC5pcy1pbnZhbGlkLFxuLmNoZWNrb3V0LWZvcm0gLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkLFxuLmNoZWNrb3V0LWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5pcy1pbnZhbGlkLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5jaGVja291dC1mb3JtIC5pcy1pbnZhbGlkLnNlbGVjdDItc2VsZWN0aW9uLFxuLmNoZWNrb3V0LWZvcm0gLmZvcm0tc2VsZWN0LmlzLWludmFsaWQsXG4uYWNjb3VudC1mb3JtIC5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZCxcbi5hY2NvdW50LWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5pcy1pbnZhbGlkLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5hY2NvdW50LWZvcm0gLmlzLWludmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uYWNjb3VudC1mb3JtIC5mb3JtLXNlbGVjdC5pcy1pbnZhbGlkLFxuLnByb2R1Y3QtZm9ybSAuZm9ybS1jb250cm9sLmlzLWludmFsaWQsXG4ucHJvZHVjdC1mb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuaXMtaW52YWxpZC5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucHJvZHVjdC1mb3JtIC5pcy1pbnZhbGlkLnNlbGVjdDItc2VsZWN0aW9uLFxuLnByb2R1Y3QtZm9ybSAuZm9ybS1zZWxlY3QuaXMtaW52YWxpZCxcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZCxcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuaXMtaW52YWxpZC5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuaXMtaW52YWxpZC5zZWxlY3QyLXNlbGVjdGlvbixcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5mb3JtLXNlbGVjdC5pcy1pbnZhbGlkLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5pcy1pbnZhbGlkLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC5pcy1pbnZhbGlkLnNlbGVjdDItc2VsZWN0aW9uLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLmZvcm0tc2VsZWN0LmlzLWludmFsaWQge1xuICBib3JkZXItY29sb3I6ICNkYzM1NDU7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMS41ZW0gKyAwLjc1cmVtKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxMiAxMicgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyBmaWxsPSdub25lJyBzdHJva2U9JyUyM2RjMzU0NSclM2UlM2NjaXJjbGUgY3g9JzYnIGN5PSc2JyByPSc0LjUnLyUzZSUzY3BhdGggc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgZD0nTTUuOCAzLjZoLjRMNiA2LjV6Jy8lM2UlM2NjaXJjbGUgY3g9JzYnIGN5PSc4LjInIHI9Jy42JyBmaWxsPSclMjNkYzM1NDUnIHN0cm9rZT0nbm9uZScvJTNlJTNjL3N2ZyUzZVwiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2FsYygwLjM3NWVtICsgMC4xODc1cmVtKSBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY2FsYygwLjc1ZW0gKyAwLjM3NXJlbSkgY2FsYygwLjc1ZW0gKyAwLjM3NXJlbSk7XG59XG5cbi5mcm9udGVuZC1mb3JtIC5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZDpmb2N1cyxcbi5mcm9udGVuZC1mb3JtIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuaXMtaW52YWxpZC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuZnJvbnRlbmQtZm9ybSAuaXMtaW52YWxpZC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5mcm9udGVuZC1mb3JtIC5mb3JtLXNlbGVjdC5pcy1pbnZhbGlkOmZvY3VzLFxuLmN1c3RvbWVyLWZvcm0gLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkOmZvY3VzLFxuLmN1c3RvbWVyLWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5pcy1pbnZhbGlkLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5jdXN0b21lci1mb3JtIC5pcy1pbnZhbGlkLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLmN1c3RvbWVyLWZvcm0gLmZvcm0tc2VsZWN0LmlzLWludmFsaWQ6Zm9jdXMsXG4uY2hlY2tvdXQtZm9ybSAuZm9ybS1jb250cm9sLmlzLWludmFsaWQ6Zm9jdXMsXG4uY2hlY2tvdXQtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmlzLWludmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmNoZWNrb3V0LWZvcm0gLmlzLWludmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4uY2hlY2tvdXQtZm9ybSAuZm9ybS1zZWxlY3QuaXMtaW52YWxpZDpmb2N1cyxcbi5hY2NvdW50LWZvcm0gLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkOmZvY3VzLFxuLmFjY291bnQtZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmlzLWludmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmFjY291bnQtZm9ybSAuaXMtaW52YWxpZC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5hY2NvdW50LWZvcm0gLmZvcm0tc2VsZWN0LmlzLWludmFsaWQ6Zm9jdXMsXG4ucHJvZHVjdC1mb3JtIC5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZDpmb2N1cyxcbi5wcm9kdWN0LWZvcm0gLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5pcy1pbnZhbGlkLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wcm9kdWN0LWZvcm0gLmlzLWludmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4ucHJvZHVjdC1mb3JtIC5mb3JtLXNlbGVjdC5pcy1pbnZhbGlkOmZvY3VzLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkOmZvY3VzLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5pcy1pbnZhbGlkLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5pcy1pbnZhbGlkLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmZvcm0tc2VsZWN0LmlzLWludmFsaWQ6Zm9jdXMsXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuZm9ybS1jb250cm9sLmlzLWludmFsaWQ6Zm9jdXMsXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmlzLWludmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLmlzLWludmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuZm9ybS1zZWxlY3QuaXMtaW52YWxpZDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDIyMCwgNTMsIDY5LCAwLjI1KTtcbn1cblxuLmZyb250ZW5kLWZvcm0gLmludmFsaWQtZmVlZGJhY2ssXG4uZnJvbnRlbmQtZm9ybSAuZXJyb3ItaGVscC1ibG9jayxcbi5mcm9udGVuZC1mb3JtIC52YWxpZC1mZWVkYmFjayxcbi5jdXN0b21lci1mb3JtIC5pbnZhbGlkLWZlZWRiYWNrLFxuLmN1c3RvbWVyLWZvcm0gLmVycm9yLWhlbHAtYmxvY2ssXG4uY3VzdG9tZXItZm9ybSAudmFsaWQtZmVlZGJhY2ssXG4uY2hlY2tvdXQtZm9ybSAuaW52YWxpZC1mZWVkYmFjayxcbi5jaGVja291dC1mb3JtIC5lcnJvci1oZWxwLWJsb2NrLFxuLmNoZWNrb3V0LWZvcm0gLnZhbGlkLWZlZWRiYWNrLFxuLmFjY291bnQtZm9ybSAuaW52YWxpZC1mZWVkYmFjayxcbi5hY2NvdW50LWZvcm0gLmVycm9yLWhlbHAtYmxvY2ssXG4uYWNjb3VudC1mb3JtIC52YWxpZC1mZWVkYmFjayxcbi5wcm9kdWN0LWZvcm0gLmludmFsaWQtZmVlZGJhY2ssXG4ucHJvZHVjdC1mb3JtIC5lcnJvci1oZWxwLWJsb2NrLFxuLnByb2R1Y3QtZm9ybSAudmFsaWQtZmVlZGJhY2ssXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuaW52YWxpZC1mZWVkYmFjayxcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5lcnJvci1oZWxwLWJsb2NrLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLnZhbGlkLWZlZWRiYWNrLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLmludmFsaWQtZmVlZGJhY2ssXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuZXJyb3ItaGVscC1ibG9jayxcbi5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC52YWxpZC1mZWVkYmFjayB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xuICBmb250LXNpemU6IDAuODc1ZW07XG59XG5cbi5mcm9udGVuZC1mb3JtIC5pbnZhbGlkLWZlZWRiYWNrLFxuLmZyb250ZW5kLWZvcm0gLmVycm9yLWhlbHAtYmxvY2ssXG4uY3VzdG9tZXItZm9ybSAuaW52YWxpZC1mZWVkYmFjayxcbi5jdXN0b21lci1mb3JtIC5lcnJvci1oZWxwLWJsb2NrLFxuLmNoZWNrb3V0LWZvcm0gLmludmFsaWQtZmVlZGJhY2ssXG4uY2hlY2tvdXQtZm9ybSAuZXJyb3ItaGVscC1ibG9jayxcbi5hY2NvdW50LWZvcm0gLmludmFsaWQtZmVlZGJhY2ssXG4uYWNjb3VudC1mb3JtIC5lcnJvci1oZWxwLWJsb2NrLFxuLnByb2R1Y3QtZm9ybSAuaW52YWxpZC1mZWVkYmFjayxcbi5wcm9kdWN0LWZvcm0gLmVycm9yLWhlbHAtYmxvY2ssXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuaW52YWxpZC1mZWVkYmFjayxcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5lcnJvci1oZWxwLWJsb2NrLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLmludmFsaWQtZmVlZGJhY2ssXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuZXJyb3ItaGVscC1ibG9jayB7XG4gIGNvbG9yOiAjZGMzNTQ1O1xufVxuXG4uZnJvbnRlbmQtZm9ybSAudmFsaWQtZmVlZGJhY2ssXG4uY3VzdG9tZXItZm9ybSAudmFsaWQtZmVlZGJhY2ssXG4uY2hlY2tvdXQtZm9ybSAudmFsaWQtZmVlZGJhY2ssXG4uYWNjb3VudC1mb3JtIC52YWxpZC1mZWVkYmFjayxcbi5wcm9kdWN0LWZvcm0gLnZhbGlkLWZlZWRiYWNrLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLnZhbGlkLWZlZWRiYWNrLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLnZhbGlkLWZlZWRiYWNrIHtcbiAgY29sb3I6ICMxOTg3NTQ7XG59XG5cbi5mcm9udGVuZC1mb3JtIC5pcy1pbnZhbGlkIH4gLmludmFsaWQtZmVlZGJhY2ssXG4uZnJvbnRlbmQtZm9ybSAuaXMtaW52YWxpZCB+IC5lcnJvci1oZWxwLWJsb2NrLFxuLmZyb250ZW5kLWZvcm0gLndhcy12YWxpZGF0ZWQgOmludmFsaWQgfiAuaW52YWxpZC1mZWVkYmFjayxcbi5mcm9udGVuZC1mb3JtIC53YXMtdmFsaWRhdGVkIDppbnZhbGlkIH4gLmVycm9yLWhlbHAtYmxvY2ssXG4uY3VzdG9tZXItZm9ybSAuaXMtaW52YWxpZCB+IC5pbnZhbGlkLWZlZWRiYWNrLFxuLmN1c3RvbWVyLWZvcm0gLmlzLWludmFsaWQgfiAuZXJyb3ItaGVscC1ibG9jayxcbi5jdXN0b21lci1mb3JtIC53YXMtdmFsaWRhdGVkIDppbnZhbGlkIH4gLmludmFsaWQtZmVlZGJhY2ssXG4uY3VzdG9tZXItZm9ybSAud2FzLXZhbGlkYXRlZCA6aW52YWxpZCB+IC5lcnJvci1oZWxwLWJsb2NrLFxuLmNoZWNrb3V0LWZvcm0gLmlzLWludmFsaWQgfiAuaW52YWxpZC1mZWVkYmFjayxcbi5jaGVja291dC1mb3JtIC5pcy1pbnZhbGlkIH4gLmVycm9yLWhlbHAtYmxvY2ssXG4uY2hlY2tvdXQtZm9ybSAud2FzLXZhbGlkYXRlZCA6aW52YWxpZCB+IC5pbnZhbGlkLWZlZWRiYWNrLFxuLmNoZWNrb3V0LWZvcm0gLndhcy12YWxpZGF0ZWQgOmludmFsaWQgfiAuZXJyb3ItaGVscC1ibG9jayxcbi5hY2NvdW50LWZvcm0gLmlzLWludmFsaWQgfiAuaW52YWxpZC1mZWVkYmFjayxcbi5hY2NvdW50LWZvcm0gLmlzLWludmFsaWQgfiAuZXJyb3ItaGVscC1ibG9jayxcbi5hY2NvdW50LWZvcm0gLndhcy12YWxpZGF0ZWQgOmludmFsaWQgfiAuaW52YWxpZC1mZWVkYmFjayxcbi5hY2NvdW50LWZvcm0gLndhcy12YWxpZGF0ZWQgOmludmFsaWQgfiAuZXJyb3ItaGVscC1ibG9jayxcbi5wcm9kdWN0LWZvcm0gLmlzLWludmFsaWQgfiAuaW52YWxpZC1mZWVkYmFjayxcbi5wcm9kdWN0LWZvcm0gLmlzLWludmFsaWQgfiAuZXJyb3ItaGVscC1ibG9jayxcbi5wcm9kdWN0LWZvcm0gLndhcy12YWxpZGF0ZWQgOmludmFsaWQgfiAuaW52YWxpZC1mZWVkYmFjayxcbi5wcm9kdWN0LWZvcm0gLndhcy12YWxpZGF0ZWQgOmludmFsaWQgfiAuZXJyb3ItaGVscC1ibG9jayxcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5pcy1pbnZhbGlkIH4gLmludmFsaWQtZmVlZGJhY2ssXG4ubWFpbiBmb3JtOm5vdCguc2VhcmNoLWZvcm0pOm5vdCguaGVhZGVyLXNlYXJjaC1mb3JtKSAuaXMtaW52YWxpZCB+IC5lcnJvci1oZWxwLWJsb2NrLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLndhcy12YWxpZGF0ZWQgOmludmFsaWQgfiAuaW52YWxpZC1mZWVkYmFjayxcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC53YXMtdmFsaWRhdGVkIDppbnZhbGlkIH4gLmVycm9yLWhlbHAtYmxvY2ssXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuaXMtaW52YWxpZCB+IC5pbnZhbGlkLWZlZWRiYWNrLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLmlzLWludmFsaWQgfiAuZXJyb3ItaGVscC1ibG9jayxcbi5tb2RhbDpub3QoLmFkbWluLW1vZGFsKSBmb3JtIC53YXMtdmFsaWRhdGVkIDppbnZhbGlkIH4gLmludmFsaWQtZmVlZGJhY2ssXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAud2FzLXZhbGlkYXRlZCA6aW52YWxpZCB+IC5lcnJvci1oZWxwLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5mcm9udGVuZC1mb3JtIC5pcy12YWxpZCB+IC52YWxpZC1mZWVkYmFjayxcbi5mcm9udGVuZC1mb3JtIC53YXMtdmFsaWRhdGVkIDp2YWxpZCB+IC52YWxpZC1mZWVkYmFjayxcbi5jdXN0b21lci1mb3JtIC5pcy12YWxpZCB+IC52YWxpZC1mZWVkYmFjayxcbi5jdXN0b21lci1mb3JtIC53YXMtdmFsaWRhdGVkIDp2YWxpZCB+IC52YWxpZC1mZWVkYmFjayxcbi5jaGVja291dC1mb3JtIC5pcy12YWxpZCB+IC52YWxpZC1mZWVkYmFjayxcbi5jaGVja291dC1mb3JtIC53YXMtdmFsaWRhdGVkIDp2YWxpZCB+IC52YWxpZC1mZWVkYmFjayxcbi5hY2NvdW50LWZvcm0gLmlzLXZhbGlkIH4gLnZhbGlkLWZlZWRiYWNrLFxuLmFjY291bnQtZm9ybSAud2FzLXZhbGlkYXRlZCA6dmFsaWQgfiAudmFsaWQtZmVlZGJhY2ssXG4ucHJvZHVjdC1mb3JtIC5pcy12YWxpZCB+IC52YWxpZC1mZWVkYmFjayxcbi5wcm9kdWN0LWZvcm0gLndhcy12YWxpZGF0ZWQgOnZhbGlkIH4gLnZhbGlkLWZlZWRiYWNrLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLmlzLXZhbGlkIH4gLnZhbGlkLWZlZWRiYWNrLFxuLm1haW4gZm9ybTpub3QoLnNlYXJjaC1mb3JtKTpub3QoLmhlYWRlci1zZWFyY2gtZm9ybSkgLndhcy12YWxpZGF0ZWQgOnZhbGlkIH4gLnZhbGlkLWZlZWRiYWNrLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLmlzLXZhbGlkIH4gLnZhbGlkLWZlZWRiYWNrLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0gLndhcy12YWxpZGF0ZWQgOnZhbGlkIH4gLnZhbGlkLWZlZWRiYWNrIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5mcm9udGVuZC1mb3JtIC5mb3JtLXRleHQsXG4uY3VzdG9tZXItZm9ybSAuZm9ybS10ZXh0LFxuLmNoZWNrb3V0LWZvcm0gLmZvcm0tdGV4dCxcbi5hY2NvdW50LWZvcm0gLmZvcm0tdGV4dCxcbi5wcm9kdWN0LWZvcm0gLmZvcm0tdGV4dCxcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pIC5mb3JtLXRleHQsXG4ubW9kYWw6bm90KC5hZG1pbi1tb2RhbCkgZm9ybSAuZm9ybS10ZXh0IHtcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xuICBjb2xvcjogIzZjNzU3ZDtcbn1cblxuLmlucHV0LWdyb3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbCxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuaW5wdXQtZ3JvdXAgPiAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1zZWxlY3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICB3aWR0aDogMSU7XG4gIG1pbi13aWR0aDogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbDpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuaW5wdXQtZ3JvdXAgPiAuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1zZWxlY3Q6Zm9jdXMge1xuICB6LWluZGV4OiAzO1xufVxuXG4uaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLXRleHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAwLjQ3NXJlbSAwLjg1cmVtO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkYWQ5ZDk7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA1IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA1IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUsXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUsXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIHtcbiAgaGVpZ2h0OiA0MnB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGFkOWQ5O1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNSAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZTpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlOmZvY3VzLFxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlOmZvY3VzLFxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGU6Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGU6Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzFFMUU1NjtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDMwLCAzMCwgODYsIDAuMjUpO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDUgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUsXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xuICBwYWRkaW5nOiAwLjQ3NXJlbSAwLjg1cmVtO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDUgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCxcbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNSAuc2VsZWN0Mi1kcm9wZG93bixcbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1kcm9wZG93bixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1kcm9wZG93biB7XG4gIGJvcmRlci1jb2xvcjogI2RhZDlkOTtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDUgLnNlbGVjdDItc2VhcmNoLS1kcm9wZG93biAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLFxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24gLnNlbGVjdDItc2VhcmNoX19maWVsZCxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGFkOWQ5O1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5kcm9wZG93biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmRyb3Bkb3duIC5kcm9wZG93bi1tZW51IHtcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMHZ3IC0gNDBweCk7XG59XG5cbi5kcm9wZG93biAuZHJvcGRvd24tbWVudS5ub3RpZmljYXRpb25Ecm9wZG93biB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5kcm9wZG93biAuZHJvcGRvd24tbWVudS5ub3RpZmljYXRpb25Ecm9wZG93biAubm90aWZpY2F0aW9uLWxpc3Qge1xuICBtYXgtaGVpZ2h0OiA0MDBweDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xufVxuXG4udG9wLXVzZXItcHJvZmlsZSAuZHJvcGRvd24tbWVudSB7XG4gIG1pbi13aWR0aDogMjAwcHg7XG59XG5cbi5oZWFkZXItY2FydC13cmFwcGVyIC5kcm9wZG93bi1tZW51IHtcbiAgbWluLXdpZHRoOiAzMjBweDtcbn1cblxuLmhlYWRlci1jYXJ0LXdyYXBwZXIgLmRyb3Bkb3duLW1lbnUgLmNhcnQtZHJvcGRvd24tY29udGVudCB7XG4gIG1heC1oZWlnaHQ6IDQwMHB4O1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmRyb3Bkb3duIC5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDtcbiAgICBsZWZ0OiAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDEwcHggIWltcG9ydGFudDtcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxufVxuXG4uZHJvcGRvd24tbWVudSB7XG4gIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgXCJTb3VyY2UgU2FucyBQcm9cIiwgc2Fucy1zZXJpZjtcbn1cblxuLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW0ge1xuICBmb250LWZhbWlseTogXCJQb3BwaW5zXCIsIFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgY29sb3I6ICMzMzM7XG59XG5cbi5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1pdGVtIGkge1xuICB3aWR0aDogMjBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbTpob3Zlcixcbi5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1pdGVtOmZvY3VzIHtcbiAgY29sb3I6ICMwMDA7XG59XG5cbi5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1oZWFkZXIge1xuICBmb250LWZhbWlseTogXCJQb3BwaW5zXCIsIFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICBjb2xvcjogIzZjNzU3ZDtcbn1cblxuLnRvcC11c2VyLXByb2ZpbGUgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW0ge1xuICBwYWRkaW5nOiAwLjVyZW0gMS4yNXJlbTtcbn1cblxuLm5vdGlmaWNhdGlvbkRyb3Bkb3duIC5kcm9wZG93bi1oZWFkZXIge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICBjb2xvcjogIzMzMztcbn1cblxuLm5vdGlmaWNhdGlvbkRyb3Bkb3duIC5kcm9wZG93bi1oZWFkZXIgLmJ0bi1saW5rIHtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG4ubm90aWZpY2F0aW9uRHJvcGRvd24gLmZyb250ZW5kLW5vdGlmaWNhdGlvbi1pdGVtIGg1LFxuLm5vdGlmaWNhdGlvbkRyb3Bkb3duIC5mcm9udGVuZC1ub3RpZmljYXRpb24taXRlbSAuaDUge1xuICBmb250LWZhbWlseTogXCJQb3BwaW5zXCIsIFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbn1cblxuLm5vdGlmaWNhdGlvbkRyb3Bkb3duIC5mcm9udGVuZC1ub3RpZmljYXRpb24taXRlbSBoNS5mdy1ib2xkLFxuLm5vdGlmaWNhdGlvbkRyb3Bkb3duIC5mcm9udGVuZC1ub3RpZmljYXRpb24taXRlbSAuZnctYm9sZC5oNSB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5ub3RpZmljYXRpb25Ecm9wZG93biAuZnJvbnRlbmQtbm90aWZpY2F0aW9uLWl0ZW0gcCB7XG4gIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgXCJTb3VyY2UgU2FucyBQcm9cIiwgc2Fucy1zZXJpZjtcbn1cblxuLm5vdGlmaWNhdGlvbkRyb3Bkb3duIC5mcm9udGVuZC1ub3RpZmljYXRpb24taXRlbSBwLnNtYWxsIHtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4ubm90aWZpY2F0aW9uRHJvcGRvd24gLmZyb250ZW5kLW5vdGlmaWNhdGlvbi1pdGVtIHAuc21hbGw6bGFzdC1jaGlsZCB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgb3BhY2l0eTogMC44O1xufVxuXG4ubm90aWZpY2F0aW9uRHJvcGRvd24gLmRyb3Bkb3duLWl0ZW0udGV4dC1jZW50ZXIge1xuICBmb250LXNpemU6IDEzcHg7XG59XG5cbi5oZWFkZXItY2FydC13cmFwcGVyIC5kcm9wZG93bi1tZW51IC5jYXJ0LWl0ZW0ge1xuICBmb250LWZhbWlseTogXCJQb3BwaW5zXCIsIFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG59XG5cbi5oZWFkZXItY2FydC13cmFwcGVyIC5kcm9wZG93bi1tZW51IC5jYXJ0LWl0ZW0gLml0ZW0tbmFtZSB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgY29sb3I6ICMzMzM7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmhlYWRlci1jYXJ0LXdyYXBwZXIgLmRyb3Bkb3duLW1lbnUgLmNhcnQtaXRlbSAuaXRlbS1uYW1lOmhvdmVyIHtcbiAgY29sb3I6ICMwMDA7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uaGVhZGVyLWNhcnQtd3JhcHBlciAuZHJvcGRvd24tbWVudSAuY2FydC1pdGVtIC5pdGVtLWRldGFpbHMge1xuICBmb250LXNpemU6IDEzcHg7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBsaW5lLWhlaWdodDogMS40O1xufVxuXG4uaGVhZGVyLWNhcnQtd3JhcHBlciAuZHJvcGRvd24tbWVudSAuY2FydC1pdGVtIC5pdGVtLWRldGFpbHMgLml0ZW0tcHJpY2Uge1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogIzMzMztcbn1cblxuLmhlYWRlci1jYXJ0LXdyYXBwZXIgLmRyb3Bkb3duLW1lbnUgLmNhcnQtaXRlbSAuaXRlbS1kZXRhaWxzIC5pdGVtLXR5cGUge1xuICBmb250LXNpemU6IDEycHg7XG59XG5cbi5oZWFkZXItY2FydC13cmFwcGVyIC5kcm9wZG93bi1tZW51IC5jYXJ0LWl0ZW0gLnF1YW50aXR5LWNvbnRyb2xzIHtcbiAgZm9udC1zaXplOiAxM3B4O1xufVxuXG4uaGVhZGVyLWNhcnQtd3JhcHBlciAuZHJvcGRvd24tbWVudSAuY2FydC1pdGVtIC5xdWFudGl0eS1jb250cm9scyBpbnB1dCB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBcIlNvdXJjZSBTYW5zIFByb1wiLCBzYW5zLXNlcmlmO1xufVxuXG4uaGVhZGVyLWNhcnQtd3JhcHBlciAuZHJvcGRvd24tbWVudSAuY2FydC1zdW1tYXJ5IGg2LFxuLmhlYWRlci1jYXJ0LXdyYXBwZXIgLmRyb3Bkb3duLW1lbnUgLmNhcnQtc3VtbWFyeSAuaDYge1xuICBmb250LWZhbWlseTogXCJQb3BwaW5zXCIsIFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xufVxuXG4uaGVhZGVyLWNhcnQtd3JhcHBlciAuZHJvcGRvd24tbWVudSAuY2FydC1zdW1tYXJ5IC5zdWJ0b3RhbC1yb3cge1xuICBmb250LXNpemU6IDE0cHg7XG59XG5cbi5oZWFkZXItY2FydC13cmFwcGVyIC5kcm9wZG93bi1tZW51IC5jYXJ0LXN1bW1hcnkgLnN1YnRvdGFsLXJvdyAuc3VidG90YWwtbGFiZWwge1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG4uaGVhZGVyLWNhcnQtd3JhcHBlciAuZHJvcGRvd24tbWVudSAuY2FydC1zdW1tYXJ5IC5zdWJ0b3RhbC1yb3cgLnN1YnRvdGFsLWFtb3VudCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5oZWFkZXItY2FydC13cmFwcGVyIC5kcm9wZG93bi1tZW51IC5idG4ge1xuICBmb250LWZhbWlseTogXCJQb3BwaW5zXCIsIFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuLmhlYWRlci1jYXJ0LXdyYXBwZXIgLmRyb3Bkb3duLW1lbnUgLmVtcHR5LWNhcnQtbWVzc2FnZSB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLmhlYWRlci1jYXJ0LXdyYXBwZXIgLmRyb3Bkb3duLW1lbnUgLmVtcHR5LWNhcnQtbWVzc2FnZSBpIHtcbiAgZm9udC1zaXplOiAzMnB4O1xufVxuXG4uaGVhZGVyLWNhcnQtd3JhcHBlciAuZHJvcGRvd24tbWVudSAuY2FydC1sb2FkaW5nIHAge1xuICBmb250LXNpemU6IDEzcHg7XG59XG5cbi5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1kaXZpZGVyIHtcbiAgbWFyZ2luOiAwLjVyZW0gMDtcbn1cblxuLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW0uZGlzYWJsZWQsXG4uZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbTpkaXNhYmxlZCB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgb3BhY2l0eTogMC42O1xufVxuXG4uZHJvcGRvd24tbWVudSAuc21hbGwge1xuICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbn1cblxuLmRyb3Bkb3duLW1lbnUgLnRleHQtbXV0ZWQge1xuICBjb2xvcjogIzZjNzU3ZCAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW0ge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBwYWRkaW5nOiAwLjc1cmVtIDEuMjVyZW07XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24taGVhZGVyIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gIH1cblxuICAubm90aWZpY2F0aW9uRHJvcGRvd24gLmZyb250ZW5kLW5vdGlmaWNhdGlvbi1pdGVtIGg1LFxuICAubm90aWZpY2F0aW9uRHJvcGRvd24gLmZyb250ZW5kLW5vdGlmaWNhdGlvbi1pdGVtIC5oNSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICB9XG5cbiAgLm5vdGlmaWNhdGlvbkRyb3Bkb3duIC5mcm9udGVuZC1ub3RpZmljYXRpb24taXRlbSBwLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gIH1cblxuICAuaGVhZGVyLWNhcnQtd3JhcHBlciAuZHJvcGRvd24tbWVudSAuaXRlbS1uYW1lIHtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gIH1cblxuICAuaGVhZGVyLWNhcnQtd3JhcHBlciAuZHJvcGRvd24tbWVudSAuaXRlbS1kZXRhaWxzIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gIH1cbn1cblxuLndpc2hsaXN0LXRvZ2dsZS1idG4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG59XG5cbi53aXNobGlzdC10b2dnbGUtYnRuOm5vdCgud2lzaGxpc3RlZCkge1xuICBib3JkZXI6IDJweCBzb2xpZCAjNmM3NTdkO1xuICBjb2xvcjogI2RjMzU0NTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuLndpc2hsaXN0LXRvZ2dsZS1idG46bm90KC53aXNobGlzdGVkKTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gIGJvcmRlci1jb2xvcjogIzVhNjI2ODtcbiAgY29sb3I6ICNkYzM1NDU7XG59XG5cbi53aXNobGlzdC10b2dnbGUtYnRuOm5vdCgud2lzaGxpc3RlZCk6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxMDgsIDExNywgMTI1LCAwLjI1KTtcbn1cblxuLndpc2hsaXN0LXRvZ2dsZS1idG4ud2lzaGxpc3RlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNkYzM1NDU7XG4gIGNvbG9yOiAjZGMzNTQ1O1xufVxuXG4ud2lzaGxpc3QtdG9nZ2xlLWJ0bi53aXNobGlzdGVkOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZWVmMDtcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xuICBjb2xvcjogI2RjMzU0NTtcbn1cblxuLndpc2hsaXN0LXRvZ2dsZS1idG4ud2lzaGxpc3RlZDpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyMCwgNTMsIDY5LCAwLjI1KTtcbn1cblxuLndpc2hsaXN0LXRvZ2dsZS1idG4ud2lzaGxpc3QtbG9hZGluZyB7XG4gIG9wYWNpdHk6IDAuNztcbiAgY3Vyc29yOiB3YWl0O1xufVxuXG4ud2lzaGxpc3QtdG9nZ2xlLWJ0biBpIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZTtcbn1cblxuLndpc2hsaXN0LXRvZ2dsZS1idG4gaS53aXNobGlzdC1wdWxzZSB7XG4gIGFuaW1hdGlvbjogd2lzaGxpc3QtcHVsc2UgMC41cyBlYXNlO1xufVxuXG4ud2lzaGxpc3QtdG9nZ2xlLWJ0bi5idG4tbGcsXG4uYnRuLWdyb3VwLWxnID4gLndpc2hsaXN0LXRvZ2dsZS1idG4uYnRuIHtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgcGFkZGluZzogMC42cmVtIDEuNXJlbTtcbn1cblxuLndpc2hsaXN0LXRvZ2dsZS1idG4uYnRuLWxnIGksXG4uYnRuLWdyb3VwLWxnID4gLndpc2hsaXN0LXRvZ2dsZS1idG4uYnRuIGkge1xuICBtYXJnaW4tcmlnaHQ6IDAuMzc1cmVtO1xufVxuXG4ud2lzaGxpc3QtdG9nZ2xlLWJ0bi5idG4tc20sXG4uYnRuLWdyb3VwLXNtID4gLndpc2hsaXN0LXRvZ2dsZS1idG4uYnRuIHtcbiAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTtcbn1cblxuQGtleWZyYW1lcyB3aXNobGlzdC1wdWxzZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG5cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMyk7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG59XG5cbi5wcm9kdWN0LWNhcmQtZ3JpZCAud2lzaGxpc3QtdG9nZ2xlLWJ0biB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwLjVyZW07XG4gIHJpZ2h0OiAwLjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbn1cblxuLnByb2R1Y3QtY2FyZC1ncmlkIC53aXNobGlzdC10b2dnbGUtYnRuOm5vdCgud2lzaGxpc3RlZCkge1xuICBib3JkZXItY29sb3I6ICM2Yzc1N2Q7XG4gIGNvbG9yOiAjZGMzNTQ1O1xufVxuXG4ucHJvZHVjdC1jYXJkLWdyaWQgLndpc2hsaXN0LXRvZ2dsZS1idG46bm90KC53aXNobGlzdGVkKTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gIGJvcmRlci1jb2xvcjogIzVhNjI2ODtcbiAgY29sb3I6ICNkYzM1NDU7XG59XG5cbi5wcm9kdWN0LWNhcmQtZ3JpZCAud2lzaGxpc3QtdG9nZ2xlLWJ0bi53aXNobGlzdGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xuICBjb2xvcjogI2RjMzU0NTtcbn1cblxuLnByb2R1Y3QtY2FyZC1ncmlkIC53aXNobGlzdC10b2dnbGUtYnRuLndpc2hsaXN0ZWQgaSB7XG4gIGNvbG9yOiAjZGMzNTQ1O1xufVxuXG4ucHJvZHVjdC1jYXJkLWxpc3QgLndpc2hsaXN0LXRvZ2dsZS1idG4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG5cbi53aXNobGlzdC1kcm9wZG93bi1jb250ZW50IC53aXNobGlzdC10b2dnbGUtYnRuIHtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG5cbi5maWx0ZXItZm9ybSAuZmlsdGVyLWF1dG9jb21wbGV0ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmZpbHRlci1mb3JtIC5maWx0ZXItYXV0b2NvbXBsZXRlIC5maWx0ZXItaW5wdXQtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmZpbHRlci1mb3JtIC5maWx0ZXItYXV0b2NvbXBsZXRlIC5maWx0ZXItaW5wdXQtd3JhcHBlciAuZmlsdGVyLXNlYXJjaC1pbnB1dCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcbn1cblxuLmZpbHRlci1mb3JtIC5maWx0ZXItYXV0b2NvbXBsZXRlIC5maWx0ZXItaW5wdXQtd3JhcHBlciAuZmlsdGVyLXNlYXJjaC1pbnB1dDpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogIzg2YjdmZTtcbn1cblxuLmZpbHRlci1mb3JtIC5maWx0ZXItYXV0b2NvbXBsZXRlIC5maWx0ZXItaW5wdXQtd3JhcHBlciAuZmlsdGVyLXNlYXJjaC1pbnB1dDpmb2N1cyB7XG4gIGN1cnNvcjogdGV4dDtcbiAgYm9yZGVyLWNvbG9yOiAjODZiN2ZlO1xuICBvdXRsaW5lOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTMsIDExMCwgMjUzLCAwLjI1KTtcbn1cblxuLmZpbHRlci1mb3JtIC5maWx0ZXItYXV0b2NvbXBsZXRlIC5maWx0ZXItaW5wdXQtd3JhcHBlciAuZmlsdGVyLWRyb3Bkb3duLWljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxMHB4O1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycztcbiAgcG9pbnRlci1ldmVudHM6IGFsbDtcbn1cblxuLmZpbHRlci1mb3JtIC5maWx0ZXItYXV0b2NvbXBsZXRlIC5maWx0ZXItc3VnZ2VzdGlvbnMtZHJvcGRvd24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDEwNTA7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICBib3JkZXItdG9wOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwIDAgMC4yNXJlbSAwLjI1cmVtO1xuICBtYXgtaGVpZ2h0OiAyNTBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogbm9uZTtcbiAgYm94LXNoYWRvdzogMCA0cHggNnB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLmZpbHRlci1mb3JtIC5maWx0ZXItYXV0b2NvbXBsZXRlIC5maWx0ZXItc3VnZ2VzdGlvbnMtZHJvcGRvd24uc2hvdyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uZmlsdGVyLWZvcm0gLmZpbHRlci1hdXRvY29tcGxldGUgLmZpbHRlci1zdWdnZXN0aW9ucy1kcm9wZG93bi5zaG93IH4gLmZpbHRlci1pbnB1dC13cmFwcGVyIC5maWx0ZXItZHJvcGRvd24taWNvbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoMTgwZGVnKTtcbn1cblxuLmZpbHRlci1mb3JtIC5maWx0ZXItYXV0b2NvbXBsZXRlIC5maWx0ZXItc3VnZ2VzdGlvbnMtZHJvcGRvd24gLnN1Z2dlc3Rpb25zLWxpc3Qge1xuICBtYXgtaGVpZ2h0OiAyNTBweDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLmZpbHRlci1mb3JtIC5maWx0ZXItYXV0b2NvbXBsZXRlIC5maWx0ZXItc3VnZ2VzdGlvbnMtZHJvcGRvd24gLnN1Z2dlc3Rpb25zLWxpc3QgLnN1Z2dlc3Rpb24taXRlbSB7XG4gIHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXM7XG59XG5cbi5maWx0ZXItZm9ybSAuZmlsdGVyLWF1dG9jb21wbGV0ZSAuZmlsdGVyLXN1Z2dlc3Rpb25zLWRyb3Bkb3duIC5zdWdnZXN0aW9ucy1saXN0IC5zdWdnZXN0aW9uLWl0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xufVxuXG4uZmlsdGVyLWZvcm0gLmZpbHRlci1hdXRvY29tcGxldGUgLmZpbHRlci1zdWdnZXN0aW9ucy1kcm9wZG93biAuc3VnZ2VzdGlvbnMtbGlzdCAuc3VnZ2VzdGlvbi1pdGVtIHN0cm9uZyB7XG4gIGNvbG9yOiAjMGQ2ZWZkO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uZmlsdGVyLWZvcm0gLmZpbHRlci1hdXRvY29tcGxldGUgLmZpbHRlci1zdWdnZXN0aW9ucy1kcm9wZG93bi5zaG93IH4gLmZpbHRlci1pbnB1dC13cmFwcGVyIC5maWx0ZXItc2VhcmNoLWlucHV0IHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uZmlsdGVyLWZvcm0gLmZpbHRlci1tb2JpbGUtc2VsZWN0IC5tb2JpbGUtZmlsdGVyLXNlbGVjdCB7XG4gIHdpZHRoOiAxMDAlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5maWx0ZXItZm9ybSAuc2VsZWN0ZWQtdGFncyB7XG4gIG1pbi1oZWlnaHQ6IDA7XG59XG5cbi5maWx0ZXItZm9ybSAuc2VsZWN0ZWQtdGFncyAuYmFkZ2Uge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBwYWRkaW5nOiAwLjM3NXJlbSAwLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbi5maWx0ZXItZm9ybSAuc2VsZWN0ZWQtdGFncyAuYmFkZ2UgLmJ0bi1jbG9zZSB7XG4gIHdpZHRoOiAwLjVlbTtcbiAgaGVpZ2h0OiAwLjVlbTtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1zaXplOiAwLjVlbTtcbiAgb3BhY2l0eTogMC43NTtcbn1cblxuLmZpbHRlci1mb3JtIC5zZWxlY3RlZC10YWdzIC5iYWRnZSAuYnRuLWNsb3NlOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5maWx0ZXItZm9ybSAuZmlsdGVyLWF1dG9jb21wbGV0ZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZpbHRlci1mb3JtIC5maWx0ZXItbW9iaWxlLXNlbGVjdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZpbHRlci1mb3JtIC5maWx0ZXItYXV0b2NvbXBsZXRlIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZpbHRlci1mb3JtIC5maWx0ZXItbW9iaWxlLXNlbGVjdCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi50b3AtYnV0dG9ucyA+ICoge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnRvcC1idXR0b25zIC5idG4tbGluayB7XG4gIHdpZHRoOiAzNXB4O1xuICBoZWlnaHQ6IDM1cHg7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycztcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHRvcDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4udG9wLWJ1dHRvbnMgLmJ0bi1saW5rOmhvdmVyIHtcbiAgb3BhY2l0eTogMC44O1xufVxuXG4udG9wLWJ1dHRvbnMgLm5vdGlmaWNhdGlvbkJ0biAuYmFkZ2Uge1xuICBmb250LXNpemU6IDAuNjI1cmVtO1xuICBwYWRkaW5nOiAwLjI1ZW0gMC40ZW07XG4gIG1pbi13aWR0aDogMThweDtcbiAgaGVpZ2h0OiAxOHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnRvcC1idXR0b25zIC50b3AtdXNlci1wcm9maWxlIC5idG4tbGluayB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi50b3AtYnV0dG9ucyAudG9wLXVzZXItcHJvZmlsZSAuYnRuLWxpbmsgaW1nLFxuLnRvcC1idXR0b25zIC50b3AtdXNlci1wcm9maWxlIC5idG4tbGluayAudXNlci1kcm9wZG93biB7XG4gIHdpZHRoOiAzNXB4O1xuICBoZWlnaHQ6IDM1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNhYWE7XG59XG5cbi50b3AtYnV0dG9ucyAuaGVhZGVyLWNhcnQtd3JhcHBlciAuY2FydC1pY29uIHtcbiAgd2lkdGg6IDM1cHg7XG4gIGhlaWdodDogMzVweDtcbn1cblxuLnRvcC1idXR0b25zIC5oZWFkZXItY2FydC13cmFwcGVyIC5jYXJ0LWNvdW50LWJhZGdlIHtcbiAgZm9udC1zaXplOiAwLjYyNXJlbTtcbiAgcGFkZGluZzogMC4yNWVtIDAuNGVtO1xuICBtaW4td2lkdGg6IDE4cHg7XG4gIGhlaWdodDogMThweDtcbn1cblxuLnRvcC1idXR0b25zIGZvcm1bdGl0bGUqPVJldHVybl0gLmJ0bi1saW5rLFxuLnRvcC1idXR0b25zIGZvcm1bdGl0bGUqPVwiU3RvcCBJbXBlcnNvbmF0aW5nXCJdIC5idG4tbGluayxcbi50b3AtYnV0dG9ucyBhW3RpdGxlKj1SZXR1cm5dIC5idG4tbGluayxcbi50b3AtYnV0dG9ucyBhW3RpdGxlKj1cIlN0b3AgSW1wZXJzb25hdGluZ1wiXSAuYnRuLWxpbmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZjMTA3ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG59XG5cbi50b3AtYnV0dG9ucyBmb3JtW3RpdGxlKj1SZXR1cm5dIC5idG4tbGluazpob3Zlcixcbi50b3AtYnV0dG9ucyBmb3JtW3RpdGxlKj1cIlN0b3AgSW1wZXJzb25hdGluZ1wiXSAuYnRuLWxpbms6aG92ZXIsXG4udG9wLWJ1dHRvbnMgYVt0aXRsZSo9UmV0dXJuXSAuYnRuLWxpbms6aG92ZXIsXG4udG9wLWJ1dHRvbnMgYVt0aXRsZSo9XCJTdG9wIEltcGVyc29uYXRpbmdcIl0gLmJ0bi1saW5rOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYjMwMCAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnRvcC1idXR0b25zIHtcbiAgICBnYXA6IDAuNzVyZW0gIWltcG9ydGFudDtcbiAgfVxufVxuXG4ub3JkZXItY2FyZCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5vcmRlci1jYXJkIC5jYXJkIHtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjNzIGVhc2U7XG59XG5cbi5vcmRlci1jYXJkIC5jYXJkOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMCAwLjVyZW0gMXJlbSByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuXG4ub3JkZXItaXRlbS10aHVtYiB7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xufVxuXG4ub3JkZXItaXRlbS10aHVtYi1wbGFjZWhvbGRlciB7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sb3I6ICM2Yzc1N2Q7XG59XG5cbi5vcmRlci1pdGVtLW1vcmUge1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICM2Yzc1N2Q7XG59XG5cbi8qKlxuICogSG9tZSBQYWdlIFN0eWxlc1xuICogU3R5bGVzIHNwZWNpZmljIHRvIHRoZSBob21lcGFnZSB3aXRoIEJvb3RzdHJhcCA1XG4gKi9cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIHtcbiAgLyogQ2lyY2xlICovXG4gIC8qIFNxdWFyZSAqL1xuICAvKiBTcXVhcmUgd2l0aCByb3VuZGVkIGNvcm5lcnMgKi9cbiAgLyogUmVjdGFuZ2xlICovXG4gIC8qIEVsbGlwc2UgKi9cbiAgLyogVGVhcmRyb3AgKi9cbiAgLyogSGVhcnQgKi9cbiAgLS1sdXh1cnktZ29sZDogI2Q0YWYzNztcbiAgLS1zb2Z0LWNyZWFtOiAjZmFmOWY2O1xuICAtLWRlZXAtY2hhcmNvYWw6ICMyYzJjMmM7XG4gIC0td2FybS1ncmF5OiAjNmI2YjZiO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLm9iamVjdC1maXQtY292ZXIge1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgbWluLWhlaWdodDogNDAwcHg7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAucGFnZV9pc19ob21lX3BhZ2UgLm9iamVjdC1maXQtY292ZXIge1xuICAgIG1pbi1oZWlnaHQ6IDI1MHB4O1xuICB9XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAuYmFkZ2Uge1xuICBhbmltYXRpb246IGZhZGVJblVwIDAuNXMgZWFzZS1vdXQ7XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAuc2hhcGUtaW1hZ2Utd3JhcHBlciB7XG4gIGhlaWdodDogNjBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAuc2hhcGUtaWNvbiB7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmb250LXNpemU6IDJyZW07XG4gIGNvbG9yOiB2YXIoLS1icy1ncmF5LTYwMCk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJzLWdyYXktMTAwKTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLnNoYXBlLXJvdW5kIC5mYS1nZW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYTVcIjtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5zaGFwZS1wcmluY2VzcyAuZmEtZ2VtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGM4XCI7XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAuc2hhcGUtY3VzaGlvbiAuZmEtZ2VtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDY2XCI7XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAuc2hhcGUtZW1lcmFsZCAuZmEtZ2VtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWIyXCI7XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAuc2hhcGUtb3ZhbCAuZmEtZ2VtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTExXCI7XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAuc2hhcGUtcGVhciAuZmEtZ2VtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDQzXCI7XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAuc2hhcGUtaGVhcnQgLmZhLWdlbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwNFwiO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLm5hdi1waWxscyAubmF2LWxpbmsge1xuICBjb2xvcjogdmFyKC0tYnMtZ3JheS02MDApO1xuICBib3JkZXItcmFkaXVzOiA1MHJlbTtcbiAgcGFkZGluZzogMC41cmVtIDEuNXJlbTtcbiAgbWFyZ2luOiAwIDAuMjVyZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAubmF2LXBpbGxzIC5uYXYtbGluazpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWdyYXktMTAwKTtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5uYXYtcGlsbHMgLm5hdi1saW5rLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLmhvbWUtaGVyby1zZWN0aW9uLWhvbWVwYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDI1MHB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MDBweCkge1xuICAucGFnZV9pc19ob21lX3BhZ2UgLmhvbWUtaGVyby1zZWN0aW9uLWhvbWVwYWdlIHtcbiAgICBoZWlnaHQ6IDM0MHB4O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5ob21lLWhlcm8tc2VjdGlvbi1ob21lcGFnZSB7XG4gICAgaGVpZ2h0OiAzNzBweDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMDBweCkge1xuICAucGFnZV9pc19ob21lX3BhZ2UgLmhvbWUtaGVyby1zZWN0aW9uLWhvbWVwYWdlIHtcbiAgICBoZWlnaHQ6IDQwMHB4O1xuICB9XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAuaG9tZS1oZXJvLXNlY3Rpb24taG9tZXBhZ2UgLm1haW4taGVhZGluZy10b3Age1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogcmdiYSgyMzUsIDIzNSwgMjQyLCAwKTtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5ob21lLWhlcm8tc2VjdGlvbi1ob21lcGFnZSAuYmFubmVydGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiA0NyU7XG4gIGxlZnQ6IDIuMjUlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwcHgsIC01MiUpO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLmhvbWUtaGVyby1zZWN0aW9uLWhvbWVwYWdlIC5iYW5uZXJ0ZXh0IC5iYW5uZXJ0ZXh0LWhlYWRpbmcge1xuICBmb250LXNpemU6IDQ1LjVweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICBmb250LWZhbWlseTogXCJQbGF5ZmFpciBEaXNwbGF5XCIsIHNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLmhvbWUtaGVyby1zZWN0aW9uLWhvbWVwYWdlIC5iYW5uZXJ0ZXh0IC5iYW5uZXJ0ZXh0LWhlYWRpbmcgLmxpbmVncmVkOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltZy9ob21lL2xpbmVncmFkLnBuZyk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDI1MHB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICB6LWluZGV4OiAxO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDEwcHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgY29udGVudDogXCJcIjtcbiAgYm90dG9tOiAwO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLmhvbWUtaGVyby1zZWN0aW9uLWhvbWVwYWdlIC5iYW5uZXJ0ZXh0IC5iYW5uZXJ0ZXh0LXN1YmhlYWRpbmcge1xuICB0ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICBmb250LWZhbWlseTogUG9wcGlucywgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBsaW5lLWhlaWdodDogMjRweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2Ugc2VjdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlX2lzX2hvbWVfcGFnZSBzZWN0aW9uLnB5LTUge1xuICAgIHBhZGRpbmctdG9wOiA0cmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDRyZW0gIWltcG9ydGFudDtcbiAgfVxufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLmNhcmQuYm9yZGVyLXdhcm5pbmcsXG4ucGFnZV9pc19ob21lX3BhZ2UgLmNhcmQuYm9yZGVyLXN1Y2Nlc3MsXG4ucGFnZV9pc19ob21lX3BhZ2UgLmNhcmQuYm9yZGVyLXByaW1hcnkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLnRhYi1wYW5lIHtcbiAgYW5pbWF0aW9uOiBmYWRlSW4gMC4zcyBlYXNlLWluLW91dDtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5idG4tc20uYnRuLW91dGxpbmUtcHJpbWFyeTpob3ZlciAuZmEtYXJyb3ctcmlnaHQsXG4ucGFnZV9pc19ob21lX3BhZ2UgLmJ0bi1ncm91cC1zbSA+IC5idG4tb3V0bGluZS1wcmltYXJ5LmJ0bjpob3ZlciAuZmEtYXJyb3ctcmlnaHQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuZGlzcGxheS00IHtcbiAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuZGlzcGxheS02IHtcbiAgICBmb250LXNpemU6IDEuNzVyZW07XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLmxlYWQge1xuICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICB9XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAudGV4dC1tdXRlZC5weS01IHtcbiAgb3BhY2l0eTogMC43O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAuc2VjdGlvbi10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlBsYXlmYWlyIERpc3BsYXlcIiwgc2VyaWY7XG4gIGZvbnQtc2l6ZTogNDJweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgY29sb3I6IHZhcigtLWRlZXAtY2hhcmNvYWwpO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBsZXR0ZXItc3BhY2luZzogMXB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5zZWN0aW9uLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDMycHg7XG4gIH1cbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC50aXRsZS11bmRlcmxpbmUge1xuICB3aWR0aDogNjBweDtcbiAgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWx1eHVyeS1nb2xkKTtcbiAgbWFyZ2luOiAwIGF1dG8gMzBweDtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5zZWN0aW9uLXN1YnRpdGxlIHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBjb2xvcjogdmFyKC0td2FybS1ncmF5KTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbWF4LXdpZHRoOiA2MDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1jYXRlZ29yeSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktY2F0ZWdvcnkgLmNhdGVnb3J5LWNhcmQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktY2F0ZWdvcnkgLmNhdGVnb3J5LWNhcmQ6aG92ZXIgLmNhdGVnb3J5LWltYWdlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpO1xuICBib3gtc2hhZG93OiAwIDE1cHggMzVweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1jYXRlZ29yeSAuY2F0ZWdvcnktY2FyZDpob3ZlciAuY2F0ZWdvcnktbGluayB7XG4gIGNvbG9yOiB2YXIoLS1sdXh1cnktZ29sZCk7XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1jYXRlZ29yeSAuY2F0ZWdvcnktaW1hZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogMzAwcHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIGJveC1zaGFkb3c6IDAgNXB4IDIwcHggcmdiYSgwLCAwLCAwLCAwLjA4KTtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5zaG9wLWJ5LWNhdGVnb3J5IC5jYXRlZ29yeS1pbWFnZSBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5zaG9wLWJ5LWNhdGVnb3J5IC5jYXRlZ29yeS1pbmZvIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwIDEwcHggMjBweDtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5zaG9wLWJ5LWNhdGVnb3J5IC5jYXRlZ29yeS10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlBsYXlmYWlyIERpc3BsYXlcIiwgc2VyaWY7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgY29sb3I6IHZhcigtLWRlZXAtY2hhcmNvYWwpO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktY2F0ZWdvcnkgLmNhdGVnb3J5LWxpbmsge1xuICBmb250LXNpemU6IDE0cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAycHg7XG4gIGNvbG9yOiAjMWUxZTU2O1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzIGVhc2U7XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAuZmVhdHVyZWQtY29sbGVjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNvZnQtY3JlYW0pO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLmZlYXR1cmVkLWNvbGxlY3Rpb24gLmZlYXR1cmVkLXByb2R1Y3QtY2FyZCB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAuZmVhdHVyZWQtY29sbGVjdGlvbiAuZmVhdHVyZWQtcHJvZHVjdC1jYXJkOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5mZWF0dXJlZC1jb2xsZWN0aW9uIC5mZWF0dXJlZC1wcm9kdWN0LWNhcmQgLmNhcmQge1xuICBib3JkZXI6IG5vbmU7XG4gIGJveC1zaGFkb3c6IDAgNXB4IDIwcHggcmdiYSgwLCAwLCAwLCAwLjA4KTtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5mZWF0dXJlZC1jb2xsZWN0aW9uIC5mZWF0dXJlZC1wcm9kdWN0LWNhcmQgLmNhcmQ6aG92ZXIge1xuICBib3gtc2hhZG93OiAwIDEwcHggNDBweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLmZlYXR1cmVkLWNvbGxlY3Rpb24gLmJ0bi1vdXRsaW5lLXByaW1hcnkge1xuICBwYWRkaW5nOiAxMnB4IDQwcHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgYm9yZGVyLXdpZHRoOiAycHg7XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAuZmVhdHVyZWQtY29sbGVjdGlvbiAuYnRuLW91dGxpbmUtcHJpbWFyeTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxZTFlNTY7XG4gIGJvcmRlci1jb2xvcjogIzFlMWU1Njtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5hcnRpc2FuLXNwb3RsaWdodCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLmFydGlzYW4tc3BvdGxpZ2h0IC5hcnRpc2FuLWNhcmQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDMwcHg7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBib3gtc2hhZG93OiAwIDVweCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4wOCk7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5hcnRpc2FuLXNwb3RsaWdodCAuYXJ0aXNhbi1jYXJkOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgYm94LXNoYWRvdzogMCAxNXB4IDQwcHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5hcnRpc2FuLXNwb3RsaWdodCAuYXJ0aXNhbi1pbWFnZSB7XG4gIHdpZHRoOiAyMDBweDtcbiAgaGVpZ2h0OiAyMDBweDtcbiAgbWFyZ2luOiAwIGF1dG8gMjVweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3JkZXI6IDVweCBzb2xpZCB2YXIoLS1zb2Z0LWNyZWFtKTtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5hcnRpc2FuLXNwb3RsaWdodCAuYXJ0aXNhbi1pbWFnZSBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5hcnRpc2FuLXNwb3RsaWdodCAuYXJ0aXNhbi1uYW1lIHtcbiAgZm9udC1mYW1pbHk6IFwiUGxheWZhaXIgRGlzcGxheVwiLCBzZXJpZjtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBjb2xvcjogdmFyKC0tZGVlcC1jaGFyY29hbCk7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5hcnRpc2FuLXNwb3RsaWdodCAuYXJ0aXNhbi1zcGVjaWFsdHkge1xuICBjb2xvcjogdmFyKC0tbHV4dXJ5LWdvbGQpO1xuICBmb250LXNpemU6IDE2cHg7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5hcnRpc2FuLXNwb3RsaWdodCAuYXJ0aXNhbi1leHBlcmllbmNlIHtcbiAgY29sb3I6IHZhcigtLXdhcm0tZ3JheSk7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5hcnRpc2FuLXNwb3RsaWdodCAuYXJ0aXNhbi1saW5rIHtcbiAgY29sb3I6ICMxZTFlNTY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLmFydGlzYW4tc3BvdGxpZ2h0IC5hcnRpc2FuLWxpbms6aG92ZXIge1xuICBjb2xvcjogdmFyKC0tbHV4dXJ5LWdvbGQpO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktb2NjYXNpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zb2Z0LWNyZWFtKTtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5zaG9wLWJ5LW9jY2FzaW9uIC5vY2Nhc2lvbi1jYXJkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogNDBweCAyMHB4O1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgYm94LXNoYWRvdzogMCA1cHggMjBweCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5zaG9wLWJ5LW9jY2FzaW9uIC5vY2Nhc2lvbi1jYXJkOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgYm94LXNoYWRvdzogMCAxNXB4IDQwcHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5zaG9wLWJ5LW9jY2FzaW9uIC5vY2Nhc2lvbi1jYXJkOmhvdmVyIC5vY2Nhc2lvbi1pY29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFlMWU1NjtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktb2NjYXNpb24gLm9jY2FzaW9uLWljb24ge1xuICB3aWR0aDogODBweDtcbiAgaGVpZ2h0OiA4MHB4O1xuICBtYXJnaW46IDAgYXV0byAyMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zb2Z0LWNyZWFtKTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZm9udC1zaXplOiAzMnB4O1xuICBjb2xvcjogIzFlMWU1NjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5zaG9wLWJ5LW9jY2FzaW9uIC5vY2Nhc2lvbi10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlBsYXlmYWlyIERpc3BsYXlcIiwgc2VyaWY7XG4gIGZvbnQtc2l6ZTogMjJweDtcbiAgY29sb3I6IHZhcigtLWRlZXAtY2hhcmNvYWwpO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktb2NjYXNpb24gLm9jY2FzaW9uLXN1YnRpdGxlIHtcbiAgY29sb3I6IHZhcigtLXdhcm0tZ3JheSk7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbWFyZ2luOiAwO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLmNhcmF0eC1wcm9taXNlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAuY2FyYXR4LXByb21pc2UgLnByb21pc2UtY2FyZCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogNDBweCAyMHB4O1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLmNhcmF0eC1wcm9taXNlIC5wcm9taXNlLWljb24ge1xuICB3aWR0aDogMTAwcHg7XG4gIGhlaWdodDogMTAwcHg7XG4gIG1hcmdpbjogMCBhdXRvIDI1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNvZnQtY3JlYW0pO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmb250LXNpemU6IDQwcHg7XG4gIGNvbG9yOiB2YXIoLS1sdXh1cnktZ29sZCk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2U7XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAuY2FyYXR4LXByb21pc2UgLnByb21pc2UtdGl0bGUge1xuICBmb250LWZhbWlseTogXCJQbGF5ZmFpciBEaXNwbGF5XCIsIHNlcmlmO1xuICBmb250LXNpemU6IDI0cHg7XG4gIGNvbG9yOiB2YXIoLS1kZWVwLWNoYXJjb2FsKTtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLnBhZ2VfaXNfaG9tZV9wYWdlIC5jYXJhdHgtcHJvbWlzZSAucHJvbWlzZS1kZXNjcmlwdGlvbiB7XG4gIGNvbG9yOiB2YXIoLS13YXJtLWdyYXkpO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIG1heC13aWR0aDogMzAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLmN1cnJlbnQtb2ZmZXJzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc29mdC1jcmVhbSk7XG59XG5cbi5wYWdlX2lzX2hvbWVfcGFnZSAuY3VycmVudC1vZmZlcnMgLnNhbGUtcHJvZHVjdC1jYXJkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ucGFnZV9pc19ob21lX3BhZ2UgLmN1cnJlbnQtb2ZmZXJzIC5zYWxlLXByb2R1Y3QtY2FyZDo6YmVmb3JlIHtcbiAgY29udGVudDogXCJQcml2YXRlIFNhbGVcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDIwcHg7XG4gIGxlZnQ6IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxZTFlNTY7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgcGFkZGluZzogNXB4IDE1cHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgei1pbmRleDogMTA7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAucGFnZV9pc19ob21lX3BhZ2UgLmNhdGVnb3J5LWltYWdlIHtcbiAgICBoZWlnaHQ6IDIwMHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5jYXRlZ29yeS10aXRsZSB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5hcnRpc2FuLWNhcmQge1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLmFydGlzYW4taW1hZ2Uge1xuICAgIHdpZHRoOiAxNTBweDtcbiAgICBoZWlnaHQ6IDE1MHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5wcm9taXNlLWljb24sXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAub2NjYXNpb24taWNvbiB7XG4gICAgd2lkdGg6IDcwcHg7XG4gICAgaGVpZ2h0OiA3MHB4O1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMXB4KSBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuaG9tZS1oZXJvLXNlY3Rpb24taG9tZXBhZ2UgLmJhbm5lcnRleHQgLmJhbm5lcnRleHQtaGVhZGluZyB7XG4gICAgZm9udC1zaXplOiAzNnB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAucGFnZV9pc19ob21lX3BhZ2UgLmhvbWUtaGVyby1zZWN0aW9uLWhvbWVwYWdlIHtcbiAgICBoZWlnaHQ6IDM1MHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5ob21lLWhlcm8tc2VjdGlvbi1ob21lcGFnZSAuYmFubmVydGV4dCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHdpZHRoOiA5MCU7XG4gICAgbGVmdDogNSU7XG4gICAgcmlnaHQ6IDUlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLmhvbWUtaGVyby1zZWN0aW9uLWhvbWVwYWdlIC5iYW5uZXJ0ZXh0IC5iYW5uZXJ0ZXh0LWhlYWRpbmcge1xuICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLmhvbWUtaGVyby1zZWN0aW9uLWhvbWVwYWdlIC5iYW5uZXJ0ZXh0IC5iYW5uZXJ0ZXh0LWhlYWRpbmcgLmxpbmVncmVkOjpiZWZvcmUge1xuICAgIHdpZHRoOiAxODBweDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB9XG5cbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5ob21lLWhlcm8tc2VjdGlvbi1ob21lcGFnZSAuYmFubmVydGV4dCBwIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5ob21lLWhlcm8tc2VjdGlvbi1ob21lcGFnZSAuYmFubmVydGV4dCBkaXYge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuaG9tZS1oZXJvLXNlY3Rpb24taG9tZXBhZ2UgLmJhbm5lcnRleHQgZGl2IGEuYnRuIHtcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogMjc1cHg7XG4gICAgbWFyZ2luOiAwIGF1dG8gMTVweCAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuaG9tZS1oZXJvLXNlY3Rpb24taG9tZXBhZ2Uge1xuICAgIGhlaWdodDogMzIwcHg7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLmhvbWUtaGVyby1zZWN0aW9uLWhvbWVwYWdlIC5iYW5uZXJ0ZXh0IC5iYW5uZXJ0ZXh0LWhlYWRpbmcge1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuaG9tZS1oZXJvLXNlY3Rpb24taG9tZXBhZ2UgLmJhbm5lcnRleHQgLmJhbm5lcnRleHQtaGVhZGluZyAubGluZWdyZWQ6OmJlZm9yZSB7XG4gICAgd2lkdGg6IDE0MHB4O1xuICAgIGhlaWdodDogOHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5ob21lLWhlcm8tc2VjdGlvbi1ob21lcGFnZSAuYmFubmVydGV4dCBwIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5ob21lLWhlcm8tc2VjdGlvbi1ob21lcGFnZSAuYmFubmVydGV4dCBhLmJ0biB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIHBhZGRpbmc6IDEwcHggMzBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5ob21lLWhlcm8tc2VjdGlvbi1ob21lcGFnZSB7XG4gICAgaGVpZ2h0OiAyODBweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuaG9tZS1oZXJvLXNlY3Rpb24taG9tZXBhZ2UgLmJhbm5lcnRleHQgLmJhbm5lcnRleHQtaGVhZGluZyB7XG4gICAgZm9udC1zaXplOiAyMnB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5ob21lLWhlcm8tc2VjdGlvbi1ob21lcGFnZSAuYmFubmVydGV4dCAuYmFubmVydGV4dC1oZWFkaW5nIC5saW5lZ3JlZDo6YmVmb3JlIHtcbiAgICB3aWR0aDogMTAwcHg7XG4gICAgaGVpZ2h0OiA2cHg7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLmhvbWUtaGVyby1zZWN0aW9uLWhvbWVwYWdlIC5iYW5uZXJ0ZXh0IHAge1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBwYWRkaW5nOiAwIDEwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc1MHB4KSB7XG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1jYXRlZ29yeSAucm93IHtcbiAgICBtYXJnaW4tbGVmdDogLThweDtcbiAgICBtYXJnaW4tcmlnaHQ6IC04cHg7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktY2F0ZWdvcnkgLmNvbC1tZC00IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4cHg7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5zaG9wLWJ5LWNhdGVnb3J5IC5jYXRlZ29yeS1jYXJkIHtcbiAgICB6b29tOiAwLjg1O1xuICB9XG5cbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5zaG9wLWJ5LWNhdGVnb3J5IC5jYXRlZ29yeS1jYXJkIC5jYXRlZ29yeS1pbWFnZSB7XG4gICAgaGVpZ2h0OiAxODBweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1jYXRlZ29yeSAuY2F0ZWdvcnktY2FyZCAuY2F0ZWdvcnktaW5mbyB7XG4gICAgcGFkZGluZzogMCA1cHggMTVweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1jYXRlZ29yeSAuY2F0ZWdvcnktY2FyZCAuY2F0ZWdvcnktdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktY2F0ZWdvcnkgLmNhdGVnb3J5LWNhcmQgLmNhdGVnb3J5LWxpbmsge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5zaG9wLWJ5LWNhdGVnb3J5IC5jYXRlZ29yeS1jYXJkIHtcbiAgICB6b29tOiAwLjc1O1xuICB9XG5cbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5zaG9wLWJ5LWNhdGVnb3J5IC5jYXRlZ29yeS1jYXJkIC5jYXRlZ29yeS1pbWFnZSB7XG4gICAgaGVpZ2h0OiAxNTBweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1jYXRlZ29yeSAuY2F0ZWdvcnktY2FyZCAuY2F0ZWdvcnktdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzUwcHgpIHtcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5mZWF0dXJlZC1jb2xsZWN0aW9uIC5jb2wtbWQtNCB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxuXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuZmVhdHVyZWQtY29sbGVjdGlvbiAuY29sLW1kLTQgLmZlYXR1cmVkLXByb2R1Y3QtY2FyZCB7XG4gICAgem9vbTogMC44NTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzUwcHgpIHtcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5hcnRpc2FuLXNwb3RsaWdodCAuY29sLW1kLTQge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLmFydGlzYW4tc3BvdGxpZ2h0IC5jb2wtbWQtNDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5hcnRpc2FuLXNwb3RsaWdodCAuYXJ0aXNhbi1jYXJkIHtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIHpvb206IDAuOTtcbiAgfVxuXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuYXJ0aXNhbi1zcG90bGlnaHQgLmFydGlzYW4tY2FyZCAuYXJ0aXNhbi1pbWFnZSB7XG4gICAgd2lkdGg6IDEyMHB4O1xuICAgIGhlaWdodDogMTIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuYXJ0aXNhbi1zcG90bGlnaHQgLmFydGlzYW4tY2FyZCAuYXJ0aXNhbi1uYW1lIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLmFydGlzYW4tc3BvdGxpZ2h0IC5hcnRpc2FuLWNhcmQgLmFydGlzYW4tc3BlY2lhbHR5IHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLmFydGlzYW4tc3BvdGxpZ2h0IC5hcnRpc2FuLWNhcmQgLmFydGlzYW4tZXhwZXJpZW5jZSB7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NTBweCkge1xuICAucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktb2NjYXNpb24gLmNvbC1tZC0zIHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktb2NjYXNpb24gLmNvbC1tZC0zIC5vY2Nhc2lvbi1jYXJkIHtcbiAgICBwYWRkaW5nOiAzMHB4IDE1cHg7XG4gICAgem9vbTogMC44NTtcbiAgfVxuXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1vY2Nhc2lvbiAuY29sLW1kLTMgLm9jY2FzaW9uLWNhcmQgLm9jY2FzaW9uLWljb24ge1xuICAgIHdpZHRoOiA2MHB4O1xuICAgIGhlaWdodDogNjBweDtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1vY2Nhc2lvbiAuY29sLW1kLTMgLm9jY2FzaW9uLWNhcmQgLm9jY2FzaW9uLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktb2NjYXNpb24gLmNvbC1tZC0zIC5vY2Nhc2lvbi1jYXJkIC5vY2Nhc2lvbi1zdWJ0aXRsZSB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NTBweCkge1xuICAucGFnZV9pc19ob21lX3BhZ2UgLmNhcmF0eC1wcm9taXNlIC5jb2wtbWQtNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuY2FyYXR4LXByb21pc2UgLmNvbC1tZC00Omxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLmNhcmF0eC1wcm9taXNlIC5jb2wtbWQtNCAucHJvbWlzZS1jYXJkIHtcbiAgICB6b29tOiAwLjk7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLmNhcmF0eC1wcm9taXNlIC5jb2wtbWQtNCAucHJvbWlzZS1jYXJkIC5wcm9taXNlLWljb24ge1xuICAgIHdpZHRoOiA3MHB4O1xuICAgIGhlaWdodDogNzBweDtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuY2FyYXR4LXByb21pc2UgLmNvbC1tZC00IC5wcm9taXNlLWNhcmQgLnByb21pc2UtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuY2FyYXR4LXByb21pc2UgLmNvbC1tZC00IC5wcm9taXNlLWNhcmQgLnByb21pc2UtZGVzY3JpcHRpb24ge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzUwcHgpIHtcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5jdXJyZW50LW9mZmVycyAuY29sLW1kLTMge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLmN1cnJlbnQtb2ZmZXJzIC5jb2wtbWQtMyAuc2FsZS1wcm9kdWN0LWNhcmQge1xuICAgIHpvb206IDAuODU7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLmN1cnJlbnQtb2ZmZXJzIC5jb2wtbWQtMyAuc2FsZS1wcm9kdWN0LWNhcmQ6OmJlZm9yZSB7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICAgIHBhZGRpbmc6IDNweCAxMHB4O1xuICAgIHRvcDogMTBweDtcbiAgICBsZWZ0OiAxMHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NTBweCkge1xuICAucGFnZV9pc19ob21lX3BhZ2Ugc2VjdGlvbiB7XG4gICAgcGFkZGluZzogNDBweCAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLnNlY3Rpb24tdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC50aXRsZS11bmRlcmxpbmUge1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLnNlY3Rpb24tc3VidGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc1MHB4KSBhbmQgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5idG4ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDMyMHB4KSB7XG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuaG9tZS1oZXJvLXNlY3Rpb24taG9tZXBhZ2Uge1xuICAgIGhlaWdodDogMjUwcHg7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLmhvbWUtaGVyby1zZWN0aW9uLWhvbWVwYWdlIC5iYW5uZXJ0ZXh0LWhlYWRpbmcge1xuICAgIGZvbnQtc2l6ZTogMjBweCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5zaG9wLWJ5LWNhdGVnb3J5IC5jb2wtbWQtNCxcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5zaG9wLWJ5LWNhdGVnb3J5IC5jb2wtbWQtMyxcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5mZWF0dXJlZC1jb2xsZWN0aW9uIC5jb2wtbWQtNCxcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5mZWF0dXJlZC1jb2xsZWN0aW9uIC5jb2wtbWQtMyxcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5zaG9wLWJ5LW9jY2FzaW9uIC5jb2wtbWQtNCxcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5zaG9wLWJ5LW9jY2FzaW9uIC5jb2wtbWQtMyxcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5jdXJyZW50LW9mZmVycyAuY29sLW1kLTQsXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuY3VycmVudC1vZmZlcnMgLmNvbC1tZC0zIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktY2F0ZWdvcnkgLmNvbC1tZC00IC5jYXRlZ29yeS1jYXJkLFxuICAucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktY2F0ZWdvcnkgLmNvbC1tZC00IC5mZWF0dXJlZC1wcm9kdWN0LWNhcmQsXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1jYXRlZ29yeSAuY29sLW1kLTQgLm9jY2FzaW9uLWNhcmQsXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1jYXRlZ29yeSAuY29sLW1kLTQgLnNhbGUtcHJvZHVjdC1jYXJkLFxuICAucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktY2F0ZWdvcnkgLmNvbC1tZC0zIC5jYXRlZ29yeS1jYXJkLFxuICAucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktY2F0ZWdvcnkgLmNvbC1tZC0zIC5mZWF0dXJlZC1wcm9kdWN0LWNhcmQsXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1jYXRlZ29yeSAuY29sLW1kLTMgLm9jY2FzaW9uLWNhcmQsXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1jYXRlZ29yeSAuY29sLW1kLTMgLnNhbGUtcHJvZHVjdC1jYXJkLFxuICAucGFnZV9pc19ob21lX3BhZ2UgLmZlYXR1cmVkLWNvbGxlY3Rpb24gLmNvbC1tZC00IC5jYXRlZ29yeS1jYXJkLFxuICAucGFnZV9pc19ob21lX3BhZ2UgLmZlYXR1cmVkLWNvbGxlY3Rpb24gLmNvbC1tZC00IC5mZWF0dXJlZC1wcm9kdWN0LWNhcmQsXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuZmVhdHVyZWQtY29sbGVjdGlvbiAuY29sLW1kLTQgLm9jY2FzaW9uLWNhcmQsXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuZmVhdHVyZWQtY29sbGVjdGlvbiAuY29sLW1kLTQgLnNhbGUtcHJvZHVjdC1jYXJkLFxuICAucGFnZV9pc19ob21lX3BhZ2UgLmZlYXR1cmVkLWNvbGxlY3Rpb24gLmNvbC1tZC0zIC5jYXRlZ29yeS1jYXJkLFxuICAucGFnZV9pc19ob21lX3BhZ2UgLmZlYXR1cmVkLWNvbGxlY3Rpb24gLmNvbC1tZC0zIC5mZWF0dXJlZC1wcm9kdWN0LWNhcmQsXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuZmVhdHVyZWQtY29sbGVjdGlvbiAuY29sLW1kLTMgLm9jY2FzaW9uLWNhcmQsXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuZmVhdHVyZWQtY29sbGVjdGlvbiAuY29sLW1kLTMgLnNhbGUtcHJvZHVjdC1jYXJkLFxuICAucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktb2NjYXNpb24gLmNvbC1tZC00IC5jYXRlZ29yeS1jYXJkLFxuICAucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktb2NjYXNpb24gLmNvbC1tZC00IC5mZWF0dXJlZC1wcm9kdWN0LWNhcmQsXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1vY2Nhc2lvbiAuY29sLW1kLTQgLm9jY2FzaW9uLWNhcmQsXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1vY2Nhc2lvbiAuY29sLW1kLTQgLnNhbGUtcHJvZHVjdC1jYXJkLFxuICAucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktb2NjYXNpb24gLmNvbC1tZC0zIC5jYXRlZ29yeS1jYXJkLFxuICAucGFnZV9pc19ob21lX3BhZ2UgLnNob3AtYnktb2NjYXNpb24gLmNvbC1tZC0zIC5mZWF0dXJlZC1wcm9kdWN0LWNhcmQsXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1vY2Nhc2lvbiAuY29sLW1kLTMgLm9jY2FzaW9uLWNhcmQsXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuc2hvcC1ieS1vY2Nhc2lvbiAuY29sLW1kLTMgLnNhbGUtcHJvZHVjdC1jYXJkLFxuICAucGFnZV9pc19ob21lX3BhZ2UgLmN1cnJlbnQtb2ZmZXJzIC5jb2wtbWQtNCAuY2F0ZWdvcnktY2FyZCxcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5jdXJyZW50LW9mZmVycyAuY29sLW1kLTQgLmZlYXR1cmVkLXByb2R1Y3QtY2FyZCxcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5jdXJyZW50LW9mZmVycyAuY29sLW1kLTQgLm9jY2FzaW9uLWNhcmQsXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuY3VycmVudC1vZmZlcnMgLmNvbC1tZC00IC5zYWxlLXByb2R1Y3QtY2FyZCxcbiAgLnBhZ2VfaXNfaG9tZV9wYWdlIC5jdXJyZW50LW9mZmVycyAuY29sLW1kLTMgLmNhdGVnb3J5LWNhcmQsXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuY3VycmVudC1vZmZlcnMgLmNvbC1tZC0zIC5mZWF0dXJlZC1wcm9kdWN0LWNhcmQsXG4gIC5wYWdlX2lzX2hvbWVfcGFnZSAuY3VycmVudC1vZmZlcnMgLmNvbC1tZC0zIC5vY2Nhc2lvbi1jYXJkLFxuICAucGFnZV9pc19ob21lX3BhZ2UgLmN1cnJlbnQtb2ZmZXJzIC5jb2wtbWQtMyAuc2FsZS1wcm9kdWN0LWNhcmQge1xuICAgIHpvb206IDE7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW5VcCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi8qKlxuICogU2hvcCBQYWdlIFN0eWxlc1xuICogU3R5bGVzIHNwZWNpZmljIHRvIHRoZSBzaG9wL2NhdGFsb2cgcGFnZXNcbiAqL1xuXG4ucGFnZV9pc19zaG9wX3BhZ2UgLnNob3AtcGFnZSB7XG4gIG1pbi1oZWlnaHQ6IDYwdmg7XG59XG5cbi5wYWdlX2lzX3Nob3BfcGFnZSAuc2hvcC1wYWdlIGgxIC50ZXh0LXB1cnBsZSxcbi5wYWdlX2lzX3Nob3BfcGFnZSAuc2hvcC1wYWdlIC5oMSAudGV4dC1wdXJwbGUge1xuICBjb2xvcjogI2EzN2ViYTtcbn1cblxuLnBhZ2VfaXNfc2hvcF9wYWdlIC5zaG9wLXBhZ2UgaDEgLnRleHQtdGVhbCxcbi5wYWdlX2lzX3Nob3BfcGFnZSAuc2hvcC1wYWdlIC5oMSAudGV4dC10ZWFsIHtcbiAgY29sb3I6ICM3ZWJhYWQ7XG59XG5cbi5wYWdlX2lzX3Nob3BfcGFnZSAuZHJvcGRvd24taXRlbS5hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1saWdodCk7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5wYWdlX2lzX3Nob3BfcGFnZSAuZHJvcGRvd24taXRlbS5hY3RpdmU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4pyTXCI7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICBjb2xvcjogdmFyKC0tYnMtc3VjY2Vzcyk7XG59XG5cbi5wYWdlX2lzX3Nob3BfcGFnZSAudmlldy10b2dnbGUtYnRuLmRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC42O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4ucGFnZV9pc19zaG9wX3BhZ2UgLnByb2R1Y3RzLWNvbnRhaW5lci5sb2FkaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiA0MDBweDtcbn1cblxuLnBhZ2VfaXNfc2hvcF9wYWdlIC5wcm9kdWN0cy1jb250YWluZXIubG9hZGluZzo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgei1pbmRleDogMTA7XG59XG5cbi5wYWdlX2lzX3Nob3BfcGFnZSAucHJvZHVjdHMtY29udGFpbmVyLmxvYWRpbmc6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBtYXJnaW46IC0yMHB4IDAgMCAtMjBweDtcbiAgYm9yZGVyOiA0cHggc29saWQgI2YzZjNmMztcbiAgYm9yZGVyLXRvcDogNHB4IHNvbGlkIHZhcigtLWJzLXByaW1hcnkpO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGFuaW1hdGlvbjogc3BpbiAxcyBsaW5lYXIgaW5maW5pdGU7XG4gIHotaW5kZXg6IDExO1xufVxuXG4ucGFnZV9pc19zaG9wX3BhZ2UgLmZpbHRlci1zaWRlYmFyLWNhcmQge1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB0b3A6IDFyZW07XG59XG5cbi5wYWdlX2lzX3Nob3BfcGFnZSAuZmlsdGVyLXNpZGViYXItY2FyZCAuZmlsdGVyLXNlY3Rpb24ge1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKSAhaW1wb3J0YW50O1xufVxuXG4ucGFnZV9pc19zaG9wX3BhZ2UgLmZpbHRlci1zaWRlYmFyLWNhcmQgLmZpbHRlci1zZWN0aW9uIC5zb3J0LW9wdGlvbixcbi5wYWdlX2lzX3Nob3BfcGFnZSAuZmlsdGVyLXNpZGViYXItY2FyZCAuZmlsdGVyLXNlY3Rpb24gLmRpYW1vbmQtc2hhcGUtb3B0aW9uIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG59XG5cbi5wYWdlX2lzX3Nob3BfcGFnZSAuZmlsdGVyLXNpZGViYXItY2FyZCAuZmlsdGVyLXNlY3Rpb24gLnNvcnQtb3B0aW9uLmFjdGl2ZSxcbi5wYWdlX2lzX3Nob3BfcGFnZSAuZmlsdGVyLXNpZGViYXItY2FyZCAuZmlsdGVyLXNlY3Rpb24gLnNvcnQtb3B0aW9uOmhvdmVyLFxuLnBhZ2VfaXNfc2hvcF9wYWdlIC5maWx0ZXItc2lkZWJhci1jYXJkIC5maWx0ZXItc2VjdGlvbiAuZGlhbW9uZC1zaGFwZS1vcHRpb24uYWN0aXZlLFxuLnBhZ2VfaXNfc2hvcF9wYWdlIC5maWx0ZXItc2lkZWJhci1jYXJkIC5maWx0ZXItc2VjdGlvbiAuZGlhbW9uZC1zaGFwZS1vcHRpb246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KSAhaW1wb3J0YW50O1xuICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLnBhZ2VfaXNfc2hvcF9wYWdlIC5maWx0ZXItc2lkZWJhci1jYXJkIC5maWx0ZXItc2VjdGlvbiAuZGlhbW9uZC1zaGFwZS1vcHRpb24ge1xuICBhc3BlY3QtcmF0aW86IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4ucGFnZV9pc19zaG9wX3BhZ2UgLmZpbHRlci1zaWRlYmFyLWNhcmQgLmZpbHRlci1zZWN0aW9uIC5kaWFtb25kLXNoYXBlLW9wdGlvbi5hY3RpdmUge1xuICBib3JkZXItY29sb3I6IHZhcigtLWJzLXByaW1hcnkpICFpbXBvcnRhbnQ7XG59XG5cbi5wYWdlX2lzX3Nob3BfcGFnZSAuZmlsdGVyLXNpZGViYXItY2FyZCAuZmlsdGVyLXNlY3Rpb24gaDYgLmZpbHRlci1jb3VudC1iYWRnZSxcbi5wYWdlX2lzX3Nob3BfcGFnZSAuZmlsdGVyLXNpZGViYXItY2FyZCAuZmlsdGVyLXNlY3Rpb24gLmg2IC5maWx0ZXItY291bnQtYmFkZ2Uge1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4ucGFnZV9pc19zaG9wX3BhZ2UgLmZpbHRlci1hY3RpdmUuZm9ybS1jb250cm9sLFxuLnBhZ2VfaXNfc2hvcF9wYWdlIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuZmlsdGVyLWFjdGl2ZS5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucGFnZV9pc19zaG9wX3BhZ2UgLmZpbHRlci1hY3RpdmUuc2VsZWN0Mi1zZWxlY3Rpb24sXG4ucGFnZV9pc19zaG9wX3BhZ2UgLmZpbHRlci1hY3RpdmUuZm9ybS1zZWxlY3Qge1xuICBib3JkZXItY29sb3I6IHZhcigtLWJzLXByaW1hcnkpICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKHZhcigtLWJzLXByaW1hcnktcmdiKSwgMC4xNSk7XG59XG5cbi5wYWdlX2lzX3Nob3BfcGFnZSAuZmlsdGVyLWFjdGl2ZS5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xufVxuXG4ucGFnZV9pc19zaG9wX3BhZ2UgLmZvcm0tY29udHJvbCxcbi5wYWdlX2lzX3Nob3BfcGFnZSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlX2lzX3Nob3BfcGFnZSAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4ucGFnZV9pc19zaG9wX3BhZ2UgLmZvcm0tc2VsZWN0LFxuLnBhZ2VfaXNfc2hvcF9wYWdlIC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG59XG5cbi5wYWdlX2lzX3Nob3BfcGFnZSAuYWN0aXZlLWZpbHRlcnMtY2FyZCAuYmFkZ2Uge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG4ucGFnZV9pc19zaG9wX3BhZ2UgLmFjdGl2ZS1maWx0ZXJzLWNhcmQgLmJhZGdlIGEge1xuICBvcGFjaXR5OiAwLjg7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluLW91dDtcbn1cblxuLnBhZ2VfaXNfc2hvcF9wYWdlIC5hY3RpdmUtZmlsdGVycy1jYXJkIC5iYWRnZSBhOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnBhZ2VfaXNfc2hvcF9wYWdlIC5wcmljZS1yYW5nZS1zbGlkZXIge1xuICBtYXJnaW46IDFyZW0gMC41cmVtO1xufVxuXG4ucGFnZV9pc19zaG9wX3BhZ2UgLnByaWNlLXJhbmdlLXNsaWRlciAudWktc2xpZGVyLXJhbmdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG59XG5cbi5wYWdlX2lzX3Nob3BfcGFnZSAucHJpY2UtcmFuZ2Utc2xpZGVyIC51aS1zbGlkZXItaGFuZGxlIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbn1cblxuLnBhZ2VfaXNfc2hvcF9wYWdlIC5wcmljZS1yYW5nZS1zbGlkZXIgLnVpLXNsaWRlci1oYW5kbGU6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSh2YXIoLS1icy1wcmltYXJ5LXJnYiksIDAuMjUpO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLnBhZ2VfaXNfc2hvcF9wYWdlIC5maWx0ZXItdG9nZ2xlLW1vYmlsZSB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDcwcHg7XG4gICAgei1pbmRleDogMTAwO1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc3BpbiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuLmJnLXB1cnBsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhMzdlYmEgIWltcG9ydGFudDtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4uYmctdGVhbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3ZWJhYWQgIWltcG9ydGFudDtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4udGV4dC1wdXJwbGUge1xuICBjb2xvcjogI2EzN2ViYSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC10ZWFsIHtcbiAgY29sb3I6ICM3ZWJhYWQgIWltcG9ydGFudDtcbn1cblxuI2ZpbHRlck9mZmNhbnZhcyAub2ZmY2FudmFzLWJvZHkgLmZpbHRlci1mb3JtIC5jYXJkIHtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuI2ZpbHRlck9mZmNhbnZhcyAub2ZmY2FudmFzLWJvZHkgLmZpbHRlci1mb3JtIC5jYXJkIC5jYXJkLWJvZHkge1xuICBwYWRkaW5nOiAwO1xufVxuXG4jZmlsdGVyT2ZmY2FudmFzIC5hcHBseS1maWx0ZXJzLW1vYmlsZSB7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIGJvdHRvbTogMDtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIHBhZGRpbmc6IDFyZW07XG4gIG1hcmdpbjogMCAtMXJlbSAtMXJlbTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJzLWdyYXktMzAwKTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG4gIC5wYWdlX2lzX3Nob3BfcGFnZSAuc2hvcC1wYWdlIC5wYWdlLWhlYWRlciB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICAgIGdhcDogMXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Nob3BfcGFnZSAuc2hvcC1wYWdlIC5wYWdlLWhlYWRlciBoMSxcbiAgLnBhZ2VfaXNfc2hvcF9wYWdlIC5zaG9wLXBhZ2UgLnBhZ2UtaGVhZGVyIC5oMSB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gIH1cblxuICAucGFnZV9pc19zaG9wX3BhZ2UgLnNob3AtcGFnZSAucGFnZS1oZWFkZXIgLmRyb3Bkb3duIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Nob3BfcGFnZSAuc2hvcC1wYWdlIC5wYWdlLWhlYWRlciAuZHJvcGRvd24gLmJ0biB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG5cbiAgLnBhZ2VfaXNfc2hvcF9wYWdlIC5zaG9wLXBhZ2UgLnZpZXctdG9nZ2xlLWJ0biB7XG4gICAgZmxleDogMTtcbiAgfVxufVxuXG4vKipcbiAqIFNob3BwaW5nIENhcnQgUGFnZSBTdHlsZXNcbiAqIFN0eWxlcyBzcGVjaWZpYyB0byB0aGUgc2hvcHBpbmcgY2FydCBwYWdlc1xuICovXG5cbi5wYWdlX2lzX2NhcnRfcGFnZSAuY2FyZC1ib2R5ID4gLmFsZXJ0LFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLmNhcmQtYm9keSA+IC5hbGVydCB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHggIWltcG9ydGFudDtcbn1cblxuLnBhZ2VfaXNfY2FydF9wYWdlIC5iZy1wdXJwbGUsXG4ucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAuYmctcHVycGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2EzN2ViYSAhaW1wb3J0YW50O1xuICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLnBhZ2VfaXNfY2FydF9wYWdlIC5iZy10ZWFsLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLmJnLXRlYWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2ViYWFkICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLmNhcnQtcXVhbnRpdHktY29udHJvbCxcbi5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC5jYXJ0LXF1YW50aXR5LWNvbnRyb2wge1xuICBtYXgtd2lkdGg6IDEyMHB4O1xufVxuXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLmNhcnQtcXVhbnRpdHktY29udHJvbCAuYnRuLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLmNhcnQtcXVhbnRpdHktY29udHJvbCAuYnRuIHtcbiAgd2lkdGg6IDM4cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLmNhcnQtcXVhbnRpdHktY29udHJvbCAuYnRuIGksXG4ucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAuY2FydC1xdWFudGl0eS1jb250cm9sIC5idG4gaSB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbn1cblxuLnBhZ2VfaXNfY2FydF9wYWdlIC5jYXJ0LXF1YW50aXR5LWNvbnRyb2wgLmZvcm0tY29udHJvbCxcbi5wYWdlX2lzX2NhcnRfcGFnZSAuY2FydC1xdWFudGl0eS1jb250cm9sIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2VfaXNfY2FydF9wYWdlIC5jYXJ0LXF1YW50aXR5LWNvbnRyb2wgLnNlbGVjdDItc2VsZWN0aW9uLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLmNhcnQtcXVhbnRpdHktY29udHJvbCAuZm9ybS1jb250cm9sLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLmNhcnQtcXVhbnRpdHktY29udHJvbCAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC5jYXJ0LXF1YW50aXR5LWNvbnRyb2wgLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgYm9yZGVyLWxlZnQ6IDA7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLnBhZ2VfaXNfY2FydF9wYWdlIC5jYXJ0LXF1YW50aXR5LWNvbnRyb2wgLmZvcm0tY29udHJvbDpmb2N1cyxcbi5wYWdlX2lzX2NhcnRfcGFnZSAuY2FydC1xdWFudGl0eS1jb250cm9sIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2VfaXNfY2FydF9wYWdlIC5jYXJ0LXF1YW50aXR5LWNvbnRyb2wgLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLmNhcnQtcXVhbnRpdHktY29udHJvbCAuZm9ybS1jb250cm9sOmZvY3VzLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLmNhcnQtcXVhbnRpdHktY29udHJvbCAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC5jYXJ0LXF1YW50aXR5LWNvbnRyb2wgLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyLWNvbG9yOiAjZGVlMmU2O1xufVxuXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLnRhYmxlLFxuLnBhZ2VfaXNfY2FydF9wYWdlIC5wcm9zZSB0YWJsZSxcbi5wcm9zZSAucGFnZV9pc19jYXJ0X3BhZ2UgdGFibGUsXG4ucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAudGFibGUsXG4ucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAucHJvc2UgdGFibGUsXG4ucHJvc2UgLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgdGFibGUge1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xufVxuXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLnRhYmxlIC5hbGlnbi1taWRkbGUgdGQsXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLnByb3NlIHRhYmxlIC5hbGlnbi1taWRkbGUgdGQsXG4ucHJvc2UgLnBhZ2VfaXNfY2FydF9wYWdlIHRhYmxlIC5hbGlnbi1taWRkbGUgdGQsXG4ucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAudGFibGUgLmFsaWduLW1pZGRsZSB0ZCxcbi5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC5wcm9zZSB0YWJsZSAuYWxpZ24tbWlkZGxlIHRkLFxuLnByb3NlIC5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIHRhYmxlIC5hbGlnbi1taWRkbGUgdGQge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLnRhYmxlIHRoZWFkIHRoOm50aC1jaGlsZCgxKSxcbi5wYWdlX2lzX2NhcnRfcGFnZSAucHJvc2UgdGFibGUgdGhlYWQgdGg6bnRoLWNoaWxkKDEpLFxuLnByb3NlIC5wYWdlX2lzX2NhcnRfcGFnZSB0YWJsZSB0aGVhZCB0aDpudGgtY2hpbGQoMSksXG4ucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAudGFibGUgdGhlYWQgdGg6bnRoLWNoaWxkKDEpLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLnByb3NlIHRhYmxlIHRoZWFkIHRoOm50aC1jaGlsZCgxKSxcbi5wcm9zZSAucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSB0YWJsZSB0aGVhZCB0aDpudGgtY2hpbGQoMSkge1xuICB3aWR0aDogYXV0bztcbn1cblxuLnBhZ2VfaXNfY2FydF9wYWdlIC50YWJsZSB0aGVhZCB0aDpudGgtY2hpbGQoMiksXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLnByb3NlIHRhYmxlIHRoZWFkIHRoOm50aC1jaGlsZCgyKSxcbi5wcm9zZSAucGFnZV9pc19jYXJ0X3BhZ2UgdGFibGUgdGhlYWQgdGg6bnRoLWNoaWxkKDIpLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLnRhYmxlIHRoZWFkIHRoOm50aC1jaGlsZCgyKSxcbi5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC5wcm9zZSB0YWJsZSB0aGVhZCB0aDpudGgtY2hpbGQoMiksXG4ucHJvc2UgLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgdGFibGUgdGhlYWQgdGg6bnRoLWNoaWxkKDIpIHtcbiAgd2lkdGg6IDEwMHB4O1xufVxuXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLnRhYmxlIHRoZWFkIHRoOm50aC1jaGlsZCgzKSxcbi5wYWdlX2lzX2NhcnRfcGFnZSAucHJvc2UgdGFibGUgdGhlYWQgdGg6bnRoLWNoaWxkKDMpLFxuLnByb3NlIC5wYWdlX2lzX2NhcnRfcGFnZSB0YWJsZSB0aGVhZCB0aDpudGgtY2hpbGQoMyksXG4ucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAudGFibGUgdGhlYWQgdGg6bnRoLWNoaWxkKDMpLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLnByb3NlIHRhYmxlIHRoZWFkIHRoOm50aC1jaGlsZCgzKSxcbi5wcm9zZSAucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSB0YWJsZSB0aGVhZCB0aDpudGgtY2hpbGQoMykge1xuICB3aWR0aDogMTI1cHg7XG59XG5cbi5wYWdlX2lzX2NhcnRfcGFnZSAudGFibGUgdGhlYWQgdGg6bnRoLWNoaWxkKDQpLFxuLnBhZ2VfaXNfY2FydF9wYWdlIC5wcm9zZSB0YWJsZSB0aGVhZCB0aDpudGgtY2hpbGQoNCksXG4ucHJvc2UgLnBhZ2VfaXNfY2FydF9wYWdlIHRhYmxlIHRoZWFkIHRoOm50aC1jaGlsZCg0KSxcbi5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC50YWJsZSB0aGVhZCB0aDpudGgtY2hpbGQoNCksXG4ucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAucHJvc2UgdGFibGUgdGhlYWQgdGg6bnRoLWNoaWxkKDQpLFxuLnByb3NlIC5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIHRhYmxlIHRoZWFkIHRoOm50aC1jaGlsZCg0KSB7XG4gIHdpZHRoOiAxMDBweDtcbn1cblxuLnBhZ2VfaXNfY2FydF9wYWdlIC50YWJsZSB0aGVhZCB0aDpudGgtY2hpbGQoNSksXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLnByb3NlIHRhYmxlIHRoZWFkIHRoOm50aC1jaGlsZCg1KSxcbi5wcm9zZSAucGFnZV9pc19jYXJ0X3BhZ2UgdGFibGUgdGhlYWQgdGg6bnRoLWNoaWxkKDUpLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLnRhYmxlIHRoZWFkIHRoOm50aC1jaGlsZCg1KSxcbi5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC5wcm9zZSB0YWJsZSB0aGVhZCB0aDpudGgtY2hpbGQoNSksXG4ucHJvc2UgLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgdGFibGUgdGhlYWQgdGg6bnRoLWNoaWxkKDUpIHtcbiAgd2lkdGg6IDYwcHg7XG59XG5cbi5wYWdlX2lzX2NhcnRfcGFnZSAudGFibGUgdGQ6bnRoLWNoaWxkKDEpIC5tZS0zLFxuLnBhZ2VfaXNfY2FydF9wYWdlIC5wcm9zZSB0YWJsZSB0ZDpudGgtY2hpbGQoMSkgLm1lLTMsXG4ucHJvc2UgLnBhZ2VfaXNfY2FydF9wYWdlIHRhYmxlIHRkOm50aC1jaGlsZCgxKSAubWUtMyxcbi5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC50YWJsZSB0ZDpudGgtY2hpbGQoMSkgLm1lLTMsXG4ucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAucHJvc2UgdGFibGUgdGQ6bnRoLWNoaWxkKDEpIC5tZS0zLFxuLnByb3NlIC5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIHRhYmxlIHRkOm50aC1jaGlsZCgxKSAubWUtMyB7XG4gIHdpZHRoOiA5MHB4O1xuICBmbGV4LXNocmluazogMDtcbn1cblxuLnBhZ2VfaXNfY2FydF9wYWdlIC50YWJsZSB0ZDpudGgtY2hpbGQoMiksXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLnByb3NlIHRhYmxlIHRkOm50aC1jaGlsZCgyKSxcbi5wcm9zZSAucGFnZV9pc19jYXJ0X3BhZ2UgdGFibGUgdGQ6bnRoLWNoaWxkKDIpLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLnRhYmxlIHRkOm50aC1jaGlsZCgyKSxcbi5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC5wcm9zZSB0YWJsZSB0ZDpudGgtY2hpbGQoMiksXG4ucHJvc2UgLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgdGFibGUgdGQ6bnRoLWNoaWxkKDIpIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHdpZHRoOiAxMDBweDtcbn1cblxuLnBhZ2VfaXNfY2FydF9wYWdlIC50YWJsZSB0ZDpudGgtY2hpbGQoMyksXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLnByb3NlIHRhYmxlIHRkOm50aC1jaGlsZCgzKSxcbi5wcm9zZSAucGFnZV9pc19jYXJ0X3BhZ2UgdGFibGUgdGQ6bnRoLWNoaWxkKDMpLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLnRhYmxlIHRkOm50aC1jaGlsZCgzKSxcbi5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC5wcm9zZSB0YWJsZSB0ZDpudGgtY2hpbGQoMyksXG4ucHJvc2UgLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgdGFibGUgdGQ6bnRoLWNoaWxkKDMpIHtcbiAgd2lkdGg6IDEyNXB4O1xufVxuXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLnRhYmxlIHRkOm50aC1jaGlsZCgzKSAuY2FydC1xdWFudGl0eS1jb250cm9sLFxuLnBhZ2VfaXNfY2FydF9wYWdlIC5wcm9zZSB0YWJsZSB0ZDpudGgtY2hpbGQoMykgLmNhcnQtcXVhbnRpdHktY29udHJvbCxcbi5wcm9zZSAucGFnZV9pc19jYXJ0X3BhZ2UgdGFibGUgdGQ6bnRoLWNoaWxkKDMpIC5jYXJ0LXF1YW50aXR5LWNvbnRyb2wsXG4ucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAudGFibGUgdGQ6bnRoLWNoaWxkKDMpIC5jYXJ0LXF1YW50aXR5LWNvbnRyb2wsXG4ucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAucHJvc2UgdGFibGUgdGQ6bnRoLWNoaWxkKDMpIC5jYXJ0LXF1YW50aXR5LWNvbnRyb2wsXG4ucHJvc2UgLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgdGFibGUgdGQ6bnRoLWNoaWxkKDMpIC5jYXJ0LXF1YW50aXR5LWNvbnRyb2wge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWF4LXdpZHRoOiAxMjBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5wYWdlX2lzX2NhcnRfcGFnZSAudGFibGUgdGQ6bnRoLWNoaWxkKDQpLFxuLnBhZ2VfaXNfY2FydF9wYWdlIC5wcm9zZSB0YWJsZSB0ZDpudGgtY2hpbGQoNCksXG4ucHJvc2UgLnBhZ2VfaXNfY2FydF9wYWdlIHRhYmxlIHRkOm50aC1jaGlsZCg0KSxcbi5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC50YWJsZSB0ZDpudGgtY2hpbGQoNCksXG4ucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAucHJvc2UgdGFibGUgdGQ6bnRoLWNoaWxkKDQpLFxuLnByb3NlIC5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIHRhYmxlIHRkOm50aC1jaGlsZCg0KSB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICB3aWR0aDogMTAwcHg7XG59XG5cbi5wYWdlX2lzX2NhcnRfcGFnZSAudGFibGUgdGQ6bnRoLWNoaWxkKDUpLFxuLnBhZ2VfaXNfY2FydF9wYWdlIC5wcm9zZSB0YWJsZSB0ZDpudGgtY2hpbGQoNSksXG4ucHJvc2UgLnBhZ2VfaXNfY2FydF9wYWdlIHRhYmxlIHRkOm50aC1jaGlsZCg1KSxcbi5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC50YWJsZSB0ZDpudGgtY2hpbGQoNSksXG4ucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAucHJvc2UgdGFibGUgdGQ6bnRoLWNoaWxkKDUpLFxuLnByb3NlIC5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIHRhYmxlIHRkOm50aC1jaGlsZCg1KSB7XG4gIHdpZHRoOiA2MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5wYWdlX2lzX2NhcnRfcGFnZSAuY2FyZCxcbi5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC5jYXJkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLmNhcmQucG9zaXRpb24tc3RpY2t5LFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLmNhcmQucG9zaXRpb24tc3RpY2t5IHtcbiAgei1pbmRleDogMTAyMDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5wYWdlX2lzX2NhcnRfcGFnZSAuY2FyZC5jYXJ0LXN1bW1hcnksXG4gIC5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC5jYXJkLmNhcnQtc3VtbWFyeSB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDJyZW07XG4gIH1cbn1cblxuLnBhZ2VfaXNfY2FydF9wYWdlIC5jYXJkIC5jYXJkLWhlYWRlci5iZy1wcmltYXJ5LFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLmNhcmQgLmNhcmQtaGVhZGVyLmJnLXByaW1hcnkge1xuICBiYWNrZ3JvdW5kOiAjMWUxZTU2ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLmNhcmQgLmNhcmQtaGVhZGVyLmJnLXByaW1hcnkgaDUsXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLmNhcmQgLmNhcmQtaGVhZGVyLmJnLXByaW1hcnkgLmg1LFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLmNhcmQgLmNhcmQtaGVhZGVyLmJnLXByaW1hcnkgaDUsXG4ucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAuY2FyZCAuY2FyZC1oZWFkZXIuYmctcHJpbWFyeSAuaDUge1xuICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxLjRyZW07XG59XG5cbi5wYWdlX2lzX2NhcnRfcGFnZSAuY2FyZCAuY2FyZC1oZWFkZXIuYmctcHJpbWFyeSBoNSBpLFxuLnBhZ2VfaXNfY2FydF9wYWdlIC5jYXJkIC5jYXJkLWhlYWRlci5iZy1wcmltYXJ5IC5oNSBpLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLmNhcmQgLmNhcmQtaGVhZGVyLmJnLXByaW1hcnkgaDUgaSxcbi5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC5jYXJkIC5jYXJkLWhlYWRlci5iZy1wcmltYXJ5IC5oNSBpIHtcbiAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi5wYWdlX2lzX2NhcnRfcGFnZSAuY2FyZCAuYWxlcnQtc3VjY2Vzcyxcbi5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC5jYXJkIC5hbGVydC1zdWNjZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNSwgMTM1LCA4NCwgMC4xKSAhaW1wb3J0YW50O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1LCAxMzUsIDg0LCAwLjIpICFpbXBvcnRhbnQ7XG59XG5cbi5wYWdlX2lzX2NhcnRfcGFnZSAuY2FyZCAuYWxlcnQtc3VjY2VzcyAuYnRuLW91dGxpbmUtZGFuZ2VyLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLmNhcmQgLmFsZXJ0LXN1Y2Nlc3MgLmJ0bi1vdXRsaW5lLWRhbmdlciB7XG4gIC0tYnMtYnRuLWJvcmRlci13aWR0aDogMXB4O1xuICAtLWJzLWJ0bi1ob3Zlci1iZzogI2RjMzU0NTtcbiAgLS1icy1idG4taG92ZXItY29sb3I6IHdoaXRlO1xufVxuXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLmNhcmQgLmJnLWxpZ2h0LFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLmNhcmQgLmJnLWxpZ2h0IHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2Y4ZjlmYSAwJSwgI2U5ZWNlZiAxMDAlKSAhaW1wb3J0YW50O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xufVxuXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLmNhcmQgLmJ0bi1zdWNjZXNzLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLmNhcmQgLmJ0bi1zdWNjZXNzIHtcbiAgYmFja2dyb3VuZDogIzMyMzI4YSAhaW1wb3J0YW50O1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXNpemU6IDAuOTVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgcGFkZGluZzogMC43NXJlbSAxLjVyZW07XG59XG5cbi5wYWdlX2lzX2NhcnRfcGFnZSAuY2FyZCAuYnRuLXN1Y2Nlc3M6aG92ZXIsXG4ucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAuY2FyZCAuYnRuLXN1Y2Nlc3M6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjNDU0NWE4ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4ucGFnZV9pc19jYXJ0X3BhZ2UgLmNhcmQgLmJ0bi1zdWNjZXNzOmZvY3VzLFxuLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLmNhcmQgLmJ0bi1zdWNjZXNzOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDUwLCA1MCwgMTM4LCAwLjI1KTtcbn1cblxuLnBhZ2VfaXNfY2FydF9wYWdlIC5jYXJkLWJvZHkudGV4dC1jZW50ZXIgLmZhLXNob3BwaW5nLWNhcnQsXG4ucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAuY2FyZC1ib2R5LnRleHQtY2VudGVyIC5mYS1zaG9wcGluZy1jYXJ0IHtcbiAgb3BhY2l0eTogMC42O1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG5cbi5wYWdlX2lzX2NhcnRfcGFnZSAuY2FyZC1ib2R5LnRleHQtY2VudGVyIC5idG4tcHJpbWFyeSxcbi5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC5jYXJkLWJvZHkudGV4dC1jZW50ZXIgLmJ0bi1wcmltYXJ5IHtcbiAgcGFkZGluZzogMC43NXJlbSAycmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAucGFnZV9pc19jYXJ0X3BhZ2UgLnBvc2l0aW9uLXN0aWNreSxcbiAgLnBhZ2VfaXNfY2FydF91bmlmaWVkX3BhZ2UgLnBvc2l0aW9uLXN0aWNreSB7XG4gICAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi10b3A6IDJyZW07XG4gIH1cblxuICAucGFnZV9pc19jYXJ0X3BhZ2UgLmNhcmQtZm9vdGVyIC5kLWZsZXgsXG4gIC5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC5jYXJkLWZvb3RlciAuZC1mbGV4IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX2NhcnRfcGFnZSAuY2FyZC1mb290ZXIgLmQtZmxleCAuYnRuLFxuICAucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAuY2FyZC1mb290ZXIgLmQtZmxleCAuYnRuIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcbiAgLnBhZ2VfaXNfY2FydF9wYWdlIC50YWJsZS1yZXNwb25zaXZlLFxuICAucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAudGFibGUtcmVzcG9uc2l2ZSB7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX2NhcnRfcGFnZSAudGFibGUtcmVzcG9uc2l2ZSAuYmFkZ2UsXG4gIC5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC50YWJsZS1yZXNwb25zaXZlIC5iYWRnZSB7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfY2FydF9wYWdlIC50YWJsZS1yZXNwb25zaXZlIC5jYXJ0LXF1YW50aXR5LWNvbnRyb2wsXG4gIC5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIC50YWJsZS1yZXNwb25zaXZlIC5jYXJ0LXF1YW50aXR5LWNvbnRyb2wge1xuICAgIG1heC13aWR0aDogMTAwcHg7XG4gIH1cblxuICAucGFnZV9pc19jYXJ0X3BhZ2UgLnRhYmxlLXJlc3BvbnNpdmUgLmNhcnQtcXVhbnRpdHktY29udHJvbCAuYnRuLFxuICAucGFnZV9pc19jYXJ0X3VuaWZpZWRfcGFnZSAudGFibGUtcmVzcG9uc2l2ZSAuY2FydC1xdWFudGl0eS1jb250cm9sIC5idG4ge1xuICAgIHdpZHRoOiAzMnB4O1xuICAgIHBhZGRpbmc6IDAuMjVyZW07XG4gIH1cbn1cblxuLyoqXG4gKiBJdGVtIERldGFpbHMgUGFnZSAtIENvbXBsZXRlIFJlZGVzaWduXG4gKiBBbWF6b24vZUJheSBpbnNwaXJlZCBsYXlvdXQgd2l0aCBwcm9wZXIgdmlzdWFsIGhpZXJhcmNoeVxuICogQm9keSBjbGFzczogLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2VcbiAqL1xuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAuY29udGFpbmVyLnBhZ2UtYm9keSB7XG4gIG1heC13aWR0aDogMTIwMHB4O1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDQwcHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LW1haW4ge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtbWFpbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDMwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWdhbGxlcnkge1xuICAgIGZsZXg6IDAgMCA0NTBweDtcbiAgICBtYXgtd2lkdGg6IDQ1MHB4O1xuICB9XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWdhbGxlcnkgLm1haW4taW1hZ2UtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWdhbGxlcnkgLm1haW4taW1hZ2UtY29udGFpbmVyOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy10b3A6IDEwMCU7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWdhbGxlcnkgLm1haW4taW1hZ2UtY29udGFpbmVyIC5tYWluLWltYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZ2FsbGVyeSAubWFpbi1pbWFnZS1jb250YWluZXIgLnpvb20taGludCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAxMHB4O1xuICByaWdodDogMTBweDtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICBjb2xvcjogd2hpdGU7XG4gIHBhZGRpbmc6IDVweCAxMHB4O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWdhbGxlcnkgLnRodW1ibmFpbC1ncmlkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maWxsLCBtaW5tYXgoNzBweCwgMWZyKSk7XG4gIGdhcDogOHB4O1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1nYWxsZXJ5IC50aHVtYm5haWwtZ3JpZCAudGh1bWJuYWlsLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNlMGUwZTA7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1nYWxsZXJ5IC50aHVtYm5haWwtZ3JpZCAudGh1bWJuYWlsLWl0ZW06OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLXRvcDogMTAwJTtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZ2FsbGVyeSAudGh1bWJuYWlsLWdyaWQgLnRodW1ibmFpbC1pdGVtIGltZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgcGFkZGluZzogM3B4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1nYWxsZXJ5IC50aHVtYm5haWwtZ3JpZCAudGh1bWJuYWlsLWl0ZW0uYWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiAjMWUxZTU2O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1nYWxsZXJ5IC50aHVtYm5haWwtZ3JpZCAudGh1bWJuYWlsLWl0ZW06aG92ZXIge1xuICBib3JkZXItY29sb3I6ICMyMzJmM2U7XG4gIG9wYWNpdHk6IDAuODtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZ2FsbGVyeSAudGh1bWJuYWlsLWdyaWQgLnRodW1ibmFpbC1pdGVtLnBkZi1wbGFjZWhvbGRlciB7XG4gIGJhY2tncm91bmQ6ICNmNWY1ZjU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1nYWxsZXJ5IC50aHVtYm5haWwtZ3JpZCAudGh1bWJuYWlsLWl0ZW0ucGRmLXBsYWNlaG9sZGVyIC5wZGYtaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBjb2xvcjogIzY2Njtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZ2FsbGVyeSAudGh1bWJuYWlsLWdyaWQgLnRodW1ibmFpbC1pdGVtLnZpZGVvLXBsYWNlaG9sZGVyIHtcbiAgYmFja2dyb3VuZDogIzAwMDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZ2FsbGVyeSAudGh1bWJuYWlsLWdyaWQgLnRodW1ibmFpbC1pdGVtLnZpZGVvLXBsYWNlaG9sZGVyIC5wbGF5LWljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtc2l6ZTogMjRweDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZ2FsbGVyeSAubWVkaWEtc2VjdGlvbiB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTBlMGUwO1xuICBwYWRkaW5nLXRvcDogMTVweDtcbiAgbWFyZ2luLXRvcDogMjBweDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZ2FsbGVyeSAubWVkaWEtc2VjdGlvbiBoNixcbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWdhbGxlcnkgLm1lZGlhLXNlY3Rpb24gLmg2IHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBjb2xvcjogIzMzMztcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZ2FsbGVyeSAubWVkaWEtc2VjdGlvbiAubWVkaWEtcGxhY2Vob2xkZXIge1xuICBiYWNrZ3JvdW5kOiAjZjhmOGY4O1xuICBib3JkZXI6IDFweCBkYXNoZWQgI2NjYztcbiAgcGFkZGluZzogMjBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogIzY2NjtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1nYWxsZXJ5IC5tZWRpYS1zZWN0aW9uIC5tZWRpYS1wbGFjZWhvbGRlciBpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMzJweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgY29sb3I6ICM5OTk7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8ge1xuICBmbGV4OiAxO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTBlMGUwO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIHBhZGRpbmc6IDIwcHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnByb2R1Y3QtdGl0bGUge1xuICBmb250LXNpemU6IDEuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMS4zO1xuICBjb2xvcjogIzBmMTExMTtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTBlMGUwO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5wcmljZS1zZWN0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTBlMGUwO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5wcmljZS1zZWN0aW9uIC5wcmljZS1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gIGdhcDogMTVweDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtaW5mbyAucHJpY2Utc2VjdGlvbiAucHJpY2Utcm93IC5jdXJyZW50LXByaWNlIHtcbiAgZm9udC1zaXplOiAyOHB4O1xuICBjb2xvcjogYmxhY2s7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnByaWNlLXNlY3Rpb24gLnByaWNlLXJvdyAub3JpZ2luYWwtcHJpY2Uge1xuICBmb250LXNpemU6IDE4cHg7XG4gIGNvbG9yOiAjNTY1OTU5O1xuICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtaW5mbyAucHJpY2Utc2VjdGlvbiAucHJpY2Utcm93IC5kaXNjb3VudC1iYWRnZSB7XG4gIGJhY2tncm91bmQ6ICNjYzBjMzk7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgcGFkZGluZzogNHB4IDhweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5wcmljZS1zZWN0aW9uIC5wcmljZS1kZXRhaWxzIHtcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGNvbG9yOiAjMDA3MTg1O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5wcmljZS1zZWN0aW9uIC5wcmljZS1kZXRhaWxzIC5zaGlwcGluZy1pbmZvIHtcbiAgY29sb3I6ICM1NjU5NTk7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnByaWNlLXNlY3Rpb24gLnJldmlld3Mtc3VtbWFyeS1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICBmb250LXNpemU6IDE0cHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnByaWNlLXNlY3Rpb24gLnJldmlld3Mtc3VtbWFyeS1pbmxpbmUgLnJldmlld3MtbGluayB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICMwMDcxODU7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnByaWNlLXNlY3Rpb24gLnJldmlld3Mtc3VtbWFyeS1pbmxpbmUgLnJldmlld3MtbGluazpob3ZlciB7XG4gIGNvbG9yOiAjYzQ1NTAwO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtaW5mbyAucHJpY2Utc2VjdGlvbiAucmV2aWV3cy1zdW1tYXJ5LWlubGluZSAucmV2aWV3cy1saW5rIC5zdGFycyB7XG4gIGNvbG9yOiAjMWUxZTU2O1xuICBmb250LXNpemU6IDE0cHg7XG4gIG1hcmdpbi1yaWdodDogM3B4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5wcmljZS1zZWN0aW9uIC5yZXZpZXdzLXN1bW1hcnktaW5saW5lIC5yZXZpZXdzLWxpbmsgLnJldmlldy1jb3VudCB7XG4gIGNvbG9yOiAjMDA3MTg1O1xuICBmb250LXNpemU6IDEzcHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnNlbGxlci1jYXJkIHtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBwYWRkaW5nOiAxNXB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5zZWxsZXItY2FyZCAuc2VsbGVyLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMTJweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtaW5mbyAuc2VsbGVyLWNhcmQgLnNlbGxlci1oZWFkZXIgLnNlbGxlci1hdmF0YXIge1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBib3JkZXI6IDJweCBzb2xpZCAjZGRkO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5zZWxsZXItY2FyZCAuc2VsbGVyLWhlYWRlciAuc2VsbGVyLWluZm8ge1xuICBmbGV4OiAxO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5zZWxsZXItY2FyZCAuc2VsbGVyLWhlYWRlciAuc2VsbGVyLWluZm8gLnNlbGxlci1uYW1lIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICMwZjExMTE7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbWFyZ2luLWJvdHRvbTogMnB4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5zZWxsZXItY2FyZCAuc2VsbGVyLWhlYWRlciAuc2VsbGVyLWluZm8gLnNlbGxlci1uYW1lIGEge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5zZWxsZXItY2FyZCAuc2VsbGVyLWhlYWRlciAuc2VsbGVyLWluZm8gLnNlbGxlci1uYW1lIGE6aG92ZXIge1xuICBjb2xvcjogI2M0NTUwMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnNlbGxlci1jYXJkIC5zZWxsZXItaGVhZGVyIC5zZWxsZXItaW5mbyAuc2VsbGVyLXJhdGluZyB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgY29sb3I6ICM1NjU5NTk7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnNlbGxlci1jYXJkIC5zZWxsZXItaGVhZGVyIC5zZWxsZXItaW5mbyAuc2VsbGVyLXJhdGluZyAuc3RhcnMge1xuICBjb2xvcjogIzFlMWU1NjtcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnNlbGxlci1jYXJkIC5zZWxsZXItZGV0YWlscyB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgY29sb3I6ICM1NjU5NTk7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnNlbGxlci1jYXJkIC5zZWxsZXItZGV0YWlscyAuZGV0YWlsLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWFyZ2luLWJvdHRvbTogM3B4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5zZWxsZXItY2FyZCAuc2VsbGVyLWRldGFpbHMgLmRldGFpbC1yb3cgc3Ryb25nIHtcbiAgY29sb3I6ICMwZjExMTE7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnN0b2NrLXN0YXR1cyB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIGZvbnQtc2l6ZTogMThweDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtaW5mbyAuc3RvY2stc3RhdHVzLmluLXN0b2NrIHtcbiAgY29sb3I6ICMwMDc2MDA7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnN0b2NrLXN0YXR1cy5sb3ctc3RvY2sge1xuICBjb2xvcjogI2IxMjcwNDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtaW5mbyAuc3RvY2stc3RhdHVzLm91dC1vZi1zdG9jayB7XG4gIGNvbG9yOiAjYjEyNzA0O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5wcm9kdWN0LW9wdGlvbnMge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5wcm9kdWN0LW9wdGlvbnMgLm9wdGlvbi1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2UwZTBlMDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtaW5mbyAucHJvZHVjdC1vcHRpb25zIC5vcHRpb24tZ3JvdXA6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnByb2R1Y3Qtb3B0aW9ucyAub3B0aW9uLWdyb3VwIC5vcHRpb24tbGFiZWwge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAjMGYxMTExO1xuICBtYXJnaW4tYm90dG9tOiA4cHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnByb2R1Y3Qtb3B0aW9ucyAub3B0aW9uLWdyb3VwIC5jb2xvci1vcHRpb25zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiA4cHg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtaW5mbyAucHJvZHVjdC1vcHRpb25zIC5vcHRpb24tZ3JvdXAgLmNvbG9yLW9wdGlvbnMgLmNvbG9yLXN3YXRjaCB7XG4gIHdpZHRoOiAzMnB4O1xuICBoZWlnaHQ6IDMycHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNlMGUwZTA7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnByb2R1Y3Qtb3B0aW9ucyAub3B0aW9uLWdyb3VwIC5jb2xvci1vcHRpb25zIC5jb2xvci1zd2F0Y2guYWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiAjMWUxZTU2O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5wcm9kdWN0LW9wdGlvbnMgLm9wdGlvbi1ncm91cCAuY29sb3Itb3B0aW9ucyAuY29sb3Itc3dhdGNoLmFjdGl2ZTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIuKck1wiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LXNoYWRvdzogMCAwIDJweCByZ2JhKDAsIDAsIDAsIDAuNSk7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnByb2R1Y3Qtb3B0aW9ucyAub3B0aW9uLWdyb3VwIC5jb2xvci1vcHRpb25zIC5jb2xvci1zd2F0Y2g6aG92ZXIge1xuICBib3JkZXItY29sb3I6ICMyMzJmM2U7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnByb2R1Y3Qtb3B0aW9ucyAub3B0aW9uLWdyb3VwIHNlbGVjdC5mb3JtLXNlbGVjdCB7XG4gIG1heC13aWR0aDogMjAwcHg7XG4gIGJvcmRlci1jb2xvcjogIzg4OGM4YztcbiAgYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoMTUsIDE3LCAxNywgMC4xNSk7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnByb2R1Y3Qtb3B0aW9ucyAub3B0aW9uLWdyb3VwIHNlbGVjdC5mb3JtLXNlbGVjdDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogI2U3NzYwMDtcbiAgYm94LXNoYWRvdzogMCAwIDNweCAycHggcmdiYSgyMjgsIDEyMSwgMTcsIDAuNSk7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnByb2R1Y3Qtb3B0aW9ucyAub3B0aW9uLWdyb3VwIC5jdXN0b20tb3B0aW9uLXBsYWNlaG9sZGVyIHtcbiAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgYm9yZGVyOiAxcHggZGFzaGVkICNjY2M7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICM2NjY7XG4gIGZvbnQtc2l6ZTogMTNweDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtaW5mbyAucXVhbnRpdHktc2VjdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnF1YW50aXR5LXNlY3Rpb24gLnF1YW50aXR5LWxhYmVsIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBtYXJnaW4tYm90dG9tOiA4cHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnF1YW50aXR5LXNlY3Rpb24gLnF1YW50aXR5LXNlbGVjdG9yIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM4ODhjOGM7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtaW5mbyAucXVhbnRpdHktc2VjdGlvbiAucXVhbnRpdHktc2VsZWN0b3IgLnF0eS1idG4ge1xuICBiYWNrZ3JvdW5kOiAjZjBmMmYyO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDhweCAxMnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgY29sb3I6ICMwZjExMTE7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnF1YW50aXR5LXNlY3Rpb24gLnF1YW50aXR5LXNlbGVjdG9yIC5xdHktYnRuOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2UzZTZlNjtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtaW5mbyAucXVhbnRpdHktc2VjdGlvbiAucXVhbnRpdHktc2VsZWN0b3IgLnF0eS1idG46YWN0aXZlIHtcbiAgYmFja2dyb3VuZDogI2RkZDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtaW5mbyAucXVhbnRpdHktc2VjdGlvbiAucXVhbnRpdHktc2VsZWN0b3IgLnF0eS1pbnB1dCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgd2lkdGg6IDUwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5xdWFudGl0eS1zZWN0aW9uIC5xdWFudGl0eS1zZWxlY3RvciAucXR5LWlucHV0OmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgYmFja2dyb3VuZDogI2ZmZjdlNjtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtaW5mbyAuYWN0aW9uLWJ1dHRvbnMge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlMGUwZTA7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnRydXN0LWJhZGdlcyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMTAwcHgsIDFmcikpO1xuICBnYXA6IDE1cHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnRydXN0LWJhZGdlcyAuYmFkZ2UtaXRlbSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtaW5mbyAudHJ1c3QtYmFkZ2VzIC5iYWRnZS1pdGVtIGkge1xuICBmb250LXNpemU6IDI0cHg7XG4gIGNvbG9yOiAjMWUxZTU2O1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWluZm8gLnRydXN0LWJhZGdlcyAuYmFkZ2UtaXRlbSAuYmFkZ2UtdGV4dCB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgY29sb3I6ICM1NjU5NTk7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWRldGFpbHMtc2VjdGlvbiB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTBlMGUwO1xuICBwYWRkaW5nLXRvcDogMzBweDtcbiAgbWFyZ2luLXRvcDogMzBweDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZGV0YWlscy1zZWN0aW9uIC5kZXRhaWxzLWNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogMTAwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZGV0YWlscy1zZWN0aW9uIC5zZWN0aW9uLWhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICMwZjExMTE7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzFlMWU1Njtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZGV0YWlscy1zZWN0aW9uIC5rZXktZmVhdHVyZXMge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1kZXRhaWxzLXNlY3Rpb24gLmtleS1mZWF0dXJlcyB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWRldGFpbHMtc2VjdGlvbiAua2V5LWZlYXR1cmVzIHVsIGxpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZGV0YWlscy1zZWN0aW9uIC5rZXktZmVhdHVyZXMgdWwgbGk6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4pyTXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgY29sb3I6ICMxZTFlNTY7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1kZXRhaWxzLXNlY3Rpb24gLnByb2R1Y3QtZGVzY3JpcHRpb24ge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjg7XG4gIGNvbG9yOiAjMGYxMTExO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1kZXRhaWxzLXNlY3Rpb24gLnByb2R1Y3QtZGVzY3JpcHRpb24gcCB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWRldGFpbHMtc2VjdGlvbiAudmlkZW8tc2VjdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWRldGFpbHMtc2VjdGlvbiAudmlkZW8tc2VjdGlvbiAudmlkZW8tY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1kZXRhaWxzLXNlY3Rpb24gLnZpZGVvLXNlY3Rpb24gLnZpZGVvLWNvbnRhaW5lciAudmlkZW8tZW1iZWQtd3JhcHBlciB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWRldGFpbHMtc2VjdGlvbiAudmlkZW8tc2VjdGlvbiAudmlkZW8tY29udGFpbmVyIC52aWRlby1lbWJlZC13cmFwcGVyLm1wNC12aWRlby13cmFwcGVyIC52aWRlby1qcyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWRldGFpbHMtc2VjdGlvbiAudmlkZW8tc2VjdGlvbiAudmlkZW8tY29udGFpbmVyIC52aWRlby1lbWJlZC13cmFwcGVyLm1wNC12aWRlby13cmFwcGVyIC52aWRlby1qcyAudmpzLWJpZy1wbGF5LWJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogM2VtO1xuICBsaW5lLWhlaWdodDogMS41ZW07XG4gIGhlaWdodDogMS41ZW07XG4gIHdpZHRoOiAzZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuM2VtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDQzLCA1MSwgNjMsIDAuNyk7XG4gIGJvcmRlcjogMC4wNjY2NmVtIHNvbGlkICNmZmY7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1kZXRhaWxzLXNlY3Rpb24gLnZpZGVvLXNlY3Rpb24gLnZpZGVvLWNvbnRhaW5lciAudmlkZW8tZW1iZWQtd3JhcHBlci5tcDQtdmlkZW8td3JhcHBlciAudmlkZW8tanMgLnZqcy1jb250cm9sLWJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNDMsIDUxLCA2MywgMC43KTtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZGV0YWlscy1zZWN0aW9uIC5zcGVjaWZpY2F0aW9ucyB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWRldGFpbHMtc2VjdGlvbiAuc3BlY2lmaWNhdGlvbnMgLnNwZWMtdGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZGV0YWlscy1zZWN0aW9uIC5zcGVjaWZpY2F0aW9ucyAuc3BlYy10YWJsZSB0ciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTBlMGUwO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1kZXRhaWxzLXNlY3Rpb24gLnNwZWNpZmljYXRpb25zIC5zcGVjLXRhYmxlIHRyOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1kZXRhaWxzLXNlY3Rpb24gLnNwZWNpZmljYXRpb25zIC5zcGVjLXRhYmxlIHRoIHtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgcGFkZGluZzogMTJweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBjb2xvcjogIzBmMTExMTtcbiAgd2lkdGg6IDMwJTtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZGV0YWlscy1zZWN0aW9uIC5zcGVjaWZpY2F0aW9ucyAuc3BlYy10YWJsZSB0ZCB7XG4gIHBhZGRpbmc6IDEycHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgY29sb3I6ICM1NjU5NTk7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWRldGFpbHMtc2VjdGlvbiAuc2hpcHBpbmctcmV0dXJucy1ib3gge1xuICBiYWNrZ3JvdW5kOiAjZjVmN2ZhO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZDVkOWQ5O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWRldGFpbHMtc2VjdGlvbiAuc2hpcHBpbmctcmV0dXJucy1ib3ggLmJveC1oZWFkZXIge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjMGYxMTExO1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1kZXRhaWxzLXNlY3Rpb24gLnNoaXBwaW5nLXJldHVybnMtYm94IC5ib3gtaGVhZGVyIGkge1xuICBjb2xvcjogIzFlMWU1NjtcbiAgbWFyZ2luLXJpZ2h0OiA4cHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWRldGFpbHMtc2VjdGlvbiAuc2hpcHBpbmctcmV0dXJucy1ib3ggLmluZm8tZ3JpZCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMjUwcHgsIDFmcikpO1xuICBnYXA6IDIwcHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWRldGFpbHMtc2VjdGlvbiAuc2hpcHBpbmctcmV0dXJucy1ib3ggLmluZm8tZ3JpZCAuaW5mby1pdGVtIGg2LFxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZGV0YWlscy1zZWN0aW9uIC5zaGlwcGluZy1yZXR1cm5zLWJveCAuaW5mby1ncmlkIC5pbmZvLWl0ZW0gLmg2IHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogIzBmMTExMTtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1kZXRhaWxzLXNlY3Rpb24gLnNoaXBwaW5nLXJldHVybnMtYm94IC5pbmZvLWdyaWQgLmluZm8taXRlbSB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5wcm9kdWN0LWRldGFpbHMtc2VjdGlvbiAuc2hpcHBpbmctcmV0dXJucy1ib3ggLmluZm8tZ3JpZCAuaW5mby1pdGVtIHVsIGxpIHtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBjb2xvcjogIzU2NTk1OTtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZGV0YWlscy1zZWN0aW9uIC5zaGlwcGluZy1yZXR1cm5zLWJveCAuaW5mby1ncmlkIC5pbmZvLWl0ZW0gdWwgbGk6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4oCiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgY29sb3I6ICM4ODg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC50YWJzLXNlY3Rpb24ge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAudGFicy1zZWN0aW9uIC5uYXYtdGFicyB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZTBlMGUwO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAudGFicy1zZWN0aW9uIC5uYXYtdGFicyAubmF2LWxpbmsge1xuICBjb2xvcjogIzU2NTk1OTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDEycHggMjBweDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAudGFicy1zZWN0aW9uIC5uYXYtdGFicyAubmF2LWxpbms6aG92ZXIge1xuICBjb2xvcjogIzBmMTExMTtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnRhYnMtc2VjdGlvbiAubmF2LXRhYnMgLm5hdi1saW5rLmFjdGl2ZSB7XG4gIGNvbG9yOiAjMGYxMTExO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjMWUxZTU2O1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAudGFicy1zZWN0aW9uIC50YWItY29udGVudCB7XG4gIHBhZGRpbmc6IDMwcHggMDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnRhYnMtc2VjdGlvbiAudGFiLWNvbnRlbnQgLnJldmlld3MtY29udGVudCAucmV2aWV3LXN1bW1hcnkge1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBwYWRkaW5nOiAyMHB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC50YWJzLXNlY3Rpb24gLnRhYi1jb250ZW50IC5yZXZpZXdzLWNvbnRlbnQgLnJldmlldy1zdW1tYXJ5IC5hdmVyYWdlLXJhdGluZyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMTVweDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnRhYnMtc2VjdGlvbiAudGFiLWNvbnRlbnQgLnJldmlld3MtY29udGVudCAucmV2aWV3LXN1bW1hcnkgLmF2ZXJhZ2UtcmF0aW5nIC5yYXRpbmctbnVtYmVyIHtcbiAgZm9udC1zaXplOiA0OHB4O1xuICBmb250LXdlaWdodDogMzAwO1xuICBjb2xvcjogIzBmMTExMTtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnRhYnMtc2VjdGlvbiAudGFiLWNvbnRlbnQgLnJldmlld3MtY29udGVudCAucmV2aWV3LXN1bW1hcnkgLmF2ZXJhZ2UtcmF0aW5nIC5zdGFycyB7XG4gIGNvbG9yOiAjMWUxZTU2O1xuICBmb250LXNpemU6IDIwcHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC50YWJzLXNlY3Rpb24gLnRhYi1jb250ZW50IC5yZXZpZXdzLWNvbnRlbnQgLnJldmlldy1zdW1tYXJ5IC5hdmVyYWdlLXJhdGluZyAucmV2aWV3LWNvdW50IHtcbiAgY29sb3I6ICM1NjU5NTk7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnRhYnMtc2VjdGlvbiAudGFiLWNvbnRlbnQgLnJldmlld3MtY29udGVudCAucmV2aWV3LWl0ZW0ge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2UwZTBlMDtcbiAgcGFkZGluZzogMjBweCAwO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAudGFicy1zZWN0aW9uIC50YWItY29udGVudCAucmV2aWV3cy1jb250ZW50IC5yZXZpZXctaXRlbSAucmV2aWV3LWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnRhYnMtc2VjdGlvbiAudGFiLWNvbnRlbnQgLnJldmlld3MtY29udGVudCAucmV2aWV3LWl0ZW0gLnJldmlldy1oZWFkZXIgLnJldmlld2VyLW5hbWUge1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogIzBmMTExMTtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnRhYnMtc2VjdGlvbiAudGFiLWNvbnRlbnQgLnJldmlld3MtY29udGVudCAucmV2aWV3LWl0ZW0gLnJldmlldy1oZWFkZXIgLnJldmlldy1kYXRlIHtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBjb2xvcjogIzU2NTk1OTtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnRhYnMtc2VjdGlvbiAudGFiLWNvbnRlbnQgLnJldmlld3MtY29udGVudCAucmV2aWV3LWl0ZW0gLnJldmlldy1yYXRpbmcge1xuICBjb2xvcjogIzFlMWU1NjtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnRhYnMtc2VjdGlvbiAudGFiLWNvbnRlbnQgLnJldmlld3MtY29udGVudCAucmV2aWV3LWl0ZW0gLnJldmlldy10ZXh0IHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMS42O1xuICBjb2xvcjogIzBmMTExMTtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnRhYnMtc2VjdGlvbiAudGFiLWNvbnRlbnQgLnFhLWNvbnRlbnQgLmFzay1xdWVzdGlvbi1ib3gge1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBwYWRkaW5nOiAyMHB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC50YWJzLXNlY3Rpb24gLnRhYi1jb250ZW50IC5xYS1jb250ZW50IC5hc2stcXVlc3Rpb24tYm94IHRleHRhcmVhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM4ODhjOGM7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgcGFkZGluZzogMTBweDtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAudGFicy1zZWN0aW9uIC50YWItY29udGVudCAucWEtY29udGVudCAuYXNrLXF1ZXN0aW9uLWJveCB0ZXh0YXJlYTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogI2U3NzYwMDtcbiAgYm94LXNoYWRvdzogMCAwIDNweCAycHggcmdiYSgyMjgsIDEyMSwgMTcsIDAuNSk7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC50YWJzLXNlY3Rpb24gLnRhYi1jb250ZW50IC5xYS1jb250ZW50IC5xYS1pdGVtIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlMGUwZTA7XG4gIHBhZGRpbmc6IDIwcHggMDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnRhYnMtc2VjdGlvbiAudGFiLWNvbnRlbnQgLnFhLWNvbnRlbnQgLnFhLWl0ZW0ucHJpdmF0ZS1yZXNwb25zZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAjNmM3NTdkO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAudGFicy1zZWN0aW9uIC50YWItY29udGVudCAucWEtY29udGVudCAucWEtaXRlbS5wcml2YXRlLXJlc3BvbnNlIC5wcml2YXRlLWxhYmVsIHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAudGFicy1zZWN0aW9uIC50YWItY29udGVudCAucWEtY29udGVudCAucWEtaXRlbS5wcml2YXRlLXJlc3BvbnNlIC5wcml2YXRlLWxhYmVsIGkge1xuICBtYXJnaW4tcmlnaHQ6IDVweDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnRhYnMtc2VjdGlvbiAudGFiLWNvbnRlbnQgLnFhLWNvbnRlbnQgLnFhLWl0ZW0gLnF1ZXN0aW9uIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICMwZjExMTE7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC50YWJzLXNlY3Rpb24gLnRhYi1jb250ZW50IC5xYS1jb250ZW50IC5xYS1pdGVtIC5xdWVzdGlvbiBzdHJvbmcge1xuICBjb2xvcjogIzU2NTk1OTtcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC50YWJzLXNlY3Rpb24gLnRhYi1jb250ZW50IC5xYS1jb250ZW50IC5xYS1pdGVtIC5xdWVzdGlvbiAucXVlc3Rpb24tbWV0YSB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgY29sb3I6ICM5OTk7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAudGFicy1zZWN0aW9uIC50YWItY29udGVudCAucWEtY29udGVudCAucWEtaXRlbSAuYW5zd2VyIHtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBjb2xvcjogIzU2NTk1OTtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAudGFicy1zZWN0aW9uIC50YWItY29udGVudCAucWEtY29udGVudCAucWEtaXRlbSAuYW5zd2VyIHN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAjMGYxMTExO1xuICBtYXJnaW4tcmlnaHQ6IDVweDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnRhYnMtc2VjdGlvbiAudGFiLWNvbnRlbnQgLnFhLWNvbnRlbnQgLnFhLWl0ZW0gLmFuc3dlciAuYW5zd2VyLW1ldGEge1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXNpemU6IDEycHg7XG4gIGNvbG9yOiAjOTk5O1xuICBtYXJnaW4tbGVmdDogMTBweDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucmVsYXRlZC1wcm9kdWN0cyB7XG4gIG1hcmdpbi10b3A6IDUwcHg7XG4gIHBhZGRpbmctdG9wOiAzMHB4O1xuICBib3JkZXItdG9wOiAycHggc29saWQgI2UwZTBlMDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnJlbGF0ZWQtcHJvZHVjdHMgaDMsXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucmVsYXRlZC1wcm9kdWN0cyAuaDMge1xuICBmb250LXNpemU6IDIwcHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjMGYxMTExO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucmVsYXRlZC1wcm9kdWN0cyAucHJvZHVjdHMtZ3JpZCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDIwMHB4LCAxZnIpKTtcbiAgZ2FwOiAyMHB4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucmVsYXRlZC1wcm9kdWN0cyAucHJvZHVjdHMtZ3JpZCAucHJvZHVjdC1jYXJkIHtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlMGUwZTA7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgcGFkZGluZzogMTVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucmVsYXRlZC1wcm9kdWN0cyAucHJvZHVjdHMtZ3JpZCAucHJvZHVjdC1jYXJkOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjYzQ1NTAwO1xuICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucmVsYXRlZC1wcm9kdWN0cyAucHJvZHVjdHMtZ3JpZCAucHJvZHVjdC1jYXJkIC5wcm9kdWN0LWltYWdlIHtcbiAgaGVpZ2h0OiAxNTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5yZWxhdGVkLXByb2R1Y3RzIC5wcm9kdWN0cy1ncmlkIC5wcm9kdWN0LWNhcmQgLnByb2R1Y3QtaW1hZ2UgaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb250YWluO1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucmVsYXRlZC1wcm9kdWN0cyAucHJvZHVjdHMtZ3JpZCAucHJvZHVjdC1jYXJkIC5wcm9kdWN0LW5hbWUge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGNvbG9yOiAjMGYxMTExO1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIG1pbi1oZWlnaHQ6IDQwcHg7XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5yZWxhdGVkLXByb2R1Y3RzIC5wcm9kdWN0cy1ncmlkIC5wcm9kdWN0LWNhcmQgLnByb2R1Y3QtbmFtZSBhIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnJlbGF0ZWQtcHJvZHVjdHMgLnByb2R1Y3RzLWdyaWQgLnByb2R1Y3QtY2FyZCAucHJvZHVjdC1uYW1lIGE6aG92ZXIge1xuICBjb2xvcjogI2M0NTUwMDtcbn1cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnJlbGF0ZWQtcHJvZHVjdHMgLnByb2R1Y3RzLWdyaWQgLnByb2R1Y3QtY2FyZCAucHJvZHVjdC1wcmljZSB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgY29sb3I6ICNiMTI3MDQ7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1tYWluIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG5cbiAgLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZ2FsbGVyeSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cblxuICAucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1nYWxsZXJ5IC5tYWluLWltYWdlLWNvbnRhaW5lciB7XG4gICAgdG91Y2gtYWN0aW9uOiBwYW4teSBwaW5jaC16b29tO1xuICB9XG5cbiAgLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZ2FsbGVyeSAudGh1bWJuYWlsLWdyaWQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDYsIDFmcik7XG4gIH1cblxuICAucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1nYWxsZXJ5IC50aHVtYm5haWwtZ3JpZCAudGh1bWJuYWlsLWl0ZW06bnRoLWNoaWxkKG4rNykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5wcm9kdWN0LXRpdGxlIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gIH1cblxuICAucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIC5wcmljZS1zZWN0aW9uIC5jdXJyZW50LXByaWNlIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gIH1cblxuICAucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1kZXRhaWxzLXNlY3Rpb24gLmNvbGxhcHNpYmxlLXNlY3Rpb24ge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTBlMGUwO1xuICB9XG5cbiAgLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZGV0YWlscy1zZWN0aW9uIC5jb2xsYXBzaWJsZS1zZWN0aW9uIC5zZWN0aW9uLXRvZ2dsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAxNXB4IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZGV0YWlscy1zZWN0aW9uIC5jb2xsYXBzaWJsZS1zZWN0aW9uIC5zZWN0aW9uLXRvZ2dsZSAuc2VjdGlvbi10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6ICMwZjExMTE7XG4gIH1cblxuICAucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1kZXRhaWxzLXNlY3Rpb24gLmNvbGxhcHNpYmxlLXNlY3Rpb24gLnNlY3Rpb24tdG9nZ2xlIC50b2dnbGUtaWNvbiB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGNvbG9yOiAjNTY1OTU5O1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xuICB9XG5cbiAgLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZGV0YWlscy1zZWN0aW9uIC5jb2xsYXBzaWJsZS1zZWN0aW9uIC5zZWN0aW9uLXRvZ2dsZS5jb2xsYXBzZWQgLnRvZ2dsZS1pY29uIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICB9XG5cbiAgLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZGV0YWlscy1zZWN0aW9uIC5jb2xsYXBzaWJsZS1zZWN0aW9uIC5zZWN0aW9uLWNvbnRlbnQge1xuICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICB9XG5cbiAgLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZGV0YWlscy1zZWN0aW9uIC5jb2xsYXBzaWJsZS1zZWN0aW9uIC5zZWN0aW9uLWNvbnRlbnQuY29sbGFwc2U6bm90KC5zaG93KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLmNvbnRhaW5lci5wYWdlLWJvZHkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICB9XG5cbiAgLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2UgLnByb2R1Y3QtZ2FsbGVyeSAudGh1bWJuYWlsLWdyaWQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG4gIH1cblxuICAucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1nYWxsZXJ5IC50aHVtYm5haWwtZ3JpZCAudGh1bWJuYWlsLWl0ZW06bnRoLWNoaWxkKG4rNSkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucmVsYXRlZC1wcm9kdWN0cyAucHJvZHVjdHMtZ3JpZCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICBnYXA6IDEwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAucHJvZHVjdC1pbmZvIHtcbiAgICBwYWRkaW5nOiAyNXB4O1xuICB9XG59XG5cbi5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlIC5zZWxlY3Rpb24ge1xuICBtYXgtd2lkdGg6IDUwMHB4O1xufVxuXG4ucGFnZS1pcy1pdGVtLWRldGFpbHMtcGFnZSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtN3B4O1xufVxuXG4vKipcbiAqIENoZWNrb3V0IFBhZ2UgU3R5bGVzXG4gKiBCb290c3RyYXAgNSBlbmhhbmNlbWVudHMgZm9yIHNpbmdsZSBwYWdlIGNoZWNrb3V0XG4gKi9cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAuc3RpY2t5LXRvcCB7XG4gIHBvc2l0aW9uOiBzdGlja3kgIWltcG9ydGFudDtcbiAgei1pbmRleDogMTA7XG4gIHRvcDogMjBweDtcbn1cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAjYWNjb3VudC1jcmVhdGlvbi1maWVsZHMge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucGFnZV9pc19jaGVja291dF9wYWdlICNzaGlwcGluZy1hZGRyZXNzLXNlY3Rpb24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucGFnZV9pc19jaGVja291dF9wYWdlIC5vcmRlci1zdW1tYXJ5IC5jYXJkIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMC4xMjUpLCAwIDAuMTI1cmVtIDAuMjVyZW0gcmdiYSgwLCAwLCAwLCAwLjA3NSk7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAub3JkZXItc3VtbWFyeSAuY2FyZC1oZWFkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NlZDRkYTtcbn1cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAub3JkZXItc3VtbWFyeSAuYm9yZGVyLWJvdHRvbTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ucGFnZV9pc19jaGVja291dF9wYWdlIC5jYXJkIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2VkNGRhO1xuICBib3gtc2hhZG93OiAwIDAuMTI1cmVtIDAuMjVyZW0gcmdiYSgwLCAwLCAwLCAwLjA3NSk7XG59XG5cbi5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgLmNhcmQgLmNhcmQtaGVhZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjZWQ0ZGE7XG59XG5cbi5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgLmNhcmQgLmNhcmQtaGVhZGVyIGg1LFxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAuY2FyZCAuY2FyZC1oZWFkZXIgLmg1IHtcbiAgY29sb3I6ICM0OTUwNTc7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgLmNhcmQgLmNhcmQtaGVhZGVyIGg1IGksXG4ucGFnZV9pc19jaGVja291dF9wYWdlIC5jYXJkIC5jYXJkLWhlYWRlciAuaDUgaSB7XG4gIGNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbn1cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAuYWxlcnQge1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gIHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuXG4ucGFnZV9pc19jaGVja291dF9wYWdlIC5hbGVydC5hbGVydC1zdWNjZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QxZWNmMTtcbiAgYm9yZGVyLWNvbG9yOiAjYmVlNWViO1xuICBjb2xvcjogIzBjNTQ2MDtcbn1cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAuYWxlcnQuYWxlcnQtd2FybmluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmYzY2Q7XG4gIGJvcmRlci1jb2xvcjogI2ZmZWFhNztcbiAgY29sb3I6ICM4NTY0MDQ7XG59XG5cbi5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgLmFsZXJ0LmFsZXJ0LWRhbmdlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGQ3ZGE7XG4gIGJvcmRlci1jb2xvcjogI2Y1YzZjYjtcbiAgY29sb3I6ICM3MjFjMjQ7XG59XG5cbi5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgI3BheW1lbnQtbWV0aG9kcyAuZm9ybS1jaGVjayB7XG4gIHBhZGRpbmc6IDAuNzVyZW07XG4gIHBhZGRpbmctbGVmdDogMi4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2UtaW4tb3V0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAjcGF5bWVudC1tZXRob2RzIC5mb3JtLWNoZWNrOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgYm9yZGVyLWNvbG9yOiAjYWRiNWJkO1xufVxuXG4ucGFnZV9pc19jaGVja291dF9wYWdlICNwYXltZW50LW1ldGhvZHMgLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi1sZWZ0OiAtMS41cmVtO1xuICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgI3BheW1lbnQtbWV0aG9kcyAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1sYWJlbCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ucGFnZV9pc19jaGVja291dF9wYWdlICNwYXltZW50LW1ldGhvZHMgLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXQ6Y2hlY2tlZCB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG4ucGFnZV9pc19jaGVja291dF9wYWdlIC5mb3JtLWNoZWNrIHtcbiAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dCB7XG4gIG1hcmdpbi1sZWZ0OiAtMS41cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2VkNGRhO1xufVxuXG4ucGFnZV9pc19jaGVja291dF9wYWdlIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0OmNoZWNrZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbn1cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKHZhcigtLWJzLXByaW1hcnktcmdiKSwgMC4yNSk7XG59XG5cbi5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2stbGFiZWwge1xuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbn1cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAjYWNjb3VudC1jcmVhdGlvbi1maWVsZHMge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAjc2hpcHBpbmctYWRkcmVzcy1zZWN0aW9uIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG5cbi5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgI3NhdmVkLWFkZHJlc3Nlcy1zZWN0aW9uIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG5cbi5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgI3BsYWNlLW9yZGVyLWJ0biB7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMS41cmVtO1xuICBmb250LXNpemU6IDEuMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAjcGxhY2Utb3JkZXItYnRuOmRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC43O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4ucGFnZV9pc19jaGVja291dF9wYWdlIC50ZXh0LW11dGVkIHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbn1cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAudGV4dC1tdXRlZCAuZmFzIHtcbiAgY29sb3I6IHZhcigtLWJzLXN1Y2Nlc3MpO1xufVxuXG4ucGFnZV9pc19jaGVja291dF9wYWdlIC5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZCxcbi5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5pcy1pbnZhbGlkLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgLmlzLWludmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb24sXG4ucGFnZV9pc19jaGVja291dF9wYWdlIC5mb3JtLXNlbGVjdC5pcy1pbnZhbGlkIHtcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMjAsIDUzLCA2OSwgMC4yNSk7XG59XG5cbi5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgLmZvcm0tY29udHJvbDpmb2N1cyxcbi5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucGFnZV9pc19jaGVja291dF9wYWdlIC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgLmZvcm0tc2VsZWN0OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEodmFyKC0tYnMtcHJpbWFyeS1yZ2IpLCAwLjI1KTtcbn1cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAuaW52YWxpZC1mZWVkYmFjayxcbi5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgLmVycm9yLWhlbHAtYmxvY2sge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xufVxuXG4ucGFnZV9pc19jaGVja291dF9wYWdlIC5tb2RhbC1jb250ZW50IHtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiAwIDAuNXJlbSAxcmVtIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG5cbi5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWhlYWRlciB7XG4gIHBhZGRpbmc6IDEuNXJlbSAxLjVyZW0gMDtcbn1cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAubW9kYWwtY29udGVudCAubW9kYWwtYm9keSB7XG4gIHBhZGRpbmc6IDEuNXJlbTtcbn1cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAubW9kYWwtY29udGVudCAuYnRuIHtcbiAgcGFkZGluZzogMC43NXJlbSAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAucGFnZV9pc19jaGVja291dF9wYWdlIC5zdGlja3ktdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICB0b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgLm9yZGVyLXN1bW1hcnkge1xuICAgIG1hcmdpbi10b3A6IDJyZW07XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgLmNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMCAxcmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX2NoZWNrb3V0X3BhZ2UgLnJvdyB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAucm93IC5jb2wtbWQtNixcbiAgLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSAucm93IC5jb2wtbWQtMyB7XG4gICAgcGFkZGluZzogMCAwLjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxufVxuXG4ucGFnZV9pc19vcmRlcl9yZWNlaXZlZF9wYWdlIHRhYmxlIHRoIHtcbiAgY29sb3I6ICM2NjY2NjYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLnBhZ2VfaXNfb3JkZXJfcmVjZWl2ZWRfcGFnZSAucmVjaXZlZC1oZXJvLXRleHQgaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xufVxuXG4ucGFnZV9pc19vcmRlcl9yZWNlaXZlZF9wYWdlIC5yZWNpdmVkLWhlcm8tdGV4dCBoMSxcbi5wYWdlX2lzX29yZGVyX3JlY2VpdmVkX3BhZ2UgLnJlY2l2ZWQtaGVyby10ZXh0IC5oMSB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5wYWdlX2lzX29yZGVyX3JlY2VpdmVkX3BhZ2UgLmNsaW50LWRldGFpbHMtZm9yb3JkZXIge1xuICBwYWRkaW5nOiAycmVtIDA7XG59XG5cbi5wYWdlX2lzX29yZGVyX3JlY2VpdmVkX3BhZ2UgLm9yZGVyLWl0ZW0tZmluYWwtZGVkdGFpbHMtaGVhZGVyIHtcbiAgcGFkZGluZzogMnJlbSAwO1xufVxuXG4ucGFnZV9pc19vcmRlcl9yZWNlaXZlZF9wYWdlIC5vcmRlci1pdGVtLWZpbmFsLXRvdGFsIC50YWJsZSxcbi5wYWdlX2lzX29yZGVyX3JlY2VpdmVkX3BhZ2UgLm9yZGVyLWl0ZW0tZmluYWwtdG90YWwgLnByb3NlIHRhYmxlLFxuLnByb3NlIC5wYWdlX2lzX29yZGVyX3JlY2VpdmVkX3BhZ2UgLm9yZGVyLWl0ZW0tZmluYWwtdG90YWwgdGFibGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ucGFnZV9pc19vcmRlcl9yZWNlaXZlZF9wYWdlIC5vcmRlci1pdGVtLWZpbmFsLXRvdGFsIC50YWJsZSB0ZCxcbi5wYWdlX2lzX29yZGVyX3JlY2VpdmVkX3BhZ2UgLm9yZGVyLWl0ZW0tZmluYWwtdG90YWwgLnByb3NlIHRhYmxlIHRkLFxuLnByb3NlIC5wYWdlX2lzX29yZGVyX3JlY2VpdmVkX3BhZ2UgLm9yZGVyLWl0ZW0tZmluYWwtdG90YWwgdGFibGUgdGQge1xuICBwYWRkaW5nOiAwLjVyZW0gMDtcbn1cblxuLnBhZ2VfaXNfb3JkZXJfcmVjZWl2ZWRfcGFnZSAuYnRuLWJhY2ssXG4ucGFnZV9pc19vcmRlcl9yZWNlaXZlZF9wYWdlIC5idG4tZXhwb3J0LFxuLnBhZ2VfaXNfb3JkZXJfcmVjZWl2ZWRfcGFnZSAuYnRuLWV4cG9ydDIge1xuICBtYXJnaW46IDAuNXJlbTtcbn1cblxuLyoqXG4gKiBBY2NvdW50IFBhZ2UgU3R5bGVzXG4gKiBCb290c3RyYXAgNSBlbmhhbmNlbWVudHMgZm9yIHVzZXIgYWNjb3VudCBwYWdlXG4gKi9cblxuLnBhZ2VfaXNfYWNjb3VudF9wYWdlIC55b3VyLWFjY291bnQgLmFjY291bnQtdGFiLWJ0biB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEyNSk7XG59XG5cbi5wYWdlX2lzX2FjY291bnRfcGFnZSAueW91ci1hY2NvdW50IC5hY2NvdW50LXRhYi1idG46bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbi5wYWdlX2lzX2FjY291bnRfcGFnZSAueW91ci1hY2NvdW50IC5hY2NvdW50LXRhYi1idG4gc3ZnIHtcbiAgZmlsbDogY3VycmVudENvbG9yO1xuICBvcGFjaXR5OiAwLjc7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xufVxuXG4ucGFnZV9pc19hY2NvdW50X3BhZ2UgLnlvdXItYWNjb3VudCAuYWNjb3VudC10YWItYnRuOmhvdmVyLFxuLnBhZ2VfaXNfYWNjb3VudF9wYWdlIC55b3VyLWFjY291bnQgLmFjY291bnQtdGFiLWJ0bi5hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4ucGFnZV9pc19hY2NvdW50X3BhZ2UgLnlvdXItYWNjb3VudCAuYWNjb3VudC10YWItYnRuOmhvdmVyIHN2Zyxcbi5wYWdlX2lzX2FjY291bnRfcGFnZSAueW91ci1hY2NvdW50IC5hY2NvdW50LXRhYi1idG4uYWN0aXZlIHN2ZyB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5wYWdlX2lzX2FjY291bnRfcGFnZSAueW91ci1hY2NvdW50IC55b3VyLWFjY291bnQtZGFzaGJvYXJkIC5iZy1saWdodCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xMjUpO1xufVxuXG4ucGFnZV9pc19hY2NvdW50X3BhZ2UgLnlvdXItYWNjb3VudCAuQ3VzdG9tLU9yZGVyIC5uYXYtdGFicyAubmF2LWxpbmsuYnRuLWN1c3RvbS1vcmRlciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gIGNvbG9yOiAjNmM3NTdkO1xufVxuXG4ucGFnZV9pc19hY2NvdW50X3BhZ2UgLnlvdXItYWNjb3VudCAuQ3VzdG9tLU9yZGVyIC5uYXYtdGFicyAubmF2LWxpbmsuYnRuLWN1c3RvbS1vcmRlci5hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICBib3JkZXItY29sb3I6ICNkZWUyZTYgI2RlZTJlNiB3aGl0ZTtcbn1cblxuLnBhZ2VfaXNfYWNjb3VudF9wYWdlIC55b3VyLWFjY291bnQgLkN1c3RvbS1PcmRlciAubmF2LXRhYnMgLm5hdi1saW5rLmJ0bi1jdXN0b20tb3JkZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xuICBib3JkZXItY29sb3I6ICNhZGI1YmQ7XG59XG5cbi5wYWdlX2lzX2FjY291bnRfcGFnZSAueW91ci1hY2NvdW50IC5DdXN0b20tT3JkZXIgLmN1c3RvbS1vcmRlci10YWItY29udGVudCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3JkZXItcmFkaXVzOiAwIDAgMC4zNzVyZW0gMC4zNzVyZW07XG59XG5cbi5wYWdlX2lzX2FjY291bnRfcGFnZSAueW91ci1hY2NvdW50IC5DdXN0b20tT3JkZXIgLmN1c3RvbS1vcmRlci10YWItY29udGVudCAudGFiLXBhbmUge1xuICBwYWRkaW5nOiAxLjVyZW07XG59XG5cbi5wYWdlX2lzX2FjY291bnRfcGFnZSAueW91ci1hY2NvdW50IC5mb3JtLXRleHQge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBjb2xvcjogIzZjNzU3ZDtcbn1cblxuLnBhZ2VfaXNfYWNjb3VudF9wYWdlIC55b3VyLWFjY291bnQgLmNhcmQtYm9keSAuZGF0YVRhYmxlc193cmFwcGVyIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC5wYWdlX2lzX2FjY291bnRfcGFnZSAueW91ci1hY2NvdW50IC5hY2NvdW50LXRhYi1idG4ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC5wYWdlX2lzX2FjY291bnRfcGFnZSAueW91ci1hY2NvdW50IC5hY2NvdW50LXRhYi1idG4gc3ZnIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgYXV0byAwLjVyZW07XG4gIH1cbn1cblxuLyogUHJvZmlsZSBQYWdlIFN0eWxlcyAqL1xuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2Uge1xuICAvKiBNb2JpbGUgQ29sbGFwc2libGUgU2VjdGlvbnMgKi9cbiAgLyogQWNjb3JkaW9uLXN0eWxlIFNlY3Rpb25zICovXG4gIC8qIFNtb290aCBTY3JvbGxpbmcgZm9yIE1vYmlsZSAqL1xuICAvKiBNb2RhbCBTd2lwZSBJbmRpY2F0b3IgKi9cbiAgLyogQWNjZXNzaWJpbGl0eSBJbXByb3ZlbWVudHMgKi9cbiAgLyogSGlnaCBDb250cmFzdCBNb2RlICovXG4gIC8qIExvYWRpbmcgU3RhdGVzIGZvciBEeW5hbWljIENvbnRlbnQgKi9cbiAgLyogRW5oYW5jZWQgVG91Y2ggVGFyZ2V0cyAqL1xuICAvKiBNb2JpbGUgQWRkcmVzcyBCb29rIFN0eWxlcyAqL1xuICAvKiBNb2JpbGUgSGVhZGVyIFNlY3Rpb24gKi9cbiAgLyogTW9iaWxlIEFkZHJlc3MgQ2FyZHMgKi9cbiAgLyogTW9iaWxlIEVtcHR5IFN0YXRlICovXG4gIC8qIE1vYmlsZSBNb2RhbCBPcHRpbWl6YXRpb25zICovXG4gIC8qIFRvdWNoIEZlZWRiYWNrICovXG4gIC8qIEltcHJvdmVkIENhcmQgR3JpZCBvbiBTbWFsbCBUYWJsZXRzICovXG4gIC8qIExvYWRpbmcgU3RhdGVzICovXG4gIC8qIEFkZHJlc3MgQ2FyZCBIb3ZlciBFZmZlY3RzICovXG4gIC8qIExhbmRzY2FwZSBNb2JpbGUgT3B0aW1pemF0aW9uICovXG4gIC8qIEltcHJvdmVkIFNwYWNpbmcgKi9cbiAgLyogTW9iaWxlIEZvcm0gT3B0aW1pemF0aW9uIFN0eWxlcyAqL1xuICAvKiBCYXNlIEZvcm0gQ29udHJvbCBTdHlsZXMgKi9cbiAgLyogRW5oYW5jZWQgVG91Y2ggVGFyZ2V0cyBmb3IgQ2hlY2tib3hlcyBhbmQgUmFkaW9zICovXG4gIC8qIE1vYmlsZSBGb3JtIFNwYWNpbmcgKi9cbiAgLyogRW5oYW5jZWQgU2VsZWN0IERyb3Bkb3ducyAqL1xuICAvKiBJbnB1dCBHcm91cHMgKi9cbiAgLyogRmlsZSBVcGxvYWQgU3R5bGluZyAqL1xuICAvKiBGb3JtIFZhbGlkYXRpb24gRmVlZGJhY2sgKi9cbiAgLyogTW9iaWxlIEJ1dHRvbiBTdHlsZXMgKi9cbiAgLyogRm9ybSBSb3cgU3BhY2luZyAqL1xuICAvKiBNb2JpbGUtU3BlY2lmaWMgRm9ybSBMYXlvdXRzICovXG4gIC8qIFRvdWNoIEZlZWRiYWNrICovXG4gIC8qIExvYWRpbmcgU3RhdGVzICovXG4gIC8qIEltcHJvdmVkIEVycm9yIFN0YXRlcyAqL1xuICAvKiBQYXNzd29yZCBUb2dnbGUgQnV0dG9uIEVuaGFuY2VtZW50ICovXG4gIC8qIFJhbmdlIElucHV0cyAoaWYgYW55KSAqL1xuICAvKiBGbG9hdGluZyBMYWJlbHMgKGlmIHVzZWQpICovXG4gIC8qIGlPUy1TcGVjaWZpYyBGaXhlcyAqL1xuICAvKiBBbmRyb2lkLVNwZWNpZmljIEZpeGVzICovXG4gIC8qIE1vYmlsZSBEYXNoYm9hcmQgU3R5bGVzICovXG4gIC8qIE1vYmlsZSBTdGF0aXN0aWNzIENhcmRzICovXG4gIC8qIE1vYmlsZSBPcmRlciBDYXJkcyAtIFJlcGxhY2UgdGFibGUgb24gc21hbGwgc2NyZWVucyAqL1xuICAvKiBNb2JpbGUgV2VsY29tZSBTZWN0aW9uICovXG4gIC8qIE1vYmlsZSBRdWljayBBY3Rpb25zICovXG4gIC8qIE1vYmlsZSBOb3RpZmljYXRpb25zICovXG4gIC8qIERhc2hib2FyZCBUb3VjaCBGZWVkYmFjayAqL1xuICAvKiBJbXByb3ZlZCBEYXNoYm9hcmQgU3BhY2luZyBvbiBNb2JpbGUgKi9cbiAgLyogRGFzaGJvYXJkIExvYWRpbmcgU3RhdGVzICovXG4gIC8qIExhbmRzY2FwZSBNb2JpbGUgRGFzaGJvYXJkIE9wdGltaXphdGlvbiAqL1xuICAvKiBNb2JpbGUgT3JkZXJzIFBhZ2UgU3R5bGVzICovXG4gIC8qIE1vYmlsZSBGaWx0ZXIgU2VjdGlvbiAqL1xuICAvKiBNb2JpbGUgT3JkZXIgTGlzdCBDYXJkcyAqL1xuICAvKiBNb2JpbGUgU3RhdHVzIEd1aWRlICovXG4gIC8qIE1vYmlsZSBPcmRlcnMgUGFnaW5hdGlvbiAqL1xuICAvKiBPcmRlcnMgVG91Y2ggRmVlZGJhY2sgKi9cbiAgLyogT3JkZXJzIExvYWRpbmcgU3RhdGVzICovXG4gIC8qIEZpbHRlciBCYWRnZSBDb3VudGVyICovXG4gIC8qIEhpZ2ggQ29udHJhc3QgT3JkZXJzICovXG4gIC8qIExhbmRzY2FwZSBNb2JpbGUgT3JkZXJzICovXG4gIC8qIE1vYmlsZSBPcmRlciBEZXRhaWwgUGFnZSBTdHlsZXMgKi9cbiAgLyogTW9iaWxlIE9yZGVyIFN1bW1hcnkgKi9cbiAgLyogTW9iaWxlIFRpbWVsaW5lICovXG4gIC8qIE1vYmlsZSBPcmRlciBJdGVtcyAqL1xuICAvKiBNb2JpbGUgQWN0aW9uIEJ1dHRvbnMgKi9cbiAgLyogTW9iaWxlIEFkZHJlc3MgQ2FyZHMgT3JkZXIgRGV0YWlsICovXG4gIC8qIE9yZGVyIERldGFpbCBUb3VjaCBGZWVkYmFjayAqL1xuICAvKiBPcmRlciBEZXRhaWwgU3BhY2luZyAqL1xuICAvKiBTdGF0dXMgQmFkZ2UgQWRqdXN0bWVudHMgKi9cbiAgLyogT3JkZXIgRGV0YWlsIExvYWRpbmcgU3RhdGVzICovXG4gIC8qIEhpZ2ggQ29udHJhc3QgT3JkZXIgRGV0YWlsICovXG4gIC8qIFByaW50IFN0eWxlcyAqL1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIHtcbiAgICAvKiBDb2xsYXBzZSBDb250ZW50ICovXG4gICAgLyogQWRkcmVzcyBDYXJkIEV4cGFuZCBBcmVhICovXG4gICAgLyogVGV4dCBUcnVuY2F0aW9uICovXG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1jb2xsYXBzaWJsZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1jb2xsYXBzaWJsZTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXFxmMDc4XCI7XG4gICAgLyogZmEtY2hldnJvbi1kb3duICovXG4gICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgY29sb3I6ICM2Yzc1N2Q7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1jb2xsYXBzaWJsZS5jb2xsYXBzZWQ6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKC05MGRlZyk7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1jb2xsYXBzaWJsZTpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtY29sbGFwc2libGU6Zm9jdXMge1xuICAgIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICBvdXRsaW5lLW9mZnNldDogMnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1jb2xsYXBzZS1jb250ZW50IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgMC4zcyBlYXNlLCBvcGFjaXR5IDAuM3MgZWFzZTtcbiAgICBtYXgtaGVpZ2h0OiAyMDAwcHg7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9iaWxlLWNvbGxhcHNlLWNvbnRlbnQuY29sbGFwc2VkIHtcbiAgICBtYXgtaGVpZ2h0OiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtZXhwYW5kLWFyZWEge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDAuNXJlbTtcbiAgICByaWdodDogMC41cmVtO1xuICAgIHdpZHRoOiAzMnB4O1xuICAgIGhlaWdodDogMzJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1ncmF5LTEwMCk7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtZXhwYW5kLWFyZWE6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWdyYXktMjAwKTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9iaWxlLWV4cGFuZC1hcmVhIGkge1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtdGV4dC10cnVuY2F0ZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1heC1oZWlnaHQ6IDEwMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjNzIGVhc2U7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS10ZXh0LXRydW5jYXRlOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHRyYW5zcGFyZW50LCB3aGl0ZSk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS10ZXh0LXRydW5jYXRlLmV4cGFuZGVkIHtcbiAgICBtYXgtaGVpZ2h0OiBub25lO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtdGV4dC10cnVuY2F0ZS5leHBhbmRlZDo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS10ZXh0LXRydW5jYXRlIC5idG4tbGluayB7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtdGV4dC10cnVuY2F0ZSAuYnRuLWxpbms6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtY2FyZC5hY2NvcmRpb24tc3R5bGUge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucHJvZmlsZS1jYXJkLmFjY29yZGlvbi1zdHlsZSA+IGg0LFxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtY2FyZC5hY2NvcmRpb24tc3R5bGUgPiAuaDQsXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucHJvZmlsZS1jYXJkLmFjY29yZGlvbi1zdHlsZSA+IGg1LFxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtY2FyZC5hY2NvcmRpb24tc3R5bGUgPiAuaDUge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWdyYXktMTAwKTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYnMtZ3JheS0zMDApO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLWNhcmQuYWNjb3JkaW9uLXN0eWxlID4gZGl2IHtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmhvcml6b250YWwtc2Nyb2xsIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbiAgICBzY3JvbGxiYXItd2lkdGg6IHRoaW47XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmhvcml6b250YWwtc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgaGVpZ2h0OiA2cHg7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmhvcml6b250YWwtc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgYmFja2dyb3VuZDogI2YxZjFmMTtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmhvcml6b250YWwtc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgYmFja2dyb3VuZDogIzg4ODtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmhvcml6b250YWwtc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogIzU1NTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2RhbC1jb250ZW50OjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMC41cmVtO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtZ3JheS00MDApO1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9kYWwtZGlhbG9nIHtcbiAgICBtYXJnaW4tdG9wOiAyMHZoO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2U7XG4gIH1cbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtY29sbGFwc2libGU6OmFmdGVyLFxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1jb2xsYXBzZS1jb250ZW50LFxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS10ZXh0LXRydW5jYXRlLFxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1leHBhbmQtYXJlYSB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgKHByZWZlcnMtY29udHJhc3Q6IGhpZ2gpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtY29sbGFwc2libGUge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtY29sbGFwc2libGU6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9iaWxlLWV4cGFuZC1hcmVhIHtcbiAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1icy1kYXJrKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgfVxufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1sb2FkaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxMDBweDtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtbG9hZGluZzo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIG1hcmdpbjogLTE1cHggMCAwIC0xNXB4O1xuICBib3JkZXI6IDNweCBzb2xpZCAjZjNmM2YzO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJvcmRlci10b3A6IDNweCBzb2xpZCB2YXIoLS1icy1wcmltYXJ5KTtcbiAgYW5pbWF0aW9uOiBzcGluIDFzIGxpbmVhciBpbmZpbml0ZTtcbn1cblxuQGtleWZyYW1lcyBzcGluIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtdG91Y2gtdGFyZ2V0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWluLWhlaWdodDogNDhweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS10b3VjaC10YXJnZXQ6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtOHB4O1xuICAgIHJpZ2h0OiAtOHB4O1xuICAgIGJvdHRvbTogLThweDtcbiAgICBsZWZ0OiAtOHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmQtZmxleC5qdXN0aWZ5LWNvbnRlbnQtYmV0d2Vlbi5hbGlnbi1pdGVtcy1jZW50ZXIubWItNCB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuZC1mbGV4Lmp1c3RpZnktY29udGVudC1iZXR3ZWVuLmFsaWduLWl0ZW1zLWNlbnRlci5tYi00ID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5kLWZsZXguanVzdGlmeS1jb250ZW50LWJldHdlZW4uYWxpZ24taXRlbXMtY2VudGVyLm1iLTQgaDMsXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuZC1mbGV4Lmp1c3RpZnktY29udGVudC1iZXR3ZWVuLmFsaWduLWl0ZW1zLWNlbnRlci5tYi00IC5oMyB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmQtZmxleC5qdXN0aWZ5LWNvbnRlbnQtYmV0d2Vlbi5hbGlnbi1pdGVtcy1jZW50ZXIubWItNCBwIHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5kLWZsZXguanVzdGlmeS1jb250ZW50LWJldHdlZW4uYWxpZ24taXRlbXMtY2VudGVyLm1iLTQgLmJ0biB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogNDhweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIHtcbiAgICAvKiBDYXJkIEhlYWRlciBBZGp1c3RtZW50cyAqL1xuICAgIC8qIERyb3Bkb3duIEJ1dHRvbiBFbmhhbmNlbWVudCAqL1xuICAgIC8qIERyb3Bkb3duIE1lbnUgUG9zaXRpb25pbmcgKi9cbiAgICAvKiBEcm9wZG93biBJdGVtcyBUb3VjaCBGcmllbmRseSAqL1xuICAgIC8qIEFkZHJlc3MgRGV0YWlscyAqL1xuICAgIC8qIFZlcmlmaWNhdGlvbiBTdGF0dXMgKi9cbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuY29sLW1kLTYuY29sLWxnLTQge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmFkZHJlc3MtY2FyZCB7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5hZGRyZXNzLWNhcmQgaDUsXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuYWRkcmVzcy1jYXJkIC5oNSB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmFkZHJlc3MtY2FyZCAuYmFkZ2Uge1xuICAgIGZvbnQtc2l6ZTogMC43cmVtO1xuICAgIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5kcm9wZG93biAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5LmJ0bi1zbSxcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5kcm9wZG93biAuYnRuLWdyb3VwLXNtID4gLmJ0bi1vdXRsaW5lLXNlY29uZGFyeS5idG4ge1xuICAgIHdpZHRoOiA0NHB4O1xuICAgIGhlaWdodDogNDRweDtcbiAgICBtaW4td2lkdGg6IDQ0cHg7XG4gICAgbWluLWhlaWdodDogNDRweDtcbiAgICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmRyb3Bkb3duLW1lbnUge1xuICAgIG1pbi13aWR0aDogMTJyZW07XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuZHJvcGRvd24taXRlbSB7XG4gICAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICAgIG1pbi1oZWlnaHQ6IDQ0cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5kcm9wZG93bi1pdGVtIGkge1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuYWRkcmVzcy1kZXRhaWxzIHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmFkZHJlc3MtZGV0YWlscyBzdHJvbmcge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuYWRkcmVzcy1jYXJkIHNtYWxsLFxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmFkZHJlc3MtY2FyZCAuc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLWNhcmQudGV4dC1jZW50ZXIucHktNSB7XG4gICAgcGFkZGluZzogM3JlbSAxLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucHJvZmlsZS1jYXJkIC5mYS0zeCB7XG4gICAgZm9udC1zaXplOiAyLjVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtY2FyZCBoNCxcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLWNhcmQgLmg0IHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucHJvZmlsZS1jYXJkIHAge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLWNhcmQgLmJ0biB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgICBtaW4taGVpZ2h0OiA0OHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vZGFsLWRpYWxvZyB7XG4gICAgbWFyZ2luOiAwLjVyZW07XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAxcmVtKTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9kYWwtY29udGVudCB7XG4gICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2RhbC1oZWFkZXIsXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9kYWwtYm9keSxcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2RhbC1mb290ZXIge1xuICAgIHBhZGRpbmc6IDFyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vZGFsLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2RhbC1ib2R5IHAge1xuICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vZGFsLWZvb3RlciB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9kYWwtZm9vdGVyIC5idG4ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDQ4cHg7XG4gICAgbWFyZ2luOiAwLjI1cmVtIDA7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vZGFsLWZvb3RlciBmb3JtIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG5AbWVkaWEgKGhvdmVyOiBub25lKSBhbmQgKHBvaW50ZXI6IGNvYXJzZSkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmFkZHJlc3MtY2FyZDphY3RpdmUge1xuICAgIGJveC1zaGFkb3c6IDAgMC4yNXJlbSAwLjVyZW0gcmdiYSgwLCAwLCAwLCAwLjEpO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5kcm9wZG93bi1pdGVtOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtZ3JheS0xMDApO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucm93IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMjgwcHgsIDFmcikpO1xuICAgIGdhcDogMXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuY29sLW1kLTYuY29sLWxnLTQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5hZGRyZXNzLWNhcmQubG9hZGluZyB7XG4gIG9wYWNpdHk6IDAuNjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuZHJvcGRvd24taXRlbS5sb2FkaW5nIHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG5AbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmFkZHJlc3MtY2FyZDpob3ZlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xuICB9XG59XG5cbkBtZWRpYSAoaG92ZXI6IG5vbmUpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5hZGRyZXNzLWNhcmQ6aG92ZXIge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmQtZmxleC5qdXN0aWZ5LWNvbnRlbnQtYmV0d2Vlbi5hbGlnbi1pdGVtcy1jZW50ZXIubWItNCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5kLWZsZXguanVzdGlmeS1jb250ZW50LWJldHdlZW4uYWxpZ24taXRlbXMtY2VudGVyLm1iLTQgPiBkaXY6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmQtZmxleC5qdXN0aWZ5LWNvbnRlbnQtYmV0d2Vlbi5hbGlnbi1pdGVtcy1jZW50ZXIubWItNCAuYnRuIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDAgMC41cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5hZGRyZXNzLWNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnJvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC41cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5jb2wtbWQtNi5jb2wtbGctNCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICB9XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuZm9ybS1jb250cm9sLFxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5zZWxlY3QyLXNlbGVjdGlvbixcbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuZm9ybS1zZWxlY3QsXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmJ0biB7XG4gIG1pbi1oZWlnaHQ6IDQ4cHg7XG4gIC8qIFRvdWNoIHRhcmdldCBtaW5pbXVtICovXG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgLyogUHJldmVudCB6b29tIG9uIGlPUyAqL1xuICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuZm9ybS1jaGVjayB7XG4gIG1pbi1oZWlnaHQ6IDQ4cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuZm9ybS1jaGVjay1pbnB1dCB7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1yaWdodDogMC43NXJlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXI6IDJweCBzb2xpZCAjNmM3NTdkO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmZvcm0tY2hlY2staW5wdXQ6Y2hlY2tlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmZvcm0tY2hlY2stbGFiZWwge1xuICBmbGV4OiAxO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5mb3JtLWxhYmVsIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBmb250LXNpemU6IDAuOTVyZW07XG4gIGNvbG9yOiAjMjEyNTI5O1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmZvcm0tdGV4dCB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmZvcm0tc2VsZWN0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNiclM2UlM2NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzMzQzYTQwJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMicgZD0nTTIgNWw2IDYgNi02Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDE2cHggMTJweDtcbiAgcGFkZGluZy1yaWdodDogMi41cmVtO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbCxcbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmlucHV0LWdyb3VwID4gLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuaW5wdXQtZ3JvdXAgPiAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmlucHV0LWdyb3VwID4gLmZvcm0tc2VsZWN0LFxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5pbnB1dC1ncm91cCA+IC5idG4ge1xuICBtaW4taGVpZ2h0OiA0OHB4O1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmlucHV0LWdyb3VwLXRleHQge1xuICBtaW4taGVpZ2h0OiA0OHB4O1xuICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5idG4tZmlsZS11cGxvYWQge1xuICBtaW4taGVpZ2h0OiA0OHB4O1xuICBwYWRkaW5nOiAwLjc1cmVtIDEuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMC41cmVtO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmludmFsaWQtZmVlZGJhY2ssXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmVycm9yLWhlbHAtYmxvY2ssXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLnZhbGlkLWZlZWRiYWNrIHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuaXMtaW52YWxpZCB7XG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbiAgYm9yZGVyLXdpZHRoOiAycHg7XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuaXMtdmFsaWQge1xuICBib3JkZXItY29sb3I6ICMyOGE3NDU7XG4gIGJvcmRlci13aWR0aDogMnB4O1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmJ0biB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMS41cmVtO1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5idG4tcHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLnJvdy5tYi0zLFxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5yb3cubWItNCB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIHtcbiAgICAvKiBTdGFjayBmb3JtIGJ1dHRvbnMgdmVydGljYWxseSBvbiBtb2JpbGUgKi9cbiAgICAvKiBMYXJnZXIgc3BhY2luZyBiZXR3ZWVuIGZvcm0gc2VjdGlvbnMgKi9cbiAgICAvKiBDYXJkIHNwYWNpbmcgYWRqdXN0bWVudHMgKi9cbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuY29sLW1kLTYge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmNvbC1tZC02Omxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmJ0bi1ncm91cC1tb2JpbGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDAuNzVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmJ0bi1ncm91cC1tb2JpbGUgLmJ0biB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgaDUubWItMyxcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tYi0zLmg1IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXRvcDogMnJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmNhcmQtYm9keSB7XG4gICAgcGFkZGluZzogMS4yNXJlbTtcbiAgfVxufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmZvcm0tY29udHJvbDpmb2N1cyxcbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmZvcm0tc2VsZWN0OmZvY3VzLFxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5idG46Zm9jdXMge1xuICBvdXRsaW5lOiAzcHggc29saWQgcmdiYSgxMywgMTEwLCAyNTMsIDAuMjUpO1xuICBvdXRsaW5lLW9mZnNldDogMnB4O1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmJ0bltkaXNhYmxlZF0ge1xuICBvcGFjaXR5OiAwLjY1O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmJ0bi5sb2FkaW5nIHtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuYnRuLmxvYWRpbmc6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gIG1hcmdpbi10b3A6IC0xMHB4O1xuICBib3JkZXI6IDJweCBzb2xpZCAjZjNmM2YzO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAjMzQ5OGRiO1xuICBhbmltYXRpb246IHNwaW4gMXMgbGluZWFyIGluZmluaXRlO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkOmZvY3VzLFxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuaXMtaW52YWxpZC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmlzLWludmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICNkYzM1NDU7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyMCwgNTMsIDY5LCAwLjI1KTtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wYXNzd29yZC10b2dnbGUtYnRuIHtcbiAgbWluLXdpZHRoOiA0OHB4O1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIGlucHV0W3R5cGU9cmFuZ2VdIHtcbiAgaGVpZ2h0OiA0OHB4O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIGlucHV0W3R5cGU9cmFuZ2VdOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgaGVpZ2h0OiAzMnB4O1xuICB3aWR0aDogMzJweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBtYXJnaW4tdG9wOiAtMTRweDtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIGlucHV0W3R5cGU9cmFuZ2VdOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDRweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiAjZGRkO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2wsXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5mb3JtLWZsb2F0aW5nID4gLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuZm9ybS1mbG9hdGluZyA+IC5zZWxlY3QyLXNlbGVjdGlvbixcbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuZm9ybS1mbG9hdGluZyA+IC5mb3JtLXNlbGVjdCB7XG4gIG1pbi1oZWlnaHQ6IDU4cHg7XG4gIHBhZGRpbmctdG9wOiAxLjYyNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNjI1cmVtO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmZvcm0tZmxvYXRpbmcgPiBsYWJlbCB7XG4gIHBhZGRpbmc6IDFyZW0gMC43NXJlbTtcbn1cblxuQHN1cHBvcnRzICgtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmUpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5mb3JtLWNvbnRyb2wsXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uLFxuICAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5zZWxlY3QyLXNlbGVjdGlvbixcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5mb3JtLXNlbGVjdCB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIC8qIFByZXZlbnRzIHpvb20gKi9cbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSBzZWxlY3QuZm9ybS1zZWxlY3Qge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAwKSB7XG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIHtcbiAgICAvKiBUd28gY29sdW1ucyBvbiBtb2JpbGUgZm9yIGJldHRlciBzcGFjZSB1dGlsaXphdGlvbiAqL1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5zdGF0LWNhcmQge1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgbWluLWhlaWdodDogYXV0bztcbiAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5zdGF0LWNhcmQgLnN0YXQtdmFsdWUge1xuICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5zdGF0LWNhcmQgLnN0YXQtbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuY29sLXNtLTYge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZS5wYWdlLWlzLXByb2ZpbGUtb3JkZXJzIC50YWJsZS1yZXNwb25zaXZlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtb3JkZXItY2FyZHMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtb3JkZXItY2FyZCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjJzIGVhc2U7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1vcmRlci1jYXJkOmFjdGl2ZSB7XG4gICAgYm94LXNoYWRvdzogMCAwLjEyNXJlbSAwLjI1cmVtIHJnYmEoMCwgMCwgMCwgMC4wNzUpO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtb3JkZXItaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtb3JkZXItbnVtYmVyIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtb3JkZXItc3RhdHVzIHtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1vcmRlci1kZXRhaWxzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1vcmRlci1kYXRlIHtcbiAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtb3JkZXItdG90YWwge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9iaWxlLW9yZGVyLWFjdGlvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICAgIG1pbi1oZWlnaHQ6IDQ0cHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9iaWxlLW9yZGVyLWNhcmRzIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtaGVhZGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMS41cmVtIDFyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtaGVhZGVyIGgzLFxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtaGVhZGVyIC5oMyB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLWhlYWRlciBwIHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtaGVhZGVyIC5idG4ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMzAwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSB7XG4gICAgLyogVHdvIGNvbHVtbnMgZm9yIHF1aWNrIGFjdGlvbiBidXR0b25zIG9uIG1vYmlsZSAqL1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLWNhcmQgaDQsXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucHJvZmlsZS1jYXJkIC5oNCB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnF1aWNrLWFjdGlvbi1tb2JpbGUge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgIGdhcDogMC43NXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucXVpY2stYWN0aW9uLW1vYmlsZSAuYnRuIHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIHBhZGRpbmc6IDAuNzVyZW0gMC41cmVtO1xuICAgIG1pbi1oZWlnaHQ6IDQ4cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5xdWljay1hY3Rpb24tbW9iaWxlIC5idG4gaSB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5saXN0LWdyb3VwLWl0ZW0gaDYsXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubGlzdC1ncm91cC1pdGVtIC5oNiB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubGlzdC1ncm91cC1pdGVtIHAge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubGlzdC1ncm91cC1pdGVtIHNtYWxsLFxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLmxpc3QtZ3JvdXAtaXRlbSAuc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBjb2xvcjogIzZjNzU3ZDtcbiAgfVxufVxuXG5AbWVkaWEgKGhvdmVyOiBub25lKSBhbmQgKHBvaW50ZXI6IGNvYXJzZSkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnN0YXQtY2FyZDphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1vcmRlci1jYXJkOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLWhlYWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5yb3cubWItNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtY2FyZCB7XG4gICAgcGFkZGluZzogMS4yNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtY2FyZDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9iaWxlLW9yZGVyLWNhcmQubG9hZGluZyB7XG4gIG9wYWNpdHk6IDAuNjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9iaWxlLW9yZGVyLWNhcmQubG9hZGluZzo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIG1hcmdpbjogLTEwcHggMCAwIC0xMHB4O1xuICBib3JkZXI6IDJweCBzb2xpZCAjZjNmM2YzO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCB2YXIoLS1icy1wcmltYXJ5KTtcbiAgYW5pbWF0aW9uOiBzcGluIDFzIGxpbmVhciBpbmZpbml0ZTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5zdGF0LWNhcmQge1xuICAgIHBhZGRpbmc6IDAuNzVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnN0YXQtY2FyZCAuc3RhdC12YWx1ZSB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtaGVhZGVyIHtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLWhlYWRlciBoMyxcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLWhlYWRlciAuaDMge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlICNtb2JpbGUtZmlsdGVyLXRvZ2dsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBtaW4taGVpZ2h0OiA0OHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlICNvcmRlci1maWx0ZXItZm9ybSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAjb3JkZXItZmlsdGVyLWZvcm0uc2hvdyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZWUyZTY7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuZmlsdGVyLWFjdGl2ZS1pbmRpY2F0b3Ige1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBwYWRkaW5nOiAwLjEyNXJlbSAwLjVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMXJlbTtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlICNtb2JpbGUtZmlsdGVyLXRvZ2dsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAjb3JkZXItZmlsdGVyLWZvcm0ge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSB7XG4gICAgLyogT3JkZXIgSGVhZGVyICovXG4gICAgLyogT3JkZXIgRGV0YWlscyAqL1xuICAgIC8qIEFjdGlvbiBCdXR0b25zICovXG4gICAgLyogUXVpY2sgVmlldyBEZXRhaWxzICovXG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1vcmRlcnMtbGlzdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1vcmRlci1pdGVtIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjJzIGVhc2U7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1vcmRlci1pdGVtOmFjdGl2ZSB7XG4gICAgYm94LXNoYWRvdzogMCAwLjEyNXJlbSAwLjI1cmVtIHJnYmEoMCwgMCwgMCwgMC4wNzUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1vcmRlci1oZWFkZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1vcmRlci1pZCB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtb3JkZXItZGF0ZSB7XG4gICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9iaWxlLW9yZGVyLXBheW1lbnQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtb3JkZXItdG90YWwge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtb3JkZXItaW5mbyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTllY2VmO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTllY2VmO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtb3JkZXItaXRlbXMge1xuICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1vcmRlci1hY3Rpb25zIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMTAwcHgsIDFmcikpO1xuICAgIGdhcDogMC41cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtb3JkZXItYWN0aW9ucyAuYnRuIHtcbiAgICBtaW4taGVpZ2h0OiA0NHB4O1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgcGFkZGluZzogMC41cmVtO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBnYXA6IDAuMjVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1vcmRlci1hY3Rpb25zIC5idG4gaSB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtb3JkZXItcXVpY2stZGV0YWlscyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGVlMmU2O1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtb3JkZXItcXVpY2stZGV0YWlscy5zaG93IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtb3JkZXJzLWxpc3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuc3RhdHVzLWd1aWRlLW1vYmlsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICAgIG1hcmdpbjogLTAuNXJlbTtcbiAgICBwYWRkaW5nOiAwLjVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnN0YXR1cy1ndWlkZS1tb2JpbGU6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICBoZWlnaHQ6IDRweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuc3RhdHVzLWd1aWRlLW1vYmlsZTo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgIGJhY2tncm91bmQ6ICNmMWYxZjE7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnN0YXR1cy1ndWlkZS1tb2JpbGU6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICBiYWNrZ3JvdW5kOiAjODg4O1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuc3RhdHVzLWd1aWRlLWl0ZW0ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDAuNXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuc3RhdHVzLWd1aWRlLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5yb3cuZy0yIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnN0YXR1cy1ndWlkZS1tb2JpbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucGFnaW5hdGlvbiB7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucGFnZS1saW5rIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMC43NXJlbTtcbiAgICBtaW4td2lkdGg6IDQ0cHg7XG4gICAgbWluLWhlaWdodDogNDRweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtb3JkZXItaXRlbS5sb2FkaW5nIHtcbiAgb3BhY2l0eTogMC42O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5maWx0ZXItY291bnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1kYW5nZXIpO1xuICBjb2xvcjogd2hpdGU7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG59XG5cbkBtZWRpYSAocHJlZmVycy1jb250cmFzdDogaGlnaCkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1vcmRlci1pdGVtIHtcbiAgICBib3JkZXItd2lkdGg6IDJweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9iaWxlLW9yZGVyLWlkIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1vcmRlci1hY3Rpb25zIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2Uge1xuICAgIC8qIE9yZGVyIFN0YXR1cyBTZWN0aW9uICovXG4gICAgLyogSW5mbyBHcmlkIG9uIE1vYmlsZSAqL1xuICAgIC8qIExhYmVscyBhbmQgVmFsdWVzICovXG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtY2FyZCAucm93IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5jb2wtbWQtNC50ZXh0LW1kLWVuZCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGVlMmU2O1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5jb2wtNi5jb2wtbWQtNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuY29sLTYuY29sLW1kLTQ6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSBsYWJlbC50ZXh0LW11dGVkLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSBwLmZ3LXNlbWlib2xkIHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnRpbWVsaW5lIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnRpbWVsaW5lOjpiZWZvcmUge1xuICAgIGxlZnQ6IDZweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAudGltZWxpbmUtbWFya2VyIHtcbiAgICBsZWZ0OiAtMTRweDtcbiAgICB3aWR0aDogMTBweDtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnRpbWVsaW5lLWNvbnRlbnQgaDYsXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAudGltZWxpbmUtY29udGVudCAuaDYge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnRpbWVsaW5lLWNvbnRlbnQgcCB7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC50aW1lbGluZS1pdGVtIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIHtcbiAgICAvKiBTaG93IG1vYmlsZSBjYXJkcyAqL1xuICAgIC8qIE9yZGVyIFN1bW1hcnkgb24gTW9iaWxlICovXG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1vcmRlci1pdGVtcyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1pdGVtLWNhcmQge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG4gICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtaXRlbS1oZWFkZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiAxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1pdGVtLWltYWdlIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICB3aWR0aDogODBweDtcbiAgICBoZWlnaHQ6IDgwcHg7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1pdGVtLWltYWdlIGltZyxcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtaXRlbS1pbWFnZSAucGxhY2Vob2xkZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9iaWxlLWl0ZW0taW1hZ2UgLnBsYWNlaG9sZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9iaWxlLWl0ZW0tZGV0YWlscyB7XG4gICAgZmxleDogMTtcbiAgICBtaW4td2lkdGg6IDA7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1pdGVtLW5hbWUge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtaXRlbS1za3Uge1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtaXRlbS1wcmljaW5nIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmctdG9wOiAwLjc1cmVtO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTllY2VmO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtaXRlbS1wcmljZSB7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBjb2xvcjogIzZjNzU3ZDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9iaWxlLWl0ZW0tcXR5IHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGNvbG9yOiAjNmM3NTdkO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtaXRlbS10b3RhbCB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1vcmRlci1zdW1tYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1zdW1tYXJ5LXJvdyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1zdW1tYXJ5LXJvdzpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNkZWUyZTY7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1zdW1tYXJ5LWxhYmVsIHtcbiAgICBjb2xvcjogIzQ5NTA1NztcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9iaWxlLXN1bW1hcnktdmFsdWUge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtc3VtbWFyeS12YWx1ZS50ZXh0LWRhbmdlciB7XG4gICAgY29sb3I6ICNkYzM1NDUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtb3JkZXItaXRlbXMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSB7XG4gICAgLyogQm90dG9tIEFjdGlvbnMgKi9cbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucHJvZmlsZS1hY3Rpb25zIC5idG4tZ3JvdXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBnYXA6IDAuNXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucHJvZmlsZS1hY3Rpb25zIC5idG4ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDQ4cHg7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnRleHQtY2VudGVyLm10LTQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDAuNzVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnRleHQtY2VudGVyLm10LTQgLmJ0biB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogNDhweDtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5jb2wtbWQtNiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuY29sLW1kLTY6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucHJvZmlsZS1jYXJkIGFkZHJlc3Mge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucHJvZmlsZS1jYXJkIGg1LFxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtY2FyZCAuaDUge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgKGhvdmVyOiBub25lKSBhbmQgKHBvaW50ZXI6IGNvYXJzZSkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1pdGVtLWNhcmQ6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtY2FyZCB7XG4gICAgcGFkZGluZzogMS4yNXJlbSAxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtY2FyZCBoNCxcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLWNhcmQgLmg0IHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5iYWRnZS5mcy02IHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMC41cmVtIDFyZW0gIWltcG9ydGFudDtcbiAgfVxufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1pdGVtLWNhcmQubG9hZGluZyB7XG4gIG9wYWNpdHk6IDAuNjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbkBtZWRpYSAocHJlZmVycy1jb250cmFzdDogaGlnaCkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLm1vYmlsZS1pdGVtLWNhcmQge1xuICAgIGJvcmRlci13aWR0aDogMnB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5tb2JpbGUtc3VtbWFyeS1yb3c6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogM3B4O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCB7XG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAubW9iaWxlLW9yZGVyLWl0ZW1zIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnRhYmxlLXJlc3BvbnNpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLyoqXG4gKiBQcm9maWxlIEVkaXQgUGFnZSBTdHlsZXNcbiAqL1xuXG4ucGFnZV9pc19lZGl0X3Byb2ZpbGUsXG4ucGFnZV9pc19wcm9maWxlX2VkaXQge1xuICAvKiBQcm9maWxlIGNhcmQgaG92ZXIgc3RhdGUgZGlzYWJsZWQgKi9cbn1cblxuLnBhZ2VfaXNfZWRpdF9wcm9maWxlIC5wcm9maWxlLWltYWdlLWxhcmdlLFxuLnBhZ2VfaXNfcHJvZmlsZV9lZGl0IC5wcm9maWxlLWltYWdlLWxhcmdlIHtcbiAgd2lkdGg6IDE1MHB4O1xuICBoZWlnaHQ6IDE1MHB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBib3JkZXI6IDNweCBzb2xpZCAjZGVlMmU2O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5wYWdlX2lzX2VkaXRfcHJvZmlsZSAucHJvZmlsZS1pbWFnZS1wbGFjZWhvbGRlcixcbi5wYWdlX2lzX3Byb2ZpbGVfZWRpdCAucHJvZmlsZS1pbWFnZS1wbGFjZWhvbGRlciB7XG4gIHdpZHRoOiAxNTBweDtcbiAgaGVpZ2h0OiAxNTBweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICBib3JkZXI6IDNweCBzb2xpZCAjZGVlMmU2O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5wYWdlX2lzX2VkaXRfcHJvZmlsZSAucHJvZmlsZS1pbWFnZS1wcmV2aWV3LFxuLnBhZ2VfaXNfcHJvZmlsZV9lZGl0IC5wcm9maWxlLWltYWdlLXByZXZpZXcge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLnBhZ2VfaXNfZWRpdF9wcm9maWxlIC5wcm9maWxlLWltYWdlLXNlY3Rpb24sXG4ucGFnZV9pc19wcm9maWxlX2VkaXQgLnByb2ZpbGUtaW1hZ2Utc2VjdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnBhZ2VfaXNfZWRpdF9wcm9maWxlIC5wcm9maWxlLWltYWdlLXNlY3Rpb246aG92ZXIgLmltYWdlLXVwbG9hZC1vdmVybGF5LFxuLnBhZ2VfaXNfcHJvZmlsZV9lZGl0IC5wcm9maWxlLWltYWdlLXNlY3Rpb246aG92ZXIgLmltYWdlLXVwbG9hZC1vdmVybGF5IHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLnBhZ2VfaXNfZWRpdF9wcm9maWxlIC5pbWFnZS11cGxvYWQtb3ZlcmxheSxcbi5wYWdlX2lzX3Byb2ZpbGVfZWRpdCAuaW1hZ2UtdXBsb2FkLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIHdpZHRoOiAxNTBweDtcbiAgaGVpZ2h0OiAxNTBweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjb2xvcjogd2hpdGU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnBhZ2VfaXNfZWRpdF9wcm9maWxlIC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4ucGFnZV9pc19lZGl0X3Byb2ZpbGUgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucGFnZV9pc19lZGl0X3Byb2ZpbGUgLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLFxuLnBhZ2VfaXNfcHJvZmlsZV9lZGl0IC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4ucGFnZV9pc19wcm9maWxlX2VkaXQgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucGFnZV9pc19wcm9maWxlX2VkaXQgLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEodmFyKC0tYnMtcHJpbWFyeS1yZ2IpLCAwLjI1KTtcbn1cblxuLnBhZ2VfaXNfZWRpdF9wcm9maWxlIC5idG4tb3V0bGluZS1wcmltYXJ5OmhvdmVyLFxuLnBhZ2VfaXNfcHJvZmlsZV9lZGl0IC5idG4tb3V0bGluZS1wcmltYXJ5OmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xuICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuXG4vKipcbiAqIEVtYWlsIFByZWZlcmVuY2VzIFBhZ2UgU3R5bGVzXG4gKi9cblxuLnBhZ2VfaXNfZW1haWxfcHJlZmVyZW5jZXMgLmNhcmQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xufVxuXG4ucGFnZV9pc19lbWFpbF9wcmVmZXJlbmNlcyAuY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMC4xMjVyZW0gMC4yNXJlbSByZ2JhKDAsIDAsIDAsIDAuMDc1KTtcbn1cblxuLnBhZ2VfaXNfZW1haWxfcHJlZmVyZW5jZXMgLmNhcmQtaGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZWUyZTY7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbn1cblxuLnBhZ2VfaXNfZW1haWxfcHJlZmVyZW5jZXMgLmZvcm0tY2hlY2sge1xuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbn1cblxuLnBhZ2VfaXNfZW1haWxfcHJlZmVyZW5jZXMgLmZvcm0tY2hlY2staW5wdXQ6Y2hlY2tlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xufVxuXG4ucGFnZV9pc19lbWFpbF9wcmVmZXJlbmNlcyAuZm9ybS1jaGVjay1sYWJlbCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cblxuLnBhZ2VfaXNfZW1haWxfcHJlZmVyZW5jZXMgLmZvcm0tY2hlY2stbGFiZWwgc3Ryb25nIHtcbiAgY29sb3I6ICM0OTUwNTc7XG4gIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ucGFnZV9pc19lbWFpbF9wcmVmZXJlbmNlcyAuaC1maXQge1xuICBoZWlnaHQ6IGZpdC1jb250ZW50O1xufVxuXG4ucGFnZV9pc19lbWFpbF9wcmVmZXJlbmNlcyAuYnRuLW91dGxpbmUtcHJpbWFyeTpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLnBhZ2VfaXNfZW1haWxfcHJlZmVyZW5jZXMgLnRleHQtcHJpbWFyeSB7XG4gIGNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KSAhaW1wb3J0YW50O1xufVxuXG4ucGFnZV9pc19lbWFpbF9wcmVmZXJlbmNlcyAuYmctbGlnaHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhICFpbXBvcnRhbnQ7XG59XG5cbi5wYWdlX2lzX2VtYWlsX3ByZWZlcmVuY2VzIC5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG5cbi5wcm9zZSBoMSxcbi5wcm9zZSAuaDEsXG4ucHJvc2UgaDIsXG4ucHJvc2UgLmgyLFxuLnByb3NlIGgzLFxuLnByb3NlIC5oMyxcbi5wcm9zZSBoNCxcbi5wcm9zZSAuaDQsXG4ucHJvc2UgaDUsXG4ucHJvc2UgLmg1LFxuLnByb3NlIGg2LFxuLnByb3NlIC5oNiB7XG4gIG1hcmdpbi10b3A6IDEuNWVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjc1ZW07XG59XG5cbi5wcm9zZSBoMTpmaXJzdC1jaGlsZCxcbi5wcm9zZSAuaDE6Zmlyc3QtY2hpbGQsXG4ucHJvc2UgaDI6Zmlyc3QtY2hpbGQsXG4ucHJvc2UgLmgyOmZpcnN0LWNoaWxkLFxuLnByb3NlIGgzOmZpcnN0LWNoaWxkLFxuLnByb3NlIC5oMzpmaXJzdC1jaGlsZCxcbi5wcm9zZSBoNDpmaXJzdC1jaGlsZCxcbi5wcm9zZSAuaDQ6Zmlyc3QtY2hpbGQsXG4ucHJvc2UgaDU6Zmlyc3QtY2hpbGQsXG4ucHJvc2UgLmg1OmZpcnN0LWNoaWxkLFxuLnByb3NlIGg2OmZpcnN0LWNoaWxkLFxuLnByb3NlIC5oNjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5wcm9zZSBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNWVtO1xuICBsaW5lLWhlaWdodDogMS43O1xufVxuXG4ucHJvc2UgdWwsXG4ucHJvc2Ugb2wge1xuICBtYXJnaW4tYm90dG9tOiAxLjI1ZW07XG4gIHBhZGRpbmctbGVmdDogMS41ZW07XG59XG5cbi5wcm9zZSB1bCBsaSxcbi5wcm9zZSBvbCBsaSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNWVtO1xufVxuXG4ucHJvc2UgYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMS41ZW0gMDtcbiAgcGFkZGluZy1sZWZ0OiAxLjVlbTtcbiAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCB2YXIoLS1icy1ncmF5LTMwMCk7XG59XG5cbi5wcm9zZSB0YWJsZSB7XG4gIG1hcmdpbjogMS41ZW0gMDtcbn1cblxuLnByb3NlIGltZyB7XG4gIG1hcmdpbjogMS41ZW0gMDtcbn1cblxuLnByb3NlIGEge1xuICBjb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4ucHJvc2UgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLm1heC13LW5vbmUge1xuICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnBhZ2VfaXNfY29tcGFyaXNvbl9wYWdlIC5jb21wYXJpc29uLXRhYmxlIHtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbn1cblxuLnBhZ2VfaXNfY29tcGFyaXNvbl9wYWdlIC5jb21wYXJpc29uLXRhYmxlIHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtZ3JheS0xMDApO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4ucGFnZV9pc19jb21wYXJpc29uX3BhZ2UgLmNvbXBhcmlzb24tdGFibGUgLmVtcHR5LWNlbGwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1ncmF5LTUwKTtcbiAgYm9yZGVyOiAycHggZGFzaGVkIHZhcigtLWJzLWJvcmRlci1jb2xvcik7XG59XG5cbi5wYWdlX2lzX2NvbXBhcmlzb25fcGFnZSAuY29tcGFyaXNvbi10YWJsZSAuZW1wdHktY2VsbCAuZW1wdHktcGxhY2Vob2xkZXIge1xuICBwYWRkaW5nOiAzcmVtIDA7XG59XG5cbi5wYWdlX2lzX2NvbXBhcmlzb25fcGFnZSAuY29tcGFyaXNvbi10YWJsZSAuZW1wdHktY2VsbCAuZW1wdHktcGxhY2Vob2xkZXIgLmZhLXBsdXMtY2lyY2xlIHtcbiAgY29sb3I6IHZhcigtLWJzLXNlY29uZGFyeSk7XG59XG5cbi5wYWdlX2lzX2NvbXBhcmlzb25fcGFnZSAuY29tcGFyaXNvbi1jb250YWluZXIge1xuICBtYXJnaW4tdG9wOiAycmVtO1xufVxuXG4ucGFnZV9pc19jb21wYXJpc29uX3BhZ2UgLnJlbW92ZS1pdGVtLWJ0biB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMHB4O1xuICByaWdodDogMTBweDtcbiAgei1pbmRleDogMTA7XG59XG5cbi5wYWdlX2lzX2NvbXBhcmlzb25fcGFnZSAucHJvZHVjdC1pbWFnZS1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDE1MHB4O1xufVxuXG4ucGFnZV9pc19jb21wYXJpc29uX3BhZ2UgLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyIC5wcm9kdWN0LWltYWdlIHtcbiAgbWF4LWhlaWdodDogMTIwcHg7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5wYWdlX2lzX2NvbXBhcmlzb25fcGFnZSAucHJpY2Utc2FsZSB7XG4gIGNvbG9yOiB2YXIoLS1icy1kYW5nZXIpO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnBhZ2VfaXNfY29tcGFyaXNvbl9wYWdlIC5wcmljZS1vcmlnaW5hbCB7XG4gIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICBjb2xvcjogdmFyKC0tYnMtc2Vjb25kYXJ5KTtcbiAgZm9udC1zaXplOiAwLjllbTtcbn1cblxuLnBhZ2VfaXNfbm90aWZpY2F0aW9ucyAubGlzdC1ncm91cC1pdGVtIGg1LFxuLnBhZ2VfaXNfbm90aWZpY2F0aW9ucyAubGlzdC1ncm91cC1pdGVtIC5oNSB7XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGNvbG9yOiAjMzMzO1xufVxuXG4ucGFnZV9pc19ub3RpZmljYXRpb25zIC5saXN0LWdyb3VwLWl0ZW0gaDUuZnctYm9sZCxcbi5wYWdlX2lzX25vdGlmaWNhdGlvbnMgLmxpc3QtZ3JvdXAtaXRlbSAuZnctYm9sZC5oNSB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5wYWdlX2lzX25vdGlmaWNhdGlvbnMgLmxpc3QtZ3JvdXAtaXRlbSBwIHtcbiAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgY29sb3I6ICM1NTU7XG59XG5cbi5wYWdlX2lzX25vdGlmaWNhdGlvbnMgLmxpc3QtZ3JvdXAtaXRlbSBzbWFsbCxcbi5wYWdlX2lzX25vdGlmaWNhdGlvbnMgLmxpc3QtZ3JvdXAtaXRlbSAuc21hbGwge1xuICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBjb2xvcjogIzZjNzU3ZDtcbn1cblxuLnBhZ2VfaXNfbm90aWZpY2F0aW9ucyAubGlzdC1ncm91cC1pdGVtIHNtYWxsIGksXG4ucGFnZV9pc19ub3RpZmljYXRpb25zIC5saXN0LWdyb3VwLWl0ZW0gLnNtYWxsIGkge1xuICBtYXJnaW4tcmlnaHQ6IDRweDtcbn1cblxuLnBhZ2VfaXNfbm90aWZpY2F0aW9ucyBoMSxcbi5wYWdlX2lzX25vdGlmaWNhdGlvbnMgLmgxIHtcbiAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMjhweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICMzMzM7XG59XG5cbi5wYWdlX2lzX25vdGlmaWNhdGlvbnMgLmFsZXJ0IGg0LFxuLnBhZ2VfaXNfbm90aWZpY2F0aW9ucyAuYWxlcnQgLmg0IHtcbiAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLnBhZ2VfaXNfbm90aWZpY2F0aW9ucyAuYWxlcnQgcCB7XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi5wYWdlX2lzX25vdGlmaWNhdGlvbnMgLmJhZGdlIHtcbiAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhZ2VfaXNfbm90aWZpY2F0aW9ucyAubGlzdC1ncm91cC1pdGVtIGg1LFxuICAucGFnZV9pc19ub3RpZmljYXRpb25zIC5saXN0LWdyb3VwLWl0ZW0gLmg1IHtcbiAgICBmb250LXNpemU6IDE3cHg7XG4gIH1cblxuICAucGFnZV9pc19ub3RpZmljYXRpb25zIC5saXN0LWdyb3VwLWl0ZW0gcCB7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfbm90aWZpY2F0aW9ucyAubGlzdC1ncm91cC1pdGVtIHNtYWxsLFxuICAucGFnZV9pc19ub3RpZmljYXRpb25zIC5saXN0LWdyb3VwLWl0ZW0gLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gIH1cblxuICAucGFnZV9pc19ub3RpZmljYXRpb25zIGgxLFxuICAucGFnZV9pc19ub3RpZmljYXRpb25zIC5oMSB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICB9XG59XG5cbi5wYWdlX2lzX25vdGlmaWNhdGlvbnMgLm5vdGlmaWNhdGlvbi11bnJlYWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTNmMmZkO1xuICBib3JkZXItbGVmdDogNHB4IHNvbGlkICMyMTk2RjM7XG59XG5cbi5wYWdlX2lzX25vdGlmaWNhdGlvbnMgLm5vdGlmaWNhdGlvbi11bnJlYWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmJkZWZiO1xufVxuXG4ucGFnZV9pc19ub3RpZmljYXRpb25zIC5ub3RpZmljYXRpb24tcmVjZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZjVlOTtcbiAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAjNENBRjUwO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDFzIGVhc2UtaW4tb3V0LCBib3JkZXItbGVmdC1jb2xvciAxcyBlYXNlLWluLW91dDtcbn1cblxuLnBhZ2VfaXNfbm90aWZpY2F0aW9ucyAubm90aWZpY2F0aW9uLXJlY2VudDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjOGU2Yzk7XG59XG5cbi5wYWdlX2lzX25vdGlmaWNhdGlvbnMgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG59XG5cbi5wYWdlX2lzX25vdGlmaWNhdGlvbnMgLmxpc3QtZ3JvdXAtaXRlbTpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpO1xufVxuXG4ud2lzaGxpc3QtcGFnZSB7XG4gIG1pbi1oZWlnaHQ6IDUwMHB4O1xufVxuXG4ud2lzaGxpc3QtcGFnZSAuZW1wdHktd2lzaGxpc3Qge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDRyZW0gMnJlbTtcbn1cblxuLndpc2hsaXN0LXBhZ2UgLmVtcHR5LXdpc2hsaXN0IC5lbXB0eS1pY29uIHtcbiAgZm9udC1zaXplOiA0cmVtO1xuICBjb2xvcjogdmFyKC0tYnMtZ3JheS00MDApO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBhbmltYXRpb246IHB1bHNlIDJzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xufVxuXG4ud2lzaGxpc3QtcGFnZSAuZW1wdHktd2lzaGxpc3QgaDMsXG4ud2lzaGxpc3QtcGFnZSAuZW1wdHktd2lzaGxpc3QgLmgzIHtcbiAgY29sb3I6IHZhcigtLWJzLWdyYXktNjAwKTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLndpc2hsaXN0LXBhZ2UgLmd1ZXN0LW5vdGljZSB7XG4gIGFuaW1hdGlvbjogc2xpZGVEb3duIDAuNXMgZWFzZTtcbn1cblxuLndpc2hsaXN0LXBhZ2UgLndpc2hsaXN0LWxpc3QgLndpc2hsaXN0LWl0ZW0tcm93IHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgYm9yZGVyLXJhZGl1czogMC4zNzVyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIHBhZGRpbmc6IDFyZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIG1pbi1oZWlnaHQ6IDgwcHg7XG59XG5cbi53aXNobGlzdC1wYWdlIC53aXNobGlzdC1saXN0IC53aXNobGlzdC1pdGVtLXJvdzpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG5cbi53aXNobGlzdC1wYWdlIC53aXNobGlzdC1saXN0IC53aXNobGlzdC1pdGVtLXJvdy5yZW1vdmluZyB7XG4gIGFuaW1hdGlvbjogcmVtb3ZlSXRlbSAwLjVzIGVhc2UgZm9yd2FyZHM7XG59XG5cbi53aXNobGlzdC1wYWdlIC53aXNobGlzdC1saXN0IC53aXNobGlzdC1pdGVtLXJvdyA+IC5kLWZsZXgge1xuICBnYXA6IDFyZW07XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAud2lzaGxpc3QtcGFnZSAud2lzaGxpc3QtbGlzdCAud2lzaGxpc3QtaXRlbS1yb3cgPiAuZC1mbGV4IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4ud2lzaGxpc3QtcGFnZSAud2lzaGxpc3QtbGlzdCAud2lzaGxpc3QtaXRlbS1yb3cgLndpc2hsaXN0LWl0ZW0taW1hZ2Uge1xuICBmbGV4LXNocmluazogMDtcbiAgd2lkdGg6IDgwcHg7XG4gIGhlaWdodDogODBweDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC53aXNobGlzdC1wYWdlIC53aXNobGlzdC1saXN0IC53aXNobGlzdC1pdGVtLXJvdyAud2lzaGxpc3QtaXRlbS1pbWFnZSB7XG4gICAgbWFyZ2luOiAwIGF1dG8gMXJlbTtcbiAgfVxufVxuXG4ud2lzaGxpc3QtcGFnZSAud2lzaGxpc3QtbGlzdCAud2lzaGxpc3QtaXRlbS1yb3cgLndpc2hsaXN0LWl0ZW0taW1hZ2UgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ud2lzaGxpc3QtcGFnZSAud2lzaGxpc3QtbGlzdCAud2lzaGxpc3QtaXRlbS1yb3cgLndpc2hsaXN0LWl0ZW0taW1hZ2UgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG5cbi53aXNobGlzdC1wYWdlIC53aXNobGlzdC1saXN0IC53aXNobGlzdC1pdGVtLXJvdyAud2lzaGxpc3QtaXRlbS1pbWFnZSAuaW1hZ2UtcGxhY2Vob2xkZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZjhmOWZhO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xufVxuXG4ud2lzaGxpc3QtcGFnZSAud2lzaGxpc3QtbGlzdCAud2lzaGxpc3QtaXRlbS1yb3cgLndpc2hsaXN0LWl0ZW0tZGV0YWlscyB7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC53aXNobGlzdC1wYWdlIC53aXNobGlzdC1saXN0IC53aXNobGlzdC1pdGVtLXJvdyAud2lzaGxpc3QtaXRlbS1kZXRhaWxzIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cbn1cblxuLndpc2hsaXN0LXBhZ2UgLndpc2hsaXN0LWxpc3QgLndpc2hsaXN0LWl0ZW0tcm93IC53aXNobGlzdC1pdGVtLWRldGFpbHMgaDYsXG4ud2lzaGxpc3QtcGFnZSAud2lzaGxpc3QtbGlzdCAud2lzaGxpc3QtaXRlbS1yb3cgLndpc2hsaXN0LWl0ZW0tZGV0YWlscyAuaDYge1xuICBmb250LXNpemU6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cblxuLndpc2hsaXN0LXBhZ2UgLndpc2hsaXN0LWxpc3QgLndpc2hsaXN0LWl0ZW0tcm93IC53aXNobGlzdC1pdGVtLWRldGFpbHMgaDYgYSxcbi53aXNobGlzdC1wYWdlIC53aXNobGlzdC1saXN0IC53aXNobGlzdC1pdGVtLXJvdyAud2lzaGxpc3QtaXRlbS1kZXRhaWxzIC5oNiBhIHtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLndpc2hsaXN0LXBhZ2UgLndpc2hsaXN0LWxpc3QgLndpc2hsaXN0LWl0ZW0tcm93IC53aXNobGlzdC1pdGVtLWRldGFpbHMgaDYgYTpob3Zlcixcbi53aXNobGlzdC1wYWdlIC53aXNobGlzdC1saXN0IC53aXNobGlzdC1pdGVtLXJvdyAud2lzaGxpc3QtaXRlbS1kZXRhaWxzIC5oNiBhOmhvdmVyIHtcbiAgY29sb3I6ICMwMDY2YzA7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4ud2lzaGxpc3QtcGFnZSAud2lzaGxpc3QtbGlzdCAud2lzaGxpc3QtaXRlbS1yb3cgLndpc2hsaXN0LWl0ZW0tZGV0YWlscyAucHJpY2UtaW5mbyAuaDUge1xuICBmb250LXNpemU6IDEuMjVyZW07XG59XG5cbi53aXNobGlzdC1wYWdlIC53aXNobGlzdC1saXN0IC53aXNobGlzdC1pdGVtLXJvdyAud2lzaGxpc3QtaXRlbS1hY3Rpb25zIHtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMC41cmVtO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLndpc2hsaXN0LXBhZ2UgLndpc2hsaXN0LWxpc3QgLndpc2hsaXN0LWl0ZW0tcm93IC53aXNobGlzdC1pdGVtLWFjdGlvbnMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxufVxuXG4ud2lzaGxpc3QtcGFnZSAud2lzaGxpc3QtbGlzdCAud2lzaGxpc3QtaXRlbS1yb3cgLndpc2hsaXN0LWl0ZW0tYWN0aW9ucyAuYnRuIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gIC53aXNobGlzdC1wYWdlIC53aXNobGlzdC1saXN0IC53aXNobGlzdC1pdGVtLXJvdyAud2lzaGxpc3QtaXRlbS1hY3Rpb25zIC5idG4ge1xuICAgIGZsZXg6IDE7XG4gICAgbWluLXdpZHRoOiAwO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAud2lzaGxpc3QtcGFnZSAud2lzaGxpc3QtbGlzdCAud2lzaGxpc3QtaXRlbS1yb3cgLndpc2hsaXN0LWl0ZW0tYWN0aW9ucyAubW92ZS10by10b3AsXG4gIC53aXNobGlzdC1wYWdlIC53aXNobGlzdC1saXN0IC53aXNobGlzdC1pdGVtLXJvdyAud2lzaGxpc3QtaXRlbS1hY3Rpb25zIC5yZW1vdmUtZnJvbS13aXNobGlzdCB7XG4gICAgd2lkdGg6IDQ0cHg7XG4gICAgcGFkZGluZzogMC4zNzVyZW07XG4gIH1cbn1cblxuQGtleWZyYW1lcyBwdWxzZSB7XG4gIDAlLCAxMDAlIHtcbiAgICBvcGFjaXR5OiAwLjU7XG4gIH1cblxuICA1MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzbGlkZURvd24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyByZW1vdmVJdGVtIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjgpO1xuICB9XG59XG5cbi53aXNobGlzdC1sb2FkaW5nLW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgei1pbmRleDogOTk5OTtcbn1cblxuLndpc2hsaXN0LWxvYWRpbmctb3ZlcmxheSAuc3Bpbm5lci1ib3JkZXIge1xuICB3aWR0aDogM3JlbTtcbiAgaGVpZ2h0OiAzcmVtO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLndpc2hsaXN0LXBhZ2UgLnBhZ2UtaGVhZGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxuXG4gIC53aXNobGlzdC1wYWdlIC5wYWdlLWhlYWRlciBoMSxcbiAgLndpc2hsaXN0LXBhZ2UgLnBhZ2UtaGVhZGVyIC5oMSB7XG4gICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICB9XG5cbiAgLndpc2hsaXN0LXBhZ2UgLmJ0biB7XG4gICAgbWluLWhlaWdodDogNDRweDtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgfVxuXG4gIC53aXNobGlzdC1wYWdlIC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG59XG5cbi5iZy1wdXJwbGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTM3ZWJhICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLmJnLXRlYWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2ViYWFkICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLnBhZ2UtaXMtc2VsbGVyLXByb2ZpbGUgLmNhcmQge1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuM3MgZWFzZTtcbn1cblxuLnBhZ2UtaXMtc2VsbGVyLXByb2ZpbGUgLmNhcmQ6aG92ZXIge1xuICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMCAwLjEyNXJlbSAwLjI1cmVtIHJnYmEoMCwgMCwgMCwgMC4wNzUpO1xufVxuXG4ucGFnZS1pcy1zZWxsZXItcHJvZmlsZSAuc2VsbGVyLWJpbyB7XG4gIG1heC13aWR0aDogODAwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIGNvbG9yOiAjNDk1MDU3O1xufVxuXG4ucGFnZS1pcy1zZWxsZXItcHJvZmlsZSAuc2VsbGVyLWJpbyBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLnBhZ2UtaXMtc2VsbGVyLXByb2ZpbGUgLnNlbGxlci1iaW8gcDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnBhZ2UtaXMtc2VsbGVyLXByb2ZpbGUgLnByb2R1Y3QtZ3JpZCAucHJvZHVjdC1jYXJkIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuM3MgZWFzZTtcbn1cblxuLnBhZ2UtaXMtc2VsbGVyLXByb2ZpbGUgLnByb2R1Y3QtZ3JpZCAucHJvZHVjdC1jYXJkOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDAgMC41cmVtIDFyZW0gcmdiYSgwLCAwLCAwLCAwLjE1KTtcbn1cblxuLnBhZ2UtaXMtc2VsbGVyLXByb2ZpbGUgLmVtcHR5LXN0YXRlIHtcbiAgcGFkZGluZzogNXJlbSAwO1xufVxuXG4ucGFnZS1pcy1zZWxsZXItcHJvZmlsZSAuZW1wdHktc3RhdGUgLmVtcHR5LWljb24ge1xuICBvcGFjaXR5OiAwLjM7XG59XG5cbi5wYWdlLWlzLXNlbGxlci1wcm9maWxlIC5jYXJkIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnM7XG59XG5cbi5wYWdlLWlzLXNlbGxlci1wcm9maWxlIC5jYXJkOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpO1xufVxuXG4ucGFnZS1pcy1zZWxsZXItcHJvZmlsZSAuc2VsbGVyLWJpbyB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgY29sb3I6ICMzMzM7XG4gIG1heC13aWR0aDogODAwcHg7XG59XG5cbi5wYWdlLWlzLXNlbGxlci1wcm9maWxlIC5zZWxsZXItYmlvIGgxLFxuLnBhZ2UtaXMtc2VsbGVyLXByb2ZpbGUgLnNlbGxlci1iaW8gLmgxLFxuLnBhZ2UtaXMtc2VsbGVyLXByb2ZpbGUgLnNlbGxlci1iaW8gaDIsXG4ucGFnZS1pcy1zZWxsZXItcHJvZmlsZSAuc2VsbGVyLWJpbyAuaDIsXG4ucGFnZS1pcy1zZWxsZXItcHJvZmlsZSAuc2VsbGVyLWJpbyBoMyxcbi5wYWdlLWlzLXNlbGxlci1wcm9maWxlIC5zZWxsZXItYmlvIC5oMyxcbi5wYWdlLWlzLXNlbGxlci1wcm9maWxlIC5zZWxsZXItYmlvIGg0LFxuLnBhZ2UtaXMtc2VsbGVyLXByb2ZpbGUgLnNlbGxlci1iaW8gLmg0LFxuLnBhZ2UtaXMtc2VsbGVyLXByb2ZpbGUgLnNlbGxlci1iaW8gaDUsXG4ucGFnZS1pcy1zZWxsZXItcHJvZmlsZSAuc2VsbGVyLWJpbyAuaDUsXG4ucGFnZS1pcy1zZWxsZXItcHJvZmlsZSAuc2VsbGVyLWJpbyBoNixcbi5wYWdlLWlzLXNlbGxlci1wcm9maWxlIC5zZWxsZXItYmlvIC5oNiB7XG4gIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbn1cblxuLnBhZ2UtaXMtc2VsbGVyLXByb2ZpbGUgLnNlbGxlci1iaW8gcCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5wYWdlLWlzLXNlbGxlci1wcm9maWxlIC5zZWxsZXItYmlvIHVsLFxuLnBhZ2UtaXMtc2VsbGVyLXByb2ZpbGUgLnNlbGxlci1iaW8gb2wge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBwYWRkaW5nLWxlZnQ6IDJyZW07XG59XG5cbi5wYWdlLWlzLXNlbGxlci1wcm9maWxlIC5zZWxsZXItYmlvIGltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4ucGFnZV9pc19zZWFyY2hfcmVzdWx0c19wYWdlIC5zZWFyY2gtcmVzdWx0cy1wYWdlIHtcbiAgbWluLWhlaWdodDogNzB2aDtcbn1cblxuLnBhZ2VfaXNfc2VhcmNoX3Jlc3VsdHNfcGFnZSAuc2VhcmNoLWhlYWRlciB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNmOGY5ZmEgMCUsICNlOWVjZWYgMTAwJSk7XG4gIHBhZGRpbmc6IDJyZW07XG4gIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5cbi5wYWdlX2lzX3NlYXJjaF9yZXN1bHRzX3BhZ2UgLm5vLXJlc3VsdHMge1xuICBiYWNrZ3JvdW5kOiAjZjhmOWZhO1xuICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICBtYXJnaW46IDJyZW0gMDtcbn1cblxuLnBhZ2VfaXNfc2VhcmNoX3Jlc3VsdHNfcGFnZSAuc2VhcmNoLXN1Z2dlc3Rpb25zIC5idG4ge1xuICBtYXJnaW46IDAuMjVyZW07XG59XG5cbi5wYWdlX2lzX3NlYXJjaF9yZXN1bHRzX3BhZ2UgLnNlYXJjaC10aXBzIHtcbiAgZm9udC1zaXplOiAwLjlyZW07XG59XG5cbi5wYWdlX2lzX3NlYXJjaF9yZXN1bHRzX3BhZ2UgLnVuaWZpZWQtc2VhcmNoLWNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogNjAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2VfaXNfc2VhcmNoX3Jlc3VsdHNfcGFnZSAuc2VhcmNoLWhlYWRlciB7XG4gICAgcGFkZGluZzogMS41cmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfc2VhcmNoX3Jlc3VsdHNfcGFnZSAuc2VhcmNoLXJlc3VsdHMtbGlzdCAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxufVxuXG4ucGFnZV9pc19zZWFyY2hfcmVzdWx0c191bmlmaWVkX3BhZ2UgLnByb2R1Y3QtY2FyZCB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlMGUwZTA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5wYWdlX2lzX3NlYXJjaF9yZXN1bHRzX3VuaWZpZWRfcGFnZSAucHJvZHVjdC1jYXJkOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpO1xuICBib3gtc2hhZG93OiAwIDRweCAxMnB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLnBhZ2VfaXNfc2VhcmNoX3Jlc3VsdHNfdW5pZmllZF9wYWdlIC5jYXJkLWltZy1jb250YWluZXIge1xuICBoZWlnaHQ6IDIwMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmOTtcbn1cblxuLnBhZ2VfaXNfc2VhcmNoX3Jlc3VsdHNfdW5pZmllZF9wYWdlIC5wcm9kdWN0LWltYWdlIHtcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBvYmplY3QtZml0OiBjb250YWluO1xufVxuXG4ucGFnZV9pc19zZWFyY2hfcmVzdWx0c191bmlmaWVkX3BhZ2UgLnByb2R1Y3QtYmFkZ2VzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwcHg7XG4gIGxlZnQ6IDEwcHg7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5wYWdlX2lzX3NlYXJjaF9yZXN1bHRzX3VuaWZpZWRfcGFnZSAuYmFkZ2Utc2FsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkYzM1NDU7XG59XG5cbi5wYWdlX2lzX3NlYXJjaF9yZXN1bHRzX3VuaWZpZWRfcGFnZSAuYmFkZ2UtbmV3IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI4YTc0NTtcbn1cblxuLnBhZ2VfaXNfc2VhcmNoX3Jlc3VsdHNfdW5pZmllZF9wYWdlIC5iYWRnZS1mZWF0dXJlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxZTFlNTY7XG59XG5cbi5wYWdlX2lzX3NlYXJjaF9yZXN1bHRzX3VuaWZpZWRfcGFnZSAucHJvZHVjdC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICBjb2xvcjogIzMzMztcbn1cblxuLnBhZ2VfaXNfc2VhcmNoX3Jlc3VsdHNfdW5pZmllZF9wYWdlIC5wcm9kdWN0LXByaWNlIHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLnBhZ2VfaXNfc2VhcmNoX3Jlc3VsdHNfdW5pZmllZF9wYWdlIC5zYWxlLXByaWNlIHtcbiAgY29sb3I6ICNkYzM1NDU7XG4gIG1hcmdpbi1sZWZ0OiA4cHg7XG59XG5cbi5wYWdlX2lzX3NlYXJjaF9yZXN1bHRzX3VuaWZpZWRfcGFnZSAucHJvZHVjdC1saW5rIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLnBhZ2VfaXNfc2VhcmNoX3Jlc3VsdHNfdW5pZmllZF9wYWdlIC5iZy1wdXJwbGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTM3ZWJhO1xuICBjb2xvcjogd2hpdGU7XG59XG5cbi5wYWdlX2lzX3NlYXJjaF9yZXN1bHRzX3VuaWZpZWRfcGFnZSAuYmctdGVhbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3ZWJhYWQ7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLnBhZ2VfaXNfZGlzY292ZXJfcGFnZSB7XG4gIC8qIERpc2NvdmVyIFBhZ2UgU3R5bGluZyAqL1xufVxuXG4ucGFnZV9pc19kaXNjb3Zlcl9wYWdlIC5kaXNjb3Zlci1oZXJvIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2Y4ZjlmYSAwJSwgI2U5ZWNlZiAxMDAlKTtcbiAgcGFkZGluZzogODBweCAwO1xuICBtYXJnaW4tYm90dG9tOiA2MHB4O1xufVxuXG4ucGFnZV9pc19kaXNjb3Zlcl9wYWdlIC5kaXNjb3Zlci1oZXJvIGgxLFxuLnBhZ2VfaXNfZGlzY292ZXJfcGFnZSAuZGlzY292ZXItaGVybyAuaDEge1xuICBmb250LXNpemU6IDNyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC41cHg7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5wYWdlX2lzX2Rpc2NvdmVyX3BhZ2UgLmRpc2NvdmVyLWhlcm8gLmxlYWQge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBtYXgtd2lkdGg6IDcwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLnBhZ2VfaXNfZGlzY292ZXJfcGFnZSAuY29udGVudC1jYXJkIHtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiAwIDAuMTI1cmVtIDAuNXJlbSByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZSwgYm94LXNoYWRvdyAwLjNzIGVhc2U7XG59XG5cbi5wYWdlX2lzX2Rpc2NvdmVyX3BhZ2UgLmNvbnRlbnQtY2FyZDpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcbiAgYm94LXNoYWRvdzogMCAwLjVyZW0gMS41cmVtIHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLnBhZ2VfaXNfZGlzY292ZXJfcGFnZSAuY29udGVudC1jYXJkIC5jYXJkLWltZy10b3Age1xuICBoZWlnaHQ6IDIwMHB4O1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cblxuLnBhZ2VfaXNfZGlzY292ZXJfcGFnZSAuc2VjdGlvbi1oZWFkZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDNyZW07XG59XG5cbi5wYWdlX2lzX2Rpc2NvdmVyX3BhZ2UgLnNlY3Rpb24taGVhZGVyIGgyLFxuLnBhZ2VfaXNfZGlzY292ZXJfcGFnZSAuc2VjdGlvbi1oZWFkZXIgLmgyIHtcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGNvbG9yOiAjMmMzZTUwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4ucGFnZV9pc19kaXNjb3Zlcl9wYWdlIC5wbGFjZWhvbGRlci1pbWFnZSB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNlOWVjZWYgMCUsICNkZWUyZTYgMTAwJSk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIGhlaWdodDogMjAwcHg7XG59XG5cbi5wYWdlLWlzLXByb2ZpbGUtb3JkZXItZGV0YWlsIC50aW1lbGluZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1sZWZ0OiAzMHB4O1xufVxuXG4ucGFnZS1pcy1wcm9maWxlLW9yZGVyLWRldGFpbCAudGltZWxpbmU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMTBweDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZWUyZTY7XG59XG5cbi5wYWdlLWlzLXByb2ZpbGUtb3JkZXItZGV0YWlsIC50aW1lbGluZS1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJvdHRvbTogMS41cmVtO1xufVxuXG4ucGFnZS1pcy1wcm9maWxlLW9yZGVyLWRldGFpbCAudGltZWxpbmUtaXRlbTpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbi5wYWdlLWlzLXByb2ZpbGUtb3JkZXItZGV0YWlsIC50aW1lbGluZS1tYXJrZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC0yMHB4O1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMnB4O1xuICBoZWlnaHQ6IDEycHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCAjZGVlMmU2O1xufVxuXG4ucGFnZS1pcy1wcm9maWxlLW9yZGVyLWRldGFpbCAudGltZWxpbmUtY29udGVudCB7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbn1cblxuLyoqXG4gKiBDb29raWUgQ29uc2VudCBQYWdlIFN0eWxlc1xuICovXG5cbi5jb29raWUtY29uc2VudC1iYW5uZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC45KTtcbiAgY29sb3I6IHdoaXRlO1xuICBwYWRkaW5nOiAxcmVtIDA7XG4gIHotaW5kZXg6IDk5OTk7XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcbn1cblxuLmNvb2tpZS1jb25zZW50LWJhbm5lciAuYnRuLW91dGxpbmUtbGlnaHQge1xuICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cblxuLmNvb2tpZS1jb25zZW50LWJhbm5lciAuYnRuLW91dGxpbmUtbGlnaHQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIGJvcmRlci1jb2xvcjogd2hpdGU7XG59XG5cbi8qKlxuICogQXNrIFF1ZXN0aW9uIFBhZ2UgU3R5bGVzXG4gKiBTdHlsZXMgZm9yIHRoZSBnZW5lcmFsIGFzayBxdWVzdGlvbiBwYWdlXG4gKi9cblxuLnBhZ2UtaXMtYXNrLXF1ZXN0aW9uLWdlbmVyYWwgLmZvcm0tdGV4dC50ZXh0LXdhcm5pbmcge1xuICBjb2xvcjogIzg1NjQwNCAhaW1wb3J0YW50O1xufVxuXG4ucGFnZS1pcy1hc2stcXVlc3Rpb24tZ2VuZXJhbCAuZm9ybS10ZXh0LnRleHQtZGFuZ2VyIHtcbiAgY29sb3I6ICM3MjFjMjQgIWltcG9ydGFudDtcbn1cblxuLnBhZ2UtaXMtYXNrLXF1ZXN0aW9uLWdlbmVyYWwgI2dlbmVyYWxRdWVzdGlvbkZvcm0gdGV4dGFyZWEge1xuICByZXNpemU6IHZlcnRpY2FsO1xuICBtaW4taGVpZ2h0OiAxMjBweDtcbn1cblxuLyoqXG4gKiBQcm9maWxlIExheW91dCBQYWdlIFN0eWxlc1xuICogTW9iaWxlLWZpcnN0IHJlc3BvbnNpdmUgc3R5bGVzIGZvciBwcm9maWxlIGxheW91dFxuICovXG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSB7XG4gIC8qIE1vYmlsZS1GaXJzdCBQcm9maWxlIFBhZ2UgU3R5bGVzICovXG4gIC8qIEJhc2UgU3R5bGVzIChNb2JpbGUgRmlyc3QpICovXG4gIC8qIE1vYmlsZSBOYXZpZ2F0aW9uIFNwZWNpZmljICovXG4gIC8qIEJyZWFkY3J1bWIgTW9iaWxlIE9wdGltaXphdGlvbiAqL1xuICAvKiBBbGVydCBPcHRpbWl6YXRpb25zICovXG4gIC8qIE1vYmlsZSBUb3VjaCBJbXByb3ZlbWVudHMgKi9cbiAgLyogVG91Y2ggaW50ZXJhY3Rpb24gZmVlZGJhY2sgKi9cbiAgLyogU21vb3RoIHRyYW5zaXRpb25zIGZvciBtb2JpbGUgbmF2ICovXG4gIC8qIFRhYmxldCBTdHlsZXMgKG1kIGJyZWFrcG9pbnQgYW5kIHVwKSAqL1xuICAvKiBEZXNrdG9wIFN0eWxlcyAobGcgYnJlYWtwb2ludCBhbmQgdXApICovXG4gIC8qIExhcmdlIERlc2t0b3AgU3R5bGVzICh4bCBicmVha3BvaW50IGFuZCB1cCkgKi9cbiAgLyogQWNjZXNzaWJpbGl0eSBJbXByb3ZlbWVudHMgKi9cbiAgLyogSGlnaCBjb250cmFzdCBtb2RlIHN1cHBvcnQgKi9cbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLXNpZGViYXIge1xuICAvKiBiYWNrZ3JvdW5kLWNvbG9yIHJlbW92ZWQgLSB1c2luZyBjYXJkIGJhY2tncm91bmQgKi9cbiAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICAvKiBwYWRkaW5nIHJlbW92ZWQgLSB1c2luZyBjYXJkLWJvZHkgcGFkZGluZyAqL1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtc2lkZWJhciAubmF2LWxpbmsge1xuICBjb2xvcjogIzQ5NTA1NztcbiAgcGFkZGluZzogMXJlbSAxLjI1cmVtO1xuICAvKiBMYXJnZXIgdG91Y2ggdGFyZ2V0cyBmb3IgbW9iaWxlICovXG4gIG1hcmdpbi1ib3R0b206IDAuMTI1cmVtO1xuICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgbWluLWhlaWdodDogNDhweDtcbiAgLyogTWluaW11bSB0b3VjaCB0YXJnZXQgc2l6ZSAqL1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmb250LXdlaWdodDogNTAwO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLXNpZGViYXIgLm5hdi1saW5rOmhvdmVyLFxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLXNpZGViYXIgLm5hdi1saW5rOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJvcmRlci1jb2xvcjogI2NlZDRkYTtcbiAgb3V0bGluZTogbm9uZTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtc2lkZWJhciAubmF2LWxpbmsuYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIGJvcmRlci1jb2xvcjogI2NlZDRkYTtcbiAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLXNpZGViYXIgLm5hdi1saW5rLmFjdGl2ZSBpIHtcbiAgY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtc2lkZWJhciAubmF2LWxpbmsgaSB7XG4gIHdpZHRoOiAyNHB4O1xuICAvKiBMYXJnZXIgaWNvbnMgZm9yIG1vYmlsZSAqL1xuICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxLjFlbTtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLXNpZGViYXIgLm5hdi1saW5rIHNtYWxsLFxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLXNpZGViYXIgLm5hdi1saW5rIC5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgb3BhY2l0eTogMC44O1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtc2lkZWJhciAubmF2LWxpbms6Zm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1icy1wcmltYXJ5KTtcbiAgb3V0bGluZS1vZmZzZXQ6IDJweDtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLWF2YXRhciB7XG4gIHdpZHRoOiA2NHB4O1xuICAvKiBTbWFsbGVyIG9uIG1vYmlsZSAqL1xuICBoZWlnaHQ6IDY0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIGJvcmRlcjogM3B4IHNvbGlkICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucHJvZmlsZS1oZWFkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucHJvZmlsZS1jYXJkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICBwYWRkaW5nOiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLnN0YXQtY2FyZCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMS4yNXJlbSAxcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlOWVjZWY7XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuc3RhdC1jYXJkOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xuICBib3gtc2hhZG93OiAwIDRweCAxMnB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5zdGF0LWNhcmQgLnN0YXQtdmFsdWUge1xuICBmb250LXNpemU6IDEuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5zdGF0LWNhcmQgLnN0YXQtbGFiZWwge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5uYXYtcGlsbHMtbW9iaWxlIC5uYXYtbGluayB7XG4gIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuYnJlYWRjcnVtYiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBwYWRkaW5nOiAwLjVyZW0gMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5icmVhZGNydW1iIC5icmVhZGNydW1iLWl0ZW0ge1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmJyZWFkY3J1bWIgLmJyZWFkY3J1bWItaXRlbSArIC5icmVhZGNydW1iLWl0ZW06OmJlZm9yZSB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuM3JlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjNyZW07XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuYWxlcnQge1xuICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIHBhZGRpbmc6IDAuODc1cmVtIDFyZW07XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuYnRuIHtcbiAgbWluLWhlaWdodDogMzhweDtcbiAgLyogUmVkdWNlZCBoZWlnaHQgKi9cbiAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gIC8qIFJlZHVjZWQgcGFkZGluZyAqL1xuICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuYnRuOmhvdmVyLFxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5idG46Zm9jdXMge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmJ0bjpmb2N1cy12aXNpYmxlIHtcbiAgb3V0bGluZTogMnB4IHNvbGlkIHZhcigtLWJzLXByaW1hcnkpO1xuICBvdXRsaW5lLW9mZnNldDogMnB4O1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmJ0bjpkaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuNjtcbiAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAudG91Y2gtYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAxMjMsIDI1NSwgMC4xKSAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOTgpO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgI21vYmlsZS1wcm9maWxlLW5hdiB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLXNpZGViYXIge1xuICAgIC8qIHBhZGRpbmcgaGFuZGxlZCBieSBjYXJkLWJvZHkgKi9cbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucHJvZmlsZS1zaWRlYmFyIC5uYXYtbGluayB7XG4gICAgcGFkZGluZzogMC44NzVyZW0gMXJlbTtcbiAgICBtaW4taGVpZ2h0OiBhdXRvO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLXNpZGViYXIgLm5hdi1saW5rIGkge1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLWF2YXRhciB7XG4gICAgd2lkdGg6IDcycHg7XG4gICAgaGVpZ2h0OiA3MnB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLWNhcmQge1xuICAgIHBhZGRpbmc6IDEuMjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuc3RhdC1jYXJkIHtcbiAgICBwYWRkaW5nOiAxLjVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnN0YXQtY2FyZCAuc3RhdC12YWx1ZSB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5icmVhZGNydW1iIHtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLXNpZGViYXIge1xuICAgIC8qIHBhZGRpbmcgaGFuZGxlZCBieSBjYXJkLWJvZHkgKi9cbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucHJvZmlsZS1zaWRlYmFyIC5uYXYtbGluayB7XG4gICAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLWF2YXRhciB7XG4gICAgd2lkdGg6IDkwcHg7XG4gICAgaGVpZ2h0OiA5MHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLWhlYWRlciB7XG4gICAgcGFkZGluZzogMS41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtY2FyZCB7XG4gICAgcGFkZGluZzogMS41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuc3RhdC1jYXJkIC5zdGF0LXZhbHVlIHtcbiAgICBmb250LXNpemU6IDIuMjVyZW07XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnN0YXQtY2FyZCAuc3RhdC1sYWJlbCB7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuYnJlYWRjcnVtYiB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5zdGF0LWNhcmQ6aG92ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtM3B4KTtcbiAgfVxufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnByb2ZpbGUtc2lkZWJhciAubmF2LWxpbmssXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucHJvZmlsZS1jYXJkLFxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnN0YXQtY2FyZCxcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5idG4ge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cblxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnN0YXQtY2FyZDpob3ZlcixcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5idG46aG92ZXIge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgKHByZWZlcnMtY29udHJhc3Q6IGhpZ2gpIHtcbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLXNpZGViYXIgLm5hdi1saW5rIHtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjNmM3NTdkO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5wcm9maWxlLXNpZGViYXIgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgfVxuXG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAucHJvZmlsZS1jYXJkLFxuICAucGFnZV9pc19wcm9maWxlX3BhZ2UgLnN0YXQtY2FyZCB7XG4gICAgYm9yZGVyLXdpZHRoOiAycHg7XG4gIH1cbn1cblxuLyoqXG4gKiBQcm9maWxlIEFkZHJlc3NlcyBQYWdlIFN0eWxlc1xuICovXG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuYWRkcmVzcy1jYXJkIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmFkZHJlc3MtY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMC41cmVtIDFyZW0gcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmFkZHJlc3MtY2FyZC5kZWZhdWx0LWFkZHJlc3Mge1xuICBib3JkZXItY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZmZmIDAlLCAjZjhmOWZmIDEwMCUpO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmFkZHJlc3MtY2FyZCAuYWRkcmVzcy1kZXRhaWxzIHtcbiAgbWluLWhlaWdodDogMTIwcHg7XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuYWRkcmVzcy1jYXJkIC5iYWRnZSB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbn1cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5hZGRyZXNzLWNhcmQgLmJhZGdlLmJnLXByaW1hcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KSAhaW1wb3J0YW50O1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLmRyb3Bkb3duIC5idG4tb3V0bGluZS1zZWNvbmRhcnkuYnRuLXNtLmRyb3Bkb3duLXRvZ2dsZSxcbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuZHJvcGRvd24gLmJ0bi1ncm91cC1zbSA+IC5idG4tb3V0bGluZS1zZWNvbmRhcnkuZHJvcGRvd24tdG9nZ2xlLmJ0biB7XG4gIHdpZHRoOiAzMnB4O1xuICBoZWlnaHQ6IDMycHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAwO1xufVxuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2UgLnRleHQtc3VjY2VzcyB7XG4gIGNvbG9yOiAjMTk4NzU0ICFpbXBvcnRhbnQ7XG59XG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuZmEtM3gge1xuICBmb250LXNpemU6IDNyZW07XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5wYWdlX2lzX3Byb2ZpbGVfcGFnZSAuYWRkcmVzcy1jYXJkIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG5cbiAgLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIC5hZGRyZXNzLWNhcmQ6aG92ZXIge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG4ucHJvZmlsZS1zZWN1cml0eS1wYWdlIC5wYXNzd29yZC1yZXF1aXJlbWVudHMgLnJlcXVpcmVtZW50IHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xufVxuXG4ucHJvZmlsZS1zZWN1cml0eS1wYWdlIC5wYXNzd29yZC1yZXF1aXJlbWVudHMgLnJlcXVpcmVtZW50LnZhbGlkIGkge1xuICBjb2xvcjogIzE5ODc1NCAhaW1wb3J0YW50O1xufVxuXG4ucHJvZmlsZS1zZWN1cml0eS1wYWdlIC5wYXNzd29yZC1yZXF1aXJlbWVudHMgLnJlcXVpcmVtZW50LnZhbGlkIGk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMGNcIjtcbn1cblxuLnByb2ZpbGUtc2VjdXJpdHktcGFnZSAucGFzc3dvcmQtc3RyZW5ndGgge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcbn1cblxuLnByb2ZpbGUtc2VjdXJpdHktcGFnZSAucHJvZ3Jlc3MtYmFyIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbn1cblxuLnByb2ZpbGUtc2VjdXJpdHktcGFnZSAuaW5wdXQtZ3JvdXAgLmJ0biB7XG4gIGJvcmRlci1sZWZ0OiAwO1xufVxuXG4ucHJvZmlsZS1zZWN1cml0eS1wYWdlIC5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sOmZvY3VzICsgLmJ0bixcbi5wcm9maWxlLXNlY3VyaXR5LXBhZ2UgLmlucHV0LWdyb3VwIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMgKyAuYnRuLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wcm9maWxlLXNlY3VyaXR5LXBhZ2UgLmlucHV0LWdyb3VwIC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyArIC5idG4ge1xuICBib3JkZXItY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xufVxuXG4ucHJvZmlsZS1zZWN1cml0eS1wYWdlIC50YWJsZSBjb2RlLFxuLnByb2ZpbGUtc2VjdXJpdHktcGFnZSAucHJvc2UgdGFibGUgY29kZSxcbi5wcm9zZSAucHJvZmlsZS1zZWN1cml0eS1wYWdlIHRhYmxlIGNvZGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICBwYWRkaW5nOiAwLjJyZW0gMC40cmVtO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuXG4ucGFnZS1pcy1wcm9maWxlLWludm9pY2UgLmludm9pY2UtY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiA4MDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuQG1lZGlhIHByaW50IHtcbiAgLm5hdmJhcixcbiAgLmZvb3RlcixcbiAgLm5vLXByaW50LFxuICAuYnJlYWRjcnVtYiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmludm9pY2UtY29udGFpbmVyIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG5cbiAgYm9keSB7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gIH1cbn1cblxuLyoqXG4gKiBCbG9nIEluZGV4IFBhZ2UgU3R5bGVzXG4gKiBTdHlsZXMgZm9yIHRoZSBtYWluIGJsb2cgbGlzdGluZyBwYWdlXG4gKi9cblxuLnBhZ2UtaXMtYmxvZy1pbmRleCB7XG4gIC8qIEhlcm8gU2VjdGlvbiAqL1xuICAvKiBGZWF0dXJlZCBDYXJkcyAqL1xuICAvKiBDYXRlZ29yeSBCYWRnZXMgKi9cbiAgLyogQmxvZyBQb3N0IENhcmRzICovXG4gIC8qIFNpZGViYXIgKi9cbiAgLyogQXJjaGl2ZSBMaXN0ICovXG4gIC8qIFBvcHVsYXIgUG9zdHMgKi9cbn1cblxuLnBhZ2UtaXMtYmxvZy1pbmRleCAuaGVyby1mZWF0dXJlZCB7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiA0MDBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLnBhZ2UtaXMtYmxvZy1pbmRleCAuaGVyby1mZWF0dXJlZDo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMC4zKSwgcmdiYSgwLCAwLCAwLCAwLjgpKTtcbn1cblxuLnBhZ2UtaXMtYmxvZy1pbmRleCAuaGVyby1mZWF0dXJlZCAuY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbn1cblxuLnBhZ2UtaXMtYmxvZy1pbmRleCAuZmVhdHVyZWQtY2FyZCB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2U7XG59XG5cbi5wYWdlLWlzLWJsb2ctaW5kZXggLmZlYXR1cmVkLWNhcmQ6aG92ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7XG59XG5cbi5wYWdlLWlzLWJsb2ctaW5kZXggLmZlYXR1cmVkLWNhcmQgLnRodW1ibmFpbCB7XG4gIGhlaWdodDogMjUwcHg7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4ucGFnZS1pcy1ibG9nLWluZGV4IC5jYXRlZ29yeS1iYWRnZSB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbn1cblxuLnBhZ2UtaXMtYmxvZy1pbmRleCAuYmxvZy1wb3N0IHtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgcGFkZGluZy1ib3R0b206IDNyZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGVlMmU2O1xufVxuXG4ucGFnZS1pcy1ibG9nLWluZGV4IC5ibG9nLXBvc3Q6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbi5wYWdlLWlzLWJsb2ctaW5kZXggLmJsb2ctcG9zdC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG4ucGFnZS1pcy1ibG9nLWluZGV4IC5ibG9nLXBvc3QtdGl0bGUgYSB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5wYWdlLWlzLWJsb2ctaW5kZXggLmJsb2ctcG9zdC10aXRsZSBhOmhvdmVyIHtcbiAgY29sb3I6ICMwZDZlZmQ7XG59XG5cbi5wYWdlLWlzLWJsb2ctaW5kZXggLmJsb2ctcG9zdC1tZXRhIHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5wYWdlLWlzLWJsb2ctaW5kZXggLmJsb2ctcG9zdC1tZXRhIGEge1xuICBjb2xvcjogIzQ5NTA1NztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLnBhZ2UtaXMtYmxvZy1pbmRleCAuc2lkZWJhci1zZWN0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cblxuLnBhZ2UtaXMtYmxvZy1pbmRleCAuc2lkZWJhci1zZWN0aW9uIGg0LFxuLnBhZ2UtaXMtYmxvZy1pbmRleCAuc2lkZWJhci1zZWN0aW9uIC5oNCB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLnBhZ2UtaXMtYmxvZy1pbmRleCAuYXJjaGl2ZS1saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuLnBhZ2UtaXMtYmxvZy1pbmRleCAuYXJjaGl2ZS1saXN0IGxpIHtcbiAgcGFkZGluZzogMC41cmVtIDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjBmMGYwO1xufVxuXG4ucGFnZS1pcy1ibG9nLWluZGV4IC5hcmNoaXZlLWxpc3QgbGk6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbi5wYWdlLWlzLWJsb2ctaW5kZXggLnBvcHVsYXItcG9zdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLnBhZ2UtaXMtYmxvZy1pbmRleCAucG9wdWxhci1wb3N0IGltZyB7XG4gIHdpZHRoOiA2MHB4O1xuICBoZWlnaHQ6IDYwcHg7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG5cbi5wYWdlLWlzLWJsb2ctaW5kZXggLnBvcHVsYXItcG9zdC1jb250ZW50IGg2LFxuLnBhZ2UtaXMtYmxvZy1pbmRleCAucG9wdWxhci1wb3N0LWNvbnRlbnQgLmg2IHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbn1cblxuLnBhZ2UtaXMtYmxvZy1pbmRleCAucG9wdWxhci1wb3N0LWNvbnRlbnQgaDYgYSxcbi5wYWdlLWlzLWJsb2ctaW5kZXggLnBvcHVsYXItcG9zdC1jb250ZW50IC5oNiBhIHtcbiAgY29sb3I6ICMyMTI1Mjk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnBhZ2UtaXMtYmxvZy1pbmRleCAucG9wdWxhci1wb3N0LWNvbnRlbnQgaDYgYTpob3Zlcixcbi5wYWdlLWlzLWJsb2ctaW5kZXggLnBvcHVsYXItcG9zdC1jb250ZW50IC5oNiBhOmhvdmVyIHtcbiAgY29sb3I6ICMwZDZlZmQ7XG59XG5cbi5wYWdlLWlzLWJsb2ctaW5kZXggLnBvcHVsYXItcG9zdC1tZXRhIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBjb2xvcjogIzZjNzU3ZDtcbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLnBhZ2UtaXMtYmxvZy1pbmRleCAuZmVhdHVyZWQtY2FyZCB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxuXG4gIC5wYWdlLWlzLWJsb2ctaW5kZXggLmZlYXR1cmVkLWNhcmQ6aG92ZXIge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG4ucGFnZS1pcy1ibG9nLXNob3cge1xuICAvKiBCbG9nIFBvc3QgU3R5bGVzICovXG4gIC8qIE5hdmlnYXRpb24gKi9cbiAgLyogUmVsYXRlZCBQb3N0cyAqL1xuICAvKiBTaWRlYmFyIFN0eWxlcyAoc2FtZSBhcyBibG9nIGluZGV4KSAqL1xuICAvKiBBcmNoaXZlIExpc3QgKi9cbiAgLyogUG9wdWxhciBQb3N0cyAqL1xufVxuXG4ucGFnZS1pcy1ibG9nLXNob3cgLmJsb2ctcG9zdC1oZWFkZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDNyZW07XG59XG5cbi5wYWdlLWlzLWJsb2ctc2hvdyAuYmxvZy1wb3N0LXRpdGxlIHtcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5wYWdlLWlzLWJsb2ctc2hvdyAuYmxvZy1wb3N0LW1ldGEge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cblxuLnBhZ2UtaXMtYmxvZy1zaG93IC5ibG9nLXBvc3QtbWV0YSBhIHtcbiAgY29sb3I6ICM0OTUwNTc7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnBhZ2UtaXMtYmxvZy1zaG93IC5ibG9nLXBvc3QtbWV0YSBhOmhvdmVyIHtcbiAgY29sb3I6ICMwZDZlZmQ7XG59XG5cbi5wYWdlLWlzLWJsb2ctc2hvdyAuYmxvZy1wb3N0LWltYWdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuXG4ucGFnZS1pcy1ibG9nLXNob3cgLmJsb2ctcG9zdC1jb250ZW50IHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNzU7XG4gIGNvbG9yOiAjMjEyNTI5O1xufVxuXG4ucGFnZS1pcy1ibG9nLXNob3cgLmJsb2ctcG9zdC1jb250ZW50IHAge1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG5cbi5wYWdlLWlzLWJsb2ctc2hvdyAuYmxvZy1wb3N0LWNvbnRlbnQgaDIsXG4ucGFnZS1pcy1ibG9nLXNob3cgLmJsb2ctcG9zdC1jb250ZW50IC5oMixcbi5wYWdlLWlzLWJsb2ctc2hvdyAuYmxvZy1wb3N0LWNvbnRlbnQgaDMsXG4ucGFnZS1pcy1ibG9nLXNob3cgLmJsb2ctcG9zdC1jb250ZW50IC5oMyxcbi5wYWdlLWlzLWJsb2ctc2hvdyAuYmxvZy1wb3N0LWNvbnRlbnQgaDQsXG4ucGFnZS1pcy1ibG9nLXNob3cgLmJsb2ctcG9zdC1jb250ZW50IC5oNCB7XG4gIG1hcmdpbi10b3A6IDJyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5wYWdlLWlzLWJsb2ctc2hvdyAucG9zdC1uYXZpZ2F0aW9uIHtcbiAgbWFyZ2luOiAyMHB4O1xuICAvKiBtYXJnaW4tdG9wOiAzcmVtOyAqL1xuICAvKiBwYWRkaW5nLXRvcDogMnJlbTsgKi9cbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZWUyZTY7XG59XG5cbi5wYWdlLWlzLWJsb2ctc2hvdyAubmF2LXBvc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzIGVhc2U7XG59XG5cbi5wYWdlLWlzLWJsb2ctc2hvdyAubmF2LXBvc3Q6aG92ZXIge1xuICBjb2xvcjogIzBkNmVmZDtcbn1cblxuLnBhZ2UtaXMtYmxvZy1zaG93IC5uYXYtcG9zdC1sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbn1cblxuLnBhZ2UtaXMtYmxvZy1zaG93IC5yZWxhdGVkLXBvc3RzIHtcbiAgbWFyZ2luLXRvcDogM3JlbTtcbiAgcGFkZGluZy10b3A6IDNyZW07XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGVlMmU2O1xufVxuXG4ucGFnZS1pcy1ibG9nLXNob3cgLnJlbGF0ZWQtcG9zdC1jYXJkIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xufVxuXG4ucGFnZS1pcy1ibG9nLXNob3cgLnJlbGF0ZWQtcG9zdC1jYXJkOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpO1xufVxuXG4ucGFnZS1pcy1ibG9nLXNob3cgLnJlbGF0ZWQtcG9zdC1pbWFnZSB7XG4gIGhlaWdodDogMjAwcHg7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4ucGFnZS1pcy1ibG9nLXNob3cgLnNpZGViYXItc2VjdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5cbi5wYWdlLWlzLWJsb2ctc2hvdyAuc2lkZWJhci1zZWN0aW9uIGg0LFxuLnBhZ2UtaXMtYmxvZy1zaG93IC5zaWRlYmFyLXNlY3Rpb24gLmg0IHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4ucGFnZS1pcy1ibG9nLXNob3cgLmFyY2hpdmUtbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5wYWdlLWlzLWJsb2ctc2hvdyAuYXJjaGl2ZS1saXN0IGxpIHtcbiAgcGFkZGluZzogMC41cmVtIDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjBmMGYwO1xufVxuXG4ucGFnZS1pcy1ibG9nLXNob3cgLmFyY2hpdmUtbGlzdCBsaTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLnBhZ2UtaXMtYmxvZy1zaG93IC5wb3B1bGFyLXBvc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5wYWdlLWlzLWJsb2ctc2hvdyAucG9wdWxhci1wb3N0IGltZyB7XG4gIHdpZHRoOiA2MHB4O1xuICBoZWlnaHQ6IDYwcHg7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG5cbi5wYWdlLWlzLWJsb2ctc2hvdyAucG9wdWxhci1wb3N0LWNvbnRlbnQgaDYsXG4ucGFnZS1pcy1ibG9nLXNob3cgLnBvcHVsYXItcG9zdC1jb250ZW50IC5oNiB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG59XG5cbi5wYWdlLWlzLWJsb2ctc2hvdyAucG9wdWxhci1wb3N0LWNvbnRlbnQgaDYgYSxcbi5wYWdlLWlzLWJsb2ctc2hvdyAucG9wdWxhci1wb3N0LWNvbnRlbnQgLmg2IGEge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4ucGFnZS1pcy1ibG9nLXNob3cgLnBvcHVsYXItcG9zdC1jb250ZW50IGg2IGE6aG92ZXIsXG4ucGFnZS1pcy1ibG9nLXNob3cgLnBvcHVsYXItcG9zdC1jb250ZW50IC5oNiBhOmhvdmVyIHtcbiAgY29sb3I6ICMwZDZlZmQ7XG59XG5cbi5wYWdlLWlzLWJsb2ctc2hvdyAucG9wdWxhci1wb3N0LW1ldGEge1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGNvbG9yOiAjNmM3NTdkO1xufVxuXG4ucGFnZS1pcy1ibG9nLWNhdGVnb3JpZXMge1xuICAvKiBIZXJvIFNlY3Rpb24gKi9cbiAgLyogQ2F0ZWdvcnkgQ2FyZHMgKi9cbiAgLyogQ2F0ZWdvcnkgTGluayAqL1xuICAvKiBTaWRlYmFyIFN0eWxlcyAqL1xuICAvKiBQb3B1bGFyIFBvc3RzIFdpZGdldCAqL1xuICAvKiBSZXNwb25zaXZlICovXG59XG5cbi5wYWdlLWlzLWJsb2ctY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1oZXJvIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2Y4ZjlmYSAwJSwgI2U5ZWNlZiAxMDAlKTtcbiAgcGFkZGluZzogODBweCAwO1xuICBtYXJnaW4tYm90dG9tOiA2MHB4O1xufVxuXG4ucGFnZS1pcy1ibG9nLWNhdGVnb3JpZXMgLmNhdGVnb3JpZXMtaGVybyBoMSxcbi5wYWdlLWlzLWJsb2ctY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1oZXJvIC5oMSB7XG4gIGZvbnQtc2l6ZTogM3JlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjVweDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLnBhZ2UtaXMtYmxvZy1jYXRlZ29yaWVzIC5jYXRlZ29yaWVzLWhlcm8gLmxlYWQge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBtYXgtd2lkdGg6IDYwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLnBhZ2UtaXMtYmxvZy1jYXRlZ29yaWVzIC5jYXRlZ29yeS1jYXJkIHtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwLjc1cmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJveC1zaGFkb3c6IDAgMC4xMjVyZW0gMC41cmVtIHJnYmEoMCwgMCwgMCwgMC4wNSk7XG59XG5cbi5wYWdlLWlzLWJsb2ctY2F0ZWdvcmllcyAuY2F0ZWdvcnktY2FyZDpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcbiAgYm94LXNoYWRvdzogMCAwLjVyZW0gMS41cmVtIHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLnBhZ2UtaXMtYmxvZy1jYXRlZ29yaWVzIC5jYXRlZ29yeS1jYXJkOmhvdmVyIGltZyB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG59XG5cbi5wYWdlLWlzLWJsb2ctY2F0ZWdvcmllcyAuY2F0ZWdvcnktY2FyZCAuY2FyZC1pbWctd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaGVpZ2h0OiAyMDBweDtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzY2N2VlYSAwJSwgIzc2NGJhMiAxMDAlKTtcbn1cblxuLnBhZ2UtaXMtYmxvZy1jYXRlZ29yaWVzIC5jYXRlZ29yeS1jYXJkIC5jYXJkLWltZy13cmFwcGVyLm5vLWltYWdlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC1zaXplOiA0cmVtO1xufVxuXG4ucGFnZS1pcy1ibG9nLWNhdGVnb3JpZXMgLmNhdGVnb3J5LWNhcmQgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2U7XG59XG5cbi5wYWdlLWlzLWJsb2ctY2F0ZWdvcmllcyAuY2F0ZWdvcnktY2FyZCAuY2FyZC1ib2R5IHtcbiAgcGFkZGluZzogMS41cmVtO1xufVxuXG4ucGFnZS1pcy1ibG9nLWNhdGVnb3JpZXMgLmNhdGVnb3J5LWNhcmQgLmNhcmQtdGl0bGUge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbiAgY29sb3I6ICMyMTI1Mjk7XG59XG5cbi5wYWdlLWlzLWJsb2ctY2F0ZWdvcmllcyAuY2F0ZWdvcnktY2FyZCAuY2FyZC10ZXh0IHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAtd2Via2l0LWxpbmUtY2xhbXA6IDM7XG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5wYWdlLWlzLWJsb2ctY2F0ZWdvcmllcyAuY2F0ZWdvcnktc3RhdHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmctdG9wOiAxcmVtO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2U5ZWNlZjtcbn1cblxuLnBhZ2UtaXMtYmxvZy1jYXRlZ29yaWVzIC5jYXRlZ29yeS1zdGF0cyAuc3RhdCB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGNvbG9yOiAjNmM3NTdkO1xufVxuXG4ucGFnZS1pcy1ibG9nLWNhdGVnb3JpZXMgLmNhdGVnb3J5LXN0YXRzIC5zdGF0IHN0cm9uZyB7XG4gIGNvbG9yOiAjNDk1MDU3O1xufVxuXG4ucGFnZS1pcy1ibG9nLWNhdGVnb3JpZXMgLmNhdGVnb3J5LWxpbmsge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4ucGFnZS1pcy1ibG9nLWNhdGVnb3JpZXMgLmNhdGVnb3J5LWxpbms6aG92ZXIge1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLnBhZ2UtaXMtYmxvZy1jYXRlZ29yaWVzIC5ibG9nLXNpZGViYXIge1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB0b3A6IDEwMHB4O1xufVxuXG4ucGFnZS1pcy1ibG9nLWNhdGVnb3JpZXMgLnNpZGViYXItd2lkZ2V0IHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICBwYWRkaW5nOiAxLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIGJveC1zaGFkb3c6IDAgMC4xMjVyZW0gMC41cmVtIHJnYmEoMCwgMCwgMCwgMC4wNSk7XG59XG5cbi5wYWdlLWlzLWJsb2ctY2F0ZWdvcmllcyAuc2lkZWJhci13aWRnZXQgaDQsXG4ucGFnZS1pcy1ibG9nLWNhdGVnb3JpZXMgLnNpZGViYXItd2lkZ2V0IC5oNCB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgY29sb3I6ICMyMTI1Mjk7XG59XG5cbi5wYWdlLWlzLWJsb2ctY2F0ZWdvcmllcyAuc2lkZWJhci13aWRnZXQgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG59XG5cbi5wYWdlLWlzLWJsb2ctY2F0ZWdvcmllcyAuc2lkZWJhci13aWRnZXQgdWwgbGkge1xuICBwYWRkaW5nOiAwLjVyZW0gMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMWYzZjU7XG59XG5cbi5wYWdlLWlzLWJsb2ctY2F0ZWdvcmllcyAuc2lkZWJhci13aWRnZXQgdWwgbGk6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbi5wYWdlLWlzLWJsb2ctY2F0ZWdvcmllcyAuc2lkZWJhci13aWRnZXQgYSB7XG4gIGNvbG9yOiAjNDk1MDU3O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4ycyBlYXNlO1xufVxuXG4ucGFnZS1pcy1ibG9nLWNhdGVnb3JpZXMgLnNpZGViYXItd2lkZ2V0IGE6aG92ZXIge1xuICBjb2xvcjogIzBkNmVmZDtcbn1cblxuLnBhZ2UtaXMtYmxvZy1jYXRlZ29yaWVzIC5wb3B1bGFyLXBvc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5wYWdlLWlzLWJsb2ctY2F0ZWdvcmllcyAucG9wdWxhci1wb3N0Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ucGFnZS1pcy1ibG9nLWNhdGVnb3JpZXMgLnBvcHVsYXItcG9zdC1pbWcge1xuICBmbGV4LXNocmluazogMDtcbiAgd2lkdGg6IDYwcHg7XG4gIGhlaWdodDogNjBweDtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogI2U5ZWNlZjtcbn1cblxuLnBhZ2UtaXMtYmxvZy1jYXRlZ29yaWVzIC5wb3B1bGFyLXBvc3QtaW1nIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4ucGFnZS1pcy1ibG9nLWNhdGVnb3JpZXMgLnBvcHVsYXItcG9zdC1jb250ZW50IGg2LFxuLnBhZ2UtaXMtYmxvZy1jYXRlZ29yaWVzIC5wb3B1bGFyLXBvc3QtY29udGVudCAuaDYge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xufVxuXG4ucGFnZS1pcy1ibG9nLWNhdGVnb3JpZXMgLnBvcHVsYXItcG9zdC1jb250ZW50IC50ZXh0LW11dGVkIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2UtaXMtYmxvZy1jYXRlZ29yaWVzIC5jYXRlZ29yaWVzLWhlcm8gaDEsXG4gIC5wYWdlLWlzLWJsb2ctY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1oZXJvIC5oMSB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG5cbiAgLnBhZ2UtaXMtYmxvZy1jYXRlZ29yaWVzIC5ibG9nLXNpZGViYXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDA7XG4gICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgfVxufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5sb2dpbi1wYWdlLXdyYXBwZXIsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC5sb2dpbi1wYWdlLXdyYXBwZXIge1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1nL2Jhbm5lci9iZy1TaWduSW4ud2VicFwiKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmctdG9wOiAxMDBweDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbn1cblxuLm5vLXdlYnAgLnBhZ2VfaXNfbG9naW5fcGFnZSAubG9naW4tcGFnZS13cmFwcGVyLFxuLm5vLXdlYnAgLnBhZ2UtaXMtbG9naW4tcGFnZSAubG9naW4tcGFnZS13cmFwcGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltZy9iYW5uZXIvYmctU2lnbkluLnBuZ1wiKTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAucGFnZV9pc19sb2dpbl9wYWdlIC5sb2dpbi1wYWdlLXdyYXBwZXIsXG4gIC5wYWdlLWlzLWxvZ2luLXBhZ2UgLmxvZ2luLXBhZ2Utd3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDgwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gIC5wYWdlX2lzX2xvZ2luX3BhZ2UgLmxvZ2luLXBhZ2Utd3JhcHBlcixcbiAgLnBhZ2UtaXMtbG9naW4tcGFnZSAubG9naW4tcGFnZS13cmFwcGVyIHtcbiAgICBwYWRkaW5nLXRvcDogNjBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2VfaXNfbG9naW5fcGFnZSAubG9naW4tcGFnZS13cmFwcGVyLFxuICAucGFnZS1pcy1sb2dpbi1wYWdlIC5sb2dpbi1wYWdlLXdyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAucGFnZV9pc19sb2dpbl9wYWdlIC5sb2dpbi1wYWdlLXdyYXBwZXIsXG4gIC5wYWdlLWlzLWxvZ2luLXBhZ2UgLmxvZ2luLXBhZ2Utd3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDQwcHg7XG4gIH1cbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAubG9naW4tY29udGFpbmVyLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAubG9naW4tY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogOTAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLmxvZ2luLWNhcmQsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC5sb2dpbi1jYXJkIHtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgYm94LXNoYWRvdzogMCAyMHB4IDYwcHggcmdiYSgwLCAwLCAwLCAwLjA4KTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjA1KTtcbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAubG9naW4taGVhZGVyLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAubG9naW4taGVhZGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAzMHB4IDIwcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjBmMGYwO1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5sb2dpbi1oZWFkZXIgLmxvZ2luLWxvZ28taW1nLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAubG9naW4taGVhZGVyIC5sb2dpbi1sb2dvLWltZyB7XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAubG9naW4taGVhZGVyIC5sdXh1cnktdGFnbGluZSxcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLmxvZ2luLWhlYWRlciAubHV4dXJ5LXRhZ2xpbmUge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLmxvZ2luLWNvbnRlbnQsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC5sb2dpbi1jb250ZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWluLWhlaWdodDogNDAwcHg7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucGFnZV9pc19sb2dpbl9wYWdlIC5sb2dpbi1jb250ZW50LFxuICAucGFnZS1pcy1sb2dpbi1wYWdlIC5sb2dpbi1jb250ZW50IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLmxvZ2luLWNvbHVtbixcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLmxvZ2luLWNvbHVtbiB7XG4gIGZsZXg6IDE7XG4gIHBhZGRpbmc6IDIwcHggMzVweCA2MHB4IDM1cHg7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucGFnZV9pc19sb2dpbl9wYWdlIC5sb2dpbi1jb2x1bW4sXG4gIC5wYWdlLWlzLWxvZ2luLXBhZ2UgLmxvZ2luLWNvbHVtbiB7XG4gICAgcGFkZGluZzogMTVweCAyNXB4IDQ1cHggMjVweDtcbiAgfVxufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5sb2dpbi1mb3JtLWNvbHVtbiAuY29sdW1uLWNvbnRlbnQsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC5sb2dpbi1mb3JtLWNvbHVtbiAuY29sdW1uLWNvbnRlbnQge1xuICBtYXgtd2lkdGg6IDM0MHB4O1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAuYm9vay1zcGluZSxcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLmJvb2stc3BpbmUge1xuICB3aWR0aDogMXB4O1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCB0cmFuc3BhcmVudCAwJSwgI2UwZTBlMCAyMCUsICNlMGUwZTAgODAlLCB0cmFuc3BhcmVudCAxMDAlKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDQwcHggMDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5wYWdlX2lzX2xvZ2luX3BhZ2UgLmJvb2stc3BpbmUsXG4gIC5wYWdlLWlzLWxvZ2luLXBhZ2UgLmJvb2stc3BpbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAuYm9vay1zcGluZSAuc3BpbmUtZGVjb3JhdGlvbixcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLmJvb2stc3BpbmUgLnNwaW5lLWRlY29yYXRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBwYWRkaW5nOiAxMHB4IDA7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLmJvb2stc3BpbmUgLnNwaW5lLWRlY29yYXRpb24gLnNwaW5lLWdlbSxcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLmJvb2stc3BpbmUgLnNwaW5lLWRlY29yYXRpb24gLnNwaW5lLWdlbSB7XG4gIGNvbG9yOiAjZDRhZjM3O1xuICBmb250LXNpemU6IDE4cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC53ZWxjb21lLXRpdGxlLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAud2VsY29tZS10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMjhweDtcbiAgY29sb3I6ICMxZTFlNTY7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC53ZWxjb21lLXN1YnRpdGxlLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAud2VsY29tZS1zdWJ0aXRsZSB7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBmb250LXNpemU6IDE0cHg7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAuZm9ybS1ncm91cCxcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAxOHB4O1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5mb3JtLWxhYmVsLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAuZm9ybS1sYWJlbCB7XG4gIGNvbG9yOiAjNDk1MDU3O1xuICBmb250LXdlaWdodDogNTAwO1xuICBtYXJnaW4tYm90dG9tOiA2cHg7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5lbGVnYW50LWlucHV0LFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAuZWxlZ2FudC1pbnB1dCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgcGFkZGluZzogMTBweCAxNHB4O1xuICBmb250LXNpemU6IDE1cHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWZiZmM7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLmVsZWdhbnQtaW5wdXQ6Zm9jdXMsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC5lbGVnYW50LWlucHV0OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMWUxZTU2O1xuICBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYSgzMCwgMzAsIDg2LCAwLjA4KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAuZWxlZ2FudC1pbnB1dDo6cGxhY2Vob2xkZXIsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC5lbGVnYW50LWlucHV0OjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjYWRiNWJkO1xuICBmb250LXNpemU6IDE0cHg7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLmlucHV0LWdyb3VwLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAuaW5wdXQtZ3JvdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2VfaXNfbG9naW5fcGFnZSAuaW5wdXQtZ3JvdXAgLnNlbGVjdDItc2VsZWN0aW9uLFxuLnBhZ2VfaXNfbG9naW5fcGFnZSAuaW5wdXQtZ3JvdXAgLmVsZWdhbnQtaW5wdXQsXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5pbnB1dC1ncm91cCAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAuaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbCxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucGFnZS1pcy1sb2dpbi1wYWdlIC5pbnB1dC1ncm91cCAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC5pbnB1dC1ncm91cCAuZWxlZ2FudC1pbnB1dCxcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLmlucHV0LWdyb3VwIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICBwYWRkaW5nLWxlZnQ6IDQwcHggIWltcG9ydGFudDtcbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAuaW5wdXQtaWNvbixcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLmlucHV0LWljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDE0cHg7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIGNvbG9yOiAjYWRiNWJkO1xuICB6LWluZGV4OiAxMDtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5wYXNzd29yZC10b2dnbGUsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC5wYXNzd29yZC10b2dnbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxNHB4O1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjYWRiNWJkO1xuICB6LWluZGV4OiAxMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogNXB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMnM7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLnBhc3N3b3JkLXRvZ2dsZTpob3Zlcixcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLnBhc3N3b3JkLXRvZ2dsZTpob3ZlciB7XG4gIGNvbG9yOiAjNDk1MDU3O1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5mb3Jnb3QtbGluayxcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLmZvcmdvdC1saW5rIHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzO1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5mb3Jnb3QtbGluazpob3Zlcixcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLmZvcmdvdC1saW5rOmhvdmVyIHtcbiAgY29sb3I6ICMxZTFlNTY7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5idG4tZWxlZ2FudC1sb2dpbixcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLmJ0bi1lbGVnYW50LWxvZ2luIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzFlMWU1NiAwJSwgIzJhMmE3YSAxMDAlKTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgcGFkZGluZzogMTJweCAyNHB4O1xuICBmb250LXNpemU6IDE1cHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDE1cHggcmdiYSgzMCwgMzAsIDg2LCAwLjIpO1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5idG4tZWxlZ2FudC1sb2dpbjpob3Zlcixcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLmJ0bi1lbGVnYW50LWxvZ2luOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xuICBib3gtc2hhZG93OiAwIDZweCAyNXB4IHJnYmEoMzAsIDMwLCA4NiwgMC4zKTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzJhMmE3YSAwJSwgIzFlMWU1NiAxMDAlKTtcbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAuYnRuLWVsZWdhbnQtbG9naW46YWN0aXZlLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAuYnRuLWVsZWdhbnQtbG9naW46YWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5hbGVydC1lbGVnYW50LFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAuYWxlcnQtZWxlZ2FudCB7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgcGFkZGluZzogMTBweCAxNHB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBmb250LXNpemU6IDEzcHg7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAuYWxlcnQtZWxlZ2FudC5hbGVydC1kYW5nZXIsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC5hbGVydC1lbGVnYW50LmFsZXJ0LWRhbmdlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY1ZjU7XG4gIGNvbG9yOiAjZDk1MzRmO1xuICBib3JkZXItbGVmdDogM3B4IHNvbGlkICNkOTUzNGY7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLmNyZWF0ZS1hY2NvdW50LWNvbHVtbixcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLmNyZWF0ZS1hY2NvdW50LWNvbHVtbiB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNmYWZiZmMgMCUsICNmNWY3ZmEgMTAwJSk7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucGFnZV9pc19sb2dpbl9wYWdlIC5jcmVhdGUtYWNjb3VudC1jb2x1bW4sXG4gIC5wYWdlLWlzLWxvZ2luLXBhZ2UgLmNyZWF0ZS1hY2NvdW50LWNvbHVtbiB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlMGUwZTA7XG4gIH1cbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAubmV3LW1lbWJlci1zZWN0aW9uLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAubmV3LW1lbWJlci1zZWN0aW9uIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5qb2luLXRpdGxlLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAuam9pbi10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMjhweDtcbiAgY29sb3I6ICMxZTFlNTY7XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC41cHg7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLmpvaW4tc3VidGl0bGUsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC5qb2luLXN1YnRpdGxlIHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAuYmVuZWZpdHMtbGlzdCxcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLmJlbmVmaXRzLWxpc3Qge1xuICBtYXJnaW46IDI1cHggMDtcbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAuYmVuZWZpdC1pdGVtLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAuYmVuZWZpdC1pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG4gIGNvbG9yOiAjNDk1MDU3O1xuICBmb250LXNpemU6IDE0cHg7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLmJlbmVmaXQtaXRlbSBpLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAuYmVuZWZpdC1pdGVtIGkge1xuICBjb2xvcjogI2Q0YWYzNztcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLmJ0bi1jcmVhdGUtZWxlZ2FudCxcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLmJ0bi1jcmVhdGUtZWxlZ2FudCB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDJweCBzb2xpZCAjMWUxZTU2O1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGNvbG9yOiAjMWUxZTU2O1xuICBwYWRkaW5nOiAxMnB4IDI0cHg7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAuYnRuLWNyZWF0ZS1lbGVnYW50OmhvdmVyLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAuYnRuLWNyZWF0ZS1lbGVnYW50OmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzFlMWU1NjtcbiAgY29sb3I6IHdoaXRlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDE1cHggcmdiYSgzMCwgMzAsIDg2LCAwLjIpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLnNvY2lhbC1kaXZpZGVyLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAuc29jaWFsLWRpdmlkZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbjogMjVweCAwIDIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAuc29jaWFsLWRpdmlkZXI6OmJlZm9yZSxcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLnNvY2lhbC1kaXZpZGVyOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJhY2tncm91bmQ6ICNkZWUyZTY7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLnNvY2lhbC1kaXZpZGVyIHNwYW4sXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC5zb2NpYWwtZGl2aWRlciBzcGFuIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2ZhZmJmYyAwJSwgI2Y1ZjdmYSAxMDAlKTtcbiAgcGFkZGluZzogMCAxNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBmb250LXNpemU6IDEycHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAxcHg7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLnNvY2lhbC1sb2dpbi1lbGVnYW50LFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAuc29jaWFsLWxvZ2luLWVsZWdhbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZ2FwOiAxMHB4O1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5zb2NpYWwtYnRuLWVsZWdhbnQsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC5zb2NpYWwtYnRuLWVsZWdhbnQge1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5zb2NpYWwtYnRuLWVsZWdhbnQ6aG92ZXIsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC5zb2NpYWwtYnRuLWVsZWdhbnQ6aG92ZXIge1xuICBib3JkZXItY29sb3I6ICMxZTFlNTY7XG4gIGJveC1zaGFkb3c6IDAgM3B4IDEwcHggcmdiYSgzMCwgMzAsIDg2LCAwLjE1KTtcbiAgYmFja2dyb3VuZDogI2ZhZmJmYztcbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAuc29jaWFsLWJ0bi1lbGVnYW50IGltZyxcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLnNvY2lhbC1idG4tZWxlZ2FudCBpbWcge1xuICB3aWR0aDogMThweDtcbiAgaGVpZ2h0OiAxOHB4O1xuICBvYmplY3QtZml0OiBjb250YWluO1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5tb2JpbGUtY3JlYXRlLWFjY291bnQsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC5tb2JpbGUtY3JlYXRlLWFjY291bnQge1xuICBkaXNwbGF5OiBub25lO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2UwZTBlMDtcbiAgbWFyZ2luLXRvcDogMzBweDtcbiAgcGFkZGluZy10b3A6IDI1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5wYWdlX2lzX2xvZ2luX3BhZ2UgLm1vYmlsZS1jcmVhdGUtYWNjb3VudCxcbiAgLnBhZ2UtaXMtbG9naW4tcGFnZSAubW9iaWxlLWNyZWF0ZS1hY2NvdW50IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5tb2JpbGUtY3JlYXRlLWFjY291bnQgLmRpdmlkZXItdGV4dCxcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLm1vYmlsZS1jcmVhdGUtYWNjb3VudCAuZGl2aWRlci10ZXh0IHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAubW9iaWxlLWNyZWF0ZS1hY2NvdW50IC5idG4tb3V0bGluZS1lbGVnYW50LFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAubW9iaWxlLWNyZWF0ZS1hY2NvdW50IC5idG4tb3V0bGluZS1lbGVnYW50IHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMnB4IHNvbGlkICMxZTFlNTY7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgY29sb3I6ICMxZTFlNTY7XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnBhZ2VfaXNfbG9naW5fcGFnZSAubW9iaWxlLWNyZWF0ZS1hY2NvdW50IC5idG4tb3V0bGluZS1lbGVnYW50OmhvdmVyLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAubW9iaWxlLWNyZWF0ZS1hY2NvdW50IC5idG4tb3V0bGluZS1lbGVnYW50OmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzFlMWU1NjtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6aW52YWxpZCxcbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjppbnZhbGlkLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlX2lzX2xvZ2luX3BhZ2UgLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItc2VsZWN0aW9uOmludmFsaWQsXG4ucGFnZV9pc19sb2dpbl9wYWdlIC53YXMtdmFsaWRhdGVkIC5lbGVnYW50LWlucHV0OmludmFsaWQsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6aW52YWxpZCxcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjppbnZhbGlkLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlLWlzLWxvZ2luLXBhZ2UgLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItc2VsZWN0aW9uOmludmFsaWQsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC53YXMtdmFsaWRhdGVkIC5lbGVnYW50LWlucHV0OmludmFsaWQge1xuICBib3JkZXItY29sb3I6ICNkYzM1NDU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDppbnZhbGlkOmZvY3VzLFxuLnBhZ2VfaXNfbG9naW5fcGFnZSAud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOmludmFsaWQ6Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2VfaXNfbG9naW5fcGFnZSAud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1zZWxlY3Rpb246aW52YWxpZDpmb2N1cyxcbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLndhcy12YWxpZGF0ZWQgLmVsZWdhbnQtaW5wdXQ6aW52YWxpZDpmb2N1cyxcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDppbnZhbGlkOmZvY3VzLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOmludmFsaWQ6Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2UtaXMtbG9naW4tcGFnZSAud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1zZWxlY3Rpb246aW52YWxpZDpmb2N1cyxcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLndhcy12YWxpZGF0ZWQgLmVsZWdhbnQtaW5wdXQ6aW52YWxpZDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbiAgYm94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEoMjIwLCA1MywgNjksIDAuMSk7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDp2YWxpZCxcbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjp2YWxpZCxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucGFnZV9pc19sb2dpbl9wYWdlIC53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLXNlbGVjdGlvbjp2YWxpZCxcbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLndhcy12YWxpZGF0ZWQgLmVsZWdhbnQtaW5wdXQ6dmFsaWQsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6dmFsaWQsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246dmFsaWQsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2UtaXMtbG9naW4tcGFnZSAud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1zZWxlY3Rpb246dmFsaWQsXG4ucGFnZS1pcy1sb2dpbi1wYWdlIC53YXMtdmFsaWRhdGVkIC5lbGVnYW50LWlucHV0OnZhbGlkIHtcbiAgYm9yZGVyLWNvbG9yOiAjMjhhNzQ1O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4ucGFnZV9pc19sb2dpbl9wYWdlIC53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6dmFsaWQ6Zm9jdXMsXG4ucGFnZV9pc19sb2dpbl9wYWdlIC53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246dmFsaWQ6Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2VfaXNfbG9naW5fcGFnZSAud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1zZWxlY3Rpb246dmFsaWQ6Zm9jdXMsXG4ucGFnZV9pc19sb2dpbl9wYWdlIC53YXMtdmFsaWRhdGVkIC5lbGVnYW50LWlucHV0OnZhbGlkOmZvY3VzLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOnZhbGlkOmZvY3VzLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOnZhbGlkOmZvY3VzLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlLWlzLWxvZ2luLXBhZ2UgLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItc2VsZWN0aW9uOnZhbGlkOmZvY3VzLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAud2FzLXZhbGlkYXRlZCAuZWxlZ2FudC1pbnB1dDp2YWxpZDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzI4YTc0NTtcbiAgYm94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEoNDAsIDE2NywgNjksIDAuMSk7XG59XG5cbi5wYWdlX2lzX2xvZ2luX3BhZ2UgLmludmFsaWQtZmVlZGJhY2ssXG4ucGFnZV9pc19sb2dpbl9wYWdlIC5lcnJvci1oZWxwLWJsb2NrLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSAuaW52YWxpZC1mZWVkYmFjayxcbi5wYWdlLWlzLWxvZ2luLXBhZ2UgLmVycm9yLWhlbHAtYmxvY2sge1xuICBmb250LXNpemU6IDEycHg7XG4gIG1hcmdpbi10b3A6IDRweDtcbiAgY29sb3I6ICNkYzM1NDU7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucGFnZV9pc19sb2dpbl9wYWdlIC5sb2dpbi1jYXJkLFxuICAucGFnZS1pcy1sb2dpbi1wYWdlIC5sb2dpbi1jYXJkIHtcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfbG9naW5fcGFnZSAubG9naW4taGVhZGVyLFxuICAucGFnZS1pcy1sb2dpbi1wYWdlIC5sb2dpbi1oZWFkZXIge1xuICAgIHBhZGRpbmc6IDI1cHggMjBweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2xvZ2luX3BhZ2UgLndlbGNvbWUtdGl0bGUsXG4gIC5wYWdlLWlzLWxvZ2luLXBhZ2UgLndlbGNvbWUtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2xvZ2luX3BhZ2UgLmpvaW4tdGl0bGUsXG4gIC5wYWdlLWlzLWxvZ2luLXBhZ2UgLmpvaW4tdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAucGFnZV9pc19sb2dpbl9wYWdlIC5sb2dpbi1jb250YWluZXIsXG4gIC5wYWdlLWlzLWxvZ2luLXBhZ2UgLmxvZ2luLWNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA3MDBweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2xvZ2luX3BhZ2UgLmxvZ2luLWNvbHVtbixcbiAgLnBhZ2UtaXMtbG9naW4tcGFnZSAubG9naW4tY29sdW1uIHtcbiAgICBwYWRkaW5nOiAzNXB4IDMwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xuICAucGFnZV9pc19sb2dpbl9wYWdlIC5sb2dpbi1jb250YWluZXIsXG4gIC5wYWdlLWlzLWxvZ2luLXBhZ2UgLmxvZ2luLWNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA5NTBweDtcbiAgfVxufVxuXG4ucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1wYWdlLXdyYXBwZXIge1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1nL2Jhbm5lci9iZy1TaWduSW4ud2VicFwiKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmctdG9wOiAxMDBweDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbn1cblxuLm5vLXdlYnAgLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAucmVnaXN0ZXItcGFnZS13cmFwcGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltZy9iYW5uZXIvYmctU2lnbkluLnBuZ1wiKTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1wYWdlLXdyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiA4MHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1wYWdlLXdyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1wYWdlLXdyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1wYWdlLXdyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICB9XG59XG5cbi5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnJlZ2lzdGVyLWNvbnRhaW5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEyMDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDAgMTVweDtcbn1cblxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAucmVnaXN0ZXItY2FyZCB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIGJveC1zaGFkb3c6IDAgMTBweCA0MHB4IHJnYmEoMzAsIDMwLCA4NiwgMC4wOCk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1heC13aWR0aDogNjAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4ucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1yb3cge1xuICBtaW4taGVpZ2h0OiA3MDBweDtcbn1cblxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAucmVnaXN0ZXItZm9ybS1zZWN0aW9uIHtcbiAgcGFkZGluZzogNjBweCA1MHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAucmVnaXN0ZXItbG9nbyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cblxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAucmVnaXN0ZXItbG9nbyBoMSxcbi5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnJlZ2lzdGVyLWxvZ28gLmgxIHtcbiAgZm9udC1zaXplOiAzNnB4O1xuICBjb2xvcjogIzFlMWU1NjtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgbWFyZ2luOiAwO1xufVxuXG4ucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1sb2dvIC50YWdsaW5lIHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbWFyZ2luLXRvcDogOHB4O1xuICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG59XG5cbi5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnJlZ2lzdGVyLWZvcm0gaDIsXG4ucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1mb3JtIC5oMiB7XG4gIGZvbnQtc2l6ZTogMjhweDtcbiAgY29sb3I6ICMxZTFlNTY7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnJlZ2lzdGVyLWZvcm0gLnN1YnRpdGxlIHtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAuZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLmZvcm0tbGFiZWwge1xuICBjb2xvcjogIzQ5NTA1NztcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5idG4tcmVnaXN0ZXIge1xuICBiYWNrZ3JvdW5kOiAjMWUxZTU2O1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgY29sb3I6IHdoaXRlO1xuICBwYWRkaW5nOiAxNHB4IDMwcHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMTBweDtcbn1cblxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAuYnRuLXJlZ2lzdGVyOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzJhMmE3YTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xuICBib3gtc2hhZG93OiAwIDVweCAyMHB4IHJnYmEoMzAsIDMwLCA4NiwgMC4zKTtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4ucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1saW5rcyB7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAucmVnaXN0ZXItbGlua3MgYSB7XG4gIGNvbG9yOiAjMWUxZTU2O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAucmVnaXN0ZXItbGlua3MgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4ucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1pbWFnZS1zZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzFlMWU1NiAwJSwgIzJhMmE3YSAxMDAlKTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDYwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAucmVnaXN0ZXItaW1hZ2Utc2VjdGlvbjo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC01MCU7XG4gIHJpZ2h0OiAtNTAlO1xuICB3aWR0aDogMjAwJTtcbiAgaGVpZ2h0OiAyMDAlO1xuICBiYWNrZ3JvdW5kOiByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCB0cmFuc3BhcmVudCwgdHJhbnNwYXJlbnQgMTBweCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAzKSAxMHB4LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDMpIDIwcHgpO1xuICBhbmltYXRpb246IHNsaWRlIDIwcyBsaW5lYXIgaW5maW5pdGU7XG59XG5cbi5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnJlZ2lzdGVyLWltYWdlLWNvbnRlbnQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgei1pbmRleDogMjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1pbWFnZS1jb250ZW50IGgzLFxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAucmVnaXN0ZXItaW1hZ2UtY29udGVudCAuaDMge1xuICBmb250LXNpemU6IDMycHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4ucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1pbWFnZS1jb250ZW50IC5wcmljZS10YWcge1xuICBmb250LXNpemU6IDQ4cHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGNvbG9yOiAjZmZkNzAwO1xufVxuXG4ucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1pbWFnZS1jb250ZW50IC5wcmljZS1wZXJpb2Qge1xuICBmb250LXNpemU6IDE4cHg7XG4gIG9wYWNpdHk6IDAuOTtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAuY3Jvd24tZ3JhcGhpYyB7XG4gIGZvbnQtc2l6ZTogMTIwcHg7XG4gIG9wYWNpdHk6IDAuOTtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgYW5pbWF0aW9uOiBmbG9hdCA2cyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbn1cblxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAucHJlbWl1bS1mZWF0dXJlcyB7XG4gIG1hcmdpbjogNDBweCAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnByZW1pdW0tZmVhdHVyZXMgbGkge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnByZW1pdW0tZmVhdHVyZXMgbGkgaSB7XG4gIG1hcmdpbi1yaWdodDogMTVweDtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBjb2xvcjogI2ZmZDcwMDtcbn1cblxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAuYnRuLWxlYXJuLW1vcmUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgY29sb3I6IHdoaXRlO1xuICBwYWRkaW5nOiAxNHB4IDQwcHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgbWFyZ2luLXRvcDogMjBweDtcbn1cblxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAuYnRuLWxlYXJuLW1vcmU6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogIzFlMWU1NjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xuICBib3gtc2hhZG93OiAwIDVweCAyMHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5Aa2V5ZnJhbWVzIGZsb2F0IHtcbiAgMCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICB9XG5cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc2xpZGUge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MHB4LCA1MHB4KTtcbiAgfVxufVxuXG4ucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5pbnZhbGlkLWZlZWRiYWNrLFxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAuZXJyb3ItaGVscC1ibG9jayB7XG4gIGNvbG9yOiAjZGMzNTQ1O1xuICBmb250LXNpemU6IDEzcHg7XG4gIG1hcmdpbi10b3A6IDVweDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLmZvcm0tY29udHJvbDo6cGxhY2Vob2xkZXIsXG4ucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246OnBsYWNlaG9sZGVyLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnNlbGVjdDItc2VsZWN0aW9uOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjYWRiNWJkO1xuICBmb250LXNpemU6IDE0cHg7XG59XG5cbi5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkLFxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLmlzLWludmFsaWQuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAuaXMtaW52YWxpZC5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbn1cblxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAuc29jaWFsLWxvZ2luLXNlY3Rpb24ge1xuICBwYWRkaW5nOiA0MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnNvY2lhbC1sb2dpbi10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgY29sb3I6ICMxZTFlNTY7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnNvY2lhbC1wcm92aWRlcnMtZ3JpZCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMjAwcHgsIDFmcikpO1xuICBnYXA6IDIwcHg7XG4gIG1heC13aWR0aDogODAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4ucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5zb2NpYWwtcHJvdmlkZXItY2FyZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAxNXB4IDIwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlMGUwZTA7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgYmFja2dyb3VuZDogI2Y4ZjlmYTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xufVxuXG4ucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5zb2NpYWwtcHJvdmlkZXItY2FyZDpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcbiAgYm94LXNoYWRvdzogMCA1cHggMTVweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGJvcmRlci1jb2xvcjogIzFlMWU1NjtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4ucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5zb2NpYWwtcHJvdmlkZXItY2FyZDpob3ZlciAuc29jaWFsLXByb3ZpZGVyLW5hbWUge1xuICBjb2xvcjogIzFlMWU1Njtcbn1cblxuLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAuc29jaWFsLXByb3ZpZGVyLWljb24ge1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBvYmplY3QtZml0OiBjb250YWluO1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG59XG5cbi5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnNvY2lhbC1wcm92aWRlci1uYW1lIHtcbiAgY29sb3I6ICM0OTUwNTc7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTQwMHB4KSB7XG4gIC5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnJlZ2lzdGVyLWNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAyMDBweCk7XG4gIH1cblxuICAucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1jYXJkIHtcbiAgICBtYXgtd2lkdGg6IDExMDBweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnJlZ2lzdGVyLXJvdyB7XG4gICAgbWluLWhlaWdodDogNTAwcHg7XG4gIH1cblxuICAucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1mb3JtLXNlY3Rpb24ge1xuICAgIHBhZGRpbmc6IDQwcHggMzBweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnJlZ2lzdGVyLWxvZ28gaDEsXG4gIC5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnJlZ2lzdGVyLWxvZ28gLmgxIHtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gIH1cblxuICAucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1mb3JtIGgyLFxuICAucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1mb3JtIC5oMiB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAuZm9ybS1ncm91cCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLmJ0bi1yZWdpc3RlciB7XG4gICAgcGFkZGluZzogMTJweCAyNXB4O1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnJlZ2lzdGVyLWltYWdlLXNlY3Rpb24ge1xuICAgIHBhZGRpbmc6IDQwcHg7XG4gIH1cblxuICAucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5jcm93bi1ncmFwaGljIHtcbiAgICBmb250LXNpemU6IDgwcHg7XG4gIH1cblxuICAucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1pbWFnZS1jb250ZW50IGgzLFxuICAucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1pbWFnZS1jb250ZW50IC5oMyB7XG4gICAgZm9udC1zaXplOiAyNnB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAucHJpY2UtdGFnIHtcbiAgICBmb250LXNpemU6IDM2cHg7XG4gIH1cblxuICAucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5wcmVtaXVtLWZlYXR1cmVzIGxpIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnNvY2lhbC1sb2dpbi1zZWN0aW9uIHtcbiAgICBwYWRkaW5nOiAzMHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAuc29jaWFsLXByb3ZpZGVycy1ncmlkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDE1MHB4LCAxZnIpKTtcbiAgICBnYXA6IDE1cHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnJlZ2lzdGVyLWltYWdlLXNlY3Rpb24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1mb3JtLXNlY3Rpb24ge1xuICAgIHBhZGRpbmc6IDQwcHggMzBweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnJlZ2lzdGVyLXJvdyB7XG4gICAgbWluLWhlaWdodDogYXV0bztcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAucmVnaXN0ZXItZm9ybS1zZWN0aW9uIHtcbiAgICBwYWRkaW5nOiAzMHB4IDIwcHg7XG4gIH1cblxuICAucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1sb2dvIGgxLFxuICAucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5yZWdpc3Rlci1sb2dvIC5oMSB7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAucmVnaXN0ZXItZm9ybSBoMixcbiAgLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAucmVnaXN0ZXItZm9ybSAuaDIge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2UgLnNvY2lhbC1sb2dpbi1zZWN0aW9uIHtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfcmVnaXN0ZXJfcGFnZSAuc29jaWFsLXByb3ZpZGVycy1ncmlkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICBnYXA6IDEwcHg7XG4gIH1cblxuICAucGFnZV9pc19yZWdpc3Rlcl9wYWdlIC5zb2NpYWwtcHJvdmlkZXItY2FyZCB7XG4gICAgcGFkZGluZzogMTJweCAxNXB4O1xuICB9XG59XG5cbi5wYWdlX2lzX3ZlcmlmeV9wYWdlIC52ZXJpZnktcGFnZS13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6ICNmOGY5ZmE7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogNTBweCAwO1xuICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gMzAwcHgpO1xufVxuXG4ucGFnZV9pc192ZXJpZnlfcGFnZSAudmVyaWZ5LWNvbnRhaW5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDYwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogMCAxNXB4O1xufVxuXG4ucGFnZV9pc192ZXJpZnlfcGFnZSAudmVyaWZ5LWNhcmQge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICBib3gtc2hhZG93OiAwIDEwcHggNDBweCByZ2JhKDMwLCAzMCwgODYsIDAuMDgpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDYwcHggNDBweDtcbn1cblxuLnBhZ2VfaXNfdmVyaWZ5X3BhZ2UgLnZlcmlmeS1pY29uIHtcbiAgZm9udC1zaXplOiA4MHB4O1xuICBjb2xvcjogIzFlMWU1NjtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgYW5pbWF0aW9uOiBwdWxzZSAycyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbn1cblxuQGtleWZyYW1lcyBwdWxzZSB7XG4gIDAlLCAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgb3BhY2l0eTogMC44O1xuICB9XG59XG5cbi5wYWdlX2lzX3ZlcmlmeV9wYWdlIC52ZXJpZnktdGl0bGUge1xuICBmb250LXNpemU6IDMycHg7XG4gIGNvbG9yOiAjMWUxZTU2O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG4ucGFnZV9pc192ZXJpZnlfcGFnZSAudmVyaWZ5LW1lc3NhZ2Uge1xuICBmb250LXNpemU6IDE4cHg7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuXG4ucGFnZV9pc192ZXJpZnlfcGFnZSAudmVyaWZ5LWluc3RydWN0aW9ucyB7XG4gIGJhY2tncm91bmQ6ICNmOGY5ZmE7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgcGFkZGluZzogMjBweDtcbiAgbWFyZ2luOiAzMHB4IDA7XG59XG5cbi5wYWdlX2lzX3ZlcmlmeV9wYWdlIC52ZXJpZnktaW5zdHJ1Y3Rpb25zIGg0LFxuLnBhZ2VfaXNfdmVyaWZ5X3BhZ2UgLnZlcmlmeS1pbnN0cnVjdGlvbnMgLmg0IHtcbiAgY29sb3I6ICMxZTFlNTY7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLnBhZ2VfaXNfdmVyaWZ5X3BhZ2UgLnZlcmlmeS1pbnN0cnVjdGlvbnMgdWwge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LXdpZHRoOiA0MDBweDtcbiAgY29sb3I6ICM0OTUwNTc7XG59XG5cbi5wYWdlX2lzX3ZlcmlmeV9wYWdlIC5idG4tcmVzZW5kIHtcbiAgYmFja2dyb3VuZDogIzFlMWU1NjtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgcGFkZGluZzogMTRweCA0MHB4O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG59XG5cbi5wYWdlX2lzX3ZlcmlmeV9wYWdlIC5idG4tcmVzZW5kOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzJhMmE3YTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xuICBib3gtc2hhZG93OiAwIDVweCAyMHB4IHJnYmEoMzAsIDMwLCA4NiwgMC4zKTtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4ucGFnZV9pc192ZXJpZnlfcGFnZSAucmVzZW5kLWxpbmsge1xuICBjb2xvcjogIzFlMWU1NjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG4ucGFnZV9pc192ZXJpZnlfcGFnZSAucmVzZW5kLWxpbms6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gIC5wYWdlX2lzX3ZlcmlmeV9wYWdlIC52ZXJpZnktY2FyZCB7XG4gICAgcGFkZGluZzogNDBweCAyMHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfdmVyaWZ5X3BhZ2UgLnZlcmlmeS1pY29uIHtcbiAgICBmb250LXNpemU6IDYwcHg7XG4gIH1cblxuICAucGFnZV9pc192ZXJpZnlfcGFnZSAudmVyaWZ5LXRpdGxlIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gIH1cblxuICAucGFnZV9pc192ZXJpZnlfcGFnZSAudmVyaWZ5LW1lc3NhZ2Uge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxufVxuXG4ucGFnZS1pcy1jaGVja291dC1zdWNjZXNzIC5jaGVja291dC1zdWNjZXNzLXdyYXBwZXIge1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1nL2Jhbm5lci9iZy1PcmRlci53ZWJwXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy10b3A6IDEwMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4O1xufVxuXG4ucGFnZS1pcy1jaGVja291dC1zdWNjZXNzIC5jaGVja291dC1zdWNjZXNzLXdyYXBwZXI6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIHotaW5kZXg6IDA7XG59XG5cbi5wYWdlLWlzLWNoZWNrb3V0LXN1Y2Nlc3MgLmNoZWNrb3V0LXN1Y2Nlc3MtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiA4MDBweDtcbn1cblxuLnBhZ2UtaXMtY2hlY2tvdXQtc3VjY2VzcyAuY2hlY2tvdXQtc3VjY2Vzcy1jYXJkIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjk4KTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICBib3gtc2hhZG93OiAwIDIwcHggNjBweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3Jnb3QtcGFzc3dvcmQtd3JhcHBlciB7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWcvYmFubmVyL2JnLVNpZ25Jbi53ZWJwXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy10b3A6IDEwMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4O1xufVxuXG4ubm8td2VicCAucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAuZm9yZ290LXBhc3N3b3JkLXdyYXBwZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1nL2Jhbm5lci9iZy1TaWduSW4ucG5nXCIpO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gIC5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3Jnb3QtcGFzc3dvcmQtd3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDgwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gIC5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3Jnb3QtcGFzc3dvcmQtd3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDYwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3Jnb3QtcGFzc3dvcmQtd3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDUwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gIC5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3Jnb3QtcGFzc3dvcmQtd3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDQwcHg7XG4gIH1cbn1cblxuLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmZvcmdvdC1wYXNzd29yZC1jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAwIDE1cHg7XG59XG5cbi5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3Jnb3QtcGFzc3dvcmQtY2FyZCB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIGJveC1zaGFkb3c6IDAgMTBweCA0MHB4IHJnYmEoMzAsIDMwLCA4NiwgMC4wOCk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1pbi1oZWlnaHQ6IGF1dG87XG59XG5cbi5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3Jnb3QtcGFzc3dvcmQtZm9ybS1zZWN0aW9uIHtcbiAgcGFkZGluZzogNjBweCA1MHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmZvcmdvdC1wYXNzd29yZC1sb2dvIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xufVxuXG4ucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAuZm9yZ290LXBhc3N3b3JkLWxvZ28gaDEsXG4ucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAuZm9yZ290LXBhc3N3b3JkLWxvZ28gLmgxIHtcbiAgZm9udC1zaXplOiAzNnB4O1xuICBjb2xvcjogIzFlMWU1NjtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgbWFyZ2luOiAwO1xufVxuXG4ucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAuZm9yZ290LXBhc3N3b3JkLWxvZ28gLnRhZ2xpbmUge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBtYXJnaW4tdG9wOiA4cHg7XG4gIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbn1cblxuLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmZvcmdvdC1wYXNzd29yZC1mb3JtIGgyLFxuLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmZvcmdvdC1wYXNzd29yZC1mb3JtIC5oMiB7XG4gIGZvbnQtc2l6ZTogMjhweDtcbiAgY29sb3I6ICMxZTFlNTY7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3Jnb3QtcGFzc3dvcmQtZm9ybSAuc3VidGl0bGUge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMS42O1xufVxuXG4ucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAuZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3JtLWxhYmVsIHtcbiAgY29sb3I6ICM0OTUwNTc7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4ucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAuZm9ybS1jb250cm9sLFxuLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTBlMGUwO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIHBhZGRpbmc6IDEycHggMTZweDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xufVxuXG4ucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAuZm9ybS1jb250cm9sOjpwbGFjZWhvbGRlcixcbi5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246OnBsYWNlaG9sZGVyLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5zZWxlY3QyLXNlbGVjdGlvbjo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2FkYjViZDtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4ucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAuZm9ybS1jb250cm9sOmZvY3VzLFxuLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMxZTFlNTY7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDMwLCAzMCwgODYsIDAuMSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbi5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5pbnB1dC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmlucHV0LWdyb3VwIC5zZWxlY3QyLXNlbGVjdGlvbixcbi5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5pbnB1dC1ncm91cCAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgcGFkZGluZy1sZWZ0OiA0NXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5pbnB1dC1pY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAxNnB4O1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgei1pbmRleDogMTA7XG59XG5cbi5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5idG4tcmVzZXQge1xuICBiYWNrZ3JvdW5kOiAjMWUxZTU2O1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgY29sb3I6IHdoaXRlO1xuICBwYWRkaW5nOiAxNHB4IDMwcHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMTBweDtcbn1cblxuLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmJ0bi1yZXNldDpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMyYTJhN2E7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgYm94LXNoYWRvdzogMCA1cHggMjBweCByZ2JhKDMwLCAzMCwgODYsIDAuMyk7XG59XG5cbi5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5iYWNrLXRvLWxvZ2luIHtcbiAgbWFyZ2luLXRvcDogMzBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAuYmFjay10by1sb2dpbiBhIHtcbiAgY29sb3I6ICMxZTFlNTY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmJhY2stdG8tbG9naW4gYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4ucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAuYmFjay10by1sb2dpbiBpIHtcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XG59XG5cbi5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5hbGVydCB7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgcGFkZGluZzogMTJweCAxNnB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmFsZXJ0LmFsZXJ0LXN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDRlZGRhO1xuICBjb2xvcjogIzE1NTcyNDtcbn1cblxuLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmFsZXJ0LmFsZXJ0LWRhbmdlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWU7XG4gIGNvbG9yOiAjYzMzO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxNDAwcHgpIHtcbiAgLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmZvcmdvdC1wYXNzd29yZC1mb3JtLXNlY3Rpb24ge1xuICAgIHBhZGRpbmc6IDQwcHggMzVweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3Jnb3QtcGFzc3dvcmQtbG9nbyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3Jnb3QtcGFzc3dvcmQtbG9nbyBoMSxcbiAgLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmZvcmdvdC1wYXNzd29yZC1sb2dvIC5oMSB7XG4gICAgZm9udC1zaXplOiAzMnB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmZvcmdvdC1wYXNzd29yZC1sb2dvIC50YWdsaW5lIHtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gIH1cblxuICAucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAuZm9yZ290LXBhc3N3b3JkLWZvcm0gaDIsXG4gIC5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3Jnb3QtcGFzc3dvcmQtZm9ybSAuaDIge1xuICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gIH1cblxuICAucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAuZm9yZ290LXBhc3N3b3JkLWZvcm0gLnN1YnRpdGxlIHtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3JtLWdyb3VwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmZvcm0tY29udHJvbCxcbiAgLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbixcbiAgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gICAgcGFkZGluZzogMTFweCAxNXB4O1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sLFxuICAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmlucHV0LWdyb3VwIC5zZWxlY3QyLXNlbGVjdGlvbixcbiAgLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmlucHV0LWdyb3VwIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICAgIHBhZGRpbmctbGVmdDogNDJweCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmJ0bi1yZXNldCB7XG4gICAgcGFkZGluZzogMTNweCAyOHB4O1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBtYXJnaW4tdG9wOiA4cHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3Jnb3QtcGFzc3dvcmQtZm9ybS1zZWN0aW9uIHtcbiAgICBwYWRkaW5nOiA0MHB4IDMwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gIC5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3Jnb3QtcGFzc3dvcmQtZm9ybS1zZWN0aW9uIHtcbiAgICBwYWRkaW5nOiAzMHB4IDIwcHg7XG4gIH1cblxuICAucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAuZm9yZ290LXBhc3N3b3JkLWxvZ28gaDEsXG4gIC5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3Jnb3QtcGFzc3dvcmQtbG9nbyAuaDEge1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5mb3Jnb3QtcGFzc3dvcmQtZm9ybSBoMixcbiAgLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmZvcmdvdC1wYXNzd29yZC1mb3JtIC5oMiB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICB9XG59XG5cbi5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC5pbnZhbGlkLWZlZWRiYWNrLFxuLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLmVycm9yLWhlbHAtYmxvY2sge1xuICBmb250LXNpemU6IDEzcHg7XG4gIG1hcmdpbi10b3A6IDVweDtcbn1cblxuLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDppbnZhbGlkLFxuLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjppbnZhbGlkLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIC53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLXNlbGVjdGlvbjppbnZhbGlkIHtcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4ucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOnZhbGlkLFxuLnBhZ2VfaXNfZm9yZ290X3Bhc3N3b3JkX3BhZ2UgLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjp2YWxpZCxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucGFnZV9pc19mb3Jnb3RfcGFzc3dvcmRfcGFnZSAud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1zZWxlY3Rpb246dmFsaWQge1xuICBib3JkZXItY29sb3I6ICMxOTg3NTQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG5cbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLXdyYXBwZXIge1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1nL2Jhbm5lci9iZy1TaWduSW4ud2VicFwiKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmctdG9wOiAxMDBweDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbn1cblxuLm5vLXdlYnAgLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucmVzZXQtcGFzc3dvcmQtd3JhcHBlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWcvYmFubmVyL2JnLVNpZ25Jbi5wbmdcIik7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucmVzZXQtcGFzc3dvcmQtd3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDgwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gIC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLXdyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5yZXNldC1wYXNzd29yZC13cmFwcGVyIHtcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucmVzZXQtcGFzc3dvcmQtd3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDQwcHg7XG4gIH1cbn1cblxuLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucmVzZXQtcGFzc3dvcmQtY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTIwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogMCAxNXB4O1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5yZXNldC1wYXNzd29yZC1jYXJkIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgYm94LXNoYWRvdzogMCAxMHB4IDQwcHggcmdiYSgzMCwgMzAsIDg2LCAwLjA4KTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucmVzZXQtcGFzc3dvcmQtcm93IHtcbiAgbWluLWhlaWdodDogNjAwcHg7XG59XG5cbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLWZvcm0tc2VjdGlvbiB7XG4gIHBhZGRpbmc6IDYwcHggNTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLWxvZ28ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG59XG5cbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLWxvZ28gaDEsXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5yZXNldC1wYXNzd29yZC1sb2dvIC5oMSB7XG4gIGZvbnQtc2l6ZTogMzZweDtcbiAgY29sb3I6ICMxZTFlNTY7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxldHRlci1zcGFjaW5nOiAycHg7XG4gIG1hcmdpbjogMDtcbn1cblxuLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucmVzZXQtcGFzc3dvcmQtbG9nbyAudGFnbGluZSB7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBmb250LXNpemU6IDE0cHg7XG4gIG1hcmdpbi10b3A6IDhweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5yZXNldC1wYXNzd29yZC1mb3JtIGgyLFxuLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucmVzZXQtcGFzc3dvcmQtZm9ybSAuaDIge1xuICBmb250LXNpemU6IDI4cHg7XG4gIGNvbG9yOiAjMWUxZTU2O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5yZXNldC1wYXNzd29yZC1mb3JtIC5zdWJ0aXRsZSB7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG59XG5cbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5mb3JtLWxhYmVsIHtcbiAgY29sb3I6ICM0OTUwNTc7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5mb3JtLWNvbnRyb2wsXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTBlMGUwO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIHBhZGRpbmc6IDEycHggMTZweDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5mb3JtLWNvbnRyb2w6OnBsYWNlaG9sZGVyLFxuLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uOjpwbGFjZWhvbGRlcixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5zZWxlY3QyLXNlbGVjdGlvbjo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2FkYjViZDtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMxZTFlNTY7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDMwLCAzMCwgODYsIDAuMSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLmZvcm0tY29udHJvbFtyZWFkb25seV0sXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCBbcmVhZG9ubHldLnNlbGVjdDItc2VsZWN0aW9uLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgW3JlYWRvbmx5XS5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLmlucHV0LWdyb3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLmlucHV0LWdyb3VwIC5zZWxlY3QyLXNlbGVjdGlvbixcbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLmlucHV0LWdyb3VwIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICBwYWRkaW5nLWxlZnQ6IDQ1cHggIWltcG9ydGFudDtcbn1cblxuLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAuaW5wdXQtaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMTZweDtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIHotaW5kZXg6IDEwO1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5wYXNzd29yZC10b2dnbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxNnB4O1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICB6LWluZGV4OiAxMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogNXB4O1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5wYXNzd29yZC10b2dnbGU6aG92ZXIge1xuICBjb2xvcjogIzFlMWU1Njtcbn1cblxuLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAuYnRuLXJlc2V0IHtcbiAgYmFja2dyb3VuZDogIzFlMWU1NjtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgcGFkZGluZzogMTRweCAzMHB4O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG59XG5cbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLmJ0bi1yZXNldDpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMyYTJhN2E7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgYm94LXNoYWRvdzogMCA1cHggMjBweCByZ2JhKDMwLCAzMCwgODYsIDAuMyk7XG59XG5cbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnBhc3N3b3JkLXJlcXVpcmVtZW50cyB7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICBmb250LXNpemU6IDEzcHg7XG59XG5cbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnBhc3N3b3JkLXJlcXVpcmVtZW50cyBoNixcbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnBhc3N3b3JkLXJlcXVpcmVtZW50cyAuaDYge1xuICBmb250LXNpemU6IDEzcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbiAgY29sb3I6ICM0OTUwNTc7XG59XG5cbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnBhc3N3b3JkLXJlcXVpcmVtZW50cyB1bCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5wYXNzd29yZC1yZXF1aXJlbWVudHMgbGkge1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgbWFyZ2luLWJvdHRvbTogM3B4O1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5hbGVydCB7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgcGFkZGluZzogMTJweCAxNnB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAuYWxlcnQuYWxlcnQtc3VjY2VzcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkNGVkZGE7XG4gIGNvbG9yOiAjMTU1NzI0O1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5hbGVydC5hbGVydC1kYW5nZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVlO1xuICBjb2xvcjogI2MzMztcbn1cblxuLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucmVzZXQtcGFzc3dvcmQtaW1hZ2Utc2VjdGlvbiB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMxZTFlNTYgMCUsICMyYTJhN2EgMTAwJSk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiA2MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLWltYWdlLXNlY3Rpb246OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtNTAlO1xuICByaWdodDogLTUwJTtcbiAgd2lkdGg6IDIwMCU7XG4gIGhlaWdodDogMjAwJTtcbiAgYmFja2dyb3VuZDogcmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudCg0NWRlZywgdHJhbnNwYXJlbnQsIHRyYW5zcGFyZW50IDEwcHgsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMykgMTBweCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAzKSAyMHB4KTtcbiAgYW5pbWF0aW9uOiBzbGlkZSAyMHMgbGluZWFyIGluZmluaXRlO1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5yZXNldC1wYXNzd29yZC1pbWFnZS1jb250ZW50IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogd2hpdGU7XG4gIHotaW5kZXg6IDI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucmVzZXQtcGFzc3dvcmQtaW1hZ2UtY29udGVudCBoMyxcbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLWltYWdlLWNvbnRlbnQgLmgzIHtcbiAgZm9udC1zaXplOiAzMnB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucmVzZXQtcGFzc3dvcmQtaW1hZ2UtY29udGVudCBwIHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBvcGFjaXR5OiAwLjk7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIG1heC13aWR0aDogNDAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5rZXktZ3JhcGhpYyB7XG4gIGZvbnQtc2l6ZTogMTIwcHg7XG4gIG9wYWNpdHk6IDAuOTtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgYW5pbWF0aW9uOiByb3RhdGUgNHMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG59XG5cbkBrZXlmcmFtZXMgcm90YXRlIHtcbiAgMCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG5cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxMGRlZyk7XG4gIH1cbn1cblxuLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucGFzc3dvcmQtdGlwcyB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnBhc3N3b3JkLXRpcHMgbGkge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxNnB4O1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5wYXNzd29yZC10aXBzIGxpIGkge1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgb3BhY2l0eTogMC45O1xufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTBweCwgNTBweCk7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTQwMHB4KSB7XG4gIC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAyMDBweCk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuXG4gIC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLWNhcmQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTEwMHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG5cbiAgLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucmVzZXQtcGFzc3dvcmQtcm93IHtcbiAgICBtaW4taGVpZ2h0OiA0MjBweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLWZvcm0tc2VjdGlvbiB7XG4gICAgcGFkZGluZzogMzBweCAyNXB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucmVzZXQtcGFzc3dvcmQtbG9nbyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLWxvZ28gaDEsXG4gIC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLWxvZ28gLmgxIHtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gIH1cblxuICAucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5yZXNldC1wYXNzd29yZC1sb2dvIC50YWdsaW5lIHtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gIH1cblxuICAucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5yZXNldC1wYXNzd29yZC1mb3JtIGgyLFxuICAucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5yZXNldC1wYXNzd29yZC1mb3JtIC5oMiB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLWZvcm0gLnN1YnRpdGxlIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLmZvcm0tZ3JvdXAge1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIH1cblxuICAucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5mb3JtLWNvbnRyb2wsXG4gIC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbixcbiAgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgICBwYWRkaW5nOiAxMHB4IDE0cHg7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAuaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbCxcbiAgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLmlucHV0LWdyb3VwIC5zZWxlY3QyLXNlbGVjdGlvbixcbiAgLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAuaW5wdXQtZ3JvdXAgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gICAgcGFkZGluZy1sZWZ0OiA0MHB4ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5idG4tcmVzZXQge1xuICAgIHBhZGRpbmc6IDEycHggMjVweDtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgbWFyZ2luLXRvcDogOHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucGFzc3dvcmQtcmVxdWlyZW1lbnRzIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgcGFkZGluZzogOHB4IDEycHg7XG4gIH1cblxuICAucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5wYXNzd29yZC1yZXF1aXJlbWVudHMgaDYsXG4gIC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnBhc3N3b3JkLXJlcXVpcmVtZW50cyAuaDYge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLWltYWdlLXNlY3Rpb24ge1xuICAgIHBhZGRpbmc6IDQwcHg7XG4gIH1cblxuICAucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5rZXktZ3JhcGhpYyB7XG4gICAgZm9udC1zaXplOiA4MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cblxuICAucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5yZXNldC1wYXNzd29yZC1pbWFnZS1jb250ZW50IGgzLFxuICAucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5yZXNldC1wYXNzd29yZC1pbWFnZS1jb250ZW50IC5oMyB7XG4gICAgZm9udC1zaXplOiAyNnB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIH1cblxuICAucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5yZXNldC1wYXNzd29yZC1pbWFnZS1jb250ZW50IHAge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnBhc3N3b3JkLXRpcHMge1xuICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gIH1cblxuICAucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5wYXNzd29yZC10aXBzIGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnBhc3N3b3JkLXRpcHMgbGkgaSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC5yZXNldC1wYXNzd29yZC1pbWFnZS1zZWN0aW9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucmVzZXQtcGFzc3dvcmQtZm9ybS1zZWN0aW9uIHtcbiAgICBwYWRkaW5nOiA0MHB4IDMwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gIC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLWZvcm0tc2VjdGlvbiB7XG4gICAgcGFkZGluZzogMzBweCAyMHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucmVzZXQtcGFzc3dvcmQtbG9nbyBoMSxcbiAgLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAucmVzZXQtcGFzc3dvcmQtbG9nbyAuaDEge1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgfVxuXG4gIC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLWZvcm0gaDIsXG4gIC5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLnJlc2V0LXBhc3N3b3JkLWZvcm0gLmgyIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gIH1cbn1cblxuLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAuaW52YWxpZC1mZWVkYmFjayxcbi5wYWdlX2lzX3Jlc2V0X3Bhc3N3b3JkX3BhZ2UgLmVycm9yLWhlbHAtYmxvY2sge1xuICBmb250LXNpemU6IDEzcHg7XG4gIG1hcmdpbi10b3A6IDVweDtcbn1cblxuLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOmludmFsaWQsXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246aW52YWxpZCxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLXNlbGVjdGlvbjppbnZhbGlkIHtcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6dmFsaWQsXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIC53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246dmFsaWQsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2VfaXNfcmVzZXRfcGFzc3dvcmRfcGFnZSAud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1zZWxlY3Rpb246dmFsaWQge1xuICBib3JkZXItY29sb3I6ICMxOTg3NTQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG5cbi5wYWdlX2lzX2NhdGVnb3J5X3BhZ2UgLmNhdGVnb3J5LWhlcm8sXG4ucGFnZV9pc19zaG9wX3BhZ2UgLmNhdGVnb3J5LWhlcm8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDMwMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnBhZ2VfaXNfY2F0ZWdvcnlfcGFnZSAuY2F0ZWdvcnktaGVyby5jYXRlZ29yeS1oZXJvLXdpdGgtaW1hZ2UsXG4ucGFnZV9pc19zaG9wX3BhZ2UgLmNhdGVnb3J5LWhlcm8uY2F0ZWdvcnktaGVyby13aXRoLWltYWdlIHtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xufVxuXG4ucGFnZV9pc19jYXRlZ29yeV9wYWdlIC5jYXRlZ29yeS1oZXJvLmNhdGVnb3J5LWhlcm8tZWxlZ2FudCxcbi5wYWdlX2lzX3Nob3BfcGFnZSAuY2F0ZWdvcnktaGVyby5jYXRlZ29yeS1oZXJvLWVsZWdhbnQge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZjVmN2ZhIDAlLCAjYzNjZmUyIDEwMCUpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5wYWdlX2lzX2NhdGVnb3J5X3BhZ2UgLmNhdGVnb3J5LWhlcm8uY2F0ZWdvcnktaGVyby1lbGVnYW50OjpiZWZvcmUsXG4ucGFnZV9pc19zaG9wX3BhZ2UgLmNhdGVnb3J5LWhlcm8uY2F0ZWdvcnktaGVyby1lbGVnYW50OjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCAyMCUgODAlLCByZ2JhKDEyNCwgMTA1LCAyMzksIDAuMSkgMCUsIHRyYW5zcGFyZW50IDUwJSksIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgODAlIDIwJSwgcmdiYSgxMjQsIDEwNSwgMjM5LCAwLjEpIDAlLCB0cmFuc3BhcmVudCA1MCUpO1xufVxuXG4ucGFnZV9pc19jYXRlZ29yeV9wYWdlIC5jYXRlZ29yeS1oZXJvLmNhdGVnb3J5LWhlcm8tZWxlZ2FudCAuY2F0ZWdvcnktaGVyby1jb250ZW50LFxuLnBhZ2VfaXNfc2hvcF9wYWdlIC5jYXRlZ29yeS1oZXJvLmNhdGVnb3J5LWhlcm8tZWxlZ2FudCAuY2F0ZWdvcnktaGVyby1jb250ZW50IHtcbiAgY29sb3I6ICMzMzM7XG59XG5cbi5wYWdlX2lzX2NhdGVnb3J5X3BhZ2UgLmNhdGVnb3J5LWhlcm8uY2F0ZWdvcnktaGVyby1lbGVnYW50IC5jYXRlZ29yeS1icmVhZGNydW1iIGEsXG4ucGFnZV9pc19zaG9wX3BhZ2UgLmNhdGVnb3J5LWhlcm8uY2F0ZWdvcnktaGVyby1lbGVnYW50IC5jYXRlZ29yeS1icmVhZGNydW1iIGEge1xuICBjb2xvcjogIzZjNzU3ZDtcbn1cblxuLnBhZ2VfaXNfY2F0ZWdvcnlfcGFnZSAuY2F0ZWdvcnktaGVyby5jYXRlZ29yeS1oZXJvLWVsZWdhbnQgLmNhdGVnb3J5LWJyZWFkY3J1bWIgYTpob3Zlcixcbi5wYWdlX2lzX3Nob3BfcGFnZSAuY2F0ZWdvcnktaGVyby5jYXRlZ29yeS1oZXJvLWVsZWdhbnQgLmNhdGVnb3J5LWJyZWFkY3J1bWIgYTpob3ZlciB7XG4gIGNvbG9yOiAjN2M2OWVmICFpbXBvcnRhbnQ7XG59XG5cbi5wYWdlX2lzX2NhdGVnb3J5X3BhZ2UgLmNhdGVnb3J5LWhlcm8uY2F0ZWdvcnktaGVyby1lbGVnYW50IC5zdGF0LWl0ZW0sXG4ucGFnZV9pc19zaG9wX3BhZ2UgLmNhdGVnb3J5LWhlcm8uY2F0ZWdvcnktaGVyby1lbGVnYW50IC5zdGF0LWl0ZW0ge1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgYm94LXNoYWRvdzogMCA0cHggMTVweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGJvcmRlcjogbm9uZTtcbiAgY29sb3I6ICMzMzM7XG59XG5cbi5wYWdlX2lzX2NhdGVnb3J5X3BhZ2UgLmNhdGVnb3J5LWhlcm8tb3ZlcmxheSxcbi5wYWdlX2lzX3Nob3BfcGFnZSAuY2F0ZWdvcnktaGVyby1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpIDEwMCUpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnBhZ2VfaXNfY2F0ZWdvcnlfcGFnZSAuY2F0ZWdvcnktaGVyby1jb250ZW50LFxuLnBhZ2VfaXNfc2hvcF9wYWdlIC5jYXRlZ29yeS1oZXJvLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICMzMzM7XG4gIHBhZGRpbmc6IDNyZW0gMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5wYWdlX2lzX2NhdGVnb3J5X3BhZ2UgLmNhdGVnb3J5LWJyZWFkY3J1bWIsXG4ucGFnZV9pc19zaG9wX3BhZ2UgLmNhdGVnb3J5LWJyZWFkY3J1bWIge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG59XG5cbi5wYWdlX2lzX2NhdGVnb3J5X3BhZ2UgLmNhdGVnb3J5LWJyZWFkY3J1bWIgYSxcbi5wYWdlX2lzX3Nob3BfcGFnZSAuY2F0ZWdvcnktYnJlYWRjcnVtYiBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzIGVhc2U7XG59XG5cbi5wYWdlX2lzX2NhdGVnb3J5X3BhZ2UgLmNhdGVnb3J5LWJyZWFkY3J1bWIgYTpob3Zlcixcbi5wYWdlX2lzX3Nob3BfcGFnZSAuY2F0ZWdvcnktYnJlYWRjcnVtYiBhOmhvdmVyIHtcbiAgY29sb3I6ICM3YzY5ZWYgIWltcG9ydGFudDtcbn1cblxuLnBhZ2VfaXNfY2F0ZWdvcnlfcGFnZSAuY2F0ZWdvcnktaWNvbixcbi5wYWdlX2lzX3Nob3BfcGFnZSAuY2F0ZWdvcnktaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYW5pbWF0aW9uOiBzcGFya2xlIDNzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xufVxuXG5Aa2V5ZnJhbWVzIHNwYXJrbGUge1xuICAwJSwgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKSByb3RhdGUoMGRlZyk7XG4gICAgb3BhY2l0eTogMC41O1xuICB9XG5cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSkgcm90YXRlKDVkZWcpO1xuICAgIG9wYWNpdHk6IDAuNztcbiAgfVxufVxuXG4ucGFnZV9pc19jYXRlZ29yeV9wYWdlIC5jYXRlZ29yeS1oZXJvLXRpdGxlLFxuLnBhZ2VfaXNfc2hvcF9wYWdlIC5jYXRlZ29yeS1oZXJvLXRpdGxlIHtcbiAgZm9udC1zaXplOiAzLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiUGxheWZhaXIgRGlzcGxheVwiLCBzZXJpZjtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cbi5jYXRlZ29yeS1oZXJvLXdpdGgtaW1hZ2UgLnBhZ2VfaXNfY2F0ZWdvcnlfcGFnZSAuY2F0ZWdvcnktaGVyby10aXRsZSxcbi5jYXRlZ29yeS1oZXJvLXdpdGgtaW1hZ2UgLnBhZ2VfaXNfc2hvcF9wYWdlIC5jYXRlZ29yeS1oZXJvLXRpdGxlIHtcbiAgdGV4dC1zaGFkb3c6IDFweCAxcHggM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbn1cblxuLnBhZ2VfaXNfY2F0ZWdvcnlfcGFnZSAuY2F0ZWdvcnktaGVyby1kZXNjcmlwdGlvbixcbi5wYWdlX2lzX3Nob3BfcGFnZSAuY2F0ZWdvcnktaGVyby1kZXNjcmlwdGlvbiB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbWF4LXdpZHRoOiA3MDBweDtcbiAgbWFyZ2luOiAwIGF1dG8gMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgb3BhY2l0eTogMC45NTtcbn1cblxuLmNhdGVnb3J5LWhlcm8td2l0aC1pbWFnZSAucGFnZV9pc19jYXRlZ29yeV9wYWdlIC5jYXRlZ29yeS1oZXJvLWRlc2NyaXB0aW9uLFxuLmNhdGVnb3J5LWhlcm8td2l0aC1pbWFnZSAucGFnZV9pc19zaG9wX3BhZ2UgLmNhdGVnb3J5LWhlcm8tZGVzY3JpcHRpb24ge1xuICB0ZXh0LXNoYWRvdzogMXB4IDFweCA0cHggcmdiYSgwLCAwLCAwLCAwLjcpO1xufVxuXG4ucGFnZV9pc19jYXRlZ29yeV9wYWdlIC5jYXRlZ29yeS1oZXJvLXN0YXRzLFxuLnBhZ2VfaXNfc2hvcF9wYWdlIC5jYXRlZ29yeS1oZXJvLXN0YXRzIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGdhcDogMnJlbTtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tdG9wOiAycmVtO1xufVxuXG4ucGFnZV9pc19jYXRlZ29yeV9wYWdlIC5zdGF0LWl0ZW0sXG4ucGFnZV9pc19zaG9wX3BhZ2UgLnN0YXQtaXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xuICBwYWRkaW5nOiAwLjc1cmVtIDEuNXJlbTtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XG4gIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbn1cblxuLnBhZ2VfaXNfY2F0ZWdvcnlfcGFnZSAuc3RhdC1udW1iZXIsXG4ucGFnZV9pc19zaG9wX3BhZ2UgLnN0YXQtbnVtYmVyIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luOiAwIDAuMjVyZW07XG59XG5cbi5wYWdlX2lzX2NhdGVnb3J5X3BhZ2UgLnNlbGVjdGVkLWNhdGVnb3J5LWluZm8sXG4ucGFnZV9pc19zaG9wX3BhZ2UgLnNlbGVjdGVkLWNhdGVnb3J5LWluZm8ge1xuICBwYWRkaW5nOiAxcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xufVxuXG4ucGFnZV9pc19jYXRlZ29yeV9wYWdlIC5zZWxlY3RlZC1jYXRlZ29yeS1pbmZvIC5zZWxlY3RlZC1jYXRlZ29yeS1iYWRnZSAuYmFkZ2UsXG4ucGFnZV9pc19zaG9wX3BhZ2UgLnNlbGVjdGVkLWNhdGVnb3J5LWluZm8gLnNlbGVjdGVkLWNhdGVnb3J5LWJhZGdlIC5iYWRnZSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgcGFkZGluZzogMC41cmVtIDIuMjVyZW0gMC41cmVtIDFyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnBhZ2VfaXNfY2F0ZWdvcnlfcGFnZSAuc2VsZWN0ZWQtY2F0ZWdvcnktaW5mbyAuc2VsZWN0ZWQtY2F0ZWdvcnktYmFkZ2UgLmJhZGdlIC5jYXRlZ29yeS1yZW1vdmUtYnRuLFxuLnBhZ2VfaXNfc2hvcF9wYWdlIC5zZWxlY3RlZC1jYXRlZ29yeS1pbmZvIC5zZWxlY3RlZC1jYXRlZ29yeS1iYWRnZSAuYmFkZ2UgLmNhdGVnb3J5LXJlbW92ZS1idG4ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxMXB4O1xuICB0b3A6IDIxcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgcGFkZGluZzogNXB4O1xuICBtYXJnaW46IC01cHg7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvcGFjaXR5OiAwLjg7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xufVxuXG4ucGFnZV9pc19jYXRlZ29yeV9wYWdlIC5zZWxlY3RlZC1jYXRlZ29yeS1pbmZvIC5zZWxlY3RlZC1jYXRlZ29yeS1iYWRnZSAuYmFkZ2UgLmNhdGVnb3J5LXJlbW92ZS1idG46aG92ZXIsXG4ucGFnZV9pc19zaG9wX3BhZ2UgLnNlbGVjdGVkLWNhdGVnb3J5LWluZm8gLnNlbGVjdGVkLWNhdGVnb3J5LWJhZGdlIC5iYWRnZSAuY2F0ZWdvcnktcmVtb3ZlLWJ0bjpob3ZlciB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5wYWdlX2lzX2NhdGVnb3J5X3BhZ2UgLnNlbGVjdGVkLWNhdGVnb3J5LWluZm8gLnNlbGVjdGVkLWNhdGVnb3J5LWJhZGdlIC5iYWRnZSAuY2F0ZWdvcnktcmVtb3ZlLWJ0biBpLFxuLnBhZ2VfaXNfc2hvcF9wYWdlIC5zZWxlY3RlZC1jYXRlZ29yeS1pbmZvIC5zZWxlY3RlZC1jYXRlZ29yeS1iYWRnZSAuYmFkZ2UgLmNhdGVnb3J5LXJlbW92ZS1idG4gaSB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAucGFnZV9pc19jYXRlZ29yeV9wYWdlIC5jYXRlZ29yeS1oZXJvLFxuICAucGFnZV9pc19zaG9wX3BhZ2UgLmNhdGVnb3J5LWhlcm8ge1xuICAgIG1pbi1oZWlnaHQ6IDQwMHB4O1xuICB9XG5cbiAgLnBhZ2VfaXNfY2F0ZWdvcnlfcGFnZSAuY2F0ZWdvcnktaGVyby10aXRsZSxcbiAgLnBhZ2VfaXNfc2hvcF9wYWdlIC5jYXRlZ29yeS1oZXJvLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2VfaXNfY2F0ZWdvcnlfcGFnZSAuY2F0ZWdvcnktaGVybyxcbiAgLnBhZ2VfaXNfc2hvcF9wYWdlIC5jYXRlZ29yeS1oZXJvIHtcbiAgICBtaW4taGVpZ2h0OiAzNTBweDtcbiAgfVxuXG4gIC5wYWdlX2lzX2NhdGVnb3J5X3BhZ2UgLmNhdGVnb3J5LWhlcm8tdGl0bGUsXG4gIC5wYWdlX2lzX3Nob3BfcGFnZSAuY2F0ZWdvcnktaGVyby10aXRsZSB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG5cbiAgLnBhZ2VfaXNfY2F0ZWdvcnlfcGFnZSAuY2F0ZWdvcnktaGVyby1kZXNjcmlwdGlvbixcbiAgLnBhZ2VfaXNfc2hvcF9wYWdlIC5jYXRlZ29yeS1oZXJvLWRlc2NyaXB0aW9uIHtcbiAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICBwYWRkaW5nOiAwIDFyZW07XG4gIH1cblxuICAucGFnZV9pc19jYXRlZ29yeV9wYWdlIC5jYXRlZ29yeS1oZXJvLXN0YXRzLFxuICAucGFnZV9pc19zaG9wX3BhZ2UgLmNhdGVnb3J5LWhlcm8tc3RhdHMge1xuICAgIGdhcDogMXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX2NhdGVnb3J5X3BhZ2UgLnN0YXQtaXRlbSxcbiAgLnBhZ2VfaXNfc2hvcF9wYWdlIC5zdGF0LWl0ZW0ge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX2NhdGVnb3J5X3BhZ2UgLmNhdGVnb3J5LWJyZWFkY3J1bWIsXG4gIC5wYWdlX2lzX3Nob3BfcGFnZSAuY2F0ZWdvcnktYnJlYWRjcnVtYiB7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAucGFnZV9pc19jYXRlZ29yeV9wYWdlIC5jYXRlZ29yeS1oZXJvLXRpdGxlLFxuICAucGFnZV9pc19zaG9wX3BhZ2UgLmNhdGVnb3J5LWhlcm8tdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgfVxuXG4gIC5wYWdlX2lzX2NhdGVnb3J5X3BhZ2UgLmNhdGVnb3J5LWhlcm8tZGVzY3JpcHRpb24sXG4gIC5wYWdlX2lzX3Nob3BfcGFnZSAuY2F0ZWdvcnktaGVyby1kZXNjcmlwdGlvbiB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAucHJvZHVjdC1jYXRlZ29yaWVzLXBhZ2Uge1xuICBwYWRkaW5nOiA0MHB4IDAgNjBweDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAucHJvZHVjdC1jYXRlZ29yaWVzLXBhZ2Uge1xuICAgIHBhZGRpbmc6IDMwcHggMCA0MHB4O1xuICB9XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAucGFnZS1oZWFkZXIge1xuICBtYXJnaW4tYm90dG9tOiAzcmVtO1xufVxuXG4ucGFnZS1pcy1wcm9kdWN0LWNhdGVnb3JpZXMgLnBhZ2UtaGVhZGVyIC5wYWdlLXRpdGxlIHtcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGNvbG9yOiAjMWUxZTU2O1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAtMC41cHg7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAucGFnZS1pcy1wcm9kdWN0LWNhdGVnb3JpZXMgLnBhZ2UtaGVhZGVyIC5wYWdlLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gIH1cbn1cblxuLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5wYWdlLWhlYWRlciAucGFnZS1zdWJ0aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBtYXJnaW46IDA7XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXJkLWxpbmsge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ucGFnZS1pcy1wcm9kdWN0LWNhdGVnb3JpZXMgLmNhdGVnb3JpZXMtY2F0YWxvZyAuY2F0ZWdvcnktY2FyZC1saW5rOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4ucGFnZS1pcy1wcm9kdWN0LWNhdGVnb3JpZXMgLmNhdGVnb3JpZXMtY2F0YWxvZyAuY2F0ZWdvcnktY2F0YWxvZy1jYXJkIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2UwZTBlMDtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQ6aG92ZXIge1xuICBib3gtc2hhZG93OiAwIDhweCAyNHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG4gIGJvcmRlci1jb2xvcjogI2QwZDBkMDtcbn1cblxuLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5jYXRlZ29yaWVzLWNhdGFsb2cgLmNhdGVnb3J5LWNhdGFsb2ctY2FyZDpob3ZlciAuY2F0ZWdvcnktaW1hZ2Uge1xuICBvcGFjaXR5OiAwLjk7XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQ6aG92ZXIgLmNhdGVnb3J5LW5hbWUge1xuICBjb2xvcjogIzFlMWU1Njtcbn1cblxuLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5jYXRlZ29yaWVzLWNhdGFsb2cgLmNhdGVnb3J5LWltYWdlLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctdG9wOiA3NSU7XG4gIGJhY2tncm91bmQ6ICNmOGY5ZmE7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1pbWFnZS13cmFwcGVyIC5jYXRlZ29yeS1pbWFnZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2U7XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1pbWFnZS13cmFwcGVyIC5jYXRlZ29yeS1pbWFnZS1wbGFjZWhvbGRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2Y1ZjdmYSAwJSwgI2U5ZWNlZiAxMDAlKTtcbn1cblxuLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5jYXRlZ29yaWVzLWNhdGFsb2cgLmNhdGVnb3J5LWltYWdlLXdyYXBwZXIgLmNhdGVnb3J5LWltYWdlLXBsYWNlaG9sZGVyIGkge1xuICBmb250LXNpemU6IDNyZW07XG4gIGNvbG9yOiAjYWRiNWJkO1xuICBvcGFjaXR5OiAwLjU7XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1pbWFnZS13cmFwcGVyIC5pdGVtLWNvdW50LWJhZGdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEycHg7XG4gIHJpZ2h0OiAxMnB4O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTUpO1xuICBjb2xvcjogIzQ5NTA1NztcbiAgcGFkZGluZzogNHB4IDEwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgYm94LXNoYWRvdzogMCAycHggOHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDRweCk7XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1pbmZvIHtcbiAgcGFkZGluZzogMS4yNXJlbTtcbiAgZmxleC1ncm93OiAxO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4ucGFnZS1pcy1wcm9kdWN0LWNhdGVnb3JpZXMgLmNhdGVnb3JpZXMtY2F0YWxvZyAuY2F0ZWdvcnktaW5mbyAuY2F0ZWdvcnktbmFtZSB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuM3MgZWFzZTtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbn1cblxuLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5jYXRlZ29yaWVzLWNhdGFsb2cgLmNhdGVnb3J5LWluZm8gLmNhdGVnb3J5LWRlc2NyaXB0aW9uIHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIG1hcmdpbjogMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgZmxleC1ncm93OiAxO1xufVxuXG4ucGFnZS1pcy1wcm9kdWN0LWNhdGVnb3JpZXMgLmVtcHR5LXN0YXRlIHtcbiAgcGFkZGluZzogNHJlbSAwO1xufVxuXG4ucGFnZS1pcy1wcm9kdWN0LWNhdGVnb3JpZXMgLmVtcHR5LXN0YXRlIGkge1xuICBjb2xvcjogI2RlZTJlNjtcbn1cblxuLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5lbXB0eS1zdGF0ZSBoMyxcbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuZW1wdHktc3RhdGUgLmgzIHtcbiAgY29sb3I6ICM0OTUwNTc7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuZW1wdHktc3RhdGUgcCB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuYm90dG9tLWN0YS1zZWN0aW9uIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlMGUwZTA7XG4gIHBhZGRpbmctdG9wOiAzcmVtO1xuICBtYXJnaW4tdG9wOiAzcmVtO1xufVxuXG4ucGFnZS1pcy1wcm9kdWN0LWNhdGVnb3JpZXMgLmJvdHRvbS1jdGEtc2VjdGlvbiAuY3RhLXRpdGxlIHtcbiAgZm9udC1zaXplOiAxLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICMxZTFlNTY7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5ib3R0b20tY3RhLXNlY3Rpb24gLmN0YS1zdWJ0aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuXG4ucGFnZS1pcy1wcm9kdWN0LWNhdGVnb3JpZXMgLmJvdHRvbS1jdGEtc2VjdGlvbiAuY3RhLWJ1dHRvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBnYXA6IDAuNXJlbTtcbn1cblxuLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5ib3R0b20tY3RhLXNlY3Rpb24gLmN0YS1idXR0b25zIC5idG4ge1xuICBtaW4td2lkdGg6IDE1MHB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5ib3R0b20tY3RhLXNlY3Rpb24gLmN0YS1idXR0b25zIC5idG4ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5jYXRlZ29yaWVzLWNhdGFsb2cgLmNhdGVnb3J5LWNhdGFsb2ctY2FyZCAuY2F0ZWdvcnktaW5mbyB7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgfVxuXG4gIC5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQgLmNhdGVnb3J5LWluZm8gLmNhdGVnb3J5LW5hbWUge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxuXG4gIC5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQgLmNhdGVnb3J5LWluZm8gLmNhdGVnb3J5LWRlc2NyaXB0aW9uIHtcbiAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5jYXRlZ29yaWVzLWNhdGFsb2cgLnJvdyB7XG4gICAgbWFyZ2luOiAwIC0wLjVyZW07XG4gIH1cblxuICAucGFnZS1pcy1wcm9kdWN0LWNhdGVnb3JpZXMgLmNhdGVnb3JpZXMtY2F0YWxvZyAucm93ID4gW2NsYXNzKj1jb2xdIHtcbiAgICBwYWRkaW5nOiAwIDAuNXJlbTtcbiAgfVxuXG4gIC5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQgLmNhdGVnb3J5LWltYWdlLXdyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiA2Ni42NyU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW5VcCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQge1xuICBhbmltYXRpb246IGZhZGVJblVwIDAuNXMgZWFzZS1vdXQ7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQ6bnRoLWNoaWxkKDEpIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjA1cztcbn1cblxuLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5jYXRlZ29yaWVzLWNhdGFsb2cgLmNhdGVnb3J5LWNhdGFsb2ctY2FyZDpudGgtY2hpbGQoMikge1xuICBhbmltYXRpb24tZGVsYXk6IDAuMXM7XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQ6bnRoLWNoaWxkKDMpIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjE1cztcbn1cblxuLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5jYXRlZ29yaWVzLWNhdGFsb2cgLmNhdGVnb3J5LWNhdGFsb2ctY2FyZDpudGgtY2hpbGQoNCkge1xuICBhbmltYXRpb24tZGVsYXk6IDAuMnM7XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQ6bnRoLWNoaWxkKDUpIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjI1cztcbn1cblxuLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5jYXRlZ29yaWVzLWNhdGFsb2cgLmNhdGVnb3J5LWNhdGFsb2ctY2FyZDpudGgtY2hpbGQoNikge1xuICBhbmltYXRpb24tZGVsYXk6IDAuM3M7XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQ6bnRoLWNoaWxkKDcpIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjM1cztcbn1cblxuLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5jYXRlZ29yaWVzLWNhdGFsb2cgLmNhdGVnb3J5LWNhdGFsb2ctY2FyZDpudGgtY2hpbGQoOCkge1xuICBhbmltYXRpb24tZGVsYXk6IDAuNHM7XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQ6bnRoLWNoaWxkKDkpIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjQ1cztcbn1cblxuLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5jYXRlZ29yaWVzLWNhdGFsb2cgLmNhdGVnb3J5LWNhdGFsb2ctY2FyZDpudGgtY2hpbGQoMTApIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjVzO1xufVxuXG4ucGFnZS1pcy1wcm9kdWN0LWNhdGVnb3JpZXMgLmNhdGVnb3JpZXMtY2F0YWxvZyAuY2F0ZWdvcnktY2F0YWxvZy1jYXJkOm50aC1jaGlsZCgxMSkge1xuICBhbmltYXRpb24tZGVsYXk6IDAuNTVzO1xufVxuXG4ucGFnZS1pcy1wcm9kdWN0LWNhdGVnb3JpZXMgLmNhdGVnb3JpZXMtY2F0YWxvZyAuY2F0ZWdvcnktY2F0YWxvZy1jYXJkOm50aC1jaGlsZCgxMikge1xuICBhbmltYXRpb24tZGVsYXk6IDAuNnM7XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQ6bnRoLWNoaWxkKDEzKSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMC42NXM7XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQ6bnRoLWNoaWxkKDE0KSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMC43cztcbn1cblxuLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5jYXRlZ29yaWVzLWNhdGFsb2cgLmNhdGVnb3J5LWNhdGFsb2ctY2FyZDpudGgtY2hpbGQoMTUpIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjc1cztcbn1cblxuLnBhZ2UtaXMtcHJvZHVjdC1jYXRlZ29yaWVzIC5jYXRlZ29yaWVzLWNhdGFsb2cgLmNhdGVnb3J5LWNhdGFsb2ctY2FyZDpudGgtY2hpbGQoMTYpIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjhzO1xufVxuXG4ucGFnZS1pcy1wcm9kdWN0LWNhdGVnb3JpZXMgLmNhdGVnb3JpZXMtY2F0YWxvZyAuY2F0ZWdvcnktY2F0YWxvZy1jYXJkOm50aC1jaGlsZCgxNykge1xuICBhbmltYXRpb24tZGVsYXk6IDAuODVzO1xufVxuXG4ucGFnZS1pcy1wcm9kdWN0LWNhdGVnb3JpZXMgLmNhdGVnb3JpZXMtY2F0YWxvZyAuY2F0ZWdvcnktY2F0YWxvZy1jYXJkOm50aC1jaGlsZCgxOCkge1xuICBhbmltYXRpb24tZGVsYXk6IDAuOXM7XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQ6bnRoLWNoaWxkKDE5KSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMC45NXM7XG59XG5cbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQ6bnRoLWNoaWxkKDIwKSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMXM7XG59XG5cbi5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAuc2VsbGVyLWFjY2Vzcy1wYWdlLXdyYXBwZXIge1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1nL2Jhbm5lci9iZy1TaWduSW4ud2VicFwiKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmctdG9wOiAxMDBweDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbn1cblxuLm5vLXdlYnAgLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5zZWxsZXItYWNjZXNzLXBhZ2Utd3JhcHBlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWcvYmFubmVyL2JnLVNpZ25Jbi5wbmdcIik7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5zZWxsZXItYWNjZXNzLXBhZ2Utd3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDgwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gIC5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAuc2VsbGVyLWFjY2Vzcy1wYWdlLXdyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLnNlbGxlci1hY2Nlc3MtcGFnZS13cmFwcGVyIHtcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5zZWxsZXItYWNjZXNzLXBhZ2Utd3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDQwcHg7XG4gIH1cbn1cblxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5zZWxsZXItYWNjZXNzLWNvbnRhaW5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbn1cblxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5zZWxsZXItYWNjZXNzLWNhcmQge1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICBib3gtc2hhZG93OiAwIDIwcHggNjBweCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xufVxuXG4ucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLnNlbGxlci1hY2Nlc3MtaGVhZGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAzMHB4IDIwcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjBmMGYwO1xufVxuXG4ucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLnNlbGxlci1hY2Nlc3MtaGVhZGVyIC5zZWxsZXItYWNjZXNzLWxvZ28taW1nIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4ucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLnNlbGxlci1hY2Nlc3MtaGVhZGVyIC5sdXh1cnktdGFnbGluZSB7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBmb250LXNpemU6IDEzcHg7XG4gIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbjogMDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5zZWxsZXItYWNjZXNzLWNvbnRlbnQge1xuICBwYWRkaW5nOiA0MHB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5zZWxsZXItYWNjZXNzLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDI1cHg7XG4gIH1cbn1cblxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5zZWxsZXItYWNjZXNzLWJvZHkge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4ucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLmZvcm0tbGFiZWwge1xuICBjb2xvcjogIzQ5NTA1NztcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbWFyZ2luLWJvdHRvbTogNnB4O1xuICBmb250LXNpemU6IDEzcHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbn1cblxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5mb3JtLWNvbnRyb2wsXG4ucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbixcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBwYWRkaW5nOiAxMHB4IDE0cHg7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmJmYztcbn1cblxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4ucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMWUxZTU2O1xuICBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYSgzMCwgMzAsIDg2LCAwLjA4KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5mb3JtLWNvbnRyb2w6OnBsYWNlaG9sZGVyLFxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246OnBsYWNlaG9sZGVyLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAuc2VsZWN0Mi1zZWxlY3Rpb246OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNhZGI1YmQ7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIHRleHRhcmVhLmZvcm0tY29udHJvbCxcbi5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgdGV4dGFyZWEuc2VsZWN0Mi1zZWxlY3Rpb24sXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIHRleHRhcmVhLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgcmVzaXplOiB2ZXJ0aWNhbDtcbiAgbWluLWhlaWdodDogODBweDtcbn1cblxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIHBhZGRpbmc6IDEwcHggMTRweDtcbiAgZm9udC1zaXplOiAxNXB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYmZjO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1pbi1oZWlnaHQ6IDQycHg7XG59XG5cbi5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQuc2VsZWN0Mi1jb250YWluZXItLWZvY3VzIC5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gIGJvcmRlci1jb2xvcjogIzFlMWU1NjtcbiAgYm94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEoMzAsIDMwLCA4NiwgMC4wOCk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyBoNCxcbi5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAuaDQge1xuICBjb2xvcjogIzFlMWU1NjtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNmMGYwZjA7XG59XG5cbi5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAuYWxlcnQtaW5mbyB7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgcGFkZGluZzogMTVweCAyMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmOGZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjYjhkYWZmO1xuICBjb2xvcjogIzAwNDA4NTtcbn1cblxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5hbGVydC1pbmZvIHVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xufVxuXG4ucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLmJ0bi1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzFlMWU1NiAwJSwgIzJhMmE3YSAxMDAlKTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgcGFkZGluZzogMTJweCAyNHB4O1xuICBmb250LXNpemU6IDE1cHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgYm94LXNoYWRvdzogMCA0cHggMTVweCByZ2JhKDMwLCAzMCwgODYsIDAuMik7XG59XG5cbi5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAuYnRuLXByaW1hcnk6aG92ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG4gIGJveC1zaGFkb3c6IDAgNnB4IDI1cHggcmdiYSgzMCwgMzAsIDg2LCAwLjMpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMmEyYTdhIDAlLCAjMWUxZTU2IDEwMCUpO1xufVxuXG4ucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLmJ0bi1wcmltYXJ5OmFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbn1cblxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5idG4tcHJpbWFyeS5idG4tbGcsXG4ucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLmJ0bi1ncm91cC1sZyA+IC5idG4tcHJpbWFyeS5idG4ge1xuICBwYWRkaW5nOiAxNHB4IDMycHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5idG4tb3V0bGluZS1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMnB4IHNvbGlkICMxZTFlNTY7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgY29sb3I6ICMxZTFlNTY7XG4gIHBhZGRpbmc6IDEycHggMjRweDtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG59XG5cbi5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAuYnRuLW91dGxpbmUtcHJpbWFyeTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMxZTFlNTY7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xuICBib3gtc2hhZG93OiAwIDRweCAxNXB4IHJnYmEoMzAsIDMwLCA4NiwgMC4yKTtcbn1cblxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5idG4tb3V0bGluZS1wcmltYXJ5LmJ0bi1sZyxcbi5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAuYnRuLWdyb3VwLWxnID4gLmJ0bi1vdXRsaW5lLXByaW1hcnkuYnRuIHtcbiAgcGFkZGluZzogMTRweCAzMnB4O1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cbi5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMnB4IHNvbGlkICM2Yzc1N2Q7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIHBhZGRpbmc6IDEycHggMjRweDtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG59XG5cbi5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5OmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzZjNzU3ZDtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4ucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDppbnZhbGlkLFxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246aW52YWxpZCxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItc2VsZWN0aW9uOmludmFsaWQge1xuICBib3JkZXItY29sb3I6ICNkYzM1NDU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG5cbi5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOmludmFsaWQ6Zm9jdXMsXG4ucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjppbnZhbGlkOmZvY3VzLFxuLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAud2FzLXZhbGlkYXRlZCAuc2VsZWN0Mi1zZWxlY3Rpb246aW52YWxpZDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbiAgYm94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEoMjIwLCA1MywgNjksIDAuMSk7XG59XG5cbi5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOnZhbGlkLFxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb246dmFsaWQsXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC53YXMtdmFsaWRhdGVkIC5zZWxlY3QyLXNlbGVjdGlvbjp2YWxpZCB7XG4gIGJvcmRlci1jb2xvcjogIzI4YTc0NTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cblxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6dmFsaWQ6Zm9jdXMsXG4ucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbjp2YWxpZDpmb2N1cyxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLndhcy12YWxpZGF0ZWQgLnNlbGVjdDItc2VsZWN0aW9uOnZhbGlkOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMjhhNzQ1O1xuICBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYSg0MCwgMTY3LCA2OSwgMC4xKTtcbn1cblxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5pbnZhbGlkLWZlZWRiYWNrLFxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5lcnJvci1oZWxwLWJsb2NrIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBtYXJnaW4tdG9wOiA0cHg7XG4gIGNvbG9yOiAjZGMzNTQ1O1xufVxuXG4ucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLmZvcm0tdGV4dCB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIG1hcmdpbi10b3A6IDRweDtcbn1cblxuLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC50ZXh0LWRhbmdlciB7XG4gIGNvbG9yOiAjZGMzNTQ1O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5zZWxsZXItYWNjZXNzLWNhcmQge1xuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIH1cblxuICAucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLnNlbGxlci1hY2Nlc3MtaGVhZGVyIHtcbiAgICBwYWRkaW5nOiAyNXB4IDIwcHg7XG4gIH1cblxuICAucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgaDQsXG4gIC5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAuaDQge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgfVxuXG4gIC5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAuZC1ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLmQtZ3JpZCAuYnRuIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG5cbiAgLnBhZ2UtaXMtcmVxdWVzdC1zZWxsZXItYWNjZXNzIC5kLWdyaWQgLmJ0bjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5wYWdlLWlzLXJlcXVlc3Qtc2VsbGVyLWFjY2VzcyAuc2VsbGVyLWFjY2Vzcy1jb250YWluZXIge1xuICAgIG1heC13aWR0aDogNzUwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xuICAucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3MgLnNlbGxlci1hY2Nlc3MtY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDExMDBweDtcbiAgfVxufVxuXG4vKipcbiAqIFByb2ZpbGUgU3VwcG9ydCBUaWNrZXQgRGV0YWlsIFBhZ2UgU3R5bGVzXG4gKi9cblxuLnBhZ2UtaXMtcHJvZmlsZS1zdXBwb3J0LXRpY2tldC1kZXRhaWwgLmNhcmQ6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG59XG5cbi5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXQtZGV0YWlsIC5tZXNzYWdlLWl0ZW0td3JhcHBlciB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXQtZGV0YWlsIC5tZXNzYWdlLWl0ZW0td3JhcHBlciB7XG4gICAgcGFkZGluZy1sZWZ0OiA1MHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG4gIH1cbn1cblxuLnBhZ2UtaXMtcHJvZmlsZS1zdXBwb3J0LXRpY2tldC1kZXRhaWwgLm1lc3NhZ2Utc2VwYXJhdG9yIHtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2RlZTJlNjtcbiAgbWFyZ2luOiAxLjVyZW0gMDtcbn1cblxuLnBhZ2UtaXMtcHJvZmlsZS1zdXBwb3J0LXRpY2tldC1kZXRhaWwgLm1lc3NhZ2UtaXRlbSB7XG4gIGJvcmRlci1sZWZ0OiA0cHggc29saWQgI2RlZTJlNjtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG4gIGFuaW1hdGlvbjogZmFkZUluIDAuM3MgZWFzZS1pbjtcbn1cblxuLnBhZ2UtaXMtcHJvZmlsZS1zdXBwb3J0LXRpY2tldC1kZXRhaWwgLm1lc3NhZ2UtaXRlbS5hZG1pbi1tZXNzYWdlIHtcbiAgYm9yZGVyLWxlZnQtY29sb3I6ICMwMDdiZmY7XG59XG5cbi5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXQtZGV0YWlsIC5tZXNzYWdlLWl0ZW0uY3VzdG9tZXItbWVzc2FnZSB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjNmM3NTdkO1xufVxuXG4ucGFnZS1pcy1wcm9maWxlLXN1cHBvcnQtdGlja2V0LWRldGFpbCAubWVzc2FnZS1pdGVtOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLnBhZ2UtaXMtcHJvZmlsZS1zdXBwb3J0LXRpY2tldC1kZXRhaWwgLm1lc3NhZ2UtaGVhZGVyIHtcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTllY2VmO1xufVxuXG4ucGFnZS1pcy1wcm9maWxlLXN1cHBvcnQtdGlja2V0LWRldGFpbCAubWVzc2FnZS1jb250ZW50IHtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTllY2VmO1xufVxuXG4ucGFnZS1pcy1wcm9maWxlLXN1cHBvcnQtdGlja2V0LWRldGFpbCAubWVzc2FnZS1zZW5kZXIge1xuICBjb2xvcjogIzQ5NTA1NztcbiAgZm9udC1zaXplOiAwLjk1cmVtO1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcHVsc2Uge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgb3BhY2l0eTogMC44O1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXQtZGV0YWlsIC51bnJlYWQtaW5kaWNhdG9yIHtcbiAgYW5pbWF0aW9uOiBwdWxzZSAxLjVzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xufVxuXG4ucGFnZS1pcy1wcm9maWxlLXN1cHBvcnQtdGlja2V0LWRldGFpbCAubWVzc2FnZS1hdHRhY2htZW50cyAuYXR0YWNobWVudC1pdGVtIGEuYnRuLW91dGxpbmUtc2Vjb25kYXJ5IHtcbiAgY29sb3I6ICMyMTI1Mjk7XG59XG5cbi5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXQtZGV0YWlsIC5tZXNzYWdlLWF0dGFjaG1lbnRzIC5hdHRhY2htZW50LWl0ZW0gYS5idG4tb3V0bGluZS1zZWNvbmRhcnkgLmZhLWZpbGUge1xuICBjb2xvcjogIzZjNzU3ZDtcbn1cblxuLnBhZ2UtaXMtcHJvZmlsZS1zdXBwb3J0LXRpY2tldC1kZXRhaWwgLm1lc3NhZ2UtYXR0YWNobWVudHMgLmF0dGFjaG1lbnQtaXRlbSBhLmJ0bi1vdXRsaW5lLXNlY29uZGFyeSBzbWFsbC50ZXh0LW11dGVkLFxuLnBhZ2UtaXMtcHJvZmlsZS1zdXBwb3J0LXRpY2tldC1kZXRhaWwgLm1lc3NhZ2UtYXR0YWNobWVudHMgLmF0dGFjaG1lbnQtaXRlbSBhLmJ0bi1vdXRsaW5lLXNlY29uZGFyeSAudGV4dC1tdXRlZC5zbWFsbCB7XG4gIGNvbG9yOiAjNmM3NTdkICFpbXBvcnRhbnQ7XG59XG5cbi5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXQtZGV0YWlsIC5tZXNzYWdlLWF0dGFjaG1lbnRzIC5hdHRhY2htZW50LWl0ZW0gYS5idG4tb3V0bGluZS1zZWNvbmRhcnk6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLnBhZ2UtaXMtcHJvZmlsZS1zdXBwb3J0LXRpY2tldC1kZXRhaWwgLm1lc3NhZ2UtYXR0YWNobWVudHMgLmF0dGFjaG1lbnQtaXRlbSBhLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpob3ZlciAuZmEtZmlsZSxcbi5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXQtZGV0YWlsIC5tZXNzYWdlLWF0dGFjaG1lbnRzIC5hdHRhY2htZW50LWl0ZW0gYS5idG4tb3V0bGluZS1zZWNvbmRhcnk6aG92ZXIgc21hbGwudGV4dC1tdXRlZCxcbi5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXQtZGV0YWlsIC5tZXNzYWdlLWF0dGFjaG1lbnRzIC5hdHRhY2htZW50LWl0ZW0gYS5idG4tb3V0bGluZS1zZWNvbmRhcnk6aG92ZXIgLnRleHQtbXV0ZWQuc21hbGwge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG4vKipcbiAqIFByb2ZpbGUgU3VwcG9ydCBUaWNrZXRzIFBhZ2UgU3R5bGVzXG4gKi9cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXRzICNzdXBwb3J0LXRpY2tldHMtdGFibGUgdGhlYWQgdGguc29ydGFibGUgaSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXRzICNzdXBwb3J0LXRpY2tldHMtdGFibGUgdGhlYWQgdGg6bnRoLWNoaWxkKDIpLFxuICAucGFnZS1pcy1wcm9maWxlLXN1cHBvcnQtdGlja2V0cyAjc3VwcG9ydC10aWNrZXRzLXRhYmxlIHRoZWFkIHRoOm50aC1jaGlsZCg0KSxcbiAgLnBhZ2UtaXMtcHJvZmlsZS1zdXBwb3J0LXRpY2tldHMgI3N1cHBvcnQtdGlja2V0cy10YWJsZSB0aGVhZCB0aDpudGgtY2hpbGQoNiksXG4gIC5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXRzICNzdXBwb3J0LXRpY2tldHMtdGFibGUgdGJvZHkgdGQ6bnRoLWNoaWxkKDIpLFxuICAucGFnZS1pcy1wcm9maWxlLXN1cHBvcnQtdGlja2V0cyAjc3VwcG9ydC10aWNrZXRzLXRhYmxlIHRib2R5IHRkOm50aC1jaGlsZCg0KSxcbiAgLnBhZ2UtaXMtcHJvZmlsZS1zdXBwb3J0LXRpY2tldHMgI3N1cHBvcnQtdGlja2V0cy10YWJsZSB0Ym9keSB0ZDpudGgtY2hpbGQoNikge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnBhZ2UtaXMtcHJvZmlsZS1zdXBwb3J0LXRpY2tldHMgI3N1cHBvcnQtdGlja2V0cy10YWJsZSB0Ym9keSB0ciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XG59XG5cbi5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXRzICNzdXBwb3J0LXRpY2tldHMtdGFibGUgdGJvZHkgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDIpO1xufVxuXG4ucGFnZS1pcy1wcm9maWxlLXN1cHBvcnQtdGlja2V0cyAjc3VwcG9ydC10aWNrZXRzLXRhYmxlIHRoZWFkIHRoLnNvcnRhYmxlIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ucGFnZS1pcy1wcm9maWxlLXN1cHBvcnQtdGlja2V0cyAjc3VwcG9ydC10aWNrZXRzLXRhYmxlIHRoZWFkIHRoLnNvcnRhYmxlOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjAyKTtcbn1cblxuLnBhZ2UtaXMtcHJvZmlsZS1zdXBwb3J0LXRpY2tldHMgI3N1cHBvcnQtdGlja2V0cy10YWJsZSB0aGVhZCB0aC5zb3J0YWJsZSBpIHtcbiAgb3BhY2l0eTogMC40O1xuICBmb250LXNpemU6IDAuODVlbTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG59XG5cbi5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXRzICNzdXBwb3J0LXRpY2tldHMtdGFibGUgdGhlYWQgdGguc29ydGFibGU6aG92ZXIgaSB7XG4gIG9wYWNpdHk6IDAuNztcbn1cblxuLnBhZ2UtaXMtcHJvZmlsZS1zdXBwb3J0LXRpY2tldHMgI3N1cHBvcnQtdGlja2V0cy10YWJsZSB0aGVhZCB0aC5zb3J0YWJsZSBpLmZhLXNvcnQtdXAsXG4ucGFnZS1pcy1wcm9maWxlLXN1cHBvcnQtdGlja2V0cyAjc3VwcG9ydC10aWNrZXRzLXRhYmxlIHRoZWFkIHRoLnNvcnRhYmxlIGkuZmEtc29ydC1kb3duIHtcbiAgb3BhY2l0eTogMTtcbiAgY29sb3I6ICMxZTFlNTY7XG59XG5cbi5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXRzICNwYWdpbmF0aW9uLWNvbnRhaW5lciAucGFnaW5hdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXRzICNwYWdpbmF0aW9uLWNvbnRhaW5lciAucGFnaW5hdGlvbiAucGFnZS1pdGVtLmRpc2FibGVkIC5wYWdlLWxpbmsge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICBvcGFjaXR5OiAwLjU7XG59XG5cbi5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXRzICNwYWdpbmF0aW9uLWNvbnRhaW5lciAucGFnaW5hdGlvbiAucGFnZS1pdGVtLmFjdGl2ZSAucGFnZS1saW5rIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFlMWU1NjtcbiAgYm9yZGVyLWNvbG9yOiAjMWUxZTU2O1xufVxuXG4ucGFnZS1pcy1wcm9maWxlLXN1cHBvcnQtdGlja2V0cyAudGFibGUgLmJhZGdlLFxuLnBhZ2UtaXMtcHJvZmlsZS1zdXBwb3J0LXRpY2tldHMgLnByb3NlIHRhYmxlIC5iYWRnZSxcbi5wcm9zZSAucGFnZS1pcy1wcm9maWxlLXN1cHBvcnQtdGlja2V0cyB0YWJsZSAuYmFkZ2Uge1xuICBmb250LXdlaWdodDogNTAwO1xuICBwYWRkaW5nOiAwLjM1ZW0gMC42NWVtO1xufVxuXG4ucGFnZS1pcy1wcm9maWxlLXN1cHBvcnQtdGlja2V0cyAudGFibGUgLmJhZGdlLmJnLWRhbmdlcixcbi5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXRzIC5wcm9zZSB0YWJsZSAuYmFkZ2UuYmctZGFuZ2VyLFxuLnByb3NlIC5wYWdlLWlzLXByb2ZpbGUtc3VwcG9ydC10aWNrZXRzIHRhYmxlIC5iYWRnZS5iZy1kYW5nZXIge1xuICBhbmltYXRpb246IHB1bHNlIDJzIGluZmluaXRlO1xufVxuXG4ucGFnZS1pcy1wcm9maWxlLXN1cHBvcnQtdGlja2V0cyAudGV4dC1kYW5nZXIge1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG5Aa2V5ZnJhbWVzIHB1bHNlIHtcbiAgMCUge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDAgcmdiYSgyMjAsIDUzLCA2OSwgMC40KTtcbiAgfVxuXG4gIDcwJSB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgNXB4IHJnYmEoMjIwLCA1MywgNjksIDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKDIyMCwgNTMsIDY5LCAwKTtcbiAgfVxufVxuXG4uaGVyb1NsaWRlciB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG59XG5cbiIsIi8qKlxuICogU2hhcmVkIENvcmUgSW5kZXhcbiAqXG4gKiBJbXBvcnQgYWxsIHNoYXJlZCBjb3JlIFNDU1MgZmlsZXMgaW4gdGhlIGNvcnJlY3Qgb3JkZXJcbiAqL1xuXG4vLyAxLiBGdW5jdGlvbnMgKG11c3QgYmUgZmlyc3QgYXMgdGhleSdyZSB1c2VkIGluIG90aGVyIGZpbGVzKVxuQGltcG9ydCAnZnVuY3Rpb25zJztcblxuLy8gMi4gVmFyaWFibGVzICh1c2VzIGZ1bmN0aW9ucylcbkBpbXBvcnQgJ3ZhcmlhYmxlcyc7XG5cbi8vIDMuIE1peGlucyAodXNlcyBmdW5jdGlvbnMgYW5kIHZhcmlhYmxlcylcbkBpbXBvcnQgJ21peGlucyc7IiwiLyoqXG4gKiBTaGFyZWQgRnVuY3Rpb25zXG4gKlxuICogU0NTUyBmdW5jdGlvbnMgZm9yIGNhbGN1bGF0aW9ucyBhbmQgdHJhbnNmb3JtYXRpb25zXG4gKi9cblxuQHVzZSBcInNhc3M6bWF0aFwiO1xuXG4vLyBDb252ZXJ0IHBpeGVscyB0byByZW1cbkBmdW5jdGlvbiByZW0oJHBpeGVscywgJGNvbnRleHQ6IDE2KSB7XG4gIEByZXR1cm4gbWF0aC5kaXYoJHBpeGVscywgJGNvbnRleHQpICogMXJlbTtcbn1cblxuLy8gQ29udmVydCBwaXhlbHMgdG8gZW1cbkBmdW5jdGlvbiBlbSgkcGl4ZWxzLCAkY29udGV4dDogMTYpIHtcbiAgQHJldHVybiBtYXRoLmRpdigkcGl4ZWxzLCAkY29udGV4dCkgKiAxZW07XG59XG5cbi8vIENhbGN1bGF0ZSBzcGFjaW5nXG5AZnVuY3Rpb24gc3BhY2luZygkbXVsdGlwbGllcikge1xuICBAcmV0dXJuICRzcGFjZXIgKiAkbXVsdGlwbGllcjtcbn1cblxuLy8gU3RyaXAgdW5pdCBmcm9tIGEgdmFsdWVcbkBmdW5jdGlvbiBzdHJpcC11bml0KCR2YWx1ZSkge1xuICBAcmV0dXJuICR2YWx1ZSAvICgkdmFsdWUgKiAwICsgMSk7XG59XG5cbi8vIENhbGN1bGF0ZSB0aGUgbHVtaW5hbmNlIG9mIGEgY29sb3JcbkBmdW5jdGlvbiBsdW1pbmFuY2UoJGNvbG9yKSB7XG4gICRyZWQ6IHJlZCgkY29sb3IpIC8gMjU1O1xuICAkZ3JlZW46IGdyZWVuKCRjb2xvcikgLyAyNTU7XG4gICRibHVlOiBibHVlKCRjb2xvcikgLyAyNTU7XG4gIFxuICBAcmV0dXJuIDAuMjEyNiAqICRyZWQgKyAwLjcxNTIgKiAkZ3JlZW4gKyAwLjA3MjIgKiAkYmx1ZTtcbn1cblxuLy8gQ2FsY3VsYXRlIHRoZSBjb250cmFzdCByYXRpbyBiZXR3ZWVuIHR3byBjb2xvcnNcbkBmdW5jdGlvbiBjb2xvci1jb250cmFzdCgkY29sb3IpIHtcbiAgJGx1bWluYW5jZTogbHVtaW5hbmNlKCRjb2xvcik7XG4gIFxuICBAaWYgKCRsdW1pbmFuY2UgPiAwLjU1KSB7XG4gICAgQHJldHVybiAkYmxhY2s7IC8vIERhcmtlciB0ZXh0IG9uIGxpZ2h0IGJhY2tncm91bmRzXG4gIH0gQGVsc2Uge1xuICAgIEByZXR1cm4gJHdoaXRlOyAvLyBMaWdodCB0ZXh0IG9uIGRhcmsgYmFja2dyb3VuZHNcbiAgfVxufVxuXG4vLyBHZXQgYSB2YWx1ZSBmcm9tIGEgbWFwXG5AZnVuY3Rpb24gbWFwLWRlZXAtZ2V0KCRtYXAsICRrZXlzLi4uKSB7XG4gIEBlYWNoICRrZXkgaW4gJGtleXMge1xuICAgICRtYXA6IG1hcC1nZXQoJG1hcCwgJGtleSk7XG4gIH1cbiAgQHJldHVybiAkbWFwO1xufVxuXG4vLyBaLWluZGV4IG1hbmFnZW1lbnRcbkBmdW5jdGlvbiB6LWluZGV4KCRsYXllcikge1xuICAkei1pbmRleGVzOiAoXG4gICAgZHJvcGRvd246ICR6LWluZGV4LWRyb3Bkb3duLFxuICAgIHN0aWNreTogJHotaW5kZXgtc3RpY2t5LFxuICAgIGZpeGVkOiAkei1pbmRleC1maXhlZCxcbiAgICBtb2RhbC1iYWNrZHJvcDogJHotaW5kZXgtbW9kYWwtYmFja2Ryb3AsXG4gICAgbW9kYWw6ICR6LWluZGV4LW1vZGFsLFxuICAgIHBvcG92ZXI6ICR6LWluZGV4LXBvcG92ZXIsXG4gICAgdG9vbHRpcDogJHotaW5kZXgtdG9vbHRpcFxuICApO1xuICBcbiAgQHJldHVybiBtYXAtZ2V0KCR6LWluZGV4ZXMsICRsYXllcik7XG59XG5cbi8vIFRpbnQgYSBjb2xvciAobWl4IHdpdGggd2hpdGUpXG5AZnVuY3Rpb24gdGludCgkY29sb3IsICRwZXJjZW50YWdlKSB7XG4gIEByZXR1cm4gbWl4KHdoaXRlLCAkY29sb3IsICRwZXJjZW50YWdlKTtcbn1cblxuLy8gU2hhZGUgYSBjb2xvciAobWl4IHdpdGggYmxhY2spXG5AZnVuY3Rpb24gc2hhZGUoJGNvbG9yLCAkcGVyY2VudGFnZSkge1xuICBAcmV0dXJuIG1peChibGFjaywgJGNvbG9yLCAkcGVyY2VudGFnZSk7XG59IiwiLyoqXG4gKiBTaGFyZWQgVmFyaWFibGVzXG4gKlxuICogQ29yZSB2YXJpYWJsZXMgdXNlZCB0aHJvdWdob3V0IGJvdGggZnJvbnRlbmQgYW5kIGJhY2tlbmQgc3R5bGluZy5cbiAqIFRoZXNlIHByb3ZpZGUgYSBjZW50cmFsIHBsYWNlIHRvIGRlZmluZSBjb2xvcnMsIHNwYWNpbmcsIGFuZCBvdGhlciBkZXNpZ24gZWxlbWVudHMuXG4gKi9cblxuLy8gQ29sb3JzXG4vLyBNYWluIGJyYW5kIGNvbG9yc1xuJHByaW1hcnk6ICMxRTFFNTY7ICAgICAgICAvLyBEZWVwIG5hdnkgYmx1ZSAtIHByaW1hcnkgYnJhbmQgY29sb3JcbiRzZWNvbmRhcnk6ICNhMzdlYmE7ICAgICAgLy8gUHVycGxlIC0gc2Vjb25kYXJ5IGFjY2VudCBcbiR0ZXJ0aWFyeTogIzdlYmFhZDsgICAgICAgLy8gVGVhbCAtIHRlcnRpYXJ5IGFjY2VudFxuJHF1YXRlcm5hcnk6ICNlOWM0NmE7ICAgICAvLyBHb2xkIC0gZm9yIGx1eHVyeSBhY2NlbnRzXG5cbi8vIE5ldXRyYWwgY29sb3JzXG4kd2hpdGU6ICNmZmZmZmY7XG4kbGlnaHQtZ3JheTogI2Y4ZjlmYTtcbiRtaWQtZ3JheTogI2UwZTBlMDtcbiRkYXJrLWdyYXk6ICM1ZjYwNjI7XG4kYmxhY2s6ICMzMzMzMzM7XG5cbi8vIFNlbWFudGljIGNvbG9yc1xuJHN1Y2Nlc3M6ICM0Y2FmNTA7XG4kaW5mbzogIzIxOTZmMztcbiR3YXJuaW5nOiAjZmY5ODAwO1xuJGRhbmdlcjogI2Y0NDMzNjtcblxuLy8gSXRlbSB0eXBlIHNwZWNpZmljIGNvbG9yc1xuJGpld2VscnktY29sb3I6ICRzZWNvbmRhcnk7XG4kZ2Vtc3RvbmUtY29sb3I6ICR0ZXJ0aWFyeTtcblxuLy8gVHlwb2dyYXBoeVxuJGZvbnQtZmFtaWx5LWJhc2U6ICdTb3VyY2UgU2FucyBQcm8nLCBzYW5zLXNlcmlmO1xuJGZvbnQtZmFtaWx5LWhlYWRpbmc6ICdQbGF5ZmFpciBEaXNwbGF5Jywgc2VyaWY7XG4kZm9udC1mYW1pbHktYWRtaW46ICdOdW5pdG8nLCBzYW5zLXNlcmlmO1xuXG4kZm9udC1zaXplLWJhc2U6IDFyZW07ICAgICAgICAgIC8vIDE2cHhcbiRmb250LXNpemUtc206IDAuODc1cmVtOyAgICAgICAgLy8gMTRweFxuJGZvbnQtc2l6ZS1sZzogMS4xMjVyZW07ICAgICAgICAvLyAxOHB4XG4kZm9udC1zaXplLXhsOiAxLjI1cmVtOyAgICAgICAgIC8vIDIwcHhcblxuJGZvbnQtd2VpZ2h0LW5vcm1hbDogNDAwO1xuJGZvbnQtd2VpZ2h0LW1lZGl1bTogNTAwO1xuJGZvbnQtd2VpZ2h0LWJvbGQ6IDcwMDtcblxuLy8gU3BhY2luZ1xuJHNwYWNlcjogMXJlbTsgICAgICAgICAgICAgICAgICAvLyBCYXNlIHNwYWNpbmcgdW5pdFxuJGNvbnRhaW5lci1tYXgtd2lkdGg6IDEzNjVweDsgICAvLyBNYXggd2lkdGggY29uc3RyYWludFxuJGdyaWQtYnJlYWtwb2ludHM6IChcbiAgeHM6IDAsXG4gIHNtOiA1NzZweCxcbiAgbWQ6IDc2OHB4LFxuICBsZzogOTkycHgsXG4gIHhsOiAxMjAwcHgsXG4gIHh4bDogMTQwMHB4XG4pO1xuXG4vLyBCb3JkZXIgcmFkaXVzXG4kYm9yZGVyLXJhZGl1cy1zbTogNHB4O1xuJGJvcmRlci1yYWRpdXM6IDhweDtcbiRib3JkZXItcmFkaXVzLWxnOiAxMnB4O1xuJGJvcmRlci1yYWRpdXMtY2lyY2xlOiA1MCU7XG5cbi8vIEJveCBzaGFkb3dzXG4kYm94LXNoYWRvdy1zbTogMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiRib3gtc2hhZG93OiAwIDRweCA2cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuJGJveC1zaGFkb3ctbGc6IDAgMTBweCAxNXB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcblxuLy8gWi1pbmRleCBzY2FsZXNcbiR6LWluZGV4LWRyb3Bkb3duOiAxMDAwO1xuJHotaW5kZXgtc3RpY2t5OiAxMDIwO1xuJHotaW5kZXgtZml4ZWQ6IDEwMzA7XG4kei1pbmRleC1tb2RhbC1iYWNrZHJvcDogMTA0MDtcbiR6LWluZGV4LW1vZGFsOiAxMDUwO1xuJHotaW5kZXgtcG9wb3ZlcjogMTA2MDtcbiR6LWluZGV4LXRvb2x0aXA6IDEwNzA7XG5cbi8vIFRyYW5zaXRpb24gc3BlZWRzXG4kdHJhbnNpdGlvbi1zcGVlZC1mYXN0OiAwLjE1cztcbiR0cmFuc2l0aW9uLXNwZWVkOiAwLjNzO1xuJHRyYW5zaXRpb24tc3BlZWQtc2xvdzogMC41cztcblxuLy8gRm9ybSBlbGVtZW50cyByZW1vdmVkIC0gYmFja2VuZCBhbmQgZnJvbnRlbmQgaGF2ZSBzZXBhcmF0ZSBmb3JtIHN5c3RlbXNcbi8vIEVhY2ggc3lzdGVtIGRlZmluZXMgaXRzIG93biBmb3JtIHZhcmlhYmxlcyB0byBwcmV2ZW50IGNvbmZsaWN0c1xuXG4vLyBCdXR0b25zXG4kYnRuLXBhZGRpbmcteTogOHB4O1xuJGJ0bi1wYWRkaW5nLXg6IDIwcHg7XG4kYnRuLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuJGJ0bi1ib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiRidG4tdHJhbnNpdGlvbjogYWxsICR0cmFuc2l0aW9uLXNwZWVkIGVhc2U7IiwiLyoqXG4gKiBTaGFyZWQgTWl4aW5zXG4gKlxuICogUmV1c2FibGUgU0NTUyBtaXhpbnMgZm9yIGNvbnNpc3RlbnQgc3R5bGluZyBwYXR0ZXJuc1xuICovXG5cbi8vIE1lZGlhIHF1ZXJ5IG1peGlucyBmb3IgcmVzcG9uc2l2ZSBkZXNpZ25cbkBtaXhpbiByZXNwb25kLWJlbG93KCRicmVha3BvaW50KSB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkYnJlYWtwb2ludCkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiByZXNwb25kLWFib3ZlKCRicmVha3BvaW50KSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludCkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiByZXNwb25kLWJldHdlZW4oJG1pbiwgJG1heCkge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBGbGV4IGhlbHBlcnNcbkBtaXhpbiBmbGV4LWNlbnRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG5AbWl4aW4gZmxleC1iZXR3ZWVuIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuXG5AbWl4aW4gZmxleC1jb2x1bW4ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4vLyBIaWRlIHRleHQgYnV0IGtlZXAgYWNjZXNzaWJsZVxuQG1peGluIHZpc3VhbGx5LWhpZGRlbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogLTFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyLXdpZHRoOiAwO1xufVxuXG4vLyBUcnVuY2F0ZSB0ZXh0IHdpdGggZWxsaXBzaXNcbkBtaXhpbiB0ZXh0LXRydW5jYXRlIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi8vIE11bHRpLWxpbmUgdGV4dCB0cnVuY2F0aW9uXG5AbWl4aW4gbGluZS1jbGFtcCgkbGluZXM6IDIpIHtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIC13ZWJraXQtbGluZS1jbGFtcDogJGxpbmVzO1xuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cblxuLy8gQm94IHNoYWRvd3NcbkBtaXhpbiBib3gtc2hhZG93KCRsZXZlbDogMSkge1xuICBAaWYgJGxldmVsID09IDEge1xuICAgIGJveC1zaGFkb3c6ICRib3gtc2hhZG93LXNtO1xuICB9IEBlbHNlIGlmICRsZXZlbCA9PSAyIHtcbiAgICBib3gtc2hhZG93OiAkYm94LXNoYWRvdztcbiAgfSBAZWxzZSBpZiAkbGV2ZWwgPT0gMyB7XG4gICAgYm94LXNoYWRvdzogJGJveC1zaGFkb3ctbGc7XG4gIH1cbn1cblxuLy8gSG92ZXIgdHJhbnNpdGlvblxuQG1peGluIGhvdmVyLWxpZnQge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLCBib3gtc2hhZG93IDAuM3MgZWFzZTtcbiAgXG4gICY6aG92ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KDIpO1xuICB9XG59XG5cbi8vIEJhZGdlIHN0eWxpbmdcbkBtaXhpbiBiYWRnZSgkYmctY29sb3IsICR0ZXh0LWNvbG9yOiAjZmZmZmZmKSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMC4yNWVtIDAuNjI1ZW07XG4gIGZvbnQtc2l6ZTogMC43NWVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWNvbG9yO1xufVxuXG4vLyBCdXR0b24gc3R5bGVzXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoJGJnLWNvbG9yLCAkdGV4dC1jb2xvcjogI2ZmZmZmZiwgJGhvdmVyLWJnOiBudWxsKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiZy1jb2xvcjtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6ICRidG4tYm9yZGVyLXJhZGl1cztcbiAgcGFkZGluZzogJGJ0bi1wYWRkaW5nLXkgJGJ0bi1wYWRkaW5nLXg7XG4gIGZvbnQtd2VpZ2h0OiAkYnRuLWZvbnQtd2VpZ2h0O1xuICB0cmFuc2l0aW9uOiAkYnRuLXRyYW5zaXRpb247XG4gIFxuICBAaWYgJGhvdmVyLWJnID09IG51bGwge1xuICAgICRob3Zlci1iZzogbGlnaHRlbigkYmctY29sb3IsIDEwJSk7XG4gIH1cbiAgXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iZztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG4gICAgYm94LXNoYWRvdzogMCA0cHggNnB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgfVxuICBcbiAgJjphY3RpdmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuICBcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYSgkYmctY29sb3IsIDAuMjUpO1xuICB9XG4gIFxuICAmOmRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAwLjY1O1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIH1cbn1cblxuLy8gQ29udGFpbmVyIHdpdGggbWF4IHdpZHRoXG5AbWl4aW4gY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgXG4gIEBpbmNsdWRlIHJlc3BvbmQtYWJvdmUobWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgbWQpKSB7XG4gICAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDJyZW07XG4gIH1cbn1cblxuLy8gQ3VzdG9tIHNjcm9sbGJhciBzdHlsaW5nXG5AbWl4aW4gY3VzdG9tLXNjcm9sbGJhcigkdGh1bWItY29sb3I6ICRtaWQtZ3JheSwgJHRyYWNrLWNvbG9yOiB0cmFuc3BhcmVudCkge1xuICBzY3JvbGxiYXItd2lkdGg6IHRoaW47XG4gIHNjcm9sbGJhci1jb2xvcjogJHRodW1iLWNvbG9yICR0cmFjay1jb2xvcjtcbiAgXG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICB3aWR0aDogNXB4O1xuICAgIGhlaWdodDogNXB4O1xuICB9XG4gIFxuICAmOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgYmFja2dyb3VuZDogJHRyYWNrLWNvbG9yO1xuICB9XG4gIFxuICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1iLWNvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkdGh1bWItY29sb3IsIDEwJSk7XG4gICAgfVxuICB9XG59XG5cbi8vIENsZWFyZml4XG5AbWl4aW4gY2xlYXJmaXgge1xuICAmOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4vLyBBc3BlY3QgcmF0aW8gYm94XG5AbWl4aW4gYXNwZWN0LXJhdGlvKCR3aWR0aCwgJGhlaWdodCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIFxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy10b3A6ICgkaGVpZ2h0IC8gJHdpZHRoKSAqIDEwMCU7XG4gIH1cbiAgXG4gID4gKiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufSIsIi8qKlxuICogRnJvbnRlbmQgVmFyaWFibGVzXG4gKlxuICogRnJvbnRlbmQtc3BlY2lmaWMgdmFyaWFibGUgb3ZlcnJpZGVzIGFuZCBjdXN0b20gdmFsdWVzLlxuICogVGhlc2UgdmFyaWFibGVzIGFyZSBsb2FkZWQgYmVmb3JlIEJvb3RzdHJhcCB0byBvdmVycmlkZSBkZWZhdWx0cy5cbiAqL1xuXG4vLyBJbXBvcnQgc2hhcmVkIHZhcmlhYmxlcyBmaXJzdFxuQGltcG9ydCBcIi4uLy4uL3NoYXJlZC9jb3JlL3ZhcmlhYmxlc1wiO1xuXG4vLyBGcm9udGVuZC1zcGVjaWZpYyBCb290c3RyYXAgb3ZlcnJpZGVzXG4vLyBNT0RJRklFRCBCWSBIQU5TT05YWVogLSBTcXVhcmUgY29ybmVycyBmb3IgYWxsIGZyb250ZW5kIGJ1dHRvbnNcbiRidG4tYm9yZGVyLXJhZGl1czogMDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbTogMDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sZzogMDtcblxuLy8gRnJvbnRlbmQtc3BlY2lmaWMgY29sb3Igb3ZlcnJpZGVzXG4kcHJpbWFyeTogIzFlMWU1NjtcbiRib3JkZXItY29sb3I6ICNiNmI2YjY7XG5cbi8vIEZyb250ZW5kLXNwZWNpZmljIHNwYWNpbmdcbiRjb250YWluZXItcGFkZGluZy1tb2JpbGU6IDAuMjVyZW07XG4kY29udGFpbmVyLXBhZGRpbmctc21hbGw6IDAuNXJlbTtcblxuJGZvbnQtZmFtaWx5LWJhc2U6IFwiUG9wcGluc1wiLCBcIlNvdXJjZSBTYW5zIFByb1wiLCBzYW5zLXNlcmlmO1xuXG4vLyBGcm9udGVuZC1zcGVjaWZpYyB0eXBvZ3JhcGh5XG4kZnJvbnRlbmQtaGVhZGluZy1mb250OiBcIlBsYXlmYWlyIERpc3BsYXlcIiwgc2VyaWY7XG5cbiRmcm9udGVuZC1ib2R5LWZvbnQ6ICRmb250LWZhbWlseS1iYXNlO1xuXG4vLyBGcm9udGVuZC1zcGVjaWZpYyBjb21wb25lbnQgc2l6ZXNcbiRmcm9udGVuZC1oZWFkZXItaGVpZ2h0OiA4MHB4O1xuJGZyb250ZW5kLWZvb3Rlci1oZWlnaHQ6IDIwMHB4O1xuIiwiOnJvb3QsXG5bZGF0YS1icy10aGVtZT1cImxpZ2h0XCJdIHtcbiAgLy8gTm90ZTogQ3VzdG9tIHZhcmlhYmxlIHZhbHVlcyBvbmx5IHN1cHBvcnQgU2Fzc1NjcmlwdCBpbnNpZGUgYCN7fWAuXG5cbiAgLy8gQ29sb3JzXG4gIC8vXG4gIC8vIEdlbmVyYXRlIHBhbGV0dGVzIGZvciBmdWxsIGNvbG9ycywgZ3JheXMsIGFuZCB0aGVtZSBjb2xvcnMuXG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJGNvbG9ycyB7XG4gICAgLS0jeyRwcmVmaXh9I3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkZ3JheXMge1xuICAgIC0tI3skcHJlZml4fWdyYXktI3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtcmdiIHtcbiAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn0tcmdiOiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzLXRleHQge1xuICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfS10ZXh0LWVtcGhhc2lzOiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzLWJnLXN1YnRsZSB7XG4gICAgLS0jeyRwcmVmaXh9I3skY29sb3J9LWJnLXN1YnRsZTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy1ib3JkZXItc3VidGxlIHtcbiAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn0tYm9yZGVyLXN1YnRsZTogI3skdmFsdWV9O1xuICB9XG5cbiAgLS0jeyRwcmVmaXh9d2hpdGUtcmdiOiAje3RvLXJnYigkd2hpdGUpfTtcbiAgLS0jeyRwcmVmaXh9YmxhY2stcmdiOiAje3RvLXJnYigkYmxhY2spfTtcblxuICAvLyBGb250c1xuXG4gIC8vIE5vdGU6IFVzZSBgaW5zcGVjdGAgZm9yIGxpc3RzIHNvIHRoYXQgcXVvdGVkIGl0ZW1zIGtlZXAgdGhlIHF1b3Rlcy5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL3Nhc3MvaXNzdWVzLzIzODMjaXNzdWVjb21tZW50LTMzNjM0OTE3MlxuICAtLSN7JHByZWZpeH1mb250LXNhbnMtc2VyaWY6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktc2Fucy1zZXJpZil9O1xuICAtLSN7JHByZWZpeH1mb250LW1vbm9zcGFjZTogI3tpbnNwZWN0KCRmb250LWZhbWlseS1tb25vc3BhY2UpfTtcbiAgLS0jeyRwcmVmaXh9Z3JhZGllbnQ6ICN7JGdyYWRpZW50fTtcblxuICAvLyBSb290IGFuZCBib2R5XG4gIC8vIHNjc3MtZG9jcy1zdGFydCByb290LWJvZHktdmFyaWFibGVzXG4gIEBpZiAkZm9udC1zaXplLXJvb3QgIT0gbnVsbCB7XG4gICAgLS0jeyRwcmVmaXh9cm9vdC1mb250LXNpemU6ICN7JGZvbnQtc2l6ZS1yb290fTtcbiAgfVxuICAtLSN7JHByZWZpeH1ib2R5LWZvbnQtZmFtaWx5OiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LWJhc2UpfTtcbiAgQGluY2x1ZGUgcmZzKCRmb250LXNpemUtYmFzZSwgLS0jeyRwcmVmaXh9Ym9keS1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1ib2R5LWZvbnQtd2VpZ2h0OiAjeyRmb250LXdlaWdodC1iYXNlfTtcbiAgLS0jeyRwcmVmaXh9Ym9keS1saW5lLWhlaWdodDogI3skbGluZS1oZWlnaHQtYmFzZX07XG4gIEBpZiAkYm9keS10ZXh0LWFsaWduICE9IG51bGwge1xuICAgIC0tI3skcHJlZml4fWJvZHktdGV4dC1hbGlnbjogI3skYm9keS10ZXh0LWFsaWdufTtcbiAgfVxuXG4gIC0tI3skcHJlZml4fWJvZHktY29sb3I6ICN7JGJvZHktY29sb3J9O1xuICAtLSN7JHByZWZpeH1ib2R5LWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktY29sb3IpfTtcbiAgLS0jeyRwcmVmaXh9Ym9keS1iZzogI3skYm9keS1iZ307XG4gIC0tI3skcHJlZml4fWJvZHktYmctcmdiOiAje3RvLXJnYigkYm9keS1iZyl9O1xuXG4gIC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yOiAjeyRib2R5LWVtcGhhc2lzLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiOiAje3RvLXJnYigkYm9keS1lbXBoYXNpcy1jb2xvcil9O1xuXG4gIC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcjogI3skYm9keS1zZWNvbmRhcnktY29sb3J9O1xuICAtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3ItcmdiOiAje3RvLXJnYigkYm9keS1zZWNvbmRhcnktY29sb3IpfTtcbiAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnOiAjeyRib2R5LXNlY29uZGFyeS1iZ307XG4gIC0tI3skcHJlZml4fXNlY29uZGFyeS1iZy1yZ2I6ICN7dG8tcmdiKCRib2R5LXNlY29uZGFyeS1iZyl9O1xuXG4gIC0tI3skcHJlZml4fXRlcnRpYXJ5LWNvbG9yOiAjeyRib2R5LXRlcnRpYXJ5LWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dGVydGlhcnktY29sb3ItcmdiOiAje3RvLXJnYigkYm9keS10ZXJ0aWFyeS1jb2xvcil9O1xuICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZzogI3skYm9keS10ZXJ0aWFyeS1iZ307XG4gIC0tI3skcHJlZml4fXRlcnRpYXJ5LWJnLXJnYjogI3t0by1yZ2IoJGJvZHktdGVydGlhcnktYmcpfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCByb290LWJvZHktdmFyaWFibGVzXG5cbiAgLS0jeyRwcmVmaXh9aGVhZGluZy1jb2xvcjogI3skaGVhZGluZ3MtY29sb3J9O1xuXG4gIC0tI3skcHJlZml4fWxpbmstY29sb3I6ICN7JGxpbmstY29sb3J9O1xuICAtLSN7JHByZWZpeH1saW5rLWNvbG9yLXJnYjogI3t0by1yZ2IoJGxpbmstY29sb3IpfTtcbiAgLS0jeyRwcmVmaXh9bGluay1kZWNvcmF0aW9uOiAjeyRsaW5rLWRlY29yYXRpb259O1xuXG4gIC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3I6ICN7JGxpbmstaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1saW5rLWhvdmVyLWNvbG9yLXJnYjogI3t0by1yZ2IoJGxpbmstaG92ZXItY29sb3IpfTtcblxuICBAaWYgJGxpbmstaG92ZXItZGVjb3JhdGlvbiAhPSBudWxsIHtcbiAgICAtLSN7JHByZWZpeH1saW5rLWhvdmVyLWRlY29yYXRpb246ICN7JGxpbmstaG92ZXItZGVjb3JhdGlvbn07XG4gIH1cblxuICAtLSN7JHByZWZpeH1jb2RlLWNvbG9yOiAjeyRjb2RlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9aGlnaGxpZ2h0LWJnOiAjeyRtYXJrLWJnfTtcblxuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcm9vdC1ib3JkZXItdmFyXG4gIC0tI3skcHJlZml4fWJvcmRlci13aWR0aDogI3skYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXN0eWxlOiAjeyRib3JkZXItc3R5bGV9O1xuICAtLSN7JHByZWZpeH1ib3JkZXItY29sb3I6ICN7JGJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJvcmRlci1jb2xvci10cmFuc2x1Y2VudDogI3skYm9yZGVyLWNvbG9yLXRyYW5zbHVjZW50fTtcblxuICAtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzOiAjeyRib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1zbTogI3skYm9yZGVyLXJhZGl1cy1zbX07XG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtbGc6ICN7JGJvcmRlci1yYWRpdXMtbGd9O1xuICAtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXhsOiAjeyRib3JkZXItcmFkaXVzLXhsfTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy14eGw6ICN7JGJvcmRlci1yYWRpdXMteHhsfTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy0yeGw6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXh4bCk7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMy4wIGZvciBjb25zaXN0ZW5jeVxuICAtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXBpbGw6ICN7JGJvcmRlci1yYWRpdXMtcGlsbH07XG4gIC8vIHNjc3MtZG9jcy1lbmQgcm9vdC1ib3JkZXItdmFyXG5cbiAgLS0jeyRwcmVmaXh9Ym94LXNoYWRvdzogI3skYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWJveC1zaGFkb3ctc206ICN7JGJveC1zaGFkb3ctc219O1xuICAtLSN7JHByZWZpeH1ib3gtc2hhZG93LWxnOiAjeyRib3gtc2hhZG93LWxnfTtcbiAgLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1pbnNldDogI3skYm94LXNoYWRvdy1pbnNldH07XG5cbiAgLy8gRm9jdXMgc3R5bGVzXG4gIC8vIHNjc3MtZG9jcy1zdGFydCByb290LWZvY3VzLXZhcmlhYmxlc1xuICAtLSN7JHByZWZpeH1mb2N1cy1yaW5nLXdpZHRoOiAjeyRmb2N1cy1yaW5nLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9Zm9jdXMtcmluZy1vcGFjaXR5OiAjeyRmb2N1cy1yaW5nLW9wYWNpdHl9O1xuICAtLSN7JHByZWZpeH1mb2N1cy1yaW5nLWNvbG9yOiAjeyRmb2N1cy1yaW5nLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCByb290LWZvY3VzLXZhcmlhYmxlc1xuXG4gIC8vIHNjc3MtZG9jcy1zdGFydCByb290LWZvcm0tdmFsaWRhdGlvbi12YXJpYWJsZXNcbiAgLS0jeyRwcmVmaXh9Zm9ybS12YWxpZC1jb2xvcjogI3skZm9ybS12YWxpZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWZvcm0tdmFsaWQtYm9yZGVyLWNvbG9yOiAjeyRmb3JtLXZhbGlkLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWZvcm0taW52YWxpZC1jb2xvcjogI3skZm9ybS1pbnZhbGlkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Zm9ybS1pbnZhbGlkLWJvcmRlci1jb2xvcjogI3skZm9ybS1pbnZhbGlkLWJvcmRlci1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgcm9vdC1mb3JtLXZhbGlkYXRpb24tdmFyaWFibGVzXG59XG5cbkBpZiAkZW5hYmxlLWRhcmstbW9kZSB7XG4gIEBpbmNsdWRlIGNvbG9yLW1vZGUoZGFyaywgdHJ1ZSkge1xuICAgIGNvbG9yLXNjaGVtZTogZGFyaztcblxuICAgIC8vIHNjc3MtZG9jcy1zdGFydCByb290LWRhcmstbW9kZS12YXJzXG4gICAgLS0jeyRwcmVmaXh9Ym9keS1jb2xvcjogI3skYm9keS1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1ib2R5LWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktY29sb3ItZGFyayl9O1xuICAgIC0tI3skcHJlZml4fWJvZHktYmc6ICN7JGJvZHktYmctZGFya307XG4gICAgLS0jeyRwcmVmaXh9Ym9keS1iZy1yZ2I6ICN7dG8tcmdiKCRib2R5LWJnLWRhcmspfTtcblxuICAgIC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yOiAjeyRib2R5LWVtcGhhc2lzLWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktZW1waGFzaXMtY29sb3ItZGFyayl9O1xuXG4gICAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yOiAjeyRib2R5LXNlY29uZGFyeS1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3ItcmdiOiAje3RvLXJnYigkYm9keS1zZWNvbmRhcnktY29sb3ItZGFyayl9O1xuICAgIC0tI3skcHJlZml4fXNlY29uZGFyeS1iZzogI3skYm9keS1zZWNvbmRhcnktYmctZGFya307XG4gICAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnLXJnYjogI3t0by1yZ2IoJGJvZHktc2Vjb25kYXJ5LWJnLWRhcmspfTtcblxuICAgIC0tI3skcHJlZml4fXRlcnRpYXJ5LWNvbG9yOiAjeyRib2R5LXRlcnRpYXJ5LWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fXRlcnRpYXJ5LWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktdGVydGlhcnktY29sb3ItZGFyayl9O1xuICAgIC0tI3skcHJlZml4fXRlcnRpYXJ5LWJnOiAjeyRib2R5LXRlcnRpYXJ5LWJnLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fXRlcnRpYXJ5LWJnLXJnYjogI3t0by1yZ2IoJGJvZHktdGVydGlhcnktYmctZGFyayl9O1xuXG4gICAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy10ZXh0LWRhcmsge1xuICAgICAgLS0jeyRwcmVmaXh9I3skY29sb3J9LXRleHQtZW1waGFzaXM6ICN7JHZhbHVlfTtcbiAgICB9XG5cbiAgICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzLWJnLXN1YnRsZS1kYXJrIHtcbiAgICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfS1iZy1zdWJ0bGU6ICN7JHZhbHVlfTtcbiAgICB9XG5cbiAgICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzLWJvcmRlci1zdWJ0bGUtZGFyayB7XG4gICAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn0tYm9yZGVyLXN1YnRsZTogI3skdmFsdWV9O1xuICAgIH1cblxuICAgIC0tI3skcHJlZml4fWhlYWRpbmctY29sb3I6ICN7JGhlYWRpbmdzLWNvbG9yLWRhcmt9O1xuXG4gICAgLS0jeyRwcmVmaXh9bGluay1jb2xvcjogI3skbGluay1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1saW5rLWhvdmVyLWNvbG9yOiAjeyRsaW5rLWhvdmVyLWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWxpbmstY29sb3ItcmdiOiAje3RvLXJnYigkbGluay1jb2xvci1kYXJrKX07XG4gICAgLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvci1yZ2I6ICN7dG8tcmdiKCRsaW5rLWhvdmVyLWNvbG9yLWRhcmspfTtcblxuICAgIC0tI3skcHJlZml4fWNvZGUtY29sb3I6ICN7JGNvZGUtY29sb3ItZGFya307XG5cbiAgICAtLSN7JHByZWZpeH1ib3JkZXItY29sb3I6ICN7JGJvcmRlci1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQ6ICN7JGJvcmRlci1jb2xvci10cmFuc2x1Y2VudC1kYXJrfTtcblxuICAgIC0tI3skcHJlZml4fWZvcm0tdmFsaWQtY29sb3I6ICN7JGZvcm0tdmFsaWQtY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9Zm9ybS12YWxpZC1ib3JkZXItY29sb3I6ICN7JGZvcm0tdmFsaWQtYm9yZGVyLWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWZvcm0taW52YWxpZC1jb2xvcjogI3skZm9ybS1pbnZhbGlkLWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWZvcm0taW52YWxpZC1ib3JkZXItY29sb3I6ICN7JGZvcm0taW52YWxpZC1ib3JkZXItY29sb3ItZGFya307XG4gICAgLy8gc2Nzcy1kb2NzLWVuZCByb290LWRhcmstbW9kZS12YXJzXG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNjc3MvZGltZW5zaW9uLW5vLW5vbi1udW1lcmljLXZhbHVlc1xuXG4vLyBTQ1NTIFJGUyBtaXhpblxuLy9cbi8vIEF1dG9tYXRlZCByZXNwb25zaXZlIHZhbHVlcyBmb3IgZm9udCBzaXplcywgcGFkZGluZ3MsIG1hcmdpbnMgYW5kIG11Y2ggbW9yZVxuLy9cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvcmZzL2Jsb2IvbWFpbi9MSUNFTlNFKVxuXG4vLyBDb25maWd1cmF0aW9uXG5cbi8vIEJhc2UgdmFsdWVcbiRyZnMtYmFzZS12YWx1ZTogMS4yNXJlbSAhZGVmYXVsdDtcbiRyZnMtdW5pdDogcmVtICFkZWZhdWx0O1xuXG5AaWYgJHJmcy11bml0ICE9IHJlbSBhbmQgJHJmcy11bml0ICE9IHB4IHtcbiAgQGVycm9yIFwiYCN7JHJmcy11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy11bml0LiBVc2UgYHB4YCBvciBgcmVtYC5cIjtcbn1cblxuLy8gQnJlYWtwb2ludCBhdCB3aGVyZSB2YWx1ZXMgc3RhcnQgZGVjcmVhc2luZyBpZiBzY3JlZW4gd2lkdGggaXMgc21hbGxlclxuJHJmcy1icmVha3BvaW50OiAxMjAwcHggIWRlZmF1bHQ7XG4kcmZzLWJyZWFrcG9pbnQtdW5pdDogcHggIWRlZmF1bHQ7XG5cbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSBweCBhbmQgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gZW0gYW5kICRyZnMtYnJlYWtwb2ludC11bml0ICE9IHJlbSB7XG4gIEBlcnJvciBcImAjeyRyZnMtYnJlYWtwb2ludC11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy1icmVha3BvaW50LXVuaXQuIFVzZSBgcHhgLCBgZW1gIG9yIGByZW1gLlwiO1xufVxuXG4vLyBSZXNpemUgdmFsdWVzIGJhc2VkIG9uIHNjcmVlbiBoZWlnaHQgYW5kIHdpZHRoXG4kcmZzLXR3by1kaW1lbnNpb25hbDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIEZhY3RvciBvZiBkZWNyZWFzZVxuJHJmcy1mYWN0b3I6IDEwICFkZWZhdWx0O1xuXG5AaWYgdHlwZS1vZigkcmZzLWZhY3RvcikgIT0gbnVtYmVyIG9yICRyZnMtZmFjdG9yIDw9IDEge1xuICBAZXJyb3IgXCJgI3skcmZzLWZhY3Rvcn1gIGlzIG5vdCBhIHZhbGlkICAkcmZzLWZhY3RvciwgaXQgbXVzdCBiZSBncmVhdGVyIHRoYW4gMS5cIjtcbn1cblxuLy8gTW9kZS4gUG9zc2liaWxpdGllczogXCJtaW4tbWVkaWEtcXVlcnlcIiwgXCJtYXgtbWVkaWEtcXVlcnlcIlxuJHJmcy1tb2RlOiBtaW4tbWVkaWEtcXVlcnkgIWRlZmF1bHQ7XG5cbi8vIEdlbmVyYXRlIGVuYWJsZSBvciBkaXNhYmxlIGNsYXNzZXMuIFBvc3NpYmlsaXRpZXM6IGZhbHNlLCBcImVuYWJsZVwiIG9yIFwiZGlzYWJsZVwiXG4kcmZzLWNsYXNzOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gMSByZW0gPSAkcmZzLXJlbS12YWx1ZSBweFxuJHJmcy1yZW0tdmFsdWU6IDE2ICFkZWZhdWx0O1xuXG4vLyBTYWZhcmkgaWZyYW1lIHJlc2l6ZSBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9pc3N1ZXMvMTRcbiRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIERpc2FibGUgUkZTIGJ5IHNldHRpbmcgJGVuYWJsZS1yZnMgdG8gZmFsc2VcbiRlbmFibGUtcmZzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBDYWNoZSAkcmZzLWJhc2UtdmFsdWUgdW5pdFxuJHJmcy1iYXNlLXZhbHVlLXVuaXQ6IHVuaXQoJHJmcy1iYXNlLXZhbHVlKTtcblxuQGZ1bmN0aW9uIGRpdmlkZSgkZGl2aWRlbmQsICRkaXZpc29yLCAkcHJlY2lzaW9uOiAxMCkge1xuICAkc2lnbjogaWYoJGRpdmlkZW5kID4gMCBhbmQgJGRpdmlzb3IgPiAwIG9yICRkaXZpZGVuZCA8IDAgYW5kICRkaXZpc29yIDwgMCwgMSwgLTEpO1xuICAkZGl2aWRlbmQ6IGFicygkZGl2aWRlbmQpO1xuICAkZGl2aXNvcjogYWJzKCRkaXZpc29yKTtcbiAgQGlmICRkaXZpZGVuZCA9PSAwIHtcbiAgICBAcmV0dXJuIDA7XG4gIH1cbiAgQGlmICRkaXZpc29yID09IDAge1xuICAgIEBlcnJvciBcIkNhbm5vdCBkaXZpZGUgYnkgMFwiO1xuICB9XG4gICRyZW1haW5kZXI6ICRkaXZpZGVuZDtcbiAgJHJlc3VsdDogMDtcbiAgJGZhY3RvcjogMTA7XG4gIEB3aGlsZSAoJHJlbWFpbmRlciA+IDAgYW5kICRwcmVjaXNpb24gPj0gMCkge1xuICAgICRxdW90aWVudDogMDtcbiAgICBAd2hpbGUgKCRyZW1haW5kZXIgPj0gJGRpdmlzb3IpIHtcbiAgICAgICRyZW1haW5kZXI6ICRyZW1haW5kZXIgLSAkZGl2aXNvcjtcbiAgICAgICRxdW90aWVudDogJHF1b3RpZW50ICsgMTtcbiAgICB9XG4gICAgJHJlc3VsdDogJHJlc3VsdCAqIDEwICsgJHF1b3RpZW50O1xuICAgICRmYWN0b3I6ICRmYWN0b3IgKiAuMTtcbiAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyICogMTA7XG4gICAgJHByZWNpc2lvbjogJHByZWNpc2lvbiAtIDE7XG4gICAgQGlmICgkcHJlY2lzaW9uIDwgMCBhbmQgJHJlbWFpbmRlciA+PSAkZGl2aXNvciAqIDUpIHtcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKyAxO1xuICAgIH1cbiAgfVxuICAkcmVzdWx0OiAkcmVzdWx0ICogJGZhY3RvciAqICRzaWduO1xuICAkZGl2aWRlbmQtdW5pdDogdW5pdCgkZGl2aWRlbmQpO1xuICAkZGl2aXNvci11bml0OiB1bml0KCRkaXZpc29yKTtcbiAgJHVuaXQtbWFwOiAoXG4gICAgXCJweFwiOiAxcHgsXG4gICAgXCJyZW1cIjogMXJlbSxcbiAgICBcImVtXCI6IDFlbSxcbiAgICBcIiVcIjogMSVcbiAgKTtcbiAgQGlmICgkZGl2aWRlbmQtdW5pdCAhPSAkZGl2aXNvci11bml0IGFuZCBtYXAtaGFzLWtleSgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KSkge1xuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiBtYXAtZ2V0KCR1bml0LW1hcCwgJGRpdmlkZW5kLXVuaXQpO1xuICB9XG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuLy8gUmVtb3ZlIHB4LXVuaXQgZnJvbSAkcmZzLWJhc2UtdmFsdWUgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYmFzZS12YWx1ZS11bml0ID09IHB4IHtcbiAgJHJmcy1iYXNlLXZhbHVlOiBkaXZpZGUoJHJmcy1iYXNlLXZhbHVlLCAkcmZzLWJhc2UtdmFsdWUgKiAwICsgMSk7XG59XG5AZWxzZSBpZiAkcmZzLWJhc2UtdmFsdWUtdW5pdCA9PSByZW0ge1xuICAkcmZzLWJhc2UtdmFsdWU6IGRpdmlkZSgkcmZzLWJhc2UtdmFsdWUsIGRpdmlkZSgkcmZzLWJhc2UtdmFsdWUgKiAwICsgMSwgJHJmcy1yZW0tdmFsdWUpKTtcbn1cblxuLy8gQ2FjaGUgJHJmcy1icmVha3BvaW50IHVuaXQgdG8gcHJldmVudCBtdWx0aXBsZSBjYWxsc1xuJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGU6IHVuaXQoJHJmcy1icmVha3BvaW50KTtcblxuLy8gUmVtb3ZlIHVuaXQgZnJvbSAkcmZzLWJyZWFrcG9pbnQgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IHB4IHtcbiAgJHJmcy1icmVha3BvaW50OiBkaXZpZGUoJHJmcy1icmVha3BvaW50LCAkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSk7XG59XG5AZWxzZSBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSByZW0gb3IgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJlbVwiIHtcbiAgJHJmcy1icmVha3BvaW50OiBkaXZpZGUoJHJmcy1icmVha3BvaW50LCBkaXZpZGUoJHJmcy1icmVha3BvaW50ICogMCArIDEsICRyZnMtcmVtLXZhbHVlKSk7XG59XG5cbi8vIENhbGN1bGF0ZSB0aGUgbWVkaWEgcXVlcnkgdmFsdWVcbiRyZnMtbXEtdmFsdWU6IGlmKCRyZnMtYnJlYWtwb2ludC11bml0ID09IHB4LCAjeyRyZnMtYnJlYWtwb2ludH1weCwgI3tkaXZpZGUoJHJmcy1icmVha3BvaW50LCAkcmZzLXJlbS12YWx1ZSl9I3skcmZzLWJyZWFrcG9pbnQtdW5pdH0pO1xuJHJmcy1tcS1wcm9wZXJ0eS13aWR0aDogaWYoJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSwgbWF4LXdpZHRoLCBtaW4td2lkdGgpO1xuJHJmcy1tcS1wcm9wZXJ0eS1oZWlnaHQ6IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksIG1heC1oZWlnaHQsIG1pbi1oZWlnaHQpO1xuXG4vLyBJbnRlcm5hbCBtaXhpbiB1c2VkIHRvIGRldGVybWluZSB3aGljaCBtZWRpYSBxdWVyeSBuZWVkcyB0byBiZSB1c2VkXG5AbWl4aW4gX3Jmcy1tZWRpYS1xdWVyeSB7XG4gIEBpZiAkcmZzLXR3by1kaW1lbnNpb25hbCB7XG4gICAgQGlmICRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnkge1xuICAgICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSwgKCN7JHJmcy1tcS1wcm9wZXJ0eS1oZWlnaHR9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAbWVkaWEgKCN7JHJmcy1tcS1wcm9wZXJ0eS13aWR0aH06ICN7JHJmcy1tcS12YWx1ZX0pIGFuZCAoI3skcmZzLW1xLXByb3BlcnR5LWhlaWdodH06ICN7JHJmcy1tcS12YWx1ZX0pIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAbWVkaWEgKCN7JHJmcy1tcS1wcm9wZXJ0eS13aWR0aH06ICN7JHJmcy1tcS12YWx1ZX0pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBJbnRlcm5hbCBtaXhpbiB0aGF0IGFkZHMgZGlzYWJsZSBjbGFzc2VzIHRvIHRoZSBzZWxlY3RvciBpZiBuZWVkZWQuXG5AbWl4aW4gX3Jmcy1ydWxlIHtcbiAgQGlmICRyZnMtY2xhc3MgPT0gZGlzYWJsZSBhbmQgJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSB7XG4gICAgLy8gQWRkaW5nIGFuIGV4dHJhIGNsYXNzIGluY3JlYXNlcyBzcGVjaWZpY2l0eSwgd2hpY2ggcHJldmVudHMgdGhlIG1lZGlhIHF1ZXJ5IHRvIG92ZXJyaWRlIHRoZSBwcm9wZXJ0eVxuICAgICYsXG4gICAgLmRpc2FibGUtcmZzICYsXG4gICAgJi5kaXNhYmxlLXJmcyB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHJmcy1jbGFzcyA9PSBlbmFibGUgYW5kICRyZnMtbW9kZSA9PSBtaW4tbWVkaWEtcXVlcnkge1xuICAgIC5lbmFibGUtcmZzICYsXG4gICAgJi5lbmFibGUtcmZzIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gSW50ZXJuYWwgbWl4aW4gdGhhdCBhZGRzIGVuYWJsZSBjbGFzc2VzIHRvIHRoZSBzZWxlY3RvciBpZiBuZWVkZWQuXG5AbWl4aW4gX3Jmcy1tZWRpYS1xdWVyeS1ydWxlIHtcblxuICBAaWYgJHJmcy1jbGFzcyA9PSBlbmFibGUge1xuICAgIEBpZiAkcmZzLW1vZGUgPT0gbWluLW1lZGlhLXF1ZXJ5IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnkgKCkge1xuICAgICAgLmVuYWJsZS1yZnMgJixcbiAgICAgICYuZW5hYmxlLXJmcyB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQGlmICRyZnMtY2xhc3MgPT0gZGlzYWJsZSBhbmQgJHJmcy1tb2RlID09IG1pbi1tZWRpYS1xdWVyeSB7XG4gICAgICAuZGlzYWJsZS1yZnMgJixcbiAgICAgICYuZGlzYWJsZS1yZnMge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgX3Jmcy1tZWRpYS1xdWVyeSAoKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIGdldCB0aGUgZm9ybWF0dGVkIG5vbi1yZXNwb25zaXZlIHZhbHVlXG5AZnVuY3Rpb24gcmZzLXZhbHVlKCR2YWx1ZXMpIHtcbiAgLy8gQ29udmVydCB0byBsaXN0XG4gICR2YWx1ZXM6IGlmKHR5cGUtb2YoJHZhbHVlcykgIT0gbGlzdCwgKCR2YWx1ZXMsKSwgJHZhbHVlcyk7XG5cbiAgJHZhbDogXCJcIjtcblxuICAvLyBMb29wIG92ZXIgZWFjaCB2YWx1ZSBhbmQgY2FsY3VsYXRlIHZhbHVlXG4gIEBlYWNoICR2YWx1ZSBpbiAkdmFsdWVzIHtcbiAgICBAaWYgJHZhbHVlID09IDAge1xuICAgICAgJHZhbDogJHZhbCArIFwiIDBcIjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gQ2FjaGUgJHZhbHVlIHVuaXRcbiAgICAgICR1bml0OiBpZih0eXBlLW9mKCR2YWx1ZSkgPT0gXCJudW1iZXJcIiwgdW5pdCgkdmFsdWUpLCBmYWxzZSk7XG5cbiAgICAgIEBpZiAkdW5pdCA9PSBweCB7XG4gICAgICAgIC8vIENvbnZlcnQgdG8gcmVtIGlmIG5lZWRlZFxuICAgICAgICAkdmFsOiAkdmFsICsgXCIgXCIgKyBpZigkcmZzLXVuaXQgPT0gcmVtLCAje2RpdmlkZSgkdmFsdWUsICR2YWx1ZSAqIDAgKyAkcmZzLXJlbS12YWx1ZSl9cmVtLCAkdmFsdWUpO1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHVuaXQgPT0gcmVtIHtcbiAgICAgICAgLy8gQ29udmVydCB0byBweCBpZiBuZWVkZWRcbiAgICAgICAgJHZhbDogJHZhbCArIFwiIFwiICsgaWYoJHJmcy11bml0ID09IHB4LCAje2RpdmlkZSgkdmFsdWUsICR2YWx1ZSAqIDAgKyAxKSAqICRyZnMtcmVtLXZhbHVlfXB4LCAkdmFsdWUpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC8vIElmICR2YWx1ZSBpc24ndCBhIG51bWJlciAobGlrZSBpbmhlcml0KSBvciAkdmFsdWUgaGFzIGEgdW5pdCAobm90IHB4IG9yIHJlbSwgbGlrZSAxLjVlbSkgb3IgJCBpcyAwLCBqdXN0IHByaW50IHRoZSB2YWx1ZVxuICAgICAgICAkdmFsOiAkdmFsICsgXCIgXCIgKyAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUmVtb3ZlIGZpcnN0IHNwYWNlXG4gIEByZXR1cm4gdW5xdW90ZShzdHItc2xpY2UoJHZhbCwgMikpO1xufVxuXG4vLyBIZWxwZXIgZnVuY3Rpb24gdG8gZ2V0IHRoZSByZXNwb25zaXZlIHZhbHVlIGNhbGN1bGF0ZWQgYnkgUkZTXG5AZnVuY3Rpb24gcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZXMpIHtcbiAgLy8gQ29udmVydCB0byBsaXN0XG4gICR2YWx1ZXM6IGlmKHR5cGUtb2YoJHZhbHVlcykgIT0gbGlzdCwgKCR2YWx1ZXMsKSwgJHZhbHVlcyk7XG5cbiAgJHZhbDogXCJcIjtcblxuICAvLyBMb29wIG92ZXIgZWFjaCB2YWx1ZSBhbmQgY2FsY3VsYXRlIHZhbHVlXG4gIEBlYWNoICR2YWx1ZSBpbiAkdmFsdWVzIHtcbiAgICBAaWYgJHZhbHVlID09IDAge1xuICAgICAgJHZhbDogJHZhbCArIFwiIDBcIjtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIENhY2hlICR2YWx1ZSB1bml0XG4gICAgICAkdW5pdDogaWYodHlwZS1vZigkdmFsdWUpID09IFwibnVtYmVyXCIsIHVuaXQoJHZhbHVlKSwgZmFsc2UpO1xuXG4gICAgICAvLyBJZiAkdmFsdWUgaXNuJ3QgYSBudW1iZXIgKGxpa2UgaW5oZXJpdCkgb3IgJHZhbHVlIGhhcyBhIHVuaXQgKG5vdCBweCBvciByZW0sIGxpa2UgMS41ZW0pIG9yICQgaXMgMCwganVzdCBwcmludCB0aGUgdmFsdWVcbiAgICAgIEBpZiBub3QgJHVuaXQgb3IgJHVuaXQgIT0gcHggYW5kICR1bml0ICE9IHJlbSB7XG4gICAgICAgICR2YWw6ICR2YWwgKyBcIiBcIiArICR2YWx1ZTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBSZW1vdmUgdW5pdCBmcm9tICR2YWx1ZSBmb3IgY2FsY3VsYXRpb25zXG4gICAgICAgICR2YWx1ZTogZGl2aWRlKCR2YWx1ZSwgJHZhbHVlICogMCArIGlmKCR1bml0ID09IHB4LCAxLCBkaXZpZGUoMSwgJHJmcy1yZW0tdmFsdWUpKSk7XG5cbiAgICAgICAgLy8gT25seSBhZGQgdGhlIG1lZGlhIHF1ZXJ5IGlmIHRoZSB2YWx1ZSBpcyBncmVhdGVyIHRoYW4gdGhlIG1pbmltdW0gdmFsdWVcbiAgICAgICAgQGlmIGFicygkdmFsdWUpIDw9ICRyZnMtYmFzZS12YWx1ZSBvciBub3QgJGVuYWJsZS1yZnMge1xuICAgICAgICAgICR2YWw6ICR2YWwgKyBcIiBcIiArIGlmKCRyZnMtdW5pdCA9PSByZW0sICN7ZGl2aWRlKCR2YWx1ZSwgJHJmcy1yZW0tdmFsdWUpfXJlbSwgI3skdmFsdWV9cHgpO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAvLyBDYWxjdWxhdGUgdGhlIG1pbmltdW0gdmFsdWVcbiAgICAgICAgICAkdmFsdWUtbWluOiAkcmZzLWJhc2UtdmFsdWUgKyBkaXZpZGUoYWJzKCR2YWx1ZSkgLSAkcmZzLWJhc2UtdmFsdWUsICRyZnMtZmFjdG9yKTtcblxuICAgICAgICAgIC8vIENhbGN1bGF0ZSBkaWZmZXJlbmNlIGJldHdlZW4gJHZhbHVlIGFuZCB0aGUgbWluaW11bSB2YWx1ZVxuICAgICAgICAgICR2YWx1ZS1kaWZmOiBhYnMoJHZhbHVlKSAtICR2YWx1ZS1taW47XG5cbiAgICAgICAgICAvLyBCYXNlIHZhbHVlIGZvcm1hdHRpbmdcbiAgICAgICAgICAkbWluLXdpZHRoOiBpZigkcmZzLXVuaXQgPT0gcmVtLCAje2RpdmlkZSgkdmFsdWUtbWluLCAkcmZzLXJlbS12YWx1ZSl9cmVtLCAjeyR2YWx1ZS1taW59cHgpO1xuXG4gICAgICAgICAgLy8gVXNlIG5lZ2F0aXZlIHZhbHVlIGlmIG5lZWRlZFxuICAgICAgICAgICRtaW4td2lkdGg6IGlmKCR2YWx1ZSA8IDAsIC0kbWluLXdpZHRoLCAkbWluLXdpZHRoKTtcblxuICAgICAgICAgIC8vIFVzZSBgdm1pbmAgaWYgdHdvLWRpbWVuc2lvbmFsIGlzIGVuYWJsZWRcbiAgICAgICAgICAkdmFyaWFibGUtdW5pdDogaWYoJHJmcy10d28tZGltZW5zaW9uYWwsIHZtaW4sIHZ3KTtcblxuICAgICAgICAgIC8vIENhbGN1bGF0ZSB0aGUgdmFyaWFibGUgd2lkdGggYmV0d2VlbiAwIGFuZCAkcmZzLWJyZWFrcG9pbnRcbiAgICAgICAgICAkdmFyaWFibGUtd2lkdGg6ICN7ZGl2aWRlKCR2YWx1ZS1kaWZmICogMTAwLCAkcmZzLWJyZWFrcG9pbnQpfSN7JHZhcmlhYmxlLXVuaXR9O1xuXG4gICAgICAgICAgLy8gUmV0dXJuIHRoZSBjYWxjdWxhdGVkIHZhbHVlXG4gICAgICAgICAgJHZhbDogJHZhbCArIFwiIGNhbGMoXCIgKyAkbWluLXdpZHRoICsgaWYoJHZhbHVlIDwgMCwgXCIgLSBcIiwgXCIgKyBcIikgKyAkdmFyaWFibGUtd2lkdGggKyBcIilcIjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlbW92ZSBmaXJzdCBzcGFjZVxuICBAcmV0dXJuIHVucXVvdGUoc3RyLXNsaWNlKCR2YWwsIDIpKTtcbn1cblxuLy8gUkZTIG1peGluXG5AbWl4aW4gcmZzKCR2YWx1ZXMsICRwcm9wZXJ0eTogZm9udC1zaXplKSB7XG4gIEBpZiAkdmFsdWVzICE9IG51bGwge1xuICAgICR2YWw6IHJmcy12YWx1ZSgkdmFsdWVzKTtcbiAgICAkZmx1aWQtdmFsOiByZnMtZmx1aWQtdmFsdWUoJHZhbHVlcyk7XG5cbiAgICAvLyBEbyBub3QgcHJpbnQgdGhlIG1lZGlhIHF1ZXJ5IGlmIHJlc3BvbnNpdmUgJiBub24tcmVzcG9uc2l2ZSB2YWx1ZXMgYXJlIHRoZSBzYW1lXG4gICAgQGlmICR2YWwgPT0gJGZsdWlkLXZhbCB7XG4gICAgICAjeyRwcm9wZXJ0eX06ICR2YWw7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIF9yZnMtcnVsZSAoKSB7XG4gICAgICAgICN7JHByb3BlcnR5fTogaWYoJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSwgJHZhbCwgJGZsdWlkLXZhbCk7XG5cbiAgICAgICAgLy8gSW5jbHVkZSBzYWZhcmkgaWZyYW1lIHJlc2l6ZSBmaXggaWYgbmVlZGVkXG4gICAgICAgIG1pbi13aWR0aDogaWYoJHJmcy1zYWZhcmktaWZyYW1lLXJlc2l6ZS1idWctZml4LCAoMCAqIDF2dyksIG51bGwpO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBfcmZzLW1lZGlhLXF1ZXJ5LXJ1bGUgKCkge1xuICAgICAgICAjeyRwcm9wZXJ0eX06IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksICRmbHVpZC12YWwsICR2YWwpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBTaG9ydGhhbmQgaGVscGVyIG1peGluc1xuQG1peGluIGZvbnQtc2l6ZSgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSk7XG59XG5cbkBtaXhpbiBwYWRkaW5nKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nKTtcbn1cblxuQG1peGluIHBhZGRpbmctdG9wKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nLXRvcCk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLXJpZ2h0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nLXJpZ2h0KTtcbn1cblxuQG1peGluIHBhZGRpbmctYm90dG9tKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nLWJvdHRvbSk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLWxlZnQoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIHBhZGRpbmctbGVmdCk7XG59XG5cbkBtaXhpbiBtYXJnaW4oJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbik7XG59XG5cbkBtaXhpbiBtYXJnaW4tdG9wKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tdG9wKTtcbn1cblxuQG1peGluIG1hcmdpbi1yaWdodCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luLXJpZ2h0KTtcbn1cblxuQG1peGluIG1hcmdpbi1ib3R0b20oJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbi1ib3R0b20pO1xufVxuXG5AbWl4aW4gbWFyZ2luLWxlZnQoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbi1sZWZ0KTtcbn1cbiIsIi8vIHNjc3MtZG9jcy1zdGFydCBjb2xvci1tb2RlLW1peGluXG5AbWl4aW4gY29sb3ItbW9kZSgkbW9kZTogbGlnaHQsICRyb290OiBmYWxzZSkge1xuICBAaWYgJGNvbG9yLW1vZGUtdHlwZSA9PSBcIm1lZGlhLXF1ZXJ5XCIge1xuICAgIEBpZiAkcm9vdCA9PSB0cnVlIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6ICRtb2RlKSB7XG4gICAgICAgIDpyb290IHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogJG1vZGUpIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBbZGF0YS1icy10aGVtZT1cIiN7JG1vZGV9XCJdIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBjb2xvci1tb2RlLW1peGluXG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSwgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeFxuXG5cbi8vIFJlYm9vdFxuLy9cbi8vIE5vcm1hbGl6YXRpb24gb2YgSFRNTCBlbGVtZW50cywgbWFudWFsbHkgZm9ya2VkIGZyb20gTm9ybWFsaXplLmNzcyB0byByZW1vdmVcbi8vIHN0eWxlcyB0YXJnZXRpbmcgaXJyZWxldmFudCBicm93c2VycyB3aGlsZSBhcHBseWluZyBuZXcgc3R5bGVzLlxuLy9cbi8vIE5vcm1hbGl6ZSBpcyBsaWNlbnNlZCBNSVQuIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3NcblxuXG4vLyBEb2N1bWVudFxuLy9cbi8vIENoYW5nZSBmcm9tIGBib3gtc2l6aW5nOiBjb250ZW50LWJveGAgc28gdGhhdCBgd2lkdGhgIGlzIG5vdCBhZmZlY3RlZCBieSBgcGFkZGluZ2Agb3IgYGJvcmRlcmAuXG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cblxuLy8gUm9vdFxuLy9cbi8vIEFiaWxpdHkgdG8gdGhlIHZhbHVlIG9mIHRoZSByb290IGZvbnQgc2l6ZXMsIGFmZmVjdGluZyB0aGUgdmFsdWUgb2YgYHJlbWAuXG4vLyBudWxsIGJ5IGRlZmF1bHQsIHRodXMgbm90aGluZyBpcyBnZW5lcmF0ZWQuXG5cbjpyb290IHtcbiAgQGlmICRmb250LXNpemUtcm9vdCAhPSBudWxsIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fXJvb3QtZm9udC1zaXplKSk7XG4gIH1cblxuICBAaWYgJGVuYWJsZS1zbW9vdGgtc2Nyb2xsIHtcbiAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IG5vLXByZWZlcmVuY2UpIHtcbiAgICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEJvZHlcbi8vXG4vLyAxLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4vLyAyLiBBcyBhIGJlc3QgcHJhY3RpY2UsIGFwcGx5IGEgZGVmYXVsdCBgYmFja2dyb3VuZC1jb2xvcmAuXG4vLyAzLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbi8vIDQuIENoYW5nZSB0aGUgZGVmYXVsdCB0YXAgaGlnaGxpZ2h0IHRvIGJlIGNvbXBsZXRlbHkgdHJhbnNwYXJlbnQgaW4gaU9TLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcmVib290LWJvZHktcnVsZXNcbmJvZHkge1xuICBtYXJnaW46IDA7IC8vIDFcbiAgZm9udC1mYW1pbHk6IHZhcigtLSN7JHByZWZpeH1ib2R5LWZvbnQtZmFtaWx5KTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1ib2R5LWZvbnQtc2l6ZSkpO1xuICBmb250LXdlaWdodDogdmFyKC0tI3skcHJlZml4fWJvZHktZm9udC13ZWlnaHQpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tI3skcHJlZml4fWJvZHktbGluZS1oZWlnaHQpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpO1xuICB0ZXh0LWFsaWduOiB2YXIoLS0jeyRwcmVmaXh9Ym9keS10ZXh0LWFsaWduKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJvZHktYmcpOyAvLyAyXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gM1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoJGJsYWNrLCAwKTsgLy8gNFxufVxuLy8gc2Nzcy1kb2NzLWVuZCByZWJvb3QtYm9keS1ydWxlc1xuXG5cbi8vIENvbnRlbnQgZ3JvdXBpbmdcbi8vXG4vLyAxLiBSZXNldCBGaXJlZm94J3MgZ3JheSBjb2xvclxuXG5ociB7XG4gIG1hcmdpbjogJGhyLW1hcmdpbi15IDA7XG4gIGNvbG9yOiAkaHItY29sb3I7IC8vIDFcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAkaHItYm9yZGVyLXdpZHRoIHNvbGlkICRoci1ib3JkZXItY29sb3I7XG4gIG9wYWNpdHk6ICRoci1vcGFjaXR5O1xufVxuXG5cbi8vIFR5cG9ncmFwaHlcbi8vXG4vLyAxLiBSZW1vdmUgdG9wIG1hcmdpbnMgZnJvbSBoZWFkaW5nc1xuLy8gICAgQnkgZGVmYXVsdCwgYDxoMT5gLWA8aDY+YCBhbGwgcmVjZWl2ZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW5zLiBXZSBudWtlIHRoZSB0b3Bcbi8vICAgIG1hcmdpbiBmb3IgZWFzaWVyIGNvbnRyb2wgd2l0aGluIHR5cGUgc2NhbGVzIGFzIGl0IGF2b2lkcyBtYXJnaW4gY29sbGFwc2luZy5cblxuJWhlYWRpbmcge1xuICBtYXJnaW4tdG9wOiAwOyAvLyAxXG4gIG1hcmdpbi1ib3R0b206ICRoZWFkaW5ncy1tYXJnaW4tYm90dG9tO1xuICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICBmb250LXN0eWxlOiAkaGVhZGluZ3MtZm9udC1zdHlsZTtcbiAgZm9udC13ZWlnaHQ6ICRoZWFkaW5ncy1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodDtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1oZWFkaW5nLWNvbG9yKTtcbn1cblxuaDEge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGgxLWZvbnQtc2l6ZSk7XG59XG5cbmgyIHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoMi1mb250LXNpemUpO1xufVxuXG5oMyB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDMtZm9udC1zaXplKTtcbn1cblxuaDQge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGg0LWZvbnQtc2l6ZSk7XG59XG5cbmg1IHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoNS1mb250LXNpemUpO1xufVxuXG5oNiB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDYtZm9udC1zaXplKTtcbn1cblxuXG4vLyBSZXNldCBtYXJnaW5zIG9uIHBhcmFncmFwaHNcbi8vXG4vLyBTaW1pbGFybHksIHRoZSB0b3AgbWFyZ2luIG9uIGA8cD5gcyBnZXQgcmVzZXQuIEhvd2V2ZXIsIHdlIGFsc28gcmVzZXQgdGhlXG4vLyBib3R0b20gbWFyZ2luIHRvIHVzZSBgcmVtYCB1bml0cyBpbnN0ZWFkIG9mIGBlbWAuXG5cbnAge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG59XG5cblxuLy8gQWJicmV2aWF0aW9uc1xuLy9cbi8vIDEuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBPcGVyYSwgYW5kIFNhZmFyaS5cbi8vIDIuIEFkZCBleHBsaWNpdCBjdXJzb3IgdG8gaW5kaWNhdGUgY2hhbmdlZCBiZWhhdmlvci5cbi8vIDMuIFByZXZlbnQgdGhlIHRleHQtZGVjb3JhdGlvbiB0byBiZSBza2lwcGVkLlxuXG5hYmJyW3RpdGxlXSB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMVxuICBjdXJzb3I6IGhlbHA7IC8vIDJcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lOyAvLyAzXG59XG5cblxuLy8gQWRkcmVzc1xuXG5hZGRyZXNzIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuXG4vLyBMaXN0c1xuXG5vbCxcbnVsIHtcbiAgcGFkZGluZy1sZWZ0OiAycmVtO1xufVxuXG5vbCxcbnVsLFxuZGwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5vbCBvbCxcbnVsIHVsLFxub2wgdWwsXG51bCBvbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmR0IHtcbiAgZm9udC13ZWlnaHQ6ICRkdC1mb250LXdlaWdodDtcbn1cblxuLy8gMS4gVW5kbyBicm93c2VyIGRlZmF1bHRcblxuZGQge1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7IC8vIDFcbn1cblxuXG4vLyBCbG9ja3F1b3RlXG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5cbi8vIFN0cm9uZ1xuLy9cbi8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmlcblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZGVyO1xufVxuXG5cbi8vIFNtYWxsXG4vL1xuLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnNcblxuc21hbGwge1xuICBAaW5jbHVkZSBmb250LXNpemUoJHNtYWxsLWZvbnQtc2l6ZSk7XG59XG5cblxuLy8gTWFya1xuXG5tYXJrIHtcbiAgcGFkZGluZzogJG1hcmstcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWhpZ2hsaWdodC1iZyk7XG59XG5cblxuLy8gU3ViIGFuZCBTdXBcbi8vXG4vLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbi8vIGFsbCBicm93c2Vycy5cblxuc3ViLFxuc3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHN1Yi1zdXAtZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHsgYm90dG9tOiAtLjI1ZW07IH1cbnN1cCB7IHRvcDogLS41ZW07IH1cblxuXG4vLyBMaW5rc1xuXG5hIHtcbiAgY29sb3I6IHJnYmEodmFyKC0tI3skcHJlZml4fWxpbmstY29sb3ItcmdiKSwgdmFyKC0tI3skcHJlZml4fWxpbmstb3BhY2l0eSwgMSkpO1xuICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG5cbiAgJjpob3ZlciB7XG4gICAgLS0jeyRwcmVmaXh9bGluay1jb2xvci1yZ2I6IHZhcigtLSN7JHByZWZpeH1saW5rLWhvdmVyLWNvbG9yLXJnYik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG59XG5cbi8vIEFuZCB1bmRvIHRoZXNlIHN0eWxlcyBmb3IgcGxhY2Vob2xkZXIgbGlua3MvbmFtZWQgYW5jaG9ycyAod2l0aG91dCBocmVmKS5cbi8vIEl0IHdvdWxkIGJlIG1vcmUgc3RyYWlnaHRmb3J3YXJkIHRvIGp1c3QgdXNlIGFbaHJlZl0gaW4gcHJldmlvdXMgYmxvY2ssIGJ1dCB0aGF0XG4vLyBjYXVzZXMgc3BlY2lmaWNpdHkgaXNzdWVzIGluIG1hbnkgb3RoZXIgc3R5bGVzIHRoYXQgYXJlIHRvbyBjb21wbGV4IHRvIGZpeC5cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5NDAyXG5cbmE6bm90KFtocmVmXSk6bm90KFtjbGFzc10pIHtcbiAgJixcbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cblxuLy8gQ29kZVxuXG5wcmUsXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktY29kZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDFlbSk7IC8vIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbn1cblxuLy8gMS4gUmVtb3ZlIGJyb3dzZXIgZGVmYXVsdCB0b3AgbWFyZ2luXG4vLyAyLiBSZXNldCBicm93c2VyIGRlZmF1bHQgb2YgYDFlbWAgdG8gdXNlIGByZW1gc1xuLy8gMy4gRG9uJ3QgYWxsb3cgY29udGVudCB0byBicmVhayBvdXRzaWRlXG5cbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAwOyAvLyAxXG4gIG1hcmdpbi1ib3R0b206IDFyZW07IC8vIDJcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIDNcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjb2RlLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkcHJlLWNvbG9yO1xuXG4gIC8vIEFjY291bnQgZm9yIHNvbWUgY29kZSBvdXRwdXRzIHRoYXQgcGxhY2UgY29kZSB0YWdzIGluIHByZSB0YWdzXG4gIGNvZGUge1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIH1cbn1cblxuY29kZSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWNvZGUtY29sb3IpO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cbiAgLy8gU3RyZWFtbGluZSB0aGUgc3R5bGUgd2hlbiBpbnNpZGUgYW5jaG9ycyB0byBhdm9pZCBicm9rZW4gdW5kZXJsaW5lIGFuZCBtb3JlXG4gIGEgPiAmIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG5rYmQge1xuICBwYWRkaW5nOiAka2JkLXBhZGRpbmcteSAka2JkLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRrYmQtZm9udC1zaXplKTtcbiAgY29sb3I6ICRrYmQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRrYmQtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtc20pO1xuXG4gIGtiZCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoMWVtKTtcbiAgICBmb250LXdlaWdodDogJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ7XG4gIH1cbn1cblxuXG4vLyBGaWd1cmVzXG4vL1xuLy8gQXBwbHkgYSBjb25zaXN0ZW50IG1hcmdpbiBzdHJhdGVneSAobWF0Y2hlcyBvdXIgdHlwZSBzdHlsZXMpLlxuXG5maWd1cmUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5cbi8vIEltYWdlcyBhbmQgY29udGVudFxuXG5pbWcsXG5zdmcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG5cbi8vIFRhYmxlc1xuLy9cbi8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnNcblxudGFibGUge1xuICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAkdGFibGUtY2VsbC1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkdGFibGUtY2VsbC1wYWRkaW5nLXk7XG4gIGNvbG9yOiAkdGFibGUtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLy8gMS4gUmVtb3ZlcyBmb250LXdlaWdodCBib2xkIGJ5IGluaGVyaXRpbmdcbi8vIDIuIE1hdGNoZXMgZGVmYXVsdCBgPHRkPmAgYWxpZ25tZW50IGJ5IGluaGVyaXRpbmcgYHRleHQtYWxpZ25gLlxuLy8gMy4gRml4IGFsaWdubWVudCBmb3IgU2FmYXJpXG5cbnRoIHtcbiAgZm9udC13ZWlnaHQ6ICR0YWJsZS10aC1mb250LXdlaWdodDsgLy8gMVxuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyAyXG4gIHRleHQtYWxpZ246IC13ZWJraXQtbWF0Y2gtcGFyZW50OyAvLyAzXG59XG5cbnRoZWFkLFxudGJvZHksXG50Zm9vdCxcbnRyLFxudGQsXG50aCB7XG4gIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwO1xufVxuXG5cbi8vIEZvcm1zXG4vL1xuLy8gMS4gQWxsb3cgbGFiZWxzIHRvIHVzZSBgbWFyZ2luYCBmb3Igc3BhY2luZy5cblxubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIDFcbn1cblxuLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IGBib3JkZXItcmFkaXVzYCB0aGF0IG1hY09TIENocm9tZSBhZGRzLlxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQwOTNcblxuYnV0dG9uIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4vLyBFeHBsaWNpdGx5IHJlbW92ZSBmb2N1cyBvdXRsaW5lIGluIENocm9taXVtIHdoZW4gaXQgc2hvdWxkbid0IGJlXG4vLyB2aXNpYmxlIChlLmcuIGFzIHJlc3VsdCBvZiBtb3VzZSBjbGljayBvciB0b3VjaCB0YXApLiBJdCBhbHJlYWR5XG4vLyBzaG91bGQgYmUgZG9pbmcgdGhpcyBhdXRvbWF0aWNhbGx5LCBidXQgc2VlbXMgdG8gY3VycmVudGx5IGJlXG4vLyBjb25mdXNlZCBhbmQgYXBwbGllcyBpdHMgdmVyeSB2aXNpYmxlIHR3by10b25lIG91dGxpbmUgYW55d2F5LlxuXG5idXR0b246Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIDEuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaVxuXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbm9wdGdyb3VwLFxudGV4dGFyZWEge1xuICBtYXJnaW46IDA7IC8vIDFcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbi8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveFxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG4vLyBTZXQgdGhlIGN1cnNvciBmb3Igbm9uLWA8YnV0dG9uPmAgYnV0dG9uc1xuLy9cbi8vIERldGFpbHMgYXQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMzA1NjJcbltyb2xlPVwiYnV0dG9uXCJdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5zZWxlY3Qge1xuICAvLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHdvcmQtd3JhcCBpbiBTYWZhcmkuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0OTkwXG4gIHdvcmQtd3JhcDogbm9ybWFsO1xuXG4gIC8vIFVuZG8gdGhlIG9wYWNpdHkgY2hhbmdlIGZyb20gQ2hyb21lXG4gICY6ZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLy8gUmVtb3ZlIHRoZSBkcm9wZG93biBhcnJvdyBvbmx5IGZyb20gdGV4dCB0eXBlIGlucHV0cyBidWlsdCB3aXRoIGRhdGFsaXN0cyBpbiBDaHJvbWUuXG4vLyBTZWUgaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9hLzU0OTk3MTE4XG5cbltsaXN0XTpub3QoW3R5cGU9XCJkYXRlXCJdKTpub3QoW3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSk6bm90KFt0eXBlPVwibW9udGhcIl0pOm5vdChbdHlwZT1cIndlZWtcIl0pOm5vdChbdHlwZT1cInRpbWVcIl0pOjotd2Via2l0LWNhbGVuZGFyLXBpY2tlci1pbmRpY2F0b3Ige1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8vIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuLy8gICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuLy8gMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbi8vIDMuIE9waW5pb25hdGVkOiBhZGQgXCJoYW5kXCIgY3Vyc29yIHRvIG5vbi1kaXNhYmxlZCBidXR0b24gZWxlbWVudHMuXG5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLCAvLyAxXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxuXG4gIEBpZiAkZW5hYmxlLWJ1dHRvbi1wb2ludGVycyB7XG4gICAgJjpub3QoOmRpc2FibGVkKSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IC8vIDNcbiAgICB9XG4gIH1cbn1cblxuLy8gUmVtb3ZlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBmcm9tIEZpcmVmb3gsIGJ1dCBkb24ndCByZXN0b3JlIHRoZSBvdXRsaW5lIGxpa2UgTm9ybWFsaXplLlxuXG46Oi1tb3otZm9jdXMtaW5uZXIge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8vIDEuIFRleHRhcmVhcyBzaG91bGQgcmVhbGx5IG9ubHkgcmVzaXplIHZlcnRpY2FsbHkgc28gdGhleSBkb24ndCBicmVhayB0aGVpciAoaG9yaXpvbnRhbCkgY29udGFpbmVycy5cblxudGV4dGFyZWEge1xuICByZXNpemU6IHZlcnRpY2FsOyAvLyAxXG59XG5cbi8vIDEuIEJyb3dzZXJzIHNldCBhIGRlZmF1bHQgYG1pbi13aWR0aDogbWluLWNvbnRlbnQ7YCBvbiBmaWVsZHNldHMsXG4vLyAgICB1bmxpa2UgZS5nLiBgPGRpdj5gcywgd2hpY2ggaGF2ZSBgbWluLXdpZHRoOiAwO2AgYnkgZGVmYXVsdC5cbi8vICAgIFNvIHdlIHJlc2V0IHRoYXQgdG8gZW5zdXJlIGZpZWxkc2V0cyBiZWhhdmUgbW9yZSBsaWtlIGEgc3RhbmRhcmQgYmxvY2sgZWxlbWVudC5cbi8vICAgIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEyMzU5XG4vLyAgICBhbmQgaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvI3RoZS1maWVsZHNldC1hbmQtbGVnZW5kLWVsZW1lbnRzXG4vLyAyLiBSZXNldCB0aGUgZGVmYXVsdCBvdXRsaW5lIGJlaGF2aW9yIG9mIGZpZWxkc2V0cyBzbyB0aGV5IGRvbid0IGFmZmVjdCBwYWdlIGxheW91dC5cblxuZmllbGRzZXQge1xuICBtaW4td2lkdGg6IDA7IC8vIDFcbiAgcGFkZGluZzogMDsgLy8gMlxuICBtYXJnaW46IDA7IC8vIDJcbiAgYm9yZGVyOiAwOyAvLyAyXG59XG5cbi8vIDEuIEJ5IHVzaW5nIGBmbG9hdDogbGVmdGAsIHRoZSBsZWdlbmQgd2lsbCBiZWhhdmUgbGlrZSBhIGJsb2NrIGVsZW1lbnQuXG4vLyAgICBUaGlzIHdheSB0aGUgYm9yZGVyIG9mIGEgZmllbGRzZXQgd3JhcHMgYXJvdW5kIHRoZSBsZWdlbmQgaWYgcHJlc2VudC5cbi8vIDIuIEZpeCB3cmFwcGluZyBidWcuXG4vLyAgICBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yOTcxMlxuXG5sZWdlbmQge1xuICBmbG9hdDogbGVmdDsgLy8gMVxuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogJGxlZ2VuZC1tYXJnaW4tYm90dG9tO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGxlZ2VuZC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGxlZ2VuZC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG5cbiAgKyAqIHtcbiAgICBjbGVhcjogbGVmdDsgLy8gMlxuICB9XG59XG5cbi8vIEZpeCBoZWlnaHQgb2YgaW5wdXRzIHdpdGggYSB0eXBlIG9mIGRhdGV0aW1lLWxvY2FsLCBkYXRlLCBtb250aCwgd2Vlaywgb3IgdGltZVxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTg4NDJcblxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtZmllbGRzLXdyYXBwZXIsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC10ZXh0LFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtbWludXRlLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtaG91ci1maWVsZCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWRheS1maWVsZCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1vbnRoLWZpZWxkLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQteWVhci1maWVsZCB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLy8gMS4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4vLyAyLiBUaGlzIG92ZXJyaWRlcyB0aGUgZXh0cmEgcm91bmRlZCBjb3JuZXJzIG9uIHNlYXJjaCBpbnB1dHMgaW4gaU9TIHNvIHRoYXQgb3VyXG4vLyAgICBgLmZvcm0tY29udHJvbGAgY2xhc3MgY2FuIHByb3Blcmx5IHN0eWxlIHRoZW0uIE5vdGUgdGhhdCB0aGlzIGNhbm5vdCBzaW1wbHlcbi8vICAgIGJlIGFkZGVkIHRvIGAuZm9ybS1jb250cm9sYCBhcyBpdCdzIG5vdCBzcGVjaWZpYyBlbm91Z2guIEZvciBkZXRhaWxzLCBzZWVcbi8vICAgIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE1ODYuXG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8vIDFcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIDJcbn1cblxuLy8gMS4gQSBmZXcgaW5wdXQgdHlwZXMgc2hvdWxkIHN0YXkgTFRSXG4vLyBTZWUgaHR0cHM6Ly9ydGxzdHlsaW5nLmNvbS9wb3N0cy9ydGwtc3R5bGluZyNmb3JtLWlucHV0c1xuLy8gMi4gUlRMIG9ubHkgb3V0cHV0XG4vLyBTZWUgaHR0cHM6Ly9ydGxjc3MuY29tL2xlYXJuL3VzYWdlLWd1aWRlL2NvbnRyb2wtZGlyZWN0aXZlcy8jcmF3XG5cbi8qIHJ0bDpyYXc6XG5bdHlwZT1cInRlbFwiXSxcblt0eXBlPVwidXJsXCJdLFxuW3R5cGU9XCJlbWFpbFwiXSxcblt0eXBlPVwibnVtYmVyXCJdIHtcbiAgZGlyZWN0aW9uOiBsdHI7XG59XG4qL1xuXG4vLyBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG5cbjo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy8gUmVtb3ZlIHBhZGRpbmcgYXJvdW5kIGNvbG9yIHBpY2tlcnMgaW4gd2Via2l0IGJyb3dzZXJzXG5cbjo6LXdlYmtpdC1jb2xvci1zd2F0Y2gtd3JhcHBlciB7XG4gIHBhZGRpbmc6IDA7XG59XG5cblxuLy8gMS4gSW5oZXJpdCBmb250IGZhbWlseSBhbmQgbGluZSBoZWlnaHQgZm9yIGZpbGUgaW5wdXQgYnV0dG9uc1xuLy8gMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cblxuOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gIGZvbnQ6IGluaGVyaXQ7IC8vIDFcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcbn1cblxuLy8gQ29ycmVjdCBlbGVtZW50IGRpc3BsYXlzXG5cbm91dHB1dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLy8gUmVtb3ZlIGJvcmRlciBmcm9tIGlmcmFtZVxuXG5pZnJhbWUge1xuICBib3JkZXI6IDA7XG59XG5cbi8vIFN1bW1hcnlcbi8vXG4vLyAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnNcblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgLy8gMVxuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cblxuLy8gUHJvZ3Jlc3Ncbi8vXG4vLyBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuXG4vLyBIaWRkZW4gYXR0cmlidXRlXG4vL1xuLy8gQWx3YXlzIGhpZGUgYW4gZWxlbWVudCB3aXRoIHRoZSBgaGlkZGVuYCBIVE1MIGF0dHJpYnV0ZS5cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3Rcbi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIHJlcGxhY2UgbmVnYXRpdmUgdmFsdWVzIHdpdGggMFxuQGZ1bmN0aW9uIHZhbGlkLXJhZGl1cygkcmFkaXVzKSB7XG4gICRyZXR1cm46ICgpO1xuICBAZWFjaCAkdmFsdWUgaW4gJHJhZGl1cyB7XG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSBudW1iZXIge1xuICAgICAgJHJldHVybjogYXBwZW5kKCRyZXR1cm4sIG1heCgkdmFsdWUsIDApKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCAkdmFsdWUpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRyZXR1cm47XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBib3JkZXItcmFkaXVzLW1peGluc1xuQG1peGluIGJvcmRlci1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMsICRmYWxsYmFjay1ib3JkZXItcmFkaXVzOiBmYWxzZSkge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbiAgQGVsc2UgaWYgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXMgIT0gZmFsc2Uge1xuICAgIGJvcmRlci1yYWRpdXM6ICRmYWxsYmFjay1ib3JkZXItcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWVuZC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXN0YXJ0LXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXN0YXJ0LXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtZW5kLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLWVuZC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1zdGFydC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGJvcmRlci1yYWRpdXMtbWl4aW5zXG4iLCIvL1xuLy8gSGVhZGluZ3Ncbi8vXG4uaDEge1xuICBAZXh0ZW5kIGgxO1xufVxuXG4uaDIge1xuICBAZXh0ZW5kIGgyO1xufVxuXG4uaDMge1xuICBAZXh0ZW5kIGgzO1xufVxuXG4uaDQge1xuICBAZXh0ZW5kIGg0O1xufVxuXG4uaDUge1xuICBAZXh0ZW5kIGg1O1xufVxuXG4uaDYge1xuICBAZXh0ZW5kIGg2O1xufVxuXG5cbi5sZWFkIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRsZWFkLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkbGVhZC1mb250LXdlaWdodDtcbn1cblxuLy8gVHlwZSBkaXNwbGF5IGNsYXNzZXNcbkBlYWNoICRkaXNwbGF5LCAkZm9udC1zaXplIGluICRkaXNwbGF5LWZvbnQtc2l6ZXMge1xuICAuZGlzcGxheS0jeyRkaXNwbGF5fSB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUpO1xuICAgIGZvbnQtZmFtaWx5OiAkZGlzcGxheS1mb250LWZhbWlseTtcbiAgICBmb250LXN0eWxlOiAkZGlzcGxheS1mb250LXN0eWxlO1xuICAgIGZvbnQtd2VpZ2h0OiAkZGlzcGxheS1mb250LXdlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG4gIH1cbn1cblxuLy9cbi8vIEVtcGhhc2lzXG4vL1xuLnNtYWxsIHtcbiAgQGV4dGVuZCBzbWFsbDtcbn1cblxuLm1hcmsge1xuICBAZXh0ZW5kIG1hcms7XG59XG5cbi8vXG4vLyBMaXN0c1xuLy9cblxuLmxpc3QtdW5zdHlsZWQge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XG59XG5cbi8vIElubGluZSB0dXJucyBsaXN0IGl0ZW1zIGludG8gaW5saW5lLWJsb2NrXG4ubGlzdC1pbmxpbmUge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XG59XG4ubGlzdC1pbmxpbmUtaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1yaWdodDogJGxpc3QtaW5saW5lLXBhZGRpbmc7XG4gIH1cbn1cblxuXG4vL1xuLy8gTWlzY1xuLy9cblxuLy8gQnVpbGRzIG9uIGBhYmJyYFxuLmluaXRpYWxpc20ge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGluaXRpYWxpc20tZm9udC1zaXplKTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLy8gQmxvY2txdW90ZXNcbi5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luLWJvdHRvbTogJGJsb2NrcXVvdGUtbWFyZ2luLXk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmxvY2txdW90ZS1mb250LXNpemUpO1xuXG4gID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLmJsb2NrcXVvdGUtZm9vdGVyIHtcbiAgbWFyZ2luLXRvcDogLSRibG9ja3F1b3RlLW1hcmdpbi15O1xuICBtYXJnaW4tYm90dG9tOiAkYmxvY2txdW90ZS1tYXJnaW4teTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLWZvb3Rlci1mb250LXNpemUpO1xuICBjb2xvcjogJGJsb2NrcXVvdGUtZm9vdGVyLWNvbG9yO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXDIwMTRcXDAwQTBcIjsgLy8gZW0gZGFzaCwgbmJzcFxuICB9XG59XG4iLCIvLyBMaXN0c1xuXG4vLyBVbnN0eWxlZCBrZWVwcyBsaXN0IGl0ZW1zIGJsb2NrIGxldmVsLCBqdXN0IHJlbW92ZXMgZGVmYXVsdCBicm93c2VyIHBhZGRpbmcgYW5kIGxpc3Qtc3R5bGVcbkBtaXhpbiBsaXN0LXVuc3R5bGVkIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuIiwiLy8gUmVzcG9uc2l2ZSBpbWFnZXMgKGVuc3VyZSBpbWFnZXMgZG9uJ3Qgc2NhbGUgYmV5b25kIHRoZWlyIHBhcmVudHMpXG4vL1xuLy8gVGhpcyBpcyBwdXJwb3NlZnVsbHkgb3B0LWluIHZpYSBhbiBleHBsaWNpdCBjbGFzcyByYXRoZXIgdGhhbiBiZWluZyB0aGUgZGVmYXVsdCBmb3IgYWxsIGA8aW1nPmBzLlxuLy8gV2UgcHJldmlvdXNseSB0cmllZCB0aGUgXCJpbWFnZXMgYXJlIHJlc3BvbnNpdmUgYnkgZGVmYXVsdFwiIGFwcHJvYWNoIGluIEJvb3RzdHJhcCB2Mixcbi8vIGFuZCBhYmFuZG9uZWQgaXQgaW4gQm9vdHN0cmFwIHYzIGJlY2F1c2UgaXQgYnJlYWtzIGxvdHMgb2YgdGhpcmQtcGFydHkgd2lkZ2V0cyAoaW5jbHVkaW5nIEdvb2dsZSBNYXBzKVxuLy8gd2hpY2ggd2VyZW4ndCBleHBlY3RpbmcgdGhlIGltYWdlcyB3aXRoaW4gdGhlbXNlbHZlcyB0byBiZSBpbnZvbHVudGFyaWx5IHJlc2l6ZWQuXG4vLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE4MTc4XG4uaW1nLWZsdWlkIHtcbiAgQGluY2x1ZGUgaW1nLWZsdWlkKCk7XG59XG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuLmltZy10aHVtYm5haWwge1xuICBwYWRkaW5nOiAkdGh1bWJuYWlsLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0aHVtYm5haWwtYmc7XG4gIGJvcmRlcjogJHRodW1ibmFpbC1ib3JkZXItd2lkdGggc29saWQgJHRodW1ibmFpbC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkdGh1bWJuYWlsLWJveC1zaGFkb3cpO1xuXG4gIC8vIEtlZXAgdGhlbSBhdCBtb3N0IDEwMCUgd2lkZVxuICBAaW5jbHVkZSBpbWctZmx1aWQoKTtcbn1cblxuLy9cbi8vIEZpZ3VyZXNcbi8vXG5cbi5maWd1cmUge1xuICAvLyBFbnN1cmVzIHRoZSBjYXB0aW9uJ3MgdGV4dCBhbGlnbnMgd2l0aCB0aGUgaW1hZ2UuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmZpZ3VyZS1pbWcge1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyICogLjU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uZmlndXJlLWNhcHRpb24ge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkZmlndXJlLWNhcHRpb24tY29sb3I7XG59XG4iLCIvLyBJbWFnZSBNaXhpbnNcbi8vIC0gUmVzcG9uc2l2ZSBpbWFnZVxuLy8gLSBSZXRpbmEgaW1hZ2VcblxuXG4vLyBSZXNwb25zaXZlIGltYWdlXG4vL1xuLy8gS2VlcCBpbWFnZXMgZnJvbSBzY2FsaW5nIGJleW9uZCB0aGUgd2lkdGggb2YgdGhlaXIgcGFyZW50cy5cblxuQG1peGluIGltZy1mbHVpZCB7XG4gIC8vIFBhcnQgMTogU2V0IGEgbWF4aW11bSByZWxhdGl2ZSB0byB0aGUgcGFyZW50XG4gIG1heC13aWR0aDogMTAwJTtcbiAgLy8gUGFydCAyOiBPdmVycmlkZSB0aGUgaGVpZ2h0IHRvIGF1dG8sIG90aGVyd2lzZSBpbWFnZXMgd2lsbCBiZSBzdHJldGNoZWRcbiAgLy8gd2hlbiBzZXR0aW5nIGEgd2lkdGggYW5kIGhlaWdodCBhdHRyaWJ1dGUgb24gdGhlIGltZyBlbGVtZW50LlxuICBoZWlnaHQ6IGF1dG87XG59XG4iLCIvLyBDb250YWluZXIgd2lkdGhzXG4vL1xuLy8gU2V0IHRoZSBjb250YWluZXIgd2lkdGgsIGFuZCBvdmVycmlkZSBpdCBmb3IgZml4ZWQgbmF2YmFycyBpbiBtZWRpYSBxdWVyaWVzLlxuXG5AaWYgJGVuYWJsZS1jb250YWluZXItY2xhc3NlcyB7XG4gIC8vIFNpbmdsZSBjb250YWluZXIgY2xhc3Mgd2l0aCBicmVha3BvaW50IG1heC13aWR0aHNcbiAgLmNvbnRhaW5lcixcbiAgLy8gMTAwJSB3aWRlIGNvbnRhaW5lciBhdCBhbGwgYnJlYWtwb2ludHNcbiAgLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgQGluY2x1ZGUgbWFrZS1jb250YWluZXIoKTtcbiAgfVxuXG4gIC8vIFJlc3BvbnNpdmUgY29udGFpbmVycyB0aGF0IGFyZSAxMDAlIHdpZGUgdW50aWwgYSBicmVha3BvaW50XG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xuICAgIC5jb250YWluZXItI3skYnJlYWtwb2ludH0ge1xuICAgICAgQGV4dGVuZCAuY29udGFpbmVyLWZsdWlkO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgICAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH0ge1xuICAgICAgICBtYXgtd2lkdGg6ICRjb250YWluZXItbWF4LXdpZHRoO1xuICAgICAgfVxuXG4gICAgICAvLyBFeHRlbmQgZWFjaCBicmVha3BvaW50IHdoaWNoIGlzIHNtYWxsZXIgb3IgZXF1YWwgdG8gdGhlIGN1cnJlbnQgYnJlYWtwb2ludFxuICAgICAgJGV4dGVuZC1icmVha3BvaW50OiB0cnVlO1xuXG4gICAgICBAZWFjaCAkbmFtZSwgJHdpZHRoIGluICRncmlkLWJyZWFrcG9pbnRzIHtcbiAgICAgICAgQGlmICgkZXh0ZW5kLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRuYW1lLCAkZ3JpZC1icmVha3BvaW50cyl9IHtcbiAgICAgICAgICAgIEBleHRlbmQgJXJlc3BvbnNpdmUtY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIE9uY2UgdGhlIGN1cnJlbnQgYnJlYWtwb2ludCBpcyByZWFjaGVkLCBzdG9wIGV4dGVuZGluZ1xuICAgICAgICAgIEBpZiAoJGJyZWFrcG9pbnQgPT0gJG5hbWUpIHtcbiAgICAgICAgICAgICRleHRlbmQtYnJlYWtwb2ludDogZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBDb250YWluZXIgbWl4aW5zXG5cbi8vIE1PRElGSUVEIEJZIEhBTlNPTlhZWiAtIEN1c3RvbSByZXNwb25zaXZlIGNvbnRhaW5lciBwYWRkaW5nXG5AbWl4aW4gbWFrZS1jb250YWluZXIoJGd1dHRlcjogJGNvbnRhaW5lci1wYWRkaW5nLXgpIHtcbiAgLS0jeyRwcmVmaXh9Z3V0dGVyLXg6ICN7JGd1dHRlcn07XG4gIC0tI3skcHJlZml4fWd1dHRlci15OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgXG4gIC8vIEN1c3RvbSByZXNwb25zaXZlIHBhZGRpbmcgLSBuZWFybHkgbm90aGluZyBvbiBtb2JpbGUsIG5vcm1hbCBvbiBsYXJnZXIgc2NyZWVuc1xuICBwYWRkaW5nLXJpZ2h0OiAwLjQzNzVyZW07IC8vIDdweCBwYWRkaW5nIG9uIG1vYmlsZSAod2FzIDRweCwgYWRkZWQgM3B4KVxuICBwYWRkaW5nLWxlZnQ6IDAuNDM3NXJlbTtcbiAgXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gIH1cbiAgXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkgKiAuNSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkgKiAuNSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIH1cbn1cbiIsIi8vIEJyZWFrcG9pbnQgdmlld3BvcnQgc2l6ZXMgYW5kIG1lZGlhIHF1ZXJpZXMuXG4vL1xuLy8gQnJlYWtwb2ludHMgYXJlIGRlZmluZWQgYXMgYSBtYXAgb2YgKG5hbWU6IG1pbmltdW0gd2lkdGgpLCBvcmRlciBmcm9tIHNtYWxsIHRvIGxhcmdlOlxuLy9cbi8vICAgICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsIHh4bCkpXG4vLyAgICBtZFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEBpZiBub3QgJG4ge1xuICAgIEBlcnJvciBcImJyZWFrcG9pbnQgYCN7JG5hbWV9YCBub3QgZm91bmQgaW4gYCN7JGJyZWFrcG9pbnRzfWBcIjtcbiAgfVxuICBAcmV0dXJuIGlmKCRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIDU3NnB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xufVxuXG4vLyBNYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyByZWR1Y2VkIGJ5IDAuMDJweCB0byB3b3JrIGFyb3VuZCB0aGUgbGltaXRhdGlvbnMgb2Zcbi8vIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgobWQsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgNzY3Ljk4cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtYXggYW5kICRtYXggPiAwLCAkbWF4IC0gLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgXCJcIiAgKFJldHVybnMgYSBibGFuayBzdHJpbmcpXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIFwiLXNtXCJcbkBmdW5jdGlvbiBicmVha3BvaW50LWluZml4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEByZXR1cm4gaWYoYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cykgPT0gbnVsbCwgXCJcIiwgXCItI3skbmFtZX1cIik7XG59XG5cbi8vIE1lZGlhIG9mIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgd2lkZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtaW4ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIG9mIGF0IG1vc3QgdGhlIG1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBsYXJnZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtYXgge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIHRoYXQgc3BhbnMgbXVsdGlwbGUgYnJlYWtwb2ludCB3aWR0aHMuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgYmV0d2VlbiB0aGUgbWluIGFuZCBtYXggYnJlYWtwb2ludHNcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWJldHdlZW4oJGxvd2VyLCAkdXBwZXIsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJGxvd2VyLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkdXBwZXIsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGxvd2VyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkdXBwZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cbi8vIE5vIG1pbmltdW0gZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCBhbmQgbm8gbWF4aW11bSBmb3IgdGhlIGxhcmdlc3Qgb25lLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IG9ubHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQsIG5vdCB2aWV3cG9ydHMgYW55IHdpZGVyIG9yIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiAgYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6ICBicmVha3BvaW50LW1heCgkbmV4dCwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJG5leHQsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBSb3dcbi8vXG4vLyBSb3dzIGNvbnRhaW4geW91ciBjb2x1bW5zLlxuXG46cm9vdCB7XG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgIC0tI3skcHJlZml4fWJyZWFrcG9pbnQtI3skbmFtZX06ICN7JHZhbHVlfTtcbiAgfVxufVxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAucm93IHtcbiAgICBAaW5jbHVkZSBtYWtlLXJvdygpO1xuXG4gICAgPiAqIHtcbiAgICAgIEBpbmNsdWRlIG1ha2UtY29sLXJlYWR5KCk7XG4gICAgfVxuICB9XG59XG5cbkBpZiAkZW5hYmxlLWNzc2dyaWQge1xuICAuZ3JpZCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCh2YXIoLS0jeyRwcmVmaXh9cm93cywgMSksIDFmcik7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQodmFyKC0tI3skcHJlZml4fWNvbHVtbnMsICN7JGdyaWQtY29sdW1uc30pLCAxZnIpO1xuICAgIGdhcDogdmFyKC0tI3skcHJlZml4fWdhcCwgI3skZ3JpZC1ndXR0ZXItd2lkdGh9KTtcblxuICAgIEBpbmNsdWRlIG1ha2UtY3NzZ3JpZCgpO1xuICB9XG59XG5cblxuLy8gQ29sdW1uc1xuLy9cbi8vIENvbW1vbiBzdHlsZXMgZm9yIHNtYWxsIGFuZCBsYXJnZSBncmlkIGNvbHVtbnNcblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgQGluY2x1ZGUgbWFrZS1ncmlkLWNvbHVtbnMoKTtcbn1cbiIsIi8vIEdyaWQgc3lzdGVtXG4vL1xuLy8gR2VuZXJhdGUgc2VtYW50aWMgZ3JpZCBjb2x1bW5zIHdpdGggdGhlc2UgbWl4aW5zLlxuXG5AbWl4aW4gbWFrZS1yb3coJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIC0tI3skcHJlZml4fWd1dHRlci14OiAjeyRndXR0ZXJ9O1xuICAtLSN7JHByZWZpeH1ndXR0ZXIteTogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICAvLyBUT0RPOiBSZXZpc2l0IGNhbGMgb3JkZXIgYWZ0ZXIgaHR0cHM6Ly9naXRodWIuY29tL3JlYWN0LWJvb3RzdHJhcC9yZWFjdC1ib290c3RyYXAvaXNzdWVzLzYwMzkgaXMgZml4ZWRcbiAgbWFyZ2luLXRvcDogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteSkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tcmlnaHQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fWd1dHRlci14KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxufVxuXG5AbWl4aW4gbWFrZS1jb2wtcmVhZHkoKSB7XG4gIC8vIEFkZCBib3ggc2l6aW5nIGlmIG9ubHkgdGhlIGdyaWQgaXMgbG9hZGVkXG4gIGJveC1zaXppbmc6IGlmKHZhcmlhYmxlLWV4aXN0cyhpbmNsdWRlLWNvbHVtbi1ib3gtc2l6aW5nKSBhbmQgJGluY2x1ZGUtY29sdW1uLWJveC1zaXppbmcsIGJvcmRlci1ib3gsIG51bGwpO1xuICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBiZWNvbWluZyB0b28gbmFycm93IHdoZW4gYXQgc21hbGxlciBncmlkIHRpZXJzIGJ5XG4gIC8vIGFsd2F5cyBzZXR0aW5nIGB3aWR0aDogMTAwJTtgLiBUaGlzIHdvcmtzIGJlY2F1c2Ugd2Ugc2V0IHRoZSB3aWR0aFxuICAvLyBsYXRlciBvbiB0byBvdmVycmlkZSB0aGlzIGluaXRpYWwgd2lkdGguXG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyBQcmV2ZW50IGAuY29sLWF1dG9gLCBgLmNvbGAgKCYgcmVzcG9uc2l2ZSB2YXJpYW50cykgZnJvbSBicmVha2luZyBvdXQgdGhlIGdyaWRcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXgpICogLjUpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tI3skcHJlZml4fWd1dHRlci14KSAqIC41KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLXRvcDogdmFyKC0tI3skcHJlZml4fWd1dHRlci15KTtcbn1cblxuQG1peGluIG1ha2UtY29sKCRzaXplOiBmYWxzZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgQGlmICRzaXplIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogcGVyY2VudGFnZShkaXZpZGUoJHNpemUsICRjb2x1bW5zKSk7XG5cbiAgfSBAZWxzZSB7XG4gICAgZmxleDogMSAxIDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1hdXRvKCkge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IGF1dG87XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1vZmZzZXQoJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gICRudW06IGRpdmlkZSgkc2l6ZSwgJGNvbHVtbnMpO1xuICBtYXJnaW4tbGVmdDogaWYoJG51bSA9PSAwLCAwLCBwZXJjZW50YWdlKCRudW0pKTtcbn1cblxuLy8gUm93IGNvbHVtbnNcbi8vXG4vLyBTcGVjaWZ5IG9uIGEgcGFyZW50IGVsZW1lbnQoZS5nLiwgLnJvdykgdG8gZm9yY2UgaW1tZWRpYXRlIGNoaWxkcmVuIGludG8gTk5cbi8vIG51bWJlciBvZiBjb2x1bW5zLiBTdXBwb3J0cyB3cmFwcGluZyB0byBuZXcgbGluZXMsIGJ1dCBkb2VzIG5vdCBkbyBhIE1hc29ucnlcbi8vIHN0eWxlIGdyaWQuXG5AbWl4aW4gcm93LWNvbHMoJGNvdW50KSB7XG4gID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGRpdmlkZSgxMDAlLCAkY291bnQpO1xuICB9XG59XG5cbi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbkBtaXhpbiBtYWtlLWdyaWQtY29sdW1ucygkY29sdW1uczogJGdyaWQtY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRicmVha3BvaW50cykge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgLy8gUHJvdmlkZSBiYXNpYyBgLmNvbC17YnB9YCBjbGFzc2VzIGZvciBlcXVhbC13aWR0aCBmbGV4Ym94IGNvbHVtbnNcbiAgICAgIC5jb2wjeyRpbmZpeH0ge1xuICAgICAgICBmbGV4OiAxIDAgMCU7IC8vIEZsZXhidWdzICM0OiBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzI2ZsZXhidWctNFxuICAgICAgfVxuXG4gICAgICAucm93LWNvbHMjeyRpbmZpeH0tYXV0byA+ICoge1xuICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1hdXRvKCk7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkZ3JpZC1yb3ctY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLXJvdy1jb2x1bW5zIHtcbiAgICAgICAgICAucm93LWNvbHMjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgcm93LWNvbHMoJGkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1hdXRvKCk7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sKCRpLCAkY29sdW1ucyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gYCRjb2x1bW5zIC0gMWAgYmVjYXVzZSBvZmZzZXR0aW5nIGJ5IHRoZSB3aWR0aCBvZiBhbiBlbnRpcmUgcm93IGlzbid0IHBvc3NpYmxlXG4gICAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggKCRjb2x1bW5zIC0gMSkge1xuICAgICAgICAgIEBpZiBub3QgKCRpbmZpeCA9PSBcIlwiIGFuZCAkaSA9PSAwKSB7IC8vIEF2b2lkIGVtaXR0aW5nIHVzZWxlc3MgLm9mZnNldC0wXG4gICAgICAgICAgICAub2Zmc2V0I3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtb2Zmc2V0KCRpLCAkY29sdW1ucyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIEd1dHRlcnNcbiAgICAgIC8vXG4gICAgICAvLyBNYWtlIHVzZSBvZiBgLmctKmAsIGAuZ3gtKmAgb3IgYC5neS0qYCB1dGlsaXRpZXMgdG8gY2hhbmdlIHNwYWNpbmcgYmV0d2VlbiB0aGUgY29sdW1ucy5cbiAgICAgIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkZ3V0dGVycyB7XG4gICAgICAgIC5nI3skaW5maXh9LSN7JGtleX0sXG4gICAgICAgIC5neCN7JGluZml4fS0jeyRrZXl9IHtcbiAgICAgICAgICAtLSN7JHByZWZpeH1ndXR0ZXIteDogI3skdmFsdWV9O1xuICAgICAgICB9XG5cbiAgICAgICAgLmcjeyRpbmZpeH0tI3ska2V5fSxcbiAgICAgICAgLmd5I3skaW5maXh9LSN7JGtleX0ge1xuICAgICAgICAgIC0tI3skcHJlZml4fWd1dHRlci15OiAjeyR2YWx1ZX07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1ha2UtY3NzZ3JpZCgkY29sdW1uczogJGdyaWQtY29sdW1ucywgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgICAuZy1jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuICRpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFN0YXJ0IHdpdGggYDFgIGJlY2F1c2UgYDBgIGlzIGFuZCBpbnZhbGlkIHZhbHVlLlxuICAgICAgICAvLyBFbmRzIHdpdGggYCRjb2x1bW5zIC0gMWAgYmVjYXVzZSBvZmZzZXR0aW5nIGJ5IHRoZSB3aWR0aCBvZiBhbiBlbnRpcmUgcm93IGlzbid0IHBvc3NpYmxlLlxuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgICAuZy1zdGFydCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbi1zdGFydDogJGk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzaWMgQm9vdHN0cmFwIHRhYmxlXG4vL1xuXG4udGFibGUge1xuICAvLyBSZXNldCBuZWVkZWQgZm9yIG5lc3RpbmcgdGFibGVzXG4gIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXR5cGU6IGluaXRpYWw7XG4gIC0tI3skcHJlZml4fXRhYmxlLWJnLXR5cGU6IGluaXRpYWw7XG4gIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXN0YXRlOiBpbml0aWFsO1xuICAtLSN7JHByZWZpeH10YWJsZS1iZy1zdGF0ZTogaW5pdGlhbDtcbiAgLy8gRW5kIG9mIHJlc2V0XG4gIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yOiAjeyR0YWJsZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRhYmxlLWJnOiAjeyR0YWJsZS1iZ307XG4gIC0tI3skcHJlZml4fXRhYmxlLWJvcmRlci1jb2xvcjogI3skdGFibGUtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYWNjZW50LWJnOiAjeyR0YWJsZS1hY2NlbnQtYmd9O1xuICAtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yOiAjeyR0YWJsZS1zdHJpcGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1iZzogI3skdGFibGUtc3RyaXBlZC1iZ307XG4gIC0tI3skcHJlZml4fXRhYmxlLWFjdGl2ZS1jb2xvcjogI3skdGFibGUtYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYWN0aXZlLWJnOiAjeyR0YWJsZS1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH10YWJsZS1ob3Zlci1jb2xvcjogI3skdGFibGUtaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH10YWJsZS1ob3Zlci1iZzogI3skdGFibGUtaG92ZXItYmd9O1xuXG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuICB2ZXJ0aWNhbC1hbGlnbjogJHRhYmxlLWNlbGwtdmVydGljYWwtYWxpZ247XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRhYmxlLWJvcmRlci1jb2xvcik7XG5cbiAgLy8gVGFyZ2V0IHRoICYgdGRcbiAgLy8gV2UgbmVlZCB0aGUgY2hpbGQgY29tYmluYXRvciB0byBwcmV2ZW50IHN0eWxlcyBsZWFraW5nIHRvIG5lc3RlZCB0YWJsZXMgd2hpY2ggZG9lc24ndCBoYXZlIGEgYC50YWJsZWAgY2xhc3MuXG4gIC8vIFdlIHVzZSB0aGUgdW5pdmVyc2FsIHNlbGVjdG9ycyBoZXJlIHRvIHNpbXBsaWZ5IHRoZSBzZWxlY3RvciAoZWxzZSB3ZSB3b3VsZCBuZWVkIDYgZGlmZmVyZW50IHNlbGVjdG9ycykuXG4gIC8vIEFub3RoZXIgYWR2YW50YWdlIGlzIHRoYXQgdGhpcyBnZW5lcmF0ZXMgbGVzcyBjb2RlIGFuZCBtYWtlcyB0aGUgc2VsZWN0b3IgbGVzcyBzcGVjaWZpYyBtYWtpbmcgaXQgZWFzaWVyIHRvIG92ZXJyaWRlLlxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxuICA+IDpub3QoY2FwdGlvbikgPiAqID4gKiB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy15ICR0YWJsZS1jZWxsLXBhZGRpbmcteDtcbiAgICAvLyBGb2xsb3dpbmcgdGhlIHByZWNlcHQgb2YgY2FzY2FkZXM6IGh0dHBzOi8vY29kZXBlbi5pby9taXJpYW1zdXphbm5lL2Z1bGwvdllOZ29kYlxuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtY29sb3Itc3RhdGUsIHZhcigtLSN7JHByZWZpeH10YWJsZS1jb2xvci10eXBlLCB2YXIoLS0jeyRwcmVmaXh9dGFibGUtY29sb3IpKSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRhYmxlLWJnKTtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAkdGFibGUtYm9yZGVyLXdpZHRoO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDk5OTlweCB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYmctc3RhdGUsIHZhcigtLSN7JHByZWZpeH10YWJsZS1iZy10eXBlLCB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYWNjZW50LWJnKSkpO1xuICB9XG5cbiAgPiB0Ym9keSB7XG4gICAgdmVydGljYWwtYWxpZ246IGluaGVyaXQ7XG4gIH1cblxuICA+IHRoZWFkIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICB9XG59XG5cbi50YWJsZS1ncm91cC1kaXZpZGVyIHtcbiAgYm9yZGVyLXRvcDogY2FsYygjeyR0YWJsZS1ib3JkZXItd2lkdGh9ICogMikgc29saWQgJHRhYmxlLWdyb3VwLXNlcGFyYXRvci1jb2xvcjsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3Rcbn1cblxuLy9cbi8vIENoYW5nZSBwbGFjZW1lbnQgb2YgY2FwdGlvbnMgd2l0aCBhIGNsYXNzXG4vL1xuXG4uY2FwdGlvbi10b3Age1xuICBjYXB0aW9uLXNpZGU6IHRvcDtcbn1cblxuXG4vL1xuLy8gQ29uZGVuc2VkIHRhYmxlIHcvIGhhbGYgcGFkZGluZ1xuLy9cblxuLnRhYmxlLXNtIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC11bml2ZXJzYWxcbiAgPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmcteS1zbSAkdGFibGUtY2VsbC1wYWRkaW5nLXgtc207XG4gIH1cbn1cblxuXG4vLyBCb3JkZXIgdmVyc2lvbnNcbi8vXG4vLyBBZGQgb3IgcmVtb3ZlIGJvcmRlcnMgYWxsIGFyb3VuZCB0aGUgdGFibGUgYW5kIGJldHdlZW4gYWxsIHRoZSBjb2x1bW5zLlxuLy9cbi8vIFdoZW4gYm9yZGVycyBhcmUgYWRkZWQgb24gYWxsIHNpZGVzIG9mIHRoZSBjZWxscywgdGhlIGNvcm5lcnMgY2FuIHJlbmRlciBvZGQgd2hlblxuLy8gdGhlc2UgYm9yZGVycyBkbyBub3QgaGF2ZSB0aGUgc2FtZSBjb2xvciBvciBpZiB0aGV5IGFyZSBzZW1pLXRyYW5zcGFyZW50LlxuLy8gVGhlcmVmb3Igd2UgYWRkIHRvcCBhbmQgYm9yZGVyIGJvdHRvbXMgdG8gdGhlIGB0cmBzIGFuZCBsZWZ0IGFuZCByaWdodCBib3JkZXJzXG4vLyB0byB0aGUgYHRkYHMgb3IgYHRoYHNcblxuLnRhYmxlLWJvcmRlcmVkIHtcbiAgPiA6bm90KGNhcHRpb24pID4gKiB7XG4gICAgYm9yZGVyLXdpZHRoOiAkdGFibGUtYm9yZGVyLXdpZHRoIDA7XG5cbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxuICAgID4gKiB7XG4gICAgICBib3JkZXItd2lkdGg6IDAgJHRhYmxlLWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cbn1cblxuLnRhYmxlLWJvcmRlcmxlc3Mge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxuICA+IDpub3QoY2FwdGlvbikgPiAqID4gKiB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgfVxuXG4gID4gOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICB9XG59XG5cbi8vIFplYnJhLXN0cmlwaW5nXG4vL1xuLy8gRGVmYXVsdCB6ZWJyYS1zdHJpcGUgc3R5bGVzIChhbHRlcm5hdGluZyBncmF5IGFuZCB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcylcblxuLy8gRm9yIHJvd3Ncbi50YWJsZS1zdHJpcGVkIHtcbiAgPiB0Ym9keSA+IHRyOm50aC1vZi10eXBlKCN7JHRhYmxlLXN0cmlwZWQtb3JkZXJ9KSA+ICoge1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXR5cGU6IHZhcigtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yKTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1iZy10eXBlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1iZyk7XG4gIH1cbn1cblxuLy8gRm9yIGNvbHVtbnNcbi50YWJsZS1zdHJpcGVkLWNvbHVtbnMge1xuICA+IDpub3QoY2FwdGlvbikgPiB0ciA+IDpudGgtY2hpbGQoI3skdGFibGUtc3RyaXBlZC1jb2x1bW5zLW9yZGVyfSkge1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXR5cGU6IHZhcigtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yKTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1iZy10eXBlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1iZyk7XG4gIH1cbn1cblxuLy8gQWN0aXZlIHRhYmxlXG4vL1xuLy8gVGhlIGAudGFibGUtYWN0aXZlYCBjbGFzcyBjYW4gYmUgYWRkZWQgdG8gaGlnaGxpZ2h0IHJvd3Mgb3IgY2VsbHNcblxuLnRhYmxlLWFjdGl2ZSB7XG4gIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXN0YXRlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYWN0aXZlLWNvbG9yKTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYmctc3RhdGU6IHZhcigtLSN7JHByZWZpeH10YWJsZS1hY3RpdmUtYmcpO1xufVxuXG4vLyBIb3ZlciBlZmZlY3Rcbi8vXG4vLyBQbGFjZWQgaGVyZSBzaW5jZSBpdCBoYXMgdG8gY29tZSBhZnRlciB0aGUgcG90ZW50aWFsIHplYnJhIHN0cmlwaW5nXG5cbi50YWJsZS1ob3ZlciB7XG4gID4gdGJvZHkgPiB0cjpob3ZlciA+ICoge1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXN0YXRlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtaG92ZXItY29sb3IpO1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWJnLXN0YXRlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtaG92ZXItYmcpO1xuICB9XG59XG5cblxuLy8gVGFibGUgdmFyaWFudHNcbi8vXG4vLyBUYWJsZSB2YXJpYW50cyBzZXQgdGhlIHRhYmxlIGNlbGwgYmFja2dyb3VuZHMsIGJvcmRlciBjb2xvcnNcbi8vIGFuZCB0aGUgY29sb3JzIG9mIHRoZSBzdHJpcGVkLCBob3ZlcmVkICYgYWN0aXZlIHRhYmxlc1xuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGFibGUtdmFyaWFudHMge1xuICBAaW5jbHVkZSB0YWJsZS12YXJpYW50KCRjb2xvciwgJHZhbHVlKTtcbn1cblxuLy8gUmVzcG9uc2l2ZSB0YWJsZXNcbi8vXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC50YWJsZS1yZXNwb25zaXZlLSpgIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nIHRoZSBzY3JlZW5cbi8vIHNpemUgb2Ygd2hlcmUgeW91ciB0YWJsZSB3aWxsIG92ZXJmbG93LlxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAudGFibGUtcmVzcG9uc2l2ZSN7JGluZml4fSB7XG4gICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc2Nzcy1kb2NzLXN0YXJ0IHRhYmxlLXZhcmlhbnRcbkBtaXhpbiB0YWJsZS12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQpIHtcbiAgLnRhYmxlLSN7JHN0YXRlfSB7XG4gICAgJGNvbG9yOiBjb2xvci1jb250cmFzdChvcGFxdWUoJGJvZHktYmcsICRiYWNrZ3JvdW5kKSk7XG4gICAgJGhvdmVyLWJnOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtaG92ZXItYmctZmFjdG9yKSk7XG4gICAgJHN0cmlwZWQtYmc6IG1peCgkY29sb3IsICRiYWNrZ3JvdW5kLCBwZXJjZW50YWdlKCR0YWJsZS1zdHJpcGVkLWJnLWZhY3RvcikpO1xuICAgICRhY3RpdmUtYmc6IG1peCgkY29sb3IsICRiYWNrZ3JvdW5kLCBwZXJjZW50YWdlKCR0YWJsZS1hY3RpdmUtYmctZmFjdG9yKSk7XG4gICAgJHRhYmxlLWJvcmRlci1jb2xvcjogbWl4KCRjb2xvciwgJGJhY2tncm91bmQsIHBlcmNlbnRhZ2UoJHRhYmxlLWJvcmRlci1mYWN0b3IpKTtcblxuICAgIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yOiAjeyRjb2xvcn07XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtYmc6ICN7JGJhY2tncm91bmR9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWJvcmRlci1jb2xvcjogI3skdGFibGUtYm9yZGVyLWNvbG9yfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWJnOiAjeyRzdHJpcGVkLWJnfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yOiAje2NvbG9yLWNvbnRyYXN0KCRzdHJpcGVkLWJnKX07XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtYWN0aXZlLWJnOiAjeyRhY3RpdmUtYmd9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWFjdGl2ZS1jb2xvcjogI3tjb2xvci1jb250cmFzdCgkYWN0aXZlLWJnKX07XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtaG92ZXItYmc6ICN7JGhvdmVyLWJnfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1ob3Zlci1jb2xvcjogI3tjb2xvci1jb250cmFzdCgkaG92ZXItYmcpfTtcblxuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtY29sb3IpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRhYmxlLWJvcmRlci1jb2xvcik7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgdGFibGUtdmFyaWFudFxuIiwiLy9cbi8vIExhYmVsc1xuLy9cblxuLmZvcm0tbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1sYWJlbC1tYXJnaW4tYm90dG9tO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tbGFiZWwtZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogJGZvcm0tbGFiZWwtZm9udC1zdHlsZTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG59XG5cbi8vIEZvciB1c2Ugd2l0aCBob3Jpem9udGFsIGFuZCBpbmxpbmUgZm9ybXMsIHdoZW4geW91IG5lZWQgdGhlIGxhYmVsIChvciBsZWdlbmQpXG4vLyB0ZXh0IHRvIGFsaWduIHdpdGggdGhlIGZvcm0gY29udHJvbHMuXG4uY29sLWZvcm0tbGFiZWwge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSB0aGUgYDxsZWdlbmQ+YCBkZWZhdWx0XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTsgLy8gT3ZlcnJpZGUgdGhlIGA8bGVnZW5kPmAgZGVmYXVsdFxuICBmb250LXN0eWxlOiAkZm9ybS1sYWJlbC1mb250LXN0eWxlO1xuICBmb250LXdlaWdodDogJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvcjtcbn1cblxuLmNvbC1mb3JtLWxhYmVsLWxnIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LWxnLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LWxnLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xufVxuXG4uY29sLWZvcm0tbGFiZWwtc20ge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXktc20sICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXktc20sICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG59XG4iLCIvL1xuLy8gRm9ybSB0ZXh0XG4vL1xuXG4uZm9ybS10ZXh0IHtcbiAgbWFyZ2luLXRvcDogJGZvcm0tdGV4dC1tYXJnaW4tdG9wO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tdGV4dC1mb250LXNpemUpO1xuICBmb250LXN0eWxlOiAkZm9ybS10ZXh0LWZvbnQtc3R5bGU7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS10ZXh0LWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGZvcm0tdGV4dC1jb2xvcjtcbn1cbiIsIi8vXG4vLyBHZW5lcmFsIGZvcm0gY29udHJvbHMgKHBsdXMgYSBmZXcgc3BlY2lmaWMgaGlnaC1sZXZlbCBpbnRlcnZlbnRpb25zKVxuLy9cblxuLmZvcm0tY29udHJvbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG4gIGFwcGVhcmFuY2U6IG5vbmU7IC8vIEZpeCBhcHBlYXJhbmNlIGZvciBkYXRlIGlucHV0cyBpbiBTYWZhcmlcblxuICAvLyBOb3RlOiBUaGlzIGhhcyBubyBlZmZlY3Qgb24gPHNlbGVjdD5zIGluIHNvbWUgYnJvd3NlcnMsIGR1ZSB0byB0aGUgbGltaXRlZCBzdHlsYWJpbGl0eSBvZiBgPHNlbGVjdD5gcyBpbiBDU1MuXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMsIDApO1xuXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3cpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRpbnB1dC10cmFuc2l0aW9uKTtcblxuICAmW3R5cGU9XCJmaWxlXCJdIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyAvLyBwcmV2ZW50IHBzZXVkbyBlbGVtZW50IGJ1dHRvbiBvdmVybGFwXG5cbiAgICAmOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLy8gQ3VzdG9taXplIHRoZSBgOmZvY3VzYCBzdGF0ZSB0byBpbWl0YXRlIG5hdGl2ZSBXZWJLaXQgc3R5bGVzLlxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGlucHV0LWZvY3VzLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1mb2N1cy1iZztcbiAgICBib3JkZXItY29sb3I6ICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3csICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxuXG4gICY6Oi13ZWJraXQtZGF0ZS1hbmQtdGltZS12YWx1ZSB7XG4gICAgLy8gT24gQW5kcm9pZCBDaHJvbWUsIGZvcm0tY29udHJvbCdzIFwid2lkdGg6IDEwMCVcIiBtYWtlcyB0aGUgaW5wdXQgd2lkdGggdG9vIHNtYWxsXG4gICAgLy8gVGVzdGVkIHVuZGVyIEFuZHJvaWQgMTEgLyBDaHJvbWUgODksIEFuZHJvaWQgMTIgLyBDaHJvbWUgMTAwLCBBbmRyb2lkIDEzIC8gQ2hyb21lIDEwOVxuICAgIC8vXG4gICAgLy8gT24gaU9TIFNhZmFyaSwgZm9ybS1jb250cm9sJ3MgXCJhcHBlYXJhbmNlOiBub25lXCIgKyBcIndpZHRoOiAxMDAlXCIgbWFrZXMgdGhlIGlucHV0IHdpZHRoIHRvbyBzbWFsbFxuICAgIC8vIFRlc3RlZCB1bmRlciBpT1MgMTYuMiAvIFNhZmFyaSAxNi4yXG4gICAgbWluLXdpZHRoOiA4NXB4OyAvLyBTZWVtcyB0byBiZSBhIGdvb2QgbWluaW11bSBzYWZlIHdpZHRoXG5cbiAgICAvLyBBZGQgc29tZSBoZWlnaHQgdG8gZGF0ZSBpbnB1dHMgb24gaU9TXG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yMzMwN1xuICAgIC8vIFRPRE86IHdlIGNhbiByZW1vdmUgdGhpcyB3b3JrYXJvdW5kIG9uY2UgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5ODk1OSBpcyByZXNvbHZlZFxuICAgIC8vIE11bHRpcGx5IGxpbmUtaGVpZ2h0IGJ5IDFlbSBpZiBpdCBoYXMgbm8gdW5pdFxuICAgIGhlaWdodDogaWYodW5pdCgkaW5wdXQtbGluZS1oZWlnaHQpID09IFwiXCIsICRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgJGlucHV0LWxpbmUtaGVpZ2h0KTtcblxuICAgIC8vIEFuZHJvaWQgQ2hyb21lIHR5cGU9XCJkYXRlXCIgaXMgdGFsbGVyIHRoYW4gdGhlIG90aGVyIGlucHV0c1xuICAgIC8vIGJlY2F1c2Ugb2YgXCJtYXJnaW46IDFweCAyNHB4IDFweCA0cHhcIiBpbnNpZGUgdGhlIHNoYWRvdyBET01cbiAgICAvLyBUZXN0ZWQgdW5kZXIgQW5kcm9pZCAxMSAvIENocm9tZSA4OSwgQW5kcm9pZCAxMiAvIENocm9tZSAxMDAsIEFuZHJvaWQgMTMgLyBDaHJvbWUgMTA5XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLy8gUHJldmVudCBleGNlc3NpdmUgZGF0ZSBpbnB1dCBoZWlnaHQgaW4gV2Via2l0XG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMzQ0MzNcbiAgJjo6LXdlYmtpdC1kYXRldGltZS1lZGl0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUGxhY2Vob2xkZXJcbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gICAgLy8gT3ZlcnJpZGUgRmlyZWZveCdzIHVudXN1YWwgZGVmYXVsdCBvcGFjaXR5OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjYuXG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIGlucHV0c1xuICAvL1xuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+IGxlZ2VuZDpmaXJzdC1jaGlsZCB3b24ndCBiZVxuICAvLyBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmaWN1bHR5LCB3ZVxuICAvLyBkb24ndCBob25vciB0aGF0IGVkZ2UgY2FzZTsgd2Ugc3R5bGUgdGhlbSBhcyBkaXNhYmxlZCBhbnl3YXkuXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJvcmRlci1jb2xvcjtcbiAgICAvLyBpT1MgZml4IGZvciB1bnJlYWRhYmxlIGRpc2FibGVkIGNvbnRlbnQ7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjU1LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBGaWxlIGlucHV0IGJ1dHRvbnMgdGhlbWluZ1xuICAmOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICAgIG1hcmdpbjogKC0kaW5wdXQtcGFkZGluZy15KSAoLSRpbnB1dC1wYWRkaW5nLXgpO1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAkaW5wdXQtcGFkZGluZy14O1xuICAgIGNvbG9yOiAkZm9ybS1maWxlLWJ1dHRvbi1jb2xvcjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1maWxlLWJ1dHRvbi1iZyk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAwO1xuICAgIGJvcmRlci1pbmxpbmUtZW5kLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYnRuLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgJjpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSk6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1maWxlLWJ1dHRvbi1ob3Zlci1iZztcbiAgfVxufVxuXG4vLyBSZWFkb25seSBjb250cm9scyBhcyBwbGFpbiB0ZXh0XG4vL1xuLy8gQXBwbHkgY2xhc3MgdG8gYSByZWFkb25seSBpbnB1dCB0byBtYWtlIGl0IGFwcGVhciBsaWtlIHJlZ3VsYXIgcGxhaW5cbi8vIHRleHQgKHdpdGhvdXQgYW55IGJvcmRlciwgYmFja2dyb3VuZCBjb2xvciwgZm9jdXMgaW5kaWNhdG9yKVxuXG4uZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAwO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBtYXRjaCBpbnB1dHMgaWYgdGhpcyBjbGFzcyBjb21lcyBvbiBpbnB1dHMgd2l0aCBkZWZhdWx0IG1hcmdpbnNcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1wbGFpbnRleHQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGggMDtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20sXG4gICYuZm9ybS1jb250cm9sLWxnIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXG4vL1xuLy8gQnVpbGQgb24gYC5mb3JtLWNvbnRyb2xgIHdpdGggbW9kaWZpZXIgY2xhc3NlcyB0byBkZWNyZWFzZSBvciBpbmNyZWFzZSB0aGVcbi8vIGhlaWdodCBhbmQgZm9udC1zaXplIG9mIGZvcm0gY29udHJvbHMuXG4vL1xuLy8gUmVwZWF0ZWQgaW4gYF9pbnB1dF9ncm91cC5zY3NzYCB0byBhdm9pZCBTYXNzIGV4dGVuZCBpc3N1ZXMuXG5cbi5mb3JtLWNvbnRyb2wtc20ge1xuICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG5cbiAgJjo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgICBtYXJnaW46ICgtJGlucHV0LXBhZGRpbmcteS1zbSkgKC0kaW5wdXQtcGFkZGluZy14LXNtKTtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgfVxufVxuXG4uZm9ybS1jb250cm9sLWxnIHtcbiAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodC1sZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xuXG4gICY6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gICAgbWFyZ2luOiAoLSRpbnB1dC1wYWRkaW5nLXktbGcpICgtJGlucHV0LXBhZGRpbmcteC1sZyk7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6ICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIH1cbn1cblxuLy8gTWFrZSBzdXJlIHRleHRhcmVhcyBkb24ndCBzaHJpbmsgdG9vIG11Y2ggd2hlbiByZXNpemVkXG4vLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yOTEyNFxuLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG50ZXh0YXJlYSB7XG4gICYuZm9ybS1jb250cm9sIHtcbiAgICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICB9XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20ge1xuICAgIG1pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG4gIH1cblxuICAmLmZvcm0tY29udHJvbC1sZyB7XG4gICAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodC1sZztcbiAgfVxufVxuLy8gc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLmZvcm0tY29udHJvbC1jb2xvciB7XG4gIHdpZHRoOiAkZm9ybS1jb2xvci13aWR0aDtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15O1xuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cblxuICAmOjotbW96LWNvbG9yLXN3YXRjaCB7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmOjotd2Via2l0LWNvbG9yLXN3YXRjaCB7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmLmZvcm0tY29udHJvbC1zbSB7IGhlaWdodDogJGlucHV0LWhlaWdodC1zbTsgfVxuICAmLmZvcm0tY29udHJvbC1sZyB7IGhlaWdodDogJGlucHV0LWhlaWdodC1sZzsgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA9PSAwIHtcbiAgICAkdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tYmFzZTtcbiAgfVxuXG4gIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID4gMSB7XG4gICAgQGVhY2ggJHZhbHVlIGluICR0cmFuc2l0aW9uIHtcbiAgICAgIEBpZiAkdmFsdWUgPT0gbnVsbCBvciAkdmFsdWUgPT0gbm9uZSB7XG4gICAgICAgIEB3YXJuIFwiVGhlIGtleXdvcmQgJ25vbmUnIG9yICdudWxsJyBtdXN0IGJlIHVzZWQgYXMgYSBzaW5nbGUgYXJndW1lbnQuXCI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAgIEBpZiBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwge1xuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgfVxuXG4gICAgQGlmICRlbmFibGUtcmVkdWNlZC1tb3Rpb24gYW5kIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbnVsbCBhbmQgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBub25lIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBHcmFkaWVudHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYWRpZW50LWJnLW1peGluXG5AbWl4aW4gZ3JhZGllbnQtYmcoJGNvbG9yOiBudWxsKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcblxuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLSN7JHByZWZpeH1ncmFkaWVudCk7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgZ3JhZGllbnQtYmctbWl4aW5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYWRpZW50LW1peGluc1xuLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC14KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG59XG5cbi8vIFZlcnRpY2FsIGdyYWRpZW50LCBmcm9tIHRvcCB0byBib3R0b21cbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXkoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IG51bGwsICRlbmQtcGVyY2VudDogbnVsbCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbn1cblxuQG1peGluIGdyYWRpZW50LWRpcmVjdGlvbmFsKCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRkZWc6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQteC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG59XG5cbkBtaXhpbiBncmFkaWVudC15LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtcmFkaWFsKCRpbm5lci1jb2xvcjogJGdyYXktNzAwLCAkb3V0ZXItY29sb3I6ICRncmF5LTgwMCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG59XG5cbkBtaXhpbiBncmFkaWVudC1zdHJpcGVkKCRjb2xvcjogcmdiYSgkd2hpdGUsIC4xNSksICRhbmdsZTogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBncmFkaWVudC1taXhpbnNcbiIsIi8vIFNlbGVjdFxuLy9cbi8vIFJlcGxhY2VzIHRoZSBicm93c2VyIGRlZmF1bHQgc2VsZWN0IHdpdGggYSBjdXN0b20gb25lLCBtb3N0bHkgcHVsbGVkIGZyb21cbi8vIGh0dHBzOi8vcHJpbWVyLmdpdGh1Yi5pby8uXG5cbi5mb3JtLXNlbGVjdCB7XG4gIC0tI3skcHJlZml4fWZvcm0tc2VsZWN0LWJnLWltZzogI3tlc2NhcGUtc3ZnKCRmb3JtLXNlbGVjdC1pbmRpY2F0b3IpfTtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXkgJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nICRmb3JtLXNlbGVjdC1wYWRkaW5nLXkgJGZvcm0tc2VsZWN0LXBhZGRpbmcteDtcbiAgZm9udC1mYW1pbHk6ICRmb3JtLXNlbGVjdC1mb250LWZhbWlseTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLXNlbGVjdC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGZvcm0tc2VsZWN0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGZvcm0tc2VsZWN0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGZvcm0tc2VsZWN0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1zZWxlY3QtYmc7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLSN7JHByZWZpeH1mb3JtLXNlbGVjdC1iZy1pbWcpLCB2YXIoLS0jeyRwcmVmaXh9Zm9ybS1zZWxlY3QtYmctaWNvbiwgbm9uZSk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246ICRmb3JtLXNlbGVjdC1iZy1wb3NpdGlvbjtcbiAgYmFja2dyb3VuZC1zaXplOiAkZm9ybS1zZWxlY3QtYmctc2l6ZTtcbiAgYm9yZGVyOiAkZm9ybS1zZWxlY3QtYm9yZGVyLXdpZHRoIHNvbGlkICRmb3JtLXNlbGVjdC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tc2VsZWN0LWJvcmRlci1yYWRpdXMsIDApO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRmb3JtLXNlbGVjdC1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1zZWxlY3QtdHJhbnNpdGlvbik7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRmb3JtLXNlbGVjdC1ib3gtc2hhZG93LCAkZm9ybS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBib3gtc2hhZG93OiAkZm9ybS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAmW211bHRpcGxlXSxcbiAgJltzaXplXTpub3QoW3NpemU9XCIxXCJdKSB7XG4gICAgcGFkZGluZy1yaWdodDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRmb3JtLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1zZWxlY3QtZGlzYWJsZWQtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1zZWxlY3QtZGlzYWJsZWQtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLy8gUmVtb3ZlIG91dGxpbmUgZnJvbSBzZWxlY3QgYm94IGluIEZGXG4gICY6LW1vei1mb2N1c3Jpbmcge1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0ZXh0LXNoYWRvdzogMCAwIDAgJGZvcm0tc2VsZWN0LWNvbG9yO1xuICB9XG59XG5cbi5mb3JtLXNlbGVjdC1zbSB7XG4gIHBhZGRpbmctdG9wOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBwYWRkaW5nLWJvdHRvbTogJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1zbTtcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1zZWxlY3QtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZS1zbSk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tc2VsZWN0LWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG4uZm9ybS1zZWxlY3QtbGcge1xuICBwYWRkaW5nLXRvcDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1sZztcbiAgcGFkZGluZy1ib3R0b206ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXktbGc7XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLXNlbGVjdC1mb250LXNpemUtbGcpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuQGlmICRlbmFibGUtZGFyay1tb2RlIHtcbiAgQGluY2x1ZGUgY29sb3ItbW9kZShkYXJrKSB7XG4gICAgLmZvcm0tc2VsZWN0IHtcbiAgICAgIC0tI3skcHJlZml4fWZvcm0tc2VsZWN0LWJnLWltZzogI3tlc2NhcGUtc3ZnKCRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItZGFyayl9O1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIENoZWNrL3JhZGlvXG4vL1xuXG4uZm9ybS1jaGVjayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtaW4taGVpZ2h0OiAkZm9ybS1jaGVjay1taW4taGVpZ2h0O1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLWNoZWNrLXBhZGRpbmctc3RhcnQ7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLWNoZWNrLW1hcmdpbi1ib3R0b207XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAkZm9ybS1jaGVjay1wYWRkaW5nLXN0YXJ0ICogLTE7XG4gIH1cbn1cblxuLmZvcm0tY2hlY2stcmV2ZXJzZSB7XG4gIHBhZGRpbmctcmlnaHQ6ICRmb3JtLWNoZWNrLXBhZGRpbmctc3RhcnQ7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLXBhZGRpbmctc3RhcnQgKiAtMTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4uZm9ybS1jaGVjay1pbnB1dCB7XG4gIC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmc6ICN7JGZvcm0tY2hlY2staW5wdXQtYmd9O1xuXG4gIHdpZHRoOiAkZm9ybS1jaGVjay1pbnB1dC13aWR0aDtcbiAgaGVpZ2h0OiAkZm9ybS1jaGVjay1pbnB1dC13aWR0aDtcbiAgbWFyZ2luLXRvcDogKCRsaW5lLWhlaWdodC1iYXNlIC0gJGZvcm0tY2hlY2staW5wdXQtd2lkdGgpICogLjU7IC8vIGxpbmUtaGVpZ2h0IG1pbnVzIGNoZWNrIGhlaWdodFxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnLWltYWdlKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGJvcmRlcjogJGZvcm0tY2hlY2staW5wdXQtYm9yZGVyO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBwcmludC1jb2xvci1hZGp1c3Q6IGV4YWN0OyAvLyBLZWVwIHRoZW1lZCBhcHBlYXJhbmNlIGZvciBwcmludFxuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLWNoZWNrLXRyYW5zaXRpb24pO1xuXG4gICZbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLWNoZWNrLWlucHV0LWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJlt0eXBlPVwicmFkaW9cIl0ge1xuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXItcmFkaXVzOiAkZm9ybS1jaGVjay1yYWRpby1ib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGZpbHRlcjogJGZvcm0tY2hlY2staW5wdXQtYWN0aXZlLWZpbHRlcjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtZm9jdXMtYm9yZGVyO1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogJGZvcm0tY2hlY2staW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gICY6Y2hlY2tlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYm9yZGVyLWNvbG9yO1xuXG4gICAgJlt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZy1pbWFnZTogI3tlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctaW1hZ2UpfSwgdmFyKC0tI3skcHJlZml4fWdyYWRpZW50KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnLWltYWdlOiAje2VzY2FwZS1zdmcoJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1pbWFnZSl9O1xuICAgICAgfVxuICAgIH1cblxuICAgICZbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICAgIC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmctaW1hZ2U6ICN7ZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1yYWRpby1jaGVja2VkLWJnLWltYWdlKX0sIHZhcigtLSN7JHByZWZpeH1ncmFkaWVudCk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZy1pbWFnZTogI3tlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLXJhZGlvLWNoZWNrZWQtYmctaW1hZ2UpfTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmW3R5cGU9XCJjaGVja2JveFwiXTppbmRldGVybWluYXRlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I7XG5cbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZy1pbWFnZTogI3tlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctaW1hZ2UpfSwgdmFyKC0tI3skcHJlZml4fWdyYWRpZW50KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmctaW1hZ2U6ICN7ZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWltYWdlKX07XG4gICAgfVxuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgZmlsdGVyOiBub25lO1xuICAgIG9wYWNpdHk6ICRmb3JtLWNoZWNrLWlucHV0LWRpc2FibGVkLW9wYWNpdHk7XG4gIH1cblxuICAvLyBVc2UgZGlzYWJsZWQgYXR0cmlidXRlIGluIGFkZGl0aW9uIG9mIDpkaXNhYmxlZCBwc2V1ZG8tY2xhc3NcbiAgLy8gU2VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MjQ3XG4gICZbZGlzYWJsZWRdLFxuICAmOmRpc2FibGVkIHtcbiAgICB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgIG9wYWNpdHk6ICRmb3JtLWNoZWNrLWxhYmVsLWRpc2FibGVkLW9wYWNpdHk7XG4gICAgfVxuICB9XG59XG5cbi5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgY29sb3I6ICRmb3JtLWNoZWNrLWxhYmVsLWNvbG9yO1xuICBjdXJzb3I6ICRmb3JtLWNoZWNrLWxhYmVsLWN1cnNvcjtcbn1cblxuLy9cbi8vIFN3aXRjaFxuLy9cblxuLmZvcm0tc3dpdGNoIHtcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1zd2l0Y2gtcGFkZGluZy1zdGFydDtcblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgLS0jeyRwcmVmaXh9Zm9ybS1zd2l0Y2gtYmc6ICN7ZXNjYXBlLXN2ZygkZm9ybS1zd2l0Y2gtYmctaW1hZ2UpfTtcblxuICAgIHdpZHRoOiAkZm9ybS1zd2l0Y2gtd2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6ICRmb3JtLXN3aXRjaC1wYWRkaW5nLXN0YXJ0ICogLTE7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tI3skcHJlZml4fWZvcm0tc3dpdGNoLWJnKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXN3aXRjaC1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLXN3aXRjaC10cmFuc2l0aW9uKTtcblxuICAgICY6Zm9jdXMge1xuICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1zd2l0Y2gtYmc6ICN7ZXNjYXBlLXN2ZygkZm9ybS1zd2l0Y2gtZm9jdXMtYmctaW1hZ2UpfTtcbiAgICB9XG5cbiAgICAmOmNoZWNrZWQge1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctcG9zaXRpb247XG5cbiAgICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICAgIC0tI3skcHJlZml4fWZvcm0tc3dpdGNoLWJnOiAje2VzY2FwZS1zdmcoJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctaW1hZ2UpfSwgdmFyKC0tI3skcHJlZml4fWdyYWRpZW50KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAtLSN7JHByZWZpeH1mb3JtLXN3aXRjaC1iZzogI3tlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLWltYWdlKX07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5mb3JtLWNoZWNrLXJldmVyc2Uge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLXN3aXRjaC1wYWRkaW5nLXN0YXJ0O1xuICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQgKiAtMTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZm9ybS1jaGVjay1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi1lbmQ7XG59XG5cbi5idG4tY2hlY2sge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICZbZGlzYWJsZWRdLFxuICAmOmRpc2FibGVkIHtcbiAgICArIC5idG4ge1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICBmaWx0ZXI6IG5vbmU7XG4gICAgICBvcGFjaXR5OiAkZm9ybS1jaGVjay1idG4tY2hlY2stZGlzYWJsZWQtb3BhY2l0eTtcbiAgICB9XG4gIH1cbn1cblxuQGlmICRlbmFibGUtZGFyay1tb2RlIHtcbiAgQGluY2x1ZGUgY29sb3ItbW9kZShkYXJrKSB7XG4gICAgLmZvcm0tc3dpdGNoIC5mb3JtLWNoZWNrLWlucHV0Om5vdCg6Y2hlY2tlZCk6bm90KDpmb2N1cykge1xuICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1zd2l0Y2gtYmc6ICN7ZXNjYXBlLXN2ZygkZm9ybS1zd2l0Y2gtYmctaW1hZ2UtZGFyayl9O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUmFuZ2Vcbi8vXG4vLyBTdHlsZSByYW5nZSBpbnB1dHMgdGhlIHNhbWUgYWNyb3NzIGJyb3dzZXJzLiBWZW5kb3Itc3BlY2lmaWMgcnVsZXMgZm9yIHBzZXVkb1xuLy8gZWxlbWVudHMgY2Fubm90IGJlIG1peGVkLiBBcyBzdWNoLCB0aGVyZSBhcmUgbm8gc2hhcmVkIHN0eWxlcyBmb3IgZm9jdXMgb3Jcbi8vIGFjdGl2ZSBzdGF0ZXMgb24gcHJlZml4ZWQgc2VsZWN0b3JzLlxuXG4uZm9ybS1yYW5nZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGFkZCgkZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQsICRmb3JtLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGggKiAyKTtcbiAgcGFkZGluZzogMDsgLy8gTmVlZCB0byByZXNldCBwYWRkaW5nXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG5cbiAgICAvLyBQc2V1ZG8tZWxlbWVudHMgbXVzdCBiZSBzcGxpdCBhY3Jvc3MgbXVsdGlwbGUgcnVsZXNldHMgdG8gaGF2ZSBhbiBlZmZlY3QuXG4gICAgLy8gTm8gYm94LXNoYWRvdygpIG1peGluIGZvciBmb2N1cyBhY2Nlc3NpYmlsaXR5LlxuICAgICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHsgYm94LXNoYWRvdzogJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIgICAgIHsgYm94LXNoYWRvdzogJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICB9XG5cbiAgJjo6LW1vei1mb2N1cy1vdXRlciB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgIHdpZHRoOiAkZm9ybS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRmb3JtLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICBtYXJnaW4tdG9wOiAoJGZvcm0tcmFuZ2UtdHJhY2staGVpZ2h0IC0gJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0KSAqIC41OyAvLyBXZWJraXQgc3BlY2lmaWNcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1yYW5nZS10aHVtYi1iZyk7XG4gICAgYm9yZGVyOiAkZm9ybS1yYW5nZS10aHVtYi1ib3JkZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRmb3JtLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGZvcm0tcmFuZ2UtdGh1bWItdHJhbnNpdGlvbik7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRmb3JtLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XG4gICAgfVxuICB9XG5cbiAgJjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgIHdpZHRoOiAkZm9ybS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRmb3JtLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7IC8vIFdoeT9cbiAgICBjdXJzb3I6ICRmb3JtLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1yYW5nZS10cmFjay1iZztcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgIHdpZHRoOiAkZm9ybS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRmb3JtLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1yYW5nZS10aHVtYi1iZyk7XG4gICAgYm9yZGVyOiAkZm9ybS1yYW5nZS10aHVtYi1ib3JkZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRmb3JtLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGZvcm0tcmFuZ2UtdGh1bWItdHJhbnNpdGlvbik7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRmb3JtLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XG4gICAgfVxuICB9XG5cbiAgJjo6LW1vei1yYW5nZS10cmFjayB7XG4gICAgd2lkdGg6ICRmb3JtLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGZvcm0tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6ICRmb3JtLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1yYW5nZS10cmFjay1iZztcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGaXJlZm94IHNwZWNpZmljP1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuXG4gICAgJjo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZztcbiAgICB9XG4gIH1cbn1cbiIsIi5mb3JtLWZsb2F0aW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCxcbiAgPiAuZm9ybS1zZWxlY3Qge1xuICAgIGhlaWdodDogJGZvcm0tZmxvYXRpbmctaGVpZ2h0O1xuICAgIG1pbi1oZWlnaHQ6ICRmb3JtLWZsb2F0aW5nLWhlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJGZvcm0tZmxvYXRpbmctbGluZS1oZWlnaHQ7XG4gIH1cblxuICA+IGxhYmVsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMjtcbiAgICBoZWlnaHQ6IDEwMCU7IC8vIGFsbG93IHRleHRhcmVhc1xuICAgIHBhZGRpbmc6ICRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteSAkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDsgLy8gUmVxdWlyZWQgZm9yIGFsaWduaW5nIGxhYmVsJ3MgdGV4dCB3aXRoIHRoZSBpbnB1dCBhcyBpdCBhZmZlY3RzIGlubmVyIGJveCBtb2RlbFxuICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLWZsb2F0aW5nLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgICBwYWRkaW5nOiAkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXkgJGZvcm0tZmxvYXRpbmctcGFkZGluZy14O1xuXG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJjpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB7XG4gICAgICBwYWRkaW5nLXRvcDogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy10O1xuICAgICAgcGFkZGluZy1ib3R0b206ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctYjtcbiAgICB9XG4gICAgLy8gRHVwbGljYXRlZCBiZWNhdXNlIGA6LXdlYmtpdC1hdXRvZmlsbGAgaW52YWxpZGF0ZXMgb3RoZXIgc2VsZWN0b3JzIHdoZW4gZ3JvdXBlZFxuICAgICY6LXdlYmtpdC1hdXRvZmlsbCB7XG4gICAgICBwYWRkaW5nLXRvcDogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy10O1xuICAgICAgcGFkZGluZy1ib3R0b206ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctYjtcbiAgICB9XG4gIH1cblxuICA+IC5mb3JtLXNlbGVjdCB7XG4gICAgcGFkZGluZy10b3A6ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctdDtcbiAgICBwYWRkaW5nLWJvdHRvbTogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy1iO1xuICB9XG5cbiAgPiAuZm9ybS1jb250cm9sOmZvY3VzLFxuICA+IC5mb3JtLWNvbnRyb2w6bm90KDpwbGFjZWhvbGRlci1zaG93biksXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQsXG4gID4gLmZvcm0tc2VsZWN0IHtcbiAgICB+IGxhYmVsIHtcbiAgICAgIGNvbG9yOiByZ2JhKHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yLXJnYiksICN7JGZvcm0tZmxvYXRpbmctbGFiZWwtb3BhY2l0eX0pO1xuICAgICAgdHJhbnNmb3JtOiAkZm9ybS1mbG9hdGluZy1sYWJlbC10cmFuc2Zvcm07XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBpbnNldDogJGZvcm0tZmxvYXRpbmctcGFkZGluZy15ICgkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXggKiAuNSk7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICBoZWlnaHQ6ICRmb3JtLWZsb2F0aW5nLWxhYmVsLWhlaWdodDtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gRHVwbGljYXRlZCBiZWNhdXNlIGA6LXdlYmtpdC1hdXRvZmlsbGAgaW52YWxpZGF0ZXMgb3RoZXIgc2VsZWN0b3JzIHdoZW4gZ3JvdXBlZFxuICA+IC5mb3JtLWNvbnRyb2w6LXdlYmtpdC1hdXRvZmlsbCB7XG4gICAgfiBsYWJlbCB7XG4gICAgICBjb2xvcjogcmdiYSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvci1yZ2IpLCAjeyRmb3JtLWZsb2F0aW5nLWxhYmVsLW9wYWNpdHl9KTtcbiAgICAgIHRyYW5zZm9ybTogJGZvcm0tZmxvYXRpbmctbGFiZWwtdHJhbnNmb3JtO1xuICAgIH1cbiAgfVxuXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICAgIH4gbGFiZWwge1xuICAgICAgYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoIDA7IC8vIFJlcXVpcmVkIHRvIHByb3Blcmx5IHBvc2l0aW9uIGxhYmVsIHRleHQgLSBhcyBleHBsYWluZWQgYWJvdmVcbiAgICB9XG4gIH1cblxuICA+IDpkaXNhYmxlZCB+IGxhYmVsIHtcbiAgICBjb2xvcjogJGZvcm0tZmxvYXRpbmctbGFiZWwtZGlzYWJsZWQtY29sb3I7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5pbnB1dC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyAvLyBGb3IgZm9ybSB2YWxpZGF0aW9uIGZlZWRiYWNrXG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMTAwJTtcblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tc2VsZWN0LFxuICA+IC5mb3JtLWZsb2F0aW5nIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IC8vIEZvciBmb2N1cyBzdGF0ZSdzIHotaW5kZXhcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB3aWR0aDogMSU7XG4gICAgbWluLXdpZHRoOiAwOyAvLyBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8zNjI0NzE0MC93aHktZG9udC1mbGV4LWl0ZW1zLXNocmluay1wYXN0LWNvbnRlbnQtc2l6ZVxuICB9XG5cbiAgLy8gQnJpbmcgdGhlIFwiYWN0aXZlXCIgZm9ybSBjb250cm9sIHRvIHRoZSB0b3Agb2Ygc3Vycm91bmRpbmcgZWxlbWVudHNcbiAgPiAuZm9ybS1jb250cm9sOmZvY3VzLFxuICA+IC5mb3JtLXNlbGVjdDpmb2N1cyxcbiAgPiAuZm9ybS1mbG9hdGluZzpmb2N1cy13aXRoaW4ge1xuICAgIHotaW5kZXg6IDU7XG4gIH1cblxuICAvLyBFbnN1cmUgYnV0dG9ucyBhcmUgYWx3YXlzIGFib3ZlIGlucHV0cyBmb3IgbW9yZSB2aXN1YWxseSBwbGVhc2luZyBib3JkZXJzLlxuICAvLyBUaGlzIGlzbid0IG5lZWRlZCBmb3IgYC5pbnB1dC1ncm91cC10ZXh0YCBzaW5jZSBpdCBzaGFyZXMgdGhlIHNhbWUgYm9yZGVyLWNvbG9yXG4gIC8vIGFzIG91ciBpbnB1dHMuXG4gIC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICB6LWluZGV4OiA1O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFRleHR1YWwgYWRkb25zXG4vL1xuLy8gU2VydmVzIGFzIGEgY2F0Y2gtYWxsIGVsZW1lbnQgZm9yIGFueSB0ZXh0IG9yIHJhZGlvL2NoZWNrYm94IGlucHV0IHlvdSB3aXNoXG4vLyB0byBwcmVwZW5kIG9yIGFwcGVuZCB0byBhbiBpbnB1dC5cblxuLmlucHV0LWdyb3VwLXRleHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAkaW5wdXQtZ3JvdXAtYWRkb24tcGFkZGluZy15ICRpbnB1dC1ncm91cC1hZGRvbi1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplKTsgLy8gTWF0Y2ggaW5wdXRzXG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZ3JvdXAtYWRkb24tZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWJnO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG59XG5cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgZm9ybSBjb250cm9sIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llclxuLy8gbWFuaXB1bGF0aW9uLlxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tc2VsZWN0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuYnRuIHtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tc2VsZWN0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuYnRuIHtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1zZWxlY3Qge1xuICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1zZWxlY3QtcGFkZGluZy14ICsgJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nO1xufVxuXG5cbi8vIFJvdW5kZWQgY29ybmVyc1xuLy9cbi8vIFRoZXNlIHJ1bGVzZXRzIG11c3QgY29tZSBhZnRlciB0aGUgc2l6aW5nIG9uZXMgdG8gcHJvcGVybHkgb3ZlcnJpZGUgc20gYW5kIGxnXG4vLyBib3JkZXItcmFkaXVzIHZhbHVlcyB3aGVuIGV4dGVuZGluZy4gVGhleSdyZSBtb3JlIHNwZWNpZmljIHRoYW4gd2UnZCBsaWtlXG4vLyB3aXRoIHRoZSBgLmlucHV0LWdyb3VwID5gIHBhcnQsIGJ1dCB3aXRob3V0IGl0LCB3ZSBjYW5ub3Qgb3ZlcnJpZGUgdGhlIHNpemluZy5cblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbi5pbnB1dC1ncm91cCB7XG4gICY6bm90KC5oYXMtdmFsaWRhdGlvbikge1xuICAgID4gOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpOm5vdCguZHJvcGRvd24tbWVudSk6bm90KC5mb3JtLWZsb2F0aW5nKSxcbiAgICA+IC5kcm9wZG93bi10b2dnbGU6bnRoLWxhc3QtY2hpbGQobiArIDMpLFxuICAgID4gLmZvcm0tZmxvYXRpbmc6bm90KDpsYXN0LWNoaWxkKSA+IC5mb3JtLWNvbnRyb2wsXG4gICAgPiAuZm9ybS1mbG9hdGluZzpub3QoOmxhc3QtY2hpbGQpID4gLmZvcm0tc2VsZWN0IHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKDApO1xuICAgIH1cbiAgfVxuXG4gICYuaGFzLXZhbGlkYXRpb24ge1xuICAgID4gOm50aC1sYXN0LWNoaWxkKG4gKyAzKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSk6bm90KC5kcm9wZG93bi1tZW51KTpub3QoLmZvcm0tZmxvYXRpbmcpLFxuICAgID4gLmRyb3Bkb3duLXRvZ2dsZTpudGgtbGFzdC1jaGlsZChuICsgNCksXG4gICAgPiAuZm9ybS1mbG9hdGluZzpudGgtbGFzdC1jaGlsZChuICsgMykgPiAuZm9ybS1jb250cm9sLFxuICAgID4gLmZvcm0tZmxvYXRpbmc6bnRoLWxhc3QtY2hpbGQobiArIDMpID4gLmZvcm0tc2VsZWN0IHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKDApO1xuICAgIH1cbiAgfVxuXG4gICR2YWxpZGF0aW9uLW1lc3NhZ2VzOiBcIlwiO1xuICBAZWFjaCAkc3RhdGUgaW4gbWFwLWtleXMoJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXMpIHtcbiAgICAkdmFsaWRhdGlvbi1tZXNzYWdlczogJHZhbGlkYXRpb24tbWVzc2FnZXMgKyBcIjpub3QoLlwiICsgdW5xdW90ZSgkc3RhdGUpICsgXCItdG9vbHRpcClcIiArIFwiOm5vdCguXCIgKyB1bnF1b3RlKCRzdGF0ZSkgKyBcIi1mZWVkYmFjaylcIjtcbiAgfVxuXG4gID4gOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tbWVudSkjeyR2YWxpZGF0aW9uLW1lc3NhZ2VzfSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoI3skaW5wdXQtYm9yZGVyLXdpZHRofSAqIC0xKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICBAaW5jbHVkZSBib3JkZXItc3RhcnQtcmFkaXVzKDApO1xuICB9XG5cbiAgPiAuZm9ybS1mbG9hdGluZzpub3QoOmZpcnN0LWNoaWxkKSA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tZmxvYXRpbmc6bm90KDpmaXJzdC1jaGlsZCkgPiAuZm9ybS1zZWxlY3Qge1xuICAgIEBpbmNsdWRlIGJvcmRlci1zdGFydC1yYWRpdXMoMCk7XG4gIH1cbn1cbiIsIi8vIFRoaXMgbWl4aW4gdXNlcyBhbiBgaWYoKWAgdGVjaG5pcXVlIHRvIGJlIGNvbXBhdGlibGUgd2l0aCBEYXJ0IFNhc3Ncbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8xODczI2lzc3VlY29tbWVudC0xNTIyOTM3MjUgZm9yIG1vcmUgZGV0YWlsc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS12YWxpZGF0aW9uLW1peGluc1xuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgQGlmICgkc3RhdGUgPT0gXCJ2YWxpZFwiIG9yICRzdGF0ZSA9PSBcImludmFsaWRcIikge1xuICAgIC53YXMtdmFsaWRhdGVkICN7aWYoJiwgXCImXCIsIFwiXCIpfTojeyRzdGF0ZX0sXG4gICAgI3tpZigmLCBcIiZcIiwgXCJcIil9LmlzLSN7JHN0YXRlfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgICN7aWYoJiwgXCImXCIsIFwiXCIpfS5pcy0jeyRzdGF0ZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUoXG4gICRzdGF0ZSxcbiAgJGNvbG9yLFxuICAkaWNvbixcbiAgJHRvb2x0aXAtY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRjb2xvciksXG4gICR0b29sdGlwLWJnLWNvbG9yOiByZ2JhKCRjb2xvciwgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5KSxcbiAgJGZvY3VzLWJveC1zaGFkb3c6IDAgMCAkaW5wdXQtYnRuLWZvY3VzLWJsdXIgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yLW9wYWNpdHkpLFxuICAkYm9yZGVyLWNvbG9yOiAkY29sb3Jcbikge1xuICAuI3skc3RhdGV9LWZlZWRiYWNrIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6ICRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZSk7XG4gICAgZm9udC1zdHlsZTogJGZvcm0tZmVlZGJhY2stZm9udC1zdHlsZTtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIHotaW5kZXg6IDU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIENvbnRhaW4gdG8gcGFyZW50IHdoZW4gcG9zc2libGVcbiAgICBwYWRkaW5nOiAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteSAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDtcbiAgICBtYXJnaW4tdG9wOiAuMXJlbTtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiAkdG9vbHRpcC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9vbHRpcC1iZy1jb2xvcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcblxuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1oZWlnaHQtaW5uZXI7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGljb24pO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGY7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6ICRmb2N1cy1ib3gtc2hhZG93O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbiAgdGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG5cbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICAmOm5vdChbbXVsdGlwbGVdKTpub3QoW3NpemVdKSxcbiAgICAgICAgJjpub3QoW211bHRpcGxlXSlbc2l6ZT1cIjFcIl0ge1xuICAgICAgICAgIC0tI3skcHJlZml4fWZvcm0tc2VsZWN0LWJnLWljb246ICN7ZXNjYXBlLXN2ZygkaWNvbil9O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctZW5kO1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRmb3JtLXNlbGVjdC1iZy1wb3NpdGlvbiwgJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tcG9zaXRpb247XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkZm9ybS1zZWxlY3QtYmctc2l6ZSwgJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiAkZm9jdXMtYm94LXNoYWRvdztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9ybS1jb250cm9sLWNvbG9yIHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgd2lkdGg6IGFkZCgkZm9ybS1jb2xvci13aWR0aCwgJGlucHV0LWhlaWdodC1pbm5lcik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcblxuICAgICAgJjpjaGVja2VkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm94LXNoYWRvdzogJGZvY3VzLWJveC1zaGFkb3c7XG4gICAgICB9XG5cbiAgICAgIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZm9ybS1jaGVjay1pbmxpbmUgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayB7XG4gICAgICBtYXJnaW4tbGVmdDogLjVlbTtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAge1xuICAgID4gLmZvcm0tY29udHJvbDpub3QoOmZvY3VzKSxcbiAgICA+IC5mb3JtLXNlbGVjdDpub3QoOmZvY3VzKSxcbiAgICA+IC5mb3JtLWZsb2F0aW5nOm5vdCg6Zm9jdXMtd2l0aGluKSB7XG4gICAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICAgIEBpZiAkc3RhdGUgPT0gXCJ2YWxpZFwiIHtcbiAgICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICB9IEBlbHNlIGlmICRzdGF0ZSA9PSBcImludmFsaWRcIiB7XG4gICAgICAgICAgei1pbmRleDogNDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXZhbGlkYXRpb24tbWl4aW5zXG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5idG4ge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXg6ICN7JGJ0bi1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1idG4tcGFkZGluZy15OiAjeyRidG4tcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWZvbnQtZmFtaWx5OiAjeyRidG4tZm9udC1mYW1pbHl9O1xuICBAaW5jbHVkZSByZnMoJGJ0bi1mb250LXNpemUsIC0tI3skcHJlZml4fWJ0bi1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1idG4tZm9udC13ZWlnaHQ6ICN7JGJ0bi1mb250LXdlaWdodH07XG4gIC0tI3skcHJlZml4fWJ0bi1saW5lLWhlaWdodDogI3skYnRuLWxpbmUtaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNvbG9yOiAjeyRidG4tY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYmc6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tYm9yZGVyLXdpZHRoOiAjeyRidG4tYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItcmFkaXVzOiAjeyRidG4tYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tYm94LXNoYWRvdzogI3skYnRuLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtb3BhY2l0eTogI3skYnRuLWRpc2FibGVkLW9wYWNpdHl9O1xuICAtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdzogMCAwIDAgI3skYnRuLWZvY3VzLXdpZHRofSByZ2JhKHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtc2hhZG93LXJnYiksIC41KTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBidG4tY3NzLXZhcnNcblxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1idG4tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9YnRuLXBhZGRpbmcteCk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvbnQtZmFtaWx5KTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1idG4tZm9udC1zaXplKSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvbnQtd2VpZ2h0KTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1idG4tbGluZS1oZWlnaHQpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1jb2xvcik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICB3aGl0ZS1zcGFjZTogJGJ0bi13aGl0ZS1zcGFjZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiBpZigkZW5hYmxlLWJ1dHRvbi1wb2ludGVycywgcG9pbnRlciwgbnVsbCk7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1idG4tYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWJ0bi1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKHZhcigtLSN7JHByZWZpeH1idG4tYmcpKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9YnRuLWJveC1zaGFkb3cpKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYnRuLXRyYW5zaXRpb24pO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gIC5idG4tY2hlY2sgKyAmOmhvdmVyIHtcbiAgICAvLyBvdmVycmlkZSBmb3IgdGhlIGNoZWNrYm94L3JhZGlvIGJ1dHRvbnNcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1jb2xvcik7XG4gIH1cblxuICAmOmZvY3VzLXZpc2libGUge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJnKSk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJvcmRlci1jb2xvcik7XG4gICAgb3V0bGluZTogMDtcbiAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWJveC1zaGFkb3cpLCB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9XG4gIH1cblxuICAuYnRuLWNoZWNrOmZvY3VzLXZpc2libGUgKyAmIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tYm94LXNoYWRvdyksIHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH1cbiAgfVxuXG4gIC5idG4tY2hlY2s6Y2hlY2tlZCArICYsXG4gIDpub3QoLmJ0bi1jaGVjaykgKyAmOmFjdGl2ZSxcbiAgJjpmaXJzdC1jaGlsZDphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAmLnNob3cge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYmcpO1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGlmKCRlbmFibGUtZ3JhZGllbnRzLCBub25lLCBudWxsKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJvcmRlci1jb2xvcik7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1zaGFkb3cpKTtcblxuICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtc2hhZG93KSwgdmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICY6ZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQsXG4gIGZpZWxkc2V0OmRpc2FibGVkICYge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWNvbG9yKTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWJnKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBpZigkZW5hYmxlLWdyYWRpZW50cywgbm9uZSwgbnVsbCk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWJvcmRlci1jb2xvcik7XG4gICAgb3BhY2l0eTogdmFyKC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1vcGFjaXR5KTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cblxuLy9cbi8vIEFsdGVybmF0ZSBidXR0b25zXG4vL1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLXZhcmlhbnQtbG9vcHNcbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYnRuLSN7JGNvbG9yfSB7XG4gICAgQGlmICRjb2xvciA9PSBcImxpZ2h0XCIge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoXG4gICAgICAgICR2YWx1ZSxcbiAgICAgICAgJHZhbHVlLFxuICAgICAgICAkaG92ZXItYmFja2dyb3VuZDogc2hhZGUtY29sb3IoJHZhbHVlLCAkYnRuLWhvdmVyLWJnLXNoYWRlLWFtb3VudCksXG4gICAgICAgICRob3Zlci1ib3JkZXI6IHNoYWRlLWNvbG9yKCR2YWx1ZSwgJGJ0bi1ob3Zlci1ib3JkZXItc2hhZGUtYW1vdW50KSxcbiAgICAgICAgJGFjdGl2ZS1iYWNrZ3JvdW5kOiBzaGFkZS1jb2xvcigkdmFsdWUsICRidG4tYWN0aXZlLWJnLXNoYWRlLWFtb3VudCksXG4gICAgICAgICRhY3RpdmUtYm9yZGVyOiBzaGFkZS1jb2xvcigkdmFsdWUsICRidG4tYWN0aXZlLWJvcmRlci1zaGFkZS1hbW91bnQpXG4gICAgICApO1xuICAgIH0gQGVsc2UgaWYgJGNvbG9yID09IFwiZGFya1wiIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KFxuICAgICAgICAkdmFsdWUsXG4gICAgICAgICR2YWx1ZSxcbiAgICAgICAgJGhvdmVyLWJhY2tncm91bmQ6IHRpbnQtY29sb3IoJHZhbHVlLCAkYnRuLWhvdmVyLWJnLXRpbnQtYW1vdW50KSxcbiAgICAgICAgJGhvdmVyLWJvcmRlcjogdGludC1jb2xvcigkdmFsdWUsICRidG4taG92ZXItYm9yZGVyLXRpbnQtYW1vdW50KSxcbiAgICAgICAgJGFjdGl2ZS1iYWNrZ3JvdW5kOiB0aW50LWNvbG9yKCR2YWx1ZSwgJGJ0bi1hY3RpdmUtYmctdGludC1hbW91bnQpLFxuICAgICAgICAkYWN0aXZlLWJvcmRlcjogdGludC1jb2xvcigkdmFsdWUsICRidG4tYWN0aXZlLWJvcmRlci10aW50LWFtb3VudClcbiAgICAgICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkdmFsdWUsICR2YWx1ZSk7XG4gICAgfVxuICB9XG59XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYnRuLW91dGxpbmUtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBidXR0b24tb3V0bGluZS12YXJpYW50KCR2YWx1ZSk7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgYnRuLXZhcmlhbnQtbG9vcHNcblxuXG4vL1xuLy8gTGluayBidXR0b25zXG4vL1xuXG4vLyBNYWtlIGEgYnV0dG9uIGxvb2sgYW5kIGJlaGF2ZSBsaWtlIGEgbGlua1xuLmJ0bi1saW5rIHtcbiAgLS0jeyRwcmVmaXh9YnRuLWZvbnQtd2VpZ2h0OiAjeyRmb250LXdlaWdodC1ub3JtYWx9O1xuICAtLSN7JHByZWZpeH1idG4tY29sb3I6ICN7JGJ0bi1saW5rLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJnOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1jb2xvcjogI3skYnRuLWxpbmstaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1jb2xvcjogI3skYnRuLWxpbmstaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1jb2xvcjogI3skYnRuLWxpbmstZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWJveC1zaGFkb3c6IDAgMCAwICMwMDA7IC8vIENhbid0IHVzZSBgbm9uZWAgYXMga2V5d29yZCBuZWdhdGVzIGFsbCB2YWx1ZXMgd2hlbiB1c2VkIHdpdGggbXVsdGlwbGUgc2hhZG93c1xuICAtLSN7JHByZWZpeH1idG4tZm9jdXMtc2hhZG93LXJnYjogI3t0by1yZ2IobWl4KGNvbG9yLWNvbnRyYXN0KCRsaW5rLWNvbG9yKSwgJGxpbmstY29sb3IsIDE1JSkpfTtcblxuICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG5cbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1jb2xvcik7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1jb2xvcik7XG4gIH1cblxuICAvLyBObyBuZWVkIGZvciBhbiBhY3RpdmUgc3RhdGUgaGVyZVxufVxuXG5cbi8vXG4vLyBCdXR0b24gU2l6ZXNcbi8vXG5cbi5idG4tbGcge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS1sZywgJGJ0bi1wYWRkaW5nLXgtbGcsICRidG4tZm9udC1zaXplLWxnLCAkYnRuLWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4uYnRuLXNtIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktc20sICRidG4tcGFkZGluZy14LXNtLCAkYnRuLWZvbnQtc2l6ZS1zbSwgJGJ0bi1ib3JkZXItcmFkaXVzLXNtKTtcbn1cbiIsIi8vIEJ1dHRvbiB2YXJpYW50c1xuLy9cbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcbi8vIGFuZCBkaXNhYmxlZCBvcHRpb25zIGZvciBhbGwgYnV0dG9uc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLXZhcmlhbnQtbWl4aW5cbkBtaXhpbiBidXR0b24tdmFyaWFudChcbiAgJGJhY2tncm91bmQsXG4gICRib3JkZXIsXG4gICRjb2xvcjogY29sb3ItY29udHJhc3QoJGJhY2tncm91bmQpLFxuICAkaG92ZXItYmFja2dyb3VuZDogaWYoJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJGJhY2tncm91bmQsICRidG4taG92ZXItYmctc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1ob3Zlci1iZy10aW50LWFtb3VudCkpLFxuICAkaG92ZXItYm9yZGVyOiBpZigkY29sb3IgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCBzaGFkZS1jb2xvcigkYm9yZGVyLCAkYnRuLWhvdmVyLWJvcmRlci1zaGFkZS1hbW91bnQpLCB0aW50LWNvbG9yKCRib3JkZXIsICRidG4taG92ZXItYm9yZGVyLXRpbnQtYW1vdW50KSksXG4gICRob3Zlci1jb2xvcjogY29sb3ItY29udHJhc3QoJGhvdmVyLWJhY2tncm91bmQpLFxuICAkYWN0aXZlLWJhY2tncm91bmQ6IGlmKCRjb2xvciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLWFjdGl2ZS1iZy1zaGFkZS1hbW91bnQpLCB0aW50LWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLWFjdGl2ZS1iZy10aW50LWFtb3VudCkpLFxuICAkYWN0aXZlLWJvcmRlcjogaWYoJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJGJvcmRlciwgJGJ0bi1hY3RpdmUtYm9yZGVyLXNoYWRlLWFtb3VudCksIHRpbnQtY29sb3IoJGJvcmRlciwgJGJ0bi1hY3RpdmUtYm9yZGVyLXRpbnQtYW1vdW50KSksXG4gICRhY3RpdmUtY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRhY3RpdmUtYmFja2dyb3VuZCksXG4gICRkaXNhYmxlZC1iYWNrZ3JvdW5kOiAkYmFja2dyb3VuZCxcbiAgJGRpc2FibGVkLWJvcmRlcjogJGJvcmRlcixcbiAgJGRpc2FibGVkLWNvbG9yOiBjb2xvci1jb250cmFzdCgkZGlzYWJsZWQtYmFja2dyb3VuZClcbikge1xuICAtLSN7JHByZWZpeH1idG4tY29sb3I6ICN7JGNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJnOiAjeyRiYWNrZ3JvdW5kfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1jb2xvcjogI3skYm9yZGVyfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yOiAjeyRob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1iZzogI3skaG92ZXItYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6ICN7JGhvdmVyLWJvcmRlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1mb2N1cy1zaGFkb3ctcmdiOiAje3RvLXJnYihtaXgoJGNvbG9yLCAkYm9yZGVyLCAxNSUpKX07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtY29sb3I6ICN7JGFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYmc6ICN7JGFjdGl2ZS1iYWNrZ3JvdW5kfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1ib3JkZXItY29sb3I6ICN7JGFjdGl2ZS1ib3JkZXJ9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLXNoYWRvdzogI3skYnRuLWFjdGl2ZS1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWNvbG9yOiAjeyRkaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1iZzogI3skZGlzYWJsZWQtYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICN7JGRpc2FibGVkLWJvcmRlcn07XG59XG4vLyBzY3NzLWRvY3MtZW5kIGJ0bi12YXJpYW50LW1peGluXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tb3V0bGluZS12YXJpYW50LW1peGluXG5AbWl4aW4gYnV0dG9uLW91dGxpbmUtdmFyaWFudChcbiAgJGNvbG9yLFxuICAkY29sb3ItaG92ZXI6IGNvbG9yLWNvbnRyYXN0KCRjb2xvciksXG4gICRhY3RpdmUtYmFja2dyb3VuZDogJGNvbG9yLFxuICAkYWN0aXZlLWJvcmRlcjogJGNvbG9yLFxuICAkYWN0aXZlLWNvbG9yOiBjb2xvci1jb250cmFzdCgkYWN0aXZlLWJhY2tncm91bmQpXG4pIHtcbiAgLS0jeyRwcmVmaXh9YnRuLWNvbG9yOiAjeyRjb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItY29sb3I6ICN7JGNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yOiAjeyRjb2xvci1ob3Zlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1iZzogI3skYWN0aXZlLWJhY2tncm91bmR9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yOiAjeyRhY3RpdmUtYm9yZGVyfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWZvY3VzLXNoYWRvdy1yZ2I6ICN7dG8tcmdiKCRjb2xvcil9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWNvbG9yOiAjeyRhY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJnOiAjeyRhY3RpdmUtYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAjeyRhY3RpdmUtYm9yZGVyfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1zaGFkb3c6ICN7JGJ0bi1hY3RpdmUtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1jb2xvcjogI3skY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYmc6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAjeyRjb2xvcn07XG4gIC0tI3skcHJlZml4fWdyYWRpZW50OiBub25lO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tb3V0bGluZS12YXJpYW50LW1peGluXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tc2l6ZS1taXhpblxuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRib3JkZXItcmFkaXVzKSB7XG4gIC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXk6ICN7JHBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXg6ICN7JHBhZGRpbmcteH07XG4gIEBpbmNsdWRlIHJmcygkZm9udC1zaXplLCAtLSN7JHByZWZpeH1idG4tZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1yYWRpdXM6ICN7JGJvcmRlci1yYWRpdXN9O1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tc2l6ZS1taXhpblxuIiwiLmZhZGUge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWZhZGUpO1xuXG4gICY6bm90KC5zaG93KSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sbGFwc2UtY2xhc3Nlc1xuLmNvbGxhcHNlIHtcbiAgJjpub3QoLnNob3cpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5jb2xsYXBzaW5nIHtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWNvbGxhcHNlKTtcblxuICAmLmNvbGxhcHNlLWhvcml6b250YWwge1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWNvbGxhcHNlLXdpZHRoKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBjb2xsYXBzZS1jbGFzc2VzXG4iLCIvLyBUaGUgZHJvcGRvd24gd3JhcHBlciAoYDxkaXY+YClcbi5kcm9wdXAsXG4uZHJvcGVuZCxcbi5kcm9wZG93bixcbi5kcm9wc3RhcnQsXG4uZHJvcHVwLWNlbnRlcixcbi5kcm9wZG93bi1jZW50ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5kcm9wZG93bi10b2dnbGUge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIC8vIEdlbmVyYXRlIHRoZSBjYXJldCBhdXRvbWF0aWNhbGx5XG4gIEBpbmNsdWRlIGNhcmV0KCk7XG59XG5cbi8vIFRoZSBkcm9wZG93biBtZW51XG4uZHJvcGRvd24tbWVudSB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBkcm9wZG93bi1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi16aW5kZXg6ICN7JHppbmRleC1kcm9wZG93bn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLW1pbi13aWR0aDogI3skZHJvcGRvd24tbWluLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tcGFkZGluZy14OiAjeyRkcm9wZG93bi1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1wYWRkaW5nLXk6ICN7JGRyb3Bkb3duLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLXNwYWNlcjogI3skZHJvcGRvd24tc3BhY2VyfTtcbiAgQGluY2x1ZGUgcmZzKCRkcm9wZG93bi1mb250LXNpemUsIC0tI3skcHJlZml4fWRyb3Bkb3duLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWNvbG9yOiAjeyRkcm9wZG93bi1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJnOiAjeyRkcm9wZG93bi1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci1jb2xvcjogI3skZHJvcGRvd24tYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm9yZGVyLXJhZGl1czogI3skZHJvcGRvd24tYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci13aWR0aDogI3skZHJvcGRvd24tYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1czogI3skZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWRpdmlkZXItYmc6ICN7JGRyb3Bkb3duLWRpdmlkZXItYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15OiAjeyRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm94LXNoYWRvdzogI3skZHJvcGRvd24tYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstY29sb3I6ICN7JGRyb3Bkb3duLWxpbmstY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAjeyRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1ob3Zlci1iZzogI3skZHJvcGRvd24tbGluay1ob3Zlci1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAjeyRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAjeyRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICN7JGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLXBhZGRpbmcteDogI3skZHJvcGRvd24taXRlbS1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLXBhZGRpbmcteTogI3skZHJvcGRvd24taXRlbS1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItY29sb3I6ICN7JGRyb3Bkb3duLWhlYWRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXg6ICN7JGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItcGFkZGluZy15OiAjeyRkcm9wZG93bi1oZWFkZXItcGFkZGluZy15fTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBkcm9wZG93bi1jc3MtdmFyc1xuXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLXppbmRleCk7XG4gIGRpc3BsYXk6IG5vbmU7IC8vIG5vbmUgYnkgZGVmYXVsdCwgYnV0IGJsb2NrIG9uIFwib3BlblwiIG9mIHRoZSBtZW51XG4gIG1pbi13aWR0aDogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLW1pbi13aWR0aCk7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1wYWRkaW5nLXgpO1xuICBtYXJnaW46IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgbWFyZ2luIG9mIHVsXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tZm9udC1zaXplKSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tY29sb3IpO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBFbnN1cmVzIHByb3BlciBhbGlnbm1lbnQgaWYgcGFyZW50IGhhcyBpdCBjaGFuZ2VkIChlLmcuLCBtb2RhbCBmb290ZXIpXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm94LXNoYWRvdykpO1xuXG4gICZbZGF0YS1icy1wb3BwZXJdIHtcbiAgICB0b3A6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tc3BhY2VyKTtcbiAgfVxuXG4gIEBpZiAkZHJvcGRvd24tcGFkZGluZy15ID09IDAge1xuICAgID4gLmRyb3Bkb3duLWl0ZW06Zmlyc3QtY2hpbGQsXG4gICAgPiBsaTpmaXJzdC1jaGlsZCAuZHJvcGRvd24taXRlbSB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cykpO1xuICAgIH1cbiAgICA+IC5kcm9wZG93bi1pdGVtOmxhc3QtY2hpbGQsXG4gICAgPiBsaTpsYXN0LWNoaWxkIC5kcm9wZG93bi1pdGVtIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG4gICAgfVxuXG4gIH1cbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHJlc3BvbnNpdmUtYnJlYWtwb2ludHNcbi8vIFdlIGRlbGliZXJhdGVseSBoYXJkY29kZSB0aGUgYGJzLWAgcHJlZml4IGJlY2F1c2Ugd2UgY2hlY2tcbi8vIHRoaXMgY3VzdG9tIHByb3BlcnR5IGluIEpTIHRvIGRldGVybWluZSBQb3BwZXIncyBwb3NpdGlvbmluZ1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZHJvcGRvd24tbWVudSN7JGluZml4fS1zdGFydCB7XG4gICAgICAtLWJzLXBvc2l0aW9uOiBzdGFydDtcblxuICAgICAgJltkYXRhLWJzLXBvcHBlcl0ge1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZHJvcGRvd24tbWVudSN7JGluZml4fS1lbmQge1xuICAgICAgLS1icy1wb3NpdGlvbjogZW5kO1xuXG4gICAgICAmW2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCByZXNwb25zaXZlLWJyZWFrcG9pbnRzXG5cbi8vIEFsbG93IGZvciBkcm9wZG93bnMgdG8gZ28gYm90dG9tIHVwIChha2EsIGRyb3B1cC1tZW51KVxuLy8gSnVzdCBhZGQgLmRyb3B1cCBhZnRlciB0aGUgc3RhbmRhcmQgLmRyb3Bkb3duIGNsYXNzIGFuZCB5b3UncmUgc2V0LlxuLmRyb3B1cCB7XG4gIC5kcm9wZG93bi1tZW51W2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1zcGFjZXIpO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQodXApO1xuICB9XG59XG5cbi5kcm9wZW5kIHtcbiAgLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tc3BhY2VyKTtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KGVuZCk7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wc3RhcnQge1xuICAuZHJvcGRvd24tbWVudVtkYXRhLWJzLXBvcHBlcl0ge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tc3BhY2VyKTtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KHN0YXJ0KTtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cblxuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBgPGhyPmApIHdpdGhpbiB0aGUgZHJvcGRvd25cbi5kcm9wZG93bi1kaXZpZGVyIHtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15KSAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWRpdmlkZXItYmcpO1xuICBvcGFjaXR5OiAxOyAvLyBSZXZpc2l0IGluIHY2IHRvIGRlLWR1cGUgc3R5bGVzIHRoYXQgY29uZmxpY3Qgd2l0aCA8aHI+IGVsZW1lbnRcbn1cblxuLy8gTGlua3MsIGJ1dHRvbnMsIGFuZCBtb3JlIHdpdGhpbiB0aGUgZHJvcGRvd24gbWVudVxuLy9cbi8vIGA8YnV0dG9uPmAtc3BlY2lmaWMgc3R5bGVzIGFyZSBkZW5vdGVkIHdpdGggYC8vIEZvciA8YnV0dG9uPnNgXG4uZHJvcGRvd24taXRlbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWl0ZW0tcGFkZGluZy14KTtcbiAgY2xlYXI6IGJvdGg7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstY29sb3IpO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHNcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBwcmV2ZW50IGxpbmtzIGZyb20gcmFuZG9tbHkgYnJlYWtpbmcgb250byBuZXcgbGluZXNcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBib3JkZXI6IDA7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLWJvcmRlci1yYWRpdXMsIDApKTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstaG92ZXItY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWhvdmVyLWJnKSk7XG4gIH1cblxuICAmLmFjdGl2ZSxcbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1hY3RpdmUtYmcpKTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcik7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIG5vbmUsIG51bGwpO1xuICB9XG59XG5cbi5kcm9wZG93bi1tZW51LnNob3cge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gRHJvcGRvd24gc2VjdGlvbiBoZWFkZXJzXG4uZHJvcGRvd24taGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteCk7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIGZvciB1c2Ugd2l0aCBoZWFkaW5nIGVsZW1lbnRzXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLXNtKTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItY29sb3IpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBhcyB3aXRoID4gbGkgPiBhXG59XG5cbi8vIERyb3Bkb3duIHRleHRcbi5kcm9wZG93bi1pdGVtLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWl0ZW0tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taXRlbS1wYWRkaW5nLXgpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstY29sb3IpO1xufVxuXG4vLyBEYXJrIGRyb3Bkb3duc1xuLmRyb3Bkb3duLW1lbnUtZGFyayB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBkcm9wZG93bi1kYXJrLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWNvbG9yOiAjeyRkcm9wZG93bi1kYXJrLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tYmc6ICN7JGRyb3Bkb3duLWRhcmstYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm94LXNoYWRvdzogI3skZHJvcGRvd24tZGFyay1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1jb2xvcjogI3skZHJvcGRvd24tZGFyay1saW5rLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogI3skZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tZGl2aWRlci1iZzogI3skZHJvcGRvd24tZGFyay1kaXZpZGVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1ob3Zlci1iZzogI3skZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstbGluay1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogI3skZHJvcGRvd24tZGFyay1saW5rLWFjdGl2ZS1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstbGluay1kaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWhlYWRlci1jb2xvcjogI3skZHJvcGRvd24tZGFyay1oZWFkZXItY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIGRyb3Bkb3duLWRhcmstY3NzLXZhcnNcbn1cbiIsIi8vIHNjc3MtZG9jcy1zdGFydCBjYXJldC1taXhpbnNcbkBtaXhpbiBjYXJldC1kb3duKCR3aWR0aDogJGNhcmV0LXdpZHRoKSB7XG4gIGJvcmRlci10b3A6ICR3aWR0aCBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1sZWZ0OiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC11cCgkd2lkdGg6ICRjYXJldC13aWR0aCkge1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItcmlnaHQ6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogJHdpZHRoIHNvbGlkO1xuICBib3JkZXItbGVmdDogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtZW5kKCR3aWR0aDogJGNhcmV0LXdpZHRoKSB7XG4gIGJvcmRlci10b3A6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiAkd2lkdGggc29saWQ7XG59XG5cbkBtaXhpbiBjYXJldC1zdGFydCgkd2lkdGg6ICRjYXJldC13aWR0aCkge1xuICBib3JkZXItdG9wOiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkO1xuICBib3JkZXItYm90dG9tOiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldChcbiAgJGRpcmVjdGlvbjogZG93bixcbiAgJHdpZHRoOiAkY2FyZXQtd2lkdGgsXG4gICRzcGFjaW5nOiAkY2FyZXQtc3BhY2luZyxcbiAgJHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtdmVydGljYWwtYWxpZ25cbikge1xuICBAaWYgJGVuYWJsZS1jYXJldCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRzcGFjaW5nO1xuICAgICAgdmVydGljYWwtYWxpZ246ICR2ZXJ0aWNhbC1hbGlnbjtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBAaWYgJGRpcmVjdGlvbiA9PSBkb3duIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtZG93bigkd2lkdGgpO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHVwIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtdXAoJHdpZHRoKTtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBlbmQge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1lbmQoJHdpZHRoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGRpcmVjdGlvbiA9PSBzdGFydCB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkc3BhY2luZztcbiAgICAgICAgdmVydGljYWwtYWxpZ246ICR2ZXJ0aWNhbC1hbGlnbjtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtc3RhcnQoJHdpZHRoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmVtcHR5OjphZnRlciB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgY2FyZXQtbWl4aW5zXG4iLCIvLyBNYWtlIHRoZSBkaXYgYmVoYXZlIGxpa2UgYSBidXR0b25cbi5idG4tZ3JvdXAsXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLy8gbWF0Y2ggLmJ0biBhbGlnbm1lbnQgZ2l2ZW4gZm9udC1zaXplIGhhY2sgYWJvdmVcblxuICA+IC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgfVxuXG4gIC8vIEJyaW5nIHRoZSBob3ZlciwgZm9jdXNlZCwgYW5kIFwiYWN0aXZlXCIgYnV0dG9ucyB0byB0aGUgZnJvbnQgdG8gb3ZlcmxheVxuICAvLyB0aGUgYm9yZGVycyBwcm9wZXJseVxuICA+IC5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4sXG4gID4gLmJ0bi1jaGVjazpmb2N1cyArIC5idG4sXG4gID4gLmJ0bjpob3ZlcixcbiAgPiAuYnRuOmZvY3VzLFxuICA+IC5idG46YWN0aXZlLFxuICA+IC5idG4uYWN0aXZlIHtcbiAgICB6LWluZGV4OiAxO1xuICB9XG59XG5cbi8vIE9wdGlvbmFsOiBHcm91cCBtdWx0aXBsZSBidXR0b24gZ3JvdXBzIHRvZ2V0aGVyIGZvciBhIHRvb2xiYXJcbi5idG4tdG9vbGJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLmJ0bi1ncm91cCB7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJ0bi1ib3JkZXItcmFkaXVzKTtcblxuICAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzIHdoZW4gYnV0dG9ucyBhcmUgbmV4dCB0byBlYWNoIG90aGVyXG4gID4gOm5vdCguYnRuLWNoZWNrOmZpcnN0LWNoaWxkKSArIC5idG4sXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoI3skYnRuLWJvcmRlci13aWR0aH0gKiAtMSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIH1cblxuICAvLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcbiAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuICA+IC5idG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0OmZpcnN0LWNoaWxkLFxuICA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKDApO1xuICB9XG5cbiAgLy8gVGhlIGxlZnQgcmFkaXVzIHNob3VsZCBiZSAwIGlmIHRoZSBidXR0b24gaXM6XG4gIC8vIC0gdGhlIFwidGhpcmQgb3IgbW9yZVwiIGNoaWxkXG4gIC8vIC0gdGhlIHNlY29uZCBjaGlsZCBhbmQgdGhlIHByZXZpb3VzIGVsZW1lbnQgaXNuJ3QgYC5idG4tY2hlY2tgIChtYWtpbmcgaXQgdGhlIGZpcnN0IGNoaWxkIHZpc3VhbGx5KVxuICAvLyAtIHBhcnQgb2YgYSBidG4tZ3JvdXAgd2hpY2ggaXNuJ3QgdGhlIGZpcnN0IGNoaWxkXG4gID4gLmJ0bjpudGgtY2hpbGQobiArIDMpLFxuICA+IDpub3QoLmJ0bi1jaGVjaykgKyAuYnRuLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItc3RhcnQtcmFkaXVzKDApO1xuICB9XG59XG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGJ1dHRvbiBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXIgbWFuaXB1bGF0aW9uLlxuXG4uYnRuLWdyb3VwLXNtID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1zbTsgfVxuLmJ0bi1ncm91cC1sZyA+IC5idG4geyBAZXh0ZW5kIC5idG4tbGc7IH1cblxuXG4vL1xuLy8gU3BsaXQgYnV0dG9uIGRyb3Bkb3duc1xuLy9cblxuLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xuXG4gICY6OmFmdGVyLFxuICAuZHJvcHVwICY6OmFmdGVyLFxuICAuZHJvcGVuZCAmOjphZnRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAuZHJvcHN0YXJ0ICY6OmJlZm9yZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5idG4tc20gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG59XG5cbi5idG4tbGcgKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG59XG5cblxuLy8gVGhlIGNsaWNrYWJsZSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBtZW51XG4vLyBTZXQgdGhlIHNhbWUgaW5zZXQgc2hhZG93IGFzIHRoZSA6YWN0aXZlIHN0YXRlXG4uYnRuLWdyb3VwLnNob3cgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG5cbiAgLy8gU2hvdyBubyBzaGFkb3cgZm9yIGAuYnRuLWxpbmtgIHNpbmNlIGl0IGhhcyBubyBvdGhlciBidXR0b24gc3R5bGVzLlxuICAmLmJ0bi1saW5rIHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cblxuLy9cbi8vIFZlcnRpY2FsIGJ1dHRvbiBncm91cHNcbi8vXG5cbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoI3skYnRuLWJvcmRlci13aWR0aH0gKiAtMSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIH1cblxuICAvLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcbiAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xuICB9XG5cbiAgPiAuYnRuIH4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBLaWNrc3RhcnQgYW55IG5hdmlnYXRpb24gY29tcG9uZW50IHdpdGggYSBzZXQgb2Ygc3R5bGUgcmVzZXRzLiBXb3JrcyB3aXRoXG4vLyBgPG5hdj5gcywgYDx1bD5gcyBvciBgPG9sPmBzLlxuXG4ubmF2IHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdi1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1wYWRkaW5nLXg6ICN7JG5hdi1saW5rLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLXBhZGRpbmcteTogI3skbmF2LWxpbmstcGFkZGluZy15fTtcbiAgQGluY2x1ZGUgcmZzKCRuYXYtbGluay1mb250LXNpemUsIC0tI3skcHJlZml4fW5hdi1saW5rLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLWZvbnQtd2VpZ2h0OiAjeyRuYXYtbGluay1mb250LXdlaWdodH07XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLWNvbG9yOiAjeyRuYXYtbGluay1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLWhvdmVyLWNvbG9yOiAjeyRuYXYtbGluay1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiAjeyRuYXYtbGluay1kaXNhYmxlZC1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbmF2LWNzcy12YXJzXG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5uYXYtbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9bmF2LWxpbmstcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9bmF2LWxpbmstcGFkZGluZy14KTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1uYXYtbGluay1mb250LXNpemUpKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1uYXYtbGluay1mb250LXdlaWdodCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LWxpbmstY29sb3IpO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkbmF2LWxpbmstdHJhbnNpdGlvbik7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtbGluay1ob3Zlci1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gIH1cblxuICAmOmZvY3VzLXZpc2libGUge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogJG5hdi1saW5rLWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdGF0ZSBsaWdodGVucyB0ZXh0XG4gICYuZGlzYWJsZWQge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LWxpbmstZGlzYWJsZWQtY29sb3IpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgfVxufVxuXG4vL1xuLy8gVGFic1xuLy9cblxuLm5hdi10YWJzIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdi10YWJzLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci13aWR0aDogI3skbmF2LXRhYnMtYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAjeyRuYXYtdGFicy1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItcmFkaXVzOiAjeyRuYXYtdGFicy1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICN7JG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I6ICN7JG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICN7JG5hdi10YWJzLWxpbmstYWN0aXZlLWJnfTtcbiAgLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yOiAjeyRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG5hdi10YWJzLWNzcy12YXJzXG5cbiAgYm9yZGVyLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci1jb2xvcik7XG5cbiAgLm5hdi1saW5rIHtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci13aWR0aCkgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci1yYWRpdXMpKTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICAvLyBQcmV2ZW50cyBhY3RpdmUgLm5hdi1saW5rIHRhYiBvdmVybGFwcGluZyBmb2N1cyBvdXRsaW5lIG9mIHByZXZpb3VzL25leHQgLm5hdi1saW5rXG4gICAgICBpc29sYXRpb246IGlzb2xhdGU7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcik7XG4gICAgfVxuXG4gICAgJi5kaXNhYmxlZCxcbiAgICAmOmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LWxpbmstZGlzYWJsZWQtY29sb3IpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5uYXYtaXRlbS5zaG93IC5uYXYtbGluayB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWxpbmstYWN0aXZlLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3IpO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIC8vIE1ha2UgZHJvcGRvd24gYm9yZGVyIG92ZXJsYXAgdGFiIGJvcmRlclxuICAgIG1hcmdpbi10b3A6IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgLy8gUmVtb3ZlIHRoZSB0b3Agcm91bmRlZCBjb3JuZXJzIGhlcmUgc2luY2UgdGhlcmUgaXMgYSBoYXJkIGVkZ2UgYWJvdmUgdGhlIG1lbnVcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBQaWxsc1xuLy9cblxuLm5hdi1waWxscyB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBuYXYtcGlsbHMtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICN7JG5hdi1waWxscy1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yOiAjeyRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXYtcGlsbHMtbGluay1hY3RpdmUtYmc6ICN7JG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZ307XG4gIC8vIHNjc3MtZG9jcy1lbmQgbmF2LXBpbGxzLWNzcy12YXJzXG5cbiAgLm5hdi1saW5rIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1uYXYtcGlsbHMtYm9yZGVyLXJhZGl1cykpO1xuXG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLWRpc2FibGVkLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAuc2hvdyA+IC5uYXYtbGluayB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3IpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKHZhcigtLSN7JHByZWZpeH1uYXYtcGlsbHMtbGluay1hY3RpdmUtYmcpKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBVbmRlcmxpbmVcbi8vXG5cbi5uYXYtdW5kZXJsaW5lIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdi11bmRlcmxpbmUtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bmF2LXVuZGVybGluZS1nYXA6ICN7JG5hdi11bmRlcmxpbmUtZ2FwfTtcbiAgLS0jeyRwcmVmaXh9bmF2LXVuZGVybGluZS1ib3JkZXItd2lkdGg6ICN7JG5hdi11bmRlcmxpbmUtYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9bmF2LXVuZGVybGluZS1saW5rLWFjdGl2ZS1jb2xvcjogI3skbmF2LXVuZGVybGluZS1saW5rLWFjdGl2ZS1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbmF2LXVuZGVybGluZS1jc3MtdmFyc1xuXG4gIGdhcDogdmFyKC0tI3skcHJlZml4fW5hdi11bmRlcmxpbmUtZ2FwKTtcblxuICAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGJvcmRlci1ib3R0b206IHZhcigtLSN7JHByZWZpeH1uYXYtdW5kZXJsaW5lLWJvcmRlci13aWR0aCkgc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogY3VycmVudGNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5zaG93ID4gLm5hdi1saW5rIHtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtdW5kZXJsaW5lLWxpbmstYWN0aXZlLWNvbG9yKTtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiBjdXJyZW50Y29sb3I7XG4gIH1cbn1cblxuXG4vL1xuLy8gSnVzdGlmaWVkIHZhcmlhbnRzXG4vL1xuXG4ubmF2LWZpbGwge1xuICA+IC5uYXYtbGluayxcbiAgLm5hdi1pdGVtIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLm5hdi1qdXN0aWZpZWQge1xuICA+IC5uYXYtbGluayxcbiAgLm5hdi1pdGVtIHtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLm5hdi1maWxsLFxuLm5hdi1qdXN0aWZpZWQge1xuICAubmF2LWl0ZW0gLm5hdi1saW5rIHtcbiAgICB3aWR0aDogMTAwJTsgLy8gTWFrZSBzdXJlIGJ1dHRvbiB3aWxsIGdyb3dcbiAgfVxufVxuXG5cbi8vIFRhYmJhYmxlIHRhYnNcbi8vXG4vLyBIaWRlIHRhYmJhYmxlIHBhbmVzIHRvIHN0YXJ0LCBzaG93IHRoZW0gd2hlbiBgLmFjdGl2ZWBcblxuLnRhYi1jb250ZW50IHtcbiAgPiAudGFiLXBhbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgPiAuYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuIiwiLy8gTmF2YmFyXG4vL1xuLy8gUHJvdmlkZSBhIHN0YXRpYyBuYXZiYXIgZnJvbSB3aGljaCB3ZSBleHBhbmQgdG8gY3JlYXRlIGZ1bGwtd2lkdGgsIGZpeGVkLCBhbmRcbi8vIG90aGVyIG5hdmJhciB2YXJpYXRpb25zLlxuXG4ubmF2YmFyIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdmJhci1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1uYXZiYXItcGFkZGluZy14OiAje2lmKCRuYXZiYXItcGFkZGluZy14ID09IG51bGwsIDAsICRuYXZiYXItcGFkZGluZy14KX07XG4gIC0tI3skcHJlZml4fW5hdmJhci1wYWRkaW5nLXk6ICN7JG5hdmJhci1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItY29sb3I6ICN7JG5hdmJhci1saWdodC1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1ob3Zlci1jb2xvcjogI3skbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWRpc2FibGVkLWNvbG9yOiAjeyRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYWN0aXZlLWNvbG9yOiAjeyRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLXBhZGRpbmcteTogI3skbmF2YmFyLWJyYW5kLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1tYXJnaW4tZW5kOiAjeyRuYXZiYXItYnJhbmQtbWFyZ2luLWVuZH07XG4gIC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1mb250LXNpemU6ICN7JG5hdmJhci1icmFuZC1mb250LXNpemV9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtY29sb3I6ICN7JG5hdmJhci1saWdodC1icmFuZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1ob3Zlci1jb2xvcjogI3skbmF2YmFyLWxpZ2h0LWJyYW5kLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDogI3skbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLXBhZGRpbmcteTogI3skbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItcGFkZGluZy14OiAjeyRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1mb250LXNpemU6ICN7JG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZX07XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWljb24tYmc6ICN7ZXNjYXBlLXN2ZygkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZyl9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1ib3JkZXItY29sb3I6ICN7JG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXM6ICN7JG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1mb2N1cy13aWR0aDogI3skbmF2YmFyLXRvZ2dsZXItZm9jdXMtd2lkdGh9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci10cmFuc2l0aW9uOiAjeyRuYXZiYXItdG9nZ2xlci10cmFuc2l0aW9ufTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBuYXZiYXItY3NzLXZhcnNcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgLy8gYWxsb3cgdXMgdG8gZG8gdGhlIGxpbmUgYnJlYWsgZm9yIGNvbGxhcHNpbmcgY29udGVudFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IC8vIHNwYWNlIG91dCBicmFuZCBmcm9tIGxvZ29cbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fW5hdmJhci1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1uYXZiYXItcGFkZGluZy14KTtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoKTtcblxuICAvLyBCZWNhdXNlIGZsZXggcHJvcGVydGllcyBhcmVuJ3QgaW5oZXJpdGVkLCB3ZSBuZWVkIHRvIHJlZGVjbGFyZSB0aGVzZSBmaXJzdFxuICAvLyBmZXcgcHJvcGVydGllcyBzbyB0aGF0IGNvbnRlbnQgbmVzdGVkIHdpdGhpbiBiZWhhdmUgcHJvcGVybHkuXG4gIC8vIFRoZSBgZmxleC13cmFwYCBwcm9wZXJ0eSBpcyBpbmhlcml0ZWQgdG8gc2ltcGxpZnkgdGhlIGV4cGFuZGVkIG5hdmJhcnNcbiAgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBpbmhlcml0O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG5cbiAgPiAuY29udGFpbmVyLFxuICA+IC5jb250YWluZXItZmx1aWQge1xuICAgIEBleHRlbmQgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXM7XG4gIH1cblxuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICA+IC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRocyl9IHtcbiAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXM7XG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2YmFyIGJyYW5kXG4vL1xuLy8gVXNlZCBmb3IgYnJhbmQsIHByb2plY3QsIG9yIHNpdGUgbmFtZXMuXG5cbi5uYXZiYXItYnJhbmQge1xuICBwYWRkaW5nLXRvcDogdmFyKC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1wYWRkaW5nLXkpO1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1wYWRkaW5nLXkpO1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtbWFyZ2luLWVuZCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSkpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1jb2xvcik7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1ob3Zlci1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgbmF2XG4vL1xuLy8gQ3VzdG9tIG5hdmJhciBuYXZpZ2F0aW9uIChkb2Vzbid0IHJlcXVpcmUgYC5uYXZgLCBidXQgZG9lcyBtYWtlIHVzZSBvZiBgLm5hdi1saW5rYCkuXG5cbi5uYXZiYXItbmF2IHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdmJhci1uYXYtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstcGFkZGluZy14OiAwO1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1wYWRkaW5nLXk6ICN7JG5hdi1saW5rLXBhZGRpbmcteX07XG4gIEBpbmNsdWRlIHJmcygkbmF2LWxpbmstZm9udC1zaXplLCAtLSN7JHByZWZpeH1uYXYtbGluay1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1mb250LXdlaWdodDogI3skbmF2LWxpbmstZm9udC13ZWlnaHR9O1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1jb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1jb2xvcik7XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLWhvdmVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWhvdmVyLWNvbG9yKTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstZGlzYWJsZWQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItZGlzYWJsZWQtY29sb3IpO1xuICAvLyBzY3NzLWRvY3MtZW5kIG5hdmJhci1uYXYtY3NzLXZhcnNcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyAvLyBjYW5ub3QgdXNlIGBpbmhlcml0YCB0byBnZXQgdGhlIGAubmF2YmFyYHMgdmFsdWVcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIC5uYXYtbGluayB7XG4gICAgJi5hY3RpdmUsXG4gICAgJi5zaG93IHtcbiAgICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWFjdGl2ZS1jb2xvcik7XG4gICAgfVxuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdGV4dFxuLy9cbi8vXG5cbi5uYXZiYXItdGV4dCB7XG4gIHBhZGRpbmctdG9wOiAkbmF2LWxpbmstcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJG5hdi1saW5rLXBhZGRpbmcteTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItY29sb3IpO1xuXG4gIGEsXG4gIGE6aG92ZXIsXG4gIGE6Zm9jdXMgIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1hY3RpdmUtY29sb3IpO1xuICB9XG59XG5cblxuLy8gUmVzcG9uc2l2ZSBuYXZiYXJcbi8vXG4vLyBDdXN0b20gc3R5bGVzIGZvciByZXNwb25zaXZlIGNvbGxhcHNpbmcgYW5kIHRvZ2dsaW5nIG9mIG5hdmJhciBjb250ZW50cy5cbi8vIFBvd2VyZWQgYnkgdGhlIGNvbGxhcHNlIEJvb3RzdHJhcCBKYXZhU2NyaXB0IHBsdWdpbi5cblxuLy8gV2hlbiBjb2xsYXBzZWQsIHByZXZlbnQgdGhlIHRvZ2dsZWFibGUgbmF2YmFyIGNvbnRlbnRzIGZyb20gYXBwZWFyaW5nIGluXG4vLyB0aGUgZGVmYXVsdCBmbGV4Ym94IHJvdyBvcmllbnRhdGlvbi4gUmVxdWlyZXMgdGhlIHVzZSBvZiBgZmxleC13cmFwOiB3cmFwYFxuLy8gb24gdGhlIGAubmF2YmFyYCBwYXJlbnQuXG4ubmF2YmFyLWNvbGxhcHNlIHtcbiAgZmxleC1iYXNpczogMTAwJTtcbiAgZmxleC1ncm93OiAxO1xuICAvLyBGb3IgYWx3YXlzIGV4cGFuZGVkIG9yIGV4dHJhIGZ1bGwgbmF2YmFycywgZW5zdXJlIGNvbnRlbnQgYWxpZ25zIGl0c2VsZlxuICAvLyBwcm9wZXJseSB2ZXJ0aWNhbGx5LiBDYW4gYmUgZWFzaWx5IG92ZXJyaWRkZW4gd2l0aCBmbGV4IHV0aWxpdGllcy5cbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLy8gQnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbmF2YmFyIHdoZW4gaW4gaXRzIGNvbGxhcHNlZCBzdGF0ZVxuLm5hdmJhci10b2dnbGVyIHtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLXBhZGRpbmcteCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItZm9udC1zaXplKSk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItYm9yZGVyLWNvbG9yKTsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbih2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItdHJhbnNpdGlvbikpO1xuXG4gICY6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIHZhcigtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1mb2N1cy13aWR0aCk7XG4gIH1cbn1cblxuLy8gS2VlcCBhcyBhIHNlcGFyYXRlIGVsZW1lbnQgc28gZm9sa3MgY2FuIGVhc2lseSBvdmVycmlkZSBpdCB3aXRoIGFub3RoZXIgaWNvblxuLy8gb3IgaW1hZ2UgZmlsZSBhcyBuZWVkZWQuXG4ubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEuNWVtO1xuICBoZWlnaHQ6IDEuNWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItaWNvbi1iZyk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xufVxuXG4ubmF2YmFyLW5hdi1zY3JvbGwge1xuICBtYXgtaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9c2Nyb2xsLWhlaWdodCwgNzV2aCk7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItZXhwYW5kLWxvb3Bcbi8vIEdlbmVyYXRlIHNlcmllcyBvZiBgLm5hdmJhci1leHBhbmQtKmAgcmVzcG9uc2l2ZSBjbGFzc2VzIGZvciBjb25maWd1cmluZ1xuLy8gd2hlcmUgeW91ciBuYXZiYXIgY29sbGFwc2VzLlxuLm5hdmJhci1leHBhbmQge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJG5leHQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL3NlbGVjdG9yLW5vLXVuaW9uLWNsYXNzLW5hbWVcbiAgICAmI3skaW5maXh9IHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5leHQpIHtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgICAgICAubmF2YmFyLW5hdiB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tI3skcHJlZml4fW5hdmJhci1uYXYtbGluay1wYWRkaW5nLXgpO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItY29sbGFwc2Uge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci10b2dnbGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLm9mZmNhbnZhcyB7XG4gICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICB6LWluZGV4OiBhdXRvO1xuICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihub25lKTtcbiAgICAgICAgICAvLyBzdHlsZWxpbnQtZW5hYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4gICAgICAgICAgLm9mZmNhbnZhcy1oZWFkZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAub2ZmY2FudmFzLWJvZHkge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBuYXZiYXItZXhwYW5kLWxvb3BcblxuLy8gTmF2YmFyIHRoZW1lc1xuLy9cbi8vIFN0eWxlcyBmb3Igc3dpdGNoaW5nIGJldHdlZW4gbmF2YmFycyB3aXRoIGxpZ2h0IG9yIGRhcmsgYmFja2dyb3VuZC5cblxuLm5hdmJhci1saWdodCB7XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImAubmF2YmFyLWxpZ2h0YFwiLCBcInY1LjIuMFwiLCBcInY2LjAuMFwiLCB0cnVlKTtcbn1cblxuLm5hdmJhci1kYXJrLFxuLm5hdmJhcltkYXRhLWJzLXRoZW1lPVwiZGFya1wiXSB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItZGFyay1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1uYXZiYXItY29sb3I6ICN7JG5hdmJhci1kYXJrLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWhvdmVyLWNvbG9yOiAjeyRuYXZiYXItZGFyay1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1kaXNhYmxlZC1jb2xvcjogI3skbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYWN0aXZlLWNvbG9yOiAjeyRuYXZiYXItZGFyay1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtY29sb3I6ICN7JG5hdmJhci1kYXJrLWJyYW5kLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLWhvdmVyLWNvbG9yOiAjeyRuYXZiYXItZGFyay1icmFuZC1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWJvcmRlci1jb2xvcjogI3skbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1pY29uLWJnOiAje2VzY2FwZS1zdmcoJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZyl9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG5hdmJhci1kYXJrLWNzcy12YXJzXG59XG5cbkBpZiAkZW5hYmxlLWRhcmstbW9kZSB7XG4gIEBpbmNsdWRlIGNvbG9yLW1vZGUoZGFyaykge1xuICAgIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgICAgIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWljb24tYmc6ICN7ZXNjYXBlLXN2ZygkbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnKX07XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5jYXJkIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcmQtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9Y2FyZC1zcGFjZXIteTogI3skY2FyZC1zcGFjZXIteX07XG4gIC0tI3skcHJlZml4fWNhcmQtc3BhY2VyLXg6ICN7JGNhcmQtc3BhY2VyLXh9O1xuICAtLSN7JHByZWZpeH1jYXJkLXRpdGxlLXNwYWNlci15OiAjeyRjYXJkLXRpdGxlLXNwYWNlci15fTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC10aXRsZS1jb2xvcjogI3skY2FyZC10aXRsZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWNhcmQtc3VidGl0bGUtY29sb3I6ICN7JGNhcmQtc3VidGl0bGUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1jYXJkLWJvcmRlci13aWR0aDogI3skY2FyZC1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1jYXJkLWJvcmRlci1jb2xvcjogI3skY2FyZC1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1jYXJkLWJvcmRlci1yYWRpdXM6ICN7JGNhcmQtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWNhcmQtYm94LXNoYWRvdzogI3skY2FyZC1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzOiAjeyRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXk6ICN7JGNhcmQtY2FwLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteDogI3skY2FyZC1jYXAtcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1jYXAtYmc6ICN7JGNhcmQtY2FwLWJnfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1jYXAtY29sb3I6ICN7JGNhcmQtY2FwLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1oZWlnaHQ6ICN7JGNhcmQtaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1jb2xvcjogI3skY2FyZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWNhcmQtYmc6ICN7JGNhcmQtYmd9O1xuICAtLSN7JHByZWZpeH1jYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6ICN7JGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZ307XG4gIC0tI3skcHJlZml4fWNhcmQtZ3JvdXAtbWFyZ2luOiAjeyRjYXJkLWdyb3VwLW1hcmdpbn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgY2FyZC1jc3MtdmFyc1xuXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLXdpZHRoOiAwOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjI3NDAjaXNzdWVjb21tZW50LTMwNTg2ODEwNlxuICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1jYXJkLWhlaWdodCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcik7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtYmcpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IGJvcmRlci1ib3g7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1jYXJkLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3gtc2hhZG93KSk7XG5cbiAgPiBociB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgPiAubGlzdC1ncm91cCB7XG4gICAgYm9yZGVyLXRvcDogaW5oZXJpdDtcbiAgICBib3JkZXItYm90dG9tOiBpbmhlcml0O1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCAge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgICB9XG4gIH1cblxuICAvLyBEdWUgdG8gc3BlY2lmaWNpdHkgb2YgdGhlIGFib3ZlIHNlbGVjdG9yIChgLmNhcmQgPiAubGlzdC1ncm91cGApLCB3ZSBtdXN0XG4gIC8vIHVzZSBhIGNoaWxkIHNlbGVjdG9yIGhlcmUgdG8gcHJldmVudCBkb3VibGUgYm9yZGVycy5cbiAgPiAuY2FyZC1oZWFkZXIgKyAubGlzdC1ncm91cCxcbiAgPiAubGlzdC1ncm91cCArIC5jYXJkLWZvb3RlciB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxufVxuXG4uY2FyZC1ib2R5IHtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIGZvciBkZWNrcyBhbmQgZ3JvdXBzIHNvIHRoYXQgY2FyZCBibG9ja3MgdGFrZSB1cFxuICAvLyBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlLCBlbnN1cmluZyBmb290ZXJzIGFyZSBhbGlnbmVkIHRvIHRoZSBib3R0b20uXG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1zcGFjZXIteSkgdmFyKC0tI3skcHJlZml4fWNhcmQtc3BhY2VyLXgpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtY29sb3IpO1xufVxuXG4uY2FyZC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLSN7JHByZWZpeH1jYXJkLXRpdGxlLXNwYWNlci15KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLXRpdGxlLWNvbG9yKTtcbn1cblxuLmNhcmQtc3VidGl0bGUge1xuICBtYXJnaW4tdG9wOiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1jYXJkLXRpdGxlLXNwYWNlci15KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1zdWJ0aXRsZS1jb2xvcik7XG59XG5cbi5jYXJkLXRleHQ6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLWxpbmsge1xuICAmOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgfVxuXG4gICsgLmNhcmQtbGluayB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLSN7JHByZWZpeH1jYXJkLXNwYWNlci14KTtcbiAgfVxufVxuXG4vL1xuLy8gT3B0aW9uYWwgdGV4dHVhbCBjYXBzXG4vL1xuXG4uY2FyZC1oZWFkZXIge1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy14KTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVtb3ZlcyB0aGUgZGVmYXVsdCBtYXJnaW4tYm90dG9tIG9mIDxoTj5cbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1iZyk7XG4gIGJvcmRlci1ib3R0b206IHZhcigtLSN7JHByZWZpeH1jYXJkLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLWNvbG9yKTtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpIHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpIDAgMCk7XG4gIH1cbn1cblxuLmNhcmQtZm9vdGVyIHtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtYmcpO1xuICBib3JkZXItdG9wOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1jYXJkLWJvcmRlci1jb2xvcik7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgMCB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gSGVhZGVyIG5hdnNcbi8vXG5cbi5jYXJkLWhlYWRlci10YWJzIHtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXkpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBib3JkZXItYm90dG9tOiAwO1xuXG4gIC5uYXYtbGluay5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLWJnKTtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1iZyk7XG4gIH1cbn1cblxuLmNhcmQtaGVhZGVyLXBpbGxzIHtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxufVxuXG4vLyBDYXJkIGltYWdlXG4uY2FyZC1pbWctb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy10b3AsXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgd2lkdGg6IDEwMCU7IC8vIFJlcXVpcmVkIGJlY2F1c2Ugd2UgdXNlIGZsZXhib3ggYW5kIHRoaXMgaW5oZXJlbnRseSBhcHBsaWVzIGFsaWduLXNlbGY6IHN0cmV0Y2hcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLXRvcCB7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbn1cblxuXG4vL1xuLy8gQ2FyZCBncm91cHNcbi8vXG5cbi5jYXJkLWdyb3VwIHtcbiAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAvLyB0byBkaXNwbGF5IHByb3Blcmx5LlxuICA+IC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ncm91cC1tYXJnaW4pO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXG4gICAgLy8gdG8gZGlzcGxheSBwcm9wZXJseS5cbiAgICA+IC5jYXJkIHtcbiAgICAgIC8vIEZsZXhidWdzICM0OiBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzI2ZsZXhidWctNFxuICAgICAgZmxleDogMSAwIDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgKyAuY2FyZCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgIH1cblxuICAgICAgLy8gSGFuZGxlIHJvdW5kZWQgY29ybmVyc1xuICAgICAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWVuZC1yYWRpdXMoMCk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhcmQtaW1nLWJvdHRvbSxcbiAgICAgICAgICAuY2FyZC1mb290ZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXN0YXJ0LXJhZGl1cygwKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5hY2NvcmRpb24ge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgYWNjb3JkaW9uLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1jb2xvcjogI3skYWNjb3JkaW9uLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJnOiAjeyRhY2NvcmRpb24tYmd9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tdHJhbnNpdGlvbjogI3skYWNjb3JkaW9uLXRyYW5zaXRpb259O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLWNvbG9yOiAjeyRhY2NvcmRpb24tYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci13aWR0aDogI3skYWNjb3JkaW9uLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItcmFkaXVzOiAjeyRhY2NvcmRpb24tYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1pbm5lci1ib3JkZXItcmFkaXVzOiAjeyRhY2NvcmRpb24taW5uZXItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tcGFkZGluZy14OiAjeyRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tcGFkZGluZy15OiAjeyRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tY29sb3I6ICN7JGFjY29yZGlvbi1idXR0b24tY29sb3J9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWJnOiAjeyRhY2NvcmRpb24tYnV0dG9uLWJnfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uOiAje2VzY2FwZS1zdmcoJGFjY29yZGlvbi1idXR0b24taWNvbil9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24td2lkdGg6ICN7JGFjY29yZGlvbi1pY29uLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXRyYW5zZm9ybTogI3skYWNjb3JkaW9uLWljb24tdHJhbnNmb3JtfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXRyYW5zaXRpb246ICN7JGFjY29yZGlvbi1pY29uLXRyYW5zaXRpb259O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWFjdGl2ZS1pY29uOiAje2VzY2FwZS1zdmcoJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWljb24pfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1mb2N1cy1ib3JkZXItY29sb3I6ICN7JGFjY29yZGlvbi1idXR0b24tZm9jdXMtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1mb2N1cy1ib3gtc2hhZG93OiAjeyRhY2NvcmRpb24tYnV0dG9uLWZvY3VzLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9keS1wYWRkaW5nLXg6ICN7JGFjY29yZGlvbi1ib2R5LXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1ib2R5LXBhZGRpbmcteTogI3skYWNjb3JkaW9uLWJvZHktcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWFjdGl2ZS1jb2xvcjogI3skYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYWN0aXZlLWJnOiAjeyRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1iZ307XG4gIC8vIHNjc3MtZG9jcy1lbmQgYWNjb3JkaW9uLWNzcy12YXJzXG59XG5cbi5hY2NvcmRpb24tYnV0dG9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1wYWRkaW5nLXgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1iYXNlKTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gUmVzZXQgYnV0dG9uIHN0eWxlXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWJnKTtcbiAgYm9yZGVyOiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICBvdmVyZmxvdy1hbmNob3I6IG5vbmU7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24odmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi10cmFuc2l0aW9uKSk7XG5cbiAgJjpub3QoLmNvbGxhcHNlZCkge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWFjdGl2ZS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1hY3RpdmUtYmcpO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXdpZHRoKSkgMCB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci1jb2xvcik7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1hY3RpdmUtaWNvbik7XG4gICAgICB0cmFuc2Zvcm06IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24tdHJhbnNmb3JtKTtcbiAgICB9XG4gIH1cblxuICAvLyBBY2NvcmRpb24gaWNvblxuICAmOjphZnRlciB7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24td2lkdGgpO1xuICAgIGhlaWdodDogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbi13aWR0aCk7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbi13aWR0aCk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbih2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXRyYW5zaXRpb24pKTtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIHotaW5kZXg6IDI7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tZm9jdXMtYm9yZGVyLWNvbG9yKTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICB9XG59XG5cbi5hY2NvcmRpb24taGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmFjY29yZGlvbi1pdGVtIHtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJnKTtcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItY29sb3IpO1xuXG4gICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItcmFkaXVzKSk7XG5cbiAgICAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgICB9XG4gIH1cblxuICAmOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cblxuICAvLyBPbmx5IHNldCBhIGJvcmRlci1yYWRpdXMgb24gdGhlIGxhc3QgaXRlbSBpZiB0aGUgYWNjb3JkaW9uIGlzIGNvbGxhcHNlZFxuICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXModmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItcmFkaXVzKSk7XG5cbiAgICAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICAmLmNvbGxhcHNlZCB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24taW5uZXItYm9yZGVyLXJhZGl1cykpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5hY2NvcmRpb24tY29sbGFwc2Uge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXModmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItcmFkaXVzKSk7XG4gICAgfVxuICB9XG59XG5cbi5hY2NvcmRpb24tYm9keSB7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9keS1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9keS1wYWRkaW5nLXgpO1xufVxuXG5cbi8vIEZsdXNoIGFjY29yZGlvbiBpdGVtc1xuLy9cbi8vIFJlbW92ZSBib3JkZXJzIGFuZCBib3JkZXItcmFkaXVzIHRvIGtlZXAgYWNjb3JkaW9uIGl0ZW1zIGVkZ2UtdG8tZWRnZS5cblxuLmFjY29yZGlvbi1mbHVzaCB7XG4gIC5hY2NvcmRpb24tY29sbGFwc2Uge1xuICAgIGJvcmRlci13aWR0aDogMDtcbiAgfVxuXG4gIC5hY2NvcmRpb24taXRlbSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHsgYm9yZGVyLXRvcDogMDsgfVxuICAgICY6bGFzdC1jaGlsZCB7IGJvcmRlci1ib3R0b206IDA7IH1cblxuICAgIC5hY2NvcmRpb24tYnV0dG9uIHtcbiAgICAgICYsXG4gICAgICAmLmNvbGxhcHNlZCB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBpZiAkZW5hYmxlLWRhcmstbW9kZSB7XG4gIEBpbmNsdWRlIGNvbG9yLW1vZGUoZGFyaykge1xuICAgIC5hY2NvcmRpb24tYnV0dG9uOjphZnRlciB7XG4gICAgICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb246ICN7ZXNjYXBlLXN2ZygkYWNjb3JkaW9uLWJ1dHRvbi1pY29uLWRhcmspfTtcbiAgICAgIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tYWN0aXZlLWljb246ICN7ZXNjYXBlLXN2ZygkYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtaWNvbi1kYXJrKX07XG4gICAgfVxuICB9XG59XG4iLCIuYnJlYWRjcnVtYiB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBicmVhZGNydW1iLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItcGFkZGluZy14OiAjeyRicmVhZGNydW1iLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItcGFkZGluZy15OiAjeyRicmVhZGNydW1iLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTogI3skYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tfTtcbiAgQGluY2x1ZGUgcmZzKCRicmVhZGNydW1iLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLWJnOiAjeyRicmVhZGNydW1iLWJnfTtcbiAgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzOiAjeyRicmVhZGNydW1iLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICN7JGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXg6ICN7JGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLWl0ZW0tYWN0aXZlLWNvbG9yOiAjeyRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgYnJlYWRjcnVtYi1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1wYWRkaW5nLXgpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWZvbnQtc2l6ZSkpO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1iZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItYm9yZGVyLXJhZGl1cykpO1xufVxuXG4uYnJlYWRjcnVtYi1pdGVtIHtcbiAgLy8gVGhlIHNlcGFyYXRvciBiZXR3ZWVuIGJyZWFkY3J1bWJzIChieSBkZWZhdWx0LCBhIGZvcndhcmQtc2xhc2g6IFwiL1wiKVxuICArIC5icmVhZGNydW1iLWl0ZW0ge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXgpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyAvLyBTdXBwcmVzcyBpbmxpbmUgc3BhY2luZ3MgYW5kIHVuZGVybGluaW5nIG9mIHRoZSBzZXBhcmF0b3JcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWl0ZW0tcGFkZGluZy14KTtcbiAgICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yKTtcbiAgICAgIGNvbnRlbnQ6IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWRpdmlkZXIsIGVzY2FwZS1zdmcoJGJyZWFkY3J1bWItZGl2aWRlcikpICN7XCIvKiBydGw6XCJ9IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWRpdmlkZXIsIGVzY2FwZS1zdmcoJGJyZWFkY3J1bWItZGl2aWRlci1mbGlwcGVkKSkgI3tcIiovXCJ9O1xuICAgIH1cbiAgfVxuXG4gICYuYWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItaXRlbS1hY3RpdmUtY29sb3IpO1xuICB9XG59XG4iLCIucGFnaW5hdGlvbiB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBwYWdpbmF0aW9uLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tcGFkZGluZy14OiAjeyRwYWdpbmF0aW9uLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tcGFkZGluZy15OiAjeyRwYWdpbmF0aW9uLXBhZGRpbmcteX07XG4gIEBpbmNsdWRlIHJmcygkcGFnaW5hdGlvbi1mb250LXNpemUsIC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1jb2xvcjogI3skcGFnaW5hdGlvbi1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tYmc6ICN7JHBhZ2luYXRpb24tYmd9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci13aWR0aDogI3skcGFnaW5hdGlvbi1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1jb2xvcjogI3skcGFnaW5hdGlvbi1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1yYWRpdXM6ICN7JHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24taG92ZXItY29sb3I6ICN7JHBhZ2luYXRpb24taG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWhvdmVyLWJnOiAjeyRwYWdpbmF0aW9uLWhvdmVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I6ICN7JHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb2N1cy1jb2xvcjogI3skcGFnaW5hdGlvbi1mb2N1cy1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9jdXMtYmc6ICN7JHBhZ2luYXRpb24tZm9jdXMtYmd9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c6ICN7JHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tYWN0aXZlLWJnOiAjeyRwYWdpbmF0aW9uLWFjdGl2ZS1iZ307XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjogI3skcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogI3skcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICN7JHBhZ2luYXRpb24tZGlzYWJsZWQtYmd9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjogI3skcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHBhZ2luYXRpb24tY3NzLXZhcnNcblxuICBkaXNwbGF5OiBmbGV4O1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XG59XG5cbi5wYWdlLWxpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLXBhZGRpbmcteCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb250LXNpemUpKTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWNvbG9yKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1iZyk7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRwYWdpbmF0aW9uLXRyYW5zaXRpb24pO1xuXG4gICY6aG92ZXIge1xuICAgIHotaW5kZXg6IDI7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWhvdmVyLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ob3Zlci1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3IpO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgei1pbmRleDogMztcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9jdXMtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvY3VzLWJnKTtcbiAgICBvdXRsaW5lOiAkcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lO1xuICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJi5hY3RpdmUsXG4gIC5hY3RpdmUgPiAmIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1hY3RpdmUtY29sb3IpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWFjdGl2ZS1iZykpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcik7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAuZGlzYWJsZWQgPiAmIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3IpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWRpc2FibGVkLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcik7XG4gIH1cbn1cblxuLnBhZ2UtaXRlbSB7XG4gICY6bm90KDpmaXJzdC1jaGlsZCkgLnBhZ2UtbGluayB7XG4gICAgbWFyZ2luLWxlZnQ6ICRwYWdpbmF0aW9uLW1hcmdpbi1zdGFydDtcbiAgfVxuXG4gIEBpZiAkcGFnaW5hdGlvbi1tYXJnaW4tc3RhcnQgPT0gY2FsYygjeyRwYWdpbmF0aW9uLWJvcmRlci13aWR0aH0gKiAtMSkge1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1zdGFydC1yYWRpdXModmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cykpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWVuZC1yYWRpdXModmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cykpO1xuICAgICAgfVxuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgLy8gQWRkIGJvcmRlci1yYWRpdXMgdG8gYWxsIHBhZ2VMaW5rcyBpbiBjYXNlIHRoZXkgaGF2ZSBsZWZ0IG1hcmdpblxuICAgIC5wYWdlLWxpbmsge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzKSk7XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIFNpemluZ1xuLy9cblxuLnBhZ2luYXRpb24tbGcge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LWxnLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGcsICRmb250LXNpemUtbGcsICRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4ucGFnaW5hdGlvbi1zbSB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFnaW5hdGlvbi1wYWRkaW5nLXktc20sICRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbSwgJGZvbnQtc2l6ZS1zbSwgJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1zbSk7XG59XG4iLCIvLyBQYWdpbmF0aW9uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwYWdpbmF0aW9uLW1peGluXG5AbWl4aW4gcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRib3JkZXItcmFkaXVzKSB7XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tcGFkZGluZy14OiAjeyRwYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLXBhZGRpbmcteTogI3skcGFkZGluZy15fTtcbiAgQGluY2x1ZGUgcmZzKCRmb250LXNpemUsIC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzOiAjeyRib3JkZXItcmFkaXVzfTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgcGFnaW5hdGlvbi1taXhpblxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIFJlcXVpcmVzIG9uZSBvZiB0aGUgY29udGV4dHVhbCwgY29sb3IgbW9kaWZpZXIgY2xhc3NlcyBmb3IgYGNvbG9yYCBhbmRcbi8vIGBiYWNrZ3JvdW5kLWNvbG9yYC5cblxuLmJhZGdlIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IGJhZGdlLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWJhZGdlLXBhZGRpbmcteDogI3skYmFkZ2UtcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9YmFkZ2UtcGFkZGluZy15OiAjeyRiYWRnZS1wYWRkaW5nLXl9O1xuICBAaW5jbHVkZSByZnMoJGJhZGdlLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9YmFkZ2UtZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9YmFkZ2UtZm9udC13ZWlnaHQ6ICN7JGJhZGdlLWZvbnQtd2VpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9YmFkZ2UtY29sb3I6ICN7JGJhZGdlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YmFkZ2UtYm9yZGVyLXJhZGl1czogI3skYmFkZ2UtYm9yZGVyLXJhZGl1c307XG4gIC8vIHNjc3MtZG9jcy1lbmQgYmFkZ2UtY3NzLXZhcnNcblxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1iYWRnZS1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1iYWRnZS1wYWRkaW5nLXgpO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fWJhZGdlLWZvbnQtc2l6ZSkpO1xuICBmb250LXdlaWdodDogdmFyKC0tI3skcHJlZml4fWJhZGdlLWZvbnQtd2VpZ2h0KTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YmFkZ2UtY29sb3IpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9YmFkZ2UtYm9yZGVyLXJhZGl1cykpO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZygpO1xuXG4gIC8vIEVtcHR5IGJhZGdlcyBjb2xsYXBzZSBhdXRvbWF0aWNhbGx5XG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLy8gUXVpY2sgZml4IGZvciBiYWRnZXMgaW4gYnV0dG9uc1xuLmJ0biAuYmFkZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTFweDtcbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmFsZXJ0IHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IGFsZXJ0LWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWFsZXJ0LWJnOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YWxlcnQtcGFkZGluZy14OiAjeyRhbGVydC1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1hbGVydC1wYWRkaW5nLXk6ICN7JGFsZXJ0LXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWFsZXJ0LW1hcmdpbi1ib3R0b206ICN7JGFsZXJ0LW1hcmdpbi1ib3R0b219O1xuICAtLSN7JHByZWZpeH1hbGVydC1jb2xvcjogaW5oZXJpdDtcbiAgLS0jeyRwcmVmaXh9YWxlcnQtYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YWxlcnQtYm9yZGVyOiAjeyRhbGVydC1ib3JkZXItd2lkdGh9IHNvbGlkIHZhcigtLSN7JHByZWZpeH1hbGVydC1ib3JkZXItY29sb3IpO1xuICAtLSN7JHByZWZpeH1hbGVydC1ib3JkZXItcmFkaXVzOiAjeyRhbGVydC1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9YWxlcnQtbGluay1jb2xvcjogaW5oZXJpdDtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBhbGVydC1jc3MtdmFyc1xuXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWFsZXJ0LXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWFsZXJ0LXBhZGRpbmcteCk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLSN7JHByZWZpeH1hbGVydC1tYXJnaW4tYm90dG9tKTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1hbGVydC1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1hbGVydC1iZyk7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fWFsZXJ0LWJvcmRlcik7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWFsZXJ0LWJvcmRlci1yYWRpdXMpKTtcbn1cblxuLy8gSGVhZGluZ3MgZm9yIGxhcmdlciBhbGVydHNcbi5hbGVydC1oZWFkaW5nIHtcbiAgLy8gU3BlY2lmaWVkIHRvIHByZXZlbnQgY29uZmxpY3RzIG9mIGNoYW5naW5nICRoZWFkaW5ncy1jb2xvclxuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLy8gUHJvdmlkZSBjbGFzcyBmb3IgbGlua3MgdGhhdCBtYXRjaCBhbGVydHNcbi5hbGVydC1saW5rIHtcbiAgZm9udC13ZWlnaHQ6ICRhbGVydC1saW5rLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWFsZXJ0LWxpbmstY29sb3IpO1xufVxuXG5cbi8vIERpc21pc3NpYmxlIGFsZXJ0c1xuLy9cbi8vIEV4cGFuZCB0aGUgcmlnaHQgcGFkZGluZyBhbmQgYWNjb3VudCBmb3IgdGhlIGNsb3NlIGJ1dHRvbidzIHBvc2l0aW9uaW5nLlxuXG4uYWxlcnQtZGlzbWlzc2libGUge1xuICBwYWRkaW5nLXJpZ2h0OiAkYWxlcnQtZGlzbWlzc2libGUtcGFkZGluZy1yO1xuXG4gIC8vIEFkanVzdCBjbG9zZSBsaW5rIHBvc2l0aW9uXG4gIC5idG4tY2xvc2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogJHN0cmV0Y2hlZC1saW5rLXotaW5kZXggKyAxO1xuICAgIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nLXkgKiAxLjI1ICRhbGVydC1wYWRkaW5nLXg7XG4gIH1cbn1cblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYWxlcnQtbW9kaWZpZXJzXG4vLyBHZW5lcmF0ZSBjb250ZXh0dWFsIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGNvbG9yaXppbmcgdGhlIGFsZXJ0XG5AZWFjaCAkc3RhdGUgaW4gbWFwLWtleXMoJHRoZW1lLWNvbG9ycykge1xuICAuYWxlcnQtI3skc3RhdGV9IHtcbiAgICAtLSN7JHByZWZpeH1hbGVydC1jb2xvcjogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS10ZXh0LWVtcGhhc2lzKTtcbiAgICAtLSN7JHByZWZpeH1hbGVydC1iZzogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS1iZy1zdWJ0bGUpO1xuICAgIC0tI3skcHJlZml4fWFsZXJ0LWJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS1ib3JkZXItc3VidGxlKTtcbiAgICAtLSN7JHByZWZpeH1hbGVydC1saW5rLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LXRleHQtZW1waGFzaXMpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGFsZXJ0LW1vZGlmaWVyc1xuIiwiLy8gRGlzYWJsZSBhbmltYXRpb24gaWYgdHJhbnNpdGlvbnMgYXJlIGRpc2FibGVkXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwcm9ncmVzcy1rZXlmcmFtZXNcbkBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgQGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XG4gICAgMCUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6ICRwcm9ncmVzcy1oZWlnaHQ7IH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBwcm9ncmVzcy1rZXlmcmFtZXNcblxuLnByb2dyZXNzLFxuLnByb2dyZXNzLXN0YWNrZWQge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcHJvZ3Jlc3MtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtaGVpZ2h0OiAjeyRwcm9ncmVzcy1oZWlnaHR9O1xuICBAaW5jbHVkZSByZnMoJHByb2dyZXNzLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYmc6ICN7JHByb2dyZXNzLWJnfTtcbiAgLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogI3skcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fXByb2dyZXNzLWJveC1zaGFkb3c6ICN7JHByb2dyZXNzLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1wcm9ncmVzcy1iYXItY29sb3I6ICN7JHByb2dyZXNzLWJhci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXByb2dyZXNzLWJhci1iZzogI3skcHJvZ3Jlc3MtYmFyLWJnfTtcbiAgLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb246ICN7JHByb2dyZXNzLWJhci10cmFuc2l0aW9ufTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBwcm9ncmVzcy1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogdmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWhlaWdodCk7XG4gIG92ZXJmbG93OiBoaWRkZW47IC8vIGZvcmNlIHJvdW5kZWQgY29ybmVycyBieSBjcm9wcGluZyBpdFxuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWZvbnQtc2l6ZSkpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYmcpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWJveC1zaGFkb3cpKTtcbn1cblxuLnByb2dyZXNzLWJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWJhci1jb2xvcik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWJhci1iZyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24odmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWJhci10cmFuc2l0aW9uKSk7XG59XG5cbi5wcm9ncmVzcy1iYXItc3RyaXBlZCB7XG4gIEBpbmNsdWRlIGdyYWRpZW50LXN0cmlwZWQoKTtcbiAgYmFja2dyb3VuZC1zaXplOiB2YXIoLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtaGVpZ2h0KSB2YXIoLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtaGVpZ2h0KTtcbn1cblxuLnByb2dyZXNzLXN0YWNrZWQgPiAucHJvZ3Jlc3Mge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLnByb2dyZXNzLXN0YWNrZWQgPiAucHJvZ3Jlc3MgPiAucHJvZ3Jlc3MtYmFyIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgLnByb2dyZXNzLWJhci1hbmltYXRlZCB7XG4gICAgYW5pbWF0aW9uOiAkcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmcgcHJvZ3Jlc3MtYmFyLXN0cmlwZXM7XG5cbiAgICBAaWYgJGVuYWJsZS1yZWR1Y2VkLW1vdGlvbiB7XG4gICAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gRWFzaWx5IHVzYWJsZSBvbiA8dWw+LCA8b2w+LCBvciA8ZGl2Pi5cblxuLmxpc3QtZ3JvdXAge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbGlzdC1ncm91cC1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWNvbG9yOiAjeyRsaXN0LWdyb3VwLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1iZzogI3skbGlzdC1ncm91cC1iZ307XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yOiAjeyRsaXN0LWdyb3VwLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoOiAjeyRsaXN0LWdyb3VwLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogI3skbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDogI3skbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXk6ICN7JGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1jb2xvcjogI3skbGlzdC1ncm91cC1hY3Rpb24tY29sb3J9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjogI3skbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1iZzogI3skbGlzdC1ncm91cC1ob3Zlci1iZ307XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjogI3skbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnOiAjeyRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAjeyRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1kaXNhYmxlZC1iZzogI3skbGlzdC1ncm91cC1kaXNhYmxlZC1iZ307XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAjeyRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAjeyRsaXN0LWdyb3VwLWFjdGl2ZS1iZ307XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogI3skbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBsaXN0LWdyb3VwLWNzcy12YXJzXG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAvLyBObyBuZWVkIHRvIHNldCBsaXN0LXN0eWxlOiBub25lOyBzaW5jZSAubGlzdC1ncm91cC1pdGVtIGlzIGJsb2NrIGxldmVsXG4gIHBhZGRpbmctbGVmdDogMDsgLy8gcmVzZXQgcGFkZGluZyBiZWNhdXNlIHVsIGFuZCBvbFxuICBtYXJnaW4tYm90dG9tOiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpKTtcbn1cblxuLmxpc3QtZ3JvdXAtbnVtYmVyZWQge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIGNvdW50ZXItcmVzZXQ6IHNlY3Rpb247XG5cbiAgPiAubGlzdC1ncm91cC1pdGVtOjpiZWZvcmUge1xuICAgIC8vIEluY3JlbWVudHMgb25seSB0aGlzIGluc3RhbmNlIG9mIHRoZSBzZWN0aW9uIGNvdW50ZXJcbiAgICBjb250ZW50OiBjb3VudGVycyhzZWN0aW9uLCBcIi5cIikgXCIuIFwiO1xuICAgIGNvdW50ZXItaW5jcmVtZW50OiBzZWN0aW9uO1xuICB9XG59XG5cbi8vIEludGVyYWN0aXZlIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2UgYW5jaG9yIG9yIGJ1dHRvbiBlbGVtZW50cyBpbnN0ZWFkIG9mIGBsaWBzIG9yIGBkaXZgcyB0byBjcmVhdGUgaW50ZXJhY3RpdmVcbi8vIGxpc3QgaXRlbXMuIEluY2x1ZGVzIGFuIGV4dHJhIGAuYWN0aXZlYCBtb2RpZmllciBjbGFzcyBmb3Igc2VsZWN0ZWQgaXRlbXMuXG5cbi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gcyAoYW5jaG9ycyBiZWNvbWUgMTAwJSBieSBkZWZhdWx0IHRob3VnaClcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1jb2xvcik7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIEZvciBgPGJ1dHRvbj5gcyAoYW5jaG9ycyBpbmhlcml0KVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIHotaW5kZXg6IDE7IC8vIFBsYWNlIGhvdmVyL2ZvY3VzIGl0ZW1zIGFib3ZlIHRoZWlyIHNpYmxpbmdzIGZvciBwcm9wZXIgYm9yZGVyIHN0eWxpbmdcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWJnKTtcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZyk7XG4gIH1cbn1cblxuLy8gSW5kaXZpZHVhbCBsaXN0IGl0ZW1zXG4vL1xuLy8gVXNlIG9uIGBsaWBzIG9yIGBkaXZgcyB3aXRoaW4gdGhlIGAubGlzdC1ncm91cGAgcGFyZW50LlxuXG4ubGlzdC1ncm91cC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWNvbG9yKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1iZyk7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItY29sb3IpO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKGluaGVyaXQpO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyhpbmhlcml0KTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcik7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtZGlzYWJsZWQtYmcpO1xuICB9XG5cbiAgLy8gSW5jbHVkZSBib3RoIGhlcmUgZm9yIGA8YT5gcyBhbmQgYDxidXR0b24+YHNcbiAgJi5hY3RpdmUge1xuICAgIHotaW5kZXg6IDI7IC8vIFBsYWNlIGFjdGl2ZSBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aXZlLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3IpO1xuICB9XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3Mvc2VsZWN0b3Itbm8tcmVkdW5kYW50LW5lc3Rpbmctc2VsZWN0b3JcbiAgJiArIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBtYXJnaW4tdG9wOiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItd2lkdGgpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBIb3Jpem9udGFsXG4vL1xuLy8gQ2hhbmdlIHRoZSBsYXlvdXQgb2YgbGlzdCBncm91cCBpdGVtcyBmcm9tIHZlcnRpY2FsIChkZWZhdWx0KSB0byBob3Jpem9udGFsLlxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAubGlzdC1ncm91cC1ob3Jpem9udGFsI3skaW5maXh9IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgID4gLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1zdGFydC1yYWRpdXModmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cykpO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtZW5kLXJhZGl1cygwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1lbmQtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpKTtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXN0YXJ0LXJhZGl1cygwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgKyAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgICAgICBib3JkZXItdG9wLXdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItd2lkdGgpO1xuICAgICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuXG4gICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItd2lkdGgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItd2lkdGgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIEZsdXNoIGxpc3QgaXRlbXNcbi8vXG4vLyBSZW1vdmUgYm9yZGVycyBhbmQgYm9yZGVyLXJhZGl1cyB0byBrZWVwIGxpc3QgZ3JvdXAgaXRlbXMgZWRnZS10by1lZGdlLiBNb3N0XG4vLyB1c2VmdWwgd2l0aGluIG90aGVyIGNvbXBvbmVudHMgKGUuZy4sIGNhcmRzKS5cblxuLmxpc3QtZ3JvdXAtZmx1c2gge1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuXG4gID4gLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDAgdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKTtcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBsaXN0LWdyb3VwLW1vZGlmaWVyc1xuLy8gTGlzdCBncm91cCBjb250ZXh0dWFsIHZhcmlhbnRzXG4vL1xuLy8gQWRkIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRleHQgYW5kIGJhY2tncm91bmQgY29sb3Igb24gaW5kaXZpZHVhbCBpdGVtcy5cbi8vIE9yZ2FuaXphdGlvbmFsbHksIHRoaXMgbXVzdCBjb21lIGFmdGVyIHRoZSBgOmhvdmVyYCBzdGF0ZXMuXG5cbkBlYWNoICRzdGF0ZSBpbiBtYXAta2V5cygkdGhlbWUtY29sb3JzKSB7XG4gIC5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcbiAgICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LXRleHQtZW1waGFzaXMpO1xuICAgIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYmc6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tYmctc3VidGxlKTtcbiAgICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS1ib3JkZXItc3VidGxlKTtcbiAgICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yKTtcbiAgICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1iZzogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS1ib3JkZXItc3VidGxlKTtcbiAgICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6IHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcik7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LWJvcmRlci1zdWJ0bGUpO1xuICAgIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LWJnLXN1YnRsZSk7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3RpdmUtYmc6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tdGV4dC1lbXBoYXNpcyk7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LXRleHQtZW1waGFzaXMpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGxpc3QtZ3JvdXAtbW9kaWZpZXJzXG4iLCIvLyBUcmFuc3BhcmVudCBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgcHJvcGVydGllcyBpbmNsdWRlZCBmb3IgYnV0dG9uIHZlcnNpb24uXG4vLyBpT1MgcmVxdWlyZXMgdGhlIGJ1dHRvbiBlbGVtZW50IGluc3RlYWQgb2YgYW4gYW5jaG9yIHRhZy5cbi8vIElmIHlvdSB3YW50IHRoZSBhbmNob3IgdmVyc2lvbiwgaXQgcmVxdWlyZXMgYGhyZWY9XCIjXCJgLlxuLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9jbGljayNTYWZhcmlfTW9iaWxlXG5cbi5idG4tY2xvc2Uge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgY2xvc2UtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWNvbG9yOiAjeyRidG4tY2xvc2UtY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tY2xvc2UtYmc6ICN7IGVzY2FwZS1zdmcoJGJ0bi1jbG9zZS1iZykgfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNsb3NlLW9wYWNpdHk6ICN7JGJ0bi1jbG9zZS1vcGFjaXR5fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWhvdmVyLW9wYWNpdHk6ICN7JGJ0bi1jbG9zZS1ob3Zlci1vcGFjaXR5fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWZvY3VzLXNoYWRvdzogI3skYnRuLWNsb3NlLWZvY3VzLXNoYWRvd307XG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1mb2N1cy1vcGFjaXR5OiAjeyRidG4tY2xvc2UtZm9jdXMtb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1kaXNhYmxlZC1vcGFjaXR5OiAjeyRidG4tY2xvc2UtZGlzYWJsZWQtb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS13aGl0ZS1maWx0ZXI6ICN7JGJ0bi1jbG9zZS13aGl0ZS1maWx0ZXJ9O1xuICAvLyBzY3NzLWRvY3MtZW5kIGNsb3NlLWNzcy12YXJzXG5cbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIHdpZHRoOiAkYnRuLWNsb3NlLXdpZHRoO1xuICBoZWlnaHQ6ICRidG4tY2xvc2UtaGVpZ2h0O1xuICBwYWRkaW5nOiAkYnRuLWNsb3NlLXBhZGRpbmcteSAkYnRuLWNsb3NlLXBhZGRpbmcteDtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2UtY29sb3IpO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWJnKSBjZW50ZXIgLyAkYnRuLWNsb3NlLXdpZHRoIGF1dG8gbm8tcmVwZWF0OyAvLyBpbmNsdWRlIHRyYW5zcGFyZW50IGZvciBidXR0b24gZWxlbWVudHNcbiAgYm9yZGVyOiAwOyAvLyBmb3IgYnV0dG9uIGVsZW1lbnRzXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoKTtcbiAgb3BhY2l0eTogdmFyKC0tI3skcHJlZml4fWJ0bi1jbG9zZS1vcGFjaXR5KTtcblxuICAvLyBPdmVycmlkZSA8YT4ncyBob3ZlciBzdHlsZVxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1jbG9zZS1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG9wYWNpdHk6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2UtaG92ZXItb3BhY2l0eSk7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2UtZm9jdXMtc2hhZG93KTtcbiAgICBvcGFjaXR5OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWZvY3VzLW9wYWNpdHkpO1xuICB9XG5cbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgb3BhY2l0eTogdmFyKC0tI3skcHJlZml4fWJ0bi1jbG9zZS1kaXNhYmxlZC1vcGFjaXR5KTtcbiAgfVxufVxuXG5AbWl4aW4gYnRuLWNsb3NlLXdoaXRlKCkge1xuICBmaWx0ZXI6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2Utd2hpdGUtZmlsdGVyKTtcbn1cblxuLmJ0bi1jbG9zZS13aGl0ZSB7XG4gIEBpbmNsdWRlIGJ0bi1jbG9zZS13aGl0ZSgpO1xufVxuXG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICBAaW5jbHVkZSBjb2xvci1tb2RlKGRhcmspIHtcbiAgICAuYnRuLWNsb3NlIHtcbiAgICAgIEBpbmNsdWRlIGJ0bi1jbG9zZS13aGl0ZSgpO1xuICAgIH1cbiAgfVxufVxuIiwiLnRvYXN0IHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHRvYXN0LWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXRvYXN0LXppbmRleDogI3skemluZGV4LXRvYXN0fTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtcGFkZGluZy14OiAjeyR0b2FzdC1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH10b2FzdC1wYWRkaW5nLXk6ICN7JHRvYXN0LXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fXRvYXN0LXNwYWNpbmc6ICN7JHRvYXN0LXNwYWNpbmd9O1xuICAtLSN7JHByZWZpeH10b2FzdC1tYXgtd2lkdGg6ICN7JHRvYXN0LW1heC13aWR0aH07XG4gIEBpbmNsdWRlIHJmcygkdG9hc3QtZm9udC1zaXplLCAtLSN7JHByZWZpeH10b2FzdC1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH10b2FzdC1jb2xvcjogI3skdG9hc3QtY29sb3J9O1xuICAtLSN7JHByZWZpeH10b2FzdC1iZzogI3skdG9hc3QtYmFja2dyb3VuZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci13aWR0aDogI3skdG9hc3QtYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLWNvbG9yOiAjeyR0b2FzdC1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH10b2FzdC1ib3JkZXItcmFkaXVzOiAjeyR0b2FzdC1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtYm94LXNoYWRvdzogI3skdG9hc3QtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fXRvYXN0LWhlYWRlci1jb2xvcjogI3skdG9hc3QtaGVhZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtaGVhZGVyLWJnOiAjeyR0b2FzdC1oZWFkZXItYmFja2dyb3VuZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRvYXN0LWhlYWRlci1ib3JkZXItY29sb3I6ICN7JHRvYXN0LWhlYWRlci1ib3JkZXItY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHRvYXN0LWNzcy12YXJzXG5cbiAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH10b2FzdC1tYXgtd2lkdGgpO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9dG9hc3QtZm9udC1zaXplKSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtY29sb3IpO1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRvYXN0LWJnKTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLWNvbG9yKTtcbiAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fXRvYXN0LWJveC1zaGFkb3cpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH10b2FzdC1ib3JkZXItcmFkaXVzKSk7XG5cbiAgJi5zaG93aW5nIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgJjpub3QoLnNob3cpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi50b2FzdC1jb250YWluZXIge1xuICAtLSN7JHByZWZpeH10b2FzdC16aW5kZXg6ICN7JHppbmRleC10b2FzdH07XG5cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtemluZGV4KTtcbiAgd2lkdGg6IG1heC1jb250ZW50O1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gID4gOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLSN7JHByZWZpeH10b2FzdC1zcGFjaW5nKTtcbiAgfVxufVxuXG4udG9hc3QtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fXRvYXN0LXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fXRvYXN0LXBhZGRpbmcteCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtaGVhZGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRvYXN0LWhlYWRlci1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlci1ib3R0b206IHZhcigtLSN7JHByZWZpeH10b2FzdC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH10b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoY2FsYyh2YXIoLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLXJhZGl1cykgLSB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLXdpZHRoKSkpO1xuXG4gIC5idG4tY2xvc2Uge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtcGFkZGluZy14KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLSN7JHByZWZpeH10b2FzdC1wYWRkaW5nLXgpO1xuICB9XG59XG5cbi50b2FzdC1ib2R5IHtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fXRvYXN0LXBhZGRpbmcteCk7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4vLyAubW9kYWwtb3BlbiAgICAgIC0gYm9keSBjbGFzcyBmb3Iga2lsbGluZyB0aGUgc2Nyb2xsXG4vLyAubW9kYWwgICAgICAgICAgIC0gY29udGFpbmVyIHRvIHNjcm9sbCB3aXRoaW5cbi8vIC5tb2RhbC1kaWFsb2cgICAgLSBwb3NpdGlvbmluZyBzaGVsbCBmb3IgdGhlIGFjdHVhbCBtb2RhbFxuLy8gLm1vZGFsLWNvbnRlbnQgICAtIGFjdHVhbCBtb2RhbCB3LyBiZyBhbmQgY29ybmVycyBhbmQgc3R1ZmZcblxuXG4vLyBDb250YWluZXIgdGhhdCB0aGUgbW9kYWwgc2Nyb2xscyB3aXRoaW5cbi5tb2RhbCB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBtb2RhbC1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1tb2RhbC16aW5kZXg6ICN7JHppbmRleC1tb2RhbH07XG4gIC0tI3skcHJlZml4fW1vZGFsLXdpZHRoOiAjeyRtb2RhbC1tZH07XG4gIC0tI3skcHJlZml4fW1vZGFsLXBhZGRpbmc6ICN7JG1vZGFsLWlubmVyLXBhZGRpbmd9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1tYXJnaW46ICN7JG1vZGFsLWRpYWxvZy1tYXJnaW59O1xuICAtLSN7JHByZWZpeH1tb2RhbC1jb2xvcjogI3skbW9kYWwtY29udGVudC1jb2xvcn07XG4gIC0tI3skcHJlZml4fW1vZGFsLWJnOiAjeyRtb2RhbC1jb250ZW50LWJnfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtYm9yZGVyLWNvbG9yOiAjeyRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW1vZGFsLWJvcmRlci13aWR0aDogI3skbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1ib3JkZXItcmFkaXVzOiAjeyRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1ib3gtc2hhZG93OiAjeyRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHN9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1pbm5lci1ib3JkZXItcmFkaXVzOiAjeyRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZy14OiAjeyRtb2RhbC1oZWFkZXItcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcteTogI3skbW9kYWwtaGVhZGVyLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nOiAjeyRtb2RhbC1oZWFkZXItcGFkZGluZ307IC8vIFRvZG8gaW4gdjY6IFNwbGl0IHRoaXMgcGFkZGluZyBpbnRvIHggYW5kIHlcbiAgLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogI3skbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGg6ICN7JG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1tb2RhbC10aXRsZS1saW5lLWhlaWdodDogI3skbW9kYWwtdGl0bGUtbGluZS1oZWlnaHR9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItZ2FwOiAjeyRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW59O1xuICAtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItYmc6ICN7JG1vZGFsLWZvb3Rlci1iZ307XG4gIC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICN7JG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoOiAjeyRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRofTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBtb2RhbC1jc3MtdmFyc1xuXG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtemluZGV4KTtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICAvLyBQcmV2ZW50IENocm9tZSBvbiBXaW5kb3dzIGZyb20gYWRkaW5nIGEgZm9jdXMgb3V0bGluZS4gRm9yIGRldGFpbHMsIHNlZVxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMDk1MS5cbiAgb3V0bGluZTogMDtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvbid0IHVzZSBgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO2AgZHVlIHRvIGFcbiAgLy8gZ25hcmx5IGlPUyBTYWZhcmkgYnVnOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU4MzQyXG4gIC8vIFNlZSBhbHNvIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTc2OTVcbn1cblxuLy8gU2hlbGwgZGl2IHRvIHBvc2l0aW9uIHRoZSBtb2RhbCB3aXRoIGJvdHRvbSBwYWRkaW5nXG4ubW9kYWwtZGlhbG9nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtbWFyZ2luKTtcbiAgLy8gYWxsb3cgY2xpY2tzIHRvIHBhc3MgdGhyb3VnaCBmb3IgY3VzdG9tIGNsaWNrIGhhbmRsaW5nIHRvIGNsb3NlIG1vZGFsXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gIC8vIFdoZW4gZmFkaW5nIGluIHRoZSBtb2RhbCwgYW5pbWF0ZSBpdCB0byBzbGlkZSBkb3duXG4gIC5tb2RhbC5mYWRlICYge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJG1vZGFsLXRyYW5zaXRpb24pO1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLWZhZGUtdHJhbnNmb3JtO1xuICB9XG4gIC5tb2RhbC5zaG93ICYge1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLXNob3ctdHJhbnNmb3JtO1xuICB9XG5cbiAgLy8gV2hlbiB0cnlpbmcgdG8gY2xvc2UsIGFuaW1hdGUgZm9jdXMgdG8gc2NhbGVcbiAgLm1vZGFsLm1vZGFsLXN0YXRpYyAmIHtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1zY2FsZS10cmFuc2Zvcm07XG4gIH1cbn1cblxuLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtbWFyZ2luKSAqIDIpO1xuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAubW9kYWwtYm9keSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxufVxuXG4ubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogY2FsYygxMDAlIC0gdmFyKC0tI3skcHJlZml4fW1vZGFsLW1hcmdpbikgKiAyKTtcbn1cblxuLy8gQWN0dWFsIG1vZGFsXG4ubW9kYWwtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2lkdGg6IDEwMCU7IC8vIEVuc3VyZSBgLm1vZGFsLWNvbnRlbnRgIGV4dGVuZHMgdGhlIGZ1bGwgd2lkdGggb2YgdGhlIHBhcmVudCBgLm1vZGFsLWRpYWxvZ2BcbiAgLy8gY291bnRlcmFjdCB0aGUgcG9pbnRlci1ldmVudHM6IG5vbmU7IGluIHRoZSAubW9kYWwtZGlhbG9nXG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtY29sb3IpO1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fW1vZGFsLWJnKTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtYm9yZGVyLXJhZGl1cykpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KHZhcigtLSN7JHByZWZpeH1tb2RhbC1ib3gtc2hhZG93KSk7XG4gIC8vIFJlbW92ZSBmb2N1cyBvdXRsaW5lIGZyb20gb3BlbmVkIG1vZGFsXG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIE1vZGFsIGJhY2tncm91bmRcbi5tb2RhbC1iYWNrZHJvcCB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBtb2RhbC1iYWNrZHJvcC1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1iYWNrZHJvcC16aW5kZXg6ICN7JHppbmRleC1tb2RhbC1iYWNrZHJvcH07XG4gIC0tI3skcHJlZml4fWJhY2tkcm9wLWJnOiAjeyRtb2RhbC1iYWNrZHJvcC1iZ307XG4gIC0tI3skcHJlZml4fWJhY2tkcm9wLW9wYWNpdHk6ICN7JG1vZGFsLWJhY2tkcm9wLW9wYWNpdHl9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG1vZGFsLWJhY2tkcm9wLWNzcy12YXJzXG5cbiAgQGluY2x1ZGUgb3ZlcmxheS1iYWNrZHJvcCh2YXIoLS0jeyRwcmVmaXh9YmFja2Ryb3AtemluZGV4KSwgdmFyKC0tI3skcHJlZml4fWJhY2tkcm9wLWJnKSwgdmFyKC0tI3skcHJlZml4fWJhY2tkcm9wLW9wYWNpdHkpKTtcbn1cblxuLy8gTW9kYWwgaGVhZGVyXG4vLyBUb3Agc2VjdGlvbiBvZiB0aGUgbW9kYWwgdy8gdGl0bGUgYW5kIGRpc21pc3Ncbi5tb2RhbC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXNocmluazogMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBQdXQgbW9kYWwgaGVhZGVyIGVsZW1lbnRzICh0aXRsZSBhbmQgZGlzbWlzcykgb24gb3Bwb3NpdGUgZW5kc1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcpO1xuICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xuXG4gIC5idG4tY2xvc2Uge1xuICAgIHBhZGRpbmc6IGNhbGModmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXkpICogLjUpIGNhbGModmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXgpICogLjUpO1xuICAgIG1hcmdpbjogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcteSkpIGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXgpKSBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZy15KSkgYXV0bztcbiAgfVxufVxuXG4vLyBUaXRsZSB0ZXh0IHdpdGhpbiBoZWFkZXJcbi5tb2RhbC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtdGl0bGUtbGluZS1oZWlnaHQpO1xufVxuXG4vLyBNb2RhbCBib2R5XG4vLyBXaGVyZSBhbGwgbW9kYWwgY29udGVudCByZXNpZGVzIChzaWJsaW5nIG9mIC5tb2RhbC1oZWFkZXIgYW5kIC5tb2RhbC1mb290ZXIpXG4ubW9kYWwtYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIHNvIHRoYXQgdGhlIGJvZHkgdGFrZSB1cCBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlXG4gIC8vIHdoZW4gdGhlcmUgc2hvdWxkIGJlIGEgZml4ZWQgaGVpZ2h0IG9uIGAubW9kYWwtZGlhbG9nYC5cbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1tb2RhbC1wYWRkaW5nKTtcbn1cblxuLy8gRm9vdGVyIChmb3IgYWN0aW9ucylcbi5tb2RhbC1mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXNocmluazogMDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyB2ZXJ0aWNhbGx5IGNlbnRlclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyAvLyBSaWdodCBhbGlnbiBidXR0b25zIHdpdGggZmxleCBwcm9wZXJ0eSBiZWNhdXNlIHRleHQtYWxpZ24gZG9lc24ndCB3b3JrIG9uIGZsZXggaXRlbXNcbiAgcGFkZGluZzogY2FsYyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtcGFkZGluZykgLSB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWdhcCkgKiAuNSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItYmcpO1xuICBib3JkZXItdG9wOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xuXG4gIC8vIFBsYWNlIG1hcmdpbiBiZXR3ZWVuIGZvb3RlciBlbGVtZW50c1xuICAvLyBUaGlzIHNvbHV0aW9uIGlzIGZhciBmcm9tIGlkZWFsIGJlY2F1c2Ugb2YgdGhlIHVuaXZlcnNhbCBzZWxlY3RvciB1c2FnZSxcbiAgLy8gYnV0IGlzIG5lZWRlZCB0byBmaXggaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDgwMFxuICA+ICoge1xuICAgIG1hcmdpbjogY2FsYyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWdhcCkgKiAuNSk7IC8vIFRvZG8gaW4gdjY6IHJlcGxhY2Ugd2l0aCBnYXAgb24gcGFyZW50IGNsYXNzXG4gIH1cbn1cblxuLy8gU2NhbGUgdXAgdGhlIG1vZGFsXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gIC5tb2RhbCB7XG4gICAgLS0jeyRwcmVmaXh9bW9kYWwtbWFyZ2luOiAjeyRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXB9O1xuICAgIC0tI3skcHJlZml4fW1vZGFsLWJveC1zaGFkb3c6ICN7JG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cH07XG4gIH1cblxuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIG1heC13aWR0aDogdmFyKC0tI3skcHJlZml4fW1vZGFsLXdpZHRoKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICAubW9kYWwtc20ge1xuICAgIC0tI3skcHJlZml4fW1vZGFsLXdpZHRoOiAjeyRtb2RhbC1zbX07XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAubW9kYWwtbGcsXG4gIC5tb2RhbC14bCB7XG4gICAgLS0jeyRwcmVmaXh9bW9kYWwtd2lkdGg6ICN7JG1vZGFsLWxnfTtcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gIC5tb2RhbC14bCB7XG4gICAgLS0jeyRwcmVmaXh9bW9kYWwtd2lkdGg6ICN7JG1vZGFsLXhsfTtcbiAgfVxufVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbW9kYWwtZnVsbHNjcmVlbi1sb29wXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgJHBvc3RmaXg6IGlmKCRpbmZpeCAhPSBcIlwiLCAkaW5maXggKyBcIi1kb3duXCIsIFwiXCIpO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgIC5tb2RhbC1mdWxsc2NyZWVuI3skcG9zdGZpeH0ge1xuICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgfVxuXG4gICAgICAubW9kYWwtaGVhZGVyLFxuICAgICAgLm1vZGFsLWZvb3RlciB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgICB9XG5cbiAgICAgIC5tb2RhbC1ib2R5IHtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgbW9kYWwtZnVsbHNjcmVlbi1sb29wXG4iLCIvLyBTaGFyZWQgYmV0d2VlbiBtb2RhbHMgYW5kIG9mZmNhbnZhc2VzXG5AbWl4aW4gb3ZlcmxheS1iYWNrZHJvcCgkemluZGV4LCAkYmFja2Ryb3AtYmcsICRiYWNrZHJvcC1vcGFjaXR5KSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4O1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogMTAwdmg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZHJvcC1iZztcblxuICAvLyBGYWRlIGZvciBiYWNrZHJvcFxuICAmLmZhZGUgeyBvcGFjaXR5OiAwOyB9XG4gICYuc2hvdyB7IG9wYWNpdHk6ICRiYWNrZHJvcC1vcGFjaXR5OyB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4udG9vbHRpcCB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCB0b29sdGlwLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXRvb2x0aXAtemluZGV4OiAjeyR6aW5kZXgtdG9vbHRpcH07XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtbWF4LXdpZHRoOiAjeyR0b29sdGlwLW1heC13aWR0aH07XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtcGFkZGluZy14OiAjeyR0b29sdGlwLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtcGFkZGluZy15OiAjeyR0b29sdGlwLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtbWFyZ2luOiAjeyR0b29sdGlwLW1hcmdpbn07XG4gIEBpbmNsdWRlIHJmcygkdG9vbHRpcC1mb250LXNpemUsIC0tI3skcHJlZml4fXRvb2x0aXAtZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9dG9vbHRpcC1jb2xvcjogI3skdG9vbHRpcC1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtYmc6ICN7JHRvb2x0aXAtYmd9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLWJvcmRlci1yYWRpdXM6ICN7JHRvb2x0aXAtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtb3BhY2l0eTogI3skdG9vbHRpcC1vcGFjaXR5fTtcbiAgLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aDogI3skdG9vbHRpcC1hcnJvdy13aWR0aH07XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0OiAjeyR0b29sdGlwLWFycm93LWhlaWdodH07XG4gIC8vIHNjc3MtZG9jcy1lbmQgdG9vbHRpcC1jc3MtdmFyc1xuXG4gIHotaW5kZXg6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLXppbmRleCk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IHZhcigtLSN7JHByZWZpeH10b29sdGlwLW1hcmdpbik7XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImAkdG9vbHRpcC1tYXJnaW5gXCIsIFwidjVcIiwgXCJ2NS54XCIsIHRydWUpO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH10b29sdGlwLWZvbnQtc2l6ZSkpO1xuICAvLyBBbGxvdyBicmVha2luZyB2ZXJ5IGxvbmcgd29yZHMgc28gdGhleSBkb24ndCBvdmVyZmxvdyB0aGUgdG9vbHRpcCdzIGJvdW5kc1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIG9wYWNpdHk6IDA7XG5cbiAgJi5zaG93IHsgb3BhY2l0eTogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtb3BhY2l0eSk7IH1cblxuICAudG9vbHRpcC1hcnJvdyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LXdpZHRoKTtcbiAgICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC10b3AgLnRvb2x0aXAtYXJyb3cge1xuICBib3R0b206IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuICAmOjpiZWZvcmUge1xuICAgIHRvcDogLTFweDtcbiAgICBib3JkZXItd2lkdGg6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCkgY2FsYyh2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCkgKiAuNSkgMDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1iZyk7XG4gIH1cbn1cblxuLyogcnRsOmJlZ2luOmlnbm9yZSAqL1xuLmJzLXRvb2x0aXAtZW5kIC50b29sdGlwLWFycm93IHtcbiAgbGVmdDogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICB3aWR0aDogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KTtcbiAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCk7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICByaWdodDogLTFweDtcbiAgICBib3JkZXItd2lkdGg6IGNhbGModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpICogLjUpIHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCkgY2FsYyh2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCkgKiAuNSkgMDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWJnKTtcbiAgfVxufVxuXG4vKiBydGw6ZW5kOmlnbm9yZSAqL1xuXG4uYnMtdG9vbHRpcC1ib3R0b20gLnRvb2x0aXAtYXJyb3cge1xuICB0b3A6IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuICAmOjpiZWZvcmUge1xuICAgIGJvdHRvbTogLTFweDtcbiAgICBib3JkZXItd2lkdGg6IDAgY2FsYyh2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCkgKiAuNSkgdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1iZyk7XG4gIH1cbn1cblxuLyogcnRsOmJlZ2luOmlnbm9yZSAqL1xuLmJzLXRvb2x0aXAtc3RhcnQgLnRvb2x0aXAtYXJyb3cge1xuICByaWdodDogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICB3aWR0aDogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KTtcbiAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCk7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBsZWZ0OiAtMXB4O1xuICAgIGJvcmRlci13aWR0aDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCkgKiAuNSkgMCBjYWxjKHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LXdpZHRoKSAqIC41KSB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1iZyk7XG4gIH1cbn1cblxuLyogcnRsOmVuZDppZ25vcmUgKi9cblxuLmJzLXRvb2x0aXAtYXV0byB7XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC10b3A7XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwicmlnaHRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtZW5kO1xuICB9XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1ib3R0b207XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1zdGFydDtcbiAgfVxufVxuXG4vLyBXcmFwcGVyIGZvciB0aGUgdG9vbHRpcCBjb250ZW50XG4udG9vbHRpcC1pbm5lciB7XG4gIG1heC13aWR0aDogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtbWF4LXdpZHRoKTtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1wYWRkaW5nLXgpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtY29sb3IpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWJnKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1ib3JkZXItcmFkaXVzKSk7XG59XG4iLCJAbWl4aW4gcmVzZXQtdGV4dCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvIE5PVCByZXNldCBmb250LXNpemUgb3Igb3ZlcmZsb3ctd3JhcCAvIHdvcmQtd3JhcC5cbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBGYWxsYmFjayBmb3Igd2hlcmUgYHN0YXJ0YCBpcyBub3Qgc3VwcG9ydGVkXG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbn1cbiIsIi5wb3BvdmVyIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHBvcG92ZXItY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci16aW5kZXg6ICN7JHppbmRleC1wb3BvdmVyfTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1tYXgtd2lkdGg6ICN7JHBvcG92ZXItbWF4LXdpZHRofTtcbiAgQGluY2x1ZGUgcmZzKCRwb3BvdmVyLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9cG9wb3Zlci1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWJnOiAjeyRwb3BvdmVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGg6ICN7JHBvcG92ZXItYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItY29sb3I6ICN7JHBvcG92ZXItYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItcmFkaXVzOiAjeyRwb3BvdmVyLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXM6ICN7JHBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYm94LXNoYWRvdzogI3skcG9wb3Zlci1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItcGFkZGluZy14OiAjeyRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1wYWRkaW5nLXk6ICN7JHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteX07XG4gIEBpbmNsdWRlIHJmcygkcG9wb3Zlci1oZWFkZXItZm9udC1zaXplLCAtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1jb2xvcjogI3skcG9wb3Zlci1oZWFkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1iZzogI3skcG9wb3Zlci1oZWFkZXItYmd9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWJvZHktcGFkZGluZy14OiAjeyRwb3BvdmVyLWJvZHktcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1ib2R5LXBhZGRpbmcteTogI3skcG9wb3Zlci1ib2R5LXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYm9keS1jb2xvcjogI3skcG9wb3Zlci1ib2R5LWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aDogI3skcG9wb3Zlci1hcnJvdy13aWR0aH07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0OiAjeyRwb3BvdmVyLWFycm93LWhlaWdodH07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItY29sb3IpO1xuICAvLyBzY3NzLWRvY3MtZW5kIHBvcG92ZXItY3NzLXZhcnNcblxuICB6LWluZGV4OiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci16aW5kZXgpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1tYXgtd2lkdGgpO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWZvbnQtc2l6ZSkpO1xuICAvLyBBbGxvdyBicmVha2luZyB2ZXJ5IGxvbmcgd29yZHMgc28gdGhleSBkb24ndCBvdmVyZmxvdyB0aGUgcG9wb3ZlcidzIGJvdW5kc1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJnKTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXJhZGl1cykpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJveC1zaGFkb3cpKTtcblxuICAucG9wb3Zlci1hcnJvdyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKTtcbiAgICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCk7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICBib3JkZXItd2lkdGg6IDA7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLXRvcCB7XG4gID4gLnBvcG92ZXItYXJyb3cge1xuICAgIGJvdHRvbTogY2FsYygtMSAqICh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpKSAtIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvcmRlci13aWR0aDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KSBjYWxjKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKSAqIC41KSAwOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1ib3JkZXIpO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvdHRvbTogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKTtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJnKTtcbiAgICB9XG4gIH1cbn1cblxuLyogcnRsOmJlZ2luOmlnbm9yZSAqL1xuLmJzLXBvcG92ZXItZW5kIHtcbiAgPiAucG9wb3Zlci1hcnJvdyB7XG4gICAgbGVmdDogY2FsYygtMSAqICh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpKSAtIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpO1xuICAgIGhlaWdodDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvcmRlci13aWR0aDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCkgKiAuNSkgdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KSBjYWxjKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKSAqIC41KSAwOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1ib3JkZXIpO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGxlZnQ6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCk7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJnKTtcbiAgICB9XG4gIH1cbn1cblxuLyogcnRsOmVuZDppZ25vcmUgKi9cblxuLmJzLXBvcG92ZXItYm90dG9tIHtcbiAgPiAucG9wb3Zlci1hcnJvdyB7XG4gICAgdG9wOiBjYWxjKC0xICogKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCkpIC0gdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm9yZGVyLXdpZHRoOiAwIGNhbGModmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpICogLjUpIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWJvcmRlcik7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdG9wOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYmcpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFRoaXMgd2lsbCByZW1vdmUgdGhlIHBvcG92ZXItaGVhZGVyJ3MgYm9yZGVyIGp1c3QgYmVsb3cgdGhlIGFycm93XG4gIC5wb3BvdmVyLWhlYWRlcjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpO1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1iZyk7XG4gIH1cbn1cblxuLyogcnRsOmJlZ2luOmlnbm9yZSAqL1xuLmJzLXBvcG92ZXItc3RhcnQge1xuICA+IC5wb3BvdmVyLWFycm93IHtcbiAgICByaWdodDogY2FsYygtMSAqICh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpKSAtIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpO1xuICAgIGhlaWdodDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvcmRlci13aWR0aDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCkgKiAuNSkgMCBjYWxjKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKSAqIC41KSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1ib3JkZXIpO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHJpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJnKTtcbiAgICB9XG4gIH1cbn1cblxuLyogcnRsOmVuZDppZ25vcmUgKi9cblxuLmJzLXBvcG92ZXItYXV0byB7XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci10b3A7XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwicmlnaHRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItZW5kO1xuICB9XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1ib3R0b207XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1zdGFydDtcbiAgfVxufVxuXG4vLyBPZmZzZXQgdGhlIHBvcG92ZXIgdG8gYWNjb3VudCBmb3IgdGhlIHBvcG92ZXIgYXJyb3dcbi5wb3BvdmVyLWhlYWRlciB7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1wYWRkaW5nLXgpO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIFJlYm9vdFxuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLWZvbnQtc2l6ZSkpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLWJnKTtcbiAgYm9yZGVyLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG5cbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ucG9wb3Zlci1ib2R5IHtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9keS1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvZHktcGFkZGluZy14KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvZHktY29sb3IpO1xufVxuIiwiLy8gTm90ZXMgb24gdGhlIGNsYXNzZXM6XG4vL1xuLy8gMS4gLmNhcm91c2VsLnBvaW50ZXItZXZlbnQgc2hvdWxkIGlkZWFsbHkgYmUgcGFuLXkgKHRvIGFsbG93IGZvciB1c2VycyB0byBzY3JvbGwgdmVydGljYWxseSlcbi8vICAgIGV2ZW4gd2hlbiB0aGVpciBzY3JvbGwgYWN0aW9uIHN0YXJ0ZWQgb24gYSBjYXJvdXNlbCwgYnV0IGZvciBjb21wYXRpYmlsaXR5ICh3aXRoIEZpcmVmb3gpXG4vLyAgICB3ZSdyZSBwcmV2ZW50aW5nIGFsbCBhY3Rpb25zIGluc3RlYWRcbi8vIDIuIFRoZSAuY2Fyb3VzZWwtaXRlbS1zdGFydCBhbmQgLmNhcm91c2VsLWl0ZW0tZW5kIGlzIHVzZWQgdG8gaW5kaWNhdGUgd2hlcmVcbi8vICAgIHRoZSBhY3RpdmUgc2xpZGUgaXMgaGVhZGluZy5cbi8vIDMuIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbSBpcyB0aGUgY3VycmVudCBzbGlkZS5cbi8vIDQuIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1zdGFydCBhbmQgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWVuZCBpcyB0aGUgY3VycmVudFxuLy8gICAgc2xpZGUgaW4gaXRzIGluLXRyYW5zaXRpb24gc3RhdGUuIE9ubHkgb25lIG9mIHRoZXNlIG9jY3VycyBhdCBhIHRpbWUuXG4vLyA1LiAuY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tc3RhcnQgYW5kIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1lbmRcbi8vICAgIGlzIHRoZSB1cGNvbWluZyBzbGlkZSBpbiB0cmFuc2l0aW9uLlxuXG4uY2Fyb3VzZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jYXJvdXNlbC5wb2ludGVyLWV2ZW50IHtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbn1cblxuLmNhcm91c2VsLWlubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC10cmFuc2l0aW9uKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuLmNhcm91c2VsLWl0ZW0tbmV4dCxcbi5jYXJvdXNlbC1pdGVtLXByZXYge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmNhcm91c2VsLWl0ZW0tbmV4dDpub3QoLmNhcm91c2VsLWl0ZW0tc3RhcnQpLFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWVuZCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0tcHJldjpub3QoLmNhcm91c2VsLWl0ZW0tZW5kKSxcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1zdGFydCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG59XG5cblxuLy9cbi8vIEFsdGVybmF0ZSB0cmFuc2l0aW9uc1xuLy9cblxuLmNhcm91c2VsLWZhZGUge1xuICAuY2Fyb3VzZWwtaXRlbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbiAgLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLXN0YXJ0LFxuICAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tZW5kIHtcbiAgICB6LWluZGV4OiAxO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tc3RhcnQsXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1lbmQge1xuICAgIHotaW5kZXg6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgMHMgJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24pO1xuICB9XG59XG5cblxuLy9cbi8vIExlZnQvcmlnaHQgY29udHJvbHMgZm9yIG5hdlxuLy9cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICB6LWluZGV4OiAxO1xuICAvLyBVc2UgZmxleCBmb3IgYWxpZ25tZW50ICgxLTMpXG4gIGRpc3BsYXk6IGZsZXg7IC8vIDEuIGFsbG93IGZsZXggc3R5bGVzXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIDIuIHZlcnRpY2FsbHkgY2VudGVyIGNvbnRlbnRzXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyAvLyAzLiBob3Jpem9udGFsbHkgY2VudGVyIGNvbnRlbnRzXG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgcGFkZGluZzogMDtcbiAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgb3BhY2l0eTogJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uKTtcblxuICAvLyBIb3Zlci9mb2N1cyBzdGF0ZVxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG91dGxpbmU6IDA7XG4gICAgb3BhY2l0eTogJGNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eTtcbiAgfVxufVxuLmNhcm91c2VsLWNvbnRyb2wtcHJldiB7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGlmKCRlbmFibGUtZ3JhZGllbnRzLCBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoJGJsYWNrLCAuMjUpLCByZ2JhKCRibGFjaywgLjAwMSkpLCBudWxsKTtcbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICByaWdodDogMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIGxpbmVhci1ncmFkaWVudCgyNzBkZWcsIHJnYmEoJGJsYWNrLCAuMjUpLCByZ2JhKCRibGFjaywgLjAwMSkpLCBudWxsKTtcbn1cblxuLy8gSWNvbnMgZm9yIHdpdGhpblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDtcbiAgaGVpZ2h0OiAkY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCU7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xufVxuXG4vKiBydGw6b3B0aW9uczoge1xuICBcImF1dG9SZW5hbWVcIjogdHJ1ZSxcbiAgXCJzdHJpbmdNYXBcIjpbIHtcbiAgICBcIm5hbWVcIiAgICA6IFwicHJldi1uZXh0XCIsXG4gICAgXCJzZWFyY2hcIiAgOiBcInByZXZcIixcbiAgICBcInJlcGxhY2VcIiA6IFwibmV4dFwiXG4gIH0gXVxufSAqL1xuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmcpO1xufVxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmcpO1xufVxuXG4vLyBPcHRpb25hbCBpbmRpY2F0b3IgcGlwcy9jb250cm9sc1xuLy9cbi8vIEFkZCBhIGNvbnRhaW5lciAoc3VjaCBhcyBhIGxpc3QpIHdpdGggdGhlIGZvbGxvd2luZyBjbGFzcyBhbmQgYWRkIGFuIGl0ZW0gKGlkZWFsbHkgYSBmb2N1c2FibGUgY29udHJvbCxcbi8vIGxpa2UgYSBidXR0b24pIHdpdGggZGF0YS1icy10YXJnZXQgZm9yIGVhY2ggc2xpZGUgeW91ciBjYXJvdXNlbCBob2xkcy5cblxuLmNhcm91c2VsLWluZGljYXRvcnMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAwO1xuICAvLyBVc2UgdGhlIC5jYXJvdXNlbC1jb250cm9sJ3Mgd2lkdGggYXMgbWFyZ2luIHNvIHdlIGRvbid0IG92ZXJsYXkgdGhvc2VcbiAgbWFyZ2luLXJpZ2h0OiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuXG4gIFtkYXRhLWJzLXRhcmdldF0ge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoO1xuICAgIGhlaWdodDogJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyO1xuICAgIG1hcmdpbi1sZWZ0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjtcbiAgICB0ZXh0LWluZGVudDogLTk5OXB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZztcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAgIGJvcmRlcjogMDtcbiAgICAvLyBVc2UgdHJhbnNwYXJlbnQgYm9yZGVycyB0byBpbmNyZWFzZSB0aGUgaGl0IGFyZWEgYnkgMTBweCBvbiB0b3AgYW5kIGJvdHRvbS5cbiAgICBib3JkZXItdG9wOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBvcGFjaXR5OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLW9wYWNpdHk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgLmFjdGl2ZSB7XG4gICAgb3BhY2l0eTogJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtb3BhY2l0eTtcbiAgfVxufVxuXG5cbi8vIE9wdGlvbmFsIGNhcHRpb25zXG4vL1xuLy9cblxuLmNhcm91c2VsLWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAoMTAwJSAtICRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoKSAqIC41O1xuICBib3R0b206ICRjYXJvdXNlbC1jYXB0aW9uLXNwYWNlcjtcbiAgbGVmdDogKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkgKiAuNTtcbiAgcGFkZGluZy10b3A6ICRjYXJvdXNlbC1jYXB0aW9uLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRjYXJvdXNlbC1jYXB0aW9uLXBhZGRpbmcteTtcbiAgY29sb3I6ICRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi8vIERhcmsgbW9kZSBjYXJvdXNlbFxuXG5AbWl4aW4gY2Fyb3VzZWwtZGFyaygpIHtcbiAgLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLFxuICAuY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICAgIGZpbHRlcjogJGNhcm91c2VsLWRhcmstY29udHJvbC1pY29uLWZpbHRlcjtcbiAgfVxuXG4gIC5jYXJvdXNlbC1pbmRpY2F0b3JzIFtkYXRhLWJzLXRhcmdldF0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJvdXNlbC1kYXJrLWluZGljYXRvci1hY3RpdmUtYmc7XG4gIH1cblxuICAuY2Fyb3VzZWwtY2FwdGlvbiB7XG4gICAgY29sb3I6ICRjYXJvdXNlbC1kYXJrLWNhcHRpb24tY29sb3I7XG4gIH1cbn1cblxuLmNhcm91c2VsLWRhcmsge1xuICBAaW5jbHVkZSBjYXJvdXNlbC1kYXJrKCk7XG59XG5cbkBpZiAkZW5hYmxlLWRhcmstbW9kZSB7XG4gIEBpbmNsdWRlIGNvbG9yLW1vZGUoZGFyaykge1xuICAgIEBpZiAkY29sb3ItbW9kZS10eXBlID09IFwibWVkaWEtcXVlcnlcIiB7XG4gICAgICAuY2Fyb3VzZWwge1xuICAgICAgICBAaW5jbHVkZSBjYXJvdXNlbC1kYXJrKCk7XG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICAuY2Fyb3VzZWwsXG4gICAgICAmLmNhcm91c2VsIHtcbiAgICAgICAgQGluY2x1ZGUgY2Fyb3VzZWwtZGFyaygpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gc2Nzcy1kb2NzLXN0YXJ0IGNsZWFyZml4XG5AbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGNsZWFyZml4XG4iLCIvL1xuLy8gUm90YXRpbmcgYm9yZGVyXG4vL1xuXG4uc3Bpbm5lci1ncm93LFxuLnNwaW5uZXItYm9yZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogdmFyKC0tI3skcHJlZml4fXNwaW5uZXItd2lkdGgpO1xuICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1zcGlubmVyLWhlaWdodCk7XG4gIHZlcnRpY2FsLWFsaWduOiB2YXIoLS0jeyRwcmVmaXh9c3Bpbm5lci12ZXJ0aWNhbC1hbGlnbik7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBhbmltYXRpb246IHZhcigtLSN7JHByZWZpeH1zcGlubmVyLWFuaW1hdGlvbi1zcGVlZCkgbGluZWFyIGluZmluaXRlIHZhcigtLSN7JHByZWZpeH1zcGlubmVyLWFuaW1hdGlvbi1uYW1lKTtcbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwaW5uZXItYm9yZGVyLWtleWZyYW1lc1xuQGtleWZyYW1lcyBzcGlubmVyLWJvcmRlciB7XG4gIHRvIHsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKSAje1wiLyogcnRsOmlnbm9yZSAqL1wifTsgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBzcGlubmVyLWJvcmRlci1rZXlmcmFtZXNcblxuLnNwaW5uZXItYm9yZGVyIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwaW5uZXItYm9yZGVyLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXNwaW5uZXItd2lkdGg6ICN7JHNwaW5uZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWhlaWdodDogI3skc3Bpbm5lci1oZWlnaHR9O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLXZlcnRpY2FsLWFsaWduOiAjeyRzcGlubmVyLXZlcnRpY2FsLWFsaWdufTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1ib3JkZXItd2lkdGg6ICN7JHNwaW5uZXItYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tc3BlZWQ6ICN7JHNwaW5uZXItYW5pbWF0aW9uLXNwZWVkfTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tbmFtZTogc3Bpbm5lci1ib3JkZXI7XG4gIC8vIHNjc3MtZG9jcy1lbmQgc3Bpbm5lci1ib3JkZXItY3NzLXZhcnNcblxuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1zcGlubmVyLWJvcmRlci13aWR0aCkgc29saWQgY3VycmVudGNvbG9yO1xuICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uc3Bpbm5lci1ib3JkZXItc20ge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgc3Bpbm5lci1ib3JkZXItc20tY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci13aWR0aDogI3skc3Bpbm5lci13aWR0aC1zbX07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItaGVpZ2h0OiAjeyRzcGlubmVyLWhlaWdodC1zbX07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItYm9yZGVyLXdpZHRoOiAjeyRzcGlubmVyLWJvcmRlci13aWR0aC1zbX07XG4gIC8vIHNjc3MtZG9jcy1lbmQgc3Bpbm5lci1ib3JkZXItc20tY3NzLXZhcnNcbn1cblxuLy9cbi8vIEdyb3dpbmcgY2lyY2xlXG4vL1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc3Bpbm5lci1ncm93LWtleWZyYW1lc1xuQGtleWZyYW1lcyBzcGlubmVyLWdyb3cge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIHNwaW5uZXItZ3Jvdy1rZXlmcmFtZXNcblxuLnNwaW5uZXItZ3JvdyB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBzcGlubmVyLWdyb3ctY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci13aWR0aDogI3skc3Bpbm5lci13aWR0aH07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItaGVpZ2h0OiAjeyRzcGlubmVyLWhlaWdodH07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItdmVydGljYWwtYWxpZ246ICN7JHNwaW5uZXItdmVydGljYWwtYWxpZ259O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWFuaW1hdGlvbi1zcGVlZDogI3skc3Bpbm5lci1hbmltYXRpb24tc3BlZWR9O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWFuaW1hdGlvbi1uYW1lOiBzcGlubmVyLWdyb3c7XG4gIC8vIHNjc3MtZG9jcy1lbmQgc3Bpbm5lci1ncm93LWNzcy12YXJzXG5cbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudGNvbG9yO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc3Bpbm5lci1ncm93LXNtIHtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci13aWR0aDogI3skc3Bpbm5lci13aWR0aC1zbX07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItaGVpZ2h0OiAjeyRzcGlubmVyLWhlaWdodC1zbX07XG59XG5cbkBpZiAkZW5hYmxlLXJlZHVjZWQtbW90aW9uIHtcbiAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAuc3Bpbm5lci1ib3JkZXIsXG4gICAgLnNwaW5uZXItZ3JvdyB7XG4gICAgICAtLSN7JHByZWZpeH1zcGlubmVyLWFuaW1hdGlvbi1zcGVlZDogI3skc3Bpbm5lci1hbmltYXRpb24tc3BlZWQgKiAyfTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4lb2ZmY2FudmFzLWNzcy12YXJzIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG9mZmNhbnZhcy1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtemluZGV4OiAjeyR6aW5kZXgtb2ZmY2FudmFzfTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXdpZHRoOiAjeyRvZmZjYW52YXMtaG9yaXpvbnRhbC13aWR0aH07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1oZWlnaHQ6ICN7JG9mZmNhbnZhcy12ZXJ0aWNhbC1oZWlnaHR9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy14OiAjeyRvZmZjYW52YXMtcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteTogI3skb2ZmY2FudmFzLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1jb2xvcjogI3skb2ZmY2FudmFzLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJnOiAjeyRvZmZjYW52YXMtYmctY29sb3J9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLXdpZHRoOiAjeyRvZmZjYW52YXMtYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci1jb2xvcjogI3skb2ZmY2FudmFzLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3gtc2hhZG93OiAjeyRvZmZjYW52YXMtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy10cmFuc2l0aW9uOiAje3RyYW5zZm9ybSAkb2ZmY2FudmFzLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZS1pbi1vdXR9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtdGl0bGUtbGluZS1oZWlnaHQ6ICN7JG9mZmNhbnZhcy10aXRsZS1saW5lLWhlaWdodH07XG4gIC8vIHNjc3MtZG9jcy1lbmQgb2ZmY2FudmFzLWNzcy12YXJzXG59XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgLm9mZmNhbnZhcyN7JGluZml4fSB7XG4gICAgQGV4dGVuZCAlb2ZmY2FudmFzLWNzcy12YXJzO1xuICB9XG59XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgLm9mZmNhbnZhcyN7JGluZml4fSB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuZXh0KSB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICBib3R0b206IDA7XG4gICAgICB6LWluZGV4OiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXppbmRleCk7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWNvbG9yKTtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYmcpO1xuICAgICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm94LXNoYWRvdykpO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbih2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXRyYW5zaXRpb24pKTtcblxuICAgICAgJi5vZmZjYW52YXMtc3RhcnQge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXdpZHRoKTtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICAgICAgfVxuXG4gICAgICAmLm9mZmNhbnZhcy1lbmQge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB3aWR0aDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy13aWR0aCk7XG4gICAgICAgIGJvcmRlci1sZWZ0OiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gICAgICB9XG5cbiAgICAgICYub2ZmY2FudmFzLXRvcCB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGhlaWdodDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1oZWlnaHQpO1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICAgICAgfVxuXG4gICAgICAmLm9mZmNhbnZhcy1ib3R0b20ge1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWhlaWdodCk7XG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJvcmRlci10b3A6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci1jb2xvcik7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgICAgIH1cblxuICAgICAgJi5zaG93aW5nLFxuICAgICAgJi5zaG93Om5vdCguaGlkaW5nKSB7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJi5zaG93aW5nLFxuICAgICAgJi5oaWRpbmcsXG4gICAgICAmLnNob3cge1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiBub3QgKCRpbmZpeCA9PSBcIlwiKSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuZXh0KSB7XG4gICAgICAgIC0tI3skcHJlZml4fW9mZmNhbnZhcy1oZWlnaHQ6IGF1dG87XG4gICAgICAgIC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItd2lkdGg6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbiAgICAgICAgLm9mZmNhbnZhcy1oZWFkZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAub2ZmY2FudmFzLWJvZHkge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgb3ZlcmZsb3cteTogdmlzaWJsZTtcbiAgICAgICAgICAvLyBSZXNldCBgYmFja2dyb3VuZC1jb2xvcmAgaW4gY2FzZSBgLmJnLSpgIGNsYXNzZXMgYXJlIHVzZWQgaW4gb2ZmY2FudmFzXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ub2ZmY2FudmFzLWJhY2tkcm9wIHtcbiAgQGluY2x1ZGUgb3ZlcmxheS1iYWNrZHJvcCgkemluZGV4LW9mZmNhbnZhcy1iYWNrZHJvcCwgJG9mZmNhbnZhcy1iYWNrZHJvcC1iZywgJG9mZmNhbnZhcy1iYWNrZHJvcC1vcGFjaXR5KTtcbn1cblxuLm9mZmNhbnZhcy1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteCk7XG5cbiAgLmJ0bi1jbG9zZSB7XG4gICAgcGFkZGluZzogY2FsYyh2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteSkgKiAuNSkgY2FsYyh2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteCkgKiAuNSk7XG4gICAgbWFyZ2luLXRvcDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteSkpO1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteCkpO1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXkpKTtcbiAgfVxufVxuXG4ub2ZmY2FudmFzLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtdGl0bGUtbGluZS1oZWlnaHQpO1xufVxuXG4ub2ZmY2FudmFzLWJvZHkge1xuICBmbGV4LWdyb3c6IDE7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteCk7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG4iLCIucGxhY2Vob2xkZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1pbi1oZWlnaHQ6IDFlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiB3YWl0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Y29sb3I7XG4gIG9wYWNpdHk6ICRwbGFjZWhvbGRlci1vcGFjaXR5LW1heDtcblxuICAmLmJ0bjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuXG4vLyBTaXppbmdcbi5wbGFjZWhvbGRlci14cyB7XG4gIG1pbi1oZWlnaHQ6IC42ZW07XG59XG5cbi5wbGFjZWhvbGRlci1zbSB7XG4gIG1pbi1oZWlnaHQ6IC44ZW07XG59XG5cbi5wbGFjZWhvbGRlci1sZyB7XG4gIG1pbi1oZWlnaHQ6IDEuMmVtO1xufVxuXG4vLyBBbmltYXRpb25cbi5wbGFjZWhvbGRlci1nbG93IHtcbiAgLnBsYWNlaG9sZGVyIHtcbiAgICBhbmltYXRpb246IHBsYWNlaG9sZGVyLWdsb3cgMnMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBwbGFjZWhvbGRlci1nbG93IHtcbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAkcGxhY2Vob2xkZXItb3BhY2l0eS1taW47XG4gIH1cbn1cblxuLnBsYWNlaG9sZGVyLXdhdmUge1xuICBtYXNrLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMTMwZGVnLCAkYmxhY2sgNTUlLCByZ2JhKDAsIDAsIDAsICgxIC0gJHBsYWNlaG9sZGVyLW9wYWNpdHktbWluKSkgNzUlLCAkYmxhY2sgOTUlKTtcbiAgbWFzay1zaXplOiAyMDAlIDEwMCU7XG4gIGFuaW1hdGlvbjogcGxhY2Vob2xkZXItd2F2ZSAycyBsaW5lYXIgaW5maW5pdGU7XG59XG5cbkBrZXlmcmFtZXMgcGxhY2Vob2xkZXItd2F2ZSB7XG4gIDEwMCUge1xuICAgIG1hc2stcG9zaXRpb246IC0yMDAlIDAlO1xuICB9XG59XG4iLCIvLyBBbGwtY2FwcyBgUkdCQSgpYCBmdW5jdGlvbiB1c2VkIGJlY2F1c2Ugb2YgdGhpcyBTYXNzIGJ1ZzogaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvbm9kZS1zYXNzL2lzc3Vlcy8yMjUxXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgJGNvbG9yLXJnYjogdG8tcmdiKCR2YWx1ZSk7XG4gIC50ZXh0LWJnLSN7JGNvbG9yfSB7XG4gICAgY29sb3I6IGNvbG9yLWNvbnRyYXN0KCR2YWx1ZSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBSR0JBKCRjb2xvci1yZ2IsIHZhcigtLSN7JHByZWZpeH1iZy1vcGFjaXR5LCAxKSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgfVxufVxuIiwiLy8gQWxsLWNhcHMgYFJHQkEoKWAgZnVuY3Rpb24gdXNlZCBiZWNhdXNlIG9mIHRoaXMgU2FzcyBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL25vZGUtc2Fzcy9pc3N1ZXMvMjI1MVxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5saW5rLSN7JGNvbG9yfSB7XG4gICAgY29sb3I6IFJHQkEodmFyKC0tI3skcHJlZml4fSN7JGNvbG9yfS1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay1vcGFjaXR5LCAxKSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IFJHQkEodmFyKC0tI3skcHJlZml4fSN7JGNvbG9yfS1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay11bmRlcmxpbmUtb3BhY2l0eSwgMSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG5cbiAgICBAaWYgJGxpbmstc2hhZGUtcGVyY2VudGFnZSAhPSAwIHtcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgJGhvdmVyLWNvbG9yOiBpZihjb2xvci1jb250cmFzdCgkdmFsdWUpID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJHZhbHVlLCAkbGluay1zaGFkZS1wZXJjZW50YWdlKSwgdGludC1jb2xvcigkdmFsdWUsICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UpKTtcbiAgICAgICAgY29sb3I6IFJHQkEoI3t0by1yZ2IoJGhvdmVyLWNvbG9yKX0sIHZhcigtLSN7JHByZWZpeH1saW5rLW9wYWNpdHksIDEpKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IFJHQkEodG8tcmdiKCRob3Zlci1jb2xvciksIHZhcigtLSN7JHByZWZpeH1saW5rLXVuZGVybGluZS1vcGFjaXR5LCAxKSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gT25lLW9mZiBzcGVjaWFsIGxpbmsgaGVscGVyIGFzIGEgYnJpZGdlIHVudGlsIHY2XG4ubGluay1ib2R5LWVtcGhhc2lzIHtcbiAgY29sb3I6IFJHQkEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksIHZhcigtLSN7JHByZWZpeH1saW5rLW9wYWNpdHksIDEpKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IFJHQkEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksIHZhcigtLSN7JHByZWZpeH1saW5rLXVuZGVybGluZS1vcGFjaXR5LCAxKSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcblxuICBAaWYgJGxpbmstc2hhZGUtcGVyY2VudGFnZSAhPSAwIHtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6IFJHQkEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksIHZhcigtLSN7JHByZWZpeH1saW5rLW9wYWNpdHksIC43NSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IFJHQkEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksIHZhcigtLSN7JHByZWZpeH1saW5rLXVuZGVybGluZS1vcGFjaXR5LCAuNzUpKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgIH1cbiAgfVxufVxuIiwiLmZvY3VzLXJpbmc6Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xuICAvLyBCeSBkZWZhdWx0LCB0aGVyZSBpcyBubyBgLS1icy1mb2N1cy1yaW5nLXhgLCBgLS1icy1mb2N1cy1yaW5nLXlgLCBvciBgLS1icy1mb2N1cy1yaW5nLWJsdXJgLCBidXQgd2UgcHJvdmlkZSBDU1MgdmFyaWFibGVzIHdpdGggZmFsbGJhY2tzIHRvIGluaXRpYWwgYDBgIHZhbHVlc1xuICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9Zm9jdXMtcmluZy14LCAwKSB2YXIoLS0jeyRwcmVmaXh9Zm9jdXMtcmluZy15LCAwKSB2YXIoLS0jeyRwcmVmaXh9Zm9jdXMtcmluZy1ibHVyLCAwKSB2YXIoLS0jeyRwcmVmaXh9Zm9jdXMtcmluZy13aWR0aCkgdmFyKC0tI3skcHJlZml4fWZvY3VzLXJpbmctY29sb3IpO1xufVxuIiwiLmljb24tbGluayB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBnYXA6ICRpY29uLWxpbmstZ2FwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHJnYmEodmFyKC0tI3skcHJlZml4fWxpbmstY29sb3ItcmdiKSwgdmFyKC0tI3skcHJlZml4fWxpbmstb3BhY2l0eSwgLjUpKTtcbiAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAkaWNvbi1saW5rLXVuZGVybGluZS1vZmZzZXQ7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblxuICA+IC5iaSB7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgd2lkdGg6ICRpY29uLWxpbmstaWNvbi1zaXplO1xuICAgIGhlaWdodDogJGljb24tbGluay1pY29uLXNpemU7XG4gICAgZmlsbDogY3VycmVudGNvbG9yO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGljb24tbGluay1pY29uLXRyYW5zaXRpb24pO1xuICB9XG59XG5cbi5pY29uLWxpbmstaG92ZXIge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzLXZpc2libGUge1xuICAgID4gLmJpIHtcbiAgICAgIHRyYW5zZm9ybTogdmFyKC0tI3skcHJlZml4fWljb24tbGluay10cmFuc2Zvcm0sICRpY29uLWxpbmstaWNvbi10cmFuc2Zvcm0pO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gQ3JlZGl0OiBOaWNvbGFzIEdhbGxhZ2hlciBhbmQgU1VJVCBDU1MuXG5cbi5yYXRpbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tI3skcHJlZml4fWFzcGVjdC1yYXRpbyk7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gID4gKiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG5AZWFjaCAka2V5LCAkcmF0aW8gaW4gJGFzcGVjdC1yYXRpb3Mge1xuICAucmF0aW8tI3ska2V5fSB7XG4gICAgLS0jeyRwcmVmaXh9YXNwZWN0LXJhdGlvOiAjeyRyYXRpb307XG4gIH1cbn1cbiIsIi8vIFNob3J0aGFuZFxuXG4uZml4ZWQtdG9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4uZml4ZWQtYm90dG9tIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4vLyBSZXNwb25zaXZlIHN0aWNreSB0b3AgYW5kIGJvdHRvbVxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLnN0aWNreSN7JGluZml4fS10b3Age1xuICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHotaW5kZXg6ICR6aW5kZXgtc3RpY2t5O1xuICAgIH1cblxuICAgIC5zdGlja3kjeyRpbmZpeH0tYm90dG9tIHtcbiAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICBib3R0b206IDA7XG4gICAgICB6LWluZGV4OiAkemluZGV4LXN0aWNreTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHNjc3MtZG9jcy1zdGFydCBzdGFja3Ncbi5oc3RhY2sge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xufVxuXG4udnN0YWNrIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMSAxIGF1dG87XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG59XG4vLyBzY3NzLWRvY3MtZW5kIHN0YWNrc1xuIiwiLy9cbi8vIFZpc3VhbGx5IGhpZGRlblxuLy9cblxuLnZpc3VhbGx5LWhpZGRlbixcbi52aXN1YWxseS1oaWRkZW4tZm9jdXNhYmxlOm5vdCg6Zm9jdXMpOm5vdCg6Zm9jdXMtd2l0aGluKSB7XG4gIEBpbmNsdWRlIHZpc3VhbGx5LWhpZGRlbigpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIEhpZGUgY29udGVudCB2aXN1YWxseSB3aGlsZSBrZWVwaW5nIGl0IGFjY2Vzc2libGUgdG8gYXNzaXN0aXZlIHRlY2hub2xvZ2llc1xuLy9cbi8vIFNlZTogaHR0cHM6Ly93d3cuYTExeXByb2plY3QuY29tL3Bvc3RzLzIwMTMtMDEtMTEtaG93LXRvLWhpZGUtY29udGVudC9cbi8vIFNlZTogaHR0cHM6Ly9raXR0eWdpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuXG5AbWl4aW4gdmlzdWFsbHktaGlkZGVuKCkge1xuICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAtMXB4ICFpbXBvcnRhbnQ7IC8vIEZpeCBmb3IgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNTY4NlxuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCkgIWltcG9ydGFudDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcblxuICAvLyBGaXggZm9yIHBvc2l0aW9uZWQgdGFibGUgY2FwdGlvbiB0aGF0IGNvdWxkIGJlY29tZSBhbm9ueW1vdXMgY2VsbHNcbiAgJjpub3QoY2FwdGlvbikge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vIFVzZSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZCwgb3Igb25lIG9mIGl0cyBjaGlsZCBlbGVtZW50cyBpcyBmb2N1c2VkXG4vLyAoaS5lLiB3aGVuIGZvY3VzIGlzIHdpdGhpbiB0aGUgZWxlbWVudC9jb250YWluZXIgdGhhdCB0aGUgY2xhc3Mgd2FzIGFwcGxpZWQgdG8pXG4vL1xuLy8gVXNlZnVsIGZvciBcIlNraXAgdG8gbWFpbiBjb250ZW50XCIgbGlua3M7IHNlZSBodHRwczovL3d3dy53My5vcmcvVFIvMjAxMy9OT1RFLVdDQUcyMC1URUNIUy0yMDEzMDkwNS9HMVxuXG5AbWl4aW4gdmlzdWFsbHktaGlkZGVuLWZvY3VzYWJsZSgpIHtcbiAgJjpub3QoOmZvY3VzKTpub3QoOmZvY3VzLXdpdGhpbikge1xuICAgIEBpbmNsdWRlIHZpc3VhbGx5LWhpZGRlbigpO1xuICB9XG59XG4iLCIvL1xuLy8gU3RyZXRjaGVkIGxpbmtcbi8vXG5cbi5zdHJldGNoZWQtbGluayB7XG4gICY6OiN7JHN0cmV0Y2hlZC1saW5rLXBzZXVkby1lbGVtZW50fSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAkc3RyZXRjaGVkLWxpbmstei1pbmRleDtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG4iLCIvL1xuLy8gVGV4dCB0cnVuY2F0aW9uXG4vL1xuXG4udGV4dC10cnVuY2F0ZSB7XG4gIEBpbmNsdWRlIHRleHQtdHJ1bmNhdGUoKTtcbn1cbiIsIi8vIFRleHQgdHJ1bmNhdGVcbi8vIFJlcXVpcmVzIGlubGluZS1ibG9jayBvciBibG9jayBmb3IgcHJvcGVyIHN0eWxpbmdcblxuQG1peGluIHRleHQtdHJ1bmNhdGUoKSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiLnZyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICB3aWR0aDogMXB4O1xuICBtaW4taGVpZ2h0OiAxZW07XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgb3BhY2l0eTogJGhyLW9wYWNpdHk7XG59XG4iLCIvLyBVdGlsaXR5IGdlbmVyYXRvclxuLy8gVXNlZCB0byBnZW5lcmF0ZSB1dGlsaXRpZXMgJiBwcmludCB1dGlsaXRpZXNcbkBtaXhpbiBnZW5lcmF0ZS11dGlsaXR5KCR1dGlsaXR5LCAkaW5maXg6IFwiXCIsICRpcy1yZnMtbWVkaWEtcXVlcnk6IGZhbHNlKSB7XG4gICR2YWx1ZXM6IG1hcC1nZXQoJHV0aWxpdHksIHZhbHVlcyk7XG5cbiAgLy8gSWYgdGhlIHZhbHVlcyBhcmUgYSBsaXN0IG9yIHN0cmluZywgY29udmVydCBpdCBpbnRvIGEgbWFwXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZXMpID09IFwic3RyaW5nXCIgb3IgdHlwZS1vZihudGgoJHZhbHVlcywgMSkpICE9IFwibGlzdFwiIHtcbiAgICAkdmFsdWVzOiB6aXAoJHZhbHVlcywgJHZhbHVlcyk7XG4gIH1cblxuICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgJHByb3BlcnRpZXM6IG1hcC1nZXQoJHV0aWxpdHksIHByb3BlcnR5KTtcblxuICAgIC8vIE11bHRpcGxlIHByb3BlcnRpZXMgYXJlIHBvc3NpYmxlLCBmb3IgZXhhbXBsZSB3aXRoIHZlcnRpY2FsIG9yIGhvcml6b250YWwgbWFyZ2lucyBvciBwYWRkaW5nc1xuICAgIEBpZiB0eXBlLW9mKCRwcm9wZXJ0aWVzKSA9PSBcInN0cmluZ1wiIHtcbiAgICAgICRwcm9wZXJ0aWVzOiBhcHBlbmQoKCksICRwcm9wZXJ0aWVzKTtcbiAgICB9XG5cbiAgICAvLyBVc2UgY3VzdG9tIGNsYXNzIGlmIHByZXNlbnRcbiAgICAkcHJvcGVydHktY2xhc3M6IGlmKG1hcC1oYXMta2V5KCR1dGlsaXR5LCBjbGFzcyksIG1hcC1nZXQoJHV0aWxpdHksIGNsYXNzKSwgbnRoKCRwcm9wZXJ0aWVzLCAxKSk7XG4gICAgJHByb3BlcnR5LWNsYXNzOiBpZigkcHJvcGVydHktY2xhc3MgPT0gbnVsbCwgXCJcIiwgJHByb3BlcnR5LWNsYXNzKTtcblxuICAgIC8vIFVzZSBjdXN0b20gQ1NTIHZhcmlhYmxlIG5hbWUgaWYgcHJlc2VudCwgb3RoZXJ3aXNlIGRlZmF1bHQgdG8gYGNsYXNzYFxuICAgICRjc3MtdmFyaWFibGUtbmFtZTogaWYobWFwLWhhcy1rZXkoJHV0aWxpdHksIGNzcy12YXJpYWJsZS1uYW1lKSwgbWFwLWdldCgkdXRpbGl0eSwgY3NzLXZhcmlhYmxlLW5hbWUpLCBtYXAtZ2V0KCR1dGlsaXR5LCBjbGFzcykpO1xuXG4gICAgLy8gU3RhdGUgcGFyYW1zIHRvIGdlbmVyYXRlIHBzZXVkby1jbGFzc2VzXG4gICAgJHN0YXRlOiBpZihtYXAtaGFzLWtleSgkdXRpbGl0eSwgc3RhdGUpLCBtYXAtZ2V0KCR1dGlsaXR5LCBzdGF0ZSksICgpKTtcblxuICAgICRpbmZpeDogaWYoJHByb3BlcnR5LWNsYXNzID09IFwiXCIgYW5kIHN0ci1zbGljZSgkaW5maXgsIDEsIDEpID09IFwiLVwiLCBzdHItc2xpY2UoJGluZml4LCAyKSwgJGluZml4KTtcblxuICAgIC8vIERvbid0IHByZWZpeCBpZiB2YWx1ZSBrZXkgaXMgbnVsbCAoZS5nLiB3aXRoIHNoYWRvdyBjbGFzcylcbiAgICAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXI6IGlmKCRrZXksIGlmKCRwcm9wZXJ0eS1jbGFzcyA9PSBcIlwiIGFuZCAkaW5maXggPT0gXCJcIiwgXCJcIiwgXCItXCIpICsgJGtleSwgXCJcIik7XG5cbiAgICBAaWYgbWFwLWdldCgkdXRpbGl0eSwgcmZzKSB7XG4gICAgICAvLyBJbnNpZGUgdGhlIG1lZGlhIHF1ZXJ5XG4gICAgICBAaWYgJGlzLXJmcy1tZWRpYS1xdWVyeSB7XG4gICAgICAgICR2YWw6IHJmcy12YWx1ZSgkdmFsdWUpO1xuXG4gICAgICAgIC8vIERvIG5vdCByZW5kZXIgYW55dGhpbmcgaWYgZmx1aWQgYW5kIG5vbiBmbHVpZCB2YWx1ZXMgYXJlIHRoZSBzYW1lXG4gICAgICAgICR2YWx1ZTogaWYoJHZhbCA9PSByZnMtZmx1aWQtdmFsdWUoJHZhbHVlKSwgbnVsbCwgJHZhbCk7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICR2YWx1ZTogcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJGlzLWNzcy12YXI6IG1hcC1nZXQoJHV0aWxpdHksIGNzcy12YXIpO1xuICAgICRpcy1sb2NhbC12YXJzOiBtYXAtZ2V0KCR1dGlsaXR5LCBsb2NhbC12YXJzKTtcbiAgICAkaXMtcnRsOiBtYXAtZ2V0KCR1dGlsaXR5LCBydGwpO1xuXG4gICAgQGlmICR2YWx1ZSAhPSBudWxsIHtcbiAgICAgIEBpZiAkaXMtcnRsID09IGZhbHNlIHtcbiAgICAgICAgLyogcnRsOmJlZ2luOnJlbW92ZSAqL1xuICAgICAgfVxuXG4gICAgICBAaWYgJGlzLWNzcy12YXIge1xuICAgICAgICAuI3skcHJvcGVydHktY2xhc3MgKyAkaW5maXggKyAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXJ9IHtcbiAgICAgICAgICAtLSN7JHByZWZpeH0jeyRjc3MtdmFyaWFibGUtbmFtZX06ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRwc2V1ZG8gaW4gJHN0YXRlIHtcbiAgICAgICAgICAuI3skcHJvcGVydHktY2xhc3MgKyAkaW5maXggKyAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXJ9LSN7JHBzZXVkb306I3skcHNldWRvfSB7XG4gICAgICAgICAgICAtLSN7JHByZWZpeH0jeyRjc3MtdmFyaWFibGUtbmFtZX06ICN7JHZhbHVlfTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAuI3skcHJvcGVydHktY2xhc3MgKyAkaW5maXggKyAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXJ9IHtcbiAgICAgICAgICBAZWFjaCAkcHJvcGVydHkgaW4gJHByb3BlcnRpZXMge1xuICAgICAgICAgICAgQGlmICRpcy1sb2NhbC12YXJzIHtcbiAgICAgICAgICAgICAgQGVhY2ggJGxvY2FsLXZhciwgJHZhcmlhYmxlIGluICRpcy1sb2NhbC12YXJzIHtcbiAgICAgICAgICAgICAgICAtLSN7JHByZWZpeH0jeyRsb2NhbC12YXJ9OiAjeyR2YXJpYWJsZX07XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICN7JHByb3BlcnR5fTogJHZhbHVlIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJHBzZXVkbyBpbiAkc3RhdGUge1xuICAgICAgICAgIC4jeyRwcm9wZXJ0eS1jbGFzcyArICRpbmZpeCArICRwcm9wZXJ0eS1jbGFzcy1tb2RpZmllcn0tI3skcHNldWRvfTojeyRwc2V1ZG99IHtcbiAgICAgICAgICAgIEBlYWNoICRwcm9wZXJ0eSBpbiAkcHJvcGVydGllcyB7XG4gICAgICAgICAgICAgIEBpZiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgICAgQGVhY2ggJGxvY2FsLXZhciwgJHZhcmlhYmxlIGluICRpcy1sb2NhbC12YXJzIHtcbiAgICAgICAgICAgICAgICAgIC0tI3skcHJlZml4fSN7JGxvY2FsLXZhcn06ICN7JHZhcmlhYmxlfTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgI3skcHJvcGVydHl9OiAkdmFsdWUgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGlmICRpcy1ydGwgPT0gZmFsc2Uge1xuICAgICAgICAvKiBydGw6ZW5kOnJlbW92ZSAqL1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gTG9vcCBvdmVyIGVhY2ggYnJlYWtwb2ludFxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcblxuICAvLyBHZW5lcmF0ZSBtZWRpYSBxdWVyeSBpZiBuZWVkZWRcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLy8gTG9vcCBvdmVyIGVhY2ggdXRpbGl0eSBwcm9wZXJ0eVxuICAgIEBlYWNoICRrZXksICR1dGlsaXR5IGluICR1dGlsaXRpZXMge1xuICAgICAgLy8gVGhlIHV0aWxpdHkgY2FuIGJlIGRpc2FibGVkIHdpdGggYGZhbHNlYCwgdGh1cyBjaGVjayBpZiB0aGUgdXRpbGl0eSBpcyBhIG1hcCBmaXJzdFxuICAgICAgLy8gT25seSBwcm9jZWVkIGlmIHJlc3BvbnNpdmUgbWVkaWEgcXVlcmllcyBhcmUgZW5hYmxlZCBvciBpZiBpdCdzIHRoZSBiYXNlIG1lZGlhIHF1ZXJ5XG4gICAgICBAaWYgdHlwZS1vZigkdXRpbGl0eSkgPT0gXCJtYXBcIiBhbmQgKG1hcC1nZXQoJHV0aWxpdHksIHJlc3BvbnNpdmUpIG9yICRpbmZpeCA9PSBcIlwiKSB7XG4gICAgICAgIEBpbmNsdWRlIGdlbmVyYXRlLXV0aWxpdHkoJHV0aWxpdHksICRpbmZpeCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFJGUyByZXNjYWxpbmdcbkBtZWRpYSAobWluLXdpZHRoOiAkcmZzLW1xLXZhbHVlKSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAaWYgKG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50KSA8ICRyZnMtYnJlYWtwb2ludCkge1xuICAgICAgLy8gTG9vcCBvdmVyIGVhY2ggdXRpbGl0eSBwcm9wZXJ0eVxuICAgICAgQGVhY2ggJGtleSwgJHV0aWxpdHkgaW4gJHV0aWxpdGllcyB7XG4gICAgICAgIC8vIFRoZSB1dGlsaXR5IGNhbiBiZSBkaXNhYmxlZCB3aXRoIGBmYWxzZWAsIHRodXMgY2hlY2sgaWYgdGhlIHV0aWxpdHkgaXMgYSBtYXAgZmlyc3RcbiAgICAgICAgLy8gT25seSBwcm9jZWVkIGlmIHJlc3BvbnNpdmUgbWVkaWEgcXVlcmllcyBhcmUgZW5hYmxlZCBvciBpZiBpdCdzIHRoZSBiYXNlIG1lZGlhIHF1ZXJ5XG4gICAgICAgIEBpZiB0eXBlLW9mKCR1dGlsaXR5KSA9PSBcIm1hcFwiIGFuZCBtYXAtZ2V0KCR1dGlsaXR5LCByZnMpIGFuZCAobWFwLWdldCgkdXRpbGl0eSwgcmVzcG9uc2l2ZSkgb3IgJGluZml4ID09IFwiXCIpIHtcbiAgICAgICAgICBAaW5jbHVkZSBnZW5lcmF0ZS11dGlsaXR5KCR1dGlsaXR5LCAkaW5maXgsIHRydWUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gUHJpbnQgdXRpbGl0aWVzXG5AbWVkaWEgcHJpbnQge1xuICBAZWFjaCAka2V5LCAkdXRpbGl0eSBpbiAkdXRpbGl0aWVzIHtcbiAgICAvLyBUaGUgdXRpbGl0eSBjYW4gYmUgZGlzYWJsZWQgd2l0aCBgZmFsc2VgLCB0aHVzIGNoZWNrIGlmIHRoZSB1dGlsaXR5IGlzIGEgbWFwIGZpcnN0XG4gICAgLy8gVGhlbiBjaGVjayBpZiB0aGUgdXRpbGl0eSBuZWVkcyBwcmludCBzdHlsZXNcbiAgICBAaWYgdHlwZS1vZigkdXRpbGl0eSkgPT0gXCJtYXBcIiBhbmQgbWFwLWdldCgkdXRpbGl0eSwgcHJpbnQpID09IHRydWUge1xuICAgICAgQGluY2x1ZGUgZ2VuZXJhdGUtdXRpbGl0eSgkdXRpbGl0eSwgXCItcHJpbnRcIik7XG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAqIFNoYXJlZCBCdXR0b24gU3R5bGVzXG4gKlxuICogQmFzZSBidXR0b24gc3R5bGVzIHVzZWQgYWNyb3NzIGZyb250ZW5kIGFuZCBiYWNrZW5kXG4gKi9cblxuLy8gQmFzZSBidXR0b24gc3R5bGVzIC0gZXh0ZW5kcyBCb290c3RyYXAncyAuYnRuXG4vLyBXZSBvbmx5IG92ZXJyaWRlIHNwZWNpZmljIHByb3BlcnRpZXMsIGxldHRpbmcgQm9vdHN0cmFwIGhhbmRsZSB0aGUgcmVzdFxuLmJ0biB7XG4gIC8vIExldCBCb290c3RyYXAgaGFuZGxlIGRpc3BsYXksIGJvcmRlciwgYW5kIG90aGVyIGJhc2UgcHJvcGVydGllc1xuICAvLyBPbmx5IG92ZXJyaWRlIG91ciBjdXN0b20gdmFsdWVzXG4gIGZvbnQtd2VpZ2h0OiAkYnRuLWZvbnQtd2VpZ2h0O1xuICBwYWRkaW5nOiAkYnRuLXBhZGRpbmcteSAkYnRuLXBhZGRpbmcteDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIGJvcmRlci1yYWRpdXM6ICRidG4tYm9yZGVyLXJhZGl1cztcbiAgdHJhbnNpdGlvbjogJGJ0bi10cmFuc2l0aW9uO1xuICBcbiAgJjpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG4gIFxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDNweCByZ2JhKCRwcmltYXJ5LCAwLjI1KTtcbiAgfVxuICBcbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogMC42NTtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICB9XG4gIFxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cbn1cblxuLy8gQnV0dG9uIHZhcmlhbnRzXG4uYnRuLXByaW1hcnkge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkcHJpbWFyeSwgJHdoaXRlKTtcbiAgXG4gIC8vIE1PRElGSUVEIEJZIEhBTlNPTlhZWiAtIEN1c3RvbSBob3ZlciBjb2xvciBvdmVycmlkZVxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzIzMjhhICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjMzIzMjhhICFpbXBvcnRhbnQ7XG4gIH1cbiAgXG4gICY6Zm9jdXMsXG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMyMzI4YSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogIzMyMzI4YSAhaW1wb3J0YW50O1xuICB9XG4gIFxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMjMyOGEgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6ICMzMjMyOGEgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uYnRuLXNlY29uZGFyeSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRzZWNvbmRhcnksICR3aGl0ZSk7XG59XG5cbi5idG4tc3VjY2VzcyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRzdWNjZXNzLCAkd2hpdGUpO1xufVxuXG4uYnRuLWluZm8ge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkaW5mbywgJHdoaXRlKTtcbn1cblxuLmJ0bi13YXJuaW5nIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJHdhcm5pbmcsICR3aGl0ZSk7XG59XG5cbi5idG4tZGFuZ2VyIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGRhbmdlciwgJHdoaXRlKTtcbn1cblxuLmJ0bi1saWdodCB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRsaWdodC1ncmF5LCAkZGFyay1ncmF5KTtcbn1cblxuLmJ0bi1kYXJrIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGRhcmstZ3JheSwgJHdoaXRlKTtcbn1cblxuLy8gT3V0bGluZSBidXR0b24gdmFyaWFudHNcbi5idG4tb3V0bGluZS1wcmltYXJ5IHtcbiAgY29sb3I6ICRwcmltYXJ5O1xuICBib3JkZXItY29sb3I6ICM2Yzc1N2Q7IC8vIEdyYXkgYm9yZGVyIGFzIHJlcXVlc3RlZFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMDsgLy8gRXhwbGljaXRseSBzcXVhcmUgY29ybmVyc1xuICBcbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbiAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5O1xuICB9XG4gIFxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjNmM3NTdkO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKCRwcmltYXJ5LCAwLjI1KTtcbiAgfVxufVxuXG4vLyBTaXplIHZhcmlhdGlvbnNcbi5idG4tbGcge1xuICBwYWRkaW5nOiAxMnB4IDMwcHg7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcbn1cblxuLmJ0bi1zbSB7XG4gIHBhZGRpbmc6IDVweCAxNXB4O1xuICBmb250LXNpemU6ICRmb250LXNpemUtc207XG59XG5cbi8vIEJsb2NrIGJ1dHRvblxuLmJ0bi1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLy8gSWNvbiBidXR0b25cbi5idG4taWNvbiB7XG4gIHBhZGRpbmc6ICRidG4tcGFkZGluZy15O1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBAaW5jbHVkZSBmbGV4LWNlbnRlcjtcbiAgXG4gICYuYnRuLXNtIHtcbiAgICB3aWR0aDogMzJweDtcbiAgICBoZWlnaHQ6IDMycHg7XG4gIH1cbiAgXG4gICYuYnRuLWxnIHtcbiAgICB3aWR0aDogNDhweDtcbiAgICBoZWlnaHQ6IDQ4cHg7XG4gIH1cbn0iLCIvKipcbiAqIFF1aWxsIEVkaXRvciBTdHlsZXNcbiAqIENvbnNpc3RlbnQgc3R5bGluZyBmb3IgUXVpbGwgV1lTSVdZRyBlZGl0b3JzIGFjcm9zcyB0aGUgYXBwbGljYXRpb25cbiAqL1xuXG4vLyBRdWlsbCBFZGl0b3IgQ29udGFpbmVyIFN0eWxlcyAtIENSSVRJQ0FMIGZvciBwcm9wZXIgbGF5b3V0XG4ucXVpbGwtd3JhcHBlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAvLyBRdWlsbCBjb250YWluZXIgaW5zaWRlIHdyYXBwZXJcbiAgICAucXVpbGwtZWRpdG9yLWNvbnRhaW5lciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgbWluLWhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC8vIFF1aWxsIFRvb2xiYXIgU3R5bGVzXG4gICAgLnFsLXRvb2xiYXIge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZjhmOWZhO1xuICAgICAgICBcbiAgICAgICAgJi5xbC1zbm93IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDhweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFF1aWxsIENvbnRhaW5lciAoaG9sZHMgdGhlIGVkaXRvcilcbiAgICAucWwtY29udGFpbmVyIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgICAgXG4gICAgICAgICYucWwtc25vdyB7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBRdWlsbCBFZGl0b3IgQ29udGVudCBBcmVhXG4gICAgLnFsLWVkaXRvciB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgbWluLWhlaWdodDogMTUwcHg7XG4gICAgICAgIG1heC1oZWlnaHQ6IDQwMHB4O1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAxMnB4IDE1cHg7XG5cbiAgICAgICAgLy8gRW5zdXJlIGNvbnNpc3RlbnQgZm9udCBzaXplIGZvciBhbGwgdGV4dCBlbGVtZW50c1xuICAgICAgICBwLFxuICAgICAgICBvbCxcbiAgICAgICAgdWwsXG4gICAgICAgIGJsb2NrcXVvdGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEtlZXAgaGVhZGVycyBwcm9wb3J0aW9uYWxcbiAgICAgICAgaDEge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG4gICAgICAgIH1cblxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAvLyBGaXggZm9yIHBsYWNlaG9sZGVyIHRleHRcbiAgICAgICAgJi5xbC1ibGFuazo6YmVmb3JlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgICAgbGVmdDogMTVweDtcbiAgICAgICAgICAgIHJpZ2h0OiAxNXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gVmFyaWFudDogU2ltcGxlIGVkaXRvciAoZmV3ZXIgdG9vbGJhciBvcHRpb25zKVxuICAgICYucXVpbGwtc2ltcGxlIHtcbiAgICAgICAgLnFsLWVkaXRvciB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDI1MHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gVmFyaWFudDogRnVsbCBlZGl0b3IgKGFsbCB0b29sYmFyIG9wdGlvbnMpXG4gICAgJi5xdWlsbC1mdWxsIHtcbiAgICAgICAgLnFsLWVkaXRvciB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAyMDBweDtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDUwMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gVmFyaWFudDogSW5saW5lIGVkaXRvciAobm8gYm9yZGVyIG9uIHdyYXBwZXIpXG4gICAgJi5xdWlsbC1pbmxpbmUge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIFxuICAgICAgICAucWwtdG9vbGJhciB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtIDAuMzc1cmVtIDAgMDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnFsLWNvbnRhaW5lciB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwLjM3NXJlbSAwLjM3NXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gQXV0by1pbml0OiBBcHBseSBRdWlsbCB0byB0ZXh0YXJlYXMgd2l0aCBkYXRhLXd5c2l3eWc9XCJxdWlsbFwiXG50ZXh0YXJlYVtkYXRhLXd5c2l3eWc9XCJxdWlsbFwiXSB7XG4gICAgLy8gVGhpcyB3aWxsIGJlIGhpZGRlbiB3aGVuIFF1aWxsIGluaXRpYWxpemVzXG4gICAgJi5xdWlsbC1pbml0aWFsaXplZCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufSIsIi8qKlxuICogU3RhciBSYXRpbmcgQ29tcG9uZW50IFN0eWxlc1xuICovXG5cbi5zdGFyLXJhdGluZy13aWRnZXQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICBcbiAgICAvLyBEaXNwbGF5IG1vZGUgc3R5bGVzXG4gICAgJi5yZWFkb25seSB7XG4gICAgICAgIC5zdGFyLXJhdGluZy1kaXNwbGF5IHtcbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmY5ODAwOyAvLyBTdHJvbmcgYW1iZXIvb3JhbmdlIGNvbG9yXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gSW50ZXJhY3RpdmUgbW9kZSBzdHlsZXNcbiAgICAmLmludGVyYWN0aXZlIHtcbiAgICAgICAgLnN0YXItcmF0aW5nLWlucHV0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogMnB4O1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAuc3Rhci13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAuc3Rhci1yYWRpbyB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZGRkO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGVhc2U7XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAmLmZhcy5mYS1zdGFyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmY5ODAwOyAvLyBTdHJvbmcgYW1iZXIvb3JhbmdlIGNvbG9yXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgJjpob3ZlciBpIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZjk4MDA7IC8vIFN0cm9uZyBhbWJlci9vcmFuZ2UgY29sb3JcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5zdGFyLWNsZWFyLWJ0biB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZGMzNTQ1O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBTaXplIHZhcmlhdGlvbnNcbiAgICAmLnN0YXItcmF0aW5nLXNtIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBcbiAgICAgICAgLnN0YXItcmF0aW5nLWlucHV0IHtcbiAgICAgICAgICAgIGdhcDogMXB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgICYuc3Rhci1yYXRpbmctbWQge1xuICAgICAgICBmb250LXNpemU6IDMwcHg7IC8vIEluY3JlYXNlZCBmcm9tIDIwcHggdG8gbWFrZSBzdGFycyA1MCUgYmlnZ2VyXG4gICAgICAgIFxuICAgICAgICAuc3Rhci1yYXRpbmctaW5wdXQge1xuICAgICAgICAgICAgZ2FwOiAzcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgJi5zdGFyLXJhdGluZy1sZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgXG4gICAgICAgIC5zdGFyLXJhdGluZy1pbnB1dCB7XG4gICAgICAgICAgICBnYXA6IDNweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gQmFja2VuZCBmb3JtIHNwZWNpZmljIHN0eWxlc1xuLmJhY2tlbmQtZm9ybSB7XG4gICAgLnN0YXItcmF0aW5nLXdpZGdldCB7XG4gICAgICAgICYuaW50ZXJhY3RpdmUge1xuICAgICAgICAgICAgLnN0YXItcmF0aW5nLWlucHV0IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjhmOWZhO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxMnB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjODBiZGZmO1xuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgwLCAxMjMsIDI1NSwgMC4yNSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBGcm9udGVuZCByZXZpZXcgZm9ybSBzdHlsZXNcbi5yZXZpZXctZm9ybSB7XG4gICAgLnN0YXItcmF0aW5nLXdpZGdldCB7XG4gICAgICAgICYuaW50ZXJhY3RpdmUge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLnN0YXItcmF0aW5nLWlucHV0IHtcbiAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gUmV2aWV3IGRpc3BsYXkgc3R5bGVzXG4ucmV2aWV3LWl0ZW0ge1xuICAgIC5zdGFyLXJhdGluZy13aWRnZXQge1xuICAgICAgICAmLnJlYWRvbmx5IHtcbiAgICAgICAgICAgIC5zdGFyLXJhdGluZy1kaXNwbGF5IHtcbiAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gTW9kYWwgcmV2aWV3IGVkaXRvciBzdHlsZXNcbi5yZXZpZXctZWRpdG9yLW1vZGFsIHtcbiAgICAuc3Rhci1yYXRpbmctd2lkZ2V0IHtcbiAgICAgICAgJi5pbnRlcmFjdGl2ZSB7XG4gICAgICAgICAgICAuc3Rhci1yYXRpbmctaW5wdXQge1xuICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi8qKlxuICogU2VsZWN0MiBBY2Nlc3NpYmlsaXR5IEltcHJvdmVtZW50c1xuICogXG4gKiBGaXhlcyBrZXlib2FyZCBuYXZpZ2F0aW9uIHZpc2liaWxpdHkgYW5kIGltcHJvdmVzIG92ZXJhbGwgYWNjZXNzaWJpbGl0eVxuICogZm9yIFNlbGVjdDIgZHJvcGRvd25zIGFjcm9zcyB0aGUgYXBwbGljYXRpb24uXG4gKi9cblxuLy8gRW5zdXJlIGhpZ2hsaWdodGVkIG9wdGlvbnMgYXJlIGNsZWFybHkgdmlzaWJsZSB3aGVuIG5hdmlnYXRpbmcgd2l0aCBrZXlib2FyZFxuLnNlbGVjdDItY29udGFpbmVyIHtcbiAgICAvLyBGaXggaGlnaGxpZ2h0IHZpc2liaWxpdHkgZm9yIGtleWJvYXJkIG5hdmlnYXRpb25cbiAgICAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkW2FyaWEtc2VsZWN0ZWRdLFxuICAgIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWQuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLXNlbGVjdGFibGUge1xuICAgICAgICAvLyBVc2UgYSBoaWdoLWNvbnRyYXN0IGJsdWUgdGhhdCB3b3JrcyBpbiBib3RoIGxpZ2h0IGFuZCBkYXJrIGNvbnRleHRzXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbiAgICAgICAgXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzBiNWVkNyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBJbXByb3ZlIGZvY3VzIHZpc2liaWxpdHkgb24gdGhlIFNlbGVjdDIgY29udGFpbmVyIGl0c2VsZlxuICAgICYuc2VsZWN0Mi1jb250YWluZXItLWZvY3VzIHtcbiAgICAgICAgLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzg2YjdmZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgxMywgMTEwLCAyNTMsIDAuMjUpICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gQmV0dGVyIGtleWJvYXJkIGZvY3VzIGluZGljYXRvclxuICAgIC5zZWxlY3QyLXNlbGVjdGlvbjpmb2N1cyxcbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb24uc2VsZWN0Mi1rZXlib2FyZC1mb2N1c2VkIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjODZiN2ZlICFpbXBvcnRhbnQ7XG4gICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgxMywgMTEwLCAyNTMsIDAuMjUpICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgIC8vIEVuc3VyZSBzZWFyY2ggZmllbGQgaXMgdmlzaWJsZSB3aGVuIGZvY3VzZWRcbiAgICAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjODZiN2ZlICFpbXBvcnRhbnQ7XG4gICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KSwgMCAwIDAgMC4ycmVtIHJnYmEoMTMsIDExMCwgMjUzLCAwLjI1KSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLy8gQm9vdHN0cmFwIDUgdGhlbWUgc3BlY2lmaWMgZml4ZXNcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwLTUge1xuICAgIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWRbYXJpYS1zZWxlY3RlZF0sXG4gICAgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0YWJsZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbiAgICB9XG4gICAgXG4gICAgLy8gRW5zdXJlIGRyb3Bkb3duIG9wdGlvbnMgaGF2ZSBwcm9wZXIgY29udHJhc3RcbiAgICAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24ge1xuICAgICAgICAvLyBEZWZhdWx0IHN0YXRlXG4gICAgICAgICZbYXJpYS1zZWxlY3RlZD1cImZhbHNlXCJdIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgICAgICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLy8gU2VsZWN0ZWQgc3RhdGUgKGFscmVhZHkgc2VsZWN0ZWQgaXRlbSlcbiAgICAgICAgJlthcmlhLXNlbGVjdGVkPVwidHJ1ZVwiXSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xuICAgICAgICAgICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBBZG1pbkxURSB0aGVtZSBzcGVjaWZpYyBmaXhlcyAoZm9yIGJhY2tlbmQpXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQge1xuICAgIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWRbYXJpYS1zZWxlY3RlZF0sXG4gICAgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0YWJsZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDdiZmYgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi8vIEhpZ2ggY29udHJhc3QgbW9kZSBzdXBwb3J0XG5AbWVkaWEgKHByZWZlcnMtY29udHJhc3Q6IGhpZ2gpIHtcbiAgICAuc2VsZWN0Mi1jb250YWluZXIge1xuICAgICAgICAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkW2FyaWEtc2VsZWN0ZWRdLFxuICAgICAgICAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RhYmxlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwODAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjZmZmZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIERhcmsgbW9kZSBzdXBwb3J0IChpZiB5b3VyIGFwcCBoYXMgZGFyayBtb2RlKVxuQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xuICAgIC5zZWxlY3QyLWNvbnRhaW5lciB7XG4gICAgICAgIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWRbYXJpYS1zZWxlY3RlZF0sXG4gICAgICAgIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWQuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLXNlbGVjdGFibGUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzBkNmVmZCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKipcbiAqIEZyb250ZW5kIFJlc2V0IFN0eWxlc1xuICogXG4gKiBOb3JtYWxpemUgYnJvd3NlciBkZWZhdWx0cyBmb3IgY29uc2lzdGVudCByZW5kZXJpbmdcbiAqL1xuXG4vLyBCb3ggc2l6aW5nXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4vLyBSZXNldCBtYXJnaW5zXG5odG1sLFxuYm9keSxcbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNixcbnAsXG5vbCxcbnVsLFxuZmlndXJlLFxuYmxvY2txdW90ZSxcbmRsLFxuZGQge1xuICBtYXJnaW46IDA7XG59XG5cbi8vIFJlc2V0IHBhZGRpbmdzXG5vbCxcbnVsIHtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLy8gU2V0IGNvcmUgYm9keSBkZWZhdWx0c1xuYm9keSB7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplU3BlZWQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIGNvbG9yOiAjMTAxMDEwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG59XG5cbi8vIEltYWdlc1xuaW1nLFxucGljdHVyZSB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLy8gRm9ybXNcbmlucHV0LFxuYnV0dG9uLFxudGV4dGFyZWEsXG5zZWxlY3Qge1xuICBmb250OiBpbmhlcml0O1xufVxuXG4vLyBSZW1vdmUgYW5pbWF0aW9ucyBmb3IgcmVkdWNlZCBtb3Rpb25cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIGh0bWw6Zm9jdXMtd2l0aGluIHtcbiAgICBzY3JvbGwtYmVoYXZpb3I6IGF1dG87XG4gIH1cblxuICAqLFxuICAqOjpiZWZvcmUsXG4gICo6OmFmdGVyIHtcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDAuMDFtcyAhaW1wb3J0YW50O1xuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDEgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjAxbXMgIWltcG9ydGFudDtcbiAgICBzY3JvbGwtYmVoYXZpb3I6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLyoqXG4gKiBGcm9udGVuZCBUeXBvZ3JhcGh5XG4gKiBcbiAqIFR5cG9ncmFwaHkgc3R5bGVzIGZvciB0aGUgZnJvbnRlbmRcbiAqL1xuXG4vLyBIZWFkaW5nc1xuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktaGVhZGluZztcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBjb2xvcjogIzEwMTAxMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5oNiB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbn1cblxuaDEge1xuICBmb250LXNpemU6IHJlbSgzNik7XG5cbiAgQGluY2x1ZGUgcmVzcG9uZC1hYm92ZShtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBsZykpIHtcbiAgICBmb250LXNpemU6IHJlbSg0OCk7XG4gIH1cbn1cblxuaDIge1xuICBmb250LXNpemU6IHJlbSgyOCk7XG5cbiAgQGluY2x1ZGUgcmVzcG9uZC1hYm92ZShtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBsZykpIHtcbiAgICBmb250LXNpemU6IHJlbSgzNik7XG4gIH1cbn1cblxuaDMge1xuICBmb250LXNpemU6IHJlbSgyMik7XG5cbiAgQGluY2x1ZGUgcmVzcG9uZC1hYm92ZShtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBsZykpIHtcbiAgICBmb250LXNpemU6IHJlbSgyOCk7XG4gIH1cbn1cblxuaDQge1xuICBmb250LXNpemU6IHJlbSgxOCk7XG5cbiAgQGluY2x1ZGUgcmVzcG9uZC1hYm92ZShtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBsZykpIHtcbiAgICBmb250LXNpemU6IHJlbSgyMik7XG4gIH1cbn1cblxuaDUge1xuICBmb250LXNpemU6IHJlbSgxNik7XG5cbiAgQGluY2x1ZGUgcmVzcG9uZC1hYm92ZShtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBsZykpIHtcbiAgICBmb250LXNpemU6IHJlbSgxOCk7XG4gIH1cbn1cblxuaDYge1xuICBmb250LXNpemU6IHJlbSgxNCk7XG5cbiAgQGluY2x1ZGUgcmVzcG9uZC1hYm92ZShtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBsZykpIHtcbiAgICBmb250LXNpemU6IHJlbSgxNik7XG4gIH1cbn1cblxuLy8gQm9keSB0ZXh0XG5wIHtcbiAgbWFyZ2luLWJvdHRvbTogc3BhY2luZygxKTtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8gTGlua3NcbmE6bm90KC5uYXYtbGluaykge1xuICAvLyBjb2xvcjogJHByaW1hcnk7XG4gIC8vIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgLy8gdHJhbnNpdGlvbjogY29sb3IgJHRyYW5zaXRpb24tc3BlZWQtZmFzdDtcblxuICAvLyAmOmhvdmVyIHtcbiAgLy8gICBjb2xvcjogZGFya2VuKCRwcmltYXJ5LCAxMCUpO1xuICAvLyAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAvLyB9XG59XG5cbi8vIExpc3RzXG51bCxcbm9sIHtcbiAgbWFyZ2luLWJvdHRvbTogc3BhY2luZygxKTtcbiAgcGFkZGluZy1sZWZ0OiBzcGFjaW5nKDIpO1xuXG4gIGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiBzcGFjaW5nKDAuNSk7XG4gIH1cbn1cblxudWwge1xuICBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG59XG5cbm9sIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBkZWNpbWFsO1xufVxuXG4vLyBCbG9ja3F1b3RlXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiBzcGFjaW5nKDIpIDA7XG4gIHBhZGRpbmc6IHNwYWNpbmcoMSkgc3BhY2luZygyKTtcbiAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAkcHJpbWFyeTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogbGlnaHRlbigkZGFyay1ncmF5LCAxMCUpO1xufVxuXG4vLyBDb2RlXG5jb2RlIHtcbiAgcGFkZGluZzogMnB4IDRweDtcbiAgZm9udC1zaXplOiA5MCU7XG4gIGNvbG9yOiAkZGFuZ2VyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JheTtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtc207XG59XG5cbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiBzcGFjaW5nKDEpO1xuICBtYXJnaW46IHNwYWNpbmcoMSkgMDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBjb2xvcjogJGRhcmstZ3JheTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyYXk7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuXG4gIGNvZGUge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cblxuLy8gVGV4dCB1dGlsaXRpZXNcbi50ZXh0LXByaW1hcnkge1xuICBjb2xvcjogJHByaW1hcnkgIWltcG9ydGFudDtcbn1cbi50ZXh0LXNlY29uZGFyeSB7XG4gIGNvbG9yOiAkc2Vjb25kYXJ5ICFpbXBvcnRhbnQ7XG59XG4udGV4dC1zdWNjZXNzIHtcbiAgY29sb3I6ICRzdWNjZXNzICFpbXBvcnRhbnQ7XG59XG4udGV4dC1kYW5nZXIge1xuICBjb2xvcjogJGRhbmdlciAhaW1wb3J0YW50O1xufVxuLnRleHQtd2FybmluZyB7XG4gIGNvbG9yOiAkd2FybmluZyAhaW1wb3J0YW50O1xufVxuLnRleHQtaW5mbyB7XG4gIGNvbG9yOiAkaW5mbyAhaW1wb3J0YW50O1xufVxuLnRleHQtbXV0ZWQge1xuICBjb2xvcjogIzNiM2MzYyAhaW1wb3J0YW50O1xufVxuXG4vLyBGb250IHdlaWdodHNcbi5mb250LXdlaWdodC1ub3JtYWwge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhaW1wb3J0YW50O1xufVxuLmZvbnQtd2VpZ2h0LW1lZGl1bSB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtICFpbXBvcnRhbnQ7XG59XG4uZm9udC13ZWlnaHQtYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZCAhaW1wb3J0YW50O1xufVxuXG4vLyBUZXh0IGFsaWdubWVudFxuLnRleHQtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbn1cbi50ZXh0LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xufVxuLnRleHQtcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xufVxuXG4vLyBUZXh0IHRyYW5zZm9ybVxuLnRleHQtbG93ZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZSAhaW1wb3J0YW50O1xufVxuLnRleHQtdXBwZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50O1xufVxuLnRleHQtY2FwaXRhbGl6ZSB7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplICFpbXBvcnRhbnQ7XG59XG4iLCIvKipcbiAqIEZyb250ZW5kIFV0aWxpdHkgQ2xhc3Nlc1xuICogXG4gKiBDb21tb24gdXRpbGl0eSBjbGFzc2VzIGFuZCBvdmVycmlkZXMgZm9yIHRoZSBmcm9udGVuZFxuICovXG5cbi8vIEZ1bGwgdmlld3BvcnQgaGVpZ2h0IHdpdGggcHJvcGVyIHNwYWNpbmdcbi8vIFJlcGxhY2VzIEJvb3RzdHJhcCdzIG1pbi12aC0xMDAgdG8gYWRkIGFwcHJvcHJpYXRlIG1hcmdpbnNcbi5taW4tdmgtMTAwIHtcbiAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDIwMHB4KSAhaW1wb3J0YW50OyAvLyAxMDBweCB0b3AgKyAxMDBweCBib3R0b21cbiAgbWFyZ2luLXRvcDogMTAwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEwMHB4O1xuICBcbiAgLy8gVGFibGV0IGFkanVzdG1lbnRzXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSAxMDBweCkgIWltcG9ydGFudDsgLy8gNTBweCB0b3AgKyA1MHB4IGJvdHRvbVxuICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgfVxuICBcbiAgLy8gTW9iaWxlIGFkanVzdG1lbnRzXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSA1MHB4KSAhaW1wb3J0YW50OyAvLyAyNXB4IHRvcCArIDI1cHggYm90dG9tXG4gICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICB9XG59XG5cbi8vIEFsdGVybmF0aXZlIGNsYXNzIGZvciBwYWdlcyB0aGF0IG5lZWQgZnVsbCB2aWV3cG9ydCB3aXRob3V0IG1hcmdpbnNcbi5mdWxsLXZoLTEwMCB7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMDtcbn1cblxuLy8gQ2VudGVyZWQgY29udGVudCBwYWdlcyAobGlrZSBlcnJvciBwYWdlcywgYXV0aCBwYWdlcylcbi5wYWdlLWNlbnRlcmVkIHtcbiAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDIwMHB4KTtcbiAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIFxuICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTAwcHgpO1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gIH1cbiAgXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSA1MHB4KTtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICB9XG59XG5cbi8vIFNwYWNpbmcgdXRpbGl0aWVzXG4uc3BhY2VyLXRvcCB7XG4gIHBhZGRpbmctdG9wOiAxMDBweDtcbiAgXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICB9XG4gIFxuICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgICBwYWRkaW5nLXRvcDogMjVweDtcbiAgfVxufVxuXG4uc3BhY2VyLWJvdHRvbSB7XG4gIHBhZGRpbmctYm90dG9tOiAxMDBweDtcbiAgXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICB9XG4gIFxuICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjVweDtcbiAgfVxufVxuXG4vLyBUZXh0IHV0aWxpdGllc1xuLnRleHQtZWxlZ2FudCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktaGVhZGluZztcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbn1cblxuLy8gT3BhY2l0eSB1dGlsaXRpZXNcbi5vcGFjaXR5LTEwIHsgb3BhY2l0eTogMC4xICFpbXBvcnRhbnQ7IH1cbi5vcGFjaXR5LTI1IHsgb3BhY2l0eTogMC4yNSAhaW1wb3J0YW50OyB9XG4ub3BhY2l0eS01MCB7IG9wYWNpdHk6IDAuNSAhaW1wb3J0YW50OyB9XG4ub3BhY2l0eS03NSB7IG9wYWNpdHk6IDAuNzUgIWltcG9ydGFudDsgfVxuLm9wYWNpdHktOTAgeyBvcGFjaXR5OiAwLjkgIWltcG9ydGFudDsgfVxuXG4vLyBaLWluZGV4IHV0aWxpdGllc1xuLnotMCB7IHotaW5kZXg6IDAgIWltcG9ydGFudDsgfVxuLnotMSB7IHotaW5kZXg6IDEgIWltcG9ydGFudDsgfVxuLnotMiB7IHotaW5kZXg6IDIgIWltcG9ydGFudDsgfVxuLnotMyB7IHotaW5kZXg6IDMgIWltcG9ydGFudDsgfVxuLnotMTAgeyB6LWluZGV4OiAxMCAhaW1wb3J0YW50OyB9XG4uei0yMCB7IHotaW5kZXg6IDIwICFpbXBvcnRhbnQ7IH1cblxuLy8gVHJhbnNpdGlvbiB1dGlsaXRpZXNcbi50cmFuc2l0aW9uLWFsbCB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG59XG5cbi50cmFuc2l0aW9uLXRyYW5zZm9ybSB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2U7XG59XG5cbi50cmFuc2l0aW9uLW9wYWNpdHkge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcbn1cblxuLy8gSG92ZXIgdXRpbGl0aWVzXG4uaG92ZXItbGlmdDpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcbiAgYm94LXNoYWRvdzogMCAxMHB4IDMwcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuXG4uaG92ZXItc2NhbGU6aG92ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xufVxuXG4vLyBDdXJzb3IgdXRpbGl0aWVzXG4uY3Vyc29yLXBvaW50ZXIgeyBjdXJzb3I6IHBvaW50ZXIgIWltcG9ydGFudDsgfVxuLmN1cnNvci1ub3QtYWxsb3dlZCB7IGN1cnNvcjogbm90LWFsbG93ZWQgIWltcG9ydGFudDsgfVxuXG4vLyBPdmVyZmxvdyB1dGlsaXRpZXNcbi5vdmVyZmxvdy14LWF1dG8geyBvdmVyZmxvdy14OiBhdXRvICFpbXBvcnRhbnQ7IH1cbi5vdmVyZmxvdy15LWF1dG8geyBvdmVyZmxvdy15OiBhdXRvICFpbXBvcnRhbnQ7IH1cbi5vdmVyZmxvdy14LWhpZGRlbiB7IG92ZXJmbG93LXg6IGhpZGRlbiAhaW1wb3J0YW50OyB9XG4ub3ZlcmZsb3cteS1oaWRkZW4geyBvdmVyZmxvdy15OiBoaWRkZW4gIWltcG9ydGFudDsgfSIsIi8vIE1haW4gbGF5b3V0IHN0eWxlc1xuXG4vLyBNYWluIGNvbnRlbnQgYXJlYVxubWFpbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyNDYsIDI0NywgMjQ5KTtcbiAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDIwMHB4KTsgLy8gRW5zdXJlIG1haW4gZmlsbHMgdmlld3BvcnQgbWludXMgaGVhZGVyL2Zvb3RlclxufSIsIi8vIEJvb3RzdHJhcCA1IE92ZXJyaWRlcyBhbmQgRXh0ZW5zaW9uc1xuLy8gT25seSBzdHlsZXMgdGhhdCBCb290c3RyYXAgY2Fubm90IGFjaGlldmVcblxuLy8gSGlkZSBlbGVtZW50cyB3aXRoIHgtY2xvYWsgYXR0cmlidXRlIChBbHBpbmUuanMpXG5beC1jbG9ha10ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLy8gUmVtb3ZlIHVuZGVybGluZSBmcm9tIGJ0bi1saW5rIGJ1dHRvbnNcbi5idG4tbGluayB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4vLyBHbG9iYWwgZnJvbnRlbmQgZm9ybSBjb250cm9sIG92ZXJyaWRlcyAtIHNxdWFyZSBjb3JuZXJzIGFuZCBjb25zaXN0ZW50IGJvcmRlciBjb2xvclxuLmZvcm0tY29udHJvbCxcbi5mb3JtLXNlbGVjdCxcbi5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4uZm9ybS1zZWxlY3Q6Zm9jdXMge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDsgLy8gRm9yY2Ugc3F1YXJlIGNvcm5lcnMgb24gYWxsIGZvcm0gZWxlbWVudHNcbn1cblxuLmZvcm0tY29udHJvbCxcbi5mb3JtLXNlbGVjdCB7XG4gICAgYm9yZGVyLWNvbG9yOiAjZGFkOWQ5ICFpbXBvcnRhbnQ7IC8vIENvbnNpc3RlbnQgYm9yZGVyIGNvbG9yIChsaWdodGVyIGdyYXkpXG4gICAgcGFkZGluZzogMC40NzVyZW0gMC44NXJlbSAhaW1wb3J0YW50OyAvLyBDb25zaXN0ZW50IHBhZGRpbmdcbn1cblxuLy8gSW5wdXQgZ3JvdXBzIGFsc28gbmVlZCBzcXVhcmUgY29ybmVyc1xuLmlucHV0LWdyb3VwIHtcbiAgICA+IC5mb3JtLWNvbnRyb2wsXG4gICAgPiAuZm9ybS1zZWxlY3QsXG4gICAgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbiAgICA+IC5idG4ge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgIC8vIE92ZXJyaWRlIEJvb3RzdHJhcCdzIHJvdW5kZWQgY29ybmVycyBmb3IgZmlyc3QvbGFzdCBjaGlsZFxuICAgID4gOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbiAgICA+IDpub3QoOmZpcnN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLW1lbnUpIHtcbiAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgIC5pbnB1dC1ncm91cC10ZXh0IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjZGFkOWQ5O1xuICAgICAgICBwYWRkaW5nOiAwLjQ3NXJlbSAwLjg1cmVtO1xuICAgIH1cbn1cblxuLy8gUGFnZSBpZGVudGlmaWNhdGlvbiBjbGFzc2VzICh1c2VkIGJ5IEphdmFTY3JpcHQpXG4vLyBObyBzdHlsaW5nIG5lZWRlZCAtIHRoZXNlIGFyZSBwdXJlbHkgZm9yIEpTIGhvb2tzXG5cbi8vIEZvcm0gdmFsaWRhdGlvbiBhZGp1c3RtZW50c1xuLndhcy12YWxpZGF0ZWQge1xuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAmOnZhbGlkLFxuICAgICAgICAmOmludmFsaWQge1xuICAgICAgICAgICAgLy8gUmVtb3ZlIEJvb3RzdHJhcCdzIHZhbGlkYXRpb24gaWNvbnMgaWYgbm90IGRlc2lyZWRcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJjp2YWxpZCB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJzLXN1Y2Nlc3MpO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmOmludmFsaWQge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1kYW5nZXIpO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIFNlbGVjdDIgdmFsaWRhdGlvbiBzdHlsaW5nXG4gICAgLmZvcm0tY29udHJvbDppbnZhbGlkICsgLnNlbGVjdDIgLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1kYW5nZXIpO1xuICAgIH1cbn1cblxuLy8gQWxlcnQgbGlzdCBzdHlsaW5nXG4uYWxlcnQge1xuICAgIHVsIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICAgICAgICBcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgcDpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG59XG5cbi8vIFV0aWxpdHkgY2xhc3NlcyBmb3IgaW1hZ2VzXG4ucm91bmRlZC1pbWcge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiA2MHB4O1xuICAgIGhlaWdodDogNjBweDtcbiAgICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cblxuLy8gRXJyb3IgaGVscCBibG9jayAoZm9yIGZvcm0gdmFsaWRhdGlvbilcbi5lcnJvci1oZWxwLWJsb2NrIHtcbiAgICBAZXh0ZW5kIC5pbnZhbGlkLWZlZWRiYWNrO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vLyBUb2FzdHIgb3ZlcnJpZGVzIHRvIG1hdGNoIEJvb3RzdHJhcCA1XG4udG9hc3QtdG9wLXJpZ2h0IHtcbiAgICB0b3A6IDgwcHg7IC8vIEFjY291bnQgZm9yIG5hdmJhciBoZWlnaHRcbn1cblxuLy8gRml4IHRvYXN0ciBjb250cmFzdCBpc3N1ZXMgLSBlbnN1cmUgcmVhZGFibGUgdGV4dCBjb2xvcnNcbiN0b2FzdC1jb250YWluZXIgPiBkaXYge1xuICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7IC8vIFdoaXRlIHRleHRcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7IC8vIFJlbW92ZSB0cmFuc3BhcmVuY3kgLSB0b3RhbGx5IHNvbGlkXG4gICAgXG4gICAgJi50b2FzdC1zdWNjZXNzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzI4YTc0NSAhaW1wb3J0YW50OyAvLyBCb290c3RyYXAgc3VjY2VzcyBncmVlblxuICAgICAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbiAgICAmLnRvYXN0LWVycm9yIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2RjMzU0NSAhaW1wb3J0YW50OyAvLyBCb290c3RyYXAgZGFuZ2VyIHJlZFxuICAgICAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbiAgICAmLnRvYXN0LWluZm8ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTdhMmI4ICFpbXBvcnRhbnQ7IC8vIEJvb3RzdHJhcCBpbmZvIGJsdWVcbiAgICAgICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbiAgICB9XG4gICAgXG4gICAgJi50b2FzdC13YXJuaW5nIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzEwNyAhaW1wb3J0YW50OyAvLyBCb290c3RyYXAgd2FybmluZyB5ZWxsb3dcbiAgICAgICAgY29sb3I6ICMyMTI1MjkgIWltcG9ydGFudDsgLy8gRGFyayB0ZXh0IGZvciB5ZWxsb3cgYmFja2dyb3VuZFxuICAgIH1cbiAgICBcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50OyAvLyBLZWVwIHNvbGlkIG9uIGhvdmVyIHRvb1xuICAgIH1cbn1cblxuLy8gRW5zdXJlIHRvYXN0IGNsb3NlIGJ1dHRvbiBpcyB2aXNpYmxlXG4udG9hc3QtY2xvc2UtYnV0dG9uIHtcbiAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xuICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICNjY2NjY2MgIWltcG9ydGFudDtcbiAgICAgICAgb3BhY2l0eTogMC44ICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4vLyBTZWxlY3QyIEJvb3RzdHJhcCA1IHRoZW1lIGFkanVzdG1lbnRzXG4uc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQge1xuICAgIC5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gICAgICAgIEBleHRlbmQgLmZvcm0tY29udHJvbDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xuICAgIH1cbn0iLCIvLyBGcm9udGVuZCBIZWFkZXIgU3R5bGVzXG4vLyBDdXN0b20gc3R5bGluZyBmb3IgQ2FyYXRYIGhlYWRlciBjb21wb25lbnQgd2l0aCBCb290c3RyYXAgNVxuXG4vLyBIZWFkZXIgc3BhY2VyIGxpbmVcbi5oci1oZWFkZXItc3BhY2VyIHtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiKDMzLCAzNywgNDEpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgxNCwgMTQsIDE0LCAwLjE4KTtcbiAgbWFyZ2luOiAwO1xufVxuXG4vLyBGb290ZXIgc3BhY2VyIGxpbmUgLSBpbnZlcnRlZCBjb2xvcnMgZm9yIHRyYW5zaXRpb24gZnJvbSBncmF5IGJvZHkgdG8gd2hpdGUgZm9vdGVyXG4uaHItZm9vdGVyLXNwYWNlciB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMTQsIDE0LCAxNCwgMC4xOCk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2IoMzMsIDM3LCA0MSk7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5jYXJhdHgtaGVhZGVyIHtcbiAgLy8gVG9wIGhlYWRlciBzdHlsaW5nXG4gIC50b3AtaGVhZGVyIHtcbiAgICAvLyBFbnN1cmUgY29uc2lzdGVudCB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgaGVhZGVyIGljb25zXG4gICAgLnRvcC1idXR0b25zIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgIGdhcDogMXJlbTtcblxuICAgICAgLy8gRW5zdXJlIGFsbCBkaXJlY3QgY2hpbGRyZW4gYWxpZ24gcHJvcGVybHlcbiAgICAgID4gKiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIC8vIFJlc2V0IGFueSBidXR0b24vbGluayBkZWZhdWx0cyB0aGF0IG1pZ2h0IGFmZmVjdCBwb3NpdGlvbmluZ1xuICAgICAgLmJ0bi1saW5rIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICB9XG5cbiAgICAgIC8vIEVuc3VyZSBkcm9wZG93biBidXR0b25zIGFsc28gYWxpZ24gcHJvcGVybHlcbiAgICAgIC5kcm9wZG93biBidXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmxvZ28tY29udGFpbmVyIHtcbiAgICAgIGltZyB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDYwcHg7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgIC51c2VyLWRyb3Bkb3duLFxuICAgIC5jYXJ0LWljb24ge1xuICAgICAgLy8gUmVtb3ZlZCB0YWNreSB6b29tIGVmZmVjdFxuICAgIH1cbiAgfVxuXG4gIC8vIE1haW4gbmF2aWdhdGlvblxuICAubmF2YmFyIHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgY29sb3I6ICMzMTMxMzE7XG4gICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4zcyBlYXNlO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICAgIH1cblxuICAgICAgLy8gSG92ZXIgdW5kZXJsaW5lIGVmZmVjdFxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAvLyBjb250ZW50OiBcIlwiO1xuICAgICAgICAvLyBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIC8vIHdpZHRoOiAwO1xuICAgICAgICAvLyBoZWlnaHQ6IDJweDtcbiAgICAgICAgLy8gYm90dG9tOiAwO1xuICAgICAgICAvLyBsZWZ0OiA1MCU7XG4gICAgICAgIC8vIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgLy8gYmFja2dyb3VuZC1jb2xvcjogI2EyZDI3NjtcbiAgICAgICAgLy8gdHJhbnNpdGlvbjogd2lkdGggMC4zcyBlYXNlO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyOjphZnRlciB7XG4gICAgICAgIC8vIHdpZHRoOiA2MCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRHJvcGRvd24gYXJyb3cgc3VwcmVzc2lvbiAod2UgaGF2ZSBpbmxpbmVuIGNhcmF0cylcbiAgICAuZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gTWVnYSBtZW51IHN0eWxpbmdcbiAgLm1lZ2EtbWVudSB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDhweCA4cHg7XG4gICAgYm94LXNoYWRvdzogMCA0cHggMjBweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG1pbi1oZWlnaHQ6IDIwMHB4OyAvLyBFbnN1cmUgbWluaW11bSBoZWlnaHQgZm9yIGZsZXhib3ggYWxpZ25tZW50XG5cbiAgICAubWVnYS1tZW51LXNjcm9sbCB7XG4gICAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgIHdpZHRoOiA2cHg7XG4gICAgICB9XG5cbiAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2YxZjFmMTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgfVxuXG4gICAgICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICM4ODg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjNTU1O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRmxleGJveCBjb2x1bW4gc3RydWN0dXJlIGZvciBib3R0b20tYWxpZ25lZCBidXR0b25zXG4gICAgLm1lZ2EtbWVudS1jb2x1bW4ge1xuICAgICAgbWluLWhlaWdodDogMTgwcHg7IC8vIEVuc3VyZSBjb25zaXN0ZW50IGNvbHVtbiBoZWlnaHRcblxuICAgICAgLm1lZ2EtbWVudS1jb250ZW50IHtcbiAgICAgICAgZmxleC1ncm93OiAxOyAvLyBUYWtlcyB1cCBhdmFpbGFibGUgc3BhY2VcbiAgICAgIH1cblxuICAgICAgLm1lZ2EtbWVudS1hY3Rpb24ge1xuICAgICAgICBtYXJnaW4tdG9wOiBhdXRvOyAvLyBQdXNoZXMgdG8gYm90dG9tXG4gICAgICAgIHBhZGRpbmctdG9wOiAxcmVtOyAvLyBBZGQgc3BhY2luZyBhYm92ZSBidXR0b25cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBEcm9wZG93biBtZW51IHN0eWxpbmcgKGZvciBzbWFsbGVyIGRyb3Bkb3ducylcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIG1pbi1oZWlnaHQ6IDE1MHB4OyAvLyBFbnN1cmUgbWluaW11bSBoZWlnaHQgZm9yIHNtYWxsZXIgZHJvcGRvd25zXG5cbiAgICAubWVnYS1tZW51LWNvbHVtbiB7XG4gICAgICBtaW4taGVpZ2h0OiAxMzBweDsgLy8gU21hbGxlciBoZWlnaHQgZm9yIHJlZ3VsYXIgZHJvcGRvd25zXG4gICAgfVxuICB9XG5cbiAgLy8gTW9iaWxlIG1lbnUgYnV0dG9uXG4gIC5tZW51LWJ0biB7XG4gICAgJjpmb2N1cyB7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC8vIE9mZmNhbnZhcyBtb2JpbGUgbWVudVxuICAjbW9iaWxlTWVudSB7XG4gICAgLmFjY29yZGlvbi1idXR0b24ge1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuXG4gICAgICAmOm5vdCguY29sbGFwc2VkKSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubmF2LWxpbmsge1xuICAgICAgcGFkZGluZzogMC41cmVtIDA7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBTZWFyY2ggc3R5bGluZyAoZnJvbSBhamF4LXNlYXJjaCBwYXJ0aWFsKVxuLmhlYWRlci1zZWFyY2gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNTBweDtcbiAgICBwYWRkaW5nOiAxMHB4IDQ1cHggMTBweCAyMHB4O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZDZkOGQ5O1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuM3MgZWFzZTtcblxuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgfVxuICB9XG5cbiAgLnNlYXJjaC1idXR0b24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMTVweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgY29sb3I6ICM1ZjYwNjI7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBhZGRpbmc6IDVweDtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzIGVhc2U7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICB9XG4gIH1cblxuICAuaGVhZGVyLXNlYXJjaC1saXN0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogMTAwMDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNkNmQ4ZDk7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgMTBweCAxMHB4O1xuICAgIGJveC1zaGFkb3c6IDAgNHB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgbWF4LWhlaWdodDogMzUwcHg7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgIHVsIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgIHBhZGRpbmc6IDhweCAxNXB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMGYwZjA7XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmLnNlbGVjdGVkIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAjMzMzO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cblxuICAgIC52aWV3LWFsbC1yZXN1bHRzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBDdXN0b20gYmFkZ2UgY29sb3JzIChmb3Igc2VhcmNoIHJlc3VsdHMpXG4uYmctcHVycGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2EzN2ViYTtcbn1cblxuLmJnLXRlYWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2ViYWFkO1xufVxuXG4vLyBSZXNwb25zaXZlIGFkanVzdG1lbnRzXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLmNhcmF0eC1oZWFkZXIge1xuICAgIC50b3AtaGVhZGVyIHtcbiAgICAgIC5sb2dvLWNvbnRhaW5lciBpbWcge1xuICAgICAgICBtYXgtaGVpZ2h0OiA1MHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLmNhcmF0eC1oZWFkZXIge1xuICAgIC50b3AtYnV0dG9ucyB7XG4gICAgICAuYnRuLWxpbmsge1xuICAgICAgICBwYWRkaW5nOiAwLjI1cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBQcm9kdWN0IENhcmQgQ29tcG9uZW50XG4gKlxuICogTWluaW1hbCBjdXN0b20gc3R5bGluZyBmb3IgQm9vdHN0cmFwIDUgcHJvZHVjdCBjYXJkc1xuICovXG5cbi8vIEN1c3RvbSBiYWRnZSBjb2xvcnMgZm9yIHByb2R1Y3QgdHlwZXNcbi5iZy1wdXJwbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNhMzdlYmEgIWltcG9ydGFudDtcbn1cblxuLmJnLXRlYWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3ZWJhYWQgIWltcG9ydGFudDtcbn1cblxuLy8gRW5oYW5jZWQgQm9vdHN0cmFwIGNhcmQgc3R5bGluZyBmb3IgcHJvZHVjdHMgb25seVxuLnByb2R1Y3QtY2FyZCB7XG4gICAgLy8gSG92ZXIgZWZmZWN0cyByZW1vdmVkIGZvciBjbGVhbmVyIGRlc2lnblxuICAgIFxuICAgIC8vIFByb2R1Y3QgaW1hZ2Ugc3R5bGluZyAoaG92ZXIgZWZmZWN0IHJlbW92ZWQpXG4gICAgLmNhcmQtaW1nLXRvcCB7XG4gICAgICAgIC8vIFN0YXRpYyBzdHlsaW5nIG9ubHlcbiAgICB9XG59XG5cbi8vIFByb2R1Y3QgYmFkZ2VzIHBvc2l0aW9uaW5nXG4ucHJvZHVjdC1iYWRnZXMge1xuICAgIHRvcDogMC43NXJlbTtcbiAgICBsZWZ0OiAwLjc1cmVtO1xuICAgIHotaW5kZXg6IDE7XG4gICAgXG4gICAgLmJhZGdlICsgLmJhZGdlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgICB9XG59XG5cbi5wcm9kdWN0LXR5cGUtYmFkZ2Uge1xuICAgIHRvcDogMC43NXJlbTtcbiAgICByaWdodDogMC43NXJlbTtcbiAgICB6LWluZGV4OiAxO1xufSIsIi8qKlxuICogUHJvZHVjdCBDYXJvdXNlbCBDb21wb25lbnQgU3R5bGVzXG4gKiBCb290c3RyYXAgNSBjYXJvdXNlbCBlbmhhbmNlbWVudHMgZm9yIHByb2R1Y3QgZGlzcGxheXNcbiAqL1xuXG4uY2Fyb3VzZWwge1xuICAvLyBDYXJvdXNlbCBjb250cm9sIHZpc2liaWxpdHkgb24gaG92ZXJcbiAgLmNhcm91c2VsLWNvbnRyb2wtcHJldixcbiAgLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gICAgd2lkdGg6IDUlO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2U7XG4gICAgXG4gICAgLy8gSWNvbiBzdHlsaW5nXG4gICAgLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLFxuICAgIC5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gICAgICB3aWR0aDogMnJlbTtcbiAgICAgIGhlaWdodDogMnJlbTtcbiAgICAgIFxuICAgICAgJi5iZy1kYXJrIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS1icy1kYXJrLXJnYiksIDAuOCkgIWltcG9ydGFudDtcbiAgICAgICAgXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWRhcmspICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIC8vIFNob3cgY29udHJvbHMgb24gaG92ZXJcbiAgJjpob3ZlciB7XG4gICAgLmNhcm91c2VsLWNvbnRyb2wtcHJldixcbiAgICAuY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG4gIFxuICAvLyBDdXN0b20gaW5kaWNhdG9ycyBwb3NpdGlvbmluZ1xuICAuY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvdHRvbTogYXV0bztcbiAgICBcbiAgICBidXR0b24ge1xuICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1ncmF5LTQwMCk7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBtYXJnaW46IDAgNHB4O1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgIFxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xuICAgICAgfVxuICAgICAgXG4gICAgICAmOmhvdmVyOm5vdCguYWN0aXZlKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWdyYXktNjAwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIC8vIFByb2R1Y3QgY2Fyb3VzZWwgc3BlY2lmaWNcbiAgJi5wcm9kdWN0LWNhcm91c2VsIHtcbiAgICAuY2Fyb3VzZWwtaW5uZXIge1xuICAgICAgcGFkZGluZzogMXJlbSAwO1xuICAgIH1cbiAgICBcbiAgICAvLyBFbnN1cmUgcHJvZHVjdCBjYXJkcyBhbGlnbiBwcm9wZXJseVxuICAgIC5jYXJvdXNlbC1pdGVtIHtcbiAgICAgIC5yb3cge1xuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgICAgXG4gICAgICAgID4gW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgXG4gICAgICAgICAgLnByb2R1Y3QtY2FyZCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIC8vIFJlc3BvbnNpdmUgYWRqdXN0bWVudHNcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgLmNhcm91c2VsLWlubmVyIHtcbiAgICAgIC5yb3cge1xuICAgICAgICBtYXJnaW46IDAgLTVweDtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgLmNvbC0xMiB7XG4gICAgICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBTdGFjayBjb250cm9scyBvbiBtb2JpbGVcbiAgICAuY2Fyb3VzZWwtY29udHJvbC1wcmV2LFxuICAgIC5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICAgICAgd2lkdGg6IDEwJTtcbiAgICB9XG4gIH1cbiAgXG4gIC8vIFRvdWNoIGRldmljZSBvcHRpbWl6YXRpb25zXG4gIEBtZWRpYSAoaG92ZXI6IG5vbmUpIHtcbiAgICAuY2Fyb3VzZWwtY29udHJvbC1wcmV2LFxuICAgIC5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gIH1cbn0iLCIvLyBDYXJ0IFdpZGdldCBTdHlsZXNcbi8vIE1pbmltYWwgY3VzdG9tIHN0eWxlcyBmb3IgdGhlIGhlYWRlciBjYXJ0IGNvbXBvbmVudFxuXG4vLyBDYXJ0IHVwZGF0ZSBhbmltYXRpb25cbi5jYXJ0LXVwZGF0ZWQge1xuICAgIGFuaW1hdGlvbjogY2FydEJvdW5jZSAwLjVzIGVhc2U7XG59XG5cbkBrZXlmcmFtZXMgY2FydEJvdW5jZSB7XG4gICAgMCUgeyB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG4gICAgNTAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxLjIpOyB9XG4gICAgMTAwJSB7IHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cbn1cblxuLy8gRW5zdXJlIGRyb3Bkb3duIGRvZXNuJ3QgY2xvc2Ugb24gaW50ZXJuYWwgY2xpY2tzXG4uaGVhZGVyLWNhcnQtd3JhcHBlciB7XG4gICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAvLyBQcmV2ZW50IGFjY2lkZW50YWwgY2xvc2VzXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAtMTBweDtcbiAgICAgICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIvLyBXaXNobGlzdCBXaWRnZXQgU3R5bGVzXG4vLyBFbmhhbmNlZCBzdHlsZXMgd2l0aCBhbmltYXRpb25zIGFuZCBtb2JpbGUgcmVzcG9uc2l2ZW5lc3NcblxuLy8gV2lzaGxpc3QgaWNvbiBob3ZlciBlZmZlY3Rcbi5oZWFkZXItd2lzaGxpc3Qtd3JhcHBlciB7XG4gICAgYSB7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2U7XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIC8vIFJlbW92ZWQgdGFja3kgem9vbSBlZmZlY3RcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmZhLWhlYXJ0IHtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYnMtZGFuZ2VyKSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBXaXNobGlzdCBiYWRnZSBzdHlsaW5nXG4ud2lzaGxpc3QtY291bnQtYmFkZ2Uge1xuICAgIG1pbi13aWR0aDogMThweDtcbiAgICBsaW5lLWhlaWdodDogMTtcbn1cblxuLy8gV2lzaGxpc3QgdXBkYXRlIGFuaW1hdGlvblxuLndpc2hsaXN0LXVwZGF0ZWQge1xuICAgIGFuaW1hdGlvbjogd2lzaGxpc3RQdWxzZSAwLjVzIGVhc2U7XG59XG5cbkBrZXlmcmFtZXMgd2lzaGxpc3RQdWxzZSB7XG4gICAgMCUgeyB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG4gICAgNTAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxLjMpOyB9XG4gICAgMTAwJSB7IHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cbn1cblxuLy8gTG9hZGluZyBzdGF0ZSBmb3Igd2lzaGxpc3QgYnV0dG9uc1xuLndpc2hsaXN0LXRvZ2dsZS1idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgIFxuICAgICYud2lzaGxpc3QtbG9hZGluZyB7XG4gICAgICAgIG9wYWNpdHk6IDAuNztcbiAgICAgICAgY3Vyc29yOiB3YWl0O1xuICAgIH1cbiAgICBcbiAgICAuZmEtaGVhcnQge1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICBcbiAgICAgICAgJi53aXNobGlzdC1wdWxzZSB7XG4gICAgICAgICAgICBhbmltYXRpb246IGhlYXJ0QmVhdCAwLjhzIGVhc2UgaW5maW5pdGU7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYud2lzaGxpc3QtZmlsbGVkIHtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogZmlsbEhlYXJ0IDAuNHMgZWFzZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gSGVhcnQgYW5pbWF0aW9uc1xuQGtleWZyYW1lcyBoZWFydEJlYXQge1xuICAgIDAlLCAxMDAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxuICAgIDUwJSB7IHRyYW5zZm9ybTogc2NhbGUoMS4xNSk7IH1cbn1cblxuQGtleWZyYW1lcyBmaWxsSGVhcnQge1xuICAgIDAlIHsgdHJhbnNmb3JtOiBzY2FsZSgwLjgpIHJvdGF0ZSgtNDVkZWcpOyB9XG4gICAgNTAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxLjMpIHJvdGF0ZSgtNDVkZWcpOyB9XG4gICAgMTAwJSB7IHRyYW5zZm9ybTogc2NhbGUoMSkgcm90YXRlKDBkZWcpOyB9XG59XG5cbi8vIEJhZGdlIGFuaW1hdGlvbnNcbkBrZXlmcmFtZXMgZmFkZUluU2NhbGUge1xuICAgIDAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC41KTtcbiAgICB9XG4gICAgMTAwJSB7IFxuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlT3V0U2NhbGUge1xuICAgIDAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgfVxuICAgIDEwMCUgeyBcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjUpO1xuICAgIH1cbn1cblxuLy8gTW9iaWxlIHJlc3BvbnNpdmVuZXNzXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAud2lzaGxpc3QtdG9nZ2xlLWJ0biB7XG4gICAgICAgIC8vIEVuc3VyZSB0b3VjaC1mcmllbmRseSBzaXplXG4gICAgICAgIG1pbi13aWR0aDogNDRweDtcbiAgICAgICAgbWluLWhlaWdodDogNDRweDtcbiAgICAgICAgXG4gICAgICAgICYuYnRuLXNtIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuaGVhZGVyLXdpc2hsaXN0LXdyYXBwZXIge1xuICAgICAgICAvLyBBZGp1c3Qgc3BhY2luZyBvbiBtb2JpbGVcbiAgICAgICAgbWFyZ2luOiAwIDAuMjVyZW07XG4gICAgfVxufVxuXG4vLyBTa2VsZXRvbiBsb2FkZXIgZm9yIHdpc2hsaXN0IGl0ZW1zXG4ud2lzaGxpc3Qtc2tlbGV0b24ge1xuICAgIC5za2VsZXRvbi1pdGVtIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjZjBmMGYwIDI1JSwgI2UwZTBlMCA1MCUsICNmMGYwZjAgNzUlKTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyMDAlIDEwMCU7XG4gICAgICAgIGFuaW1hdGlvbjogbG9hZGluZyAxLjVzIGluZmluaXRlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbTtcbiAgICAgICAgXG4gICAgICAgICYuc2tlbGV0b24taW1hZ2Uge1xuICAgICAgICAgICAgaGVpZ2h0OiAyMDBweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYuc2tlbGV0b24tdGV4dCB7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICYuc2tlbGV0b24tdGl0bGUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICYuc2tlbGV0b24tcHJpY2Uge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgbG9hZGluZyB7XG4gICAgMCUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAyMDAlIDA7IH1cbiAgICAxMDAlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwMCUgMDsgfVxufSIsIi8qKlxuICogRnJvbnRlbmQgRGF0YVRhYmxlIENvbXBvbmVudCBTdHlsZXNcbiAqIEVuaGFuY2VkIGZvciBCb290c3RyYXAgNSB3aXRoIG1vZGVybiBkZXNpZ24gcGF0dGVybnNcbiAqL1xuXG4uZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciB7XG4gIC8vIEVuaGFuY2VkIGNhcmQgc3R5bGluZyB3aXRoIGJldHRlciBzaGFkb3dzXG4gIGJveC1zaGFkb3c6IDAgMC4xMjVyZW0gMC4yNXJlbSByZ2JhKDAsIDAsIDAsIDAuMDc1KSwgMCAwLjA1cmVtIDAuMXJlbSByZ2JhKDAsIDAsIDAsIDAuMDYpO1xuICAvLyBIb3ZlciBlZmZlY3QgcmVtb3ZlZFxuICBcbiAgLy8gRW5oYW5jZWQgZmlsdGVyIHNlY3Rpb25cbiAgLmNhcmQtaGVhZGVyIHtcbiAgICAmLmJnLWxpZ2h0IHtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNmOGY5ZmEgMCUsICNlOWVjZWYgMTAwJSkgIWltcG9ydGFudDtcbiAgICB9XG4gICAgXG4gICAgLmNhcmQtdGl0bGUge1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMjVlbTtcbiAgICB9XG4gIH1cbiAgXG4gIC8vIEVuaGFuY2VkIGZpbHRlciBjb250cm9sc1xuICAuY2FyZC1ib2R5IHtcbiAgICAuZm9ybS1sYWJlbCB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGNvbG9yOiAjNDk1MDU3O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgICAgXG4gICAgICBpIHtcbiAgICAgICAgb3BhY2l0eTogMC43O1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuZm9ybS1jb250cm9sLFxuICAgIC5mb3JtLXNlbGVjdCB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlLWluLW91dDtcbiAgICAgIFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzg2YjdmZTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMTMsIDExMCwgMjUzLCAwLjI1KTtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgJjpob3Zlcjpub3QoOmZvY3VzKSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogI2I2ZDdmZjtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gRW5oYW5jZWQgc2VhcmNoIGlucHV0IGdyb3VwXG4gICAgLmlucHV0LWdyb3VwIHtcbiAgICAgIC5pbnB1dC1ncm91cC10ZXh0IHtcbiAgICAgICAgYmFja2dyb3VuZDogI2Y4ZjlmYTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjZGVlMmU2O1xuICAgICAgICBcbiAgICAgICAgJi5ib3JkZXItZW5kLTAge1xuICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgXG4gICAgICAuZm9ybS1jb250cm9sLmJvcmRlci1zdGFydC0wIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICAgIFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgIFxuICAgICAgICAgICsgLmlucHV0LWdyb3VwLXRleHQge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjODZiN2ZlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLy8gRW5oYW5jZWQgYnVsayBhY3Rpb25zIGFsZXJ0XG4gIC5kYXRhdGFibGUtYnVsay1hY3Rpb25zIHtcbiAgICBtYXJnaW46IDAgMXJlbSAxcmVtIDFyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNkMWVjZjEgMCUsICNiZWU1ZWIgMTAwJSkgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDIzLCAxNjIsIDE4NCwgMC4yKSAhaW1wb3J0YW50O1xuICAgIFxuICAgIC5iYWRnZSB7XG4gICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgcGFkZGluZzogMC41cmVtIDAuNzVyZW07XG4gICAgfVxuICAgIFxuICAgIC5idG4taW5mbyB7XG4gICAgICAtLWJzLWJ0bi1iZzogIzE3YTJiODtcbiAgICAgIC0tYnMtYnRuLWJvcmRlci1jb2xvcjogIzE3YTJiODtcbiAgICAgIC0tYnMtYnRuLWhvdmVyLWJnOiAjMTM4NDk2O1xuICAgICAgLS1icy1idG4taG92ZXItYm9yZGVyLWNvbG9yOiAjMTE3YThiO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB9XG4gIH1cbiAgXG4gIC8vIEVuaGFuY2VkIHRhYmxlIHN0eWxpbmdcbiAgLnRhYmxlIHtcbiAgICAtLWJzLXRhYmxlLWJnOiB0cmFuc3BhcmVudDtcbiAgICBcbiAgICB0aGVhZCB0aCB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZjhmOWZhICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2RlZTJlNjtcbiAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBwYWRkaW5nOiAxcmVtIDAuNzVyZW07XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG4gICAgICBcbiAgICAgICYuYm9yZGVyLTAge1xuICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICB0Ym9keSB7XG4gICAgICB0ZCB7XG4gICAgICAgIHBhZGRpbmc6IDAuODc1cmVtIDAuNzVyZW07XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgIGNvbG9yOiAjNDk1MDU3O1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U5ZWNlZjtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgdHIge1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0O1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMywgMTEwLCAyNTMsIDAuMDUpO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmOmxhc3QtY2hpbGQgdGQge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIC8vIEVuaGFuY2VkIGV4cG9ydCBmb290ZXJcbiAgLmNhcmQtZm9vdGVyIHtcbiAgICAmLmJnLWxpZ2h0IHtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNmOGY5ZmEgMCUsICNlOWVjZWYgMTAwJSkgIWltcG9ydGFudDtcbiAgICB9XG4gICAgXG4gICAgLmJ0biB7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2UtaW4tb3V0O1xuICAgICAgXG4gICAgICAvLyBIb3ZlciBlZmZlY3QgcmVtb3ZlZFxuICAgIH1cbiAgfVxufVxuXG4vLyBFbmhhbmNlZCBEYXRhVGFibGUgd3JhcHBlciBzdHlsaW5nXG4uZGF0YVRhYmxlc193cmFwcGVyIHtcbiAgLmRhdGFUYWJsZXNfbGVuZ3RoLFxuICAuZGF0YVRhYmxlc19maWx0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IC8vIFVzaW5nIGN1c3RvbSBjb250cm9sc1xuICB9XG4gIFxuICAuZGF0YVRhYmxlc19pbmZvIHtcbiAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgcGFkZGluZzogMXJlbSAwLjc1cmVtIDAuNXJlbSAwLjc1cmVtO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICBcbiAgLmRhdGFUYWJsZXNfcGFnaW5hdGUge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtIDFyZW0gMC43NXJlbTtcbiAgICBcbiAgICAucGFnaW5hdGlvbiB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIFxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAucGFnZS1saW5rIHtcbiAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZS1pbi1vdXQ7XG4gICAgXG4gICAgLy8gSG92ZXIgZWZmZWN0IHJlbW92ZWRcbiAgICBcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDEzLCAxMTAsIDI1MywgMC4yNSk7XG4gICAgfVxuICB9XG4gIFxuICAucGFnZS1pdGVtIHtcbiAgICAmLmFjdGl2ZSAucGFnZS1saW5rIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQ7XG4gICAgICBib3JkZXItY29sb3I6ICMwZDZlZmQ7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJveC1zaGFkb3c6IDAgMC4xMjVyZW0gMC4yNXJlbSByZ2JhKDEzLCAxMTAsIDI1MywgMC40KTtcbiAgICB9XG4gICAgXG4gICAgJi5kaXNhYmxlZCAucGFnZS1saW5rIHtcbiAgICAgIGNvbG9yOiAjYWRiNWJkO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIGJvcmRlci1jb2xvcjogI2RlZTJlNjtcbiAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICB9XG4gIH1cbn1cblxuLy8gRW5oYW5jZWQgcHJvY2Vzc2luZyBpbmRpY2F0b3Jcbi5kYXRhVGFibGVzX3Byb2Nlc3Npbmcge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTUpICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTYgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogMC41cmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDJyZW0gIWltcG9ydGFudDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgdG9wOiA1MCUgIWltcG9ydGFudDtcbiAgbGVmdDogNTAlICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpICFpbXBvcnRhbnQ7XG4gIHotaW5kZXg6IDEwNTAgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMCAwLjVyZW0gMXJlbSByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNHB4KTtcbn1cblxuLy8gRW5oYW5jZWQgZW1wdHkgc3RhdGVzXG4uZGF0YVRhYmxlc19lbXB0eSB7XG4gIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAzcmVtIDJyZW0gIWltcG9ydGFudDtcbiAgXG4gIGkge1xuICAgIG9wYWNpdHk6IDAuNjtcbiAgfVxuICBcbiAgaDYge1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIH1cbiAgXG4gIHNtYWxsIHtcbiAgICBjb2xvcjogIzZjNzU3ZDtcbiAgfVxufVxuXG4vLyBTdGF0dXMgYmFkZ2VzIC0gQXBwbGljYXRpb24gc3BlY2lmaWNcbi5idG4ge1xuICAmLUluUHJvY2VzcyB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2ZmYzEwNyAwJSwgI2ZmYjMwMCAxMDAlKTtcbiAgICBjb2xvcjogIzAwMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgfVxuICBcbiAgJi1PdXRGb3JEZWxpdmVyeSB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzE3YTJiOCAwJSwgIzEzODQ5NiAxMDAlKTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgfVxuICBcbiAgJi1kZWxpdmVyZWQge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMyOGE3NDUgMCUsICMxZTdlMzQgMTAwJSk7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIH1cbiAgXG4gICYtYmVpbmdQYWNrYWdlZCB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzZjNzU3ZCAwJSwgIzU0NWI2MiAxMDAlKTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgfVxufVxuXG4vLyBFbmhhbmNlZCBhY3Rpb24gYnV0dG9uc1xuLmJ0bi1JblByb2Nlc3MsXG4uYnRuLU91dEZvckRlbGl2ZXJ5LFxuLmJ0bi1kZWxpdmVyZWQsXG4uYnRuLWJlaW5nUGFja2FnZWQge1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNzVyZW07XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgYm9yZGVyLXJhZGl1czogMXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2UtaW4tb3V0O1xuICBcbiAgLy8gSG92ZXIgZWZmZWN0IHJlbW92ZWRcbn1cblxuLy8gRW5oYW5jZWQgdmlldyBidXR0b25zXG4uYnRuLXZpZXdPcmRlciB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMwZDZlZmQgMCUsICMwYjVlZDcgMTAwJSk7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDAuNXJlbSAxLjI1cmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gIFxuICAvLyBIb3ZlciBlZmZlY3QgcmVtb3ZlZFxufVxuXG4uYnRuLXZpZXctcXVlc3Rpb24ge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMTdhMmI4IDAlLCAjMTM4NDk2IDEwMCUpO1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiAwLjM3NXJlbSAxcmVtO1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgYm9yZGVyLXJhZGl1czogMC4zNzVyZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICBcbiAgLy8gSG92ZXIgZWZmZWN0IHJlbW92ZWRcbiAgXG4gIGkge1xuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbTtcbiAgfVxufVxuXG4vLyBFbmhhbmNlZCByZXNwb25zaXZlIGRlc2lnblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC5mcm9udGVuZC1kYXRhdGFibGUtY29udGFpbmVyIHtcbiAgICAuY2FyZC1ib2R5IHtcbiAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICBcbiAgICAgIC5yb3cuZy0zIHtcbiAgICAgICAgPiAqIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5kYXRhVGFibGVzX3dyYXBwZXIge1xuICAgICAgLmRhdGFUYWJsZXNfaW5mbyxcbiAgICAgIC5kYXRhVGFibGVzX3BhZ2luYXRlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAuZnJvbnRlbmQtZGF0YXRhYmxlLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luOiAwIC0wLjVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBcbiAgICAuY2FyZC1ib2R5IHtcbiAgICAgIHBhZGRpbmc6IDAuNzVyZW07XG4gICAgfVxuICAgIFxuICAgIC50YWJsZSB7XG4gICAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgICAgIFxuICAgICAgdGhlYWQgdGgsXG4gICAgICB0Ym9keSB0ZCB7XG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbSAwLjM3NXJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmRhdGF0YWJsZS1idWxrLWFjdGlvbnMge1xuICAgICAgbWFyZ2luOiAwIDAuNzVyZW0gMXJlbSAwLjc1cmVtO1xuICAgICAgXG4gICAgICAuZC1mbGV4IHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZ2FwOiAwLjc1cmVtO1xuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50O1xuICAgICAgICBcbiAgICAgICAgLmQtZmxleCB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi8qKlxuICogVG9hc3QvVG9hc3RyIFotSW5kZXggT3ZlcnJpZGVzXG4gKiBcbiAqIFRoaXMgZmlsZSBlbnN1cmVzIHRvYXN0IG5vdGlmaWNhdGlvbnMgYXBwZWFyIEJFTE9XIGhlYWRlciBkcm9wZG93biBtZW51cy5cbiAqIEJvb3RzdHJhcCBkcm9wZG93bnMgdXNlIHotaW5kZXg6IDEwMDAsIHNvIHdlIHNldCB0b2FzdHMgdG8gOTk5LlxuICovXG5cbi8vIE92ZXJyaWRlIHRvYXN0ciB6LWluZGV4IHRvIGFwcGVhciBiZWxvdyBoZWFkZXIgZHJvcGRvd25zXG4jdG9hc3QtY29udGFpbmVyIHtcbiAgICB6LWluZGV4OiA5OTkgIWltcG9ydGFudDsgLy8gQmVsb3cgQm9vdHN0cmFwIGRyb3Bkb3duIHotaW5kZXggb2YgMTAwMFxuICAgIFxuICAgIC8vIEVuc3VyZSB0b2FzdHMgc3RpbGwgYXBwZWFyIGFib3ZlIHJlZ3VsYXIgY29udGVudFxuICAgID4gZGl2IHtcbiAgICAgICAgei1pbmRleDogOTk5ICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4vLyBBbHRlcm5hdGl2ZSBzZWxlY3RvcnMgZm9yIHRvYXN0ciAoaW4gY2FzZSBvZiBkaWZmZXJlbnQgaW1wbGVtZW50YXRpb25zKVxuLnRvYXN0LWNvbnRhaW5lciB7XG4gICAgei1pbmRleDogOTk5ICFpbXBvcnRhbnQ7XG59XG5cbi50b2FzdCB7XG4gICAgei1pbmRleDogOTk5ICFpbXBvcnRhbnQ7XG59XG5cbi8vIFRvYXN0ciBzcGVjaWZpYyBjbGFzc2VzXG4udG9hc3QtdG9wLXJpZ2h0LFxuLnRvYXN0LXRvcC1sZWZ0LFxuLnRvYXN0LXRvcC1jZW50ZXIsXG4udG9hc3QtdG9wLWZ1bGwtd2lkdGgsXG4udG9hc3QtYm90dG9tLXJpZ2h0LFxuLnRvYXN0LWJvdHRvbS1sZWZ0LFxuLnRvYXN0LWJvdHRvbS1jZW50ZXIsXG4udG9hc3QtYm90dG9tLWZ1bGwtd2lkdGgge1xuICAgIHotaW5kZXg6IDk5OSAhaW1wb3J0YW50O1xufSIsIi8qKlxuICogRHluYW1pYyBGb3JtIENvbXBvbmVudCBTdHlsZXNcbiAqIEVuaGFuY2VtZW50cyBmb3IgZHluYW1pYyBmb3JtIGJ1aWxkZXJcbiAqL1xuXG4uZHluYW1pYy1mb3JtLWNvbnRhaW5lciB7XG4gIC8vIEZvcm0gZmllbGQgd3JhcHBlciBlbmhhbmNlbWVudHNcbiAgLmZvcm0tZmllbGQtd3JhcHBlciB7XG4gICAgLy8gQWRkIHNtb290aCB0cmFuc2l0aW9uc1xuICAgIC5mb3JtLWNvbnRyb2wsXG4gICAgLmZvcm0tc2VsZWN0IHtcbiAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcbiAgICB9XG4gICAgXG4gICAgLy8gRW5oYW5jZWQgZm9jdXMgc3RhdGVzXG4gICAgLmZvcm0tY29udHJvbDpmb2N1cyxcbiAgICAuZm9ybS1zZWxlY3Q6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSh2YXIoLS1icy1wcmltYXJ5LXJnYiksIDAuMTUpO1xuICAgIH1cbiAgfVxuICBcbiAgLy8gQ2hlY2tib3ggYW5kIHJhZGlvIGdyb3Vwc1xuICAuY2hlY2tib3gtZ3JvdXAsXG4gIC5yYWRpby1ncm91cCB7XG4gICAgcGFkZGluZzogMC41cmVtIDA7XG4gICAgXG4gICAgLmZvcm0tY2hlY2sge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjc1cmVtO1xuICAgICAgXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtZ3JheS0xMDApO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTAuNXJlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMC41cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIuMjVyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICAgICAgcGFkZGluZy10b3A6IDAuMjVyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1icy1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAvLyBGaWxlIGlucHV0IGVuaGFuY2VtZW50c1xuICAuZmlsZS1pbnB1dC13cmFwcGVyIHtcbiAgICAuZm9ybS1jb250cm9sW3R5cGU9XCJmaWxlXCJdIHtcbiAgICAgICY6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICAgICAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTtcbiAgICAgICAgbWFyZ2luOiAtMC4zNzVyZW0gLTAuNzVyZW07XG4gICAgICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAwLjc1cmVtO1xuICAgICAgICBjb2xvcjogdmFyKC0tYnMtYnRuLWNvbG9yKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtYnRuLWJnKTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBib3JkZXItaW5saW5lLWVuZDogdmFyKC0tYnMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1icy1ib3JkZXItY29sb3IpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZS1pbi1vdXQ7XG4gICAgICB9XG4gICAgICBcbiAgICAgICY6aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWJ0bi1ob3Zlci1iZyk7XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIEltYWdlIHByZXZpZXdcbiAgICAuaW1hZ2UtcHJldmlldyB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBcbiAgICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAuMTI1cmVtIDAuMjVyZW0gcmdiYSgwLCAwLCAwLCAwLjA3NSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAvLyBDaGFyYWN0ZXIgY291bnRlclxuICAuY2hhcmFjdGVyLWNvdW50ZXIge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgfVxuICBcbiAgLy8gU3VibWl0IGJ1dHRvbiB3cmFwcGVyXG4gIC5mb3JtLXN1Ym1pdC13cmFwcGVyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYnMtZ3JheS0zMDApO1xuICAgIHBhZGRpbmctdG9wOiAxLjVyZW07XG4gICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICBcbiAgICAuYnRuLXByaW1hcnkge1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAyNWVtO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIFxuICAgICAgJjpub3QoOmRpc2FibGVkKTpob3ZlciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwLjI1cmVtIDAuNXJlbSByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAgICAgfVxuICAgICAgXG4gICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgY3Vyc29yOiB3YWl0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLy8gVHdvLWNvbHVtbiBsYXlvdXQgYWRqdXN0bWVudHNcbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLnJvdy5nLTQge1xuICAgICAgLmZvcm0tZmllbGQtd3JhcHBlciB7XG4gICAgICAgICYuZmllbGQtdHlwZS10ZXh0YXJlYSB7XG4gICAgICAgICAgLy8gTWFrZSB0ZXh0YXJlYXMgc3BhbiBmdWxsIHdpZHRoIG9uIGRlc2t0b3BcbiAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIC0xO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAvLyBGb3JtIHZhbGlkYXRpb24gc3RhdGVzXG4gIC5uZWVkcy12YWxpZGF0aW9uIHtcbiAgICAvLyBDdXN0b20gZXJyb3IgbWVzc2FnZSBzdHlsaW5nXG4gICAgLmludmFsaWQtZmVlZGJhY2sge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgICAgIFxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJ+KaoCAnO1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBTdWNjZXNzIHN0YXRlIChhZnRlciB2YWxpZGF0aW9uKVxuICAgIC53YXMtdmFsaWRhdGVkICYge1xuICAgICAgLmZvcm0tY29udHJvbDp2YWxpZCxcbiAgICAgIC5mb3JtLXNlbGVjdDp2YWxpZCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtc3VjY2Vzcyk7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgOCA4JyUzZSUzY3BhdGggZmlsbD0nJTIzMjhhNzQ1JyBkPSdNMi4zIDYuNzNMLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjYWxjKDAuMzc1ZW0gKyAwLjE4NzVyZW0pIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKSBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKTtcbiAgICAgICAgXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtc3VjY2Vzcyk7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKHZhcigtLWJzLXN1Y2Nlc3MtcmdiKSwgMC4yNSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIC8vIEFKQVggZm9ybSBsb2FkaW5nIHN0YXRlXG4gICYuaXMtbG9hZGluZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgICAgei1pbmRleDogMTA7XG4gICAgICBjdXJzb3I6IHdhaXQ7XG4gICAgfVxuICB9XG4gIFxuICAvLyBGbG9hdGluZyBsYWJlbCBzdXBwb3J0XG4gIC5mb3JtLWZsb2F0aW5nIHtcbiAgICBsYWJlbCB7XG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC44NSkgdHJhbnNsYXRlWSgtMC41cmVtKSB0cmFuc2xhdGVYKDAuMTVyZW0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLy8gUmVDQVBUQ0hBIGNlbnRlcmluZ1xuICAuZy1yZWNhcHRjaGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICBcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG4gICAgLmctcmVjYXB0Y2hhIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbiAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgICB9XG4gIH1cbn1cblxuLy8gRGFyayBtb2RlIHN1cHBvcnRcbkBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcbiAgLmR5bmFtaWMtZm9ybS1jb250YWluZXIge1xuICAgIC5jaGVja2JveC1ncm91cCxcbiAgICAucmFkaW8tZ3JvdXAge1xuICAgICAgLmZvcm0tY2hlY2s6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi8qKlxuICogRnJvbnRlbmQgRm9ybSBTdHlsZXNcbiAqXG4gKiBDb21wbGV0ZSBmb3JtIHN5c3RlbSBmb3IgZnJvbnRlbmQvY3VzdG9tZXItZmFjaW5nIHBhZ2VzXG4gKiBVc2VzIEJvb3RzdHJhcCA1IHdpdGggc3F1YXJlIGNvcm5lcnMgZGVzaWduXG4gKi9cblxuLy8gRnJvbnRlbmQgZm9ybSBjb250ZXh0IC0gc2NvcGUgYWxsIGZyb250ZW5kIGZvcm1zXG4uZnJvbnRlbmQtZm9ybSxcbi5jdXN0b21lci1mb3JtLFxuLmNoZWNrb3V0LWZvcm0sXG4uYWNjb3VudC1mb3JtLFxuLnByb2R1Y3QtZm9ybSxcbi5tYWluIGZvcm06bm90KC5zZWFyY2gtZm9ybSk6bm90KC5oZWFkZXItc2VhcmNoLWZvcm0pLFxuLm1vZGFsOm5vdCguYWRtaW4tbW9kYWwpIGZvcm0ge1xuICBcbiAgLy8gRm9ybSBncm91cHNcbiAgLm1iLTMsXG4gIC5mb3JtLWdyb3VwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIH1cbiAgXG4gIC8vIExhYmVsc1xuICAuZm9ybS1sYWJlbCxcbiAgbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBjb2xvcjogIzMzMztcbiAgICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgfVxuICBcbiAgLy8gUmVxdWlyZWQgZmllbGQgaW5kaWNhdG9yXG4gIC5yZXF1aXJlZCB7XG4gICAgY29sb3I6ICNkYzM1NDU7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW07XG4gIH1cbiAgXG4gIC8vIFRleHQgaW5wdXRzLCBzZWxlY3RzLCB0ZXh0YXJlYXNcbiAgLmZvcm0tY29udHJvbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA0MnB4O1xuICAgIHBhZGRpbmc6IDAuNDc1cmVtIDAuODVyZW07XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBjb2xvcjogIzIxMjUyOTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RhZDlkOTtcbiAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7IC8vIFNxdWFyZSBjb3JuZXJzIGZvciBmcm9udGVuZCAtIGZvcmNlIG92ZXJyaWRlIEJvb3RzdHJhcFxuICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcbiAgICBcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIGJvcmRlci1jb2xvcjogIzFFMUU1NjsgLy8gVXNlIHByaW1hcnkgY29sb3JcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMzAsIDMwLCA4NiwgMC4yNSk7XG4gICAgfVxuICAgIFxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gICAgXG4gICAgJjpkaXNhYmxlZCxcbiAgICAmW3JlYWRvbmx5XSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gICAgXG4gICAgLy8gU2l6ZSB2YXJpYW50c1xuICAgICYuZm9ybS1jb250cm9sLXNtIHtcbiAgICAgIGhlaWdodDogMzZweDtcbiAgICAgIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICB9XG4gICAgXG4gICAgJi5mb3JtLWNvbnRyb2wtbGcge1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICB9XG4gIH1cbiAgXG4gIC8vIFRleHRhcmVhc1xuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiAxMjBweDtcbiAgICByZXNpemU6IHZlcnRpY2FsO1xuICB9XG4gIFxuICAvLyBTZWxlY3QgZWxlbWVudHMgLSBCb290c3RyYXAgNSBzdHlsZSB3aXRoIHNxdWFyZSBjb3JuZXJzXG4gIC5mb3JtLXNlbGVjdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA0MnB4O1xuICAgIHBhZGRpbmc6IDAuNDc1cmVtIDIuMjVyZW0gMC40NzVyZW0gMC44NXJlbTtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNiclM2UlM2NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzMzQzYTQwJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMicgZD0nTTIgNWw2IDYgNi02Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMC43NXJlbSBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxNnB4IDEycHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RhZDlkOTtcbiAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7IC8vIFNxdWFyZSBjb3JuZXJzIC0gZm9yY2Ugb3ZlcnJpZGUgQm9vdHN0cmFwXG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICMxRTFFNTY7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDMwLCAzMCwgODYsIDAuMjUpO1xuICAgIH1cbiAgICBcbiAgICAmOmRpc2FibGVkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XG4gICAgfVxuICAgIFxuICAgIC8vIFNpemUgdmFyaWFudHNcbiAgICAmLmZvcm0tc2VsZWN0LXNtIHtcbiAgICAgIGhlaWdodDogMzZweDtcbiAgICAgIHBhZGRpbmctdG9wOiAwLjI1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgfVxuICAgIFxuICAgICYuZm9ybS1zZWxlY3QtbGcge1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgcGFkZGluZy10b3A6IDAuNzVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMC43NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgfVxuICB9XG4gIFxuICAvLyBDaGVja2JveGVzIGFuZCByYWRpb3MgLSBCb290c3RyYXAgNSBzdHlsZVxuICAuZm9ybS1jaGVjayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWluLWhlaWdodDogMS41cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS41ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC4xMjVyZW07XG4gICAgXG4gICAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW4tbGVmdDogLTEuNWVtO1xuICAgICAgXG4gICAgICAmW3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7IC8vIFNxdWFyZSBjb3JuZXJzXG4gICAgICB9XG4gICAgICBcbiAgICAgICZbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgfVxuICAgICAgXG4gICAgICAmOmNoZWNrZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUUxRTU2O1xuICAgICAgICBib3JkZXItY29sb3I6ICMxRTFFNTY7XG4gICAgICB9XG4gICAgICBcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICMxRTFFNTY7XG4gICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgzMCwgMzAsIDg2LCAwLjI1KTtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICBmaWx0ZXI6IG5vbmU7XG4gICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgJjpkaXNhYmxlZCB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cbiAgXG4gIC8vIEZvcm0gdmFsaWRhdGlvbiBzdGF0ZXNcbiAgLmZvcm0tY29udHJvbCxcbiAgLmZvcm0tc2VsZWN0IHtcbiAgICAmLmlzLXZhbGlkIHtcbiAgICAgIGJvcmRlci1jb2xvcjogIzE5ODc1NDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IGNhbGMoMS41ZW0gKyAwLjc1cmVtKTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgOCA4JyUzZSUzY3BhdGggZmlsbD0nJTIzMTk4NzU0JyBkPSdNMi4zIDYuNzNMLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNhbGMoMC4zNzVlbSArIDAuMTg3NXJlbSkgY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKSBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKTtcbiAgICAgIFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzE5ODc1NDtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDI1LCAxMzUsIDg0LCAwLjI1KTtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgJi5pcy1pbnZhbGlkIHtcbiAgICAgIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IGNhbGMoMS41ZW0gKyAwLjc1cmVtKTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTIgMTInIHdpZHRoPScxMicgaGVpZ2h0PScxMicgZmlsbD0nbm9uZScgc3Ryb2tlPSclMjNkYzM1NDUnJTNlJTNjY2lyY2xlIGN4PSc2JyBjeT0nNicgcj0nNC41Jy8lM2UlM2NwYXRoIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIGQ9J001LjggMy42aC40TDYgNi41eicvJTNlJTNjY2lyY2xlIGN4PSc2JyBjeT0nOC4yJyByPScuNicgZmlsbD0nJTIzZGMzNTQ1JyBzdHJva2U9J25vbmUnLyUzZSUzYy9zdmclM2VcIik7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2FsYygwLjM3NWVtICsgMC4xODc1cmVtKSBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNhbGMoMC43NWVtICsgMC4zNzVyZW0pIGNhbGMoMC43NWVtICsgMC4zNzVyZW0pO1xuICAgICAgXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjIwLCA1MywgNjksIDAuMjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLy8gRmVlZGJhY2sgbWVzc2FnZXNcbiAgLmludmFsaWQtZmVlZGJhY2ssXG4gIC52YWxpZC1mZWVkYmFjayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xuICAgIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgfVxuICBcbiAgLmludmFsaWQtZmVlZGJhY2sge1xuICAgIGNvbG9yOiAjZGMzNTQ1O1xuICB9XG4gIFxuICAudmFsaWQtZmVlZGJhY2sge1xuICAgIGNvbG9yOiAjMTk4NzU0O1xuICB9XG4gIFxuICAuaXMtaW52YWxpZCB+IC5pbnZhbGlkLWZlZWRiYWNrLFxuICAud2FzLXZhbGlkYXRlZCA6aW52YWxpZCB+IC5pbnZhbGlkLWZlZWRiYWNrIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICBcbiAgLmlzLXZhbGlkIH4gLnZhbGlkLWZlZWRiYWNrLFxuICAud2FzLXZhbGlkYXRlZCA6dmFsaWQgfiAudmFsaWQtZmVlZGJhY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIFxuICAvLyBGb3JtIHRleHQvaGVscFxuICAuZm9ybS10ZXh0IHtcbiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xuICAgIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgICBjb2xvcjogIzZjNzU3ZDtcbiAgfVxufVxuXG4vLyBJbnB1dCBncm91cHMgLSBCb290c3RyYXAgNSBzdHlsZSB3aXRoIHNxdWFyZSBjb3JuZXJzXG4uaW5wdXQtZ3JvdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHdpZHRoOiAxMDAlO1xuICBcbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5mb3JtLXNlbGVjdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIHdpZHRoOiAxJTtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxuICBcbiAgPiAuZm9ybS1jb250cm9sOmZvY3VzLFxuICA+IC5mb3JtLXNlbGVjdDpmb2N1cyB7XG4gICAgei1pbmRleDogMztcbiAgfVxuICBcbiAgLmlucHV0LWdyb3VwLXRleHQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAwLjQ3NXJlbSAwLjg1cmVtO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGFkOWQ5O1xuICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDsgLy8gU3F1YXJlIGNvcm5lcnNcbiAgfVxufVxuXG4vLyBTZWxlY3QyIGludGVncmF0aW9uIGZvciBmcm9udGVuZCAoaWYgdXNlZClcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNSxcbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCxcbi5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCB7XG4gIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlLFxuICAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIHtcbiAgICBoZWlnaHQ6IDQycHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RhZDlkOTtcbiAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7IC8vIFNxdWFyZSBjb3JuZXJzXG4gICAgXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICMxRTFFNTY7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMzAsIDMwLCA4NiwgMC4yNSk7XG4gICAgfVxuICB9XG4gIFxuICAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gICAgcGFkZGluZzogMC40NzVyZW0gMC44NXJlbTtcbiAgICBcbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuICB9XG4gIFxuICAuc2VsZWN0Mi1kcm9wZG93biB7XG4gICAgYm9yZGVyLWNvbG9yOiAjZGFkOWQ5O1xuICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDsgLy8gU3F1YXJlIGNvcm5lcnNcbiAgfVxuICBcbiAgLnNlbGVjdDItc2VhcmNoLS1kcm9wZG93biAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGFkOWQ5O1xuICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDsgLy8gU3F1YXJlIGNvcm5lcnNcbiAgfVxufSIsIi8vIEhlYWRlciBkcm9wZG93biBzdHlsaW5nIGZvciB1bmlmaWVkIGRyb3Bkb3duIGJlaGF2aW9yXG4uZHJvcGRvd24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBcbiAgICAvLyBFbnN1cmUgZHJvcGRvd25zIGRvbid0IGNhdXNlIGhvcml6b250YWwgc2Nyb2xsXG4gICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSA0MHB4KTsgLy8gTGVhdmUgMjBweCBwYWRkaW5nIG9uIGVhY2ggc2lkZVxuICAgICAgICBcbiAgICAgICAgLy8gTm90aWZpY2F0aW9uIGRyb3Bkb3duIHNwZWNpZmljXG4gICAgICAgICYubm90aWZpY2F0aW9uRHJvcGRvd24ge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLm5vdGlmaWNhdGlvbi1saXN0IHtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA0MDBweDtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gUHJvZmlsZSBkcm9wZG93blxuLnRvcC11c2VyLXByb2ZpbGUge1xuICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgbWluLXdpZHRoOiAyMDBweDtcbiAgICB9XG59XG5cbi8vIENhcnQgZHJvcGRvd24gIFxuLmhlYWRlci1jYXJ0LXdyYXBwZXIge1xuICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgbWluLXdpZHRoOiAzMjBweDtcbiAgICAgICAgXG4gICAgICAgIC5jYXJ0LWRyb3Bkb3duLWNvbnRlbnQge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogNDAwcHg7XG4gICAgICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBNb2JpbGUgYWRqdXN0bWVudHNcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5kcm9wZG93biB7XG4gICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbGVmdDogMTBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcmlnaHQ6IDEwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLy8gVW5pZmllZCBIZWFkZXIgRHJvcGRvd24gVHlwb2dyYXBoeVxuLy8gQXBwbGllcyBjb25zaXN0ZW50IGZvbnQgc3R5bGluZyBhY3Jvc3MgYWxsIHRocmVlIGhlYWRlciBkcm9wZG93bnNcblxuLy8gRGVmaW5lIGZvbnQgdmFyaWFibGVzIGZvciBoZWFkZXIgZHJvcGRvd25zXG4kZHJvcGRvd24tZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuJGRyb3Bkb3duLWZvbnQtd2VpZ2h0LW5vcm1hbDogNDAwO1xuJGRyb3Bkb3duLWZvbnQtd2VpZ2h0LXNlbWlib2xkOiA2MDA7XG5cbi8vIEJhc2UgZHJvcGRvd24gc3R5bGluZ1xuLmRyb3Bkb3duLW1lbnUge1xuICBmb250LWZhbWlseTogJGRyb3Bkb3duLWZvbnQtZmFtaWx5O1xuXG4gIC8vIE92ZXJyaWRlIEJvb3RzdHJhcCBkZWZhdWx0c1xuICAuZHJvcGRvd24taXRlbSB7XG4gICAgZm9udC1mYW1pbHk6ICRkcm9wZG93bi1mb250LWZhbWlseTtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgZm9udC13ZWlnaHQ6ICRkcm9wZG93bi1mb250LXdlaWdodC1ub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICBjb2xvcjogIzMzMztcblxuICAgIC8vIEljb24gYWxpZ25tZW50XG4gICAgaSB7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICMwMDA7XG4gICAgfVxuICB9XG5cbiAgLmRyb3Bkb3duLWhlYWRlciB7XG4gICAgZm9udC1mYW1pbHk6ICRkcm9wZG93bi1mb250LWZhbWlseTtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgZm9udC13ZWlnaHQ6ICRkcm9wZG93bi1mb250LXdlaWdodC1zZW1pYm9sZDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgICBjb2xvcjogIzZjNzU3ZDtcbiAgfVxufVxuXG4vLyBQcm9maWxlIGRyb3Bkb3duIHNwZWNpZmljXG4udG9wLXVzZXItcHJvZmlsZSB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICAuZHJvcGRvd24taXRlbSB7XG4gICAgICBwYWRkaW5nOiAwLjVyZW0gMS4yNXJlbTtcbiAgICB9XG4gIH1cbn1cblxuLy8gTm90aWZpY2F0aW9ucyBkcm9wZG93biBzcGVjaWZpY1xuLm5vdGlmaWNhdGlvbkRyb3Bkb3duIHtcbiAgLmRyb3Bkb3duLWhlYWRlciB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiAkZHJvcGRvd24tZm9udC13ZWlnaHQtc2VtaWJvbGQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICBjb2xvcjogIzMzMztcblxuICAgIC8vIE1hcmsgYWxsIGFzIHJlYWQgYnV0dG9uXG4gICAgLmJ0bi1saW5rIHtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZHJvcGRvd24tZm9udC13ZWlnaHQtbm9ybWFsO1xuICAgIH1cbiAgfVxuXG4gIC8vIE5vdGlmaWNhdGlvbiBpdGVtc1xuICAuZnJvbnRlbmQtbm90aWZpY2F0aW9uLWl0ZW0ge1xuICAgIGg1IHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZHJvcGRvd24tZm9udC1mYW1pbHk7XG4gICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICBmb250LXdlaWdodDogJGRyb3Bkb3duLWZvbnQtd2VpZ2h0LXNlbWlib2xkO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG5cbiAgICAgICYuZnctYm9sZCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZHJvcGRvd24tZm9udC13ZWlnaHQtc2VtaWJvbGQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBmb250LWZhbWlseTogJGRyb3Bkb3duLWZvbnQtZmFtaWx5O1xuXG4gICAgICAvLyBNZXNzYWdlIHByZXZpZXdcbiAgICAgICYuc21hbGwge1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICB9XG5cbiAgICAgIC8vIFRpbWVzdGFtcFxuICAgICAgJi5zbWFsbDpsYXN0LWNoaWxkIHtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gRm9vdGVyIGxpbmtcbiAgLmRyb3Bkb3duLWl0ZW0udGV4dC1jZW50ZXIge1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgfVxufVxuXG4vLyBDYXJ0IGRyb3Bkb3duIHNwZWNpZmljXG4uaGVhZGVyLWNhcnQtd3JhcHBlciB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICAvLyBDYXJ0IGl0ZW0gc3R5bGluZ1xuICAgIC5jYXJ0LWl0ZW0ge1xuICAgICAgZm9udC1mYW1pbHk6ICRkcm9wZG93bi1mb250LWZhbWlseTtcblxuICAgICAgLml0ZW0tbmFtZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRkcm9wZG93bi1mb250LXdlaWdodC1zZW1pYm9sZDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgICAgY29sb3I6ICMzMzM7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuaXRlbS1kZXRhaWxzIHtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcblxuICAgICAgICAuaXRlbS1wcmljZSB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRkcm9wZG93bi1mb250LXdlaWdodC1zZW1pYm9sZDtcbiAgICAgICAgICBjb2xvcjogIzMzMztcbiAgICAgICAgfVxuXG4gICAgICAgIC5pdGVtLXR5cGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAucXVhbnRpdHktY29udHJvbHMge1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG5cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICBmb250LWZhbWlseTogJGRyb3Bkb3duLWZvbnQtZmFtaWx5O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ2FydCB0b3RhbHNcbiAgICAuY2FydC1zdW1tYXJ5IHtcbiAgICAgIGg2IHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRkcm9wZG93bi1mb250LWZhbWlseTtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBmb250LXdlaWdodDogJGRyb3Bkb3duLWZvbnQtd2VpZ2h0LXNlbWlib2xkO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG4gICAgICB9XG5cbiAgICAgIC5zdWJ0b3RhbC1yb3cge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG5cbiAgICAgICAgLnN1YnRvdGFsLWxhYmVsIHtcbiAgICAgICAgICBmb250LXdlaWdodDogJGRyb3Bkb3duLWZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zdWJ0b3RhbC1hbW91bnQge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZHJvcGRvd24tZm9udC13ZWlnaHQtc2VtaWJvbGQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBY3Rpb24gYnV0dG9uc1xuICAgIC5idG4ge1xuICAgICAgZm9udC1mYW1pbHk6ICRkcm9wZG93bi1mb250LWZhbWlseTtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZHJvcGRvd24tZm9udC13ZWlnaHQtbm9ybWFsO1xuICAgIH1cblxuICAgIC8vIEVtcHR5IGNhcnQgbWVzc2FnZVxuICAgIC5lbXB0eS1jYXJ0LW1lc3NhZ2Uge1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuXG4gICAgICBpIHtcbiAgICAgICAgZm9udC1zaXplOiAzMnB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIExvYWRpbmcgc3RhdGVcbiAgICAuY2FydC1sb2FkaW5nIHtcbiAgICAgIHAge1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIENvbW1vbiBkcm9wZG93biBzdGF0ZXNcbi5kcm9wZG93bi1tZW51IHtcbiAgLy8gRGl2aWRlcnNcbiAgLmRyb3Bkb3duLWRpdmlkZXIge1xuICAgIG1hcmdpbjogMC41cmVtIDA7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBpdGVtc1xuICAuZHJvcGRvd24taXRlbS5kaXNhYmxlZCxcbiAgLmRyb3Bkb3duLWl0ZW06ZGlzYWJsZWQge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBvcGFjaXR5OiAwLjY7XG4gIH1cblxuICAvLyBTbWFsbCB0ZXh0IHV0aWxpdHlcbiAgLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgfVxuXG4gIC50ZXh0LW11dGVkIHtcbiAgICBjb2xvcjogIzZjNzU3ZCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vIFJlc3BvbnNpdmUgYWRqdXN0bWVudHNcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgLmRyb3Bkb3duLWl0ZW0ge1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgcGFkZGluZzogMC43NXJlbSAxLjI1cmVtO1xuICAgIH1cblxuICAgIC5kcm9wZG93bi1oZWFkZXIge1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgIH1cbiAgfVxuXG4gIC5ub3RpZmljYXRpb25Ecm9wZG93biB7XG4gICAgLmZyb250ZW5kLW5vdGlmaWNhdGlvbi1pdGVtIHtcbiAgICAgIGg1IHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgfVxuXG4gICAgICBwLnNtYWxsIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5oZWFkZXItY2FydC13cmFwcGVyIHtcbiAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAuaXRlbS1uYW1lIHtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgfVxuXG4gICAgICAuaXRlbS1kZXRhaWxzIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gV2lzaGxpc3QgQnV0dG9uIFN0eWxlc1xuLy8gUHJvdmlkZXMgcHJvbWluZW50IHN0eWxpbmcgZm9yIHdpc2hsaXN0IHRvZ2dsZSBidXR0b25zXG5cbi53aXNobGlzdC10b2dnbGUtYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICBcbiAgICAvLyBEZWZhdWx0IHN0YXRlIC0gQWRkIHRvIFdpc2hsaXN0XG4gICAgJjpub3QoLndpc2hsaXN0ZWQpIHtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgIzZjNzU3ZDsgLy8gRGFya2VyIGdyYXkgYm9yZGVyXG4gICAgICAgIGNvbG9yOiAjZGMzNTQ1OyAvLyBSZWQgdGV4dFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjNWE2MjY4O1xuICAgICAgICAgICAgY29sb3I6ICNkYzM1NDU7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMTA4LCAxMTcsIDEyNSwgMC4yNSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gV2lzaGxpc3RlZCBzdGF0ZSAtIFJlbW92ZSBmcm9tIFdpc2hsaXN0XG4gICAgJi53aXNobGlzdGVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2RjMzU0NTsgLy8gUmVkIGJvcmRlclxuICAgICAgICBjb2xvcjogI2RjMzU0NTsgLy8gUmVkIHRleHRcbiAgICAgICAgXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZWVmMDtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbiAgICAgICAgICAgIGNvbG9yOiAjZGMzNTQ1O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIyMCwgNTMsIDY5LCAwLjI1KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBMb2FkaW5nIHN0YXRlXG4gICAgJi53aXNobGlzdC1sb2FkaW5nIHtcbiAgICAgICAgb3BhY2l0eTogMC43O1xuICAgICAgICBjdXJzb3I6IHdhaXQ7XG4gICAgfVxuICAgIFxuICAgIC8vIEljb24gYW5pbWF0aW9uc1xuICAgIGkge1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlO1xuICAgICAgICBcbiAgICAgICAgJi53aXNobGlzdC1wdWxzZSB7XG4gICAgICAgICAgICBhbmltYXRpb246IHdpc2hsaXN0LXB1bHNlIDAuNXMgZWFzZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBNYWtlIGJ1dHRvbiBtb3JlIHByb21pbmVudCBvbiBpdGVtIGRldGFpbCBwYWdlc1xuICAgICYuYnRuLWxnIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgcGFkZGluZzogMC42cmVtIDEuNXJlbTtcbiAgICAgICAgXG4gICAgICAgIGkge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjM3NXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBTbWFsbGVyIGJ1dHRvbnMgKHByb2R1Y3QgY2FyZHMpXG4gICAgJi5idG4tc20ge1xuICAgICAgICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xuICAgIH1cbn1cblxuLy8gQW5pbWF0aW9uIGZvciBoZWFydCBwdWxzZVxuQGtleWZyYW1lcyB3aXNobGlzdC1wdWxzZSB7XG4gICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIH1cbiAgICA1MCUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMyk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIH1cbn1cblxuLy8gUHJvZHVjdCBjYXJkIHNwZWNpZmljIHN0eWxpbmcgLSBHUklEIFZJRVcgT05MWVxuLnByb2R1Y3QtY2FyZC1ncmlkIHtcbiAgICAud2lzaGxpc3QtdG9nZ2xlLWJ0biB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwLjVyZW07XG4gICAgICAgIHJpZ2h0OiAwLjVyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICAgICAgXG4gICAgICAgICY6bm90KC53aXNobGlzdGVkKSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgICAgICBjb2xvcjogI2RjMzU0NTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICM1YTYyNjg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNkYzM1NDU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYud2lzaGxpc3RlZCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xuICAgICAgICAgICAgY29sb3I6ICNkYzM1NDU7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZGMzNTQ1O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBQcm9kdWN0IGNhcmQgbGlzdCB2aWV3IHN0eWxpbmcgLSBOb3JtYWwgYnV0dG9uIGFwcGVhcmFuY2Vcbi5wcm9kdWN0LWNhcmQtbGlzdCB7XG4gICAgLndpc2hsaXN0LXRvZ2dsZS1idG4ge1xuICAgICAgICAvLyBSZXNldCBhbnkgYWJzb2x1dGUgcG9zaXRpb25pbmdcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAvLyBOb3JtYWwgYnV0dG9uIHN0eWxpbmcgLSBubyBzcGVjaWFsIG92ZXJyaWRlcyBuZWVkZWRcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgICB9XG59XG5cbi8vIFdpc2hsaXN0IGRyb3Bkb3duIHN0eWxpbmdcbi53aXNobGlzdC1kcm9wZG93bi1jb250ZW50IHtcbiAgICAud2lzaGxpc3QtdG9nZ2xlLWJ0biB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gICAgICAgIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIH1cbn0iLCIvLyBFbmhhbmNlZCBTaG9wIEZpbHRlcnMgQ29tcG9uZW50IFN0eWxlc1xuXG4uZmlsdGVyLWZvcm0ge1xuICAgIC8vIERlc2t0b3AgYXV0b2NvbXBsZXRlIGludGVyZmFjZVxuICAgIC5maWx0ZXItYXV0b2NvbXBsZXRlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBcbiAgICAgICAgLmZpbHRlci1pbnB1dC13cmFwcGVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmZpbHRlci1zZWFyY2gtaW5wdXQge1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4OyAvLyBTcGFjZSBmb3IgZHJvcGRvd24gaWNvblxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjODZiN2ZlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiB0ZXh0O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICM4NmI3ZmU7XG4gICAgICAgICAgICAgICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgxMywgMTEwLCAyNTMsIDAuMjUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmZpbHRlci1kcm9wZG93bi1pY29uIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycztcbiAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZmlsdGVyLXN1Z2dlc3Rpb25zLWRyb3Bkb3duIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMTAwJTsgLy8gRGlyZWN0bHkgYXR0YWNoZWQgdG8gaW5wdXRcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IDEwNTA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG4gICAgICAgICAgICBib3JkZXItdG9wOiBub25lOyAvLyBTZWFtbGVzcyBjb25uZWN0aW9uXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgMC4yNXJlbSAwLjI1cmVtO1xuICAgICAgICAgICAgbWF4LWhlaWdodDogMjUwcHg7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDZweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICYuc2hvdyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgLy8gUm90YXRlIGljb24gd2hlbiBvcGVuXG4gICAgICAgICAgICAgICAgfiAuZmlsdGVyLWlucHV0LXdyYXBwZXIgLmZpbHRlci1kcm9wZG93bi1pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLnN1Z2dlc3Rpb25zLWxpc3Qge1xuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDI1MHB4O1xuICAgICAgICAgICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgLnN1Z2dlc3Rpb24taXRlbSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtO1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXM7XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzBkNmVmZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8vIFdoZW4gZHJvcGRvd24gaXMgb3BlbiwgY29ubmVjdCBpbnB1dCBib3R0b20gYm9yZGVyXG4gICAgICAgIC5maWx0ZXItc3VnZ2VzdGlvbnMtZHJvcGRvd24uc2hvdyB+IC5maWx0ZXItaW5wdXQtd3JhcHBlciAuZmlsdGVyLXNlYXJjaC1pbnB1dCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBNb2JpbGUgc2VsZWN0IGludGVyZmFjZVxuICAgIC5maWx0ZXItbW9iaWxlLXNlbGVjdCB7XG4gICAgICAgIC5tb2JpbGUtZmlsdGVyLXNlbGVjdCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBUYWdzIGRpc3BsYXkgKHNoYXJlZCBiZXR3ZWVuIGRlc2t0b3AgYW5kIG1vYmlsZSlcbiAgICAuc2VsZWN0ZWQtdGFncyB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICAgIFxuICAgICAgICAuYmFkZ2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuMzc1cmVtIDAuNXJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5idG4tY2xvc2Uge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAwLjVlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDAuNWVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAwLjVlbTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjc1O1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gTWVkaWEgcXVlcmllc1xuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmZpbHRlci1mb3JtIHtcbiAgICAgICAgLy8gSGlkZSBkZXNrdG9wIGludGVyZmFjZSBvbiBtb2JpbGVcbiAgICAgICAgLmZpbHRlci1hdXRvY29tcGxldGUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvLyBTaG93IG1vYmlsZSBpbnRlcmZhY2VcbiAgICAgICAgLmZpbHRlci1tb2JpbGUtc2VsZWN0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5maWx0ZXItZm9ybSB7XG4gICAgICAgIC8vIFNob3cgZGVza3RvcCBpbnRlcmZhY2VcbiAgICAgICAgLmZpbHRlci1hdXRvY29tcGxldGUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLy8gSGlkZSBtb2JpbGUgaW50ZXJmYWNlXG4gICAgICAgIC5maWx0ZXItbW9iaWxlLXNlbGVjdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLy8gSGVhZGVyIEljb24gQ29uc2lzdGVuY3kgU3R5bGVzXG4vLyBFbnN1cmVzIGFsbCBoZWFkZXIgaWNvbnMgYXJlIHByb3Blcmx5IGFsaWduZWQgYW5kIHNpemVkXG5cbi50b3AtYnV0dG9ucyB7XG4gICAgLy8gRW5zdXJlIGFsbCBkaXJlY3QgY2hpbGRyZW4gKGljb25zKSBhcmUgcHJvcGVybHkgYWxpZ25lZFxuICAgID4gKiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgICBcbiAgICAvLyBTdGFuZGFyZCBpY29uIGNvbnRhaW5lciBzaXplXG4gICAgLmJ0bi1saW5rIHtcbiAgICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICAgIGhlaWdodDogMzVweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzO1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8vIFJlbW92ZSBhbnkgcG9zaXRpb25pbmcgb2Zmc2V0c1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICAgICAgdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgIC8vIE5vdGlmaWNhdGlvbiBpY29uIHNwZWNpZmljXG4gICAgLm5vdGlmaWNhdGlvbkJ0biB7XG4gICAgICAgIC5iYWRnZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuNjI1cmVtO1xuICAgICAgICAgICAgcGFkZGluZzogMC4yNWVtIDAuNGVtO1xuICAgICAgICAgICAgbWluLXdpZHRoOiAxOHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBVc2VyIGRyb3Bkb3duIGJ1dHRvblxuICAgIC50b3AtdXNlci1wcm9maWxlIHtcbiAgICAgICAgLmJ0bi1saW5rIHtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGltZywgLnVzZXItZHJvcGRvd24ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzVweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNhYWE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gQ2FydCBpY29uXG4gICAgLmhlYWRlci1jYXJ0LXdyYXBwZXIge1xuICAgICAgICAuY2FydC1pY29uIHtcbiAgICAgICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuY2FydC1jb3VudC1iYWRnZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuNjI1cmVtO1xuICAgICAgICAgICAgcGFkZGluZzogMC4yNWVtIDAuNGVtO1xuICAgICAgICAgICAgbWluLXdpZHRoOiAxOHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIEltcGVyc29uYXRpb24gaW5kaWNhdG9yXG4gICAgZm9ybSwgYSB7XG4gICAgICAgICZbdGl0bGUqPVwiUmV0dXJuXCJdLCAmW3RpdGxlKj1cIlN0b3AgSW1wZXJzb25hdGluZ1wiXSB7XG4gICAgICAgICAgICAuYnRuLWxpbmsge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmMxMDcgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZiMzAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBNb2JpbGUgYWRqdXN0bWVudHNcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC50b3AtYnV0dG9ucyB7XG4gICAgICAgIGdhcDogMC43NXJlbSAhaW1wb3J0YW50OyAvLyBTbGlnaHRseSBzbWFsbGVyIGdhcCBvbiBtb2JpbGVcbiAgICB9XG59IiwiLy8gT3JkZXIgQ2FyZCBDb21wb25lbnQgU3R5bGVzXG4ub3JkZXItY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBcbiAgICAuY2FyZCB7XG4gICAgICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4zcyBlYXNlO1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAuNXJlbSAxcmVtIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5vcmRlci1pdGVtLXRodW1iIHtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xufVxuXG4ub3JkZXItaXRlbS10aHVtYi1wbGFjZWhvbGRlciB7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgY29sb3I6ICM2Yzc1N2Q7XG59XG5cbi5vcmRlci1pdGVtLW1vcmUge1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogIzZjNzU3ZDtcbn0iLCIvKipcbiAqIEhvbWUgUGFnZSBTdHlsZXNcbiAqIFN0eWxlcyBzcGVjaWZpYyB0byB0aGUgaG9tZXBhZ2Ugd2l0aCBCb290c3RyYXAgNVxuICovXG5cbi5wYWdlX2lzX2hvbWVfcGFnZSB7XG4gIC8vIEJhbm5lciBJbWFnZSBTdHlsaW5nXG4gIC5vYmplY3QtZml0LWNvdmVyIHtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBtaW4taGVpZ2h0OiA0MDBweDtcblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgbWluLWhlaWdodDogMjUwcHg7XG4gICAgfVxuICB9XG5cbiAgLy8gQmFkZ2UgQW5pbWF0aW9uXG4gIC5iYWRnZSB7XG4gICAgYW5pbWF0aW9uOiBmYWRlSW5VcCAwLjVzIGVhc2Utb3V0O1xuICB9XG5cbiAgLy8gQ2FyZCBzdHlsZXMgLSBob3ZlciBlZmZlY3RzIHJlbW92ZWRcbiAgLmNhcmQge1xuICAgIC8vIFN0YXRpYyBzdHlsaW5nIG9ubHlcbiAgfVxuXG4gIC8vIFNoYXBlIGNhcmQgc3BlY2lmaWMgc3R5bGVzXG4gIC5zaGFwZS1jYXJkIHtcbiAgICAvLyBIb3ZlciBlZmZlY3RzIHJlbW92ZWQgZm9yIGNsZWFuZXIgZGVzaWduXG4gIH1cblxuICAuc2hhcGUtaW1hZ2Utd3JhcHBlciB7XG4gICAgaGVpZ2h0OiA2MHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuXG4gIC5zaGFwZS1pY29uIHtcbiAgICB3aWR0aDogNTBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICBjb2xvcjogdmFyKC0tYnMtZ3JheS02MDApO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWJzLWdyYXktMTAwKTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgfVxuXG4gIC8vIERpZmZlcmVudCBpY29ucyBmb3IgZGlmZmVyZW50IGRpYW1vbmQgc2hhcGVzXG4gIC5zaGFwZS1yb3VuZCAuZmEtZ2VtOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGYzYTVcIjtcbiAgfSAvKiBDaXJjbGUgKi9cbiAgLnNoYXBlLXByaW5jZXNzIC5mYS1nZW06YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjBjOFwiO1xuICB9IC8qIFNxdWFyZSAqL1xuICAuc2hhcGUtY3VzaGlvbiAuZmEtZ2VtOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGY0NjZcIjtcbiAgfSAvKiBTcXVhcmUgd2l0aCByb3VuZGVkIGNvcm5lcnMgKi9cbiAgLnNoYXBlLWVtZXJhbGQgLmZhLWdlbTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxmMWIyXCI7XG4gIH0gLyogUmVjdGFuZ2xlICovXG4gIC5zaGFwZS1vdmFsIC5mYS1nZW06YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjExMVwiO1xuICB9IC8qIEVsbGlwc2UgKi9cbiAgLnNoYXBlLXBlYXIgLmZhLWdlbTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxmMDQzXCI7XG4gIH0gLyogVGVhcmRyb3AgKi9cbiAgLnNoYXBlLWhlYXJ0IC5mYS1nZW06YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjAwNFwiO1xuICB9IC8qIEhlYXJ0ICovXG5cbiAgLy8gTmF2IHBpbGxzIGN1c3RvbWl6YXRpb24gZm9yIHByb2R1Y3QgdGFic1xuICAubmF2LXBpbGxzIHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgY29sb3I6IHZhcigtLWJzLWdyYXktNjAwKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwcmVtO1xuICAgICAgcGFkZGluZzogMC41cmVtIDEuNXJlbTtcbiAgICAgIG1hcmdpbjogMCAwLjI1cmVtO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWdyYXktMTAwKTtcbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBIZXJvIHNlY3Rpb24gZW5oYW5jZW1lbnRzXG4gIC8vIC5oZXJvLXNlY3Rpb24ge1xuICAvLyAgIC5iYWRnZSB7XG4gIC8vICAgICBsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xuICAvLyAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgLy8gICB9XG5cbiAgLy8gICAuZGlzcGxheS00IHtcbiAgLy8gICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMmVtO1xuICAvLyAgIH1cbiAgLy8gfVxuXG4gIC5ob21lLWhlcm8tc2VjdGlvbi1ob21lcGFnZSB7XG4gICAgLy8gRml4IGEgdGFnIGJlaGF2aW9yIGlmIHdlIGFyZSByZW5kZXJpbmcgdGhpcyBhcyBhbiBhIHRhZzpcblxuICAgIC8vIE9uIGhvdmVyLCBzaG93IGJveCBzaGFkb3dcblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIGhlaWdodDogMjUwcHg7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIC8vIHRlbXAgZGlzYWJsZSByb3VuZGVkLWNvcm5lclxuICAgIC8vIGJvcmRlci1yYWRpdXM6IDEycHg7XG5cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwMHB4KSB7XG4gICAgICBoZWlnaHQ6IDM0MHB4O1xuICAgIH1cblxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICAgIGhlaWdodDogMzcwcHg7XG4gICAgfVxuXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAwcHgpIHtcbiAgICAgIGhlaWdodDogNDAwcHg7XG4gICAgfVxuXG4gICAgLm1haW4taGVhZGluZy10b3Age1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDIzNSwgMjM1LCAyNDIsIDApO1xuICAgIH1cblxuICAgIC5iYW5uZXJ0ZXh0IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgd2lkdGg6IDQ3JTtcbiAgICAgIGxlZnQ6IDIuMjUlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMHB4LCAtNTIlKTtcblxuICAgICAgLmJhbm5lcnRleHQtaGVhZGluZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogNDUuNXB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1oZWFkaW5nO1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG5cbiAgICAgICAgLmxpbmVncmVkOjpiZWZvcmUge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1nL2hvbWUvbGluZWdyYWQucG5nKTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgd2lkdGg6IDI1MHB4O1xuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuYmFubmVydGV4dC1zdWJoZWFkaW5nIHtcbiAgICAgICAgdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgICAgICAgZm9udC1mYW1pbHk6IFBvcHBpbnMsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBTZWN0aW9uIHNwYWNpbmcgY29uc2lzdGVuY3lcbiAgc2VjdGlvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAvLyBFbnN1cmUgY29uc2lzdGVudCBzcGFjaW5nXG4gICAgJi5weS01IHtcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBwYWRkaW5nLXRvcDogNHJlbSAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNHJlbSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIEJhbm5lciBzZWN0aW9ucyB3aXRoIGltYWdlc1xuICAuY2FyZCB7XG4gICAgJi5ib3JkZXItd2FybmluZyxcbiAgICAmLmJvcmRlci1zdWNjZXNzLFxuICAgICYuYm9yZGVyLXByaW1hcnkge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgaW1nIHtcbiAgICAgICAgLy8gSG92ZXIgZWZmZWN0IHJlbW92ZWRcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBUYWIgY29udGVudCB0cmFuc2l0aW9uc1xuICAudGFiLXBhbmUge1xuICAgIGFuaW1hdGlvbjogZmFkZUluIDAuM3MgZWFzZS1pbi1vdXQ7XG4gIH1cblxuICAvLyBWaWV3IEFsbCBidXR0b25zXG4gIC5idG4tc20ge1xuICAgICYuYnRuLW91dGxpbmUtcHJpbWFyeSB7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgLmZhLWFycm93LXJpZ2h0IHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlc3BvbnNpdmUgdHlwb2dyYXBoeSBhZGp1c3RtZW50c1xuICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAuZGlzcGxheS00IHtcbiAgICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgIH1cblxuICAgIC5kaXNwbGF5LTYge1xuICAgICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICAgIH1cblxuICAgIC5sZWFkIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgIH1cbiAgfVxuXG4gIC8vIEVtcHR5IHN0YXRlIHN0eWxpbmdcbiAgLnRleHQtbXV0ZWQge1xuICAgICYucHktNSB7XG4gICAgICBvcGFjaXR5OiAwLjc7XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgfVxuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBORVcgRUxFR0FOVCBIT01FUEFHRSBTVFlMRVNcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIENvbG9yIHBhbGV0dGUgZm9yIGx1eHVyeSBhZXN0aGV0aWNcbiAgLS1sdXh1cnktZ29sZDogI2Q0YWYzNztcbiAgLS1zb2Z0LWNyZWFtOiAjZmFmOWY2O1xuICAtLWRlZXAtY2hhcmNvYWw6ICMyYzJjMmM7XG4gIC0td2FybS1ncmF5OiAjNmI2YjZiO1xuXG4gIC8vIENvbW1vbiBzZWN0aW9uIHRpdGxlIHN0eWxlc1xuICAuc2VjdGlvbi10aXRsZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiUGxheWZhaXIgRGlzcGxheVwiLCBzZXJpZjtcbiAgICBmb250LXNpemU6IDQycHg7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBjb2xvcjogdmFyKC0tZGVlcC1jaGFyY29hbCk7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICBmb250LXNpemU6IDMycHg7XG4gICAgfVxuICB9XG5cbiAgLnRpdGxlLXVuZGVybGluZSB7XG4gICAgd2lkdGg6IDYwcHg7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbHV4dXJ5LWdvbGQpO1xuICAgIG1hcmdpbjogMCBhdXRvIDMwcHg7XG4gIH1cblxuICAuc2VjdGlvbi1zdWJ0aXRsZSB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGNvbG9yOiB2YXIoLS13YXJtLWdyYXkpO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuXG4gIC8vIFNob3AgYnkgQ2F0ZWdvcnkgU2VjdGlvblxuICAuc2hvcC1ieS1jYXRlZ29yeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG5cbiAgICAuY2F0ZWdvcnktY2FyZCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICAuY2F0ZWdvcnktaW1hZ2Uge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDE1cHggMzVweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICAgICAgXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIC8vIFJlbW92ZWQgdGFja3kgem9vbSBlZmZlY3RcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2F0ZWdvcnktbGluayB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWx1eHVyeS1nb2xkKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5jYXRlZ29yeS1pbWFnZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgaGVpZ2h0OiAzMDBweDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgICBib3gtc2hhZG93OiAwIDVweCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4wOCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmNhdGVnb3J5LWluZm8ge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgcGFkZGluZzogMCAxMHB4IDIwcHg7XG4gICAgfVxuXG4gICAgLmNhdGVnb3J5LXRpdGxlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlBsYXlmYWlyIERpc3BsYXlcIiwgc2VyaWY7XG4gICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICBjb2xvcjogdmFyKC0tZGVlcC1jaGFyY29hbCk7XG4gICAgfVxuXG4gICAgLmNhdGVnb3J5LWxpbmsge1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG4gICAgICBjb2xvcjogIzFlMWU1NjtcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuM3MgZWFzZTtcbiAgICB9XG4gIH1cblxuICAvLyBGZWF0dXJlZCBDb2xsZWN0aW9uIFNlY3Rpb25cbiAgLmZlYXR1cmVkLWNvbGxlY3Rpb24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNvZnQtY3JlYW0pO1xuXG4gICAgLmZlYXR1cmVkLXByb2R1Y3QtY2FyZCB7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgICAgIH1cblxuICAgICAgLy8gT3ZlcnJpZGUgcHJvZHVjdCBjYXJkIHN0eWxlcyBmb3IgZWxlZ2FudCBsb29rXG4gICAgICAuY2FyZCB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYm94LXNoYWRvdzogMCA1cHggMjBweCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMTBweCA0MHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYnRuLW91dGxpbmUtcHJpbWFyeSB7XG4gICAgICBwYWRkaW5nOiAxMnB4IDQwcHg7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBib3JkZXItd2lkdGg6IDJweDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxZTFlNTY7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzFlMWU1NjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBBcnRpc2FuIFNwb3RsaWdodCBTZWN0aW9uXG4gIC5hcnRpc2FuLXNwb3RsaWdodCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG5cbiAgICAuYXJ0aXNhbi1jYXJkIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgIGJveC1zaGFkb3c6IDAgNXB4IDIwcHggcmdiYSgwLCAwLCAwLCAwLjA4KTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICAgICAgICBib3gtc2hhZG93OiAwIDE1cHggNDBweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xuXG4gICAgICAgIC5hcnRpc2FuLWltYWdlIGltZyB7XG4gICAgICAgICAgLy8gUmVtb3ZlZCB0YWNreSB6b29tIGVmZmVjdFxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmFydGlzYW4taW1hZ2Uge1xuICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgaGVpZ2h0OiAyMDBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvIDI1cHg7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYm9yZGVyOiA1cHggc29saWQgdmFyKC0tc29mdC1jcmVhbSk7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5hcnRpc2FuLW5hbWUge1xuICAgICAgZm9udC1mYW1pbHk6IFwiUGxheWZhaXIgRGlzcGxheVwiLCBzZXJpZjtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgIGNvbG9yOiB2YXIoLS1kZWVwLWNoYXJjb2FsKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICB9XG5cbiAgICAuYXJ0aXNhbi1zcGVjaWFsdHkge1xuICAgICAgY29sb3I6IHZhcigtLWx1eHVyeS1nb2xkKTtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgIH1cblxuICAgIC5hcnRpc2FuLWV4cGVyaWVuY2Uge1xuICAgICAgY29sb3I6IHZhcigtLXdhcm0tZ3JheSk7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cblxuICAgIC5hcnRpc2FuLWxpbmsge1xuICAgICAgY29sb3I6ICMxZTFlNTY7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogdmFyKC0tbHV4dXJ5LWdvbGQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFNob3AgYnkgT2NjYXNpb24gU2VjdGlvblxuICAuc2hvcC1ieS1vY2Nhc2lvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc29mdC1jcmVhbSk7XG5cbiAgICAub2NjYXNpb24tY2FyZCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDQwcHggMjBweDtcbiAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgYm94LXNoYWRvdzogMCA1cHggMjBweCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMTVweCA0MHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG5cbiAgICAgICAgLm9jY2FzaW9uLWljb24ge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxZTFlNTY7XG4gICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm9jY2FzaW9uLWljb24ge1xuICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICBtYXJnaW46IDAgYXV0byAyMHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc29mdC1jcmVhbSk7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgZm9udC1zaXplOiAzMnB4O1xuICAgICAgY29sb3I6ICMxZTFlNTY7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgIH1cblxuICAgIC5vY2Nhc2lvbi10aXRsZSB7XG4gICAgICBmb250LWZhbWlseTogXCJQbGF5ZmFpciBEaXNwbGF5XCIsIHNlcmlmO1xuICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgY29sb3I6IHZhcigtLWRlZXAtY2hhcmNvYWwpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB9XG5cbiAgICAub2NjYXNpb24tc3VidGl0bGUge1xuICAgICAgY29sb3I6IHZhcigtLXdhcm0tZ3JheSk7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2FyYXRYIFByb21pc2UgU2VjdGlvblxuICAuY2FyYXR4LXByb21pc2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuXG4gICAgLnByb21pc2UtY2FyZCB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiA0MHB4IDIwcHg7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICAucHJvbWlzZS1pY29uIHtcbiAgICAgICAgICAvLyBSZW1vdmVkIHRhY2t5IHpvb20gZWZmZWN0XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAucHJvbWlzZS1pY29uIHtcbiAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICBtYXJnaW46IDAgYXV0byAyNXB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc29mdC1jcmVhbSk7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgY29sb3I6IHZhcigtLWx1eHVyeS1nb2xkKTtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2U7XG4gICAgfVxuXG4gICAgLnByb21pc2UtdGl0bGUge1xuICAgICAgZm9udC1mYW1pbHk6IFwiUGxheWZhaXIgRGlzcGxheVwiLCBzZXJpZjtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgIGNvbG9yOiB2YXIoLS1kZWVwLWNoYXJjb2FsKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgfVxuXG4gICAgLnByb21pc2UtZGVzY3JpcHRpb24ge1xuICAgICAgY29sb3I6IHZhcigtLXdhcm0tZ3JheSk7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIC8vIEN1cnJlbnQgT2ZmZXJzIFNlY3Rpb24gKFByaXZhdGUgU2FsZSlcbiAgLmN1cnJlbnQtb2ZmZXJzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zb2Z0LWNyZWFtKTtcblxuICAgIC5zYWxlLXByb2R1Y3QtY2FyZCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIC8vIEFkZCBzdWJ0bGUgXCJQcml2YXRlIFNhbGVcIiBiYWRnZVxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJQcml2YXRlIFNhbGVcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDIwcHg7XG4gICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxZTFlNTY7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgcGFkZGluZzogNXB4IDE1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgICAgei1pbmRleDogMTA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSBhZGp1c3RtZW50cyBmb3IgbmV3IHNlY3Rpb25zXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIC5jYXRlZ29yeS1pbWFnZSB7XG4gICAgICBoZWlnaHQ6IDIwMHB4O1xuICAgIH1cblxuICAgIC5jYXRlZ29yeS10aXRsZSB7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgfVxuXG4gICAgLmFydGlzYW4tY2FyZCB7XG4gICAgICBwYWRkaW5nOiAyMHB4O1xuICAgIH1cblxuICAgIC5hcnRpc2FuLWltYWdlIHtcbiAgICAgIHdpZHRoOiAxNTBweDtcbiAgICAgIGhlaWdodDogMTUwcHg7XG4gICAgfVxuXG4gICAgLnByb21pc2UtaWNvbixcbiAgICAub2NjYXNpb24taWNvbiB7XG4gICAgICB3aWR0aDogNzBweDtcbiAgICAgIGhlaWdodDogNzBweDtcbiAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICB9XG4gIH1cbiAgXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gQ09NUFJFSEVOU0lWRSBNT0JJTEUgU1RZTEVTICgwLTEwMDBweClcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICBcbiAgLy8gSGVybyBTZWN0aW9uIE1lZGl1bSBTY3JlZW5zICgxMDAwLTEyMDBweClcbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMDFweCkgYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIC5ob21lLWhlcm8tc2VjdGlvbi1ob21lcGFnZSB7XG4gICAgICAuYmFubmVydGV4dCB7XG4gICAgICAgIC5iYW5uZXJ0ZXh0LWhlYWRpbmcge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMzZweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAvLyBIZXJvIFNlY3Rpb24gTW9iaWxlIE9wdGltaXphdGlvblxuICBAbWVkaWEgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgLmhvbWUtaGVyby1zZWN0aW9uLWhvbWVwYWdlIHtcbiAgICAgIGhlaWdodDogMzUwcHg7XG4gICAgICBcbiAgICAgIC5iYW5uZXJ0ZXh0IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgd2lkdGg6IDkwJTsgLy8gRnVsbCB3aWR0aCB3aXRoIHBhZGRpbmdcbiAgICAgICAgbGVmdDogNSU7XG4gICAgICAgIHJpZ2h0OiA1JTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIFxuICAgICAgICAuYmFubmVydGV4dC1oZWFkaW5nIHtcbiAgICAgICAgICBmb250LXNpemU6IDM2cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgIFxuICAgICAgICAgIC5saW5lZ3JlZDo6YmVmb3JlIHtcbiAgICAgICAgICAgIHdpZHRoOiAxODBweDtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIHAge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8vIENlbnRlciBidXR0b25zXG4gICAgICAgIGRpdiB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIFxuICAgICAgICAgIGEuYnRuIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDI3NXB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIC5ob21lLWhlcm8tc2VjdGlvbi1ob21lcGFnZSB7XG4gICAgICBoZWlnaHQ6IDMyMHB4O1xuICAgICAgXG4gICAgICAuYmFubmVydGV4dCB7XG4gICAgICAgIC5iYW5uZXJ0ZXh0LWhlYWRpbmcge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgICBcbiAgICAgICAgICAubGluZWdyZWQ6OmJlZm9yZSB7XG4gICAgICAgICAgICB3aWR0aDogMTQwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDhweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIHAge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIGEuYnRuIHtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgcGFkZGluZzogMTBweCAzMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAuaG9tZS1oZXJvLXNlY3Rpb24taG9tZXBhZ2Uge1xuICAgICAgaGVpZ2h0OiAyODBweDtcbiAgICAgIFxuICAgICAgLmJhbm5lcnRleHQge1xuICAgICAgICAuYmFubmVydGV4dC1oZWFkaW5nIHtcbiAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgXG4gICAgICAgICAgLmxpbmVncmVkOjpiZWZvcmUge1xuICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA2cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBwIHtcbiAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAvLyBTaG9wIGJ5IENhdGVnb3J5IC0gMiBDb2x1bW4gTW9iaWxlIExheW91dFxuICBAbWVkaWEgKG1heC13aWR0aDogNzUwcHgpIHtcbiAgICAuc2hvcC1ieS1jYXRlZ29yeSB7XG4gICAgICAucm93IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC04cHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLThweDtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgLmNvbC1tZC00IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDhweDtcbiAgICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gICAgICB9XG4gICAgICBcbiAgICAgIC5jYXRlZ29yeS1jYXJkIHtcbiAgICAgICAgem9vbTogMC44NTtcbiAgICAgICAgXG4gICAgICAgIC5jYXRlZ29yeS1pbWFnZSB7XG4gICAgICAgICAgaGVpZ2h0OiAxODBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmNhdGVnb3J5LWluZm8ge1xuICAgICAgICAgIHBhZGRpbmc6IDAgNXB4IDE1cHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5jYXRlZ29yeS10aXRsZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmNhdGVnb3J5LWxpbmsge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgLnNob3AtYnktY2F0ZWdvcnkge1xuICAgICAgLmNhdGVnb3J5LWNhcmQge1xuICAgICAgICB6b29tOiAwLjc1O1xuICAgICAgICBcbiAgICAgICAgLmNhdGVnb3J5LWltYWdlIHtcbiAgICAgICAgICBoZWlnaHQ6IDE1MHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuY2F0ZWdvcnktdGl0bGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLy8gRmVhdHVyZWQgQ29sbGVjdGlvbiAtIDIgQ29sdW1uIE1vYmlsZVxuICBAbWVkaWEgKG1heC13aWR0aDogNzUwcHgpIHtcbiAgICAuZmVhdHVyZWQtY29sbGVjdGlvbiB7XG4gICAgICAuY29sLW1kLTQge1xuICAgICAgICBmbGV4OiAwIDAgNTAlO1xuICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgICAgXG4gICAgICAgIC5mZWF0dXJlZC1wcm9kdWN0LWNhcmQge1xuICAgICAgICAgIHpvb206IDAuODU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIC8vIEFydGlzYW4gU3BvdGxpZ2h0IC0gS2VlcCBhcyBzaW5nbGUgY29sdW1uIGJ1dCBvcHRpbWl6ZVxuICBAbWVkaWEgKG1heC13aWR0aDogNzUwcHgpIHtcbiAgICAuYXJ0aXNhbi1zcG90bGlnaHQge1xuICAgICAgLmNvbC1tZC00IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgXG4gICAgICAuYXJ0aXNhbi1jYXJkIHtcbiAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgem9vbTogMC45O1xuICAgICAgICBcbiAgICAgICAgLmFydGlzYW4taW1hZ2Uge1xuICAgICAgICAgIHdpZHRoOiAxMjBweDtcbiAgICAgICAgICBoZWlnaHQ6IDEyMHB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5hcnRpc2FuLW5hbWUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmFydGlzYW4tc3BlY2lhbHR5IHtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5hcnRpc2FuLWV4cGVyaWVuY2Uge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLy8gU2hvcCBieSBPY2Nhc2lvbiAtIDIgQ29sdW1uIE1vYmlsZVxuICBAbWVkaWEgKG1heC13aWR0aDogNzUwcHgpIHtcbiAgICAuc2hvcC1ieS1vY2Nhc2lvbiB7XG4gICAgICAuY29sLW1kLTMge1xuICAgICAgICBmbGV4OiAwIDAgNTAlO1xuICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgXG4gICAgICAgIC5vY2Nhc2lvbi1jYXJkIHtcbiAgICAgICAgICBwYWRkaW5nOiAzMHB4IDE1cHg7XG4gICAgICAgICAgem9vbTogMC44NTtcbiAgICAgICAgICBcbiAgICAgICAgICAub2NjYXNpb24taWNvbiB7XG4gICAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICAgICAgIC5vY2Nhc2lvbi10aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICAgICAgIC5vY2Nhc2lvbi1zdWJ0aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAvLyBDYXJhdFggUHJvbWlzZSAtIFNpbmdsZSBjb2x1bW4gb24gbW9iaWxlXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NTBweCkge1xuICAgIC5jYXJhdHgtcHJvbWlzZSB7XG4gICAgICAuY29sLW1kLTQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICBcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucHJvbWlzZS1jYXJkIHtcbiAgICAgICAgICB6b29tOiAwLjk7XG4gICAgICAgICAgXG4gICAgICAgICAgLnByb21pc2UtaWNvbiB7XG4gICAgICAgICAgICB3aWR0aDogNzBweDtcbiAgICAgICAgICAgIGhlaWdodDogNzBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICAgICAgIC5wcm9taXNlLXRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgXG4gICAgICAgICAgLnByb21pc2UtZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLy8gUHJpdmF0ZSBTYWxlIC0gMiBDb2x1bW4gTW9iaWxlXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NTBweCkge1xuICAgIC5jdXJyZW50LW9mZmVycyB7XG4gICAgICAuY29sLW1kLTMge1xuICAgICAgICBmbGV4OiAwIDAgNTAlO1xuICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgICAgXG4gICAgICAgIC5zYWxlLXByb2R1Y3QtY2FyZCB7XG4gICAgICAgICAgem9vbTogMC44NTtcbiAgICAgICAgICBcbiAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogM3B4IDEwcHg7XG4gICAgICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgICAgICBsZWZ0OiAxMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLy8gR2VuZXJhbCBTZWN0aW9uIEFkanVzdG1lbnRzXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NTBweCkge1xuICAgIHNlY3Rpb24ge1xuICAgICAgcGFkZGluZzogNDBweCAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgIC5zZWN0aW9uLXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgfVxuICAgIFxuICAgIC50aXRsZS11bmRlcmxpbmUge1xuICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cbiAgICBcbiAgICAuc2VjdGlvbi1zdWJ0aXRsZSB7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgfVxuICAgIFxuICAgIC8vIE1ha2UgYWxsIGJ1dHRvbnMgc3RhY2sgb24gdmVyeSBzbWFsbCBzY3JlZW5zXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAuYnRuIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAvLyBWZXJ5IFNtYWxsIFNjcmVlbnMgKDMyMHB4IGFuZCBiZWxvdylcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDMyMHB4KSB7XG4gICAgLmhvbWUtaGVyby1zZWN0aW9uLWhvbWVwYWdlIHtcbiAgICAgIGhlaWdodDogMjUwcHg7XG4gICAgICBcbiAgICAgIC5iYW5uZXJ0ZXh0LWhlYWRpbmcge1xuICAgICAgICBmb250LXNpemU6IDIwcHggIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gVXNlIHNpbmdsZSBjb2x1bW4gZm9yIGV2ZXJ5dGhpbmcgb24gdmVyeSBzbWFsbCBzY3JlZW5zXG4gICAgLnNob3AtYnktY2F0ZWdvcnksXG4gICAgLmZlYXR1cmVkLWNvbGxlY3Rpb24sXG4gICAgLnNob3AtYnktb2NjYXNpb24sXG4gICAgLmN1cnJlbnQtb2ZmZXJzIHtcbiAgICAgIC5jb2wtbWQtNCxcbiAgICAgIC5jb2wtbWQtMyB7XG4gICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIFxuICAgICAgICAvLyBSZXNldCB6b29tIGZvciBzaW5nbGUgY29sdW1uXG4gICAgICAgIC5jYXRlZ29yeS1jYXJkLFxuICAgICAgICAuZmVhdHVyZWQtcHJvZHVjdC1jYXJkLFxuICAgICAgICAub2NjYXNpb24tY2FyZCxcbiAgICAgICAgLnNhbGUtcHJvZHVjdC1jYXJkIHtcbiAgICAgICAgICB6b29tOiAxO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEFuaW1hdGlvbnNcbkBrZXlmcmFtZXMgZmFkZUluVXAge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW4ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG4iLCIvKipcbiAqIFNob3AgUGFnZSBTdHlsZXNcbiAqIFN0eWxlcyBzcGVjaWZpYyB0byB0aGUgc2hvcC9jYXRhbG9nIHBhZ2VzXG4gKi9cblxuLnBhZ2VfaXNfc2hvcF9wYWdlIHtcbiAgLy8gU2hvcCBwYWdlIHdyYXBwZXJcbiAgLnNob3AtcGFnZSB7XG4gICAgbWluLWhlaWdodDogNjB2aDtcbiAgICBcbiAgICAvLyBQYWdlIGhlYWRlciB3aXRoIGljb25cbiAgICBoMSB7XG4gICAgICAudGV4dC1wdXJwbGUge1xuICAgICAgICBjb2xvcjogI2EzN2ViYTtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgLnRleHQtdGVhbCB7XG4gICAgICAgIGNvbG9yOiAjN2ViYWFkO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLy8gU29ydCBkcm9wZG93blxuICAuZHJvcGRvd24taXRlbS5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWxpZ2h0KTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIFxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAn4pyTJztcbiAgICAgIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICAgICAgY29sb3I6IHZhcigtLWJzLXN1Y2Nlc3MpO1xuICAgIH1cbiAgfVxuICBcbiAgLy8gVmlldyB0b2dnbGUgYnV0dG9uc1xuICAudmlldy10b2dnbGUtYnRuIHtcbiAgICAmLmRpc2FibGVkIHtcbiAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuICB9XG4gIFxuICAvLyBMaXN0IHZpZXcgc3BlY2lmaWMgc3R5bGVzXG4gIC5saXN0LXZpZXcge1xuICAgIC5jYXJkIHtcbiAgICAgIC8vIEhvdmVyIGVmZmVjdCByZW1vdmVkIGZvciBjbGVhbmVyIGRlc2lnblxuICAgIH1cbiAgfVxuICBcbiAgLy8gUHJvZHVjdHMgbG9hZGluZyBzdGF0ZVxuICAucHJvZHVjdHMtY29udGFpbmVyIHtcbiAgICAmLmxvYWRpbmcge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWluLWhlaWdodDogNDAwcHg7XG4gICAgICBcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICBtYXJnaW46IC0yMHB4IDAgMCAtMjBweDtcbiAgICAgICAgYm9yZGVyOiA0cHggc29saWQgI2YzZjNmMztcbiAgICAgICAgYm9yZGVyLXRvcDogNHB4IHNvbGlkIHZhcigtLWJzLXByaW1hcnkpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGFuaW1hdGlvbjogc3BpbiAxcyBsaW5lYXIgaW5maW5pdGU7XG4gICAgICAgIHotaW5kZXg6IDExO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLy8gRmlsdGVyIHNpZGViYXIgZW5oYW5jZW1lbnRzICBcbiAgLmZpbHRlci1zaWRlYmFyLWNhcmQge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAxcmVtO1xuICAgIFxuICAgIC5maWx0ZXItc2VjdGlvbiB7XG4gICAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKSAhaW1wb3J0YW50O1xuICAgICAgXG4gICAgICAuc29ydC1vcHRpb24sXG4gICAgICAuZGlhbW9uZC1zaGFwZS1vcHRpb24ge1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgICAgICAgXG4gICAgICAgICYuYWN0aXZlLFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KSAhaW1wb3J0YW50O1xuICAgICAgICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBcbiAgICAgIC5kaWFtb25kLXNoYXBlLW9wdGlvbiB7XG4gICAgICAgIGFzcGVjdC1yYXRpbzogMTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIFxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBcbiAgICAgIC8vIEZpbHRlciBjb3VudCBiYWRnZXNcbiAgICAgIGg2IC5maWx0ZXItY291bnQtYmFkZ2Uge1xuICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLy8gQWN0aXZlIGZpbHRlciB2aXN1YWwgZmVlZGJhY2tcbiAgLmZpbHRlci1hY3RpdmUge1xuICAgIC8vIFRleHQgaW5wdXRzIGFuZCBzZWxlY3RzXG4gICAgJi5mb3JtLWNvbnRyb2wsXG4gICAgJi5mb3JtLXNlbGVjdCB7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWJzLXByaW1hcnkpICFpbXBvcnRhbnQ7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSh2YXIoLS1icy1wcmltYXJ5LXJnYiksIDAuMTUpO1xuICAgIH1cbiAgICBcbiAgICAvLyBDaGVja2JveGVzIGNvbnRhaW5lclxuICAgICYuZm9ybS1jaGVjayB7XG4gICAgICAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIC8vIEZpbHRlciBmZWVkYmFjayB0cmFuc2l0aW9uc1xuICAuZm9ybS1jb250cm9sLFxuICAuZm9ybS1zZWxlY3QsXG4gIC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgfVxuICBcbiAgLy8gQWN0aXZlIGZpbHRlcnMgc3R5bGluZ1xuICAuYWN0aXZlLWZpbHRlcnMtY2FyZCB7XG4gICAgLmJhZGdlIHtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgXG4gICAgICBhIHtcbiAgICAgICAgb3BhY2l0eTogMC44O1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAvLyBQcmljZSByYW5nZSBzbGlkZXIgKGlmIHVzaW5nIGpRdWVyeSBVSSlcbiAgLnByaWNlLXJhbmdlLXNsaWRlciB7XG4gICAgbWFyZ2luOiAxcmVtIDAuNXJlbTtcbiAgICBcbiAgICAudWktc2xpZGVyLXJhbmdlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICAgIH1cbiAgICBcbiAgICAudWktc2xpZGVyLWhhbmRsZSB7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICAgICAgXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEodmFyKC0tYnMtcHJpbWFyeS1yZ2IpLCAwLjI1KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIC8vIE1vYmlsZSBmaWx0ZXIgYnV0dG9uXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5maWx0ZXItdG9nZ2xlLW1vYmlsZSB7XG4gICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgdG9wOiA3MHB4O1xuICAgICAgei1pbmRleDogMTAwO1xuICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICB9XG4gIH1cbn1cblxuLy8gTG9hZGluZyBzcGlubmVyIGFuaW1hdGlvblxuQGtleWZyYW1lcyBzcGluIHtcbiAgMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICAxMDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfVxufVxuXG4vLyBDdXN0b20gYmFkZ2UgY29sb3JzICh1c2VkIHRocm91Z2hvdXQgdGhlIGFwcClcbi5iZy1wdXJwbGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTM3ZWJhICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLmJnLXRlYWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2ViYWFkICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLnRleHQtcHVycGxlIHtcbiAgY29sb3I6ICNhMzdlYmEgIWltcG9ydGFudDtcbn1cblxuLnRleHQtdGVhbCB7XG4gIGNvbG9yOiAjN2ViYWFkICFpbXBvcnRhbnQ7XG59XG5cbi8vIEZpbHRlciBvZmZjYW52YXMgY3VzdG9taXphdGlvblxuI2ZpbHRlck9mZmNhbnZhcyB7XG4gIC5vZmZjYW52YXMtYm9keSB7XG4gICAgLy8gUmVtb3ZlIGNhcmQgc3R5bGluZyBpbiBtb2JpbGVcbiAgICAuZmlsdGVyLWZvcm0gLmNhcmQge1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgXG4gICAgICAuY2FyZC1ib2R5IHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIC8vIEFwcGx5IGJ1dHRvbiBmb3IgbW9iaWxlIChpZiBhZGRlZClcbiAgLmFwcGx5LWZpbHRlcnMtbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIGJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIG1hcmdpbjogMCAtMXJlbSAtMXJlbTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYnMtZ3JheS0zMDApO1xuICB9XG59XG5cbi8vIFJlc3BvbnNpdmUgYWRqdXN0bWVudHNcbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuICAucGFnZV9pc19zaG9wX3BhZ2Uge1xuICAgIC5zaG9wLXBhZ2Uge1xuICAgICAgLy8gU3RhY2sgaGVhZGVyIGVsZW1lbnRzIG9uIG1vYmlsZVxuICAgICAgLnBhZ2UtaGVhZGVyIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgICAgICAgZ2FwOiAxcmVtO1xuICAgICAgICBcbiAgICAgICAgaDEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZHJvcGRvd24ge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIFxuICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBcbiAgICAgIC8vIEZ1bGwgd2lkdGggdmlldyB0b2dnbGUgb24gbW9iaWxlXG4gICAgICAudmlldy10b2dnbGUtYnRuIHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIvKipcbiAqIFNob3BwaW5nIENhcnQgUGFnZSBTdHlsZXNcbiAqIFN0eWxlcyBzcGVjaWZpYyB0byB0aGUgc2hvcHBpbmcgY2FydCBwYWdlc1xuICovXG5cbi5wYWdlX2lzX2NhcnRfcGFnZSxcbi5wYWdlX2lzX2NhcnRfdW5pZmllZF9wYWdlIHtcbiAgXG4gIC8vIEFsZXJ0IHNwYWNpbmcgZml4IGZvciBtdWx0aXBsZSBzZWxsZXIgbm90aWNlXG4gIC5jYXJkLWJvZHkgPiAuYWxlcnQge1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHggIWltcG9ydGFudDtcbiAgfVxuICAvLyBDdXN0b20gYmFkZ2UgY29sb3JzIGZvciBwcm9kdWN0IHR5cGVzXG4gIC5iZy1wdXJwbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNhMzdlYmEgIWltcG9ydGFudDtcbiAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgfVxuICBcbiAgLmJnLXRlYWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3ZWJhYWQgIWltcG9ydGFudDtcbiAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgfVxuICBcbiAgLy8gQ2FydCBxdWFudGl0eSBjb250cm9sc1xuICAuY2FydC1xdWFudGl0eS1jb250cm9sIHtcbiAgICBtYXgtd2lkdGg6IDEyMHB4O1xuICAgIFxuICAgIC5idG4ge1xuICAgICAgd2lkdGg6IDM4cHg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgXG4gICAgICBpIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIGJvcmRlci1jb2xvcjogI2RlZTJlNjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIC8vIEVuaGFuY2VkIGNhcnQgdGFibGUgc3R5bGluZyB3aXRoIGZpeGVkIGNvbHVtbiB3aWR0aHNcbiAgLnRhYmxlIHtcbiAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICAgIFxuICAgIC5hbGlnbi1taWRkbGUge1xuICAgICAgdGQge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBEZWZpbmUgY29sdW1uIHdpZHRocyBmb3IgY29uc2lzdGVuY3kgYWNyb3NzIHNlbGxlciB0YWJsZXNcbiAgICB0aGVhZCB0aCB7XG4gICAgICAvLyBQcm9kdWN0IGNvbHVtbiAoaW1hZ2UgKyB0aXRsZSkgLSBmbGV4aWJsZSB3aWR0aFxuICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cbiAgICAgIFxuICAgICAgLy8gUHJpY2UgY29sdW1uIC0gMTAwcHhcbiAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgfVxuICAgICAgXG4gICAgICAvLyBRdWFudGl0eSBjb2x1bW4gLSAxMjVweFxuICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICB3aWR0aDogMTI1cHg7XG4gICAgICB9XG4gICAgICBcbiAgICAgIC8vIFRvdGFsIGNvbHVtbiAtIDEwMHB4XG4gICAgICAmOm50aC1jaGlsZCg0KSB7XG4gICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgLy8gQWN0aW9uIGNvbHVtbiAtIDYwcHhcbiAgICAgICY6bnRoLWNoaWxkKDUpIHtcbiAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIEFwcGx5IHNhbWUgd2lkdGhzIHRvIHRkIGVsZW1lbnRzXG4gICAgdGQge1xuICAgICAgLy8gUHJvZHVjdCBjb2x1bW5cbiAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgLy8gRml4ZWQgd2lkdGggZm9yIGltYWdlIGNvbnRhaW5lclxuICAgICAgICAubWUtMyB7XG4gICAgICAgICAgd2lkdGg6IDkwcHg7XG4gICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIFxuICAgICAgLy8gUHJpY2UgY29sdW1uXG4gICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICB9XG4gICAgICBcbiAgICAgIC8vIFF1YW50aXR5IGNvbHVtblxuICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICB3aWR0aDogMTI1cHg7XG4gICAgICAgIC5jYXJ0LXF1YW50aXR5LWNvbnRyb2wge1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIG1heC13aWR0aDogMTIwcHg7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIFxuICAgICAgLy8gVG90YWwgY29sdW1uICBcbiAgICAgICY6bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgLy8gQWN0aW9uIGNvbHVtblxuICAgICAgJjpudGgtY2hpbGQoNSkge1xuICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBQcm9kdWN0IGltYWdlIHN0eWxpbmdcbiAgICBpbWcge1xuICAgICAgLy8gSG92ZXIgZWZmZWN0IHJlbW92ZWRcbiAgICB9XG4gICAgXG4gICAgLy8gUmVtb3ZlIGJ1dHRvbiBzdHlsaW5nXG4gICAgLnJlbW92ZS1pdGVtLWJ0biB7XG4gICAgICAvLyBIb3ZlciBlZmZlY3QgcmVtb3ZlZFxuICAgIH1cbiAgfVxuICBcbiAgLy8gQ2FydCBzdW1tYXJ5IGVuaGFuY2VtZW50c1xuICAuY2FyZCB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50OyAvLyBTcXVhcmUgY29ybmVyc1xuICAgIFxuICAgICYucG9zaXRpb24tc3RpY2t5IHtcbiAgICAgIHotaW5kZXg6IDEwMjA7XG4gICAgfVxuICAgIFxuICAgIC8vIE1ha2UgY2FydCBzdW1tYXJ5IHN0aWNreSBvbiBkZXNrdG9wXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAmLmNhcnQtc3VtbWFyeSB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICAgIHRvcDogMnJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICYuYmctcHJpbWFyeSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMxZTFlNTYgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIFxuICAgICAgICBoNSB7XG4gICAgICAgICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07IC8vIEJpZ2dlciBjYXJ0IHN1bW1hcnkgdGl0bGVcbiAgICAgICAgICBcbiAgICAgICAgICBpIHtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBQcm9tbyBjb2RlIHNlY3Rpb25cbiAgICAuYWxlcnQtc3VjY2VzcyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1LCAxMzUsIDg0LCAwLjEpICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1LCAxMzUsIDg0LCAwLjIpICFpbXBvcnRhbnQ7XG4gICAgICBcbiAgICAgIC5idG4tb3V0bGluZS1kYW5nZXIge1xuICAgICAgICAtLWJzLWJ0bi1ib3JkZXItd2lkdGg6IDFweDtcbiAgICAgICAgLS1icy1idG4taG92ZXItYmc6ICNkYzM1NDU7XG4gICAgICAgIC0tYnMtYnRuLWhvdmVyLWNvbG9yOiB3aGl0ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gRW5oYW5jZWQgdG90YWwgc2VjdGlvblxuICAgIC5iZy1saWdodCB7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZjhmOWZhIDAlLCAjZTllY2VmIDEwMCUpICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgIH1cbiAgICBcbiAgICAvLyBDaGVja291dCBidXR0b24gZW5oYW5jZW1lbnRcbiAgICAuYnRuLXN1Y2Nlc3Mge1xuICAgICAgYmFja2dyb3VuZDogIzMyMzI4YSAhaW1wb3J0YW50OyAvLyBCcmlnaHRlciBjb21wbGVtZW50YXJ5IGNvbG9yIHRvIG5hdnlcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBmb250LXNpemU6IDAuOTVyZW07IC8vIFNsaWdodGx5IHNtYWxsZXIgZm9udFxuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMS41cmVtO1xuICAgICAgXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzQ1NDVhOCAhaW1wb3J0YW50OyAvLyBFdmVuIGJyaWdodGVyIG9uIGhvdmVyXG4gICAgICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDUwLCA1MCwgMTM4LCAwLjI1KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIC8vIEVtcHR5IGNhcnQgc3RhdGVcbiAgLmNhcmQtYm9keSB7XG4gICAgJi50ZXh0LWNlbnRlciB7XG4gICAgICAuZmEtc2hvcHBpbmctY2FydCB7XG4gICAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgICAgfVxuICAgICAgXG4gICAgICAuYnRuLXByaW1hcnkge1xuICAgICAgICBwYWRkaW5nOiAwLjc1cmVtIDJyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIC8vIFJlc3BvbnNpdmUgYWRqdXN0bWVudHNcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgLnBvc2l0aW9uLXN0aWNreSB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgIH1cbiAgICBcbiAgICAuY2FyZC1mb290ZXIge1xuICAgICAgLmQtZmxleCB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogMXJlbTtcbiAgICAgICAgXG4gICAgICAgIC5idG4ge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICBAbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcbiAgICAudGFibGUtcmVzcG9uc2l2ZSB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgXG4gICAgICAuYmFkZ2Uge1xuICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICB9XG4gICAgICBcbiAgICAgIC5jYXJ0LXF1YW50aXR5LWNvbnRyb2wge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMHB4O1xuICAgICAgICBcbiAgICAgICAgLmJ0biB7XG4gICAgICAgICAgd2lkdGg6IDMycHg7XG4gICAgICAgICAgcGFkZGluZzogMC4yNXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi8qKlxuICogSXRlbSBEZXRhaWxzIFBhZ2UgLSBDb21wbGV0ZSBSZWRlc2lnblxuICogQW1hem9uL2VCYXkgaW5zcGlyZWQgbGF5b3V0IHdpdGggcHJvcGVyIHZpc3VhbCBoaWVyYXJjaHlcbiAqIEJvZHkgY2xhc3M6IC5wYWdlLWlzLWl0ZW0tZGV0YWlscy1wYWdlXG4gKi9cblxuLnBhZ2UtaXMtaXRlbS1kZXRhaWxzLXBhZ2Uge1xuICAvLyBCYXNlIGNvbnRhaW5lciBhZGp1c3RtZW50cyBmb3IgdGhlIG1haW4gcGFnZSBib2R5IG9ubHlcbiAgLmNvbnRhaW5lci5wYWdlLWJvZHkge1xuICAgIG1heC13aWR0aDogMTIwMHB4O1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIE1haW4gUHJvZHVjdCBTZWN0aW9uXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAucHJvZHVjdC1tYWluIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZ2FwOiAzMHB4O1xuICAgIH1cbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBHYWxsZXJ5IFNlY3Rpb24gKExlZnQpXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAucHJvZHVjdC1nYWxsZXJ5IHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGZsZXg6IDAgMCA0NTBweDtcbiAgICAgIG1heC13aWR0aDogNDUwcHg7XG4gICAgfVxuXG4gICAgLy8gTWFpbiBpbWFnZSBjb250YWluZXJcbiAgICAubWFpbi1pbWFnZS1jb250YWluZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgLy8gQXNwZWN0IHJhdGlvIGJveCBmb3IgY29uc2lzdGVudCBoZWlnaHRcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nLXRvcDogMTAwJTsgLy8gMToxIGFzcGVjdCByYXRpb1xuICAgICAgfVxuXG4gICAgICAubWFpbi1pbWFnZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB9XG5cbiAgICAgIC8vIFpvb20gaWNvbiBvdmVybGF5XG4gICAgICAuem9vbS1oaW50IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDEwcHg7XG4gICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBUaHVtYm5haWwgZ3JpZFxuICAgIC50aHVtYm5haWwtZ3JpZCB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maWxsLCBtaW5tYXgoNzBweCwgMWZyKSk7XG4gICAgICBnYXA6IDhweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG5cbiAgICAgIC50aHVtYm5haWwtaXRlbSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2UwZTBlMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgLy8gU3F1YXJlIGFzcGVjdCByYXRpb1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgcGFkZGluZzogM3B4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogIzFlMWU1NjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogIzIzMmYzZTtcbiAgICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBQREYgcGxhY2Vob2xkZXJcbiAgICAgICAgJi5wZGYtcGxhY2Vob2xkZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNmNWY1ZjU7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgICAgLnBkZi1pY29uIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICAgIGNvbG9yOiAjNjY2O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFZpZGVvIHBsYWNlaG9sZGVyXG4gICAgICAgICYudmlkZW8tcGxhY2Vob2xkZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICMwMDA7XG5cbiAgICAgICAgICAucGxheS1pY29uIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRG9jdW1lbnQvTWVkaWEgc2VjdGlvblxuICAgIC5tZWRpYS1zZWN0aW9uIHtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTBlMGUwO1xuICAgICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuXG4gICAgICBoNiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgY29sb3I6ICMzMzM7XG4gICAgICB9XG5cbiAgICAgIC5tZWRpYS1wbGFjZWhvbGRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmOGY4Zjg7XG4gICAgICAgIGJvcmRlcjogMXB4IGRhc2hlZCAjY2NjO1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAjNjY2O1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbiAgICAgICAgaSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZm9udC1zaXplOiAzMnB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgY29sb3I6ICM5OTk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gUHJvZHVjdCBJbmZvIFNlY3Rpb24gKFJpZ2h0KVxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLnByb2R1Y3QtaW5mbyB7XG4gICAgZmxleDogMTtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlMGUwZTA7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIHBhZGRpbmc6IDIwcHg7XG5cbiAgICAvLyBUaXRsZSBzZWN0aW9uXG4gICAgLnByb2R1Y3QtdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgY29sb3I6ICMwZjExMTE7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2UwZTBlMDtcbiAgICB9XG5cbiAgICAvLyBQcmljZSBzZWN0aW9uXG4gICAgLnByaWNlLXNlY3Rpb24ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlMGUwZTA7XG5cbiAgICAgIC5wcmljZS1yb3cge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gICAgICAgIGdhcDogMTVweDtcblxuICAgICAgICAuY3VycmVudC1wcmljZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICAgIGNvbG9yOiBibGFjaztcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLm9yaWdpbmFsLXByaWNlIHtcbiAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgY29sb3I6ICM1NjU5NTk7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gICAgICAgIH1cblxuICAgICAgICAuZGlzY291bnQtYmFkZ2Uge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNjYzBjMzk7XG4gICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgIHBhZGRpbmc6IDRweCA4cHg7XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnByaWNlLWRldGFpbHMge1xuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgY29sb3I6ICMwMDcxODU7XG5cbiAgICAgICAgLnNoaXBwaW5nLWluZm8ge1xuICAgICAgICAgIGNvbG9yOiAjNTY1OTU5O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIFJldmlld3Mgc3VtbWFyeSBpbmxpbmUgd2l0aCBwcmljZVxuICAgICAgLnJldmlld3Mtc3VtbWFyeS1pbmxpbmUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG5cbiAgICAgICAgLnJldmlld3MtbGluayB7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIGNvbG9yOiAjMDA3MTg1O1xuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogI2M0NTUwMDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5zdGFycyB7XG4gICAgICAgICAgICBjb2xvcjogIzFlMWU1NjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogM3B4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5yZXZpZXctY291bnQge1xuICAgICAgICAgICAgY29sb3I6ICMwMDcxODU7XG4gICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2VsbGVyIGNhcmRcbiAgICAuc2VsbGVyLWNhcmQge1xuICAgICAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgLnNlbGxlci1oZWFkZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IDEycHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbiAgICAgICAgLnNlbGxlci1hdmF0YXIge1xuICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2RkZDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zZWxsZXItaW5mbyB7XG4gICAgICAgICAgZmxleDogMTtcblxuICAgICAgICAgIC5zZWxsZXItbmFtZSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgY29sb3I6ICMwZjExMTE7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycHg7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjYzQ1NTAwO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnNlbGxlci1yYXRpbmcge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgY29sb3I6ICM1NjU5NTk7XG5cbiAgICAgICAgICAgIC5zdGFycyB7XG4gICAgICAgICAgICAgIGNvbG9yOiAjMWUxZTU2O1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnNlbGxlci1kZXRhaWxzIHtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICBjb2xvcjogIzU2NTk1OTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcblxuICAgICAgICAuZGV0YWlsLXJvdyB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogM3B4O1xuXG4gICAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgIGNvbG9yOiAjMGYxMTExO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFN0b2NrIHN0YXR1c1xuICAgIC5zdG9jay1zdGF0dXMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcblxuICAgICAgJi5pbi1zdG9jayB7XG4gICAgICAgIGNvbG9yOiAjMDA3NjAwO1xuICAgICAgfVxuXG4gICAgICAmLmxvdy1zdG9jayB7XG4gICAgICAgIGNvbG9yOiAjYjEyNzA0O1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgfVxuXG4gICAgICAmLm91dC1vZi1zdG9jayB7XG4gICAgICAgIGNvbG9yOiAjYjEyNzA0O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFByb2R1Y3Qgb3B0aW9uc1xuICAgIC5wcm9kdWN0LW9wdGlvbnMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgLm9wdGlvbi1ncm91cCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2UwZTBlMDtcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAub3B0aW9uLWxhYmVsIHtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICBjb2xvcjogIzBmMTExMTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBDb2xvciBzd2F0Y2hlc1xuICAgICAgICAuY29sb3Itb3B0aW9ucyB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBnYXA6IDhweDtcbiAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgICAgICAuY29sb3Itc3dhdGNoIHtcbiAgICAgICAgICAgIHdpZHRoOiAzMnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzMnB4O1xuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2UwZTBlMDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICMxZTFlNTY7XG5cbiAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwi4pyTXCI7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgdGV4dC1zaGFkb3c6IDAgMCAycHggcmdiYSgwLCAwLCAwLCAwLjUpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICMyMzJmM2U7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gU2l6ZSBzZWxlY3RvclxuICAgICAgICBzZWxlY3QuZm9ybS1zZWxlY3Qge1xuICAgICAgICAgIG1heC13aWR0aDogMjAwcHg7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAjODg4YzhjO1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDVweCByZ2JhKDE1LCAxNywgMTcsIDAuMTUpO1xuXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICNlNzc2MDA7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgM3B4IDJweCByZ2JhKDIyOCwgMTIxLCAxNywgMC41KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBDdXN0b20gb3B0aW9uIHBsYWNlaG9sZGVyXG4gICAgICAgIC5jdXN0b20tb3B0aW9uLXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjVmNWY1O1xuICAgICAgICAgIGJvcmRlcjogMXB4IGRhc2hlZCAjY2NjO1xuICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGNvbG9yOiAjNjY2O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFF1YW50aXR5IHNlbGVjdG9yXG4gICAgLnF1YW50aXR5LXNlY3Rpb24ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgLnF1YW50aXR5LWxhYmVsIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgICB9XG5cbiAgICAgIC5xdWFudGl0eS1zZWxlY3RvciB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjODg4YzhjO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgLnF0eS1idG4ge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNmMGYyZjI7XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgIHBhZGRpbmc6IDhweCAxMnB4O1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgY29sb3I6ICMwZjExMTE7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNlM2U2ZTY7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2RkZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucXR5LWlucHV0IHtcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjdlNjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBY3Rpb24gYnV0dG9uc1xuICAgIC5hY3Rpb24tYnV0dG9ucyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2UwZTBlMDtcblxuICAgICAgLy8gTGV0IEJvb3RzdHJhcCBoYW5kbGUgYWxsIGJ1dHRvbiBzdHlsaW5nXG4gICAgICAvLyBUaGUgYnV0dG9ucyB1c2Ugc3RhbmRhcmQgQm9vdHN0cmFwIGNsYXNzZXM6XG4gICAgICAvLyAtIGJ0biBidG4tcHJpbWFyeSBidG4tbGcgZm9yIEFkZCB0byBDYXJ0XG4gICAgICAvLyAtIGJ0biBidG4tb3V0bGluZS1zZWNvbmRhcnkgYnRuLWxnIGZvciBXaXNobGlzdFxuICAgIH1cblxuICAgIC8vIFRydXN0IGJhZGdlc1xuICAgIC50cnVzdC1iYWRnZXMge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMTAwcHgsIDFmcikpO1xuICAgICAgZ2FwOiAxNXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgLmJhZGdlLWl0ZW0ge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgaSB7XG4gICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgIGNvbG9yOiAjMWUxZTU2O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5iYWRnZS10ZXh0IHtcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgY29sb3I6ICM1NjU5NTk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBQcm9kdWN0IERldGFpbHMgU2VjdGlvblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLnByb2R1Y3QtZGV0YWlscy1zZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTBlMGUwO1xuICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG5cbiAgICAuZGV0YWlscy1jb250YWluZXIge1xuICAgICAgbWF4LXdpZHRoOiAxMDAwcHg7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG5cbiAgICAvLyBTZWN0aW9uIGhlYWRlcnNcbiAgICAuc2VjdGlvbi1oZWFkZXIge1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGNvbG9yOiAjMGYxMTExO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMxZTFlNTY7XG4gICAgfVxuXG4gICAgLy8gS2V5IGZlYXR1cmVzXG4gICAgLmtleS1mZWF0dXJlcyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gICAgICB1bCB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcblxuICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIuKck1wiO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIGNvbG9yOiAjMWUxZTU2O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGVzY3JpcHRpb25cbiAgICAucHJvZHVjdC1kZXNjcmlwdGlvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuODtcbiAgICAgIGNvbG9yOiAjMGYxMTExO1xuXG4gICAgICBwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBWaWRlbyBTZWN0aW9uXG4gICAgLnZpZGVvLXNlY3Rpb24ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcblxuICAgICAgLnZpZGVvLWNvbnRhaW5lciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgXG4gICAgICAgIC8vIFRoZSB2aWRlby1lbWJlZC13cmFwcGVyIGlzIGdlbmVyYXRlZCBieSBWaWRlb0VtYmVkSGVscGVyXG4gICAgICAgIC52aWRlby1lbWJlZC13cmFwcGVyIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgXG4gICAgICAgICAgLy8gTVA0IHZpZGVvIHBsYXllciBzcGVjaWZpYyBzdHlsZXNcbiAgICAgICAgICAmLm1wNC12aWRlby13cmFwcGVyIHtcbiAgICAgICAgICAgIC52aWRlby1qcyB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAvLyBPdmVycmlkZSBWaWRlby5qcyBkZWZhdWx0IGJpZyBwbGF5IGJ1dHRvblxuICAgICAgICAgICAgICAudmpzLWJpZy1wbGF5LWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzZW07XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMS41ZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6IDNlbTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjNlbTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDQzLCA1MSwgNjMsIDAuNyk7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAwLjA2NjY2ZW0gc29saWQgI2ZmZjtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgIC8vIENvbnRyb2wgYmFyIHN0eWxpbmdcbiAgICAgICAgICAgICAgLnZqcy1jb250cm9sLWJhciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg0MywgNTEsIDYzLCAwLjcpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU3BlY2lmaWNhdGlvbnMgdGFibGVcbiAgICAuc3BlY2lmaWNhdGlvbnMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcblxuICAgICAgLnNwZWMtdGFibGUge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcblxuICAgICAgICB0ciB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlMGUwZTA7XG5cbiAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0aCB7XG4gICAgICAgICAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgICAgICAgICBwYWRkaW5nOiAxMnB4O1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgY29sb3I6ICMwZjExMTE7XG4gICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRkIHtcbiAgICAgICAgICBwYWRkaW5nOiAxMnB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICBjb2xvcjogIzU2NTk1OTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNoaXBwaW5nIGluZm8gYm94XG4gICAgLnNoaXBwaW5nLXJldHVybnMtYm94IHtcbiAgICAgIGJhY2tncm91bmQ6ICNmNWY3ZmE7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZDVkOWQ5O1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG5cbiAgICAgIC5ib3gtaGVhZGVyIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBjb2xvcjogIzBmMTExMTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcblxuICAgICAgICBpIHtcbiAgICAgICAgICBjb2xvcjogIzFlMWU1NjtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuaW5mby1ncmlkIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgyNTBweCwgMWZyKSk7XG4gICAgICAgIGdhcDogMjBweDtcblxuICAgICAgICAuaW5mby1pdGVtIHtcbiAgICAgICAgICBoNiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgY29sb3I6ICMwZjExMTE7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdWwge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICBjb2xvcjogIzU2NTk1OTtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwi4oCiXCI7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM4ODg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gVGFicyBTZWN0aW9uIChSZXZpZXdzICYgUSZBKVxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLnRhYnMtc2VjdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcblxuICAgIC5uYXYtdGFicyB7XG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2UwZTBlMDtcblxuICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgY29sb3I6ICM1NjU5NTk7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBwYWRkaW5nOiAxMnB4IDIwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogIzBmMTExMTtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgIGNvbG9yOiAjMGYxMTExO1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICMxZTFlNTY7XG4gICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC50YWItY29udGVudCB7XG4gICAgICBwYWRkaW5nOiAzMHB4IDA7XG5cbiAgICAgIC8vIFJldmlld3MgdGFiXG4gICAgICAucmV2aWV3cy1jb250ZW50IHtcbiAgICAgICAgLnJldmlldy1zdW1tYXJ5IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG5cbiAgICAgICAgICAuYXZlcmFnZS1yYXRpbmcge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBnYXA6IDE1cHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuXG4gICAgICAgICAgICAucmF0aW5nLW51bWJlciB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogNDhweDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgICAgY29sb3I6ICMwZjExMTE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zdGFycyB7XG4gICAgICAgICAgICAgIGNvbG9yOiAjMWUxZTU2O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5yZXZpZXctY291bnQge1xuICAgICAgICAgICAgICBjb2xvcjogIzU2NTk1OTtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5yZXZpZXctaXRlbSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlMGUwZTA7XG4gICAgICAgICAgcGFkZGluZzogMjBweCAwO1xuXG4gICAgICAgICAgLnJldmlldy1oZWFkZXIge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbiAgICAgICAgICAgIC5yZXZpZXdlci1uYW1lIHtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgY29sb3I6ICMwZjExMTE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5yZXZpZXctZGF0ZSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgICAgY29sb3I6ICM1NjU5NTk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnJldmlldy1yYXRpbmcge1xuICAgICAgICAgICAgY29sb3I6ICMxZTFlNTY7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5yZXZpZXctdGV4dCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICAgICAgY29sb3I6ICMwZjExMTE7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIFEmQSB0YWJcbiAgICAgIC5xYS1jb250ZW50IHtcbiAgICAgICAgLmFzay1xdWVzdGlvbi1ib3gge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG4gICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcblxuICAgICAgICAgIHRleHRhcmVhIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzg4OGM4YztcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG5cbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICNlNzc2MDA7XG4gICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAzcHggMnB4IHJnYmEoMjI4LCAxMjEsIDE3LCAwLjUpO1xuICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5xYS1pdGVtIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2UwZTBlMDtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4IDA7XG5cbiAgICAgICAgICAvLyBQcml2YXRlIHJlc3BvbnNlIHN0eWxpbmdcbiAgICAgICAgICAmLnByaXZhdGUtcmVzcG9uc2Uge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAjNmM3NTdkO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAucHJpdmF0ZS1sYWJlbCB7XG4gICAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnF1ZXN0aW9uIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBjb2xvcjogIzBmMTExMTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICAgIGNvbG9yOiAjNTY1OTU5O1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLnF1ZXN0aW9uLW1ldGEge1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgIGNvbG9yOiAjOTk5O1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuYW5zd2VyIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICAgIGNvbG9yOiAjNTY1OTU5O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICBjb2xvcjogIzBmMTExMTtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5hbnN3ZXItbWV0YSB7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgICAgY29sb3I6ICM5OTk7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIFJlbGF0ZWQgUHJvZHVjdHNcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC5yZWxhdGVkLXByb2R1Y3RzIHtcbiAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZTBlMGUwO1xuXG4gICAgaDMge1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGNvbG9yOiAjMGYxMTExO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG5cbiAgICAucHJvZHVjdHMtZ3JpZCB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maWxsLCBtaW5tYXgoMjAwcHgsIDFmcikpO1xuICAgICAgZ2FwOiAyMHB4O1xuXG4gICAgICAucHJvZHVjdC1jYXJkIHtcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNlMGUwZTA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogI2M0NTUwMDtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnByb2R1Y3QtaW1hZ2Uge1xuICAgICAgICAgIGhlaWdodDogMTUwcHg7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnByb2R1Y3QtbmFtZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIGNvbG9yOiAjMGYxMTExO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICBtaW4taGVpZ2h0OiA0MHB4O1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGNvbG9yOiAjYzQ1NTAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9kdWN0LXByaWNlIHtcbiAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgY29sb3I6ICNiMTI3MDQ7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBNb2JpbGUgU3R5bGVzXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAucHJvZHVjdC1tYWluIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuXG4gICAgLnByb2R1Y3QtZ2FsbGVyeSB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAvLyBNb2JpbGUgc3dpcGUgZ2FsbGVyeVxuICAgICAgLm1haW4taW1hZ2UtY29udGFpbmVyIHtcbiAgICAgICAgdG91Y2gtYWN0aW9uOiBwYW4teSBwaW5jaC16b29tO1xuICAgICAgfVxuXG4gICAgICAudGh1bWJuYWlsLWdyaWQge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg2LCAxZnIpO1xuXG4gICAgICAgIC50aHVtYm5haWwtaXRlbSB7XG4gICAgICAgICAgJjpudGgtY2hpbGQobiArIDcpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IC8vIFNob3cgb25seSA2IG9uIG1vYmlsZVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5wcm9kdWN0LWluZm8ge1xuICAgICAgLnByb2R1Y3QtdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICB9XG5cbiAgICAgIC5wcmljZS1zZWN0aW9uIC5jdXJyZW50LXByaWNlIHtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIENvbGxhcHNpYmxlIHNlY3Rpb25zIG9uIG1vYmlsZVxuICAgIC5wcm9kdWN0LWRldGFpbHMtc2VjdGlvbiB7XG4gICAgICAuY29sbGFwc2libGUtc2VjdGlvbiB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTBlMGUwO1xuXG4gICAgICAgIC5zZWN0aW9uLXRvZ2dsZSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4IDA7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICAgLnNlY3Rpb24tdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIGNvbG9yOiAjMGYxMTExO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC50b2dnbGUtaWNvbiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBjb2xvcjogIzU2NTk1OTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuY29sbGFwc2VkIC50b2dnbGUtaWNvbiB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zZWN0aW9uLWNvbnRlbnQge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuXG4gICAgICAgICAgJi5jb2xsYXBzZTpub3QoLnNob3cpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgLmNvbnRhaW5lci5wYWdlLWJvZHkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICB9XG5cbiAgICAucHJvZHVjdC1nYWxsZXJ5IC50aHVtYm5haWwtZ3JpZCB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpO1xuXG4gICAgICAudGh1bWJuYWlsLWl0ZW0ge1xuICAgICAgICAmOm50aC1jaGlsZChuICsgNSkge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IC8vIFNob3cgb25seSA0IG9uIHNtYWxsIG1vYmlsZVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnJlbGF0ZWQtcHJvZHVjdHMgLnByb2R1Y3RzLWdyaWQge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgIGdhcDogMTBweDtcbiAgICB9XG4gIH1cbiAgXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBQcm9kdWN0IEluZm8gUGFkZGluZyBmb3IgTGFyZ2UgU2NyZWVuc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgIC5wcm9kdWN0LWluZm8ge1xuICAgICAgcGFkZGluZzogMjVweDtcbiAgICB9XG4gIH1cbiAgXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBTZWxlY3Rpb24gRWxlbWVudHMgTWF4IFdpZHRoXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAuc2VsZWN0aW9uIHtcbiAgICBtYXgtd2lkdGg6IDUwMHB4O1xuICB9XG4gIFxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gU2VsZWN0MiBEcm9wZG93biBBZGp1c3RtZW50c1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gRml4IHZlcnRpY2FsIGFsaWdubWVudCBvZiBTZWxlY3QyIHJlbmRlcmVkIHRleHQgb24gaXRlbSBkZXRhaWxzIHBhZ2VcbiAgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IHtcbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gICAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IC03cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAqIENoZWNrb3V0IFBhZ2UgU3R5bGVzXG4gKiBCb290c3RyYXAgNSBlbmhhbmNlbWVudHMgZm9yIHNpbmdsZSBwYWdlIGNoZWNrb3V0XG4gKi9cblxuLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSB7XG4gICAgLnN0aWNreS10b3Age1xuICAgICAgICBwb3NpdGlvbjogc3RpY2t5ICFpbXBvcnRhbnQ7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICB0b3A6IDIwcHg7IC8vIE1vdmVkIGZyb20gaW5saW5lIHN0eWxlXG4gICAgfVxuICAgIFxuICAgIC8vIEluaXRpYWxseSBoaWRkZW4gZWxlbWVudHNcbiAgICAjYWNjb3VudC1jcmVhdGlvbi1maWVsZHMge1xuICAgICAgICBkaXNwbGF5OiBub25lOyAvLyBNb3ZlZCBmcm9tIGlubGluZSBzdHlsZVxuICAgIH1cbiAgICBcbiAgICAjc2hpcHBpbmctYWRkcmVzcy1zZWN0aW9uIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgLy8gTW92ZWQgZnJvbSBpbmxpbmUgc3R5bGVcbiAgICB9XG4gICAgXG4gICAgLy8gT3JkZXIgc3VtbWFyeSBlbmhhbmNlbWVudHNcbiAgICAub3JkZXItc3VtbWFyeSB7XG4gICAgICAgIC5jYXJkIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDAsIDAsIDAsIDAuMTI1KSwgMCAwLjEyNXJlbSAwLjI1cmVtIHJnYmEoMCwgMCwgMCwgMC4wNzUpO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2VkNGRhO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvLyBDYXJ0IGl0ZW1zIHN0eWxpbmdcbiAgICAgICAgLmJvcmRlci1ib3R0b206bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gRm9ybSBzZWN0aW9uIGVuaGFuY2VtZW50c1xuICAgIC5jYXJkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2VkNGRhO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAuMTI1cmVtIDAuMjVyZW0gcmdiYSgwLCAwLCAwLCAwLjA3NSk7XG4gICAgICAgIFxuICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2VkNGRhO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM0OTUwNTc7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBBZGRyZXNzIHZlcmlmaWNhdGlvbiBzdHlsaW5nXG4gICAgLmFsZXJ0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMC43NXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgXG4gICAgICAgICYuYWxlcnQtc3VjY2VzcyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDFlY2YxO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjYmVlNWViO1xuICAgICAgICAgICAgY29sb3I6ICMwYzU0NjA7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYuYWxlcnQtd2FybmluZyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmM2NkO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZmZlYWE3O1xuICAgICAgICAgICAgY29sb3I6ICM4NTY0MDQ7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYuYWxlcnQtZGFuZ2VyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGQ3ZGE7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICNmNWM2Y2I7XG4gICAgICAgICAgICBjb2xvcjogIzcyMWMyNDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBQYXltZW50IG1ldGhvZCBzdHlsaW5nIC0gb25seSBhcHBseSBib3JkZXIgdG8gcGF5bWVudCBtZXRob2QgZm9ybSBjaGVja3NcbiAgICAjcGF5bWVudC1tZXRob2RzIC5mb3JtLWNoZWNrIHtcbiAgICAgICAgcGFkZGluZzogMC43NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyLjI1cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjYWRiNWJkO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTEuNXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuMjVyZW07XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5mb3JtLWNoZWNrLWlucHV0OmNoZWNrZWQgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIEdlbmVyYWwgZm9ybS1jaGVjayBzdHlsaW5nIChmb3IgY2hlY2tib3hlcy9yYWRpb3Mgd2l0aG91dCBib3JkZXJzKVxuICAgIC5mb3JtLWNoZWNrIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgXG4gICAgICAgIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMS41cmVtO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NlZDRkYTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJjpjaGVja2VkIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKHZhcigtLWJzLXByaW1hcnktcmdiKSwgMC4yNSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIEFjY291bnQgY3JlYXRpb24gZmllbGRzIGFuaW1hdGlvblxuICAgICNhY2NvdW50LWNyZWF0aW9uLWZpZWxkcyB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICAgIH1cbiAgICBcbiAgICAvLyBTaGlwcGluZyBhZGRyZXNzIHNlY3Rpb24gYW5pbWF0aW9uXG4gICAgI3NoaXBwaW5nLWFkZHJlc3Mtc2VjdGlvbiB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICAgIH1cbiAgICBcbiAgICAvLyBTYXZlZCBhZGRyZXNzZXMgc2VjdGlvbiBhbmltYXRpb25cbiAgICAjc2F2ZWQtYWRkcmVzc2VzLXNlY3Rpb24ge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICB9XG4gICAgXG4gICAgLy8gUGxhY2Ugb3JkZXIgYnV0dG9uIGVuaGFuY2VtZW50c1xuICAgICNwbGFjZS1vcmRlci1idG4ge1xuICAgICAgICBwYWRkaW5nOiAwLjc1cmVtIDEuNXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIFxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNztcbiAgICAgICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gU2VjdXJpdHkgbm90aWNlIHN0eWxpbmdcbiAgICAudGV4dC1tdXRlZCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgIFxuICAgICAgICAuZmFzIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1icy1zdWNjZXNzKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBGb3JtIHZhbGlkYXRpb24gZW5oYW5jZW1lbnRzXG4gICAgLmZvcm0tY29udHJvbCxcbiAgICAuZm9ybS1zZWxlY3Qge1xuICAgICAgICAmLmlzLWludmFsaWQge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjIwLCA1MywgNjksIDAuMjUpO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSh2YXIoLS1icy1wcmltYXJ5LXJnYiksIDAuMjUpO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5pbnZhbGlkLWZlZWRiYWNrIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgICB9XG4gICAgXG4gICAgLy8gR3Vlc3Qgb3IgbG9naW4gbW9kYWwgZW5oYW5jZW1lbnRzXG4gICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMC41cmVtIDFyZW0gcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICAgICAgXG4gICAgICAgIC5tb2RhbC1oZWFkZXIge1xuICAgICAgICAgICAgcGFkZGluZzogMS41cmVtIDEuNXJlbSAwO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9kYWwtYm9keSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5idG4ge1xuICAgICAgICAgICAgcGFkZGluZzogMC43NXJlbSAxLjVyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBSZXNwb25zaXZlIGFkanVzdG1lbnRzXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgICAucGFnZV9pc19jaGVja291dF9wYWdlIHtcbiAgICAgICAgLnN0aWNreS10b3Age1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB0b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm9yZGVyLXN1bW1hcnkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLnBhZ2VfaXNfY2hlY2tvdXRfcGFnZSB7XG4gICAgICAgIC5jb250YWluZXIge1xuICAgICAgICAgICAgcGFkZGluZzogMCAxcmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuY2FyZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucm93IHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmNvbC1tZC02LFxuICAgICAgICAgICAgLmNvbC1tZC0zIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAuNXJlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi8vIE9yZGVyIFJlY2VpdmVkIFBhZ2UgU3R5bGVzXG4ucGFnZV9pc19vcmRlcl9yZWNlaXZlZF9wYWdlIHtcbiAgICAvLyBUYWJsZSBoZWFkaW5nIG92ZXJyaWRlc1xuICAgIHRhYmxlIHRoIHtcbiAgICAgICAgY29sb3I6ICM2NjY2NjYgIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGUgIWltcG9ydGFudDtcbiAgICB9XG4gICAgXG4gICAgLy8gT3JkZXIgcmVjZWl2ZWQgc2VjdGlvbnNcbiAgICAucmVjaXZlZC1oZXJvLXRleHQge1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBoMSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5jbGludC1kZXRhaWxzLWZvcm9yZGVyIHtcbiAgICAgICAgcGFkZGluZzogMnJlbSAwO1xuICAgIH1cbiAgICBcbiAgICAub3JkZXItaXRlbS1maW5hbC1kZWR0YWlscy1oZWFkZXIge1xuICAgICAgICBwYWRkaW5nOiAycmVtIDA7XG4gICAgfVxuICAgIFxuICAgIC5vcmRlci1pdGVtLWZpbmFsLXRvdGFsIHtcbiAgICAgICAgLnRhYmxlIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBBY3Rpb24gYnV0dG9uc1xuICAgIC5idG4tYmFjayxcbiAgICAuYnRuLWV4cG9ydCxcbiAgICAuYnRuLWV4cG9ydDIge1xuICAgICAgICBtYXJnaW46IDAuNXJlbTtcbiAgICB9XG59IiwiLyoqXG4gKiBBY2NvdW50IFBhZ2UgU3R5bGVzXG4gKiBCb290c3RyYXAgNSBlbmhhbmNlbWVudHMgZm9yIHVzZXIgYWNjb3VudCBwYWdlXG4gKi9cblxuLnBhZ2VfaXNfYWNjb3VudF9wYWdlIHtcbiAgICAueW91ci1hY2NvdW50IHtcbiAgICAgICAgLmFjY291bnQtdGFiLWJ0biB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTI1KTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjc7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvLyBEYXNoYm9hcmQgdXNlciBpbmZvIHN0eWxpbmdcbiAgICAgICAgLnlvdXItYWNjb3VudC1kYXNoYm9hcmQge1xuICAgICAgICAgICAgLmJnLWxpZ2h0IHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTI1KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLy8gQ3VzdG9tIG9yZGVyIHN0eWxpbmdcbiAgICAgICAgLkN1c3RvbS1PcmRlciB7XG4gICAgICAgICAgICAubmF2LXRhYnMge1xuICAgICAgICAgICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICAgICAgICAgICYuYnRuLWN1c3RvbS1vcmRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICNkZWUyZTYgI2RlZTJlNiB3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICNhZGI1YmQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5jdXN0b20tb3JkZXItdGFiLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgMC4zNzVyZW0gMC4zNzVyZW07XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgLnRhYi1wYW5lIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMS41cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLy8gRm9ybSBzdHlsaW5nIGVuaGFuY2VtZW50c1xuICAgICAgICAuZm9ybS10ZXh0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLy8gRGF0YVRhYmxlIHdyYXBwZXIgc3R5bGluZ1xuICAgICAgICAuY2FyZC1ib2R5IHtcbiAgICAgICAgICAgIC5kYXRhVGFibGVzX3dyYXBwZXIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIEFjY291bnQgcGFnZSByZXNwb25zaXZlIGFkanVzdG1lbnRzXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgICAucGFnZV9pc19hY2NvdW50X3BhZ2Uge1xuICAgICAgICAueW91ci1hY2NvdW50IHtcbiAgICAgICAgICAgIC5hY2NvdW50LXRhYi1idG4ge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gMC41cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKiBQcm9maWxlIFBhZ2UgU3R5bGVzICovXG5cbi5wYWdlX2lzX3Byb2ZpbGVfcGFnZSB7XG4gICAgICAgIC8qIE1vYmlsZSBDb2xsYXBzaWJsZSBTZWN0aW9ucyAqL1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLm1vYmlsZS1jb2xsYXBzaWJsZSB7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xuICAgICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgICAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLWNvbGxhcHNpYmxlOjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnXFxmMDc4JzsgLyogZmEtY2hldnJvbi1kb3duICovXG4gICAgICAgICAgICBmb250LWZhbWlseTogJ0ZvbnQgQXdlc29tZSA1IEZyZWUnO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLWNvbGxhcHNpYmxlLmNvbGxhcHNlZDo6YWZ0ZXIge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLWNvbGxhcHNpYmxlOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS1jb2xsYXBzaWJsZTpmb2N1cyB7XG4gICAgICAgICAgICBvdXRsaW5lOiAycHggc29saWQgdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgICAgICAgICBvdXRsaW5lLW9mZnNldDogMnB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLyogQ29sbGFwc2UgQ29udGVudCAqL1xuICAgICAgICAubW9iaWxlLWNvbGxhcHNlLWNvbnRlbnQge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgMC4zcyBlYXNlLCBvcGFjaXR5IDAuM3MgZWFzZTtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDIwMDBweDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtY29sbGFwc2UtY29udGVudC5jb2xsYXBzZWQge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogMDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8qIEFkZHJlc3MgQ2FyZCBFeHBhbmQgQXJlYSAqL1xuICAgICAgICAubW9iaWxlLWV4cGFuZC1hcmVhIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMC41cmVtO1xuICAgICAgICAgICAgcmlnaHQ6IDAuNXJlbTtcbiAgICAgICAgICAgIHdpZHRoOiAzMnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzMnB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtZ3JheS0xMDApO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLWV4cGFuZC1hcmVhOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWdyYXktMjAwKTtcbiAgICAgICAgICAgIC8vIFJlbW92ZWQgdGFja3kgem9vbSBlZmZlY3RcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS1leHBhbmQtYXJlYTphY3RpdmUge1xuICAgICAgICAgICAgLy8gUmVtb3ZlZCB0YWNreSB6b29tIGVmZmVjdFxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLWV4cGFuZC1hcmVhIGkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLyogVGV4dCBUcnVuY2F0aW9uICovXG4gICAgICAgIC5tb2JpbGUtdGV4dC10cnVuY2F0ZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IDAuM3MgZWFzZTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS10ZXh0LXRydW5jYXRlOjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHRyYW5zcGFyZW50LCB3aGl0ZSk7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS10ZXh0LXRydW5jYXRlLmV4cGFuZGVkIHtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtdGV4dC10cnVuY2F0ZS5leHBhbmRlZDo6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS10ZXh0LXRydW5jYXRlIC5idG4tbGluayB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLXRleHQtdHJ1bmNhdGUgLmJ0bi1saW5rOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIEFjY29yZGlvbi1zdHlsZSBTZWN0aW9ucyAqL1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAucHJvZmlsZS1jYXJkLmFjY29yZGlvbi1zdHlsZSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnByb2ZpbGUtY2FyZC5hY2NvcmRpb24tc3R5bGUgPiBoNCxcbiAgICAgICAgLnByb2ZpbGUtY2FyZC5hY2NvcmRpb24tc3R5bGUgPiBoNSB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtZ3JheS0xMDApO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJzLWdyYXktMzAwKTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnByb2ZpbGUtY2FyZC5hY2NvcmRpb24tc3R5bGUgPiBkaXYge1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBTbW9vdGggU2Nyb2xsaW5nIGZvciBNb2JpbGUgKi9cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLmhvcml6b250YWwtc2Nyb2xsIHtcbiAgICAgICAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgICAgICAgICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbiAgICAgICAgICAgIHNjcm9sbGJhci13aWR0aDogdGhpbjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmhvcml6b250YWwtc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgICAgICBoZWlnaHQ6IDZweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmhvcml6b250YWwtc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjFmMWYxO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuaG9yaXpvbnRhbC1zY3JvbGw6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM4ODg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5ob3Jpem9udGFsLXNjcm9sbDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzU1NTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBNb2RhbCBTd2lwZSBJbmRpY2F0b3IgKi9cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLm1vZGFsLWNvbnRlbnQ6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMC41cmVtO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDRweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWdyYXktNDAwKTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vZGFsLWRpYWxvZyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHZoO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBBY2Nlc3NpYmlsaXR5IEltcHJvdmVtZW50cyAqL1xuICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICAgIC5tb2JpbGUtY29sbGFwc2libGU6OmFmdGVyLFxuICAgICAgICAubW9iaWxlLWNvbGxhcHNlLWNvbnRlbnQsXG4gICAgICAgIC5tb2JpbGUtdGV4dC10cnVuY2F0ZSxcbiAgICAgICAgLm1vYmlsZS1leHBhbmQtYXJlYSB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIEhpZ2ggQ29udHJhc3QgTW9kZSAqL1xuICAgIEBtZWRpYSAocHJlZmVycy1jb250cmFzdDogaGlnaCkge1xuICAgICAgICAubW9iaWxlLWNvbGxhcHNpYmxlIHtcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLWNvbGxhcHNpYmxlOmZvY3VzIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLWV4cGFuZC1hcmVhIHtcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWJzLWRhcmspO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogTG9hZGluZyBTdGF0ZXMgZm9yIER5bmFtaWMgQ29udGVudCAqL1xuICAgIC5tb2JpbGUtbG9hZGluZyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWluLWhlaWdodDogMTAwcHg7XG4gICAgfVxuICAgIFxuICAgIC5tb2JpbGUtbG9hZGluZzo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICBtYXJnaW46IC0xNXB4IDAgMCAtMTVweDtcbiAgICAgICAgYm9yZGVyOiAzcHggc29saWQgI2YzZjNmMztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBib3JkZXItdG9wOiAzcHggc29saWQgdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgICAgIGFuaW1hdGlvbjogc3BpbiAxcyBsaW5lYXIgaW5maW5pdGU7XG4gICAgfVxuICAgIFxuICAgIEBrZXlmcmFtZXMgc3BpbiB7XG4gICAgICAgIDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgICAgICAgMTAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH1cbiAgICB9XG4gICAgXG4gICAgLyogRW5oYW5jZWQgVG91Y2ggVGFyZ2V0cyAqL1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAubW9iaWxlLXRvdWNoLXRhcmdldCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA0OHB4O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtdG91Y2gtdGFyZ2V0OjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IC04cHg7XG4gICAgICAgICAgICByaWdodDogLThweDtcbiAgICAgICAgICAgIGJvdHRvbTogLThweDtcbiAgICAgICAgICAgIGxlZnQ6IC04cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogTW9iaWxlIEFkZHJlc3MgQm9vayBTdHlsZXMgKi9cbiAgICBcbiAgICAvKiBNb2JpbGUgSGVhZGVyIFNlY3Rpb24gKi9cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLmQtZmxleC5qdXN0aWZ5LWNvbnRlbnQtYmV0d2Vlbi5hbGlnbi1pdGVtcy1jZW50ZXIubWItNCB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmQtZmxleC5qdXN0aWZ5LWNvbnRlbnQtYmV0d2Vlbi5hbGlnbi1pdGVtcy1jZW50ZXIubWItNCA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZC1mbGV4Lmp1c3RpZnktY29udGVudC1iZXR3ZWVuLmFsaWduLWl0ZW1zLWNlbnRlci5tYi00IGgzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZC1mbGV4Lmp1c3RpZnktY29udGVudC1iZXR3ZWVuLmFsaWduLWl0ZW1zLWNlbnRlci5tYi00IHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmQtZmxleC5qdXN0aWZ5LWNvbnRlbnQtYmV0d2Vlbi5hbGlnbi1pdGVtcy1jZW50ZXIubWItNCAuYnRuIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWluLWhlaWdodDogNDhweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBNb2JpbGUgQWRkcmVzcyBDYXJkcyAqL1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAuY29sLW1kLTYuY29sLWxnLTQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmFkZHJlc3MtY2FyZCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLyogQ2FyZCBIZWFkZXIgQWRqdXN0bWVudHMgKi9cbiAgICAgICAgLmFkZHJlc3MtY2FyZCBoNSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5hZGRyZXNzLWNhcmQgLmJhZGdlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43cmVtO1xuICAgICAgICAgICAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8qIERyb3Bkb3duIEJ1dHRvbiBFbmhhbmNlbWVudCAqL1xuICAgICAgICAuZHJvcGRvd24gLmJ0bi1vdXRsaW5lLXNlY29uZGFyeS5idG4tc20ge1xuICAgICAgICAgICAgd2lkdGg6IDQ0cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDQ0cHg7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDQ0cHg7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA0NHB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvKiBEcm9wZG93biBNZW51IFBvc2l0aW9uaW5nICovXG4gICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMTJyZW07XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8qIERyb3Bkb3duIEl0ZW1zIFRvdWNoIEZyaWVuZGx5ICovXG4gICAgICAgIC5kcm9wZG93bi1pdGVtIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQ0cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZHJvcGRvd24taXRlbSBpIHtcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvKiBBZGRyZXNzIERldGFpbHMgKi9cbiAgICAgICAgLmFkZHJlc3MtZGV0YWlscyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmFkZHJlc3MtZGV0YWlscyBzdHJvbmcge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvKiBWZXJpZmljYXRpb24gU3RhdHVzICovXG4gICAgICAgIC5hZGRyZXNzLWNhcmQgc21hbGwge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIE1vYmlsZSBFbXB0eSBTdGF0ZSAqL1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAucHJvZmlsZS1jYXJkLnRleHQtY2VudGVyLnB5LTUge1xuICAgICAgICAgICAgcGFkZGluZzogM3JlbSAxLjVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnByb2ZpbGUtY2FyZCAuZmEtM3gge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5wcm9maWxlLWNhcmQgaDQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnByb2ZpbGUtY2FyZCBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5wcm9maWxlLWNhcmQgLmJ0biB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMzAwcHg7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA0OHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIE1vYmlsZSBNb2RhbCBPcHRpbWl6YXRpb25zICovXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAgIC5tb2RhbC1kaWFsb2cge1xuICAgICAgICAgICAgbWFyZ2luOiAwLjVyZW07XG4gICAgICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDFyZW0pO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2RhbC1oZWFkZXIsXG4gICAgICAgIC5tb2RhbC1ib2R5LFxuICAgICAgICAubW9kYWwtZm9vdGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2RhbC10aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9kYWwtYm9keSBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vZGFsLWZvb3RlciB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2RhbC1mb290ZXIgLmJ0biB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQ4cHg7XG4gICAgICAgICAgICBtYXJnaW46IDAuMjVyZW0gMDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vZGFsLWZvb3RlciBmb3JtIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogVG91Y2ggRmVlZGJhY2sgKi9cbiAgICBAbWVkaWEgKGhvdmVyOiBub25lKSBhbmQgKHBvaW50ZXI6IGNvYXJzZSkge1xuICAgICAgICAuYWRkcmVzcy1jYXJkOmFjdGl2ZSB7XG4gICAgICAgICAgICAvLyBSZW1vdmVkIHRhY2t5IHpvb20gZWZmZWN0XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAuMjVyZW0gMC41cmVtIHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmRyb3Bkb3duLWl0ZW06YWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWdyYXktMTAwKTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmJ0bjphY3RpdmUge1xuICAgICAgICAgICAgLy8gUmVtb3ZlZCB0YWNreSB6b29tIGVmZmVjdFxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIEltcHJvdmVkIENhcmQgR3JpZCBvbiBTbWFsbCBUYWJsZXRzICovXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLnJvdyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgyODBweCwgMWZyKSk7XG4gICAgICAgICAgICBnYXA6IDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5jb2wtbWQtNi5jb2wtbGctNCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIExvYWRpbmcgU3RhdGVzICovXG4gICAgLmFkZHJlc3MtY2FyZC5sb2FkaW5nIHtcbiAgICAgICAgb3BhY2l0eTogMC42O1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gICAgXG4gICAgLmRyb3Bkb3duLWl0ZW0ubG9hZGluZyB7XG4gICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gICAgXG4gICAgLyogQWRkcmVzcyBDYXJkIEhvdmVyIEVmZmVjdHMgKi9cbiAgICBAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICAgICAgICAuYWRkcmVzcy1jYXJkOmhvdmVyIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBAbWVkaWEgKGhvdmVyOiBub25lKSB7XG4gICAgICAgIC5hZGRyZXNzLWNhcmQ6aG92ZXIge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIExhbmRzY2FwZSBNb2JpbGUgT3B0aW1pemF0aW9uICovXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAgICAgLmQtZmxleC5qdXN0aWZ5LWNvbnRlbnQtYmV0d2Vlbi5hbGlnbi1pdGVtcy1jZW50ZXIubWItNCB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmQtZmxleC5qdXN0aWZ5LWNvbnRlbnQtYmV0d2Vlbi5hbGlnbi1pdGVtcy1jZW50ZXIubWItNCA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZC1mbGV4Lmp1c3RpZnktY29udGVudC1iZXR3ZWVuLmFsaWduLWl0ZW1zLWNlbnRlci5tYi00IC5idG4ge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogSW1wcm92ZWQgU3BhY2luZyAqL1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAucHJvZmlsZS1jb250ZW50IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMC41cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuYWRkcmVzcy1jYXJkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5yb3cge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjVyZW07XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5jb2wtbWQtNi5jb2wtbGctNCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBNb2JpbGUgRm9ybSBPcHRpbWl6YXRpb24gU3R5bGVzICovXG4gICAgXG4gICAgLyogQmFzZSBGb3JtIENvbnRyb2wgU3R5bGVzICovXG4gICAgLmZvcm0tY29udHJvbCxcbiAgICAuZm9ybS1zZWxlY3QsXG4gICAgLmJ0biB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQ4cHg7IC8qIFRvdWNoIHRhcmdldCBtaW5pbXVtICovXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDsgLyogUHJldmVudCB6b29tIG9uIGlPUyAqL1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgfVxuICAgIFxuICAgIC8qIEVuaGFuY2VkIFRvdWNoIFRhcmdldHMgZm9yIENoZWNrYm94ZXMgYW5kIFJhZGlvcyAqL1xuICAgIC5mb3JtLWNoZWNrIHtcbiAgICAgICAgbWluLWhlaWdodDogNDhweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMC43NXJlbSAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gICAgXG4gICAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgIzZjNzU3ZDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgICB9XG4gICAgXG4gICAgLmZvcm0tY2hlY2staW5wdXQ6Y2hlY2tlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICAgICAgICAvLyBSZW1vdmVkIHRhY2t5IHpvb20gZWZmZWN0XG4gICAgfVxuICAgIFxuICAgIC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgfVxuICAgIFxuICAgIC8qIE1vYmlsZSBGb3JtIFNwYWNpbmcgKi9cbiAgICAuZm9ybS1sYWJlbCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAwLjk1cmVtO1xuICAgICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICB9XG4gICAgXG4gICAgLmZvcm0tdGV4dCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xuICAgIH1cbiAgICBcbiAgICAvKiBFbmhhbmNlZCBTZWxlY3QgRHJvcGRvd25zICovXG4gICAgLmZvcm0tc2VsZWN0IHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNiclM2UlM2NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzMzQzYTQwJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMicgZD0nTTIgNWw2IDYgNi02Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE2cHggMTJweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMi41cmVtO1xuICAgIH1cbiAgICBcbiAgICAvKiBJbnB1dCBHcm91cHMgKi9cbiAgICAuaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sLFxuICAgIC5pbnB1dC1ncm91cCA+IC5mb3JtLXNlbGVjdCxcbiAgICAuaW5wdXQtZ3JvdXAgPiAuYnRuIHtcbiAgICAgICAgbWluLWhlaWdodDogNDhweDtcbiAgICB9XG4gICAgXG4gICAgLmlucHV0LWdyb3VwLXRleHQge1xuICAgICAgICBtaW4taGVpZ2h0OiA0OHB4O1xuICAgICAgICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICB9XG4gICAgXG4gICAgLyogRmlsZSBVcGxvYWQgU3R5bGluZyAqL1xuICAgIC5idG4tZmlsZS11cGxvYWQge1xuICAgICAgICBtaW4taGVpZ2h0OiA0OHB4O1xuICAgICAgICBwYWRkaW5nOiAwLjc1cmVtIDEuNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogMC41cmVtO1xuICAgIH1cbiAgICBcbiAgICAvKiBGb3JtIFZhbGlkYXRpb24gRmVlZGJhY2sgKi9cbiAgICAuaW52YWxpZC1mZWVkYmFjayxcbiAgICAudmFsaWQtZmVlZGJhY2sge1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgXG4gICAgLmlzLWludmFsaWQge1xuICAgICAgICBib3JkZXItY29sb3I6ICNkYzM1NDU7XG4gICAgICAgIGJvcmRlci13aWR0aDogMnB4O1xuICAgIH1cbiAgICBcbiAgICAuaXMtdmFsaWQge1xuICAgICAgICBib3JkZXItY29sb3I6ICMyOGE3NDU7XG4gICAgICAgIGJvcmRlci13aWR0aDogMnB4O1xuICAgIH1cbiAgICBcbiAgICAvKiBNb2JpbGUgQnV0dG9uIFN0eWxlcyAqL1xuICAgIC5idG4ge1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBwYWRkaW5nOiAwLjc1cmVtIDEuNXJlbTtcbiAgICAgICAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG4gICAgICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICAgIFxuICAgIC5idG4tcHJpbWFyeSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICAgIH1cbiAgICBcbiAgICAuYnRuLXByaW1hcnk6YWN0aXZlIHtcbiAgICAgICAgLy8gUmVtb3ZlZCB0YWNreSB6b29tIGVmZmVjdFxuICAgIH1cbiAgICBcbiAgICAvKiBGb3JtIFJvdyBTcGFjaW5nICovXG4gICAgLnJvdy5tYi0zLFxuICAgIC5yb3cubWItNCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbiAgICAvKiBNb2JpbGUtU3BlY2lmaWMgRm9ybSBMYXlvdXRzICovXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5jb2wtbWQtNiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuY29sLW1kLTY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvKiBTdGFjayBmb3JtIGJ1dHRvbnMgdmVydGljYWxseSBvbiBtb2JpbGUgKi9cbiAgICAgICAgLmJ0bi1ncm91cC1tb2JpbGUge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBnYXA6IDAuNzVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5idG4tZ3JvdXAtbW9iaWxlIC5idG4ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8qIExhcmdlciBzcGFjaW5nIGJldHdlZW4gZm9ybSBzZWN0aW9ucyAqL1xuICAgICAgICBoNS5tYi0zIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDJyZW0gIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLyogQ2FyZCBzcGFjaW5nIGFkanVzdG1lbnRzICovXG4gICAgICAgIC5jYXJkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmNhcmQtYm9keSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjI1cmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIFRvdWNoIEZlZWRiYWNrICovXG4gICAgLmZvcm0tY29udHJvbDpmb2N1cyxcbiAgICAuZm9ybS1zZWxlY3Q6Zm9jdXMsXG4gICAgLmJ0bjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IDNweCBzb2xpZCByZ2JhKDEzLCAxMTAsIDI1MywgMC4yNSk7XG4gICAgICAgIG91dGxpbmUtb2Zmc2V0OiAycHg7XG4gICAgfVxuICAgIFxuICAgIC8qIExvYWRpbmcgU3RhdGVzICovXG4gICAgLmJ0bltkaXNhYmxlZF0ge1xuICAgICAgICBvcGFjaXR5OiAwLjY1O1xuICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIH1cbiAgICBcbiAgICAuYnRuLmxvYWRpbmcge1xuICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG4gICAgXG4gICAgLmJ0bi5sb2FkaW5nOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2YzZjNmMztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBib3JkZXItdG9wOiAycHggc29saWQgIzM0OThkYjtcbiAgICAgICAgYW5pbWF0aW9uOiBzcGluIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgICB9XG4gICAgXG4gICAgLyogSW1wcm92ZWQgRXJyb3IgU3RhdGVzICovXG4gICAgLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMjAsIDUzLCA2OSwgMC4yNSk7XG4gICAgfVxuICAgIFxuICAgIC8qIFBhc3N3b3JkIFRvZ2dsZSBCdXR0b24gRW5oYW5jZW1lbnQgKi9cbiAgICAucGFzc3dvcmQtdG9nZ2xlLWJ0biB7XG4gICAgICAgIG1pbi13aWR0aDogNDhweDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgfVxuICAgIFxuICAgIC8qIFJhbmdlIElucHV0cyAoaWYgYW55KSAqL1xuICAgIGlucHV0W3R5cGU9XCJyYW5nZVwiXSB7XG4gICAgICAgIGhlaWdodDogNDhweDtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICAgIFxuICAgIGlucHV0W3R5cGU9XCJyYW5nZVwiXTo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgd2lkdGg6IDMycHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgbWFyZ2luLXRvcDogLTE0cHg7XG4gICAgfVxuICAgIFxuICAgIGlucHV0W3R5cGU9XCJyYW5nZVwiXTo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiA0cHg7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZDogI2RkZDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIH1cbiAgICBcbiAgICAvKiBGbG9hdGluZyBMYWJlbHMgKGlmIHVzZWQpICovXG4gICAgLmZvcm0tZmxvYXRpbmcgPiAuZm9ybS1jb250cm9sLFxuICAgIC5mb3JtLWZsb2F0aW5nID4gLmZvcm0tc2VsZWN0IHtcbiAgICAgICAgbWluLWhlaWdodDogNThweDtcbiAgICAgICAgcGFkZGluZy10b3A6IDEuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC42MjVyZW07XG4gICAgfVxuICAgIFxuICAgIC5mb3JtLWZsb2F0aW5nID4gbGFiZWwge1xuICAgICAgICBwYWRkaW5nOiAxcmVtIDAuNzVyZW07XG4gICAgfVxuICAgIFxuICAgIC8qIGlPUy1TcGVjaWZpYyBGaXhlcyAqL1xuICAgIEBzdXBwb3J0cyAoLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lKSB7XG4gICAgICAgIC5mb3JtLWNvbnRyb2wsXG4gICAgICAgIC5mb3JtLXNlbGVjdCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7IC8qIFByZXZlbnRzIHpvb20gKi9cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgc2VsZWN0LmZvcm0tc2VsZWN0IHtcbiAgICAgICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBBbmRyb2lkLVNwZWNpZmljIEZpeGVzICovXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMCkge1xuICAgICAgICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgICAgICAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIE1vYmlsZSBEYXNoYm9hcmQgU3R5bGVzICovXG4gICAgXG4gICAgLyogTW9iaWxlIFN0YXRpc3RpY3MgQ2FyZHMgKi9cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLnN0YXQtY2FyZCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICAgICAgbWluLWhlaWdodDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5zdGF0LWNhcmQgLnN0YXQtdmFsdWUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnN0YXQtY2FyZCAuc3RhdC1sYWJlbCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLyogVHdvIGNvbHVtbnMgb24gbW9iaWxlIGZvciBiZXR0ZXIgc3BhY2UgdXRpbGl6YXRpb24gKi9cbiAgICAgICAgLmNvbC1zbS02IHtcbiAgICAgICAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBNb2JpbGUgT3JkZXIgQ2FyZHMgLSBSZXBsYWNlIHRhYmxlIG9uIHNtYWxsIHNjcmVlbnMgKi9cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLy8gT25seSBoaWRlIHRhYmxlIG9uIG9yZGVycyBwYWdlIHdoZXJlIHdlIGhhdmUgbW9iaWxlIGNhcmRzXG4gICAgICAgICYucGFnZS1pcy1wcm9maWxlLW9yZGVycyAudGFibGUtcmVzcG9uc2l2ZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLW9yZGVyLWNhcmRzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLW9yZGVyLWNhcmQge1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4ycyBlYXNlO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLW9yZGVyLWNhcmQ6YWN0aXZlIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMC4xMjVyZW0gMC4yNXJlbSByZ2JhKDAsIDAsIDAsIDAuMDc1KTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS1vcmRlci1oZWFkZXIge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS1vcmRlci1udW1iZXIge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS1vcmRlci1zdGF0dXMge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLW9yZGVyLWRldGFpbHMge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLW9yZGVyLWRhdGUge1xuICAgICAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLW9yZGVyLXRvdGFsIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLW9yZGVyLWFjdGlvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA0NHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAubW9iaWxlLW9yZGVyLWNhcmRzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogTW9iaWxlIFdlbGNvbWUgU2VjdGlvbiAqL1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAucHJvZmlsZS1oZWFkZXIge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZzogMS41cmVtIDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5wcm9maWxlLWhlYWRlciBoMyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnByb2ZpbGUtaGVhZGVyIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5wcm9maWxlLWhlYWRlciAuYnRuIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIE1vYmlsZSBRdWljayBBY3Rpb25zICovXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5wcm9maWxlLWNhcmQgaDQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLyogVHdvIGNvbHVtbnMgZm9yIHF1aWNrIGFjdGlvbiBidXR0b25zIG9uIG1vYmlsZSAqL1xuICAgICAgICAucXVpY2stYWN0aW9uLW1vYmlsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgICAgICAgICAgZ2FwOiAwLjc1cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucXVpY2stYWN0aW9uLW1vYmlsZSAuYnRuIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjc1cmVtIDAuNXJlbTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQ4cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnF1aWNrLWFjdGlvbi1tb2JpbGUgLmJ0biBpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBNb2JpbGUgTm90aWZpY2F0aW9ucyAqL1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5saXN0LWdyb3VwLWl0ZW0gaDYge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubGlzdC1ncm91cC1pdGVtIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5saXN0LWdyb3VwLWl0ZW0gc21hbGwge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogRGFzaGJvYXJkIFRvdWNoIEZlZWRiYWNrICovXG4gICAgQG1lZGlhIChob3Zlcjogbm9uZSkgYW5kIChwb2ludGVyOiBjb2Fyc2UpIHtcbiAgICAgICAgLnN0YXQtY2FyZDphY3RpdmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgICAgICAgICAgIC8vIFJlbW92ZWQgdGFja3kgem9vbSBlZmZlY3RcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS1vcmRlci1jYXJkOmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIEltcHJvdmVkIERhc2hib2FyZCBTcGFjaW5nIG9uIE1vYmlsZSAqL1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAucHJvZmlsZS1oZWFkZXIge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucm93Lm1iLTQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5wcm9maWxlLWNhcmQge1xuICAgICAgICAgICAgcGFkZGluZzogMS4yNXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnByb2ZpbGUtY2FyZDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogRGFzaGJvYXJkIExvYWRpbmcgU3RhdGVzICovXG4gICAgLm1vYmlsZS1vcmRlci1jYXJkLmxvYWRpbmcge1xuICAgICAgICBvcGFjaXR5OiAwLjY7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgICBcbiAgICAubW9iaWxlLW9yZGVyLWNhcmQubG9hZGluZzo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIG1hcmdpbjogLTEwcHggMCAwIC0xMHB4O1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjZjNmM2YzO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICAgICAgYW5pbWF0aW9uOiBzcGluIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgICB9XG4gICAgXG4gICAgLyogTGFuZHNjYXBlIE1vYmlsZSBEYXNoYm9hcmQgT3B0aW1pemF0aW9uICovXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAgICAgLnN0YXQtY2FyZCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjc1cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuc3RhdC1jYXJkIC5zdGF0LXZhbHVlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucHJvZmlsZS1oZWFkZXIge1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnByb2ZpbGUtaGVhZGVyIGgzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBNb2JpbGUgT3JkZXJzIFBhZ2UgU3R5bGVzICovXG4gICAgXG4gICAgLyogTW9iaWxlIEZpbHRlciBTZWN0aW9uICovXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICNtb2JpbGUtZmlsdGVyLXRvZ2dsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQ4cHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICNvcmRlci1maWx0ZXItZm9ybSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAjb3JkZXItZmlsdGVyLWZvcm0uc2hvdyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZWUyZTY7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZmlsdGVyLWFjdGl2ZS1pbmRpY2F0b3Ige1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjEyNXJlbSAwLjVyZW07XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxcmVtO1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgI21vYmlsZS1maWx0ZXItdG9nZ2xlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICNvcmRlci1maWx0ZXItZm9ybSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIE1vYmlsZSBPcmRlciBMaXN0IENhcmRzICovXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5tb2JpbGUtb3JkZXJzLWxpc3Qge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtb3JkZXItaXRlbSB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjJzIGVhc2U7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtb3JkZXItaXRlbTphY3RpdmUge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwLjEyNXJlbSAwLjI1cmVtIHJnYmEoMCwgMCwgMCwgMC4wNzUpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLyogT3JkZXIgSGVhZGVyICovXG4gICAgICAgIC5tb2JpbGUtb3JkZXItaGVhZGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtb3JkZXItaWQge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS1vcmRlci1kYXRlIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS1vcmRlci1wYXltZW50IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLW9yZGVyLXRvdGFsIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvKiBPcmRlciBEZXRhaWxzICovXG4gICAgICAgIC5tb2JpbGUtb3JkZXItaW5mbyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMDtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTllY2VmO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlOWVjZWY7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtb3JkZXItaXRlbXMge1xuICAgICAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvKiBBY3Rpb24gQnV0dG9ucyAqL1xuICAgICAgICAubW9iaWxlLW9yZGVyLWFjdGlvbnMge1xuICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMTAwcHgsIDFmcikpO1xuICAgICAgICAgICAgZ2FwOiAwLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtb3JkZXItYWN0aW9ucyAuYnRuIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQ0cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICAgICAgcGFkZGluZzogMC41cmVtO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogMC4yNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS1vcmRlci1hY3Rpb25zIC5idG4gaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8qIFF1aWNrIFZpZXcgRGV0YWlscyAqL1xuICAgICAgICAubW9iaWxlLW9yZGVyLXF1aWNrLWRldGFpbHMge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLW9yZGVyLXF1aWNrLWRldGFpbHMuc2hvdyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgLm1vYmlsZS1vcmRlcnMtbGlzdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIE1vYmlsZSBTdGF0dXMgR3VpZGUgKi9cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLnN0YXR1cy1ndWlkZS1tb2JpbGUge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG4gICAgICAgICAgICBtYXJnaW46IC0wLjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5zdGF0dXMtZ3VpZGUtbW9iaWxlOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgICAgICBoZWlnaHQ6IDRweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnN0YXR1cy1ndWlkZS1tb2JpbGU6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmMWYxZjE7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5zdGF0dXMtZ3VpZGUtbW9iaWxlOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjODg4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuc3RhdHVzLWd1aWRlLWl0ZW0ge1xuICAgICAgICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBnYXA6IDAuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnN0YXR1cy1ndWlkZS1pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucm93LmctMiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAuc3RhdHVzLWd1aWRlLW1vYmlsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIE1vYmlsZSBPcmRlcnMgUGFnaW5hdGlvbiAqL1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAucGFnaW5hdGlvbiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtO1xuICAgICAgICAgICAgbWluLXdpZHRoOiA0NHB4O1xuICAgICAgICAgICAgbWluLWhlaWdodDogNDRweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogT3JkZXJzIFRvdWNoIEZlZWRiYWNrICovXG4gICAgQG1lZGlhIChob3Zlcjogbm9uZSkgYW5kIChwb2ludGVyOiBjb2Fyc2UpIHtcbiAgICAgICAgLm1vYmlsZS1vcmRlci1pdGVtOmFjdGl2ZSB7XG4gICAgICAgICAgICAvLyBSZW1vdmVkIHRhY2t5IHpvb20gZWZmZWN0XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogT3JkZXJzIExvYWRpbmcgU3RhdGVzICovXG4gICAgLm1vYmlsZS1vcmRlci1pdGVtLmxvYWRpbmcge1xuICAgICAgICBvcGFjaXR5OiAwLjY7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgICBcbiAgICAvKiBGaWx0ZXIgQmFkZ2UgQ291bnRlciAqL1xuICAgIC5maWx0ZXItY291bnQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1kYW5nZXIpO1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gICAgfVxuICAgIFxuICAgIC8qIEhpZ2ggQ29udHJhc3QgT3JkZXJzICovXG4gICAgQG1lZGlhIChwcmVmZXJzLWNvbnRyYXN0OiBoaWdoKSB7XG4gICAgICAgIC5tb2JpbGUtb3JkZXItaXRlbSB7XG4gICAgICAgICAgICBib3JkZXItd2lkdGg6IDJweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS1vcmRlci1pZCB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBMYW5kc2NhcGUgTW9iaWxlIE9yZGVycyAqL1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgICAgIC5tb2JpbGUtb3JkZXItYWN0aW9ucyB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIE1vYmlsZSBPcmRlciBEZXRhaWwgUGFnZSBTdHlsZXMgKi9cbiAgICBcbiAgICAvKiBNb2JpbGUgT3JkZXIgU3VtbWFyeSAqL1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAucHJvZmlsZS1jYXJkIC5yb3cge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLyogT3JkZXIgU3RhdHVzIFNlY3Rpb24gKi9cbiAgICAgICAgLmNvbC1tZC00LnRleHQtbWQtZW5kIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxLjVyZW07XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLyogSW5mbyBHcmlkIG9uIE1vYmlsZSAqL1xuICAgICAgICAuY29sLTYuY29sLW1kLTQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmNvbC02LmNvbC1tZC00Omxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLyogTGFiZWxzIGFuZCBWYWx1ZXMgKi9cbiAgICAgICAgbGFiZWwudGV4dC1tdXRlZC5zbWFsbCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIHAuZnctc2VtaWJvbGQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBNb2JpbGUgVGltZWxpbmUgKi9cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLnRpbWVsaW5lIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnRpbWVsaW5lOjpiZWZvcmUge1xuICAgICAgICAgICAgbGVmdDogNnB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAudGltZWxpbmUtbWFya2VyIHtcbiAgICAgICAgICAgIGxlZnQ6IC0xNHB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC50aW1lbGluZS1jb250ZW50IGg2IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC50aW1lbGluZS1jb250ZW50IHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAudGltZWxpbmUtaXRlbSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBNb2JpbGUgT3JkZXIgSXRlbXMgKi9cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLyogU2hvdyBtb2JpbGUgY2FyZHMgKi9cbiAgICAgICAgLm1vYmlsZS1vcmRlci1pdGVtcyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS1pdGVtLWNhcmQge1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS1pdGVtLWhlYWRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZ2FwOiAxcmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS1pdGVtLWltYWdlIHtcbiAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtaXRlbS1pbWFnZSBpbWcsXG4gICAgICAgIC5tb2JpbGUtaXRlbS1pbWFnZSAucGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLWl0ZW0taW1hZ2UgLnBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLWl0ZW0tZGV0YWlscyB7XG4gICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLWl0ZW0tbmFtZSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICAgICAgICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS1pdGVtLXNrdSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtaXRlbS1wcmljaW5nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDAuNzVyZW07XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2U5ZWNlZjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS1pdGVtLXByaWNlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS1pdGVtLXF0eSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtaXRlbS10b3RhbCB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvKiBPcmRlciBTdW1tYXJ5IG9uIE1vYmlsZSAqL1xuICAgICAgICAubW9iaWxlLW9yZGVyLXN1bW1hcnkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLXN1bW1hcnktcm93IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLXN1bW1hcnktcm93Omxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gICAgICAgICAgICBib3JkZXItdG9wOiAycHggc29saWQgI2RlZTJlNjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtc3VtbWFyeS1sYWJlbCB7XG4gICAgICAgICAgICBjb2xvcjogIzQ5NTA1NztcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm1vYmlsZS1zdW1tYXJ5LXZhbHVlIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubW9iaWxlLXN1bW1hcnktdmFsdWUudGV4dC1kYW5nZXIge1xuICAgICAgICAgICAgY29sb3I6ICNkYzM1NDUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgLm1vYmlsZS1vcmRlci1pdGVtcyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIE1vYmlsZSBBY3Rpb24gQnV0dG9ucyAqL1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAucHJvZmlsZS1hY3Rpb25zIC5idG4tZ3JvdXAge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGdhcDogMC41cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucHJvZmlsZS1hY3Rpb25zIC5idG4ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA0OHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvKiBCb3R0b20gQWN0aW9ucyAqL1xuICAgICAgICAudGV4dC1jZW50ZXIubXQtNCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGdhcDogMC43NXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnRleHQtY2VudGVyLm10LTQgLmJ0biB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQ4cHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBNb2JpbGUgQWRkcmVzcyBDYXJkcyBPcmRlciBEZXRhaWwgKi9cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLmNvbC1tZC02IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5jb2wtbWQtNjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5wcm9maWxlLWNhcmQgYWRkcmVzcyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnByb2ZpbGUtY2FyZCBoNSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBPcmRlciBEZXRhaWwgVG91Y2ggRmVlZGJhY2sgKi9cbiAgICBAbWVkaWEgKGhvdmVyOiBub25lKSBhbmQgKHBvaW50ZXI6IGNvYXJzZSkge1xuICAgICAgICAubW9iaWxlLWl0ZW0tY2FyZDphY3RpdmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBPcmRlciBEZXRhaWwgU3BhY2luZyAqL1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAucHJvZmlsZS1jYXJkIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEuMjVyZW0gMXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5wcm9maWxlLWNhcmQgaDQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBTdGF0dXMgQmFkZ2UgQWRqdXN0bWVudHMgKi9cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLmJhZGdlLmZzLTYge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogMC41cmVtIDFyZW0gIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBPcmRlciBEZXRhaWwgTG9hZGluZyBTdGF0ZXMgKi9cbiAgICAubW9iaWxlLWl0ZW0tY2FyZC5sb2FkaW5nIHtcbiAgICAgICAgb3BhY2l0eTogMC42O1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gICAgXG4gICAgLyogSGlnaCBDb250cmFzdCBPcmRlciBEZXRhaWwgKi9cbiAgICBAbWVkaWEgKHByZWZlcnMtY29udHJhc3Q6IGhpZ2gpIHtcbiAgICAgICAgLm1vYmlsZS1pdGVtLWNhcmQge1xuICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiAycHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5tb2JpbGUtc3VtbWFyeS1yb3c6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItdG9wLXdpZHRoOiAzcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogUHJpbnQgU3R5bGVzICovXG4gICAgQG1lZGlhIHByaW50IHtcbiAgICAgICAgLm1vYmlsZS1vcmRlci1pdGVtcyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG59IC8vIEVuZCBvZiAucGFnZV9pc19wcm9maWxlX3BhZ2VcblxuLyoqXG4gKiBQcm9maWxlIEVkaXQgUGFnZSBTdHlsZXNcbiAqL1xuLnBhZ2VfaXNfZWRpdF9wcm9maWxlLFxuLnBhZ2VfaXNfcHJvZmlsZV9lZGl0IHtcbiAgICBcbiAgICAucHJvZmlsZS1pbWFnZS1sYXJnZSB7XG4gICAgICAgIHdpZHRoOiAxNTBweDtcbiAgICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgYm9yZGVyOiAzcHggc29saWQgI2RlZTJlNjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cbiAgICBcbiAgICAucHJvZmlsZS1pbWFnZS1wbGFjZWhvbGRlciB7XG4gICAgICAgIHdpZHRoOiAxNTBweDtcbiAgICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICAgICAgICBib3JkZXI6IDNweCBzb2xpZCAjZGVlMmU2O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuICAgIFxuICAgIC5wcm9maWxlLWltYWdlLXByZXZpZXcge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gICAgXG4gICAgLnByb2ZpbGUtaW1hZ2Utc2VjdGlvbiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgXG4gICAgICAgICY6aG92ZXIgLmltYWdlLXVwbG9hZC1vdmVybGF5IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmltYWdlLXVwbG9hZC1vdmVybGF5IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICB3aWR0aDogMTUwcHg7XG4gICAgICAgIGhlaWdodDogMTUwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICAgIFxuICAgIC5mb3JtLWNvbnRyb2w6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSh2YXIoLS1icy1wcmltYXJ5LXJnYiksIDAuMjUpO1xuICAgIH1cbiAgICBcbiAgICAuYnRuLW91dGxpbmUtcHJpbWFyeTpob3ZlciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoMCwwLDAsLjEpO1xuICAgIH1cbiAgICBcbiAgICAvKiBQcm9maWxlIGNhcmQgaG92ZXIgc3RhdGUgZGlzYWJsZWQgKi9cbn1cblxuLyoqXG4gKiBFbWFpbCBQcmVmZXJlbmNlcyBQYWdlIFN0eWxlc1xuICovXG4ucGFnZV9pc19lbWFpbF9wcmVmZXJlbmNlcyB7XG4gICAgLmNhcmQge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgICAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAuMTI1cmVtIDAuMjVyZW0gcmdiYSgwLCAwLCAwLCAwLjA3NSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZWUyZTY7XG4gICAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbiAgICB9XG4gICAgXG4gICAgLmZvcm0tY2hlY2sge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgICB9XG4gICAgXG4gICAgLmZvcm0tY2hlY2staW5wdXQ6Y2hlY2tlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICAgIH1cbiAgICBcbiAgICAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgICAgXG4gICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICBjb2xvcjogIzQ5NTA1NztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuaC1maXQge1xuICAgICAgICBoZWlnaHQ6IGZpdC1jb250ZW50O1xuICAgIH1cbiAgICBcbiAgICAuYnRuLW91dGxpbmUtcHJpbWFyeTpob3ZlciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoMCwwLDAsLjEpO1xuICAgIH1cbiAgICBcbiAgICAudGV4dC1wcmltYXJ5IHtcbiAgICAgICAgY29sb3I6IHZhcigtLWJzLXByaW1hcnkpICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgIC5iZy1saWdodCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmEgIWltcG9ydGFudDtcbiAgICB9XG4gICAgXG4gICAgLnNtYWxsIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICB9XG59IiwiLy8gQ29udGVudCBQYWdlIFN0eWxlc1xuLy8gRm9yIGxlZ2FsIHBhZ2VzLCBhYm91dCB1cywgYW5kIG90aGVyIGNvbnRlbnQtaGVhdnkgcGFnZXNcblxuLnByb3NlIHtcbiAgICAvLyBUeXBvZ3JhcGh5IGFkanVzdG1lbnRzIGZvciBjb250ZW50LWhlYXZ5IHBhZ2VzXG4gICAgXG4gICAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEuNWVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjc1ZW07XG4gICAgICAgIFxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuMjVlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNztcbiAgICB9XG4gICAgXG4gICAgdWwsIG9sIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS4yNWVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuNWVtO1xuICAgICAgICBcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICAgIEBleHRlbmQgLmJsb2NrcXVvdGU7XG4gICAgICAgIG1hcmdpbjogMS41ZW0gMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjVlbTtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCB2YXIoLS1icy1ncmF5LTMwMCk7XG4gICAgfVxuICAgIFxuICAgIHRhYmxlIHtcbiAgICAgICAgQGV4dGVuZCAudGFibGU7XG4gICAgICAgIEBleHRlbmQgLnRhYmxlLWJvcmRlcmVkO1xuICAgICAgICBtYXJnaW46IDEuNWVtIDA7XG4gICAgfVxuICAgIFxuICAgIGltZyB7XG4gICAgICAgIEBleHRlbmQgLmltZy1mbHVpZDtcbiAgICAgICAgbWFyZ2luOiAxLjVlbSAwO1xuICAgIH1cbiAgICBcbiAgICAvLyBMaW5rcyBpbiBjb250ZW50XG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gTWF4IHdpZHRoIHV0aWxpdHkgZm9yIGNvbnRlbnRcbi5tYXgtdy1ub25lIHtcbiAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbn0iLCIvLyBDb21wYXJpc29uIFBhZ2UgU3R5bGVzXG4vLyBDdXN0b20gc3R5bGVzIGZvciBwcm9kdWN0IGNvbXBhcmlzb24gZnVuY3Rpb25hbGl0eVxuXG4ucGFnZV9pc19jb21wYXJpc29uX3BhZ2Uge1xuICAgIC5jb21wYXJpc29uLXRhYmxlIHtcbiAgICAgICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgICAgICAgXG4gICAgICAgIHRoIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWdyYXktMTAwKTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5lbXB0eS1jZWxsIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWdyYXktNTApO1xuICAgICAgICAgICAgYm9yZGVyOiAycHggZGFzaGVkIHZhcigtLWJzLWJvcmRlci1jb2xvcik7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5lbXB0eS1wbGFjZWhvbGRlciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogM3JlbSAwO1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIC5mYS1wbHVzLWNpcmNsZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1icy1zZWNvbmRhcnkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuY29tcGFyaXNvbi1jb250YWluZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgIH1cbiAgICBcbiAgICAucmVtb3ZlLWl0ZW0tYnRuIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICB9XG4gICAgXG4gICAgLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtaW4taGVpZ2h0OiAxNTBweDtcbiAgICAgICAgXG4gICAgICAgIC5wcm9kdWN0LWltYWdlIHtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEyMHB4O1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLnByaWNlLXNhbGUge1xuICAgICAgICBjb2xvcjogdmFyKC0tYnMtZGFuZ2VyKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuICAgIFxuICAgIC5wcmljZS1vcmlnaW5hbCB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICAgICAgICBjb2xvcjogdmFyKC0tYnMtc2Vjb25kYXJ5KTtcbiAgICAgICAgZm9udC1zaXplOiAwLjllbTtcbiAgICB9XG59IiwiLy8gTm90aWZpY2F0aW9ucyBQYWdlIFN0eWxlc1xuLnBhZ2VfaXNfbm90aWZpY2F0aW9ucyB7XG4gIC8vIEltcG9ydCB0eXBvZ3JhcGh5IHZhcmlhYmxlc1xuICAkbm90aWZpY2F0aW9uLWZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBzYW5zLXNlcmlmO1xuICAkbm90aWZpY2F0aW9uLWZvbnQtd2VpZ2h0LW5vcm1hbDogNDAwO1xuICAkbm90aWZpY2F0aW9uLWZvbnQtd2VpZ2h0LXNlbWlib2xkOiA2MDA7XG5cbiAgLy8gTm90aWZpY2F0aW9ucyBsaXN0XG4gIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGg1IHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkbm90aWZpY2F0aW9uLWZvbnQtZmFtaWx5O1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgZm9udC13ZWlnaHQ6ICRub3RpZmljYXRpb24tZm9udC13ZWlnaHQtc2VtaWJvbGQ7XG4gICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgY29sb3I6ICMzMzM7XG5cbiAgICAgICYuZnctYm9sZCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkbm90aWZpY2F0aW9uLWZvbnQtd2VpZ2h0LXNlbWlib2xkO1xuICAgICAgfVxuICAgIH1cblxuICAgIHAge1xuICAgICAgZm9udC1mYW1pbHk6ICRub3RpZmljYXRpb24tZm9udC1mYW1pbHk7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBmb250LXdlaWdodDogJG5vdGlmaWNhdGlvbi1mb250LXdlaWdodC1ub3JtYWw7XG4gICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgY29sb3I6ICM1NTU7XG4gICAgfVxuXG4gICAgc21hbGwge1xuICAgICAgZm9udC1mYW1pbHk6ICRub3RpZmljYXRpb24tZm9udC1mYW1pbHk7XG4gICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICBjb2xvcjogIzZjNzU3ZDtcblxuICAgICAgaSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFBhZ2UgdGl0bGVcbiAgaDEge1xuICAgIGZvbnQtZmFtaWx5OiAkbm90aWZpY2F0aW9uLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICBmb250LXdlaWdodDogJG5vdGlmaWNhdGlvbi1mb250LXdlaWdodC1zZW1pYm9sZDtcbiAgICBjb2xvcjogIzMzMztcbiAgfVxuXG4gIC8vIEFsZXJ0IHN0eWxpbmdcbiAgLmFsZXJ0IHtcbiAgICBoNCB7XG4gICAgICBmb250LWZhbWlseTogJG5vdGlmaWNhdGlvbi1mb250LWZhbWlseTtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkbm90aWZpY2F0aW9uLWZvbnQtd2VpZ2h0LXNlbWlib2xkO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgZm9udC1mYW1pbHk6ICRub3RpZmljYXRpb24tZm9udC1mYW1pbHk7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBmb250LXdlaWdodDogJG5vdGlmaWNhdGlvbi1mb250LXdlaWdodC1ub3JtYWw7XG4gICAgfVxuICB9XG5cbiAgLy8gQmFkZ2Ugc3R5bGluZ1xuICAuYmFkZ2Uge1xuICAgIGZvbnQtZmFtaWx5OiAkbm90aWZpY2F0aW9uLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBmb250LXdlaWdodDogJG5vdGlmaWNhdGlvbi1mb250LXdlaWdodC1ub3JtYWw7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIGFkanVzdG1lbnRzXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgICAgaDUge1xuICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICB9XG5cbiAgICAgIHAge1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICB9XG5cbiAgICAgIHNtYWxsIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIGgxIHtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIE5vdGlmaWNhdGlvbnMgSW5kZXggUGFnZSBTdHlsZXNcbi5wYWdlX2lzX25vdGlmaWNhdGlvbnMge1xuICAgIC5ub3RpZmljYXRpb24tdW5yZWFkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2UzZjJmZDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAjMjE5NkYzO1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmJkZWZiO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm5vdGlmaWNhdGlvbi1yZWNlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZThmNWU5O1xuICAgICAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkICM0Q0FGNTA7XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXMgZWFzZS1pbi1vdXQsIGJvcmRlci1sZWZ0LWNvbG9yIDFzIGVhc2UtaW4tb3V0O1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzhlNmM5O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpO1xuICAgICAgICB9XG4gICAgfVxufSIsIi8vIFdpc2hsaXN0IFBhZ2UgU3R5bGVzXG4vLyBBbWF6b24tc3R5bGUgc2luZ2xlIHJvdyBsYXlvdXRcblxuLndpc2hsaXN0LXBhZ2Uge1xuICAgIG1pbi1oZWlnaHQ6IDUwMHB4O1xuICAgIFxuICAgIC8vIEVtcHR5IHN0YXRlIHN0eWxpbmdcbiAgICAuZW1wdHktd2lzaGxpc3Qge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDRyZW0gMnJlbTtcbiAgICAgICAgXG4gICAgICAgIC5lbXB0eS1pY29uIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1icy1ncmF5LTQwMCk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBwdWxzZSAycyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgaDMge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWJzLWdyYXktNjAwKTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gR3Vlc3Qgbm90aWNlIHN0eWxpbmdcbiAgICAuZ3Vlc3Qtbm90aWNlIHtcbiAgICAgICAgYW5pbWF0aW9uOiBzbGlkZURvd24gMC41cyBlYXNlO1xuICAgIH1cbiAgICBcbiAgICAvLyBBbWF6b24tc3R5bGUgbGlzdCBsYXlvdXRcbiAgICAud2lzaGxpc3QtbGlzdCB7XG4gICAgICAgIC53aXNobGlzdC1pdGVtLXJvdyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICAgICAgbWluLWhlaWdodDogODBweDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAycHggOHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJi5yZW1vdmluZyB7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uOiByZW1vdmVJdGVtIDAuNXMgZWFzZSBmb3J3YXJkcztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLy8gTWFpbiBmbGV4IGNvbnRhaW5lclxuICAgICAgICAgICAgPiAuZC1mbGV4IHtcbiAgICAgICAgICAgICAgICBnYXA6IDFyZW07XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC8vIFByb2R1Y3QgaW1hZ2Ugc2VjdGlvblxuICAgICAgICAgICAgLndpc2hsaXN0LWl0ZW0taW1hZ2Uge1xuICAgICAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogODBweDtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gMXJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgLmltYWdlLXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2Y4ZjlmYTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC8vIEl0ZW0gZGV0YWlscyBzZWN0aW9uXG4gICAgICAgICAgICAud2lzaGxpc3QtaXRlbS1kZXRhaWxzIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzAwNjZjMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAucHJpY2UtaW5mbyB7XG4gICAgICAgICAgICAgICAgICAgIC5oNSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC8vIEFjdGlvbiBidXR0b25zIHNlY3Rpb25cbiAgICAgICAgICAgIC53aXNobGlzdC1pdGVtLWFjdGlvbnMge1xuICAgICAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZ2FwOiAwLjVyZW07XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIC5tb3ZlLXRvLXRvcCxcbiAgICAgICAgICAgICAgICAucmVtb3ZlLWZyb20td2lzaGxpc3Qge1xuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0NHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMC4zNzVyZW07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIEFuaW1hdGlvbnNcbkBrZXlmcmFtZXMgcHVsc2Uge1xuICAgIDAlLCAxMDAlIHsgb3BhY2l0eTogMC41OyB9XG4gICAgNTAlIHsgb3BhY2l0eTogMTsgfVxufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlRG93biB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyByZW1vdmVJdGVtIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7XG4gICAgfVxufVxuXG4vLyBMb2FkaW5nIG92ZXJsYXkgZm9yIHdpc2hsaXN0IGFjdGlvbnNcbi53aXNobGlzdC1sb2FkaW5nLW92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB6LWluZGV4OiA5OTk5O1xuICAgIFxuICAgIC5zcGlubmVyLWJvcmRlciB7XG4gICAgICAgIHdpZHRoOiAzcmVtO1xuICAgICAgICBoZWlnaHQ6IDNyZW07XG4gICAgfVxufVxuXG4vLyBNb2JpbGUtc3BlY2lmaWMgYWRqdXN0bWVudHNcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIC53aXNobGlzdC1wYWdlIHtcbiAgICAgICAgLnBhZ2UtaGVhZGVyIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNzVyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8vIEVuc3VyZSB0b3VjaC1mcmllbmRseSBidXR0b24gc2l6ZXNcbiAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA0NHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8vIE9wdGltaXplIGNhcmQgc3BhY2luZyBvbiBtb2JpbGVcbiAgICAgICAgLmNhcmQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gQmFkZ2UgY29sb3Igc3R5bGVzIChsZWdhY3kgc3R5bGVzIGZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5KVxuLmJnLXB1cnBsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2EzN2ViYSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiB3aGl0ZTtcbn1cblxuLmJnLXRlYWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3ZWJhYWQgIWltcG9ydGFudDtcbiAgICBjb2xvcjogd2hpdGU7XG59IiwiLy8gU2VsbGVyIFByb2ZpbGUgUGFnZSBTdHlsZXNcbi8vIFJlbW92ZXMgdW53YW50ZWQgaG92ZXIgZWZmZWN0cyBhbmQgcHJvdmlkZXMgY2xlYW4gc3R5bGluZ1xuXG4ucGFnZS1pcy1zZWxsZXItcHJvZmlsZSB7XG4gICAgLy8gUmVtb3ZlIGNhcmQgaG92ZXIgdHJhbnNmb3JtIGVmZmVjdFxuICAgIC5jYXJkIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjNzIGVhc2U7XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwLjEyNXJlbSAwLjI1cmVtIHJnYmEoMCwgMCwgMCwgMC4wNzUpO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIFNlbGxlciBiaW8gc3R5bGluZ1xuICAgIC5zZWxsZXItYmlvIHtcbiAgICAgICAgbWF4LXdpZHRoOiA4MDBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgY29sb3I6ICM0OTUwNTc7XG4gICAgICAgIFxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBQcm9kdWN0IGdyaWRcbiAgICAucHJvZHVjdC1ncmlkIHtcbiAgICAgICAgLnByb2R1Y3QtY2FyZCB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuM3MgZWFzZTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwLjVyZW0gMXJlbSByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIEVtcHR5IHN0YXRlXG4gICAgLmVtcHR5LXN0YXRlIHtcbiAgICAgICAgcGFkZGluZzogNXJlbSAwO1xuICAgICAgICBcbiAgICAgICAgLmVtcHR5LWljb24ge1xuICAgICAgICAgICAgb3BhY2l0eTogMC4zO1xuICAgICAgICB9XG4gICAgfVxufSIsIi8vIFNlbGxlciBQcm9maWxlIFNob3cgUGFnZSBTdHlsZXNcbi5wYWdlLWlzLXNlbGxlci1wcm9maWxlIHtcbiAgICAuY2FyZCB7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzO1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLnNlbGxlci1iaW8ge1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICAgIGNvbG9yOiAjMzMzO1xuICAgICAgICBtYXgtd2lkdGg6IDgwMHB4O1xuICAgICAgICBcbiAgICAgICAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIHVsLCBvbCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxufSIsIi8vIFNlYXJjaCBSZXN1bHRzIFBhZ2UgU3R5bGVzXG4ucGFnZV9pc19zZWFyY2hfcmVzdWx0c19wYWdlIHtcbiAgICAuc2VhcmNoLXJlc3VsdHMtcGFnZSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDcwdmg7XG4gICAgfVxuICAgIFxuICAgIC5zZWFyY2gtaGVhZGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2Y4ZjlmYSAwJSwgI2U5ZWNlZiAxMDAlKTtcbiAgICAgICAgcGFkZGluZzogMnJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICB9XG4gICAgXG4gICAgLm5vLXJlc3VsdHMge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZjhmOWZhO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgICAgICBtYXJnaW46IDJyZW0gMDtcbiAgICB9XG4gICAgXG4gICAgLnNlYXJjaC1zdWdnZXN0aW9ucyB7XG4gICAgICAgIC5idG4ge1xuICAgICAgICAgICAgbWFyZ2luOiAwLjI1cmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5zZWFyY2gtdGlwcyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgIH1cbiAgICBcbiAgICAudW5pZmllZC1zZWFyY2gtY29udGFpbmVyIHtcbiAgICAgICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuICAgIFxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAuc2VhcmNoLWhlYWRlciB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5zZWFyY2gtcmVzdWx0cy1saXN0IC5jYXJkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG59IiwiLy8gU2VhcmNoIEFqYXggVW5pZmllZCBQYWdlIFN0eWxlc1xuLnBhZ2VfaXNfc2VhcmNoX3Jlc3VsdHNfdW5pZmllZF9wYWdlIHtcbiAgICAucHJvZHVjdC1jYXJkIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2UwZTBlMDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCA0cHggMTJweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FyZC1pbWctY29udGFpbmVyIHtcbiAgICAgICAgaGVpZ2h0OiAyMDBweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XG4gICAgfVxuXG4gICAgLnByb2R1Y3QtaW1hZ2Uge1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgfVxuXG4gICAgLnByb2R1Y3QtYmFkZ2VzIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuXG4gICAgLmJhZGdlLXNhbGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGMzNTQ1O1xuICAgIH1cblxuICAgIC5iYWRnZS1uZXcge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjhhNzQ1O1xuICAgIH1cblxuICAgIC5iYWRnZS1mZWF0dXJlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxZTFlNTY7XG4gICAgfVxuXG4gICAgLnByb2R1Y3QtdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgY29sb3I6ICMzMzM7XG4gICAgfVxuXG4gICAgLnByb2R1Y3QtcHJpY2Uge1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgIH1cblxuICAgIC5zYWxlLXByaWNlIHtcbiAgICAgICAgY29sb3I6ICNkYzM1NDU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7XG4gICAgfVxuXG4gICAgLnByb2R1Y3QtbGluayB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgLmJnLXB1cnBsZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNhMzdlYmE7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICB9XG5cbiAgICAuYmctdGVhbCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM3ZWJhYWQ7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICB9XG59IiwiLy8gRGlzY292ZXIgUGFnZSBTdHlsZXNcbi5wYWdlX2lzX2Rpc2NvdmVyX3BhZ2Uge1xuICAgIC8qIERpc2NvdmVyIFBhZ2UgU3R5bGluZyAqL1xuICAgIC5kaXNjb3Zlci1oZXJvIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2Y4ZjlmYSAwJSwgI2U5ZWNlZiAxMDAlKTtcbiAgICAgICAgcGFkZGluZzogODBweCAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgICAgICBcbiAgICAgICAgaDEge1xuICAgICAgICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC41cHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubGVhZCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgICAgIG1heC13aWR0aDogNzAwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuY29udGVudC1jYXJkIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAuMTI1cmVtIDAuNXJlbSByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZSwgYm94LXNoYWRvdyAwLjNzIGVhc2U7XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMC41cmVtIDEuNXJlbSByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5jYXJkLWltZy10b3Age1xuICAgICAgICAgICAgaGVpZ2h0OiAyMDBweDtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5zZWN0aW9uLWhlYWRlciB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgICAgICAgXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgIGNvbG9yOiAjMmMzZTUwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAucGxhY2Vob2xkZXItaW1hZ2Uge1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZTllY2VmIDAlLCAjZGVlMmU2IDEwMCUpO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgICAgICBoZWlnaHQ6IDIwMHB4O1xuICAgIH1cbn0iLCIvLyBQcm9maWxlIE9yZGVyIERldGFpbCBQYWdlIFN0eWxlc1xuLnBhZ2UtaXMtcHJvZmlsZS1vcmRlci1kZXRhaWwge1xuICAgIC8vIFRpbWVsaW5lIFN0eWxlc1xuICAgIC50aW1lbGluZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgICBcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMTBweDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIHdpZHRoOiAycHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGVlMmU2O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC50aW1lbGluZS1pdGVtIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtO1xuICAgICAgICBcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC50aW1lbGluZS1tYXJrZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IC0yMHB4O1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNmZmY7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDJweCAjZGVlMmU2O1xuICAgIH1cbiAgICBcbiAgICAudGltZWxpbmUtY29udGVudCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICB9XG59IiwiLyoqXG4gKiBDb29raWUgQ29uc2VudCBQYWdlIFN0eWxlc1xuICovXG5cbi5jb29raWUtY29uc2VudC1iYW5uZXIge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIHBhZGRpbmc6IDFyZW0gMDtcbiAgICB6LWluZGV4OiA5OTk5O1xuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcblxuICAgIC5idG4tb3V0bGluZS1saWdodCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKipcbiAqIEFzayBRdWVzdGlvbiBQYWdlIFN0eWxlc1xuICogU3R5bGVzIGZvciB0aGUgZ2VuZXJhbCBhc2sgcXVlc3Rpb24gcGFnZVxuICovXG5cbi5wYWdlLWlzLWFzay1xdWVzdGlvbi1nZW5lcmFsIHtcbiAgICAvLyBQYWdlLXNwZWNpZmljIHN0eWxlcyBjYW4gYmUgYWRkZWQgaGVyZSBhcyBuZWVkZWRcbiAgICBcbiAgICAuZm9ybS10ZXh0IHtcbiAgICAgICAgJi50ZXh0LXdhcm5pbmcge1xuICAgICAgICAgICAgY29sb3I6ICM4NTY0MDQgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJi50ZXh0LWRhbmdlciB7XG4gICAgICAgICAgICBjb2xvcjogIzcyMWMyNCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgICNnZW5lcmFsUXVlc3Rpb25Gb3JtIHtcbiAgICAgICAgdGV4dGFyZWEge1xuICAgICAgICAgICAgcmVzaXplOiB2ZXJ0aWNhbDtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEyMHB4O1xuICAgICAgICB9XG4gICAgfVxufSIsIi8qKlxuICogUHJvZmlsZSBMYXlvdXQgUGFnZSBTdHlsZXNcbiAqIE1vYmlsZS1maXJzdCByZXNwb25zaXZlIHN0eWxlcyBmb3IgcHJvZmlsZSBsYXlvdXRcbiAqL1xuXG4ucGFnZV9pc19wcm9maWxlX3BhZ2Uge1xuICAgIC8qIE1vYmlsZS1GaXJzdCBQcm9maWxlIFBhZ2UgU3R5bGVzICovXG4gICAgXG4gICAgLyogQmFzZSBTdHlsZXMgKE1vYmlsZSBGaXJzdCkgKi9cbiAgICAucHJvZmlsZS1zaWRlYmFyIHtcbiAgICAgICAgLyogYmFja2dyb3VuZC1jb2xvciByZW1vdmVkIC0gdXNpbmcgY2FyZCBiYWNrZ3JvdW5kICovXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgICAgICAgLyogcGFkZGluZyByZW1vdmVkIC0gdXNpbmcgY2FyZC1ib2R5IHBhZGRpbmcgKi9cblxuICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgY29sb3I6ICM0OTUwNTc7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDEuMjVyZW07IC8qIExhcmdlciB0b3VjaCB0YXJnZXRzIGZvciBtb2JpbGUgKi9cbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuMTI1cmVtO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMC4zNzVyZW07XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICAgICAgbWluLWhlaWdodDogNDhweDsgLyogTWluaW11bSB0b3VjaCB0YXJnZXQgc2l6ZSAqL1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2NlZDRkYTtcbiAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XG4gICAgICAgICAgICAgICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjY2VkNGRhO1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2JhKDAsMCwwLDAuMSk7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcblxuICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjRweDsgLyogTGFyZ2VyIGljb25zIGZvciBtb2JpbGUgKi9cbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNtYWxsIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC44O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBGb2N1cyBpbmRpY2F0b3JzIGZvciBrZXlib2FyZCBuYXZpZ2F0aW9uXG4gICAgICAgICAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgICAgICAgICAgIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICBvdXRsaW5lLW9mZnNldDogMnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5wcm9maWxlLWF2YXRhciB7XG4gICAgICAgIHdpZHRoOiA2NHB4OyAvKiBTbWFsbGVyIG9uIG1vYmlsZSAqL1xuICAgICAgICBoZWlnaHQ6IDY0cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIGJvcmRlcjogM3B4IHNvbGlkICNmZmY7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDhweCByZ2JhKDAsMCwwLDAuMSk7XG4gICAgfVxuICAgIFxuICAgIC5wcm9maWxlLWhlYWRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG4gICAgXG4gICAgLnByb2ZpbGUtY2FyZCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG4gICAgXG4gICAgLnN0YXQtY2FyZCB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMS4yNXJlbSAxcmVtO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNlOWVjZWY7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDRweCAxMnB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zdGF0LXZhbHVlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICB9XG5cbiAgICAgICAgLnN0YXQtbGFiZWwge1xuICAgICAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIE1vYmlsZSBOYXZpZ2F0aW9uIFNwZWNpZmljICovXG4gICAgLm5hdi1waWxscy1tb2JpbGUgLm5hdi1saW5rIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgICB9XG4gICAgXG4gICAgLyogQnJlYWRjcnVtYiBNb2JpbGUgT3B0aW1pemF0aW9uICovXG4gICAgLmJyZWFkY3J1bWIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgcGFkZGluZzogMC41cmVtIDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG5cbiAgICAgICAgLmJyZWFkY3J1bWItaXRlbSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuXG4gICAgICAgICAgICArIC5icmVhZGNydW1iLWl0ZW06OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC4zcmVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC4zcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIEFsZXJ0IE9wdGltaXphdGlvbnMgKi9cbiAgICAuYWxlcnQge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIHBhZGRpbmc6IDAuODc1cmVtIDFyZW07XG4gICAgfVxuICAgIFxuICAgIC8qIE1vYmlsZSBUb3VjaCBJbXByb3ZlbWVudHMgKi9cbiAgICAuYnRuIHtcbiAgICAgICAgbWluLWhlaWdodDogMzhweDsgLyogUmVkdWNlZCBoZWlnaHQgKi9cbiAgICAgICAgcGFkZGluZzogMC41cmVtIDFyZW07IC8qIFJlZHVjZWQgcGFkZGluZyAqL1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDJweCA4cHggcmdiYSgwLDAsMCwwLjE1KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgICAgICBvdXRsaW5lOiAycHggc29saWQgdmFyKC0tYnMtcHJpbWFyeSk7XG4gICAgICAgICAgICBvdXRsaW5lLW9mZnNldDogMnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjY7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBUb3VjaCBpbnRlcmFjdGlvbiBmZWVkYmFjayAqL1xuICAgIC50b3VjaC1hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDEyMywgMjU1LCAwLjEpICFpbXBvcnRhbnQ7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC45OCk7XG4gICAgfVxuICAgIFxuICAgIC8qIFNtb290aCB0cmFuc2l0aW9ucyBmb3IgbW9iaWxlIG5hdiAqL1xuICAgICNtb2JpbGUtcHJvZmlsZS1uYXYge1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICB9XG4gICAgXG4gICAgLyogVGFibGV0IFN0eWxlcyAobWQgYnJlYWtwb2ludCBhbmQgdXApICovXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIC5wcm9maWxlLXNpZGViYXIge1xuICAgICAgICAgICAgLyogcGFkZGluZyBoYW5kbGVkIGJ5IGNhcmQtYm9keSAqL1xuXG4gICAgICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuODc1cmVtIDFyZW07XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogYXV0bztcblxuICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnByb2ZpbGUtYXZhdGFyIHtcbiAgICAgICAgICAgIHdpZHRoOiA3MnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA3MnB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucHJvZmlsZS1jYXJkIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEuMjVyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuc3RhdC1jYXJkIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEuNXJlbTtcblxuICAgICAgICAgICAgLnN0YXQtdmFsdWUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmJyZWFkY3J1bWIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogRGVza3RvcCBTdHlsZXMgKGxnIGJyZWFrcG9pbnQgYW5kIHVwKSAqL1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAucHJvZmlsZS1zaWRlYmFyIHtcbiAgICAgICAgICAgIC8qIHBhZGRpbmcgaGFuZGxlZCBieSBjYXJkLWJvZHkgKi9cblxuICAgICAgICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5wcm9maWxlLWF2YXRhciB7XG4gICAgICAgICAgICB3aWR0aDogOTBweDtcbiAgICAgICAgICAgIGhlaWdodDogOTBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnByb2ZpbGUtaGVhZGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEuNXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5wcm9maWxlLWNhcmQge1xuICAgICAgICAgICAgcGFkZGluZzogMS41cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuc3RhdC1jYXJkIHtcbiAgICAgICAgICAgIC5zdGF0LXZhbHVlIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIuMjVyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zdGF0LWxhYmVsIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuYnJlYWRjcnVtYiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogTGFyZ2UgRGVza3RvcCBTdHlsZXMgKHhsIGJyZWFrcG9pbnQgYW5kIHVwKSAqL1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgLnN0YXQtY2FyZDpob3ZlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTNweCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogQWNjZXNzaWJpbGl0eSBJbXByb3ZlbWVudHMgKi9cbiAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgICAucHJvZmlsZS1zaWRlYmFyIC5uYXYtbGluayxcbiAgICAgICAgLnByb2ZpbGUtY2FyZCxcbiAgICAgICAgLnN0YXQtY2FyZCxcbiAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuc3RhdC1jYXJkOmhvdmVyLFxuICAgICAgICAuYnRuOmhvdmVyIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBIaWdoIGNvbnRyYXN0IG1vZGUgc3VwcG9ydCAqL1xuICAgIEBtZWRpYSAocHJlZmVycy1jb250cmFzdDogaGlnaCkge1xuICAgICAgICAucHJvZmlsZS1zaWRlYmFyIC5uYXYtbGluayB7XG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjNmM3NTdkO1xuXG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnByb2ZpbGUtY2FyZCxcbiAgICAgICAgLnN0YXQtY2FyZCB7XG4gICAgICAgICAgICBib3JkZXItd2lkdGg6IDJweDtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKipcbiAqIFByb2ZpbGUgQWRkcmVzc2VzIFBhZ2UgU3R5bGVzXG4gKi9cblxuLnBhZ2VfaXNfcHJvZmlsZV9wYWdlIHtcbiAgICAuYWRkcmVzcy1jYXJkIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwLjVyZW0gMXJlbSByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5kZWZhdWx0LWFkZHJlc3Mge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNmZmYgMCUsICNmOGY5ZmYgMTAwJSk7XG4gICAgICAgIH1cblxuICAgICAgICAuYWRkcmVzcy1kZXRhaWxzIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmJhZGdlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcblxuICAgICAgICAgICAgJi5iZy1wcmltYXJ5IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1wcmltYXJ5KSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC8vIEljb24tb25seSBkcm9wZG93biB0b2dnbGUgYnV0dG9uc1xuICAgIC5kcm9wZG93biAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5LmJ0bi1zbS5kcm9wZG93bi10b2dnbGUge1xuICAgICAgICB3aWR0aDogMzJweDtcbiAgICAgICAgaGVpZ2h0OiAzMnB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAudGV4dC1zdWNjZXNzIHtcbiAgICAgICAgY29sb3I6ICMxOTg3NTQgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuZmEtM3gge1xuICAgICAgICBmb250LXNpemU6IDNyZW07XG4gICAgfVxuXG4gICAgLy8gQWNjZXNzaWJpbGl0eSBpbXByb3ZlbWVudHMgZm9yIHJlZHVjZWQgbW90aW9uXG4gICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgLmFkZHJlc3MtY2FyZCB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLy8gUHJvZmlsZSBTZWN1cml0eSBQYWdlIFN0eWxlc1xuLnByb2ZpbGUtc2VjdXJpdHktcGFnZSB7XG4gICAgLnBhc3N3b3JkLXJlcXVpcmVtZW50cyB7XG4gICAgICAgIC5yZXF1aXJlbWVudCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAmLnZhbGlkIHtcbiAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMxOTg3NTQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDBjXCI7IC8vIGZhLWNoZWNrXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLnBhc3N3b3JkLXN0cmVuZ3RoIHtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2U7XG4gICAgfVxuICAgIFxuICAgIC5wcm9ncmVzcy1iYXIge1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgIH1cbiAgICBcbiAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZm9ybS1jb250cm9sOmZvY3VzICsgLmJ0biB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJzLXByaW1hcnkpO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC50YWJsZSBjb2RlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgICAgICAgcGFkZGluZzogMC4ycmVtIDAuNHJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICB9XG59IiwiLy8gUHJvZmlsZSBJbnZvaWNlIFBhZ2UgU3R5bGVzXG4ucGFnZS1pcy1wcm9maWxlLWludm9pY2Uge1xuICAgIC5pbnZvaWNlLWNvbnRhaW5lciB7XG4gICAgICAgIG1heC13aWR0aDogODAwcHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgfVxufVxuXG4vLyBQcmludCBzdHlsZXMgZm9yIGludm9pY2VcbkBtZWRpYSBwcmludCB7XG4gICAgLm5hdmJhcixcbiAgICAuZm9vdGVyLFxuICAgIC5uby1wcmludCxcbiAgICAuYnJlYWRjcnVtYiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gICAgXG4gICAgLmludm9pY2UtY29udGFpbmVyIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cbiAgICBcbiAgICBib2R5IHtcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgfVxufSIsIi8qKlxuICogQmxvZyBJbmRleCBQYWdlIFN0eWxlc1xuICogU3R5bGVzIGZvciB0aGUgbWFpbiBibG9nIGxpc3RpbmcgcGFnZVxuICovXG5cbi5wYWdlLWlzLWJsb2ctaW5kZXgge1xuICAgIC8qIEhlcm8gU2VjdGlvbiAqL1xuICAgIC5oZXJvLWZlYXR1cmVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQwMHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwwLDAsMC4zKSwgcmdiYSgwLDAsMCwwLjgpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBGZWF0dXJlZCBDYXJkcyAqL1xuICAgIC5mZWF0dXJlZC1jYXJkIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC50aHVtYm5haWwge1xuICAgICAgICAgICAgaGVpZ2h0OiAyNTBweDtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyogQ2F0ZWdvcnkgQmFkZ2VzICovXG4gICAgLmNhdGVnb3J5LWJhZGdlIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgIH1cblxuICAgIC8qIEJsb2cgUG9zdCBDYXJkcyAqL1xuICAgIC5ibG9nLXBvc3Qge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZWUyZTY7XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYmxvZy1wb3N0LXRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICMwZDZlZmQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYmxvZy1wb3N0LW1ldGEge1xuICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNDk1MDU3O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIFNpZGViYXIgKi9cbiAgICAuc2lkZWJhci1zZWN0aW9uIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcblxuICAgICAgICBoNCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyogQXJjaGl2ZSBMaXN0ICovXG4gICAgLmFyY2hpdmUtbGlzdCB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgcGFkZGluZzogMC41cmVtIDA7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2YwZjBmMDtcblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyogUG9wdWxhciBQb3N0cyAqL1xuICAgIC5wb3B1bGFyLXBvc3Qge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBnYXA6IDFyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucG9wdWxhci1wb3N0LWNvbnRlbnQge1xuICAgICAgICBoNiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMGQ2ZWZkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wb3B1bGFyLXBvc3QtbWV0YSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgfVxuXG4gICAgLy8gQWNjZXNzaWJpbGl0eSBpbXByb3ZlbWVudHMgZm9yIHJlZHVjZWQgbW90aW9uXG4gICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgLmZlYXR1cmVkLWNhcmQge1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi8vIEJsb2cgU2hvdyBQYWdlIFN0eWxlc1xuLnBhZ2UtaXMtYmxvZy1zaG93IHtcbiAgICAvKiBCbG9nIFBvc3QgU3R5bGVzICovXG4gICAgLmJsb2ctcG9zdC1oZWFkZXIge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gICAgfVxuICAgIFxuICAgIC5ibG9nLXBvc3QtdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG4gICAgXG4gICAgLmJsb2ctcG9zdC1tZXRhIHtcbiAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgIFxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNDk1MDU3O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICMwZDZlZmQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmJsb2ctcG9zdC1pbWFnZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICB9XG4gICAgXG4gICAgLmJsb2ctcG9zdC1jb250ZW50IHtcbiAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNzU7XG4gICAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgICBcbiAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIGgyLFxuICAgICAgICBoMyxcbiAgICAgICAgaDQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogTmF2aWdhdGlvbiAqL1xuICAgIC5wb3N0LW5hdmlnYXRpb24ge1xuICAgICAgICBtYXJnaW46IDIwcHg7XG4gICAgICAgIC8qIG1hcmdpbi10b3A6IDNyZW07ICovXG4gICAgICAgIC8qIHBhZGRpbmctdG9wOiAycmVtOyAqL1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICB9XG4gICAgXG4gICAgLm5hdi1wb3N0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4zcyBlYXNlO1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogIzBkNmVmZDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAubmF2LXBvc3QtbGFiZWwge1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gICAgfVxuICAgIFxuICAgIC8qIFJlbGF0ZWQgUG9zdHMgKi9cbiAgICAucmVsYXRlZC1wb3N0cyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICB9XG4gICAgXG4gICAgLnJlbGF0ZWQtcG9zdC1jYXJkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLnJlbGF0ZWQtcG9zdC1pbWFnZSB7XG4gICAgICAgIGhlaWdodDogMjAwcHg7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIH1cbiAgICBcbiAgICAvKiBTaWRlYmFyIFN0eWxlcyAoc2FtZSBhcyBibG9nIGluZGV4KSAqL1xuICAgIC5zaWRlYmFyLXNlY3Rpb24ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICBcbiAgICAgICAgaDQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBBcmNoaXZlIExpc3QgKi9cbiAgICAuYXJjaGl2ZS1saXN0IHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbSAwO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMGYwZjA7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBQb3B1bGFyIFBvc3RzICovXG4gICAgLnBvcHVsYXItcG9zdCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGdhcDogMXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5wb3B1bGFyLXBvc3QtY29udGVudCB7XG4gICAgICAgIGg2IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMGQ2ZWZkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAucG9wdWxhci1wb3N0LW1ldGEge1xuICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgIH1cbn0iLCIvLyBCbG9nIENhdGVnb3JpZXMgUGFnZSBTdHlsZXNcbi5wYWdlLWlzLWJsb2ctY2F0ZWdvcmllcyB7XG4gICAgLyogSGVybyBTZWN0aW9uICovXG4gICAgLmNhdGVnb3JpZXMtaGVybyB7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNmOGY5ZmEgMCUsICNlOWVjZWYgMTAwJSk7XG4gICAgICAgIHBhZGRpbmc6IDgwcHggMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICAgICAgXG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuNXB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmxlYWQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDYwMHB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogQ2F0ZWdvcnkgQ2FyZHMgKi9cbiAgICAuY2F0ZWdvcnktY2FyZCB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC43NXJlbTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAuMTI1cmVtIDAuNXJlbSByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAuNXJlbSAxLjVyZW0gcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5jYXJkLWltZy13cmFwcGVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBoZWlnaHQ6IDIwMHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzY2N2VlYSAwJSwgIzc2NGJhMiAxMDAlKTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJi5uby1pbWFnZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDRyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmNhcmQtYm9keSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5jYXJkLXRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG4gICAgICAgICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmNhcmQtdGV4dCB7XG4gICAgICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAgICAgICAgIC13ZWJraXQtbGluZS1jbGFtcDogMztcbiAgICAgICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5jYXRlZ29yeS1zdGF0cyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTllY2VmO1xuICAgICAgICBcbiAgICAgICAgLnN0YXQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjNDk1MDU3O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIENhdGVnb3J5IExpbmsgKi9cbiAgICAuY2F0ZWdvcnktbGluayB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIFNpZGViYXIgU3R5bGVzICovXG4gICAgLmJsb2ctc2lkZWJhciB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICAgIHRvcDogMTAwcHg7XG4gICAgfVxuICAgIFxuICAgIC5zaWRlYmFyLXdpZGdldCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgICAgICAgcGFkZGluZzogMS41cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAuMTI1cmVtIDAuNXJlbSByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICAgICAgICBcbiAgICAgICAgaDQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG4gICAgICAgICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgdWwge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMDtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2YxZjNmNTtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogIzQ5NTA1NztcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4ycyBlYXNlO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzBkNmVmZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBQb3B1bGFyIFBvc3RzIFdpZGdldCAqL1xuICAgIC5wb3B1bGFyLXBvc3Qge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBnYXA6IDFyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIFxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAucG9wdWxhci1wb3N0LWltZyB7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZTllY2VmO1xuICAgICAgICBcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLnBvcHVsYXItcG9zdC1jb250ZW50IHtcbiAgICAgICAgaDYge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnRleHQtbXV0ZWQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIFJlc3BvbnNpdmUgKi9cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgLmNhdGVnb3JpZXMtaGVybyBoMSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5ibG9nLXNpZGViYXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIvLyBBdXRoIExvZ2luIFBhZ2UgU3R5bGVzIC0gRWxlZ2FudCBKZXdlbHJ5IFRoZW1lXG4ucGFnZV9pc19sb2dpbl9wYWdlLFxuLnBhZ2UtaXMtbG9naW4tcGFnZSB7XG4gICAgXG4gICAgLy8gTWFpbiB3cmFwcGVyIHdpdGggZGlhbW9uZCBiYWNrZ3JvdW5kXG4gICAgLmxvZ2luLXBhZ2Utd3JhcHBlciB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltZy9iYW5uZXIvYmctU2lnbkluLndlYnAnKTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMDBweDsgLy8gTWF4aW11bSB0b3AgcGFkZGluZ1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgICAgICBcbiAgICAgICAgLy8gRmFsbGJhY2sgdG8gUE5HIGlmIFdlYlAgbm90IHN1cHBvcnRlZFxuICAgICAgICAubm8td2VicCAmIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltZy9iYW5uZXIvYmctU2lnbkluLnBuZycpO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvLyBQcm9ncmVzc2l2ZWx5IHJlZHVjZSB0b3AgcGFkZGluZyBvbiBzbWFsbGVyIHNjcmVlbnNcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDgwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDYwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDUwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDQwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gQ29udGFpbmVyIGZvciBjb25zdHJhaW5lZCB3aWR0aFxuICAgIC5sb2dpbi1jb250YWluZXIge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiA5MDBweDsgLy8gUmVkdWNlZCBmcm9tIDEyMDBweFxuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgICBcbiAgICAvLyBNYWluIGxvZ2luIGNhcmQgLSBlbGVnYW50IGRlc2lnblxuICAgIC5sb2dpbi1jYXJkIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgICAgICAgYm94LXNoYWRvdzogMCAyMHB4IDYwcHggcmdiYSgwLCAwLCAwLCAwLjA4KTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgICB9XG4gICAgXG4gICAgLy8gTG9nbyBoZWFkZXIgc2VjdGlvblxuICAgIC5sb2dpbi1oZWFkZXIge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMGYwZjA7XG4gICAgICAgIFxuICAgICAgICAubG9naW4tbG9nby1pbWcge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmx1eHVyeS10YWdsaW5lIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIE1haW4gY29udGVudCBhcmVhIHdpdGggY29sdW1uc1xuICAgIC5sb2dpbi1jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgbWluLWhlaWdodDogNDAwcHg7XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gQ29sdW1uIHN0eWxpbmdcbiAgICAubG9naW4tY29sdW1uIHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgcGFkZGluZzogMjBweCAzNXB4IDYwcHggMzVweDsgLy8gdG9wIHJlZHVjZWQgYnkgMjBweCwgYm90dG9tIGluY3JlYXNlZCBieSAyMHB4XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMjVweCA0NXB4IDI1cHg7IC8vIHNhbWUgYWRqdXN0bWVudCBmb3IgbW9iaWxlXG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gTGVmdCBjb2x1bW4gLSBsb2dpbiBmb3JtXG4gICAgLmxvZ2luLWZvcm0tY29sdW1uIHtcbiAgICAgICAgLmNvbHVtbi1jb250ZW50IHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMzQwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBFbGVnYW50IGRpdmlkZXIgLSBcImJvb2sgc3BpbmVcIiBlZmZlY3RcbiAgICAuYm9vay1zcGluZSB7XG4gICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIFxuICAgICAgICAgICAgdHJhbnNwYXJlbnQgMCUsIFxuICAgICAgICAgICAgI2UwZTBlMCAyMCUsIFxuICAgICAgICAgICAgI2UwZTBlMCA4MCUsIFxuICAgICAgICAgICAgdHJhbnNwYXJlbnQgMTAwJVxuICAgICAgICApO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbjogNDBweCAwO1xuICAgICAgICBcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuc3BpbmUtZGVjb3JhdGlvbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLnNwaW5lLWdlbSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNkNGFmMzc7IC8vIEdvbGQgY29sb3JcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gRm9ybSB0eXBvZ3JhcGh5XG4gICAgLndlbGNvbWUtdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgIGNvbG9yOiAjMWUxZTU2O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC41cHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgXG4gICAgLndlbGNvbWUtc3VidGl0bGUge1xuICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICAgIFxuICAgIC8vIEZvcm0gc3R5bGluZ1xuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMThweDtcbiAgICB9XG4gICAgXG4gICAgLmZvcm0tbGFiZWwge1xuICAgICAgICBjb2xvcjogIzQ5NTA1NztcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNnB4O1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgICB9XG4gICAgXG4gICAgLmVsZWdhbnQtaW5wdXQge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMTRweDtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYmZjO1xuICAgICAgICBcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICMxZTFlNTY7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYSgzMCwgMzAsIDg2LCAwLjA4KTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgICBjb2xvcjogI2FkYjViZDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIFxuICAgICAgICAuZm9ybS1jb250cm9sLFxuICAgICAgICAuZWxlZ2FudC1pbnB1dCxcbiAgICAgICAgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQwcHggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuaW5wdXQtaWNvbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMTRweDtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgY29sb3I6ICNhZGI1YmQ7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgfVxuICAgIFxuICAgIC5wYXNzd29yZC10b2dnbGUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAxNHB4O1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGNvbG9yOiAjYWRiNWJkO1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMnM7XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNDk1MDU3O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIEZvcmdvdCBwYXNzd29yZCBsaW5rXG4gICAgLmZvcmdvdC1saW5rIHtcbiAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzO1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogIzFlMWU1NjtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIEVsZWdhbnQgbG9naW4gYnV0dG9uXG4gICAgLmJ0bi1lbGVnYW50LWxvZ2luIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzFlMWU1NiAwJSwgIzJhMmE3YSAxMDAlKTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgcGFkZGluZzogMTJweCAyNHB4O1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDE1cHggcmdiYSgzMCwgMzAsIDg2LCAwLjIpO1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDZweCAyNXB4IHJnYmEoMzAsIDMwLCA4NiwgMC4zKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMyYTJhN2EgMCUsICMxZTFlNTYgMTAwJSk7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBBbGVydCBzdHlsaW5nXG4gICAgLmFsZXJ0LWVsZWdhbnQge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMTRweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIFxuICAgICAgICAmLmFsZXJ0LWRhbmdlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmNWY1O1xuICAgICAgICAgICAgY29sb3I6ICNkOTUzNGY7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogM3B4IHNvbGlkICNkOTUzNGY7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gUmlnaHQgY29sdW1uIC0gY3JlYXRlIGFjY291bnRcbiAgICAuY3JlYXRlLWFjY291bnQtY29sdW1uIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2ZhZmJmYyAwJSwgI2Y1ZjdmYSAxMDAlKTtcbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlMGUwZTA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLm5ldy1tZW1iZXItc2VjdGlvbiB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgXG4gICAgLmpvaW4tdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgIGNvbG9yOiAjMWUxZTU2O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuNXB4O1xuICAgIH1cbiAgICBcbiAgICAuam9pbi1zdWJ0aXRsZSB7XG4gICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgfVxuICAgIFxuICAgIC8vIEJlbmVmaXRzIGxpc3RcbiAgICAuYmVuZWZpdHMtbGlzdCB7XG4gICAgICAgIG1hcmdpbjogMjVweCAwO1xuICAgIH1cbiAgICBcbiAgICAuYmVuZWZpdC1pdGVtIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7XG4gICAgICAgIGNvbG9yOiAjNDk1MDU3O1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIFxuICAgICAgICBpIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZDRhZjM3OyAvLyBHb2xkIGFjY2VudFxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIENyZWF0ZSBhY2NvdW50IGJ1dHRvblxuICAgIC5idG4tY3JlYXRlLWVsZWdhbnQge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgIzFlMWU1NjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICBjb2xvcjogIzFlMWU1NjtcbiAgICAgICAgcGFkZGluZzogMTJweCAyNHB4O1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMxZTFlNTY7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDRweCAxNXB4IHJnYmEoMzAsIDMwLCA4NiwgMC4yKTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBTb2NpYWwgbG9naW4gZGl2aWRlclxuICAgIC5zb2NpYWwtZGl2aWRlciB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAyNXB4IDAgMjBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNkZWUyZTY7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2ZhZmJmYyAwJSwgI2Y1ZjdmYSAxMDAlKTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gU29jaWFsIGxvZ2luIGJ1dHRvbnNcbiAgICAuc29jaWFsLWxvZ2luLWVsZWdhbnQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiAxMHB4O1xuICAgIH1cbiAgICBcbiAgICAuc29jaWFsLWJ0bi1lbGVnYW50IHtcbiAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMWUxZTU2O1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAzcHggMTBweCByZ2JhKDMwLCAzMCwgODYsIDAuMTUpO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZhZmJmYztcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBNb2JpbGUgb25seSBjcmVhdGUgYWNjb3VudCBzZWN0aW9uXG4gICAgLm1vYmlsZS1jcmVhdGUtYWNjb3VudCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTBlMGUwO1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICBwYWRkaW5nLXRvcDogMjVweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmRpdmlkZXItdGV4dCB7XG4gICAgICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5idG4tb3V0bGluZS1lbGVnYW50IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgIzFlMWU1NjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgICAgIGNvbG9yOiAjMWUxZTU2O1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICMxZTFlNTY7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIEZvcm0gdmFsaWRhdGlvbiBzdHlsZXNcbiAgICAud2FzLXZhbGlkYXRlZCB7XG4gICAgICAgIC5mb3JtLWNvbnRyb2wsXG4gICAgICAgIC5lbGVnYW50LWlucHV0IHtcbiAgICAgICAgICAgICY6aW52YWxpZCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEoMjIwLCA1MywgNjksIDAuMSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAmOnZhbGlkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICMyOGE3NDU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMjhhNzQ1O1xuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYSg0MCwgMTY3LCA2OSwgMC4xKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmludmFsaWQtZmVlZGJhY2sge1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDRweDtcbiAgICAgICAgY29sb3I6ICNkYzM1NDU7XG4gICAgfVxuICAgIFxuICAgIC8vIFJlc3BvbnNpdmUgYWRqdXN0bWVudHNcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLmxvZ2luLWNhcmQge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmxvZ2luLWhlYWRlciB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyNXB4IDIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC53ZWxjb21lLXRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmpvaW4tdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIE1lZGl1bSBzY3JlZW5zIGZvciBiZXR0ZXIgcmVhZGFiaWxpdHlcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAubG9naW4tY29udGFpbmVyIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogNzAwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5sb2dpbi1jb2x1bW4ge1xuICAgICAgICAgICAgcGFkZGluZzogMzVweCAzMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIExhcmdlIHNjcmVlbnMgLSBwcmV2ZW50IG92ZXItc3RyZXRjaGluZ1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcbiAgICAgICAgLmxvZ2luLWNvbnRhaW5lciB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDk1MHB4O1xuICAgICAgICB9XG4gICAgfVxufSIsIi8vIEF1dGggUmVnaXN0ZXIgUGFnZSBTdHlsZXNcbi5wYWdlX2lzX3JlZ2lzdGVyX3BhZ2Uge1xuICAgIC5yZWdpc3Rlci1wYWdlLXdyYXBwZXIge1xuICAgICAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWcvYmFubmVyL2JnLVNpZ25Jbi53ZWJwJyk7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwYWRkaW5nLXRvcDogMTAwcHg7IC8vIE1heGltdW0gdG9wIHBhZGRpbmdcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgICAgICAgXG4gICAgICAgIC8vIEZhbGxiYWNrIHRvIFBORyBpZiBXZWJQIG5vdCBzdXBwb3J0ZWRcbiAgICAgICAgLm5vLXdlYnAgJiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWcvYmFubmVyL2JnLVNpZ25Jbi5wbmcnKTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLy8gUHJvZ3Jlc3NpdmVseSByZWR1Y2UgdG9wIHBhZGRpbmcgb24gc21hbGxlciBzY3JlZW5zXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA4MHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5yZWdpc3Rlci1jb250YWluZXIge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgfVxuICAgIFxuICAgIC5yZWdpc3Rlci1jYXJkIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgICAgICAgYm94LXNoYWRvdzogMCAxMHB4IDQwcHggcmdiYSgzMCwgMzAsIDg2LCAwLjA4KTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuICAgIFxuICAgIC5yZWdpc3Rlci1yb3cge1xuICAgICAgICBtaW4taGVpZ2h0OiA3MDBweDtcbiAgICB9XG4gICAgXG4gICAgLy8gTGVmdCBzaWRlIC0gRm9ybVxuICAgIC5yZWdpc3Rlci1mb3JtLXNlY3Rpb24ge1xuICAgICAgICBwYWRkaW5nOiA2MHB4IDUwcHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgICBcbiAgICAucmVnaXN0ZXItbG9nbyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgXG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICAgICAgICAgIGNvbG9yOiAjMWUxZTU2O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC50YWdsaW5lIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogOHB4O1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5yZWdpc3Rlci1mb3JtIHtcbiAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICAgICAgY29sb3I6ICMxZTFlNTY7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnN1YnRpdGxlIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuZm9ybS1ncm91cCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuICAgIFxuICAgIC5mb3JtLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICM0OTUwNTc7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgXG4gICAgLy8gRm9ybSBjb250cm9scyBub3cgdXNlIGRlZmF1bHQgZnJvbnRlbmQgc3R5bGVzIGZyb20gX2Zvcm1zLnNjc3NcbiAgICBcbiAgICAuYnRuLXJlZ2lzdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzFlMWU1NjtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgcGFkZGluZzogMTRweCAzMHB4O1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMyYTJhN2E7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDVweCAyMHB4IHJnYmEoMzAsIDMwLCA4NiwgMC4zKTtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAucmVnaXN0ZXItbGlua3Mge1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIFxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAjMWUxZTU2O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gUmlnaHQgc2lkZSAtIFByZW1pdW0gQ1RBXG4gICAgLnJlZ2lzdGVyLWltYWdlLXNlY3Rpb24ge1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMWUxZTU2IDAlLCAjMmEyYTdhIDEwMCUpO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogNjBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBcbiAgICAgICAgLy8gQmFja2dyb3VuZCBwYXR0ZXJuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogLTUwJTtcbiAgICAgICAgICAgIHJpZ2h0OiAtNTAlO1xuICAgICAgICAgICAgd2lkdGg6IDIwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KFxuICAgICAgICAgICAgICAgIDQ1ZGVnLFxuICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50LFxuICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50IDEwcHgsXG4gICAgICAgICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAzKSAxMHB4LFxuICAgICAgICAgICAgICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMykgMjBweFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogc2xpZGUgMjBzIGxpbmVhciBpbmZpbml0ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAucmVnaXN0ZXItaW1hZ2UtY29udGVudCB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIFxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDMycHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnByaWNlLXRhZyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDQ4cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZkNzAwO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucHJpY2UtcGVyaW9kIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuOTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmNyb3duLWdyYXBoaWMge1xuICAgICAgICBmb250LXNpemU6IDEyMHB4O1xuICAgICAgICBvcGFjaXR5OiAwLjk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgIGFuaW1hdGlvbjogZmxvYXQgNnMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG4gICAgfVxuICAgIFxuICAgIC5wcmVtaXVtLWZlYXR1cmVzIHtcbiAgICAgICAgbWFyZ2luOiA0MHB4IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmQ3MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmJ0bi1sZWFybi1tb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjZmZmO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgcGFkZGluZzogMTRweCA0MHB4O1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgICAgICBjb2xvcjogIzFlMWU1NjtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgNXB4IDIwcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIEFuaW1hdGlvbnNcbiAgICBAa2V5ZnJhbWVzIGZsb2F0IHtcbiAgICAgICAgMCUsIDEwMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTsgfVxuICAgICAgICA1MCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpOyB9XG4gICAgfVxuICAgIFxuICAgIEBrZXlmcmFtZXMgc2xpZGUge1xuICAgICAgICAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG4gICAgICAgIDEwMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MHB4LCA1MHB4KTsgfVxuICAgIH1cbiAgICBcbiAgICAvLyBGb3JtIHZhbGlkYXRpb24gc3R5bGVzXG4gICAgLmludmFsaWQtZmVlZGJhY2ssIC5lcnJvci1oZWxwLWJsb2NrIHtcbiAgICAgICAgY29sb3I6ICNkYzM1NDU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgXG4gICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAjYWRiNWJkO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmLmlzLWludmFsaWQge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIFNvY2lhbCBsb2dpbiBjYXJkIHNlY3Rpb25cbiAgICAuc29jaWFsLWxvZ2luLXNlY3Rpb24ge1xuICAgICAgICBwYWRkaW5nOiA0MHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICAgIFxuICAgIC5zb2NpYWwtbG9naW4tdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIGNvbG9yOiAjMWUxZTU2O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cbiAgICBcbiAgICAuc29jaWFsLXByb3ZpZGVycy1ncmlkIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgyMDBweCwgMWZyKSk7XG4gICAgICAgIGdhcDogMjBweDtcbiAgICAgICAgbWF4LXdpZHRoOiA4MDBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuICAgIFxuICAgIC5zb2NpYWwtcHJvdmlkZXItY2FyZCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNlMGUwZTA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgYmFja2dyb3VuZDogI2Y4ZjlmYTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDVweCAxNXB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzFlMWU1NjtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5zb2NpYWwtcHJvdmlkZXItbmFtZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICMxZTFlNTY7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLnNvY2lhbC1wcm92aWRlci1pY29uIHtcbiAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIH1cbiAgICBcbiAgICAuc29jaWFsLXByb3ZpZGVyLW5hbWUge1xuICAgICAgICBjb2xvcjogIzQ5NTA1NztcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgIH1cbiAgICBcbiAgICAvLyBNZWRpdW0gc2NyZWVucyBhZGp1c3RtZW50XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTQwMHB4KSB7XG4gICAgICAgIC5yZWdpc3Rlci1jb250YWluZXIge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAyMDBweCk7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5yZWdpc3Rlci1jYXJkIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTEwMHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucmVnaXN0ZXItcm93IHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDUwMHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucmVnaXN0ZXItZm9ybS1zZWN0aW9uIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDQwcHggMzBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnJlZ2lzdGVyLWxvZ28gaDEge1xuICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucmVnaXN0ZXItZm9ybSBoMiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8vIEZvcm0gY29udHJvbHMgdXNlIGRlZmF1bHQgZnJvbnRlbmQgc3R5bGVzXG4gICAgICAgIFxuICAgICAgICAuYnRuLXJlZ2lzdGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMjVweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnJlZ2lzdGVyLWltYWdlLXNlY3Rpb24ge1xuICAgICAgICAgICAgcGFkZGluZzogNDBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmNyb3duLWdyYXBoaWMge1xuICAgICAgICAgICAgZm9udC1zaXplOiA4MHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucmVnaXN0ZXItaW1hZ2UtY29udGVudCB7XG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucHJpY2UtdGFnIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnByZW1pdW0tZmVhdHVyZXMgbGkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnNvY2lhbC1sb2dpbi1zZWN0aW9uIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5zb2NpYWwtcHJvdmlkZXJzLWdyaWQge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgxNTBweCwgMWZyKSk7XG4gICAgICAgICAgICBnYXA6IDE1cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gTW9iaWxlIHJlc3BvbnNpdmVcbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgLnJlZ2lzdGVyLWltYWdlLXNlY3Rpb24ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnJlZ2lzdGVyLWZvcm0tc2VjdGlvbiB7XG4gICAgICAgICAgICBwYWRkaW5nOiA0MHB4IDMwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5yZWdpc3Rlci1yb3cge1xuICAgICAgICAgICAgbWluLWhlaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgICAgICAgLnJlZ2lzdGVyLWZvcm0tc2VjdGlvbiB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4IDIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5yZWdpc3Rlci1sb2dvIGgxIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnJlZ2lzdGVyLWZvcm0gaDIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuc29jaWFsLWxvZ2luLXNlY3Rpb24ge1xuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnNvY2lhbC1wcm92aWRlcnMtZ3JpZCB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgICAgIGdhcDogMTBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnNvY2lhbC1wcm92aWRlci1jYXJkIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMTVweDtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIvLyBBdXRoIFZlcmlmeSBFbWFpbCBQYWdlIFN0eWxlc1xuLnBhZ2VfaXNfdmVyaWZ5X3BhZ2Uge1xuICAgIC52ZXJpZnktcGFnZS13cmFwcGVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmOGY5ZmE7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcGFkZGluZzogNTBweCAwO1xuICAgICAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gMzAwcHgpO1xuICAgIH1cbiAgICBcbiAgICAudmVyaWZ5LWNvbnRhaW5lciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDYwMHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgIH1cbiAgICBcbiAgICAudmVyaWZ5LWNhcmQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgICAgICBib3gtc2hhZG93OiAwIDEwcHggNDBweCByZ2JhKDMwLCAzMCwgODYsIDAuMDgpO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDYwcHggNDBweDtcbiAgICB9XG4gICAgXG4gICAgLnZlcmlmeS1pY29uIHtcbiAgICAgICAgZm9udC1zaXplOiA4MHB4O1xuICAgICAgICBjb2xvcjogIzFlMWU1NjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgYW5pbWF0aW9uOiBwdWxzZSAycyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbiAgICB9XG4gICAgXG4gICAgQGtleWZyYW1lcyBwdWxzZSB7XG4gICAgICAgIDAlLCAxMDAlIHsgXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOyBcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7IFxuICAgICAgICB9XG4gICAgICAgIDUwJSB7IFxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTsgXG4gICAgICAgICAgICBvcGFjaXR5OiAwLjg7IFxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC52ZXJpZnktdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDMycHg7XG4gICAgICAgIGNvbG9yOiAjMWUxZTU2O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cbiAgICBcbiAgICAudmVyaWZ5LW1lc3NhZ2Uge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIH1cbiAgICBcbiAgICAudmVyaWZ5LWluc3RydWN0aW9ucyB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmOGY5ZmE7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDA7XG4gICAgICAgIFxuICAgICAgICBoNCB7XG4gICAgICAgICAgICBjb2xvcjogIzFlMWU1NjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgICAgICAgICBjb2xvcjogIzQ5NTA1NztcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuYnRuLXJlc2VuZCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMxZTFlNTY7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIHBhZGRpbmc6IDE0cHggNDBweDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMmEyYTdhO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCA1cHggMjBweCByZ2JhKDMwLCAzMCwgODYsIDAuMyk7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLnJlc2VuZC1saW5rIHtcbiAgICAgICAgY29sb3I6ICMxZTFlNTY7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gICAgICAgIC52ZXJpZnktY2FyZCB7XG4gICAgICAgICAgICBwYWRkaW5nOiA0MHB4IDIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC52ZXJpZnktaWNvbiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDYwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC52ZXJpZnktdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAudmVyaWZ5LW1lc3NhZ2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB9XG4gICAgfVxufSIsIi8vIENoZWNrb3V0IFN1Y2Nlc3MgUGFnZSBTdHlsZXMgLSBCYXNlZCBvbiBMb2dpbiBQYWdlIERlc2lnblxuLnBhZ2UtaXMtY2hlY2tvdXQtc3VjY2VzcyB7XG4gICAgXG4gICAgLy8gTWFpbiB3cmFwcGVyIHdpdGggYmFja2dyb3VuZCBpbWFnZVxuICAgIC5jaGVja291dC1zdWNjZXNzLXdyYXBwZXIge1xuICAgICAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWcvYmFubmVyL2JnLU9yZGVyLndlYnAnKTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMDBweDsgLy8gTWF4aW11bSB0b3AgcGFkZGluZ1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgICAgICBcbiAgICAgICAgLy8gU2VtaS10cmFuc3BhcmVudCBvdmVybGF5IGZvciBiZXR0ZXIgcmVhZGFiaWxpdHlcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjMpO1xuICAgICAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBDb250YWluZXIgZm9yIHRoZSBjYXJkXG4gICAgLmNoZWNrb3V0LXN1Y2Nlc3MtY29udGFpbmVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiA4MDBweDsgLy8gU2xpZ2h0bHkgd2lkZXIgdGhhbiBsb2dpbiBmb3Igb3JkZXIgZGV0YWlsc1xuICAgIH1cbiAgICBcbiAgICAvLyBNYWluIGNhcmQgc3R5bGluZ1xuICAgIC5jaGVja291dC1zdWNjZXNzLWNhcmQge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTgpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMjBweCA2MHB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG59IiwiLy8gQXV0aCBGb3Jnb3QgUGFzc3dvcmQgUGFnZSBTdHlsZXNcbi5wYWdlX2lzX2ZvcmdvdF9wYXNzd29yZF9wYWdlIHtcbiAgICAuZm9yZ290LXBhc3N3b3JkLXdyYXBwZXIge1xuICAgICAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWcvYmFubmVyL2JnLVNpZ25Jbi53ZWJwJyk7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwYWRkaW5nLXRvcDogMTAwcHg7IC8vIE1heGltdW0gdG9wIHBhZGRpbmdcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgICAgICAgXG4gICAgICAgIC8vIEZhbGxiYWNrIHRvIFBORyBpZiBXZWJQIG5vdCBzdXBwb3J0ZWRcbiAgICAgICAgLm5vLXdlYnAgJiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWcvYmFubmVyL2JnLVNpZ25Jbi5wbmcnKTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLy8gUHJvZ3Jlc3NpdmVseSByZWR1Y2UgdG9wIHBhZGRpbmcgb24gc21hbGxlciBzY3JlZW5zXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA4MHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5mb3Jnb3QtcGFzc3dvcmQtY29udGFpbmVyIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTIwMHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgIH1cbiAgICBcbiAgICAuZm9yZ290LXBhc3N3b3JkLWNhcmQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgICAgICBib3gtc2hhZG93OiAwIDEwcHggNDBweCByZ2JhKDMwLCAzMCwgODYsIDAuMDgpO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBtaW4taGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgICBcbiAgICAvLyBGb3JtIHNlY3Rpb25cbiAgICAuZm9yZ290LXBhc3N3b3JkLWZvcm0tc2VjdGlvbiB7XG4gICAgICAgIHBhZGRpbmc6IDYwcHggNTBweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICAgIFxuICAgIC5mb3Jnb3QtcGFzc3dvcmQtbG9nbyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgXG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICAgICAgICAgIGNvbG9yOiAjMWUxZTU2O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC50YWdsaW5lIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogOHB4O1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5mb3Jnb3QtcGFzc3dvcmQtZm9ybSB7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgICAgIGNvbG9yOiAjMWUxZTU2O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5zdWJ0aXRsZSB7XG4gICAgICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG4gICAgXG4gICAgLmZvcm0tbGFiZWwge1xuICAgICAgICBjb2xvcjogIzQ5NTA1NztcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgfVxuICAgIFxuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZTBlMGUwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgIHBhZGRpbmc6IDEycHggMTZweDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICAgICAgICBcbiAgICAgICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgY29sb3I6ICNhZGI1YmQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMWUxZTU2O1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMzAsIDMwLCA4NiwgMC4xKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmlucHV0LWdyb3VwIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBcbiAgICAgICAgLmZvcm0tY29udHJvbCxcbiAgICAgICAgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IC5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQ1cHggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuaW5wdXQtaWNvbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMTZweDtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgIH1cbiAgICBcbiAgICAuYnRuLXJlc2V0IHtcbiAgICAgICAgYmFja2dyb3VuZDogIzFlMWU1NjtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgcGFkZGluZzogMTRweCAzMHB4O1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMyYTJhN2E7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDVweCAyMHB4IHJnYmEoMzAsIDMwLCA4NiwgMC4zKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuYmFjay10by1sb2dpbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICMxZTFlNTY7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgaSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBBbGVydCBzdHlsaW5nXG4gICAgLmFsZXJ0IHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICBwYWRkaW5nOiAxMnB4IDE2cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBcbiAgICAgICAgJi5hbGVydC1zdWNjZXNzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkNGVkZGE7XG4gICAgICAgICAgICBjb2xvcjogIzE1NTcyNDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJi5hbGVydC1kYW5nZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZTtcbiAgICAgICAgICAgIGNvbG9yOiAjYzMzO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIE1lZGl1bSBzY3JlZW5zIGFkanVzdG1lbnRcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxNDAwcHgpIHtcbiAgICAgICAgLmZvcmdvdC1wYXNzd29yZC1mb3JtLXNlY3Rpb24ge1xuICAgICAgICAgICAgcGFkZGluZzogNDBweCAzNXB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZm9yZ290LXBhc3N3b3JkLWxvZ28ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgaDEge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLnRhZ2xpbmUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmZvcmdvdC1wYXNzd29yZC1mb3JtIHtcbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI2cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAuc3VidGl0bGUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZm9ybS1ncm91cCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDExcHggMTVweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmlucHV0LWdyb3VwIHtcbiAgICAgICAgICAgIC5mb3JtLWNvbnRyb2wsXG4gICAgICAgICAgICAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQycHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmJ0bi1yZXNldCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxM3B4IDI4cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gTW9iaWxlIHJlc3BvbnNpdmVcbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgLmZvcmdvdC1wYXNzd29yZC1mb3JtLXNlY3Rpb24ge1xuICAgICAgICAgICAgcGFkZGluZzogNDBweCAzMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAgICAgICAuZm9yZ290LXBhc3N3b3JkLWZvcm0tc2VjdGlvbiB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4IDIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5mb3Jnb3QtcGFzc3dvcmQtbG9nbyBoMSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5mb3Jnb3QtcGFzc3dvcmQtZm9ybSBoMiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gRm9ybSB2YWxpZGF0aW9uIHN0eWxlc1xuICAgIC5pbnZhbGlkLWZlZWRiYWNrIHtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgfVxuICAgIFxuICAgIC53YXMtdmFsaWRhdGVkIHtcbiAgICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgICAmOmludmFsaWQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAmOnZhbGlkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICMxOTg3NTQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvLyBBdXRoIFJlc2V0IFBhc3N3b3JkIFBhZ2UgU3R5bGVzXG4ucGFnZV9pc19yZXNldF9wYXNzd29yZF9wYWdlIHtcbiAgICAucmVzZXQtcGFzc3dvcmQtd3JhcHBlciB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltZy9iYW5uZXIvYmctU2lnbkluLndlYnAnKTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMDBweDsgLy8gTWF4aW11bSB0b3AgcGFkZGluZ1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgICAgICBcbiAgICAgICAgLy8gRmFsbGJhY2sgdG8gUE5HIGlmIFdlYlAgbm90IHN1cHBvcnRlZFxuICAgICAgICAubm8td2VicCAmIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltZy9iYW5uZXIvYmctU2lnbkluLnBuZycpO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvLyBQcm9ncmVzc2l2ZWx5IHJlZHVjZSB0b3AgcGFkZGluZyBvbiBzbWFsbGVyIHNjcmVlbnNcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDgwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDYwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDUwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDQwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLnJlc2V0LXBhc3N3b3JkLWNvbnRhaW5lciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEyMDBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICB9XG4gICAgXG4gICAgLnJlc2V0LXBhc3N3b3JkLWNhcmQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgICAgICBib3gtc2hhZG93OiAwIDEwcHggNDBweCByZ2JhKDMwLCAzMCwgODYsIDAuMDgpO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbiAgICBcbiAgICAucmVzZXQtcGFzc3dvcmQtcm93IHtcbiAgICAgICAgbWluLWhlaWdodDogNjAwcHg7XG4gICAgfVxuICAgIFxuICAgIC8vIExlZnQgc2lkZSAtIEZvcm1cbiAgICAucmVzZXQtcGFzc3dvcmQtZm9ybS1zZWN0aW9uIHtcbiAgICAgICAgcGFkZGluZzogNjBweCA1MHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG4gICAgXG4gICAgLnJlc2V0LXBhc3N3b3JkLWxvZ28ge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICAgIFxuICAgICAgICBoMSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDM2cHg7XG4gICAgICAgICAgICBjb2xvcjogIzFlMWU1NjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAudGFnbGluZSB7XG4gICAgICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAucmVzZXQtcGFzc3dvcmQtZm9ybSB7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgICAgIGNvbG9yOiAjMWUxZTU2O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5zdWJ0aXRsZSB7XG4gICAgICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG4gICAgXG4gICAgLmZvcm0tbGFiZWwge1xuICAgICAgICBjb2xvcjogIzQ5NTA1NztcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgfVxuICAgIFxuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZTBlMGUwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgIHBhZGRpbmc6IDEycHggMTZweDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICAgICAgICBcbiAgICAgICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgY29sb3I6ICNhZGI1YmQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMWUxZTU2O1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMzAsIDMwLCA4NiwgMC4xKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICZbcmVhZG9ubHldIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgXG4gICAgICAgIC5mb3JtLWNvbnRyb2wsXG4gICAgICAgIC5zZWxlY3QyLWNvbnRhaW5lci0tYm9vdHN0cmFwNCAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA0NXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmlucHV0LWljb24ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDE2cHg7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICB9XG4gICAgXG4gICAgLnBhc3N3b3JkLXRvZ2dsZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDE2cHg7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAjMWUxZTU2O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5idG4tcmVzZXQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMWUxZTU2O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBwYWRkaW5nOiAxNHB4IDMwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzJhMmE3YTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgNXB4IDIwcHggcmdiYSgzMCwgMzAsIDg2LCAwLjMpO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5wYXNzd29yZC1yZXF1aXJlbWVudHMge1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICBcbiAgICAgICAgaDYge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgICAgICAgICAgIGNvbG9yOiAjNDk1MDU3O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogM3B4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIEFsZXJ0IHN0eWxpbmdcbiAgICAuYWxlcnQge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgIHBhZGRpbmc6IDEycHggMTZweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIFxuICAgICAgICAmLmFsZXJ0LXN1Y2Nlc3Mge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Q0ZWRkYTtcbiAgICAgICAgICAgIGNvbG9yOiAjMTU1NzI0O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmLmFsZXJ0LWRhbmdlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVlO1xuICAgICAgICAgICAgY29sb3I6ICNjMzM7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gUmlnaHQgc2lkZSAtIEltYWdlXG4gICAgLnJlc2V0LXBhc3N3b3JkLWltYWdlLXNlY3Rpb24ge1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMWUxZTU2IDAlLCAjMmEyYTdhIDEwMCUpO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogNjBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBcbiAgICAgICAgLy8gQmFja2dyb3VuZCBwYXR0ZXJuIC0gc2FtZSBhcyBsb2dpblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IC01MCU7XG4gICAgICAgICAgICByaWdodDogLTUwJTtcbiAgICAgICAgICAgIHdpZHRoOiAyMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAyMDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogcmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudChcbiAgICAgICAgICAgICAgICA0NWRlZyxcbiAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCxcbiAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCAxMHB4LFxuICAgICAgICAgICAgICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMykgMTBweCxcbiAgICAgICAgICAgICAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDMpIDIwcHhcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBhbmltYXRpb246IHNsaWRlIDIwcyBsaW5lYXIgaW5maW5pdGU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLnJlc2V0LXBhc3N3b3JkLWltYWdlLWNvbnRlbnQge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBcbiAgICAgICAgaDMge1xuICAgICAgICAgICAgZm9udC1zaXplOiAzMnB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgb3BhY2l0eTogMC45O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAua2V5LWdyYXBoaWMge1xuICAgICAgICBmb250LXNpemU6IDEyMHB4O1xuICAgICAgICBvcGFjaXR5OiAwLjk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgIGFuaW1hdGlvbjogcm90YXRlIDRzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xuICAgIH1cbiAgICBcbiAgICBAa2V5ZnJhbWVzIHJvdGF0ZSB7XG4gICAgICAgIDAlLCAxMDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgICAgICAgNTAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMTBkZWcpOyB9XG4gICAgfVxuICAgIFxuICAgIC5wYXNzd29yZC10aXBzIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuOTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBAa2V5ZnJhbWVzIHNsaWRlIHtcbiAgICAgICAgMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuICAgICAgICAxMDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTBweCwgNTBweCk7IH1cbiAgICB9XG4gICAgXG4gICAgLy8gTWVkaXVtIHNjcmVlbnMgYWRqdXN0bWVudFxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDE0MDBweCkge1xuICAgICAgICAucmVzZXQtcGFzc3dvcmQtY29udGFpbmVyIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAyMDBweCk7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5yZXNldC1wYXNzd29yZC1jYXJkIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMTAwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnJlc2V0LXBhc3N3b3JkLXJvdyB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA0MjBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnJlc2V0LXBhc3N3b3JkLWZvcm0tc2VjdGlvbiB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4IDI1cHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5yZXNldC1wYXNzd29yZC1sb2dvIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC50YWdsaW5lIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5yZXNldC1wYXNzd29yZC1mb3JtIHtcbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAuc3VidGl0bGUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZm9ybS1ncm91cCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTRweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmlucHV0LWdyb3VwIHtcbiAgICAgICAgICAgIC5mb3JtLWNvbnRyb2wsXG4gICAgICAgICAgICAuc2VsZWN0Mi1jb250YWluZXItLWJvb3RzdHJhcDQgLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmJ0bi1yZXNldCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMnB4IDI1cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5wYXNzd29yZC1yZXF1aXJlbWVudHMge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgcGFkZGluZzogOHB4IDEycHg7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8vIFJpZ2h0IHBhbmVsIGFkanVzdG1lbnRzXG4gICAgICAgIC5yZXNldC1wYXNzd29yZC1pbWFnZS1zZWN0aW9uIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDQwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5rZXktZ3JhcGhpYyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDgwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucmVzZXQtcGFzc3dvcmQtaW1hZ2UtY29udGVudCB7XG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNnB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnBhc3N3b3JkLXRpcHMge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIE1vYmlsZSByZXNwb25zaXZlXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgIC5yZXNldC1wYXNzd29yZC1pbWFnZS1zZWN0aW9uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5yZXNldC1wYXNzd29yZC1mb3JtLXNlY3Rpb24ge1xuICAgICAgICAgICAgcGFkZGluZzogNDBweCAzMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAgICAgICAucmVzZXQtcGFzc3dvcmQtZm9ybS1zZWN0aW9uIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnJlc2V0LXBhc3N3b3JkLWxvZ28gaDEge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucmVzZXQtcGFzc3dvcmQtZm9ybSBoMiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gRm9ybSB2YWxpZGF0aW9uIHN0eWxlc1xuICAgIC5pbnZhbGlkLWZlZWRiYWNrIHtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgfVxuICAgIFxuICAgIC53YXMtdmFsaWRhdGVkIHtcbiAgICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgICAmOmludmFsaWQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAmOnZhbGlkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICMxOTg3NTQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvLyBTaG9wIENhdGVnb3J5IFBhZ2UgU3R5bGVzXG4vLyBBbHNvIGFwcGxpZWQgdG8gc2hvcCBwYWdlcyBmb3IgamV3ZWxyeSBhbmQgZ2Vtc3RvbmVzIGhlcm9lc1xuLnBhZ2VfaXNfY2F0ZWdvcnlfcGFnZSwgLnBhZ2VfaXNfc2hvcF9wYWdlIHtcbiAgICAvLyBDYXRlZ29yeSBIZXJvIFN0eWxlc1xuICAgIC5jYXRlZ29yeS1oZXJvIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtaW4taGVpZ2h0OiAzMDBweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIFxuICAgICAgICAmLmNhdGVnb3J5LWhlcm8td2l0aC1pbWFnZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJi5jYXRlZ29yeS1oZXJvLWVsZWdhbnQge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2Y1ZjdmYSAwJSwgI2MzY2ZlMiAxMDAlKTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IFxuICAgICAgICAgICAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IDIwJSA4MCUsIHJnYmEoMTI0LCAxMDUsIDIzOSwgMC4xKSAwJSwgdHJhbnNwYXJlbnQgNTAlKSxcbiAgICAgICAgICAgICAgICAgICAgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCA4MCUgMjAlLCByZ2JhKDEyNCwgMTA1LCAyMzksIDAuMSkgMCUsIHRyYW5zcGFyZW50IDUwJSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5jYXRlZ29yeS1oZXJvLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjMzMzO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAuY2F0ZWdvcnktYnJlYWRjcnVtYiBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICM3YzY5ZWYgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5zdGF0LWl0ZW0ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDE1cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzMzMztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuY2F0ZWdvcnktaGVyby1vdmVybGF5IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgICAgIHRvIGJvdHRvbSxcbiAgICAgICAgICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KSAwJSxcbiAgICAgICAgICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KSA1MCUsXG4gICAgICAgICAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCkgMTAwJVxuICAgICAgICApO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG4gICAgXG4gICAgLmNhdGVnb3J5LWhlcm8tY29udGVudCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb2xvcjogIzMzMztcbiAgICAgICAgcGFkZGluZzogM3JlbSAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gICAgXG4gICAgLmNhdGVnb3J5LWJyZWFkY3J1bWIge1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG4gICAgICAgIFxuICAgICAgICBhIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuM3MgZWFzZTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM3YzY5ZWYgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuY2F0ZWdvcnktaWNvbiB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgYW5pbWF0aW9uOiBzcGFya2xlIDNzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xuICAgIH1cbiAgICBcbiAgICBAa2V5ZnJhbWVzIHNwYXJrbGUge1xuICAgICAgICAwJSwgMTAwJSB7IFxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKSByb3RhdGUoMGRlZyk7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgIH1cbiAgICAgICAgNTAlIHsgXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSkgcm90YXRlKDVkZWcpO1xuICAgICAgICAgICAgb3BhY2l0eTogMC43O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5jYXRlZ29yeS1oZXJvLXRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAzLjVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdQbGF5ZmFpciBEaXNwbGF5Jywgc2VyaWY7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICBcbiAgICAgICAgLmNhdGVnb3J5LWhlcm8td2l0aC1pbWFnZSAmIHtcbiAgICAgICAgICAgIHRleHQtc2hhZG93OiAxcHggMXB4IDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmNhdGVnb3J5LWhlcm8tZGVzY3JpcHRpb24ge1xuICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgIG1heC13aWR0aDogNzAwcHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvIDJyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIG9wYWNpdHk6IDAuOTU7XG4gICAgICAgIFxuICAgICAgICAuY2F0ZWdvcnktaGVyby13aXRoLWltYWdlICYge1xuICAgICAgICAgICAgdGV4dC1zaGFkb3c6IDFweCAxcHggNHB4IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuY2F0ZWdvcnktaGVyby1zdGF0cyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBnYXA6IDJyZW07XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICB9XG4gICAgXG4gICAgLnN0YXQtaXRlbSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgICAgICBwYWRkaW5nOiAwLjc1cmVtIDEuNXJlbTtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgICB9XG4gICAgXG4gICAgLnN0YXQtbnVtYmVyIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgbWFyZ2luOiAwIDAuMjVyZW07XG4gICAgfVxuICAgIFxuICAgIC5zZWxlY3RlZC1jYXRlZ29yeS1pbmZvIHtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICAgICAgXG4gICAgICAgIC5zZWxlY3RlZC1jYXRlZ29yeS1iYWRnZSB7XG4gICAgICAgICAgICAuYmFkZ2Uge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMi4yNXJlbSAwLjVyZW0gMXJlbTsgLy8gRXh0cmEgcGFkZGluZy1yaWdodCBmb3IgdGhlIFggYnV0dG9uXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyAvLyBGb3IgYWJzb2x1dGUgcG9zaXRpb25pbmcgb2YgWCBidXR0b25cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAvLyBYIGJ1dHRvbiBzdHlsaW5nIHdpdGggaW1wcm92ZWQgY2xpY2thYmlsaXR5XG4gICAgICAgICAgICAgICAgLmNhdGVnb3J5LXJlbW92ZS1idG4ge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxMXB4O1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDIxcHg7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgLy8gQ2VudGVyIHZlcnRpY2FsbHkgZnJvbSB0aGUgdG9wIHBvc2l0aW9uXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweDsgLy8gSW5jcmVhc2UgY2xpY2thYmxlIGFyZWFcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAtNXB4OyAvLyBOZWdhdGl2ZSBtYXJnaW4gdG8gZXh0ZW5kIGNsaWNrYWJsZSBhcmVhIHdpdGhvdXQgYWZmZWN0aW5nIGJhZGdlIHNpemVcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuODtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IC8vIEVuc3VyZSBpY29uIGRvZXNuJ3QgaW50ZXJmZXJlIHdpdGggY2xpY2tcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBSZXNwb25zaXZlIGFkanVzdG1lbnRzXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIC5jYXRlZ29yeS1oZXJvIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQwMHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuY2F0ZWdvcnktaGVyby10aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgLmNhdGVnb3J5LWhlcm8ge1xuICAgICAgICAgICAgbWluLWhlaWdodDogMzUwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5jYXRlZ29yeS1oZXJvLXRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmNhdGVnb3J5LWhlcm8tZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5jYXRlZ29yeS1oZXJvLXN0YXRzIHtcbiAgICAgICAgICAgIGdhcDogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnN0YXQtaXRlbSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmNhdGVnb3J5LWJyZWFkY3J1bWIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAgICAgICAuY2F0ZWdvcnktaGVyby10aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNzVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5jYXRlZ29yeS1oZXJvLWRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIvLyBQcm9kdWN0IENhdGVnb3JpZXMgUGFnZSBTdHlsZXNcbi5wYWdlLWlzLXByb2R1Y3QtY2F0ZWdvcmllcyB7XG4gICAgLnByb2R1Y3QtY2F0ZWdvcmllcy1wYWdlIHtcbiAgICAgICAgcGFkZGluZzogNDBweCAwIDYwcHg7XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHggMCA0MHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIFBhZ2UgSGVhZGVyXG4gICAgLnBhZ2UtaGVhZGVyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgICAgICAgXG4gICAgICAgIC5wYWdlLXRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgIGNvbG9yOiAjMWUxZTU2O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjVweDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucGFnZS1zdWJ0aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gQ2F0ZWdvcmllcyBDYXRhbG9nIEdyaWRcbiAgICAuY2F0ZWdvcmllcy1jYXRhbG9nIHtcbiAgICAgICAgLmNhdGVnb3J5LWNhcmQtbGluayB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNlMGUwZTA7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDhweCAyNHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZDBkMGQwO1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIC5jYXRlZ29yeS1pbWFnZSB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuOTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgLmNhdGVnb3J5LW5hbWUge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzFlMWU1NjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8vIENhdGVnb3J5IEltYWdlIFNlY3Rpb25cbiAgICAgICAgLmNhdGVnb3J5LWltYWdlLXdyYXBwZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDc1JTsgLy8gNDozIGFzcGVjdCByYXRpb1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2Y4ZjlmYTtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5jYXRlZ29yeS1pbWFnZSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmNhdGVnb3J5LWltYWdlLXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZjVmN2ZhIDAlLCAjZTllY2VmIDEwMCUpO1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDNyZW07XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjYWRiNWJkO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAvLyBJdGVtIENvdW50IEJhZGdlXG4gICAgICAgICAgICAuaXRlbS1jb3VudC1iYWRnZSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMTJweDtcbiAgICAgICAgICAgICAgICByaWdodDogMTJweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTUpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjNDk1MDU3O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDRweCAxMHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAycHggOHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICAgICAgICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLy8gQ2F0ZWdvcnkgSW5mbyBTZWN0aW9uXG4gICAgICAgIC5jYXRlZ29yeS1pbmZvIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEuMjVyZW07XG4gICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmNhdGVnb3J5LW5hbWUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4zcyBlYXNlO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5jYXRlZ29yeS1kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gRW1wdHkgU3RhdGVcbiAgICAuZW1wdHktc3RhdGUge1xuICAgICAgICBwYWRkaW5nOiA0cmVtIDA7XG4gICAgICAgIFxuICAgICAgICBpIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZGVlMmU2O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBjb2xvcjogIzQ5NTA1NztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gQm90dG9tIENUQSBTZWN0aW9uXG4gICAgLmJvdHRvbS1jdGEtc2VjdGlvbiB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTBlMGUwO1xuICAgICAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgICAgICAgXG4gICAgICAgIC5jdGEtdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjg3NXJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBjb2xvcjogIzFlMWU1NjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmN0YS1zdWJ0aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuY3RhLWJ1dHRvbnMge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgZ2FwOiAwLjVyZW07XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMTUwcHg7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIFJlc3BvbnNpdmUgYWRqdXN0bWVudHNcbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgLmNhdGVnb3JpZXMtY2F0YWxvZyB7XG4gICAgICAgICAgICAuY2F0ZWdvcnktY2F0YWxvZy1jYXJkIHtcbiAgICAgICAgICAgICAgICAuY2F0ZWdvcnktaW5mbyB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAuY2F0ZWdvcnktbmFtZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIC5jYXRlZ29yeS1kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgLmNhdGVnb3JpZXMtY2F0YWxvZyB7XG4gICAgICAgICAgICAucm93IHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgLTAuNXJlbTtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICA+IFtjbGFzcyo9XCJjb2xcIl0ge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAuNXJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQge1xuICAgICAgICAgICAgICAgIC5jYXRlZ29yeS1pbWFnZS13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDY2LjY3JTsgLy8gU2xpZ2h0bHkgd2lkZXIgYXNwZWN0IHJhdGlvIG9uIG1vYmlsZVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBBbmltYXRpb24gZm9yIHBhZ2UgbG9hZFxuICAgIEBrZXlmcmFtZXMgZmFkZUluVXAge1xuICAgICAgICBmcm9tIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7XG4gICAgICAgIH1cbiAgICAgICAgdG8ge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuY2F0ZWdvcmllcy1jYXRhbG9nIC5jYXRlZ29yeS1jYXRhbG9nLWNhcmQge1xuICAgICAgICBhbmltYXRpb246IGZhZGVJblVwIDAuNXMgZWFzZS1vdXQ7XG4gICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gICAgICAgIFxuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDIwIHtcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKCN7JGl9KSB7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAjeyRpICogMC4wNX1zO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi8vIFJlcXVlc3QgU2VsbGVyIEFjY2VzcyBQYWdlIFN0eWxlcyAtIEVsZWdhbnQgVGhlbWUgd2l0aCBMb2dpbiBCYWNrZ3JvdW5kXG4ucGFnZS1pcy1yZXF1ZXN0LXNlbGxlci1hY2Nlc3Mge1xuICAgIFxuICAgIC8vIE1haW4gd3JhcHBlciB3aXRoIGRpYW1vbmQgYmFja2dyb3VuZCAoc2FtZSBhcyBsb2dpbilcbiAgICAuc2VsbGVyLWFjY2Vzcy1wYWdlLXdyYXBwZXIge1xuICAgICAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWcvYmFubmVyL2JnLVNpZ25Jbi53ZWJwJyk7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwYWRkaW5nLXRvcDogMTAwcHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gICAgICAgIFxuICAgICAgICAvLyBGYWxsYmFjayB0byBQTkcgaWYgV2ViUCBub3Qgc3VwcG9ydGVkXG4gICAgICAgIC5uby13ZWJwICYge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1nL2Jhbm5lci9iZy1TaWduSW4ucG5nJyk7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8vIFByb2dyZXNzaXZlbHkgcmVkdWNlIHRvcCBwYWRkaW5nIG9uIHNtYWxsZXIgc2NyZWVuc1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogODBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNjBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBDb250YWluZXIgZm9yIGNvbnN0cmFpbmVkIHdpZHRoXG4gICAgLnNlbGxlci1hY2Nlc3MtY29udGFpbmVyIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwMHB4OyAvLyBTbGlnaHRseSB3aWRlciBmb3IgdGhlIGZvcm1cbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gICAgXG4gICAgLy8gTWFpbiBjYXJkIC0gZWxlZ2FudCBkZXNpZ25cbiAgICAuc2VsbGVyLWFjY2Vzcy1jYXJkIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgICAgICAgYm94LXNoYWRvdzogMCAyMHB4IDYwcHggcmdiYSgwLCAwLCAwLCAwLjA4KTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgICB9XG4gICAgXG4gICAgLy8gTG9nbyBoZWFkZXIgc2VjdGlvblxuICAgIC5zZWxsZXItYWNjZXNzLWhlYWRlciB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMzBweCAyMHB4O1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2YwZjBmMDtcbiAgICAgICAgXG4gICAgICAgIC5zZWxsZXItYWNjZXNzLWxvZ28taW1nIHtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5sdXh1cnktdGFnbGluZSB7XG4gICAgICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBNYWluIGNvbnRlbnQgYXJlYVxuICAgIC5zZWxsZXItYWNjZXNzLWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiA0MHB4O1xuICAgICAgICBcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyNXB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5zZWxsZXItYWNjZXNzLWJvZHkge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cbiAgICBcbiAgICAvLyBGb3JtIHN0eWxpbmdcbiAgICAuZm9ybS1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAjNDk1MDU3O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA2cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgIH1cbiAgICBcbiAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDE0cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmJmYztcbiAgICAgICAgXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMWUxZTU2O1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEoMzAsIDMwLCA4NiwgMC4wOCk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgY29sb3I6ICNhZGI1YmQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgdGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgICAgICAgcmVzaXplOiB2ZXJ0aWNhbDtcbiAgICAgICAgbWluLWhlaWdodDogODBweDtcbiAgICB9XG4gICAgXG4gICAgLy8gU2VsZWN0MiBzcGVjaWZpYyBzdHlsaW5nXG4gICAgLnNlbGVjdDItY29udGFpbmVyLS1ib290c3RyYXA0IHtcbiAgICAgICAgLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDE0cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmJmYztcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQycHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYuc2VsZWN0Mi1jb250YWluZXItLWZvY3VzIHtcbiAgICAgICAgICAgIC5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMWUxZTU2O1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDNweCByZ2JhKDMwLCAzMCwgODYsIDAuMDgpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBTZWN0aW9uIGhlYWRpbmdzXG4gICAgaDQge1xuICAgICAgICBjb2xvcjogIzFlMWU1NjtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNmMGYwZjA7XG4gICAgfVxuICAgIFxuICAgIC8vIEFsZXJ0IHN0eWxpbmdcbiAgICAuYWxlcnQtaW5mbyB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgcGFkZGluZzogMTVweCAyMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmOGZmO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjYjhkYWZmO1xuICAgICAgICBjb2xvcjogIzAwNDA4NTtcbiAgICAgICAgXG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gQnV0dG9uIHN0eWxpbmdcbiAgICAuYnRuLXByaW1hcnkge1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMWUxZTU2IDAlLCAjMmEyYTdhIDEwMCUpO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBwYWRkaW5nOiAxMnB4IDI0cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICBib3gtc2hhZG93OiAwIDRweCAxNXB4IHJnYmEoMzAsIDMwLCA4NiwgMC4yKTtcbiAgICAgICAgXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCA2cHggMjVweCByZ2JhKDMwLCAzMCwgODYsIDAuMyk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMmEyYTdhIDAlLCAjMWUxZTU2IDEwMCUpO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYuYnRuLWxnIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE0cHggMzJweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuYnRuLW91dGxpbmUtcHJpbWFyeSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjMWUxZTU2O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgIGNvbG9yOiAjMWUxZTU2O1xuICAgICAgICBwYWRkaW5nOiAxMnB4IDI0cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMWUxZTU2O1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCA0cHggMTVweCByZ2JhKDMwLCAzMCwgODYsIDAuMik7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYuYnRuLWxnIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE0cHggMzJweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5IHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICM2Yzc1N2Q7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgIHBhZGRpbmc6IDEycHggMjRweDtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM2Yzc1N2Q7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gRm9ybSB2YWxpZGF0aW9uIHN0eWxlc1xuICAgIC53YXMtdmFsaWRhdGVkIHtcbiAgICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgICAmOmludmFsaWQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICNkYzM1NDU7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDNweCByZ2JhKDIyMCwgNTMsIDY5LCAwLjEpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJjp2YWxpZCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMjhhNzQ1O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzI4YTc0NTtcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEoNDAsIDE2NywgNjksIDAuMSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5pbnZhbGlkLWZlZWRiYWNrIHtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgICAgIGNvbG9yOiAjZGMzNTQ1O1xuICAgIH1cbiAgICBcbiAgICAvLyBTbWFsbCB0ZXh0XG4gICAgLmZvcm0tdGV4dCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgIG1hcmdpbi10b3A6IDRweDtcbiAgICB9XG4gICAgXG4gICAgLy8gUmVxdWlyZWQgYXN0ZXJpc2tcbiAgICAudGV4dC1kYW5nZXIge1xuICAgICAgICBjb2xvcjogI2RjMzU0NTtcbiAgICB9XG4gICAgXG4gICAgLy8gUmVzcG9uc2l2ZSBhZGp1c3RtZW50c1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAuc2VsbGVyLWFjY2Vzcy1jYXJkIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5zZWxsZXItYWNjZXNzLWhlYWRlciB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyNXB4IDIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIGg0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmQtZ3JpZCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gTWVkaXVtIHNjcmVlbnNcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAuc2VsbGVyLWFjY2Vzcy1jb250YWluZXIge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA3NTBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBMYXJnZSBzY3JlZW5zIC0gcHJldmVudCBvdmVyLXN0cmV0Y2hpbmdcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XG4gICAgICAgIC5zZWxsZXItYWNjZXNzLWNvbnRhaW5lciB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDExMDBweDtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKipcbiAqIFByb2ZpbGUgU3VwcG9ydCBUaWNrZXQgRGV0YWlsIFBhZ2UgU3R5bGVzXG4gKi9cblxuLnBhZ2UtaXMtcHJvZmlsZS1zdXBwb3J0LXRpY2tldC1kZXRhaWwge1xuICAgIC8vIFJlcGx5IGZvcm0gY2FyZCBib3R0b20gbWFyZ2luXG4gICAgLmNhcmQ6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgfVxuICAgIFxuICAgIC8vIE1lc3NhZ2Ugd3JhcHBlciByZXNwb25zaXZlIHBhZGRpbmdcbiAgICAubWVzc2FnZS1pdGVtLXdyYXBwZXIge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIFxuICAgICAgICAvLyBEZXNrdG9wIHZpZXdwb3J0IC0gYWRkIGhvcml6b250YWwgcGFkZGluZ1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNTBweDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLm1lc3NhZ2Utc2VwYXJhdG9yIHtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICAgICAgbWFyZ2luOiAxLjVyZW0gMDtcbiAgICB9XG4gICAgXG4gICAgLm1lc3NhZ2UtaXRlbSB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiA0cHggc29saWQgI2RlZTJlNjtcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG4gICAgICAgIGFuaW1hdGlvbjogZmFkZUluIDAuM3MgZWFzZS1pbjtcbiAgICAgICAgXG4gICAgICAgICYuYWRtaW4tbWVzc2FnZSB7XG4gICAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogIzAwN2JmZjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJi5jdXN0b21lci1tZXNzYWdlIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAjNmM3NTdkO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2JhKDAsMCwwLDAuMSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLm1lc3NhZ2UtaGVhZGVyIHtcbiAgICAgICAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTllY2VmO1xuICAgIH1cbiAgICBcbiAgICAubWVzc2FnZS1jb250ZW50IHtcbiAgICAgICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZTllY2VmO1xuICAgIH1cbiAgICBcbiAgICAubWVzc2FnZS1zZW5kZXIge1xuICAgICAgICBjb2xvcjogIzQ5NTA1NztcbiAgICAgICAgZm9udC1zaXplOiAwLjk1cmVtO1xuICAgIH1cbiAgICBcbiAgICBAa2V5ZnJhbWVzIGZhZGVJbiB7XG4gICAgICAgIGZyb20geyBcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7IFxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpOyBcbiAgICAgICAgfVxuICAgICAgICB0byB7IFxuICAgICAgICAgICAgb3BhY2l0eTogMTsgXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IFxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIFB1bHNlIGFuaW1hdGlvbiBmb3IgdW5yZWFkIGluZGljYXRvcnNcbiAgICBAa2V5ZnJhbWVzIHB1bHNlIHtcbiAgICAgICAgMCUge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICAgICAgNTAlIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuODtcbiAgICAgICAgfVxuICAgICAgICAxMDAlIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC51bnJlYWQtaW5kaWNhdG9yIHtcbiAgICAgICAgYW5pbWF0aW9uOiBwdWxzZSAxLjVzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xuICAgIH1cbiAgICBcbiAgICAvLyBBdHRhY2htZW50IGxpbmsgc3R5bGluZ1xuICAgIC5tZXNzYWdlLWF0dGFjaG1lbnRzIHtcbiAgICAgICAgLmF0dGFjaG1lbnQtaXRlbSB7XG4gICAgICAgICAgICBhLmJ0bi1vdXRsaW5lLXNlY29uZGFyeSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICMyMTI1Mjk7IC8vIEFsbW9zdCBibGFjayBmb3IgZmlsZW5hbWVcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAuZmEtZmlsZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkOyAvLyBLZWVwIGljb24gZ3JheVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBzbWFsbC50ZXh0LW11dGVkIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICM2Yzc1N2QgIWltcG9ydGFudDsgLy8gS2VlcCBmaWxlIHNpemUgZ3JheVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7IC8vIFdoaXRlIHRleHQgb24gaG92ZXIgKHdoZW4gYmFja2dyb3VuZCB0dXJucyBncmF5KVxuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgLmZhLWZpbGUsXG4gICAgICAgICAgICAgICAgICAgIHNtYWxsLnRleHQtbXV0ZWQge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKipcbiAqIFByb2ZpbGUgU3VwcG9ydCBUaWNrZXRzIFBhZ2UgU3R5bGVzXG4gKi9cblxuLnBhZ2UtaXMtcHJvZmlsZS1zdXBwb3J0LXRpY2tldHMge1xuICAgIC8vIE1vYmlsZSB0YWJsZSBhZGp1c3RtZW50c1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAjc3VwcG9ydC10aWNrZXRzLXRhYmxlIHtcbiAgICAgICAgICAgIC8vIEhpZGUgc29ydCBpY29ucyBvbiBtb2JpbGVcbiAgICAgICAgICAgIHRoZWFkIHRoLnNvcnRhYmxlIGkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC8vIEhpZGUgU3RhdHVzLCBNZXNzYWdlcywgYW5kIEFjdGlvbiBjb2x1bW5zIG9uIG1vYmlsZVxuICAgICAgICAgICAgdGhlYWQgdGg6bnRoLWNoaWxkKDIpLCAgLy8gU3RhdHVzIGNvbHVtblxuICAgICAgICAgICAgdGhlYWQgdGg6bnRoLWNoaWxkKDQpLCAgLy8gTWVzc2FnZXMgY29sdW1uXG4gICAgICAgICAgICB0aGVhZCB0aDpudGgtY2hpbGQoNiksICAvLyBBY3Rpb24gY29sdW1uXG4gICAgICAgICAgICB0Ym9keSB0ZDpudGgtY2hpbGQoMiksICAvLyBTdGF0dXMgY29sdW1uIGRhdGFcbiAgICAgICAgICAgIHRib2R5IHRkOm50aC1jaGlsZCg0KSwgIC8vIE1lc3NhZ2VzIGNvbHVtbiBkYXRhXG4gICAgICAgICAgICB0Ym9keSB0ZDpudGgtY2hpbGQoNikgeyAvLyBBY3Rpb24gY29sdW1uIGRhdGFcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIE1ha2UgdGFibGUgcm93cyBjbGlja2FibGVcbiAgICAjc3VwcG9ydC10aWNrZXRzLXRhYmxlIHtcbiAgICAgICAgdGJvZHkgdHIge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wMik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gU29ydGFibGUgdGFibGUgaGVhZGVyIHN0eWxpbmdcbiAgICAjc3VwcG9ydC10aWNrZXRzLXRhYmxlIHtcbiAgICAgICAgdGhlYWQgdGguc29ydGFibGUge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wMik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuODVlbTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJjpob3ZlciBpIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjc7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC8vIEFjdGl2ZSBzb3J0IGNvbHVtblxuICAgICAgICAgICAgaS5mYS1zb3J0LXVwLFxuICAgICAgICAgICAgaS5mYS1zb3J0LWRvd24ge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIFBhZ2luYXRpb24gc3R5bGluZ1xuICAgICNwYWdpbmF0aW9uLWNvbnRhaW5lciB7XG4gICAgICAgIC5wYWdpbmF0aW9uIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5wYWdlLWl0ZW0uZGlzYWJsZWQge1xuICAgICAgICAgICAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAucGFnZS1pdGVtLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBCYWRnZSBzdHlsaW5nIGFkanVzdG1lbnRzIGZvciBiZXR0ZXIgdmlzdWFsIGhpZXJhcmNoeVxuICAgIC50YWJsZSB7XG4gICAgICAgIC5iYWRnZSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgcGFkZGluZzogMC4zNWVtIDAuNjVlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLy8gTmV3IFJlcGx5IGJhZGdlIGFuaW1hdGlvblxuICAgICAgICAuYmFkZ2UuYmctZGFuZ2VyIHtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogcHVsc2UgMnMgaW5maW5pdGU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gVW5yZWFkIHRleHQgc3R5bGluZ1xuICAgIC50ZXh0LWRhbmdlciB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxuICAgIFxuICAgIC8vIFB1bHNlIGFuaW1hdGlvbiBmb3IgbmV3IHJlcGx5IGJhZGdlXG4gICAgQGtleWZyYW1lcyBwdWxzZSB7XG4gICAgICAgIDAlIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAgcmdiYSgyMjAsIDUzLCA2OSwgMC40KTtcbiAgICAgICAgfVxuICAgICAgICA3MCUge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgNXB4IHJnYmEoMjIwLCA1MywgNjksIDApO1xuICAgICAgICB9XG4gICAgICAgIDEwMCUge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKDIyMCwgNTMsIDY5LCAwKTtcbiAgICAgICAgfVxuICAgIH1cbn0iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/