/*!***********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./data/www/templates/asgard/obchod-samsung.cz/sass/app.scss ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
@font-face {
  font-family: Inter;
  font-style: normal;
  font-display: block;
  font-weight: 300 900;
  font-stretch: 50% 200%;
  src: url("/assets/ispace.cz/font/Inter-VariableFont.woff2") format("woff2");
}
@font-face {
  font-family: Inter-fallback;
  size-adjust: 107%;
  ascent-override: 90%;
  src: local("Arial");
}
.column-items-dynamic:not(.show-all-items) .column-items__item--hide, .toggle-switch [type=checkbox], .sr-only:not(:focus):not(:active) {
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

/**
 * Retrieves the next smaller breakpoint from the given breakpoint.
 *
 * @param {String} $breakpoint - The breakpoint for which to find the next smaller breakpoint.
 * @return {String|null} - The next smaller breakpoint, or null if no smaller breakpoint is available.
 */
/**
 * Retrieves the next larger breakpoint from the $grid-breakpoints map.
 *
 * @function get-bigger-breakpoint
 * @param {String} $breakpoint - The current breakpoint to find the next larger one for.
 * @return {String | null} - The next larger breakpoint or null if the current breakpoint is the largest or not found.
 */
/**
 * Reset iSpace custom form input styles to be able to design special inputs more easily
 */
/**
 * Styles to hide the scrollbar but still allow scrolling
 */
: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: #058802;
  --bs-teal: #20c997;
  --bs-cyan: #0dcaf0;
  --bs-black: #000;
  --bs-white: #fff;
  --bs-gray: #6c757d;
  --bs-gray-dark: #343a40;
  --bs-gray-100: #f8f9fa;
  --bs-gray-200: #e9ecef;
  --bs-gray-300: #dee2e6;
  --bs-gray-400: #ced4da;
  --bs-gray-500: #adb5bd;
  --bs-gray-600: #6c757d;
  --bs-gray-700: #495057;
  --bs-gray-800: #343a40;
  --bs-gray-900: #212529;
  --bs-primary: #000;
  --bs-primary-dark: #000;
  --bs-primary-light: #f4f4f4;
  --bs-secondary: #ff4337;
  --bs-light: #fff;
  --bs-dark: #000;
  --bs-base-bg: #fff;
  --bs-base-text: #000;
  --bs-link: #000;
  --bs-success: #8ed609;
  --bs-success-bg: #e8f1d9;
  --bs-success-text: #000;
  --bs-info: #9cb5e1;
  --bs-info-bg: #ddedf3;
  --bs-info-text: #000;
  --bs-warning: #239bc8;
  --bs-warning-bg: #9cb5e1;
  --bs-warning-text: #000;
  --bs-danger: #e26969;
  --bs-danger-bg: #f6dfdf;
  --bs-danger-text: #000;
  --bs-danger-darker: #df1607;
  --bs-star-rating-bg: #fb0;
  --bs-in-stock: #058802;
  --bs-gray-100: #f3f3f3;
  --bs-gray-200: #dedede;
  --bs-gray-400: #b1b1b1;
  --bs-gray-600: #747474;
  --bs-gray-900: #262626;
  --bs-primary-mid: #f4f4f4;
  --bs-dark-semi-transp: rgba(0, 0, 0, 0.1);
  --bs-out-of-stock: #e26969;
  --bs-preorder: #eab000;
  --bs-in-stock-bg: rgba(5, 136, 2, 0.1);
  --bs-gray-150: #e4e4e4;
  --bs-gray-300: #d0d0d0;
  --bs-gray-700: #4d4d4d;
  --bs-gray-800: #383838;
  --bs-gray-semi-transp: rgba(20, 92, 128, 0.1);
  --bs-saving-color: rgb(24, 128, 56);
  --bs-saving-color-bg: rgba(24, 128, 56, 0.1);
  --bs-voucher-bg: #d8edf7;
  --bs-savings-primary: #e11931;
  --bs-savings-secondary: #fee956;
  --bs-used-offers-primary: #eab000;
  --bs-used-offers-secondary: #fefbf2;
  --bs-primary-rgb: 0, 0, 0;
  --bs-primary-dark-rgb: 0, 0, 0;
  --bs-primary-light-rgb: 244, 244, 244;
  --bs-secondary-rgb: 255, 67, 55;
  --bs-light-rgb: 255, 255, 255;
  --bs-dark-rgb: 0, 0, 0;
  --bs-base-bg-rgb: 255, 255, 255;
  --bs-base-text-rgb: 0, 0, 0;
  --bs-link-rgb: 0, 0, 0;
  --bs-success-rgb: 142, 214, 9;
  --bs-success-bg-rgb: 232, 241, 217;
  --bs-success-text-rgb: 0, 0, 0;
  --bs-info-rgb: 156, 181, 225;
  --bs-info-bg-rgb: 221, 237, 243;
  --bs-info-text-rgb: 0, 0, 0;
  --bs-warning-rgb: 35, 155, 200;
  --bs-warning-bg-rgb: 156, 181, 225;
  --bs-warning-text-rgb: 0, 0, 0;
  --bs-danger-rgb: 226, 105, 105;
  --bs-danger-bg-rgb: 246, 223, 223;
  --bs-danger-text-rgb: 0, 0, 0;
  --bs-danger-darker-rgb: 223, 22, 7;
  --bs-star-rating-bg-rgb: 255, 187, 0;
  --bs-in-stock-rgb: 5, 136, 2;
  --bs-gray-100-rgb: 243, 243, 243;
  --bs-gray-200-rgb: 222, 222, 222;
  --bs-gray-400-rgb: 177, 177, 177;
  --bs-gray-600-rgb: 116, 116, 116;
  --bs-gray-900-rgb: 38, 38, 38;
  --bs-primary-mid-rgb: 244, 244, 244;
  --bs-dark-semi-transp-rgb: 0, 0, 0;
  --bs-out-of-stock-rgb: 226, 105, 105;
  --bs-preorder-rgb: 234, 176, 0;
  --bs-in-stock-bg-rgb: 5, 136, 2;
  --bs-gray-150-rgb: 228, 228, 228;
  --bs-gray-300-rgb: 208, 208, 208;
  --bs-gray-700-rgb: 77, 77, 77;
  --bs-gray-800-rgb: 56, 56, 56;
  --bs-gray-semi-transp-rgb: 20, 92, 128;
  --bs-saving-color-rgb: 24, 128, 56;
  --bs-saving-color-bg-rgb: 24, 128, 56;
  --bs-voucher-bg-rgb: 216, 237, 247;
  --bs-savings-primary-rgb: 225, 25, 49;
  --bs-savings-secondary-rgb: 254, 233, 86;
  --bs-used-offers-primary-rgb: 234, 176, 0;
  --bs-used-offers-secondary-rgb: 254, 251, 242;
  --bs-primary-text-emphasis: black;
  --bs-secondary-text-emphasis: #661b16;
  --bs-success-text-emphasis: #023601;
  --bs-info-text-emphasis: #055160;
  --bs-warning-text-emphasis: #664d03;
  --bs-danger-text-emphasis: #58151c;
  --bs-light-text-emphasis: #495057;
  --bs-dark-text-emphasis: #495057;
  --bs-primary-bg-subtle: #cccccc;
  --bs-secondary-bg-subtle: #ffd9d7;
  --bs-success-bg-subtle: #cde7cc;
  --bs-info-bg-subtle: #cff4fc;
  --bs-warning-bg-subtle: #fff3cd;
  --bs-danger-bg-subtle: #f8d7da;
  --bs-light-bg-subtle: #fcfcfd;
  --bs-dark-bg-subtle: #ced4da;
  --bs-primary-border-subtle: #999999;
  --bs-secondary-border-subtle: #ffb4af;
  --bs-success-border-subtle: #9bcf9a;
  --bs-info-border-subtle: #9eeaf9;
  --bs-warning-border-subtle: #ffe69c;
  --bs-danger-border-subtle: #f1aeb5;
  --bs-light-border-subtle: #e9ecef;
  --bs-dark-border-subtle: #adb5bd;
  --bs-white-rgb: 255, 255, 255;
  --bs-black-rgb: 0, 0, 0;
  --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
  --bs-root-font-size: 62.5%;
  --bs-body-font-family: "Inter", "Inter-fallback", "Arial", sans-serif;
  --bs-body-font-size: calc(1.265rem + 0.18vw);
  --bs-body-font-weight: 400;
  --bs-body-line-height: 1.6;
  --bs-body-color: #212529;
  --bs-body-color-rgb: 33, 37, 41;
  --bs-body-bg: #fff;
  --bs-body-bg-rgb: 255, 255, 255;
  --bs-emphasis-color: #000;
  --bs-emphasis-color-rgb: 0, 0, 0;
  --bs-secondary-color: rgba(33, 37, 41, 0.75);
  --bs-secondary-color-rgb: 33, 37, 41;
  --bs-secondary-bg: #e9ecef;
  --bs-secondary-bg-rgb: 233, 236, 239;
  --bs-tertiary-color: rgba(33, 37, 41, 0.5);
  --bs-tertiary-color-rgb: 33, 37, 41;
  --bs-tertiary-bg: #f8f9fa;
  --bs-tertiary-bg-rgb: 248, 249, 250;
  --bs-heading-color: inherit;
  --bs-link-color: #000;
  --bs-link-color-rgb: 0, 0, 0;
  --bs-link-decoration: underline;
  --bs-link-hover-color: black;
  --bs-link-hover-color-rgb: 0, 0, 0;
  --bs-code-color: #d63384;
  --bs-highlight-color: #212529;
  --bs-highlight-bg: #fff3cd;
  --bs-border-width: 1px;
  --bs-border-style: solid;
  --bs-border-color: #dee2e6;
  --bs-border-color-translucent: rgba(0, 0, 0, 0.175);
  --bs-border-radius: 0.375rem;
  --bs-border-radius-sm: 0.25rem;
  --bs-border-radius-lg: 0.5rem;
  --bs-border-radius-xl: 1rem;
  --bs-border-radius-xxl: 2rem;
  --bs-border-radius-2xl: var(--bs-border-radius-xxl);
  --bs-border-radius-pill: 50rem;
  --bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  --bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
  --bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);
  --bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);
  --bs-focus-ring-width: 0.25rem;
  --bs-focus-ring-opacity: 0.25;
  --bs-focus-ring-color: rgba(0, 0, 0, 0.25);
  --bs-form-valid-color: #058802;
  --bs-form-valid-border-color: #058802;
  --bs-form-invalid-color: #dc3545;
  --bs-form-invalid-border-color: #dc3545;
}
@media (min-width: 1200px) {
  :root,
  [data-bs-theme=light] {
    --bs-body-font-size: 1.4rem;
  }
}

.container,
.container-fluid,
.container-xxl,
.container-xl,
.container-lg {
  --bs-gutter-x: 3rem;
  --bs-gutter-y: 0;
  width: 100%;
  padding-right: calc(var(--bs-gutter-x) * 0.5);
  padding-left: calc(var(--bs-gutter-x) * 0.5);
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 992px) {
  .container-lg, .container-md, .container-sm, .container-s, .container-ms, .container {
    max-width: 1024px;
  }
}
@media (min-width: 1200px) {
  .container-xl, .container-lg, .container-md, .container-sm, .container-s, .container-ms, .container {
    max-width: 1140px;
  }
}
@media (min-width: 1366px) {
  .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container-s, .container-ms, .container {
    max-width: 1685px;
  }
}
:root {
  --bs-breakpoint-xs: 0;
  --bs-breakpoint-ms: 360px;
  --bs-breakpoint-s: 480px;
  --bs-breakpoint-sm: 576px;
  --bs-breakpoint-md: 768px;
  --bs-breakpoint-lg: 992px;
  --bs-breakpoint-xl: 1200px;
  --bs-breakpoint-xxl: 1366px;
  --bs-breakpoint-desktop: 1650px;
  --bs-breakpoint-fullhd: 1920px;
  --bs-breakpoint-2k: 2500px;
}

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

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

.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: 360px) {
  .col-ms {
    flex: 1 0 0;
  }
  .row-cols-ms-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-ms-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-ms-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-ms-3 > * {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .row-cols-ms-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-ms-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-ms-6 > * {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-ms-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-ms-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-ms-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-ms-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-ms-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-ms-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-ms-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-ms-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-ms-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-ms-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-ms-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-ms-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-ms-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-ms-0 {
    margin-left: 0;
  }
  .offset-ms-1 {
    margin-left: 8.33333333%;
  }
  .offset-ms-2 {
    margin-left: 16.66666667%;
  }
  .offset-ms-3 {
    margin-left: 25%;
  }
  .offset-ms-4 {
    margin-left: 33.33333333%;
  }
  .offset-ms-5 {
    margin-left: 41.66666667%;
  }
  .offset-ms-6 {
    margin-left: 50%;
  }
  .offset-ms-7 {
    margin-left: 58.33333333%;
  }
  .offset-ms-8 {
    margin-left: 66.66666667%;
  }
  .offset-ms-9 {
    margin-left: 75%;
  }
  .offset-ms-10 {
    margin-left: 83.33333333%;
  }
  .offset-ms-11 {
    margin-left: 91.66666667%;
  }
  .g-ms-0,
  .gx-ms-0 {
    --bs-gutter-x: 0;
  }
  .g-ms-0,
  .gy-ms-0 {
    --bs-gutter-y: 0;
  }
  .g-ms-1,
  .gx-ms-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-ms-1,
  .gy-ms-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-ms-2,
  .gx-ms-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-ms-2,
  .gy-ms-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-ms-3,
  .gx-ms-3 {
    --bs-gutter-x: 1rem;
  }
  .g-ms-3,
  .gy-ms-3 {
    --bs-gutter-y: 1rem;
  }
  .g-ms-4,
  .gx-ms-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-ms-4,
  .gy-ms-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-ms-5,
  .gx-ms-5 {
    --bs-gutter-x: 3rem;
  }
  .g-ms-5,
  .gy-ms-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 480px) {
  .col-s {
    flex: 1 0 0;
  }
  .row-cols-s-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-s-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-s-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-s-3 > * {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .row-cols-s-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-s-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-s-6 > * {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-s-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-s-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-s-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-s-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-s-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-s-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-s-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-s-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-s-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-s-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-s-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-s-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-s-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-s-0 {
    margin-left: 0;
  }
  .offset-s-1 {
    margin-left: 8.33333333%;
  }
  .offset-s-2 {
    margin-left: 16.66666667%;
  }
  .offset-s-3 {
    margin-left: 25%;
  }
  .offset-s-4 {
    margin-left: 33.33333333%;
  }
  .offset-s-5 {
    margin-left: 41.66666667%;
  }
  .offset-s-6 {
    margin-left: 50%;
  }
  .offset-s-7 {
    margin-left: 58.33333333%;
  }
  .offset-s-8 {
    margin-left: 66.66666667%;
  }
  .offset-s-9 {
    margin-left: 75%;
  }
  .offset-s-10 {
    margin-left: 83.33333333%;
  }
  .offset-s-11 {
    margin-left: 91.66666667%;
  }
  .g-s-0,
  .gx-s-0 {
    --bs-gutter-x: 0;
  }
  .g-s-0,
  .gy-s-0 {
    --bs-gutter-y: 0;
  }
  .g-s-1,
  .gx-s-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-s-1,
  .gy-s-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-s-2,
  .gx-s-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-s-2,
  .gy-s-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-s-3,
  .gx-s-3 {
    --bs-gutter-x: 1rem;
  }
  .g-s-3,
  .gy-s-3 {
    --bs-gutter-y: 1rem;
  }
  .g-s-4,
  .gx-s-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-s-4,
  .gy-s-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-s-5,
  .gx-s-5 {
    --bs-gutter-x: 3rem;
  }
  .g-s-5,
  .gy-s-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.33333333%;
  }
  .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.66666667%;
  }
  .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.33333333%;
  }
  .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.66666667%;
  }
  .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.33333333%;
  }
  .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.66666667%;
  }
  .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.33333333%;
  }
  .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.66666667%;
  }
  .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: 1366px) {
  .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.33333333%;
  }
  .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.66666667%;
  }
  .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;
  }
}
@media (min-width: 1650px) {
  .col-desktop {
    flex: 1 0 0;
  }
  .row-cols-desktop-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-desktop-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-desktop-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-desktop-3 > * {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .row-cols-desktop-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-desktop-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-desktop-6 > * {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-desktop-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-desktop-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-desktop-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-desktop-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-desktop-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-desktop-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-desktop-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-desktop-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-desktop-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-desktop-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-desktop-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-desktop-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-desktop-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-desktop-0 {
    margin-left: 0;
  }
  .offset-desktop-1 {
    margin-left: 8.33333333%;
  }
  .offset-desktop-2 {
    margin-left: 16.66666667%;
  }
  .offset-desktop-3 {
    margin-left: 25%;
  }
  .offset-desktop-4 {
    margin-left: 33.33333333%;
  }
  .offset-desktop-5 {
    margin-left: 41.66666667%;
  }
  .offset-desktop-6 {
    margin-left: 50%;
  }
  .offset-desktop-7 {
    margin-left: 58.33333333%;
  }
  .offset-desktop-8 {
    margin-left: 66.66666667%;
  }
  .offset-desktop-9 {
    margin-left: 75%;
  }
  .offset-desktop-10 {
    margin-left: 83.33333333%;
  }
  .offset-desktop-11 {
    margin-left: 91.66666667%;
  }
  .g-desktop-0,
  .gx-desktop-0 {
    --bs-gutter-x: 0;
  }
  .g-desktop-0,
  .gy-desktop-0 {
    --bs-gutter-y: 0;
  }
  .g-desktop-1,
  .gx-desktop-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-desktop-1,
  .gy-desktop-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-desktop-2,
  .gx-desktop-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-desktop-2,
  .gy-desktop-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-desktop-3,
  .gx-desktop-3 {
    --bs-gutter-x: 1rem;
  }
  .g-desktop-3,
  .gy-desktop-3 {
    --bs-gutter-y: 1rem;
  }
  .g-desktop-4,
  .gx-desktop-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-desktop-4,
  .gy-desktop-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-desktop-5,
  .gx-desktop-5 {
    --bs-gutter-x: 3rem;
  }
  .g-desktop-5,
  .gy-desktop-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 1920px) {
  .col-fullhd {
    flex: 1 0 0;
  }
  .row-cols-fullhd-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-fullhd-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-fullhd-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-fullhd-3 > * {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .row-cols-fullhd-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-fullhd-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-fullhd-6 > * {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-fullhd-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-fullhd-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-fullhd-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-fullhd-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-fullhd-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-fullhd-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-fullhd-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-fullhd-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-fullhd-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-fullhd-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-fullhd-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-fullhd-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-fullhd-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-fullhd-0 {
    margin-left: 0;
  }
  .offset-fullhd-1 {
    margin-left: 8.33333333%;
  }
  .offset-fullhd-2 {
    margin-left: 16.66666667%;
  }
  .offset-fullhd-3 {
    margin-left: 25%;
  }
  .offset-fullhd-4 {
    margin-left: 33.33333333%;
  }
  .offset-fullhd-5 {
    margin-left: 41.66666667%;
  }
  .offset-fullhd-6 {
    margin-left: 50%;
  }
  .offset-fullhd-7 {
    margin-left: 58.33333333%;
  }
  .offset-fullhd-8 {
    margin-left: 66.66666667%;
  }
  .offset-fullhd-9 {
    margin-left: 75%;
  }
  .offset-fullhd-10 {
    margin-left: 83.33333333%;
  }
  .offset-fullhd-11 {
    margin-left: 91.66666667%;
  }
  .g-fullhd-0,
  .gx-fullhd-0 {
    --bs-gutter-x: 0;
  }
  .g-fullhd-0,
  .gy-fullhd-0 {
    --bs-gutter-y: 0;
  }
  .g-fullhd-1,
  .gx-fullhd-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-fullhd-1,
  .gy-fullhd-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-fullhd-2,
  .gx-fullhd-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-fullhd-2,
  .gy-fullhd-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-fullhd-3,
  .gx-fullhd-3 {
    --bs-gutter-x: 1rem;
  }
  .g-fullhd-3,
  .gy-fullhd-3 {
    --bs-gutter-y: 1rem;
  }
  .g-fullhd-4,
  .gx-fullhd-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-fullhd-4,
  .gy-fullhd-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-fullhd-5,
  .gx-fullhd-5 {
    --bs-gutter-x: 3rem;
  }
  .g-fullhd-5,
  .gy-fullhd-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 2500px) {
  .col-2k {
    flex: 1 0 0;
  }
  .row-cols-2k-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-2k-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-2k-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-2k-3 > * {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .row-cols-2k-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-2k-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-2k-6 > * {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-2k-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-2k-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-2k-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-2k-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-2k-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-2k-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-2k-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-2k-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-2k-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-2k-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-2k-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-2k-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-2k-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-2k-0 {
    margin-left: 0;
  }
  .offset-2k-1 {
    margin-left: 8.33333333%;
  }
  .offset-2k-2 {
    margin-left: 16.66666667%;
  }
  .offset-2k-3 {
    margin-left: 25%;
  }
  .offset-2k-4 {
    margin-left: 33.33333333%;
  }
  .offset-2k-5 {
    margin-left: 41.66666667%;
  }
  .offset-2k-6 {
    margin-left: 50%;
  }
  .offset-2k-7 {
    margin-left: 58.33333333%;
  }
  .offset-2k-8 {
    margin-left: 66.66666667%;
  }
  .offset-2k-9 {
    margin-left: 75%;
  }
  .offset-2k-10 {
    margin-left: 83.33333333%;
  }
  .offset-2k-11 {
    margin-left: 91.66666667%;
  }
  .g-2k-0,
  .gx-2k-0 {
    --bs-gutter-x: 0;
  }
  .g-2k-0,
  .gy-2k-0 {
    --bs-gutter-y: 0;
  }
  .g-2k-1,
  .gx-2k-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-2k-1,
  .gy-2k-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-2k-2,
  .gx-2k-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-2k-2,
  .gy-2k-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-2k-3,
  .gx-2k-3 {
    --bs-gutter-x: 1rem;
  }
  .g-2k-3,
  .gy-2k-3 {
    --bs-gutter-y: 1rem;
  }
  .g-2k-4,
  .gx-2k-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-2k-4,
  .gy-2k-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-2k-5,
  .gx-2k-5 {
    --bs-gutter-x: 3rem;
  }
  .g-2k-5,
  .gy-2k-5 {
    --bs-gutter-y: 3rem;
  }
}
.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;
}

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

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

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

.w-100 {
  width: 100% !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;
}

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

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

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

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

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

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

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

@media (min-width: 360px) {
  .d-ms-inline {
    display: inline !important;
  }
  .d-ms-inline-block {
    display: inline-block !important;
  }
  .d-ms-block {
    display: block !important;
  }
  .d-ms-grid {
    display: grid !important;
  }
  .d-ms-inline-grid {
    display: inline-grid !important;
  }
  .d-ms-table {
    display: table !important;
  }
  .d-ms-table-row {
    display: table-row !important;
  }
  .d-ms-table-cell {
    display: table-cell !important;
  }
  .d-ms-flex {
    display: flex !important;
  }
  .d-ms-inline-flex {
    display: inline-flex !important;
  }
  .d-ms-none {
    display: none !important;
  }
  .justify-content-ms-start {
    justify-content: flex-start !important;
  }
  .justify-content-ms-end {
    justify-content: flex-end !important;
  }
  .justify-content-ms-center {
    justify-content: center !important;
  }
  .justify-content-ms-between {
    justify-content: space-between !important;
  }
  .justify-content-ms-around {
    justify-content: space-around !important;
  }
  .justify-content-ms-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-ms-start {
    align-items: flex-start !important;
  }
  .align-items-ms-end {
    align-items: flex-end !important;
  }
  .align-items-ms-center {
    align-items: center !important;
  }
  .align-items-ms-baseline {
    align-items: baseline !important;
  }
  .align-items-ms-stretch {
    align-items: stretch !important;
  }
  .m-ms-0 {
    margin: 0 !important;
  }
  .m-ms-1 {
    margin: 0.25rem !important;
  }
  .m-ms-2 {
    margin: 0.5rem !important;
  }
  .m-ms-3 {
    margin: 1rem !important;
  }
  .m-ms-4 {
    margin: 1.5rem !important;
  }
  .m-ms-5 {
    margin: 3rem !important;
  }
  .m-ms-auto {
    margin: auto !important;
  }
  .mx-ms-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-ms-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-ms-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-ms-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-ms-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-ms-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-ms-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-ms-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-ms-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-ms-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-ms-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-ms-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-ms-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-ms-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-ms-0 {
    margin-top: 0 !important;
  }
  .mt-ms-1 {
    margin-top: 0.25rem !important;
  }
  .mt-ms-2 {
    margin-top: 0.5rem !important;
  }
  .mt-ms-3 {
    margin-top: 1rem !important;
  }
  .mt-ms-4 {
    margin-top: 1.5rem !important;
  }
  .mt-ms-5 {
    margin-top: 3rem !important;
  }
  .mt-ms-auto {
    margin-top: auto !important;
  }
  .mb-ms-0 {
    margin-bottom: 0 !important;
  }
  .mb-ms-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-ms-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-ms-3 {
    margin-bottom: 1rem !important;
  }
  .mb-ms-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-ms-5 {
    margin-bottom: 3rem !important;
  }
  .mb-ms-auto {
    margin-bottom: auto !important;
  }
  .ms-ms-0 {
    margin-left: 0 !important;
  }
  .ms-ms-1 {
    margin-left: 0.25rem !important;
  }
  .ms-ms-2 {
    margin-left: 0.5rem !important;
  }
  .ms-ms-3 {
    margin-left: 1rem !important;
  }
  .ms-ms-4 {
    margin-left: 1.5rem !important;
  }
  .ms-ms-5 {
    margin-left: 3rem !important;
  }
  .ms-ms-auto {
    margin-left: auto !important;
  }
  .p-ms-0 {
    padding: 0 !important;
  }
  .p-ms-1 {
    padding: 0.25rem !important;
  }
  .p-ms-2 {
    padding: 0.5rem !important;
  }
  .p-ms-3 {
    padding: 1rem !important;
  }
  .p-ms-4 {
    padding: 1.5rem !important;
  }
  .p-ms-5 {
    padding: 3rem !important;
  }
  .pt-ms-0 {
    padding-top: 0 !important;
  }
  .pt-ms-1 {
    padding-top: 0.25rem !important;
  }
  .pt-ms-2 {
    padding-top: 0.5rem !important;
  }
  .pt-ms-3 {
    padding-top: 1rem !important;
  }
  .pt-ms-4 {
    padding-top: 1.5rem !important;
  }
  .pt-ms-5 {
    padding-top: 3rem !important;
  }
  .pb-ms-0 {
    padding-bottom: 0 !important;
  }
  .pb-ms-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-ms-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-ms-3 {
    padding-bottom: 1rem !important;
  }
  .pb-ms-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-ms-5 {
    padding-bottom: 3rem !important;
  }
}
@media (min-width: 480px) {
  .d-s-inline {
    display: inline !important;
  }
  .d-s-inline-block {
    display: inline-block !important;
  }
  .d-s-block {
    display: block !important;
  }
  .d-s-grid {
    display: grid !important;
  }
  .d-s-inline-grid {
    display: inline-grid !important;
  }
  .d-s-table {
    display: table !important;
  }
  .d-s-table-row {
    display: table-row !important;
  }
  .d-s-table-cell {
    display: table-cell !important;
  }
  .d-s-flex {
    display: flex !important;
  }
  .d-s-inline-flex {
    display: inline-flex !important;
  }
  .d-s-none {
    display: none !important;
  }
  .justify-content-s-start {
    justify-content: flex-start !important;
  }
  .justify-content-s-end {
    justify-content: flex-end !important;
  }
  .justify-content-s-center {
    justify-content: center !important;
  }
  .justify-content-s-between {
    justify-content: space-between !important;
  }
  .justify-content-s-around {
    justify-content: space-around !important;
  }
  .justify-content-s-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-s-start {
    align-items: flex-start !important;
  }
  .align-items-s-end {
    align-items: flex-end !important;
  }
  .align-items-s-center {
    align-items: center !important;
  }
  .align-items-s-baseline {
    align-items: baseline !important;
  }
  .align-items-s-stretch {
    align-items: stretch !important;
  }
  .m-s-0 {
    margin: 0 !important;
  }
  .m-s-1 {
    margin: 0.25rem !important;
  }
  .m-s-2 {
    margin: 0.5rem !important;
  }
  .m-s-3 {
    margin: 1rem !important;
  }
  .m-s-4 {
    margin: 1.5rem !important;
  }
  .m-s-5 {
    margin: 3rem !important;
  }
  .m-s-auto {
    margin: auto !important;
  }
  .mx-s-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-s-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-s-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-s-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-s-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-s-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-s-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-s-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-s-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-s-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-s-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-s-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-s-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-s-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-s-0 {
    margin-top: 0 !important;
  }
  .mt-s-1 {
    margin-top: 0.25rem !important;
  }
  .mt-s-2 {
    margin-top: 0.5rem !important;
  }
  .mt-s-3 {
    margin-top: 1rem !important;
  }
  .mt-s-4 {
    margin-top: 1.5rem !important;
  }
  .mt-s-5 {
    margin-top: 3rem !important;
  }
  .mt-s-auto {
    margin-top: auto !important;
  }
  .mb-s-0 {
    margin-bottom: 0 !important;
  }
  .mb-s-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-s-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-s-3 {
    margin-bottom: 1rem !important;
  }
  .mb-s-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-s-5 {
    margin-bottom: 3rem !important;
  }
  .mb-s-auto {
    margin-bottom: auto !important;
  }
  .ms-s-0 {
    margin-left: 0 !important;
  }
  .ms-s-1 {
    margin-left: 0.25rem !important;
  }
  .ms-s-2 {
    margin-left: 0.5rem !important;
  }
  .ms-s-3 {
    margin-left: 1rem !important;
  }
  .ms-s-4 {
    margin-left: 1.5rem !important;
  }
  .ms-s-5 {
    margin-left: 3rem !important;
  }
  .ms-s-auto {
    margin-left: auto !important;
  }
  .p-s-0 {
    padding: 0 !important;
  }
  .p-s-1 {
    padding: 0.25rem !important;
  }
  .p-s-2 {
    padding: 0.5rem !important;
  }
  .p-s-3 {
    padding: 1rem !important;
  }
  .p-s-4 {
    padding: 1.5rem !important;
  }
  .p-s-5 {
    padding: 3rem !important;
  }
  .pt-s-0 {
    padding-top: 0 !important;
  }
  .pt-s-1 {
    padding-top: 0.25rem !important;
  }
  .pt-s-2 {
    padding-top: 0.5rem !important;
  }
  .pt-s-3 {
    padding-top: 1rem !important;
  }
  .pt-s-4 {
    padding-top: 1.5rem !important;
  }
  .pt-s-5 {
    padding-top: 3rem !important;
  }
  .pb-s-0 {
    padding-bottom: 0 !important;
  }
  .pb-s-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-s-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-s-3 {
    padding-bottom: 1rem !important;
  }
  .pb-s-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-s-5 {
    padding-bottom: 3rem !important;
  }
}
@media (min-width: 576px) {
  .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;
  }
  .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;
  }
  .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;
  }
  .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;
  }
  .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;
  }
  .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;
  }
}
@media (min-width: 768px) {
  .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;
  }
  .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;
  }
  .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;
  }
  .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;
  }
  .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;
  }
  .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;
  }
}
@media (min-width: 992px) {
  .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;
  }
  .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;
  }
  .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;
  }
  .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;
  }
  .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;
  }
  .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;
  }
}
@media (min-width: 1200px) {
  .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;
  }
  .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;
  }
  .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;
  }
  .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;
  }
  .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;
  }
  .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;
  }
}
@media (min-width: 1366px) {
  .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;
  }
  .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;
  }
  .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;
  }
  .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;
  }
  .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;
  }
  .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;
  }
}
@media (min-width: 1650px) {
  .d-desktop-inline {
    display: inline !important;
  }
  .d-desktop-inline-block {
    display: inline-block !important;
  }
  .d-desktop-block {
    display: block !important;
  }
  .d-desktop-grid {
    display: grid !important;
  }
  .d-desktop-inline-grid {
    display: inline-grid !important;
  }
  .d-desktop-table {
    display: table !important;
  }
  .d-desktop-table-row {
    display: table-row !important;
  }
  .d-desktop-table-cell {
    display: table-cell !important;
  }
  .d-desktop-flex {
    display: flex !important;
  }
  .d-desktop-inline-flex {
    display: inline-flex !important;
  }
  .d-desktop-none {
    display: none !important;
  }
  .justify-content-desktop-start {
    justify-content: flex-start !important;
  }
  .justify-content-desktop-end {
    justify-content: flex-end !important;
  }
  .justify-content-desktop-center {
    justify-content: center !important;
  }
  .justify-content-desktop-between {
    justify-content: space-between !important;
  }
  .justify-content-desktop-around {
    justify-content: space-around !important;
  }
  .justify-content-desktop-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-desktop-start {
    align-items: flex-start !important;
  }
  .align-items-desktop-end {
    align-items: flex-end !important;
  }
  .align-items-desktop-center {
    align-items: center !important;
  }
  .align-items-desktop-baseline {
    align-items: baseline !important;
  }
  .align-items-desktop-stretch {
    align-items: stretch !important;
  }
  .m-desktop-0 {
    margin: 0 !important;
  }
  .m-desktop-1 {
    margin: 0.25rem !important;
  }
  .m-desktop-2 {
    margin: 0.5rem !important;
  }
  .m-desktop-3 {
    margin: 1rem !important;
  }
  .m-desktop-4 {
    margin: 1.5rem !important;
  }
  .m-desktop-5 {
    margin: 3rem !important;
  }
  .m-desktop-auto {
    margin: auto !important;
  }
  .mx-desktop-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-desktop-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-desktop-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-desktop-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-desktop-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-desktop-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-desktop-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-desktop-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-desktop-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-desktop-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-desktop-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-desktop-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-desktop-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-desktop-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-desktop-0 {
    margin-top: 0 !important;
  }
  .mt-desktop-1 {
    margin-top: 0.25rem !important;
  }
  .mt-desktop-2 {
    margin-top: 0.5rem !important;
  }
  .mt-desktop-3 {
    margin-top: 1rem !important;
  }
  .mt-desktop-4 {
    margin-top: 1.5rem !important;
  }
  .mt-desktop-5 {
    margin-top: 3rem !important;
  }
  .mt-desktop-auto {
    margin-top: auto !important;
  }
  .mb-desktop-0 {
    margin-bottom: 0 !important;
  }
  .mb-desktop-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-desktop-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-desktop-3 {
    margin-bottom: 1rem !important;
  }
  .mb-desktop-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-desktop-5 {
    margin-bottom: 3rem !important;
  }
  .mb-desktop-auto {
    margin-bottom: auto !important;
  }
  .ms-desktop-0 {
    margin-left: 0 !important;
  }
  .ms-desktop-1 {
    margin-left: 0.25rem !important;
  }
  .ms-desktop-2 {
    margin-left: 0.5rem !important;
  }
  .ms-desktop-3 {
    margin-left: 1rem !important;
  }
  .ms-desktop-4 {
    margin-left: 1.5rem !important;
  }
  .ms-desktop-5 {
    margin-left: 3rem !important;
  }
  .ms-desktop-auto {
    margin-left: auto !important;
  }
  .p-desktop-0 {
    padding: 0 !important;
  }
  .p-desktop-1 {
    padding: 0.25rem !important;
  }
  .p-desktop-2 {
    padding: 0.5rem !important;
  }
  .p-desktop-3 {
    padding: 1rem !important;
  }
  .p-desktop-4 {
    padding: 1.5rem !important;
  }
  .p-desktop-5 {
    padding: 3rem !important;
  }
  .pt-desktop-0 {
    padding-top: 0 !important;
  }
  .pt-desktop-1 {
    padding-top: 0.25rem !important;
  }
  .pt-desktop-2 {
    padding-top: 0.5rem !important;
  }
  .pt-desktop-3 {
    padding-top: 1rem !important;
  }
  .pt-desktop-4 {
    padding-top: 1.5rem !important;
  }
  .pt-desktop-5 {
    padding-top: 3rem !important;
  }
  .pb-desktop-0 {
    padding-bottom: 0 !important;
  }
  .pb-desktop-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-desktop-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-desktop-3 {
    padding-bottom: 1rem !important;
  }
  .pb-desktop-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-desktop-5 {
    padding-bottom: 3rem !important;
  }
}
@media (min-width: 1920px) {
  .d-fullhd-inline {
    display: inline !important;
  }
  .d-fullhd-inline-block {
    display: inline-block !important;
  }
  .d-fullhd-block {
    display: block !important;
  }
  .d-fullhd-grid {
    display: grid !important;
  }
  .d-fullhd-inline-grid {
    display: inline-grid !important;
  }
  .d-fullhd-table {
    display: table !important;
  }
  .d-fullhd-table-row {
    display: table-row !important;
  }
  .d-fullhd-table-cell {
    display: table-cell !important;
  }
  .d-fullhd-flex {
    display: flex !important;
  }
  .d-fullhd-inline-flex {
    display: inline-flex !important;
  }
  .d-fullhd-none {
    display: none !important;
  }
  .justify-content-fullhd-start {
    justify-content: flex-start !important;
  }
  .justify-content-fullhd-end {
    justify-content: flex-end !important;
  }
  .justify-content-fullhd-center {
    justify-content: center !important;
  }
  .justify-content-fullhd-between {
    justify-content: space-between !important;
  }
  .justify-content-fullhd-around {
    justify-content: space-around !important;
  }
  .justify-content-fullhd-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-fullhd-start {
    align-items: flex-start !important;
  }
  .align-items-fullhd-end {
    align-items: flex-end !important;
  }
  .align-items-fullhd-center {
    align-items: center !important;
  }
  .align-items-fullhd-baseline {
    align-items: baseline !important;
  }
  .align-items-fullhd-stretch {
    align-items: stretch !important;
  }
  .m-fullhd-0 {
    margin: 0 !important;
  }
  .m-fullhd-1 {
    margin: 0.25rem !important;
  }
  .m-fullhd-2 {
    margin: 0.5rem !important;
  }
  .m-fullhd-3 {
    margin: 1rem !important;
  }
  .m-fullhd-4 {
    margin: 1.5rem !important;
  }
  .m-fullhd-5 {
    margin: 3rem !important;
  }
  .m-fullhd-auto {
    margin: auto !important;
  }
  .mx-fullhd-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-fullhd-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-fullhd-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-fullhd-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-fullhd-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-fullhd-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-fullhd-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-fullhd-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-fullhd-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-fullhd-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-fullhd-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-fullhd-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-fullhd-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-fullhd-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-fullhd-0 {
    margin-top: 0 !important;
  }
  .mt-fullhd-1 {
    margin-top: 0.25rem !important;
  }
  .mt-fullhd-2 {
    margin-top: 0.5rem !important;
  }
  .mt-fullhd-3 {
    margin-top: 1rem !important;
  }
  .mt-fullhd-4 {
    margin-top: 1.5rem !important;
  }
  .mt-fullhd-5 {
    margin-top: 3rem !important;
  }
  .mt-fullhd-auto {
    margin-top: auto !important;
  }
  .mb-fullhd-0 {
    margin-bottom: 0 !important;
  }
  .mb-fullhd-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-fullhd-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-fullhd-3 {
    margin-bottom: 1rem !important;
  }
  .mb-fullhd-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-fullhd-5 {
    margin-bottom: 3rem !important;
  }
  .mb-fullhd-auto {
    margin-bottom: auto !important;
  }
  .ms-fullhd-0 {
    margin-left: 0 !important;
  }
  .ms-fullhd-1 {
    margin-left: 0.25rem !important;
  }
  .ms-fullhd-2 {
    margin-left: 0.5rem !important;
  }
  .ms-fullhd-3 {
    margin-left: 1rem !important;
  }
  .ms-fullhd-4 {
    margin-left: 1.5rem !important;
  }
  .ms-fullhd-5 {
    margin-left: 3rem !important;
  }
  .ms-fullhd-auto {
    margin-left: auto !important;
  }
  .p-fullhd-0 {
    padding: 0 !important;
  }
  .p-fullhd-1 {
    padding: 0.25rem !important;
  }
  .p-fullhd-2 {
    padding: 0.5rem !important;
  }
  .p-fullhd-3 {
    padding: 1rem !important;
  }
  .p-fullhd-4 {
    padding: 1.5rem !important;
  }
  .p-fullhd-5 {
    padding: 3rem !important;
  }
  .pt-fullhd-0 {
    padding-top: 0 !important;
  }
  .pt-fullhd-1 {
    padding-top: 0.25rem !important;
  }
  .pt-fullhd-2 {
    padding-top: 0.5rem !important;
  }
  .pt-fullhd-3 {
    padding-top: 1rem !important;
  }
  .pt-fullhd-4 {
    padding-top: 1.5rem !important;
  }
  .pt-fullhd-5 {
    padding-top: 3rem !important;
  }
  .pb-fullhd-0 {
    padding-bottom: 0 !important;
  }
  .pb-fullhd-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-fullhd-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-fullhd-3 {
    padding-bottom: 1rem !important;
  }
  .pb-fullhd-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-fullhd-5 {
    padding-bottom: 3rem !important;
  }
}
@media (min-width: 2500px) {
  .d-2k-inline {
    display: inline !important;
  }
  .d-2k-inline-block {
    display: inline-block !important;
  }
  .d-2k-block {
    display: block !important;
  }
  .d-2k-grid {
    display: grid !important;
  }
  .d-2k-inline-grid {
    display: inline-grid !important;
  }
  .d-2k-table {
    display: table !important;
  }
  .d-2k-table-row {
    display: table-row !important;
  }
  .d-2k-table-cell {
    display: table-cell !important;
  }
  .d-2k-flex {
    display: flex !important;
  }
  .d-2k-inline-flex {
    display: inline-flex !important;
  }
  .d-2k-none {
    display: none !important;
  }
  .justify-content-2k-start {
    justify-content: flex-start !important;
  }
  .justify-content-2k-end {
    justify-content: flex-end !important;
  }
  .justify-content-2k-center {
    justify-content: center !important;
  }
  .justify-content-2k-between {
    justify-content: space-between !important;
  }
  .justify-content-2k-around {
    justify-content: space-around !important;
  }
  .justify-content-2k-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-2k-start {
    align-items: flex-start !important;
  }
  .align-items-2k-end {
    align-items: flex-end !important;
  }
  .align-items-2k-center {
    align-items: center !important;
  }
  .align-items-2k-baseline {
    align-items: baseline !important;
  }
  .align-items-2k-stretch {
    align-items: stretch !important;
  }
  .m-2k-0 {
    margin: 0 !important;
  }
  .m-2k-1 {
    margin: 0.25rem !important;
  }
  .m-2k-2 {
    margin: 0.5rem !important;
  }
  .m-2k-3 {
    margin: 1rem !important;
  }
  .m-2k-4 {
    margin: 1.5rem !important;
  }
  .m-2k-5 {
    margin: 3rem !important;
  }
  .m-2k-auto {
    margin: auto !important;
  }
  .mx-2k-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-2k-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-2k-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-2k-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-2k-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-2k-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-2k-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-2k-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-2k-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-2k-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-2k-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-2k-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-2k-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-2k-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-2k-0 {
    margin-top: 0 !important;
  }
  .mt-2k-1 {
    margin-top: 0.25rem !important;
  }
  .mt-2k-2 {
    margin-top: 0.5rem !important;
  }
  .mt-2k-3 {
    margin-top: 1rem !important;
  }
  .mt-2k-4 {
    margin-top: 1.5rem !important;
  }
  .mt-2k-5 {
    margin-top: 3rem !important;
  }
  .mt-2k-auto {
    margin-top: auto !important;
  }
  .mb-2k-0 {
    margin-bottom: 0 !important;
  }
  .mb-2k-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-2k-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-2k-3 {
    margin-bottom: 1rem !important;
  }
  .mb-2k-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-2k-5 {
    margin-bottom: 3rem !important;
  }
  .mb-2k-auto {
    margin-bottom: auto !important;
  }
  .ms-2k-0 {
    margin-left: 0 !important;
  }
  .ms-2k-1 {
    margin-left: 0.25rem !important;
  }
  .ms-2k-2 {
    margin-left: 0.5rem !important;
  }
  .ms-2k-3 {
    margin-left: 1rem !important;
  }
  .ms-2k-4 {
    margin-left: 1.5rem !important;
  }
  .ms-2k-5 {
    margin-left: 3rem !important;
  }
  .ms-2k-auto {
    margin-left: auto !important;
  }
  .p-2k-0 {
    padding: 0 !important;
  }
  .p-2k-1 {
    padding: 0.25rem !important;
  }
  .p-2k-2 {
    padding: 0.5rem !important;
  }
  .p-2k-3 {
    padding: 1rem !important;
  }
  .p-2k-4 {
    padding: 1.5rem !important;
  }
  .p-2k-5 {
    padding: 3rem !important;
  }
  .pt-2k-0 {
    padding-top: 0 !important;
  }
  .pt-2k-1 {
    padding-top: 0.25rem !important;
  }
  .pt-2k-2 {
    padding-top: 0.5rem !important;
  }
  .pt-2k-3 {
    padding-top: 1rem !important;
  }
  .pt-2k-4 {
    padding-top: 1.5rem !important;
  }
  .pt-2k-5 {
    padding-top: 3rem !important;
  }
  .pb-2k-0 {
    padding-bottom: 0 !important;
  }
  .pb-2k-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-2k-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-2k-3 {
    padding-bottom: 1rem !important;
  }
  .pb-2k-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-2k-5 {
    padding-bottom: 3rem !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;
  }
}
*,
*::before,
*::after {
  box-sizing: border-box;
}

* {
  word-break: normal;
  overflow-wrap: anywhere;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
p,
ul,
ol,
li,
figure,
figcaption,
blockquote,
dl {
  margin: 0;
}

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

body {
  font-size: var(--bs-body-font-size);
  margin: 0;
  font-family: var(--bs-body-font-family);
  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);
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

main {
  font-size: 1.6rem;
}

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

p {
  margin-top: 0;
}

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

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

ol,
ul {
  list-style: none;
  padding: 0;
}

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

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

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

a {
  color: currentcolor;
}
a:where(:not([class*=__])):link, a:where(:not([class*=__])):visited {
  color: #000;
}
a:where(:not([class*=__])):hover, a:where(:not([class*=__])):focus, a:where(:not([class*=__])):active {
  color: currentcolor;
  text-decoration: none;
}

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

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

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

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

kbd {
  font-size: 0.875em;
  padding: 0.1875rem 0.375rem;
  color: var(--bs-body-bg);
  background-color: var(--bs-body-color);
}
kbd kbd {
  font-size: 1em;
  padding: 0;
}

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

img {
  display: block;
  max-width: 100%;
}

svg {
  display: block;
  fill: currentcolor;
  stroke: currentcolor;
}

label {
  display: inline-block;
}

button,
input {
  border: 0;
}
button:focus,
input:focus {
  outline: 0;
}

button {
  background: none;
  border: 0;
  border-radius: 0;
  color: currentcolor;
  cursor: pointer;
  margin: 0;
  outline: none;
  padding: 0;
}
button:focus {
  outline: none;
}

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

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

button,
select {
  text-transform: none;
}

[role=button] {
  cursor: pointer;
}

select {
  overflow-wrap: normal;
}
select:disabled {
  opacity: 1;
}
@supports (background: -webkit-named-image(i)) {
  select {
    -webkit-appearance: none;
    padding-right: 22px !important;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' data-container-transform='translate(3)' viewBox='0 0 16 20'%3E%3Cpath d='M8 0 3 7h10L8 0zM3 9l5 7 5-7H3z'/%3E%3C/svg%3E") no-repeat top 52% right 4px;
    background-size: 15px 15px;
    border-radius: 0;
    line-height: 1;
    color: fieldtext;
  }
}
select:focus {
  outline: none;
}

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

*:not(.form-input) > input:where(:not([type=button]):not([type=submit]):not([type=reset])):hover, *:not(.form-input) > input:where(:not([type=button]):not([type=submit]):not([type=reset])):focus,
*:not(.form-input) > textarea:hover,
*:not(.form-input) > textarea:focus {
  border-color: #000;
}

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

textarea {
  border: none;
  resize: vertical;
}
textarea:focus {
  outline: none !important;
  border: none;
}

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

legend {
  font-size: 2rem;
  float: left;
  width: 100%;
  padding: 0;
  margin-bottom: 2rem;
  font-weight: 700;
  line-height: 1.2;
}
legend + * {
  clear: left;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
  box-shadow: 0 0 0 30px #fff inset !important;
}

input[type=search]::-webkit-search-decoration,
input[type=search]::-webkit-search-cancel-button {
  -webkit-appearance: none;
}

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

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

output {
  display: inline-block;
}

iframe {
  border: 0;
}
:where(.container, .modal) iframe {
  max-width: 100%;
}
@supports (aspect-ratio: var(--iframe-aspect-ratio, 16/9)) {
  :where(.container, .modal) iframe {
    aspect-ratio: var(--iframe-aspect-ratio, 16/9);
    height: auto;
  }
}

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

progress {
  vertical-align: baseline;
}

[hidden] {
  display: none !important;
}

br {
  margin: 0 !important;
}

:where(.container, .modal) iframe {
  max-width: 100%;
}
@supports (aspect-ratio: 16/9) {
  :where(.container, .modal) iframe {
    height: auto;
    aspect-ratio: var(--iframe-aspect-ratio, 16/9);
  }
}

body {
  display: flex;
  flex-direction: column;
}

main {
  flex: 1;
}

a:focus-visible,
button:focus-visible {
  outline: 1px auto #9cb5e1;
}

a {
  transition: color 0.15s linear;
}

svg {
  width: 2.2rem;
  height: 2.2rem;
}
svg.icon__error {
  width: 1.3rem;
  height: 1.3rem;
  box-sizing: content-box;
  border: 0.6rem solid #e26969;
  border-radius: 1.2rem;
  background-color: #e26969;
  color: #fff;
  stroke-width: 0.5px;
  margin-right: 0.75em;
  transform: translateY(-2px);
}

.main-content {
  background-color: #f3f3f3;
  position: relative;
}

.print-visibilty {
  display: none !important;
}

@media (max-width: 1199.98px) {
  .desktop-nav-only {
    display: none !important;
  }
}
@media (min-width: 1200px) {
  .mobile-nav-only {
    display: none !important;
  }
}
.no-js-only {
  display: block;
}
.js .no-js-only {
  display: none;
}

.js-only {
  display: none;
}
.js .js-only {
  display: block;
}

.boxes:not(.boxes-center), .common-content .boxes:not(.boxes-center) {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
.boxes:not(.boxes-center) > *:has(> picture:first-child:last-child),
.boxes:not(.boxes-center) > *:has(> img:first-child:last-child), .common-content .boxes:not(.boxes-center) > *:has(> picture:first-child:last-child),
.common-content .boxes:not(.boxes-center) > *:has(> img:first-child:last-child) {
  align-self: center;
}

[class*=boxes-] {
  --flex-grow: 0;
  --flex-shrink: 1;
  --flex-basis: auto;
}
.boxes-2:where(:not([class*=gap-])), .boxes-2:where(.gap-1), .common-content .boxes-2:where(:not([class*=gap-])), .common-content .boxes-2:where(.gap-1) {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
.boxes-2:where(:not([class*=gap-])) > *, .boxes-2:where(.gap-1) > *, .common-content .boxes-2:where(:not([class*=gap-])) > *, .common-content .boxes-2:where(.gap-1) > * {
  --flex-basis: calc(50% - 0.5rem);
}
.boxes-2:where(.gap-2), .common-content .boxes-2:where(.gap-2) {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
}
.boxes-2:where(.gap-2) > *, .common-content .boxes-2:where(.gap-2) > * {
  --flex-basis: calc(50% - 1rem);
}
.boxes-2:where(.gap-3), .common-content .boxes-2:where(.gap-3) {
  display: flex;
  flex-wrap: wrap;
  gap: 3rem;
}
.boxes-2:where(.gap-3) > *, .common-content .boxes-2:where(.gap-3) > * {
  --flex-basis: calc(50% - 1.5rem);
}

.boxes-3:where(:not([class*=gap-])), .boxes-3:where(.gap-1), .common-content .boxes-3:where(:not([class*=gap-])), .common-content .boxes-3:where(.gap-1) {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
.boxes-3:where(:not([class*=gap-])) > *, .boxes-3:where(.gap-1) > *, .common-content .boxes-3:where(:not([class*=gap-])) > *, .common-content .boxes-3:where(.gap-1) > * {
  --flex-basis: calc(33.3333333333% - 0.6666666667rem);
}
.boxes-3:where(.gap-2), .common-content .boxes-3:where(.gap-2) {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
}
.boxes-3:where(.gap-2) > *, .common-content .boxes-3:where(.gap-2) > * {
  --flex-basis: calc(33.3333333333% - 1.3333333333rem);
}
.boxes-3:where(.gap-3), .common-content .boxes-3:where(.gap-3) {
  display: flex;
  flex-wrap: wrap;
  gap: 3rem;
}
.boxes-3:where(.gap-3) > *, .common-content .boxes-3:where(.gap-3) > * {
  --flex-basis: calc(33.3333333333% - 2rem);
}

.boxes-4:where(:not([class*=gap-])), .boxes-4:where(.gap-1), .common-content .boxes-4:where(:not([class*=gap-])), .common-content .boxes-4:where(.gap-1) {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
.boxes-4:where(:not([class*=gap-])) > *, .boxes-4:where(.gap-1) > *, .common-content .boxes-4:where(:not([class*=gap-])) > *, .common-content .boxes-4:where(.gap-1) > * {
  --flex-basis: calc(25% - 0.75rem);
}
.boxes-4:where(.gap-2), .common-content .boxes-4:where(.gap-2) {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
}
.boxes-4:where(.gap-2) > *, .common-content .boxes-4:where(.gap-2) > * {
  --flex-basis: calc(25% - 1.5rem);
}
.boxes-4:where(.gap-3), .common-content .boxes-4:where(.gap-3) {
  display: flex;
  flex-wrap: wrap;
  gap: 3rem;
}
.boxes-4:where(.gap-3) > *, .common-content .boxes-4:where(.gap-3) > * {
  --flex-basis: calc(25% - 2.25rem);
}

.boxes-5:where(:not([class*=gap-])), .boxes-5:where(.gap-1), .common-content .boxes-5:where(:not([class*=gap-])), .common-content .boxes-5:where(.gap-1) {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
.boxes-5:where(:not([class*=gap-])) > *, .boxes-5:where(.gap-1) > *, .common-content .boxes-5:where(:not([class*=gap-])) > *, .common-content .boxes-5:where(.gap-1) > * {
  --flex-basis: calc(20% - 0.8rem);
}
.boxes-5:where(.gap-2), .common-content .boxes-5:where(.gap-2) {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
}
.boxes-5:where(.gap-2) > *, .common-content .boxes-5:where(.gap-2) > * {
  --flex-basis: calc(20% - 1.6rem);
}
.boxes-5:where(.gap-3), .common-content .boxes-5:where(.gap-3) {
  display: flex;
  flex-wrap: wrap;
  gap: 3rem;
}
.boxes-5:where(.gap-3) > *, .common-content .boxes-5:where(.gap-3) > * {
  --flex-basis: calc(20% - 2.4rem);
}

@media (max-width: 767px) {
  [class*=boxes-]:where(:not(.boxes-center):not(.boxes-1)):where(:not(.gap-2):not(.gap-3)) > *:not(.specificity-fix) {
    --flex-basis: calc(50% - 0.5rem);
  }
  [class*=boxes-]:where(:not(.boxes-center):not(.boxes-1)):where(.gap-2) > *:not(.specificity-fix) {
    --flex-basis: calc(50% - 1rem);
  }
  [class*=boxes-]:where(:not(.boxes-center):not(.boxes-1)):where(.gap-3) > *:not(.specificity-fix) {
    --flex-basis: calc(50% - 1.5rem);
  }
}
@media (max-width: 414px) {
  [class*=boxes-] > *:not(.specificity-fix) {
    --flex-basis: 100%;
  }
}
[class*=boxes-] > * {
  min-width: 0;
  flex: var(--flex-grow) var(--flex-shrink) var(--flex-basis);
}
[class*=boxes-] > *:not(.specificity-fix) {
  margin: 0;
}
[class*=boxes-] > *,
[class*=boxes-] .box-text {
  display: block;
  text-wrap: pretty;
}
[class*=boxes-] > *:where(img) {
  height: revert-layer;
  width: revert-layer;
}
[class*=boxes-] > * > *:not(img):not(picture):not(:first-child), [class*=boxes-].gap-1 > * > *:not(img):not(picture):not(:first-child) {
  margin-block: 1rem 0;
}
[class*=boxes-].gap-2 > * > *:not(img):not(picture):not(:first-child), [class*=boxes-].gap-3 > * > *:not(img):not(picture):not(:first-child) {
  margin-block: 2rem 0;
}

[class*=boxes-].text-center picture,
[class*=boxes-].text-center img,
[class*=boxes-] [style*="text-align:center"] picture,
[class*=boxes-] [style*="text-align:center"] img {
  justify-self: center;
}

.boxes-center, .common-content .boxes-center {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: clamp(1rem, 5%, 4rem);
}
.boxes-center > *:where(img), .common-content .boxes-center > *:where(img) {
  height: revert-layer;
  width: revert-layer;
}
.row--grid {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  --grid-row-gap: var(--bs-gutter-x);
  --grid-column-minimum: 420px;
  margin-top: calc(-1 * var(--bs-gutter-y));
  display: grid;
  gap: var(--grid-row-gap);
  grid-template-columns: repeat(auto-fit, minmax(min(var(--grid-column-minimum), 100%), 1fr));
}
.row--grid + .row--grid {
  margin-top: var(--grid-row-gap);
}
.row--grid .col--new-row {
  grid-column: 1;
}
.row--grid-fieldset {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  --grid-row-gap: var(--bs-gutter-x);
  --grid-column-minimum: 420px;
}
.row--grid-fieldset fieldset:first-of-type {
  display: grid;
  gap: var(--grid-row-gap);
  grid-template-columns: repeat(auto-fit, minmax(min(var(--grid-column-minimum), 100%), 1fr));
}
.row--grid-fieldset fieldset:first-of-type legend {
  grid-column: 1/-1;
  margin-bottom: 0;
}
.row--grid-fieldset fieldset:first-of-type legend + .form-input {
  margin-top: 0;
}
.row--grid-fieldset fieldset:first-of-type .form-input + .form-input {
  margin-top: 0;
}
.row--grid-fieldset fieldset:first-of-type .form-input:has(.checkbox, .submit, .form-field--textarea) {
  grid-column: 1/-1;
}
.row--grid-fieldset > form > fieldset fieldset {
  display: block;
}

@keyframes spinner {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(359deg);
  }
}
h6, h5, h4, h3, h2, h1 {
  margin-top: 0;
  margin-bottom: 1em;
  font-weight: 700;
  line-height: 1.2;
  color: var(--bs-body-color);
}

h1 {
  font-size: clamp(3rem, 6vw, 4rem);
}

h2 {
  font-size: calc(1.485rem + 2.82vw);
}
@media (min-width: 1200px) {
  h2 {
    font-size: 3.6rem;
  }
}

h3 {
  font-size: 2rem;
}

h4 {
  font-size: calc(1.305rem + 0.66vw);
}
@media (min-width: 1200px) {
  h4 {
    font-size: 1.8rem;
  }
}

h5 {
  font-size: calc(1.285rem + 0.42vw);
}
@media (min-width: 1200px) {
  h5 {
    font-size: 1.6rem;
  }
}

h6 {
  font-size: calc(1.285rem + 0.42vw);
  font-weight: normal;
}
@media (min-width: 1200px) {
  h6 {
    font-size: 1.6rem;
  }
}

.font-size-sm {
  font-size: 1.2rem;
}

.font-size-lg {
  font-size: 1.75rem;
}

.font-size-larger {
  font-size: 2.1rem;
}

.font-size-largest {
  font-size: 2.8rem;
}

.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

.text-bold {
  font-weight: 700;
}

.gdpr-consent {
  font-size: 1.4rem;
  text-wrap: pretty;
}

h6,
h5,
h4,
h3,
h2,
h1,
legend {
  font-weight: normal;
  font-variation-settings: "wght" 700;
}

h1,
h2 {
  margin-block-end: 2rem;
}

dt {
  font-weight: normal;
  font-variation-settings: "wght" 700;
}

b,
strong {
  font-weight: normal;
  font-variation-settings: "wght" 700;
}

.cookie-consent-modal .cookie-consent-header-2 {
  font-weight: normal;
  font-variation-settings: "wght" 600;
}
.cookie-consent-modal .cookie-form-section .cookie-form-section-primary-heading {
  font-weight: normal;
  font-variation-settings: "wght" 600;
}
.cookie-consent-modal .cookie-form-section .cookie-form-section-primary-heading span {
  font-variation-settings: "wght" 400;
}

.card-price__discount {
  font-weight: normal;
  font-variation-settings: "wght" 400;
}
.card-price__full {
  font-weight: normal;
  font-variation-settings: "wght" 700;
}

.dropdown-list__link.is-active {
  font-weight: normal;
  font-variation-settings: "wght" 700;
}

.column-items-dynamic--trigger .btn--more {
  font-weight: inherit;
  font-variation-settings: "wght" inherit;
}

.floating-spinner-container.spinner-show .msg-overlay {
  font-weight: normal;
  font-variation-settings: "wght" 700;
}

.form-field__currency {
  font-weight: normal;
  font-variation-settings: "wght" 700;
}
.form-field__input,
.form-field *:where([type=text], [type=password], [type=number], [type=email], [type=tel], textarea, select) {
  font-weight: normal;
  font-variation-settings: "wght" 300;
}
.form-field__separator {
  font-weight: normal;
  font-variation-settings: "wght" 700;
}

.form-input [class*="--inline"] + * {
  font-weight: normal;
  font-variation-settings: "wght" 400;
}
.form-input__label:where(:not(.text-bold)) {
  font-weight: normal;
  font-variation-settings: "wght" 400;
}
@media (min-width: 768px) {
  .form-input__help-box {
    font-weight: normal;
    font-variation-settings: "wght" 400;
  }
}

@media (max-width: 1199.98px) {
  .menu__link--primary {
    font-weight: normal;
    font-variation-settings: "wght" 600;
  }
  .menu__link--secondary {
    font-weight: normal;
    font-variation-settings: "wght" 400;
  }
}
@media (min-width: 1200px) {
  .menu__item--main > .menu__link--primary {
    font-weight: normal;
    font-variation-settings: "wght" 700;
  }
  .menu .submenu--main > .menu > .menu__item > .menu__link {
    font-weight: normal;
    font-variation-settings: "wght" 700;
  }
}

@media (max-width: 1199.98px) {
  .nav-pages__link {
    font-weight: normal;
    font-variation-settings: "wght" 500;
  }
}

.sidebar__navigation--list a {
  font-weight: normal;
  font-variation-settings: "wght" 700;
}

.product-availability strong {
  font-weight: normal;
  font-variation-settings: "wght" 400;
}

@media (max-width: 1199.98px) {
  .submenu__btn {
    font-weight: normal;
    font-variation-settings: "wght" 700;
  }
}

.text-bold {
  font-weight: normal;
  font-variation-settings: "wght" 700;
}

@media (max-width: 700px) {
  .comparing__table td::before {
    font-weight: normal;
    font-variation-settings: "wght" 700;
  }
}

.customer-list__table .order__table-item-price-total {
  font-weight: normal;
  font-variation-settings: "wght" 700;
}

.home-intro__title {
  font-weight: normal;
  font-variation-settings: "wght" 700;
}

.header {
  display: grid;
  grid-template-columns: minmax(0, calc(50vw - 512px)) 1fr 65px;
}
.header .sticky-state-toggle {
  position: absolute;
  top: -1px;
  width: 0;
  pointer-events: none;
  display: none;
}
@media (max-width: 1199.98px) {
  body > .header {
    background-color: var(--bs-body-bg, #fff);
    position: sticky;
    top: 0;
    z-index: 15;
  }
  body > .header:has(.is-sticky-state) {
    box-shadow: 0 0 10px 3px rgba(0, 0, 0, 0.05);
  }
  .header .sticky-state-toggle {
    display: block;
  }
}
.header > * {
  grid-row: 1;
}
.header__nav {
  height: 5.5rem;
}
.header__controls {
  align-items: center;
  display: flex;
}
@media (max-width: 1199.98px) {
  .header {
    align-content: start;
  }
  .header .container {
    max-width: none;
  }
  .header__top-nav {
    grid-column: 2;
    align-items: center;
    display: flex;
    flex: 1;
    height: 100%;
    justify-content: space-between;
    padding-inline-end: min(1rem, 1vw);
  }
  .header__mid-panel, .header__contact {
    display: none;
  }
}
@media (min-width: 1200px) {
  .header {
    display: flex;
    flex-flow: column wrap;
    min-height: 14.5rem;
    position: relative;
  }
  .header__nav {
    display: flex;
    flex-direction: column;
  }
  .header__top-nav {
    display: grid;
    grid-template: ".     .          ." 0.75rem "logo  page-menu  contact" max-content "logo  search     basket" 1fr " .    .          ." 0.25rem/2fr minmax(max-content, 5fr) minmax(max-content, 2fr);
    gap: 0.2rem 1rem;
    align-items: center;
    height: 14.5rem;
    position: relative;
  }
  .header-logo {
    grid-area: logo;
    justify-content: start;
  }
  .header [id=nav-pages-desktop] {
    grid-area: page-menu;
    justify-self: center;
  }
  .header [id=search-desktop] {
    grid-area: search;
    justify-self: center;
  }
  .header__contact {
    grid-area: contact;
    justify-self: end;
    align-items: center;
    display: flex;
  }
  .header__tel {
    font-weight: 700;
  }
  .header__tel:hover {
    color: #000;
  }
  .header__opening-hours {
    color: #747474;
    display: inline-block;
    margin-left: 0.6em;
  }
  .header__controls {
    grid-area: basket;
    justify-self: end;
    gap: 0.6rem;
  }
}
.header .hamburger {
  grid-column: 3;
}

@media (min-width: 1200px) {
  @supports selector(:has(+ *)) {
    .header .nav .menu__item-main:not(:has(.submenu--main ul ul)):not(:has(.submenu--main > .menu--nested > .menu__item--nested:nth-child(9))) {
      position: relative;
    }
  }
}
body.nav-open {
  overflow: hidden;
}

.nav-backdrop {
  background-color: #000;
  display: none;
  height: 100%;
  left: 0;
  opacity: 0;
  position: fixed;
  top: calc(5.5rem + var(--promo-height, 0px));
  transition: opacity 0.15s linear;
  width: 100%;
}
.nav-backdrop.is-active {
  display: block;
  z-index: 4;
}
.nav-backdrop.is-visible {
  opacity: 0.5;
}
.header:has(.is-sticky-state) ~ .nav-backdrop {
  top: 5.5rem;
}
@media (min-width: 1200px) {
  .nav-backdrop.is-active {
    display: none;
  }
}

@media (max-width: 1199.98px) {
  .nav:where(:not(.nav-tabs)) {
    background-color: #fff;
    border-top: 1px solid #dedede;
    bottom: 0;
    flex-direction: column;
    max-width: 36rem;
    overflow: hidden;
    padding: 1rem 0 6.6rem;
    position: fixed;
    right: 100vw;
    top: calc(5.5rem + var(--promo-height, 0px));
    transition: transform 0.3s ease-in-out;
    width: 100vw;
    z-index: 100;
  }
  .nav:where(:not(.nav-tabs)).is-visible {
    transform: translateX(100%);
  }
  .nav:where(:not(.nav-tabs)).is-active {
    overflow: auto;
  }
  .header:has(.is-sticky-state) .nav:where(:not(.nav-tabs)) {
    top: 5.5rem;
  }
}
@media (min-width: 1200px) {
  .nav {
    background-color: #000;
  }
  .nav__footer {
    display: none;
  }
}

.footer {
  background-color: #000;
  color: #fff;
  font-size: 1.6rem;
  overflow: hidden;
  padding-bottom: 4rem;
}
.footer > .container > *:not(.footer__blocks) a {
  color: #dedede;
}
@media (hover: hover) {
  .footer > .container > *:not(.footer__blocks) a:hover {
    color: #000;
  }
}
.footer-block-content .footer__logo {
  display: block;
  margin: 3rem auto 0;
}
.footer-block-content .footer__social {
  align-items: center;
  display: flex;
  gap: 3rem;
  justify-content: center;
  margin-top: 2.4rem;
}
.footer-block-content .footer__social-item {
  flex: 0 1 auto;
  margin: 0;
}
.footer-block-content .footer__social-link {
  color: #fff;
}
.footer-block-content .footer__social-link .svg-icon {
  width: 4.4rem;
  height: 4.4rem;
}
.footer-block-content .footer__contact {
  color: #fff;
  padding-left: 1.3em;
  position: relative;
}
.footer-block-content .footer__contact .svg-icon {
  width: 0.9em;
  height: 0.9em;
  color: #000;
  left: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.footer .footer-block-content .footer__contact + .footer__contact {
  margin-top: 0.2em;
}
.footer__bottom {
  color: #dedede;
  margin-top: 2.4rem;
  text-align: center;
}
.footer__link {
  color: #dedede;
}
@media (hover: hover) {
  .footer__link:hover {
    color: #000;
  }
}
@media (min-width: 992px) {
  .footer {
    padding: 7rem 0 2rem;
  }
  .footer__blocks {
    border-bottom: 1px solid #262626;
    display: flex;
    flex-wrap: wrap;
    gap: 1.5rem;
  }
  .footer__block {
    flex: 1 1 auto;
    max-width: calc(25% - 0.75rem);
  }
  .footer-block-content .footer__logo {
    margin: 0 0 0 auto;
  }
  .footer-block-content .footer__social {
    justify-content: flex-end;
  }
  .footer__bottom {
    display: flex;
    justify-content: space-between;
    margin-top: 2rem;
  }
}
@media (max-width: 991.98px) {
  .footer > .container > *:first-child:where(:not(.footer__blocks)) {
    margin-block-start: calc(var(--bs-gutter-x) * 0.5);
  }
  .footer__block.is-collapsible + .footer-block-content:not(.is-collapsible), .footer__block:not(.is-collapsible):is(:first-child) {
    margin-block-start: 3rem;
  }
}

.header {
  --icon-margin: 0 0.75rem 0 0;
  --dropdown-border-radius: 8px;
  --grid-template-columns: max-content max-content minmax(0, 1fr) auto auto;
  grid-template-columns: auto 1fr;
}
@media (min-width: 1200px) {
  .header {
    background-color: #fff;
    border-block-end: 1px solid #dedede;
    overflow: visible;
    position: sticky;
    top: 0;
    z-index: 15;
    display: grid;
    grid-template-columns: none;
    grid-template-rows: 4.5rem 1fr 0.25rem;
  }
  .header::before {
    content: "";
    grid-row: 1;
    grid-column: 1/-1;
    background: #f4f4f4;
  }
  .header__top-nav {
    grid-template: "page-menu  page-menu   page-menu  contact  contact" "logo       categories  search     basket   basket" ".          .           .          .        .     "/var(--grid-template-columns);
    grid-template-rows: subgrid;
    grid-column: 1/-1;
    grid-row: 1/span 3;
    max-width: 1140px;
    margin-inline: auto;
  }
}
@media (min-width: 1200px) and (min-width: 1366px) {
  .header__top-nav {
    max-width: 1685px;
  }
}
@media (min-width: 1200px) {
  .header [id=categories-desktop] {
    padding-inline: min(2.5vw, 2rem);
    grid-area: categories;
  }
  .header [id=categories-desktop] .nav {
    position: absolute;
    min-height: 2px;
    top: 100%;
    left: 50%;
    width: 100vw;
    transform: translateX(-50%);
    background-color: transparent;
  }
  .header [id=nav-pages-desktop],
  .header [id=search-desktop] {
    justify-self: normal;
  }
  .header [id=search-desktop] {
    padding-inline: min(2.5vw, 2rem);
  }
  .header__controls {
    justify-self: normal;
    position: relative;
  }
  .header__contact {
    display: grid;
    grid-template-columns: subgrid;
  }
  .header__opening-hours {
    margin-inline: 0 min(5vw, 4rem);
  }
  .header__tel {
    order: 1;
    font-weight: normal;
    font-variation-settings: "wght" 700;
  }
  .header__tel .icon-link__icon {
    color: #000;
  }
  .header [class*=user-is-] {
    margin-inline: min(2vw, 2rem) auto;
  }
  .header [class*=user-is-]:hover .header-btn__caption, .header [class*=user-is-]:focus-within .header-btn__caption {
    color: #000;
  }
  .header [class*=user-is-] .header-btn__caption {
    color: #000;
    font-weight: normal;
    font-variation-settings: "wght" 700;
    font-size: 1.4rem;
    position: static;
    margin: 0;
  }
  .header [class*=user-is-] .header-btn__icon {
    margin: var(--icon-margin);
  }
  .header [id=headerBasket] {
    border: 1px solid #000;
    border-radius: 8px;
    display: grid;
    align-items: center;
  }
  .header [id=headerBasket]:hover, .header [id=headerBasket]:focus-within {
    border-color: #000;
  }
  .header [id=headerBasket]:hover h2, .header [id=headerBasket]:focus-within h2 {
    color: #000;
  }
  .header [id=headerBasket] .header-cart__name {
    grid-area: 1/3;
    margin: 0;
    padding-inline-end: 1.5rem;
    font-size: inherit;
    line-height: inherit;
    font-weight: normal;
    font-variation-settings: "wght" 700;
    color: #000;
  }
  .header [id=headerBasket] .header-cart__icon {
    margin: var(--icon-margin);
  }
  .header [id=headerBasket] .header-btn {
    display: grid;
    grid-template-columns: subgrid;
    grid-column: 1/span 3;
    grid-row: 1;
    height: 4.8rem;
    padding-inline-start: 1.5rem;
  }
  .header [id=headerBasket] .header-btn.is-active {
    margin: 0;
  }
  .header [id=headerBasket] .header-btn.is-active::before, .header [id=headerBasket] .header-btn.is-active::after {
    opacity: 0;
  }
  .header [id=headerBasket] .header-btn__badge {
    position: static;
    grid-area: 1/1;
    height: 2.8rem;
    width: 2.8rem;
    background-color: #ff4337;
    margin-inline-end: 1rem;
    font-size: 1.4rem;
  }
  .header .suggestions__inner, .header-dropdown {
    max-height: calc(100dvh - var(--promo-height, 0px) - 8rem - 14.5rem);
    overflow-y: auto;
    overscroll-behavior-y: contain;
  }
  .header svg {
    stroke-width: 0;
  }
}
@media (max-width: 1199.98px) {
  .header .suggestions__inner, .header-dropdown {
    max-height: calc(100dvh - var(--promo-height, 0px) - var(--sticky-submit-height, 0px) - 8rem - 5.5rem);
    overflow-y: visible;
    overscroll-behavior-y: contain;
  }
  .header-btn__icon {
    stroke-width: 0;
    color: #000;
    height: 1.9rem;
    width: 1.9rem;
    margin-block-end: 0.5rem;
  }
  .header-btn__icon--cart {
    height: 2.1rem;
    width: 2.1rem;
  }
  .header-btn__caption {
    bottom: 0.2rem;
    color: #000;
  }
  .header-btn__caption--cart {
    text-transform: lowercase;
  }
  .header-btn__badge {
    background-color: #000;
  }
  .header__top-nav {
    display: grid;
    grid-template-columns: 4rem auto repeat(4, 4rem);
    grid-template-rows: 5.5rem 4.4rem;
    justify-content: normal;
    padding-inline: calc(var(--bs-gutter-x) * 0.5);
  }
  .header__top-nav .categories-menu {
    grid-column: 1;
    grid-row: 1;
  }
  .header__top-nav .hamburger {
    background-color: #f4f4f4;
    border: 1px solid #f4f4f4;
    border-radius: 8px;
    height: 4rem;
    width: 4rem;
  }
  .header__top-nav .hamburger-inner, .header__top-nav .hamburger-inner::before, .header__top-nav .hamburger-inner::after {
    background-color: #000;
  }
  .header__top-nav .hamburger.is-active .hamburger-inner, .header__top-nav .hamburger.is-active .hamburger-inner::before, .header__top-nav .hamburger.is-active .hamburger-inner::after {
    background-color: #000;
  }
  .header__controls {
    display: contents;
  }
  .header__controls:not(:has(.header__favourites)) .header__compare, .header__controls:has(.header__favourites[style*=none]) .header__compare {
    grid-column-end: -3;
  }
  .header-logo {
    grid-column: 2;
    margin-inline: 1.5rem;
  }
  .header-search {
    grid-row: 2;
    grid-column: 1/-1;
    border-radius: 8px;
    border: 1px solid #000;
  }
  .header-search__btn:not(.fix-specificity) {
    display: none;
  }
  .header-search .search-dropdown {
    display: block;
    opacity: 1;
    padding: 0;
    position: static;
    border-radius: 8px;
  }
  .header-search .search__field, .header-search .search__btn {
    max-height: 3.3rem;
  }
  .header-search .search__field {
    background: none;
  }
  .header-search .search__field-container:not(.fix-specificity) {
    border: none;
    background: none;
  }
  .header-search .search__submit {
    background-color: #f4f4f4;
    color: #000;
    display: grid;
    align-items: center;
    grid-template-columns: 1.2rem 1fr;
    gap: 0.5rem;
    border-radius: 6px;
    padding: 0 0.8rem;
  }
  .header-search .search__submit:has(.working) .search__icon--spinner {
    position: static;
    margin: 0;
  }
  .header-search .search__submit:has(.working) .search__icon:where(:not(.search__icon--spinner)) {
    opacity: 0;
  }
  .header-search .search__submit:has(.working) .search__btn {
    color: #fff;
  }
  .header-search .search__btn {
    background: none !important;
    color: inherit !important;
    grid-column: 2;
    grid-row: 1;
    margin: 0;
    padding: 0;
    font-size: 1.2rem;
    font-weight: 500;
  }
  .header-search .search__icon {
    grid-column: 1;
    grid-row: 1;
    color: inherit !important;
    height: 1.2rem;
    width: 1.2rem;
  }
  .header-search .search__icon:where(:not(.search__icon--spinner)) {
    display: block;
  }
  .header__compare, .header__favourites,
  .header [class*=user-is],
  .header [id=headerBasket] {
    grid-row: 1;
  }
  .header__compare {
    grid-column-end: -4;
  }
  .header__favourites {
    grid-column-end: -3;
  }
  .header [class*=user-is] {
    grid-column-end: -2;
  }
  .header [id=headerBasket] {
    grid-column-end: -1;
  }
}
@media (min-width: 1200px) {
  .header .nav-pages, .header__contact {
    line-height: 1.5;
  }
  .header .nav-pages span, .header__contact span {
    line-height: inherit;
  }
  .header__contact {
    white-space: nowrap;
  }
}

.footer {
  background-color: #f4f4f4;
  color: #000;
}
@media (min-width: 992px) {
  .footer {
    padding-block-start: 5rem;
  }
}
@media (min-width: 992px) {
  .footer__blocks {
    border-block-end: none;
    gap: 1.5rem clamp(1.5rem, 3vw, 5rem);
  }
}
@media (min-width: 992px) {
  .footer__block {
    max-width: calc(21% - 0.75rem);
  }
}
@media (min-width: 992px) {
  .footer__block:first-child {
    border-block-end: 1px solid #dedede;
    max-width: none;
    width: 100%;
    padding-block-end: 4rem;
    margin-block-end: 4rem;
  }
  .footer__block:first-child .promo {
    display: flex;
    justify-content: space-between;
    gap: clamp(1rem, 5vw, 3rem);
  }
  .footer__block:first-child .promo * + * {
    margin-block-start: 0;
  }
  .footer__block:first-child .promo h2 {
    margin: 0;
    word-break: normal;
    font-weight: normal;
    font-variation-settings: "wght" 700;
    font-size: 2.2rem;
  }
  .footer__block:first-child .promo ul {
    display: flex;
  }
  .footer__block:first-child .promo .footer-socials {
    margin-inline-end: auto;
    gap: clamp(1rem, 5vw, 3rem);
  }
  .footer__block:first-child .promo .footer-socials svg {
    height: auto;
    width: auto;
    max-height: 2.6rem;
    max-width: 2.8rem;
  }
  .footer__block:first-child .promo .footer-contacts {
    gap: clamp(1rem, 5vw, 8rem);
  }
  .footer__block:first-child .promo .footer-contacts [class*=icon-] {
    display: flex;
    align-items: center;
    gap: 1rem;
    white-space: nowrap;
  }
  .footer__block:first-child ~ * {
    font-weight: normal;
    font-variation-settings: "wght" 300;
  }
  .footer__block:first-child ~ * h2 {
    font-weight: normal;
    font-variation-settings: "wght" 500;
    font-size: 1.8rem;
  }
}
.footer__block svg {
  stroke-width: 0;
}
.footer .icon-shop-ispace svg {
  width: 16.9rem;
  height: 4.4rem;
}
@media (min-width: 992px) {
  .footer .footer-block-content {
    padding-block-end: 5rem;
  }
}
.footer .footer-block-content * + * {
  margin-block-start: 1rem;
}
.footer__bottom {
  color: #262626;
  font-size: 1.2rem;
}
@media (min-width: 992px) {
  .footer__bottom {
    flex-direction: row-reverse;
  }
}
@media (max-width: 991.98px) {
  .footer__bottom {
    display: flex;
    flex-direction: column-reverse;
    gap: 1rem;
    text-align: left;
    margin-block-start: 3.6rem;
  }
  .footer__bottom a {
    color: inherit !important;
  }
  .footer__bottom > * {
    margin: 0 !important;
  }
  .footer__bottom > p {
    font-variation-settings: "wght" 700;
  }
  .footer__bottom > p span {
    font-variation-settings: "wght" 400;
  }
  .footer__bottom > p span a {
    font-variation-settings: "wght" 700;
  }
}
.footer > .container > *:not(.footer__blocks) .footer__link {
  color: #262626;
  text-decoration: none;
}
@media (hover: hover) {
  .footer > .container > *:not(.footer__blocks) .footer__link:hover {
    color: #000;
  }
}
.footer__separator {
  display: none;
}
@media (min-width: 768px) {
  .footer__separator ~ .canvas {
    padding-block: 4.5rem;
  }
}
.footer__separator ~ .footer {
  margin-block-start: 4.5rem;
}

.associations-and-newsletter__wrapper {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(450px, 100%), 1fr));
}

.alternate-background,
.nav-tabs.nav-tabs::before {
  background-color: rgba(255, 255, 255, 0);
}

.btn,
.btn:link,
.btn:visited,
.submit-button-container [type=submit],
[type=file]::file-selector-button {
  color: #fff;
  background-color: #000;
}

.btn,
.submit-button-container [type=submit],
[type=file]::file-selector-button {
  align-items: center;
  border-radius: 8px;
  display: flex;
  font-weight: normal;
  font-variation-settings: "wght" 500;
  height: 5rem;
  justify-content: center;
  padding: 0.4em 1.6em;
  text-decoration: none;
  text-transform: none;
  transition: color 0.15s linear, background-color 0.15s linear;
}
@media (min-width: 1200px) {
  .btn,
  .submit-button-container [type=submit],
  [type=file]::file-selector-button {
    height: 5rem;
  }
}

@media (hover: hover) {
  .btn:not([disabled]):hover,
  .submit-button-container [type=submit]:not([disabled]):hover {
    background-color: #ff4337;
    color: #fff;
  }
}
[type=file]::file-selector-button {
  border: none;
  display: inline-flex;
  cursor: pointer;
  margin-right: 1rem;
}
@media (hover: hover) {
  [type=file]:not([disabled]):hover::file-selector-button {
    background-color: #ff4337;
    color: #fff;
  }
}

.btn {
  cursor: pointer;
}
.btn--sm {
  height: 4rem;
}
.btn--more {
  background-color: #f3f3f3;
  color: #000;
  font-weight: normal;
  font-variation-settings: "wght" 400;
  line-height: 2.2rem;
  font-size: 1.2rem;
  padding: 0.5rem 1.5rem;
  gap: 1rem;
  height: auto;
}
@media (min-width: 768px) {
  .btn--more {
    padding: 1rem 2rem;
    font-size: 1.6rem;
    line-height: 1.4;
  }
}
.btn--more .btn__icon {
  stroke-width: 1;
  width: 1em;
  height: 1em;
}
.btn--more.loading .btn__icon {
  display: none;
}
.btn--more.loading .btn__icon--loading {
  display: block !important;
  animation: spinner 0.75s infinite linear;
}
.btn__icon {
  width: 1.2em;
  height: 1.2em;
  margin: 0;
  stroke-width: 0;
}
.btn__icon--left {
  margin-inline-end: 1.6rem;
}
.btn__icon--right {
  margin-inline-start: 1.6rem;
}
.btn__icon--small {
  width: 1.4rem;
  height: 1.4rem;
}
.btn__icon--small.btn__icon--left {
  margin-inline-end: 1rem;
}
.btn__icon--small.btn__icon--right {
  margin-inline-start: 1rem;
}
.btn__link {
  background-color: transparent;
  color: #000;
  text-decoration: underline;
  display: inline-flex;
  height: auto !important;
  font-size: inherit;
  font-weight: inherit;
  font-variation-settings: inherit;
}
.btn__link:hover, .btn__link:focus, .btn__link:active {
  color: currentcolor;
  text-decoration: none;
}
.btn__transparent {
  background-color: inherit;
  background-clip: border-box;
  align-items: center;
  text-decoration: none !important;
  border-radius: 8px;
  display: flex;
  font-weight: normal;
  font-variation-settings: "wght" 500;
  height: 5rem;
  justify-content: center;
  padding: 0.4em 1.6em;
  transition: color 0.15s linear, background-color 0.15s linear;
  color: #747474;
  border: 1px solid #747474;
}
.btn__transparent:where(:not([disabled])):hover, .btn__transparent:where(:not([disabled])):focus, .btn__transparent:where(:not([disabled])):active {
  color: #000;
  border-color: #000;
}
.btn__alt, .btn__alt:link, .btn__alt:visited {
  background-color: #188038;
  color: #fff;
}
.btn__alt:not([disabled]):hover, .btn__alt:not([disabled]):focus, .btn__alt:not([disabled]):active {
  background-color: rgb(3, 181, 0);
  color: #fff;
}
.btn__dark, .btn__dark:link, .btn__dark:visited {
  background-color: #000;
  color: #fff;
}
.btn__dark:not([disabled]):hover, .btn__dark:not([disabled]):focus, .btn__dark:not([disabled]):active {
  background-color: #262626;
  color: #fff;
}
.btn--more[disabled], .btn[disabled] {
  background-color: #dedede;
  opacity: 0.5;
  cursor: default;
}
.btn__content-width {
  max-width: max-content;
}
.text-center > .btn__content-width {
  margin-inline: auto;
}
.btn.product-card__add-link--disabled {
  background-color: #dedede;
  opacity: 0.5;
  cursor: default;
  pointer-events: none;
}
.btn.product-card__add-link--disabled .btn__icon {
  color: currentcolor;
}
@media (min-width: 1200px) {
  .btn--sm {
    height: 4rem;
  }
}

.button-text {
  word-break: normal;
}

.canvas {
  padding: 4rem 0;
}
@media (min-width: 768px) {
  .canvas {
    padding: 5rem 0;
  }
}
@media (min-width: 1366px) {
  .canvas {
    padding: 6rem 0;
  }
}

.common-content::after {
  content: "";
  display: table;
  clear: both;
}
.common-content h2,
.common-content h3,
.common-content h4,
.common-content h5 {
  margin-bottom: 0;
}
.common-content :where(*) + :where(:not(li)) {
  margin-top: clamp(1.8rem, 3vw, 2.4rem);
}
.common-content :where(*) + :where(h2, h3, h4, h5) {
  margin-top: clamp(3.5rem, 5vw, 4.5rem);
}
.common-content .modal {
  margin-block-start: 0 !important;
}
.common-content p,
.common-content ul:where(:not([class])),
.common-content ol:where(:not([class])) {
  line-height: 1.625;
}
.common-content ul:where(:not([class])) li,
.common-content ol:where(:not([class])) li {
  position: relative;
}
.common-content ul:where(:not([class])) li::before,
.common-content ol:where(:not([class])) li::before {
  display: inline-block;
  position: absolute;
}
.common-content ul:where(:not([class]):not([style])) > li {
  padding-left: 4rem;
}
.common-content ul:where(:not([class]):not([style])) > li::before {
  content: "•";
  color: #000;
  font-size: 3rem;
  line-height: 1;
  width: 4rem;
  margin-left: -4rem;
  text-align: center;
  vertical-align: bottom;
}
.common-content ol:where(:not([class])) {
  counter-reset: li;
  margin-left: 1rem;
}
.common-content ol:where(:not([class])) > li {
  counter-increment: li;
  padding-left: 3rem;
}
.common-content ol:where(:not([class])) > li::before {
  content: counter(li) ".";
  padding-right: 1rem;
  width: max-content;
  text-align: right;
  word-break: keep-all;
  transform: translateX(-100%);
}
.common-content ul ol,
.common-content ol ul,
.common-content ol ol,
.common-content ul ul {
  margin-block: clamp(0.9rem, 1.5vw, 1.2rem);
}
@media (min-width: 768px) {
  .common-content .f-right,
  .common-content .f-left {
    max-width: 40%;
    margin-bottom: 5%;
  }
}
@media (min-width: 768px) {
  .common-content .f-right {
    float: right;
    margin-left: 10%;
  }
}
@media (min-width: 768px) {
  .common-content .f-left {
    float: left;
    margin-right: 10%;
  }
}
.common-content picture,
.common-content img {
  display: block;
  max-width: 100%;
  height: auto;
}

.footer-block-content {
  overflow: hidden;
  padding-bottom: 3rem;
  position: relative;
  transition: max-height 0.2s linear;
}
.footer-block-content * + * {
  margin-top: 1em;
}
.footer-block-content h2 {
  font-weight: 700;
  color: currentcolor;
}
@media (max-width: 1199.98px) {
  .footer-block-content h2 {
    font-size: min(1.365rem + 1.38vw, 2.4rem);
  }
}
.footer-block-content img {
  height: auto;
  max-width: 100%;
}
.footer-block-content a {
  color: #dedede;
  text-decoration: none;
}
@media (hover: hover) {
  .footer-block-content a:hover {
    color: #000;
  }
}
@media (max-width: 991.98px) {
  .footer-block-content h2:first-of-type {
    height: 6.5rem;
  }
  .footer-block-content.is-collapsible {
    max-height: 6.5rem;
  }
  .footer-block-content.is-collapsible h2 {
    align-items: center;
    display: flex;
    padding-right: 5rem;
    position: relative;
  }
  .footer-block-content.is-collapsible h2 .svg-icon {
    color: #000;
    display: block;
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%);
  }
  .footer-block-content.is-collapsible.is-active h2 .svg-icon {
    transform: translateY(-50%) rotate(180deg);
  }
}
@media (min-width: 992px) {
  .footer-block-content {
    padding-bottom: 7rem;
  }
  .footer-block-content.is-collapsible {
    max-height: unset !important;
  }
  .footer-block-content.is-collapsible h2 {
    padding: 0;
  }
  .footer-block-content.is-collapsible h2 .svg-icon {
    display: none;
  }
  .footer-block-content::after {
    content: none;
  }
  .footer-block-content h2 {
    height: auto;
  }
  .footer-block-content h2 .svg-icon {
    display: none;
  }
}
@media (min-width: 1200px) {
  .footer-block-content h2 {
    margin-bottom: 3rem;
  }
}

@media (max-width: 991.98px) {
  .footer-block-content {
    margin-block-start: 3.6rem;
    padding-block-end: 0;
    max-height: none !important;
    font-size: 1.4rem;
  }
  .footer-block-content:first-child:not(:last-child) {
    padding-block-end: 3.2rem;
    border-block-end: 1px solid rgba(20, 92, 128, 0.1);
  }
  .footer-block-content:first-child:not(:last-child) h2 {
    font-variation-settings: "wght" 700;
  }
  .footer-block-content:first-child:not(:last-child) .footer-socials {
    display: flex;
    flex-wrap: wrap;
  }
  .footer-block-content:first-child:not(:last-child) .footer-socials > li,
  .footer-block-content:first-child:not(:last-child) .footer-socials > li + li {
    margin-block-start: 0;
  }
  .footer-block-content:first-child:not(:last-child) .footer-socials > li > a {
    display: flex;
    align-items: center;
    width: 4rem;
    height: 4rem;
  }
  .footer-block-content:first-child:not(:last-child) .footer-socials > li > a .svg-icon {
    height: 2.6rem;
    width: 2.6rem;
  }
  .footer-block-content:first-child:not(:last-child) .footer-contacts > li > a {
    display: flex;
    align-items: center;
    gap: 0 1.2rem;
  }
  .footer-block-content:first-child:not(:last-child) .footer-contacts > li > a .svg-icon {
    height: 1.6rem;
    width: 1.6rem;
  }
  .footer-block-content .icon-shop-ispace {
    margin-block-start: 1rem;
  }
}
.footer-block-content h2 {
  font-weight: normal;
  font-variation-settings: "wght" 500;
}
@media (max-width: 991.98px) {
  .footer-block-content h2 {
    margin-block-end: 1.5rem;
  }
  .footer-block-content h2:first-of-type {
    padding: 0;
    font-size: 2.2rem;
    height: auto;
    display: block;
  }
  .footer-block-content h2 .svg-icon {
    display: none !important;
  }
}
.footer-block-content a {
  color: #262626;
}
@media (hover: hover) {
  .footer-block-content a:hover {
    color: #000;
  }
}

.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1010;
  display: none;
  max-width: 276px;
  padding: 1px;
  text-align: left;
  background-color: #fff;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 6px;
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  white-space: normal;
}
.popover.top {
  margin-top: -10px;
}
.popover.right {
  margin-left: 10px;
}
.popover.bottom {
  margin-top: 10px;
}
.popover.left {
  margin-left: -10px;
}

.popover-title {
  margin: 0;
  padding: 8px 14px;
  font-size: 14px;
  font-weight: normal;
  line-height: 18px;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  border-radius: 5px 5px 0 0;
}
.popover-title:empty {
  display: none;
}

.popover-content {
  padding: 9px 14px;
}

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

.popover .arrow {
  border-width: 11px;
}

.popover .arrow:after {
  border-width: 10px;
  content: "";
}

.popover.top .arrow {
  left: 50%;
  margin-left: -11px;
  border-bottom-width: 0;
  border-top-color: #e3e3e3;
  bottom: -11px;
}
.popover.top .arrow:after {
  bottom: 1px;
  margin-left: -10px;
  border-bottom-width: 0;
  border-top-color: #fff;
}
.popover.right .arrow {
  top: 50%;
  left: -11px;
  margin-top: -11px;
  border-left-width: 0;
  border-right-color: #e3e3e3;
}
.popover.right .arrow:after {
  left: 1px;
  bottom: -10px;
  border-left-width: 0;
  border-right-color: #fff;
}
.popover.bottom .arrow {
  left: 50%;
  margin-left: -11px;
  border-top-width: 0;
  border-bottom-color: #e3e3e3;
  top: -11px;
}
.popover.bottom .arrow:after {
  top: 1px;
  margin-left: -10px;
  border-top-width: 0;
  border-bottom-color: #fff;
}
.popover.left .arrow {
  top: 50%;
  right: -11px;
  margin-top: -11px;
  border-right-width: 0;
  border-left-color: #e3e3e3;
}
.popover.left .arrow:after {
  right: 1px;
  border-right-width: 0;
  border-left-color: #fff;
  bottom: -10px;
}

.popover {
  --bs-modal-zindex: 1055;
  font-size: 1.2rem;
  border-color: #dedede;
  border-radius: 0;
  box-shadow: none;
  filter: drop-shadow(0 5px 10px rgba(0, 0, 0, 0.2));
  transition: 0.2s opacity ease-in;
  opacity: 0;
}
.popover.in {
  opacity: 1;
}
.popover__container:where(:not(.popover__container--plain-text)) {
  display: inline-block;
  margin: 0 0.25em;
}
.modal ~ .popover {
  z-index: var(--bs-modal-zindex);
}
@media (pointer: fine) {
  .popover-modal__container--wrapper {
    display: inline-grid;
  }
  .popover-modal__container--wrapper > * {
    grid-row: 1;
    grid-column: 1;
  }
  .popover-modal__container--wrapper > * .popover__trigger {
    width: 100%;
  }
  .popover-modal__container--wrapper > * .popover__icon {
    display: none;
  }
}
.popover__trigger:where(:not(.popover__trigger--plain-text)) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 1.6rem;
  width: 1.6rem;
  color: #747474;
  position: relative;
  top: 0.125em;
}
@media (pointer: fine) {
  .popover__trigger:where(.popover__trigger--plain-text, [data-trigger=hover]) .popover__icon {
    display: none;
  }
}
.popover__trigger--active:where(:not(.popover__trigger--plain-text, [data-trigger=hover])) .popover__icon {
  display: none;
}
.popover__trigger--active:where(:not(.popover__trigger--plain-text, [data-trigger=hover])) .popover__icon--close {
  display: block;
}
@media (pointer: coarse) {
  .popover__trigger--active:where(.popover__trigger--plain-text, [data-trigger=hover]) .popover__icon {
    display: none;
  }
  .popover__trigger--active:where(.popover__trigger--plain-text, [data-trigger=hover]) .popover__icon--close {
    display: block;
  }
}
.popover__icon {
  max-width: 100%;
  max-height: 100%;
}
.popover__icon--close {
  display: none;
}
@media (max-width: 767.98px) {
  .popover .arrow {
    display: none;
  }
}

@media (max-width: 767.98px) {
  .filter-popover-modifier.popover.top .arrow {
    display: block;
  }
}

.popover__trigger:where(:not(.popover__trigger--plain-text)) {
  height: 1.8rem;
  width: 1.8rem;
  color: #000;
}
.popover__icon {
  stroke-width: 0.5px;
  color: #4d4d4d;
}

.icon-link {
  align-items: center;
  display: inline-flex;
  text-decoration: none;
}
.icon-link__icon {
  width: 1.28em;
  height: 1.28em;
  fill: #000;
  display: inline-block;
  margin-right: 0.2em;
  stroke: #000;
}

.row + * {
  margin-top: 1.4rem;
}

.form-input + .form-input:where(:not(.col)) {
  margin-top: 1.5rem;
}
.row--grid .form-input {
  margin-top: 0;
}
.form-input--margined {
  margin-top: 1.5rem;
}
.form-input--sm {
  width: 10rem;
}
.form-input--error .form-field-container {
  border-color: #e26969;
}
.form-input [class*="--inline"] + * {
  font-weight: 400;
  font-size: 1.4rem;
}
.form-input:has(.errors) .form-field-container {
  background-color: #f6dfdf;
  border-color: #e26969 !important;
}
.form-input:has(.errors) .form-field-container .form-field {
  background-color: #f6dfdf;
}
.form-input .errors {
  margin-block-start: 0.2rem;
  margin-inline: 1px;
  color: #e26969;
  font-size: 1.4rem;
}
.form-input:where(:not([readonly]):not(:has([disabled]))):hover .form-input__label, .form-input:where(:not([readonly]):not(:has([disabled]))):focus-within .form-input__label {
  color: #000;
}
.form-input:where(:not([readonly]):not(:has([disabled]))):hover .form-field-container, .form-input:where(:not([readonly]):not(:has([disabled]))):focus-within .form-field-container {
  border-color: #000;
}
.form-input:where(:has([disabled])) .form-input__label {
  opacity: 0.5;
}
.form-input__label {
  align-items: center;
  display: flex;
  font-size: 1.4rem;
  margin-block-end: 0.2em;
  transition: color 0.15s linear;
}
.form-input__label:where(:not(.text-bold)) {
  font-weight: 400;
}
.form-input__label--inline {
  display: inline-flex;
}
.form-input__label--inline + * {
  margin-inline-start: 0.5rem;
  margin-block: 0 0.2em;
}
.form-input__label:where(:is(legend)) {
  margin-block-end: 0.5rem;
}
.form-input__label.checkbox:where(:has(:not([readonly]), :not([disabled]))):hover {
  color: #000;
}
.form-input__multi ul {
  margin-top: 0;
}
.form-input__multi ul li {
  background: none;
  padding: 0;
}
.form-input__multi ul li + li {
  margin-block-start: 1rem;
}
.form-input__multi ul li::before {
  display: none;
}
.form-input__multi--inline ul, .multi--inline .form-input__multi ul {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem 2.5rem;
}
.form-input__multi--inline ul li,
.form-input__multi--inline ul li + li, .multi--inline .form-input__multi ul li,
.multi--inline .form-input__multi ul li + li {
  margin: 0;
}
.form-input__multi .hint {
  margin-block-start: 0.5rem;
}
.form-input__error {
  color: #000;
  display: none;
  margin-top: 0.4em;
}
.form-input__error.visible {
  display: block;
}
.form-input__help {
  display: none;
}
@media (min-width: 768px) {
  .form-input__help {
    align-items: center;
    cursor: auto;
    display: flex;
    margin-left: 0.5rem;
    position: relative;
  }
  .form-input__help:hover .form-input__help-box {
    display: block;
  }
  .form-input__help-icon {
    width: 1.4rem;
    height: 1.4rem;
    stroke: #9cb5e1;
  }
  .form-input__help-box {
    background-color: #ddedf3;
    border: 1px solid #9cb5e1;
    border-radius: 5px;
    color: #000;
    display: none;
    left: 50%;
    padding: 1.6rem 1rem;
    position: absolute;
    top: -2rem;
    transform: translate(-50%, -100%);
    font-weight: 400;
    text-align: center;
    width: 30rem;
  }
  .form-input__help-box::after {
    width: 2rem;
    height: 2rem;
    bottom: -1rem;
    background-color: #ddedf3;
    border: 1px solid #9cb5e1;
    border-bottom: none;
    border-left: none;
    content: "";
    left: 50%;
    position: absolute;
    transform: translateX(-50%) rotate(135deg) skew(-10deg, -10deg);
  }
}
.form-input .hint,
.form-input + .hint, .form-input__multi .hint {
  margin-block-start: 0.2rem;
  margin-inline: 1px;
  font-size: 1.4rem;
  color: #747474;
}

.form-check + .form-input__error {
  margin: 0 0 0.4em;
}

.input-append {
  display: flex;
  margin-top: 0.5rem;
}
.input-append > *:first-child {
  flex: 1;
}
.input-append > *:first-child [type=text] {
  padding-inline: 1rem;
  background-color: #fff;
  border: 1px solid #dedede;
  border-radius: 0;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  color: #000;
  transition: all 0.15s linear;
  width: 100%;
  height: 100%;
}
.input-append > *:first-child [type=text]::placeholder {
  color: rgba(0, 0, 0, 0.5);
  opacity: 1;
}
.input-append > *:first-child [type=text]:not([readonly]):hover, .input-append > *:first-child [type=text]:not([readonly]):focus {
  border-color: #000;
}

/**
 * Reset iSpace custom form input styles to be able to design special inputs more easily
 */
/**
 * Styles to hide the scrollbar but still allow scrolling
 */
.form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)) {
  z-index: initial;
  position: relative;
  margin-top: 2rem;
}
.form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)) textarea {
  overflow: auto;
}
.form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)) textarea::-webkit-scrollbar {
  width: 4px;
}
.form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)) textarea::-webkit-scrollbar-track {
  background: transparent;
}
.form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)) textarea::-webkit-scrollbar-thumb {
  background: #000;
  border-radius: 2px;
}
.form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)) textarea::-webkit-scrollbar-thumb:hover {
  background: #000;
}
.form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)) .form-field-container {
  padding: 0;
  overflow: hidden;
  border: 1px solid #ccc;
  border-radius: 8px;
}
.form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)) .form-field > * {
  padding-inline: 1.4rem;
}
.form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)) .form-field > *:where(:not(.search-query)):not([disabled]) {
  background-color: #fff;
}
.form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(.errors) {
  --input-bg: map.get($theme-colors, "danger");
}
.form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(.errors) .form-field-container {
  background-color: #fff;
  border-color: #e26969 !important;
}
.form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(.errors):focus-within .form-field-container {
  border-color: #000 !important;
}
.form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has([disabled]) .form-field-container {
  background-color: #f3f3f3;
  border-color: #dedede !important;
}
.form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has([disabled]) .form-input__label {
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}
.form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)) :where(.form-input__label) {
  position: absolute;
  white-space: nowrap;
  line-height: 2rem;
  padding-inline: 1.4rem 1rem;
  padding-block: 1.5rem;
  font-size: 1.6rem;
  color: #4d4d4d;
  text-overflow: ellipsis;
  overflow: hidden;
  transition: transform 0.2s ease, font-size 0.2s ease, background 0.2s ease;
  transform-origin: 0 0;
  background-clip: content-box;
  z-index: 3;
  max-width: 100%;
  pointer-events: none;
  font-variation-settings: "wght" 300;
  margin-block-end: 0;
}
.form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)) :where(.form-input__label)::before, .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)) :where(.form-input__label)::after {
  content: "";
  width: 0;
  transition: width 0.2s ease;
}
.form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(.form-field--sm) .form-input__label {
  padding-block: 0.9rem;
}
.form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):focus-within .form-field-container:where(:not(.search__field-container)) {
  border-color: #000;
  box-shadow: 0 0 0 1px #000;
}
.form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):focus-within .form-input__label {
  color: #000;
}
.form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):hover:not(:where(:focus-within, [disabled])):where(:not(:has(.errors))) .form-field-container {
  border-color: #000;
}
.form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):hover:not(:where(:focus-within, [disabled])):where(:not(:has(.errors))) .form-input__label {
  color: #000;
}
.form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):hover:not(:where(:focus-within, [disabled])):has(.errors) .form-field-container {
  border-color: #e26969;
}
.form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):hover:not(:where(:focus-within, [disabled])):has(.errors) .form-input__label {
  color: #e26969;
}
.form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(:where(input, select, textarea):not(:where(:placeholder-shown)):is(:where(:not(:placeholder-shown)), :where(:not([placeholder=""], [placeholder=" "])), :not([value=""]), :-webkit-autofill, :autofill, :focus)) :where(.form-input__label), .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(:where(input, select, textarea):is(:where(:placeholder-shown:not([placeholder=""], [placeholder=" "])))) :where(.form-input__label), .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(:where(input, select, textarea):is(:focus)) :where(.form-input__label) {
  font-size: 1.2rem;
  transform: translateY(-2.3rem) translateX(-0.4rem);
  background-image: linear-gradient(rgba(255, 255, 255, 0) calc(50% - 3px), #fff calc(50% - 0.3rem));
  max-width: 125%;
}
.form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(:where(input, select, textarea):not(:where(:placeholder-shown)):is(:where(:not(:placeholder-shown)), :where(:not([placeholder=""], [placeholder=" "])), :not([value=""]), :-webkit-autofill, :autofill, :focus)) :where(.form-input__label)::before, .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(:where(input, select, textarea):not(:where(:placeholder-shown)):is(:where(:not(:placeholder-shown)), :where(:not([placeholder=""], [placeholder=" "])), :not([value=""]), :-webkit-autofill, :autofill, :focus)) :where(.form-input__label)::after, .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(:where(input, select, textarea):is(:where(:placeholder-shown:not([placeholder=""], [placeholder=" "])))) :where(.form-input__label)::before, .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(:where(input, select, textarea):is(:where(:placeholder-shown:not([placeholder=""], [placeholder=" "])))) :where(.form-input__label)::after, .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(:where(input, select, textarea):is(:focus)) :where(.form-input__label)::before, .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(:where(input, select, textarea):is(:focus)) :where(.form-input__label)::after {
  width: 0.4rem;
}

.foxentry-input-icon.foxentry-input-icon {
  z-index: 2;
}

.form-field-container {
  background-color: #fff;
  border: 1px solid #dedede;
  border-radius: 0;
  padding: 0 1rem;
  position: relative;
  transition: all 0.15s linear;
  margin-block-start: 0;
}
.form-field-container:has([disabled]) {
  background-color: #fff;
}
@media (hover: hover) and (min-width: 768px) {
  .form-field-container {
    font-size: 1.4rem;
  }
}
@media (hover: none), (pointer: coarse) {
  .form-field-container {
    font-size: 1.6rem;
  }
}
.form-field-container--icon-after {
  padding-right: 4rem;
}
.form-field-container--icon-before {
  padding-left: 4rem;
}
.form-field-container--with-prefix {
  padding-left: 2.5rem;
}
@media (min-width: 576px) {
  .form-field-container--icon-after {
    padding-right: 6rem;
  }
  .form-field-container--icon-before {
    padding-left: 6rem;
  }
}
@media (min-width: 1200px) {
  .form-field-container {
    padding-left: 1.4rem;
  }
  .form-field-container--with-prefix {
    padding-left: 3rem;
  }
}

.form-field {
  align-items: center;
  background-color: #fff;
  border: none;
  display: flex;
  height: 3.8rem;
  justify-self: flex-start;
  outline: none;
  overflow: hidden;
  width: 100%;
}
.form-field:has([disabled]) {
  background-color: inherit;
}
.form-field__narrow {
  max-width: 500px;
}
.form-field--textarea {
  height: 10rem;
  line-height: 1.3;
  padding: 1rem 0;
}
.form-field--textarea:has([style*=height]) {
  height: auto;
}
.form-field--textarea-large {
  min-height: 20rem;
  line-height: 1.3;
  padding: 1rem 0;
}
.form-field--textarea-large:has([style*=height]) {
  height: auto;
}
.form-field__currency {
  font-weight: 700;
  padding-right: 0.6rem;
}
.form-field__prefix, .form-field__suffix {
  color: currentcolor;
  display: block;
  position: absolute;
  overflow-wrap: normal;
}
.form-field__prefix {
  left: 1rem;
}
.form-field__suffix {
  right: 1rem;
}
.form-field__input,
.form-field *:where([type=text], [type=password], [type=number], [type=email], [type=tel], textarea, select) {
  align-items: center;
  background-color: transparent;
  border: none;
  color: #000;
  display: flex;
  flex: 1;
  font-weight: 300;
  height: 100%;
  min-width: 1rem;
  padding: 0;
  position: relative;
  z-index: 2;
}
.form-field__input::placeholder,
.form-field *:where([type=text], [type=password], [type=number], [type=email], [type=tel], textarea, select)::placeholder {
  color: rgba(0, 0, 0, 0.5);
  opacity: 1;
}
.form-field__input[name]:-webkit-autofill,
.form-field *:where([type=text], [type=password], [type=number], [type=email], [type=tel], textarea, select)[name]:-webkit-autofill {
  background-color: #fff !important;
}
.form-field__input[name]:-webkit-autofill, .form-field__input[name]:-webkit-autofill:hover, .form-field__input[name]:-webkit-autofill:focus, .form-field__input[name]:-webkit-autofill:active,
.form-field *:where([type=text], [type=password], [type=number], [type=email], [type=tel], textarea, select)[name]:-webkit-autofill,
.form-field *:where([type=text], [type=password], [type=number], [type=email], [type=tel], textarea, select)[name]:-webkit-autofill:hover,
.form-field *:where([type=text], [type=password], [type=number], [type=email], [type=tel], textarea, select)[name]:-webkit-autofill:focus,
.form-field *:where([type=text], [type=password], [type=number], [type=email], [type=tel], textarea, select)[name]:-webkit-autofill:active {
  -webkit-box-shadow: 0 0 0 30px #fff inset !important;
}
.form-field__input[readonly],
.form-field *:where([type=text], [type=password], [type=number], [type=email], [type=tel], textarea, select)[readonly] {
  cursor: auto;
}
.form-field__input[disabled],
.form-field *:where([type=text], [type=password], [type=number], [type=email], [type=tel], textarea, select)[disabled] {
  color: #b1b1b1;
}
.form-field select {
  padding-right: 1rem;
}
.form-field__input--inline {
  flex: unset;
  width: 1.7rem;
}
.form-field__separator {
  color: #ff4337;
  font-weight: 700;
  text-align: center;
  width: 0.7rem;
}
.form-field__icon {
  width: 2.4rem;
  height: 2.4rem;
  display: none;
  height: auto;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
}
.form-field__icon--top {
  top: 1.8rem;
}
.form-field__icon.visible {
  display: block;
}
.form-field__icon--sm {
  width: 1.8rem;
  height: 1.8rem;
}
.form-field__icon--after {
  right: 1rem;
}
.form-field__icon--before {
  left: 1rem;
}
@media (min-width: 576px) {
  .form-field__icon--after {
    right: 2rem;
  }
  .form-field__icon--before {
    left: 2rem;
  }
}
.form-field__file {
  background-color: #fff;
  border: 1px solid #dedede;
  border-radius: 0;
  position: relative;
  transition: all 0.15s linear;
}
.form-field .password-show-container {
  display: inline-grid;
  grid-template-columns: 1fr auto;
  height: 100%;
  width: 100%;
}
.form-field .password-show-container > * {
  grid-row: 1;
  margin: 0;
}
.form-field .password-show-container [type=text] + .password-show-trigger::before {
  background-image: url('data:image/svg+xml,    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">    <path d="M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19m-6.72-1.07a3 3 0 1 1-4.24-4.24"></path><line x1="1" y1="1" x2="23" y2="23"></line>    </svg>');
}
.form-field .password-show-trigger {
  position: relative;
}
.form-field .password-show-trigger::before {
  background-image: url('data:image/svg+xml,    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">    <path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"></path><circle cx="12" cy="12" r="3"></circle>    </svg>');
  background-repeat: no-repeat;
  background-position: center right 0.8rem;
  background-size: 1.6rem auto;
  content: "";
  display: block;
  height: 100%;
  width: 4rem;
  opacity: 0.6;
}
.form-field .password-show-trigger::after {
  content: "";
  display: block;
  height: 4rem;
  width: 100%;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
@media (min-width: 1200px) {
  .form-field {
    height: 4.5rem;
  }
  .form-field--sm {
    height: 3.8rem;
  }
  .form-field--textarea {
    height: 11.6rem;
  }
  .form-field--textarea:has([style*=height]) {
    height: auto;
  }
  .form-field__prefix {
    left: 1.3rem;
  }
}

[class*=form-field][type] {
  margin-top: 0;
}

[id=trololo] {
  display: none;
}

.textarea-autogrow {
  display: grid;
}
.textarea-autogrow::after {
  content: attr(data-replicatedValue) " ";
  white-space: pre-wrap;
  visibility: hidden;
  border-width: 1px;
  border-style: solid;
  padding: 3px;
  font: inherit;
  max-width: calc(100% - 6px + 2px);
  width: 85%;
  margin-bottom: 10px;
}
.textarea-autogrow > textarea {
  resize: none;
  overflow: hidden;
  border: 1px solid #dedede;
  padding: 3px;
}
.textarea-autogrow > textarea, .textarea-autogrow::after {
  grid-area: 1/1/2/2;
}

.form-field {
  height: 5rem;
  background-color: transparent;
}
.form-field--textarea {
  height: 10rem;
  padding-bottom: 0;
}
.form-field--textarea:has([style*=height]) {
  height: auto;
}
.form-field--textarea-large {
  min-height: 20rem;
}
.form-field--textarea-large:has([style*=height]) {
  height: auto;
}
.form-field__input {
  font-size: 1.6rem;
}
@media (min-width: 1200px) {
  .form-field--sm {
    height: 3.8rem;
  }
  .form-field--textarea {
    height: 11.6rem;
  }
}

.form-input:has(.errors) .form-field-container .form-field {
  background-color: transparent;
}

.toggle-switch {
  display: inline-block;
  height: 24px;
  position: relative;
  width: 48px;
}
.toggle-switch .toggle-switch-slider {
  background-color: #eee;
  cursor: pointer;
  position: absolute;
  inset: 0;
  transition: 0.4s;
  border-radius: 24px;
}
.toggle-switch .toggle-switch-slider::before {
  background-color: #fff;
  border-radius: 50%;
  bottom: 2px;
  content: "";
  height: 20px;
  left: 2px;
  position: absolute;
  transition: 0.4s;
  width: 20px;
}
.toggle-switch [type=checkbox]:checked + .toggle-switch-slider {
  background-color: #000;
}
.toggle-switch [type=checkbox]:checked + .toggle-switch-slider::before {
  transform: translateX(24px);
}

.skip__link {
  position: absolute;
  left: -10000px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.skip__link:focus {
  position: static;
  width: auto;
  height: auto;
}

.header-logo {
  display: flex;
  align-items: center;
}
.header-logo__img {
  display: block;
  height: 3rem;
  width: auto;
}
@media (min-width: 1200px) {
  .header-logo__img {
    height: 4.6rem;
  }
}

.header-btn {
  align-items: center;
  display: flex;
  height: 5.5rem;
  justify-content: center;
  min-width: 4rem;
  position: relative;
  width: auto;
  transition: color 0.15s linear;
}
.header-btn.is-active {
  color: #000;
}
.header-btn__icon {
  width: 1.9rem;
  height: 1.9rem;
  color: #000;
  stroke-width: 0;
  stroke: currentColor;
  z-index: 140;
  margin-block-end: 0.5rem;
}
.header-btn__icon--cart {
  width: 2.6rem;
  height: 2.6rem;
  margin-left: -0.5rem;
}
@media (max-width: 1199.98px) {
  .header-btn__icon--cart {
    width: 2.1rem;
    height: 2.1rem;
  }
}
@media (min-width: 1200px) {
  .header-btn__icon {
    width: 1.8rem;
    height: 1.8rem;
    color: #000;
  }
  .header-btn__icon--cart {
    margin: var(--icon-margin);
  }
}
.header-btn__caption {
  bottom: 0.6rem;
  position: absolute;
  font-size: 1rem;
  text-decoration: none;
  margin-left: 0.1rem;
}
@media (min-width: 768px) {
  .header-btn__caption {
    font-size: 1.1rem;
    bottom: 0.3rem;
    margin-left: 0.2rem;
  }
}
@media (max-width: 1199.98px) {
  .header-btn__caption {
    bottom: 0.2rem;
    color: #000;
  }
  .header-btn__caption--cart {
    text-transform: lowercase;
  }
}
.header-btn__badge {
  width: 1.7em;
  height: 1.7em;
  font-size: 1rem;
  align-items: center;
  background-color: #ff4337;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  position: absolute;
  right: 0.2rem;
  text-align: center;
  top: 1.1rem;
  z-index: 150;
}
.header-btn__badge--light {
  color: #fff;
}
.header-btn__badge--dark {
  color: #fff;
}
.header-btn__badge-icon {
  width: 1.2em;
  height: 1.2em;
  stroke-width: 3;
}
.header-btn__badge-icon--check {
  transform: translateY(0.05em);
}
@media (hover: hover) {
  .header-btn:hover {
    color: #000;
  }
}
@media (min-width: 576px) {
  .header-btn::before, .header-btn::after {
    width: 5rem;
    height: 5rem;
    bottom: 0;
    content: "";
    position: absolute;
    z-index: -1;
  }
  .header-btn::before {
    bottom: 0;
    opacity: 0;
    transition: opacity 0s linear;
  }
  .header-btn.is-active {
    margin: 0;
    transition: color 0.15s linear;
  }
  .header-btn.is-active::before {
    box-shadow: none;
    opacity: 1;
    transition: opacity 0.15s linear;
  }
  .header-btn.is-active::after {
    background-color: rgba(255, 255, 255, 0);
    z-index: 135;
  }
}

@media (min-width: 1200px) {
  .header-search {
    display: none;
  }
}

.header-dropdown {
  background-color: #fff;
  box-shadow: 0 0 10px 3px rgba(0, 0, 0, 0.05);
  display: none;
  opacity: 0;
  padding-bottom: 2rem;
  padding-top: 2rem;
  position: absolute;
  right: 0;
  transition: opacity 0s linear;
  width: 100%;
  z-index: 130;
  top: 5.5rem;
}
.header-dropdown.is-active {
  display: block;
}
.header-dropdown.is-visible {
  opacity: 1;
  transition: opacity 0.15s linear;
}
@media (min-width: 576px) {
  .header-dropdown:where(:not(.search-dropdown)) {
    max-width: 42rem;
    width: 80vw;
  }
  .header-dropdown.is-visible {
    box-shadow: 0 0 10px 3px rgba(0, 0, 0, 0.05);
  }
}
@media (min-width: 1200px) {
  .header-dropdown {
    padding: 2rem;
    right: 1.5rem;
    top: 8.9rem;
  }
}
.header-dropdown__user {
  padding-block: 1.5rem;
}
@media (max-width: 1199.98px) {
  .header-dropdown__user {
    font-size: 1.4rem;
    padding-block: calc(2rem - 0.8em);
  }
}
.header-dropdown__user a {
  display: block;
  padding-block: 0.5rem;
}
@media (max-width: 1199.98px) {
  .header-dropdown__user a {
    padding-block: 0.4em;
  }
}
.header-dropdown__user a:link, .header-dropdown__user a:visited {
  text-decoration: none;
}
.header-dropdown__user a:hover, .header-dropdown__user a:focus, .header-dropdown__user a:active {
  text-decoration: underline;
}

.header-dropdown {
  border-radius: var(--dropdown-border-radius);
}
@media (min-width: 1200px) {
  .header-dropdown {
    top: calc(50% + 5rem);
    right: 0;
  }
}

.header-cart.header-cart--l {
  width: 100vw;
}
@media (max-width: 1199.98px) {
  .header-cart__name {
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px;
  }
}
.header-cart .header-cart-item__remove {
  stroke-width: 2px;
}

.header-selects {
  display: flex;
  gap: 1rem;
  margin: 2rem 0;
}
@media (min-width: 1200px) {
  .header-selects {
    margin: 0 1rem 0 0;
  }
}

.header-select {
  align-items: center;
  background-color: #fff;
  color: #000;
  display: inline-flex;
  flex-direction: column;
  position: relative;
}
.header-select--desktop {
  display: none;
}
.header-select__btn {
  align-items: center;
  display: flex;
  height: 2.1em;
  padding: 0 0.8em;
  text-transform: uppercase;
}
@media (hover: hover) {
  .header-select__btn {
    transition: color 0.15s linear;
  }
  .header-select__btn:hover {
    color: #000;
  }
}
.header-select__icon {
  width: 0.8rem;
  height: 0.8rem;
  color: #747474;
  margin-left: 1em;
}
.header-select__list {
  background-color: #fff;
  display: none;
  opacity: 0;
  position: absolute;
  right: 0;
  top: 100%;
  transition: opacity 0s linear;
  width: 100%;
  z-index: 20;
}
.header-select__list.is-active {
  display: block;
}
.header-select__list.is-visible {
  opacity: 1;
  transition: opacity 0.15s linear;
}
.header-select__link {
  align-items: center;
  display: flex;
  height: 2.1em;
  padding: 0 0.8em;
  text-decoration: none;
  text-transform: uppercase;
  width: 100%;
}

.header-block img {
  max-width: 100%;
}

/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
  padding: 0.5rem 0.5rem;
  display: inline-block;
  cursor: pointer;
  transition-property: opacity, filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible;
}
.hamburger:hover {
  opacity: 1;
}
.hamburger.is-active:hover {
  opacity: 1;
}
.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner::before,
.hamburger.is-active .hamburger-inner::after {
  background-color: #fff;
}

.hamburger-box {
  width: 2.2rem;
  height: 1.8rem;
  display: inline-block;
  position: relative;
}

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -0.1rem;
}
.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
  width: 2.2rem;
  height: 0.2rem;
  background-color: #fff;
  border-radius: 0.4rem;
  position: absolute;
  transition-property: transform;
  transition-duration: 0.15s;
  transition-timing-function: ease;
}
.hamburger-inner::before, .hamburger-inner::after {
  content: "";
  display: block;
}
.hamburger-inner::before {
  top: -0.8rem;
}
.hamburger-inner::after {
  bottom: -0.8rem;
}

/*
 * Squeeze
 */
.hamburger--squeeze .hamburger-inner {
  transition-duration: 0.075s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--squeeze .hamburger-inner::before {
  transition: top 0.075s 0.12s ease, opacity 0.075s ease;
}
.hamburger--squeeze .hamburger-inner::after {
  transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--squeeze.is-active .hamburger-inner {
  transform: rotate(45deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--squeeze.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
  transition: top 0.075s ease, opacity 0.075s 0.12s ease;
}
.hamburger--squeeze.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(-90deg);
  transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.hamburger {
  width: 5.5rem;
  height: 5.5rem;
  background-color: #000;
  display: flex;
  align-items: center;
  justify-content: center;
  justify-self: end;
}
@media (min-width: 1200px) {
  .hamburger {
    display: none;
  }
}

.label-interactive__container {
  position: relative;
}
.label-interactive__label--default {
  visibility: hidden !important;
}
.label-interactive__label--replacement {
  pointer-events: none;
  position: absolute;
  top: var(--label-replacement-top, 0);
  left: var(--label-replacement-left, 0);
  font-size: var(--label-replacement-font-size, inherit);
}
.label-interactive__label--replacement a,
.label-interactive__label--replacement button {
  pointer-events: all;
}

@media (min-width: 1200px) {
  .search-dropdown {
    display: none !important;
  }
}

.search {
  display: flex;
}
.search__input {
  flex: 1;
  width: 100%;
}
.search__btn {
  margin-left: 0.6rem;
  max-height: 4rem;
}
.search__submit {
  position: relative;
}
.search__submit:has(.working) .search__btn {
  color: transparent;
}
.search__submit:has(.working) .search__icon--spinner {
  display: block;
  position: absolute;
  inset: 0;
  margin: auto;
}
.search__icon {
  display: none;
}
.search__icon--spinner {
  width: 1.8rem;
  height: 1.8rem;
  animation: spinner 0.75s infinite linear;
  opacity: 0.6;
  stroke-width: 0.01px;
}
@media (hover: hover) {
  .search__submit:hover .search__icon {
    color: #000;
  }
  .search__icon {
    transition: color 0.15s linear;
  }
}
@media (min-width: 1200px) {
  .search {
    width: 100%;
  }
  .search:focus-within {
    outline: 1px solid #000;
    outline-offset: 0;
  }
  .search__field-container {
    border: none;
  }
  .search__field {
    height: 5rem;
  }
  .search__btn {
    display: none;
  }
  .search__submit {
    align-items: center;
    background-color: #fff;
    display: flex;
    justify-content: center;
    height: 5rem;
    width: 4.5rem;
  }
  .search__icon:where(:not(.search__icon--spinner)) {
    width: 1.6rem;
    height: 1.6rem;
    display: block;
  }
  .search__icon.working {
    display: none;
  }
  .search__icon.working + .search__icon--spinner {
    display: block;
    position: static;
  }
}

:root:has(.search input:focus) {
  scroll-padding-top: 0;
}

.search__input {
  position: static;
  background-color: initial;
}
.search__input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)) {
  z-index: auto;
  margin-top: initial;
}
.search__input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)) :where(.form-field-container) {
  padding: initial;
  overflow: visible;
  border: none;
  border-radius: 0;
}
.search__input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)) :where(.form-field > *):not([disabled]) {
  background-color: initial;
}
.search__input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)) :where(.form-field__input) {
  font-size: initial;
}
.search__input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(.errors) {
  --input-bg: initial;
}
.search__input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(.errors) .form-field-container {
  background-color: initial;
  border-color: initial !important;
}
.search__input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(.errors):focus-within .form-field-container {
  border-color: initial !important;
}
.search__input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has([disabled]) .form-field-container {
  background-color: initial;
  border-color: initial !important;
}
.search__input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)) :where(.form-input__label) {
  position: static;
  white-space: normal;
  line-height: normal;
  padding-inline: 0;
  padding-block: 0;
  font-size: initial;
  color: initial;
  text-overflow: clip;
  overflow: visible;
  transition: none;
  transform: none;
  background-clip: border-box;
  z-index: auto;
  max-width: none;
  pointer-events: auto;
  font-variation-settings: initial;
  margin-block-end: initial;
}
.search__input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)) :where(.form-input__label)::before, .search__input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)) :where(.form-input__label)::after {
  content: none;
}
.search__input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(.form-field--sm) .form-input__label {
  padding-block: 0;
}
.search__input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):focus-within :where(.form-field-container) {
  border-color: initial;
  box-shadow: none;
}
.search__input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):focus-within :where(.form-input__label) {
  color: initial;
}
.search__input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):hover:not(:where(:focus-within, [disabled])):where(:not(:has(.errors))) :where(.form-field-container) {
  border-color: initial;
}
.search__input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):hover:not(:where(:focus-within, [disabled])):where(:not(:has(.errors))) :where(.form-input__label) {
  color: initial;
}
.search__input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):hover:not(:where(:focus-within, [disabled])):has(.errors) :where(.form-field-container) {
  border-color: initial;
}
.search__input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):hover:not(:where(:focus-within, [disabled])):has(.errors) :where(.form-input__label) {
  color: initial;
}
.search__input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(:where(input, select, textarea):not(:where(:placeholder-shown)):is(:where(:not(:placeholder-shown)), :where(:not([placeholder=""], [placeholder=" "])), :not([value=""]), :-webkit-autofill, :autofill, :focus)) :where(.form-input__label), .search__input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(:where(input, select, textarea):is(:where(:placeholder-shown:not([placeholder=""], [placeholder=" "])))) :where(.form-input__label), .search__input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(:where(input, select, textarea):is(:focus)) :where(.form-input__label) {
  transform: none;
  font-size: initial;
  background-image: none;
  max-width: none;
}
.search__input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(:where(input, select, textarea):not(:where(:placeholder-shown)):is(:where(:not(:placeholder-shown)), :where(:not([placeholder=""], [placeholder=" "])), :not([value=""]), :-webkit-autofill, :autofill, :focus)) :where(.form-input__label)::before, .search__input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(:where(input, select, textarea):not(:where(:placeholder-shown)):is(:where(:not(:placeholder-shown)), :where(:not([placeholder=""], [placeholder=" "])), :not([value=""]), :-webkit-autofill, :autofill, :focus)) :where(.form-input__label)::after, .search__input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(:where(input, select, textarea):is(:where(:placeholder-shown:not([placeholder=""], [placeholder=" "])))) :where(.form-input__label)::before, .search__input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(:where(input, select, textarea):is(:where(:placeholder-shown:not([placeholder=""], [placeholder=" "])))) :where(.form-input__label)::after, .search__input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(:where(input, select, textarea):is(:focus)) :where(.form-input__label)::before, .search__input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(:where(input, select, textarea):is(:focus)) :where(.form-input__label)::after {
  width: 1;
}
.search .suggestions {
  padding: 0;
}
.search:focus-within .search__submit {
  background: #000;
  color: #fff;
}

@media (min-width: 1200px) {
  .search {
    border-radius: 8px;
    border: 1px solid #dedede;
  }
  .search:focus-within {
    outline-offset: -1px;
  }
  .search__input {
    border: 0;
  }
  .search__input .search__field-container {
    border: 0;
    box-shadow: none;
    background-color: transparent;
  }
  .search__field-container, .search__field {
    border-radius: 0;
    border: 0;
    border-top-left-radius: 8px;
    border-bottom-left-radius: 8px;
    background-color: #fff;
  }
  .search__submit {
    color: rgba(33, 37, 41, 0.4);
    border-top-right-radius: 8px -2;
    border-bottom-right-radius: 8px -2;
    background: #f3f3f3;
    position: relative;
    width: auto;
  }
  .search__submit:has(.working) .btn {
    opacity: 0;
  }
  .search-query, .search__field, .search__submit {
    max-height: 4.8rem;
  }
  .search__icon {
    position: absolute !important;
    inset: 0;
    margin: auto;
  }
  .search__icon:not(.search__icon--spinner) {
    display: none !important;
  }
  .search__btn {
    background: none !important;
    color: currentcolor !important;
    font-weight: normal;
    font-variation-settings: "wght" 700;
    display: flex;
    margin: 0;
    padding: 0 2rem;
  }
}

.nav-pages {
  border: 1px solid #dedede;
  border-width: 1px 0;
  margin: 1rem 0;
  padding: 1rem 0;
}
@media (min-width: 1200px) {
  .nav-pages {
    display: flex;
  }
}
.nav-pages__list {
  display: flex;
  flex-direction: column;
}
@media (max-width: 1199.98px) {
  .nav-pages__list {
    gap: 1.5rem;
  }
}
.nav-pages__link {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 0.4em 0;
  text-decoration: none;
}
.nav-pages__link--icon {
  display: none;
}
@media (hover: hover) {
  .nav-pages__link:hover {
    color: #000;
  }
}
@media (max-width: 1199.98px) {
  .nav-pages {
    font-size: 1.4rem;
    min-height: 4rem;
    border: none;
    padding: 0;
    margin-block: 2.8rem 0;
  }
  .nav-pages__link {
    min-height: 4rem;
    padding-inline: 1rem;
  }
  .nav-pages__link--icon {
    stroke-width: 0;
    order: 4;
    width: 12px;
    height: 9px;
    margin-inline: auto calc(20px - 1rem);
    display: block;
  }
  .nav-pages__item {
    border-block-end: 1px solid #f4f4f4;
  }
}
@media (min-width: 1200px) {
  .nav-pages {
    border: none;
    margin: 0;
    padding: 0;
  }
  .nav-pages .submenu--nested {
    margin-block-start: 0;
  }
  .nav-pages__list {
    flex-flow: row wrap;
    gap: 0 1rem;
    position: relative;
    margin-inline: 0;
    width: auto;
    max-width: calc(100% - var(--bs-gutter-x));
  }
  .nav-pages__list .container {
    padding: 0;
  }
  .nav-pages__list .nav-pages__list {
    position: absolute;
    top: calc(100% + 0.4rem);
    left: -0.75rem;
    background-color: #fff;
    box-shadow: 0 0 10px 3px rgba(0, 0, 0, 0.05);
    flex-direction: column;
    gap: 0;
    z-index: 150;
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition: opacity 0s linear 0s;
    width: max-content;
    max-width: 42rem;
    padding: 1rem 1.5rem;
  }
  .nav-pages__list .nav-pages__list .nav-pages__list {
    left: 100%;
    top: 0;
  }
  .nav-pages__list .nav-pages__list a {
    display: block;
    padding-block: 0.5rem;
  }
  .nav-pages__list .nav-pages__list a:hover, .nav-pages__list .nav-pages__list a:focus, .nav-pages__list .nav-pages__list a:active {
    color: inherit;
    text-decoration: underline;
  }
  .nav-pages__item {
    position: relative;
  }
  .nav-pages__item:hover .nav-pages__list, .nav-pages__item:focus-within .nav-pages__list {
    transition: opacity 0.15s linear 0.3s;
    opacity: 1;
    max-height: none;
  }
  .nav-pages__item:has(.nav-pages__list) > .nav-pages__link {
    position: relative;
  }
  .nav-pages__item:has(.nav-pages__list) > .nav-pages__link::before, .nav-pages__item:has(.nav-pages__list) > .nav-pages__link::after {
    content: "";
    background-color: #fff;
    opacity: 0;
    transition: opacity 0s linear 0s;
    position: absolute;
    top: -0.5rem;
    left: -0.75rem;
    right: 0;
  }
  .nav-pages__item:has(.nav-pages__list) > .nav-pages__link::before {
    box-shadow: 0 0 10px 3px rgba(0, 0, 0, 0.05);
    bottom: -0.5rem;
  }
  .nav-pages__item:has(.nav-pages__list) > .nav-pages__link::after {
    z-index: 155;
    bottom: -0.85rem;
  }
  .nav-pages__item:has(.nav-pages__list):hover > .nav-pages__link > *, .nav-pages__item:has(.nav-pages__list):focus-within > .nav-pages__link > * {
    z-index: 160;
  }
  .nav-pages__item:has(.nav-pages__list):hover > .nav-pages__link::before, .nav-pages__item:has(.nav-pages__list):hover > .nav-pages__link::after, .nav-pages__item:has(.nav-pages__list):focus-within > .nav-pages__link::before, .nav-pages__item:has(.nav-pages__list):focus-within > .nav-pages__link::after {
    opacity: 1;
    transition: transform 0s linear 0.3s, opacity 0.15s linear 0.3s;
  }
  .nav-pages__link {
    padding: 0 0.2em;
  }
}

@media (min-width: 1200px) {
  .categories-menu .hamburger {
    display: flex;
    width: auto;
    height: auto;
    background: none !important;
    border-radius: 8px;
  }
  .categories-menu .hamburger-box {
    display: none;
  }
  .categories-menu .hamburger > .btn {
    border-radius: inherit;
  }
  .categories-menu__trigger {
    gap: 0.5rem;
  }
  .categories-menu .nav {
    border-radius: var(--dropdown-border-radius);
    display: grid;
    grid-template-rows: 0fr 0fr;
    transition: grid-template-rows 0.15s linear;
    left: 0;
    transform: none;
    max-width: 1685px;
    right: 0;
    margin: auto;
  }
  .categories-menu .nav,
  .categories-menu .nav * {
    word-break: normal;
  }
  .categories-menu .nav.nav {
    min-height: 0;
  }
  .categories-menu .nav-categories-container {
    position: relative;
    background-color: #fff;
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
    border-radius: var(--dropdown-border-radius);
    overflow: hidden;
    padding-inline: 0;
  }
  .categories-menu .nav .menu--main {
    --left-menu-width: 224px;
    background: linear-gradient(to right, #f4f4f4 0, #f4f4f4 calc(var(--left-menu-width) + 20px), #fff calc(var(--left-menu-width) + 20px));
    height: 100%;
    display: grid;
    grid-template-columns: 20px var(--left-menu-width) 1fr;
    align-content: start;
    margin-inline: 0;
    padding-block: 20px;
  }
  .categories-menu .nav .menu__item--main {
    display: contents;
  }
  .categories-menu .nav .menu__item--main:has(.submenu--main:hover) > .menu__link {
    background-color: #000;
    color: #fff;
  }
  .categories-menu .nav .menu__item--main:has(.submenu--main:hover) > .menu__link .menu__link-img {
    background-color: #fff;
  }
  .categories-menu .nav .menu__item--main > .menu__link {
    padding-inline-start: 1rem;
    text-transform: none;
  }
  .categories-menu .nav .menu__item--main > .menu__link--primary, .categories-menu .nav .menu__item--main > .menu__link--secondary {
    background-color: #f4f4f4;
    border-radius: 8px 0 0 8px;
    color: #000;
    justify-content: start;
    height: auto;
    min-height: 40px;
    gap: 0 1rem;
  }
  .categories-menu .nav .menu__item--main > .menu__link--primary:hover, .categories-menu .nav .menu__item--main > .menu__link--primary:focus, .categories-menu .nav .menu__item--main > .menu__link--primary:active, .categories-menu .nav .menu__item--main > .menu__link--secondary:hover, .categories-menu .nav .menu__item--main > .menu__link--secondary:focus, .categories-menu .nav .menu__item--main > .menu__link--secondary:active {
    background-color: #000;
    color: #fff;
  }
  .categories-menu .nav .menu__item--main > .menu__link--primary:hover .menu__link-img, .categories-menu .nav .menu__item--main > .menu__link--primary:focus .menu__link-img, .categories-menu .nav .menu__item--main > .menu__link--primary:active .menu__link-img, .categories-menu .nav .menu__item--main > .menu__link--secondary:hover .menu__link-img, .categories-menu .nav .menu__item--main > .menu__link--secondary:focus .menu__link-img, .categories-menu .nav .menu__item--main > .menu__link--secondary:active .menu__link-img {
    background-color: #fff;
  }
  .categories-menu .nav .menu__item--main > .menu__link .menu__link-img {
    position: static;
    display: block;
    height: 25px;
    width: 25px;
    border-radius: 8px;
  }
  .categories-menu .nav .menu__item--main > .menu__link .menu__link-img picture {
    position: relative;
  }
  .categories-menu .nav .menu__item--main > .menu__link .menu__link-img img {
    margin: auto;
    mix-blend-mode: darken;
  }
  .categories-menu .nav .menu__item--main > .menu__link--primary:has(+ .open) {
    background-color: #000;
    color: #fff;
  }
  .categories-menu .nav .menu__item--main > .menu__link--primary:has(+ .open) .menu__link-img {
    background-color: #fff;
  }
  .categories-menu .nav .menu__item:not(.menu__item--nested) > a {
    grid-column: 2;
  }
  .categories-menu .nav .menu__link-text {
    -webkit-font-smoothing: antialiased;
  }
  .categories-menu .nav.is-visible {
    grid-template-rows: 1fr 0fr;
  }
  .categories-menu .nav.is-visible .nav-categories-container {
    --categories-nav-height: calc(98vh - 14.5rem);
    min-height: 50vh;
    max-height: var(--categories-nav-height);
  }
  .categories-menu .nav.is-visible::before {
    content: "";
    width: 100vw;
    height: 100vh;
    background: #000;
    opacity: 0.7;
    position: fixed;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
  }
  .categories-menu .submenu__more-link {
    display: none;
  }
  .categories-menu .submenu__more-link .submenu__link {
    font-weight: normal;
    font-variation-settings: "wght" 600;
    text-decoration: none;
    text-transform: capitalize;
    color: #000;
  }
  .categories-menu .submenu__more-link .submenu__link:hover, .categories-menu .submenu__more-link .submenu__link:focus, .categories-menu .submenu__more-link .submenu__link:active {
    text-decoration: underline;
  }
  .categories-menu .submenu__more-link .submenu__icon--forward {
    transform: rotate(-90deg);
    height: 1rem;
    width: 1rem;
    display: inline-block;
    stroke-width: 1.5px;
    margin-block-start: -1px;
  }
  .categories-menu .add-show-more + .submenu__more-link {
    display: inline;
  }
}
@media (max-width: 1199.98px) {
  .categories-menu .nav {
    background-color: #f4f4f4;
    border: none;
    max-width: 100vw;
  }
}

.product-card-sample-container:not(.product-card-slider) {
  display: grid;
  gap: 1rem;
  grid-template-columns: 1fr;
}
@media (min-width: 412px) {
  .product-card-sample-container:not(.product-card-slider) {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 576px) {
  .product-card-sample-container:not(.product-card-slider) {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 890px) {
  .product-card-sample-container:not(.product-card-slider) {
    grid-template-columns: repeat(5, 1fr);
  }
}

.products-section__list {
  margin-block-end: -4rem;
}
@supports (grid-template-rows: subgrid) {
  @container products-section (width > 569.999px) {
    .products-section__list .product-card {
      grid-template-rows: subgrid;
      align-items: normal;
    }
  }
}
@container products-section (width < 570px) {
  .products-section__list .product-card {
    grid-template-columns: 3fr 4fr;
  }
}

.product-card {
  position: relative;
  text-align: start;
  padding-block-end: calc(0.3rem + 2px);
  z-index: 1;
  margin-block-end: 4rem;
  display: grid;
  grid-row: span 11;
  grid-template-columns: 6fr 7fr;
  column-gap: 1rem;
  align-items: start;
  grid-template-areas: "thumb   thumb" "avail   avail" "heading heading" "perex   perex" "voucher voucher" "price   payment-info" "price   payment-info" "price   add" "offers  offers";
  transition: 2s z-index 0s ease-in;
}
.embla__container:where(.embla__container--basket) .product-card, .time-limited-offers .product-card {
  display: block;
  padding-block-end: 0;
  margin-block-end: 0;
}
.embla__container:where(.embla__container--basket) .product-card__secondary, .time-limited-offers .product-card__secondary {
  margin-block-start: 0;
}
.time-limited-offers .product-card {
  grid-row: auto;
}
.product-card__inner, .product-card__primary, .product-card__secondary, .product-card__secondary-inner, .product-card__add {
  display: contents;
}
.product-card__thumbnail {
  grid-area: thumb;
}
.product-card__heading {
  order: unset;
  grid-area: heading;
}
.product-card__availability {
  grid-area: avail;
}
.product-card__perex {
  grid-area: perex;
}
.product-card__price {
  grid-area: price;
}
.product-card__voucher {
  grid-area: voucher;
  margin-block: 1rem;
}
.product-card__compare {
  grid-area: thumb;
  place-self: start;
  z-index: 5;
}
.product-card__add-link {
  grid-area: add;
  z-index: 5;
  height: 4rem;
}
.time-limited-offers .product-card__add-link {
  min-height: 5rem;
}
.product-card__offers {
  grid-area: offers;
}
@media (hover: hover) and (min-width: 992px) {
  .product-card__primary:has(.card-price__discount) + .product-card__secondary, .product-card__primary:has(.product-card__availability) + .product-card__secondary {
    margin-block-start: 0;
  }
}
.time-limited-offers .product-card__primary {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-self: start;
  width: 100%;
  gap: 1rem;
  position: relative;
  z-index: 1;
}
.time-limited-offers .product-card__secondary-inner {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.product-card__heading, .product-card__availability {
  margin-block-start: 1.8rem;
}
.time-limited-offers .product-card__heading, .time-limited-offers .product-card__availability {
  margin-block: 0;
}
.product-card__heading {
  margin-block-end: 1.8rem;
  min-height: 1px;
  order: 10;
  font-weight: normal;
  font-variation-settings: "wght" 700;
  text-wrap: initial;
  font-size: 1.6rem;
}
@container products-section (width < 570px) {
  .product-card__heading {
    margin-block: 0.5rem;
    font-size: 1.4rem;
  }
}
.product-card__heading-link {
  word-break: normal;
  text-decoration: none;
}
@media (hover: hover) {
  .product-card__heading-link {
    text-decoration: underline;
    text-decoration-color: transparent;
    transition: text-decoration-color 0.15s linear;
  }
  .product-card__heading-link:hover {
    text-decoration-color: currentcolor;
  }
}
.product-card__thumbnail {
  --thumbnail-padding: clamp(1rem, 3vw, 2rem);
  border-radius: 8px;
  background-color: #fff;
  padding: var(--thumbnail-padding);
  display: grid;
  grid-template-columns: 1fr;
  place-items: center;
  height: 27rem;
  position: relative;
  text-decoration: none;
  width: 100%;
  align-self: stretch;
}
@container products-section (width < 570px) {
  .product-card__thumbnail {
    box-shadow: 0 10px 50px 0 rgba(0, 0, 0, 0.13);
    height: auto;
  }
  .time-limited-offers .product-card__thumbnail {
    box-shadow: none;
  }
}
.time-limited-offers .product-card__thumbnail {
  height: 23rem;
}
.time-limited-offers .product-card__thumbnail {
  order: -1;
  margin-bottom: 1rem;
}
.product-card__thumbnail > * {
  grid-column: 1/-1;
  grid-row: 1/-1;
}
@container products-section (width > 569px) {
  .product-card__thumbnail img {
    object-fit: contain;
    position: absolute;
    top: calc(var(--thumbnail-padding) * 0.5);
    left: calc(var(--thumbnail-padding) * 0.5);
    height: calc(100% - var(--thumbnail-padding));
    width: calc(100% - var(--thumbnail-padding));
    max-width: calc(100% - var(--thumbnail-padding));
  }
}
@container products-section (width < 570px) {
  .product-card__thumbnail img {
    max-height: clamp(12rem, 12vh, 16rem);
  }
}
.time-limited-offers .product-card__thumbnail img {
  object-fit: contain;
  position: absolute;
  top: calc(var(--thumbnail-padding) * 0.5);
  left: calc(var(--thumbnail-padding) * 0.5);
  height: calc(100% - var(--thumbnail-padding));
  width: calc(100% - var(--thumbnail-padding));
  max-width: calc(100% - var(--thumbnail-padding));
}
.product-card__flags {
  position: relative;
  bottom: 0.5rem;
  left: var(--thumbnail-padding);
}
@container products-section (width < 570px) {
  .product-card__flags {
    bottom: 0;
  }
  .product-card__flags .flags__item {
    min-height: auto;
    font-size: 1rem;
  }
  .product-card__flags .flags__text {
    font-variation-settings: "wght" 500;
  }
}
.product-card__availability {
  font-size: 1.2rem;
  line-height: 1.3;
}
@container products-section (width < 570px) {
  .product-card__availability {
    margin-block-start: 1.5rem;
    font-size: 1.1rem;
  }
  .time-limited-offers .product-card__availability {
    margin-block-start: 0;
  }
}
.product-card__availability .stock--available-extra {
  vertical-align: initial;
  font-size: inherit;
}
.product-card__availability .stock--available-extra::before {
  padding-inline: 0 0.3ch;
}
.product-card__variants {
  grid-area: 1/1;
  place-self: start;
  z-index: 1;
}
.products-section__list .product-card__price, .embla__container:where(:not(.embla__container--basket)) .product-card__price {
  display: grid;
  align-content: center;
  grid-template-areas: "price-discount-info" "price-full" "price-savings-info";
  border: 1px solid #e4e4e4;
  border-radius: 8px;
  background-color: #fff;
  padding: 5px;
  text-align: center;
  margin-block-start: 1.25rem;
  min-height: 9rem;
}
@container products-section (width < 570px) {
  .products-section__list .product-card__price, .embla__container:where(:not(.embla__container--basket)) .product-card__price {
    margin-block-start: 0.5rem;
  }
}
:where(.product-card__voucher) + .products-section__list .product-card__price, :where(.product-card__voucher) + .embla__container:where(:not(.embla__container--basket)) .product-card__price {
  margin-block-start: 0.25rem;
}
.products-section__list .product-card__price:has(.card-price__discount), .embla__container:where(:not(.embla__container--basket)) .product-card__price:has(.card-price__discount) {
  border-color: #e11931;
  background-color: #e11931;
  color: #fff;
}
.products-section__list .product-card__price:has(.card-price__condition), .embla__container:where(:not(.embla__container--basket)) .product-card__price:has(.card-price__condition) {
  border-color: #eab000;
  background-color: #fefbf2;
}
.time-limited-offers.time-limited-offers .product-card__price {
  display: block;
  padding: 0;
  line-height: 1.3;
  border: initial;
  border-radius: initial;
  background-color: initial;
  margin-block-start: 0;
  min-height: auto;
}
.product-card__perex, .product-card__parameters {
  display: block;
  font-size: 1.4rem;
  line-height: 1.3;
  margin: 0 0 0.5rem;
  opacity: 0.6;
  text-wrap: initial;
}
@container products-section (width < 570px) {
  .product-card__perex, .product-card__parameters {
    font-size: 1.1rem;
  }
}
.time-limited-offers .product-card__perex, .time-limited-offers .product-card__parameters {
  line-height: var(--bs-body-line-height);
  margin: 0;
}
.product-card__parameters {
  display: flex;
  flex-wrap: wrap;
}
.product-card__parameters > * {
  display: inline;
}
.product-card__parameters dt {
  font-weight: inherit;
  font-variation-settings: "wght" inherit;
}
.product-card__parameters dt ~ dt::before {
  content: ", ";
}
.product-card__parameters dd {
  padding-inline-start: 0.3rem;
}
.product-card__add-link {
  display: grid;
  font-size: 1.7rem;
  line-height: 1;
  grid-template-columns: auto auto;
  gap: 0 0.55em;
  padding-inline: 1rem;
  text-decoration: none;
  text-align: left;
  width: 100%;
  align-self: end;
}
@container products-section (width > 569px) {
  .product-card__add-link {
    font-variation-settings: "wght" 600;
  }
}
@container products-section (width < 570px) {
  .product-card__add-link {
    font-size: 1.4rem;
  }
}
.product-card__add-link:hover {
  color: #000;
}
@media (max-width: 400px) {
  .product-card__add-link {
    gap: 0 0.3em;
  }
}
.product-card__add-link .btn__icon {
  color: #fff;
  transition: transform 0.15s linear;
  stroke-width: 0;
  width: 2rem;
  height: 2rem;
}
.time-limited-offers .product-card__add {
  display: flex;
  justify-content: center;
  align-items: end;
  padding-block-start: 0.5rem;
  gap: 1rem;
}
.time-limited-offers .product-card__add {
  min-height: 5rem;
}
.product-card__compare {
  display: none;
  height: 4rem;
  margin: 1rem 0 0 1rem;
}
:where([id=sect-catalog]) .product-card__compare:is(:link, :visited) {
  display: flex;
  align-items: center;
  padding-inline: 0.4em;
  aspect-ratio: 1;
  color: #000;
  background-color: #fff;
  border: 1px solid #000;
  border-radius: 50%;
}
:where([id=sect-catalog]) .product-card__compare .btn__icon {
  stroke-width: 0;
  width: 2.4rem;
  height: 2.4rem;
}
:where([id=sect-catalog]) .product-card__compare--active:is(:link, :visited) {
  border-color: transparent;
  background-color: #f4f4f4;
}
:where([id=sect-catalog]) .product-card__compare:hover {
  border-color: transparent;
}
.product-card__payment-info {
  grid-area: payment-info;
  display: grid;
  gap: 1rem;
  grid-template-columns: auto 1fr;
  align-items: center;
  justify-self: center;
  margin-block-start: 1rem;
}
.product-card__payment-info-logo {
  width: 40px;
  height: 17px;
}
.product-card__payment-info-text {
  line-height: 1.2;
  font-size: 1.2rem;
  color: #e11931;
}
.product-card__payment-info-text strong {
  display: block;
}
.time-limited-offers .product-card__payment-info {
  display: none;
}
.product-card__voucher {
  display: flex;
  flex-flow: column;
  align-items: center;
  background-color: #d8edf7;
  font-size: 1.2rem;
  border-radius: 1rem;
  font-variation-settings: "wght" 600;
  line-height: 1.3;
  padding: 0.5rem;
  margin-block-end: 1rem;
  text-align: center;
  border: 1px dashed #000;
  position: relative;
}
.time-limited-offers .product-card__voucher {
  display: none;
}
.product-card__voucher > span {
  color: #000;
}
.product-card__voucher em {
  font-style: normal;
  font-variation-settings: inherit;
  position: relative;
  z-index: 1;
}
.product-card__voucher > a {
  color: #000;
  text-decoration: none;
  font-variation-settings: "wght" 400;
}
.product-card__voucher > a::after {
  content: "";
  position: absolute;
  display: block;
  inset: 0;
}
.product-card__voucher > a:hover, .product-card__voucher > a:focus, .product-card__voucher > a:active {
  text-decoration: underline;
}
.product-card__offers {
  background-color: #fefbf2;
  position: relative;
  font-size: 1.2rem;
  font-variation-settings: "wght" 500;
  margin-block-start: 1rem;
}
.time-limited-offers .product-card__offers {
  display: none;
}
.product-card__offers-trigger {
  position: relative;
  z-index: 5;
  width: 100%;
  text-align: left;
  padding: 0.3rem 0.6rem 0;
  border-radius: 5px 5px 0 0;
  border: 1px solid #eab000;
  border-bottom-width: 0;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: baseline;
  gap: 0.5rem;
  font-variation-settings: inherit;
}
.product-card__offers-trigger::after {
  content: "";
  width: 0;
  height: 0;
  border-right: 2px solid transparent;
  border-bottom: 2px solid transparent;
  padding: 0.3rem;
  rotate: 45deg;
  translate: 0 -0.2rem;
  border-color: currentcolor;
  position: relative;
}
.product-card__offers-trigger.is-active::after {
  rotate: -135deg;
  top: 0.2rem;
}
.product-card__offers-list {
  display: grid;
  grid-template-rows: 0fr;
  overflow: hidden;
  transition: grid-template-rows 0.2s ease-in-out;
  position: absolute;
  inset: calc(100% - 5px) 0 auto;
  background-color: inherit;
  border-radius: 0 0 5px 5px;
  border: 1px solid #eab000;
  border-top-width: 0;
  padding: 0.6rem 0.6rem 0.3rem;
  font-variation-settings: "wght" 400;
}
.product-card__offers-list.is-active {
  grid-template-rows: 1fr;
  border-color: #eab000;
}
.product-card__offers-list ul {
  overflow: hidden;
}
.product-card__offer {
  background: #fff;
  border-radius: 8px;
  border: 1px solid #d0d0d0;
  display: flex;
  justify-content: space-between;
  padding: 0.45rem 1.2rem;
  margin: 5px 0;
  text-decoration: none;
}
.product-card__offer span:not(.currency) {
  display: block;
}
.product-card__offer-price {
  white-space: nowrap;
  font-variation-settings: "wght" 700;
}
.product-card:has(.product-card__offers-list.is-active) {
  z-index: 10;
  transition: 0s z-index 0s ease-in;
}

[id=addToCompareModal] .product-detail__actions-icon {
  height: 1.6rem;
  stroke-width: 0.3;
  position: relative;
  left: -0.3em;
  top: -2px;
}

.card-price {
  display: contents;
}
.time-limited-offers .card-price {
  text-align: center;
  margin: 0;
  margin-block: 0 !important;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 0 0.3rem;
}
.card-price__condition {
  color: #eab000;
  font-variation-settings: "wght" 700;
  font-size: 1.2rem;
  line-height: 1.2;
}
.card-price__saving {
  border-radius: 4px;
  padding: 2px 5px;
  font-size: 1.2rem;
  line-height: 1.2;
  grid-area: price-savings-info;
  border: 1px solid #fee956;
  background-color: #fee956;
  color: #000;
}
:where(.product-card__price:has(.card-price__discount)) .card-price__saving {
  min-height: 3.2rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
@container products-section (width < 570px) {
  :where(.product-card__price:has(.card-price__discount)) .card-price__saving {
    min-height: 2.75rem;
  }
}
.card-price__saving--condition {
  border-color: #e4e4e4;
  background-color: #fff;
}
.time-limited-offers .card-price__saving {
  color: #058802;
  border: none;
  background: none;
  padding: 0;
  min-height: 1px;
  display: block;
}
.card-price__full {
  display: block;
  font-size: 2rem;
  font-weight: normal;
  font-variation-settings: "wght" 800;
  color: inherit;
  text-wrap: nowrap;
  grid-area: price-full;
}
@container products-section (width < 570px) {
  .card-price__full {
    font-size: 1.6rem;
  }
}
:where(.product-card__price:has(.card-price__discount)) .card-price__full {
  font-variation-settings: "wght" 700;
  font-size: 1.85rem;
}
@container products-section (width < 570px) {
  :where(.product-card__price:has(.card-price__discount)) .card-price__full {
    font-size: 1.6rem;
  }
}
.card-price__full .currency {
  font-variation-settings: "wght" 500;
}
.time-limited-offers .card-price__full {
  order: -1;
  color: #000;
  font-size: 1.8rem;
  font-variation-settings: "wght" 700;
}
.card-price__full strong {
  font-weight: inherit;
  font-variation-settings: inherit;
}
.card-price__discount {
  --percent-bg: #fff;
  --percent-color: #e11931;
  display: block;
  font-variation-settings: "wght" 300;
  opacity: 0.9;
  font-size: 1.2rem;
  color: inherit;
  grid-area: price-discount-info;
}
.card-price__discount-percent {
  background-color: var(--percent-bg);
  color: var(--percent-color);
  border-radius: 8px;
  border-radius: 1lh;
  padding-inline-start: 0.3em;
  margin-inline-end: 0.5em;
  font-variation-settings: "wght" 400;
}
.time-limited-offers .card-price__discount {
  --percent-bg: rgb(255, 255, 255, 0);
  --percent-color: #4d4d4d;
  opacity: 0.6;
  color: #4d4d4d;
  font-variation-settings: inherit;
}

.product-card__special--inner {
  background-color: #f4f4f4;
  border: 2px solid #000;
  border-radius: 8px;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1.5rem;
  padding: clamp(2rem, 5vw, 4rem);
  position: relative;
  text-align: center;
}
.product-card__special--inner * {
  margin: 0;
  padding: 0;
}
@media (min-width: 992px) {
  .product-card__special--heading, .product-card__special--description {
    text-align: start;
  }
}
.product-card__special--heading {
  font-size: 2.2rem;
  text-wrap: balance;
}
.product-card__special--link {
  font-size: 1.4rem;
}
@media (min-width: 992px) {
  .product-card__special--link {
    margin-block-start: 15%;
  }
}
.product-card__special--link a {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  text-transform: lowercase;
  text-decoration: none;
}
.product-card__special--link a::before {
  content: "";
  display: block;
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.product-card__special--link-icon {
  transform: scale(-1);
}

.flags {
  align-items: flex-end;
  display: flex;
  flex-direction: column;
  list-style: none;
  margin: 0;
  padding: 0;
  place-self: end;
  gap: 0.4rem;
  z-index: 2;
  width: 100%;
}
.flags__item {
  --white-or-black: oklch(from var(--flag-background) round(1.21 - L) 0 0);
  align-items: center;
  background-color: var(--flag-background, #fff);
  display: flex;
  height: auto;
  min-height: 2.2rem;
  padding: 0.3em 0.6em;
  font-size: 1.1rem;
  line-height: 1.2;
  border-radius: 4px 0 0 4px;
  text-wrap: balance;
  color: #000;
  color: var(--white-or-black);
  color: rgb(from color-mix(in srgb, var(--white-or-black), var(--bs-body-color)) calc(2 * r) calc(2 * g) calc(2 * b));
}
.flags__item[data-label-id="100"] {
  color: #eab000;
}
.flags__item[data-label-id="101"] {
  color: #00aea3;
}
.flags__item.label-gift {
  color: #00aea3;
}
.flags__icon {
  display: none;
}
.flags__text {
  display: block;
  font-weight: normal;
  font-variation-settings: "wght" 600;
  margin: 0;
}

.flag-static {
  display: inline-flex;
  align-items: center;
  padding: 0.2rem 0.5rem;
  min-height: 2.2rem;
  line-height: 1.2;
  font-size: 1.1rem;
  border-radius: 4px;
  width: max-content;
}
.flag-static__text {
  display: block;
  font-variation-settings: "wght" 600;
  font-weight: 600;
  margin: 0;
}
.flag-static--paleblue {
  background-color: #d8edf7;
  color: #000;
}

.nav-categories-container {
  font-size: 1.4rem;
}

.menu-container {
  position: relative;
}

.menu__link {
  text-decoration: none;
}
@media (max-width: 1199.98px) {
  .menu {
    display: flex;
    flex-direction: column;
    gap: 5px;
  }
  .menu--main > .menu__item > .menu__link .menu__link-text {
    color: #000;
  }
  .menu__item {
    background: #fff;
    border-radius: 8px;
    display: grid;
    grid-template-rows: auto 0fr;
    grid-template-columns: 30px 1fr 40px;
    align-content: start;
    gap: 0 1rem;
    transition: grid-template-rows 0.3s ease-in-out;
    padding-block: 8px;
  }
  .menu__item > .submenu {
    grid-column: 1/-1;
  }
  .menu__item.is-active {
    grid-template-rows: auto 1fr;
  }
  .menu__item.is-active > .menu__link .menu__icon {
    transform: rotate(180deg);
  }
  .menu__item--nested {
    background-color: #f4f4f4;
  }
  .menu__item--nested .menu__link-text {
    font-variation-settings: "wght" 400;
  }
  .menu__item:not(:has(> .menu__link .menu__link-img)) .menu__link-text {
    grid-column: 1/3;
  }
  .menu__icon {
    color: #000;
    grid-column: 3;
    height: 1.4rem;
    width: 1.4rem;
    justify-self: center;
    transform: rotate(0deg);
  }
  .menu__link {
    align-items: center;
    width: 100%;
    text-align: left;
    min-height: 3.44rem;
    text-transform: none;
    padding: 8px 1.5rem;
    margin-block: -7px;
    display: grid;
    grid-template-columns: inherit;
    gap: inherit;
    grid-column: 1/-1;
    grid-row: 1;
  }
  .menu__link:is(a) {
    grid-column: 1/-2;
  }
  .menu__link.desktop-nav-only {
    display: grid !important;
  }
  .menu__link.desktop-nav-only .menu__link-text {
    display: none;
  }
  .menu__link:where(:not(:last-child)) {
    padding-inline-end: 0.75rem;
  }
  .menu__link-img {
    display: block;
    grid-column: 1;
  }
  .menu__link-img img {
    max-height: 30px;
    margin: auto;
    mix-blend-mode: multiply;
  }
  .menu__link-text {
    grid-column: 2;
  }
  .menu__link--primary {
    font-weight: normal;
    font-variation-settings: "wght" 600;
  }
  .nav-pages .menu__link--primary {
    font-variation-settings: "wght" 400;
  }
  .menu__link--secondary {
    font-weight: normal;
    font-variation-settings: "wght" 400;
  }
  .menu--nested {
    padding: 1rem 1.5rem;
  }
  .menu--nested .menu--nested {
    gap: 0;
    padding-inline: 0;
  }
}
@media (min-width: 1200px) {
  .menu--main {
    overflow: scroll;
    overflow: -moz-scrollbars-none; /* Firefox */
    -ms-overflow-style: none; /* IE and Edge */
    scrollbar-width: none; /* Firefox */
    /* Chrome, Safari and Opera */
    overflow-x: hidden;
    align-items: center;
    display: flex;
    height: 0rem;
    justify-content: space-between;
    margin: 0 -1rem;
  }
  .menu--main::-webkit-scrollbar {
    display: none;
  }
  .menu--main::after {
    background-color: #000;
    content: "";
    height: 0rem;
    right: 0;
    position: absolute;
    top: 14.5rem;
    width: 50vw;
    z-index: 0;
  }
  .menu--nested .menu__link:hover {
    color: #000;
  }
  .menu__item, .menu__link {
    height: 100%;
  }
  .menu__item {
    display: block;
    flex: 1 1 auto;
  }
  .menu__item--main:hover > .menu__link {
    background-color: #fff;
  }
  .menu__item--main > .menu__link {
    align-items: center;
    background-color: #000;
    display: flex;
    height: 100%;
    justify-content: center;
    padding: 0 1rem;
    position: relative;
    text-transform: uppercase;
    transition: background-color 0.15s linear;
    z-index: 110;
  }
  .menu__item--main > .menu__link--primary {
    font-weight: 700;
  }
  .menu__item--main > .menu__link--secondary {
    background-color: #000;
  }
  .menu__item--main > .menu__link.is-current {
    background-color: #000;
    color: #fff;
  }
  .menu__item--main > .menu__link .menu__link-text {
    z-index: 102;
  }
  .menu__link-text {
    text-align: left;
    line-height: 1.4;
  }
  .menu__link-img {
    width: 4rem;
    height: 4rem;
    display: none;
    left: 0;
    position: absolute;
    top: 0;
  }
  .menu__link-img picture,
  .menu__link-img img {
    width: 100%;
    height: 100%;
  }
  .menu__link-img picture {
    display: block;
  }
  .menu__link-img img {
    object-fit: contain;
    position: absolute;
  }
  .menu__icon {
    display: none;
  }
  .menu .submenu--main > .menu {
    display: grid;
    column-gap: 2rem;
    grid-template-columns: repeat(4, 1fr);
    grid-auto-rows: 20px;
  }
  .menu .submenu--main > .menu > .menu__item {
    padding: 1rem 0 1rem 22%;
    position: relative;
  }
  .menu .submenu--main > .menu > .menu__item > .menu__link {
    display: block;
    font-weight: 700;
    height: auto;
    text-transform: uppercase;
  }
  .menu .submenu--nested .menu__link {
    display: block;
    padding: 0.4em 0;
  }
}

.modal {
  --bs-modal-zindex: 1055;
  --bs-modal-width: 500px;
  --bs-modal-padding: 1rem;
  --bs-modal-margin: 0.5rem;
  --bs-modal-color: var(--bs-body-color);
  --bs-modal-bg: var(--bs-body-bg);
  --bs-modal-border-color: var(--bs-border-color-translucent);
  --bs-modal-border-width: var(--bs-border-width);
  --bs-modal-border-radius: var(--bs-border-radius-lg);
  --bs-modal-box-shadow: var(--bs-box-shadow-sm);
  --bs-modal-inner-border-radius: calc(var(--bs-border-radius-lg) - (var(--bs-border-width)));
  --bs-modal-header-padding-x: 1rem;
  --bs-modal-header-padding-y: 1rem;
  --bs-modal-header-padding: 1rem 1rem;
  --bs-modal-header-border-color: var(--bs-border-color);
  --bs-modal-header-border-width: var(--bs-border-width);
  --bs-modal-title-line-height: 1.6;
  --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 {
  transform: translate(0, -50px);
}
.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);
  outline: 0;
}

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

.modal-header {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  padding: var(--bs-modal-header-padding);
  border-bottom: var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);
}
.modal-header .btn-close {
  padding: calc(var(--bs-modal-header-padding-y) * 0.5) calc(var(--bs-modal-header-padding-x) * 0.5);
  margin-top: calc(-0.5 * var(--bs-modal-header-padding-y));
  margin-right: calc(-0.5 * var(--bs-modal-header-padding-x));
  margin-bottom: calc(-0.5 * var(--bs-modal-header-padding-y));
  margin-left: 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);
}
.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: var(--bs-box-shadow);
  }
  .modal-dialog {
    max-width: var(--bs-modal-width);
    margin-right: auto;
    margin-left: auto;
  }
  .modal-sm {
    --bs-modal-width: 300px;
  }
}
@media (min-width: 992px) {
  .modal-lg,
  .modal-xl {
    --bs-modal-width: 800px;
  }
}
@media (min-width: 1200px) {
  .modal-xl {
    --bs-modal-width: 1140px;
  }
}
.modal-fullscreen {
  width: 100vw;
  max-width: none;
  height: 100%;
  margin: 0;
}
.modal-fullscreen .modal-content {
  height: 100%;
  border: 0;
}
.modal-fullscreen .modal-body {
  overflow-y: auto;
}

@media (max-width: 359.98px) {
  .modal-fullscreen-ms-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-ms-down .modal-content {
    height: 100%;
    border: 0;
  }
  .modal-fullscreen-ms-down .modal-body {
    overflow-y: auto;
  }
}
@media (max-width: 479.98px) {
  .modal-fullscreen-s-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-s-down .modal-content {
    height: 100%;
    border: 0;
  }
  .modal-fullscreen-s-down .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;
  }
  .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;
  }
  .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;
  }
  .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;
  }
  .modal-fullscreen-xl-down .modal-body {
    overflow-y: auto;
  }
}
@media (max-width: 1365.98px) {
  .modal-fullscreen-xxl-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-xxl-down .modal-content {
    height: 100%;
    border: 0;
  }
  .modal-fullscreen-xxl-down .modal-body {
    overflow-y: auto;
  }
}
@media (max-width: 1649.98px) {
  .modal-fullscreen-desktop-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-desktop-down .modal-content {
    height: 100%;
    border: 0;
  }
  .modal-fullscreen-desktop-down .modal-body {
    overflow-y: auto;
  }
}
@media (max-width: 1919.98px) {
  .modal-fullscreen-fullhd-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-fullhd-down .modal-content {
    height: 100%;
    border: 0;
  }
  .modal-fullscreen-fullhd-down .modal-body {
    overflow-y: auto;
  }
}
@media (max-width: 2499.98px) {
  .modal-fullscreen-2k-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-2k-down .modal-content {
    height: 100%;
    border: 0;
  }
  .modal-fullscreen-2k-down .modal-body {
    overflow-y: auto;
  }
}
.modal {
  --bs-modal-width: max-content;
  --bs-modal-border-radius: 0;
  --bs-modal-max-height: 98dvh;
  --bs-modal-width-narrow: 500px;
  --bs-modal-width-default: 850px;
  --bs-modal-width-wide: 1100px;
  --modal-padding-block: clamp(1rem, 4vw, 2.5rem);
  --modal-padding-inline: clamp(1rem, 5vw, 3rem);
  --bs-modal-padding: var(--modal-padding-block) var(--modal-padding-inline);
  --bs-modal-margin: 0;
  --bs-modal-header-font-size: 2rem;
  --modal-in-modal-backdrop-color: rgba(0, 0, 0, 0.5);
  pointer-events: none;
  top: 0 !important;
}
.modal .modal {
  background: var(--modal-in-modal-backdrop-color);
  pointer-events: all;
}
.modal .modal .modal-dialog {
  max-width: 90%;
}
.modal.hide:not(.in) {
  z-index: -1000;
}
.modal-content {
  border: none;
  overflow: hidden;
}
.modal-dialog {
  max-height: calc(var(--bs-modal-max-height) - (var(--bs-modal-margin) + var(--bs-modal-margin)));
  max-width: 98vw;
  width: var(--bs-modal-width-default);
  inset: auto;
  pointer-events: all;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr;
}
.modal.wide .modal-dialog {
  width: var(--bs-modal-width-wide);
}
.modal.narrow .modal-dialog {
  width: var(--bs-modal-width-narrow);
}
@media (min-width: 1px) {
  .modal.full-page-modal .modal-dialog {
    width: calc(100vw - 40px);
    height: calc(100vh - 40px);
    max-height: -moz-available;
    max-height: -webkit-fill-available;
    max-width: none;
  }
}
@media (min-width: 1px) and (max-width: 767px) {
  .modal.full-page-modal .modal-dialog {
    width: calc(100vw - 10px);
    height: calc(100vh - 10px);
  }
}
@media (min-width: 1px) {
  .modal.full-page-modal .modal-dialog .modal-body > iframe {
    width: 100%;
    height: 100%;
  }
  .modal.full-page-modal .modal-dialog .modal-body--full-height-iframe {
    padding-top: calc(var(--modal-padding-block) * 3);
  }
}
.modal.fade {
  display: flex !important;
}
.modal.fade:not(.in) {
  pointer-events: none;
}
.modal.fade > .modal-dialog {
  transition: transform 0.3s ease-out, opacity 0.3s ease-out;
  transform: translateY(-50%);
  opacity: 0;
  margin: auto;
}
.modal.fade.in > .modal-dialog {
  transform: translate(0, 0);
  opacity: 1;
}
.modal.fade.in > .modal-dialog .modal-close {
  display: block;
}
.modal-backdrop.fade {
  opacity: 0;
  transition: opacity 0.15s linear;
}
.modal-backdrop.fade.in {
  opacity: 0.5;
}
.modal-close {
  display: none;
  position: absolute;
  right: calc(var(--modal-padding-inline) - 8px);
  top: var(--modal-padding-block);
  transform: translateY(-3px);
  color: rgba(0, 0, 0, 0.7);
  margin: 0;
}
.modal-close:hover, .modal-close:focus {
  color: rgba(0, 0, 0, 0.9);
}
.modal-close__icon {
  filter: drop-shadow(0 0 1px #fff);
  width: 30px;
  height: 30px;
  margin: 0;
}
.modal .floating-spinner-container::after {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  background-color: #fff;
  z-index: -1;
  opacity: 0;
  transition: opacity ease-in 0.2s, z-index 0.2s 0.01s;
}
.modal .floating-spinner-container.spinner-show::after {
  opacity: 0.8;
  z-index: 2;
}
.modal-spinner__icon {
  height: 40px;
  width: 40px;
  display: block;
  position: absolute;
  inset: 0;
  margin: auto;
  opacity: 0;
  pointer-events: none;
  animation: modal-spinner 0.75s infinite linear;
  z-index: -1;
  transition: opacity 0.3s ease-in;
}
.modal-header {
  padding: var(--bs-modal-padding);
  padding-right: calc(var(--modal-padding-inline) + 30px);
  margin-bottom: 0;
  justify-content: start;
}
.modal-header:has(.modal-subheader) {
  flex-wrap: wrap;
}
.modal-subheader {
  width: 100%;
  font-size: 0.9em;
}
.modal-footer, .modal-content-footer {
  padding: var(--bs-modal-padding);
}
.modal-content-footer {
  padding-top: 0;
}
.modal-content-footer.center {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1rem;
}
.modal-body {
  min-height: calc(var(--modal-padding-block) * 2 + 24px);
}
.modal-header,
.modal .modal-body h1,
.modal .cookie-consent-header {
  font-size: var(--bs-modal-header-font-size);
}
.modal [id=ajaxcontent] .admin-edit {
  display: none !important;
}
.modal [id=ajaxcontent] .default-page,
.modal [id=ajaxcontent] .admin-edit + * {
  margin-top: 0;
}
.modal [id=ajaxcontent] .default-page__header {
  background: none;
  margin: 0;
  padding: 0 30px var(--modal-padding-block) 0;
}
.modal [id=ajaxcontent] .default-page__header h1 {
  margin: 0;
}
.modal [id=ajaxcontent] .default-page__content {
  margin: 0;
  padding: 0;
}
.modal .container {
  padding: 0;
}
.modal-has-scroll .modal-dialog {
  max-height: 100%;
}
.modal-has-scroll .modal-content {
  display: block;
  overflow: auto;
  padding-block-end: 2rem;
  overscroll-behavior: contain;
}

.modal-loading [type=submit] {
  pointer-events: none;
}

@keyframes modal-spinner {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(359deg);
  }
}
.modal {
  /* stylelint-disable-next-line length-zero-no-unit */
  --bs-modal-margin: 0px;
}
.modal-dialog, .modal-content,
.modal .modal {
  border-radius: 8px;
}
@media (min-width: 992px) {
  .modal-dialog, .modal-content,
  .modal .modal {
    border-radius: 8px;
  }
}
.modal .modal-body {
  overflow: auto;
  overflow: auto;
  overscroll-behavior: contain;
}
.modal .modal-body::-webkit-scrollbar {
  width: 4px;
}
.modal .modal-body::-webkit-scrollbar-track {
  background: transparent;
}
.modal .modal-body::-webkit-scrollbar-thumb {
  background: #000;
  border-radius: 2px;
}
.modal .modal-body::-webkit-scrollbar-thumb:hover {
  background: #000;
}
.modal .modal-close {
  top: 0;
  right: 0;
  transform: none;
  background-color: #d20000;
  width: 2.5rem;
  height: 2.5rem;
  border-bottom-left-radius: 12px;
  z-index: 1;
}
@media (min-width: 992px) {
  .modal .modal-close {
    width: 4.7rem;
    height: 4.7rem;
    border-bottom-left-radius: 20px;
  }
}
.modal .modal-close svg {
  width: 1.8rem;
  height: 1.8rem;
  color: #fff;
  margin-left: 0.35rem;
}
@media (min-width: 992px) {
  .modal .modal-close svg {
    width: 2.7rem;
    height: 2.7rem;
    margin-left: 1.1rem;
  }
}

.submenu {
  background: none;
}
@media (max-width: 1199.98px) {
  .submenu {
    bottom: 0;
    flex-direction: column;
    overflow: hidden;
    transition: transform 0.3s ease-in-out;
    width: 100%;
    z-index: 100;
    position: static;
    padding: 0;
  }
  .submenu.is-visible {
    transform: translateX(100%);
  }
  .submenu.is-active {
    overflow: auto;
  }
  .submenu .submenu {
    background-color: transparent;
  }
  .submenu__header {
    display: none;
  }
  .submenu__btn {
    align-items: start;
    display: grid;
    grid-template-columns: 1.8rem 1fr;
    gap: 1rem;
    font-weight: 700;
    text-align: left;
    text-transform: uppercase;
  }
  .submenu__link {
    align-items: center;
    display: flex;
    justify-content: space-between;
    padding: 0.4em;
    padding-right: 0;
    text-align: left;
    text-decoration: none;
    white-space: nowrap;
  }
  .submenu__link--back {
    width: auto;
  }
  .submenu__link--sm {
    padding: 0 0 0 1rem;
  }
  .submenu__icon {
    width: 1.8rem;
    height: 1.8rem;
    color: #000;
    margin-top: 0.15rem;
  }
  .submenu__icon--back {
    transform: rotate(90deg);
  }
  .submenu__icon--next {
    transform: rotate(-90deg);
  }
}
@media (min-width: 992px) {
  .submenu--main {
    max-width: calc(1024px - 1rem);
  }
}
@media (min-width: 1200px) {
  .submenu--main {
    max-width: calc(1140px - 1rem);
  }
}
@media (min-width: 1366px) {
  .submenu--main {
    max-width: calc(1685px - 1rem);
  }
}
@media (min-width: 1200px) {
  .submenu {
    overflow: auto;
    overscroll-behavior: auto;
    overflow-x: hidden;
  }
  .submenu::-webkit-scrollbar {
    width: 4px;
  }
  .submenu::-webkit-scrollbar-track {
    background: transparent;
  }
  .submenu::-webkit-scrollbar-thumb {
    background: #000;
    border-radius: 2px;
  }
  .submenu::-webkit-scrollbar-thumb:hover {
    background: #000;
  }
  .submenu::-webkit-scrollbar-thumb {
    background: transparent;
  }
  .submenu:hover::-webkit-scrollbar-thumb {
    background: #000;
  }
}
@media (min-width: 1200px) and (hover: none), (min-width: 1200px) and (pointer: coarse) {
  .submenu::-webkit-scrollbar-thumb {
    background: #000;
  }
}
@media (min-width: 1200px) {
  .submenu.submenu--main {
    background-color: #fff;
    display: block;
    overflow: auto;
    visibility: hidden;
    width: 100%;
    transform: none;
    height: calc(100% + 40px);
    max-width: 100%;
    padding: 20px;
    margin-block: -20px;
    position: static;
    grid-column: 3;
    grid-row: 1/50;
    align-self: start;
    box-shadow: none;
    z-index: -1;
    opacity: 1;
    transition: none;
  }
  .submenu.submenu--main::after {
    content: "";
    position: absolute;
    inset: 0 0 0 calc(var(--left-menu-width) + 30px);
    background-color: rgb(255, 255, 255);
    opacity: 1;
    transition: opacity 0.15s linear;
    -webkit-transform: translate3d(0, 0, 0);
  }
  .submenu.submenu--main.open {
    visibility: visible;
    z-index: 110;
  }
  .submenu.submenu--main.open::after {
    opacity: 0;
    pointer-events: none;
  }
  .submenu.submenu--main.open .menu__link-img {
    display: block;
  }
  .submenu.submenu--main > .menu {
    gap: 20px;
    grid-template-columns: repeat(auto-fill, minmax(min(350px, 100%), 1fr));
    grid-auto-rows: auto;
  }
  .submenu.submenu--main > .menu > .menu__item {
    border-radius: 10px;
    background-color: rgba(244, 244, 244, 0);
    box-shadow: 0 4px 20px 0 rgba(0, 0, 0, 0.0784313725);
    transition: background-color linear 0.15s, box-shadow linear 0.15s;
    grid-row: auto !important;
    overflow: hidden;
    padding-inline: 1rem;
    display: grid;
    grid-template-columns: minmax(0, 8.5rem) 1fr;
    grid-template-rows: auto 1fr;
    grid-auto-rows: auto;
    gap: 0 1rem;
  }
  .submenu.submenu--main > .menu > .menu__item:hover, .submenu.submenu--main > .menu > .menu__item:focus-within {
    background-color: #f4f4f4;
    box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.0784313725);
  }
  .submenu.submenu--main > .menu > .menu__item:has(.menu__link-img) {
    grid-template-columns: 8.5rem 1fr;
  }
  .submenu.submenu--main > .menu > .menu__item > .menu__link {
    display: grid;
    grid-template-columns: subgrid;
    grid-template-rows: subgrid;
    grid-auto-rows: auto;
    grid-row: 1/span 2;
    grid-column: 1/span 2;
  }
  .submenu.submenu--main > .menu > .menu__item > .menu__link .menu__link-text {
    text-align: start;
    grid-row: 1;
    grid-column: 2;
    font-size: 1.8rem;
    font-variation-settings: "wght" 600;
    text-transform: none;
  }
  .submenu.submenu--main > .menu > .menu__item > .menu__link .menu__link-img {
    display: block;
    position: static;
    width: 7.5rem;
    height: 7.5rem;
    grid-row: 1/span 2;
    grid-column: 1;
    /* stylelint-disable-next-line max-nesting-depth */
  }
  .submenu.submenu--main > .menu > .menu__item > .menu__link .menu__link-img img {
    position: static;
    mix-blend-mode: darken;
  }
  .submenu > .menu .submenu--nested {
    margin-block-start: 0;
    padding-block-start: 0.5rem;
    grid-row: 2;
    grid-column: 2;
  }
  .submenu.open .menu .submenu--nested .menu__link-img {
    display: none;
  }
  .submenu--nested {
    margin-top: 0.4em;
  }
  .submenu--nested > .menu--nested {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    color: #000;
  }
  .submenu--nested .menu--nested > .menu__item:not(:last-child) {
    display: inline;
    white-space: nowrap;
  }
  .submenu--nested .menu--nested > .menu__item:not(:last-child)::after {
    content: ", ";
    margin-inline: -0.3em;
  }
  .submenu--nested .menu__item {
    flex: none;
    max-width: max-content;
    height: auto;
  }
  .submenu--nested .menu__link:where(:not(.mobile-nav-only)) {
    padding: 0;
    height: auto;
    font-size: 1.4rem;
    font-weight: normal;
    font-variation-settings: "wght" 600;
    line-height: 1.5;
    color: #000;
    display: inline !important;
  }
  .submenu--nested .menu__link-text {
    line-height: inherit;
  }
  .submenu--nested .menu__link:hover, .submenu--nested .menu__link:focus, .submenu--nested .menu__link:active {
    text-decoration: underline;
  }
  .submenu .submenu .submenu {
    display: none;
  }
}

.categories-section {
  background-color: rgba(255, 255, 255, 0);
  color: #000;
  padding-top: 0;
}
.categories-section--b {
  margin: 0;
  padding: 0;
}
@media (min-width: 1366px) {
  .categories-section--b {
    margin: 0;
    padding: 0;
  }
}
.categories-section__list {
  display: grid;
  gap: 1rem;
}
.categories-section--b .categories-section__list, .categories-section__list {
  grid-template-columns: repeat(auto-fill, minmax(25rem, 1fr));
}
@media (min-width: 1366px) {
  .categories-section--b .categories-section__list, .categories-section__list {
    gap: 3rem;
  }
}
@media (max-width: 767.98px) {
  .categories-section--b .categories-section__list, .categories-section__list {
    grid-template-columns: repeat(auto-fill, minmax(15.5rem, 1fr));
  }
}

.category-item {
  border-radius: 8px;
  background-color: rgba(244, 244, 244, 0);
  box-shadow: 0 4px 20px 0 rgba(0, 0, 0, 0.0784313725);
  transition: background-color linear 0.15s, box-shadow linear 0.15s;
}
.category-item:hover, .category-item:focus-within {
  background-color: #f4f4f4;
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.0784313725);
}
@media (max-width: 767.98px) {
  .category-item {
    box-shadow: none !important;
    background-color: #f4f4f4;
    border: 1px solid transparent;
    color: #000;
    transition: none;
    overflow: hidden;
    position: relative;
  }
  .category-item::before {
    content: "";
    display: block;
    position: absolute;
    inset: 0;
    border: 1px solid #000;
    border-radius: 8px;
    opacity: 0;
    transition: opacity linear 0.15s;
    z-index: 1;
    pointer-events: none;
  }
  .category-item:hover, .category-item:focus-within {
    background-color: #f4f4f4;
  }
  .category-item:hover::before, .category-item:focus-within::before {
    opacity: 1;
  }
  .category-item a {
    color: inherit !important;
    outline: none !important;
    padding: 0.7rem 1rem;
    min-height: 4.4rem;
    font-size: 1.3rem;
    font-variation-settings: "wght" 600;
    align-items: stretch;
  }
}
.category-item--sm .category-item__img {
  width: 3em;
  height: 3em;
}
.category-item--sm .category-item__name {
  font-weight: normal;
  font-variation-settings: "wght" 600;
}
.category-item--sm .category-item__link:hover {
  color: #000;
}
.category-item__link {
  align-items: center;
  display: flex;
  gap: 1rem;
  height: 100%;
  padding: 1.4rem;
  text-decoration: none;
  width: 100%;
}
.category-item__name {
  flex: 1;
  text-transform: none;
  font-weight: normal;
  font-variation-settings: "wght" 700;
}
@media (max-width: 767.98px) {
  .category-item__name {
    align-self: center;
  }
}
.category-item__img {
  width: 4em;
  height: 4em;
  position: relative;
}
.category-item__img img {
  height: 100%;
  object-fit: contain;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
@media (max-width: 767.98px) {
  .category-item__img {
    background-color: #fff;
    margin: -0.7rem 0 -0.7rem -1rem;
    display: grid;
    place-items: center;
  }
  .category-item__img picture {
    height: 85%;
    width: 85%;
    display: grid;
    position: relative;
  }
  .categories-section .category-item__img {
    height: auto;
    width: 4.4rem;
  }
  .categories-section .category-item__img img {
    height: 100%;
    width: 100%;
    max-width: 110px;
    max-height: 110px;
    object-fit: contain;
    position: absolute;
    inset: 0;
    margin: auto;
  }
}
.category-item__btn {
  display: none;
}

@media (min-width: 768px) {
  .nav-tabs.nav-tabs {
    border-radius: 8px;
    background-color: #f4f4f4;
    padding-block-start: 0;
    font-size: inherit;
    font-weight: normal;
    font-variation-settings: "wght" 700;
  }
  .nav-tabs.nav-tabs > li {
    flex: 0 1 20%;
    max-width: none;
    min-width: max-content;
    color: #000;
  }
  .nav-tabs.nav-tabs > li a {
    border-radius: 8px;
    height: auto;
    min-height: 7rem;
    text-decoration: none;
    background-color: rgba(244, 244, 244, 0);
    transition: background-color 0.15s linear;
    font-weight: inherit;
    font-variation-settings: "wght" inherit;
  }
  .nav-tabs.nav-tabs > li a:link, .nav-tabs.nav-tabs > li a:visited, .nav-tabs.nav-tabs > li a:hover, .nav-tabs.nav-tabs > li a:active, .nav-tabs.nav-tabs > li a:focus {
    color: inherit;
  }
  .nav-tabs.nav-tabs > li a:hover, .nav-tabs.nav-tabs > li a:active, .nav-tabs.nav-tabs > li a:focus {
    background-color: #f4f4f4;
    font-weight: inherit;
    font-variation-settings: "wght" inherit;
  }
  .nav-tabs.nav-tabs > li.active a {
    background-color: #fff;
    color: inherit;
    font-weight: inherit;
    font-variation-settings: "wght" inherit;
    border: 1px solid #000;
  }
}

.tabs__section-heading--indicator-icon {
  stroke-width: 0;
  margin-inline-end: 1rem;
}
.tabs__section-heading--indicator-icon.files {
  stroke-width: 0.4;
}
@media (min-width: 768px) {
  .tabs__section-inner-content:not(.specificity-fix) {
    padding-block-start: 6rem;
  }
}

.admin-edit {
  display: block;
  position: fixed;
  bottom: min(30rem, 20vh);
  right: 0;
  transform: rotate(-90deg) translateY(calc(50% + 0.4rem));
  z-index: 5;
}
.admin-edit a {
  background-color: #000;
  color: #fff;
  display: block;
  font-weight: 400;
  padding: 0.2em 0.6em;
  text-decoration: none;
  text-transform: lowercase;
  transition: color 0.15s linear, background-color 0.15s linear;
}
.admin-edit a:hover, .admin-edit a:focus, .admin-edit a:active {
  background-color: #ff4337;
  color: #fff;
}

.more {
  align-items: center;
  display: inline-flex;
  text-decoration: underline;
}
.more__icon {
  width: 0.8rem;
  height: 0.8rem;
  color: #000;
  stroke-width: 3;
  transform: translateX(0.4rem);
  transition: transform 0.15s linear;
}
@media (hover: hover) {
  .more:hover .more__icon {
    transform: translateX(0.8rem);
  }
}

.more.btn {
  text-decoration: none;
}
.more.btn:hover, .more.btn:focus, .more.btn:active {
  text-decoration: none;
}
.more.btn .more__text {
  line-height: 1.2;
}

:root {
  --minimum-card-width: 280px;
  --gap-size: 1rem;
  --product-card-grid-rows: 27rem auto auto auto auto auto auto auto auto auto auto;
}
@media (min-width: 768px) {
  :root {
    --gap-size: 2rem;
  }
}
@media (min-width: 1366px) {
  :root {
    --gap-size: 4rem;
  }
}

.products-section {
  container-name: products-section;
  container-type: inline-size;
  width: 100%;
}
.products-section__typo {
  text-align: center;
}
.products-section__title {
  font-weight: normal;
  font-variation-settings: "wght" 700;
}
.products-section__list {
  display: grid;
  gap: 0 var(--gap-size);
  grid-template-columns: repeat(auto-fill, minmax(min(var(--minimum-card-width), 100%), 1fr));
}
@container products-section (width > 569.999px) {
  .products-section__list {
    grid-auto-rows: var(--product-card-grid-rows);
  }
}
.products-section__list--plus-item {
  display: grid;
  gap: var(--gap-size);
}
@media (min-width: 576px) {
  .products-section__list--plus-item {
    --minimum-card-width: clamp(168px, 16vw, 317px);
  }
}
@media (min-width: 1366px) {
  .products-section__list--plus-item {
    --minimum-card-width: clamp(168px, 19vw, 317px);
  }
}
@media (max-width: 991.98px) {
  .products-section__list--plus-item {
    --gap-size: 2rem;
  }
}
@media (min-width: 992px) {
  .products-section__list--plus-item {
    grid-template-columns: 1fr var(--minimum-card-width);
  }
}
@container products-section (width < 374px) {
  .products-section__list {
    --gap-size: 5rem;
  }
}

.producers-section__content {
  text-align: center;
}
.producers-section__title {
  font-weight: normal;
  font-variation-settings: "wght" 700;
}
.producers-section__slider .embla__container {
  justify-content: space-between;
  gap: 20px;
}
.producers-section__slider .embla__slide {
  flex: 0 0 calc(clamp(1.5rem, 3vw, 4.95rem) + 100px);
}
.producers-section__slider .embla__buttons {
  background: none;
  left: 0;
  bottom: 50%;
  transform: translateY(50%);
  justify-content: space-between;
  width: 100%;
  pointer-events: none;
}
.producers-section__slider .embla__buttons:has(.embla__button--prev:disabled):has(.embla__button--next:disabled) {
  display: none;
}
@media (max-width: 767.98px) {
  .producers-section__slider .embla__buttons {
    display: none;
  }
}
.producers-section__slider .embla__button {
  background-color: #fff;
  border-radius: 8px;
  box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.08);
  width: 50px;
  height: 36px;
  pointer-events: all;
  padding-inline: 14px;
  display: block;
}
.producers-section__slider .embla__button svg {
  stroke-width: 0;
}

.producer-item {
  height: 6rem;
  width: 100%;
}
@media (max-width: 767.98px) {
  .producer-item {
    height: auto;
    width: auto;
  }
}
.producer-item__img {
  max-width: 100px;
}
.producer-item__name {
  font-size: 14px;
  white-space: nowrap;
}
.producer-item__link {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: center;
  position: relative;
  text-decoration: none;
  width: 100%;
}
.producer-item__link::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  -webkit-backdrop-filter: grayscale(1);
  backdrop-filter: grayscale(1);
  opacity: 1;
  transition: opacity ease-out 0.15s;
}
.producer-item__link img {
  height: 100%;
  object-fit: scale-down;
  width: 100%;
}
@media (min-width: 768px) {
  .producer-item__link img {
    position: absolute;
    left: 0;
    top: 0;
  }
}
@media (pointer: fine) {
  .producer-item__link:link .producer-item__img, .producer-item__link:visited .producer-item__img {
    opacity: 0.5;
    transition: opacity ease-out 0.15s;
  }
  .producer-item__link:hover::after, .producer-item__link:focus::after, .producer-item__link:active::after {
    opacity: 0;
  }
  .producer-item__link:hover .producer-item__img, .producer-item__link:focus .producer-item__img, .producer-item__link:active .producer-item__img {
    opacity: 1;
  }
  .producer-item__link:hover .producer-item__name, .producer-item__link:focus .producer-item__name, .producer-item__link:active .producer-item__name {
    text-decoration: underline;
  }
}

.posts-section {
  overflow: hidden;
}
@media (min-width: 1366px) {
  .posts-section__typo {
    display: flex;
    flex-direction: row;
    justify-content: initial;
  }
}
.posts-section__title {
  margin-bottom: 3rem;
  text-align: center;
  font-weight: normal;
  font-variation-settings: "wght" 700;
}
@media (min-width: 992px) {
  .posts-section__title {
    margin-block-end: 5rem;
  }
}
.posts-section__more {
  margin-block-start: 0;
  text-align: center;
}
.posts-section__more .more.btn {
  height: 4.2rem;
}
.posts-section__more .more__icon {
  display: none;
}
@media (max-width: 767.98px) {
  .posts-section .posts-slider .embla__viewport {
    width: 260px;
    margin-inline: auto;
    overflow: hidden;
  }
}
@media (min-width: 768px) {
  .posts-section .posts-slider .embla__container {
    grid-template-columns: repeat(4, 1fr);
  }
}

.post-item {
  margin: auto;
  max-width: 40rem;
  width: 100%;
  display: flex;
  flex-direction: column;
}
.post-item__header {
  align-items: flex-end;
  display: flex;
  position: relative;
  width: 100%;
  order: -2;
}
.post-item__header--has-img {
  height: 18rem;
}
.post-item__img {
  display: block;
  height: 100%;
  position: absolute;
  width: 100%;
  border-radius: 8px;
}
.post-item__img img {
  height: 100%;
  left: 0;
  object-fit: cover;
  position: absolute;
  top: 0;
  width: 100%;
}
.post-item__headline {
  font-size: 1.6rem;
  font-weight: normal;
  font-variation-settings: "wght" 500;
  margin: 1.6rem 0 1.4rem;
}
@media (min-width: 1366px) {
  .post-item__headline {
    font-weight: normal;
  }
}
.post-item__link {
  display: block;
  text-decoration: none;
}
.post-item .post-item__date {
  order: -1;
  margin: 1.6rem 0 0;
  font-size: 1.4rem;
  opacity: 0.7;
}
.post-item__perex {
  margin-top: 0.8em;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 6;
  overflow: hidden;
  font-size: 1.4rem;
  opacity: 0.7;
  margin-block-start: 0;
}
.post-item__perex * + * {
  margin-top: 0.6em;
}
.post-item__perex img {
  height: auto;
  max-width: 100%;
}
.post-item__header--has-img ~ .post-item__perex {
  -webkit-line-clamp: 3;
}
@media (hover: hover) {
  .post-item__img {
    overflow: hidden;
  }
  .post-item__img img {
    transition: transform 0.8s ease;
    will-change: transform;
  }
  .post-item__img:hover img {
    transform: scale(1.1);
  }
  .post-item__link {
    text-decoration: underline;
    text-decoration-color: transparent;
    transition: text-decoration-color 0.15s linear;
  }
  .post-item__link:hover {
    text-decoration-color: currentColor;
  }
}
@media (min-width: 1200px) {
  .post-item__header--has-img {
    height: 24rem;
  }
}
@media (min-width: 1366px) {
  .post-item__header--has-img {
    height: 27rem;
  }
}

.benefits-section {
  background-color: initial;
  color: #000;
  padding-block: 2rem 6rem;
}
.benefits-section__list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(200px, 100%), 1fr));
  gap: clamp(3rem, 5vw, 6rem);
}

.benefit-item {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding: 0;
  gap: clamp(0.5rem, 2vw, 2rem);
  text-align: center;
  width: auto;
}
.benefit-item p {
  margin: 0;
  font-size: 1.4rem;
  font-variation-settings: "wght" 400;
  text-wrap: balance;
  word-break: normal;
}
.benefit-item__name {
  font-size: 2rem;
  font-variation-settings: "wght" 700;
  text-wrap: balance;
  word-break: normal;
}
.benefit-item__name + p {
  display: contents;
}
.benefit-item__icon {
  width: 5.5rem;
  height: 5.5rem;
  stroke: none;
}
.benefit-item img {
  height: 70px;
  width: auto;
  order: -1;
}
@media (min-width: 768px) {
  .benefit-item {
    max-width: none;
  }
}

.breadcrumbs {
  --overflow-background-color: rgb(255, 255, 255, 1);
  font-size: clamp(1rem, 0.7286rem + 0.5654vw, 1.4rem);
  display: flex;
  flex-wrap: wrap;
  scrollbar-color: transparent;
  scrollbar-width: none;
  position: relative;
  margin-inline: calc(var(--bs-gutter-x) * -0.5);
  width: calc(100% + var(--bs-gutter-x));
  max-width: max-content !important;
  overflow: auto;
  padding: 0 calc(var(--bs-gutter-x) * 0.5);
  direction: rtl;
}
.breadcrumbs::-webkit-scrollbar {
  height: 0;
}
.breadcrumbs::-webkit-scrollbar-thumb {
  background-color: transparent;
  border: none;
  border-radius: 0;
}
.breadcrumbs::-webkit-scrollbar-track {
  background-color: none;
  border: none;
}
.breadcrumbs-section {
  padding: 0.9em 0;
  background: none;
  overflow: hidden;
  position: relative;
}
@media (min-width: 1366px) {
  .breadcrumbs-section {
    padding: 1.3em 0;
  }
}
.breadcrumbs-section::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100%;
  pointer-events: none;
  background-image: linear-gradient(to left, rgb(255, 255, 255) 0, rgba(255, 255, 255, 0) 28px, rgba(255, 255, 255, 0) calc(100% - 28px), rgb(255, 255, 255) 100%);
  background-repeat: no-repeat;
  background-position: center center;
  background-attachment: fixed;
}
@media (max-width: 767.98px) {
  .breadcrumbs-section::after {
    background-image: linear-gradient(to left, rgb(255, 255, 255) 0, rgba(255, 255, 255, 0) 18px, rgba(255, 255, 255, 0) calc(100% - 18px), rgb(255, 255, 255) 100%);
  }
}
.breadcrumbs span {
  word-break: normal;
  white-space: nowrap;
}
.breadcrumbs__item {
  align-items: center;
  display: flex;
  direction: ltr;
  order: calc(var(--order) * -1);
}
.breadcrumbs__item:last-of-type {
  color: #747474;
}
.breadcrumbs__item:first-child {
  margin-left: calc(var(--bs-gutter-x) * 0.5);
}
.breadcrumbs__item:last-child {
  margin-right: calc(var(--bs-gutter-x) * 0.5);
}
.breadcrumbs__link, .breadcrumbs__item > span {
  padding: 0.4rem 0;
  display: flex;
  gap: 0 0.75rem;
}
.breadcrumbs__link {
  text-decoration: none;
}
@media (hover: hover) {
  .breadcrumbs__link:hover {
    text-decoration: underline;
  }
}
@media (hover: hover) and (max-width: 767.98px) {
  .breadcrumbs__link:hover .d-md-none {
    text-decoration: underline;
  }
}
.breadcrumbs__house {
  display: block;
  stroke-width: 0;
  height: auto;
  width: auto;
  align-self: baseline;
}
@media (max-width: 767.98px) {
  .breadcrumbs__house {
    display: block;
    height: 12px;
    align-self: start;
    position: relative;
    top: 2px;
  }
}
.breadcrumbs__arrow {
  display: block;
  margin: 0 1.4rem;
  stroke-width: 0;
  height: auto;
  width: auto;
}
@media (max-width: 767.98px) {
  .breadcrumbs__arrow:not(.specificity-fix) {
    display: block;
    height: 6px;
    margin-inline: 1rem;
  }
  .breadcrumbs__arrow--back {
    transform: rotate(180deg);
    height: 0.8rem;
    width: 0.8rem;
    margin-left: 0;
  }
}
@media (max-width: 767.98px) {
  .breadcrumbs .d-md-none {
    display: inline-flex;
    align-items: center;
    vertical-align: bottom;
  }
  .breadcrumbs:where(:not(:has(.breadcrumb-product))) .breadcrumbs__item {
    display: none;
  }
  .breadcrumbs:where(:not(:has(.breadcrumb-product))) .breadcrumbs__item:nth-last-child(2) {
    display: flex;
  }
  .breadcrumbs:where(:has(.breadcrumb-product)) .breadcrumbs__item {
    display: none;
  }
  .breadcrumbs:where(:has(.breadcrumb-product)) .breadcrumbs__item:nth-last-child(3) {
    display: flex;
  }
}
@media (hover: none), (pointer: coarse), (max-width: 768px) {
  .breadcrumbs {
    flex-wrap: nowrap;
    overflow: auto;
    max-width: 100%;
  }
  .breadcrumbs:where(:not(:has(.breadcrumb-product))) .breadcrumbs__item {
    display: flex;
  }
}

.promo img {
  max-width: 100%;
}

.dropdown-container {
  position: relative;
  width: 100%;
}

.dropdown {
  background-color: #fff;
  display: none;
  opacity: 0;
  padding-bottom: 1rem;
  padding-top: 1rem;
  position: absolute;
  right: 0;
  top: 100%;
  transition: opacity 0s linear;
  z-index: 130;
}
.dropdown.is-active {
  display: block;
}
.dropdown.is-visible {
  box-shadow: 0 0 10px 3px rgba(0, 0, 0, 0.05);
  opacity: 1;
  transition: opacity 0.15s linear;
}

.dropdown-btn {
  align-items: center;
  display: flex;
  justify-content: space-between;
  padding: 0.5em 0;
}
.dropdown-btn__icon {
  width: 0.9em;
  height: 0.9em;
  margin-left: 0.5em;
  stroke-width: 1;
}

.sort {
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: 100%;
}
.sort__row {
  align-items: center;
  display: flex;
  height: 3em;
  justify-content: space-between;
  width: 100%;
}
.sort__col--found-products {
  color: #747474;
}
@media (max-width: 767.98px) {
  .sort__row + .sort__row {
    border-top: 1px solid #dedede;
  }
}
@media (min-width: 768px) {
  .sort {
    align-items: center;
    flex-direction: row;
    justify-content: space-between;
  }
  .sort::after {
    content: "";
    flex: 0 0 100%;
    height: 1px;
    background-color: #dedede;
    margin-top: -20px;
  }
  .sort__row {
    justify-content: flex-start;
    width: auto;
  }
  .sort__row:nth-child(2) {
    justify-content: flex-end;
  }
  .sort__col + .sort__col {
    border-left: 1px solid #dedede;
    margin-left: 1rem;
    padding-left: 1rem;
  }
}

@media (max-width: 991.98px) {
  .sort__row {
    height: auto;
  }
}

.product-availability {
  color: #747474;
  font-variation-settings: "wght" 500;
  text-transform: none;
  text-wrap: balance;
  text-decoration: none !important;
}
.product-availability strong {
  font-weight: normal;
}

.stock--available {
  color: #058802;
}
.stock--available-extra {
  text-decoration: none !important;
  color: #000;
  text-transform: none;
  text-wrap: balance;
  vertical-align: text-top;
}
.stock--available-extra::before {
  content: "+";
  padding-inline: 0.5ch;
}
.stock--available-extra.js-branches-availability {
  cursor: pointer;
  padding: 0.5rem;
  margin: -0.5rem;
}
.stock--available-extra.js-branches-availability:hover {
  color: #000;
}
@media (min-width: 992px) {
  .stock--available-extra.js-branches-availability {
    padding: 0;
    margin: 0;
  }
}
.stock--unavailable {
  color: #e26969;
}
.stock--preorder {
  color: #eab000;
}

.delivery-date__ready-for-pickup {
  color: #058802;
}
.delivery-date__unavailable, .delivery-date__unknown {
  color: #e26969;
}

.modal.product-delivery-dates-modal .modal-body {
  overflow: auto;
}
.modal.product-delivery-dates-modal li dl {
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  align-items: center;
  border: 1px dashed transparent;
  border-bottom-color: color-mix(in srgb, #008dd2 30%, transparent);
  margin-bottom: 1rem;
  padding-bottom: 1rem;
}
.modal.product-delivery-dates-modal li dl dt {
  font-variation-settings: "wght" 700;
  font-weight: normal;
  text-wrap: balance;
}
.modal.product-delivery-dates-modal li dl dd {
  margin: 0;
  font-variation-settings: "wght" 500;
  font-weight: normal;
  text-align: right;
  text-wrap: balance;
}
.modal.product-delivery-dates-modal li:last-child dl {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom-color: transparent;
}

.results {
  align-items: center;
  display: flex;
  flex-direction: column;
  margin: 3rem 0;
}
@media (max-width: 991.98px) {
  .results {
    margin-block-start: 0;
  }
}
.results__footer {
  margin-top: 2rem;
  width: 100%;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2rem 1rem;
}
@media (min-width: 1366px) {
  .results__footer {
    grid-template-columns: 1fr auto 1fr;
  }
}
@media (hover: hover) and (min-width: 992px) {
  .results__footer {
    margin-top: 8rem;
  }
}
.results__footer-counter {
  display: inline-block;
  grid-row: 2;
  grid-column: 1/span 2;
  text-align: center;
  font-size: 1.2rem;
}
.results__footer-counter-item::before {
  content: attr(data-count);
}
@media (min-width: 768px) {
  .results__footer-counter {
    grid-row: 1;
    font-size: 1.6rem;
    grid-column: 1;
    text-align: left;
  }
}
.results__footer-cell {
  display: flex;
  justify-content: center;
}
@media (min-width: 1366px) {
  .results__footer-cell {
    align-items: center;
    display: flex;
  }
  .results__footer-cell--left {
    grid-column: 1/2;
  }
  .results__footer-cell--mid {
    justify-content: center;
    grid-column: 2/3;
  }
  .results__footer-cell--right {
    justify-content: flex-end;
    grid-column: 3/4;
  }
}
@media (min-width: 768px) {
  .results__footer {
    margin-top: 8rem;
    grid-template-columns: 1fr 1fr 1fr;
    align-items: center;
  }
}
.results__footer-cell--right {
  justify-content: end;
}
@media (max-width: 767.98px) {
  .results__footer-cell--mid {
    justify-content: start;
  }
}

.pagination {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin-top: 0;
}
.pagination__item + .pagination__item {
  margin: 0;
}
.pagination__item--info {
  order: -1;
  margin-inline-end: 1rem !important;
  font-size: 1.2rem;
}
.pagination__item--info input {
  appearance: textfield;
  width: 3rem;
  height: 3.2rem;
  border: 1px solid #dedede;
  border-radius: 8px;
  text-align: center;
}
.pagination__item--info input::-webkit-outer-spin-button, .pagination__item--info input::-webkit-inner-spin-button {
  appearance: none;
  margin: 0;
}
.pagination__item--info input.error {
  border-color: #e26969;
}
@media (min-width: 768px) {
  .pagination__item--info {
    font-size: 1.6rem;
  }
  .pagination__item--info input {
    width: 4.4rem;
    height: 4.6rem;
  }
}
.pagination__item--action:is(:first-child) .pagination__nav {
  border-radius: 8px 0 0 8px;
}
.pagination__item--action:is(:last-child) .pagination__nav {
  border-radius: 0 8px 8px 0;
}
.pagination__item--action .pagination__nav:is(a) {
  background-color: #000;
  color: #fff;
}
.pagination__item--action .pagination__nav:is(a):hover, .pagination__item--action .pagination__nav:is(a):focus, .pagination__item--action .pagination__nav:is(a):active {
  background-color: #ff4337;
}
.pagination__item--action .pagination__nav:is(span) {
  background-color: #f4f4f4;
  color: #fff;
}
.pagination__nav {
  align-items: center;
  background-color: #f3f3f3;
  color: #000;
  display: flex;
  justify-content: center;
  width: 3rem;
  height: 3.2rem;
}
@media (min-width: 768px) {
  .pagination__nav {
    width: 4.5rem;
    height: 4rem;
  }
}
.pagination__icon {
  display: block;
  width: 1rem;
  height: auto;
  stroke-width: 0;
}
.pagination__icon--prev {
  transform: none;
}
.pagination__icon--next {
  transform: scale(-1);
}
@media (min-width: 768px) {
  .pagination__icon {
    width: 2rem;
  }
}

.dropdown-list__item + .dropdown-list__item {
  margin-top: 0.2em;
}
.dropdown-list__link {
  display: block;
  padding: 0.3em 0;
  text-decoration: none;
}
.dropdown-list__link.is-active {
  font-weight: 700;
}

.comma-list > li {
  display: inline;
  padding: 0;
}
.comma-list > li::after {
  content: ", ";
  color: inherit;
  text-decoration: none;
  margin-left: -0.3em;
}
.comma-list > li:last-child::after {
  display: none;
}

.pipe-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0 0.4rem;
}
.pipe-list > * {
  display: flex;
  gap: 0 0.4rem;
}
.pipe-list > *:not(:first-child:last-child):not(:last-child)::after {
  content: "|";
  color: #b1b1b1;
  font-size: 0.8em;
  align-self: center;
}

.checkbox {
  display: grid;
  gap: 0 0.75em;
  position: relative;
  grid-template-columns: 18px 1fr;
}
.checkbox--inline {
  display: inline-grid;
  vertical-align: text-bottom;
}
.checkbox--inline + * {
  margin-block: 0;
  vertical-align: top;
  padding-top: 1px;
}
.checkbox:hover .checkbox__input:where(:not([readonly]):not([disabled])),
.checkbox:hover .radio__input:where(:not([readonly]):not([disabled])) {
  border-color: #000;
}
.checkbox:focus-within__input,
.checkbox:focus-within .radio__input {
  border-color: #000;
}
.checkbox__input,
.checkbox .radio__input {
  --input-bg-color: var(--input-color, #fff);
  --input-border-color: var(--input-color, color-mix(in srgb, #000 30%, #fff));
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  grid-column: 1;
  grid-row: 1;
  position: relative;
  height: 18px;
  width: 18px;
  background: var(--input-bg-color);
  border: 1px solid var(--input-border-color);
  box-shadow: none;
  border-radius: 4px;
}
.checkbox__input ~ *,
.checkbox .radio__input ~ * {
  grid-column: 2;
  align-self: center;
}
.checkbox__input:checked:not(:disabled),
.checkbox .radio__input:checked:not(:disabled) {
  border-color: #000;
  box-shadow: none;
}
.checkbox__input:checked:not(:disabled)::after,
.checkbox .radio__input:checked:not(:disabled)::after {
  display: block;
}
.checkbox__input:disabled,
.checkbox .radio__input:disabled {
  box-shadow: none;
  background: #f3f3f3;
}
.checkbox__input:active:where(:not(:disabled)),
.checkbox .radio__input:active:where(:not(:disabled)) {
  border-color: #000;
}
.checkbox__input:where(:not(:disabled)),
.checkbox__input:where(:not(:disabled)) ~ .checkbox__text,
.checkbox .radio__input:where(:not(:disabled)),
.checkbox .radio__input:where(:not(:disabled)) ~ .checkbox__text {
  cursor: pointer;
}
.checkbox__input:where(:disabled),
.checkbox__input:where(:disabled) ~ .checkbox__text,
.checkbox .radio__input:where(:disabled),
.checkbox .radio__input:where(:disabled) ~ .checkbox__text {
  opacity: 0.5;
}
.checkbox__input:checked:not(:disabled) {
  background: #000;
}
.checkbox__input::after {
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-image: var(--checkbox-check);
  content: "";
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-size: 95%;
}
.checkbox__input:checked + .checkbox__text {
  font-weight: normal;
  font-variation-settings: "wght" 600;
  color: #000;
}
.checkbox__input:checked + .checkbox__text .checkbox__text--count {
  font-variation-settings: "wght" 400;
}
.checkbox .radio__input {
  border-radius: 9px;
}
.checkbox .radio__input::after {
  background: #000;
  border-radius: 5px;
  content: "";
  display: none;
  position: absolute;
  inset: 0;
  margin: auto;
  height: 8px;
  width: 8px;
}
.checkbox__text {
  margin-block: 0;
}
.checkbox__text--count {
  color: #b1b1b1;
  margin-inline-start: 0.5rem;
  font-size: 1.4rem;
}
.checkbox + .hint {
  margin-block-start: 0;
  margin-inline-start: calc(25px + 0.75em);
}
.checkbox ~ .errors {
  margin-inline-start: calc(25px + 0.75em);
}

.column-items-dynamic {
  --column-count: 4;
  --column-width: 200px;
  column-gap: 30px;
  columns: var(--column-count) var(--column-width);
}
.column-items-dynamic--trigger {
  display: none;
}
.column-items-dynamic--trigger .btn--more {
  background-color: transparent;
  color: #000;
  text-decoration: underline;
  display: inline-flex;
  height: auto !important;
  font-size: inherit;
  font-weight: inherit;
  text-transform: none;
  padding: 0;
}
.column-items-dynamic--trigger .btn--more .btn__icon {
  margin-inline-start: 0;
  width: 0.8rem;
  height: 0.8rem;
  color: #000;
  stroke-width: 3;
  transform: rotate(-90deg) translateY(0.4rem);
  transition: transform 0.15s linear;
}
.column-items-dynamic--trigger .btn--more:hover, .column-items-dynamic--trigger .btn--more:focus, .column-items-dynamic--trigger .btn--more:active {
  background-color: transparent;
  color: currentcolor;
  text-decoration: none;
}
.column-items-dynamic--trigger .btn--more:hover .btn__icon, .column-items-dynamic--trigger .btn--more:focus .btn__icon, .column-items-dynamic--trigger .btn--more:active .btn__icon {
  transform: rotate(-90deg) translateY(0.8rem);
}
.column-items-dynamic .column-items__item {
  margin-block-end: 0.5rem;
}
.column-items-dynamic .column-items__item:nth-last-child(4):first-child,
.column-items-dynamic .column-items__item:nth-last-child(4):first-child ~ *, .column-items-dynamic .column-items__item:nth-last-child(3):first-child,
.column-items-dynamic .column-items__item:nth-last-child(3):first-child ~ *, .column-items-dynamic .column-items__item:nth-last-child(2):first-child,
.column-items-dynamic .column-items__item:nth-last-child(2):first-child ~ *, .column-items-dynamic .column-items__item:last-child:first-child,
.column-items-dynamic .column-items__item:last-child:first-child ~ * {
  column-span: all;
}
.column-items-dynamic:not(.show-all-items):not(.column-items-dynamic-active) .column-items__item--hide {
  animation: show-all-items 0s linear 5s normal forwards;
}
.column-items-dynamic:not(.show-all-items) .column-items-dynamic--trigger {
  display: block;
}
@media (min-width: 480px) and (max-width: 767px) {
  .column-items-dynamic {
    --column-count: 2;
  }
}

@keyframes show-all-items {
  0%, 100% {
    clip: revert;
    clip-path: revert;
    height: revert;
    width: revert;
    overflow: revert;
    position: revert;
    white-space: revert;
  }
}
.message {
  --background-color: #f3f3f3;
  --text-color: #000;
  --icon-background-color: #747474;
  --icon: url("");
  background-color: var(--background-color);
  color: var(--text-color);
  padding: 2rem 2.6rem 2rem calc(3.6rem + 24px);
  position: relative;
  display: flex;
  gap: 0 1rem;
}
.message.error, .message.form-error-message {
  --background-color: #f6dfdf;
  --icon-background-color: #e26969;
  --icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' fill='%23fff' d='m8 9.414-4.293 4.293-1.414-1.414L6.586 8 2.293 3.707l1.414-1.414L8 6.586l4.293-4.293 1.414 1.414L9.414 8l4.293 4.293-1.414 1.414L8 9.414z'/%3E%3C/svg%3E");
}
.message.notice {
  --background-color: #ddedf3;
  --icon-background-color: #239bc8;
  --icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M12 10a1 1 0 0 0-1 1v6a1 1 0 0 0 2 0v-6a1 1 0 0 0-1-1Zm0-4a1.25 1.25 0 1 0 1.25 1.25A1.25 1.25 0 0 0 12 6Z'/%3E%3C/svg%3E");
}
.message.ok {
  --background-color: #e8f1d9;
  --icon-background-color: #8ed609;
  --icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%23fff' stroke-width='3' viewBox='-6 -6 24 24'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");
}
.message.ok .fa::before {
  background-position: top left;
}
.message .fa {
  background-color: var(--icon-background-color);
  border-radius: 12px;
  display: grid;
  height: 24px;
  width: 24px;
  position: absolute;
  top: 2rem;
  left: 2rem;
}
.message .fa::before {
  content: "";
  background: var(--icon) no-repeat center center;
  display: block;
  height: 24px;
  width: 24px;
}
.message,
.message .message-inner,
.message .msg-inner {
  margin-top: 0;
}
.message > *:first-child,
.message .message-inner > *:first-child,
.message .msg-inner > *:first-child {
  margin-top: 0;
}
.message > *:last-child,
.message > *:last-child > *:last-child,
.message .message-inner > *:last-child,
.message .message-inner > *:last-child > *:last-child,
.message .msg-inner > *:last-child,
.message .msg-inner > *:last-child > *:last-child {
  margin-bottom: 0;
}
.message h2 {
  font-size: 1.2em;
  margin-bottom: 0.5rem;
}
.message .alert-actions {
  display: flex;
  margin-left: auto;
  gap: 0 1rem;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: flex-start;
  align-self: flex-start;
}
.message .alert-actions span {
  overflow-wrap: normal;
}
.message__container {
  overflow: hidden;
}
.message__container .message::before {
  content: "";
  background-color: inherit;
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  height: 100%;
  width: 100vw;
  z-index: -1;
}

.floating-spinner-container {
  position: relative;
}
.floating-spinner-container .floating-spinner {
  position: absolute;
  top: 30px;
  left: 0;
  right: 0;
  margin: 0 auto;
}
.floating-spinner-container.spinner-show .msg-overlay {
  position: absolute;
  inset: 0;
  padding-top: 90px;
  text-align: center;
  font-weight: bold;
  background-color: rgba(255, 255, 255, 0.9);
  color: #747474;
  z-index: 10;
}
.floating-spinner-container .floating-spinner, .floating-spinner-container--page .floating-spinner {
  transform-origin: center;
  z-index: -1;
  visibility: hidden;
  opacity: 0;
  transition: opacity ease-in 0.15s;
  width: max-content;
}
.floating-spinner-container .floating-spinner > svg, .floating-spinner-container--page .floating-spinner > svg {
  height: 50px;
  width: 50px;
  fill: #b1b1b1;
  stroke-width: 0;
}
.floating-spinner-container.spinner-show .floating-spinner, .floating-spinner-container--page.spinner-show .floating-spinner {
  animation: spinner-animation 0.75s infinite linear;
  opacity: 1;
  visibility: visible;
  z-index: 10;
}
.floating-spinner-container--page {
  background-color: rgba(0, 0, 0, 0.5);
  position: fixed;
  inset: 0;
  opacity: 0;
  z-index: -10;
  display: grid;
  transition: opacity 0.15s linear, z-index 0s linear 0.15s;
}
.floating-spinner-container--page .floating-spinner {
  place-self: center center;
}
.floating-spinner-container--page.spinner-show {
  opacity: 1;
  z-index: 9999;
  transition: opacity 0.15s linear, z-index 0.15s linear 0s;
}

@keyframes spinner-animation {
  100% {
    transform: rotate(360deg);
  }
}
.select2-selection, .select2-container {
  border-radius: 0 !important;
}
.select2-selection__arrow {
  margin-block-start: 0 !important;
  padding-block: 4px;
  height: calc(3.8rem - 2px) !important;
}
.select2-selection.select2-selection--single {
  height: 3.8rem !important;
}
.select2-selection.select2-selection--single .select2-selection__rendered {
  padding-block: 4px;
}
.select2-selection__placeholder {
  font-size: 0.9em !important;
}
.select2-container--open .select2-dropdown {
  border-radius: 0 !important;
}

.home-shops__wrapper {
  display: grid;
  gap: 2rem;
}
@media (min-width: 768px) {
  .home-shops__wrapper {
    grid-template-columns: 2.06fr 1fr;
  }
}
@media (min-width: 1366px) {
  .home-shops__wrapper {
    grid-template-columns: 1.75fr repeat(4, 1fr);
  }
}
.home-shops__wrapper .icon-arrow-right {
  display: inline-flex;
  gap: 0 0.5rem;
}
.home-shops__wrapper .icon-arrow-right .svg-icon {
  order: 50;
  align-self: center;
  height: 0.8em;
  width: auto;
  aspect-ratio: 1;
  position: relative;
  top: -1px;
}
.home-shops__wrapper .main-block {
  background-color: #f3f3f3;
  padding: 3rem;
  display: flex;
  flex-direction: column;
  align-items: start;
  justify-content: center;
  font-size: 18px;
  border-radius: 8px;
}
@media (max-width: 767.98px) {
  .home-shops__wrapper .main-block {
    grid-column: span 2;
  }
}
.home-shops__wrapper .main-block h2 {
  font-size: 36px;
  font-weight: normal;
  font-variation-settings: "wght" 700;
}
.home-shops__wrapper .main-block p + p {
  margin-block-start: 1rem;
}
.home-shops__wrapper .shops-map {
  font-size: 28px;
  font-weight: normal;
  font-variation-settings: "wght" 700;
  color: #000;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
@media (max-width: 767.98px) {
  .home-shops__wrapper .shops-map {
    grid-column: span 2;
  }
}
.home-shops__wrapper .shops-map * {
  max-width: 68%;
  height: auto;
}
.home-shops__wrapper .shops-map img {
  display: block;
  margin-block-end: 2rem;
}
.home-shops__wrapper > ul {
  display: none;
  grid-template-columns: repeat(auto-fit, minmax(min(200px, 100%), 1fr));
  grid-column: span 2;
  gap: 2rem;
}
@media (min-width: 768px) {
  .home-shops__wrapper > ul {
    display: grid;
  }
}
@media (min-width: 1366px) {
  .home-shops__wrapper > ul {
    display: contents;
  }
}
.home-shops__wrapper > ul li a {
  display: grid;
  border-radius: 8px;
  overflow: hidden;
  text-decoration: none;
}
.home-shops__wrapper > ul li a > *, .home-shops__wrapper > ul li a::before {
  grid-column: 1;
  grid-row: 1;
}
.home-shops__wrapper > ul li a::before {
  content: "";
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 100%);
}
.home-shops__wrapper > ul li a picture {
  height: 100%;
  width: 100%;
  object-fit: cover;
  z-index: -1;
}
.home-shops__wrapper > ul li a strong {
  z-index: 1;
  align-self: end;
  color: #fff;
  padding: 1.6rem;
  font-size: 1.4rem;
  will-change: translate;
  transition: translate 0.2s ease;
}
.home-shops__wrapper > ul li a:hover strong {
  translate: 0 -0.5rem;
}

.associations {
  background-color: #f3f3f3;
  border-radius: 8px;
  padding: clamp(2rem, 3vw, 6rem) clamp(1rem, 2vw, 3rem) clamp(2rem, 3vw, 6rem) clamp(2rem, 3vw, 6rem);
  align-self: center;
}
.associations__list {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: clamp(1rem, 2vw, 2rem);
}
.associations__list > * {
  flex: 1;
  min-width: max-content;
}

/**
 * Reset iSpace custom form input styles to be able to design special inputs more easily
 */
/**
 * Styles to hide the scrollbar but still allow scrolling
 */
.newsletter {
  background-color: #000;
  color: #fff;
  border-radius: 8px;
  padding: clamp(2rem, 3vw, 5rem) clamp(2rem, 3vw, 5rem) clamp(2rem, 3vw, 5rem) clamp(3rem, 5vw, 8rem);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(220px, 100%), 1fr));
  align-items: center;
  gap: 2rem;
}
.newsletter__title {
  color: inherit;
  font-size: 3.6rem;
}
.newsletter__info {
  font-size: 1.6rem;
  font-variation-settings: "wght" 600;
}
.newsletter .form-input {
  position: relative;
}
.newsletter .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)) {
  z-index: auto;
  margin-top: initial;
}
.newsletter .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)) :where(.form-field-container) {
  padding: initial;
  overflow: visible;
  border: none;
  border-radius: 0;
}
.newsletter .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)) :where(.form-field > *):not([disabled]) {
  background-color: initial;
}
.newsletter .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)) :where(.form-field__input) {
  font-size: initial;
}
.newsletter .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(.errors) {
  --input-bg: initial;
}
.newsletter .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(.errors) .form-field-container {
  background-color: initial;
  border-color: initial !important;
}
.newsletter .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(.errors):focus-within .form-field-container {
  border-color: initial !important;
}
.newsletter .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has([disabled]) .form-field-container {
  background-color: initial;
  border-color: initial !important;
}
.newsletter .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)) :where(.form-input__label) {
  position: static;
  white-space: normal;
  line-height: normal;
  padding-inline: 0;
  padding-block: 0;
  font-size: initial;
  color: initial;
  text-overflow: clip;
  overflow: visible;
  transition: none;
  transform: none;
  background-clip: border-box;
  z-index: auto;
  max-width: none;
  pointer-events: auto;
  font-variation-settings: initial;
  margin-block-end: initial;
}
.newsletter .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)) :where(.form-input__label)::before, .newsletter .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)) :where(.form-input__label)::after {
  content: none;
}
.newsletter .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(.form-field--sm) .form-input__label {
  padding-block: 0;
}
.newsletter .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):focus-within :where(.form-field-container) {
  border-color: initial;
  box-shadow: none;
}
.newsletter .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):focus-within :where(.form-input__label) {
  color: initial;
}
.newsletter .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):hover:not(:where(:focus-within, [disabled])):where(:not(:has(.errors))) :where(.form-field-container) {
  border-color: initial;
}
.newsletter .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):hover:not(:where(:focus-within, [disabled])):where(:not(:has(.errors))) :where(.form-input__label) {
  color: initial;
}
.newsletter .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):hover:not(:where(:focus-within, [disabled])):has(.errors) :where(.form-field-container) {
  border-color: initial;
}
.newsletter .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):hover:not(:where(:focus-within, [disabled])):has(.errors) :where(.form-input__label) {
  color: initial;
}
.newsletter .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(:where(input, select, textarea):not(:where(:placeholder-shown)):is(:where(:not(:placeholder-shown)), :where(:not([placeholder=""], [placeholder=" "])), :not([value=""]), :-webkit-autofill, :autofill, :focus)) :where(.form-input__label), .newsletter .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(:where(input, select, textarea):is(:where(:placeholder-shown:not([placeholder=""], [placeholder=" "])))) :where(.form-input__label), .newsletter .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(:where(input, select, textarea):is(:focus)) :where(.form-input__label) {
  transform: none;
  font-size: initial;
  background-image: none;
  max-width: none;
}
.newsletter .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(:where(input, select, textarea):not(:where(:placeholder-shown)):is(:where(:not(:placeholder-shown)), :where(:not([placeholder=""], [placeholder=" "])), :not([value=""]), :-webkit-autofill, :autofill, :focus)) :where(.form-input__label)::before, .newsletter .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(:where(input, select, textarea):not(:where(:placeholder-shown)):is(:where(:not(:placeholder-shown)), :where(:not([placeholder=""], [placeholder=" "])), :not([value=""]), :-webkit-autofill, :autofill, :focus)) :where(.form-input__label)::after, .newsletter .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(:where(input, select, textarea):is(:where(:placeholder-shown:not([placeholder=""], [placeholder=" "])))) :where(.form-input__label)::before, .newsletter .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(:where(input, select, textarea):is(:where(:placeholder-shown:not([placeholder=""], [placeholder=" "])))) :where(.form-input__label)::after, .newsletter .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(:where(input, select, textarea):is(:focus)) :where(.form-input__label)::before, .newsletter .form-input:has(:where(input:not([type=checkbox], [type=radio]), textarea, select)):has(:where(input, select, textarea):is(:focus)) :where(.form-input__label)::after {
  width: 1;
}
.newsletter .form-input__label {
  position: absolute;
  left: 1rem;
  opacity: 0;
  pointer-events: none;
  margin: 0;
  height: 3rem;
  text-transform: lowercase;
  font-size: 1.6rem;
  font-weight: normal;
  font-variation-settings: "wght" 400;
  color: currentcolor;
}
@media (min-width: 1200px) {
  .newsletter .form-input__label {
    left: 1.4rem;
  }
}
.newsletter .form-input .form-field, .newsletter .form-input .form-field-container {
  background-color: transparent;
}
.newsletter .form-input .form-field--sm {
  height: 3rem;
}
.newsletter .form-input .form-field-container {
  border-bottom: 2px solid;
}
.newsletter .form-input .form-field__input {
  color: inherit;
}
.newsletter .form-input .form-field__input:-webkit-autofill, .newsletter .form-input .form-field__input:-webkit-autofill:hover, .newsletter .form-input .form-field__input:-webkit-autofill:active, .newsletter .form-input .form-field__input:-webkit-autofill:focus {
  -webkit-text-fill-color: #fff !important;
  color: rgb(255, 255, 255) !important;
  background-color: rgba(255, 255, 255, 0) !important;
  transition: background-color 5000s ease-in-out 0s;
  -webkit-box-shadow: 0 0 0 40px rgba(255, 255, 255, 0) inset !important;
  -webkit-background-clip: text;
}
.newsletter .form-input:has(input:focus) .form-field-container {
  box-shadow: none;
}
.newsletter .form-input:has(input:placeholder-shown:not(:focus)) .form-input__label {
  opacity: 0.7;
  transition: opacity 0.2s ease-in;
}
.newsletter .form-input:where(:not(:has([disabled]))):hover .form-input__label, .newsletter .form-input:where(:not(:has([disabled]))):focus-within .form-input__label {
  color: #fff;
}
.newsletter .form-input:where(:not(:has([disabled]))):hover .form-field-container, .newsletter .form-input:where(:not(:has([disabled]))):focus-within .form-field-container {
  border-color: #dedede;
}
.newsletter [type=submit] {
  font-size: 1.6rem;
  font-weight: normal;
  font-variation-settings: "wght" 500;
}
.newsletter [type=submit]:where(:not(:hover)) {
  background-color: #fff;
  color: #000;
}

body .default-page__header {
  background: none;
  padding-block-end: 0;
  margin-block: 0;
}
body .default-page__header:has(+ .canvas) {
  margin-block: 0;
}

details {
  background: #fff;
  padding-block: 1rem;
}
details::details-content {
  display: grid;
  grid-template-rows: 0fr;
  overflow: hidden;
  transition: grid-template-rows 0.3s ease-in-out;
  content-visibility: visible;
  will-change: contents;
}
details div {
  min-height: 0;
  opacity: 0;
  transition: opacity 0.2s ease-in-out;
}
details div > :where(h2, h3, h4, h5, h6, p, ol, ul, dl) + * {
  margin-block-start: clamp(1rem, 2.82vi - 0.17rem, 2rem);
}
details[open]::details-content {
  grid-template-rows: 1fr;
}
details[open] div {
  opacity: 1;
  transition: opacity 0.5s ease-out;
}

summary {
  display: grid;
  grid-auto-flow: column;
  justify-content: start;
  gap: 0 3rem;
}
summary::before, summary::after {
  font-size: clamp(1.6rem, 3.39vi + 0.2rem, 2.8rem);
  grid-column: 1;
  grid-row: 1;
  line-height: 1;
  position: relative;
  top: -0.1em;
  transition: opacity 0.25s ease-in-out;
}
summary::before {
  content: "+";
  opacity: 1;
}
summary::after {
  content: "-";
  opacity: 0;
}
[open] summary::before {
  opacity: 0;
}
[open] summary::after {
  opacity: 1;
}

.faq {
  padding-block: clamp(6rem, 11.3vi + 1.32rem, 10rem);
}
.faq details {
  border-radius: 8px;
  border: 1px solid rgba(0, 0, 0, 0.1);
  position: relative;
}
.faq details::after {
  content: "";
  display: block;
  position: absolute;
  inset: -1px;
  border: 3px solid var(--faq-theme, #000);
  border-radius: 8px;
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
  pointer-events: none;
}
.faq details[open]::after {
  opacity: 1;
}
.faq details + details {
  margin-block-start: 1.5rem;
}
.faq summary {
  padding: 1rem 3rem;
  font-size: clamp(1.6rem, 0.56vi + 1.37rem, 1.8rem);
  font-weight: 700;
  transition: color 0.3s ease-in-out;
  color: #000;
}
.faq div {
  padding-inline: 3rem;
}
.faq div::after {
  display: block;
  content: "";
  height: 100px;
  max-height: 0;
  transition: max-height 0.3s ease-in-out;
}
.faq details[open] summary {
  color: var(--faq-theme, #000);
}
.faq details[open] div::after {
  max-height: 1rem;
}

.suggestions {
  max-width: 1650px;
  margin-inline: auto;
  border-radius: 8px;
}
.suggestions__inner {
  overflow: auto;
  border-radius: 8px;
}
.suggestions__inner::-webkit-scrollbar {
  width: 4px;
}
.suggestions__inner::-webkit-scrollbar-track {
  background: transparent;
}
.suggestions__inner::-webkit-scrollbar-thumb {
  background: #000;
  border-radius: 2px;
}
.suggestions__inner::-webkit-scrollbar-thumb:hover {
  background: #000;
}
@media (min-width: 1200px) {
  .suggestions.suggestions {
    top: 100%;
  }
  .suggestions.suggestions:not(:empty) {
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
  }
}
@media (max-width: 1199.98px) {
  .suggestions.suggestions .suggestions__inner {
    padding-inline: calc(var(--bs-gutter-x) * 0.5);
  }
  .suggestions.suggestions .suggestions__inner .suggest-section.suggest-products .suggest-name {
    font-size: 1.4rem;
    font-weight: normal;
    font-variation-settings: "wght" 500;
  }
  .suggestions.suggestions .suggestions__inner .suggest-section.suggest-products .suggest-thumb img {
    max-height: 80px;
  }
}
.suggestions .suggestions__close-icon {
  stroke-width: 0.5px;
}

:root {
  --checkbox-check: url('data:image/svg+xml,    <svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"    width="20" height="20"    fill="none"    stroke="white"    stroke-width="3">    <polyline points="20 6 9 17 4 12"></polyline>    </svg>');
  --header-nav-breakpoint: 1200px;
  scroll-behavior: smooth;
  scroll-padding-top: 10rem;
}
@media (min-width: 1200px) {
  :root {
    scroll-padding-top: 14.5rem;
  }
}

.grey-bg-100 {
  background-color: #f3f3f3;
}

.block-nav-combo {
  display: flex;
  align-items: center;
  padding-block-end: 2rem;
  margin-block-end: 2rem;
  border-block-end: 1px solid #dedede;
}
.block-nav-combo > *:where(:not(.embla__controls):not(.posts-section__more)) {
  flex: 1 1 auto;
  text-align: start;
  margin-block-end: 0;
}
/*!*********************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./data/www/templates/asgard/obchod-samsung.cz/sass/error-content.scss ***!
  \*********************************************************************************************************************************************************************************************************************************************************************************************/
/**
 * Retrieves the next smaller breakpoint from the given breakpoint.
 *
 * @param {String} $breakpoint - The breakpoint for which to find the next smaller breakpoint.
 * @return {String|null} - The next smaller breakpoint, or null if no smaller breakpoint is available.
 */
/**
 * Retrieves the next larger breakpoint from the $grid-breakpoints map.
 *
 * @function get-bigger-breakpoint
 * @param {String} $breakpoint - The current breakpoint to find the next larger one for.
 * @return {String | null} - The next larger breakpoint or null if the current breakpoint is the largest or not found.
 */
/**
 * Reset iSpace custom form input styles to be able to design special inputs more easily
 */
/**
 * Styles to hide the scrollbar but still allow scrolling
 */
.error-page .products-section {
  margin-block-start: 6rem;
}
@media (min-width: 576px) {
  .error-page .products-section__list {
    grid-template-columns: repeat(4, 1fr);
  }
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3NzLm9iY2hvZC1zYW1zdW5nLmN6LmFzZ2FyZC5iYXNlLjgxNTQ4MTdjMjkxZDExZDE3ZTUyLmNzcyIsIm1hcHBpbmdzIjoiOzs7QUFBQSxnQkFBZ0I7QUNBaEI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QURFSjtBQ0NBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QURDSjtBRWJBO0VDd0ZRO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FIeEVSOztBSXBCQTs7Ozs7RUFBQTtBQWlCQTs7Ozs7O0VBQUE7QUMrUEE7O0VBQUE7QUErSEE7O0VBQUE7QUNsWkE7O0VBU0k7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUlBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUlBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUlBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFHRjtFQUNBO0VBTUE7RUFDQTtFQUNBO0VBS0U7RUFFRjtFQytPTTtFRDdPTjtFQUNBO0VBS0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBRUE7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQU1BO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUlBO0VBQ0E7RUFDQTtFQUlBO0VBQ0E7RUFDQTtFQUNBO0FOaUhGO0FPekdJO0VEdklKOztJQzBTUTtFUHJETjtBQUNGOztBUWhQRTs7Ozs7RUNIQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVDJQRjs7QVVyTUk7RUY1Q0U7SUFDRSxpQkdKZTtFWHlQckI7QUFDRjtBVTNNSTtFRjVDRTtJQUNFLGlCR0plO0VYOFByQjtBQUNGO0FVaE5JO0VGNUNFO0lBQ0UsaUJHSmU7RVhtUXJCO0FBQ0Y7QVloUkE7RUFFSTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0FaMlJKOztBWXRSRTtFQ05BO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0FiK1JGO0FZN1JJO0VDT0Y7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FieVJGOztBYTFPTTtFQUNFO0FiNk9SOztBYTFPTTtFQXBDSjtFQUNBO0Fia1JGOztBYXBRRTtFQUNFO0VBQ0E7QWJ1UUo7O0FhelFFO0VBQ0U7RUFDQTtBYjRRSjs7QWE5UUU7RUFDRTtFQUNBO0FiaVJKOztBYW5SRTtFQUNFO0VBQ0E7QWJzUko7O0FheFJFO0VBQ0U7RUFDQTtBYjJSSjs7QWE3UkU7RUFDRTtFQUNBO0FiZ1NKOztBYWpRTTtFQWhESjtFQUNBO0FicVRGOztBYWhRVTtFQWhFTjtFQUNBO0Fib1VKOztBYXJRVTtFQWhFTjtFQUNBO0FieVVKOztBYTFRVTtFQWhFTjtFQUNBO0FiOFVKOztBYS9RVTtFQWhFTjtFQUNBO0FibVZKOztBYXBSVTtFQWhFTjtFQUNBO0Fid1ZKOztBYXpSVTtFQWhFTjtFQUNBO0FiNlZKOztBYTlSVTtFQWhFTjtFQUNBO0Fia1dKOztBYW5TVTtFQWhFTjtFQUNBO0FidVdKOztBYXhTVTtFQWhFTjtFQUNBO0FiNFdKOztBYTdTVTtFQWhFTjtFQUNBO0FiaVhKOztBYWxUVTtFQWhFTjtFQUNBO0Fic1hKOztBYXZUVTtFQWhFTjtFQUNBO0FiMlhKOztBYXBUWTtFQXhEVjtBYmdYRjs7QWF4VFk7RUF4RFY7QWJvWEY7O0FhNVRZO0VBeERWO0Fid1hGOztBYWhVWTtFQXhEVjtBYjRYRjs7QWFwVVk7RUF4RFY7QWJnWUY7O0FheFVZO0VBeERWO0Fib1lGOztBYTVVWTtFQXhEVjtBYndZRjs7QWFoVlk7RUF4RFY7QWI0WUY7O0FhcFZZO0VBeERWO0FiZ1pGOztBYXhWWTtFQXhEVjtBYm9aRjs7QWE1Vlk7RUF4RFY7QWJ3WkY7O0FhclZROztFQUVFO0Fid1ZWOztBYXJWUTs7RUFFRTtBYndWVjs7QWEvVlE7O0VBRUU7QWJrV1Y7O0FhL1ZROztFQUVFO0Fia1dWOztBYXpXUTs7RUFFRTtBYjRXVjs7QWF6V1E7O0VBRUU7QWI0V1Y7O0FhblhROztFQUVFO0Fic1hWOztBYW5YUTs7RUFFRTtBYnNYVjs7QWE3WFE7O0VBRUU7QWJnWVY7O0FhN1hROztFQUVFO0FiZ1lWOztBYXZZUTs7RUFFRTtBYjBZVjs7QWF2WVE7O0VBRUU7QWIwWVY7O0FVcGNJO0VHVUU7SUFDRTtFYjhiTjtFYTNiSTtJQXBDSjtJQUNBO0Via2VBO0VhcGRBO0lBQ0U7SUFDQTtFYnNkRjtFYXhkQTtJQUNFO0lBQ0E7RWIwZEY7RWE1ZEE7SUFDRTtJQUNBO0ViOGRGO0VhaGVBO0lBQ0U7SUFDQTtFYmtlRjtFYXBlQTtJQUNFO0lBQ0E7RWJzZUY7RWF4ZUE7SUFDRTtJQUNBO0ViMGVGO0VhM2NJO0lBaERKO0lBQ0E7RWI4ZkE7RWF6Y1E7SUFoRU47SUFDQTtFYjRnQkY7RWE3Y1E7SUFoRU47SUFDQTtFYmdoQkY7RWFqZFE7SUFoRU47SUFDQTtFYm9oQkY7RWFyZFE7SUFoRU47SUFDQTtFYndoQkY7RWF6ZFE7SUFoRU47SUFDQTtFYjRoQkY7RWE3ZFE7SUFoRU47SUFDQTtFYmdpQkY7RWFqZVE7SUFoRU47SUFDQTtFYm9pQkY7RWFyZVE7SUFoRU47SUFDQTtFYndpQkY7RWF6ZVE7SUFoRU47SUFDQTtFYjRpQkY7RWE3ZVE7SUFoRU47SUFDQTtFYmdqQkY7RWFqZlE7SUFoRU47SUFDQTtFYm9qQkY7RWFyZlE7SUFoRU47SUFDQTtFYndqQkY7RWFqZlU7SUF4RFY7RWI0aUJBO0VhcGZVO0lBeERWO0ViK2lCQTtFYXZmVTtJQXhEVjtFYmtqQkE7RWExZlU7SUF4RFY7RWJxakJBO0VhN2ZVO0lBeERWO0Vid2pCQTtFYWhnQlU7SUF4RFY7RWIyakJBO0VhbmdCVTtJQXhEVjtFYjhqQkE7RWF0Z0JVO0lBeERWO0ViaWtCQTtFYXpnQlU7SUF4RFY7RWJva0JBO0VhNWdCVTtJQXhEVjtFYnVrQkE7RWEvZ0JVO0lBeERWO0ViMGtCQTtFYWxoQlU7SUF4RFY7RWI2a0JBO0VhMWdCTTs7SUFFRTtFYjRnQlI7RWF6Z0JNOztJQUVFO0ViMmdCUjtFYWxoQk07O0lBRUU7RWJvaEJSO0VhamhCTTs7SUFFRTtFYm1oQlI7RWExaEJNOztJQUVFO0ViNGhCUjtFYXpoQk07O0lBRUU7RWIyaEJSO0VhbGlCTTs7SUFFRTtFYm9pQlI7RWFqaUJNOztJQUVFO0VibWlCUjtFYTFpQk07O0lBRUU7RWI0aUJSO0VhemlCTTs7SUFFRTtFYjJpQlI7RWFsakJNOztJQUVFO0Vib2pCUjtFYWpqQk07O0lBRUU7RWJtakJSO0FBQ0Y7QVU5bUJJO0VHVUU7SUFDRTtFYnVtQk47RWFwbUJJO0lBcENKO0lBQ0E7RWIyb0JBO0VhN25CQTtJQUNFO0lBQ0E7RWIrbkJGO0Vham9CQTtJQUNFO0lBQ0E7RWJtb0JGO0Vhcm9CQTtJQUNFO0lBQ0E7RWJ1b0JGO0Vhem9CQTtJQUNFO0lBQ0E7RWIyb0JGO0VhN29CQTtJQUNFO0lBQ0E7RWIrb0JGO0VhanBCQTtJQUNFO0lBQ0E7RWJtcEJGO0VhcG5CSTtJQWhESjtJQUNBO0VidXFCQTtFYWxuQlE7SUFoRU47SUFDQTtFYnFyQkY7RWF0bkJRO0lBaEVOO0lBQ0E7RWJ5ckJGO0VhMW5CUTtJQWhFTjtJQUNBO0ViNnJCRjtFYTluQlE7SUFoRU47SUFDQTtFYmlzQkY7RWFsb0JRO0lBaEVOO0lBQ0E7RWJxc0JGO0VhdG9CUTtJQWhFTjtJQUNBO0VieXNCRjtFYTFvQlE7SUFoRU47SUFDQTtFYjZzQkY7RWE5b0JRO0lBaEVOO0lBQ0E7RWJpdEJGO0VhbHBCUTtJQWhFTjtJQUNBO0VicXRCRjtFYXRwQlE7SUFoRU47SUFDQTtFYnl0QkY7RWExcEJRO0lBaEVOO0lBQ0E7RWI2dEJGO0VhOXBCUTtJQWhFTjtJQUNBO0ViaXVCRjtFYTFwQlU7SUF4RFY7RWJxdEJBO0VhN3BCVTtJQXhEVjtFYnd0QkE7RWFocUJVO0lBeERWO0ViMnRCQTtFYW5xQlU7SUF4RFY7RWI4dEJBO0VhdHFCVTtJQXhEVjtFYml1QkE7RWF6cUJVO0lBeERWO0Vib3VCQTtFYTVxQlU7SUF4RFY7RWJ1dUJBO0VhL3FCVTtJQXhEVjtFYjB1QkE7RWFsckJVO0lBeERWO0ViNnVCQTtFYXJyQlU7SUF4RFY7RWJndkJBO0VheHJCVTtJQXhEVjtFYm12QkE7RWEzckJVO0lBeERWO0Vic3ZCQTtFYW5yQk07O0lBRUU7RWJxckJSO0VhbHJCTTs7SUFFRTtFYm9yQlI7RWEzckJNOztJQUVFO0ViNnJCUjtFYTFyQk07O0lBRUU7RWI0ckJSO0VhbnNCTTs7SUFFRTtFYnFzQlI7RWFsc0JNOztJQUVFO0Vib3NCUjtFYTNzQk07O0lBRUU7RWI2c0JSO0VhMXNCTTs7SUFFRTtFYjRzQlI7RWFudEJNOztJQUVFO0VicXRCUjtFYWx0Qk07O0lBRUU7RWJvdEJSO0VhM3RCTTs7SUFFRTtFYjZ0QlI7RWExdEJNOztJQUVFO0ViNHRCUjtBQUNGO0FVdnhCSTtFR1VFO0lBQ0U7RWJneEJOO0VhN3dCSTtJQXBDSjtJQUNBO0Vib3pCQTtFYXR5QkE7SUFDRTtJQUNBO0Vid3lCRjtFYTF5QkE7SUFDRTtJQUNBO0ViNHlCRjtFYTl5QkE7SUFDRTtJQUNBO0ViZ3pCRjtFYWx6QkE7SUFDRTtJQUNBO0Vib3pCRjtFYXR6QkE7SUFDRTtJQUNBO0Vid3pCRjtFYTF6QkE7SUFDRTtJQUNBO0ViNHpCRjtFYTd4Qkk7SUFoREo7SUFDQTtFYmcxQkE7RWEzeEJRO0lBaEVOO0lBQ0E7RWI4MUJGO0VhL3hCUTtJQWhFTjtJQUNBO0ViazJCRjtFYW55QlE7SUFoRU47SUFDQTtFYnMyQkY7RWF2eUJRO0lBaEVOO0lBQ0E7RWIwMkJGO0VhM3lCUTtJQWhFTjtJQUNBO0ViODJCRjtFYS95QlE7SUFoRU47SUFDQTtFYmszQkY7RWFuekJRO0lBaEVOO0lBQ0E7RWJzM0JGO0VhdnpCUTtJQWhFTjtJQUNBO0ViMDNCRjtFYTN6QlE7SUFoRU47SUFDQTtFYjgzQkY7RWEvekJRO0lBaEVOO0lBQ0E7RWJrNEJGO0VhbjBCUTtJQWhFTjtJQUNBO0ViczRCRjtFYXYwQlE7SUFoRU47SUFDQTtFYjA0QkY7RWFuMEJVO0lBeERWO0ViODNCQTtFYXQwQlU7SUF4RFY7RWJpNEJBO0VhejBCVTtJQXhEVjtFYm80QkE7RWE1MEJVO0lBeERWO0VidTRCQTtFYS8wQlU7SUF4RFY7RWIwNEJBO0VhbDFCVTtJQXhEVjtFYjY0QkE7RWFyMUJVO0lBeERWO0ViZzVCQTtFYXgxQlU7SUF4RFY7RWJtNUJBO0VhMzFCVTtJQXhEVjtFYnM1QkE7RWE5MUJVO0lBeERWO0VieTVCQTtFYWoyQlU7SUF4RFY7RWI0NUJBO0VhcDJCVTtJQXhEVjtFYis1QkE7RWE1MUJNOztJQUVFO0ViODFCUjtFYTMxQk07O0lBRUU7RWI2MUJSO0VhcDJCTTs7SUFFRTtFYnMyQlI7RWFuMkJNOztJQUVFO0VicTJCUjtFYTUyQk07O0lBRUU7RWI4MkJSO0VhMzJCTTs7SUFFRTtFYjYyQlI7RWFwM0JNOztJQUVFO0ViczNCUjtFYW4zQk07O0lBRUU7RWJxM0JSO0VhNTNCTTs7SUFFRTtFYjgzQlI7RWEzM0JNOztJQUVFO0ViNjNCUjtFYXA0Qk07O0lBRUU7RWJzNEJSO0VhbjRCTTs7SUFFRTtFYnE0QlI7QUFDRjtBVWg4Qkk7RUdVRTtJQUNFO0VieTdCTjtFYXQ3Qkk7SUFwQ0o7SUFDQTtFYjY5QkE7RWEvOEJBO0lBQ0U7SUFDQTtFYmk5QkY7RWFuOUJBO0lBQ0U7SUFDQTtFYnE5QkY7RWF2OUJBO0lBQ0U7SUFDQTtFYnk5QkY7RWEzOUJBO0lBQ0U7SUFDQTtFYjY5QkY7RWEvOUJBO0lBQ0U7SUFDQTtFYmkrQkY7RWFuK0JBO0lBQ0U7SUFDQTtFYnErQkY7RWF0OEJJO0lBaERKO0lBQ0E7RWJ5L0JBO0VhcDhCUTtJQWhFTjtJQUNBO0VidWdDRjtFYXg4QlE7SUFoRU47SUFDQTtFYjJnQ0Y7RWE1OEJRO0lBaEVOO0lBQ0E7RWIrZ0NGO0VhaDlCUTtJQWhFTjtJQUNBO0VibWhDRjtFYXA5QlE7SUFoRU47SUFDQTtFYnVoQ0Y7RWF4OUJRO0lBaEVOO0lBQ0E7RWIyaENGO0VhNTlCUTtJQWhFTjtJQUNBO0ViK2hDRjtFYWgrQlE7SUFoRU47SUFDQTtFYm1pQ0Y7RWFwK0JRO0lBaEVOO0lBQ0E7RWJ1aUNGO0VheCtCUTtJQWhFTjtJQUNBO0ViMmlDRjtFYTUrQlE7SUFoRU47SUFDQTtFYitpQ0Y7RWFoL0JRO0lBaEVOO0lBQ0E7RWJtakNGO0VhNStCVTtJQXhEVjtFYnVpQ0E7RWEvK0JVO0lBeERWO0ViMGlDQTtFYWwvQlU7SUF4RFY7RWI2aUNBO0Vhci9CVTtJQXhEVjtFYmdqQ0E7RWF4L0JVO0lBeERWO0VibWpDQTtFYTMvQlU7SUF4RFY7RWJzakNBO0VhOS9CVTtJQXhEVjtFYnlqQ0E7RWFqZ0NVO0lBeERWO0ViNGpDQTtFYXBnQ1U7SUF4RFY7RWIrakNBO0VhdmdDVTtJQXhEVjtFYmtrQ0E7RWExZ0NVO0lBeERWO0VicWtDQTtFYTdnQ1U7SUF4RFY7RWJ3a0NBO0VhcmdDTTs7SUFFRTtFYnVnQ1I7RWFwZ0NNOztJQUVFO0Vic2dDUjtFYTdnQ007O0lBRUU7RWIrZ0NSO0VhNWdDTTs7SUFFRTtFYjhnQ1I7RWFyaENNOztJQUVFO0VidWhDUjtFYXBoQ007O0lBRUU7RWJzaENSO0VhN2hDTTs7SUFFRTtFYitoQ1I7RWE1aENNOztJQUVFO0ViOGhDUjtFYXJpQ007O0lBRUU7RWJ1aUNSO0VhcGlDTTs7SUFFRTtFYnNpQ1I7RWE3aUNNOztJQUVFO0ViK2lDUjtFYTVpQ007O0lBRUU7RWI4aUNSO0FBQ0Y7QVV6bUNJO0VHVUU7SUFDRTtFYmttQ047RWEvbENJO0lBcENKO0lBQ0E7RWJzb0NBO0VheG5DQTtJQUNFO0lBQ0E7RWIwbkNGO0VhNW5DQTtJQUNFO0lBQ0E7RWI4bkNGO0VhaG9DQTtJQUNFO0lBQ0E7RWJrb0NGO0VhcG9DQTtJQUNFO0lBQ0E7RWJzb0NGO0VheG9DQTtJQUNFO0lBQ0E7RWIwb0NGO0VhNW9DQTtJQUNFO0lBQ0E7RWI4b0NGO0VhL21DSTtJQWhESjtJQUNBO0Via3FDQTtFYTdtQ1E7SUFoRU47SUFDQTtFYmdyQ0Y7RWFqbkNRO0lBaEVOO0lBQ0E7RWJvckNGO0Vhcm5DUTtJQWhFTjtJQUNBO0Vid3JDRjtFYXpuQ1E7SUFoRU47SUFDQTtFYjRyQ0Y7RWE3bkNRO0lBaEVOO0lBQ0E7RWJnc0NGO0Vham9DUTtJQWhFTjtJQUNBO0Vib3NDRjtFYXJvQ1E7SUFoRU47SUFDQTtFYndzQ0Y7RWF6b0NRO0lBaEVOO0lBQ0E7RWI0c0NGO0VhN29DUTtJQWhFTjtJQUNBO0ViZ3RDRjtFYWpwQ1E7SUFoRU47SUFDQTtFYm90Q0Y7RWFycENRO0lBaEVOO0lBQ0E7RWJ3dENGO0VhenBDUTtJQWhFTjtJQUNBO0ViNHRDRjtFYXJwQ1U7SUF4RFY7RWJndENBO0VheHBDVTtJQXhEVjtFYm10Q0E7RWEzcENVO0lBeERWO0Vic3RDQTtFYTlwQ1U7SUF4RFY7RWJ5dENBO0VhanFDVTtJQXhEVjtFYjR0Q0E7RWFwcUNVO0lBeERWO0ViK3RDQTtFYXZxQ1U7SUF4RFY7RWJrdUNBO0VhMXFDVTtJQXhEVjtFYnF1Q0E7RWE3cUNVO0lBeERWO0Vid3VDQTtFYWhyQ1U7SUF4RFY7RWIydUNBO0VhbnJDVTtJQXhEVjtFYjh1Q0E7RWF0ckNVO0lBeERWO0ViaXZDQTtFYTlxQ007O0lBRUU7RWJnckNSO0VhN3FDTTs7SUFFRTtFYitxQ1I7RWF0ckNNOztJQUVFO0Vid3JDUjtFYXJyQ007O0lBRUU7RWJ1ckNSO0VhOXJDTTs7SUFFRTtFYmdzQ1I7RWE3ckNNOztJQUVFO0ViK3JDUjtFYXRzQ007O0lBRUU7RWJ3c0NSO0VhcnNDTTs7SUFFRTtFYnVzQ1I7RWE5c0NNOztJQUVFO0ViZ3RDUjtFYTdzQ007O0lBRUU7RWIrc0NSO0VhdHRDTTs7SUFFRTtFYnd0Q1I7RWFydENNOztJQUVFO0VidXRDUjtBQUNGO0FVbHhDSTtFR1VFO0lBQ0U7RWIyd0NOO0VheHdDSTtJQXBDSjtJQUNBO0ViK3lDQTtFYWp5Q0E7SUFDRTtJQUNBO0VibXlDRjtFYXJ5Q0E7SUFDRTtJQUNBO0VidXlDRjtFYXp5Q0E7SUFDRTtJQUNBO0ViMnlDRjtFYTd5Q0E7SUFDRTtJQUNBO0ViK3lDRjtFYWp6Q0E7SUFDRTtJQUNBO0VibXpDRjtFYXJ6Q0E7SUFDRTtJQUNBO0VidXpDRjtFYXh4Q0k7SUFoREo7SUFDQTtFYjIwQ0E7RWF0eENRO0lBaEVOO0lBQ0E7RWJ5MUNGO0VhMXhDUTtJQWhFTjtJQUNBO0ViNjFDRjtFYTl4Q1E7SUFoRU47SUFDQTtFYmkyQ0Y7RWFseUNRO0lBaEVOO0lBQ0E7RWJxMkNGO0VhdHlDUTtJQWhFTjtJQUNBO0VieTJDRjtFYTF5Q1E7SUFoRU47SUFDQTtFYjYyQ0Y7RWE5eUNRO0lBaEVOO0lBQ0E7RWJpM0NGO0VhbHpDUTtJQWhFTjtJQUNBO0VicTNDRjtFYXR6Q1E7SUFoRU47SUFDQTtFYnkzQ0Y7RWExekNRO0lBaEVOO0lBQ0E7RWI2M0NGO0VhOXpDUTtJQWhFTjtJQUNBO0ViaTRDRjtFYWwwQ1E7SUFoRU47SUFDQTtFYnE0Q0Y7RWE5ekNVO0lBeERWO0VieTNDQTtFYWowQ1U7SUF4RFY7RWI0M0NBO0VhcDBDVTtJQXhEVjtFYiszQ0E7RWF2MENVO0lBeERWO0ViazRDQTtFYTEwQ1U7SUF4RFY7RWJxNENBO0VhNzBDVTtJQXhEVjtFYnc0Q0E7RWFoMUNVO0lBeERWO0ViMjRDQTtFYW4xQ1U7SUF4RFY7RWI4NENBO0VhdDFDVTtJQXhEVjtFYmk1Q0E7RWF6MUNVO0lBeERWO0VibzVDQTtFYTUxQ1U7SUF4RFY7RWJ1NUNBO0VhLzFDVTtJQXhEVjtFYjA1Q0E7RWF2MUNNOztJQUVFO0VieTFDUjtFYXQxQ007O0lBRUU7RWJ3MUNSO0VhLzFDTTs7SUFFRTtFYmkyQ1I7RWE5MUNNOztJQUVFO0ViZzJDUjtFYXYyQ007O0lBRUU7RWJ5MkNSO0VhdDJDTTs7SUFFRTtFYncyQ1I7RWEvMkNNOztJQUVFO0ViaTNDUjtFYTkyQ007O0lBRUU7RWJnM0NSO0VhdjNDTTs7SUFFRTtFYnkzQ1I7RWF0M0NNOztJQUVFO0VidzNDUjtFYS8zQ007O0lBRUU7RWJpNENSO0VhOTNDTTs7SUFFRTtFYmc0Q1I7QUFDRjtBVTM3Q0k7RUdVRTtJQUNFO0VibzdDTjtFYWo3Q0k7SUFwQ0o7SUFDQTtFYnc5Q0E7RWExOENBO0lBQ0U7SUFDQTtFYjQ4Q0Y7RWE5OENBO0lBQ0U7SUFDQTtFYmc5Q0Y7RWFsOUNBO0lBQ0U7SUFDQTtFYm85Q0Y7RWF0OUNBO0lBQ0U7SUFDQTtFYnc5Q0Y7RWExOUNBO0lBQ0U7SUFDQTtFYjQ5Q0Y7RWE5OUNBO0lBQ0U7SUFDQTtFYmcrQ0Y7RWFqOENJO0lBaERKO0lBQ0E7RWJvL0NBO0VhLzdDUTtJQWhFTjtJQUNBO0Via2dERjtFYW44Q1E7SUFoRU47SUFDQTtFYnNnREY7RWF2OENRO0lBaEVOO0lBQ0E7RWIwZ0RGO0VhMzhDUTtJQWhFTjtJQUNBO0ViOGdERjtFYS84Q1E7SUFoRU47SUFDQTtFYmtoREY7RWFuOUNRO0lBaEVOO0lBQ0E7RWJzaERGO0VhdjlDUTtJQWhFTjtJQUNBO0ViMGhERjtFYTM5Q1E7SUFoRU47SUFDQTtFYjhoREY7RWEvOUNRO0lBaEVOO0lBQ0E7RWJraURGO0VhbitDUTtJQWhFTjtJQUNBO0Vic2lERjtFYXYrQ1E7SUFoRU47SUFDQTtFYjBpREY7RWEzK0NRO0lBaEVOO0lBQ0E7RWI4aURGO0VhditDVTtJQXhEVjtFYmtpREE7RWExK0NVO0lBeERWO0VicWlEQTtFYTcrQ1U7SUF4RFY7RWJ3aURBO0VhaC9DVTtJQXhEVjtFYjJpREE7RWFuL0NVO0lBeERWO0ViOGlEQTtFYXQvQ1U7SUF4RFY7RWJpakRBO0Vhei9DVTtJQXhEVjtFYm9qREE7RWE1L0NVO0lBeERWO0VidWpEQTtFYS8vQ1U7SUF4RFY7RWIwakRBO0VhbGdEVTtJQXhEVjtFYjZqREE7RWFyZ0RVO0lBeERWO0ViZ2tEQTtFYXhnRFU7SUF4RFY7RWJta0RBO0VhaGdETTs7SUFFRTtFYmtnRFI7RWEvL0NNOztJQUVFO0ViaWdEUjtFYXhnRE07O0lBRUU7RWIwZ0RSO0VhdmdETTs7SUFFRTtFYnlnRFI7RWFoaERNOztJQUVFO0Via2hEUjtFYS9nRE07O0lBRUU7RWJpaERSO0VheGhETTs7SUFFRTtFYjBoRFI7RWF2aERNOztJQUVFO0VieWhEUjtFYWhpRE07O0lBRUU7RWJraURSO0VhL2hETTs7SUFFRTtFYmlpRFI7RWF4aURNOztJQUVFO0ViMGlEUjtFYXZpRE07O0lBRUU7RWJ5aURSO0FBQ0Y7QVVwbURJO0VHVUU7SUFDRTtFYjZsRE47RWExbERJO0lBcENKO0lBQ0E7RWJpb0RBO0Vhbm5EQTtJQUNFO0lBQ0E7RWJxbkRGO0Vhdm5EQTtJQUNFO0lBQ0E7RWJ5bkRGO0VhM25EQTtJQUNFO0lBQ0E7RWI2bkRGO0VhL25EQTtJQUNFO0lBQ0E7RWJpb0RGO0Vhbm9EQTtJQUNFO0lBQ0E7RWJxb0RGO0Vhdm9EQTtJQUNFO0lBQ0E7RWJ5b0RGO0VhMW1ESTtJQWhESjtJQUNBO0ViNnBEQTtFYXhtRFE7SUFoRU47SUFDQTtFYjJxREY7RWE1bURRO0lBaEVOO0lBQ0E7RWIrcURGO0VhaG5EUTtJQWhFTjtJQUNBO0VibXJERjtFYXBuRFE7SUFoRU47SUFDQTtFYnVyREY7RWF4bkRRO0lBaEVOO0lBQ0E7RWIyckRGO0VhNW5EUTtJQWhFTjtJQUNBO0ViK3JERjtFYWhvRFE7SUFoRU47SUFDQTtFYm1zREY7RWFwb0RRO0lBaEVOO0lBQ0E7RWJ1c0RGO0VheG9EUTtJQWhFTjtJQUNBO0ViMnNERjtFYTVvRFE7SUFoRU47SUFDQTtFYitzREY7RWFocERRO0lBaEVOO0lBQ0E7RWJtdERGO0VhcHBEUTtJQWhFTjtJQUNBO0VidXRERjtFYWhwRFU7SUF4RFY7RWIyc0RBO0VhbnBEVTtJQXhEVjtFYjhzREE7RWF0cERVO0lBeERWO0ViaXREQTtFYXpwRFU7SUF4RFY7RWJvdERBO0VhNXBEVTtJQXhEVjtFYnV0REE7RWEvcERVO0lBeERWO0ViMHREQTtFYWxxRFU7SUF4RFY7RWI2dERBO0VhcnFEVTtJQXhEVjtFYmd1REE7RWF4cURVO0lBeERWO0VibXVEQTtFYTNxRFU7SUF4RFY7RWJzdURBO0VhOXFEVTtJQXhEVjtFYnl1REE7RWFqckRVO0lBeERWO0ViNHVEQTtFYXpxRE07O0lBRUU7RWIycURSO0VheHFETTs7SUFFRTtFYjBxRFI7RWFqckRNOztJQUVFO0VibXJEUjtFYWhyRE07O0lBRUU7RWJrckRSO0VhenJETTs7SUFFRTtFYjJyRFI7RWF4ckRNOztJQUVFO0ViMHJEUjtFYWpzRE07O0lBRUU7RWJtc0RSO0VhaHNETTs7SUFFRTtFYmtzRFI7RWF6c0RNOztJQUVFO0ViMnNEUjtFYXhzRE07O0lBRUU7RWIwc0RSO0VhanRETTs7SUFFRTtFYm10RFI7RWFodERNOztJQUVFO0Via3REUjtBQUNGO0FVN3dESTtFR1VFO0lBQ0U7RWJzd0ROO0VhbndESTtJQXBDSjtJQUNBO0ViMHlEQTtFYTV4REE7SUFDRTtJQUNBO0ViOHhERjtFYWh5REE7SUFDRTtJQUNBO0Via3lERjtFYXB5REE7SUFDRTtJQUNBO0Vic3lERjtFYXh5REE7SUFDRTtJQUNBO0ViMHlERjtFYTV5REE7SUFDRTtJQUNBO0ViOHlERjtFYWh6REE7SUFDRTtJQUNBO0Via3pERjtFYW54REk7SUFoREo7SUFDQTtFYnMwREE7RWFqeERRO0lBaEVOO0lBQ0E7RWJvMURGO0VhcnhEUTtJQWhFTjtJQUNBO0VidzFERjtFYXp4RFE7SUFoRU47SUFDQTtFYjQxREY7RWE3eERRO0lBaEVOO0lBQ0E7RWJnMkRGO0VhanlEUTtJQWhFTjtJQUNBO0VibzJERjtFYXJ5RFE7SUFoRU47SUFDQTtFYncyREY7RWF6eURRO0lBaEVOO0lBQ0E7RWI0MkRGO0VhN3lEUTtJQWhFTjtJQUNBO0ViZzNERjtFYWp6RFE7SUFoRU47SUFDQTtFYm8zREY7RWFyekRRO0lBaEVOO0lBQ0E7RWJ3M0RGO0VhenpEUTtJQWhFTjtJQUNBO0ViNDNERjtFYTd6RFE7SUFoRU47SUFDQTtFYmc0REY7RWF6ekRVO0lBeERWO0VibzNEQTtFYTV6RFU7SUF4RFY7RWJ1M0RBO0VhL3pEVTtJQXhEVjtFYjAzREE7RWFsMERVO0lBeERWO0ViNjNEQTtFYXIwRFU7SUF4RFY7RWJnNERBO0VheDBEVTtJQXhEVjtFYm00REE7RWEzMERVO0lBeERWO0ViczREQTtFYTkwRFU7SUF4RFY7RWJ5NERBO0VhajFEVTtJQXhEVjtFYjQ0REE7RWFwMURVO0lBeERWO0ViKzREQTtFYXYxRFU7SUF4RFY7RWJrNURBO0VhMTFEVTtJQXhEVjtFYnE1REE7RWFsMURNOztJQUVFO0VibzFEUjtFYWoxRE07O0lBRUU7RWJtMURSO0VhMTFETTs7SUFFRTtFYjQxRFI7RWF6MURNOztJQUVFO0ViMjFEUjtFYWwyRE07O0lBRUU7RWJvMkRSO0VhajJETTs7SUFFRTtFYm0yRFI7RWExMkRNOztJQUVFO0ViNDJEUjtFYXoyRE07O0lBRUU7RWIyMkRSO0VhbDNETTs7SUFFRTtFYm8zRFI7RWFqM0RNOztJQUVFO0VibTNEUjtFYTEzRE07O0lBRUU7RWI0M0RSO0VhejNETTs7SUFFRTtFYjIzRFI7QUFDRjtBVXQ3REk7RUdVRTtJQUNFO0ViKzZETjtFYTU2REk7SUFwQ0o7SUFDQTtFYm05REE7RWFyOERBO0lBQ0U7SUFDQTtFYnU4REY7RWF6OERBO0lBQ0U7SUFDQTtFYjI4REY7RWE3OERBO0lBQ0U7SUFDQTtFYis4REY7RWFqOURBO0lBQ0U7SUFDQTtFYm05REY7RWFyOURBO0lBQ0U7SUFDQTtFYnU5REY7RWF6OURBO0lBQ0U7SUFDQTtFYjI5REY7RWE1N0RJO0lBaERKO0lBQ0E7RWIrK0RBO0VhMTdEUTtJQWhFTjtJQUNBO0ViNi9ERjtFYTk3RFE7SUFoRU47SUFDQTtFYmlnRUY7RWFsOERRO0lBaEVOO0lBQ0E7RWJxZ0VGO0VhdDhEUTtJQWhFTjtJQUNBO0VieWdFRjtFYTE4RFE7SUFoRU47SUFDQTtFYjZnRUY7RWE5OERRO0lBaEVOO0lBQ0E7RWJpaEVGO0VhbDlEUTtJQWhFTjtJQUNBO0VicWhFRjtFYXQ5RFE7SUFoRU47SUFDQTtFYnloRUY7RWExOURRO0lBaEVOO0lBQ0E7RWI2aEVGO0VhOTlEUTtJQWhFTjtJQUNBO0ViaWlFRjtFYWwrRFE7SUFoRU47SUFDQTtFYnFpRUY7RWF0K0RRO0lBaEVOO0lBQ0E7RWJ5aUVGO0VhbCtEVTtJQXhEVjtFYjZoRUE7RWFyK0RVO0lBeERWO0ViZ2lFQTtFYXgrRFU7SUF4RFY7RWJtaUVBO0VhMytEVTtJQXhEVjtFYnNpRUE7RWE5K0RVO0lBeERWO0VieWlFQTtFYWovRFU7SUF4RFY7RWI0aUVBO0VhcC9EVTtJQXhEVjtFYitpRUE7RWF2L0RVO0lBeERWO0Via2pFQTtFYTEvRFU7SUF4RFY7RWJxakVBO0VhNy9EVTtJQXhEVjtFYndqRUE7RWFoZ0VVO0lBeERWO0ViMmpFQTtFYW5nRVU7SUF4RFY7RWI4akVBO0VhMy9ETTs7SUFFRTtFYjYvRFI7RWExL0RNOztJQUVFO0ViNC9EUjtFYW5nRU07O0lBRUU7RWJxZ0VSO0VhbGdFTTs7SUFFRTtFYm9nRVI7RWEzZ0VNOztJQUVFO0ViNmdFUjtFYTFnRU07O0lBRUU7RWI0Z0VSO0VhbmhFTTs7SUFFRTtFYnFoRVI7RWFsaEVNOztJQUVFO0Vib2hFUjtFYTNoRU07O0lBRUU7RWI2aEVSO0VhMWhFTTs7SUFFRTtFYjRoRVI7RWFuaUVNOztJQUVFO0VicWlFUjtFYWxpRU07O0lBRUU7RWJvaUVSO0FBQ0Y7QWNsbkVBO0VBQ0k7QWRvbkVKOztBY2puRUE7RUFDSTtBZG9uRUo7O0Fjam5FQTtFQUNJO0Fkb25FSjs7QWNqbkVBO0VBQ0k7QWRvbkVKOztBY2puRUE7RUFDSTtBZG9uRUo7O0Fjam5FQTtFQUNJO0Fkb25FSjs7QWNqbkVBO0VBQ0k7QWRvbkVKOztBY2puRUE7RUFDSTtBZG9uRUo7O0Fjam5FQTtFQUNJO0Fkb25FSjs7QWNqbkVBO0VBQ0k7QWRvbkVKOztBY2puRUE7RUFDSTtBZG9uRUo7O0Fjam5FQTtFQUNJO0Fkb25FSjs7QWNqbkVBO0VBQ0k7QWRvbkVKOztBY2puRUE7RUFDSTtBZG9uRUo7O0Fjam5FQTtFQUNJO0Fkb25FSjs7QWNqbkVBO0VBQ0k7QWRvbkVKOztBY2puRUE7RUFDSTtBZG9uRUo7O0Fjam5FQTtFQUNJO0Fkb25FSjs7QWNqbkVBO0VBQ0k7QWRvbkVKOztBY2puRUE7RUFDSTtBZG9uRUo7O0Fjam5FQTtFQUNJO0Fkb25FSjs7QWNqbkVBO0VBQ0k7QWRvbkVKOztBY2puRUE7RUFDSTtBZG9uRUo7O0FldnJFUTtFQU9JO0Fmb3JFWjs7QWUzckVRO0VBT0k7QWZ3ckVaOztBZS9yRVE7RUFPSTtBZjRyRVo7O0FlbnNFUTtFQU9JO0FmZ3NFWjs7QWV2c0VRO0VBT0k7QWZvc0VaOztBZTNzRVE7RUFPSTtBZndzRVo7O0FlL3NFUTtFQU9JO0FmNHNFWjs7QWVudEVRO0VBT0k7QWZndEVaOztBZXZ0RVE7RUFPSTtBZm90RVo7O0FlM3RFUTtFQU9JO0Fmd3RFWjs7QWUvdEVRO0VBT0k7QWY0dEVaOztBZW51RVE7RUFPSTtBZmd1RVo7O0FldnVFUTtFQU9JO0Fmb3VFWjs7QWUzdUVRO0VBT0k7QWZ3dUVaOztBZS91RVE7RUFPSTtBZjR1RVo7O0FlbnZFUTtFQU9JO0FmZ3ZFWjs7QWV2dkVRO0VBT0k7QWZvdkVaOztBZTN2RVE7RUFPSTtBZnd2RVo7O0FlL3ZFUTtFQU9JO0FmNHZFWjs7QWVud0VRO0VBT0k7QWZnd0VaOztBZXZ3RVE7RUFPSTtBZm93RVo7O0FlM3dFUTtFQU9JO0Fmd3dFWjs7QWUvd0VRO0VBT0k7QWY0d0VaOztBZW54RVE7RUFPSTtBZmd4RVo7O0FldnhFUTtFQU9JO0Fmb3hFWjs7QWUzeEVRO0VBT0k7QWZ3eEVaOztBZS94RVE7RUFPSTtBZjR4RVo7O0FlbnlFUTtFQU9JO0FmZ3lFWjs7QWV2eUVRO0VBT0k7QWZveUVaOztBZTN5RVE7RUFPSTtFQUFBO0FmeXlFWjs7QWVoekVRO0VBT0k7RUFBQTtBZjh5RVo7O0FlcnpFUTtFQU9JO0VBQUE7QWZtekVaOztBZTF6RVE7RUFPSTtFQUFBO0Fmd3pFWjs7QWUvekVRO0VBT0k7RUFBQTtBZjZ6RVo7O0FlcDBFUTtFQU9JO0VBQUE7QWZrMEVaOztBZXowRVE7RUFPSTtFQUFBO0FmdTBFWjs7QWU5MEVRO0VBT0k7RUFBQTtBZjQwRVo7O0FlbjFFUTtFQU9JO0VBQUE7QWZpMUVaOztBZXgxRVE7RUFPSTtFQUFBO0FmczFFWjs7QWU3MUVRO0VBT0k7RUFBQTtBZjIxRVo7O0FlbDJFUTtFQU9JO0VBQUE7QWZnMkVaOztBZXYyRVE7RUFPSTtFQUFBO0FmcTJFWjs7QWU1MkVRO0VBT0k7RUFBQTtBZjAyRVo7O0FlajNFUTtFQU9JO0FmODJFWjs7QWVyM0VRO0VBT0k7QWZrM0VaOztBZXozRVE7RUFPSTtBZnMzRVo7O0FlNzNFUTtFQU9JO0FmMDNFWjs7QWVqNEVRO0VBT0k7QWY4M0VaOztBZXI0RVE7RUFPSTtBZms0RVo7O0FlejRFUTtFQU9JO0FmczRFWjs7QWU3NEVRO0VBT0k7QWYwNEVaOztBZWo1RVE7RUFPSTtBZjg0RVo7O0FlcjVFUTtFQU9JO0FmazVFWjs7QWV6NUVRO0VBT0k7QWZzNUVaOztBZTc1RVE7RUFPSTtBZjA1RVo7O0FlajZFUTtFQU9JO0FmODVFWjs7QWVyNkVRO0VBT0k7QWZrNkVaOztBZXo2RVE7RUFPSTtBZnM2RVo7O0FlNzZFUTtFQU9JO0FmMDZFWjs7QWVqN0VRO0VBT0k7QWY4NkVaOztBZXI3RVE7RUFPSTtBZms3RVo7O0FlejdFUTtFQU9JO0FmczdFWjs7QWU3N0VRO0VBT0k7QWYwN0VaOztBZWo4RVE7RUFPSTtBZjg3RVo7O0FlcjhFUTtFQU9JO0FmazhFWjs7QWV6OEVRO0VBT0k7QWZzOEVaOztBZTc4RVE7RUFPSTtBZjA4RVo7O0FlajlFUTtFQU9JO0FmODhFWjs7QWVyOUVRO0VBT0k7QWZrOUVaOztBZXo5RVE7RUFPSTtBZnM5RVo7O0FlNzlFUTtFQU9JO0FmMDlFWjs7QWVqK0VRO0VBT0k7QWY4OUVaOztBZXIrRVE7RUFPSTtBZmsrRVo7O0FleitFUTtFQU9JO0FmcytFWjs7QWU3K0VRO0VBT0k7QWYwK0VaOztBZWovRVE7RUFPSTtBZjgrRVo7O0Flci9FUTtFQU9JO0Fmay9FWjs7QWV6L0VRO0VBT0k7QWZzL0VaOztBZTcvRVE7RUFPSTtBZjAvRVo7O0FlamdGUTtFQU9JO0FmOC9FWjs7QWVyZ0ZRO0VBT0k7QWZrZ0ZaOztBZXpnRlE7RUFPSTtBZnNnRlo7O0FVaGhGSTtFS0dJO0lBT0k7RWYyZ0ZWO0VlbGhGTTtJQU9JO0VmOGdGVjtFZXJoRk07SUFPSTtFZmloRlY7RWV4aEZNO0lBT0k7RWZvaEZWO0VlM2hGTTtJQU9JO0VmdWhGVjtFZTloRk07SUFPSTtFZjBoRlY7RWVqaUZNO0lBT0k7RWY2aEZWO0VlcGlGTTtJQU9JO0VmZ2lGVjtFZXZpRk07SUFPSTtFZm1pRlY7RWUxaUZNO0lBT0k7RWZzaUZWO0VlN2lGTTtJQU9JO0VmeWlGVjtFZWhqRk07SUFPSTtFZjRpRlY7RWVuakZNO0lBT0k7RWYraUZWO0VldGpGTTtJQU9JO0Vma2pGVjtFZXpqRk07SUFPSTtFZnFqRlY7RWU1akZNO0lBT0k7RWZ3akZWO0VlL2pGTTtJQU9JO0VmMmpGVjtFZWxrRk07SUFPSTtFZjhqRlY7RWVya0ZNO0lBT0k7RWZpa0ZWO0VleGtGTTtJQU9JO0Vmb2tGVjtFZTNrRk07SUFPSTtFZnVrRlY7RWU5a0ZNO0lBT0k7RWYwa0ZWO0VlamxGTTtJQU9JO0VmNmtGVjtFZXBsRk07SUFPSTtFZmdsRlY7RWV2bEZNO0lBT0k7RWZtbEZWO0VlMWxGTTtJQU9JO0Vmc2xGVjtFZTdsRk07SUFPSTtFZnlsRlY7RWVobUZNO0lBT0k7RWY0bEZWO0Vlbm1GTTtJQU9JO0VmK2xGVjtFZXRtRk07SUFPSTtJQUFBO0VmbW1GVjtFZTFtRk07SUFPSTtJQUFBO0VmdW1GVjtFZTltRk07SUFPSTtJQUFBO0VmMm1GVjtFZWxuRk07SUFPSTtJQUFBO0VmK21GVjtFZXRuRk07SUFPSTtJQUFBO0VmbW5GVjtFZTFuRk07SUFPSTtJQUFBO0VmdW5GVjtFZTluRk07SUFPSTtJQUFBO0VmMm5GVjtFZWxvRk07SUFPSTtJQUFBO0VmK25GVjtFZXRvRk07SUFPSTtJQUFBO0VmbW9GVjtFZTFvRk07SUFPSTtJQUFBO0VmdW9GVjtFZTlvRk07SUFPSTtJQUFBO0VmMm9GVjtFZWxwRk07SUFPSTtJQUFBO0VmK29GVjtFZXRwRk07SUFPSTtJQUFBO0VmbXBGVjtFZTFwRk07SUFPSTtJQUFBO0VmdXBGVjtFZTlwRk07SUFPSTtFZjBwRlY7RWVqcUZNO0lBT0k7RWY2cEZWO0VlcHFGTTtJQU9JO0VmZ3FGVjtFZXZxRk07SUFPSTtFZm1xRlY7RWUxcUZNO0lBT0k7RWZzcUZWO0VlN3FGTTtJQU9JO0VmeXFGVjtFZWhyRk07SUFPSTtFZjRxRlY7RWVuckZNO0lBT0k7RWYrcUZWO0VldHJGTTtJQU9JO0Vma3JGVjtFZXpyRk07SUFPSTtFZnFyRlY7RWU1ckZNO0lBT0k7RWZ3ckZWO0VlL3JGTTtJQU9JO0VmMnJGVjtFZWxzRk07SUFPSTtFZjhyRlY7RWVyc0ZNO0lBT0k7RWZpc0ZWO0VleHNGTTtJQU9JO0Vmb3NGVjtFZTNzRk07SUFPSTtFZnVzRlY7RWU5c0ZNO0lBT0k7RWYwc0ZWO0VlanRGTTtJQU9JO0VmNnNGVjtFZXB0Rk07SUFPSTtFZmd0RlY7RWV2dEZNO0lBT0k7RWZtdEZWO0VlMXRGTTtJQU9JO0Vmc3RGVjtFZTd0Rk07SUFPSTtFZnl0RlY7RWVodUZNO0lBT0k7RWY0dEZWO0VlbnVGTTtJQU9JO0VmK3RGVjtFZXR1Rk07SUFPSTtFZmt1RlY7RWV6dUZNO0lBT0k7RWZxdUZWO0VlNXVGTTtJQU9JO0Vmd3VGVjtFZS91Rk07SUFPSTtFZjJ1RlY7RWVsdkZNO0lBT0k7RWY4dUZWO0VlcnZGTTtJQU9JO0VmaXZGVjtFZXh2Rk07SUFPSTtFZm92RlY7RWUzdkZNO0lBT0k7RWZ1dkZWO0VlOXZGTTtJQU9JO0VmMHZGVjtFZWp3Rk07SUFPSTtFZjZ2RlY7RWVwd0ZNO0lBT0k7RWZnd0ZWO0VldndGTTtJQU9JO0VmbXdGVjtFZTF3Rk07SUFPSTtFZnN3RlY7RWU3d0ZNO0lBT0k7RWZ5d0ZWO0VlaHhGTTtJQU9JO0VmNHdGVjtBQUNGO0FVdnhGSTtFS0dJO0lBT0k7RWZpeEZWO0VleHhGTTtJQU9JO0Vmb3hGVjtFZTN4Rk07SUFPSTtFZnV4RlY7RWU5eEZNO0lBT0k7RWYweEZWO0VlanlGTTtJQU9JO0VmNnhGVjtFZXB5Rk07SUFPSTtFZmd5RlY7RWV2eUZNO0lBT0k7RWZteUZWO0VlMXlGTTtJQU9JO0Vmc3lGVjtFZTd5Rk07SUFPSTtFZnl5RlY7RWVoekZNO0lBT0k7RWY0eUZWO0VlbnpGTTtJQU9JO0VmK3lGVjtFZXR6Rk07SUFPSTtFZmt6RlY7RWV6ekZNO0lBT0k7RWZxekZWO0VlNXpGTTtJQU9JO0Vmd3pGVjtFZS96Rk07SUFPSTtFZjJ6RlY7RWVsMEZNO0lBT0k7RWY4ekZWO0VlcjBGTTtJQU9JO0VmaTBGVjtFZXgwRk07SUFPSTtFZm8wRlY7RWUzMEZNO0lBT0k7RWZ1MEZWO0VlOTBGTTtJQU9JO0VmMDBGVjtFZWoxRk07SUFPSTtFZjYwRlY7RWVwMUZNO0lBT0k7RWZnMUZWO0VldjFGTTtJQU9JO0VmbTFGVjtFZTExRk07SUFPSTtFZnMxRlY7RWU3MUZNO0lBT0k7RWZ5MUZWO0VlaDJGTTtJQU9JO0VmNDFGVjtFZW4yRk07SUFPSTtFZisxRlY7RWV0MkZNO0lBT0k7RWZrMkZWO0VlejJGTTtJQU9JO0VmcTJGVjtFZTUyRk07SUFPSTtJQUFBO0VmeTJGVjtFZWgzRk07SUFPSTtJQUFBO0VmNjJGVjtFZXAzRk07SUFPSTtJQUFBO0VmaTNGVjtFZXgzRk07SUFPSTtJQUFBO0VmcTNGVjtFZTUzRk07SUFPSTtJQUFBO0VmeTNGVjtFZWg0Rk07SUFPSTtJQUFBO0VmNjNGVjtFZXA0Rk07SUFPSTtJQUFBO0VmaTRGVjtFZXg0Rk07SUFPSTtJQUFBO0VmcTRGVjtFZTU0Rk07SUFPSTtJQUFBO0VmeTRGVjtFZWg1Rk07SUFPSTtJQUFBO0VmNjRGVjtFZXA1Rk07SUFPSTtJQUFBO0VmaTVGVjtFZXg1Rk07SUFPSTtJQUFBO0VmcTVGVjtFZTU1Rk07SUFPSTtJQUFBO0VmeTVGVjtFZWg2Rk07SUFPSTtJQUFBO0VmNjVGVjtFZXA2Rk07SUFPSTtFZmc2RlY7RWV2NkZNO0lBT0k7RWZtNkZWO0VlMTZGTTtJQU9JO0VmczZGVjtFZTc2Rk07SUFPSTtFZnk2RlY7RWVoN0ZNO0lBT0k7RWY0NkZWO0VlbjdGTTtJQU9JO0VmKzZGVjtFZXQ3Rk07SUFPSTtFZms3RlY7RWV6N0ZNO0lBT0k7RWZxN0ZWO0VlNTdGTTtJQU9JO0VmdzdGVjtFZS83Rk07SUFPSTtFZjI3RlY7RWVsOEZNO0lBT0k7RWY4N0ZWO0VlcjhGTTtJQU9JO0VmaThGVjtFZXg4Rk07SUFPSTtFZm84RlY7RWUzOEZNO0lBT0k7RWZ1OEZWO0VlOThGTTtJQU9JO0VmMDhGVjtFZWo5Rk07SUFPSTtFZjY4RlY7RWVwOUZNO0lBT0k7RWZnOUZWO0VldjlGTTtJQU9JO0VmbTlGVjtFZTE5Rk07SUFPSTtFZnM5RlY7RWU3OUZNO0lBT0k7RWZ5OUZWO0VlaCtGTTtJQU9JO0VmNDlGVjtFZW4rRk07SUFPSTtFZis5RlY7RWV0K0ZNO0lBT0k7RWZrK0ZWO0VleitGTTtJQU9JO0VmcStGVjtFZTUrRk07SUFPSTtFZncrRlY7RWUvK0ZNO0lBT0k7RWYyK0ZWO0VlbC9GTTtJQU9JO0VmOCtGVjtFZXIvRk07SUFPSTtFZmkvRlY7RWV4L0ZNO0lBT0k7RWZvL0ZWO0VlMy9GTTtJQU9JO0VmdS9GVjtFZTkvRk07SUFPSTtFZjAvRlY7RWVqZ0dNO0lBT0k7RWY2L0ZWO0VlcGdHTTtJQU9JO0VmZ2dHVjtFZXZnR007SUFPSTtFZm1nR1Y7RWUxZ0dNO0lBT0k7RWZzZ0dWO0VlN2dHTTtJQU9JO0VmeWdHVjtFZWhoR007SUFPSTtFZjRnR1Y7RWVuaEdNO0lBT0k7RWYrZ0dWO0VldGhHTTtJQU9JO0Vma2hHVjtBQUNGO0FVN2hHSTtFS0dJO0lBT0k7RWZ1aEdWO0VlOWhHTTtJQU9JO0VmMGhHVjtFZWppR007SUFPSTtFZjZoR1Y7RWVwaUdNO0lBT0k7RWZnaUdWO0VldmlHTTtJQU9JO0VmbWlHVjtFZTFpR007SUFPSTtFZnNpR1Y7RWU3aUdNO0lBT0k7RWZ5aUdWO0VlaGpHTTtJQU9JO0VmNGlHVjtFZW5qR007SUFPSTtFZitpR1Y7RWV0akdNO0lBT0k7RWZrakdWO0VlempHTTtJQU9JO0VmcWpHVjtFZTVqR007SUFPSTtFZndqR1Y7RWUvakdNO0lBT0k7RWYyakdWO0VlbGtHTTtJQU9JO0VmOGpHVjtFZXJrR007SUFPSTtFZmlrR1Y7RWV4a0dNO0lBT0k7RWZva0dWO0VlM2tHTTtJQU9JO0VmdWtHVjtFZTlrR007SUFPSTtFZjBrR1Y7RWVqbEdNO0lBT0k7RWY2a0dWO0VlcGxHTTtJQU9JO0VmZ2xHVjtFZXZsR007SUFPSTtFZm1sR1Y7RWUxbEdNO0lBT0k7RWZzbEdWO0VlN2xHTTtJQU9JO0VmeWxHVjtFZWhtR007SUFPSTtFZjRsR1Y7RWVubUdNO0lBT0k7RWYrbEdWO0VldG1HTTtJQU9JO0Vma21HVjtFZXptR007SUFPSTtFZnFtR1Y7RWU1bUdNO0lBT0k7RWZ3bUdWO0VlL21HTTtJQU9JO0VmMm1HVjtFZWxuR007SUFPSTtJQUFBO0VmK21HVjtFZXRuR007SUFPSTtJQUFBO0VmbW5HVjtFZTFuR007SUFPSTtJQUFBO0VmdW5HVjtFZTluR007SUFPSTtJQUFBO0VmMm5HVjtFZWxvR007SUFPSTtJQUFBO0VmK25HVjtFZXRvR007SUFPSTtJQUFBO0VmbW9HVjtFZTFvR007SUFPSTtJQUFBO0VmdW9HVjtFZTlvR007SUFPSTtJQUFBO0VmMm9HVjtFZWxwR007SUFPSTtJQUFBO0VmK29HVjtFZXRwR007SUFPSTtJQUFBO0VmbXBHVjtFZTFwR007SUFPSTtJQUFBO0VmdXBHVjtFZTlwR007SUFPSTtJQUFBO0VmMnBHVjtFZWxxR007SUFPSTtJQUFBO0VmK3BHVjtFZXRxR007SUFPSTtJQUFBO0VmbXFHVjtFZTFxR007SUFPSTtFZnNxR1Y7RWU3cUdNO0lBT0k7RWZ5cUdWO0VlaHJHTTtJQU9JO0VmNHFHVjtFZW5yR007SUFPSTtFZitxR1Y7RWV0ckdNO0lBT0k7RWZrckdWO0VlenJHTTtJQU9JO0VmcXJHVjtFZTVyR007SUFPSTtFZndyR1Y7RWUvckdNO0lBT0k7RWYyckdWO0VlbHNHTTtJQU9JO0VmOHJHVjtFZXJzR007SUFPSTtFZmlzR1Y7RWV4c0dNO0lBT0k7RWZvc0dWO0VlM3NHTTtJQU9JO0VmdXNHVjtFZTlzR007SUFPSTtFZjBzR1Y7RWVqdEdNO0lBT0k7RWY2c0dWO0VlcHRHTTtJQU9JO0VmZ3RHVjtFZXZ0R007SUFPSTtFZm10R1Y7RWUxdEdNO0lBT0k7RWZzdEdWO0VlN3RHTTtJQU9JO0VmeXRHVjtFZWh1R007SUFPSTtFZjR0R1Y7RWVudUdNO0lBT0k7RWYrdEdWO0VldHVHTTtJQU9JO0Vma3VHVjtFZXp1R007SUFPSTtFZnF1R1Y7RWU1dUdNO0lBT0k7RWZ3dUdWO0VlL3VHTTtJQU9JO0VmMnVHVjtFZWx2R007SUFPSTtFZjh1R1Y7RWVydkdNO0lBT0k7RWZpdkdWO0VleHZHTTtJQU9JO0Vmb3ZHVjtFZTN2R007SUFPSTtFZnV2R1Y7RWU5dkdNO0lBT0k7RWYwdkdWO0VlandHTTtJQU9JO0VmNnZHVjtFZXB3R007SUFPSTtFZmd3R1Y7RWV2d0dNO0lBT0k7RWZtd0dWO0VlMXdHTTtJQU9JO0Vmc3dHVjtFZTd3R007SUFPSTtFZnl3R1Y7RWVoeEdNO0lBT0k7RWY0d0dWO0VlbnhHTTtJQU9JO0VmK3dHVjtFZXR4R007SUFPSTtFZmt4R1Y7RWV6eEdNO0lBT0k7RWZxeEdWO0VlNXhHTTtJQU9JO0Vmd3hHVjtBQUNGO0FVbnlHSTtFS0dJO0lBT0k7RWY2eEdWO0VlcHlHTTtJQU9JO0VmZ3lHVjtFZXZ5R007SUFPSTtFZm15R1Y7RWUxeUdNO0lBT0k7RWZzeUdWO0VlN3lHTTtJQU9JO0VmeXlHVjtFZWh6R007SUFPSTtFZjR5R1Y7RWVuekdNO0lBT0k7RWYreUdWO0VldHpHTTtJQU9JO0Vma3pHVjtFZXp6R007SUFPSTtFZnF6R1Y7RWU1ekdNO0lBT0k7RWZ3ekdWO0VlL3pHTTtJQU9JO0VmMnpHVjtFZWwwR007SUFPSTtFZjh6R1Y7RWVyMEdNO0lBT0k7RWZpMEdWO0VleDBHTTtJQU9JO0VmbzBHVjtFZTMwR007SUFPSTtFZnUwR1Y7RWU5MEdNO0lBT0k7RWYwMEdWO0VlajFHTTtJQU9JO0VmNjBHVjtFZXAxR007SUFPSTtFZmcxR1Y7RWV2MUdNO0lBT0k7RWZtMUdWO0VlMTFHTTtJQU9JO0VmczFHVjtFZTcxR007SUFPSTtFZnkxR1Y7RWVoMkdNO0lBT0k7RWY0MUdWO0VlbjJHTTtJQU9JO0VmKzFHVjtFZXQyR007SUFPSTtFZmsyR1Y7RWV6MkdNO0lBT0k7RWZxMkdWO0VlNTJHTTtJQU9JO0VmdzJHVjtFZS8yR007SUFPSTtFZjIyR1Y7RWVsM0dNO0lBT0k7RWY4MkdWO0VlcjNHTTtJQU9JO0VmaTNHVjtFZXgzR007SUFPSTtJQUFBO0VmcTNHVjtFZTUzR007SUFPSTtJQUFBO0VmeTNHVjtFZWg0R007SUFPSTtJQUFBO0VmNjNHVjtFZXA0R007SUFPSTtJQUFBO0VmaTRHVjtFZXg0R007SUFPSTtJQUFBO0VmcTRHVjtFZTU0R007SUFPSTtJQUFBO0VmeTRHVjtFZWg1R007SUFPSTtJQUFBO0VmNjRHVjtFZXA1R007SUFPSTtJQUFBO0VmaTVHVjtFZXg1R007SUFPSTtJQUFBO0VmcTVHVjtFZTU1R007SUFPSTtJQUFBO0VmeTVHVjtFZWg2R007SUFPSTtJQUFBO0VmNjVHVjtFZXA2R007SUFPSTtJQUFBO0VmaTZHVjtFZXg2R007SUFPSTtJQUFBO0VmcTZHVjtFZTU2R007SUFPSTtJQUFBO0VmeTZHVjtFZWg3R007SUFPSTtFZjQ2R1Y7RWVuN0dNO0lBT0k7RWYrNkdWO0VldDdHTTtJQU9JO0VmazdHVjtFZXo3R007SUFPSTtFZnE3R1Y7RWU1N0dNO0lBT0k7RWZ3N0dWO0VlLzdHTTtJQU9JO0VmMjdHVjtFZWw4R007SUFPSTtFZjg3R1Y7RWVyOEdNO0lBT0k7RWZpOEdWO0VleDhHTTtJQU9JO0VmbzhHVjtFZTM4R007SUFPSTtFZnU4R1Y7RWU5OEdNO0lBT0k7RWYwOEdWO0VlajlHTTtJQU9JO0VmNjhHVjtFZXA5R007SUFPSTtFZmc5R1Y7RWV2OUdNO0lBT0k7RWZtOUdWO0VlMTlHTTtJQU9JO0VmczlHVjtFZTc5R007SUFPSTtFZnk5R1Y7RWVoK0dNO0lBT0k7RWY0OUdWO0VlbitHTTtJQU9JO0VmKzlHVjtFZXQrR007SUFPSTtFZmsrR1Y7RWV6K0dNO0lBT0k7RWZxK0dWO0VlNStHTTtJQU9JO0VmdytHVjtFZS8rR007SUFPSTtFZjIrR1Y7RWVsL0dNO0lBT0k7RWY4K0dWO0Vlci9HTTtJQU9JO0VmaS9HVjtFZXgvR007SUFPSTtFZm8vR1Y7RWUzL0dNO0lBT0k7RWZ1L0dWO0VlOS9HTTtJQU9JO0VmMC9HVjtFZWpnSE07SUFPSTtFZjYvR1Y7RWVwZ0hNO0lBT0k7RWZnZ0hWO0VldmdITTtJQU9JO0VmbWdIVjtFZTFnSE07SUFPSTtFZnNnSFY7RWU3Z0hNO0lBT0k7RWZ5Z0hWO0VlaGhITTtJQU9JO0VmNGdIVjtFZW5oSE07SUFPSTtFZitnSFY7RWV0aEhNO0lBT0k7RWZraEhWO0VlemhITTtJQU9JO0VmcWhIVjtFZTVoSE07SUFPSTtFZndoSFY7RWUvaEhNO0lBT0k7RWYyaEhWO0VlbGlITTtJQU9JO0VmOGhIVjtBQUNGO0FVemlISTtFS0dJO0lBT0k7RWZtaUhWO0VlMWlITTtJQU9JO0Vmc2lIVjtFZTdpSE07SUFPSTtFZnlpSFY7RWVoakhNO0lBT0k7RWY0aUhWO0VlbmpITTtJQU9JO0VmK2lIVjtFZXRqSE07SUFPSTtFZmtqSFY7RWV6akhNO0lBT0k7RWZxakhWO0VlNWpITTtJQU9JO0Vmd2pIVjtFZS9qSE07SUFPSTtFZjJqSFY7RWVsa0hNO0lBT0k7RWY4akhWO0VlcmtITTtJQU9JO0VmaWtIVjtFZXhrSE07SUFPSTtFZm9rSFY7RWUza0hNO0lBT0k7RWZ1a0hWO0VlOWtITTtJQU9JO0VmMGtIVjtFZWpsSE07SUFPSTtFZjZrSFY7RWVwbEhNO0lBT0k7RWZnbEhWO0VldmxITTtJQU9JO0VmbWxIVjtFZTFsSE07SUFPSTtFZnNsSFY7RWU3bEhNO0lBT0k7RWZ5bEhWO0VlaG1ITTtJQU9JO0VmNGxIVjtFZW5tSE07SUFPSTtFZitsSFY7RWV0bUhNO0lBT0k7RWZrbUhWO0Vlem1ITTtJQU9JO0VmcW1IVjtFZTVtSE07SUFPSTtFZndtSFY7RWUvbUhNO0lBT0k7RWYybUhWO0VlbG5ITTtJQU9JO0VmOG1IVjtFZXJuSE07SUFPSTtFZmluSFY7RWV4bkhNO0lBT0k7RWZvbkhWO0VlM25ITTtJQU9JO0VmdW5IVjtFZTluSE07SUFPSTtJQUFBO0VmMm5IVjtFZWxvSE07SUFPSTtJQUFBO0VmK25IVjtFZXRvSE07SUFPSTtJQUFBO0VmbW9IVjtFZTFvSE07SUFPSTtJQUFBO0VmdW9IVjtFZTlvSE07SUFPSTtJQUFBO0VmMm9IVjtFZWxwSE07SUFPSTtJQUFBO0VmK29IVjtFZXRwSE07SUFPSTtJQUFBO0VmbXBIVjtFZTFwSE07SUFPSTtJQUFBO0VmdXBIVjtFZTlwSE07SUFPSTtJQUFBO0VmMnBIVjtFZWxxSE07SUFPSTtJQUFBO0VmK3BIVjtFZXRxSE07SUFPSTtJQUFBO0VmbXFIVjtFZTFxSE07SUFPSTtJQUFBO0VmdXFIVjtFZTlxSE07SUFPSTtJQUFBO0VmMnFIVjtFZWxySE07SUFPSTtJQUFBO0VmK3FIVjtFZXRySE07SUFPSTtFZmtySFY7RWV6ckhNO0lBT0k7RWZxckhWO0VlNXJITTtJQU9JO0Vmd3JIVjtFZS9ySE07SUFPSTtFZjJySFY7RWVsc0hNO0lBT0k7RWY4ckhWO0VlcnNITTtJQU9JO0VmaXNIVjtFZXhzSE07SUFPSTtFZm9zSFY7RWUzc0hNO0lBT0k7RWZ1c0hWO0VlOXNITTtJQU9JO0VmMHNIVjtFZWp0SE07SUFPSTtFZjZzSFY7RWVwdEhNO0lBT0k7RWZndEhWO0VldnRITTtJQU9JO0VmbXRIVjtFZTF0SE07SUFPSTtFZnN0SFY7RWU3dEhNO0lBT0k7RWZ5dEhWO0VlaHVITTtJQU9JO0VmNHRIVjtFZW51SE07SUFPSTtFZit0SFY7RWV0dUhNO0lBT0k7RWZrdUhWO0VlenVITTtJQU9JO0VmcXVIVjtFZTV1SE07SUFPSTtFZnd1SFY7RWUvdUhNO0lBT0k7RWYydUhWO0VlbHZITTtJQU9JO0VmOHVIVjtFZXJ2SE07SUFPSTtFZml2SFY7RWV4dkhNO0lBT0k7RWZvdkhWO0VlM3ZITTtJQU9JO0VmdXZIVjtFZTl2SE07SUFPSTtFZjB2SFY7RWVqd0hNO0lBT0k7RWY2dkhWO0VlcHdITTtJQU9JO0VmZ3dIVjtFZXZ3SE07SUFPSTtFZm13SFY7RWUxd0hNO0lBT0k7RWZzd0hWO0VlN3dITTtJQU9JO0VmeXdIVjtFZWh4SE07SUFPSTtFZjR3SFY7RWVueEhNO0lBT0k7RWYrd0hWO0VldHhITTtJQU9JO0Vma3hIVjtFZXp4SE07SUFPSTtFZnF4SFY7RWU1eEhNO0lBT0k7RWZ3eEhWO0VlL3hITTtJQU9JO0VmMnhIVjtFZWx5SE07SUFPSTtFZjh4SFY7RWVyeUhNO0lBT0k7RWZpeUhWO0VleHlITTtJQU9JO0Vmb3lIVjtBQUNGO0FVL3lISTtFS0dJO0lBT0k7RWZ5eUhWO0VlaHpITTtJQU9JO0VmNHlIVjtFZW56SE07SUFPSTtFZit5SFY7RWV0ekhNO0lBT0k7RWZrekhWO0VlenpITTtJQU9JO0VmcXpIVjtFZTV6SE07SUFPSTtFZnd6SFY7RWUvekhNO0lBT0k7RWYyekhWO0VlbDBITTtJQU9JO0VmOHpIVjtFZXIwSE07SUFPSTtFZmkwSFY7RWV4MEhNO0lBT0k7RWZvMEhWO0VlMzBITTtJQU9JO0VmdTBIVjtFZTkwSE07SUFPSTtFZjAwSFY7RWVqMUhNO0lBT0k7RWY2MEhWO0VlcDFITTtJQU9JO0VmZzFIVjtFZXYxSE07SUFPSTtFZm0xSFY7RWUxMUhNO0lBT0k7RWZzMUhWO0VlNzFITTtJQU9JO0VmeTFIVjtFZWgySE07SUFPSTtFZjQxSFY7RWVuMkhNO0lBT0k7RWYrMUhWO0VldDJITTtJQU9JO0VmazJIVjtFZXoySE07SUFPSTtFZnEySFY7RWU1MkhNO0lBT0k7RWZ3MkhWO0VlLzJITTtJQU9JO0VmMjJIVjtFZWwzSE07SUFPSTtFZjgySFY7RWVyM0hNO0lBT0k7RWZpM0hWO0VleDNITTtJQU9JO0VmbzNIVjtFZTMzSE07SUFPSTtFZnUzSFY7RWU5M0hNO0lBT0k7RWYwM0hWO0VlajRITTtJQU9JO0VmNjNIVjtFZXA0SE07SUFPSTtJQUFBO0VmaTRIVjtFZXg0SE07SUFPSTtJQUFBO0VmcTRIVjtFZTU0SE07SUFPSTtJQUFBO0VmeTRIVjtFZWg1SE07SUFPSTtJQUFBO0VmNjRIVjtFZXA1SE07SUFPSTtJQUFBO0VmaTVIVjtFZXg1SE07SUFPSTtJQUFBO0VmcTVIVjtFZTU1SE07SUFPSTtJQUFBO0VmeTVIVjtFZWg2SE07SUFPSTtJQUFBO0VmNjVIVjtFZXA2SE07SUFPSTtJQUFBO0VmaTZIVjtFZXg2SE07SUFPSTtJQUFBO0VmcTZIVjtFZTU2SE07SUFPSTtJQUFBO0VmeTZIVjtFZWg3SE07SUFPSTtJQUFBO0VmNjZIVjtFZXA3SE07SUFPSTtJQUFBO0VmaTdIVjtFZXg3SE07SUFPSTtJQUFBO0VmcTdIVjtFZTU3SE07SUFPSTtFZnc3SFY7RWUvN0hNO0lBT0k7RWYyN0hWO0VlbDhITTtJQU9JO0VmODdIVjtFZXI4SE07SUFPSTtFZmk4SFY7RWV4OEhNO0lBT0k7RWZvOEhWO0VlMzhITTtJQU9JO0VmdThIVjtFZTk4SE07SUFPSTtFZjA4SFY7RWVqOUhNO0lBT0k7RWY2OEhWO0VlcDlITTtJQU9JO0VmZzlIVjtFZXY5SE07SUFPSTtFZm05SFY7RWUxOUhNO0lBT0k7RWZzOUhWO0VlNzlITTtJQU9JO0VmeTlIVjtFZWgrSE07SUFPSTtFZjQ5SFY7RWVuK0hNO0lBT0k7RWYrOUhWO0VldCtITTtJQU9JO0VmaytIVjtFZXorSE07SUFPSTtFZnErSFY7RWU1K0hNO0lBT0k7RWZ3K0hWO0VlLytITTtJQU9JO0VmMitIVjtFZWwvSE07SUFPSTtFZjgrSFY7RWVyL0hNO0lBT0k7RWZpL0hWO0VleC9ITTtJQU9JO0Vmby9IVjtFZTMvSE07SUFPSTtFZnUvSFY7RWU5L0hNO0lBT0k7RWYwL0hWO0VlamdJTTtJQU9JO0VmNi9IVjtFZXBnSU07SUFPSTtFZmdnSVY7RWV2Z0lNO0lBT0k7RWZtZ0lWO0VlMWdJTTtJQU9JO0Vmc2dJVjtFZTdnSU07SUFPSTtFZnlnSVY7RWVoaElNO0lBT0k7RWY0Z0lWO0VlbmhJTTtJQU9JO0VmK2dJVjtFZXRoSU07SUFPSTtFZmtoSVY7RWV6aElNO0lBT0k7RWZxaElWO0VlNWhJTTtJQU9JO0Vmd2hJVjtFZS9oSU07SUFPSTtFZjJoSVY7RWVsaUlNO0lBT0k7RWY4aElWO0VlcmlJTTtJQU9JO0VmaWlJVjtFZXhpSU07SUFPSTtFZm9pSVY7RWUzaUlNO0lBT0k7RWZ1aUlWO0VlOWlJTTtJQU9JO0VmMGlJVjtBQUNGO0FVcmpJSTtFS0dJO0lBT0k7RWYraUlWO0VldGpJTTtJQU9JO0Vma2pJVjtFZXpqSU07SUFPSTtFZnFqSVY7RWU1aklNO0lBT0k7RWZ3aklWO0VlL2pJTTtJQU9JO0VmMmpJVjtFZWxrSU07SUFPSTtFZjhqSVY7RWVya0lNO0lBT0k7RWZpa0lWO0VleGtJTTtJQU9JO0Vmb2tJVjtFZTNrSU07SUFPSTtFZnVrSVY7RWU5a0lNO0lBT0k7RWYwa0lWO0VlamxJTTtJQU9JO0VmNmtJVjtFZXBsSU07SUFPSTtFZmdsSVY7RWV2bElNO0lBT0k7RWZtbElWO0VlMWxJTTtJQU9JO0Vmc2xJVjtFZTdsSU07SUFPSTtFZnlsSVY7RWVobUlNO0lBT0k7RWY0bElWO0Vlbm1JTTtJQU9JO0VmK2xJVjtFZXRtSU07SUFPSTtFZmttSVY7RWV6bUlNO0lBT0k7RWZxbUlWO0VlNW1JTTtJQU9JO0Vmd21JVjtFZS9tSU07SUFPSTtFZjJtSVY7RWVsbklNO0lBT0k7RWY4bUlWO0Vlcm5JTTtJQU9JO0VmaW5JVjtFZXhuSU07SUFPSTtFZm9uSVY7RWUzbklNO0lBT0k7RWZ1bklWO0VlOW5JTTtJQU9JO0VmMG5JVjtFZWpvSU07SUFPSTtFZjZuSVY7RWVwb0lNO0lBT0k7RWZnb0lWO0Vldm9JTTtJQU9JO0VmbW9JVjtFZTFvSU07SUFPSTtJQUFBO0VmdW9JVjtFZTlvSU07SUFPSTtJQUFBO0VmMm9JVjtFZWxwSU07SUFPSTtJQUFBO0VmK29JVjtFZXRwSU07SUFPSTtJQUFBO0VmbXBJVjtFZTFwSU07SUFPSTtJQUFBO0VmdXBJVjtFZTlwSU07SUFPSTtJQUFBO0VmMnBJVjtFZWxxSU07SUFPSTtJQUFBO0VmK3BJVjtFZXRxSU07SUFPSTtJQUFBO0VmbXFJVjtFZTFxSU07SUFPSTtJQUFBO0VmdXFJVjtFZTlxSU07SUFPSTtJQUFBO0VmMnFJVjtFZWxySU07SUFPSTtJQUFBO0VmK3FJVjtFZXRySU07SUFPSTtJQUFBO0VmbXJJVjtFZTFySU07SUFPSTtJQUFBO0VmdXJJVjtFZTlySU07SUFPSTtJQUFBO0VmMnJJVjtFZWxzSU07SUFPSTtFZjhySVY7RWVyc0lNO0lBT0k7RWZpc0lWO0VleHNJTTtJQU9JO0Vmb3NJVjtFZTNzSU07SUFPSTtFZnVzSVY7RWU5c0lNO0lBT0k7RWYwc0lWO0VlanRJTTtJQU9JO0VmNnNJVjtFZXB0SU07SUFPSTtFZmd0SVY7RWV2dElNO0lBT0k7RWZtdElWO0VlMXRJTTtJQU9JO0Vmc3RJVjtFZTd0SU07SUFPSTtFZnl0SVY7RWVodUlNO0lBT0k7RWY0dElWO0VlbnVJTTtJQU9JO0VmK3RJVjtFZXR1SU07SUFPSTtFZmt1SVY7RWV6dUlNO0lBT0k7RWZxdUlWO0VlNXVJTTtJQU9JO0Vmd3VJVjtFZS91SU07SUFPSTtFZjJ1SVY7RWVsdklNO0lBT0k7RWY4dUlWO0VlcnZJTTtJQU9JO0VmaXZJVjtFZXh2SU07SUFPSTtFZm92SVY7RWUzdklNO0lBT0k7RWZ1dklWO0VlOXZJTTtJQU9JO0VmMHZJVjtFZWp3SU07SUFPSTtFZjZ2SVY7RWVwd0lNO0lBT0k7RWZnd0lWO0VldndJTTtJQU9JO0VmbXdJVjtFZTF3SU07SUFPSTtFZnN3SVY7RWU3d0lNO0lBT0k7RWZ5d0lWO0VlaHhJTTtJQU9JO0VmNHdJVjtFZW54SU07SUFPSTtFZit3SVY7RWV0eElNO0lBT0k7RWZreElWO0VlenhJTTtJQU9JO0VmcXhJVjtFZTV4SU07SUFPSTtFZnd4SVY7RWUveElNO0lBT0k7RWYyeElWO0VlbHlJTTtJQU9JO0VmOHhJVjtFZXJ5SU07SUFPSTtFZml5SVY7RWV4eUlNO0lBT0k7RWZveUlWO0VlM3lJTTtJQU9JO0VmdXlJVjtFZTl5SU07SUFPSTtFZjB5SVY7RWVqeklNO0lBT0k7RWY2eUlWO0VlcHpJTTtJQU9JO0VmZ3pJVjtBQUNGO0FVM3pJSTtFS0dJO0lBT0k7RWZxeklWO0VlNXpJTTtJQU9JO0Vmd3pJVjtFZS96SU07SUFPSTtFZjJ6SVY7RWVsMElNO0lBT0k7RWY4eklWO0VlcjBJTTtJQU9JO0VmaTBJVjtFZXgwSU07SUFPSTtFZm8wSVY7RWUzMElNO0lBT0k7RWZ1MElWO0VlOTBJTTtJQU9JO0VmMDBJVjtFZWoxSU07SUFPSTtFZjYwSVY7RWVwMUlNO0lBT0k7RWZnMUlWO0VldjFJTTtJQU9JO0VmbTFJVjtFZTExSU07SUFPSTtFZnMxSVY7RWU3MUlNO0lBT0k7RWZ5MUlWO0VlaDJJTTtJQU9JO0VmNDFJVjtFZW4ySU07SUFPSTtFZisxSVY7RWV0MklNO0lBT0k7RWZrMklWO0VlejJJTTtJQU9JO0VmcTJJVjtFZTUySU07SUFPSTtFZncySVY7RWUvMklNO0lBT0k7RWYyMklWO0VlbDNJTTtJQU9JO0VmODJJVjtFZXIzSU07SUFPSTtFZmkzSVY7RWV4M0lNO0lBT0k7RWZvM0lWO0VlMzNJTTtJQU9JO0VmdTNJVjtFZTkzSU07SUFPSTtFZjAzSVY7RWVqNElNO0lBT0k7RWY2M0lWO0VlcDRJTTtJQU9JO0VmZzRJVjtFZXY0SU07SUFPSTtFZm00SVY7RWUxNElNO0lBT0k7RWZzNElWO0VlNzRJTTtJQU9JO0VmeTRJVjtFZWg1SU07SUFPSTtJQUFBO0VmNjRJVjtFZXA1SU07SUFPSTtJQUFBO0VmaTVJVjtFZXg1SU07SUFPSTtJQUFBO0VmcTVJVjtFZTU1SU07SUFPSTtJQUFBO0VmeTVJVjtFZWg2SU07SUFPSTtJQUFBO0VmNjVJVjtFZXA2SU07SUFPSTtJQUFBO0VmaTZJVjtFZXg2SU07SUFPSTtJQUFBO0VmcTZJVjtFZTU2SU07SUFPSTtJQUFBO0VmeTZJVjtFZWg3SU07SUFPSTtJQUFBO0VmNjZJVjtFZXA3SU07SUFPSTtJQUFBO0VmaTdJVjtFZXg3SU07SUFPSTtJQUFBO0VmcTdJVjtFZTU3SU07SUFPSTtJQUFBO0VmeTdJVjtFZWg4SU07SUFPSTtJQUFBO0VmNjdJVjtFZXA4SU07SUFPSTtJQUFBO0VmaThJVjtFZXg4SU07SUFPSTtFZm84SVY7RWUzOElNO0lBT0k7RWZ1OElWO0VlOThJTTtJQU9JO0VmMDhJVjtFZWo5SU07SUFPSTtFZjY4SVY7RWVwOUlNO0lBT0k7RWZnOUlWO0VldjlJTTtJQU9JO0VmbTlJVjtFZTE5SU07SUFPSTtFZnM5SVY7RWU3OUlNO0lBT0k7RWZ5OUlWO0VlaCtJTTtJQU9JO0VmNDlJVjtFZW4rSU07SUFPSTtFZis5SVY7RWV0K0lNO0lBT0k7RWZrK0lWO0VleitJTTtJQU9JO0VmcStJVjtFZTUrSU07SUFPSTtFZncrSVY7RWUvK0lNO0lBT0k7RWYyK0lWO0VlbC9JTTtJQU9JO0VmOCtJVjtFZXIvSU07SUFPSTtFZmkvSVY7RWV4L0lNO0lBT0k7RWZvL0lWO0VlMy9JTTtJQU9JO0VmdS9JVjtFZTkvSU07SUFPSTtFZjAvSVY7RWVqZ0pNO0lBT0k7RWY2L0lWO0VlcGdKTTtJQU9JO0VmZ2dKVjtFZXZnSk07SUFPSTtFZm1nSlY7RWUxZ0pNO0lBT0k7RWZzZ0pWO0VlN2dKTTtJQU9JO0VmeWdKVjtFZWhoSk07SUFPSTtFZjRnSlY7RWVuaEpNO0lBT0k7RWYrZ0pWO0VldGhKTTtJQU9JO0Vma2hKVjtFZXpoSk07SUFPSTtFZnFoSlY7RWU1aEpNO0lBT0k7RWZ3aEpWO0VlL2hKTTtJQU9JO0VmMmhKVjtFZWxpSk07SUFPSTtFZjhoSlY7RWVyaUpNO0lBT0k7RWZpaUpWO0VleGlKTTtJQU9JO0Vmb2lKVjtFZTNpSk07SUFPSTtFZnVpSlY7RWU5aUpNO0lBT0k7RWYwaUpWO0VlampKTTtJQU9JO0VmNmlKVjtFZXBqSk07SUFPSTtFZmdqSlY7RWV2akpNO0lBT0k7RWZtakpWO0VlMWpKTTtJQU9JO0Vmc2pKVjtBQUNGO0FVamtKSTtFS0dJO0lBT0k7RWYyakpWO0VlbGtKTTtJQU9JO0VmOGpKVjtFZXJrSk07SUFPSTtFZmlrSlY7RWV4a0pNO0lBT0k7RWZva0pWO0VlM2tKTTtJQU9JO0VmdWtKVjtFZTlrSk07SUFPSTtFZjBrSlY7RWVqbEpNO0lBT0k7RWY2a0pWO0VlcGxKTTtJQU9JO0VmZ2xKVjtFZXZsSk07SUFPSTtFZm1sSlY7RWUxbEpNO0lBT0k7RWZzbEpWO0VlN2xKTTtJQU9JO0VmeWxKVjtFZWhtSk07SUFPSTtFZjRsSlY7RWVubUpNO0lBT0k7RWYrbEpWO0VldG1KTTtJQU9JO0Vma21KVjtFZXptSk07SUFPSTtFZnFtSlY7RWU1bUpNO0lBT0k7RWZ3bUpWO0VlL21KTTtJQU9JO0VmMm1KVjtFZWxuSk07SUFPSTtFZjhtSlY7RWVybkpNO0lBT0k7RWZpbkpWO0VleG5KTTtJQU9JO0Vmb25KVjtFZTNuSk07SUFPSTtFZnVuSlY7RWU5bkpNO0lBT0k7RWYwbkpWO0Vlam9KTTtJQU9JO0VmNm5KVjtFZXBvSk07SUFPSTtFZmdvSlY7RWV2b0pNO0lBT0k7RWZtb0pWO0VlMW9KTTtJQU9JO0Vmc29KVjtFZTdvSk07SUFPSTtFZnlvSlY7RWVocEpNO0lBT0k7RWY0b0pWO0VlbnBKTTtJQU9JO0VmK29KVjtFZXRwSk07SUFPSTtJQUFBO0VmbXBKVjtFZTFwSk07SUFPSTtJQUFBO0VmdXBKVjtFZTlwSk07SUFPSTtJQUFBO0VmMnBKVjtFZWxxSk07SUFPSTtJQUFBO0VmK3BKVjtFZXRxSk07SUFPSTtJQUFBO0VmbXFKVjtFZTFxSk07SUFPSTtJQUFBO0VmdXFKVjtFZTlxSk07SUFPSTtJQUFBO0VmMnFKVjtFZWxySk07SUFPSTtJQUFBO0VmK3FKVjtFZXRySk07SUFPSTtJQUFBO0VmbXJKVjtFZTFySk07SUFPSTtJQUFBO0VmdXJKVjtFZTlySk07SUFPSTtJQUFBO0VmMnJKVjtFZWxzSk07SUFPSTtJQUFBO0VmK3JKVjtFZXRzSk07SUFPSTtJQUFBO0VmbXNKVjtFZTFzSk07SUFPSTtJQUFBO0VmdXNKVjtFZTlzSk07SUFPSTtFZjBzSlY7RWVqdEpNO0lBT0k7RWY2c0pWO0VlcHRKTTtJQU9JO0VmZ3RKVjtFZXZ0Sk07SUFPSTtFZm10SlY7RWUxdEpNO0lBT0k7RWZzdEpWO0VlN3RKTTtJQU9JO0VmeXRKVjtFZWh1Sk07SUFPSTtFZjR0SlY7RWVudUpNO0lBT0k7RWYrdEpWO0VldHVKTTtJQU9JO0Vma3VKVjtFZXp1Sk07SUFPSTtFZnF1SlY7RWU1dUpNO0lBT0k7RWZ3dUpWO0VlL3VKTTtJQU9JO0VmMnVKVjtFZWx2Sk07SUFPSTtFZjh1SlY7RWVydkpNO0lBT0k7RWZpdkpWO0VleHZKTTtJQU9JO0Vmb3ZKVjtFZTN2Sk07SUFPSTtFZnV2SlY7RWU5dkpNO0lBT0k7RWYwdkpWO0VlandKTTtJQU9JO0VmNnZKVjtFZXB3Sk07SUFPSTtFZmd3SlY7RWV2d0pNO0lBT0k7RWZtd0pWO0VlMXdKTTtJQU9JO0Vmc3dKVjtFZTd3Sk07SUFPSTtFZnl3SlY7RWVoeEpNO0lBT0k7RWY0d0pWO0VlbnhKTTtJQU9JO0VmK3dKVjtFZXR4Sk07SUFPSTtFZmt4SlY7RWV6eEpNO0lBT0k7RWZxeEpWO0VlNXhKTTtJQU9JO0Vmd3hKVjtFZS94Sk07SUFPSTtFZjJ4SlY7RWVseUpNO0lBT0k7RWY4eEpWO0VlcnlKTTtJQU9JO0VmaXlKVjtFZXh5Sk07SUFPSTtFZm95SlY7RWUzeUpNO0lBT0k7RWZ1eUpWO0VlOXlKTTtJQU9JO0VmMHlKVjtFZWp6Sk07SUFPSTtFZjZ5SlY7RWVwekpNO0lBT0k7RWZnekpWO0VldnpKTTtJQU9JO0VmbXpKVjtFZTF6Sk07SUFPSTtFZnN6SlY7RWU3ekpNO0lBT0k7RWZ5ekpWO0VlaDBKTTtJQU9JO0VmNHpKVjtBQUNGO0FVdjBKSTtFS0dJO0lBT0k7RWZpMEpWO0VleDBKTTtJQU9JO0VmbzBKVjtFZTMwSk07SUFPSTtFZnUwSlY7RWU5MEpNO0lBT0k7RWYwMEpWO0VlajFKTTtJQU9JO0VmNjBKVjtFZXAxSk07SUFPSTtFZmcxSlY7RWV2MUpNO0lBT0k7RWZtMUpWO0VlMTFKTTtJQU9JO0VmczFKVjtFZTcxSk07SUFPSTtFZnkxSlY7RWVoMkpNO0lBT0k7RWY0MUpWO0VlbjJKTTtJQU9JO0VmKzFKVjtFZXQySk07SUFPSTtFZmsySlY7RWV6MkpNO0lBT0k7RWZxMkpWO0VlNTJKTTtJQU9JO0VmdzJKVjtFZS8ySk07SUFPSTtFZjIySlY7RWVsM0pNO0lBT0k7RWY4MkpWO0VlcjNKTTtJQU9JO0VmaTNKVjtFZXgzSk07SUFPSTtFZm8zSlY7RWUzM0pNO0lBT0k7RWZ1M0pWO0VlOTNKTTtJQU9JO0VmMDNKVjtFZWo0Sk07SUFPSTtFZjYzSlY7RWVwNEpNO0lBT0k7RWZnNEpWO0VldjRKTTtJQU9JO0VmbTRKVjtFZTE0Sk07SUFPSTtFZnM0SlY7RWU3NEpNO0lBT0k7RWZ5NEpWO0VlaDVKTTtJQU9JO0VmNDRKVjtFZW41Sk07SUFPSTtFZis0SlY7RWV0NUpNO0lBT0k7RWZrNUpWO0VlejVKTTtJQU9JO0VmcTVKVjtFZTU1Sk07SUFPSTtJQUFBO0VmeTVKVjtFZWg2Sk07SUFPSTtJQUFBO0VmNjVKVjtFZXA2Sk07SUFPSTtJQUFBO0VmaTZKVjtFZXg2Sk07SUFPSTtJQUFBO0VmcTZKVjtFZTU2Sk07SUFPSTtJQUFBO0VmeTZKVjtFZWg3Sk07SUFPSTtJQUFBO0VmNjZKVjtFZXA3Sk07SUFPSTtJQUFBO0VmaTdKVjtFZXg3Sk07SUFPSTtJQUFBO0VmcTdKVjtFZTU3Sk07SUFPSTtJQUFBO0VmeTdKVjtFZWg4Sk07SUFPSTtJQUFBO0VmNjdKVjtFZXA4Sk07SUFPSTtJQUFBO0VmaThKVjtFZXg4Sk07SUFPSTtJQUFBO0VmcThKVjtFZTU4Sk07SUFPSTtJQUFBO0VmeThKVjtFZWg5Sk07SUFPSTtJQUFBO0VmNjhKVjtFZXA5Sk07SUFPSTtFZmc5SlY7RWV2OUpNO0lBT0k7RWZtOUpWO0VlMTlKTTtJQU9JO0VmczlKVjtFZTc5Sk07SUFPSTtFZnk5SlY7RWVoK0pNO0lBT0k7RWY0OUpWO0VlbitKTTtJQU9JO0VmKzlKVjtFZXQrSk07SUFPSTtFZmsrSlY7RWV6K0pNO0lBT0k7RWZxK0pWO0VlNStKTTtJQU9JO0VmdytKVjtFZS8rSk07SUFPSTtFZjIrSlY7RWVsL0pNO0lBT0k7RWY4K0pWO0Vlci9KTTtJQU9JO0VmaS9KVjtFZXgvSk07SUFPSTtFZm8vSlY7RWUzL0pNO0lBT0k7RWZ1L0pWO0VlOS9KTTtJQU9JO0VmMC9KVjtFZWpnS007SUFPSTtFZjYvSlY7RWVwZ0tNO0lBT0k7RWZnZ0tWO0VldmdLTTtJQU9JO0VmbWdLVjtFZTFnS007SUFPSTtFZnNnS1Y7RWU3Z0tNO0lBT0k7RWZ5Z0tWO0VlaGhLTTtJQU9JO0VmNGdLVjtFZW5oS007SUFPSTtFZitnS1Y7RWV0aEtNO0lBT0k7RWZraEtWO0VlemhLTTtJQU9JO0VmcWhLVjtFZTVoS007SUFPSTtFZndoS1Y7RWUvaEtNO0lBT0k7RWYyaEtWO0VlbGlLTTtJQU9JO0VmOGhLVjtFZXJpS007SUFPSTtFZmlpS1Y7RWV4aUtNO0lBT0k7RWZvaUtWO0VlM2lLTTtJQU9JO0VmdWlLVjtFZTlpS007SUFPSTtFZjBpS1Y7RWVqaktNO0lBT0k7RWY2aUtWO0VlcGpLTTtJQU9JO0VmZ2pLVjtFZXZqS007SUFPSTtFZm1qS1Y7RWUxaktNO0lBT0k7RWZzaktWO0VlN2pLTTtJQU9JO0VmeWpLVjtFZWhrS007SUFPSTtFZjRqS1Y7RWVua0tNO0lBT0k7RWYraktWO0VldGtLTTtJQU9JO0Vma2tLVjtBQUNGO0FnQnRtS0E7RUQ0QlE7SUFPSTtFZnVrS1Y7RWU5a0tNO0lBT0k7RWYwa0tWO0VlamxLTTtJQU9JO0VmNmtLVjtFZXBsS007SUFPSTtFZmdsS1Y7RWV2bEtNO0lBT0k7RWZtbEtWO0VlMWxLTTtJQU9JO0Vmc2xLVjtFZTdsS007SUFPSTtFZnlsS1Y7RWVobUtNO0lBT0k7RWY0bEtWO0Vlbm1LTTtJQU9JO0VmK2xLVjtFZXRtS007SUFPSTtFZmttS1Y7RWV6bUtNO0lBT0k7RWZxbUtWO0FBQ0Y7QWlCdnFLQTs7O0VBR0k7QWpCeXFLSjs7QWlCdHFLQTtFQUNJO0VBQ0E7QWpCeXFLSjs7QWlCdHFLQTtBQUNBOzs7Ozs7Ozs7Ozs7O0VBYUk7QWpCeXFLSjs7QWlCbHFLQTtFVnVQTSxtQ0FMSTtBUG83SlY7QWlCaHFLUTtFQU5SO0lBT1k7RWpCbXFLVjtBQUNGOztBaUJ6cEtBO0VWcU9NLG1DQUxJO0VVN05OO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtBakIwcEtKOztBaUJ0cEtBO0VBQ0k7QWpCeXBLSjs7QWlCbnBLQTtFQUNJO0VBQ0EsY0NrbUIwQjtFRGptQjFCO0VBQ0E7RUFDQSxhQ3dtQjBCO0FsQjhpSjlCOztBaUI5b0tBO0VBQ0k7QWpCaXBLSjs7QWlCeG9LQTtFQUNJO0VBQ0E7RUFDQTtBakIyb0tKOztBaUJ0b0tBO0VBQ0k7RUFDQTtFQUNBO0FqQnlvS0o7O0FpQnBvS0E7O0VBRUk7RUFDQTtBakJ1b0tKOztBaUJwb0tBOzs7O0VBSUk7QWpCdW9LSjs7QWlCcG9LQTtFQUNJLGdCQ3NlMEI7QWxCaXFKOUI7O0FpQmxvS0E7RUFDSTtFQUNBO0FqQnFvS0o7O0FpQmhvS0E7RUFDSTtBakJtb0tKOztBaUI1bktBOztFQUVJLG1CQ2lkMEI7QWxCOHFKOUI7O0FpQjFuS0E7RUFDSSxpQkMwaUIwQjtFRHppQjFCO0FqQjZuS0o7O0FpQnJuS0E7O0VWaUhNLGlCQUxJO0VVeEdOO0VBQ0E7RUFDQTtBakJ1bktKOztBaUJwbktBO0VBQ0k7QWpCdW5LSjs7QWlCcG5LQTtFQUNJO0FqQnVuS0o7O0FpQmxuS0E7RUFDSTtBakJxbktKO0FpQmxuS1E7RUFFSTtBakJtbktaO0FpQmhuS1E7RUFHSTtFQUNBO0FqQmduS1o7O0FpQnJtS0k7RUFLSTtFQUNBO0FqQm9tS1I7O0FpQjdsS0E7Ozs7RVZ5RE0sY0FMSTtFVTlDTixxQ0NxWDBCO0FsQjB1SjlCOztBaUJ4bEtBO0VWNENNLGtCQUxJO0VVcENOO0VBQ0E7RUFDQTtFQUNBO0FqQjBsS0o7QWlCdGxLSTtFVmtDRSxrQkFMSTtFVTFCRjtFQUNBO0FqQnVsS1I7O0FpQm5sS0E7RVYwQk0sa0JBTEk7RVVsQk47RUFDQTtBakJxbEtKO0FpQmxsS0k7RUFDSTtBakJvbEtSOztBaUJobEtBO0VWY00sa0JBTEk7RVVMTjtFQUNBLHdCQzQ3Q2dDO0VEMzdDaEMsc0NDNDdDZ0M7QWxCcXBIcEM7QWlCL2tLSTtFVk1FLGNBTEk7RVVFRjtBakJnbEtSOztBaUJ2a0tBO0VBQ0k7QWpCMGtLSjs7QWlCcmtLQTs7RUFFSTtBakJ3a0tKOztBaUJqa0tBO0VBQ0k7RUFDQTtBakJva0tKOztBaUJqa0tBO0VBQ0ksbUJDZ2EwQjtFRC9aMUIsc0JDK1owQjtFRDlaMUIsZ0NDZ2MwQjtFRC9iMUI7QWpCb2tLSjs7QWlCN2pLQTtFQUVJO0VBQ0E7QWpCK2pLSjs7QWlCNWpLQTs7Ozs7O0VBTUk7RUFDQTtFQUNBO0FqQitqS0o7O0FpQjFqS0E7RUFDSTtFQUNBO0FqQjZqS0o7O0FpQjFqS0E7RUFDSTtFQUNBO0VBQ0E7QWpCNmpLSjs7QWlCdGpLQTtFQUNJO0FqQnlqS0o7O0FpQnRqS0E7O0VBRUk7QWpCeWpLSjtBaUJ2aktJOztFQUNJO0FqQjBqS1I7O0FpQnRqS0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqQnlqS0o7QWlCdmpLSTtFQUNJO0FqQnlqS1I7O0FpQmhqS0E7RUFDSTtBakJtaktKOztBaUI5aUtBOzs7OztFQUtJO0VBQ0E7RUFDQTtFQUNBO0FqQmlqS0o7O0FpQjdpS0E7O0VBRUk7QWpCZ2pLSjs7QWlCM2lLQTtFQUNJO0FqQjhpS0o7O0FpQjNpS0E7RUFHSTtBakI0aUtKO0FpQnppS0k7RUFDSTtBakIyaUtSO0FpQnZpS0k7RUFYSjtJQVlRO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VqQjBpS047QUFDRjtBaUJ4aUtJO0VBQ0k7QWpCMGlLUjs7QWlCbGlLSTtFQUNJO0FqQnFpS1I7O0FpQjNoS0E7Ozs7RUFJSTtBakI4aEtKOztBaUJoaEtROzs7RUFFSTtBakJvaEtaOztBaUI3Z0tBO0VBQ0k7RUFDQTtBakJnaEtKOztBaUIzZ0tBO0VBQ0k7RUFDQTtBakI4Z0tKO0FpQjVnS0k7RUFDSTtFQUNBO0FqQjhnS1I7O0FpQm5nS0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBakJzZ0tKOztBaUI5L0pBO0VBQ0ksZU5wZWU7RU1xZWY7RUFDQTtFQUNBO0VBQ0EsbUJOdmVtQjtFTXdlbkIsZ0JOdmVpQjtFTXdlakI7QWpCaWdLSjtBaUIvL0pJO0VBQ0k7QWpCaWdLUjs7QWlCNS9KQTs7OztFQUlJO0FqQisvSko7O0FpQjUvSkE7O0VBRUk7QWpCKy9KSjs7QWlCei9KQTs7Ozs7OztFQU9JO0FqQjQvSko7O0FpQnovSkE7RUFDSTtBakI0L0pKOztBaUJuL0pBO0VBQ0k7RUFDQTtBakJzL0pKOztBaUI5K0pBOzs7Ozs7O0NBQUE7QUFXQTtFQUNJO0FqQjgrSko7O0FpQnorSkE7RUFDSTtBakI0K0pKOztBaUJ0K0pBO0VBQ0k7RUFDQTtBakJ5K0pKOztBaUJwK0pBO0VBQ0k7QWpCdStKSjs7QWlCcCtKQTtFQUVJO0FqQnMrSko7QWlCbitKSTtFQUVJO0FqQm8rSlI7QWlCbCtKUTtFQUpKO0lBS1E7SUFDQTtFakJxK0pWO0FBQ0Y7O0FpQjc5SkE7RUFDSTtFQUNBO0FqQmcrSko7O0FpQno5SkE7RUFDSTtBakI0OUpKOztBaUJyOUpBO0VBQ0k7QWpCdzlKSjs7QWlCcDlKQTtFQUNJO0FqQnU5Sko7O0FtQjNtTEE7RUFDSTtBbkI4bUxKO0FtQjVtTEk7RUFISjtJQUlRO0lBQ0E7RW5CK21MTjtBQUNGOztBb0JybkxBO0VBQ0k7RUFDQTtBcEJ3bkxKOztBb0JybkxBO0VBQ0k7QXBCd25MSjs7QW9Cbm5MSTs7RUFDSTtBcEJ1bkxSOztBb0JubkxBO0VBQ0k7QXBCc25MSjs7QW9Cbm5MQTtFakJqQkksYWlCa0JnQjtFakJqQmhCLGNpQmlCZ0I7QXBCdW5McEI7QW9CcG5MUTtFakJyQkosYWlCc0J3QjtFakJyQnhCLGNpQnFCd0I7RUFFaEI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEJzbkxaOztBb0JqbkxBO0VBQ0k7RUFDQTtBcEJvbkxKOztBb0I1bUxBO0VBQ0k7QXBCK21MSjs7QVV2bExJO0VVcEJBO0lBQ0k7RXBCK21MTjtBQUNGO0FVMW1MSTtFVURBO0lBQ0k7RXBCOG1MTjtBQUNGO0FvQjNtTEE7RUFDSTtBcEI2bUxKO0FvQjNtTEk7RUFDSTtBcEI2bUxSOztBb0J6bUxBO0VBQ0k7QXBCNG1MSjtBb0IxbUxJO0VBQ0k7QXBCNG1MUjs7QW9Cdm1MSTtFakJoQ0E7RUFDQTtFQVdJLFNBZFk7QUgrb0xwQjtBb0J6bUxROzs7RUFFSTtBcEI0bUxaOztBb0J2bUxBO0VBU0k7RUFDQTtFQUNBO0FwQmttTEo7QW9CMWxMb0I7RWpCOURoQjtFQUNBO0VBV0ksU0FkWTtBSCtwTHBCO0FHOW9MSTtFQUdRO0FIOG9MWjtBb0I3bExvQjtFakJuRWhCO0VBQ0E7RUFXSSxTQWRZO0FIdXFMcEI7QUd0cExJO0VBR1E7QUhzcExaO0FvQmptTG9CO0VqQnZFaEI7RUFDQTtFQVdJLFNBZFk7QUgrcUxwQjtBRzlwTEk7RUFHUTtBSDhwTFo7O0FvQmxuTG9CO0VqQjlEaEI7RUFDQTtFQVdJLFNBZFk7QUh3ckxwQjtBR3ZxTEk7RUFHUTtBSHVxTFo7QW9CdG5Mb0I7RWpCbkVoQjtFQUNBO0VBV0ksU0FkWTtBSGdzTHBCO0FHL3FMSTtFQUdRO0FIK3FMWjtBb0IxbkxvQjtFakJ2RWhCO0VBQ0E7RUFXSSxTQWRZO0FId3NMcEI7QUd2ckxJO0VBR1E7QUh1ckxaOztBb0Izb0xvQjtFakI5RGhCO0VBQ0E7RUFXSSxTQWRZO0FIaXRMcEI7QUdoc0xJO0VBR1E7QUhnc0xaO0FvQi9vTG9CO0VqQm5FaEI7RUFDQTtFQVdJLFNBZFk7QUh5dExwQjtBR3hzTEk7RUFHUTtBSHdzTFo7QW9CbnBMb0I7RWpCdkVoQjtFQUNBO0VBV0ksU0FkWTtBSGl1THBCO0FHaHRMSTtFQUdRO0FIZ3RMWjs7QW9CcHFMb0I7RWpCOURoQjtFQUNBO0VBV0ksU0FkWTtBSDB1THBCO0FHenRMSTtFQUdRO0FIeXRMWjtBb0J4cUxvQjtFakJuRWhCO0VBQ0E7RUFXSSxTQWRZO0FIa3ZMcEI7QUdqdUxJO0VBR1E7QUhpdUxaO0FvQjVxTG9CO0VqQnZFaEI7RUFDQTtFQVdJLFNBZFk7QUgwdkxwQjtBR3p1TEk7RUFHUTtBSHl1TFo7O0FvQjVxTEk7RUFHUTtJQUNJO0VwQjZxTGQ7RW9CMXFMVTtJQUNJO0VwQjRxTGQ7RW9CenFMVTtJQUNJO0VwQjJxTGQ7QUFDRjtBb0J0cUxJO0VBQ0k7SUFDSTtFcEJ3cUxWO0FBQ0Y7QW9CcnFMSTtFQUNJO0VBQ0E7QXBCdXFMUjtBb0JycUxRO0VBQ0k7QXBCdXFMWjtBb0JucUxJOztFQUVJO0VBQ0E7QXBCcXFMUjtBb0JscUxJO0VBQ0k7RUFDQTtBcEJvcUxSO0FvQi9wTEk7RUFFSTtBcEJncUxSO0FvQjdwTEk7RUFFSTtBcEI4cExSOztBb0J2cExJOzs7O0VBRUk7QXBCNHBMUjs7QW9CdnBMSTtFakJsSkE7RUFDQTtFQUdJO0VBQ0EsMEJBUjRDO0FIbXpMcEQ7QUd6eUxRO0VBQ0k7RUFDQTtBSDJ5TFo7QW9CMXBMSTtFQUtJO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFHQTtFQUNBO0VBQ0E7QXBCcXBMUjtBb0JscExZO0VBQ0k7QXBCb3BMaEI7QW9CL29MWTtFQUNJO0FwQmlwTGhCO0FvQjVvTFE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBcEI4b0xaO0FvQjVvTFk7RUFDSTtFQUNBO0VBQ0E7QXBCOG9MaEI7QW9CNW9MZ0I7RUFDSTtFQUNBO0FwQjhvTHBCO0FvQjVvTG9CO0VBQ0k7QXBCOG9MeEI7QW9Cem9Mb0I7RUFDSTtBcEIyb0x4QjtBb0J4b0xvQjtFQUNJO0FwQjBvTHhCO0FvQnJvTFk7RUFDSTtBcEJ1b0xoQjs7QW9Cam9MQTtFQUNJO0lBQ0k7RXBCb29MTjtFb0Jqb0xFO0lBQ0k7RXBCbW9MTjtBQUNGO0FxQnQ1TEE7RUFDSTtFQUNBLGtCVnNDcUI7RVVuQ3JCLGdCVm9DbUI7RVVuQ25CLGdCSG9vQjBCO0VHbm9CMUI7QXJCczVMSjs7QXFCbjVMQTtFZCtRTSxpQ0FMSTtBUDZvTFY7O0FxQmw1TEE7RWQ4UVE7QVB3b0xSO0FPcHlMSTtFY2xISjtJZHFSUTtFUHFvTE47QUFDRjs7QXFCdDVMQTtFQUdJLGVWZ0dXO0FYdXpMZjs7QXFCcDVMQTtFZG1RUTtBUHFwTFI7QU9qekxJO0VjdkdKO0lkMFFRO0VQa3BMTjtBQUNGOztBcUJ4NUxBO0VkOFBRO0FQOHBMUjtBTzF6TEk7RWNsR0o7SWRxUVE7RVAycExOO0FBQ0Y7O0FxQjU1TEE7RWR5UFE7RWNyUEo7QXJCNjVMSjtBT3AwTEk7RWM3Rko7SWRnUVE7RVBxcUxOO0FBQ0Y7O0FxQi81TEE7RUFDSSxpQlZkVztBWGc3TGY7O0FxQi81TEE7RUFDSSxrQlZqQlc7QVhtN0xmOztBcUIvNUxBO0VBQ0ksaUJWcEJlO0FYczdMbkI7O0FxQi81TEE7RUFDSSxpQlZ2QmdCO0FYeTdMcEI7O0FxQi81TEE7RUFDSTtBckJrNkxKOztBcUIvNUxBO0VBQ0k7QXJCazZMSjs7QXFCLzVMQTtFQUNJO0FyQms2TEo7O0FxQi81TEE7RUFDSSxpQlY3Q2E7RVU4Q2I7QXJCazZMSjs7QXNCaC9MQTs7Ozs7OztFQU9JO0VBQ0E7QXRCbS9MSjs7QXNCaC9MQTs7RUFFSTtBdEJtL0xKOztBc0JoL0xBO0VBQ0k7RUFDQTtBdEJtL0xKOztBc0JoL0xBOztFQUVJO0VBQ0E7QXRCbS9MSjs7QXNCLytMSTtFQUNJO0VBQ0E7QXRCay9MUjtBc0I5K0xRO0VBQ0k7RUFDQTtBdEJnL0xaO0FzQjkrTFk7RUFDSTtBdEJnL0xoQjs7QXNCeitMSTtFQUNJO0VBQ0E7QXRCNCtMUjtBc0J6K0xJO0VBQ0k7RUFDQTtBdEIyK0xSOztBc0JyK0xRO0VBQ0k7RUFDQTtBdEJ3K0xaOztBc0JoK0xZO0VBQ0k7RUFDQTtBdEJtK0xoQjs7QXNCMzlMUTtFQUNJO0VBQ0E7QXRCODlMWjs7QXNCeDlMSTtFQUNJO0VBQ0E7QXRCMjlMUjtBc0J4OUxJOztFQUVJO0VBQ0E7QXRCMDlMUjtBc0J2OUxJO0VBQ0k7RUFDQTtBdEJ5OUxSOztBc0JwOUxJO0VBQ0k7RUFDQTtBdEJ1OUxSO0FzQm45TFE7RUFDSTtFQUNBO0F0QnE5TFo7QVV4Z01JO0VZd0RJO0lBQ0k7SUFDQTtFdEJtOUxWO0FBQ0Y7O0FVamdNSTtFWXFEUTtJQUNJO0lBQ0E7RXRCZzlMZDtFc0I3OExVO0lBQ0k7SUFDQTtFdEIrOExkO0FBQ0Y7QVV6aE1JO0VZa0ZnQjtJQUNJO0lBQ0E7RXRCMDhMdEI7RXNCajhMa0I7SUFDSTtJQUNBO0V0Qm04THRCO0FBQ0Y7O0FVdGhNSTtFWTRGSTtJQUNJO0lBQ0E7RXRCODdMVjtBQUNGOztBc0J2N0xZO0VBQ0k7RUFDQTtBdEIwN0xoQjs7QXNCbjdMSTtFQUNJO0VBQ0E7QXRCczdMUjs7QVV2aU1JO0VZdUhJO0lBQ0k7SUFDQTtFdEJvN0xWO0FBQ0Y7O0FzQmg3TEE7RUFDSTtFQUNBO0F0Qm03TEo7O0FzQjk2TFE7RUFDSTtJQUNJO0lBQ0E7RXRCaTdMZDtBQUNGOztBc0J4NkxnQjtFQUNJO0VBQ0E7QXRCMjZMcEI7O0FzQm42TEk7RUFDSTtFQUNBO0F0QnM2TFI7O0F1QjlvTUE7RUFDSTtFQUdBLDZEQUNJO0F2QjhvTVI7QXVCem9NUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZCMm9NWjtBVWhsTUk7RWF2RFE7SUFDSTtJQUNBO0lBQ0E7SUFDQTtFdkIwb01kO0V1QnhvTWM7SUFDSTtFdkIwb01sQjtFdUJ0b01VO0lBQ0k7RXZCd29NZDtBQUNGO0F1QnBvTUk7RUFDSTtBdkJzb01SO0F1Qm5vTUk7RUFDSSxjWjJLWTtBWDA5THBCO0F1QmxvTUk7RUFDSTtFQUNBO0F2Qm9vTVI7QVV4bU1JO0VhMUVKO0lBa0RRO0V2Qm9vTU47RXVCbG9NTTtJQUNJO0V2Qm9vTVY7RXVCam9NTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0V2Qm1vTVY7RXVCaG9NTTtJQUVJO0V2QmlvTVY7QUFDRjtBVXpvTUk7RWE3REo7SUF5RVE7SUFDQTtJQUNBLG1CWjBJb0I7SVl6SXBCO0V2QmlvTU47RXVCL25NTTtJQUNJO0lBQ0E7RXZCaW9NVjtFdUI5bk1NO0lBQ0k7SUFHQSxtTUFDSTtJQUlKO0lBQ0E7SUFDQSxlWndIb0I7SVl2SHBCO0V2QjBuTVY7RXVCdm5NTTtJQUNJO0lBQ0E7RXZCeW5NVjtFdUJ0bk1NO0lBQ0k7SUFDQTtFdkJ3bk1WO0V1QnJuTU07SUFDSTtJQUNBO0V2QnVuTVY7RXVCcG5NTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0V2QnNuTVY7RXVCbm5NTTtJQUNJO0V2QnFuTVY7RXVCbm5NVTtJQUNJO0V2QnFuTWQ7RXVCam5NTTtJQUNJO0lBQ0E7SUFDQTtFdkJtbk1WO0V1QmhuTU07SUFDSTtJQUNBO0lBQ0E7RXZCa25NVjtBQUNGO0F1Qi9tTUk7RUFDSTtBdkJpbk1SOztBVWxzTUk7RVAwQ0k7SUFJZ0I7TW9Cd0NwQjtJdkJrbk1BO0VBQ0Y7QUFDRjtBd0J0d01BO0VBQ0k7QXhCd3dNSjs7QXdCcndNQTtFQUNJLHNCYmdERztFYS9DSDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4Qnd3TUo7QXdCdHdNSTtFQUNJO0VBQ0E7QXhCd3dNUjtBd0Jyd01JO0VBQ0k7QXhCdXdNUjtBd0Jwd01JO0VBQ0k7QXhCc3dNUjtBVW51TUk7RWMvQkk7SUFDSTtFeEJxd01WO0FBQ0Y7O0FVM3RNSTtFY3BDSTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0V4Qm13TVY7RXdCandNVTtJQUNJO0V4Qm13TWQ7RXdCaHdNVTtJQUNJO0V4Qmt3TWQ7RXdCL3ZNVTtJQUNJO0V4Qml3TWQ7QUFDRjtBVW53TUk7RWN6Qko7SUFnQ1E7RXhCZ3dNTjtFd0I5dk1NO0lBQ0k7RXhCZ3dNVjtBQUNGOztBeUJ4ME1BO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBekIyME1KO0F5QngwTVE7RUFDSTtBekIwME1aO0F5QngwTVk7RUFDSTtJQUNJO0V6QjAwTWxCO0FBQ0Y7QXlCcjBNSTtFQUNJO0VBQ0E7QXpCdTBNUjtBeUJwME1JO0VBQ0k7RUFDQTtFQUNBLFNkSGM7RWNJZDtFQUNBO0F6QnMwTVI7QXlCbjBNSTtFQUNJO0VBQ0E7QXpCcTBNUjtBeUJsME1JO0VBQ0k7QXpCbzBNUjtBeUJsME1RO0V0QnJDSixhc0JzQ3dCO0V0QnJDeEIsY3NCcUN3QjtBekJxME01QjtBeUJqME1JO0VBQ0k7RUFDQTtFQUNBO0F6Qm0wTVI7QXlCajBNUTtFdEIvQ0osWXNCZ0R3QjtFdEIvQ3hCLGFzQitDd0I7RUFFaEI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBekJtME1aO0F5Qjl6TVE7RUFDSTtBekJnME1aO0F5QjV6TUk7RUFDSTtFQUNBO0VBQ0E7QXpCOHpNUjtBeUIzek1JO0VBQ0k7QXpCNnpNUjtBeUIzek1RO0VBQ0k7SUFDSTtFekI2ek1kO0FBQ0Y7QVUvME1JO0VlN0RKO0lBb0ZRO0V6QjR6TU47RXlCMXpNTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0V6QjR6TVY7RXlCenpNTTtJQUNJO0lBQ0E7RXpCMnpNVjtFeUJ4ek1NO0lBQ0k7RXpCMHpNVjtFeUJ2ek1NO0lBQ0k7RXpCeXpNVjtFeUJ0ek1NO0lBQ0k7SUFDQTtJQUNBO0V6Qnd6TVY7QUFDRjtBVTUxTUk7RWV3Q0k7SUFDSTtFekJ1ek1WO0V5Qm56TVU7SUFFSTtFekJvek1kO0FBQ0Y7O0EwQmg3TUE7RUFDSTtFQUNBO0VBS0E7RUFFQTtBMUI4Nk1KO0FVeDNNSTtFZ0IvREo7SUFZUTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTFCKzZNTjtFMEI3Nk1NO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7RTFCKzZNVjtFMEI1Nk1NO0lBQ0ksd01BQ0k7SUFHSjtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UxQjI2TVY7QUFDRjtBVW41TUk7RWdCbENJO0lBWVE7RTFCNjZNZDtBQUNGO0FVeDVNSTtFZ0JsQkk7SUFDSTtJQUNBO0UxQjY2TVY7RTBCMzZNVTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UxQjY2TWQ7RTBCejZNTTs7SUFFSTtFMUIyNk1WO0UwQng2TU07SUFDSTtFMUIwNk1WO0UwQnY2TU07SUFDSTtJQUNBO0UxQnk2TVY7RTBCdDZNTTtJQUNJO0lBQ0E7RTFCdzZNVjtFMEJyNk1NO0lBQ0k7RTFCdTZNVjtFMEJwNk1NO0lBQ0k7SUFDQTtJQUNBO0UxQnM2TVY7RTBCbjZNYztJQUNJO0UxQnE2TWxCO0UwQmg2TU07SUFDSTtFMUJrNk1WO0UwQjc1TWtCO0lBQ0k7RTFCKzVNdEI7RTBCejVNYztJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFMUIyNU1sQjtFMEJ4NU1jO0lBQ0k7RTFCMDVNbEI7RTBCcjVNTTtJQUNJO0lBQ0Esa0JmS1k7SWVKWjtJQUNBO0UxQnU1TVY7RTBCcjVNVTtJQUVJO0UxQnM1TWQ7RTBCcDVNYztJQUNJO0UxQnM1TWxCO0UwQmo1TWM7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UxQm01TWxCO0UwQmg1TWM7SUFDSTtFMUJrNU1sQjtFMEI5NE1VO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UxQmc1TWQ7RTBCOTRNYztJQUNJO0UxQmc1TWxCO0UwQjk0TWtCO0lBRUk7RTFCKzRNdEI7RTBCMzRNYztJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UxQjY0TWxCO0UwQng0TU07SUFFSTtJQUNBO0lBQ0E7RTFCeTRNVjtFMEJ0NE1NO0lBQ0k7RTFCdzRNVjtBQUNGO0FVNy9NSTtFZ0J5SEk7SUFFSTtJQUNBO0lBQ0E7RTFCczRNVjtFMEJsNE1VO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFMUJvNE1kO0UwQmw0TWM7SUFDSTtJQUNBO0UxQm80TWxCO0UwQmg0TVU7SUFDSTtJQUNBO0UxQms0TWQ7RTBCaDRNYztJQUNJO0UxQms0TWxCO0UwQjkzTVU7SUFDSTtFMUJnNE1kO0UwQjUzTU07SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UxQjgzTVY7RTBCNTNNVTtJQUNJO0lBQ0E7RTFCODNNZDtFMEIzM01VO0lBQ0k7SUFDQTtJQUNBLGtCZnJIUTtJZXNIUjtJQUNBO0UxQjYzTWQ7RTBCMTNNa0I7SUFHSTtFMUIwM010QjtFMEJuM00wQjtJQUdJO0UxQm0zTTlCO0UwQjMyTU07SUFDSTtFMUI2Mk1WO0UwQngyTWtCO0lBQ0k7RTFCMDJNdEI7RTBCcDJNTTtJQUNJO0lBQ0E7RTFCczJNVjtFMEJuMk1NO0lBQ0k7SUFDQTtJQUNBLGtCZnBLWTtJZXFLWjtFMUJxMk1WO0UwQm4yTVU7SUFDSTtFMUJxMk1kO0UwQmoyTWM7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBLGtCZmpMSTtFWG9oTnRCO0UwQmgyTWM7SUFFSTtFMUJpMk1sQjtFMEI5MU1jO0lBQ0k7RTFCZzJNbEI7RTBCOTFNa0I7SUFDSTtJQUNBO0UxQmcyTXRCO0UwQjUxTWM7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UxQjgxTWxCO0UwQnoxTThCO0lBQ0k7SUFDQTtFMUIyMU1sQztFMEJ4MU04QjtJQUNJO0UxQjAxTWxDO0UwQnQxTTBCO0lBQ0k7RTFCdzFNOUI7RTBCbDFNYztJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTFCbzFNbEI7RTBCajFNYztJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTFCbTFNbEI7RTBCajFNa0I7SUFDSTtFMUJtMU10QjtFMEI3ME1NOzs7SUFJSTtFMUI4ME1WO0UwQjMwTU07SUFDSTtFMUI2ME1WO0UwQjEwTU07SUFDSTtFMUI0ME1WO0UwQnowTU07SUFDSTtFMUIyME1WO0UwQngwTU07SUFDSTtFMUIwME1WO0FBQ0Y7QVUzcE5JO0VnQnNWSTtJQUVJO0UxQnUwTVY7RTBCcjBNVTtJQUNJO0UxQnUwTWQ7RTBCbjBNTTtJQUNJO0UxQnEwTVY7QUFDRjs7QTJCbnVOQTtFQUNJO0VBQ0E7QTNCc3VOSjtBVTNxTkk7RWlCN0RKO0lBS1E7RTNCdXVOTjtBQUNGO0FVaHJOSTtFaUJyREE7SUFFUTtJQUNBO0UzQnV1TlY7QUFDRjtBVXRyTkk7RWlCOUNBO0lBRVE7RTNCc3VOVjtBQUNGO0FVM3JOSTtFaUJ6Q0k7SUFFUTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UzQnN1TmQ7RTJCcHVOYztJQUNJO0lBQ0E7SUFDQTtFM0JzdU5sQjtFMkJwdU5rQjtJQUNJO0UzQnN1TnRCO0UyQm51TmtCO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFM0JxdU50QjtFMkJsdU5rQjtJQUNJO0UzQm91TnRCO0UyQmh1TnNCO0lBQ0k7SUFDQTtFM0JrdU4xQjtFMkJodU4wQjtJQUNJO0lBQ0E7SUFDQTtJQUNBO0UzQmt1TjlCO0UyQjl0TnNCO0lBQ0k7RTNCZ3VOMUI7RTJCOXROMEI7SUFDSTtJQUNBO0lBQ0E7SUFDQTtFM0JndU45QjtFMkIxdE5jO0lBQ0k7SUFDQTtFM0I0dE5sQjtFMkIxdE5rQjtJQUNJO0lBQ0E7SUFDQTtFM0I0dE50QjtBQUNGO0EyQnZ0TlE7RUFDSTtBM0J5dE5aO0EyQnB0TlE7RUFDSTtFQUNBO0EzQnN0Tlo7QVV6dk5JO0VpQnVDQTtJQUVRO0UzQm90TlY7QUFDRjtBMkJsdE5RO0VBQ0k7QTNCb3ROWjtBMkJodE5JO0VBQ0k7RUFDQTtBM0JrdE5SO0FVcndOSTtFaUJpREE7SUFLUTtFM0JtdE5WO0FBQ0Y7QVU3dk5JO0VpQm9DQTtJQVNRO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTNCb3ROVjtFMkJsdE5VO0lBQ0k7RTNCb3ROZDtFMkJqdE5VO0lBQ0k7RTNCbXROZDtFMkJodE5VO0lBQ0k7RTNCa3ROZDtFMkJodE5jO0lBQ0k7RTNCa3RObEI7RTJCaHROa0I7SUFDSTtFM0JrdE50QjtBQUNGO0EyQjVzTkk7RUFDSTtFQUNBO0EzQjhzTlI7QTJCNXNOUTtFQUNJO0lBQ0k7RTNCOHNOZDtBQUNGO0EyQjFzTkk7RUFDSTtBM0I0c05SO0FVOXlOSTtFaUJxR1E7SUFDSTtFM0I0c05kO0FBQ0Y7QTJCenNOUTtFQUNJO0EzQjJzTlo7O0EyQnJzTkk7RUFDSTtFQUNBO0EzQndzTlI7O0E0QnAzTkE7O0VBRUk7QTVCdTNOSjs7QTZCNzNOQTs7Ozs7RUFLSTtFQUNBO0E3Qmc0Tko7O0E2QjczTkE7OztFQUdJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsNkRBQ0k7QTdCKzNOUjtBVXoxTkk7RW1CcERKOzs7SUFrQlE7RTdCaTROTjtBQUNGOztBNkI5M05BO0VBR1E7O0lBQ0k7SUFDQTtFN0JnNE5WO0FBQ0Y7QTZCMzNOSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E3QjYzTlI7QTZCMTNOSTtFQUNJO0lBQ0k7SUFDQTtFN0I0M05WO0FBQ0Y7O0E2QngzTkE7RUFDSTtBN0IyM05KO0E2QnozTkk7RUFDSTtBN0IyM05SO0E2QngzTkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdCMDNOUjtBVXQ0Tkk7RW1CR0E7SUFZUTtJQUNBO0lBQ0E7RTdCMjNOVjtBQUNGO0E2QnozTlE7RUFDSTtFQUNBO0VBQ0E7QTdCMjNOWjtBNkJ0M05nQjtFQUNJO0E3QnczTnBCO0E2QnQzTm9CO0VBQ0k7RUFDQTtBN0J3M054QjtBNkJqM05JO0UxQmxHQSxZMEJtR29CO0UxQmxHcEIsYTBCa0dvQjtFQUVoQjtFQUNBO0E3Qm0zTlI7QTZCajNOUTtFQUNJO0E3Qm0zTlo7QTZCaDNOUTtFQUNJO0E3QmszTlo7QTZCLzJOUTtFQUNJO0VBQ0E7QTdCaTNOWjtBNkIvMk5ZO0VBQ0k7QTdCaTNOaEI7QTZCOTJOWTtFQUNJO0E3QmczTmhCO0E2QjMyTkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3QjYyTlI7QTZCMzJOUTtFQUdJO0VBQ0E7QTdCMjJOWjtBNkJ2Mk5JO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLDZEQUNJO0VBRUo7RUFDQTtBN0J1Mk5SO0E2QnIyTlE7RUFHSTtFQUNBO0E3QnEyTlo7QTZCaDJOUTtFQUdJO0VBQ0E7QTdCZzJOWjtBNkI3MU5RO0VBR0k7RUFDQTtBN0I2MU5aO0E2QngxTlE7RUFHSTtFQUNBO0E3QncxTlo7QTZCcjFOUTtFQUdJO0VBQ0E7QTdCcTFOWjtBNkIvME5RO0VBQ0k7RUFDQTtFQUNBO0E3QmkxTlo7QTZCNzBOSTtFQUNJO0E3QiswTlI7QTZCNzBOUTtFQUNJO0E3QiswTlo7QTZCMzBOSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E3QjYwTlI7QTZCMzBOUTtFQUNJO0E3QjYwTlo7QVVyL05JO0VtQitLSTtJQUNJO0U3QnkwTlY7QUFDRjs7QTZCcjBOQTtFQUNJO0E3QncwTko7O0E4QjdqT0E7RUFDSTtBOUJna09KO0FVbGdPSTtFb0IvREo7SUFJUTtFOUJpa09OO0FBQ0Y7QVV2Z09JO0VvQi9ESjtJQVFRO0U5QmtrT047QUFDRjs7QStCeGtPSTtFQUNJO0VBQ0E7RUFDQTtBL0Iya09SO0ErQnhrT0k7Ozs7RUFJSTtBL0Iwa09SO0ErQnRrT1E7RUFDSTtBL0J3a09aO0ErQnJrT1E7RUFDSTtBL0J1a09aO0ErQm5rT0k7RUFDSTtBL0Jxa09SO0ErQmxrT0k7OztFQUdJO0EvQm9rT1I7QStCL2pPUTs7RUFDSTtBL0Jra09aO0ErQmhrT1k7O0VBQ0k7RUFDQTtBL0Jta09oQjtBK0I1ak9RO0VBQ0k7QS9COGpPWjtBK0I1ak9ZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0I4ak9oQjtBK0J6ak9JO0VBQ0k7RUFDQTtBL0Iyak9SO0ErQnpqT1E7RUFDSTtFQUNBO0EvQjJqT1o7QStCempPWTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0Iwak9oQjtBK0Jwak9JOzs7O0VBSUk7QS9Cc2pPUjtBVWxsT0k7RXFCK0JBOztJQUdRO0lBQ0E7RS9CcWpPVjtBQUNGO0FVemxPSTtFcUJ1Q0E7SUFFUTtJQUNBO0UvQm9qT1Y7QUFDRjtBVS9sT0k7RXFCOENBO0lBRVE7SUFDQTtFL0Jtak9WO0FBQ0Y7QStCaGpPSTs7RUFFSTtFQUNBO0VBQ0E7QS9Ca2pPUjs7QWdDeHFPQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FoQzJxT0o7QWdDenFPSTtFQUNJO0FoQzJxT1I7QWdDeHFPSTtFQUNJO0VBQ0E7QWhDMHFPUjtBVTVtT0k7RXNCaEVBO0lBS1E7RWhDMnFPVjtBQUNGO0FnQ3hxT0k7RUFDSTtFQUNBO0FoQzBxT1I7QWdDdnFPSTtFQUNJO0VBQ0E7QWhDeXFPUjtBZ0N2cU9RO0VBQ0k7SUFDSTtFaEN5cU9kO0FBQ0Y7QVU5bk9JO0VzQnRDSTtJQUNJLGNyQjhMb0I7RVh5K045QjtFZ0NwcU9NO0lBQ0ksa0JyQjBMb0I7RVg0K045QjtFZ0NwcU9VO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7RWhDc3FPZDtFZ0NwcU9jO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VoQ3NxT2xCO0VnQ2xxT1U7SUFDSTtFaENvcU9kO0FBQ0Y7QVVwcU9JO0VzQjdESjtJQWtFUTtFaENtcU9OO0VnQ2pxT007SUFDSTtFaENtcU9WO0VnQ2pxT1U7SUFDSTtFaENtcU9kO0VnQ2pxT2M7SUFDSTtFaENtcU9sQjtFZ0M5cE9NO0lBQ0k7RWhDZ3FPVjtFZ0M3cE9NO0lBQ0k7RWhDK3BPVjtFZ0M3cE9VO0lBQ0k7RWhDK3BPZDtBQUNGO0FVM3JPSTtFc0JpQ0k7SUFDSTtFaEM2cE9WO0FBQ0Y7O0FVbnJPSTtFdUIxRUo7SUFFUTtJQUNBO0lBQ0E7SUFDQTtFakNnd09OO0VpQzl2T007SUFDSTtJQUNBO0VqQ2d3T1Y7RWlDOXZPVTtJQUNJO0VqQ2d3T2Q7RWlDNXZPYztJQUNJO0lBQ0E7RWpDOHZPbEI7RWlDM3ZPc0I7O0lBRUk7RWpDNnZPMUI7RWlDMXZPc0I7SUFDSTtJQUNBO0lBQ0E7SUFDQTtFakM0dk8xQjtFaUMxdk8wQjtJQUNJO0lBQ0E7RWpDNHZPOUI7RWlDcnZPa0I7SUFDSTtJQUNBO0lBQ0E7RWpDdXZPdEI7RWlDcnZPc0I7SUFDSTtJQUNBO0VqQ3V2TzFCO0VpQ2h2T007SUFDSTtFakNrdk9WO0FBQ0Y7QWlDL3VPSTtFQWdCSTtFQUNBO0FqQ2t1T1I7QVVydU9JO0V1QmRBO0lBRVE7RWpDcXZPVjtFaUNudk9VO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7RWpDcXZPZDtFaUNsdk9VO0lBQ0k7RWpDb3ZPZDtBQUNGO0FpQzd1T0k7RUFDSTtBakMrdU9SO0FpQzd1T1E7RUFDSTtJQUNJO0VqQyt1T2Q7QUFDRjs7QWtDbDBPQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGFDRGM7RURFZDtFQUNBO0VBQ0E7RUFDQTtFQUNBLHNCQ0xrQjtFRE1sQjtFQUNHO0VBQ0s7RUFDUjtFQUNBO0VBQ0E7RUFDQTtFQUdBO0FsQ20wT0Y7QWtDaDBPRTtFQUFZO0FsQ20wT2Q7QWtDbDBPRTtFQUFZO0FsQ3EwT2Q7QWtDcDBPRTtFQUFZO0FsQ3UwT2Q7QWtDdDBPRTtFQUFZO0FsQ3kwT2Q7O0FrQ3QwT0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EseUJDN0J1QjtFRDhCdkI7RUFDQTtBbEN5ME9GO0FrQ3YwT0U7RUFDRTtBbEN5ME9KOztBa0NyME9BO0VBQ0U7QWxDdzBPRjs7QWtDajBPQTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDbzBPRjs7QWtDbDBPQTtFQUNFLGtCQ3REdUI7QW5DMjNPekI7O0FrQ24wT0E7RUFDRSxrQkMxRGtCO0VEMkRsQjtBbENzME9GOztBa0NsME9FO0VBQ0U7RUFDQTtFQUNBO0VBQ0EseUJDaEVxQjtFRGlFckI7QWxDcTBPSjtBa0NwME9JO0VBQ0U7RUFDQTtFQUNBO0VBQ0Esc0JDdkVjO0FuQzY0T3BCO0FrQ24wT0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLDJCQzlFcUI7QW5DbTVPekI7QWtDcDBPSTtFQUNFO0VBQ0E7RUFDQTtFQUNBLHdCQ3BGYztBbkMwNU9wQjtBa0NuME9FO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsNEJDMUZxQjtFRDJGckI7QWxDcTBPSjtBa0NwME9JO0VBQ0U7RUFDQTtFQUNBO0VBQ0EseUJDakdjO0FuQ3U2T3BCO0FrQ2wwT0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLDBCQ3pHcUI7QW5DNjZPekI7QWtDbjBPSTtFQUNFO0VBQ0E7RUFDQSx1QkM5R2M7RUQrR2Q7QWxDcTBPTjs7QW1DLzZPQTtFQUNJO0VBRUE7RUFDQSxxQkFuQm1CO0VBb0JuQjtFQUNBO0VBQ0E7RUFHQTtFQUNBO0FuQys2T0o7QW1DNzZPSTtFQUNJO0FuQys2T1I7QW1DNTZPSTtFQUNJO0VBQ0E7QW5DODZPUjtBbUMzNk9JO0VBQ0k7QW5DNjZPUjtBbUN2Nk9nQjtFQURKO0lBRVE7RW5DMDZPbEI7RW1DeDZPa0I7SUFDSTtJQUNBO0VuQzA2T3RCO0VtQ3g2T3NCO0lBQ0k7RW5DMDZPMUI7RW1DdjZPc0I7SUFDSTtFbkN5Nk8xQjtBQUNGO0FtQ2o2T1E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsY0F0RVk7RUF1RVo7RUFDQTtBbkNtNk9aO0FtQzk1T1E7RUFFUTtJQUNJO0VuQys1T2xCO0FBQ0Y7QW1DdjVPb0I7RUFDSTtBbkN5NU94QjtBbUN2NU93QjtFQUNJO0FuQ3k1TzVCO0FtQ2w1T1k7RUFHWTtJQUNJO0VuQ2s1TzFCO0VtQ2g1TzBCO0lBQ0k7RW5DazVPOUI7QUFDRjtBbUMxNE9JO0VBQ0k7RUFDQTtBbkM0NE9SO0FtQzE0T1E7RUFDSTtBbkM0NE9aO0FVNzdPSTtFeUJzREk7SUFDSTtFbkMwNE9WO0FBQ0Y7O0FVbDhPSTtFeUIrRFE7SUFDSTtFbkN1NE9kO0FBQ0Y7O0FvQ25oUEk7RUFDSTtFQUNBO0VBQ0E7QXBDc2hQUjtBb0NuaFBJO0VBQ0k7RUFDQTtBcENxaFBSOztBcUM1aFBBO0VBQ0k7RUFDQTtFQUNBO0FyQytoUEo7QXFDN2hQSTtFbENGQSxha0NHb0I7RWxDRnBCLGNrQ0VvQjtFQUVoQjtFQUNBO0VBQ0E7RUFDQTtBckMraFBSOztBc0N6aVBBO0VBQ0k7QXRDNGlQSjs7QXNDeGlQSTtFQUNJO0F0QzJpUFI7QXNDeGlQSTtFQUNJO0F0QzBpUFI7QXNDdmlQSTtFQUNJO0F0Q3lpUFI7QXNDdGlQSTtFQUNJO0F0Q3dpUFI7QXNDcGlQUTtFQUNJO0F0Q3NpUFo7QXNDbGlQSTtFQUNJO0VBQ0E7QXRDb2lQUjtBc0NoaVBRO0VBQ0k7RUFDQTtBdENraVBaO0FzQ2hpUFk7RUFDSTtBdENraVBoQjtBc0M3aFBJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXRDK2hQUjtBc0N4aFBZO0VBQ0k7QXRDMGhQaEI7QXNDdmhQWTtFQUNJO0F0Q3loUGhCO0FzQ25oUFE7RUFDSTtBdENxaFBaO0FzQ2poUEk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0Q21oUFI7QXNDamhQUTtFQUNJO0F0Q21oUFo7QXNDaGhQUTtFQUNJO0F0Q2toUFo7QXNDaGhQWTtFQUNJO0VBQ0E7QXRDa2hQaEI7QXNDOWdQUTtFQUNJO0F0Q2doUFo7QXNDN2dQUTtFQUNJO0F0QytnUFo7QXNDMWdQUTtFQUNJO0F0QzRnUFo7QXNDMWdQWTtFQUNJO0VBQ0E7QXRDNGdQaEI7QXNDMWdQZ0I7RUFDSTtBdEM0Z1BwQjtBc0N6Z1BnQjtFQUNJO0F0QzJnUHBCO0FzQ3BnUFk7RUFDSTtFQUNBO0VBQ0E7QXRDc2dQaEI7QXNDcGdQZ0I7OztFQUVJO0F0Q3VnUHBCO0FzQ2xnUFE7RUFDSTtBdENvZ1BaO0FzQ2hnUEk7RUFDSTtFQUNBO0VBQ0E7QXRDa2dQUjtBc0NoZ1BRO0VBQ0k7QXRDa2dQWjtBc0M5L09JO0VBQ0k7QXRDZ2dQUjtBVXZsUEk7RTRCMkZJO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFdEMrL09WO0VzQzcvT1U7SUFDSTtFdEMrL09kO0VzQzUvT1U7SW5DaEtSLGFtQ2lLNEI7SW5DaEs1QixjbUNnSzRCO0lBRWhCO0V0QzgvT2Q7RXNDMS9PTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0V0QzQvT1Y7RXNDMS9PVTtJbkN0TFIsV21DdUw0QjtJbkN0TDVCLFltQ3NMNEI7SUFFaEI7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0V0QzQvT2Q7QUFDRjtBc0N4L09JOztFQUdJO0VBQ0E7RUFDQTtFQUNBO0F0Q3kvT1I7O0FzQ3IvT0E7RUFDSTtBdEN3L09KOztBc0NyL09BO0VBQ0k7RUFDQTtBdEN3L09KO0FzQ3QvT0k7RUFDSTtBdEN3L09SO0FzQ3QvT1E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEN3L09aO0FzQ3QvT1k7RUFDSTtFQUNBO0F0Q3cvT2hCO0FzQ3AvT2dCO0VBRUk7QXRDcS9PcEI7O0FLdDlPQTs7RUFBQTtBQStIQTs7RUFBQTtBa0M1WUE7RUFDSTtFQUNBO0VBQ0E7QXZDNHVQSjtBdUMxdVBJO0VwQ0RBO0FIOHVQSjtBRzV1UEk7RUFJUTtBSDJ1UFo7QUd2dVBJO0VBQ0k7QUh5dVBSO0FHdHVQSTtFQUNJLGdCUW9NVTtFUm5NVjtBSHd1UFI7QUdydVBJO0VBQ0ksZ0JRK0xVO0FYd2lQbEI7QXVDdHZQSTtFQUNJO0VBQ0E7RUFDQTtFQUNBLGtCNUIrR2dCO0FYeW9QeEI7QXVDcnZQSTtFQUNJO0F2Q3V2UFI7QXVDcnZQUTtFQUNJLHNCckJsQkQ7QWxCeXdQWDtBdUNudlBJO0VBQ0k7QXZDcXZQUjtBdUNudlBRO0VBQ0ksc0JyQjFCRDtFcUIyQkM7QXZDcXZQWjtBdUNqdlBZO0VBQ0k7QXZDbXZQaEI7QXVDN3VQUTtFQUNJO0VBQ0E7QXZDK3VQWjtBdUM1dVBRO0VwQ3NDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSHlzUFI7QXVDaHZQSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLDBFQUNJO0VBR0o7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZDK3VQUjtBdUM3dVBRO0VBRUk7RUFDQTtFQUNBO0F2Qzh1UFo7QXVDenVQUTtFQUNJO0F2QzJ1UFo7QXVDdHVQUTtFQUNJO0VBQ0E7QXZDd3VQWjtBdUNydVBRO0VBQ0k7QXZDdXVQWjtBdUNodVBnQjtFQUNJO0F2Q2t1UHBCO0F1Qy90UGdCO0VBQ0k7QXZDaXVQcEI7QXVDNXRQZ0I7RUFDSTtBdkM4dFBwQjtBdUMzdFBnQjtFQUNJO0F2QzZ0UHBCO0FLMWtQSTtFa0M1SUk7RUFDQTtFQUNBO0VBQ0E7QXZDeXRQUjtBdUN2dFBRO0VBRUk7QXZDd3RQWjs7QXVDbHRQQTtFQUNJO0F2Q3F0UEo7O0F3Q2gyUEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeENtMlBKO0F3Q2oyUEk7RUFDSTtBeENtMlBSO0F3Q2gyUEk7RUFiSjtJQWNRO0V4Q20yUE47QUFDRjtBd0NqMlBJO0VBakJKO0lBa0JRO0V4Q28yUE47QUFDRjtBd0NsMlBJO0VBQ0k7QXhDbzJQUjtBd0NqMlBJO0VBQ0k7QXhDbTJQUjtBd0NoMlBJO0VBQ0k7QXhDazJQUjtBVXAwUEk7RThCMUJJO0lBQ0k7RXhDaTJQVjtFd0M5MVBNO0lBQ0k7RXhDZzJQVjtBQUNGO0FVNTBQSTtFOEI1REo7SUE0Q1E7RXhDZzJQTjtFd0M5MVBNO0lBQ0k7RXhDZzJQVjtBQUNGOztBd0M1MVBBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4QysxUEo7QXdDNzFQSTtFQUNJO0F4QysxUFI7QXdDNTFQSTtFQUNJO0F4QzgxUFI7QXdDMzFQSTtFQUNJO0VBQ0E7RUFDQTtBeEM2MVBSO0F3QzMxUFE7RUFDSTtBeEM2MVBaO0F3Q3oxUEk7RUFDSTtFQUNBO0VBQ0E7QXhDMjFQUjtBd0N6MVBRO0VBQ0k7QXhDMjFQWjtBd0N2MVBJO0VBQ0k7RUFDQTtBeEN5MVBSO0F3Q3QxUEk7RUFFSTtFQUNBO0VBQ0E7RUFDQTtBeEN1MVBSO0F3Q3AxUEk7RUFDSTtBeENzMVBSO0F3Q24xUEk7RUFDSTtBeENxMVBSO0F3Q2wxUEk7O0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4Q28xUFI7QXdDbDFQUTs7RUFDSTtFQUNBO0F4Q3ExUFo7QXdDbDFQUTs7RUFDSTtBeENxMVBaO0F3Q2wxUFE7Ozs7O0VBS0k7QXhDbzFQWjtBd0NqMVBROztFQUNJO0F4Q28xUFo7QXdDajFQUTs7RUFDSTtBeENvMVBaO0F3Q2gxUEk7RUFHSTtBeENnMVBSO0F3QzUwUFE7RUFDSTtFQUNBO0F4QzgwUFo7QXdDMTBQSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F4QzQwUFI7QXdDejBQSTtFckMzS0EsYXFDNEtvQjtFckMzS3BCLGNxQzJLb0I7RUFFaEI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4QzIwUFI7QXdDejBQUTtFQUNJO0F4QzIwUFo7QXdDeDBQUTtFQUNJO0F4QzAwUFo7QXdDdjBQUTtFckM3TEosYXFDOEx3QjtFckM3THhCLGNxQzZMd0I7QXhDMDBQNUI7QXdDdjBQUTtFQUNJO0F4Q3kwUFo7QXdDdDBQUTtFQUNJO0F4Q3cwUFo7QVVwOVBJO0U4QmdKUTtJQUNJO0V4Q3UwUGQ7RXdDcDBQVTtJQUNJO0V4Q3MwUGQ7QUFDRjtBd0NyelBJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEN1elBSO0F3Q256UFE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBeENxelBaO0F3Q256UFk7RUFDSTtFQUNBO0F4Q3F6UGhCO0F3Q2x6UFk7RUFDSSxvZUN4R087QXpDNDVQdkI7QXdDaHpQUTtFQUNJO0F4Q2t6UFo7QXdDaHpQWTtFQUNJLHdWQ3JIQTtFRHNIQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4Q2t6UGhCO0F3Qy95UFk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4Q2l6UGhCO0FVeGdRSTtFOEJSSjtJQXFPUTtFeEMreVBOO0V3Qzd5UE07SUFDSTtFeEMreVBWO0V3QzV5UE07SUFDSTtFeEM4eVBWO0V3QzV5UFU7SUFDSTtFeEM4eVBkO0V3QzF5UE07SUFDSTtFeEM0eVBWO0FBQ0Y7O0F3Q3h5UEE7RUFDSTtBeEMyeVBKOztBd0N4eVBBO0VBQ0k7QXhDMnlQSjs7QXdDdnlQQTtFQUNJO0F4QzB5UEo7QXdDeHlQSTtFQUVJO0VBR0E7RUFHQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4Q215UFI7QXdDaHlQSTtFQUVJO0VBR0E7RUFHQTtFQUNBO0F4QzZ4UFI7QXdDMXhQSTtFQUdJO0F4QzB4UFI7O0EwQ3puUUE7RUFDSTtFQUNBO0ExQzRuUUo7QTBDMW5RSTtFQUNJO0VBQ0E7QTFDNG5RUjtBMEMxblFRO0VBQ0k7QTFDNG5RWjtBMEN4blFJO0VBQ0k7QTFDMG5RUjtBMEN4blFRO0VBQ0k7QTFDMG5RWjtBMEN0blFJO0VBQ0k7QTFDd25RUjtBVS9rUUk7RWdDckNJO0lBQ0k7RTFDdW5RVjtFMENwblFNO0lBQ0k7RTFDc25RVjtBQUNGOztBMENsblFBO0VBQ0k7QTFDcW5RSjs7QTJDdnBRQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0EzQzBwUUo7QTJDeHBRSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0MwcFFSO0EyQ3hwUVE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNDMHBRWjtBMkNucFFRO0VBQ0k7QTNDcXBRWjtBMkNucFFZO0VBQ0k7QTNDcXBRaEI7O0E0Q3pyUUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVDNHJRUjtBNEMxclFRO0VBQ0k7RUFDQTtFQUNBO0E1QzRyUVo7O0E2Q3hzUUE7RUFDSTtFQUNBO0E3QzJzUUo7QTZDenNRSTtFQUNJO0VBQ0E7RUFDQTtBN0Myc1FSO0FVbnBRSTtFbUNwREk7SUFDSTtFN0Mwc1FWO0FBQ0Y7O0E4Q3J0UUE7RUFDSTtFQUNBO0VBQ0EsY25DaU5nQjtFbUNoTmhCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlDd3RRSjtBOEN0dFFJO0VBQ0k7QTlDd3RRUjtBOENydFFJO0UzQ1hBLGEyQ1lvQjtFM0NYcEIsYzJDV29CO0VBRWhCO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7QTlDc3RRUjtBOENwdFFRO0UzQ3JCSixhMkNzQndCO0UzQ3JCeEIsYzJDcUJ3QjtFQUVoQjtBOUNzdFFaO0FVdnFRSTtFb0NsREk7STNDckJKLGEyQzJCNEI7STNDMUI1QixjMkMwQjRCO0U5Q3d0UTlCO0FBQ0Y7QVUxclFJO0VvQy9DQTtJM0NYQSxhMkNnQ3dCO0kzQy9CeEIsYzJDK0J3QjtJQUVoQjtFOUN3dFFWO0U4Q3R0UVU7SUFDSTtFOUN3dFFkO0FBQ0Y7QThDcHRRSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlDc3RRUjtBVTNzUUk7RW9DaEJBO0lBUVE7SUFDQTtJQUNBO0U5Q3V0UVY7QUFDRjtBVXJzUUk7RW9DN0JBO0lBY1E7SUFDQTtFOUN3dFFWO0U4Q3R0UVU7SUFDSTtFOUN3dFFkO0FBQ0Y7QThDcHRRSTtFM0NqRUEsWTJDa0VvQjtFM0NqRXBCLGEyQ2lFb0I7RUFFaEI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUNzdFFSO0E4Q3B0UVE7RUFDSTtBOUNzdFFaO0E4Q250UVE7RUFDSTtBOUNxdFFaO0E4Q2p0UUk7RTNDekZBLFkyQzBGb0I7RTNDekZwQixhMkN5Rm9CO0VBRWhCO0E5Q210UVI7QThDanRRUTtFQUNJO0E5Q210UVo7QThDL3NRSTtFQUNJO0lBQ0k7RTlDaXRRVjtBQUNGO0FVN3ZRSTtFb0NnREk7STNDMUdKLFcyQzRHd0I7STNDM0d4QixZMkMyR3dCO0lBRWhCO0lBQ0E7SUFDQTtJQUNBO0U5QytzUVY7RThDNXNRTTtJQUNJO0lBQ0E7SUFDQTtFOUM4c1FWO0U4QzNzUU07SUFDSTtJQUNBO0U5QzZzUVY7RThDM3NRVTtJQUNJO0lBQ0E7SUFDQTtFOUM2c1FkO0U4QzFzUVU7SUFDSTtJQUNBO0U5QzRzUWQ7QUFDRjs7QVV6eFFJO0VxQy9ESjtJQUVRO0UvQzIxUU47QUFDRjs7QWdENTFRQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHSTtBaEQ2MVFSO0FnRHgxUUk7RUFDSTtBaEQwMVFSO0FnRHYxUUk7RUFDSTtFQUNBO0FoRHkxUVI7QVVyelFJO0VzQ2hDSTtJQUNJO0lBQ0E7RWhEdzFRVjtFZ0RyMVFNO0lBQ0k7RWhEdTFRVjtBQUNGO0FVOXpRSTtFc0M3REo7SUF3Q1E7SUFDQTtJQUNBO0VoRHUxUU47QUFDRjtBZ0RyMVFJO0VBQ0k7QWhEdTFRUjtBVTN6UUk7RXNDN0JBO0lBSVE7SUFDQTtFaER3MVFWO0FBQ0Y7QWdEdDFRUTtFQUNJO0VBQ0E7QWhEdzFRWjtBVXIwUUk7RXNDckJJO0lBS1E7RWhEeTFRZDtBQUNGO0FnRHYxUVk7RUFFSTtBaER3MVFoQjtBZ0RyMVFZO0VBR0k7QWhEcTFRaEI7O0FpRDU1UUE7RUFDSTtBakQrNVFKO0FVajJRSTtFdUMvREo7SUFJUTtJQUNBO0VqRGc2UU47QUFDRjs7QWtEcDZRUTtFQUNJO0FsRHU2UVo7QVU5MVFJO0V3Q3JFQTtJL0NrRkk7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RUhxMVFOO0FBQ0Y7QWtEdDZRWTtFQUNJO0FsRHc2UWhCOztBbUR0N1FBO0VBQ0k7RUFDQTtFQUNBO0FuRHk3UUo7QVUvM1FJO0V5QzdESjtJQU1RO0VuRDA3UU47QUFDRjs7QW1EdjdRQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkQwN1FKO0FtRHg3UUk7RUFDSTtBbkQwN1FSO0FtRHY3UUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRHk3UVI7QW1EdjdRUTtFQVBKO0lBUVE7RW5EMDdRVjtFbUR4N1FVO0lBQ0k7RW5EMDdRZDtBQUNGO0FtRHQ3UUk7RWhEbkNBLGFnRG9Db0I7RWhEbkNwQixjZ0RtQ29CO0VBRWhCO0VBQ0E7QW5EdzdRUjtBbURyN1FJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRHU3UVI7QW1EcjdRUTtFQUNJO0FuRHU3UVo7QW1EcDdRUTtFQUNJO0VBQ0E7QW5EczdRWjtBbURsN1FJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5EbzdRUjs7QW9EOS9RSTtFQUNJO0FwRGlnUlI7O0FxRGpnUkE7Ozs7OztFQUFBO0FDRUE7RUFDRTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdERzZ1JGO0FzRHBnUkU7RUFLSSxVRFJvQjtBckQwZ1IxQjtBc0Q3L1FJO0VBS0ksVURsQmtCO0FyRDZnUjFCO0FzRHYvUUk7OztFQUdFLHNCRDNCa0I7QXJEb2hSeEI7O0FzRHAvUUE7RUFDRSxhRHBDc0I7RUNxQ3RCO0VBQ0E7RUFDQTtBdER1L1FGOztBc0RwL1FBO0VBQ0U7RUFDQTtFQUNBO0F0RHUvUUY7QXNEci9RRTtFQUdFLGFEbERvQjtFQ21EcEIsY0RsRHFCO0VDbURyQixzQkRqRG9CO0VDa0RwQixxQkRqRDRCO0VDa0Q1QjtFQUNBO0VBQ0E7RUFDQTtBdERxL1FKO0FzRGwvUUU7RUFFRTtFQUNBO0F0RG0vUUo7QXNEaC9RRTtFQUNFO0F0RGsvUUo7QXNELytRRTtFQUNFO0F0RGkvUUo7O0F1RHJrUkU7O0VBQUE7QUFJRTtFQUNFO0VBQ0E7QXZEdWtSTjtBdURya1JNO0VBQ0U7QXZEdWtSUjtBdURua1JNO0VBQ0U7QXZEcWtSUjtBdUQvalJNO0VBQ0U7RUFDQTtFQUNBO0F2RGlrUlI7QXVEL2pSUTtFQUNFO0VBQ0E7RUFDQTtBdkRpa1JWO0F1RDdqUlE7RUFDRTtFQUNBO0VBQ0E7QXZEK2pSVjs7QXFEN2hSQTtFbERqRUksYVFpTmdCO0VSaE5oQixjUWdOZ0I7RTBDN0loQjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FyRGdpUko7QVU5aVJJO0UyQ09KO0lBVVE7RXJEaWlSTjtBQUNGOztBd0Q5bVJJO0VBQ0k7QXhEaW5SUjtBd0Q3bVJRO0VBQ0k7QXhEK21SWjtBd0Q1bVJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEQ4bVJaO0F3RDVtUlk7O0VBRUk7QXhEOG1SaEI7O0FVcmtSSTtFK0M3REo7SUFFUTtFekRxb1JOO0FBQ0Y7O0F5RGxvUkE7RUFDSTtBekRxb1JKO0F5RG5vUkk7RUFDSTtFQUNBO0F6RHFvUlI7QXlEbG9SSTtFQUNJO0VBQ0E7QXpEb29SUjtBeURqb1JJO0VBQ0k7QXpEbW9SUjtBeURob1JZO0VBQ0k7QXpEa29SaEI7QXlEL25SWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F6RGlvUmhCO0F5RDVuUkk7RUFDSTtBekQ4blJSO0F5RDVuUlE7RXREcENKLGFzRHFDd0I7RXREcEN4Qixjc0RvQ3dCO0VBRWhCO0VBQ0E7RUFDQTtBekQ4blJaO0F5RDFuUkk7RUFDSTtJQUNJO0V6RDRuUlY7RXlEem5STTtJQUNJO0V6RDJuUlY7QUFDRjtBVXJuUkk7RStDdkRKO0lBcURRLFc5QzhKc0I7RVg2OVE1QjtFeUR6blJNO0lBQ0k7SUFDQTtFekQyblJWO0V5RHhuUk07SUFDSTtFekQwblJWO0V5RHZuUk07SUFDSSxZOUNpSm1CO0VYdytRN0I7RXlEdG5STTtJQUNJO0V6RHduUlY7RXlEcm5STTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0EsWTlDcUltQjtJOENwSW5CO0V6RHVuUlY7RXlEbm5SVTtJdERyRlIsYXNEc0Y0QjtJdERyRjVCLGNzRHFGNEI7SUFFaEI7RXpEcW5SZDtFeURsblJVO0lBQ0k7RXpEb25SZDtFeURsblJjO0lBQ0k7SUFDQTtFekRvblJsQjtBQUNGOztBMER4dFJBO0VBQ0k7QTFEMnRSSjs7QTBEdnRSSTtFQUdJO0VBQ0E7QTFEd3RSUjtBSzU4UUk7RUFDSTtFQUNBO0FMODhRUjtBSzU4UVE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBTDg4UVo7QUsxOFFZO0VBQ0k7QUw0OFFoQjtBS3g4UVE7RUFDSTtBTDA4UVo7QUt2OFFRO0VBQ0k7QUx5OFFaO0FLdjhRWTtFQUNJO0VBQ0E7QUx5OFFoQjtBS3I4UWdCO0VBQ0k7QUx1OFFwQjtBS2o4UVk7RUFDSTtFQUNBO0FMbThRaEI7QUsvN1FRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBTGk4UVo7QUsvN1FZO0VBRUk7QUxnOFFoQjtBSzM3UVk7RUFDSTtBTDY3UWhCO0FLeDdRWTtFQUNJO0VBQ0E7QUwwN1FoQjtBS3Y3UVk7RUFDSTtBTHk3UWhCO0FLbDdRb0I7RUFDSTtBTG83UXhCO0FLajdRb0I7RUFDSTtBTG03UXhCO0FLOTZRb0I7RUFDSTtBTGc3UXhCO0FLNzZRb0I7RUFDSTtBTCs2UXhCO0FLamlSSTtFQXlIUTtFQUNBO0VBQ0E7RUFDQTtBTDI2UVo7QUt6NlFZO0VBRUk7QUwwNlFoQjtBMER4eVJJO0VBQ0k7QTFEMHlSUjtBMER2eVJhO0VBQ0w7RUFDQTtBMUR5eVJSOztBVTl2Ukk7RWdEekRKO0lBa0JRLGtCL0MwR2dCO0krQ3pHaEI7RTFEMHlSTjtFMER4eVJNO0lBQ0k7RTFEMHlSVjtFMER2eVJNO0lBQ0k7RTFEeXlSVjtFMER2eVJVO0lBQ0k7SUFDQTtJQUNBO0UxRHl5UmQ7RTBEcnlSTTtJQUVJO0lBQ0E7SUFDQSwyQi9DcUZZO0krQ3BGWiw4Qi9Db0ZZO0krQ25GWjtFMURzeVJWO0UwRG55Uk07SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTFEcXlSVjtFMERseVJjO0lBQ0k7RTFEb3lSbEI7RTBEL3hSTTtJQUdJO0UxRCt4UlY7RTBENXhSTTtJQUNJO0lBQ0E7SUFDQTtFMUQ4eFJWO0UwRDV4UlU7SUFDSTtFMUQ4eFJkO0UwRDF4Uk07SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFMUQ0eFJWO0FBQ0Y7O0EyRG4zUkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBM0RzM1JKO0FVN3pSSTtFaUQ3REo7SUFPUTtFM0R1M1JOO0FBQ0Y7QTJEcjNSSTtFQUNJO0VBQ0E7QTNEdTNSUjtBVXp6Ukk7RWlEaEVBO0lBS1E7RTNEdzNSVjtBQUNGO0EyRHIzUkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzRHUzUlI7QTJEcjNSUTtFQUNJO0EzRHUzUlo7QTJEbjNSSTtFQUNJO0lBQ0k7RTNEcTNSVjtBQUNGO0FVNzBSSTtFaUQxRUo7SUFzQ1E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFM0RxM1JOO0UyRG4zUk07SUFDSTtJQUNBO0UzRHEzUlY7RTJEbjNSVTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFM0RxM1JkO0UyRGozUk07SUFDSTtFM0RtM1JWO0FBQ0Y7QVVsM1JJO0VpRDdESjtJQWdFUTtJQUNBO0lBQ0E7RTNEbTNSTjtFMkRoM1JVO0lBQ0k7RTNEazNSZDtFMkQ5MlJNO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UzRGczUlY7RTJEOTJSVTtJQUNJO0UzRGczUmQ7RTJENTJSYztJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFM0Q4MlJsQjtFMkQzMlJzQjtJQUNJO0lBQ0E7RTNENjJSMUI7RTJEejJSa0I7SUFDSTtJQUNBO0UzRDIyUnRCO0UyRHoyUnNCO0lBR0k7SUFDQTtFM0R5MlIxQjtFMkRsMlJNO0lBQ0k7RTNEbzJSVjtFMkQvMVJrQjtJQUNJO0lBQ0E7SUFDQTtFM0RpMlJ0QjtFMkQxMVJrQjtJQUNJO0UzRDQxUnRCO0UyRDExUnNCO0lBRUk7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFM0QyMVIxQjtFMkR4MVJzQjtJQUNJO0lBQ0E7RTNEMDFSMUI7RTJEdjFSc0I7SUFDSTtJQUNBO0UzRHkxUjFCO0UyRGgxUjBCO0lBQ0k7RTNEazFSOUI7RTJELzBSMEI7SUFFSTtJQUNBLCtEQUNJO0UzRCswUmxDO0UyRHQwUk07SUFDSTtFM0R3MFJWO0FBQ0Y7O0FVMzhSSTtFa0QxREk7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBLGtCakR3SFk7RVhpNVJ0QjtFNER2Z1NVO0lBQ0k7RTVEeWdTZDtFNER0Z1NVO0lBQ0k7RTVEd2dTZDtFNERwZ1NNO0lBQ0k7RTVEc2dTVjtFNERuZ1NNO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1RHFnU1Y7RTREbmdTVTs7SUFFSTtFNURxZ1NkO0U0RGxnU1U7SUFDSTtFNURvZ1NkO0U0RGpnU1U7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTVEbWdTZDtFNEQvL1JjO0lBQ0k7SUFFQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFNURnZ1NsQjtFNEQ1L1JrQjtJQUNJO0U1RDgvUnRCO0U0RDUvUnNCO0lBQ0k7SUFDQTtFNUQ4L1IxQjtFNEQzL1I4QjtJQUNJO0U1RDYvUmxDO0U0RHYvUjBCO0lBQ0k7SUFDQTtFNUR5L1I5QjtFNER2L1I4QjtJQUVJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1RHcvUmxDO0U0RHQvUmtDO0lBR0k7SUFDQTtFNURzL1J0QztFNERsL1IwQztJQUNJO0U1RG8vUjlDO0U0RDUrUmtDO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQSxrQmpEV2hCO0VYbStSdEI7RTRENStSc0M7SUFDSTtFNUQ4K1IxQztFNEQzK1JzQztJQUNJO0lBQ0E7RTVENitSMUM7RTREeCtSOEI7SUFDSTtJQUNBO0U1RDArUmxDO0U0RHYrUnNDO0lBQ0k7RTVEeStSMUM7RTREaCtSc0I7SUFDSTtFNURrK1IxQjtFNEQ3OVJjO0lBQ0k7RTVEKzlSbEI7RTREMzlSVTtJQUNJO0U1RDY5UmQ7RTREMzlSYztJQUNJO0lBRUE7SUFDQTtFNUQ0OVJsQjtFNER6OVJjO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTVEMjlSbEI7RTREcjlSVTtJQUNJO0U1RHU5UmQ7RTREcDlSa0I7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1RHM5UnRCO0U0RHA5UnNCO0lBR0k7RTVEbzlSMUI7RTRELzhSc0I7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTVEaTlSMUI7RTREejhSVTtJQUNJO0U1RDI4UmQ7QUFDRjtBVTFsU0k7RWtEb0pJO0lBQ0k7SUFDQTtJQUNBO0U1RHk4UlY7QUFDRjs7QTZEMXFTQTtFQUNJO0VBQ0E7RUFDQTtBN0Q2cVNKO0E2RDNxU0k7RUFMSjtJQU1RO0U3RDhxU047QUFDRjtBVXpuU0k7RW1ENURKO0lBVVE7RTdEK3FTTjtBQUNGO0E2RDdxU0k7RUFiSjtJQWNRO0U3RGdyU047QUFDRjs7QTZEN3FTQTtFQUNJO0E3RGdyU0o7QTZEN3FTUTtFQUNJO0lBRlI7TUFHWTtNQUNBO0k3RGdyU1o7RUFDRjtBQUNGO0E2RDlxU1E7RUFSSjtJQVNRO0U3RGlyU1Y7QUFDRjs7QTZEN3FTQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EscUxBQ0k7RUFXSjtBN0RxcVNKO0E2RG5xU0k7RUFFSTtFQUNBO0VBQ0E7QTdEb3FTUjtBNkRscVNRO0VBQ0k7QTdEb3FTWjtBNkRocVNJO0VBQ0k7QTdEa3FTUjtBNkQ5cFNJO0VBS0k7QTdENHBTUjtBNkR6cFNJO0VBQ0k7QTdEMnBTUjtBNkR4cFNJO0VBQ0k7RUFDQTtBN0QwcFNSO0E2RHZwU0k7RUFDSTtBN0R5cFNSO0E2RHRwU0k7RUFDSTtBN0R3cFNSO0E2RHJwU0k7RUFDSTtBN0R1cFNSO0E2RHBwU0k7RUFDSTtFQUNBO0E3RHNwU1I7QTZEbnBTSTtFQUNJO0VBQ0E7RUFDQTtBN0RxcFNSO0E2RGxwU0k7RUFDSTtFQUNBO0VBQ0E7QTdEb3BTUjtBNkRscFNRO0VBQ0k7QTdEb3BTWjtBNkRocFNJO0VBQ0k7QTdEa3BTUjtBNkQ1b1NRO0VBR1E7SUFDSTtFN0Q0b1NsQjtBQUNGO0E2RHhvU1E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RDBvU1o7QTZEcG9TWTtFQUNJO0VBQ0E7RUFDQTtBN0Rzb1NoQjtBNkRob1NJO0VBRUk7QTdEaW9TUjtBNkQvblNRO0VBQ0k7QTdEaW9TWjtBNkQ3blNJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdEK25TUjtBNkQ3blNRO0VBVEo7SUFVUTtJQUNBO0U3RGdvU1Y7QUFDRjtBNkQ5blNRO0VBQ0k7RUFDQTtBN0Rnb1NaO0E2RDluU1k7RUFKSjtJQUtRO0lBQ0E7SUFDQTtFN0Rpb1NkO0U2RC9uU2M7SUFDSTtFN0Rpb1NsQjtBQUNGO0E2RDVuU0k7RUFDSTtFQUVBLGtCbERoRmdCO0VrRGlGaEI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdENm5TUjtBNkQzblNRO0VBZko7SUFnQlE7SUFDQTtFN0Q4blNWO0U2RDVuU1U7SUFDSTtFN0Q4blNkO0FBQ0Y7QTZEM25TUTtFQUNJO0E3RDZuU1o7QTZEMW5TUTtFQUNJO0VBQ0E7QTdENG5TWjtBNkR6blNRO0VBQ0k7RUFDQTtBN0QyblNaO0E2RHZuU1k7RUFESjtJQUVRO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U3RDBuU2Q7QUFDRjtBNkR4blNZO0VBWEo7SUFZUTtFN0QyblNkO0FBQ0Y7QTZEem5TWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RDJuU2hCO0E2RHRuU0k7RUFDSTtFQUNBO0VBQ0E7QTdEd25TUjtBNkR0blNRO0VBTEo7SUFNUTtFN0R5blNWO0U2RHRuU2M7SUFDSTtJQUNBO0U3RHduU2xCO0U2RHJuU2M7SUFDSTtFN0R1blNsQjtBQUNGO0E2RGxuU0k7RUFDSTtFQUNBO0E3RG9uU1I7QTZEbG5TUTtFQUpKO0lBS1E7SUFDQTtFN0RxblNWO0U2RG5uU1U7SUFDSTtFN0RxblNkO0FBQ0Y7QTZEaG5TZ0I7RUFDSTtFQUNBO0E3RGtuU3BCO0E2RGhuU29CO0VBQ0k7QTdEa25TeEI7QTZEM21TSTtFQUNJO0VBQ0E7RUFDQTtBN0Q2bVNSO0E2RHptU1E7RUFFSTtFQUNBO0VBQ0EsNEVBQ0k7RUFHSjtFQUNBLGtCbEQ5TVk7RWtEK01aO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdEdW1TWjtBNkRybVNZO0VBaEJKO0lBaUJRO0U3RHdtU2Q7QUFDRjtBNkR0bVNZO0VBQ0k7QTdEd21TaEI7QTZEcm1TWTtFQUNJO0VBQ0E7RUFDQTtBN0R1bVNoQjtBNkRwbVNZO0VBQ0k7RUFDQTtBN0RzbVNoQjtBNkRsbVNRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0RvbVNaO0E2RGhtU0k7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdEaW1TUjtBNkQvbFNRO0VBVEo7SUFVUTtFN0RrbVNWO0FBQ0Y7QTZEaG1TUTtFQUNJO0VBQ0E7QTdEa21TWjtBNkQ5bFNJO0VBQ0k7RUFDQTtBN0RnbVNSO0E2RDlsU1E7RUFDSTtBN0RnbVNaO0E2RDdsU1E7RUFDSTtFQUNBO0E3RCtsU1o7QTZEN2xTWTtFQUNJO0E3RCtsU2hCO0E2RDNsU1E7RUFDSTtBN0Q2bFNaO0E2RHhsU1E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0QwbFNaO0E2RHhsU1k7RUFaSjtJQWFRO0U3RDJsU2Q7QUFDRjtBNkR6bFNZO0VBaEJKO0lBaUJRO0U3RDRsU2Q7QUFDRjtBNkQxbFNZO0VBQ0k7QTdENGxTaEI7QTZEemxTWTtFQXhCSjtJQXlCUTtFN0Q0bFNkO0FBQ0Y7QTZEemxTZ0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RDJsU3BCO0E2RHRsU1E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RHdsU1o7QTZEcmxTUTtFQUNJO0E3RHVsU1o7QTZEbGxTSTtFQUNJO0VBQ0E7RUFDQTtBN0RvbFNSO0E2RGhsU1E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RGtsU1o7QTZEOWtTWTtFQUNJO0VBQ0E7RUFDQTtBN0RnbFNoQjtBNkQza1NZO0VBQ0k7RUFDQTtBN0Q2a1NoQjtBNkR6a1NRO0VBQ0k7QTdEMmtTWjtBNkR2a1NJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdEeWtTUjtBNkR2a1NRO0VBQ0k7RUFDQTtBN0R5a1NaO0E2RHRrU1E7RUFDSTtFQUNBO0VBQ0E7QTdEd2tTWjtBNkR0a1NZO0VBQ0k7QTdEd2tTaEI7QTZEcGtTUTtFQUNJO0E3RHNrU1o7QTZEbGtTSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RG9rU1I7QTZEbGtTUTtFQUNJO0E3RG9rU1o7QTZEamtTUTtFQUNJO0E3RG1rU1o7QTZEaGtTUTtFQUNJO0VBQ0E7RUFHQTtFQUNBO0E3RGdrU1o7QTZEN2pTUTtFQUNJO0VBQ0E7RUFDQTtBN0QralNaO0E2RDVqU1k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBN0Q4alNoQjtBNkQzalNZO0VBR0k7QTdEMmpTaEI7QTZEdGpTSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdEd2pTUjtBNkR0alNRO0VBQ0k7QTdEd2pTWjtBNkRyalNRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdEdWpTWjtBNkRyalNZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdEdWpTaEI7QTZEcGpTWTtFQUNJO0VBQ0E7QTdEc2pTaEI7QTZEbGpTUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0RvalNaO0E2RGxqU1k7RUFDSTtFQUNBLHFCbER0aEJXO0FYMGtUM0I7QTZEampTWTtFQUNJO0E3RG1qU2hCO0E2RDlpU0k7RUFDSTtFQUNBLGtCbERwaEJnQjtFa0RxaEJoQjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdEZ2pTUjtBNkQ5aVNRO0VBQ0k7QTdEZ2pTWjtBNkQ3aVNRO0VBQ0k7RUFDQTtBN0QraVNaO0E2RDFpU0k7RUFDSTtFQUNBO0E3RDRpU1I7O0E2RHZpU0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RDBpU0o7O0E4RDd0VEE7RUFDSTtBOURndVRKO0E4RDl0VEk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RGd1VFI7QThEN3RUSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E5RCt0VFI7QThENXRUSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7QTlENHRUUjtBOEQxdFRRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTlENHRUWjtBOEQxdFRZO0VBTko7SUFPUTtFOUQ2dFRkO0FBQ0Y7QThEMXRUUTtFQUNJO0VBQ0E7QTlENHRUWjtBOER6dFRRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RDJ0VFo7QThEdnRUSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RHl0VFI7QThEdnRUUTtFQVRKO0lBVVE7RTlEMHRUVjtBQUNGO0E4RHh0VFE7RUFDSTtFQUNBO0E5RDB0VFo7QThEeHRUWTtFQUpKO0lBS1E7RTlEMnRUZDtBQUNGO0E4RHh0VFE7RUFDSTtBOUQwdFRaO0E4RHZ0VFE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBOUR5dFRaO0E4RHR0VFE7RUFDSTtFQUNBO0E5RHd0VFo7QThEcHRUSTtFQUNJO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlEcXRUUjtBOERudFRRO0VBQ0k7RUFDQTtFQUNBLGtCbkRnQlk7RW1EZlo7RUFDQTtFQUNBO0VBQ0E7QTlEcXRUWjtBOERsdFRRO0VBQ0k7RUFDQTtFQUVBO0VBQ0E7RUFDQTtBOURtdFRaOztBK0RoMVRRO0VBQ0k7RUFDQTtFQUNBLGtCcEQ2SFk7RW9ENUhaO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9EbTFUWjtBK0RqMVRZO0VBQ0k7RUFDQTtBL0RtMVRoQjtBVXJ5VEk7RXFEMUNJO0lBR1E7RS9EZzFUZDtBQUNGO0ErRDcwVFE7RUFDSTtFQUNBO0EvRCswVFo7QStENTBUUTtFQUNJO0EvRDgwVFo7QVVqelRJO0VxRDlCSTtJQUlRO0UvRCswVGQ7QUFDRjtBK0Q3MFRZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvRCswVGhCO0ErRDcwVGdCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9EKzBUcEI7QStEMzBUWTtFQUNJO0EvRDYwVGhCOztBZ0UvM1RBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhFazRUSjtBZ0VoNFRJO0VBRUk7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUlBO0VBQ0E7RUFFQTtBaEU0M1RSO0FnRXAzVFk7RUFDSSxjQTlDSztBaEVvNlRyQjtBZ0V2M1RZO0VBQ0ksY0E5Q0s7QWhFdTZUckI7QWdFcjNUUTtFQUNJLGNyRDRETztBWDJ6VG5CO0FnRW4zVEk7RUFDSTtBaEVxM1RSO0FnRWwzVEk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBaEVvM1RSOztBaUU5NlRBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakVpN1RKO0FpRS82VEk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBakVpN1RSO0FpRTc2VFE7RUFDSTtFQUNBO0FqRSs2VFo7O0FrRTM4VEE7RUFDSTtBbEU4OFRKOztBa0UzOFRBO0VBQ0k7QWxFODhUSjs7QWtFMThUSTtFQUNJO0FsRTY4VFI7QVU3NFRJO0V3RGxFSjtJQU1RO0lBQ0E7SUFDQTtFbEU2OFROO0VrRXI4VDhCO0lBQ0k7RWxFdThUbEM7RWtFOTdUTTtJQUNJO0lBQ0Esa0J2RDRGWTtJdUQzRlo7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWxFZzhUVjtFa0U5N1RVO0lBQ0k7RWxFZzhUZDtFa0U3N1RVO0lBQ0k7RWxFKzdUZDtFa0UxN1QwQjtJQUNJO0VsRTQ3VDlCO0VrRXI3VFU7SUFDSTtFbEV1N1RkO0VrRXA3VGtCO0lBQ0k7RWxFczdUdEI7RWtFLzZUa0I7SUFDSTtFbEVpN1R0QjtFa0UzNlRNO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VsRTY2VFY7RWtFMTZUTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFbEU0NlRWO0VrRTE2VFU7SUFDSTtFbEU0NlRkO0VrRXo2VFU7SUFDSTtFbEUyNlRkO0VrRXY2VHNCO0lBQ0k7RWxFeTZUMUI7RWtFbjZUVTtJQUNJO0VsRXE2VGQ7RWtFbDZUVTtJQUNJO0lBQ0E7RWxFbzZUZDtFa0VsNlRjO0lBQ0k7SUFDQTtJQUNBO0VsRW82VGxCO0VrRWg2VFU7SUFDSTtFbEVrNlRkO0VrRS81VFU7SUFDSTtJQUNBO0VsRWk2VGQ7RWtFLzVUYztJQUNJO0VsRWk2VGxCO0VrRTc1VFU7SUFDSTtJQUNBO0VsRSs1VGQ7RWtFMzVUTTtJQUNJO0VsRTY1VFY7RWtFMTVUYztJQUNJO0lBQ0E7RWxFNDVUbEI7QUFDRjtBVWpnVUk7RXdEMkdJO0k3RDRPSjtJQUNBO0lBQ0E7SUFDQTtJQUVBO0k2RDlPUTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWxFNDVUVjtFS2xyVEU7SUFDSTtFTG9yVE47RWtFNzVUVTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQSxZdkQ4QmdCO0l1RDdCaEI7SUFDQTtFbEUrNVRkO0VrRXo1VGM7SUFDSTtFbEUyNVRsQjtFa0V0NVRNO0lBRUk7RWxFdTVUVjtFa0VwNVRNO0lBQ0k7SUFDQTtFbEVzNVRWO0VrRWw1VGtCO0lBQ0k7RWxFbzVUdEI7RWtFLzRUa0I7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFbEVpNVR0QjtFa0UvNFRzQjtJQUNJO0VsRWk1VDFCO0VrRTk0VHNCO0lBQ0ksc0J2RFRGO0VYeTVUeEI7RWtFNzRUc0I7SUFDSTtJQUNBO0VsRSs0VDFCO0VrRTM0VDBCO0lBQ0k7RWxFNjRUOUI7RWtFcjRUTTtJQUNJO0lBQ0E7RWxFdTRUVjtFa0VwNFRNO0kvRDVQSixXK0Q2UHdCO0kvRDVQeEIsWStENFB3QjtJQUVoQjtJQUNBO0lBQ0E7SUFDQTtFbEVzNFRWO0VrRXA0VFU7O0kvRHBRUixXK0RzUTRCO0kvRHJRNUIsWStEcVE0QjtFbEV1NFQ5QjtFa0VwNFRVO0lBQ0k7RWxFczRUZDtFa0VuNFRVO0lBQ0k7SUFDQTtFbEVxNFRkO0VrRWo0VE07SUFDSTtFbEVtNFRWO0VrRTkzVGM7SUFDSTtJQUNBO0lBQ0E7SUFDQTtFbEVnNFRsQjtFa0U3M1RzQjtJQUNJO0lBQ0E7RWxFKzNUMUI7RWtFNTNUOEI7SUFDSTtJQUNBO0lBQ0E7SUFDQTtFbEU4M1RsQztFa0VwM1RrQjtJQUNJO0lBQ0E7RWxFczNUdEI7QUFDRjs7QW1FeHFVQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0FuRXNxVUY7O0FtRS9wVUE7RUFDRTtFQUNBO0VBQ0E7RUFFQTtBbkVpcVVGO0FtRTlwVUU7RUFDRSw4QmpEbThDZ0M7QWxCNnRScEM7QW1FN3BVRTtFQUNFLGVqRGc4Q2dDO0FsQit0UnBDO0FtRTNwVUU7RUFDRSxzQmpENjdDZ0M7QWxCZ3VScEM7O0FtRXpwVUE7RUFDRTtBbkU0cFVGO0FtRTFwVUU7RUFDRTtFQUNBO0FuRTRwVUo7QW1FenBVRTtFQUNFO0FuRTJwVUo7O0FtRXZwVUE7RUFDRTtFQUNBO0VBQ0E7QW5FMHBVRjs7QW1FdHBVQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUlBO0FuRXFwVUY7O0FtRWpwVUE7RUFFRTtFQUNBO0VBQ0E7RUNsSEE7RUFDQTtFQUNBO0VBQ0Esa0NEa0gwQjtFQ2pIMUI7RUFDQTtFQUNBLHVDRCtHNEQ7QW5FdXBVOUQ7QW9FbndVRTtFQUFTO0FwRXN3VVg7QW9FcndVRTtFQUFTLG1DRDJHaUY7QW5FNnBVNUY7O0FtRXhwVUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRTJwVUY7QW1FeHBVRTtFQUNFO0VBRUE7RUFDQTtFQUNBO0VBQ0E7QW5FeXBVSjs7QW1FcHBVQTtFQUNFO0VBQ0E7QW5FdXBVRjs7QW1FbHBVQTtFQUNFO0VBR0E7RUFDQTtBbkVtcFVGOztBbUUvb1VBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkVrcFVGO0FtRTVvVUU7RUFDRTtBbkU4b1VKOztBVTd2VUk7RXlEcUhGO0lBQ0U7SUFDQTtFbkU0b1VGO0VtRXhvVUE7SUFDRTtJQUNBO0lBQ0E7RW5FMG9VRjtFbUV2b1VBO0lBQ0U7RW5FeW9VRjtBQUNGO0FVNXdVSTtFeUR1SUY7O0lBRUU7RW5Fd29VRjtBQUNGO0FVbHhVSTtFeUQ4SUY7SUFDRTtFbkV1b1VGO0FBQ0Y7QW1FOW5VSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FuRWdvVU47QW1FOW5VTTtFQUNFO0VBQ0E7QW5FZ29VUjtBbUV2blVNO0VBQ0U7QW5FeW5VUjs7QVV2eFVJO0V5RDRJQTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VuRStvVUo7RW1FN29VSTtJQUNFO0lBQ0E7RW5FK29VTjtFbUV0b1VJO0lBQ0U7RW5Fd29VTjtBQUNGO0FVdnlVSTtFeUQ0SUE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFbkU4cFVKO0VtRTVwVUk7SUFDRTtJQUNBO0VuRThwVU47RW1FcnBVSTtJQUNFO0VuRXVwVU47QUFDRjtBVXR6VUk7RXlENElBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RW5FNnFVSjtFbUUzcVVJO0lBQ0U7SUFDQTtFbkU2cVVOO0VtRXBxVUk7SUFDRTtFbkVzcVVOO0FBQ0Y7QVVyMFVJO0V5RDRJQTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VuRTRyVUo7RW1FMXJVSTtJQUNFO0lBQ0E7RW5FNHJVTjtFbUVuclVJO0lBQ0U7RW5FcXJVTjtBQUNGO0FVcDFVSTtFeUQ0SUE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFbkUyc1VKO0VtRXpzVUk7SUFDRTtJQUNBO0VuRTJzVU47RW1FbHNVSTtJQUNFO0VuRW9zVU47QUFDRjtBVW4yVUk7RXlENElBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RW5FMHRVSjtFbUV4dFVJO0lBQ0U7SUFDQTtFbkUwdFVOO0VtRWp0VUk7SUFDRTtFbkVtdFVOO0FBQ0Y7QVVsM1VJO0V5RDRJQTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VuRXl1VUo7RW1FdnVVSTtJQUNFO0lBQ0E7RW5FeXVVTjtFbUVodVVJO0lBQ0U7RW5Fa3VVTjtBQUNGO0FVajRVSTtFeUQ0SUE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFbkV3dlVKO0VtRXR2VUk7SUFDRTtJQUNBO0VuRXd2VU47RW1FL3VVSTtJQUNFO0VuRWl2VU47QUFDRjtBVWg1VUk7RXlENElBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RW5FdXdVSjtFbUVyd1VJO0lBQ0U7SUFDQTtFbkV1d1VOO0VtRTl2VUk7SUFDRTtFbkVnd1VOO0FBQ0Y7QVUvNVVJO0V5RDRJQTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VuRXN4VUo7RW1FcHhVSTtJQUNFO0lBQ0E7RW5Fc3hVTjtFbUU3d1VJO0lBQ0U7RW5FK3dVTjtBQUNGO0FxRXgvVUE7RWxFaUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFa0V6Q0E7RUFDQTtBckVvZ1ZKO0FxRWxnVkk7RUFDSTtFQUNBO0FyRW9nVlI7QXFFbGdWUTtFQUNJO0FyRW9nVlo7QXFFaGdWSTtFQUNJO0FyRWtnVlI7QXFFLy9VSTtFQUNJO0VBQ0E7QXJFaWdWUjtBcUU5L1VJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckVnZ1ZSO0FxRTUvVVE7RUFDSTtBckU4L1VaO0FxRXovVVE7RUFDSTtBckUyL1VaO0FxRXIvVVk7RUFESjtJQUVRO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXJFdy9VZDtBQUNGO0FxRXQvVWdCO0VBVFI7SUFVWTtJQUNBO0VyRXkvVWxCO0FBQ0Y7QXFFcGdWWTtFQWNRO0lBQ0k7SUFDQTtFckV5L1V0QjtFcUVyL1VrQjtJQUNJO0VyRXUvVXRCO0FBQ0Y7QXFFai9VSTtFQUNJO0FyRW0vVVI7QXFFai9VUTtFQUNJO0FyRW0vVVo7QXFFaC9VUTtFQUNJLDBEQUNJO0VBRUo7RUFDQTtFQUNBO0FyRWcvVVo7QXFFNStVWTtFQUNJO0VBQ0E7QXJFOCtVaEI7QXFFNStVZ0I7RUFDSTtBckU4K1VwQjtBcUV2K1VRO0VBQ0k7RUFDQTtBckV5K1VaO0FxRXYrVVk7RUFDSTtBckV5K1VoQjtBcUVwK1VJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJFcytVUjtBcUVwK1VRO0VBRUk7QXJFcStVWjtBcUVsK1VRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXJFbytVWjtBcUUvOVVRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxvREFDSTtBckVnK1VoQjtBcUUzOVVZO0VBQ0k7RUFDQTtBckU2OVVoQjtBcUV2OVVRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckV5OVVaO0FxRXI5VUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBckV1OVVSO0FxRXI5VVE7RUFDSTtBckV1OVVaO0FxRW45VUk7RUFDSTtFQUNBO0FyRXE5VVI7QXFFbDlVSTtFQUVJO0FyRW05VVI7QXFFaDlVSTtFQUNJO0FyRWs5VVI7QXFFaDlVUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FyRWs5VVo7QXFFOThVSTtFQUNJO0FyRWc5VVI7QXFFNzhVSTs7O0VBR0k7QXJFKzhVUjtBcUUxOFVRO0VBQ0k7QXJFNDhVWjtBcUV6OFVROztFQUVJO0FyRTI4VVo7QXFFdjhVWTtFQUNJO0VBQ0E7RUFDQTtBckV5OFVoQjtBcUV2OFVnQjtFQUNJO0FyRXk4VXBCO0FxRXI4VVk7RUFDSTtFQUNBO0FyRXU4VWhCO0FxRWw4VUk7RUFDSTtBckVvOFVSO0FxRWg4VVE7RUFDSTtBckVrOFVaO0FxRS83VVE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBckVpOFVaOztBcUUxN1VJO0VBQ0k7QXJFNjdVUjs7QXFFejdVQTtFQUNJO0lBQ0k7RXJFNDdVTjtFcUV6N1VFO0lBQ0k7RXJFMjdVTjtBQUNGO0FzRXB0VkE7RUFHSTtFQUNBO0F0RW90Vko7QXNFbHRWSTs7RUFHSSxrQjNEeUhnQjtBWDBsVnhCO0FVN3BWSTtFNER6REE7O0lBTVEsa0IzRHNIWTtFWCtsVnRCO0FBQ0Y7QXNFbHRWSTtFbkVOQTtFbUVTSTtFQUNBO0F0RW10VlI7QUczdFZJO0VBSVE7QUgwdFZaO0FHdHRWSTtFQUNJO0FId3RWUjtBR3J0Vkk7RUFDSSxnQlFvTVU7RVJuTVY7QUh1dFZSO0FHcHRWSTtFQUNJLGdCUStMVTtBWHVoVmxCO0FzRTd0Vkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0RSt0VlI7QVUvclZJO0U0RHhDQTtJQVdRO0lBQ0E7SUFDQTtFdEVndVZWO0FBQ0Y7QXNFOXRWUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F0RWd1Vlo7QVU1c1ZJO0U0RHhCSTtJQU9RO0lBQ0E7SUFDQTtFdEVpdVZkO0FBQ0Y7O0F1RWh4VkE7RUFDSTtBdkVteFZKO0FVMXNWSTtFNkQxRUo7SUFJUTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0V2RW94Vk47RXVFbHhWTTtJQUNJO0V2RW94VlY7RXVFanhWTTtJQUNJO0V2RW14VlY7RXVFaHhWTTtJQUNJO0V2RWt4VlY7RXVFL3dWTTtJQUNJO0V2RWl4VlY7RXVFOXdWTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0V2RWd4VlY7RXVFN3dWTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXZFK3dWVjtFdUU3d1ZVO0lBQ0k7RXZFK3dWZDtFdUU1d1ZVO0lBQ0k7RXZFOHdWZDtFdUUxd1ZNO0lwRXZESixhb0V3RHdCO0lwRXZEeEIsY29FdUR3QjtJQUVoQjtJQUNBO0V2RTR3VlY7RXVFMXdWVTtJQUNJO0V2RTR3VmQ7RXVFendWVTtJQUNJO0V2RTJ3VmQ7QUFDRjtBVXB4Vkk7RTZEYUE7SUFHWTtFdkV3d1ZkO0FBQ0Y7QVV6eFZJO0U2RGFBO0lBR1k7RXZFNndWZDtBQUNGO0FVOXhWSTtFNkRhQTtJQUdZO0V2RWt4VmQ7QUFDRjtBVW55Vkk7RTZEN0RKO0lwRVFJO0lvRTZFSTtJQUNBO0V2RWd4Vk47RUc1MVZFO0lBSVE7RUgyMVZWO0VHdjFWRTtJQUNJO0VIeTFWTjtFR3QxVkU7SUFDSSxnQlFvTVU7SVJuTVY7RUh3MVZOO0VHcjFWRTtJQUNJLGdCUStMVTtFWHdwVmhCO0V1RTN4Vk07SUFDSTtFdkU2eFZWO0V1RTF4Vk07SUFDSSxnQjVEOEhNO0VYOHBWaEI7QUFDRjtBdUV6eFZRO0VBQ0k7SUFDSSxnQjVEd0hFO0VYbXFWaEI7QUFDRjtBVWwwVkk7RTZEMENJO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFHQTtJQUNBO0V2RXl4VlY7RXVFdnhWVTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUlBO0V2RXN4VmQ7RXVFbnhWVTtJQUNJO0lBQ0E7RXZFcXhWZDtFdUVueFZjO0lBQ0k7SUFDQTtFdkVxeFZsQjtFdUVqeFZrQjtJQUNJO0V2RW14VnRCO0V1RTV3VlU7SUFDSTtJQUNBO0lBQ0E7RXZFOHdWZDtFdUUzd1ZrQjtJbEV0SmhCLG1CQVBTO0lBUVQsd0NBUG1CO0lBUW5CLG9EQU5tQjtJQU9uQjtJa0VzSm9CO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXZFK3dWdEI7RUsxNlZFO0lBRUkseUJBWmE7SUFhYixtREFYYTtFTHM3Vm5CO0V1RWp4VnNCO0lBQ0k7RXZFbXhWMUI7RXVFL3dWMEI7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXZFaXhWOUI7RXVFN3dWc0M7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXZFK3dWMUM7RXVFNXdWc0M7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFFQTtFdkU2d1YxQztFdUU1d1YwQztJQUNJO0lBQ0E7RXZFOHdWOUM7RXVFaHdWYztJQUNJO0lBQ0E7SUFDQTtJQUNBO0V2RWt3VmxCO0V1RXp2VnNCO0lBQ0k7RXZFMnZWMUI7RXVFcHZWTTtJQUNJO0V2RXN2VlY7RXVFbnZWYztJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXZFcXZWbEI7RXVFN3VWMEI7SUFDSTtJQUNBO0V2RSt1VjlCO0V1RTd1VjhCO0lBQ0k7SUFDQTtFdkUrdVZsQztFdUV4dVZjO0lBQ0k7SUFDQTtJQUNBO0V2RTB1VmxCO0V1RXR1VmtCO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFdkV3dVZ0QjtFdUVydVZrQjtJQUNJO0V2RXV1VnRCO0V1RXB1VmtCO0lBR0k7RXZFb3VWdEI7RXVFN3RWTTtJQUNJO0V2RSt0VlY7QUFDRjs7QXdFbmhXQTtFQUNJO0VBQ0E7RUFDQTtBeEVzaFdKO0F3RXBoV0k7RUFDSTtFQUNBO0F4RXNoV1I7QVVoK1ZJO0U4RHhEQTtJQUtRO0lBQ0E7RXhFdWhXVjtBQUNGO0F3RXBoV0k7RUFDSTtFQUNBO0F4RXNoV1I7QXdFbmhXSTtFQUVJO0F4RW9oV1I7QVU3K1ZJO0U4RHpDQTtJQUtRO0V4RXFoV1Y7QUFDRjtBVXIrVkk7RThEdERBO0lBU1E7RXhFc2hXVjtBQUNGOztBeUUzaVdBO0VwRUdJLGtCb0VGd0M7RXBFR3hDLHdDQVBtQjtFQVFuQixvREFObUI7RUFPbkI7QUw0aVdKO0FLMWlXSTtFQUVJLHlCQVphO0VBYWIsbURBWGE7QUxzaldyQjtBVXIvVkk7RStEakVKO0lBSVE7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXpFc2pXTjtFeUVwaldNO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBLGtCOURxR1k7SThEcEdaO0lBQ0E7SUFDQTtJQUNBO0V6RXNqV1Y7RXlFbmpXTTtJQUVJO0V6RW9qV1Y7RXlFbGpXVTtJQUNJO0V6RW9qV2Q7RXlFaGpXTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0V6RWtqV1Y7QUFDRjtBeUUvaVdJO0V0RW5EQSxVc0VvRG9CO0V0RW5EcEIsV3NFbURvQjtBekVrald4QjtBeUUvaVdJO0VBQ0k7RUFDQTtBekVpaldSO0F5RTlpV0k7RUFDSTtBekVnaldSO0F5RTdpV0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBekUraVdSO0F5RTVpV0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBekU4aVdSO0FVcmpXSTtFK0RHQTtJQU9RO0V6RStpV1Y7QUFDRjtBeUU1aVdJO0V0RXJGQSxVc0VzRm9CO0V0RXJGcEIsV3NFcUZvQjtFQUVoQjtBekU4aVdSO0F5RTVpV1E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpFOGlXWjtBVXZrV0k7RStEY0E7SUFlUTtJQUNBO0lBQ0E7SUFDQTtFekU4aVdWO0V5RTVpV1U7SUFDSTtJQUNBO0lBQ0E7SUFDQTtFekU4aVdkO0V5RTNpV1U7SUFDSTtJQUNBO0V6RTZpV2Q7RXlFM2lXYztJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXpFNmlXbEI7QUFDRjtBeUV4aVdJO0VBQ0k7QXpFMGlXUjs7QVVubldJO0VnRTVESjtJQUVRLGtCL0Q2SGdCO0krRDVIaEI7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFMUVrcldOO0UwRWhyV007SUFDSTtJQUNBO0lBQ0E7SUFDQTtFMUVrcldWO0UwRWhyV1U7SUFDSSxrQi9EK0dRO0krRDlHUjtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFMUVrcldkO0UwRWhyV2M7SUFLSTtFMUU4cVdsQjtFMEUzcVdjO0lBR0k7SUFDQTtJQUNBO0UxRTJxV2xCO0UwRXZxV1U7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UxRXlxV2Q7QUFDRjs7QTBFanFXWTtFQUNJO0VBQ0E7QTFFb3FXaEI7QTBFbHFXZ0I7RUFDSTtBMUVvcVdwQjtBVXJxV0k7RWdFTUk7SUFFUTtFMUVpcVdkO0FBQ0Y7O0EyRXZ1V0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNFMHVXSjtBMkV4dVdJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSw2REFDSTtBM0V5dVdaO0EyRXR1V1E7RUFHSTtFQUNBO0EzRXN1V1o7O0E0RXp2V0E7RUFDSTtFQUNBO0VBQ0E7QTVFNHZXSjtBNEUxdldJO0V6RVBBLGF5RVFvQjtFekVQcEIsY3lFT29CO0VBRWhCO0VBQ0E7RUFDQTtFQUNBO0E1RTR2V1I7QTRFenZXSTtFQUNJO0lBQ0k7RTVFMnZXVjtBQUNGOztBNkVseFdJO0VBQ0k7QTdFcXhXUjtBNkVueFdRO0VBR0k7QTdFbXhXWjtBNkUvd1dZO0VBQ0k7QTdFaXhXaEI7O0E4RTd4V0E7RUFDSTtFQUNBO0VBQ0E7QTlFZ3lXSjtBVXB1V0k7RW9FL0RKO0lBTVE7RTlFaXlXTjtBQUNGO0FVenVXSTtFb0UvREo7SUFVUTtFOUVreVdOO0FBQ0Y7O0E4RS94V0E7RUFDSTtFQUNBO0VBQ0E7QTlFa3lXSjtBOEVoeVdJO0VBQ0k7QTlFa3lXUjtBOEUveFdJO0VBQ0k7RUFDQTtBOUVpeVdSO0E4RTl4V0k7RUFDSTtFQUNBO0VBQ0E7QTlFZ3lXUjtBOEU5eFdRO0VBTEo7SUFNUTtFOUVpeVdWO0FBQ0Y7QThFL3hXUTtFQWFJO0VBQ0E7QTlFcXhXWjtBVXp3V0k7RW9FMUJJO0lBRVE7RTlFcXlXZDtBQUNGO0FVOXdXSTtFb0UxQkk7SUFNUTtFOUVzeVdkO0FBQ0Y7QVV0d1dJO0VvRXZDSTtJQVVRO0U5RXV5V2Q7QUFDRjtBVXh4V0k7RW9FMUJJO0lBaUJRO0U5RXF5V2Q7QUFDRjtBOEVseVdRO0VBOUJKO0lBK0JRO0U5RXF5V1Y7QUFDRjs7QStFOTFXSTtFQUNJO0EvRWkyV1I7QStFOTFXSTtFQUNJO0VBQ0E7QS9FZzJXUjtBK0UzMVdZO0VBQ0k7RUFDQTtBL0U2MVdoQjtBK0UxMVdZO0VBQ0k7QS9FNDFXaEI7QStFejFXWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvRTIxV2hCO0ErRXoxV2dCO0VBQ0k7QS9FMjFXcEI7QVVoeldJO0VxRXJEUTtJQWNRO0UvRTIxV2xCO0FBQ0Y7QStFeDFXWTtFQUNJO0VBQ0Esa0JwRXVGUTtFb0V0RlI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvRTAxV2hCO0ErRXgxV2dCO0VBQ0k7QS9FMDFXcEI7O0FnRjU0V0E7RUFDSTtFQUNBO0FoRis0V0o7QVV2MFdJO0VzRTFFSjtJQUtRO0lBQ0E7RWhGZzVXTjtBQUNGO0FnRjk0V0k7RUFDSTtBaEZnNVdSO0FnRjc0V0k7RUFDSTtFQUNBO0FoRis0V1I7QWdGNTRXSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoRjg0V1I7QWdGNTRXUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0FoRjY0V1o7QWdGMTRXUTtFQUNJO0VBQ0E7RUFDQTtBaEY0NFdaO0FVMzNXSTtFc0VwQkk7SUFNUTtJQUNBO0lBQ0E7RWhGNjRXZDtBQUNGO0FnRjE0V1E7RUFJWTtJQUNJO0lBQ0E7RWhGeTRXdEI7RWdGajRXYztJQUNJO0VoRm00V2xCO0VnRi8zV2tCO0lBQ0k7RWhGaTRXdEI7RWdGOTNXa0I7SUFDSTtFaEZnNFd0QjtBQUNGOztBaUZoOVdBO0VBQ0k7QWpGbTlXSjtBVXI1V0k7RXVFM0RJO0lBQ0k7SUFDQTtJQUNBO0VqRm05V1Y7QUFDRjtBaUZoOVdJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWpGazlXUjtBVWw2V0k7RXVFcERBO0lBT1E7RWpGbTlXVjtBQUNGO0FpRmg5V0k7RUFDSTtFQUNBO0FqRms5V1I7QWlGLzhXWTtFQUNJO0FqRmk5V2hCO0FpRjk4V1k7RUFDSTtBakZnOVdoQjtBVXA2V0k7RXVFdENJO0lBRVE7SUFDQTtJQUNBO0VqRjQ4V2Q7QUFDRjtBVXg3V0k7RXVFakJJO0lBRVE7RWpGMjhXZDtBQUNGOztBa0YxL1dBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEY2L1dKO0FrRjMvV0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRjYvV1I7QWtGMy9XUTtFQUNJO0FsRjYvV1o7QWtGei9XSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esa0J2RXdHZ0I7QVhtNVd4QjtBa0Z6L1dRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRjIvV1o7QWtGdi9XSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FsRnkvV1I7QVVwK1dJO0V3RXpCQTtJQU9RO0VsRjAvV1Y7QUFDRjtBa0Z2L1dJO0VBQ0k7RUFDQTtBbEZ5L1dSO0FrRnIvV1E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBbEZ1L1daO0FrRm4vV0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRnEvV1I7QWtGbi9XUTtFQUNJO0FsRnEvV1o7QWtGbC9XUTtFQUNJO0VBQ0E7QWxGby9XWjtBa0ZoL1dJO0VBQ0k7QWxGay9XUjtBa0YvK1dJO0VBQ0k7SUFDSTtFbEZpL1dWO0VrRi8rV1U7SUFDSTtJQUNBO0VsRmkvV2Q7RWtGOStXVTtJQUNJO0VsRmcvV2Q7RWtGNStXTTtJQUNJO0lBQ0E7SUFDQTtFbEY4K1dWO0VrRjUrV1U7SUFFSTtFbEY2K1dkO0FBQ0Y7QVUzaFhJO0V3RW1ESTtJQUNJO0VsRjIrV1Y7QUFDRjtBVWhpWEk7RXdFeURJO0lBQ0k7RWxGMCtXVjtBQUNGOztBbUZsbVhBO0VBQ0k7RUFDQTtFQUNBO0FuRnFtWEo7QW1Gbm1YSTtFQUNJO0VBQ0E7RUFDQTtBbkZxbVhSOztBb0Y3bVhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEZnblhKO0FvRjltWEk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwRmduWFI7QW9GN21YSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FwRittWFI7QW9GN21YUTtFQUNJO0FwRittWFo7QW9GM21YSTtFakYxQkEsYWlGMkJvQjtFakYxQnBCLGNpRjBCb0I7RUFFaEI7QXBGNm1YUjtBb0YxbVhJO0VBQ0k7RUFDQTtFQUNBO0FwRjRtWFI7QVVybFhJO0UwRTdESjtJQTBDUTtFcEY0bVhOO0FBQ0Y7O0FxRnZwWEE7RUFDSTtFQUVBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckZ1cFhKO0FxRnBwWEk7RUFDSTtBckZzcFhSO0FxRm5wWEk7RUFDSTtFQUNBO0VBQ0E7QXJGcXBYUjtBcUZscFhJO0VBQ0k7RUFDQTtBckZvcFhSO0FxRmpwWEk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBckZtcFhSO0FVNW5YSTtFMkUzQkE7SUFPUTtFckZvcFhWO0FBQ0Y7QXFGanBYUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckZtcFhaO0FVbG9YSTtFMkU3Qkk7SUFlUTtFckZvcFhkO0FBQ0Y7QXFGaHBYSTtFQUNJO0VBQ0E7QXJGa3BYUjtBcUYvb1hJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXJGaXBYUjtBcUYvb1hRO0VBQ0k7QXJGaXBYWjtBcUY5b1hRO0VBQ0k7QXJGZ3BYWjtBcUY3b1hRO0VBQ0k7QXJGK29YWjtBcUYzb1hJO0VBRUk7RUFDQTtFQUNBO0FyRjRvWFI7QXFGem9YSTtFQUNJO0FyRjJvWFI7QXFGem9YUTtFQUNJO0lBQ0k7RXJGMm9YZDtBQUNGO0FVdnFYSTtFMkU4QmdCO0lBQ0k7RXJGNG9YdEI7QUFDRjtBcUZ0b1hJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckZ3b1hSO0FVbnJYSTtFMkVzQ0E7SUFRUTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VyRnlvWFY7QUFDRjtBcUZ0b1hJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckZ3b1hSO0FVbnNYSTtFMkU4RFE7SUFDSTtJQUNBO0lBQ0E7RXJGd29YZDtFcUZyb1hVO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7RXJGdW9YZDtBQUNGO0FVaHRYSTtFMkU4RUk7SUFDSTtJQUNBO0lBQ0E7RXJGcW9YVjtFcUZqb1hVO0lBQ0k7RXJGbW9YZDtFcUZqb1hjO0lBQ0k7RXJGbW9YbEI7RXFGN25YVTtJQUNJO0VyRituWGQ7RXFGN25YYztJQUNJO0VyRituWGxCO0FBQ0Y7QXFGMW5YSTtFQW5MSjtJQW9MUTtJQUNBO0lBQ0E7RXJGNm5YTjtFcUYzblhNO0lBQ0k7RXJGNm5YVjtBQUNGOztBc0Z4elhJO0VBQ0k7QXRGMnpYUjs7QXVGM3pYQTtFQUNJO0VBQ0E7QXZGOHpYSjs7QXVGM3pYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2Rjh6WEo7QXVGNXpYSTtFQUNJO0F2Rjh6WFI7QXVGM3pYSTtFQUNJO0VBQ0E7RUFDQTtBdkY2elhSOztBd0Z2MVhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXhGMDFYSjtBd0Z4MVhJO0VyRkRBLFlxRkVvQjtFckZEcEIsYXFGQ29CO0VBRWhCO0VBQ0E7QXhGMDFYUjs7QXlGbDJYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F6RnEyWEo7QXlGbjJYSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpGcTJYUjtBeUZqMlhRO0VBQ0k7QXpGbTJYWjtBVXp5WEk7RStFckRJO0lBQ0k7RXpGaTJYVjtBQUNGO0FVM3pYSTtFK0U3REo7SUEyQlE7SUFDQTtJQUNBO0V6RmkyWE47RXlGLzFYTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXpGaTJYVjtFeUY5MVhNO0lBQ0k7SUFDQTtFekZnMlhWO0V5RjkxWFU7SUFDSTtFekZnMlhkO0V5RjUxWE07SUFDSTtJQUNBO0lBQ0E7RXpGODFYVjtBQUNGOztBVXgwWEk7RWdGMUVBO0lBRVE7RTFGcTVYVjtBQUNGOztBMkZ4NVhBO0VBQ0ksY2xEbUdtQjtFa0RsR25CO0VBQ0E7RUFDQTtFQUNBO0EzRjI1WEo7QTJGejVYSTtFQUNJO0EzRjI1WFI7O0EyRnQ1WEk7RUFDSTtBM0Z5NVhSO0EyRnY1WFE7RUFDSTtFQUNBLFdoRjhCRjtFZ0Y3QkU7RUFDQTtFQUNBO0EzRnk1WFo7QTJGdjVYWTtFQUNJO0VBQ0E7QTNGeTVYaEI7QTJGdDVYWTtFQUNJO0VBQ0E7RUFDQTtBM0Z3NVhoQjtBMkZ0NVhnQjtFQUNJO0EzRnc1WHBCO0FVNzNYSTtFaUZqQ1E7SUFVUTtJQUNBO0UzRnc1WGxCO0FBQ0Y7QTJGbjVYSTtFQUNJO0EzRnE1WFI7QTJGbDVYSTtFQUNJO0EzRm81WFI7O0EyRi80WEk7RUFDSTtBM0ZrNVhSO0EyRi80WEk7RUFFSTtBM0ZnNVhSOztBMkYzNFhJO0VBQ0k7QTNGODRYUjtBMkYxNFhRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0Y0NFhaO0EyRjE0WFk7RUFDSTtFQUNBO0VBQ0E7QTNGNDRYaEI7QTJGejRYWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNGMjRYaEI7QTJGdDRYWTtFQUNJO0VBQ0E7RUFDQTtBM0Z3NFhoQjs7QTRGNStYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E1RisrWEo7QVV6NlhJO0VrRjFFSjtJQU9RO0U1RmcvWE47QUFDRjtBNEY5K1hJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUZnL1hSO0FVbDhYSTtFa0ZuREE7SUFRUTtFNUZpL1hWO0FBQ0Y7QTRGLytYUTtFQVhKO0lBWVE7RTVGay9YVjtBQUNGO0E0RmgvWFE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1RmsvWFo7QTRGLytYZ0I7RUFDSTtBNUZpL1hwQjtBVXQ5WEk7RWtGcENJO0lBY1E7SUFDQTtJQUNBO0lBQ0E7RTVGZy9YZDtBQUNGO0E0RjcrWFE7RUFDSTtFQUNBO0E1RisrWFo7QVVsK1hJO0VrRmZJO0lBS1E7SUFDQTtFNUZnL1hkO0U0RjkrWGM7SUFDSTtFNUZnL1hsQjtFNEY3K1hjO0lBQ0k7SUFDQTtFNUYrK1hsQjtFNEY1K1hjO0lBQ0k7SUFDQTtFNUY4K1hsQjtBQUNGO0FVbi9YSTtFa0ZuREE7SUE2RFE7SUFDQTtJQUNBO0U1RjYrWFY7QUFDRjtBNEYzK1hRO0VBQ0k7QTVGNitYWjtBVWgvWEk7RWtGT1E7SUFDSTtFNUY0K1hkO0FBQ0Y7O0E2RnRqWUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RnlqWUo7QTZGcmpZWTtFQUNJO0E3RnVqWWhCO0E2Rm5qWVE7RUFDSTtFQUNBO0VBQ0E7QTdGcWpZWjtBNkZuallZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQSxrQmxGK0ZRO0VrRjlGUjtBN0ZxalloQjtBNkZuallnQjtFQUVJO0VBQ0E7QTdGb2pZcEI7QTZGampZZ0I7RUFDSTtBN0ZtallwQjtBVWppWUk7RW1GdENJO0lBeUJRO0U3RmtqWWQ7RTZGaGpZYztJQUNJO0lBQ0E7RTdGa2pZbEI7QUFDRjtBNkYzaVlvQjtFQUNJO0E3RjZpWXhCO0E2RnRpWW9CO0VBQ0k7QTdGd2lZeEI7QTZGbGlZZ0I7RUFDSTtFQUNBO0E3Rm9pWXBCO0E2RmxpWW9CO0VBR0k7QTdGa2lZeEI7QTZGOWhZZ0I7RUFDSTtFQUNBO0E3RmdpWXBCO0E2RjFoWUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0Y0aFlSO0FVcGtZSTtFbUZpQ0E7SUFVUTtJQUNBO0U3RjZoWVY7QUFDRjtBNkYxaFlJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTdGNGhZUjtBNkYxaFlRO0VBQ0k7QTdGNGhZWjtBNkZ6aFlRO0VBQ0k7QTdGMmhZWjtBVXRsWUk7RW1GZ0RBO0lBZVE7RTdGMmhZVjtBQUNGOztBOEZ4cFlRO0VBQ0k7QTlGMnBZWjtBOEZ2cFlJO0VBQ0k7RUFDQTtFQUNBO0E5RnlwWVI7QThGdnBZUTtFQUNJO0E5RnlwWVo7O0ErRnJxWUk7RUFDSTtFQUNBO0EvRndxWVI7QStGdHFZUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0EvRndxWVo7QStGcnFZUTtFQUNJO0EvRnVxWVo7O0FnR2xyWUE7RUFDSTtFQUNBO0VBQ0E7QWhHcXJZSjtBZ0ducllJO0VBQ0k7RUFDQTtBaEdxcllSO0FnR2pyWVk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBaEdtclloQjs7QWlHanNZQTtFQUdJO0VBQ0E7RUFDQTtFQUNBO0FqR2tzWUo7QWlHaHNZSTtFQUNJO0VBQ0E7QWpHa3NZUjtBaUdoc1lRO0VBQ0k7RUFDQTtFQUNBO0FqR2tzWVo7QWlHNXJZUTs7RUFFSSxrQnRGd0JGO0FYc3FZVjtBaUd4cllROztFQUVJLGtCdEZnQkY7QVgwcVlWO0FpR3RyWUk7O0VBRUk7RUFDQTtFQUdBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFlBL0NTO0VBZ0RULFdBaERTO0VBaURUO0VBQ0E7RUFDQTtFQUNBO0FqR3FyWVI7QWlHbnJZUTs7RUFDSTtFQUNBO0FqR3NyWVo7QWlHbnJZUTs7RUFDSSxrQnRGZEY7RXNGZUU7QWpHc3JZWjtBaUdwcllZOztFQUNJO0FqR3VyWWhCO0FpR25yWVE7O0VBQ0k7RUFDQTtBakdzcllaO0FpR25yWVE7O0VBQ0ksa0J0RjVCRjtBWGt0WVY7QWlHbHJZWTs7OztFQUVJO0FqR3NyWWhCO0FpR2pyWVk7Ozs7RUFFSTtBakdxclloQjtBaUcvcVlRO0VBQ0ksZ0J0RmhERjtBWGl1WVY7QWlHOXFZUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpHZ3JZWjtBaUc1cVlZO0VBQ0k7RUFDQTtFQUNBLFd0RnJFTjtBWG12WVY7QWlHNXFZZ0I7RUFDSTtBakc4cVlwQjtBaUd2cVlRO0VBQ0k7QWpHeXFZWjtBaUd2cVlZO0VBQ0ksZ0J0Rm5GTjtFc0ZvRk07RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakd5cVloQjtBaUdwcVlJO0VBQ0k7QWpHc3FZUjtBaUdwcVlRO0VBQ0k7RUFDQTtFQUNBO0FqR3NxWVo7QWlHbHFZSTtFQUNJO0VBQ0E7QWpHb3FZUjtBaUdqcVlJO0VBQ0k7QWpHbXFZUjs7QWtHbDBZSTtFQUNJO0VBQ0E7RUFFQTtFQUNBO0FsR28wWVI7QWtHbDBZUTtFQUNJO0FsR28wWVo7QWtHbDBZWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEdvMFloQjtBa0dsMFlnQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsR28wWXBCO0FrR2owWWdCO0VBR0k7RUFDQTtFQUNBO0FsR2kwWXBCO0FrRy96WW9CO0VBQ0k7QWxHaTBZeEI7QWtHenpZWTtFQUNJO0FsRzJ6WWhCO0FrR3J6WW9COzs7OztFQUVJO0FsRzB6WXhCO0FrRzd5WWdCO0VBQ0k7QWxHK3lZcEI7QWtHM3lZWTtFQUNJO0FsRzZ5WWhCO0FrR3p5WVE7RUEvRUo7SUFnRlE7RWxHNHlZVjtBQUNGOztBa0d4eVlBO0VBQ0k7SUFHSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFbEd5eVlOO0FBQ0Y7QW1HMTRZQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRzI0WUo7QW1HejRZSTtFQUVJO0VBQ0E7RUFHQTtBbkd3NFlSO0FtR3I0WUk7RUFDSTtFQUNBO0VBQ0E7QW5HdTRZUjtBbUdwNFlJO0VBQ0k7RUFDQTtFQUNBO0FuR3M0WVI7QW1HcDRZUTtFQUNJO0FuR3M0WVo7QW1HbDRZSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5HbzRZUjtBbUdsNFlRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkdvNFlaO0FtR2g0WUk7OztFQUdJO0FuR2s0WVI7QW1HaDRZUTs7O0VBQ0k7QW5HbzRZWjtBbUdoNFlZOzs7Ozs7RUFFSTtBbkdzNFloQjtBbUdqNFlJO0VBQ0k7RUFDQTtBbkdtNFlSO0FtR2g0WUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkdrNFlSO0FtR2g0WVE7RUFDSTtBbkdrNFlaO0FtRzkzWUk7RUFDSTtBbkdnNFlSO0FtRzczWVk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5HKzNZaEI7O0FvR3orWUE7RUFDSTtBcEc0K1lKO0FvRzErWUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwRzQrWVI7QW9HeCtZUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBHMCtZWjtBb0dwK1lRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwR3MrWVo7QW9HcCtZWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FwR3MrWWhCO0FvR2orWVk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBcEdtK1loQjtBb0c5OVlJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EseURBQ0k7QXBHKzlZWjtBb0c1OVlRO0VBQ0k7QXBHODlZWjtBb0czOVlRO0VBQ0k7RUFDQTtFQUNBLHlEQUNJO0FwRzQ5WWhCOztBb0d0OVlBO0VBQ0k7SUFDSTtFcEd5OVlOO0FBQ0Y7QXFHeGlaSTtFQUVJO0FyR3lpWlI7QXFHcmlaUTtFQUNJO0VBQ0E7RUFDQTtBckd1aVpaO0FxR25pWlk7RUFDSTtBckdxaVpoQjtBcUdsaVpvQjtFQUNJO0FyR29pWnhCO0FxRzloWlE7RUFDSTtBckdnaVpaO0FxRzFoWlk7RUFDSTtBckc0aFpoQjs7QXNHNWpaSTtFQUNJO0VBQ0E7QXRHK2paUjtBVXJnWkk7RTRGNURBO0lBS1E7RXRHZ2taVjtBQUNGO0FVMWdaSTtFNEY1REE7SUFTUTtFdEdpa1pWO0FBQ0Y7QXNHL2paUTtFQUNJO0VBQ0E7QXRHaWtaWjtBc0cvalpZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRHaWtaaEI7QXNHN2paUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esa0IzRjRGWTtBWG0rWXhCO0FVemhaSTtFNEY5Q0k7SUFXUTtFdEdna1pkO0FBQ0Y7QXNHOWpaWTtFQUNJO0VBQ0E7RUFDQTtBdEdna1poQjtBc0c3alpZO0VBQ0k7QXRHK2paaEI7QXNHM2paUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRHNmpaWjtBVWhqWkk7RTRGckJJO0lBV1E7RXRHOGpaZDtBQUNGO0FzRzVqWlk7RUFDSTtFQUNBO0F0RzhqWmhCO0FzRzNqWlk7RUFDSTtFQUNBO0F0RzZqWmhCO0FzR3pqWlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBdEcyalpaO0FVaGxaSTtFNEZpQkk7SUFPUTtFdEc0alpkO0FBQ0Y7QVVybFpJO0U0RmlCSTtJQVdRO0V0RzZqWmQ7QUFDRjtBc0czalpZO0VBQ0k7RUFDQSxrQjNGa0NRO0UyRmpDUjtFQUNBO0F0RzZqWmhCO0FzRzNqWmdCO0VBRUk7RUFDQTtBdEc0alpwQjtBc0d6alpnQjtFQUNJO0VBQ0E7QXRHMmpacEI7QXNHeGpaZ0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBdEcwalpwQjtBc0d2alpnQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0R3lqWnBCO0FzR3JqWm9CO0VBQ0k7QXRHdWpaeEI7O0F1R3pyWkE7RUFDSTtFQUNBLGtCNUZnSW9CO0U0Ri9IcEI7RUFDQTtBdkc0clpKO0F1RzFyWkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBdkc0clpSO0F1RzFyWlE7RUFDSTtFQUNBO0F2RzRyWlo7O0FLdjdZQTs7RUFBQTtBQStIQTs7RUFBQTtBbUcvWUE7RUFDSTtFQUNBO0VBQ0Esa0I3RjRIb0I7RTZGM0hwQjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4R2d0Wko7QXdHOXNaSTtFQUNJO0VBQ0E7QXhHZ3RaUjtBd0c3c1pJO0VBQ0k7RUFDQTtBeEcrc1pSO0F3RzVzWkk7RUFHSTtBeEc0c1pSO0FLLzhZSTtFQUNJO0VBQ0E7QUxpOVlSO0FLLzhZUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FMaTlZWjtBSzc4WVk7RUFDSTtBTCs4WWhCO0FLMzhZUTtFQUNJO0FMNjhZWjtBSzE4WVE7RUFDSTtBTDQ4WVo7QUsxOFlZO0VBQ0k7RUFDQTtBTDQ4WWhCO0FLeDhZZ0I7RUFDSTtBTDA4WXBCO0FLcDhZWTtFQUNJO0VBQ0E7QUxzOFloQjtBS2w4WVE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FMbzhZWjtBS2w4WVk7RUFFSTtBTG04WWhCO0FLOTdZWTtFQUNJO0FMZzhZaEI7QUszN1lZO0VBQ0k7RUFDQTtBTDY3WWhCO0FLMTdZWTtFQUNJO0FMNDdZaEI7QUtyN1lvQjtFQUNJO0FMdTdZeEI7QUtwN1lvQjtFQUNJO0FMczdZeEI7QUtqN1lvQjtFQUNJO0FMbTdZeEI7QUtoN1lvQjtFQUNJO0FMazdZeEI7QUtwaVpJO0VBeUhRO0VBQ0E7RUFDQTtFQUNBO0FMODZZWjtBSzU2WVk7RUFFSTtBTDY2WWhCO0F3Rzd4WlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4Ryt4Wlo7QVV2d1pJO0U4Rm5DSTtJQWNRO0V4R2d5WmQ7QUFDRjtBd0c1eFpZO0VBRUk7QXhHNnhaaEI7QXdHMXhaWTtFQUNJO0F4RzR4WmhCO0F3R3p4Wlk7RUFDSTtBeEcyeFpoQjtBd0d4eFpZO0VBQ0k7QXhHMHhaaEI7QXdHdnhab0I7RUFJSTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7QXhHcXhaeEI7QXdHN3daWTtFQUNJO0F4Ryt3WmhCO0F3R3p3WmdCO0VBQ0k7RUFDQTtBeEcyd1pwQjtBd0dsd1pvQjtFQUNJO0F4R293WnhCO0F3R2h3WmdCO0VBQ0k7QXhHa3dacEI7QXdHNXZaSTtFQUNJO0VBQ0E7RUFDQTtBeEc4dlpSO0F3RzV2WlE7RUFDSTtFQUNBO0F4Rzh2Wlo7O0F5R24zWlE7RUFDSTtFQUNBO0VBQ0E7QXpHczNaWjtBeUdwM1pZO0VBQ0k7QXpHczNaaEI7O0EwRzkzWkE7RUFDSTtFQUNBO0ExR2k0Wko7QTBHLzNaSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUdpNFpSO0EwRzkzWkk7RUFDSTtFQUNBO0VBQ0E7QTFHZzRaUjtBMEc5M1pRO0VBQ0k7QTFHZzRaWjtBMEczM1pRO0VBQ0k7QTFHNjNaWjtBMEcxM1pRO0VBQ0k7RUFDQTtBMUc0M1paOztBMEd2M1pBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTFHMDNaSjtBMEd4M1pJO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFHeTNaUjtBMEd0M1pJO0VBQ0k7RUFDQTtBMUd3M1pSO0EwR3IzWkk7RUFDSTtFQUNBO0ExR3UzWlI7QTBHbjNaUTtFQUNJO0ExR3EzWlo7QTBHbDNaUTtFQUNJO0ExR28zWlo7O0EwRy8yWkE7RUFDSTtBMUdrM1pKO0EwR2gzWkk7RUFDSSxrQi9GcURnQjtFK0ZwRGhCO0VBQ0E7QTFHazNaUjtBMEdoM1pRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGtCL0YyQ1k7RStGMUNaO0VBQ0E7RUFDQTtBMUdrM1paO0EwRy8yWlE7RUFDSTtBMUdpM1paO0EwRzkyWlE7RUFDSTtBMUdnM1paO0EwRzUyWkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExRzgyWlI7QTBHMzJaSTtFQUNJO0ExRzYyWlI7QTBHMTJaUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFHNDJaWjtBMEd2MlpRO0VBQ0k7QTFHeTJaWjtBMEd0MlpRO0VBQ0k7QTFHdzJaWjs7QTJHeitaQTtFQUNJO0VBQ0E7RUFDQSxrQmhHK0hvQjtBWDYyWnhCO0EyRzErWkk7RXhHS0E7RXdHRkksa0JoRzBIZ0I7QVhpM1p4QjtBR3YrWkk7RUFJUTtBSHMrWlo7QUdsK1pJO0VBQ0k7QUhvK1pSO0FHaitaSTtFQUNJLGdCUW9NVTtFUm5NVjtBSG0rWlI7QUdoK1pJO0VBQ0ksZ0JRK0xVO0FYbXlabEI7QVVqOFpJO0VpR3BEQTtJQUVRO0UzR3UvWlY7RTJHci9aVTtJQUNJO0UzR3UvWmQ7QUFDRjtBVTU3Wkk7RWlHdERZO0lBQ0k7RTNHcS9abEI7RTJHbC9ac0I7SUFDSTtJQUNBO0lBQ0E7RTNHby9aMUI7RTJHai9ac0I7SUFDSTtFM0dtL1oxQjtBQUNGO0EyRzErWlk7RUFDSTtBM0c0K1poQjs7QUF0Z2FBO0VBRUk7RUFDQTtFQUVBO0VBQ0E7QUF1Z2FKO0FVaCtaSTtFVjdDSjtJQVNRLDJCVzRMb0I7RVg0MFoxQjtBQUNGOztBQXBnYUk7RUFDSTtBQXVnYVI7O0FBbGdhQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFxZ2FKO0FBbGdhSTtFQUNJO0VBQ0E7RUFDQTtBQW9nYVIsQzs7OztBSWxqYUE7Ozs7O0VBQUE7QUFpQkE7Ozs7OztFQUFBO0FDK1BBOztFQUFBO0FBK0hBOztFQUFBO0F1R2paSTtFQUNJO0FDbUJSO0FuRzBDSTtFa0czREk7SUFFUTtFQ21CZDtBQUNGLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL29iY2hvZC1zYW1zdW5nLmN6L3Nhc3MvYXBwLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9vYmNob2Qtc2Ftc3VuZy5jei9zYXNzL19zaG9wLWZvbnQuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2RlZmF1bHQvc2Fzcy9hcHAvYWJzdHJhY3RzL191bml2ZXJzYWwtcGxhY2Vob2xkZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9kZWZhdWx0L3Nhc3MvYXBwL2Fic3RyYWN0cy9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9vYmNob2Qtc2Ftc3VuZy5jei9zYXNzL2FwcC9hYnN0cmFjdHMvX2Zucy5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvb2JjaG9kLXNhbXN1bmcuY3ovc2Fzcy9hcHAvYWJzdHJhY3RzL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Jvb3Quc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdmVuZG9yL19yZnMuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2NvbnRhaW5lcnMuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jb250YWluZXIuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19icmVha3BvaW50cy5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvb2JjaG9kLXNhbXN1bmcuY3ovc2Fzcy9fdGhlbWUtdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvZGVmYXVsdC9zYXNzL2FwcC9jb3JlL2Jvb3RzdHJhcC1tb2RpZmljYXRpb25zL191dGlsaXRpZXMuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL191dGlsaXRpZXMuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19hcGkuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2RlZmF1bHQvc2Fzcy9hcHAvY29yZS9fcmVzZXQuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvb2JjaG9kLXNhbXN1bmcuY3ovc2Fzcy9hcHAvY29yZS9fcmVzZXQuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2RlZmF1bHQvc2Fzcy9hcHAvY29yZS9fY29tbW9uLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9kZWZhdWx0L3Nhc3MvYXBwL2NvcmUvX3R5cG8uc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL29iY2hvZC1zYW1zdW5nLmN6L3Nhc3MvYXBwL2NvcmUvX3R5cG8uc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2RlZmF1bHQvc2Fzcy9hcHAvbGF5b3V0L19oZWFkZXIuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2RlZmF1bHQvc2Fzcy9hcHAvbGF5b3V0L19uYXYuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2RlZmF1bHQvc2Fzcy9hcHAvbGF5b3V0L19mb290ZXIuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL29iY2hvZC1zYW1zdW5nLmN6L3Nhc3MvYXBwL2xheW91dC9faGVhZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9vYmNob2Qtc2Ftc3VuZy5jei9zYXNzL2FwcC9sYXlvdXQvX2Zvb3Rlci5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvb2JjaG9kLXNhbXN1bmcuY3ovc2Fzcy9hcHAvbGF5b3V0L19hbGwuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL29iY2hvZC1zYW1zdW5nLmN6L3Nhc3MvYXBwL2NvbXBvbmVudHMvX2J0bi5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvZGVmYXVsdC9zYXNzL2FwcC9jb21wb25lbnRzL19jYW52YXMuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2RlZmF1bHQvc2Fzcy9hcHAvY29tcG9uZW50cy9fY29tbW9uLWNvbnRlbnQuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2RlZmF1bHQvc2Fzcy9hcHAvY29tcG9uZW50cy9fZm9vdGVyLWJsb2NrLWNvbnRlbnQuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL29iY2hvZC1zYW1zdW5nLmN6L3Nhc3MvYXBwL2NvbXBvbmVudHMvX2Zvb3Rlci1ibG9jay1jb250ZW50LnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vcHVibGljX2h0bWwvd3d3L2NvbXBhc3NfZXh0ZW5zaW9ucy9zaG9waW9fdGhlbWUvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19wb3BvdmVycy5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvZGVmYXVsdC9zYXNzL2FwcC9jb21wb25lbnRzL19wb3BvdmVyLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9vYmNob2Qtc2Ftc3VuZy5jei9zYXNzL2FwcC9jb21wb25lbnRzL19wb3BvdmVyLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9kZWZhdWx0L3Nhc3MvYXBwL2NvbXBvbmVudHMvX2ljb24tbGluay5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvZGVmYXVsdC9zYXNzL2FwcC9jb21wb25lbnRzL19mb3JtLWlucHV0LnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9vYmNob2Qtc2Ftc3VuZy5jei9zYXNzL2FwcC9jb21wb25lbnRzL19mb3JtLWlucHV0LnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9kZWZhdWx0L3Nhc3MvYXBwL2NvbXBvbmVudHMvX2Zvcm0tZmllbGQuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2RlZmF1bHQvc2Fzcy9fYXNnYXJkLXZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvb2JjaG9kLXNhbXN1bmcuY3ovc2Fzcy9hcHAvY29tcG9uZW50cy9fZm9ybS1maWVsZC5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvZGVmYXVsdC9zYXNzL2FwcC9jb21wb25lbnRzL190b2dnbGUtc3dpdGNoLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9kZWZhdWx0L3Nhc3MvYXBwL2NvbXBvbmVudHMvX3NraXAuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2RlZmF1bHQvc2Fzcy9hcHAvY29tcG9uZW50cy9faGVhZGVyLWxvZ28uc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL29iY2hvZC1zYW1zdW5nLmN6L3Nhc3MvYXBwL2NvbXBvbmVudHMvX2hlYWRlci1idG4uc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2RlZmF1bHQvc2Fzcy9hcHAvY29tcG9uZW50cy9faGVhZGVyLXNlYXJjaC5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvZGVmYXVsdC9zYXNzL2FwcC9jb21wb25lbnRzL19oZWFkZXItZHJvcGRvd24uc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL29iY2hvZC1zYW1zdW5nLmN6L3Nhc3MvYXBwL2NvbXBvbmVudHMvX2hlYWRlci1kcm9wZG93bi5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvb2JjaG9kLXNhbXN1bmcuY3ovc2Fzcy9hcHAvY29tcG9uZW50cy9faGVhZGVyLWNhcnQuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2RlZmF1bHQvc2Fzcy9hcHAvY29tcG9uZW50cy9faGVhZGVyLXNlbGVjdC5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvZGVmYXVsdC9zYXNzL2FwcC9jb21wb25lbnRzL19oZWFkZXItYmxvY2suc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2RlZmF1bHQvc2Fzcy9hcHAvY29tcG9uZW50cy9faGFtYnVyZ2VyLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy9fYmFzZS5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3NxdWVlemUuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2RlZmF1bHQvc2Fzcy9hcHAvY29tcG9uZW50cy9faW50ZXJhY3RpdmUtZm9ybS1sYWJlbC5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvZGVmYXVsdC9zYXNzL2FwcC9jb21wb25lbnRzL19zZWFyY2guc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL29iY2hvZC1zYW1zdW5nLmN6L3Nhc3MvYXBwL2NvbXBvbmVudHMvX3NlYXJjaC5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvb2JjaG9kLXNhbXN1bmcuY3ovc2Fzcy9hcHAvY29tcG9uZW50cy9fbmF2LXBhZ2VzLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9vYmNob2Qtc2Ftc3VuZy5jei9zYXNzL2FwcC9jb21wb25lbnRzL19uYXYtY2F0ZWdvcmllcy5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvb2JjaG9kLXNhbXN1bmcuY3ovc2Fzcy9hcHAvY29tcG9uZW50cy9fcHJvZHVjdC1jYXJkLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9vYmNob2Qtc2Ftc3VuZy5jei9zYXNzL2FwcC9jb21wb25lbnRzL19jYXJkLXByaWNlLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9vYmNob2Qtc2Ftc3VuZy5jei9zYXNzL2FwcC9jb21wb25lbnRzL19wcm9kdWN0LWNhcmQtc3BlY2lhbC5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvb2JjaG9kLXNhbXN1bmcuY3ovc2Fzcy9hcHAvY29tcG9uZW50cy9fZmxhZ3Muc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL29iY2hvZC1zYW1zdW5nLmN6L3Nhc3MvYXBwL2NvbXBvbmVudHMvX2ZsYWctc3RhdGljLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9vYmNob2Qtc2Ftc3VuZy5jei9zYXNzL2FwcC9jb21wb25lbnRzL19tZW51LnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19tb2RhbC5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JhY2tkcm9wLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9kZWZhdWx0L3Nhc3MvYXBwL2NvbXBvbmVudHMvX21vZGFsLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9vYmNob2Qtc2Ftc3VuZy5jei9zYXNzL2FwcC9jb21wb25lbnRzL19tb2RhbC5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvb2JjaG9kLXNhbXN1bmcuY3ovc2Fzcy9hcHAvY29tcG9uZW50cy9fc3VibWVudS5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvb2JjaG9kLXNhbXN1bmcuY3ovc2Fzcy9hcHAvY29tcG9uZW50cy9fY2F0ZWdvcmllcy1zZWN0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9vYmNob2Qtc2Ftc3VuZy5jei9zYXNzL2FwcC9jb21wb25lbnRzL19jYXRlZ29yeS1pdGVtLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9vYmNob2Qtc2Ftc3VuZy5jei9zYXNzL2FwcC9jb21wb25lbnRzL190YWJzLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9kZWZhdWx0L3Nhc3MvYXBwL2NvbXBvbmVudHMvX2FkbWluLWVkaXQuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2RlZmF1bHQvc2Fzcy9hcHAvY29tcG9uZW50cy9fbW9yZS5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvb2JjaG9kLXNhbXN1bmcuY3ovc2Fzcy9hcHAvY29tcG9uZW50cy9fbW9yZS5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvb2JjaG9kLXNhbXN1bmcuY3ovc2Fzcy9hcHAvY29tcG9uZW50cy9fcHJvZHVjdHMtc2VjdGlvbi5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvb2JjaG9kLXNhbXN1bmcuY3ovc2Fzcy9hcHAvY29tcG9uZW50cy9fcHJvZHVjZXJzLXNlY3Rpb24uc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL29iY2hvZC1zYW1zdW5nLmN6L3Nhc3MvYXBwL2NvbXBvbmVudHMvX3Byb2R1Y2VyLWl0ZW0uc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL29iY2hvZC1zYW1zdW5nLmN6L3Nhc3MvYXBwL2NvbXBvbmVudHMvX3Bvc3RzLXNlY3Rpb24uc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL29iY2hvZC1zYW1zdW5nLmN6L3Nhc3MvYXBwL2NvbXBvbmVudHMvX3Bvc3QtaXRlbS5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvb2JjaG9kLXNhbXN1bmcuY3ovc2Fzcy9hcHAvY29tcG9uZW50cy9fYmVuZWZpdHMtc2VjdGlvbi5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvb2JjaG9kLXNhbXN1bmcuY3ovc2Fzcy9hcHAvY29tcG9uZW50cy9fYmVuZWZpdC1pdGVtLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9vYmNob2Qtc2Ftc3VuZy5jei9zYXNzL2FwcC9jb21wb25lbnRzL19icmVhZGNydW1icy5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvZGVmYXVsdC9zYXNzL2FwcC9jb21wb25lbnRzL19iYW5uZXIuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2RlZmF1bHQvc2Fzcy9hcHAvY29tcG9uZW50cy9fZHJvcGRvd24uc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2RlZmF1bHQvc2Fzcy9hcHAvY29tcG9uZW50cy9fZHJvcGRvd24tYnRuLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9kZWZhdWx0L3Nhc3MvYXBwL2NvbXBvbmVudHMvX3NvcnQuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL29iY2hvZC1zYW1zdW5nLmN6L3Nhc3MvYXBwL2NvbXBvbmVudHMvX3NvcnQuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL29iY2hvZC1zYW1zdW5nLmN6L3Nhc3MvYXBwL2NvbXBvbmVudHMvX3N0b2NrLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9vYmNob2Qtc2Ftc3VuZy5jei9zYXNzL2FwcC9jb21wb25lbnRzL19yZXN1bHRzLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9vYmNob2Qtc2Ftc3VuZy5jei9zYXNzL2FwcC9jb21wb25lbnRzL19wYWdpbmF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9kZWZhdWx0L3Nhc3MvYXBwL2NvbXBvbmVudHMvX2Ryb3Bkb3duLWxpc3Quc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2RlZmF1bHQvc2Fzcy9hcHAvY29tcG9uZW50cy9fY29tbWEtbGlzdC5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvZGVmYXVsdC9zYXNzL2FwcC9jb21wb25lbnRzL19waXBlLWxpc3Quc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL29iY2hvZC1zYW1zdW5nLmN6L3Nhc3MvYXBwL2NvbXBvbmVudHMvX2NoZWNrYm94LnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9kZWZhdWx0L3Nhc3MvYXBwL2NvbXBvbmVudHMvX2R5bmFtaWMtY29sdW1uLWl0ZW1zLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9kZWZhdWx0L3Nhc3MvYXBwL2NvbXBvbmVudHMvX21lc3NhZ2VzLWFuZC1ub3RpZmljYXRpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9kZWZhdWx0L3Nhc3MvYXBwL2NvbXBvbmVudHMvX2Zsb2F0aW5nLXNwaW5uZXIuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2RlZmF1bHQvc2Fzcy9hcHAvY29tcG9uZW50cy9fc2VsZWN0Mi5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvb2JjaG9kLXNhbXN1bmcuY3ovc2Fzcy9hcHAvY29tcG9uZW50cy9fc2hvcHMtc2VjdGlvbi5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvb2JjaG9kLXNhbXN1bmcuY3ovc2Fzcy9hcHAvY29tcG9uZW50cy9fYXNzb2NpYXRpb25zLXNlY3Rpb24uc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL29iY2hvZC1zYW1zdW5nLmN6L3Nhc3MvYXBwL2NvbXBvbmVudHMvX25ld3NsZXR0ZXItc2VjdGlvbi5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvb2JjaG9kLXNhbXN1bmcuY3ovc2Fzcy9hcHAvY29tcG9uZW50cy9fYWx0ZXJuYXRlLWhlYWRlci5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvb2JjaG9kLXNhbXN1bmcuY3ovc2Fzcy9hcHAvY29tcG9uZW50cy9fZmFxLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9vYmNob2Qtc2Ftc3VuZy5jei9zYXNzL3NlYXJjaC1zdWdnZXN0L19hbGwuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2RlZmF1bHQvc2Fzcy9lcnJvci9fZXJyb3ItY29udGVudC5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvb2JjaG9kLXNhbXN1bmcuY3ovc2Fzcy9lcnJvci1jb250ZW50LnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQHVzZSAnc2FzczptYXAnO1xuQGltcG9ydCAndGhlbWUtdmFyaWFibGVzJztcbkBpbXBvcnQgJy4uLy4uL2RlZmF1bHQvc2Fzcy9hc2dhcmQtdmFyaWFibGVzJztcbkBpbXBvcnQgJ3Nob3AtZm9udCc7XG5cbi8vIEFic3RyYWN0c1xuQGltcG9ydCAnYXBwL2Fic3RyYWN0cy9hbGwnO1xuXG4vLyBDb3JlXG5AaW1wb3J0ICdhcHAvY29yZS9hbGwnO1xuXG4vLyBMYXlvdXRcbkBpbXBvcnQgJ2FwcC9sYXlvdXQvYWxsJztcblxuLy8gQ29tcG9uZW50c1xuQGltcG9ydCAnYXBwL2NvbXBvbmVudHMvYWxsJztcbkBpbXBvcnQgJ3NlYXJjaC1zdWdnZXN0L2FsbCc7XG5cbjpyb290IHtcbiAgICAvLyBvbmx5IHJlbmRlciB0aGVzZSB2YXJpYWJsZXMgb25jZVxuICAgIC0tY2hlY2tib3gtY2hlY2s6ICN7JGNoZWNrYm94LWNoZWNrfTtcbiAgICAtLWhlYWRlci1uYXYtYnJlYWtwb2ludDogI3ttYXAuZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCAkaGVhZGVyLW5hdi1icmVha3BvaW50KX07XG5cbiAgICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbiAgICBzY3JvbGwtcGFkZGluZy10b3A6IDEwcmVtO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgneGwnKSB7XG4gICAgICAgIHNjcm9sbC1wYWRkaW5nLXRvcDogJGhlYWRlci1uYXYtZGVza3RvcC1oZWlnaHQ7XG4gICAgfVxufVxuXG4uZ3JleS1iZyB7XG4gICAgJi0xMDAge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdncmF5LTEwMCcpO1xuICAgIH1cbn1cblxuLy8gdXN1YWxseSwgYSBoZWFkaW5nIHdpdGggc29tZXRoaW5nIG5hdmlnYXRpb25hbCBvbiB0aGUgcmlnaHRcbi5ibG9jay1uYXYtY29tYm8ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nLWJsb2NrLWVuZDogMnJlbTtcbiAgICBtYXJnaW4tYmxvY2stZW5kOiAycmVtO1xuICAgIGJvcmRlci1ibG9jay1lbmQ6IDFweCBzb2xpZCBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGdyYXktMjAwKTtcblxuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1ub3Qtbm90YXRpb25cbiAgICA+ICo6d2hlcmUoOm5vdCguZW1ibGFfX2NvbnRyb2xzKTpub3QoLnBvc3RzLXNlY3Rpb25fX21vcmUpKSB7XG4gICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgICAgICAgbWFyZ2luLWJsb2NrLWVuZDogMDtcbiAgICB9XG59XG4iLCJAZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogSW50ZXI7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC13ZWlnaHQ6IDMwMCA5MDA7XG4gICAgZm9udC1zdHJldGNoOiA1MCUgMjAwJTtcbiAgICBzcmM6IHVybCgnI3skZm9udC1wYXRofS9JbnRlci1WYXJpYWJsZUZvbnQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBJbnRlci1mYWxsYmFjaztcbiAgICBzaXplLWFkanVzdDogMTA3JTtcbiAgICBhc2NlbnQtb3ZlcnJpZGU6IDkwJTtcbiAgICBzcmM6IGxvY2FsKCdBcmlhbCcpO1xufVxuIiwiLy8gc2NyZWVuIHJlYWRlcnMgb25seVxuJXNyLW9ubHkge1xuICAgIEBpbmNsdWRlIHNyLW9ubHk7XG59XG5cbiVzci1vbmx5LXVuZG8ge1xuICAgIEBpbmNsdWRlIHNyLW9ubHkoJ3VuZG8nKTtcbn1cbiIsIkB1c2UgJ3Nhc3M6bWF0aCc7XG5AdXNlICdzYXNzOm1hcCc7XG5AdXNlICdzYXNzOm1ldGEnO1xuXG5AbWl4aW4gc3F1YXJlKCRzaXplKSB7XG4gICAgd2lkdGg6ICRzaXplO1xuICAgIGhlaWdodDogJHNpemU7XG59XG5cbkBtaXhpbiBjdXN0b20tc2Nyb2xsYmFyLWNvbnRhaW5lcigkaXMtdmVydGljYWw6IGZhbHNlKSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG5cbiAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgIEBpZiAkaXMtdmVydGljYWwge1xuICAgICAgICAgICAgaGVpZ2h0OiA0cHg7XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgd2lkdGg6IDRweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkc2Nyb2xsYmFyLWNvbG9yO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgfVxuXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkc2Nyb2xsYmFyLWNvbG9yO1xuICAgIH1cbn1cblxuQG1peGluIG1vZGFsLXZhcmlhYmxlcyB7XG4gICAgLS1icy1tb2RhbC13aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgLS1icy1tb2RhbC1ib3JkZXItcmFkaXVzOiAwO1xuICAgIC0tYnMtbW9kYWwtbWF4LWhlaWdodDogOThkdmg7XG4gICAgLS1icy1tb2RhbC13aWR0aC1uYXJyb3c6IDUwMHB4O1xuICAgIC0tYnMtbW9kYWwtd2lkdGgtZGVmYXVsdDogODUwcHg7XG4gICAgLS1icy1tb2RhbC13aWR0aC13aWRlOiAxMTAwcHg7XG4gICAgLS1tb2RhbC1wYWRkaW5nLWJsb2NrOiBjbGFtcCgxcmVtLCA0dncsIDIuNXJlbSk7XG4gICAgLS1tb2RhbC1wYWRkaW5nLWlubGluZTogY2xhbXAoMXJlbSwgNXZ3LCAzcmVtKTtcbiAgICAtLWJzLW1vZGFsLXBhZGRpbmc6IHZhcigtLW1vZGFsLXBhZGRpbmctYmxvY2spIHZhcigtLW1vZGFsLXBhZGRpbmctaW5saW5lKTtcbiAgICAtLWJzLW1vZGFsLW1hcmdpbjogMDtcbiAgICAtLWJzLW1vZGFsLWhlYWRlci1mb250LXNpemU6ICN7JGgzLWZvbnQtc2l6ZX07XG4gICAgLS1tb2RhbC1pbi1tb2RhbC1iYWNrZHJvcC1jb2xvcjogI3tyZ2JhKCRtb2RhbC1iYWNrZHJvcC1iZywgJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHkpfTtcbn1cblxuQG1peGluIGJveGVzKCRxdWFudGl0eTogMywgJGdhcDogMXJlbSwgJGNlbnRlci1nYXA6IGNsYW1wKDFyZW0sIDUlLCA0cmVtKSwgJGNlbnRlci1ibG9jazogZmFsc2UpIHtcbiAgICAkZ2FwLXdpdGgtdW5pdDogaWYobWF0aC5pcy11bml0bGVzcygkZ2FwKSwgJGdhcCAqIDFyZW0sICRnYXApO1xuXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICBAaWYgJGNlbnRlci1ibG9jayB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBnYXA6ICRjZW50ZXItZ2FwO1xuXG4gICAgICAgID4gKjp3aGVyZShpbWcpIHtcbiAgICAgICAgICAgIGhlaWdodDogcmV2ZXJ0LWxheWVyO1xuICAgICAgICAgICAgd2lkdGg6IHJldmVydC1sYXllcjtcbiAgICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgICBnYXA6ICRnYXAtd2l0aC11bml0O1xuICAgIH1cblxuICAgID4gKiB7XG4gICAgICAgIEBpZiAkcXVhbnRpdHkge1xuICAgICAgICAgICAgLy8gRllJOiBjYWxjdWxhdGUgdGhlICUgd2lkdGggLSAobnVtYmVyIG9mIGdhcHMgLyBxdWFudGl0eSlcbiAgICAgICAgICAgIC0tZmxleC1iYXNpczogY2FsYygje21hdGguZGl2KDEwMCwgJHF1YW50aXR5KSAqIDElfSAtICN7JGdhcC13aXRoLXVuaXQgKiAobWF0aC5kaXYoKCRxdWFudGl0eSAtIDEpLCAkcXVhbnRpdHkpKX0pO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyAqIHNjcmVlbi1yZWFkZXIgb25seVxuLy8gKiBAcGFyYW0gY29uZmlnIC0gbnVsbCB8IHN0cmluZyAoJ3VuZG8nKSAtIHJlc2V0cyBhIHByZXZpb3VzIHNyLW9ubHkgcnVsZXNldFxuQG1peGluIHNyLW9ubHkoJGNvbmZpZzogbnVsbCkge1xuICAgIEBpZiAkY29uZmlnID09ICd1bmRvJyB7XG4gICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1uby1kZXByZWNhdGVkXG4gICAgICAgIGNsaXA6IHVuc2V0O1xuICAgICAgICBjbGlwLXBhdGg6IHVuc2V0O1xuICAgICAgICBoZWlnaHQ6IHVuc2V0O1xuICAgICAgICBvdmVyZmxvdzogdW5zZXQ7XG4gICAgICAgIHBvc2l0aW9uOiB1bnNldDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IHVuc2V0O1xuICAgICAgICB3aWR0aDogdW5zZXQ7XG4gICAgfSBAZWxzZSB7XG4gICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1uby1kZXByZWNhdGVkXG4gICAgICAgIGNsaXA6IHJlY3QoMCAwIDAgMCk7XG4gICAgICAgIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgd2lkdGg6IDFweDtcbiAgICB9XG59XG5cbi8vIE1vZGlmaWVzIHRoZSBiZWhhdmlvdXIgb2YgdGhlIGRlc2t0b3Agc3VibWVudSB3aGVuIHRoZXJlIGFyZSBmZXdlciB0aGFuIC8kbWVudS1zdWJtZW51LXNpbmdsZS1jb2x1bW4tbWluLyBpdGVtcyxcbi8vIEFORCwgd2hlbiB0aGVyZSBhcmUgbm8gc3ViLXN1YmNhdGVnb3J5IGl0ZW1zXG5AbWl4aW4gZGVza3RvcC1uYXZpZ2F0aW9uLW5hcnJvdyB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkaGVhZGVyLW5hdi1icmVha3BvaW50KSB7XG4gICAgICAgIC8vIE5PVEU6IHNsaWdodGx5IG9sZGVyIEZpcmVmb3ggc3VwcG9ydHMgOmhhcyhlbGVtZW50KSBidXQgbm90IDpoYXMoZWxlbWVudCArIGVsZW1lbnQpXG4gICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL29wZXJhdG9yLW5vLXVuc3BhY2VkXG4gICAgICAgIEBzdXBwb3J0cyBzZWxlY3Rvcig6aGFzKCsgKikpIHtcbiAgICAgICAgICAgIC5oZWFkZXIgLm5hdiB7XG4gICAgICAgICAgICAgICAgLm1lbnUge1xuICAgICAgICAgICAgICAgICAgICAmX19pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICYtbWFpbjpub3QoOmhhcyguc3VibWVudS0tbWFpbiB1bCB1bCkpOm5vdCg6aGFzKC5zdWJtZW51LS1tYWluID4gLm1lbnUtLW5lc3RlZCA+IC5tZW51X19pdGVtLS1uZXN0ZWQ6bnRoLWNoaWxkKCN7JG1lbnUtc3VibWVudS1zaW5nbGUtY29sdW1uLW1pbn0pKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gc3RpY2t5LXNpZGViYXIoJG1lZGlhLXF1ZXJ5LW1pbi13aWR0aDogJ2xnJykge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG1lZGlhLXF1ZXJ5LW1pbi13aWR0aCkge1xuICAgICAgICAtLXRvcC1wb3NpdGlvbjogY2FsYygodmFyKC0taGVpZ2h0LWRpZmYsIDBweCkgKiAtMSkgKyAxcmVtKTtcblxuICAgICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgICB0b3A6IHZhcigtLXRvcC1wb3NpdGlvbik7XG4gICAgfVxufVxuXG4vLy8gQWRkcyBhIHNjcm9sbC1tYXJnaW4tYmxvY2stc3RhcnQgZGVjbGFyYXRpb24gdG8gdGhlIGN1cnJlbnQgc2VsZWN0b3Jcbi8vLyAoc2Nyb2xsLW1hcmdpbi1ibG9jay1zdGFydCBpcyB0aGUgZGVmYXVsdCBwcm9wZXJ0eSlcbi8vLyAkaGVhZGVyLWZpeGVkLWFkZGl0aW9uYWwgdmFsdWVzIGFyZSBzZXQgaW4gdmFyaWFibGVzIGZpbGVcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHR5cGUgLSAnbWFyZ2luJyBvciAncGFkZGluZydcbkBtaXhpbiBzZXQtc2Nyb2xsLWJsb2NrLXN0YXJ0KCR0eXBlOiAnbWFyZ2luJykge1xuICAgIEBpZiBtZXRhLnZhcmlhYmxlLWV4aXN0cygnaGVhZGVyLWZpeGVkLWFkZGl0aW9uYWwnKSB7XG4gICAgICAgIEBpZiBtYXAuZ2V0KCRoZWFkZXItZml4ZWQtYWRkaXRpb25hbCwgaGVhZGVyLW1vYmlsZSkgb3IgbWFwLmdldCgkaGVhZGVyLWZpeGVkLWFkZGl0aW9uYWwsIHRvcC1iYW5uZXItbW9iaWxlKSB7XG4gICAgICAgICAgICAkc2Nyb2xsLXNpemU6ICcnO1xuXG4gICAgICAgICAgICBAaWYgbWFwLmdldCgkaGVhZGVyLWZpeGVkLWFkZGl0aW9uYWwsIGhlYWRlci1tb2JpbGUpIHtcbiAgICAgICAgICAgICAgICAkc2Nyb2xsLXNpemU6ICRzY3JvbGwtc2l6ZSArIHZhcigtLWhlYWRlci1oZWlnaHQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaWYgbWFwLmdldCgkaGVhZGVyLWZpeGVkLWFkZGl0aW9uYWwsIHRvcC1iYW5uZXItbW9iaWxlKSB7XG4gICAgICAgICAgICAgICAgJHNjcm9sbC1zaXplOiBjYWxjKCN7JHNjcm9sbC1zaXplfSArIHZhcigtLXByb21vLWhlaWdodCwgMHB4KSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAje21hcC5nZXQoJGhlYWRlci1maXhlZC1hZGRpdGlvbmFsLCBtb2JpbGUtYnJlYWtwb2ludC11cCkgLSAxcHh9KSB7XG4gICAgICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWludmFsaWQtcG9zaXRpb24tZGVjbGFyYXRpb25cbiAgICAgICAgICAgICAgICBzY3JvbGwtI3skdHlwZX0tYmxvY2stc3RhcnQ6ICN7JHNjcm9sbC1zaXplfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpZiBtYXAuZ2V0KCRoZWFkZXItZml4ZWQtYWRkaXRpb25hbCwgaGVhZGVyLWRlc2t0b3ApIG9yIG1hcC5nZXQoJGhlYWRlci1maXhlZC1hZGRpdGlvbmFsLCB0b3AtYmFubmVyLWRlc2t0b3ApIHtcbiAgICAgICAgICAgICRzY3JvbGwtc2l6ZTogJyc7XG5cbiAgICAgICAgICAgIEBpZiBtYXAuZ2V0KCRoZWFkZXItZml4ZWQtYWRkaXRpb25hbCwgaGVhZGVyLWRlc2t0b3ApIHtcbiAgICAgICAgICAgICAgICAkc2Nyb2xsLXNpemU6ICRzY3JvbGwtc2l6ZSArIHZhcigtLWhlYWRlci1oZWlnaHQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaWYgbWFwLmdldCgkaGVhZGVyLWZpeGVkLWFkZGl0aW9uYWwsIHRvcC1iYW5uZXItZGVza3RvcCkge1xuICAgICAgICAgICAgICAgICRzY3JvbGwtc2l6ZTogY2FsYygjeyRzY3JvbGwtc2l6ZX0gKyB2YXIoLS1wcm9tby1oZWlnaHQsIDBweCkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogI3ttYXAuZ2V0KCRoZWFkZXItZml4ZWQtYWRkaXRpb25hbCwgbW9iaWxlLWJyZWFrcG9pbnQtdXApfSkge1xuICAgICAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1pbnZhbGlkLXBvc2l0aW9uLWRlY2xhcmF0aW9uXG4gICAgICAgICAgICAgICAgc2Nyb2xsLSN7JHR5cGV9LWJsb2NrLXN0YXJ0OiAjeyRzY3JvbGwtc2l6ZX07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIGNhcmQgYm94ZXMgYXJlIHR5cGljYWxseSB1c2VkIG9uIHByb2R1Y3QgZGV0YWlsIHNlcnZpY2VzLCBjaGVja291dCB0cmFuc3BvcnQvcGF5bWVudCBvcHRpb25zLFxuLy8gQU5EIHByZS1jaGVja291dCBwYWdlXG5AbWl4aW4gY2FyZC1ib3gge1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgbGlnaHQpO1xuICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdncmF5LTkwMCcpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIG1hcC5nZXQoJGlucHV0LCBib3JkZXItY29sb3IpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBpbnNldDogLTFweDtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgbWFwLmdldCgkdGhlbWUtY29sb3JzLCBwcmltYXJ5LWRhcmspO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlLWluLW91dDtcbiAgICB9XG5cbiAgICAmOmhvdmVyOm5vdCg6aGFzKFtkaXNhYmxlZF0pKSxcbiAgICAmOmZvY3VzLXdpdGhpbjpub3QoOmhhcyhbZGlzYWJsZWRdKSkge1xuICAgICAgICBib3JkZXItY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgZ3JheS00MDApO1xuXG4gICAgICAgIFt0eXBlPSdjaGVja2JveCddOm5vdCg6Y2hlY2tlZCksXG4gICAgICAgIFt0eXBlPSdyYWRpbyddOm5vdCg6Y2hlY2tlZCkge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2IoMCwgMCwgMCwgMC4yKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6aGFzKFtkaXNhYmxlZF0pOm5vdCguZml4LXNwZWNpZmljaXR5KSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgZ3JheS0xMDApO1xuICAgICAgICBib3JkZXItaW5saW5lLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGdyYXktMTAwKTtcbiAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgZ3JheS02MDApO1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG5cbiAgICAgICAgPiAqIHtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItYmxvY2stZW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGdyYXktMjAwKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkB1c2UgJ3Nhc3M6bWFwJztcbkB1c2UgJ3Nhc3M6bGlzdCc7XG5cbi8qKlxuICogUmV0cmlldmVzIHRoZSBuZXh0IHNtYWxsZXIgYnJlYWtwb2ludCBmcm9tIHRoZSBnaXZlbiBicmVha3BvaW50LlxuICpcbiAqIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCAtIFRoZSBicmVha3BvaW50IGZvciB3aGljaCB0byBmaW5kIHRoZSBuZXh0IHNtYWxsZXIgYnJlYWtwb2ludC5cbiAqIEByZXR1cm4ge1N0cmluZ3xudWxsfSAtIFRoZSBuZXh0IHNtYWxsZXIgYnJlYWtwb2ludCwgb3IgbnVsbCBpZiBubyBzbWFsbGVyIGJyZWFrcG9pbnQgaXMgYXZhaWxhYmxlLlxuICovXG5AZnVuY3Rpb24gZ2V0LXNtYWxsZXItYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAgICRrZXlzOiBtYXAua2V5cygkZ3JpZC1icmVha3BvaW50cyk7XG4gICAgJGluZGV4OiBsaXN0LmluZGV4KCRrZXlzLCAkYnJlYWtwb2ludCk7XG5cbiAgICBAaWYgbm90ICRpbmRleCBvciAkaW5kZXggPT0gMSB7XG4gICAgICAgIEByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBAcmV0dXJuIGxpc3QubnRoKCRrZXlzLCAkaW5kZXggLSAxKTtcbn1cblxuLyoqXG4gKiBSZXRyaWV2ZXMgdGhlIG5leHQgbGFyZ2VyIGJyZWFrcG9pbnQgZnJvbSB0aGUgJGdyaWQtYnJlYWtwb2ludHMgbWFwLlxuICpcbiAqIEBmdW5jdGlvbiBnZXQtYmlnZ2VyLWJyZWFrcG9pbnRcbiAqIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCAtIFRoZSBjdXJyZW50IGJyZWFrcG9pbnQgdG8gZmluZCB0aGUgbmV4dCBsYXJnZXIgb25lIGZvci5cbiAqIEByZXR1cm4ge1N0cmluZyB8IG51bGx9IC0gVGhlIG5leHQgbGFyZ2VyIGJyZWFrcG9pbnQgb3IgbnVsbCBpZiB0aGUgY3VycmVudCBicmVha3BvaW50IGlzIHRoZSBsYXJnZXN0IG9yIG5vdCBmb3VuZC5cbiAqL1xuQGZ1bmN0aW9uIGdldC1sYXJnZXItYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAgICRrZXlzOiBtYXAua2V5cygkZ3JpZC1icmVha3BvaW50cyk7XG4gICAgJGluZGV4OiBsaXN0LmluZGV4KCRrZXlzLCAkYnJlYWtwb2ludCk7XG5cbiAgICBAaWYgbm90ICRpbmRleCBvciAkaW5kZXggPT0gbGlzdC5sZW5ndGgoJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgQHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIEByZXR1cm4gbGlzdC5udGgoJGtleXMsICRpbmRleCArIDEpO1xufVxuIiwiQHVzZSAnc2Fzczpjb2xvcic7XG5AdXNlICdzYXNzOm1hcCc7XG5AdXNlICdzYXNzOmxpc3QnO1xuXG4vLyAqIFZpc3VhbHMgZm9yIHNtYWxsIGJsb2NrcyB3aXRoIGEgaG92ZXIgLyBmb2N1cy13aXRoaW4gZWZmZWN0IGluY2x1ZGVkXG4vLyAqIFRvIG1vZGlmeSBkZWZhdWx0IHZhbHVlcywgeW91IGNvdWxkIHVzZSBAaW5jbHVkZSBzbWFsbC1ibG9jay1jb21wb25lbnQobWFwLnNldCgkY29uZmlnLCAncmFkaXVzJywgMjBweCkpXG5AbWl4aW4gc21hbGwtYmxvY2stY29tcG9uZW50KFxuICAgICRyYWRpdXM6IDEwcHgsXG4gICAgJGJhY2tncm91bmQtc3RhcnQ6IGNvbG9yLmFkanVzdChtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIHByaW1hcnktbGlnaHQpLCAkYWxwaGE6IC0xKSxcbiAgICAkYmFja2dyb3VuZC1lbmQ6IGNvbG9yLmFkanVzdChtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIHByaW1hcnktbGlnaHQpLCAkYWxwaGE6IDApLFxuICAgICRib3gtc2hhZG93LXN0YXJ0OiAwIDRweCAyMHB4IDAgIzAwMDAwMDE0LFxuICAgICRib3gtc2hhZG93LWVuZDogMCA0cHggNHB4IDAgIzAwMDAwMDE0LFxuICAgICR0cmFuc2l0aW9uOiAnYmFja2dyb3VuZC1jb2xvciBsaW5lYXIgMC4xNXMsIGJveC1zaGFkb3cgbGluZWFyIDAuMTVzJ1xuKSB7XG4gICAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1zdGFydDtcbiAgICBib3gtc2hhZG93OiAkYm94LXNoYWRvdy1zdGFydDtcbiAgICB0cmFuc2l0aW9uOiAjeyR0cmFuc2l0aW9ufTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cy13aXRoaW4ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1lbmQ7XG4gICAgICAgIGJveC1zaGFkb3c6ICRib3gtc2hhZG93LWVuZDtcbiAgICB9XG59XG5cbkBtaXhpbiB3aWRlLWNhcmQoJGJyZWFrcG9pbnQ6ICd4bCcpIHtcbiAgICAkc21hbGxlci1icmVha3BvaW50OiBnZXQtbGFyZ2VyLWJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpO1xuXG4gICAgLnByb2R1Y3QtY2FyZCB7XG4gICAgICAgIC0tdGh1bWJuYWlsLXdpZHRoOiAyMDBweDtcbiAgICAgICAgLS1mbGFnLWZvbnQtc2l6ZTogMS4ycmVtO1xuXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgbGlnaHQpO1xuICAgICAgICBib3gtc2hhZG93OiAwIDEwcHggMjBweCAwIHJnYigwLCAwLCAwLCAwLjA3KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJGRlZmF1bHQtYm9yZGVyLXJhZGl1cztcblxuICAgICAgICAmX19pbm5lciB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzcmVtO1xuICAgICAgICAgICAgZ2FwOiAxcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgQGlmICRzbWFsbGVyLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkc21hbGxlci1icmVha3BvaW50KSB7XG4gICAgICAgICAgICAgICAgLS10aHVtYm5haWwtd2lkdGg6IDI4MHB4O1xuICAgICAgICAgICAgICAgIC0tZmxhZy1mb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgICZfX2lubmVyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogdmFyKC0tdGh1bWJuYWlsLXdpZHRoKSAxZnIgYXV0bztcbiAgICAgICAgICAgICAgICBncmlkLWF1dG8tcm93czogYXV0bztcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAyNHJlbTtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDNyZW0gNHJlbSAzcmVtIDA7XG5cbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICAgICAgZ3JpZC1yb3c6IDE7XG4gICAgICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxIC8gLTE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19wcmltYXJ5LFxuICAgICAgICAgICAgJl9fc2Vjb25kYXJ5IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBjb250ZW50cztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fc2Vjb25kYXJ5IHtcbiAgICAgICAgICAgICAgICAmLWlubmVyIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogY29udGVudHM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX190aHVtYm5haWwge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogdmFyKC0tdGh1bWJuYWlsLXdpZHRoKTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgICAgICAgICAgICBncmlkLWFyZWE6IGF1dG87XG5cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDI0MHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAyNDBweDtcbiAgICAgICAgICAgICAgICAgICAgaW5zZXQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX3ZhcmlhbnRzIHtcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMTtcbiAgICAgICAgICAgICAgICBncmlkLXJvdzogNjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9faGVhZGluZyB7XG4gICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDIgLyAtMTtcbiAgICAgICAgICAgICAgICBncmlkLXJvdzogMjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIuMnJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fcGVyZXgge1xuICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyIC8gLTE7XG4gICAgICAgICAgICAgICAgZ3JpZC1yb3c6IDM7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX3BhcmFtZXRlcnMge1xuICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyIC8gLTE7XG4gICAgICAgICAgICAgICAgZ3JpZC1yb3c6IDQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX2F2YWlsYWJpbGl0eSB7XG4gICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDIgLyAtMTtcbiAgICAgICAgICAgICAgICBncmlkLXJvdzogNTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fcHJpY2Uge1xuICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyO1xuICAgICAgICAgICAgICAgIGdyaWQtcm93OiA2O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgICAgIC5jYXJkLXByaWNlIHtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzdGFydDtcbiAgICAgICAgICAgICAgICAgICAgZ2FwOiAwIDEuNnJlbTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgICAgICAgICAgICAgICAmX19mdWxsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMi4ycmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgZGFyayk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmX19kaXNjb3VudCxcbiAgICAgICAgICAgICAgICAgICAgJl9fc2F2aW5nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19mbGFncyB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogLTEwcHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IC0xM3B4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgcGxhY2Utc2VsZjogc3RhcnQgZW5kO1xuICAgICAgICAgICAgICAgIGdhcDogMC4zcmVtO1xuXG4gICAgICAgICAgICAgICAgW2NsYXNzKj0nX19pdGVtJ10ge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjIyZW0gMC42M2VtO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZmxhZy1mb250LXNpemUpO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzcyo9J19fdGV4dCddIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDQwMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fYWRkIHtcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMztcbiAgICAgICAgICAgICAgICBncmlkLXJvdzogNjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgJi1saW5rIHtcbiAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAyMDVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vICogQWRkIGludmVydGVkIGJvcmRlciByYWRpdXMgY29ybmVyc1xuLy8gKiBtYXNrIHZhbHVlcyBhcmUgaW4gdGhlIG9yZGVyIHRsIC8gdHIgLyBiciAvIGJsXG4vLyAqIE5vdGUgdGhhdCBhbGwgdW5pdHMgc2hvdWxkIGJlIGluIHB4XG4vLyAqIEBwYXJhbSB7bGlzdH0gLSBzcGVjaWZpYyBib3JkZXIgY29ybmVycyAkY29ybmVycyAoYWxsfHRsfHRyfGJsfGJyKVxuQG1peGluIGludmVydGVkLWJvcmRlci1yYWRpdXMoJGNvcm5lcnM6ICdhbGwnKSB7XG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByZXR0aWVyL3ByZXR0aWVyXG4gICAgJHZhbGlkLWJvcmRlci1yYWRpdXMtcGFyYW1zOiBbJ2FsbCcsICd0bCcsICd0cicsICdibCcsICdicicsICd0JywgJ3InLCAnYicsICdsJ107XG4gICAgJGludmVydGVkLWJvcmRlci1yYWRpdXM6ICRkZWZhdWx0LWJvcmRlci1yYWRpdXM7XG4gICAgJGludmVydGVkLWJvcmRlci10bDogMHB4O1xuICAgICRpbnZlcnRlZC1ib3JkZXItdHI6IDBweDtcbiAgICAkaW52ZXJ0ZWQtYm9yZGVyLWJyOiAwcHg7XG4gICAgJGludmVydGVkLWJvcmRlci1ibDogMHB4O1xuXG4gICAgLS1pbnZlcnRlZC1ib3JkZXItZ3JhZGllbnQ6ICMwMDAwIDk4JSwgIzAwMDtcbiAgICAtLWludmVydGVkLWJvcmRlci1yYWRpdXM6ICN7JGludmVydGVkLWJvcmRlci1yYWRpdXN9O1xuXG4gICAgQGlmIG5vdCBsaXN0LmluZGV4KCR2YWxpZC1ib3JkZXItcmFkaXVzLXBhcmFtcywgJGNvcm5lcnMpIHtcbiAgICAgICAgQGVycm9yIFwiI3skY29ybmVyc30gaXMgbm90IGEgdmFsaWQgc2lkZS4gRXhwZWN0ZWQgb25lIG9mICN7JHZhbGlkLWJvcmRlci1yYWRpdXMtcGFyYW1zfS5cIjtcbiAgICB9XG5cbiAgICBAaWYgJGNvcm5lcnMgPT0gJ2FsbCcge1xuICAgICAgICAkaW52ZXJ0ZWQtYm9yZGVyLXRsOiAkaW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cztcbiAgICAgICAgJGludmVydGVkLWJvcmRlci10cjogJGludmVydGVkLWJvcmRlci1yYWRpdXM7XG4gICAgICAgICRpbnZlcnRlZC1ib3JkZXItYnI6ICRpbnZlcnRlZC1ib3JkZXItcmFkaXVzO1xuICAgICAgICAkaW52ZXJ0ZWQtYm9yZGVyLWJsOiAkaW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cztcbiAgICB9IEBlbHNlIGlmICRjb3JuZXJzID09ICd0bCcge1xuICAgICAgICAkaW52ZXJ0ZWQtYm9yZGVyLXRsOiAkaW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cztcbiAgICB9IEBlbHNlIGlmICRjb3JuZXJzID09ICd0cicge1xuICAgICAgICAkaW52ZXJ0ZWQtYm9yZGVyLXRyOiAkaW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cztcbiAgICB9IEBlbHNlIGlmICRjb3JuZXJzID09ICdicicge1xuICAgICAgICAkaW52ZXJ0ZWQtYm9yZGVyLWJyOiAkaW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cztcbiAgICB9IEBlbHNlIGlmICRjb3JuZXJzID09ICdibCcge1xuICAgICAgICAkaW52ZXJ0ZWQtYm9yZGVyLWJsOiAkaW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cztcbiAgICB9IEBlbHNlIGlmICRjb3JuZXJzID09ICd0JyB7XG4gICAgICAgICRpbnZlcnRlZC1ib3JkZXItdGw6ICRpbnZlcnRlZC1ib3JkZXItcmFkaXVzO1xuICAgICAgICAkaW52ZXJ0ZWQtYm9yZGVyLXRyOiAkaW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cztcbiAgICB9IEBlbHNlIGlmICRjb3JuZXJzID09ICdyJyB7XG4gICAgICAgICRpbnZlcnRlZC1ib3JkZXItdHI6ICRpbnZlcnRlZC1ib3JkZXItcmFkaXVzO1xuICAgICAgICAkaW52ZXJ0ZWQtYm9yZGVyLWJyOiAkaW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cztcbiAgICB9IEBlbHNlIGlmICRjb3JuZXJzID09ICdiJyB7XG4gICAgICAgICRpbnZlcnRlZC1ib3JkZXItYnI6ICRpbnZlcnRlZC1ib3JkZXItcmFkaXVzO1xuICAgICAgICAkaW52ZXJ0ZWQtYm9yZGVyLWJsOiAkaW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cztcbiAgICB9IEBlbHNlIGlmICRjb3JuZXJzID09ICdsJyB7XG4gICAgICAgICRpbnZlcnRlZC1ib3JkZXItdGw6ICRpbnZlcnRlZC1ib3JkZXItcmFkaXVzO1xuICAgICAgICAkaW52ZXJ0ZWQtYm9yZGVyLWJsOiAkaW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cztcbiAgICB9XG5cbiAgICAtLWludmVydGVkLWJvcmRlci1yYWRpdXMtdGw6ICN7JGludmVydGVkLWJvcmRlci10bH07XG4gICAgLS1pbnZlcnRlZC1ib3JkZXItcmFkaXVzLXRyOiAjeyRpbnZlcnRlZC1ib3JkZXItdHJ9O1xuICAgIC0taW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cy1icjogI3skaW52ZXJ0ZWQtYm9yZGVyLWJyfTtcbiAgICAtLWludmVydGVkLWJvcmRlci1yYWRpdXMtYmw6ICN7JGludmVydGVkLWJvcmRlci1ibH07XG5cbiAgICBtYXNrOlxuICAgICAgICByYWRpYWwtZ3JhZGllbnQodmFyKC0taW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cy10bCkgYXQgMCAwLCB2YXIoLS1pbnZlcnRlZC1ib3JkZXItZ3JhZGllbnQpKSAwIDAsXG4gICAgICAgIHJhZGlhbC1ncmFkaWVudCh2YXIoLS1pbnZlcnRlZC1ib3JkZXItcmFkaXVzLXRyKSBhdCAxMDAlIDAsIHZhcigtLWludmVydGVkLWJvcmRlci1ncmFkaWVudCkpIDEwMCUgMCxcbiAgICAgICAgcmFkaWFsLWdyYWRpZW50KHZhcigtLWludmVydGVkLWJvcmRlci1yYWRpdXMtYmwpIGF0IDAgMTAwJSwgdmFyKC0taW52ZXJ0ZWQtYm9yZGVyLWdyYWRpZW50KSkgMCAxMDAlLFxuICAgICAgICByYWRpYWwtZ3JhZGllbnQodmFyKC0taW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cy1icikgYXQgMTAwJSAxMDAlLCB2YXIoLS1pbnZlcnRlZC1ib3JkZXItZ3JhZGllbnQpKSAxMDAlIDEwMCU7XG4gICAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBtYXNrLXNpemU6IDUxJSA1MSU7XG5cbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZSBuby1pbnZhbGlkLXBvc2l0aW9uLWRlY2xhcmF0aW9uXG4gICAgLy8gRGlzYWJsZSBmb3Igb2xkZXIgU2FmYXJpIGJyb3dzZXJzIGFzIHRoZSBsYXlvdXQgYnJlYWtzIHRoZXJlIHdpdGggbWFza1xuICAgIEBzdXBwb3J0cyAoYmFja2dyb3VuZDogLXdlYmtpdC1uYW1lZC1pbWFnZShpKSkge1xuICAgICAgICBtYXNrOiBub25lO1xuICAgIH1cblxuICAgIC8vIFdlIGNhbm5vdCBjaGVjayBmb3IgQHN1cHBvcnRzIChjbGlwLXBhdGg6IHNoYXBlKCkpIGJlY2F1c2UsIHdoaWxlIEZpcmVmb3ggc3VwcG9ydHMgdGhlIHJ1bGUsIGl0IGRvZXMgbm90IHdvcmsgLSB5ZXQgKGh0dHBzOi8vYnVnemlsbGEubW96aWxsYS5vcmcvc2hvd19idWcuY2dpP2lkPTE5MTAzMjgpXG4gICAgLy8gQnV0LCBhcyBzaGFwZSgpIGNhbiBiZSB1c2VkIGluIGFuaW1hdGlvbiBwYXRocywgYW5kIENocm9tZSBhbmQgY3VycmVudCBTYWZhcmkgc3VwcG9ydCB0aGlzIGltcGxlbWVudGF0aW9uLlxuICAgIC8vIE5PVEU6IFdlIHNob3VsZCBzdGlsbCBjaGVjayB0byBzZWUgd2hlbiBjbGlwLXBhdGg6IHNoYXBlKCkgaXMgZnVsbHkgZW5hYmxlZCBpbiBGaXJlZm94LCBidXQgaW4gdGhlIG1lYW50aW1lLCBtYXNraW5nIHdvcmtzIG5pY2VseSB0aGVyZVxuICAgIEBzdXBwb3J0cyAob2Zmc2V0LXBhdGg6IHNoYXBlKGZyb20gdG9wIGxlZnQsIGN1cnZlIHRvIDUwJSA1MCUgd2l0aCAyNSUgMTAwJSkpIHtcbiAgICAgICAgbWFzazogbm9uZTtcbiAgICAgICAgY2xpcC1wYXRoOiBzaGFwZShcbiAgICAgICAgICAgIGZyb20gMCB2YXIoLS1pbnZlcnRlZC1ib3JkZXItcmFkaXVzLXRsKSxcbiAgICAgICAgICAgIGFyYyBieSB2YXIoLS1pbnZlcnRlZC1ib3JkZXItcmFkaXVzLXRsKSBjYWxjKHZhcigtLWludmVydGVkLWJvcmRlci1yYWRpdXMtdGwpICogLTEpIG9mIHZhcigtLWludmVydGVkLWJvcmRlci1yYWRpdXMtdGwpLFxuICAgICAgICAgICAgbGluZSB0byBjYWxjKDEwMCUgLSB2YXIoLS1pbnZlcnRlZC1ib3JkZXItcmFkaXVzLXRyKSkgMCxcbiAgICAgICAgICAgIGFyYyBieSB2YXIoLS1pbnZlcnRlZC1ib3JkZXItcmFkaXVzLXRyKSB2YXIoLS1pbnZlcnRlZC1ib3JkZXItcmFkaXVzLXRyKSBvZiB2YXIoLS1pbnZlcnRlZC1ib3JkZXItcmFkaXVzLXRyKSxcbiAgICAgICAgICAgIGxpbmUgdG8gMTAwJSBjYWxjKDEwMCUgLSB2YXIoLS1pbnZlcnRlZC1ib3JkZXItcmFkaXVzLWJyKSksXG4gICAgICAgICAgICBhcmMgYnkgY2FsYyh2YXIoLS1pbnZlcnRlZC1ib3JkZXItcmFkaXVzLWJyKSAqIC0xKSB2YXIoLS1pbnZlcnRlZC1ib3JkZXItcmFkaXVzLWJyKSBvZiB2YXIoLS1pbnZlcnRlZC1ib3JkZXItcmFkaXVzLWJyKSxcbiAgICAgICAgICAgIGxpbmUgdG8gdmFyKC0taW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cy1ibCkgMTAwJSxcbiAgICAgICAgICAgIGFyYyBieSBjYWxjKHZhcigtLWludmVydGVkLWJvcmRlci1yYWRpdXMtYmwpICogLTEpIGNhbGModmFyKC0taW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cy1ibCkgKiAtMSkgb2YgdmFyKC0taW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cy1ibCksXG4gICAgICAgICAgICBsaW5lIHRvIDAgdmFyKC0taW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cy10bClcbiAgICAgICAgKTtcbiAgICB9XG4gICAgLy8gc3R5bGVsaW50LWVuYWJsZSBuby1pbnZhbGlkLXBvc2l0aW9uLWRlY2xhcmF0aW9uXG59XG5cbi8vIExhYmVsIGlzIHNoaWZ0ZWQgd2hlbiAtXG4vLyBpbnB1dCBpcyBmb2N1c2VkXG4vLyBoYXMgdmFsdWUgcHJvcCBidXQgbm90IHBsYWNlaG9sZGVyIHNob3duIChoYXBwZW5kcyB3aGVuIHByZWZpbGxlZCBpbnB1dCBpcyBtYW51YWxseSBjbGVhcmVkKVxuLy8gaGFzIHNvbWUgdGV4dCBwbGFjZWhvbGRlclxuLy8gaXMgYXV0b2ZpbGxlZFxuQG1peGluIGZvcm0taW5wdXQtbGFiZWwtc2VsZWN0b3JzIHtcbiAgICAmOmhhcyg6d2hlcmUoaW5wdXQsIHNlbGVjdCwgdGV4dGFyZWEpOm5vdCg6d2hlcmUoOnBsYWNlaG9sZGVyLXNob3duKSk6aXMoOndoZXJlKDpub3QoOnBsYWNlaG9sZGVyLXNob3duKSksIDp3aGVyZSg6bm90KFtwbGFjZWhvbGRlcj0nJ10sIFtwbGFjZWhvbGRlcj0nICddKSksIDpub3QoW3ZhbHVlPScnXSksIDotd2Via2l0LWF1dG9maWxsLCA6YXV0b2ZpbGwsIDpmb2N1cykpIDp3aGVyZSguZm9ybS1pbnB1dF9fbGFiZWwpLFxuICAgICY6aGFzKDp3aGVyZShpbnB1dCwgc2VsZWN0LCB0ZXh0YXJlYSk6aXMoOndoZXJlKDpwbGFjZWhvbGRlci1zaG93bjpub3QoW3BsYWNlaG9sZGVyPScnXSwgW3BsYWNlaG9sZGVyPScgJ10pKSkpIDp3aGVyZSguZm9ybS1pbnB1dF9fbGFiZWwpLFxuICAgICY6aGFzKDp3aGVyZShpbnB1dCwgc2VsZWN0LCB0ZXh0YXJlYSk6aXMoOmZvY3VzKSkgOndoZXJlKC5mb3JtLWlucHV0X19sYWJlbCkge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG59XG5cbi8qKlxuICogUmVzZXQgaVNwYWNlIGN1c3RvbSBmb3JtIGlucHV0IHN0eWxlcyB0byBiZSBhYmxlIHRvIGRlc2lnbiBzcGVjaWFsIGlucHV0cyBtb3JlIGVhc2lseVxuICovXG5AbWl4aW4gcmVzZXQtZm9ybS1pbnB1dCB7XG4gICAgJjpoYXMoOndoZXJlKGlucHV0Om5vdChbdHlwZT0nY2hlY2tib3gnXSwgW3R5cGU9J3JhZGlvJ10pLCB0ZXh0YXJlYSwgc2VsZWN0KSkge1xuICAgICAgICB6LWluZGV4OiBhdXRvO1xuICAgICAgICBtYXJnaW4tdG9wOiBpbml0aWFsO1xuXG4gICAgICAgIDp3aGVyZSguZm9ybS1maWVsZC1jb250YWluZXIpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IGluaXRpYWw7XG4gICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIH1cblxuICAgICAgICA6d2hlcmUoLmZvcm0tZmllbGQgPiAqKSB7XG4gICAgICAgICAgICAmOm5vdChbZGlzYWJsZWRdKSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5pdGlhbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIDp3aGVyZSguZm9ybS1maWVsZF9faW5wdXQpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogaW5pdGlhbDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aGFzKC5lcnJvcnMpIHtcbiAgICAgICAgICAgIC0taW5wdXQtYmc6IGluaXRpYWw7XG5cbiAgICAgICAgICAgIC5mb3JtLWZpZWxkLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IGluaXRpYWwgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpmb2N1cy13aXRoaW4ge1xuICAgICAgICAgICAgICAgIC5mb3JtLWZpZWxkLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogaW5pdGlhbCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6aGFzKFtkaXNhYmxlZF0pIHtcbiAgICAgICAgICAgIC5mb3JtLWZpZWxkLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IGluaXRpYWwgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIDp3aGVyZSguZm9ybS1pbnB1dF9fbGFiZWwpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIHBhZGRpbmctaW5saW5lOiAwO1xuICAgICAgICAgICAgcGFkZGluZy1ibG9jazogMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogaW5pdGlhbDtcbiAgICAgICAgICAgIGNvbG9yOiBpbml0aWFsO1xuICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogY2xpcDtcbiAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY2xpcDogYm9yZGVyLWJveDtcbiAgICAgICAgICAgIHotaW5kZXg6IGF1dG87XG4gICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiBpbml0aWFsO1xuICAgICAgICAgICAgbWFyZ2luLWJsb2NrLWVuZDogaW5pdGlhbDtcblxuICAgICAgICAgICAgJjo6YmVmb3JlLFxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmhhcyguZm9ybS1maWVsZC0tc20pIHtcbiAgICAgICAgICAgIC5mb3JtLWlucHV0X19sYWJlbCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ibG9jazogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgICAgICAgIDp3aGVyZSguZm9ybS1maWVsZC1jb250YWluZXIpIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IGluaXRpYWw7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgOndoZXJlKC5mb3JtLWlucHV0X19sYWJlbCkge1xuICAgICAgICAgICAgICAgIGNvbG9yOiBpbml0aWFsO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAmOm5vdCg6d2hlcmUoOmZvY3VzLXdpdGhpbiwgW2Rpc2FibGVkXSkpIHtcbiAgICAgICAgICAgICAgICAmOndoZXJlKDpub3QoOmhhcyguZXJyb3JzKSkpIHtcbiAgICAgICAgICAgICAgICAgICAgOndoZXJlKC5mb3JtLWZpZWxkLWNvbnRhaW5lcikge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiBpbml0aWFsO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgOndoZXJlKC5mb3JtLWlucHV0X19sYWJlbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IGluaXRpYWw7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmhhcyguZXJyb3JzKSB7XG4gICAgICAgICAgICAgICAgICAgIDp3aGVyZSguZm9ybS1maWVsZC1jb250YWluZXIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIDp3aGVyZSguZm9ybS1pbnB1dF9fbGFiZWwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBpbml0aWFsO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgZm9ybS1pbnB1dC1sYWJlbC1zZWxlY3RvcnMge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgZm9udC1zaXplOiBpbml0aWFsO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcblxuICAgICAgICAgICAgJjo6YmVmb3JlLFxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKipcbiAqIFN0eWxlcyB0byBoaWRlIHRoZSBzY3JvbGxiYXIgYnV0IHN0aWxsIGFsbG93IHNjcm9sbGluZ1xuICovXG5AbWl4aW4gc2Nyb2xsLXdpdGhvdXQtc2Nyb2xsYmFyIHtcbiAgICBvdmVyZmxvdzogc2Nyb2xsO1xuICAgIG92ZXJmbG93OiAtbW96LXNjcm9sbGJhcnMtbm9uZTsgLyogRmlyZWZveCAqL1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTsgLyogSUUgYW5kIEVkZ2UgKi9cbiAgICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7IC8qIEZpcmVmb3ggKi9cblxuICAgIC8qIENocm9tZSwgU2FmYXJpIGFuZCBPcGVyYSAqL1xuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi8vIEFsdGVybmF0aXZlIGRpc2MtbGlrZSBzdHlsaW5nIGZvciByYWRpbyBhbmQgY2hlY2tib3ggaW5wdXRzXG5AbWl4aW4gaW5wdXQtZGlzYyB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaW5zZXQ6IDAgMTBweCAwIGF1dG87XG4gICAgbWFyZ2luLWJsb2NrOiBhdXRvO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgd2lkdGg6IDE1cHg7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIGZsZXg6IDAgMCAxNXB4OyAvLyBpbiBjYXNlIGl0J3MgcGFydCBvZiBhIGZsZXggbGF5b3V0XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcbiAgICBib3JkZXI6IDJweCBzb2xpZCByZ2IoMCwgMCwgMCwgMC4xKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1pbi1vdXQ7XG59XG5cbi8vIGNhcmQgYm94ZXMgYXJlIHR5cGljYWxseSB1c2VkIG9uIHByb2R1Y3QgZGV0YWlsIHNlcnZpY2VzLCBjaGVja291dCB0cmFuc3BvcnQvcGF5bWVudCBvcHRpb25zLFxuLy8gQU5EIHByZS1jaGVja291dCBwYWdlXG5AbWl4aW4gY2FyZC1ib3gge1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgbGlnaHQpO1xuICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdncmF5LTkwMCcpO1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBtYXAuZ2V0KCRpbnB1dCwgYm9yZGVyLWNvbG9yKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDE0cHggMzBweCAxNHB4IDIwcHg7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogaW5oZXJpdDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBpbnNldDogLTFweDtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgbWFwLmdldCgkdGhlbWUtY29sb3JzLCBwcmltYXJ5LWRhcmspO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlLWluLW91dDtcbiAgICB9XG5cbiAgICBbdHlwZT0nY2hlY2tib3gnXSxcbiAgICBbdHlwZT0ncmFkaW8nXSB7XG4gICAgICAgIEBpbmNsdWRlIGlucHV0LWRpc2M7XG4gICAgfVxuXG4gICAgJjpoYXMoOmNoZWNrZWQpLFxuICAgICZbY2xhc3MqPSdzZWxlY3RlZCddIHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuXG4gICAgICAgIFt0eXBlPSdjaGVja2JveCddOm5vdCguZml4LXNwZWNpZmljaXR5KSxcbiAgICAgICAgW3R5cGU9J3JhZGlvJ106bm90KC5maXgtc3BlY2lmaWNpdHkpIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBwcmltYXJ5LWRhcmspO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBwcmltYXJ5LWRhcmspO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjpob3Zlcjpub3QoOmhhcyhbZGlzYWJsZWRdKSksXG4gICAgJjpmb2N1cy13aXRoaW46bm90KDpoYXMoW2Rpc2FibGVkXSkpIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGdyYXktNDAwKTtcblxuICAgICAgICBbdHlwZT0nY2hlY2tib3gnXTpub3QoOmNoZWNrZWQpLFxuICAgICAgICBbdHlwZT0ncmFkaW8nXTpub3QoOmNoZWNrZWQpIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiKDAsIDAsIDAsIDAuMik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhhcyhbZGlzYWJsZWRdKTpub3QoLmZpeC1zcGVjaWZpY2l0eSkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGxpZ2h0KTtcbiAgICAgICAgb3BhY2l0eTogMC43O1xuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI6cm9vdCxcbltkYXRhLWJzLXRoZW1lPVwibGlnaHRcIl0ge1xuICAvLyBOb3RlOiBDdXN0b20gdmFyaWFibGUgdmFsdWVzIG9ubHkgc3VwcG9ydCBTYXNzU2NyaXB0IGluc2lkZSBgI3t9YC5cblxuICAvLyBDb2xvcnNcbiAgLy9cbiAgLy8gR2VuZXJhdGUgcGFsZXR0ZXMgZm9yIGZ1bGwgY29sb3JzLCBncmF5cywgYW5kIHRoZW1lIGNvbG9ycy5cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkY29sb3JzIHtcbiAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICRncmF5cyB7XG4gICAgLS0jeyRwcmVmaXh9Z3JheS0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy1yZ2Ige1xuICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfS1yZ2I6ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtdGV4dCB7XG4gICAgLS0jeyRwcmVmaXh9I3skY29sb3J9LXRleHQtZW1waGFzaXM6ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtYmctc3VidGxlIHtcbiAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn0tYmctc3VidGxlOiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzLWJvcmRlci1zdWJ0bGUge1xuICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfS1ib3JkZXItc3VidGxlOiAjeyR2YWx1ZX07XG4gIH1cblxuICAtLSN7JHByZWZpeH13aGl0ZS1yZ2I6ICN7dG8tcmdiKCR3aGl0ZSl9O1xuICAtLSN7JHByZWZpeH1ibGFjay1yZ2I6ICN7dG8tcmdiKCRibGFjayl9O1xuXG4gIC8vIEZvbnRzXG5cbiAgLy8gTm90ZTogVXNlIGBpbnNwZWN0YCBmb3IgbGlzdHMgc28gdGhhdCBxdW90ZWQgaXRlbXMga2VlcCB0aGUgcXVvdGVzLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMjM4MyNpc3N1ZWNvbW1lbnQtMzM2MzQ5MTcyXG4gIC0tI3skcHJlZml4fWZvbnQtc2Fucy1zZXJpZjogI3tpbnNwZWN0KCRmb250LWZhbWlseS1zYW5zLXNlcmlmKX07XG4gIC0tI3skcHJlZml4fWZvbnQtbW9ub3NwYWNlOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSl9O1xuICAtLSN7JHByZWZpeH1ncmFkaWVudDogI3skZ3JhZGllbnR9O1xuXG4gIC8vIFJvb3QgYW5kIGJvZHlcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHJvb3QtYm9keS12YXJpYWJsZXNcbiAgQGlmICRmb250LXNpemUtcm9vdCAhPSBudWxsIHtcbiAgICAtLSN7JHByZWZpeH1yb290LWZvbnQtc2l6ZTogI3skZm9udC1zaXplLXJvb3R9O1xuICB9XG4gIC0tI3skcHJlZml4fWJvZHktZm9udC1mYW1pbHk6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktYmFzZSl9O1xuICBAaW5jbHVkZSByZnMoJGZvbnQtc2l6ZS1iYXNlLCAtLSN7JHByZWZpeH1ib2R5LWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fWJvZHktZm9udC13ZWlnaHQ6ICN7JGZvbnQtd2VpZ2h0LWJhc2V9O1xuICAtLSN7JHByZWZpeH1ib2R5LWxpbmUtaGVpZ2h0OiAjeyRsaW5lLWhlaWdodC1iYXNlfTtcbiAgQGlmICRib2R5LXRleHQtYWxpZ24gIT0gbnVsbCB7XG4gICAgLS0jeyRwcmVmaXh9Ym9keS10ZXh0LWFsaWduOiAjeyRib2R5LXRleHQtYWxpZ259O1xuICB9XG5cbiAgLS0jeyRwcmVmaXh9Ym9keS1jb2xvcjogI3skYm9keS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJvZHktY29sb3ItcmdiOiAje3RvLXJnYigkYm9keS1jb2xvcil9O1xuICAtLSN7JHByZWZpeH1ib2R5LWJnOiAjeyRib2R5LWJnfTtcbiAgLS0jeyRwcmVmaXh9Ym9keS1iZy1yZ2I6ICN7dG8tcmdiKCRib2R5LWJnKX07XG5cbiAgLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3I6ICN7JGJvZHktZW1waGFzaXMtY29sb3J9O1xuICAtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LWVtcGhhc2lzLWNvbG9yKX07XG5cbiAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yOiAjeyRib2R5LXNlY29uZGFyeS1jb2xvcn07XG4gIC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LXNlY29uZGFyeS1jb2xvcil9O1xuICAtLSN7JHByZWZpeH1zZWNvbmRhcnktYmc6ICN7JGJvZHktc2Vjb25kYXJ5LWJnfTtcbiAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnLXJnYjogI3t0by1yZ2IoJGJvZHktc2Vjb25kYXJ5LWJnKX07XG5cbiAgLS0jeyRwcmVmaXh9dGVydGlhcnktY29sb3I6ICN7JGJvZHktdGVydGlhcnktY29sb3J9O1xuICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LXRlcnRpYXJ5LWNvbG9yKX07XG4gIC0tI3skcHJlZml4fXRlcnRpYXJ5LWJnOiAjeyRib2R5LXRlcnRpYXJ5LWJnfTtcbiAgLS0jeyRwcmVmaXh9dGVydGlhcnktYmctcmdiOiAje3RvLXJnYigkYm9keS10ZXJ0aWFyeS1iZyl9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHJvb3QtYm9keS12YXJpYWJsZXNcblxuICAtLSN7JHByZWZpeH1oZWFkaW5nLWNvbG9yOiAjeyRoZWFkaW5ncy1jb2xvcn07XG5cbiAgLS0jeyRwcmVmaXh9bGluay1jb2xvcjogI3skbGluay1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpbmstY29sb3ItcmdiOiAje3RvLXJnYigkbGluay1jb2xvcil9O1xuICAtLSN7JHByZWZpeH1saW5rLWRlY29yYXRpb246ICN7JGxpbmstZGVjb3JhdGlvbn07XG5cbiAgLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcjogI3skbGluay1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3ItcmdiOiAje3RvLXJnYigkbGluay1ob3Zlci1jb2xvcil9O1xuXG4gIEBpZiAkbGluay1ob3Zlci1kZWNvcmF0aW9uICE9IG51bGwge1xuICAgIC0tI3skcHJlZml4fWxpbmstaG92ZXItZGVjb3JhdGlvbjogI3skbGluay1ob3Zlci1kZWNvcmF0aW9ufTtcbiAgfVxuXG4gIC0tI3skcHJlZml4fWNvZGUtY29sb3I6ICN7JGNvZGUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1oaWdobGlnaHQtY29sb3I6ICN7JG1hcmstY29sb3J9O1xuICAtLSN7JHByZWZpeH1oaWdobGlnaHQtYmc6ICN7JG1hcmstYmd9O1xuXG4gIC8vIHNjc3MtZG9jcy1zdGFydCByb290LWJvcmRlci12YXJcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoOiAjeyRib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1ib3JkZXItc3R5bGU6ICN7JGJvcmRlci1zdHlsZX07XG4gIC0tI3skcHJlZml4fWJvcmRlci1jb2xvcjogI3skYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50OiAjeyRib3JkZXItY29sb3ItdHJhbnNsdWNlbnR9O1xuXG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXM6ICN7JGJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXNtOiAjeyRib3JkZXItcmFkaXVzLXNtfTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1sZzogI3skYm9yZGVyLXJhZGl1cy1sZ307XG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMteGw6ICN7JGJvcmRlci1yYWRpdXMteGx9O1xuICAtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXh4bDogI3skYm9yZGVyLXJhZGl1cy14eGx9O1xuICAtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLTJ4bDogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMteHhsKTsgLy8gRGVwcmVjYXRlZCBpbiB2NS4zLjAgZm9yIGNvbnNpc3RlbmN5XG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtcGlsbDogI3skYm9yZGVyLXJhZGl1cy1waWxsfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCByb290LWJvcmRlci12YXJcblxuICAtLSN7JHByZWZpeH1ib3gtc2hhZG93OiAjeyRib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1zbTogI3skYm94LXNoYWRvdy1zbX07XG4gIC0tI3skcHJlZml4fWJveC1zaGFkb3ctbGc6ICN7JGJveC1zaGFkb3ctbGd9O1xuICAtLSN7JHByZWZpeH1ib3gtc2hhZG93LWluc2V0OiAjeyRib3gtc2hhZG93LWluc2V0fTtcblxuICAvLyBGb2N1cyBzdHlsZXNcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHJvb3QtZm9jdXMtdmFyaWFibGVzXG4gIC0tI3skcHJlZml4fWZvY3VzLXJpbmctd2lkdGg6ICN7JGZvY3VzLXJpbmctd2lkdGh9O1xuICAtLSN7JHByZWZpeH1mb2N1cy1yaW5nLW9wYWNpdHk6ICN7JGZvY3VzLXJpbmctb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fWZvY3VzLXJpbmctY29sb3I6ICN7JGZvY3VzLXJpbmctY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHJvb3QtZm9jdXMtdmFyaWFibGVzXG5cbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHJvb3QtZm9ybS12YWxpZGF0aW9uLXZhcmlhYmxlc1xuICAtLSN7JHByZWZpeH1mb3JtLXZhbGlkLWNvbG9yOiAjeyRmb3JtLXZhbGlkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Zm9ybS12YWxpZC1ib3JkZXItY29sb3I6ICN7JGZvcm0tdmFsaWQtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Zm9ybS1pbnZhbGlkLWNvbG9yOiAjeyRmb3JtLWludmFsaWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yOiAjeyRmb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCByb290LWZvcm0tdmFsaWRhdGlvbi12YXJpYWJsZXNcbn1cblxuQGlmICRlbmFibGUtZGFyay1tb2RlIHtcbiAgQGluY2x1ZGUgY29sb3ItbW9kZShkYXJrLCB0cnVlKSB7XG4gICAgY29sb3Itc2NoZW1lOiBkYXJrO1xuXG4gICAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHJvb3QtZGFyay1tb2RlLXZhcnNcbiAgICAtLSN7JHByZWZpeH1ib2R5LWNvbG9yOiAjeyRib2R5LWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWJvZHktY29sb3ItcmdiOiAje3RvLXJnYigkYm9keS1jb2xvci1kYXJrKX07XG4gICAgLS0jeyRwcmVmaXh9Ym9keS1iZzogI3skYm9keS1iZy1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1ib2R5LWJnLXJnYjogI3t0by1yZ2IoJGJvZHktYmctZGFyayl9O1xuXG4gICAgLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3I6ICN7JGJvZHktZW1waGFzaXMtY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiOiAje3RvLXJnYigkYm9keS1lbXBoYXNpcy1jb2xvci1kYXJrKX07XG5cbiAgICAtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3I6ICN7JGJvZHktc2Vjb25kYXJ5LWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LXNlY29uZGFyeS1jb2xvci1kYXJrKX07XG4gICAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnOiAjeyRib2R5LXNlY29uZGFyeS1iZy1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1zZWNvbmRhcnktYmctcmdiOiAje3RvLXJnYigkYm9keS1zZWNvbmRhcnktYmctZGFyayl9O1xuXG4gICAgLS0jeyRwcmVmaXh9dGVydGlhcnktY29sb3I6ICN7JGJvZHktdGVydGlhcnktY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9dGVydGlhcnktY29sb3ItcmdiOiAje3RvLXJnYigkYm9keS10ZXJ0aWFyeS1jb2xvci1kYXJrKX07XG4gICAgLS0jeyRwcmVmaXh9dGVydGlhcnktYmc6ICN7JGJvZHktdGVydGlhcnktYmctZGFya307XG4gICAgLS0jeyRwcmVmaXh9dGVydGlhcnktYmctcmdiOiAje3RvLXJnYigkYm9keS10ZXJ0aWFyeS1iZy1kYXJrKX07XG5cbiAgICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzLXRleHQtZGFyayB7XG4gICAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn0tdGV4dC1lbXBoYXNpczogI3skdmFsdWV9O1xuICAgIH1cblxuICAgIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtYmctc3VidGxlLWRhcmsge1xuICAgICAgLS0jeyRwcmVmaXh9I3skY29sb3J9LWJnLXN1YnRsZTogI3skdmFsdWV9O1xuICAgIH1cblxuICAgIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtYm9yZGVyLXN1YnRsZS1kYXJrIHtcbiAgICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfS1ib3JkZXItc3VidGxlOiAjeyR2YWx1ZX07XG4gICAgfVxuXG4gICAgLS0jeyRwcmVmaXh9aGVhZGluZy1jb2xvcjogI3skaGVhZGluZ3MtY29sb3ItZGFya307XG5cbiAgICAtLSN7JHByZWZpeH1saW5rLWNvbG9yOiAjeyRsaW5rLWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3I6ICN7JGxpbmstaG92ZXItY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9bGluay1jb2xvci1yZ2I6ICN7dG8tcmdiKCRsaW5rLWNvbG9yLWRhcmspfTtcbiAgICAtLSN7JHByZWZpeH1saW5rLWhvdmVyLWNvbG9yLXJnYjogI3t0by1yZ2IoJGxpbmstaG92ZXItY29sb3ItZGFyayl9O1xuXG4gICAgLS0jeyRwcmVmaXh9Y29kZS1jb2xvcjogI3skY29kZS1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1oaWdobGlnaHQtY29sb3I6ICN7JG1hcmstY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9aGlnaGxpZ2h0LWJnOiAjeyRtYXJrLWJnLWRhcmt9O1xuXG4gICAgLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yOiAjeyRib3JkZXItY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50OiAjeyRib3JkZXItY29sb3ItdHJhbnNsdWNlbnQtZGFya307XG5cbiAgICAtLSN7JHByZWZpeH1mb3JtLXZhbGlkLWNvbG9yOiAjeyRmb3JtLXZhbGlkLWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWZvcm0tdmFsaWQtYm9yZGVyLWNvbG9yOiAjeyRmb3JtLXZhbGlkLWJvcmRlci1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtY29sb3I6ICN7JGZvcm0taW52YWxpZC1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yOiAjeyRmb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yLWRhcmt9O1xuICAgIC8vIHNjc3MtZG9jcy1lbmQgcm9vdC1kYXJrLW1vZGUtdmFyc1xuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzY3NzL2RpbWVuc2lvbi1uby1ub24tbnVtZXJpYy12YWx1ZXNcblxuLy8gU0NTUyBSRlMgbWl4aW5cbi8vXG4vLyBBdXRvbWF0ZWQgcmVzcG9uc2l2ZSB2YWx1ZXMgZm9yIGZvbnQgc2l6ZXMsIHBhZGRpbmdzLCBtYXJnaW5zIGFuZCBtdWNoIG1vcmVcbi8vXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9ibG9iL21haW4vTElDRU5TRSlcblxuLy8gQ29uZmlndXJhdGlvblxuXG4vLyBCYXNlIHZhbHVlXG4kcmZzLWJhc2UtdmFsdWU6IDEuMjVyZW0gIWRlZmF1bHQ7XG4kcmZzLXVuaXQ6IHJlbSAhZGVmYXVsdDtcblxuQGlmICRyZnMtdW5pdCAhPSByZW0gYW5kICRyZnMtdW5pdCAhPSBweCB7XG4gIEBlcnJvciBcImAjeyRyZnMtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtdW5pdC4gVXNlIGBweGAgb3IgYHJlbWAuXCI7XG59XG5cbi8vIEJyZWFrcG9pbnQgYXQgd2hlcmUgdmFsdWVzIHN0YXJ0IGRlY3JlYXNpbmcgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsZXJcbiRyZnMtYnJlYWtwb2ludDogMTIwMHB4ICFkZWZhdWx0O1xuJHJmcy1icmVha3BvaW50LXVuaXQ6IHB4ICFkZWZhdWx0O1xuXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gcHggYW5kICRyZnMtYnJlYWtwb2ludC11bml0ICE9IGVtIGFuZCAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSByZW0ge1xuICBAZXJyb3IgXCJgI3skcmZzLWJyZWFrcG9pbnQtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtYnJlYWtwb2ludC11bml0LiBVc2UgYHB4YCwgYGVtYCBvciBgcmVtYC5cIjtcbn1cblxuLy8gUmVzaXplIHZhbHVlcyBiYXNlZCBvbiBzY3JlZW4gaGVpZ2h0IGFuZCB3aWR0aFxuJHJmcy10d28tZGltZW5zaW9uYWw6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBGYWN0b3Igb2YgZGVjcmVhc2VcbiRyZnMtZmFjdG9yOiAxMCAhZGVmYXVsdDtcblxuQGlmIHR5cGUtb2YoJHJmcy1mYWN0b3IpICE9IG51bWJlciBvciAkcmZzLWZhY3RvciA8PSAxIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1mYWN0b3J9YCBpcyBub3QgYSB2YWxpZCAgJHJmcy1mYWN0b3IsIGl0IG11c3QgYmUgZ3JlYXRlciB0aGFuIDEuXCI7XG59XG5cbi8vIE1vZGUuIFBvc3NpYmlsaXRpZXM6IFwibWluLW1lZGlhLXF1ZXJ5XCIsIFwibWF4LW1lZGlhLXF1ZXJ5XCJcbiRyZnMtbW9kZTogbWluLW1lZGlhLXF1ZXJ5ICFkZWZhdWx0O1xuXG4vLyBHZW5lcmF0ZSBlbmFibGUgb3IgZGlzYWJsZSBjbGFzc2VzLiBQb3NzaWJpbGl0aWVzOiBmYWxzZSwgXCJlbmFibGVcIiBvciBcImRpc2FibGVcIlxuJHJmcy1jbGFzczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIDEgcmVtID0gJHJmcy1yZW0tdmFsdWUgcHhcbiRyZnMtcmVtLXZhbHVlOiAxNiAhZGVmYXVsdDtcblxuLy8gU2FmYXJpIGlmcmFtZSByZXNpemUgYnVnOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvaXNzdWVzLzE0XG4kcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXg6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBEaXNhYmxlIFJGUyBieSBzZXR0aW5nICRlbmFibGUtcmZzIHRvIGZhbHNlXG4kZW5hYmxlLXJmczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gQ2FjaGUgJHJmcy1iYXNlLXZhbHVlIHVuaXRcbiRyZnMtYmFzZS12YWx1ZS11bml0OiB1bml0KCRyZnMtYmFzZS12YWx1ZSk7XG5cbkBmdW5jdGlvbiBkaXZpZGUoJGRpdmlkZW5kLCAkZGl2aXNvciwgJHByZWNpc2lvbjogMTApIHtcbiAgJHNpZ246IGlmKCRkaXZpZGVuZCA+IDAgYW5kICRkaXZpc29yID4gMCBvciAkZGl2aWRlbmQgPCAwIGFuZCAkZGl2aXNvciA8IDAsIDEsIC0xKTtcbiAgJGRpdmlkZW5kOiBhYnMoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3I6IGFicygkZGl2aXNvcik7XG4gIEBpZiAkZGl2aWRlbmQgPT0gMCB7XG4gICAgQHJldHVybiAwO1xuICB9XG4gIEBpZiAkZGl2aXNvciA9PSAwIHtcbiAgICBAZXJyb3IgXCJDYW5ub3QgZGl2aWRlIGJ5IDBcIjtcbiAgfVxuICAkcmVtYWluZGVyOiAkZGl2aWRlbmQ7XG4gICRyZXN1bHQ6IDA7XG4gICRmYWN0b3I6IDEwO1xuICBAd2hpbGUgKCRyZW1haW5kZXIgPiAwIGFuZCAkcHJlY2lzaW9uID49IDApIHtcbiAgICAkcXVvdGllbnQ6IDA7XG4gICAgQHdoaWxlICgkcmVtYWluZGVyID49ICRkaXZpc29yKSB7XG4gICAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyIC0gJGRpdmlzb3I7XG4gICAgICAkcXVvdGllbnQ6ICRxdW90aWVudCArIDE7XG4gICAgfVxuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArICRxdW90aWVudDtcbiAgICAkZmFjdG9yOiAkZmFjdG9yICogLjE7XG4gICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAqIDEwO1xuICAgICRwcmVjaXNpb246ICRwcmVjaXNpb24gLSAxO1xuICAgIEBpZiAoJHByZWNpc2lvbiA8IDAgYW5kICRyZW1haW5kZXIgPj0gJGRpdmlzb3IgKiA1KSB7XG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICsgMTtcbiAgICB9XG4gIH1cbiAgJHJlc3VsdDogJHJlc3VsdCAqICRmYWN0b3IgKiAkc2lnbjtcbiAgJGRpdmlkZW5kLXVuaXQ6IHVuaXQoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3ItdW5pdDogdW5pdCgkZGl2aXNvcik7XG4gICR1bml0LW1hcDogKFxuICAgIFwicHhcIjogMXB4LFxuICAgIFwicmVtXCI6IDFyZW0sXG4gICAgXCJlbVwiOiAxZW0sXG4gICAgXCIlXCI6IDElXG4gICk7XG4gIEBpZiAoJGRpdmlkZW5kLXVuaXQgIT0gJGRpdmlzb3ItdW5pdCBhbmQgbWFwLWhhcy1rZXkoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCkpIHtcbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogbWFwLWdldCgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KTtcbiAgfVxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbi8vIFJlbW92ZSBweC11bml0IGZyb20gJHJmcy1iYXNlLXZhbHVlIGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJhc2UtdmFsdWUtdW5pdCA9PSBweCB7XG4gICRyZnMtYmFzZS12YWx1ZTogZGl2aWRlKCRyZnMtYmFzZS12YWx1ZSwgJHJmcy1iYXNlLXZhbHVlICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1iYXNlLXZhbHVlLXVuaXQgPT0gcmVtIHtcbiAgJHJmcy1iYXNlLXZhbHVlOiBkaXZpZGUoJHJmcy1iYXNlLXZhbHVlLCBkaXZpZGUoJHJmcy1iYXNlLXZhbHVlICogMCArIDEsICRyZnMtcmVtLXZhbHVlKSk7XG59XG5cbi8vIENhY2hlICRyZnMtYnJlYWtwb2ludCB1bml0IHRvIHByZXZlbnQgbXVsdGlwbGUgY2FsbHNcbiRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlOiB1bml0KCRyZnMtYnJlYWtwb2ludCk7XG5cbi8vIFJlbW92ZSB1bml0IGZyb20gJHJmcy1icmVha3BvaW50IGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBweCB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1icmVha3BvaW50ICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gcmVtIG9yICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwiZW1cIiB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgZGl2aWRlKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxLCAkcmZzLXJlbS12YWx1ZSkpO1xufVxuXG4vLyBDYWxjdWxhdGUgdGhlIG1lZGlhIHF1ZXJ5IHZhbHVlXG4kcmZzLW1xLXZhbHVlOiBpZigkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSBweCwgI3skcmZzLWJyZWFrcG9pbnR9cHgsICN7ZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1yZW0tdmFsdWUpfSN7JHJmcy1icmVha3BvaW50LXVuaXR9KTtcbiRyZnMtbXEtcHJvcGVydHktd2lkdGg6IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksIG1heC13aWR0aCwgbWluLXdpZHRoKTtcbiRyZnMtbXEtcHJvcGVydHktaGVpZ2h0OiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCBtYXgtaGVpZ2h0LCBtaW4taGVpZ2h0KTtcblxuLy8gSW50ZXJuYWwgbWl4aW4gdXNlZCB0byBkZXRlcm1pbmUgd2hpY2ggbWVkaWEgcXVlcnkgbmVlZHMgdG8gYmUgdXNlZFxuQG1peGluIF9yZnMtbWVkaWEtcXVlcnkge1xuICBAaWYgJHJmcy10d28tZGltZW5zaW9uYWwge1xuICAgIEBpZiAkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5IHtcbiAgICAgIEBtZWRpYSAoI3skcmZzLW1xLXByb3BlcnR5LXdpZHRofTogI3skcmZzLW1xLXZhbHVlfSksICgjeyRyZnMtbXEtcHJvcGVydHktaGVpZ2h0fTogI3skcmZzLW1xLXZhbHVlfSkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSBhbmQgKCN7JHJmcy1tcS1wcm9wZXJ0eS1oZWlnaHR9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gSW50ZXJuYWwgbWl4aW4gdGhhdCBhZGRzIGRpc2FibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtcnVsZSB7XG4gIEBpZiAkcmZzLWNsYXNzID09IGRpc2FibGUgYW5kICRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnkge1xuICAgIC8vIEFkZGluZyBhbiBleHRyYSBjbGFzcyBpbmNyZWFzZXMgc3BlY2lmaWNpdHksIHdoaWNoIHByZXZlbnRzIHRoZSBtZWRpYSBxdWVyeSB0byBvdmVycmlkZSB0aGUgcHJvcGVydHlcbiAgICAmLFxuICAgIC5kaXNhYmxlLXJmcyAmLFxuICAgICYuZGlzYWJsZS1yZnMge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRyZnMtY2xhc3MgPT0gZW5hYmxlIGFuZCAkcmZzLW1vZGUgPT0gbWluLW1lZGlhLXF1ZXJ5IHtcbiAgICAuZW5hYmxlLXJmcyAmLFxuICAgICYuZW5hYmxlLXJmcyB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIEludGVybmFsIG1peGluIHRoYXQgYWRkcyBlbmFibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtbWVkaWEtcXVlcnktcnVsZSB7XG5cbiAgQGlmICRyZnMtY2xhc3MgPT0gZW5hYmxlIHtcbiAgICBAaWYgJHJmcy1tb2RlID09IG1pbi1tZWRpYS1xdWVyeSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBfcmZzLW1lZGlhLXF1ZXJ5ICgpIHtcbiAgICAgIC5lbmFibGUtcmZzICYsXG4gICAgICAmLmVuYWJsZS1yZnMge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpZiAkcmZzLWNsYXNzID09IGRpc2FibGUgYW5kICRyZnMtbW9kZSA9PSBtaW4tbWVkaWEtcXVlcnkge1xuICAgICAgLmRpc2FibGUtcmZzICYsXG4gICAgICAmLmRpc2FibGUtcmZzIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnkgKCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byBnZXQgdGhlIGZvcm1hdHRlZCBub24tcmVzcG9uc2l2ZSB2YWx1ZVxuQGZ1bmN0aW9uIHJmcy12YWx1ZSgkdmFsdWVzKSB7XG4gIC8vIENvbnZlcnQgdG8gbGlzdFxuICAkdmFsdWVzOiBpZih0eXBlLW9mKCR2YWx1ZXMpICE9IGxpc3QsICgkdmFsdWVzLCksICR2YWx1ZXMpO1xuXG4gICR2YWw6IFwiXCI7XG5cbiAgLy8gTG9vcCBvdmVyIGVhY2ggdmFsdWUgYW5kIGNhbGN1bGF0ZSB2YWx1ZVxuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgQGlmICR2YWx1ZSA9PSAwIHtcbiAgICAgICR2YWw6ICR2YWwgKyBcIiAwXCI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIENhY2hlICR2YWx1ZSB1bml0XG4gICAgICAkdW5pdDogaWYodHlwZS1vZigkdmFsdWUpID09IFwibnVtYmVyXCIsIHVuaXQoJHZhbHVlKSwgZmFsc2UpO1xuXG4gICAgICBAaWYgJHVuaXQgPT0gcHgge1xuICAgICAgICAvLyBDb252ZXJ0IHRvIHJlbSBpZiBuZWVkZWRcbiAgICAgICAgJHZhbDogJHZhbCArIFwiIFwiICsgaWYoJHJmcy11bml0ID09IHJlbSwgI3tkaXZpZGUoJHZhbHVlLCAkdmFsdWUgKiAwICsgJHJmcy1yZW0tdmFsdWUpfXJlbSwgJHZhbHVlKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICR1bml0ID09IHJlbSB7XG4gICAgICAgIC8vIENvbnZlcnQgdG8gcHggaWYgbmVlZGVkXG4gICAgICAgICR2YWw6ICR2YWwgKyBcIiBcIiArIGlmKCRyZnMtdW5pdCA9PSBweCwgI3tkaXZpZGUoJHZhbHVlLCAkdmFsdWUgKiAwICsgMSkgKiAkcmZzLXJlbS12YWx1ZX1weCwgJHZhbHVlKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBJZiAkdmFsdWUgaXNuJ3QgYSBudW1iZXIgKGxpa2UgaW5oZXJpdCkgb3IgJHZhbHVlIGhhcyBhIHVuaXQgKG5vdCBweCBvciByZW0sIGxpa2UgMS41ZW0pIG9yICQgaXMgMCwganVzdCBwcmludCB0aGUgdmFsdWVcbiAgICAgICAgJHZhbDogJHZhbCArIFwiIFwiICsgJHZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlbW92ZSBmaXJzdCBzcGFjZVxuICBAcmV0dXJuIHVucXVvdGUoc3RyLXNsaWNlKCR2YWwsIDIpKTtcbn1cblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIGdldCB0aGUgcmVzcG9uc2l2ZSB2YWx1ZSBjYWxjdWxhdGVkIGJ5IFJGU1xuQGZ1bmN0aW9uIHJmcy1mbHVpZC12YWx1ZSgkdmFsdWVzKSB7XG4gIC8vIENvbnZlcnQgdG8gbGlzdFxuICAkdmFsdWVzOiBpZih0eXBlLW9mKCR2YWx1ZXMpICE9IGxpc3QsICgkdmFsdWVzLCksICR2YWx1ZXMpO1xuXG4gICR2YWw6IFwiXCI7XG5cbiAgLy8gTG9vcCBvdmVyIGVhY2ggdmFsdWUgYW5kIGNhbGN1bGF0ZSB2YWx1ZVxuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgQGlmICR2YWx1ZSA9PSAwIHtcbiAgICAgICR2YWw6ICR2YWwgKyBcIiAwXCI7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBDYWNoZSAkdmFsdWUgdW5pdFxuICAgICAgJHVuaXQ6IGlmKHR5cGUtb2YoJHZhbHVlKSA9PSBcIm51bWJlclwiLCB1bml0KCR2YWx1ZSksIGZhbHNlKTtcblxuICAgICAgLy8gSWYgJHZhbHVlIGlzbid0IGEgbnVtYmVyIChsaWtlIGluaGVyaXQpIG9yICR2YWx1ZSBoYXMgYSB1bml0IChub3QgcHggb3IgcmVtLCBsaWtlIDEuNWVtKSBvciAkIGlzIDAsIGp1c3QgcHJpbnQgdGhlIHZhbHVlXG4gICAgICBAaWYgbm90ICR1bml0IG9yICR1bml0ICE9IHB4IGFuZCAkdW5pdCAhPSByZW0ge1xuICAgICAgICAkdmFsOiAkdmFsICsgXCIgXCIgKyAkdmFsdWU7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gUmVtb3ZlIHVuaXQgZnJvbSAkdmFsdWUgZm9yIGNhbGN1bGF0aW9uc1xuICAgICAgICAkdmFsdWU6IGRpdmlkZSgkdmFsdWUsICR2YWx1ZSAqIDAgKyBpZigkdW5pdCA9PSBweCwgMSwgZGl2aWRlKDEsICRyZnMtcmVtLXZhbHVlKSkpO1xuXG4gICAgICAgIC8vIE9ubHkgYWRkIHRoZSBtZWRpYSBxdWVyeSBpZiB0aGUgdmFsdWUgaXMgZ3JlYXRlciB0aGFuIHRoZSBtaW5pbXVtIHZhbHVlXG4gICAgICAgIEBpZiBhYnMoJHZhbHVlKSA8PSAkcmZzLWJhc2UtdmFsdWUgb3Igbm90ICRlbmFibGUtcmZzIHtcbiAgICAgICAgICAkdmFsOiAkdmFsICsgXCIgXCIgKyBpZigkcmZzLXVuaXQgPT0gcmVtLCAje2RpdmlkZSgkdmFsdWUsICRyZnMtcmVtLXZhbHVlKX1yZW0sICN7JHZhbHVlfXB4KTtcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgLy8gQ2FsY3VsYXRlIHRoZSBtaW5pbXVtIHZhbHVlXG4gICAgICAgICAgJHZhbHVlLW1pbjogJHJmcy1iYXNlLXZhbHVlICsgZGl2aWRlKGFicygkdmFsdWUpIC0gJHJmcy1iYXNlLXZhbHVlLCAkcmZzLWZhY3Rvcik7XG5cbiAgICAgICAgICAvLyBDYWxjdWxhdGUgZGlmZmVyZW5jZSBiZXR3ZWVuICR2YWx1ZSBhbmQgdGhlIG1pbmltdW0gdmFsdWVcbiAgICAgICAgICAkdmFsdWUtZGlmZjogYWJzKCR2YWx1ZSkgLSAkdmFsdWUtbWluO1xuXG4gICAgICAgICAgLy8gQmFzZSB2YWx1ZSBmb3JtYXR0aW5nXG4gICAgICAgICAgJG1pbi13aWR0aDogaWYoJHJmcy11bml0ID09IHJlbSwgI3tkaXZpZGUoJHZhbHVlLW1pbiwgJHJmcy1yZW0tdmFsdWUpfXJlbSwgI3skdmFsdWUtbWlufXB4KTtcblxuICAgICAgICAgIC8vIFVzZSBuZWdhdGl2ZSB2YWx1ZSBpZiBuZWVkZWRcbiAgICAgICAgICAkbWluLXdpZHRoOiBpZigkdmFsdWUgPCAwLCAtJG1pbi13aWR0aCwgJG1pbi13aWR0aCk7XG5cbiAgICAgICAgICAvLyBVc2UgYHZtaW5gIGlmIHR3by1kaW1lbnNpb25hbCBpcyBlbmFibGVkXG4gICAgICAgICAgJHZhcmlhYmxlLXVuaXQ6IGlmKCRyZnMtdHdvLWRpbWVuc2lvbmFsLCB2bWluLCB2dyk7XG5cbiAgICAgICAgICAvLyBDYWxjdWxhdGUgdGhlIHZhcmlhYmxlIHdpZHRoIGJldHdlZW4gMCBhbmQgJHJmcy1icmVha3BvaW50XG4gICAgICAgICAgJHZhcmlhYmxlLXdpZHRoOiAje2RpdmlkZSgkdmFsdWUtZGlmZiAqIDEwMCwgJHJmcy1icmVha3BvaW50KX0jeyR2YXJpYWJsZS11bml0fTtcblxuICAgICAgICAgIC8vIFJldHVybiB0aGUgY2FsY3VsYXRlZCB2YWx1ZVxuICAgICAgICAgICR2YWw6ICR2YWwgKyBcIiBjYWxjKFwiICsgJG1pbi13aWR0aCArIGlmKCR2YWx1ZSA8IDAsIFwiIC0gXCIsIFwiICsgXCIpICsgJHZhcmlhYmxlLXdpZHRoICsgXCIpXCI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBSZW1vdmUgZmlyc3Qgc3BhY2VcbiAgQHJldHVybiB1bnF1b3RlKHN0ci1zbGljZSgkdmFsLCAyKSk7XG59XG5cbi8vIFJGUyBtaXhpblxuQG1peGluIHJmcygkdmFsdWVzLCAkcHJvcGVydHk6IGZvbnQtc2l6ZSkge1xuICBAaWYgJHZhbHVlcyAhPSBudWxsIHtcbiAgICAkdmFsOiByZnMtdmFsdWUoJHZhbHVlcyk7XG4gICAgJGZsdWlkLXZhbDogcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZXMpO1xuXG4gICAgLy8gRG8gbm90IHByaW50IHRoZSBtZWRpYSBxdWVyeSBpZiByZXNwb25zaXZlICYgbm9uLXJlc3BvbnNpdmUgdmFsdWVzIGFyZSB0aGUgc2FtZVxuICAgIEBpZiAkdmFsID09ICRmbHVpZC12YWwge1xuICAgICAgI3skcHJvcGVydHl9OiAkdmFsO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBfcmZzLXJ1bGUgKCkge1xuICAgICAgICAjeyRwcm9wZXJ0eX06IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksICR2YWwsICRmbHVpZC12YWwpO1xuXG4gICAgICAgIC8vIEluY2x1ZGUgc2FmYXJpIGlmcmFtZSByZXNpemUgZml4IGlmIG5lZWRlZFxuICAgICAgICBtaW4td2lkdGg6IGlmKCRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeCwgKDAgKiAxdncpLCBudWxsKTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgX3Jmcy1tZWRpYS1xdWVyeS1ydWxlICgpIHtcbiAgICAgICAgI3skcHJvcGVydHl9OiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCAkZmx1aWQtdmFsLCAkdmFsKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gU2hvcnRoYW5kIGhlbHBlciBtaXhpbnNcbkBtaXhpbiBmb250LXNpemUoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUpO1xufVxuXG5AbWl4aW4gcGFkZGluZygkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZyk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLXRvcCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy10b3ApO1xufVxuXG5AbWl4aW4gcGFkZGluZy1yaWdodCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1yaWdodCk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLWJvdHRvbSgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1ib3R0b20pO1xufVxuXG5AbWl4aW4gcGFkZGluZy1sZWZ0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nLWxlZnQpO1xufVxuXG5AbWl4aW4gbWFyZ2luKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4pO1xufVxuXG5AbWl4aW4gbWFyZ2luLXRvcCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luLXRvcCk7XG59XG5cbkBtaXhpbiBtYXJnaW4tcmlnaHQoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbi1yaWdodCk7XG59XG5cbkBtaXhpbiBtYXJnaW4tYm90dG9tKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tYm90dG9tKTtcbn1cblxuQG1peGluIG1hcmdpbi1sZWZ0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tbGVmdCk7XG59XG4iLCIvLyBDb250YWluZXIgd2lkdGhzXG4vL1xuLy8gU2V0IHRoZSBjb250YWluZXIgd2lkdGgsIGFuZCBvdmVycmlkZSBpdCBmb3IgZml4ZWQgbmF2YmFycyBpbiBtZWRpYSBxdWVyaWVzLlxuXG5AaWYgJGVuYWJsZS1jb250YWluZXItY2xhc3NlcyB7XG4gIC8vIFNpbmdsZSBjb250YWluZXIgY2xhc3Mgd2l0aCBicmVha3BvaW50IG1heC13aWR0aHNcbiAgLmNvbnRhaW5lcixcbiAgLy8gMTAwJSB3aWRlIGNvbnRhaW5lciBhdCBhbGwgYnJlYWtwb2ludHNcbiAgLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgQGluY2x1ZGUgbWFrZS1jb250YWluZXIoKTtcbiAgfVxuXG4gIC8vIFJlc3BvbnNpdmUgY29udGFpbmVycyB0aGF0IGFyZSAxMDAlIHdpZGUgdW50aWwgYSBicmVha3BvaW50XG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xuICAgIC5jb250YWluZXItI3skYnJlYWtwb2ludH0ge1xuICAgICAgQGV4dGVuZCAuY29udGFpbmVyLWZsdWlkO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgICAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH0ge1xuICAgICAgICBtYXgtd2lkdGg6ICRjb250YWluZXItbWF4LXdpZHRoO1xuICAgICAgfVxuXG4gICAgICAvLyBFeHRlbmQgZWFjaCBicmVha3BvaW50IHdoaWNoIGlzIHNtYWxsZXIgb3IgZXF1YWwgdG8gdGhlIGN1cnJlbnQgYnJlYWtwb2ludFxuICAgICAgJGV4dGVuZC1icmVha3BvaW50OiB0cnVlO1xuXG4gICAgICBAZWFjaCAkbmFtZSwgJHdpZHRoIGluICRncmlkLWJyZWFrcG9pbnRzIHtcbiAgICAgICAgQGlmICgkZXh0ZW5kLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRuYW1lLCAkZ3JpZC1icmVha3BvaW50cyl9IHtcbiAgICAgICAgICAgIEBleHRlbmQgJXJlc3BvbnNpdmUtY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIE9uY2UgdGhlIGN1cnJlbnQgYnJlYWtwb2ludCBpcyByZWFjaGVkLCBzdG9wIGV4dGVuZGluZ1xuICAgICAgICAgIEBpZiAoJGJyZWFrcG9pbnQgPT0gJG5hbWUpIHtcbiAgICAgICAgICAgICRleHRlbmQtYnJlYWtwb2ludDogZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBDb250YWluZXIgbWl4aW5zXG5cbkBtaXhpbiBtYWtlLWNvbnRhaW5lcigkZ3V0dGVyOiAkY29udGFpbmVyLXBhZGRpbmcteCkge1xuICAtLSN7JHByZWZpeH1ndXR0ZXIteDogI3skZ3V0dGVyfTtcbiAgLS0jeyRwcmVmaXh9Z3V0dGVyLXk6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkgKiAuNSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXgpICogLjUpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuIiwiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cbi8vXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XG4vL1xuLy8gICAgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweClcbi8vXG4vLyBUaGUgbWFwIGRlZmluZWQgaW4gdGhlIGAkZ3JpZC1icmVha3BvaW50c2AgZ2xvYmFsIHZhcmlhYmxlIGlzIHVzZWQgYXMgdGhlIGAkYnJlYWtwb2ludHNgIGFyZ3VtZW50IGJ5IGRlZmF1bHQuXG5cbi8vIE5hbWUgb2YgdGhlIG5leHQgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGxhc3QgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwgeHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKSkge1xuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcbiAgQGlmIG5vdCAkbiB7XG4gICAgQGVycm9yIFwiYnJlYWtwb2ludCBgI3skbmFtZX1gIG5vdCBmb3VuZCBpbiBgI3skYnJlYWtwb2ludHN9YFwiO1xuICB9XG4gIEByZXR1cm4gaWYoJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xufVxuXG4vLyBNaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBzbWFsbGVzdCAoZmlyc3QpIGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1taW4oc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC5cbi8vIFRoZSBtYXhpbXVtIHZhbHVlIGlzIHJlZHVjZWQgYnkgMC4wMnB4IHRvIHdvcmsgYXJvdW5kIHRoZSBsaW1pdGF0aW9ucyBvZlxuLy8gYG1pbi1gIGFuZCBgbWF4LWAgcHJlZml4ZXMgYW5kIHZpZXdwb3J0cyB3aXRoIGZyYWN0aW9uYWwgd2lkdGhzLlxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9tZWRpYXF1ZXJpZXMtNC8jbXEtbWluLW1heFxuLy8gVXNlcyAwLjAycHggcmF0aGVyIHRoYW4gMC4wMXB4IHRvIHdvcmsgYXJvdW5kIGEgY3VycmVudCByb3VuZGluZyBidWcgaW4gU2FmYXJpLlxuLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzgyNjFcbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1heChtZCwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICA3NjcuOThweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1heCBhbmQgJG1heCA+IDAsICRtYXggLSAuMDIsIG51bGwpO1xufVxuXG4vLyBSZXR1cm5zIGEgYmxhbmsgc3RyaW5nIGlmIHNtYWxsZXN0IGJyZWFrcG9pbnQsIG90aGVyd2lzZSByZXR1cm5zIHRoZSBuYW1lIHdpdGggYSBkYXNoIGluIGZyb250LlxuLy8gVXNlZnVsIGZvciBtYWtpbmcgcmVzcG9uc2l2ZSB1dGlsaXRpZXMuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeCh4cywgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgXCItc21cIlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQHJldHVybiBpZihicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKSA9PSBudWxsLCBcIlwiLCBcIi0jeyRuYW1lfVwiKTtcbn1cblxuLy8gTWVkaWEgb2YgYXQgbGVhc3QgdGhlIG1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCB3aWRlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1pbiB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgb2YgYXQgbW9zdCB0aGUgbWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIGxhcmdlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1heCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgdGhhdCBzcGFucyBtdWx0aXBsZSBicmVha3BvaW50IHdpZHRocy5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBiZXR3ZWVuIHRoZSBtaW4gYW5kIG1heCBicmVha3BvaW50c1xuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbigkbG93ZXIsICR1cHBlciwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbG93ZXIsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCR1cHBlciwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbG93ZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCR1cHBlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWVkaWEgYmV0d2VlbiB0aGUgYnJlYWtwb2ludCdzIG1pbmltdW0gYW5kIG1heGltdW0gd2lkdGhzLlxuLy8gTm8gbWluaW11bSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQsIGFuZCBubyBtYXhpbXVtIGZvciB0aGUgbGFyZ2VzdCBvbmUuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgb25seSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCwgbm90IHZpZXdwb3J0cyBhbnkgd2lkZXIgb3IgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1vbmx5KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46ICBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogIGJyZWFrcG9pbnQtbWF4KCRuZXh0LCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmV4dCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWVtcHR5LWxpbmUtYmVmb3JlXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBzY3NzL2RvdWJsZS1zbGFzaC1jb21tZW50LWVtcHR5LWxpbmUtYmVmb3JlXG5AdXNlICdzYXNzOm1hcCc7XG5AdXNlICcuLi8uLi9kZWZhdWx0L3Nhc3MvYXNnYXJkLXZhcmlhYmxlcycgYXMgYXNnYXJkLXZhcmlhYmxlcztcblxuLy8gYm9vdHN0cmFwIHZhcmlhYmxlc1xuLy8gbGF5b3V0XG4kZ3JpZC1icmVha3BvaW50czogbWFwLm1lcmdlKFxuICAgIGFzZ2FyZC12YXJpYWJsZXMuJGdyaWQtYnJlYWtwb2ludHMsXG4gICAgKFxuICAgICAgICBkZXNrdG9wOiAxNjUwcHgsXG4gICAgICAgIGZ1bGxoZDogMTkyMHB4LFxuICAgICAgICAyazogMjUwMHB4XG4gICAgKVxuKTtcblxuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiBtYXAubWVyZ2UoXG4gICAgYXNnYXJkLXZhcmlhYmxlcy4kY29udGFpbmVyLW1heC13aWR0aHMsXG4gICAgKFxuICAgICAgICBsZzogMTAyNHB4LFxuICAgICAgICB4bDogMTE0MHB4LFxuICAgICAgICB4eGw6IDE2ODVweFxuICAgIClcbik7XG5cbi8vIHNwYWNpbmdcbiRjb250YWluZXItcGFkZGluZy14OiAzcmVtO1xuJGNhbnZhcy1wYWRkaW5nLXk6IDRyZW07XG4kY2FudmFzLXBhZGRpbmcteS1tZDogNnJlbTtcbiRjYW52YXMtcGFkZGluZy15LXh4bDogN3JlbTtcblxuLy8gZm9udFxuJGZvbnQtc2l6ZS1yb290OiA2Mi41JTtcbiRmb250LXNpemUtYmFzZTogMS40cmVtO1xuJGxpbmUtaGVpZ2h0LWJhc2U6IDEuNjtcbiRmb250LWZhbWlseS1iYXNlOiAnSW50ZXInLCAnSW50ZXItZmFsbGJhY2snLCAnQXJpYWwnLCBzYW5zLXNlcmlmO1xuJGZvbnQtc2l6ZS1zbTogMS4ycmVtO1xuJGZvbnQtc2l6ZS1sZzogJGZvbnQtc2l6ZS1iYXNlICogMS4yNTtcbiRmb250LXNpemUtbGFyZ2VyOiAkZm9udC1zaXplLWJhc2UgKiAxLjU7IC8vICRoNC1mb250LXNpemU7XG4kZm9udC1zaXplLWxhcmdlc3Q6ICRmb250LXNpemUtYmFzZSAqIDI7IC8vICRoMi1mb250LXNpemU7XG5cbiRsZWdlbmQtZm9udC1zaXplOiAycmVtO1xuJGxlZ2VuZC1tYXJnaW4tYm90dG9tOiAycmVtO1xuJGxlZ2VuZC1mb250LXdlaWdodDogNzAwO1xuXG4vLyB0eXBvXG4kaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTogMWVtO1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiA3MDA7XG5cbi8vIGNvbG9yc1xuJHByaW1hcnk6ICMwMDA7XG4kcHJpbWFyeS1kYXJrOiAjMDAwO1xuJHByaW1hcnktbWlkOiAjZjRmNGY0O1xuJHByaW1hcnktbGlnaHQ6ICNmNGY0ZjQ7XG4kc2Vjb25kYXJ5OiAjZmY0MzM3O1xuJGxpZ2h0OiAjZmZmO1xuJGRhcms6ICMwMDA7XG5cbiRncmVlbjogIzA1ODgwMjtcbiRncmVlbi1kYXJrOiAjMTg4MDM4O1xuJGdyZWVuLXNwOiByZ2IoMywgMTgxLCAwKTtcbiRncmVlbi1kYXJrLXNlbWktdHJhbnNwOiByZ2IoMjQsIDEyOCwgNTYsIDAuMSk7XG5cbiR0aGVtZS1jb2xvcnM6IG1hcC5tZXJnZShcbiAgICBhc2dhcmQtdmFyaWFibGVzLiR0aGVtZS1jb2xvcnMsXG4gICAgKFxuICAgICAgICBwcmltYXJ5OiAkcHJpbWFyeSxcbiAgICAgICAgcHJpbWFyeS1kYXJrOiAkcHJpbWFyeS1kYXJrLFxuICAgICAgICBwcmltYXJ5LW1pZDogJHByaW1hcnktbWlkLFxuICAgICAgICBwcmltYXJ5LWxpZ2h0OiAkcHJpbWFyeS1saWdodCxcbiAgICAgICAgc2Vjb25kYXJ5OiAkc2Vjb25kYXJ5LFxuICAgICAgICBsaWdodDogJGxpZ2h0LFxuICAgICAgICBkYXJrOiAkZGFyayxcbiAgICAgICAgZGFyay1zZW1pLXRyYW5zcDogcmdiKDAsIDAsIDAsIDAuMSksXG4gICAgICAgIGJhc2UtYmc6ICRsaWdodCxcbiAgICAgICAgYmFzZS10ZXh0OiAkZGFyayxcbiAgICAgICAgbGluazogJHByaW1hcnksXG4gICAgICAgIHN1Y2Nlc3M6ICM4ZWQ2MDksXG4gICAgICAgIHN1Y2Nlc3MtYmc6ICNlOGYxZDksXG4gICAgICAgIHN1Y2Nlc3MtdGV4dDogJGRhcmssXG4gICAgICAgIGluZm86ICM5Y2I1ZTEsXG4gICAgICAgIGluZm8tYmc6ICNkZGVkZjMsXG4gICAgICAgIGluZm8tdGV4dDogJGRhcmssXG4gICAgICAgIHdhcm5pbmc6ICMyMzliYzgsXG4gICAgICAgIHdhcm5pbmctYmc6ICM5Y2I1ZTEsXG4gICAgICAgIHdhcm5pbmctdGV4dDogJGRhcmssXG4gICAgICAgIGRhbmdlcjogI2UyNjk2OSxcbiAgICAgICAgZGFuZ2VyLWJnOiAjZjZkZmRmLFxuICAgICAgICBkYW5nZXItdGV4dDogJGRhcmssXG4gICAgICAgIHN0YXItcmF0aW5nLWJnOiAjZmIwLFxuICAgICAgICBpbi1zdG9jazogJGdyZWVuLFxuICAgICAgICBvdXQtb2Ytc3RvY2s6ICNlMjY5NjksXG4gICAgICAgIHByZW9yZGVyOiAjZWFiMDAwLFxuICAgICAgICAvLyAxMCUgb2YgaW4tc3RvY2sgY29sb3VyXG4gICAgICAgIGluLXN0b2NrLWJnOiByZ2IoNSwgMTM2LCAyLCAwLjEpLFxuICAgICAgICBncmF5LTEwMDogI2YzZjNmMyxcbiAgICAgICAgZ3JheS0xNTA6ICNlNGU0ZTQsXG4gICAgICAgIGdyYXktMjAwOiAjZGVkZWRlLFxuICAgICAgICBncmF5LTMwMDogI2QwZDBkMCxcbiAgICAgICAgZ3JheS00MDA6ICNiMWIxYjEsXG4gICAgICAgIGdyYXktNjAwOiAjNzQ3NDc0LFxuICAgICAgICBncmF5LTcwMDogIzRkNGQ0ZCxcbiAgICAgICAgZ3JheS04MDA6ICMzODM4MzgsXG4gICAgICAgIGdyYXktOTAwOiAjMjYyNjI2LFxuICAgICAgICBncmF5LXNlbWktdHJhbnNwOiByZ2IoMjAsIDkyLCAxMjgsIDAuMSksXG4gICAgICAgIHNhdmluZy1jb2xvcjogcmdiKDI0LCAxMjgsIDU2LCAxKSxcbiAgICAgICAgc2F2aW5nLWNvbG9yLWJnOiAkZ3JlZW4tZGFyay1zZW1pLXRyYW5zcCxcbiAgICAgICAgdm91Y2hlci1iZzogI2Q4ZWRmNyxcbiAgICAgICAgc2F2aW5ncy1wcmltYXJ5OiAjZTExOTMxLFxuICAgICAgICBzYXZpbmdzLXNlY29uZGFyeTogI2ZlZTk1NixcbiAgICAgICAgdXNlZC1vZmZlcnMtcHJpbWFyeTogI2VhYjAwMCxcbiAgICAgICAgdXNlZC1vZmZlcnMtc2Vjb25kYXJ5OiAjZmVmYmYyXG4gICAgKVxuKTtcbi8vIGJvb3RzdHJhcCB2YXJpYWJsZXMgZW5kXG5cbiRsYWJlbC1naWZ0LWNvbG9yOiAjMDBhZWEzO1xuJGxhYmVsLXVzZWQtcHJvZHVjdC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCB1c2VkLW9mZmVycy1wcmltYXJ5KTtcbiRsYWJlbC1naWZ0LWJnLWNvbG9yOiAjZTZmYmYzO1xuXG4vLyBzaG9waW8gdmFyaWFibGVzXG4kZm9udC1wYXRoOiAnL2Fzc2V0cy9pc3BhY2UuY3ovZm9udCc7XG5cbiRoMS1mb250LXNpemU6IGNsYW1wKDNyZW0sIDZ2dywgNHJlbSk7IC8vICRmb250LXNpemUtYmFzZSAqIDIuNTtcbiRoMi1mb250LXNpemU6IDMuNnJlbTsgLy8gQ3VzdG9tIGZvbnQgc2l6ZSBieSBkZXNpZ25cbiRoMy1mb250LXNpemU6IDJyZW07IC8vICRmb250LXNpemUtYmFzZSAqIDEuNzU7XG4kaDQtZm9udC1zaXplOiAxLjhyZW07XG4kaDUtZm9udC1zaXplOiAxLjZyZW07XG4kaDYtZm9udC1zaXplOiAxLjZyZW07XG5cbiRkZWZhdWx0LWJvcmRlci1yYWRpdXM6IDhweDtcblxuJGJ0bjogbWFwLm1lcmdlKFxuICAgIGFzZ2FyZC12YXJpYWJsZXMuJGJ0bixcbiAgICAoXG4gICAgICAgIGJnLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdwcmltYXJ5JyksXG4gICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdsaWdodCcpLFxuICAgICAgICBob3Zlci1iZy1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnc2Vjb25kYXJ5JyksXG4gICAgICAgIGhvdmVyLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdsaWdodCcpLFxuICAgICAgICBib3JkZXItcmFkaXVzOiAkZGVmYXVsdC1ib3JkZXItcmFkaXVzXG4gICAgKVxuKTtcblxuJGJ0bi1hbHQ6IChcbiAgICBiZy1jb2xvcjogJGdyZWVuLWRhcmssXG4gICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2xpZ2h0JyksXG4gICAgaG92ZXItYmctY29sb3I6ICRncmVlbi1zcCxcbiAgICBob3Zlci1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnbGlnaHQnKSxcbiAgICBib3JkZXItcmFkaXVzOiAkZGVmYXVsdC1ib3JkZXItcmFkaXVzXG4pO1xuXG4kYnRuLWRpc2FibGVkOiBtYXAubWVyZ2UoXG4gICAgYXNnYXJkLXZhcmlhYmxlcy4kYnRuLWRpc2FibGVkLFxuICAgIChcbiAgICAgICAgYmctY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgZ3JheS0yMDApLFxuICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnYmFzZS10ZXh0JyksXG4gICAgICAgIGhvdmVyLWJnLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGdyYXktMjAwKSxcbiAgICAgICAgaG92ZXItY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2Jhc2UtdGV4dCcpXG4gICAgKVxuKTtcblxuJGJ0bi1kYXJrOiAoXG4gICAgYmctY29sb3I6ICRkYXJrLFxuICAgIGNvbG9yOiAjZmZmLFxuICAgIGhvdmVyLWJnLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGdyYXktOTAwKSxcbiAgICBob3Zlci1jb2xvcjogI2ZmZlxuKTtcblxuJGlucHV0OiBtYXAubWVyZ2UoXG4gICAgYXNnYXJkLXZhcmlhYmxlcy4kaW5wdXQsXG4gICAgKFxuICAgICAgICBiZy1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnbGlnaHQnKSxcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdncmF5LTIwMCcpLFxuICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnZGFyaycpLFxuICAgICAgICBib3JkZXItcmFkaXVzOiAwXG4gICAgKVxuKTtcblxuJGNoZWNrYm94LWNoZWNrOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbCxcXFxuICAgIDxzdmcgdmlld0JveD1cIjAgMCAyNCAyNFwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxcXG4gICAgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCJcXFxuICAgIGZpbGw9XCJub25lXCJcXFxuICAgIHN0cm9rZT1cIiN7cmdiYSgkbGlnaHQsIDEpfVwiXFxcbiAgICBzdHJva2Utd2lkdGg9XCIzXCI+XFxcbiAgICA8cG9seWxpbmUgcG9pbnRzPVwiMjAgNiA5IDE3IDQgMTJcIj48L3BvbHlsaW5lPlxcXG4gICAgPC9zdmc+Jyk7XG5cbiRwYXNzd29yZC1zaG93OiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbCxcXFxuICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgNTc2IDUxMlwiPlxcXG4gICAgPHBhdGggZD1cIk0yODggODBjLTY1LjIgMC0xMTguOCAyOS42LTE1OS45IDY3LjdDODkuNiAxODMuNSA2MyAyMjYgNDkuNCAyNTYgNjMgMjg2IDg5LjYgMzI4LjUgMTI4IDM2NC4zYzQxLjIgMzguMSA5NC44IDY3LjcgMTYwIDY3LjdzMTE4LjgtMjkuNiAxNTkuOS02Ny43QzQ4Ni40IDMyOC41IDUxMyAyODYgNTI2LjYgMjU2Yy0xMy42LTMwLTQwLjItNzIuNS03OC42LTEwOC4zQzQwNi44IDEwOS42IDM1My4yIDgwIDI4OCA4MHpNOTUuNCAxMTIuNkMxNDIuNSA2OC44IDIwNy4yIDMyIDI4OCAzMnMxNDUuNSAzNi44IDE5Mi42IDgwLjZjNDYuOCA0My41IDc4LjEgOTUuNCA5MyAxMzEuMSAzLjMgNy45IDMuMyAxNi43IDAgMjQuNi0xNC45IDM1LjctNDYuMiA4Ny43LTkzIDEzMS4xQzQzMy41IDQ0My4yIDM2OC44IDQ4MCAyODggNDgwcy0xNDUuNS0zNi44LTE5Mi42LTgwLjZDNDguNiAzNTYgMTcuMyAzMDQgMi41IDI2OC4zYy0zLjMtNy45LTMuMy0xNi43IDAtMjQuNkMxNy4zIDIwOCA0OC42IDE1NiA5NS40IDExMi42ek0yODggMzM2YzQ0LjIgMCA4MC0zNS44IDgwLTgwcy0zNS44LTgwLTgwLTgwaC0yYzEuMyA1LjEgMiAxMC41IDIgMTYgMCAzNS4zLTI4LjcgNjQtNjQgNjQtNS41IDAtMTAuOS0uNy0xNi0ydjJjMCA0NC4yIDM1LjggODAgODAgODB6bTAtMjA4YTEyOCAxMjggMCAxIDEgMCAyNTYgMTI4IDEyOCAwIDEgMSAwLTI1NnpcIi8+XFxcbiAgICA8L3N2Zz4nKTtcblxuJGFuZ2xlLXJpZ2h0OiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbCxcXFxuICAgIDxzdmcgdmlld0JveD1cIjAgMCAzMjAgNTEyXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxcXG4gICAgPHBhdGggZmlsbD1cIiN7cmdiYShtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIHByaW1hcnkpLCAwLjk5OSl9XCJcXFxuICAgIGQ9XCJNMjc4LjYgMjMzLjRjMTIuNSAxMi41IDEyLjUgMzIuOCAwIDQ1LjNsLTE2MCAxNjBjLTEyLjUgMTIuNS0zMi44IDEyLjUtNDUuMyAwcy0xMi41LTMyLjggMC00NS4zTDIxMC43IDI1NiA3My40IDExOC42Yy0xMi41LTEyLjUtMTIuNS0zMi44IDAtNDUuM3MzMi44LTEyLjUgNDUuMyAwbDE2MCAxNjB6XCIvPlxcXG4gICAgPC9zdmc+Jyk7XG5cbiRkaWFnb25hbC1saW5lOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbCxcXFxuICAgIDxzdmcgdmlld0JveD1cIjAgMCAxMDAgMTAwXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHByZXNlcnZlQXNwZWN0UmF0aW89XCJub25lXCI+XFxcbiAgICA8bGluZSBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlPVwiI3tyZ2JhKG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgZ3JheS00MDApLCAwLjk5OSl9XCJcXFxuICAgIHgxPVwiMFwiIHkxPVwiMFwiIHgyPVwiMTAwXCIgeTI9XCIxMDBcIiB2ZWN0b3ItZWZmZWN0PVwibm9uLXNjYWxpbmctc3Ryb2tlXCIvPlxcXG4gICAgPC9zdmc+Jyk7XG5cbiRicmVhZGNydW1iczogbWFwLm1lcmdlKFxuICAgIGFzZ2FyZC12YXJpYWJsZXMuJGJyZWFkY3J1bWJzLFxuICAgIChcbiAgICAgICAgYmctY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2dyYXktMTAwJyksXG4gICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdkYXJrJyksXG4gICAgICAgIGFjdGl2ZS1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnZ3JheS02MDAnKVxuICAgIClcbik7XG5cbi8vIGhlYWRlclxuJGhlYWRlci1uYXYtaGVpZ2h0OiA1LjVyZW07IC8vIGhlaWdodCBvbiBzbWFsbCBzY3JlZW5zXG4kaGVhZGVyLW5hdi1kZXNrdG9wLWhlaWdodDogMTQuNXJlbTsgLy8gaGVpZ2h0IG9uIGJpZ2dlciBzY3JlZW5zXG4kaGVhZGVyLXRvcC1uYXYtZGVza3RvcC1oZWlnaHQ6IDE0LjVyZW07IC8vIGhlaWdodCBvbiBiaWdnZXIgc2NyZWVuc1xuJGhlYWRlci1uYXYtYnJlYWtwb2ludDogJ3hsJzsgLy8gYnJlYWtwb2ludCB3aGVuIG5hdiBjaGFuZ2VzIGZyb20gbW9iaWxlIHRvIGRlc2t0b3BcbiRoZWFkZXItc2VhcmNoLWRlc2t0b3AtaGVpZ2h0OiA1cmVtO1xuJGhlYWRlci1zZWFyY2gtZGVza3RvcC13aWR0aDogMTAwJTtcblxuJHNjcm9sbGJhci1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAncHJpbWFyeScpO1xuXG4vLyBtZW51XG4kbWVudS1pdGVtLWRlc2t0b3AtcGFkZGluZzogMXJlbTtcbiRtZW51LXNlY29uZGFyeS1saW5rcy1iZzogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAncHJpbWFyeS1kYXJrJyk7XG4kbWVudS1zdWJtZW51LXNpbmdsZS1jb2x1bW4tbWluOiA5O1xuXG4vLyBmb290ZXJcbiRmb290ZXItYmxvY2stY29sbGFwc2VkLWhlaWdodDogNi41cmVtO1xuXG4vLyB2b3VjaGVyIFBERlxuLy8gTk9URTogaWYgdGhlIGZvbnRzIHVzZWQgaGVyZSBhcmUgbm9uLXN0YW5kYXJkLCB0aGVuIHRoZXkgbmVlZCB0byBiZSB1cGxvYWRlZCBhbmQgc3BlY2lmaWVkIHNlcGFyYXRlbHkgaW4gdGhlXG4vLyBtUERGIGluaXRpYWxpemF0aW9uIChzZWUgdXNhZ2UgaW4gU0Qgb3Igc3BlYWsgd2l0aCBEQiA6KSlcbiR2b3VjaGVyOiBtYXAubWVyZ2UoXG4gICAgYXNnYXJkLXZhcmlhYmxlcy4kdm91Y2hlcixcbiAgICAoXG4gICAgICAgIHByaW1hcnktYmFja2dyb3VuZC1jb2xvcjogI2ZmZixcbiAgICAgICAgcHJpbWFyeS1jb2xvcjogIzQ0NCxcbiAgICAgICAgc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3I6ICNkZGQsXG4gICAgICAgIHNlY29uZGFyeS1jb2xvcjogIzQ0NCxcbiAgICAgICAgYmxvY2staGlnaGxpZ2h0LWJhY2tncm91bmQtY29sb3I6ICNmMGYwZjAsXG4gICAgICAgIGJsb2NrLWhpZ2hsaWdodC1jb2xvcjogIzQ0NCxcbiAgICAgICAgYmFzZS1mb250LXNpemU6ICRmb250LXNpemUtYmFzZSxcbiAgICAgICAgYmFzZS1saW5lLWhlaWdodDogMS41LFxuICAgICAgICBoZWFkaW5nLWZvbnQ6ICRmb250LWZhbWlseS1iYXNlLFxuICAgICAgICBib2R5LWZvbnQ6ICRmb250LWZhbWlseS1iYXNlLFxuICAgICAgICBsb2dvLW1heC1oZWlnaHQ6IDEwbW1cbiAgICApXG4pO1xuXG4vLyBGdWxsLXdpZHRoIHNsaWRlciBpbWFnZSBkaW1lbnNpb25zIChhcHBsaWVzIHRvIGRlc2t0b3Agb25seSlcbi8vIGltYWdlLXdpZHRoOiBpbWFnZSBzaXplXG4vLyBpbWFnZS1jb250ZW50LWFyZWEtd2lkdGg6IHdoZXJlIHdlIGNhbiBzYWZlbHkgY3JvcCAoZnJvbSB0aGUgZnVsbCBzaXplIGltYWdlKVxuJHNsaWRlci1kZXNrdG9wOiBtYXAubWVyZ2UoXG4gICAgYXNnYXJkLXZhcmlhYmxlcy4kc2xpZGVyLWRlc2t0b3AsXG4gICAgKFxuICAgICAgICBpbWFnZS13aWR0aDogMTkwMHB4LFxuICAgICAgICBpbWFnZS1jb250ZW50LWFyZWEtd2lkdGg6IDEyMDBweFxuICAgIClcbik7XG4vLyBzaG9waW8gdmFyaWFibGVzIGVuZFxuXG4vLyBDU1MgdmFyaWFibGVzXG4vLyBtb3ZlIHRvIGFwcC5zY3NzXG4iLCIvLyBSb3dcbi8vXG4vLyBSb3dzIGNvbnRhaW4geW91ciBjb2x1bW5zLlxuXG46cm9vdCB7XG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgIC0tI3skcHJlZml4fWJyZWFrcG9pbnQtI3skbmFtZX06ICN7JHZhbHVlfTtcbiAgfVxufVxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAucm93IHtcbiAgICBAaW5jbHVkZSBtYWtlLXJvdygpO1xuXG4gICAgPiAqIHtcbiAgICAgIEBpbmNsdWRlIG1ha2UtY29sLXJlYWR5KCk7XG4gICAgfVxuICB9XG59XG5cbkBpZiAkZW5hYmxlLWNzc2dyaWQge1xuICAuZ3JpZCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCh2YXIoLS0jeyRwcmVmaXh9cm93cywgMSksIDFmcik7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQodmFyKC0tI3skcHJlZml4fWNvbHVtbnMsICN7JGdyaWQtY29sdW1uc30pLCAxZnIpO1xuICAgIGdhcDogdmFyKC0tI3skcHJlZml4fWdhcCwgI3skZ3JpZC1ndXR0ZXItd2lkdGh9KTtcblxuICAgIEBpbmNsdWRlIG1ha2UtY3NzZ3JpZCgpO1xuICB9XG59XG5cblxuLy8gQ29sdW1uc1xuLy9cbi8vIENvbW1vbiBzdHlsZXMgZm9yIHNtYWxsIGFuZCBsYXJnZSBncmlkIGNvbHVtbnNcblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgQGluY2x1ZGUgbWFrZS1ncmlkLWNvbHVtbnMoKTtcbn1cbiIsIi8vIEdyaWQgc3lzdGVtXG4vL1xuLy8gR2VuZXJhdGUgc2VtYW50aWMgZ3JpZCBjb2x1bW5zIHdpdGggdGhlc2UgbWl4aW5zLlxuXG5AbWl4aW4gbWFrZS1yb3coJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIC0tI3skcHJlZml4fWd1dHRlci14OiAjeyRndXR0ZXJ9O1xuICAtLSN7JHByZWZpeH1ndXR0ZXIteTogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICAvLyBUT0RPOiBSZXZpc2l0IGNhbGMgb3JkZXIgYWZ0ZXIgaHR0cHM6Ly9naXRodWIuY29tL3JlYWN0LWJvb3RzdHJhcC9yZWFjdC1ib290c3RyYXAvaXNzdWVzLzYwMzkgaXMgZml4ZWRcbiAgbWFyZ2luLXRvcDogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteSkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tcmlnaHQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fWd1dHRlci14KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxufVxuXG5AbWl4aW4gbWFrZS1jb2wtcmVhZHkoKSB7XG4gIC8vIEFkZCBib3ggc2l6aW5nIGlmIG9ubHkgdGhlIGdyaWQgaXMgbG9hZGVkXG4gIGJveC1zaXppbmc6IGlmKHZhcmlhYmxlLWV4aXN0cyhpbmNsdWRlLWNvbHVtbi1ib3gtc2l6aW5nKSBhbmQgJGluY2x1ZGUtY29sdW1uLWJveC1zaXppbmcsIGJvcmRlci1ib3gsIG51bGwpO1xuICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBiZWNvbWluZyB0b28gbmFycm93IHdoZW4gYXQgc21hbGxlciBncmlkIHRpZXJzIGJ5XG4gIC8vIGFsd2F5cyBzZXR0aW5nIGB3aWR0aDogMTAwJTtgLiBUaGlzIHdvcmtzIGJlY2F1c2Ugd2Ugc2V0IHRoZSB3aWR0aFxuICAvLyBsYXRlciBvbiB0byBvdmVycmlkZSB0aGlzIGluaXRpYWwgd2lkdGguXG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyBQcmV2ZW50IGAuY29sLWF1dG9gLCBgLmNvbGAgKCYgcmVzcG9uc2l2ZSB2YXJpYW50cykgZnJvbSBicmVha2luZyBvdXQgdGhlIGdyaWRcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXgpICogLjUpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tI3skcHJlZml4fWd1dHRlci14KSAqIC41KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLXRvcDogdmFyKC0tI3skcHJlZml4fWd1dHRlci15KTtcbn1cblxuQG1peGluIG1ha2UtY29sKCRzaXplOiBmYWxzZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgQGlmICRzaXplIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogcGVyY2VudGFnZShkaXZpZGUoJHNpemUsICRjb2x1bW5zKSk7XG5cbiAgfSBAZWxzZSB7XG4gICAgZmxleDogMSAxIDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1hdXRvKCkge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IGF1dG87XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1vZmZzZXQoJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gICRudW06IGRpdmlkZSgkc2l6ZSwgJGNvbHVtbnMpO1xuICBtYXJnaW4tbGVmdDogaWYoJG51bSA9PSAwLCAwLCBwZXJjZW50YWdlKCRudW0pKTtcbn1cblxuLy8gUm93IGNvbHVtbnNcbi8vXG4vLyBTcGVjaWZ5IG9uIGEgcGFyZW50IGVsZW1lbnQoZS5nLiwgLnJvdykgdG8gZm9yY2UgaW1tZWRpYXRlIGNoaWxkcmVuIGludG8gTk5cbi8vIG51bWJlciBvZiBjb2x1bW5zLiBTdXBwb3J0cyB3cmFwcGluZyB0byBuZXcgbGluZXMsIGJ1dCBkb2VzIG5vdCBkbyBhIE1hc29ucnlcbi8vIHN0eWxlIGdyaWQuXG5AbWl4aW4gcm93LWNvbHMoJGNvdW50KSB7XG4gID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoZGl2aWRlKDEsICRjb3VudCkpO1xuICB9XG59XG5cbi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbkBtaXhpbiBtYWtlLWdyaWQtY29sdW1ucygkY29sdW1uczogJGdyaWQtY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRicmVha3BvaW50cykge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgLy8gUHJvdmlkZSBiYXNpYyBgLmNvbC17YnB9YCBjbGFzc2VzIGZvciBlcXVhbC13aWR0aCBmbGV4Ym94IGNvbHVtbnNcbiAgICAgIC5jb2wjeyRpbmZpeH0ge1xuICAgICAgICBmbGV4OiAxIDAgMDtcbiAgICAgIH1cblxuICAgICAgLnJvdy1jb2xzI3skaW5maXh9LWF1dG8gPiAqIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGdyaWQtcm93LWNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1yb3ctY29sdW1ucyB7XG4gICAgICAgICAgLnJvdy1jb2xzI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJvdy1jb2xzKCRpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZVxuICAgICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIiBhbmQgJGkgPT0gMCkgeyAvLyBBdm9pZCBlbWl0dGluZyB1c2VsZXNzIC5vZmZzZXQtMFxuICAgICAgICAgICAgLm9mZnNldCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLW9mZnNldCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBHdXR0ZXJzXG4gICAgICAvL1xuICAgICAgLy8gTWFrZSB1c2Ugb2YgYC5nLSpgLCBgLmd4LSpgIG9yIGAuZ3ktKmAgdXRpbGl0aWVzIHRvIGNoYW5nZSBzcGFjaW5nIGJldHdlZW4gdGhlIGNvbHVtbnMuXG4gICAgICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJGd1dHRlcnMge1xuICAgICAgICAuZyN7JGluZml4fS0jeyRrZXl9LFxuICAgICAgICAuZ3gjeyRpbmZpeH0tI3ska2V5fSB7XG4gICAgICAgICAgLS0jeyRwcmVmaXh9Z3V0dGVyLXg6ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5nI3skaW5maXh9LSN7JGtleX0sXG4gICAgICAgIC5neSN7JGluZml4fS0jeyRrZXl9IHtcbiAgICAgICAgICAtLSN7JHByZWZpeH1ndXR0ZXIteTogI3skdmFsdWV9O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYWtlLWNzc2dyaWQoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmctY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiAkaTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTdGFydCB3aXRoIGAxYCBiZWNhdXNlIGAwYCBpcyBhbiBpbnZhbGlkIHZhbHVlLlxuICAgICAgICAvLyBFbmRzIHdpdGggYCRjb2x1bW5zIC0gMWAgYmVjYXVzZSBvZmZzZXR0aW5nIGJ5IHRoZSB3aWR0aCBvZiBhbiBlbnRpcmUgcm93IGlzbid0IHBvc3NpYmxlLlxuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgICAuZy1zdGFydCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbi1zdGFydDogJGk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBSZWR1Y2UgdGhlIGFtb3VudCBvZiByZW5kZXJlZCBDU1MuIFRoaXMgaXMgYSBjb3B5IG9mIHRoZSBkZWZhdWx0IEJvb3RzdHJhcCA1LjMgdXRpbGl0aWVzIGZpbGUgd2l0aFxuLy8gdW5uZWNlc3NhcnkgcGFydHMgY29tbWVudGVkIG91dCAodG8gYWxsb3cgeW91IHRvIGVhc2lseSByZS1lbmFibGUgcGFydHMgeW91IG1heSB3YW50KS5cbkB1c2UgJ3Nhc3M6bWFwJztcblxuJHV0aWxpdGllczogbWFwLWdldC1tdWx0aXBsZShcbiAgICAkdXRpbGl0aWVzLFxuICAgIChcbiAgICAgICAgJ2Rpc3BsYXknLFxuICAgICAgICAnanVzdGlmeS1jb250ZW50JyxcbiAgICAgICAgJ2FsaWduLWl0ZW1zJyxcbiAgICAgICAgJ21hcmdpbicsXG4gICAgICAgICdtYXJnaW4teCcsXG4gICAgICAgICdtYXJnaW4teScsXG4gICAgICAgICdtYXJnaW4tdG9wJyxcbiAgICAgICAgJ21hcmdpbi1ib3R0b20nLFxuICAgICAgICAnbWFyZ2luLXN0YXJ0JyxcbiAgICAgICAgJ25lZ2F0aXZlLW1hcmdpbicsXG4gICAgICAgICduZWdhdGl2ZS1tYXJnaW4teCcsXG4gICAgICAgICduZWdhdGl2ZS1tYXJnaW4teScsXG4gICAgICAgICduZWdhdGl2ZS1tYXJnaW4tdG9wJyxcbiAgICAgICAgJ25lZ2F0aXZlLW1hcmdpbi1ib3R0b20nLFxuICAgICAgICAnbmVnYXRpdmUtbWFyZ2luLXN0YXJ0JyxcbiAgICAgICAgJ3BhZGRpbmcnLFxuICAgICAgICAncGFkZGluZy10b3AnLFxuICAgICAgICAncGFkZGluZy1ib3R0b20nLFxuICAgICAgICAvLyBESVNBQkxFRFxuICAgICAgICAvLyAnb3JkZXInLFxuICAgICAgICAvLyAnZmxleCcsXG4gICAgICAgIC8vICdmbGV4LWRpcmVjdGlvbicsXG4gICAgICAgIC8vICdmbGV4LWdyb3cnLFxuICAgICAgICAvLyAnZmxleC1zaHJpbmsnLFxuICAgICAgICAvLyAnZmxleC13cmFwJyxcbiAgICAgICAgLy8gJ2FsaWduLWNvbnRlbnQnLFxuICAgICAgICAvLyAnYWxpZ24tc2VsZicsXG4gICAgICAgIC8vICdtYXJnaW4tZW5kJyxcbiAgICAgICAgLy8gJ25lZ2F0aXZlLW1hcmdpbi1lbmQnLFxuICAgICAgICAvLyAncGFkZGluZy14JyxcbiAgICAgICAgLy8gJ3BhZGRpbmcteScsXG4gICAgICAgIC8vICdwYWRkaW5nLWVuZCcsXG4gICAgICAgICAvLyAncGFkZGluZy1zdGFydCdcbiAgICApXG4pO1xuXG4vLyBCUyB1dGlsaXRpZXNcbi50ZXh0LXN0YXJ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LWVuZCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbn1cblxuLnRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbn1cblxuLnRleHQtZGVjb3JhdGlvbi1ub25lIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnctMjUge1xuICAgIHdpZHRoOiAyNSUgIWltcG9ydGFudDtcbn1cblxuLnctNTAge1xuICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbn1cblxuLnctNzUge1xuICAgIHdpZHRoOiA3NSUgIWltcG9ydGFudDtcbn1cblxuLnctMTAwIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4uZmxleC1maWxsIHtcbiAgICBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50O1xufVxuXG4uZmxleC1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDtcbn1cblxuLmZsZXgtY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7XG59XG5cbi5mbGV4LXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDtcbn1cblxuLmZsZXgtY29sdW1uLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyIHtcbiAgICBib3JkZXI6IHZhcigtLWJzLWJvcmRlci13aWR0aCkgdmFyKC0tYnMtYm9yZGVyLXN0eWxlKSB2YXIoLS1icy1ib3JkZXItY29sb3IpICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItMCB7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItdG9wIHtcbiAgICBib3JkZXItdG9wOiB2YXIoLS1icy1ib3JkZXItd2lkdGgpIHZhcigtLWJzLWJvcmRlci1zdHlsZSkgdmFyKC0tYnMtYm9yZGVyLWNvbG9yKSAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLXRvcC0wIHtcbiAgICBib3JkZXItdG9wOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItZW5kIHtcbiAgICBib3JkZXItcmlnaHQ6IHZhcigtLWJzLWJvcmRlci13aWR0aCkgdmFyKC0tYnMtYm9yZGVyLXN0eWxlKSB2YXIoLS1icy1ib3JkZXItY29sb3IpICFpbXBvcnRhbnQ7XG59XG5cbi5ib3JkZXItZW5kLTAge1xuICAgIGJvcmRlci1yaWdodDogMCAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLWJvdHRvbSB7XG4gICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tYnMtYm9yZGVyLXdpZHRoKSB2YXIoLS1icy1ib3JkZXItc3R5bGUpIHZhcigtLWJzLWJvcmRlci1jb2xvcikgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1ib3R0b20tMCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLXN0YXJ0IHtcbiAgICBib3JkZXItbGVmdDogdmFyKC0tYnMtYm9yZGVyLXdpZHRoKSB2YXIoLS1icy1ib3JkZXItc3R5bGUpIHZhcigtLWJzLWJvcmRlci1jb2xvcikgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1zdGFydC0wIHtcbiAgICBib3JkZXItbGVmdDogMCAhaW1wb3J0YW50O1xufVxuIiwiLy8gVXRpbGl0eSBnZW5lcmF0b3Jcbi8vIFVzZWQgdG8gZ2VuZXJhdGUgdXRpbGl0aWVzICYgcHJpbnQgdXRpbGl0aWVzXG5AbWl4aW4gZ2VuZXJhdGUtdXRpbGl0eSgkdXRpbGl0eSwgJGluZml4OiBcIlwiLCAkaXMtcmZzLW1lZGlhLXF1ZXJ5OiBmYWxzZSkge1xuICAkdmFsdWVzOiBtYXAtZ2V0KCR1dGlsaXR5LCB2YWx1ZXMpO1xuXG4gIC8vIElmIHRoZSB2YWx1ZXMgYXJlIGEgbGlzdCBvciBzdHJpbmcsIGNvbnZlcnQgaXQgaW50byBhIG1hcFxuICBAaWYgdHlwZS1vZigkdmFsdWVzKSA9PSBcInN0cmluZ1wiIG9yIHR5cGUtb2YobnRoKCR2YWx1ZXMsIDEpKSAhPSBcImxpc3RcIiB7XG4gICAgJHZhbHVlczogemlwKCR2YWx1ZXMsICR2YWx1ZXMpO1xuICB9XG5cbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICR2YWx1ZXMge1xuICAgICRwcm9wZXJ0aWVzOiBtYXAtZ2V0KCR1dGlsaXR5LCBwcm9wZXJ0eSk7XG5cbiAgICAvLyBNdWx0aXBsZSBwcm9wZXJ0aWVzIGFyZSBwb3NzaWJsZSwgZm9yIGV4YW1wbGUgd2l0aCB2ZXJ0aWNhbCBvciBob3Jpem9udGFsIG1hcmdpbnMgb3IgcGFkZGluZ3NcbiAgICBAaWYgdHlwZS1vZigkcHJvcGVydGllcykgPT0gXCJzdHJpbmdcIiB7XG4gICAgICAkcHJvcGVydGllczogYXBwZW5kKCgpLCAkcHJvcGVydGllcyk7XG4gICAgfVxuXG4gICAgLy8gVXNlIGN1c3RvbSBjbGFzcyBpZiBwcmVzZW50XG4gICAgJHByb3BlcnR5LWNsYXNzOiBpZihtYXAtaGFzLWtleSgkdXRpbGl0eSwgY2xhc3MpLCBtYXAtZ2V0KCR1dGlsaXR5LCBjbGFzcyksIG50aCgkcHJvcGVydGllcywgMSkpO1xuICAgICRwcm9wZXJ0eS1jbGFzczogaWYoJHByb3BlcnR5LWNsYXNzID09IG51bGwsIFwiXCIsICRwcm9wZXJ0eS1jbGFzcyk7XG5cbiAgICAvLyBVc2UgY3VzdG9tIENTUyB2YXJpYWJsZSBuYW1lIGlmIHByZXNlbnQsIG90aGVyd2lzZSBkZWZhdWx0IHRvIGBjbGFzc2BcbiAgICAkY3NzLXZhcmlhYmxlLW5hbWU6IGlmKG1hcC1oYXMta2V5KCR1dGlsaXR5LCBjc3MtdmFyaWFibGUtbmFtZSksIG1hcC1nZXQoJHV0aWxpdHksIGNzcy12YXJpYWJsZS1uYW1lKSwgbWFwLWdldCgkdXRpbGl0eSwgY2xhc3MpKTtcblxuICAgIC8vIFN0YXRlIHBhcmFtcyB0byBnZW5lcmF0ZSBwc2V1ZG8tY2xhc3Nlc1xuICAgICRzdGF0ZTogaWYobWFwLWhhcy1rZXkoJHV0aWxpdHksIHN0YXRlKSwgbWFwLWdldCgkdXRpbGl0eSwgc3RhdGUpLCAoKSk7XG5cbiAgICAkaW5maXg6IGlmKCRwcm9wZXJ0eS1jbGFzcyA9PSBcIlwiIGFuZCBzdHItc2xpY2UoJGluZml4LCAxLCAxKSA9PSBcIi1cIiwgc3RyLXNsaWNlKCRpbmZpeCwgMiksICRpbmZpeCk7XG5cbiAgICAvLyBEb24ndCBwcmVmaXggaWYgdmFsdWUga2V5IGlzIG51bGwgKGUuZy4gd2l0aCBzaGFkb3cgY2xhc3MpXG4gICAgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyOiBpZigka2V5LCBpZigkcHJvcGVydHktY2xhc3MgPT0gXCJcIiBhbmQgJGluZml4ID09IFwiXCIsIFwiXCIsIFwiLVwiKSArICRrZXksIFwiXCIpO1xuXG4gICAgQGlmIG1hcC1nZXQoJHV0aWxpdHksIHJmcykge1xuICAgICAgLy8gSW5zaWRlIHRoZSBtZWRpYSBxdWVyeVxuICAgICAgQGlmICRpcy1yZnMtbWVkaWEtcXVlcnkge1xuICAgICAgICAkdmFsOiByZnMtdmFsdWUoJHZhbHVlKTtcblxuICAgICAgICAvLyBEbyBub3QgcmVuZGVyIGFueXRoaW5nIGlmIGZsdWlkIGFuZCBub24gZmx1aWQgdmFsdWVzIGFyZSB0aGUgc2FtZVxuICAgICAgICAkdmFsdWU6IGlmKCR2YWwgPT0gcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZSksIG51bGwsICR2YWwpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAkdmFsdWU6IHJmcy1mbHVpZC12YWx1ZSgkdmFsdWUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICRpcy1jc3MtdmFyOiBtYXAtZ2V0KCR1dGlsaXR5LCBjc3MtdmFyKTtcbiAgICAkaXMtbG9jYWwtdmFyczogbWFwLWdldCgkdXRpbGl0eSwgbG9jYWwtdmFycyk7XG4gICAgJGlzLXJ0bDogbWFwLWdldCgkdXRpbGl0eSwgcnRsKTtcblxuICAgIEBpZiAkdmFsdWUgIT0gbnVsbCB7XG4gICAgICBAaWYgJGlzLXJ0bCA9PSBmYWxzZSB7XG4gICAgICAgIC8qIHJ0bDpiZWdpbjpyZW1vdmUgKi9cbiAgICAgIH1cblxuICAgICAgQGlmICRpcy1jc3MtdmFyIHtcbiAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfSB7XG4gICAgICAgICAgLS0jeyRwcmVmaXh9I3skY3NzLXZhcmlhYmxlLW5hbWV9OiAjeyR2YWx1ZX07XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkcHNldWRvIGluICRzdGF0ZSB7XG4gICAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfS0jeyRwc2V1ZG99OiN7JHBzZXVkb30ge1xuICAgICAgICAgICAgLS0jeyRwcmVmaXh9I3skY3NzLXZhcmlhYmxlLW5hbWV9OiAjeyR2YWx1ZX07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfSB7XG4gICAgICAgICAgQGVhY2ggJHByb3BlcnR5IGluICRwcm9wZXJ0aWVzIHtcbiAgICAgICAgICAgIEBpZiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgIEBlYWNoICRsb2NhbC12YXIsICR2YXJpYWJsZSBpbiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgICAgLS0jeyRwcmVmaXh9I3skbG9jYWwtdmFyfTogI3skdmFyaWFibGV9O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAjeyRwcm9wZXJ0eX06ICR2YWx1ZSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRwc2V1ZG8gaW4gJHN0YXRlIHtcbiAgICAgICAgICAuI3skcHJvcGVydHktY2xhc3MgKyAkaW5maXggKyAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXJ9LSN7JHBzZXVkb306I3skcHNldWRvfSB7XG4gICAgICAgICAgICBAZWFjaCAkcHJvcGVydHkgaW4gJHByb3BlcnRpZXMge1xuICAgICAgICAgICAgICBAaWYgJGlzLWxvY2FsLXZhcnMge1xuICAgICAgICAgICAgICAgIEBlYWNoICRsb2NhbC12YXIsICR2YXJpYWJsZSBpbiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgICAgICAtLSN7JHByZWZpeH0jeyRsb2NhbC12YXJ9OiAjeyR2YXJpYWJsZX07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICN7JHByb3BlcnR5fTogJHZhbHVlIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpZiAkaXMtcnRsID09IGZhbHNlIHtcbiAgICAgICAgLyogcnRsOmVuZDpyZW1vdmUgKi9cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIExvb3Agb3ZlciBlYWNoIGJyZWFrcG9pbnRcbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG5cbiAgLy8gR2VuZXJhdGUgbWVkaWEgcXVlcnkgaWYgbmVlZGVkXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC8vIExvb3Agb3ZlciBlYWNoIHV0aWxpdHkgcHJvcGVydHlcbiAgICBAZWFjaCAka2V5LCAkdXRpbGl0eSBpbiAkdXRpbGl0aWVzIHtcbiAgICAgIC8vIFRoZSB1dGlsaXR5IGNhbiBiZSBkaXNhYmxlZCB3aXRoIGBmYWxzZWAsIHRodXMgY2hlY2sgaWYgdGhlIHV0aWxpdHkgaXMgYSBtYXAgZmlyc3RcbiAgICAgIC8vIE9ubHkgcHJvY2VlZCBpZiByZXNwb25zaXZlIG1lZGlhIHF1ZXJpZXMgYXJlIGVuYWJsZWQgb3IgaWYgaXQncyB0aGUgYmFzZSBtZWRpYSBxdWVyeVxuICAgICAgQGlmIHR5cGUtb2YoJHV0aWxpdHkpID09IFwibWFwXCIgYW5kIChtYXAtZ2V0KCR1dGlsaXR5LCByZXNwb25zaXZlKSBvciAkaW5maXggPT0gXCJcIikge1xuICAgICAgICBAaW5jbHVkZSBnZW5lcmF0ZS11dGlsaXR5KCR1dGlsaXR5LCAkaW5maXgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBSRlMgcmVzY2FsaW5nXG5AbWVkaWEgKG1pbi13aWR0aDogJHJmcy1tcS12YWx1ZSkge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgQGlmIChtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCkgPCAkcmZzLWJyZWFrcG9pbnQpIHtcbiAgICAgIC8vIExvb3Agb3ZlciBlYWNoIHV0aWxpdHkgcHJvcGVydHlcbiAgICAgIEBlYWNoICRrZXksICR1dGlsaXR5IGluICR1dGlsaXRpZXMge1xuICAgICAgICAvLyBUaGUgdXRpbGl0eSBjYW4gYmUgZGlzYWJsZWQgd2l0aCBgZmFsc2VgLCB0aHVzIGNoZWNrIGlmIHRoZSB1dGlsaXR5IGlzIGEgbWFwIGZpcnN0XG4gICAgICAgIC8vIE9ubHkgcHJvY2VlZCBpZiByZXNwb25zaXZlIG1lZGlhIHF1ZXJpZXMgYXJlIGVuYWJsZWQgb3IgaWYgaXQncyB0aGUgYmFzZSBtZWRpYSBxdWVyeVxuICAgICAgICBAaWYgdHlwZS1vZigkdXRpbGl0eSkgPT0gXCJtYXBcIiBhbmQgbWFwLWdldCgkdXRpbGl0eSwgcmZzKSBhbmQgKG1hcC1nZXQoJHV0aWxpdHksIHJlc3BvbnNpdmUpIG9yICRpbmZpeCA9PSBcIlwiKSB7XG4gICAgICAgICAgQGluY2x1ZGUgZ2VuZXJhdGUtdXRpbGl0eSgkdXRpbGl0eSwgJGluZml4LCB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIFByaW50IHV0aWxpdGllc1xuQG1lZGlhIHByaW50IHtcbiAgQGVhY2ggJGtleSwgJHV0aWxpdHkgaW4gJHV0aWxpdGllcyB7XG4gICAgLy8gVGhlIHV0aWxpdHkgY2FuIGJlIGRpc2FibGVkIHdpdGggYGZhbHNlYCwgdGh1cyBjaGVjayBpZiB0aGUgdXRpbGl0eSBpcyBhIG1hcCBmaXJzdFxuICAgIC8vIFRoZW4gY2hlY2sgaWYgdGhlIHV0aWxpdHkgbmVlZHMgcHJpbnQgc3R5bGVzXG4gICAgQGlmIHR5cGUtb2YoJHV0aWxpdHkpID09IFwibWFwXCIgYW5kIG1hcC1nZXQoJHV0aWxpdHksIHByaW50KSA9PSB0cnVlIHtcbiAgICAgIEBpbmNsdWRlIGdlbmVyYXRlLXV0aWxpdHkoJHV0aWxpdHksIFwiLXByaW50XCIpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gQ3VzdG9taXplZCBCb290c3RyYXAncyBSZWJvb3RcblxuLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeCwgc2Nzcy9hdC1pZi1uby1udWxsXG5cbkB1c2UgJ3Nhc3M6bWFwJztcblxuLy8gRG9jdW1lbnRcbi8vIENoYW5nZSBmcm9tIGBib3gtc2l6aW5nOiBjb250ZW50LWJveGAgc28gdGhhdCBgd2lkdGhgIGlzIG5vdCBhZmZlY3RlZCBieSBgcGFkZGluZ2Agb3IgYGJvcmRlcmAuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbioge1xuICAgIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgICBvdmVyZmxvdy13cmFwOiBhbnl3aGVyZTtcbn1cblxuLyogUmVtb3ZlIGRlZmF1bHQgbWFyZ2luICovXG5ib2R5LFxuaDEsXG5oMixcbmgzLFxuaDQsXG5wLFxudWwsXG5vbCxcbmxpLFxuZmlndXJlLFxuZmlnY2FwdGlvbixcbmJsb2NrcXVvdGUsXG5kbCB7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4vLyBSb290XG4vLyBBYmlsaXR5IHRvIHRoZSB2YWx1ZSBvZiB0aGUgcm9vdCBmb250IHNpemVzLCBhZmZlY3RpbmcgdGhlIHZhbHVlIG9mIGByZW1gLlxuLy8gbnVsbCBieSBkZWZhdWx0LCB0aHVzIG5vdGhpbmcgaXMgZ2VuZXJhdGVkLlxuXG46cm9vdCB7XG4gICAgQGlmICRmb250LXNpemUtcm9vdCAhPSBudWxsIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1yb290LWZvbnQtc2l6ZSkpO1xuICAgIH1cblxuICAgIEBpZiAkZW5hYmxlLXNtb290aC1zY3JvbGwge1xuICAgICAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IG5vLXByZWZlcmVuY2UpIHtcbiAgICAgICAgICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBCb2R5XG4vLyAxLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4vLyAyLiBBcyBhIGJlc3QgcHJhY3RpY2UsIGFwcGx5IGEgZGVmYXVsdCBgYmFja2dyb3VuZC1jb2xvcmAuXG4vLyAzLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbi8vIDQuIENoYW5nZSB0aGUgZGVmYXVsdCB0YXAgaGlnaGxpZ2h0IHRvIGJlIGNvbXBsZXRlbHkgdHJhbnNwYXJlbnQgaW4gaU9TLlxuXG5ib2R5IHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fWJvZHktZm9udC1zaXplKSk7XG5cbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLSN7JHByZWZpeH1ib2R5LWZvbnQtZmFtaWx5KTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tI3skcHJlZml4fWJvZHktZm9udC13ZWlnaHQpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9Ym9keS1saW5lLWhlaWdodCk7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKTtcbiAgICB0ZXh0LWFsaWduOiB2YXIoLS0jeyRwcmVmaXh9Ym9keS10ZXh0LWFsaWduKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZyk7IC8vIDJcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgdmFsdWUta2V5d29yZC1jYXNlXG4gICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplU3BlZWQ7XG4gICAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAzXG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKCRibGFjaywgMCk7IC8vIDRcbn1cblxuLy8gbWFpbiBjb250ZW50IGFyZWEgc2hvdWxkIHVzZSBhIGxhcmdlciBmb250XG5tYWluIHtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbn1cblxuLy8gQ29udGVudCBncm91cGluZ1xuLy8gMS4gUmVzZXQgRmlyZWZveCdzIGdyYXkgY29sb3JcblxuaHIge1xuICAgIG1hcmdpbjogJGhyLW1hcmdpbi15IDA7XG4gICAgY29sb3I6ICRoci1jb2xvcjsgLy8gMVxuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItdG9wOiAkaHItYm9yZGVyLXdpZHRoIHNvbGlkICRoci1ib3JkZXItY29sb3I7XG4gICAgb3BhY2l0eTogJGhyLW9wYWNpdHk7XG59XG5cbi8vIFJlc2V0IG1hcmdpbnMgb24gcGFyYWdyYXBoc1xuXG4vLyBTaW1pbGFybHksIHRoZSB0b3AgbWFyZ2luIG9uIGA8cD5gcyBnZXQgcmVzZXQuIEhvd2V2ZXIsIHdlIGFsc28gcmVzZXQgdGhlXG4vLyBib3R0b20gbWFyZ2luIHRvIHVzZSBgcmVtYCB1bml0cyBpbnN0ZWFkIG9mIGBlbWAuXG5cbnAge1xuICAgIG1hcmdpbi10b3A6IDA7XG59XG5cbi8vIEFiYnJldmlhdGlvbnNcblxuLy8gMS4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIE9wZXJhLCBhbmQgU2FmYXJpLlxuLy8gMi4gQWRkIGV4cGxpY2l0IGN1cnNvciB0byBpbmRpY2F0ZSBjaGFuZ2VkIGJlaGF2aW9yLlxuLy8gMy4gUHJldmVudCB0aGUgdGV4dC1kZWNvcmF0aW9uIHRvIGJlIHNraXBwZWQuXG5cbmFiYnJbdGl0bGVdIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDFcbiAgICBjdXJzb3I6IGhlbHA7IC8vIDJcbiAgICB0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IG5vbmU7IC8vIDNcbn1cblxuLy8gQWRkcmVzc1xuXG5hZGRyZXNzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuLy8gTGlzdHNcblxub2wsXG51bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG5vbCBvbCxcbnVsIHVsLFxub2wgdWwsXG51bCBvbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuZHQge1xuICAgIGZvbnQtd2VpZ2h0OiAkZHQtZm9udC13ZWlnaHQ7XG59XG5cbi8vIDEuIFVuZG8gYnJvd3NlciBkZWZhdWx0XG5cbmRkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDA7IC8vIDFcbn1cblxuLy8gQmxvY2txdW90ZVxuXG5ibG9ja3F1b3RlIHtcbiAgICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG4vLyBTdHJvbmdcblxuLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaVxuXG5iLFxuc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlcjtcbn1cblxuLy8gTWFya1xuXG5tYXJrIHtcbiAgICBwYWRkaW5nOiAkbWFyay1wYWRkaW5nO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1oaWdobGlnaHQtYmcpO1xufVxuXG4vLyBTdWIgYW5kIFN1cFxuXG4vLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbi8vIGFsbCBicm93c2Vycy5cblxuc3ViLFxuc3VwIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJHN1Yi1zdXAtZm9udC1zaXplKTtcblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gICAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuICAgIHRvcDogLTAuNWVtO1xufVxuXG4vLyBMaW5rc1xuXG5hIHtcbiAgICBjb2xvcjogY3VycmVudGNvbG9yO1xuXG4gICAgJjp3aGVyZSg6bm90KFtjbGFzcyo9J19fJ10pKSB7XG4gICAgICAgICY6bGluayxcbiAgICAgICAgJjp2aXNpdGVkIHtcbiAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGxpbmspO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gQW5kIHVuZG8gdGhlc2Ugc3R5bGVzIGZvciBwbGFjZWhvbGRlciBsaW5rcy9uYW1lZCBhbmNob3JzICh3aXRob3V0IGhyZWYpLlxuLy8gSXQgd291bGQgYmUgbW9yZSBzdHJhaWdodGZvcndhcmQgdG8ganVzdCB1c2UgYVtocmVmXSBpbiBwcmV2aW91cyBibG9jaywgYnV0IHRoYXRcbi8vIGNhdXNlcyBzcGVjaWZpY2l0eSBpc3N1ZXMgaW4gbWFueSBvdGhlciBzdHlsZXMgdGhhdCBhcmUgdG9vIGNvbXBsZXggdG8gZml4LlxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTk0MDJcbi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vdC1ub3RhdGlvblxuYTpub3QoW2hyZWZdKTpub3QoW2NsYXNzXSkge1xuICAgICY6bGluayxcbiAgICAmOnZpc2l0ZWQsXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG59XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW5vdC1ub3RhdGlvblxuXG4vLyBDb2RlXG5cbnByZSxcbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoMWVtKTsgLy8gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuXG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1jb2RlO1xufVxuXG4vLyAxLiBSZW1vdmUgYnJvd3NlciBkZWZhdWx0IHRvcCBtYXJnaW5cbi8vIDIuIFJlc2V0IGJyb3dzZXIgZGVmYXVsdCBvZiBgMWVtYCB0byB1c2UgYHJlbWBzXG4vLyAzLiBEb24ndCBhbGxvdyBjb250ZW50IHRvIGJyZWFrIG91dHNpZGVcblxucHJlIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGNvZGUtZm9udC1zaXplKTtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi10b3A6IDA7IC8vIDFcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyAvLyAyXG4gICAgb3ZlcmZsb3c6IGF1dG87IC8vIDNcbiAgICBjb2xvcjogJHByZS1jb2xvcjtcblxuICAgIC8vIEFjY291bnQgZm9yIHNvbWUgY29kZSBvdXRwdXRzIHRoYXQgcGxhY2UgY29kZSB0YWdzIGluIHByZSB0YWdzXG4gICAgY29kZSB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcblxuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgb3ZlcmZsb3ctd3JhcDogbm9ybWFsO1xuICAgIH1cbn1cblxuY29kZSB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRjb2RlLWZvbnQtc2l6ZSk7XG5cbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWNvZGUtY29sb3IpO1xuICAgIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG5cbiAgICAvLyBTdHJlYW1saW5lIHRoZSBzdHlsZSB3aGVuIGluc2lkZSBhbmNob3JzIHRvIGF2b2lkIGJyb2tlbiB1bmRlcmxpbmUgYW5kIG1vcmVcbiAgICBhID4gJiB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cbn1cblxua2JkIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGtiZC1mb250LXNpemUpO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtc20pO1xuXG4gICAgcGFkZGluZzogJGtiZC1wYWRkaW5nLXkgJGtiZC1wYWRkaW5nLXg7XG4gICAgY29sb3I6ICRrYmQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGtiZC1iZztcblxuICAgIGtiZCB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxZW0pO1xuXG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkbmVzdGVkLWtiZC1mb250LXdlaWdodDtcbiAgICB9XG59XG5cbi8vIEZpZ3VyZXNcblxuLy8gQXBwbHkgYSBjb25zaXN0ZW50IG1hcmdpbiBzdHJhdGVneSAobWF0Y2hlcyBvdXIgdHlwZSBzdHlsZXMpLlxuXG5maWd1cmUge1xuICAgIG1hcmdpbjogMCAwIDFyZW07XG59XG5cbi8vIEltYWdlcyBhbmQgY29udGVudFxuXG5pbWcsXG5zdmcge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8vIFRhYmxlc1xuXG4vLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzXG5cbnRhYmxlIHtcbiAgICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuXG5jYXB0aW9uIHtcbiAgICBwYWRkaW5nLXRvcDogJHRhYmxlLWNlbGwtcGFkZGluZy15O1xuICAgIHBhZGRpbmctYm90dG9tOiAkdGFibGUtY2VsbC1wYWRkaW5nLXk7XG4gICAgY29sb3I6ICR0YWJsZS1jYXB0aW9uLWNvbG9yO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi8vIDEuIFJlbW92ZXMgZm9udC13ZWlnaHQgYm9sZCBieSBpbmhlcml0aW5nXG4vLyAyLiBNYXRjaGVzIGRlZmF1bHQgYDx0ZD5gIGFsaWdubWVudCBieSBpbmhlcml0aW5nIGB0ZXh0LWFsaWduYC5cbi8vIDMuIEZpeCBhbGlnbm1lbnQgZm9yIFNhZmFyaVxuXG50aCB7XG4gICAgZm9udC13ZWlnaHQ6ICR0YWJsZS10aC1mb250LXdlaWdodDsgLy8gMVxuICAgIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIDJcbiAgICB0ZXh0LWFsaWduOiAtd2Via2l0LW1hdGNoLXBhcmVudDsgLy8gM1xufVxuXG50aGVhZCxcbnRib2R5LFxudGZvb3QsXG50cixcbnRkLFxudGgge1xuICAgIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogMDtcbn1cblxuLy8gSW1hZ2VzXG5cbmltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG5zdmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZpbGw6IGN1cnJlbnRjb2xvcjtcbiAgICBzdHJva2U6IGN1cnJlbnRjb2xvcjtcbn1cblxuLy8gRm9ybXNcblxuLy8gMS4gQWxsb3cgbGFiZWxzIHRvIHVzZSBgbWFyZ2luYCBmb3Igc3BhY2luZy5cblxubGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLy8gMVxufVxuXG5idXR0b24sXG5pbnB1dCB7XG4gICAgYm9yZGVyOiAwO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IDA7XG4gICAgfVxufVxuXG5idXR0b24ge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgbWFyZ2luOiAwO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcblxuICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cbn1cblxuLy8gRXhwbGljaXRseSByZW1vdmUgZm9jdXMgb3V0bGluZSBpbiBDaHJvbWl1bSB3aGVuIGl0IHNob3VsZG4ndCBiZVxuLy8gdmlzaWJsZSAoZS5nLiBhcyByZXN1bHQgb2YgbW91c2UgY2xpY2sgb3IgdG91Y2ggdGFwKS4gSXQgYWxyZWFkeVxuLy8gc2hvdWxkIGJlIGRvaW5nIHRoaXMgYXV0b21hdGljYWxseSwgYnV0IHNlZW1zIHRvIGN1cnJlbnRseSBiZVxuLy8gY29uZnVzZWQgYW5kIGFwcGxpZXMgaXRzIHZlcnkgdmlzaWJsZSB0d28tdG9uZSBvdXRsaW5lIGFueXdheS5cblxuYnV0dG9uOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xuICAgIG91dGxpbmU6IDA7XG59XG5cbi8vIDEuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaVxuXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbm9wdGdyb3VwLFxudGV4dGFyZWEge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBtYXJnaW46IDA7IC8vIDFcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94XG5idXR0b24sXG5zZWxlY3Qge1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vLyBTZXQgdGhlIGN1cnNvciBmb3Igbm9uLWA8YnV0dG9uPmAgYnV0dG9uc1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8zMDU2MlxuW3JvbGU9J2J1dHRvbiddIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbnNlbGVjdCB7XG4gICAgLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB3b3JkLXdyYXAgaW4gU2FmYXJpLlxuICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0OTkwXG4gICAgb3ZlcmZsb3ctd3JhcDogbm9ybWFsO1xuXG4gICAgLy8gVW5kbyB0aGUgb3BhY2l0eSBjaGFuZ2UgZnJvbSBDaHJvbWVcbiAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgdGhlIGRlZmF1bHQgc3R5bGVzIGluIFNhZmFyaSBhbmQgcmVwbGFjZSB3aXRoIHNvbWV0aGluZy4uLiBhIGxpdHRsZSBtb3JlIHR5cGljYWxcbiAgICBAc3VwcG9ydHMgKGJhY2tncm91bmQ6IC13ZWJraXQtbmFtZWQtaW1hZ2UoaSkpIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBkYXRhLWNvbnRhaW5lci10cmFuc2Zvcm09J3RyYW5zbGF0ZSgzKScgdmlld0JveD0nMCAwIDE2IDIwJyUzRSUzQ3BhdGggZD0nTTggMCAzIDdoMTBMOCAwek0zIDlsNSA3IDUtN0gzeicvJTNFJTNDL3N2ZyUzRVwiKSBuby1yZXBlYXQgdG9wIDUyJSByaWdodCA0cHg7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTVweCAxNXB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgY29sb3I6IGZpZWxkdGV4dDtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG59XG5cbi8vIFJlbW92ZSB0aGUgZHJvcGRvd24gYXJyb3cgb25seSBmcm9tIHRleHQgdHlwZSBpbnB1dHMgYnVpbHQgd2l0aCBkYXRhbGlzdHMgaW4gQ2hyb21lLlxuLy8gU2VlIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vYS81NDk5NzExOFxuLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm90LW5vdGF0aW9uXG5bbGlzdF06bm90KFt0eXBlPSdkYXRlJ10pOm5vdChbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSk6bm90KFt0eXBlPSdtb250aCddKTpub3QoW3R5cGU9J3dlZWsnXSk6bm90KFt0eXBlPSd0aW1lJ10pIHtcbiAgICAmOjotd2Via2l0LWNhbGVuZGFyLXBpY2tlci1pbmRpY2F0b3Ige1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuLy8gc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1ub3Qtbm90YXRpb25cblxuLy8gMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4vLyAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4vLyAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuLy8gMy4gT3BpbmlvbmF0ZWQ6IGFkZCAnaGFuZCcgY3Vyc29yIHRvIG5vbi1kaXNhYmxlZCBidXR0b24gZWxlbWVudHMuXG5cbmJ1dHRvbixcblt0eXBlPSdidXR0b24nXSwgLy8gMVxuW3R5cGU9J3Jlc2V0J10sXG5bdHlwZT0nc3VibWl0J10ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAyXG5cbiAgICBAaWYgJGVuYWJsZS1idXR0b24tcG9pbnRlcnMge1xuICAgICAgICAmOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjsgLy8gM1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBGb2N1cyBzdHlsZXMgZm9yIHRleHQgaW5wdXRzIGluIG5vbi10eXBpY2FsIHN0cnVjdHVyZVxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vdC1ub3RhdGlvblxuaW5wdXQ6d2hlcmUoOm5vdChbdHlwZT0nYnV0dG9uJ10pOm5vdChbdHlwZT0nc3VibWl0J10pOm5vdChbdHlwZT0ncmVzZXQnXSkpLFxudGV4dGFyZWEge1xuICAgICo6bm90KC5mb3JtLWlucHV0KSA+ICYge1xuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAncHJpbWFyeScpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBSZW1vdmUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGZyb20gRmlyZWZveCwgYnV0IGRvbid0IHJlc3RvcmUgdGhlIG91dGxpbmUgbGlrZSBOb3JtYWxpemUuXG5cbjo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8vIDEuIFRleHRhcmVhcyBzaG91bGQgcmVhbGx5IG9ubHkgcmVzaXplIHZlcnRpY2FsbHkgc28gdGhleSBkb24ndCBicmVhayB0aGVpciAoaG9yaXpvbnRhbCkgY29udGFpbmVycy5cblxudGV4dGFyZWEge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICByZXNpemU6IHZlcnRpY2FsO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgIH1cbn1cblxuLy8gMS4gQnJvd3NlcnMgc2V0IGEgZGVmYXVsdCBgbWluLXdpZHRoOiBtaW4tY29udGVudDtgIG9uIGZpZWxkc2V0cyxcbi8vICAgIHVubGlrZSBlLmcuIGA8ZGl2PmBzLCB3aGljaCBoYXZlIGBtaW4td2lkdGg6IDA7YCBieSBkZWZhdWx0LlxuLy8gICAgU28gd2UgcmVzZXQgdGhhdCB0byBlbnN1cmUgZmllbGRzZXRzIGJlaGF2ZSBtb3JlIGxpa2UgYSBzdGFuZGFyZCBibG9jayBlbGVtZW50LlxuLy8gICAgU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTlcbi8vICAgIGFuZCBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS8jdGhlLWZpZWxkc2V0LWFuZC1sZWdlbmQtZWxlbWVudHNcbi8vIDIuIFJlc2V0IHRoZSBkZWZhdWx0IG91dGxpbmUgYmVoYXZpb3Igb2YgZmllbGRzZXRzIHNvIHRoZXkgZG9uJ3QgYWZmZWN0IHBhZ2UgbGF5b3V0LlxuXG5maWVsZHNldCB7XG4gICAgbWluLXdpZHRoOiAwOyAvLyAxXG4gICAgcGFkZGluZzogMDsgLy8gMlxuICAgIG1hcmdpbjogMDsgLy8gMlxuICAgIGJvcmRlcjogMDsgLy8gMlxufVxuXG4vLyAxLiBCeSB1c2luZyBgZmxvYXQ6IGxlZnRgLCB0aGUgbGVnZW5kIHdpbGwgYmVoYXZlIGxpa2UgYSBibG9jayBlbGVtZW50LlxuLy8gICAgVGhpcyB3YXkgdGhlIGJvcmRlciBvZiBhIGZpZWxkc2V0IHdyYXBzIGFyb3VuZCB0aGUgbGVnZW5kIGlmIHByZXNlbnQuXG4vLyAyLiBGaXggd3JhcHBpbmcgYnVnLlxuLy8gICAgU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjk3MTJcblxubGVnZW5kIHtcbiAgICBmb250LXNpemU6ICRsZWdlbmQtZm9udC1zaXplO1xuICAgIGZsb2F0OiBsZWZ0OyAvLyAxXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAkbGVnZW5kLW1hcmdpbi1ib3R0b207XG4gICAgZm9udC13ZWlnaHQ6ICRsZWdlbmQtZm9udC13ZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcblxuICAgICsgKiB7XG4gICAgICAgIGNsZWFyOiBsZWZ0OyAvLyAyXG4gICAgfVxufVxuXG4vLyBhdXRvZmlsbCBzdHlsZVxuaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbCxcbmlucHV0Oi13ZWJraXQtYXV0b2ZpbGw6aG92ZXIsXG5pbnB1dDotd2Via2l0LWF1dG9maWxsOmZvY3VzLFxuaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbDphY3RpdmUge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDMwcHggI2ZmZiBpbnNldCAhaW1wb3J0YW50O1xufVxuXG5pbnB1dFt0eXBlPSdzZWFyY2gnXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbixcbmlucHV0W3R5cGU9J3NlYXJjaCddOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IC8vIElubmVyLXBhZGRpbmcgaXNzdWVzIGluIENocm9tZSBPU1gsIFNhZmFyaSA1XG59XG5cbi8vIEZpeCBoZWlnaHQgb2YgaW5wdXRzIHdpdGggYSB0eXBlIG9mIGRhdGV0aW1lLWxvY2FsLCBkYXRlLCBtb250aCwgd2Vlaywgb3IgdGltZVxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTg4NDJcblxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtZmllbGRzLXdyYXBwZXIsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC10ZXh0LFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtbWludXRlLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtaG91ci1maWVsZCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWRheS1maWVsZCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1vbnRoLWZpZWxkLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQteWVhci1maWVsZCB7XG4gICAgcGFkZGluZzogMDtcbn1cblxuOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uIHtcbiAgICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vIDEuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuLy8gMi4gVGhpcyBvdmVycmlkZXMgdGhlIGV4dHJhIHJvdW5kZWQgY29ybmVycyBvbiBzZWFyY2ggaW5wdXRzIGluIGlPUyBzbyB0aGF0IG91clxuLy8gICAgYC5mb3JtLWNvbnRyb2xgIGNsYXNzIGNhbiBwcm9wZXJseSBzdHlsZSB0aGVtLiBOb3RlIHRoYXQgdGhpcyBjYW5ub3Qgc2ltcGx5XG4vLyAgICBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXG4vLyAgICBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTg2LlxuXG5bdHlwZT0nc2VhcmNoJ10ge1xuICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvLyAxXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIDJcbn1cblxuLy8gMS4gQSBmZXcgaW5wdXQgdHlwZXMgc2hvdWxkIHN0YXkgTFRSXG4vLyBTZWUgaHR0cHM6Ly9ydGxzdHlsaW5nLmNvbS9wb3N0cy9ydGwtc3R5bGluZyNmb3JtLWlucHV0c1xuLy8gMi4gUlRMIG9ubHkgb3V0cHV0XG4vLyBTZWUgaHR0cHM6Ly9ydGxjc3MuY29tL2xlYXJuL3VzYWdlLWd1aWRlL2NvbnRyb2wtZGlyZWN0aXZlcy8jcmF3XG5cbi8qIHJ0bDpyYXc6XG5bdHlwZT0ndGVsJ10sXG5bdHlwZT0ndXJsJ10sXG5bdHlwZT0nZW1haWwnXSxcblt0eXBlPSdudW1iZXInXSB7XG4gIGRpcmVjdGlvbjogbHRyO1xufVxuKi9cblxuLy8gUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuXG46Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy8gUmVtb3ZlIHBhZGRpbmcgYXJvdW5kIGNvbG9yIHBpY2tlcnMgaW4gd2Via2l0IGJyb3dzZXJzXG5cbjo6LXdlYmtpdC1jb2xvci1zd2F0Y2gtd3JhcHBlciB7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLy8gMS4gSW5oZXJpdCBmb250IGZhbWlseSBhbmQgbGluZSBoZWlnaHQgZm9yIGZpbGUgaW5wdXQgYnV0dG9uc1xuLy8gMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cblxuOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgZm9udDogaW5oZXJpdDsgLy8gMVxuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAyXG59XG5cbi8vIENvcnJlY3QgZWxlbWVudCBkaXNwbGF5c1xuXG5vdXRwdXQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuaWZyYW1lIHtcbiAgICAvLyBSZW1vdmUgYm9yZGVyIGZyb20gaWZyYW1lXG4gICAgYm9yZGVyOiAwO1xuXG4gICAgLy8gd2UgbmVlZCB0byBiZSBzbGlnaHRseSBtb3JlIHNwZWNpZmljIHNvIHRoYXQgd2UgZG8gbm90IGJyZWFrIEhldXJla2EtdHlwZSB3aWRnZXRzXG4gICAgOndoZXJlKC5jb250YWluZXIsIC5tb2RhbCkgJiB7XG4gICAgICAgIC8vIGtlZXAgcmVzcG9uc2l2ZSBidXQgZm9sbG93IGFzcGVjdCByYXRpb1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgQHN1cHBvcnRzIChhc3BlY3QtcmF0aW86IHZhcigtLWlmcmFtZS1hc3BlY3QtcmF0aW8sIDE2IC8gOSkpIHtcbiAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogdmFyKC0taWZyYW1lLWFzcGVjdC1yYXRpbywgMTYgLyA5KTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gU3VtbWFyeVxuXG4vLyAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnNcblxuc3VtbWFyeSB7XG4gICAgZGlzcGxheTogbGlzdC1pdGVtOyAvLyAxXG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4vLyBQcm9ncmVzc1xuXG4vLyBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuXG5wcm9ncmVzcyB7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vLyBIaWRkZW4gYXR0cmlidXRlXG5cbi8vIEFsd2F5cyBoaWRlIGFuIGVsZW1lbnQgd2l0aCB0aGUgYGhpZGRlbmAgSFRNTCBhdHRyaWJ1dGUuXG5cbltoaWRkZW5dIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8vIFJlc2V0IEZpcmVmb3ggYmVoYXZpb3VyIHdoZXJlIGJyIGNhbiBoYXZlIG1hcmdpbnNcbmJyIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbn1cbiIsIi8vIFZhcmlhYmxlc1xuLy9cbi8vIFZhcmlhYmxlcyBzaG91bGQgZm9sbG93IHRoZSBgJGNvbXBvbmVudC1zdGF0ZS1wcm9wZXJ0eS1zaXplYCBmb3JtdWxhIGZvclxuLy8gY29uc2lzdGVudCBuYW1pbmcuIEV4OiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3IgYW5kICRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMuXG5cbi8vIENvbG9yIHN5c3RlbVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZ3JheS1jb2xvci12YXJpYWJsZXNcbiR3aGl0ZTogICAgI2ZmZiAhZGVmYXVsdDtcbiRncmF5LTEwMDogI2Y4ZjlmYSAhZGVmYXVsdDtcbiRncmF5LTIwMDogI2U5ZWNlZiAhZGVmYXVsdDtcbiRncmF5LTMwMDogI2RlZTJlNiAhZGVmYXVsdDtcbiRncmF5LTQwMDogI2NlZDRkYSAhZGVmYXVsdDtcbiRncmF5LTUwMDogI2FkYjViZCAhZGVmYXVsdDtcbiRncmF5LTYwMDogIzZjNzU3ZCAhZGVmYXVsdDtcbiRncmF5LTcwMDogIzQ5NTA1NyAhZGVmYXVsdDtcbiRncmF5LTgwMDogIzM0M2E0MCAhZGVmYXVsdDtcbiRncmF5LTkwMDogIzIxMjUyOSAhZGVmYXVsdDtcbiRibGFjazogICAgIzAwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZ3JheS1jb2xvci12YXJpYWJsZXNcblxuLy8gZnVzdi1kaXNhYmxlXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZ3JheS1jb2xvcnMtbWFwXG4kZ3JheXM6IChcbiAgXCIxMDBcIjogJGdyYXktMTAwLFxuICBcIjIwMFwiOiAkZ3JheS0yMDAsXG4gIFwiMzAwXCI6ICRncmF5LTMwMCxcbiAgXCI0MDBcIjogJGdyYXktNDAwLFxuICBcIjUwMFwiOiAkZ3JheS01MDAsXG4gIFwiNjAwXCI6ICRncmF5LTYwMCxcbiAgXCI3MDBcIjogJGdyYXktNzAwLFxuICBcIjgwMFwiOiAkZ3JheS04MDAsXG4gIFwiOTAwXCI6ICRncmF5LTkwMFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZ3JheS1jb2xvcnMtbWFwXG4vLyBmdXN2LWVuYWJsZVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sb3ItdmFyaWFibGVzXG4kYmx1ZTogICAgIzBkNmVmZCAhZGVmYXVsdDtcbiRpbmRpZ286ICAjNjYxMGYyICFkZWZhdWx0O1xuJHB1cnBsZTogICM2ZjQyYzEgIWRlZmF1bHQ7XG4kcGluazogICAgI2Q2MzM4NCAhZGVmYXVsdDtcbiRyZWQ6ICAgICAjZGMzNTQ1ICFkZWZhdWx0O1xuJG9yYW5nZTogICNmZDdlMTQgIWRlZmF1bHQ7XG4keWVsbG93OiAgI2ZmYzEwNyAhZGVmYXVsdDtcbiRncmVlbjogICAjMTk4NzU0ICFkZWZhdWx0O1xuJHRlYWw6ICAgICMyMGM5OTcgIWRlZmF1bHQ7XG4kY3lhbjogICAgIzBkY2FmMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY29sb3ItdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjb2xvcnMtbWFwXG4kY29sb3JzOiAoXG4gIFwiYmx1ZVwiOiAgICAgICAkYmx1ZSxcbiAgXCJpbmRpZ29cIjogICAgICRpbmRpZ28sXG4gIFwicHVycGxlXCI6ICAgICAkcHVycGxlLFxuICBcInBpbmtcIjogICAgICAgJHBpbmssXG4gIFwicmVkXCI6ICAgICAgICAkcmVkLFxuICBcIm9yYW5nZVwiOiAgICAgJG9yYW5nZSxcbiAgXCJ5ZWxsb3dcIjogICAgICR5ZWxsb3csXG4gIFwiZ3JlZW5cIjogICAgICAkZ3JlZW4sXG4gIFwidGVhbFwiOiAgICAgICAkdGVhbCxcbiAgXCJjeWFuXCI6ICAgICAgICRjeWFuLFxuICBcImJsYWNrXCI6ICAgICAgJGJsYWNrLFxuICBcIndoaXRlXCI6ICAgICAgJHdoaXRlLFxuICBcImdyYXlcIjogICAgICAgJGdyYXktNjAwLFxuICBcImdyYXktZGFya1wiOiAgJGdyYXktODAwXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjb2xvcnMtbWFwXG5cbi8vIFRoZSBjb250cmFzdCByYXRpbyB0byByZWFjaCBhZ2FpbnN0IHdoaXRlLCB0byBkZXRlcm1pbmUgaWYgY29sb3IgY2hhbmdlcyBmcm9tIFwibGlnaHRcIiB0byBcImRhcmtcIi4gQWNjZXB0YWJsZSB2YWx1ZXMgZm9yIFdDQUcgMi4yIGFyZSAzLCA0LjUgYW5kIDcuXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL1dDQUcvI2NvbnRyYXN0LW1pbmltdW1cbiRtaW4tY29udHJhc3QtcmF0aW86ICAgNC41ICFkZWZhdWx0O1xuXG4vLyBDdXN0b21pemUgdGhlIGxpZ2h0IGFuZCBkYXJrIHRleHQgY29sb3JzIGZvciB1c2UgaW4gb3VyIGNvbG9yIGNvbnRyYXN0IGZ1bmN0aW9uLlxuJGNvbG9yLWNvbnRyYXN0LWRhcms6ICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGNvbG9yLWNvbnRyYXN0LWxpZ2h0OiAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4vLyBmdXN2LWRpc2FibGVcbiRibHVlLTEwMDogdGludC1jb2xvcigkYmx1ZSwgODAlKSAhZGVmYXVsdDtcbiRibHVlLTIwMDogdGludC1jb2xvcigkYmx1ZSwgNjAlKSAhZGVmYXVsdDtcbiRibHVlLTMwMDogdGludC1jb2xvcigkYmx1ZSwgNDAlKSAhZGVmYXVsdDtcbiRibHVlLTQwMDogdGludC1jb2xvcigkYmx1ZSwgMjAlKSAhZGVmYXVsdDtcbiRibHVlLTUwMDogJGJsdWUgIWRlZmF1bHQ7XG4kYmx1ZS02MDA6IHNoYWRlLWNvbG9yKCRibHVlLCAyMCUpICFkZWZhdWx0O1xuJGJsdWUtNzAwOiBzaGFkZS1jb2xvcigkYmx1ZSwgNDAlKSAhZGVmYXVsdDtcbiRibHVlLTgwMDogc2hhZGUtY29sb3IoJGJsdWUsIDYwJSkgIWRlZmF1bHQ7XG4kYmx1ZS05MDA6IHNoYWRlLWNvbG9yKCRibHVlLCA4MCUpICFkZWZhdWx0O1xuXG4kaW5kaWdvLTEwMDogdGludC1jb2xvcigkaW5kaWdvLCA4MCUpICFkZWZhdWx0O1xuJGluZGlnby0yMDA6IHRpbnQtY29sb3IoJGluZGlnbywgNjAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tMzAwOiB0aW50LWNvbG9yKCRpbmRpZ28sIDQwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTQwMDogdGludC1jb2xvcigkaW5kaWdvLCAyMCUpICFkZWZhdWx0O1xuJGluZGlnby01MDA6ICRpbmRpZ28gIWRlZmF1bHQ7XG4kaW5kaWdvLTYwMDogc2hhZGUtY29sb3IoJGluZGlnbywgMjAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tNzAwOiBzaGFkZS1jb2xvcigkaW5kaWdvLCA0MCUpICFkZWZhdWx0O1xuJGluZGlnby04MDA6IHNoYWRlLWNvbG9yKCRpbmRpZ28sIDYwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTkwMDogc2hhZGUtY29sb3IoJGluZGlnbywgODAlKSAhZGVmYXVsdDtcblxuJHB1cnBsZS0xMDA6IHRpbnQtY29sb3IoJHB1cnBsZSwgODAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtMjAwOiB0aW50LWNvbG9yKCRwdXJwbGUsIDYwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTMwMDogdGludC1jb2xvcigkcHVycGxlLCA0MCUpICFkZWZhdWx0O1xuJHB1cnBsZS00MDA6IHRpbnQtY29sb3IoJHB1cnBsZSwgMjAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtNTAwOiAkcHVycGxlICFkZWZhdWx0O1xuJHB1cnBsZS02MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDIwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTcwMDogc2hhZGUtY29sb3IoJHB1cnBsZSwgNDAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtODAwOiBzaGFkZS1jb2xvcigkcHVycGxlLCA2MCUpICFkZWZhdWx0O1xuJHB1cnBsZS05MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDgwJSkgIWRlZmF1bHQ7XG5cbiRwaW5rLTEwMDogdGludC1jb2xvcigkcGluaywgODAlKSAhZGVmYXVsdDtcbiRwaW5rLTIwMDogdGludC1jb2xvcigkcGluaywgNjAlKSAhZGVmYXVsdDtcbiRwaW5rLTMwMDogdGludC1jb2xvcigkcGluaywgNDAlKSAhZGVmYXVsdDtcbiRwaW5rLTQwMDogdGludC1jb2xvcigkcGluaywgMjAlKSAhZGVmYXVsdDtcbiRwaW5rLTUwMDogJHBpbmsgIWRlZmF1bHQ7XG4kcGluay02MDA6IHNoYWRlLWNvbG9yKCRwaW5rLCAyMCUpICFkZWZhdWx0O1xuJHBpbmstNzAwOiBzaGFkZS1jb2xvcigkcGluaywgNDAlKSAhZGVmYXVsdDtcbiRwaW5rLTgwMDogc2hhZGUtY29sb3IoJHBpbmssIDYwJSkgIWRlZmF1bHQ7XG4kcGluay05MDA6IHNoYWRlLWNvbG9yKCRwaW5rLCA4MCUpICFkZWZhdWx0O1xuXG4kcmVkLTEwMDogdGludC1jb2xvcigkcmVkLCA4MCUpICFkZWZhdWx0O1xuJHJlZC0yMDA6IHRpbnQtY29sb3IoJHJlZCwgNjAlKSAhZGVmYXVsdDtcbiRyZWQtMzAwOiB0aW50LWNvbG9yKCRyZWQsIDQwJSkgIWRlZmF1bHQ7XG4kcmVkLTQwMDogdGludC1jb2xvcigkcmVkLCAyMCUpICFkZWZhdWx0O1xuJHJlZC01MDA6ICRyZWQgIWRlZmF1bHQ7XG4kcmVkLTYwMDogc2hhZGUtY29sb3IoJHJlZCwgMjAlKSAhZGVmYXVsdDtcbiRyZWQtNzAwOiBzaGFkZS1jb2xvcigkcmVkLCA0MCUpICFkZWZhdWx0O1xuJHJlZC04MDA6IHNoYWRlLWNvbG9yKCRyZWQsIDYwJSkgIWRlZmF1bHQ7XG4kcmVkLTkwMDogc2hhZGUtY29sb3IoJHJlZCwgODAlKSAhZGVmYXVsdDtcblxuJG9yYW5nZS0xMDA6IHRpbnQtY29sb3IoJG9yYW5nZSwgODAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtMjAwOiB0aW50LWNvbG9yKCRvcmFuZ2UsIDYwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTMwMDogdGludC1jb2xvcigkb3JhbmdlLCA0MCUpICFkZWZhdWx0O1xuJG9yYW5nZS00MDA6IHRpbnQtY29sb3IoJG9yYW5nZSwgMjAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtNTAwOiAkb3JhbmdlICFkZWZhdWx0O1xuJG9yYW5nZS02MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDIwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTcwMDogc2hhZGUtY29sb3IoJG9yYW5nZSwgNDAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtODAwOiBzaGFkZS1jb2xvcigkb3JhbmdlLCA2MCUpICFkZWZhdWx0O1xuJG9yYW5nZS05MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDgwJSkgIWRlZmF1bHQ7XG5cbiR5ZWxsb3ctMTAwOiB0aW50LWNvbG9yKCR5ZWxsb3csIDgwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTIwMDogdGludC1jb2xvcigkeWVsbG93LCA2MCUpICFkZWZhdWx0O1xuJHllbGxvdy0zMDA6IHRpbnQtY29sb3IoJHllbGxvdywgNDAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctNDAwOiB0aW50LWNvbG9yKCR5ZWxsb3csIDIwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTUwMDogJHllbGxvdyAhZGVmYXVsdDtcbiR5ZWxsb3ctNjAwOiBzaGFkZS1jb2xvcigkeWVsbG93LCAyMCUpICFkZWZhdWx0O1xuJHllbGxvdy03MDA6IHNoYWRlLWNvbG9yKCR5ZWxsb3csIDQwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTgwMDogc2hhZGUtY29sb3IoJHllbGxvdywgNjAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctOTAwOiBzaGFkZS1jb2xvcigkeWVsbG93LCA4MCUpICFkZWZhdWx0O1xuXG4kZ3JlZW4tMTAwOiB0aW50LWNvbG9yKCRncmVlbiwgODAlKSAhZGVmYXVsdDtcbiRncmVlbi0yMDA6IHRpbnQtY29sb3IoJGdyZWVuLCA2MCUpICFkZWZhdWx0O1xuJGdyZWVuLTMwMDogdGludC1jb2xvcigkZ3JlZW4sIDQwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tNDAwOiB0aW50LWNvbG9yKCRncmVlbiwgMjAlKSAhZGVmYXVsdDtcbiRncmVlbi01MDA6ICRncmVlbiAhZGVmYXVsdDtcbiRncmVlbi02MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgMjAlKSAhZGVmYXVsdDtcbiRncmVlbi03MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgNDAlKSAhZGVmYXVsdDtcbiRncmVlbi04MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgNjAlKSAhZGVmYXVsdDtcbiRncmVlbi05MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgODAlKSAhZGVmYXVsdDtcblxuJHRlYWwtMTAwOiB0aW50LWNvbG9yKCR0ZWFsLCA4MCUpICFkZWZhdWx0O1xuJHRlYWwtMjAwOiB0aW50LWNvbG9yKCR0ZWFsLCA2MCUpICFkZWZhdWx0O1xuJHRlYWwtMzAwOiB0aW50LWNvbG9yKCR0ZWFsLCA0MCUpICFkZWZhdWx0O1xuJHRlYWwtNDAwOiB0aW50LWNvbG9yKCR0ZWFsLCAyMCUpICFkZWZhdWx0O1xuJHRlYWwtNTAwOiAkdGVhbCAhZGVmYXVsdDtcbiR0ZWFsLTYwMDogc2hhZGUtY29sb3IoJHRlYWwsIDIwJSkgIWRlZmF1bHQ7XG4kdGVhbC03MDA6IHNoYWRlLWNvbG9yKCR0ZWFsLCA0MCUpICFkZWZhdWx0O1xuJHRlYWwtODAwOiBzaGFkZS1jb2xvcigkdGVhbCwgNjAlKSAhZGVmYXVsdDtcbiR0ZWFsLTkwMDogc2hhZGUtY29sb3IoJHRlYWwsIDgwJSkgIWRlZmF1bHQ7XG5cbiRjeWFuLTEwMDogdGludC1jb2xvcigkY3lhbiwgODAlKSAhZGVmYXVsdDtcbiRjeWFuLTIwMDogdGludC1jb2xvcigkY3lhbiwgNjAlKSAhZGVmYXVsdDtcbiRjeWFuLTMwMDogdGludC1jb2xvcigkY3lhbiwgNDAlKSAhZGVmYXVsdDtcbiRjeWFuLTQwMDogdGludC1jb2xvcigkY3lhbiwgMjAlKSAhZGVmYXVsdDtcbiRjeWFuLTUwMDogJGN5YW4gIWRlZmF1bHQ7XG4kY3lhbi02MDA6IHNoYWRlLWNvbG9yKCRjeWFuLCAyMCUpICFkZWZhdWx0O1xuJGN5YW4tNzAwOiBzaGFkZS1jb2xvcigkY3lhbiwgNDAlKSAhZGVmYXVsdDtcbiRjeWFuLTgwMDogc2hhZGUtY29sb3IoJGN5YW4sIDYwJSkgIWRlZmF1bHQ7XG4kY3lhbi05MDA6IHNoYWRlLWNvbG9yKCRjeWFuLCA4MCUpICFkZWZhdWx0O1xuXG4kYmx1ZXM6IChcbiAgXCJibHVlLTEwMFwiOiAkYmx1ZS0xMDAsXG4gIFwiYmx1ZS0yMDBcIjogJGJsdWUtMjAwLFxuICBcImJsdWUtMzAwXCI6ICRibHVlLTMwMCxcbiAgXCJibHVlLTQwMFwiOiAkYmx1ZS00MDAsXG4gIFwiYmx1ZS01MDBcIjogJGJsdWUtNTAwLFxuICBcImJsdWUtNjAwXCI6ICRibHVlLTYwMCxcbiAgXCJibHVlLTcwMFwiOiAkYmx1ZS03MDAsXG4gIFwiYmx1ZS04MDBcIjogJGJsdWUtODAwLFxuICBcImJsdWUtOTAwXCI6ICRibHVlLTkwMFxuKSAhZGVmYXVsdDtcblxuJGluZGlnb3M6IChcbiAgXCJpbmRpZ28tMTAwXCI6ICRpbmRpZ28tMTAwLFxuICBcImluZGlnby0yMDBcIjogJGluZGlnby0yMDAsXG4gIFwiaW5kaWdvLTMwMFwiOiAkaW5kaWdvLTMwMCxcbiAgXCJpbmRpZ28tNDAwXCI6ICRpbmRpZ28tNDAwLFxuICBcImluZGlnby01MDBcIjogJGluZGlnby01MDAsXG4gIFwiaW5kaWdvLTYwMFwiOiAkaW5kaWdvLTYwMCxcbiAgXCJpbmRpZ28tNzAwXCI6ICRpbmRpZ28tNzAwLFxuICBcImluZGlnby04MDBcIjogJGluZGlnby04MDAsXG4gIFwiaW5kaWdvLTkwMFwiOiAkaW5kaWdvLTkwMFxuKSAhZGVmYXVsdDtcblxuJHB1cnBsZXM6IChcbiAgXCJwdXJwbGUtMTAwXCI6ICRwdXJwbGUtMTAwLFxuICBcInB1cnBsZS0yMDBcIjogJHB1cnBsZS0yMDAsXG4gIFwicHVycGxlLTMwMFwiOiAkcHVycGxlLTMwMCxcbiAgXCJwdXJwbGUtNDAwXCI6ICRwdXJwbGUtNDAwLFxuICBcInB1cnBsZS01MDBcIjogJHB1cnBsZS01MDAsXG4gIFwicHVycGxlLTYwMFwiOiAkcHVycGxlLTYwMCxcbiAgXCJwdXJwbGUtNzAwXCI6ICRwdXJwbGUtNzAwLFxuICBcInB1cnBsZS04MDBcIjogJHB1cnBsZS04MDAsXG4gIFwicHVycGxlLTkwMFwiOiAkcHVycGxlLTkwMFxuKSAhZGVmYXVsdDtcblxuJHBpbmtzOiAoXG4gIFwicGluay0xMDBcIjogJHBpbmstMTAwLFxuICBcInBpbmstMjAwXCI6ICRwaW5rLTIwMCxcbiAgXCJwaW5rLTMwMFwiOiAkcGluay0zMDAsXG4gIFwicGluay00MDBcIjogJHBpbmstNDAwLFxuICBcInBpbmstNTAwXCI6ICRwaW5rLTUwMCxcbiAgXCJwaW5rLTYwMFwiOiAkcGluay02MDAsXG4gIFwicGluay03MDBcIjogJHBpbmstNzAwLFxuICBcInBpbmstODAwXCI6ICRwaW5rLTgwMCxcbiAgXCJwaW5rLTkwMFwiOiAkcGluay05MDBcbikgIWRlZmF1bHQ7XG5cbiRyZWRzOiAoXG4gIFwicmVkLTEwMFwiOiAkcmVkLTEwMCxcbiAgXCJyZWQtMjAwXCI6ICRyZWQtMjAwLFxuICBcInJlZC0zMDBcIjogJHJlZC0zMDAsXG4gIFwicmVkLTQwMFwiOiAkcmVkLTQwMCxcbiAgXCJyZWQtNTAwXCI6ICRyZWQtNTAwLFxuICBcInJlZC02MDBcIjogJHJlZC02MDAsXG4gIFwicmVkLTcwMFwiOiAkcmVkLTcwMCxcbiAgXCJyZWQtODAwXCI6ICRyZWQtODAwLFxuICBcInJlZC05MDBcIjogJHJlZC05MDBcbikgIWRlZmF1bHQ7XG5cbiRvcmFuZ2VzOiAoXG4gIFwib3JhbmdlLTEwMFwiOiAkb3JhbmdlLTEwMCxcbiAgXCJvcmFuZ2UtMjAwXCI6ICRvcmFuZ2UtMjAwLFxuICBcIm9yYW5nZS0zMDBcIjogJG9yYW5nZS0zMDAsXG4gIFwib3JhbmdlLTQwMFwiOiAkb3JhbmdlLTQwMCxcbiAgXCJvcmFuZ2UtNTAwXCI6ICRvcmFuZ2UtNTAwLFxuICBcIm9yYW5nZS02MDBcIjogJG9yYW5nZS02MDAsXG4gIFwib3JhbmdlLTcwMFwiOiAkb3JhbmdlLTcwMCxcbiAgXCJvcmFuZ2UtODAwXCI6ICRvcmFuZ2UtODAwLFxuICBcIm9yYW5nZS05MDBcIjogJG9yYW5nZS05MDBcbikgIWRlZmF1bHQ7XG5cbiR5ZWxsb3dzOiAoXG4gIFwieWVsbG93LTEwMFwiOiAkeWVsbG93LTEwMCxcbiAgXCJ5ZWxsb3ctMjAwXCI6ICR5ZWxsb3ctMjAwLFxuICBcInllbGxvdy0zMDBcIjogJHllbGxvdy0zMDAsXG4gIFwieWVsbG93LTQwMFwiOiAkeWVsbG93LTQwMCxcbiAgXCJ5ZWxsb3ctNTAwXCI6ICR5ZWxsb3ctNTAwLFxuICBcInllbGxvdy02MDBcIjogJHllbGxvdy02MDAsXG4gIFwieWVsbG93LTcwMFwiOiAkeWVsbG93LTcwMCxcbiAgXCJ5ZWxsb3ctODAwXCI6ICR5ZWxsb3ctODAwLFxuICBcInllbGxvdy05MDBcIjogJHllbGxvdy05MDBcbikgIWRlZmF1bHQ7XG5cbiRncmVlbnM6IChcbiAgXCJncmVlbi0xMDBcIjogJGdyZWVuLTEwMCxcbiAgXCJncmVlbi0yMDBcIjogJGdyZWVuLTIwMCxcbiAgXCJncmVlbi0zMDBcIjogJGdyZWVuLTMwMCxcbiAgXCJncmVlbi00MDBcIjogJGdyZWVuLTQwMCxcbiAgXCJncmVlbi01MDBcIjogJGdyZWVuLTUwMCxcbiAgXCJncmVlbi02MDBcIjogJGdyZWVuLTYwMCxcbiAgXCJncmVlbi03MDBcIjogJGdyZWVuLTcwMCxcbiAgXCJncmVlbi04MDBcIjogJGdyZWVuLTgwMCxcbiAgXCJncmVlbi05MDBcIjogJGdyZWVuLTkwMFxuKSAhZGVmYXVsdDtcblxuJHRlYWxzOiAoXG4gIFwidGVhbC0xMDBcIjogJHRlYWwtMTAwLFxuICBcInRlYWwtMjAwXCI6ICR0ZWFsLTIwMCxcbiAgXCJ0ZWFsLTMwMFwiOiAkdGVhbC0zMDAsXG4gIFwidGVhbC00MDBcIjogJHRlYWwtNDAwLFxuICBcInRlYWwtNTAwXCI6ICR0ZWFsLTUwMCxcbiAgXCJ0ZWFsLTYwMFwiOiAkdGVhbC02MDAsXG4gIFwidGVhbC03MDBcIjogJHRlYWwtNzAwLFxuICBcInRlYWwtODAwXCI6ICR0ZWFsLTgwMCxcbiAgXCJ0ZWFsLTkwMFwiOiAkdGVhbC05MDBcbikgIWRlZmF1bHQ7XG5cbiRjeWFuczogKFxuICBcImN5YW4tMTAwXCI6ICRjeWFuLTEwMCxcbiAgXCJjeWFuLTIwMFwiOiAkY3lhbi0yMDAsXG4gIFwiY3lhbi0zMDBcIjogJGN5YW4tMzAwLFxuICBcImN5YW4tNDAwXCI6ICRjeWFuLTQwMCxcbiAgXCJjeWFuLTUwMFwiOiAkY3lhbi01MDAsXG4gIFwiY3lhbi02MDBcIjogJGN5YW4tNjAwLFxuICBcImN5YW4tNzAwXCI6ICRjeWFuLTcwMCxcbiAgXCJjeWFuLTgwMFwiOiAkY3lhbi04MDAsXG4gIFwiY3lhbi05MDBcIjogJGN5YW4tOTAwXG4pICFkZWZhdWx0O1xuLy8gZnVzdi1lbmFibGVcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWNvbG9yLXZhcmlhYmxlc1xuJHByaW1hcnk6ICAgICAgICRibHVlICFkZWZhdWx0O1xuJHNlY29uZGFyeTogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRzdWNjZXNzOiAgICAgICAkZ3JlZW4gIWRlZmF1bHQ7XG4kaW5mbzogICAgICAgICAgJGN5YW4gIWRlZmF1bHQ7XG4kd2FybmluZzogICAgICAgJHllbGxvdyAhZGVmYXVsdDtcbiRkYW5nZXI6ICAgICAgICAkcmVkICFkZWZhdWx0O1xuJGxpZ2h0OiAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRkYXJrOiAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWNvbG9yLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtY29sb3JzLW1hcFxuJHRoZW1lLWNvbG9yczogKFxuICBcInByaW1hcnlcIjogICAgJHByaW1hcnksXG4gIFwic2Vjb25kYXJ5XCI6ICAkc2Vjb25kYXJ5LFxuICBcInN1Y2Nlc3NcIjogICAgJHN1Y2Nlc3MsXG4gIFwiaW5mb1wiOiAgICAgICAkaW5mbyxcbiAgXCJ3YXJuaW5nXCI6ICAgICR3YXJuaW5nLFxuICBcImRhbmdlclwiOiAgICAgJGRhbmdlcixcbiAgXCJsaWdodFwiOiAgICAgICRsaWdodCxcbiAgXCJkYXJrXCI6ICAgICAgICRkYXJrXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1jb2xvcnMtbWFwXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS10ZXh0LXZhcmlhYmxlc1xuJHByaW1hcnktdGV4dC1lbXBoYXNpczogICBzaGFkZS1jb2xvcigkcHJpbWFyeSwgNjAlKSAhZGVmYXVsdDtcbiRzZWNvbmRhcnktdGV4dC1lbXBoYXNpczogc2hhZGUtY29sb3IoJHNlY29uZGFyeSwgNjAlKSAhZGVmYXVsdDtcbiRzdWNjZXNzLXRleHQtZW1waGFzaXM6ICAgc2hhZGUtY29sb3IoJHN1Y2Nlc3MsIDYwJSkgIWRlZmF1bHQ7XG4kaW5mby10ZXh0LWVtcGhhc2lzOiAgICAgIHNoYWRlLWNvbG9yKCRpbmZvLCA2MCUpICFkZWZhdWx0O1xuJHdhcm5pbmctdGV4dC1lbXBoYXNpczogICBzaGFkZS1jb2xvcigkd2FybmluZywgNjAlKSAhZGVmYXVsdDtcbiRkYW5nZXItdGV4dC1lbXBoYXNpczogICAgc2hhZGUtY29sb3IoJGRhbmdlciwgNjAlKSAhZGVmYXVsdDtcbiRsaWdodC10ZXh0LWVtcGhhc2lzOiAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGRhcmstdGV4dC1lbXBoYXNpczogICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLXRleHQtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1iZy1zdWJ0bGUtdmFyaWFibGVzXG4kcHJpbWFyeS1iZy1zdWJ0bGU6ICAgICAgIHRpbnQtY29sb3IoJHByaW1hcnksIDgwJSkgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LWJnLXN1YnRsZTogICAgIHRpbnQtY29sb3IoJHNlY29uZGFyeSwgODAlKSAhZGVmYXVsdDtcbiRzdWNjZXNzLWJnLXN1YnRsZTogICAgICAgdGludC1jb2xvcigkc3VjY2VzcywgODAlKSAhZGVmYXVsdDtcbiRpbmZvLWJnLXN1YnRsZTogICAgICAgICAgdGludC1jb2xvcigkaW5mbywgODAlKSAhZGVmYXVsdDtcbiR3YXJuaW5nLWJnLXN1YnRsZTogICAgICAgdGludC1jb2xvcigkd2FybmluZywgODAlKSAhZGVmYXVsdDtcbiRkYW5nZXItYmctc3VidGxlOiAgICAgICAgdGludC1jb2xvcigkZGFuZ2VyLCA4MCUpICFkZWZhdWx0O1xuJGxpZ2h0LWJnLXN1YnRsZTogICAgICAgICBtaXgoJGdyYXktMTAwLCAkd2hpdGUpICFkZWZhdWx0O1xuJGRhcmstYmctc3VidGxlOiAgICAgICAgICAkZ3JheS00MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWJnLXN1YnRsZS12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWJvcmRlci1zdWJ0bGUtdmFyaWFibGVzXG4kcHJpbWFyeS1ib3JkZXItc3VidGxlOiAgIHRpbnQtY29sb3IoJHByaW1hcnksIDYwJSkgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LWJvcmRlci1zdWJ0bGU6IHRpbnQtY29sb3IoJHNlY29uZGFyeSwgNjAlKSAhZGVmYXVsdDtcbiRzdWNjZXNzLWJvcmRlci1zdWJ0bGU6ICAgdGludC1jb2xvcigkc3VjY2VzcywgNjAlKSAhZGVmYXVsdDtcbiRpbmZvLWJvcmRlci1zdWJ0bGU6ICAgICAgdGludC1jb2xvcigkaW5mbywgNjAlKSAhZGVmYXVsdDtcbiR3YXJuaW5nLWJvcmRlci1zdWJ0bGU6ICAgdGludC1jb2xvcigkd2FybmluZywgNjAlKSAhZGVmYXVsdDtcbiRkYW5nZXItYm9yZGVyLXN1YnRsZTogICAgdGludC1jb2xvcigkZGFuZ2VyLCA2MCUpICFkZWZhdWx0O1xuJGxpZ2h0LWJvcmRlci1zdWJ0bGU6ICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kZGFyay1ib3JkZXItc3VidGxlOiAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtYm9yZGVyLXN1YnRsZS12YXJpYWJsZXNcblxuLy8gQ2hhcmFjdGVycyB3aGljaCBhcmUgZXNjYXBlZCBieSB0aGUgZXNjYXBlLXN2ZyBmdW5jdGlvblxuJGVzY2FwZWQtY2hhcmFjdGVyczogKFxuICAoXCI8XCIsIFwiJTNjXCIpLFxuICAoXCI+XCIsIFwiJTNlXCIpLFxuICAoXCIjXCIsIFwiJTIzXCIpLFxuICAoXCIoXCIsIFwiJTI4XCIpLFxuICAoXCIpXCIsIFwiJTI5XCIpLFxuKSAhZGVmYXVsdDtcblxuLy8gT3B0aW9uc1xuLy9cbi8vIFF1aWNrbHkgbW9kaWZ5IGdsb2JhbCBzdHlsaW5nIGJ5IGVuYWJsaW5nIG9yIGRpc2FibGluZyBvcHRpb25hbCBmZWF0dXJlcy5cblxuJGVuYWJsZS1jYXJldDogICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcm91bmRlZDogICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNoYWRvd3M6ICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JhZGllbnRzOiAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS10cmFuc2l0aW9uczogICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcmVkdWNlZC1tb3Rpb246ICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNtb290aC1zY3JvbGw6ICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1ncmlkLWNsYXNzZXM6ICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtY29udGFpbmVyLWNsYXNzZXM6ICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWNzc2dyaWQ6ICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtYnV0dG9uLXBvaW50ZXJzOiAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJmczogICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS12YWxpZGF0aW9uLWljb25zOiAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtbmVnYXRpdmUtbWFyZ2luczogICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1kZXByZWNhdGlvbi1tZXNzYWdlczogdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllczogIHRydWUgIWRlZmF1bHQ7XG5cbiRlbmFibGUtZGFyay1tb2RlOiAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kY29sb3ItbW9kZS10eXBlOiAgICAgICAgICAgICBkYXRhICFkZWZhdWx0OyAvLyBgZGF0YWAgb3IgYG1lZGlhLXF1ZXJ5YFxuXG4vLyBQcmVmaXggZm9yIDpyb290IENTUyB2YXJpYWJsZXNcblxuJHZhcmlhYmxlLXByZWZpeDogICAgICAgICAgICAgYnMtICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMCBmb3IgdGhlIHNob3J0ZXIgYCRwcmVmaXhgXG4kcHJlZml4OiAgICAgICAgICAgICAgICAgICAgICAkdmFyaWFibGUtcHJlZml4ICFkZWZhdWx0O1xuXG4vLyBHcmFkaWVudFxuLy9cbi8vIFRoZSBncmFkaWVudCB3aGljaCBpcyBhZGRlZCB0byBjb21wb25lbnRzIGlmIGAkZW5hYmxlLWdyYWRpZW50c2AgaXMgYHRydWVgXG4vLyBUaGlzIGdyYWRpZW50IGlzIGFsc28gYWRkZWQgdG8gZWxlbWVudHMgd2l0aCBgLmJnLWdyYWRpZW50YFxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHZhcmlhYmxlLWdyYWRpZW50XG4kZ3JhZGllbnQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoJHdoaXRlLCAuMTUpLCByZ2JhKCR3aGl0ZSwgMCkpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB2YXJpYWJsZS1ncmFkaWVudFxuXG4vLyBTcGFjaW5nXG4vL1xuLy8gQ29udHJvbCB0aGUgZGVmYXVsdCBzdHlsaW5nIG9mIG1vc3QgQm9vdHN0cmFwIGVsZW1lbnRzIGJ5IG1vZGlmeWluZyB0aGVzZVxuLy8gdmFyaWFibGVzLiBNb3N0bHkgZm9jdXNlZCBvbiBzcGFjaW5nLlxuLy8gWW91IGNhbiBhZGQgbW9yZSBlbnRyaWVzIHRvIHRoZSAkc3BhY2VycyBtYXAsIHNob3VsZCB5b3UgbmVlZCBtb3JlIHZhcmlhdGlvbi5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwYWNlci12YXJpYWJsZXMtbWFwc1xuJHNwYWNlcjogMXJlbSAhZGVmYXVsdDtcbiRzcGFjZXJzOiAoXG4gIDA6IDAsXG4gIDE6ICRzcGFjZXIgKiAuMjUsXG4gIDI6ICRzcGFjZXIgKiAuNSxcbiAgMzogJHNwYWNlcixcbiAgNDogJHNwYWNlciAqIDEuNSxcbiAgNTogJHNwYWNlciAqIDMsXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBzcGFjZXItdmFyaWFibGVzLW1hcHNcblxuLy8gUG9zaXRpb25cbi8vXG4vLyBEZWZpbmUgdGhlIGVkZ2UgcG9zaXRpb25pbmcgYW5jaG9ycyBvZiB0aGUgcG9zaXRpb24gdXRpbGl0aWVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcG9zaXRpb24tbWFwXG4kcG9zaXRpb24tdmFsdWVzOiAoXG4gIDA6IDAsXG4gIDUwOiA1MCUsXG4gIDEwMDogMTAwJVxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcG9zaXRpb24tbWFwXG5cbi8vIEJvZHlcbi8vXG4vLyBTZXR0aW5ncyBmb3IgdGhlIGA8Ym9keT5gIGVsZW1lbnQuXG5cbiRib2R5LXRleHQtYWxpZ246ICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRib2R5LWJnOiAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRib2R5LXNlY29uZGFyeS1jb2xvcjogICAgICByZ2JhKCRib2R5LWNvbG9yLCAuNzUpICFkZWZhdWx0O1xuJGJvZHktc2Vjb25kYXJ5LWJnOiAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuJGJvZHktdGVydGlhcnktY29sb3I6ICAgICAgIHJnYmEoJGJvZHktY29sb3IsIC41KSAhZGVmYXVsdDtcbiRib2R5LXRlcnRpYXJ5LWJnOiAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG5cbiRib2R5LWVtcGhhc2lzLWNvbG9yOiAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vIExpbmtzXG4vL1xuLy8gU3R5bGUgYW5jaG9yIGVsZW1lbnRzLlxuXG4kbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkcHJpbWFyeSAhZGVmYXVsdDtcbiRsaW5rLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgICAgICAgIHVuZGVybGluZSAhZGVmYXVsdDtcbiRsaW5rLXNoYWRlLXBlcmNlbnRhZ2U6ICAgICAgICAgICAgICAgICAgIDIwJSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIHNoaWZ0LWNvbG9yKCRsaW5rLWNvbG9yLCAkbGluay1zaGFkZS1wZXJjZW50YWdlKSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRzdHJldGNoZWQtbGluay1wc2V1ZG8tZWxlbWVudDogICAgICAgICAgIGFmdGVyICFkZWZhdWx0O1xuJHN0cmV0Y2hlZC1saW5rLXotaW5kZXg6ICAgICAgICAgICAgICAgICAgMSAhZGVmYXVsdDtcblxuLy8gSWNvbiBsaW5rc1xuLy8gc2Nzcy1kb2NzLXN0YXJ0IGljb24tbGluay12YXJpYWJsZXNcbiRpY29uLWxpbmstZ2FwOiAgICAgICAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kaWNvbi1saW5rLXVuZGVybGluZS1vZmZzZXQ6ICAuMjVlbSAhZGVmYXVsdDtcbiRpY29uLWxpbmstaWNvbi1zaXplOiAgICAgICAgIDFlbSAhZGVmYXVsdDtcbiRpY29uLWxpbmstaWNvbi10cmFuc2l0aW9uOiAgIC4ycyBlYXNlLWluLW91dCB0cmFuc2Zvcm0gIWRlZmF1bHQ7XG4kaWNvbi1saW5rLWljb24tdHJhbnNmb3JtOiAgICB0cmFuc2xhdGUzZCguMjVlbSwgMCwgMCkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGljb24tbGluay12YXJpYWJsZXNcblxuLy8gUGFyYWdyYXBoc1xuLy9cbi8vIFN0eWxlIHAgZWxlbWVudC5cblxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAgIDFyZW0gIWRlZmF1bHQ7XG5cblxuLy8gR3JpZCBicmVha3BvaW50c1xuLy9cbi8vIERlZmluZSB0aGUgbWluaW11bSBkaW1lbnNpb25zIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLFxuLy8gYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcywgZm9yIHVzZSBpbiBtZWRpYSBxdWVyaWVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZ3JpZC1icmVha3BvaW50c1xuJGdyaWQtYnJlYWtwb2ludHM6IChcbiAgeHM6IDAsXG4gIHNtOiA1NzZweCxcbiAgbWQ6IDc2OHB4LFxuICBsZzogOTkycHgsXG4gIHhsOiAxMjAwcHgsXG4gIHh4bDogMTQwMHB4XG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBncmlkLWJyZWFrcG9pbnRzXG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuQGluY2x1ZGUgX2Fzc2VydC1zdGFydHMtYXQtemVybygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcblxuXG4vLyBHcmlkIGNvbnRhaW5lcnNcbi8vXG4vLyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29udGFpbmVyLW1heC13aWR0aHNcbiRjb250YWluZXItbWF4LXdpZHRoczogKFxuICBzbTogNTQwcHgsXG4gIG1kOiA3MjBweCxcbiAgbGc6IDk2MHB4LFxuICB4bDogMTE0MHB4LFxuICB4eGw6IDEzMjBweFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY29udGFpbmVyLW1heC13aWR0aHNcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGNvbnRhaW5lci1tYXgtd2lkdGhzLCBcIiRjb250YWluZXItbWF4LXdpZHRoc1wiKTtcblxuXG4vLyBHcmlkIGNvbHVtbnNcbi8vXG4vLyBTZXQgdGhlIG51bWJlciBvZiBjb2x1bW5zIGFuZCBzcGVjaWZ5IHRoZSB3aWR0aCBvZiB0aGUgZ3V0dGVycy5cblxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XG4kZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kZ3JpZC1yb3ctY29sdW1uczogICAgICAgICAgICA2ICFkZWZhdWx0O1xuXG4vLyBDb250YWluZXIgcGFkZGluZ1xuXG4kY29udGFpbmVyLXBhZGRpbmcteDogJGdyaWQtZ3V0dGVyLXdpZHRoICFkZWZhdWx0O1xuXG5cbi8vIENvbXBvbmVudHNcbi8vXG4vLyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBib3JkZXItdmFyaWFibGVzXG4kYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kYm9yZGVyLXdpZHRoczogKFxuICAxOiAxcHgsXG4gIDI6IDJweCxcbiAgMzogM3B4LFxuICA0OiA0cHgsXG4gIDU6IDVweFxuKSAhZGVmYXVsdDtcbiRib3JkZXItc3R5bGU6ICAgICAgICAgICAgICAgIHNvbGlkICFkZWZhdWx0O1xuJGJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJGJvcmRlci1jb2xvci10cmFuc2x1Y2VudDogICAgcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBib3JkZXItdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBib3JkZXItcmFkaXVzLXZhcmlhYmxlc1xuJGJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMteGw6ICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXh4bDogICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1waWxsOiAgICAgICAgICA1MHJlbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYm9yZGVyLXJhZGl1cy12YXJpYWJsZXNcbi8vIGZ1c3YtZGlzYWJsZVxuJGJvcmRlci1yYWRpdXMtMnhsOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMteHhsICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjMuMFxuLy8gZnVzdi1lbmFibGVcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJveC1zaGFkb3ctdmFyaWFibGVzXG4kYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1zbTogICAgICAgICAgICAgICAwIC4xMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWxnOiAgICAgICAgICAgICAgIDAgMXJlbSAzcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWluc2V0OiAgICAgICAgICAgIGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJveC1zaGFkb3ctdmFyaWFibGVzXG5cbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAgICRwcmltYXJ5ICFkZWZhdWx0O1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9jdXMtcmluZy12YXJpYWJsZXNcbiRmb2N1cy1yaW5nLXdpZHRoOiAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRmb2N1cy1yaW5nLW9wYWNpdHk6ICAgIC4yNSAhZGVmYXVsdDtcbiRmb2N1cy1yaW5nLWNvbG9yOiAgICAgIHJnYmEoJHByaW1hcnksICRmb2N1cy1yaW5nLW9wYWNpdHkpICFkZWZhdWx0O1xuJGZvY3VzLXJpbmctYmx1cjogICAgICAgMCAhZGVmYXVsdDtcbiRmb2N1cy1yaW5nLWJveC1zaGFkb3c6IDAgMCAkZm9jdXMtcmluZy1ibHVyICRmb2N1cy1yaW5nLXdpZHRoICRmb2N1cy1yaW5nLWNvbG9yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb2N1cy1yaW5nLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2FyZXQtdmFyaWFibGVzXG4kY2FyZXQtd2lkdGg6ICAgICAgICAgICAgICAgICAuM2VtICFkZWZhdWx0O1xuJGNhcmV0LXZlcnRpY2FsLWFsaWduOiAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuJGNhcmV0LXNwYWNpbmc6ICAgICAgICAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjYXJldC12YXJpYWJsZXNcblxuJHRyYW5zaXRpb24tYmFzZTogICAgICAgICAgICAgYWxsIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWZhZGU6ICAgICAgICAgICAgIG9wYWNpdHkgLjE1cyBsaW5lYXIgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sbGFwc2UtdHJhbnNpdGlvblxuJHRyYW5zaXRpb24tY29sbGFwc2U6ICAgICAgICAgaGVpZ2h0IC4zNXMgZWFzZSAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWNvbGxhcHNlLXdpZHRoOiAgIHdpZHRoIC4zNXMgZWFzZSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY29sbGFwc2UtdHJhbnNpdGlvblxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3Rcbi8vIHNjc3MtZG9jcy1zdGFydCBhc3BlY3QtcmF0aW9zXG4kYXNwZWN0LXJhdGlvczogKFxuICBcIjF4MVwiOiAxMDAlLFxuICBcIjR4M1wiOiBjYWxjKDMgLyA0ICogMTAwJSksXG4gIFwiMTZ4OVwiOiBjYWxjKDkgLyAxNiAqIDEwMCUpLFxuICBcIjIxeDlcIjogY2FsYyg5IC8gMjEgKiAxMDAlKVxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYXNwZWN0LXJhdGlvc1xuLy8gc3R5bGVsaW50LWVuYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuLy8gVHlwb2dyYXBoeVxuLy9cbi8vIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9udC12YXJpYWJsZXNcbi8vIHN0eWxlbGludC1kaXNhYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICAgICAgc3lzdGVtLXVpLCAtYXBwbGUtc3lzdGVtLCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBcIk5vdG8gU2Fuc1wiLCBcIkxpYmVyYXRpb24gU2Fuc1wiLCBBcmlhbCwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogICAgICAgU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1lbmFibGUgdmFsdWUta2V5d29yZC1jYXNlXG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Zm9udC1zYW5zLXNlcmlmKSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1jb2RlOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1mb250LW1vbm9zcGFjZSkgIWRlZmF1bHQ7XG5cbi8vICRmb250LXNpemUtcm9vdCBhZmZlY3RzIHRoZSB2YWx1ZSBvZiBgcmVtYCwgd2hpY2ggaXMgdXNlZCBmb3IgYXMgd2VsbCBmb250IHNpemVzLCBwYWRkaW5ncywgYW5kIG1hcmdpbnNcbi8vICRmb250LXNpemUtYmFzZSBhZmZlY3RzIHRoZSBmb250IHNpemUgb2YgdGhlIGJvZHkgdGV4dFxuJGZvbnQtc2l6ZS1yb290OiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb250LXNpemUtYmFzZTogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7IC8vIEFzc3VtZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCwgdHlwaWNhbGx5IGAxNnB4YFxuJGZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjg3NSAhZGVmYXVsdDtcbiRmb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1saWdodGVyOiAgICAgICAgIGxpZ2h0ZXIgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbGlnaHQ6ICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbm9ybWFsOiAgICAgICAgICA0MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbWVkaXVtOiAgICAgICAgICA1MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtc2VtaWJvbGQ6ICAgICAgICA2MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZDogICAgICAgICAgICA3MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZGVyOiAgICAgICAgICBib2xkZXIgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1iYXNlOiAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbiRsaW5lLWhlaWdodC1iYXNlOiAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1zbTogICAgICAgICAgICAgIDEuMjUgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAyICFkZWZhdWx0O1xuXG4kaDEtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyLjUgIWRlZmF1bHQ7XG4kaDItZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS43NSAhZGVmYXVsdDtcbiRoNC1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRoNS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kaDYtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvbnQtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb250LXNpemVzXG4kZm9udC1zaXplczogKFxuICAxOiAkaDEtZm9udC1zaXplLFxuICAyOiAkaDItZm9udC1zaXplLFxuICAzOiAkaDMtZm9udC1zaXplLFxuICA0OiAkaDQtZm9udC1zaXplLFxuICA1OiAkaDUtZm9udC1zaXplLFxuICA2OiAkaDYtZm9udC1zaXplXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb250LXNpemVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBoZWFkaW5ncy12YXJpYWJsZXNcbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tOiAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC1zdHlsZTogICAgICAgICBudWxsICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgICAgICAgNTAwICFkZWZhdWx0O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAgICAgMS4yICFkZWZhdWx0O1xuJGhlYWRpbmdzLWNvbG9yOiAgICAgICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgaGVhZGluZ3MtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBkaXNwbGF5LWhlYWRpbmdzXG4kZGlzcGxheS1mb250LXNpemVzOiAoXG4gIDE6IDVyZW0sXG4gIDI6IDQuNXJlbSxcbiAgMzogNHJlbSxcbiAgNDogMy41cmVtLFxuICA1OiAzcmVtLFxuICA2OiAyLjVyZW1cbikgIWRlZmF1bHQ7XG5cbiRkaXNwbGF5LWZvbnQtZmFtaWx5OiBudWxsICFkZWZhdWx0O1xuJGRpc3BsYXktZm9udC1zdHlsZTogIG51bGwgIWRlZmF1bHQ7XG4kZGlzcGxheS1mb250LXdlaWdodDogMzAwICFkZWZhdWx0O1xuJGRpc3BsYXktbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZGlzcGxheS1oZWFkaW5nc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdHlwZS12YXJpYWJsZXNcbiRsZWFkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kbGVhZC1mb250LXdlaWdodDogICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG5cbiRzbWFsbC1mb250LXNpemU6ICAgICAgICAgICAgIC44NzVlbSAhZGVmYXVsdDtcblxuJHN1Yi1zdXAtZm9udC1zaXplOiAgICAgICAgICAgLjc1ZW0gIWRlZmF1bHQ7XG5cbi8vIGZ1c3YtZGlzYWJsZVxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gNS4zLjBcbi8vIGZ1c3YtZW5hYmxlXG5cbiRpbml0aWFsaXNtLWZvbnQtc2l6ZTogICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG5cbiRibG9ja3F1b3RlLW1hcmdpbi15OiAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9vdGVyLWNvbG9yOiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9vdGVyLWZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuJGhyLW1hcmdpbi15OiAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRoci1jb2xvcjogICAgICAgICAgICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vIGZ1c3YtZGlzYWJsZVxuJGhyLWJnLWNvbG9yOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjBcbiRoci1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wXG4vLyBmdXN2LWVuYWJsZVxuXG4kaHItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBBbGxvd3MgZm9yIGluaGVyaXRlZCBjb2xvcnNcbiRoci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGhyLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgLjI1ICFkZWZhdWx0O1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdnItdmFyaWFibGVzXG4kdnItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdnItdmFyaWFibGVzXG5cbiRsZWdlbmQtbWFyZ2luLWJvdHRvbTogICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGxlZ2VuZC1mb250LXNpemU6ICAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuJGxlZ2VuZC1mb250LXdlaWdodDogICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGR0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRsaXN0LWlubGluZS1wYWRkaW5nOiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbWFyay1wYWRkaW5nOiAgICAgICAgICAgICAgICAuMTg3NWVtICFkZWZhdWx0O1xuJG1hcmstY29sb3I6ICAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kbWFyay1iZzogICAgICAgICAgICAgICAgICAgICAkeWVsbG93LTEwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdHlwZS12YXJpYWJsZXNcblxuXG4vLyBUYWJsZXNcbi8vXG4vLyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0YWJsZS12YXJpYWJsZXNcbiR0YWJsZS1jZWxsLXBhZGRpbmcteTogICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy14OiAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXktc206ICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXgtc206ICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiR0YWJsZS1jZWxsLXZlcnRpY2FsLWFsaWduOiAgIHRvcCAhZGVmYXVsdDtcblxuJHRhYmxlLWNvbG9yOiAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yKSAhZGVmYXVsdDtcbiR0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiR0YWJsZS1hY2NlbnQtYmc6ICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4kdGFibGUtdGgtZm9udC13ZWlnaHQ6ICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kdGFibGUtc3RyaXBlZC1jb2xvcjogICAgICAgICAkdGFibGUtY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtc3RyaXBlZC1iZy1mYWN0b3I6ICAgICAuMDUgIWRlZmF1bHQ7XG4kdGFibGUtc3RyaXBlZC1iZzogICAgICAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCAkdGFibGUtc3RyaXBlZC1iZy1mYWN0b3IpICFkZWZhdWx0O1xuXG4kdGFibGUtYWN0aXZlLWNvbG9yOiAgICAgICAgICAkdGFibGUtY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtYWN0aXZlLWJnLWZhY3RvcjogICAgICAuMSAhZGVmYXVsdDtcbiR0YWJsZS1hY3RpdmUtYmc6ICAgICAgICAgICAgIHJnYmEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksICR0YWJsZS1hY3RpdmUtYmctZmFjdG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWJnLWZhY3RvcjogICAgICAgLjA3NSAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1iZzogICAgICAgICAgICAgIHJnYmEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksICR0YWJsZS1ob3Zlci1iZy1mYWN0b3IpICFkZWZhdWx0O1xuXG4kdGFibGUtYm9yZGVyLWZhY3RvcjogICAgICAgICAuMiAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG5cbiR0YWJsZS1zdHJpcGVkLW9yZGVyOiAgICAgICAgIG9kZCAhZGVmYXVsdDtcbiR0YWJsZS1zdHJpcGVkLWNvbHVtbnMtb3JkZXI6IGV2ZW4gIWRlZmF1bHQ7XG5cbiR0YWJsZS1ncm91cC1zZXBhcmF0b3ItY29sb3I6IGN1cnJlbnRjb2xvciAhZGVmYXVsdDtcblxuJHRhYmxlLWNhcHRpb24tY29sb3I6ICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG5cbiR0YWJsZS1iZy1zY2FsZTogICAgICAgICAgICAgIC04MCUgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRhYmxlLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGFibGUtbG9vcFxuJHRhYmxlLXZhcmlhbnRzOiAoXG4gIFwicHJpbWFyeVwiOiAgICBzaGlmdC1jb2xvcigkcHJpbWFyeSwgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJzZWNvbmRhcnlcIjogIHNoaWZ0LWNvbG9yKCRzZWNvbmRhcnksICR0YWJsZS1iZy1zY2FsZSksXG4gIFwic3VjY2Vzc1wiOiAgICBzaGlmdC1jb2xvcigkc3VjY2VzcywgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJpbmZvXCI6ICAgICAgIHNoaWZ0LWNvbG9yKCRpbmZvLCAkdGFibGUtYmctc2NhbGUpLFxuICBcIndhcm5pbmdcIjogICAgc2hpZnQtY29sb3IoJHdhcm5pbmcsICR0YWJsZS1iZy1zY2FsZSksXG4gIFwiZGFuZ2VyXCI6ICAgICBzaGlmdC1jb2xvcigkZGFuZ2VyLCAkdGFibGUtYmctc2NhbGUpLFxuICBcImxpZ2h0XCI6ICAgICAgJGxpZ2h0LFxuICBcImRhcmtcIjogICAgICAgJGRhcmssXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0YWJsZS1sb29wXG5cblxuLy8gQnV0dG9ucyArIEZvcm1zXG4vL1xuLy8gU2hhcmVkIHZhcmlhYmxlcyB0aGF0IGFyZSByZWFzc2lnbmVkIHRvIGAkaW5wdXQtYCBhbmQgYCRidG4tYCBzcGVjaWZpYyB2YXJpYWJsZXMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBpbnB1dC1idG4tdmFyaWFibGVzXG4kaW5wdXQtYnRuLXBhZGRpbmcteTogICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXg6ICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LWZhbWlseTogICAgICAgbnVsbCAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplOiAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQ6ICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWZvY3VzLXdpZHRoOiAgICAgICAgICRmb2N1cy1yaW5nLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1jb2xvci1vcGFjaXR5OiAkZm9jdXMtcmluZy1vcGFjaXR5ICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1jb2xvcjogICAgICAgICAkZm9jdXMtcmluZy1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtYmx1cjogICAgICAgICAgJGZvY3VzLXJpbmctYmx1ciAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdzogICAgJGZvY3VzLXJpbmctYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktc206ICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtc206ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbTogICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1sZzogICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LWxnOiAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZzogICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWJvcmRlci13aWR0aDogICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgaW5wdXQtYnRuLXZhcmlhYmxlc1xuXG5cbi8vIEJ1dHRvbnNcbi8vXG4vLyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCwgYW5kIGJvcmRlciBjb2xvci5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJ0bi12YXJpYWJsZXNcbiRidG4tY29sb3I6ICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy15OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYnRuLWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemU6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGJ0bi13aGl0ZS1zcGFjZTogICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gU2V0IHRvIGBub3dyYXBgIHRvIHByZXZlbnQgdGV4dCB3cmFwcGluZ1xuXG4kYnRuLXBhZGRpbmcteS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG5cbiRidG4tcGFkZGluZy15LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcblxuJGJ0bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kYnRuLWJveC1zaGFkb3c6ICAgICAgICAgICAgICBpbnNldCAwIDFweCAwIHJnYmEoJHdoaXRlLCAuMTUpLCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy13aWR0aDogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRidG4tZm9jdXMtYm94LXNoYWRvdzogICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRidG4tZGlzYWJsZWQtb3BhY2l0eTogICAgICAgIC42NSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJveC1zaGFkb3c6ICAgICAgIGluc2V0IDAgM3B4IDVweCByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG5cbiRidG4tbGluay1jb2xvcjogICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1saW5rLWNvbG9yKSAhZGVmYXVsdDtcbiRidG4tbGluay1ob3Zlci1jb2xvcjogICAgICAgIHZhcigtLSN7JHByZWZpeH1saW5rLWhvdmVyLWNvbG9yKSAhZGVmYXVsdDtcbiRidG4tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRidG4tbGluay1mb2N1cy1zaGFkb3ctcmdiOiAgIHRvLXJnYihtaXgoY29sb3ItY29udHJhc3QoJGxpbmstY29sb3IpLCAkbGluay1jb2xvciwgMTUlKSkgIWRlZmF1bHQ7XG5cbi8vIEFsbG93cyBmb3IgY3VzdG9taXppbmcgYnV0dG9uIHJhZGl1cyBpbmRlcGVuZGVudGx5IGZyb20gZ2xvYmFsIGJvcmRlciByYWRpdXNcbiRidG4tYm9yZGVyLXJhZGl1czogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXNtKSAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnKSAhZGVmYXVsdDtcblxuJGJ0bi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kYnRuLWhvdmVyLWJnLXNoYWRlLWFtb3VudDogICAgICAgMTUlICFkZWZhdWx0O1xuJGJ0bi1ob3Zlci1iZy10aW50LWFtb3VudDogICAgICAgIDE1JSAhZGVmYXVsdDtcbiRidG4taG92ZXItYm9yZGVyLXNoYWRlLWFtb3VudDogICAyMCUgIWRlZmF1bHQ7XG4kYnRuLWhvdmVyLWJvcmRlci10aW50LWFtb3VudDogICAgMTAlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYmctc2hhZGUtYW1vdW50OiAgICAgIDIwJSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJnLXRpbnQtYW1vdW50OiAgICAgICAyMCUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3JkZXItc2hhZGUtYW1vdW50OiAgMjUlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm9yZGVyLXRpbnQtYW1vdW50OiAgIDEwJSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYnRuLXZhcmlhYmxlc1xuXG5cbi8vIEZvcm1zXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXRleHQtdmFyaWFibGVzXG4kZm9ybS10ZXh0LW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS10ZXh0LWZvbnQtc3R5bGU6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLXRleHQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXRleHQtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWxhYmVsLXZhcmlhYmxlc1xuJGZvcm0tbGFiZWwtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1mb250LXN0eWxlOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tbGFiZWwtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWlucHV0LXZhcmlhYmxlc1xuJGlucHV0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93LWluc2V0KSAhZGVmYXVsdDtcblxuJGlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1zbSkgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtbGcpICFkZWZhdWx0O1xuXG4kaW5wdXQtZm9jdXMtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIHRpbnQtY29sb3IoJGNvbXBvbmVudC1hY3RpdmUtYmcsIDUwJSkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kaW5wdXQtcGxhaW50ZXh0LWNvbG9yOiAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgY2FsYygjeyRpbnB1dC1ib3JkZXItd2lkdGh9ICogMikgIWRlZmF1bHQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbiRpbnB1dC1oZWlnaHQtaW5uZXI6ICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCAkaW5wdXQtcGFkZGluZy15ICogMikgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGY6ICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIC41ZW0sICRpbnB1dC1wYWRkaW5nLXkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyOiAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAuMjVlbSwgJGlucHV0LXBhZGRpbmcteSAqIC41KSAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15ICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXktc20gKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtbGc6ICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteS1sZyAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuXG4kaW5wdXQtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGZvcm0tY29sb3Itd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgIDNyZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0taW5wdXQtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWNoZWNrLXZhcmlhYmxlc1xuJGZvcm0tY2hlY2staW5wdXQtd2lkdGg6ICAgICAgICAgICAgICAgICAgMWVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbWluLWhlaWdodDogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1wYWRkaW5nLXN0YXJ0OiAgICAgICAgICAgICAgICAkZm9ybS1jaGVjay1pbnB1dC13aWR0aCArIC41ZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbGFiZWwtY29sb3I6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWxhYmVsLWN1cnNvcjogICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1hY3RpdmUtZmlsdGVyOiAgICAgICAgICBicmlnaHRuZXNzKDkwJSkgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWJvcmRlcjogICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgLjI1ZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1yYWRpby1ib3JkZXItcmFkaXVzOiAgICAgICAgICA1MCUgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1mb2N1cy1ib3JkZXI6ICAgICAgICAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGZvY3VzLXJpbmctYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1jb2xvcjogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYm9yZGVyLWNvbG9yOiAgICRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWltYWdlOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyMCAyMCc+PHBhdGggZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycgZD0nbTYgMTAgMyAzIDYtNicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLXJhZGlvLWNoZWNrZWQtYmctaW1hZ2U6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzInIGZpbGw9JyN7JGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtY29sb3I6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjogICAkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1pbWFnZTogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMjAgMjAnPjxwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzMnIGQ9J002IDEwaDgnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAuNSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWxhYmVsLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAkZm9ybS1jaGVjay1pbnB1dC1kaXNhYmxlZC1vcGFjaXR5ICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stYnRuLWNoZWNrLWRpc2FibGVkLW9wYWNpdHk6ICAgICRidG4tZGlzYWJsZWQtb3BhY2l0eSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi1lbmQ6ICAgIDFyZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tY2hlY2stdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXN3aXRjaC12YXJpYWJsZXNcbiRmb3JtLXN3aXRjaC1jb2xvcjogICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjI1KSAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC13aWR0aDogICAgICAgICAgICAgICAyZW0gIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtcGFkZGluZy1zdGFydDogICAgICAgJGZvcm0tc3dpdGNoLXdpZHRoICsgLjVlbSAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC1iZy1pbWFnZTogICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPSczJyBmaWxsPScjeyRmb3JtLXN3aXRjaC1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtYm9yZGVyLXJhZGl1czogICAgICAgJGZvcm0tc3dpdGNoLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLXRyYW5zaXRpb246ICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24gLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGZvcm0tc3dpdGNoLWZvY3VzLWNvbG9yOiAgICAgICAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtZm9jdXMtYmctaW1hZ2U6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skZm9ybS1zd2l0Y2gtZm9jdXMtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS1zd2l0Y2gtY2hlY2tlZC1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1pbWFnZTogICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skZm9ybS1zd2l0Y2gtY2hlY2tlZC1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1wb3NpdGlvbjogcmlnaHQgY2VudGVyICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXN3aXRjaC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGlucHV0LWdyb3VwLXZhcmlhYmxlc1xuJGlucHV0LWdyb3VwLWFkZG9uLXBhZGRpbmcteTogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tcGFkZGluZy14OiAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1mb250LXdlaWdodDogICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJnOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZykgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgaW5wdXQtZ3JvdXAtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXNlbGVjdC12YXJpYWJsZXNcbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXk6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtcGFkZGluZy14OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtZmFtaWx5OiAgICAgICAgICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZTogICAgICAgICAgICAgJGlucHV0LWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZzogICAgICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggKiAzICFkZWZhdWx0OyAvLyBFeHRyYSBwYWRkaW5nIGZvciBiYWNrZ3JvdW5kLWltYWdlXG4kZm9ybS1zZWxlY3QtZm9udC13ZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtY29sb3I6ICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYmc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZGlzYWJsZWQtY29sb3I6ICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJnOiAgICAgICAgICAgJGlucHV0LWRpc2FibGVkLWJnICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJvcmRlci1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1iZy1wb3NpdGlvbjogICAgICAgICAgIHJpZ2h0ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggY2VudGVyICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJnLXNpemU6ICAgICAgICAgICAgICAgMTZweCAxMnB4ICFkZWZhdWx0OyAvLyBJbiBwaXhlbHMgYmVjYXVzZSBpbWFnZSBkaW1lbnNpb25zXG4kZm9ybS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yOiAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtaW5kaWNhdG9yOiAgICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNic+PHBhdGggZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMicgZD0nbTIgNSA2IDYgNi02Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLWVuZDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteCAqIDIuNSArICRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uOiAgICBjZW50ZXIgcmlnaHQgJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTogICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1ib3JkZXItd2lkdGg6ICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1czogICAgICAgJGlucHV0LWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm94LXNoYWRvdzogICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3ctaW5zZXQpICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yOiAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb2N1cy13aWR0aDogICAgICAgICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdzogICAgMCAwIDAgJGZvcm0tc2VsZWN0LWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXktc206ICAgICAgICAkaW5wdXQtcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LXBhZGRpbmcteC1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9udC1zaXplLXNtOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzLXNtOiAgICAkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtcGFkZGluZy14LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb250LXNpemUtbGc6ICAgICAgICAkaW5wdXQtZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJvcmRlci1yYWRpdXMtbGc6ICAgICRpbnB1dC1ib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtdHJhbnNpdGlvbjogICAgICAgICAgJGlucHV0LXRyYW5zaXRpb24gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tc2VsZWN0LXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1yYW5nZS12YXJpYWJsZXNcbiRmb3JtLXJhbmdlLXRyYWNrLXdpZHRoOiAgICAgICAgICAxMDAlICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2staGVpZ2h0OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2stY3Vyc29yOiAgICAgICAgIHBvaW50ZXIgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1iZzogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzOiAgMXJlbSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWJveC1zaGFkb3c6ICAgICB2YXIoLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1pbnNldCkgIWRlZmF1bHQ7XG5cbiRmb3JtLXJhbmdlLXRodW1iLXdpZHRoOiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICRmb3JtLXJhbmdlLXRodW1iLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyOiAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIC4xcmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzogICAgICAgIDAgMCAwIDFweCAkYm9keS1iZywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOiAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0OyAvLyBGb3IgZm9jdXMgYm94IHNoYWRvdyBpc3N1ZSBpbiBFZGdlXG4kZm9ybS1yYW5nZS10aHVtYi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgdGludC1jb2xvcigkY29tcG9uZW50LWFjdGl2ZS1iZywgNzAlKSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLXRyYW5zaXRpb246ICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tcmFuZ2UtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWZpbGUtdmFyaWFibGVzXG4kZm9ybS1maWxlLWJ1dHRvbi1jb2xvcjogICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmlsZS1idXR0b24tYmc6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZykgIWRlZmF1bHQ7XG4kZm9ybS1maWxlLWJ1dHRvbi1ob3Zlci1iZzogICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tZmlsZS12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tZmxvYXRpbmctdmFyaWFibGVzXG4kZm9ybS1mbG9hdGluZy1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgYWRkKDMuNXJlbSwgJGlucHV0LWhlaWdodC1ib3JkZXIpICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctbGluZS1oZWlnaHQ6ICAgICAgICAgICAgIDEuMjUgIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteTogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy10OiAgICAgICAgIDEuNjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy1iOiAgICAgICAgIC42MjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1sYWJlbC1oZWlnaHQ6ICAgICAgICAgICAgMS41ZW0gIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1sYWJlbC1vcGFjaXR5OiAgICAgICAgICAgLjY1ICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctbGFiZWwtdHJhbnNmb3JtOiAgICAgICAgIHNjYWxlKC44NSkgdHJhbnNsYXRlWSgtLjVyZW0pIHRyYW5zbGF0ZVgoLjE1cmVtKSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWxhYmVsLWRpc2FibGVkLWNvbG9yOiAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy10cmFuc2l0aW9uOiAgICAgICAgICAgICAgb3BhY2l0eSAuMXMgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSAuMXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tZmxvYXRpbmctdmFyaWFibGVzXG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1mZWVkYmFjay12YXJpYWJsZXNcbiRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A6ICAgICAgICAgICRmb3JtLXRleHQtbWFyZ2luLXRvcCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZTogICAgICAgICAgICRmb3JtLXRleHQtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stZm9udC1zdHlsZTogICAgICAgICAgJGZvcm0tdGV4dC1mb250LXN0eWxlICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3I6ICAgICAgICAgJHN1Y2Nlc3MgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yOiAgICAgICAkZGFuZ2VyICFkZWZhdWx0O1xuXG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yOiAgICAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQ6ICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yfScgZD0nTTIuMyA2LjczLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjEnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3I6ICAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkOiAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTIgMTInIHdpZHRoPScxMicgaGVpZ2h0PScxMicgZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nPjxjaXJjbGUgY3g9JzYnIGN5PSc2JyByPSc0LjUnLz48cGF0aCBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBkPSdNNS44IDMuNmguNEw2IDYuNXonLz48Y2lyY2xlIGN4PSc2JyBjeT0nOC4yJyByPScuNicgZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9JyBzdHJva2U9J25vbmUnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tZmVlZGJhY2stdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXZhbGlkYXRpb24tY29sb3JzXG4kZm9ybS12YWxpZC1jb2xvcjogICAgICAgICAgICAgICAgICAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXZhbGlkLWJvcmRlci1jb2xvcjogICAgICAgICAgICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0taW52YWxpZC1jb2xvcjogICAgICAgICAgICAgICAgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yOiAgICAgICAgICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tdmFsaWRhdGlvbi1jb2xvcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXNcbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiAoXG4gIFwidmFsaWRcIjogKFxuICAgIFwiY29sb3JcIjogdmFyKC0tI3skcHJlZml4fWZvcm0tdmFsaWQtY29sb3IpLFxuICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLFxuICAgIFwidG9vbHRpcC1jb2xvclwiOiAjZmZmLFxuICAgIFwidG9vbHRpcC1iZy1jb2xvclwiOiB2YXIoLS0jeyRwcmVmaXh9c3VjY2VzcyksXG4gICAgXCJmb2N1cy1ib3gtc2hhZG93XCI6IDAgMCAkaW5wdXQtYnRuLWZvY3VzLWJsdXIgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEodmFyKC0tI3skcHJlZml4fXN1Y2Nlc3MtcmdiKSwgJGlucHV0LWJ0bi1mb2N1cy1jb2xvci1vcGFjaXR5KSxcbiAgICBcImJvcmRlci1jb2xvclwiOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS12YWxpZC1ib3JkZXItY29sb3IpLFxuICApLFxuICBcImludmFsaWRcIjogKFxuICAgIFwiY29sb3JcIjogdmFyKC0tI3skcHJlZml4fWZvcm0taW52YWxpZC1jb2xvciksXG4gICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZCxcbiAgICBcInRvb2x0aXAtY29sb3JcIjogI2ZmZixcbiAgICBcInRvb2x0aXAtYmctY29sb3JcIjogdmFyKC0tI3skcHJlZml4fWRhbmdlciksXG4gICAgXCJmb2N1cy1ib3gtc2hhZG93XCI6IDAgMCAkaW5wdXQtYnRuLWZvY3VzLWJsdXIgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEodmFyKC0tI3skcHJlZml4fWRhbmdlci1yZ2IpLCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yLW9wYWNpdHkpLFxuICAgIFwiYm9yZGVyLWNvbG9yXCI6IHZhcigtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yKSxcbiAgKVxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS12YWxpZGF0aW9uLXN0YXRlc1xuXG4vLyBaLWluZGV4IG1hc3RlciBsaXN0XG4vL1xuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB6aW5kZXgtc3RhY2tcbiR6aW5kZXgtZHJvcGRvd246ICAgICAgICAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LXN0aWNreTogICAgICAgICAgICAgICAgICAgICAxMDIwICFkZWZhdWx0O1xuJHppbmRleC1maXhlZDogICAgICAgICAgICAgICAgICAgICAgMTAzMCAhZGVmYXVsdDtcbiR6aW5kZXgtb2ZmY2FudmFzLWJhY2tkcm9wOiAgICAgICAgIDEwNDAgIWRlZmF1bHQ7XG4kemluZGV4LW9mZmNhbnZhczogICAgICAgICAgICAgICAgICAxMDQ1ICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZHJvcDogICAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgICAgICAgICAgIDEwNTUgIWRlZmF1bHQ7XG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICAgICAgICAgICAxMDcwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgICAgICAgICAgMTA4MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9hc3Q6ICAgICAgICAgICAgICAgICAgICAgIDEwOTAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHppbmRleC1zdGFja1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgemluZGV4LWxldmVscy1tYXBcbiR6aW5kZXgtbGV2ZWxzOiAoXG4gIG4xOiAtMSxcbiAgMDogMCxcbiAgMTogMSxcbiAgMjogMixcbiAgMzogM1xuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgemluZGV4LWxldmVscy1tYXBcblxuXG4vLyBOYXZzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXYtdmFyaWFibGVzXG4kbmF2LWxpbmstcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstZm9udC1zaXplOiAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJG5hdi1saW5rLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRuYXYtbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1saW5rLWNvbG9yKSAhZGVmYXVsdDtcbiRuYXYtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1saW5rLWhvdmVyLWNvbG9yKSAhZGVmYXVsdDtcbiRuYXYtbGluay10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kbmF2LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRuYXYtbGluay1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgICRmb2N1cy1yaW5nLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci13aWR0aDogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgdmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yKSAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi11bmRlcmxpbmUtZ2FwOiAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRuYXYtdW5kZXJsaW5lLWJvcmRlci13aWR0aDogICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kbmF2LXVuZGVybGluZS1saW5rLWFjdGl2ZS1jb2xvcjogICB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3IpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBuYXYtdmFyaWFibGVzXG5cblxuLy8gTmF2YmFyXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItdmFyaWFibGVzXG4kbmF2YmFyLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG5hdmJhci1icmFuZC1mb250LXNpemU6ICAgICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbi8vIENvbXB1dGUgdGhlIG5hdmJhci1icmFuZCBwYWRkaW5nLXkgc28gdGhlIG5hdmJhci1icmFuZCB3aWxsIGhhdmUgdGhlIHNhbWUgaGVpZ2h0IGFzIG5hdmJhci10ZXh0IGFuZCBuYXYtbGlua1xuJG5hdi1saW5rLWhlaWdodDogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgKyAkbmF2LWxpbmstcGFkZGluZy15ICogMiAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtaGVpZ2h0OiAgICAgICAgICAgICAgICRuYXZiYXItYnJhbmQtZm9udC1zaXplICogJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLXBhZGRpbmcteTogICAgICAgICAgICAoJG5hdi1saW5rLWhlaWdodCAtICRuYXZiYXItYnJhbmQtaGVpZ2h0KSAqIC41ICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1tYXJnaW4tZW5kOiAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteTogICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZTogICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAgICAgICRidG4tYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1mb2N1cy13aWR0aDogICAgICAgICRidG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItdHJhbnNpdGlvbjogICAgICAgICBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksIC42NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yOiAgICAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCAuOCkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjogICAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCAxKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I6ICAgICAgIHJnYmEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksIC4zKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtaWNvbi1jb2xvcjogICAgICAgICAgIHJnYmEoJGJvZHktY29sb3IsIC43NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzMCAzMCc+PHBhdGggc3Ryb2tlPScjeyRuYXZiYXItbGlnaHQtaWNvbi1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjogcmdiYSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgLjE1KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3I6ICAgICAgICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjogICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG5hdmJhci12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdmJhci1kYXJrLXZhcmlhYmxlc1xuJG5hdmJhci1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC41NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstaG92ZXItY29sb3I6ICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjc1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I6ICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjogICAgICAgIHJnYmEoJHdoaXRlLCAuMjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWljb24tY29sb3I6ICAgICAgICAgICAgJG5hdmJhci1kYXJrLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZzogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWRhcmstaWNvbi1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAgcmdiYSgkd2hpdGUsIC4xKSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1icmFuZC1jb2xvcjogICAgICAgICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtaG92ZXItY29sb3I6ICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBuYXZiYXItZGFyay12YXJpYWJsZXNcblxuXG4vLyBEcm9wZG93bnNcbi8vXG4vLyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBkcm9wZG93bi12YXJpYWJsZXNcbiRkcm9wZG93bi1taW4td2lkdGg6ICAgICAgICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXBhZGRpbmcteDogICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXNwYWNlcjogICAgICAgICAgICAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1jb2xvcjogICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci13aWR0aDogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1czogICAgICBjYWxjKCN7JGRyb3Bkb3duLWJvcmRlci1yYWRpdXN9IC0gI3skZHJvcGRvd24tYm9yZGVyLXdpZHRofSkgIWRlZmF1bHQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4kZHJvcGRvd24tZGl2aWRlci1iZzogICAgICAgICAgICAgICAkZHJvcGRvd24tYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXk6ICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3cpICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgICAgICAkZHJvcGRvd24tbGluay1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZykgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgIHZhcigtLSN7JHByZWZpeH10ZXJ0aWFyeS1jb2xvcikgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteTogICAgICAgICAgICRzcGFjZXIgKiAuMjUgIWRlZmF1bHQ7XG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6ICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteDogICAgICAgICAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteTogICAgICAgICAkZHJvcGRvd24tcGFkZGluZy15ICFkZWZhdWx0O1xuLy8gZnVzdi1kaXNhYmxlXG4kZHJvcGRvd24taGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAkZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteSAkZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjBcbi8vIGZ1c3YtZW5hYmxlXG4vLyBzY3NzLWRvY3MtZW5kIGRyb3Bkb3duLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZHJvcGRvd24tZGFyay12YXJpYWJsZXNcbiRkcm9wZG93bi1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWJnOiAgICAgICAgICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWJvcmRlci1jb2xvcjogICAgICAgICRkcm9wZG93bi1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1kaXZpZGVyLWJnOiAgICAgICAgICAkZHJvcGRvd24tZGl2aWRlci1iZyAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWJveC1zaGFkb3c6ICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWNvbG9yOiAgICAgICAgICAkZHJvcGRvd24tZGFyay1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstaG92ZXItY29sb3I6ICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstaG92ZXItYmc6ICAgICAgIHJnYmEoJHdoaXRlLCAuMTUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1hY3RpdmUtY29sb3I6ICAgJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1hY3RpdmUtYmc6ICAgICAgJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1kaXNhYmxlZC1jb2xvcjogJGdyYXktNTAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstaGVhZGVyLWNvbG9yOiAgICAgICAgJGdyYXktNTAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBkcm9wZG93bi1kYXJrLXZhcmlhYmxlc1xuXG5cbi8vIFBhZ2luYXRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBhZ2luYXRpb24tdmFyaWFibGVzXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14OiAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LXNtOiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LXNtOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWZvbnQtc2l6ZTogICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWxpbmstY29sb3IpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1czogICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1tYXJnaW4tc3RhcnQ6ICAgICAgICAgICBjYWxjKC0xICogI3skcGFnaW5hdGlvbi1ib3JkZXItd2lkdGh9KSAhZGVmYXVsdDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb2N1cy1jb2xvcjogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcikgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1iZzogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRmb2N1cy1yaW5nLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lOiAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcikgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktYmcpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7IC8vIFRvZG8gaW4gdjY6IHJlbW92ZSB0aGlzP1xuXG4kcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tdHJhbnNpdGlvbjogICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtc20pICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtbGcpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwYWdpbmF0aW9uLXZhcmlhYmxlc1xuXG5cbi8vIFBsYWNlaG9sZGVyc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcGxhY2Vob2xkZXJzXG4kcGxhY2Vob2xkZXItb3BhY2l0eS1tYXg6ICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRwbGFjZWhvbGRlci1vcGFjaXR5LW1pbjogICAgICAgICAgIC4yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwbGFjZWhvbGRlcnNcblxuLy8gQ2FyZHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcmQtdmFyaWFibGVzXG4kY2FyZC1zcGFjZXIteTogICAgICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGNhcmQtc3BhY2VyLXg6ICAgICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRjYXJkLXRpdGxlLXNwYWNlci15OiAgICAgICAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRjYXJkLXRpdGxlLWNvbG9yOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1zdWJ0aXRsZS1jb2xvcjogICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRjYXJkLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICAgICBzdWJ0cmFjdCgkY2FyZC1ib3JkZXItcmFkaXVzLCAkY2FyZC1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGNhcmQtY2FwLXBhZGRpbmcteTogICAgICAgICAgICAgICAgJGNhcmQtc3BhY2VyLXkgKiAuNSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICRjYXJkLXNwYWNlci14ICFkZWZhdWx0O1xuJGNhcmQtY2FwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvci1yZ2IpLCAuMDMpICFkZWZhdWx0O1xuJGNhcmQtY2FwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZzogICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRjYXJkLWdyb3VwLW1hcmdpbjogICAgICAgICAgICAgICAgICRncmlkLWd1dHRlci13aWR0aCAqIC41ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjYXJkLXZhcmlhYmxlc1xuXG4vLyBBY2NvcmRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGFjY29yZGlvbi12YXJpYWJsZXNcbiRhY2NvcmRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGFjY29yZGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24taW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgIHN1YnRyYWN0KCRhY2NvcmRpb24tYm9yZGVyLXJhZGl1cywgJGFjY29yZGlvbi1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWJvZHktcGFkZGluZy15OiAgICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYm9keS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICRhY2NvcmRpb24tcGFkZGluZy14ICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWJ1dHRvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteDogICAgICAgICAgICAgICRhY2NvcmRpb24tcGFkZGluZy14ICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tY29sb3I6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tYmc6ICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1iZykgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAkYnRuLXRyYW5zaXRpb24sIGJvcmRlci1yYWRpdXMgLjE1cyBlYXNlICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXByaW1hcnktYmctc3VidGxlKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1wcmltYXJ5LXRleHQtZW1waGFzaXMpICFkZWZhdWx0O1xuXG4vLyBmdXN2LWRpc2FibGVcbiRhY2NvcmRpb24tYnV0dG9uLWZvY3VzLWJvcmRlci1jb2xvcjogICAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMy4zXG4vLyBmdXN2LWVuYWJsZVxuJGFjY29yZGlvbi1idXR0b24tZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWljb24td2lkdGg6ICAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pY29uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWljb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAkcHJpbWFyeS10ZXh0LWVtcGhhc2lzICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pY29uLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgdHJhbnNmb3JtIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi10cmFuc2Zvcm06ICAgICAgICAgICAgICAgIHJvdGF0ZSgtMTgwZGVnKSAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1idXR0b24taWNvbjogICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRhY2NvcmRpb24taWNvbi1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCc+PHBhdGggZD0nbTIgNSA2IDYgNi02Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWljb246ICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRhY2NvcmRpb24taWNvbi1hY3RpdmUtY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnPjxwYXRoIGQ9J20yIDUgNiA2IDYtNicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYWNjb3JkaW9uLXZhcmlhYmxlc1xuXG4vLyBUb29sdGlwc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdG9vbHRpcC12YXJpYWJsZXNcbiR0b29sdGlwLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyMDBweCAhZGVmYXVsdDtcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiR0b29sdGlwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcikgIWRlZmF1bHQ7XG4kdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kdG9vbHRpcC1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAuOSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICRzcGFjZXIgKiAuMjUgIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXJnaW46ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBUT0RPOiByZW1vdmUgdGhpcyBpbiB2NlxuXG4kdG9vbHRpcC1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAuOHJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC40cmVtICFkZWZhdWx0O1xuLy8gZnVzdi1kaXNhYmxlXG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIEJvb3RzdHJhcCA1LjIuMCBmb3IgQ1NTIHZhcmlhYmxlc1xuLy8gZnVzdi1lbmFibGVcbi8vIHNjc3MtZG9jcy1lbmQgdG9vbHRpcC12YXJpYWJsZXNcblxuLy8gRm9ybSB0b29sdGlwcyBtdXN0IGNvbWUgYWZ0ZXIgcmVndWxhciB0b29sdGlwc1xuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRvb2x0aXAtZmVlZGJhY2stdmFyaWFibGVzXG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteTogICAgICR0b29sdGlwLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14OiAgICAgJHRvb2x0aXAtcGFkZGluZy14ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemU6ICAgICAkdG9vbHRpcC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0OiAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLW9wYWNpdHk6ICAgICAgICR0b29sdGlwLW9wYWNpdHkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXM6ICR0b29sdGlwLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRvb2x0aXAtZmVlZGJhY2stdmFyaWFibGVzXG5cblxuLy8gUG9wb3ZlcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBvcG92ZXItdmFyaWFibGVzXG4kcG9wb3Zlci1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQpICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtbGcpICFkZWZhdWx0O1xuJHBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgY2FsYygjeyRwb3BvdmVyLWJvcmRlci1yYWRpdXN9IC0gI3skcG9wb3Zlci1ib3JkZXItd2lkdGh9KSAhZGVmYXVsdDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiRwb3BvdmVyLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93KSAhZGVmYXVsdDtcblxuJHBvcG92ZXItaGVhZGVyLWZvbnQtc2l6ZTogICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWJnOiAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAkaGVhZGluZ3MtY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWJvZHktY29sb3I6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy15OiAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteDogICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHBvcG92ZXItdmFyaWFibGVzXG5cbi8vIGZ1c3YtZGlzYWJsZVxuLy8gRGVwcmVjYXRlZCBpbiBCb290c3RyYXAgNS4yLjAgZm9yIENTUyB2YXJpYWJsZXNcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICRwb3BvdmVyLWJnICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvci10cmFuc2x1Y2VudCkgIWRlZmF1bHQ7XG4vLyBmdXN2LWVuYWJsZVxuXG5cbi8vIFRvYXN0c1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdG9hc3QtdmFyaWFibGVzXG4kdG9hc3QtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAzNTBweCAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHRvYXN0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgLjg3NXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kdG9hc3QtYmFja2dyb3VuZC1jb2xvcjogICAgICAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1ib2R5LWJnLXJnYiksIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJHRvYXN0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3cpICFkZWZhdWx0O1xuJHRvYXN0LXNwYWNpbmc6ICAgICAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cbiR0b2FzdC1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZy1yZ2IpLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgJHRvYXN0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdG9hc3QtdmFyaWFibGVzXG5cblxuLy8gQmFkZ2VzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBiYWRnZS12YXJpYWJsZXNcbiRiYWRnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIC43NWVtICFkZWZhdWx0O1xuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMzVlbSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC42NWVtICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBiYWRnZS12YXJpYWJsZXNcblxuXG4vLyBNb2RhbHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG1vZGFsLXZhcmlhYmxlc1xuJG1vZGFsLWlubmVyLXBhZGRpbmc6ICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbjogICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC1kaWFsb2ctbWFyZ2luOiAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cDogICAgICAgMS43NXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRtb2RhbC1jb250ZW50LWNvbG9yOiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJnOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoOiAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzOiAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1sZykgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzOiBzdWJ0cmFjdCgkbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzLCAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14czogICAgICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3ctc20pICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cDogICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3cpICFkZWZhdWx0O1xuXG4kbW9kYWwtYmFja2Ryb3AtYmc6ICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgICAgICAgICAuNSAhZGVmYXVsdDtcblxuJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgICAkbW9kYWwtaW5uZXItcGFkZGluZyAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAgICRtb2RhbC1pbm5lci1wYWRkaW5nICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgICAgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7IC8vIEtlZXAgdGhpcyBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcblxuJG1vZGFsLWZvb3Rlci1iZzogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGg6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgICAgICAgNTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICAgICAgICA4MDBweCAhZGVmYXVsdDtcbiRtb2RhbC14bDogICAgICAgICAgICAgICAgICAgICAgICAgIDExNDBweCAhZGVmYXVsdDtcblxuJG1vZGFsLWZhZGUtdHJhbnNmb3JtOiAgICAgICAgICAgICAgdHJhbnNsYXRlKDAsIC01MHB4KSAhZGVmYXVsdDtcbiRtb2RhbC1zaG93LXRyYW5zZm9ybTogICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kbW9kYWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0ICFkZWZhdWx0O1xuJG1vZGFsLXNjYWxlLXRyYW5zZm9ybTogICAgICAgICAgICAgc2NhbGUoMS4wMikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG1vZGFsLXZhcmlhYmxlc1xuXG5cbi8vIEFsZXJ0c1xuLy9cbi8vIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYWxlcnQtdmFyaWFibGVzXG4kYWxlcnQtcGFkZGluZy15OiAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kYWxlcnQtcGFkZGluZy14OiAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kYWxlcnQtbWFyZ2luLWJvdHRvbTogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGFsZXJ0LWRpc21pc3NpYmxlLXBhZGRpbmctcjogICAkYWxlcnQtcGFkZGluZy14ICogMyAhZGVmYXVsdDsgLy8gM3ggY292ZXJzIHdpZHRoIG9mIHggcGx1cyBkZWZhdWx0IHBhZGRpbmcgb24gZWl0aGVyIHNpZGVcbi8vIHNjc3MtZG9jcy1lbmQgYWxlcnQtdmFyaWFibGVzXG5cbi8vIGZ1c3YtZGlzYWJsZVxuJGFsZXJ0LWJnLXNjYWxlOiAgICAgICAgICAgICAgICAtODAlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMCwgdG8gYmUgcmVtb3ZlZCBpbiB2NlxuJGFsZXJ0LWJvcmRlci1zY2FsZTogICAgICAgICAgICAtNzAlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMCwgdG8gYmUgcmVtb3ZlZCBpbiB2NlxuJGFsZXJ0LWNvbG9yLXNjYWxlOiAgICAgICAgICAgICA0MCUgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wLCB0byBiZSByZW1vdmVkIGluIHY2XG4vLyBmdXN2LWVuYWJsZVxuXG4vLyBQcm9ncmVzcyBiYXJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwcm9ncmVzcy12YXJpYWJsZXNcbiRwcm9ncmVzcy1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuNzUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93LWluc2V0KSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICAgICAgICRwcmltYXJ5ICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nOiAgICAgMXMgbGluZWFyIGluZmluaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci10cmFuc2l0aW9uOiAgICAgICAgICAgd2lkdGggLjZzIGVhc2UgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHByb2dyZXNzLXZhcmlhYmxlc1xuXG5cbi8vIExpc3QgZ3JvdXBcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGxpc3QtZ3JvdXAtdmFyaWFibGVzXG4kbGlzdC1ncm91cC1jb2xvcjogICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1iZzogICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItY29sb3I6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteTogICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDogICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuLy8gZnVzdi1kaXNhYmxlXG4kbGlzdC1ncm91cC1pdGVtLWJnLXNjYWxlOiAgICAgICAgICAtODAlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjMuMFxuJGxpc3QtZ3JvdXAtaXRlbS1jb2xvci1zY2FsZTogICAgICAgNDAlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjMuMFxuLy8gZnVzdi1lbmFibGVcblxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXRlcnRpYXJ5LWJnKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJGxpc3QtZ3JvdXAtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yOiAgICAgdmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yKSAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjogICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGxpc3QtZ3JvdXAtdmFyaWFibGVzXG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGh1bWJuYWlsLXZhcmlhYmxlc1xuJHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRodW1ibmFpbC1iZzogICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1jb2xvcjogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm94LXNoYWRvdzogICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93LXNtKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGh1bWJuYWlsLXZhcmlhYmxlc1xuXG5cbi8vIEZpZ3VyZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZpZ3VyZS12YXJpYWJsZXNcbiRmaWd1cmUtY2FwdGlvbi1mb250LXNpemU6ICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZmlndXJlLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZmlndXJlLXZhcmlhYmxlc1xuXG5cbi8vIEJyZWFkY3J1bWJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBicmVhZGNydW1iLXZhcmlhYmxlc1xuJGJyZWFkY3J1bWItZm9udC1zaXplOiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmcteTogICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXg6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tOiAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyOiAgICAgICAgICAgICAgICBxdW90ZShcIi9cIikgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLWZsaXBwZWQ6ICAgICAgICAkYnJlYWRjcnVtYi1kaXZpZGVyICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYnJlYWRjcnVtYi12YXJpYWJsZXNcblxuLy8gQ2Fyb3VzZWxcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcm91c2VsLXZhcmlhYmxlc1xuJGNhcm91c2VsLWNvbnRyb2wtY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1ob3Zlci1vcGFjaXR5OiAgICAgLjkgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uOiAgICAgICAgb3BhY2l0eSAuMTVzIGVhc2UgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1pY29uLWZpbHRlcjogICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci13aWR0aDogICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhlaWdodDogICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQ6IDEwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjogICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1vcGFjaXR5OiAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLW9wYWNpdHk6ICAxICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci10cmFuc2l0aW9uOiAgICAgIG9wYWNpdHkgLjZzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoOiAgICAgICAgICAgICA3MCUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tcGFkZGluZy15OiAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1zcGFjZXI6ICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDogICAgICAgIDJyZW0gIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nPjxwYXRoIGQ9J00xMS4zNTQgMS42NDZhLjUuNSAwIDAgMSAwIC43MDhMNS43MDcgOGw1LjY0NyA1LjY0NmEuNS41IDAgMCAxLS43MDguNzA4bC02LTZhLjUuNSAwIDAgMSAwLS43MDhsNi02YS41LjUgMCAwIDEgLjcwOCAwJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfSc+PHBhdGggZD0nTTQuNjQ2IDEuNjQ2YS41LjUgMCAwIDEgLjcwOCAwbDYgNmEuNS41IDAgMCAxIDAgLjcwOGwtNiA2YS41LjUgMCAwIDEtLjcwOC0uNzA4TDEwLjI5MyA4IDQuNjQ2IDIuMzU0YS41LjUgMCAwIDEgMC0uNzA4Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbjogICAgICAgLjZzICFkZWZhdWx0O1xuJGNhcm91c2VsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAkY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbiBlYXNlLWluLW91dCAhZGVmYXVsdDsgLy8gRGVmaW5lIHRyYW5zZm9ybSB0cmFuc2l0aW9uIGZpcnN0IGlmIHVzaW5nIG11bHRpcGxlIHRyYW5zaXRpb25zIChlLmcuLCBgdHJhbnNmb3JtIDJzIGVhc2UsIG9wYWNpdHkgLjVzIGVhc2Utb3V0YClcbi8vIHNjc3MtZG9jcy1lbmQgY2Fyb3VzZWwtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjYXJvdXNlbC1kYXJrLXZhcmlhYmxlc1xuJGNhcm91c2VsLWRhcmstaW5kaWNhdG9yLWFjdGl2ZS1iZzogICRibGFjayAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4zLjRcbiRjYXJvdXNlbC1kYXJrLWNhcHRpb24tY29sb3I6ICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMy40XG4kY2Fyb3VzZWwtZGFyay1jb250cm9sLWljb24tZmlsdGVyOiAgaW52ZXJ0KDEpIGdyYXlzY2FsZSgxMDApICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjMuNFxuLy8gc2Nzcy1kb2NzLWVuZCBjYXJvdXNlbC1kYXJrLXZhcmlhYmxlc1xuXG5cbi8vIFNwaW5uZXJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBzcGlubmVyLXZhcmlhYmxlc1xuJHNwaW5uZXItd2lkdGg6ICAgICAgICAgICAycmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0OiAgICAgICAgICAkc3Bpbm5lci13aWR0aCAhZGVmYXVsdDtcbiRzcGlubmVyLXZlcnRpY2FsLWFsaWduOiAgLS4xMjVlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aDogICAgLjI1ZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1hbmltYXRpb24tc3BlZWQ6IC43NXMgIWRlZmF1bHQ7XG5cbiRzcGlubmVyLXdpZHRoLXNtOiAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodC1zbTogICAgICAgJHNwaW5uZXItd2lkdGgtc20gIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGgtc206IC4yZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNwaW5uZXItdmFyaWFibGVzXG5cblxuLy8gQ2xvc2VcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNsb3NlLXZhcmlhYmxlc1xuJGJ0bi1jbG9zZS13aWR0aDogICAgICAgICAgICAxZW0gIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWhlaWdodDogICAgICAgICAgICRidG4tY2xvc2Utd2lkdGggIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLXBhZGRpbmcteDogICAgICAgIC4yNWVtICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1wYWRkaW5nLXk6ICAgICAgICAkYnRuLWNsb3NlLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRidG4tY2xvc2UtY29sb3I6ICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1iZzogICAgICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skYnRuLWNsb3NlLWNvbG9yfSc+PHBhdGggZD0nTS4yOTMuMjkzYTEgMSAwIDAgMSAxLjQxNCAwTDggNi41ODYgMTQuMjkzLjI5M2ExIDEgMCAxIDEgMS40MTQgMS40MTRMOS40MTQgOGw2LjI5MyA2LjI5M2ExIDEgMCAwIDEtMS40MTQgMS40MTRMOCA5LjQxNGwtNi4yOTMgNi4yOTNhMSAxIDAgMCAxLTEuNDE0LTEuNDE0TDYuNTg2IDggLjI5MyAxLjcwN2ExIDEgMCAwIDEgMC0xLjQxNCcvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtZm9jdXMtc2hhZG93OiAgICAgJGZvY3VzLXJpbmctYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRidG4tY2xvc2Utb3BhY2l0eTogICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWhvdmVyLW9wYWNpdHk6ICAgIC43NSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtZm9jdXMtb3BhY2l0eTogICAgMSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtZGlzYWJsZWQtb3BhY2l0eTogLjI1ICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1maWx0ZXI6ICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS13aGl0ZS1maWx0ZXI6ICAgICBpbnZlcnQoMSkgZ3JheXNjYWxlKDEwMCUpIGJyaWdodG5lc3MoMjAwJSkgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMy40XG4vLyBzY3NzLWRvY3MtZW5kIGNsb3NlLXZhcmlhYmxlc1xuXG5cbi8vIE9mZmNhbnZhc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgb2ZmY2FudmFzLXZhcmlhYmxlc1xuJG9mZmNhbnZhcy1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLXBhZGRpbmcteDogICAgICAgICAgICAgICAkbW9kYWwtaW5uZXItcGFkZGluZyAhZGVmYXVsdDtcbiRvZmZjYW52YXMtaG9yaXpvbnRhbC13aWR0aDogICAgICAgIDQwMHB4ICFkZWZhdWx0O1xuJG9mZmNhbnZhcy12ZXJ0aWNhbC1oZWlnaHQ6ICAgICAgICAgMzB2aCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi1kdXJhdGlvbjogICAgIC4zcyAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAgICRtb2RhbC10aXRsZS1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYmctY29sb3I6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRvZmZjYW52YXMtY29sb3I6ICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYm94LXNoYWRvdzogICAgICAgICAgICAgICRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJhY2tkcm9wLWJnOiAgICAgICAgICAgICAkbW9kYWwtYmFja2Ryb3AtYmcgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgICAkbW9kYWwtYmFja2Ryb3Atb3BhY2l0eSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgb2ZmY2FudmFzLXZhcmlhYmxlc1xuXG4vLyBDb2RlXG5cbiRjb2RlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkcGluayAhZGVmYXVsdDtcblxuJGtiZC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgLjE4NzVyZW0gIWRlZmF1bHQ7XG4ka2JkLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGtiZC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgJGNvZGUtZm9udC1zaXplICFkZWZhdWx0O1xuJGtiZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJGtiZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjAsIHJlbW92aW5nIGluIHY2XG5cbiRwcmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbkBpbXBvcnQgXCJ2YXJpYWJsZXMtZGFya1wiOyAvLyBUT0RPOiBjYW4gYmUgcmVtb3ZlZCBzYWZlbHkgaW4gdjYsIG9ubHkgaGVyZSB0byBhdm9pZCBicmVha2luZyBjaGFuZ2VzIGluIHY1LjNcbiIsIi8vIEFkZGl0aW9uYWwgcmVzZXRzIGZvciBpU3BhY2VcblxuOndoZXJlKC5jb250YWluZXIsIC5tb2RhbCkgaWZyYW1lIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICBAc3VwcG9ydHMgKGFzcGVjdC1yYXRpbzogMTYgLyA5KSB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYXNwZWN0LXJhdGlvOiB2YXIoLS1pZnJhbWUtYXNwZWN0LXJhdGlvLCAxNiAvIDkpO1xuICAgIH1cbn1cbiIsIkB1c2UgJ3Nhc3M6bWFwJztcblxuYm9keSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG5tYWluIHtcbiAgICBmbGV4OiAxO1xufVxuXG5hLFxuYnV0dG9uIHtcbiAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgICBvdXRsaW5lOiAxcHggYXV0byBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdpbmZvJyk7XG4gICAgfVxufVxuXG5hIHtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1cyBsaW5lYXI7XG59XG5cbnN2ZyB7XG4gICAgQGluY2x1ZGUgc3F1YXJlKDIuMnJlbSk7XG5cbiAgICAmLmljb24ge1xuICAgICAgICAmX19lcnJvciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBzcXVhcmUoMS4zcmVtKTtcblxuICAgICAgICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgICAgICAgICBib3JkZXI6IDAuNnJlbSBzb2xpZCBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGRhbmdlcik7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxLjJyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGRhbmdlcik7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIHN0cm9rZS13aWR0aDogMC41cHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuNzVlbTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm1haW4tY29udGVudCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnZ3JheS0xMDAnKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1ub3Qtbm90YXRpb25cbi5zci1vbmx5Om5vdCg6Zm9jdXMpOm5vdCg6YWN0aXZlKSB7XG4gICAgQGV4dGVuZCAlc3Itb25seTtcbn1cblxuLnByaW50LXZpc2liaWx0eSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGhlYWRlci1uYXYtYnJlYWtwb2ludCkge1xuICAgIC5kZXNrdG9wLW5hdi1vbmx5IHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkaGVhZGVyLW5hdi1icmVha3BvaW50KSB7XG4gICAgLm1vYmlsZS1uYXYtb25seSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi5uby1qcy1vbmx5IHtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIC5qcyAmIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi5qcy1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgLmpzICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG5cbi5ib3hlczpub3QoLmJveGVzLWNlbnRlcikge1xuICAgICYsXG4gICAgLmNvbW1vbi1jb250ZW50ICYge1xuICAgICAgICBAaW5jbHVkZSBib3hlcygkcXVhbnRpdHk6IGZhbHNlKTtcblxuICAgICAgICA+ICo6aGFzKD4gcGljdHVyZTpmaXJzdC1jaGlsZDpsYXN0LWNoaWxkKSxcbiAgICAgICAgPiAqOmhhcyg+IGltZzpmaXJzdC1jaGlsZDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbltjbGFzcyo9J2JveGVzLSddIHtcbiAgICAvLyBib3hlcyB2YXJpYWJsZXMgYXJlIGxvY2FsIChvciAncHJpdmF0ZScsIGlmIHlvdSBwcmVmZXIgOi0pKVxuICAgIC8vIFVzZWQgdG8gZ2VuZXJhdGUgdGhlIGJveGVzLSB1dGlsaXR5IGNsYXNzZXMuIEluIG9yZGVyIHRvIG92ZXJyaWRlLCB5b3UgbmVlZCBib3RoIHRoZSBuZXcgdmFyaWFibGUgdmFsdWVzIEFORCB0aGUgQGZvciBsb29wXG4gICAgLy8gVGhlcmUgYXJlIDMgZ2FwIG9wdGlvbnM6IDFyZW0sIDJyZW0sIGFuZCAzcmVtLCBzcGVjaWZpZWQgYnkgdGhlIGdhcC0xLzIvMyBjbGFzcyAodGhlIGRlZmF1bHQgaXMgMXJlbSBpZiB5b3Ugb21pdCB0aGUgZ2FwIGNsYXNzKVxuICAgICRib3hlczogKFxuICAgICAgICBtaW46IDIsXG4gICAgICAgIG1heDogNVxuICAgICk7XG5cbiAgICAtLWZsZXgtZ3JvdzogMDtcbiAgICAtLWZsZXgtc2hyaW5rOiAxO1xuICAgIC0tZmxleC1iYXNpczogYXV0bztcblxuICAgIC8vIEdlbmVyYXRlIHRoZSAuYm94ZXMgcnVsZXNcbiAgICBAYXQtcm9vdCB7XG4gICAgICAgIEBmb3IgJGJveCBmcm9tIG1hcC5nZXQoJGJveGVzLCBtaW4pIHRocm91Z2ggbWFwLmdldCgkYm94ZXMsIG1heCkge1xuICAgICAgICAgICAgLmJveGVzLSN7JGJveH0ge1xuICAgICAgICAgICAgICAgICYsXG4gICAgICAgICAgICAgICAgLmNvbW1vbi1jb250ZW50ICYge1xuICAgICAgICAgICAgICAgICAgICAmOndoZXJlKDpub3QoW2NsYXNzKj0nZ2FwLSddKSksXG4gICAgICAgICAgICAgICAgICAgICY6d2hlcmUoLmdhcC0xKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3hlcygkcXVhbnRpdHk6ICRib3gsICRnYXA6IDEpO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjp3aGVyZSguZ2FwLTIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJveGVzKCRxdWFudGl0eTogJGJveCwgJGdhcDogMik7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOndoZXJlKC5nYXAtMykge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm94ZXMoJHF1YW50aXR5OiAkYm94LCAkZ2FwOiAzKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAjeyBtYXAuZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBtZCkgLSAxIH0pIHtcbiAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm90LW5vdGF0aW9uXG4gICAgICAgICY6d2hlcmUoOm5vdCguYm94ZXMtY2VudGVyKTpub3QoLmJveGVzLTEpKSB7XG4gICAgICAgICAgICAmOndoZXJlKDpub3QoLmdhcC0yKTpub3QoLmdhcC0zKSkgPiAqOm5vdCguc3BlY2lmaWNpdHktZml4KSB7XG4gICAgICAgICAgICAgICAgLS1mbGV4LWJhc2lzOiBjYWxjKDUwJSAtIDAuNXJlbSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6d2hlcmUoLmdhcC0yKSA+ICo6bm90KC5zcGVjaWZpY2l0eS1maXgpIHtcbiAgICAgICAgICAgICAgICAtLWZsZXgtYmFzaXM6IGNhbGMoNTAlIC0gMXJlbSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6d2hlcmUoLmdhcC0zKSA+ICo6bm90KC5zcGVjaWZpY2l0eS1maXgpIHtcbiAgICAgICAgICAgICAgICAtLWZsZXgtYmFzaXM6IGNhbGMoNTAlIC0gMS41cmVtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAvLyBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW5vdC1ub3RhdGlvblxuICAgIH1cblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MTRweCkge1xuICAgICAgICA+ICo6bm90KC5zcGVjaWZpY2l0eS1maXgpIHtcbiAgICAgICAgICAgIC0tZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgID4gKiB7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgZmxleDogdmFyKC0tZmxleC1ncm93KSB2YXIoLS1mbGV4LXNocmluaykgdmFyKC0tZmxleC1iYXNpcyk7XG5cbiAgICAgICAgJjpub3QoLnNwZWNpZmljaXR5LWZpeCkge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgPiAqLFxuICAgIC5ib3gtdGV4dCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LXdyYXA6IHByZXR0eTtcbiAgICB9XG5cbiAgICA+ICo6d2hlcmUoaW1nKSB7XG4gICAgICAgIGhlaWdodDogcmV2ZXJ0LWxheWVyO1xuICAgICAgICB3aWR0aDogcmV2ZXJ0LWxheWVyO1xuICAgIH1cblxuICAgIC8vIG1ha2UgaW5uZXIgc3BhY2luZyBmb2xsb3cgZ2FwIHZhbHVlIFVOTEVTUyBpdCdzIGJpZ2dlciB0aGFuIDJyZW0gKGJlY2F1c2UgaXQgZ3Jvd3MgdG9vIGxhcmdlIGZvciBhIGdlbmVyYWwgdXRpbGl0eSBjbGFzcyB0byBzcGVjaWZ5ISA6LSkpXG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm90LW5vdGF0aW9uXG4gICAgPiAqID4gKjpub3QoaW1nKTpub3QocGljdHVyZSk6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgJi5nYXAtMSA+ICogPiAqOm5vdChpbWcpOm5vdChwaWN0dXJlKTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1ibG9jazogMXJlbSAwO1xuICAgIH1cblxuICAgICYuZ2FwLTIgPiAqID4gKjpub3QoaW1nKTpub3QocGljdHVyZSk6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgJi5nYXAtMyA+ICogPiAqOm5vdChpbWcpOm5vdChwaWN0dXJlKTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1ibG9jazogMnJlbSAwO1xuICAgIH1cbiAgICAvLyBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW5vdC1ub3RhdGlvblxufVxuXG5bY2xhc3MqPSdib3hlcy0nXS50ZXh0LWNlbnRlcixcbltjbGFzcyo9J2JveGVzLSddIFtzdHlsZSo9J3RleHQtYWxpZ246Y2VudGVyJ10ge1xuICAgIHBpY3R1cmUsXG4gICAgaW1nIHtcbiAgICAgICAganVzdGlmeS1zZWxmOiBjZW50ZXI7XG4gICAgfVxufVxuXG4uYm94ZXMtY2VudGVyIHtcbiAgICAmLFxuICAgIC5jb21tb24tY29udGVudCAmIHtcbiAgICAgICAgQGluY2x1ZGUgYm94ZXMoJHF1YW50aXR5OiBmYWxzZSwgJGNlbnRlci1ibG9jazogdHJ1ZSk7XG4gICAgfVxufVxuXG4vLyBhIGdyaWQgdmVyc2lvbiBvZiBCb290c3RyYXAncyAucm93IHdoaWNoIGNhbiB3cmFwIGF0IGEgc3BlY2lmaWVkIG1pbi13aWR0aCBhbmQgd2lsbCB1c2UgZ2FwIHJhdGhlciB0aGFuIG1hcmdpbnNcbi5yb3cge1xuICAgICYtLWdyaWQge1xuICAgICAgICAkYnMtZ3V0dGVyLXg6IDEuNXJlbTtcbiAgICAgICAgJGJzLWd1dHRlci15OiAwO1xuICAgICAgICAkZ3JpZC1jb2x1bW4tbWluaW11bTogNDIwcHg7XG5cbiAgICAgICAgLS1icy1ndXR0ZXIteDogI3skYnMtZ3V0dGVyLXh9O1xuICAgICAgICAtLWJzLWd1dHRlci15OiAjeyRicy1ndXR0ZXIteX07XG4gICAgICAgIC0tZ3JpZC1yb3ctZ2FwOiB2YXIoLS1icy1ndXR0ZXIteCk7XG4gICAgICAgIC0tZ3JpZC1jb2x1bW4tbWluaW11bTogI3skZ3JpZC1jb2x1bW4tbWluaW11bX07XG5cbiAgICAgICAgbWFyZ2luLXRvcDogY2FsYygtMSAqIHZhcigtLWJzLWd1dHRlci15KSk7XG5cbiAgICAgICAgLy8gZ3JpZCB2ZXJzaW9uXG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdhcDogdmFyKC0tZ3JpZC1yb3ctZ2FwKTtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heChtaW4odmFyKC0tZ3JpZC1jb2x1bW4tbWluaW11bSksIDEwMCUpLCAxZnIpKTtcblxuICAgICAgICArIC5yb3cge1xuICAgICAgICAgICAgJi0tZ3JpZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tZ3JpZC1yb3ctZ2FwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jb2wge1xuICAgICAgICAgICAgJi0tbmV3LXJvdyB7XG4gICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBzcGVjaWZ5IGZvciBsYXlvdXQgdGhhdCBjYW5ub3QgaGF2ZSBhbiBleHRyYSBpbm5lciB3cmFwcGVyXG4gICAgICAgICYtZmllbGRzZXQge1xuICAgICAgICAgICAgLS1icy1ndXR0ZXIteDogI3skYnMtZ3V0dGVyLXh9O1xuICAgICAgICAgICAgLS1icy1ndXR0ZXIteTogI3skYnMtZ3V0dGVyLXl9O1xuICAgICAgICAgICAgLS1ncmlkLXJvdy1nYXA6IHZhcigtLWJzLWd1dHRlci14KTtcbiAgICAgICAgICAgIC0tZ3JpZC1jb2x1bW4tbWluaW11bTogI3skZ3JpZC1jb2x1bW4tbWluaW11bX07XG5cbiAgICAgICAgICAgIGZpZWxkc2V0OmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICAgICAgZ2FwOiB2YXIoLS1ncmlkLXJvdy1nYXApO1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgobWluKHZhcigtLWdyaWQtY29sdW1uLW1pbmltdW0pLCAxMDAlKSwgMWZyKSk7XG5cbiAgICAgICAgICAgICAgICBsZWdlbmQge1xuICAgICAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIC0xO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICsgLmZvcm0taW5wdXQge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5mb3JtLWlucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgKyAuZm9ybS1pbnB1dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpoYXMoLmNoZWNrYm94LCAuc3VibWl0LCAuZm9ybS1maWVsZC0tdGV4dGFyZWEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxIC8gLTE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID4gZm9ybSA+IGZpZWxkc2V0IGZpZWxkc2V0IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQGtleWZyYW1lcyBzcGlubmVyIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpO1xuICAgIH1cbn1cbiIsIi8vIFR5cG9ncmFwaHlcblxuLy8gMS4gUmVtb3ZlIHRvcCBtYXJnaW5zIGZyb20gaGVhZGluZ3Ncbi8vICAgIEJ5IGRlZmF1bHQsIGA8aDE+YC1gPGg2PmAgYWxsIHJlY2VpdmUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gV2UgbnVrZSB0aGUgdG9wXG4vLyAgICBtYXJnaW4gZm9yIGVhc2llciBjb250cm9sIHdpdGhpbiB0eXBlIHNjYWxlcyBhcyBpdCBhdm9pZHMgbWFyZ2luIGNvbGxhcHNpbmcuXG5cbiVoZWFkaW5nIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206ICRoZWFkaW5ncy1tYXJnaW4tYm90dG9tO1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gICAgZm9udC1zdHlsZTogJGhlYWRpbmdzLWZvbnQtc3R5bGU7XG4gICAgZm9udC13ZWlnaHQ6ICRoZWFkaW5ncy1mb250LXdlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcik7XG59XG5cbmgxIHtcbiAgICBAZXh0ZW5kICVoZWFkaW5nO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDEtZm9udC1zaXplKTtcbn1cblxuaDIge1xuICAgIEBleHRlbmQgJWhlYWRpbmc7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRoMi1mb250LXNpemUpO1xufVxuXG5oMyB7XG4gICAgQGV4dGVuZCAlaGVhZGluZztcblxuICAgIGZvbnQtc2l6ZTogJGgzLWZvbnQtc2l6ZTtcbn1cblxuaDQge1xuICAgIEBleHRlbmQgJWhlYWRpbmc7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRoNC1mb250LXNpemUpO1xufVxuXG5oNSB7XG4gICAgQGV4dGVuZCAlaGVhZGluZztcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGg1LWZvbnQtc2l6ZSk7XG59XG5cbmg2IHtcbiAgICBAZXh0ZW5kICVoZWFkaW5nO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDYtZm9udC1zaXplKTtcblxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbi5mb250LXNpemUtc20ge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbn1cblxuLmZvbnQtc2l6ZS1sZyB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxnO1xufVxuXG4uZm9udC1zaXplLWxhcmdlciB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlcjtcbn1cblxuLmZvbnQtc2l6ZS1sYXJnZXN0IHtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2VzdDtcbn1cblxuLnRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLnRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4udGV4dC1ib2xkIHtcbiAgICBmb250LXdlaWdodDogNzAwO1xufVxuXG4uZ2Rwci1jb25zZW50IHtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgICB0ZXh0LXdyYXA6IHByZXR0eTtcbn1cbiIsIi8vIFNhZmFyIGZpeCBmb3IgdmFyaWFibGUgZm9udFxuaDYsXG5oNSxcbmg0LFxuaDMsXG5oMixcbmgxLFxubGVnZW5kIHtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNzAwO1xufVxuXG5oMSxcbmgyIHtcbiAgICBtYXJnaW4tYmxvY2stZW5kOiAycmVtO1xufVxuXG5kdCB7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnICN7JGR0LWZvbnQtd2VpZ2h0fTtcbn1cblxuYixcbnN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDcwMDtcbn1cblxuLmNvb2tpZS1jb25zZW50LW1vZGFsIHtcbiAgICAuY29va2llLWNvbnNlbnQtaGVhZGVyLTIge1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDYwMDtcbiAgICB9XG5cbiAgICAuY29va2llLWZvcm0tc2VjdGlvbiB7XG4gICAgICAgIC5jb29raWUtZm9ybS1zZWN0aW9uLXByaW1hcnktaGVhZGluZyB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA2MDA7XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNDAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uY2FyZC1wcmljZSB7XG4gICAgJl9fZGlzY291bnQge1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDQwMDtcbiAgICB9XG5cbiAgICAmX19mdWxsIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA3MDA7XG4gICAgfVxufVxuXG4uZHJvcGRvd24tbGlzdCB7XG4gICAgJl9fbGluayB7XG4gICAgICAgICYuaXMtYWN0aXZlIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDcwMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNvbHVtbi1pdGVtcyB7XG4gICAgJi1keW5hbWljIHtcbiAgICAgICAgJi0tdHJpZ2dlciB7XG4gICAgICAgICAgICAuYnRuLS1tb3JlIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIGluaGVyaXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mbG9hdGluZy1zcGlubmVyLWNvbnRhaW5lciB7XG4gICAgJi5zcGlubmVyLXNob3cge1xuICAgICAgICAubXNnLW92ZXJsYXkge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNzAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZm9ybS1maWVsZCB7XG4gICAgJl9fY3VycmVuY3kge1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDcwMDtcbiAgICB9XG5cbiAgICAmX19pbnB1dCxcbiAgICAqOndoZXJlKFt0eXBlPSd0ZXh0J10sIFt0eXBlPSdwYXNzd29yZCddLCBbdHlwZT0nbnVtYmVyJ10sIFt0eXBlPSdlbWFpbCddLCBbdHlwZT0ndGVsJ10sIHRleHRhcmVhLCBzZWxlY3QpIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyAzMDA7XG4gICAgfVxuXG4gICAgJl9fc2VwYXJhdG9yIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA3MDA7XG4gICAgfVxufVxuXG4uZm9ybS1pbnB1dCB7XG4gICAgW2NsYXNzKj0nLS1pbmxpbmUnXSArICoge1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDQwMDtcbiAgICB9XG5cbiAgICAmX19sYWJlbCB7XG4gICAgICAgICY6d2hlcmUoOm5vdCgudGV4dC1ib2xkKSkge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNDAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICAmX19oZWxwLWJveCB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA0MDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5tZW51IHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGhlYWRlci1uYXYtYnJlYWtwb2ludCkge1xuICAgICAgICAmX19saW5rIHtcbiAgICAgICAgICAgICYtLXByaW1hcnkge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA2MDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtLXNlY29uZGFyeSB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDQwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGhlYWRlci1uYXYtYnJlYWtwb2ludCkge1xuICAgICAgICAmX19pdGVtIHtcbiAgICAgICAgICAgICYtLW1haW4ge1xuICAgICAgICAgICAgICAgID4gLm1lbnVfX2xpbmsge1xuICAgICAgICAgICAgICAgICAgICAmLS1wcmltYXJ5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDcwMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zdWJtZW51LS1tYWluIHtcbiAgICAgICAgICAgID4gLm1lbnUge1xuICAgICAgICAgICAgICAgID4gLm1lbnVfX2l0ZW0ge1xuICAgICAgICAgICAgICAgICAgICA+IC5tZW51X19saW5rIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDcwMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm5hdi1wYWdlcyB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRoZWFkZXItbmF2LWJyZWFrcG9pbnQpIHtcbiAgICAgICAgJl9fbGluayB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA1MDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zaWRlYmFyIHtcbiAgICAmX19uYXZpZ2F0aW9uIHtcbiAgICAgICAgJi0tbGlzdCB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNzAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ucHJvZHVjdC1hdmFpbGFiaWxpdHkge1xuICAgIHN0cm9uZyB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNDAwO1xuICAgIH1cbn1cblxuLnN1Ym1lbnUge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkaGVhZGVyLW5hdi1icmVha3BvaW50KSB7XG4gICAgICAgICZfX2J0biB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA3MDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi50ZXh0LWJvbGQge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA3MDA7XG59XG5cbi5jb21wYXJpbmcge1xuICAgICZfX3RhYmxlIHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgICAgICAgICB0ZDo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNzAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uY3VzdG9tZXItbGlzdCB7XG4gICAgJl9fdGFibGUge1xuICAgICAgICAub3JkZXIge1xuICAgICAgICAgICAgJl9fdGFibGUge1xuICAgICAgICAgICAgICAgICYtaXRlbS1wcmljZS10b3RhbCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNzAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmhvbWUtaW50cm8ge1xuICAgICZfX3RpdGxlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA3MDA7XG4gICAgfVxufVxuIiwiQHVzZSAnc2FzczptYXAnO1xuXG4uaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuXG4gICAgLy8gZmlyc3QgY29sdW1uIGlzIGxlZnQgJ3BhZGRpbmcnIGNhbGN1bGF0ZWQgdXNpbmcgdGhlIC5jb250YWluZXIgbWF4LXdpZHRoIHZhbHVlXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOlxuICAgICAgICBtaW5tYXgoMCwgY2FsYyg1MHZ3IC0gI3ttYXAuZ2V0KCRjb250YWluZXItbWF4LXdpZHRocywgbGcpICogMC41fSkpXG4gICAgICAgIDFmclxuICAgICAgICA2NXB4O1xuXG4gICAgQGlmICRoZWFkZXItZml4ZWQge1xuICAgICAgICAuc3RpY2t5LXN0YXRlLXRvZ2dsZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IC0xcHg7XG4gICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkaGVhZGVyLW5hdi1icmVha3BvaW50KSB7XG4gICAgICAgICAgICBib2R5ID4gJiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtYm9keS1iZywgI3ttYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGJhc2UtYmcpfSk7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMTU7XG5cbiAgICAgICAgICAgICAgICAmOmhhcyguaXMtc3RpY2t5LXN0YXRlKSB7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IDNweCByZ2IoMCwgMCwgMCwgMC4wNSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc3RpY2t5LXN0YXRlLXRvZ2dsZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICA+ICoge1xuICAgICAgICBncmlkLXJvdzogMTtcbiAgICB9XG5cbiAgICAmX19uYXYge1xuICAgICAgICBoZWlnaHQ6ICRoZWFkZXItbmF2LWhlaWdodDtcbiAgICB9XG5cbiAgICAmX19jb250cm9scyB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRoZWFkZXItbmF2LWJyZWFrcG9pbnQpIHtcbiAgICAgICAgYWxpZ24tY29udGVudDogc3RhcnQ7XG5cbiAgICAgICAgLmNvbnRhaW5lciB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmX190b3AtbmF2IHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgcGFkZGluZy1pbmxpbmUtZW5kOiBtaW4oMXJlbSwgMXZ3KTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX21pZC1wYW5lbCxcbiAgICAgICAgJl9fY29udGFjdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkaGVhZGVyLW5hdi1icmVha3BvaW50KSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uIHdyYXA7XG4gICAgICAgIG1pbi1oZWlnaHQ6ICRoZWFkZXItbmF2LWRlc2t0b3AtaGVpZ2h0O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJl9fbmF2IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fdG9wLW5hdiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuXG4gICAgICAgICAgICAvLyBwcmV0dGllci1pZ25vcmVcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGU6XG4gICAgICAgICAgICAgICAgJy4gICAgIC4gICAgICAgICAgLicgICAgICAgICAwLjc1cmVtXG4gICAgICAgICAgICAgICAgJ2xvZ28gIHBhZ2UtbWVudSAgY29udGFjdCcgICBtYXgtY29udGVudFxuICAgICAgICAgICAgICAgICdsb2dvICBzZWFyY2ggICAgIGJhc2tldCcgICAgMWZyXG4gICAgICAgICAgICAgICAgJyAuICAgIC4gICAgICAgICAgLicgICAgICAgICAwLjI1cmVtIC8gMmZyIG1pbm1heChtYXgtY29udGVudCwgNWZyKSBtaW5tYXgobWF4LWNvbnRlbnQsIDJmcik7XG4gICAgICAgICAgICBnYXA6IDAuMnJlbSAxcmVtO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGhlaWdodDogJGhlYWRlci10b3AtbmF2LWRlc2t0b3AtaGVpZ2h0O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1sb2dvIHtcbiAgICAgICAgICAgIGdyaWQtYXJlYTogbG9nbztcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3RhcnQ7XG4gICAgICAgIH1cblxuICAgICAgICBbaWQ9J25hdi1wYWdlcy1kZXNrdG9wJ10ge1xuICAgICAgICAgICAgZ3JpZC1hcmVhOiBwYWdlLW1lbnU7XG4gICAgICAgICAgICBqdXN0aWZ5LXNlbGY6IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIFtpZD0nc2VhcmNoLWRlc2t0b3AnXSB7XG4gICAgICAgICAgICBncmlkLWFyZWE6IHNlYXJjaDtcbiAgICAgICAgICAgIGp1c3RpZnktc2VsZjogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fY29udGFjdCB7XG4gICAgICAgICAgICBncmlkLWFyZWE6IGNvbnRhY3Q7XG4gICAgICAgICAgICBqdXN0aWZ5LXNlbGY6IGVuZDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fdGVsIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIHByaW1hcnkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fb3BlbmluZy1ob3VycyB7XG4gICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnZ3JheS02MDAnKTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwLjZlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2NvbnRyb2xzIHtcbiAgICAgICAgICAgIGdyaWQtYXJlYTogYmFza2V0O1xuICAgICAgICAgICAganVzdGlmeS1zZWxmOiBlbmQ7XG4gICAgICAgICAgICBnYXA6IDAuNnJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5oYW1idXJnZXIge1xuICAgICAgICBncmlkLWNvbHVtbjogMztcbiAgICB9XG59XG5cbkBpbmNsdWRlIGRlc2t0b3AtbmF2aWdhdGlvbi1uYXJyb3cge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbiIsIkB1c2UgJ3Nhc3M6bWFwJztcbkB1c2UgJ3Nhc3M6Y29sb3InO1xuXG5ib2R5Lm5hdi1vcGVuIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ubmF2LWJhY2tkcm9wIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyaztcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogY2FsYygjeyRoZWFkZXItbmF2LWhlaWdodH0gKyB2YXIoLS1wcm9tby1oZWlnaHQsIDBweCkpO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgbGluZWFyO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgei1pbmRleDogNDtcbiAgICB9XG5cbiAgICAmLmlzLXZpc2libGUge1xuICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgfVxuXG4gICAgLmhlYWRlcjpoYXMoLmlzLXN0aWNreS1zdGF0ZSkgfiAmIHtcbiAgICAgICAgdG9wOiAjeyRoZWFkZXItbmF2LWhlaWdodH07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkaGVhZGVyLW5hdi1icmVha3BvaW50KSB7XG4gICAgICAgICYuaXMtYWN0aXZlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5uYXYge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkaGVhZGVyLW5hdi1icmVha3BvaW50KSB7XG4gICAgICAgICY6d2hlcmUoOm5vdCgubmF2LXRhYnMpKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdsaWdodCcpO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2dyYXktMjAwJyk7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAzNnJlbTtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDAgY2FsYygkaGVhZGVyLW5hdi1oZWlnaHQgKiAxLjIpOyAvLyBleHRyYSBib3R0b20gcGFkZGluZyBmb3IgZHJvcGRvd25zXG4gICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgICAgICByaWdodDogMTAwdnc7XG4gICAgICAgICAgICB0b3A6IGNhbGMoI3skaGVhZGVyLW5hdi1oZWlnaHR9ICsgdmFyKC0tcHJvbW8taGVpZ2h0LCAwcHgpKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgICAgICAgei1pbmRleDogMTAwO1xuXG4gICAgICAgICAgICAmLmlzLXZpc2libGUge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaGVhZGVyOmhhcyguaXMtc3RpY2t5LXN0YXRlKSAmIHtcbiAgICAgICAgICAgICAgICB0b3A6ICN7JGhlYWRlci1uYXYtaGVpZ2h0fTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGhlYWRlci1uYXYtYnJlYWtwb2ludCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdwcmltYXJ5Jyk7XG5cbiAgICAgICAgJl9fZm9vdGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5cbi5mb290ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2RhcmsnKTtcbiAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnbGlnaHQnKTtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmctYm90dG9tOiA0cmVtO1xuXG4gICAgPiAuY29udGFpbmVyID4gKjpub3QoLmZvb3Rlcl9fYmxvY2tzKSB7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2dyYXktMjAwJyk7XG5cbiAgICAgICAgICAgIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdwcmltYXJ5Jyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZvb3Rlci1ibG9jay1jb250ZW50ICZfX2xvZ28ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAzcmVtIGF1dG8gMDtcbiAgICB9XG5cbiAgICAuZm9vdGVyLWJsb2NrLWNvbnRlbnQgJl9fc29jaWFsIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZ2FwOiAkY29udGFpbmVyLXBhZGRpbmcteDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi10b3A6IDIuNHJlbTtcbiAgICB9XG5cbiAgICAuZm9vdGVyLWJsb2NrLWNvbnRlbnQgJl9fc29jaWFsLWl0ZW0ge1xuICAgICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIC5mb290ZXItYmxvY2stY29udGVudCAmX19zb2NpYWwtbGluayB7XG4gICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdsaWdodCcpO1xuXG4gICAgICAgIC5zdmctaWNvbiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBzcXVhcmUoNC40cmVtKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mb290ZXItYmxvY2stY29udGVudCAmX19jb250YWN0IHtcbiAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2xpZ2h0Jyk7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMS4zZW07XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAuc3ZnLWljb24ge1xuICAgICAgICAgICAgQGluY2x1ZGUgc3F1YXJlKDAuOWVtKTtcblxuICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ3ByaW1hcnknKTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mb290ZXItYmxvY2stY29udGVudCB7XG4gICAgICAgIC5mb290ZXJfX2NvbnRhY3QgKyAuZm9vdGVyX19jb250YWN0IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuMmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYm90dG9tIHtcbiAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2dyYXktMjAwJyk7XG4gICAgICAgIG1hcmdpbi10b3A6IDIuNHJlbTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgICZfX2xpbmsge1xuICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnZ3JheS0yMDAnKTtcblxuICAgICAgICBAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ3ByaW1hcnknKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ2xnJykge1xuICAgICAgICBwYWRkaW5nOiA3cmVtIDAgMnJlbTtcblxuICAgICAgICAmX19ibG9ja3Mge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2dyYXktOTAwJyk7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgZ2FwOiBjYWxjKCRjb250YWluZXItcGFkZGluZy14IC8gMik7XG4gICAgICAgIH1cblxuICAgICAgICAmX19ibG9jayB7XG4gICAgICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgICAgIG1heC13aWR0aDogY2FsYygyNSUgLSAje2NhbGMoJGNvbnRhaW5lci1wYWRkaW5nLXggLyA0KX0pO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZvb3Rlci1ibG9jay1jb250ZW50ICZfX2xvZ28ge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMCBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZvb3Rlci1ibG9jay1jb250ZW50ICZfX3NvY2lhbCB7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fYm90dG9tIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCdsZycpIHtcbiAgICAgICAgPiAuY29udGFpbmVyID4gKjpmaXJzdC1jaGlsZDp3aGVyZSg6bm90KC5mb290ZXJfX2Jsb2NrcykpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogY2FsYyh2YXIoLS1icy1ndXR0ZXIteCkgKiAwLjUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fYmxvY2sge1xuICAgICAgICAgICAgJi5pcy1jb2xsYXBzaWJsZSArIC5mb290ZXItYmxvY2stY29udGVudDpub3QoLmlzLWNvbGxhcHNpYmxlKSxcbiAgICAgICAgICAgICY6bm90KC5pcy1jb2xsYXBzaWJsZSk6aXMoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAzcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLmhlYWRlciB7XG4gICAgLS1pY29uLW1hcmdpbjogMCAwLjc1cmVtIDAgMDtcbiAgICAtLWRyb3Bkb3duLWJvcmRlci1yYWRpdXM6ICN7JGRlZmF1bHQtYm9yZGVyLXJhZGl1c307XG5cbiAgICAvLyBQcmV2ZW50ICdncmlkIGJsb3dvdXQnIHdoZW4gdGhlIHBhZ2UgbWVudSBpcyBsb25nXG4gICAgLy8gKEhlcmUsIHdlIGFsbG93IHRoZSBzZWFyY2ggYmFyIHRvIHNocmluayBhcyBtdWNoIGFzIHBvc3NpYmxlLCBiZWxvdyB0aGUgZGVmYXVsdCBtaW4td2lkdGg6IGF1dG8gdmFsdWUuLi5cbiAgICAvLyBJdCAqY291bGQqLCB0aGVvcmV0aWNhbGx5LCBoaXQgemVybyBweCwgYnV0IGl0IG5ldmVyIHdpbGwgYmVjYXVzZSB3ZSBzd2l0Y2ggdG8gdGhlIG1vYmlsZSBsYXlvdXQpXG4gICAgLS1ncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1heC1jb250ZW50IG1heC1jb250ZW50IG1pbm1heCgwLCAxZnIpIGF1dG8gYXV0bztcblxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byAxZnI7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRoZWFkZXItbmF2LWJyZWFrcG9pbnQpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBiYXNlLWJnKTtcbiAgICAgICAgYm9yZGVyLWJsb2NrLWVuZDogMXB4IHNvbGlkIG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgZ3JheS0yMDApO1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB6LWluZGV4OiAxNTtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBub25lO1xuICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDQuNXJlbSAxZnIgMC4yNXJlbTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBncmlkLXJvdzogMTtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxIC8gLTE7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdwcmltYXJ5LWxpZ2h0Jyk7XG4gICAgICAgIH1cblxuICAgICAgICAmX190b3AtbmF2IHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGU6XG4gICAgICAgICAgICAgICAgJ3BhZ2UtbWVudSAgcGFnZS1tZW51ICAgcGFnZS1tZW51ICBjb250YWN0ICBjb250YWN0J1xuICAgICAgICAgICAgICAgICdsb2dvICAgICAgIGNhdGVnb3JpZXMgIHNlYXJjaCAgICAgYmFza2V0ICAgYmFza2V0J1xuICAgICAgICAgICAgICAgICcuICAgICAgICAgIC4gICAgICAgICAgIC4gICAgICAgICAgLiAgICAgICAgLiAgICAgJyAvIHZhcigtLWdyaWQtdGVtcGxhdGUtY29sdW1ucyk7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHN1YmdyaWQ7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIC0xO1xuICAgICAgICAgICAgZ3JpZC1yb3c6IDEgLyBzcGFuIDM7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IG1hcC5nZXQoJGNvbnRhaW5lci1tYXgtd2lkdGhzLCB4bCk7XG4gICAgICAgICAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCd4eGwnKSB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBtYXAuZ2V0KCRjb250YWluZXItbWF4LXdpZHRocywgeHhsKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIFtpZD0nY2F0ZWdvcmllcy1kZXNrdG9wJ10ge1xuICAgICAgICAgICAgcGFkZGluZy1pbmxpbmU6IG1pbigyLjV2dywgMnJlbSk7XG4gICAgICAgICAgICBncmlkLWFyZWE6IGNhdGVnb3JpZXM7XG5cbiAgICAgICAgICAgIC5uYXYge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAycHg7XG4gICAgICAgICAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwdnc7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgW2lkPSduYXYtcGFnZXMtZGVza3RvcCddLFxuICAgICAgICBbaWQ9J3NlYXJjaC1kZXNrdG9wJ10ge1xuICAgICAgICAgICAganVzdGlmeS1zZWxmOiBub3JtYWw7XG4gICAgICAgIH1cblxuICAgICAgICBbaWQ9J3NlYXJjaC1kZXNrdG9wJ10ge1xuICAgICAgICAgICAgcGFkZGluZy1pbmxpbmU6IG1pbigyLjV2dywgMnJlbSk7XG4gICAgICAgIH1cblxuICAgICAgICAmX19jb250cm9scyB7XG4gICAgICAgICAgICBqdXN0aWZ5LXNlbGY6IG5vcm1hbDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2NvbnRhY3Qge1xuICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogc3ViZ3JpZDtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX29wZW5pbmctaG91cnMge1xuICAgICAgICAgICAgbWFyZ2luLWlubGluZTogMCBtaW4oNXZ3LCA0cmVtKTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3RlbCB7XG4gICAgICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDcwMDtcblxuICAgICAgICAgICAgLmljb24tbGluayB7XG4gICAgICAgICAgICAgICAgJl9faWNvbiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGJhc2UtdGV4dCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgW2NsYXNzKj0ndXNlci1pcy0nXSB7XG4gICAgICAgICAgICBtYXJnaW4taW5saW5lOiBtaW4oMnZ3LCAycmVtKSBhdXRvO1xuXG4gICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cy13aXRoaW4ge1xuICAgICAgICAgICAgICAgIC5oZWFkZXItYnRuIHtcbiAgICAgICAgICAgICAgICAgICAgJl9fY2FwdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBiYXNlLXRleHQpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaGVhZGVyLWJ0biB7XG4gICAgICAgICAgICAgICAgJl9fY2FwdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGxpbmspO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDcwMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmX19pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiB2YXIoLS1pY29uLW1hcmdpbik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgW2lkPSdoZWFkZXJCYXNrZXQnXSB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGxpbmspO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGRlZmF1bHQtYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cy13aXRoaW4ge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBiYXNlLXRleHQpO1xuXG4gICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBiYXNlLXRleHQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmhlYWRlci1jYXJ0IHtcbiAgICAgICAgICAgICAgICAmX19uYW1lIHtcbiAgICAgICAgICAgICAgICAgICAgZ3JpZC1hcmVhOiAxIC8gMztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWlubGluZS1lbmQ6IDEuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA3MDA7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGxpbmspO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfX2ljb24ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IHZhcigtLWljb24tbWFyZ2luKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5oZWFkZXItYnRuIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogc3ViZ3JpZDtcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIHNwYW4gMztcbiAgICAgICAgICAgICAgICBncmlkLXJvdzogMTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDQuOHJlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogMS41cmVtO1xuXG4gICAgICAgICAgICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlLFxuICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJl9fYmFkZ2Uge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgICAgICAgICAgICBncmlkLWFyZWE6IDEgLyAxO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIuOHJlbTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIuOHJlbTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnc2Vjb25kYXJ5Jyk7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc3VnZ2VzdGlvbnNfX2lubmVyLFxuICAgICAgICAmLWRyb3Bkb3duIHtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwZHZoIC0gdmFyKC0tcHJvbW8taGVpZ2h0LCAwcHgpIC0gOHJlbSAtICN7JGhlYWRlci10b3AtbmF2LWRlc2t0b3AtaGVpZ2h0fSk7XG4gICAgICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICAgICAgb3ZlcnNjcm9sbC1iZWhhdmlvci15OiBjb250YWluO1xuICAgICAgICB9XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIHN0cm9rZS13aWR0aDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkaGVhZGVyLW5hdi1icmVha3BvaW50KSB7XG4gICAgICAgIC5zdWdnZXN0aW9uc19faW5uZXIsXG4gICAgICAgICYtZHJvcGRvd24ge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogY2FsYygxMDBkdmggLSB2YXIoLS1wcm9tby1oZWlnaHQsIDBweCkgLSB2YXIoLS1zdGlja3ktc3VibWl0LWhlaWdodCwgMHB4KSAtIDhyZW0gLSAjeyRoZWFkZXItbmF2LWhlaWdodH0pO1xuICAgICAgICAgICAgb3ZlcmZsb3cteTogdmlzaWJsZTtcbiAgICAgICAgICAgIG92ZXJzY3JvbGwtYmVoYXZpb3IteTogY29udGFpbjtcbiAgICAgICAgfVxuXG4gICAgICAgICYtYnRuIHtcbiAgICAgICAgICAgICZfX2ljb24ge1xuICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aDogMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAncHJpbWFyeScpO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMS45cmVtO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxLjlyZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJsb2NrLWVuZDogMC41cmVtO1xuXG4gICAgICAgICAgICAgICAgJi0tY2FydCB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMi4xcmVtO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMi4xcmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fY2FwdGlvbiB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwLjJyZW07XG4gICAgICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ3ByaW1hcnknKTtcblxuICAgICAgICAgICAgICAgICYtLWNhcnQge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fYmFkZ2Uge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2RhcmsnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX3RvcC1uYXYge1xuICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNHJlbSBhdXRvIHJlcGVhdCg0LCA0cmVtKTtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogI3skaGVhZGVyLW5hdi1oZWlnaHR9IDQuNHJlbTtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogbm9ybWFsO1xuICAgICAgICAgICAgcGFkZGluZy1pbmxpbmU6IGNhbGModmFyKC0tYnMtZ3V0dGVyLXgpICogMC41KTtcblxuICAgICAgICAgICAgLmNhdGVnb3JpZXMtbWVudSB7XG4gICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDE7XG4gICAgICAgICAgICAgICAgZ3JpZC1yb3c6IDE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5oYW1idXJnZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ3ByaW1hcnktbGlnaHQnKTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdwcmltYXJ5LW1pZCcpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRkZWZhdWx0LWJvcmRlci1yYWRpdXM7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0cmVtO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0cmVtO1xuXG4gICAgICAgICAgICAgICAgJi1pbm5lciB7XG4gICAgICAgICAgICAgICAgICAgICYsXG4gICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSxcbiAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAncHJpbWFyeScpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICAuaGFtYnVyZ2VyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICYtaW5uZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAncHJpbWFyeScpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2NvbnRyb2xzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGNvbnRlbnRzO1xuXG4gICAgICAgICAgICAmOm5vdCg6aGFzKC5oZWFkZXJfX2Zhdm91cml0ZXMpKSxcbiAgICAgICAgICAgICY6aGFzKC5oZWFkZXJfX2Zhdm91cml0ZXNbc3R5bGUqPSdub25lJ10pIHtcbiAgICAgICAgICAgICAgICAuaGVhZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgJl9fY29tcGFyZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBncmlkLWNvbHVtbi1lbmQ6IC0zO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi1sb2dvIHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyO1xuICAgICAgICAgICAgbWFyZ2luLWlubGluZTogMS41cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1zZWFyY2gge1xuICAgICAgICAgICAgZ3JpZC1yb3c6IDI7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIC0xO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGRlZmF1bHQtYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ3ByaW1hcnknKTtcblxuICAgICAgICAgICAgJl9fYnRuOm5vdCguZml4LXNwZWNpZmljaXR5KSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNlYXJjaCB7XG4gICAgICAgICAgICAgICAgJi1kcm9wZG93biB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkZGVmYXVsdC1ib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfX2ZpZWxkLFxuICAgICAgICAgICAgICAgICZfX2J0biB7XG4gICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDMuM3JlbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmX19maWVsZCB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgJi1jb250YWluZXI6bm90KC5maXgtc3BlY2lmaWNpdHkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmX19zdWJtaXQge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdwcmltYXJ5LWxpZ2h0Jyk7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdwcmltYXJ5Jyk7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMS4ycmVtIDFmcjtcbiAgICAgICAgICAgICAgICAgICAgZ2FwOiAwLjVyZW07XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRkZWZhdWx0LWJvcmRlci1yYWRpdXMgLSAyO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAuOHJlbTtcblxuICAgICAgICAgICAgICAgICAgICAmOmhhcygud29ya2luZykge1xuICAgICAgICAgICAgICAgICAgICAgICAgLnNlYXJjaCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJl9faWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYtLXNwaW5uZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6d2hlcmUoOm5vdCguc2VhcmNoX19pY29uLS1zcGlubmVyKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICZfX2J0biB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfX2J0biB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDI7XG4gICAgICAgICAgICAgICAgICAgIGdyaWQtcm93OiAxO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfX2ljb24ge1xuICAgICAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMTtcbiAgICAgICAgICAgICAgICAgICAgZ3JpZC1yb3c6IDE7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMS4ycmVtO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMS4ycmVtO1xuXG4gICAgICAgICAgICAgICAgICAgICY6d2hlcmUoOm5vdCguc2VhcmNoX19pY29uLS1zcGlubmVyKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19jb21wYXJlLFxuICAgICAgICAmX19mYXZvdXJpdGVzLFxuICAgICAgICBbY2xhc3MqPSd1c2VyLWlzJ10sXG4gICAgICAgIFtpZD0naGVhZGVyQmFza2V0J10ge1xuICAgICAgICAgICAgZ3JpZC1yb3c6IDE7XG4gICAgICAgIH1cblxuICAgICAgICAmX19jb21wYXJlIHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uLWVuZDogLTQ7XG4gICAgICAgIH1cblxuICAgICAgICAmX19mYXZvdXJpdGVzIHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uLWVuZDogLTM7XG4gICAgICAgIH1cblxuICAgICAgICBbY2xhc3MqPSd1c2VyLWlzJ10ge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW4tZW5kOiAtMjtcbiAgICAgICAgfVxuXG4gICAgICAgIFtpZD0naGVhZGVyQmFza2V0J10ge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW4tZW5kOiAtMTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIGRlYWwgd2l0aCB0ZXh0LXdyYXBwaW5nIGxpbmUgaGVpZ2h0XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkaGVhZGVyLW5hdi1icmVha3BvaW50KSB7XG4gICAgICAgIC5uYXYtcGFnZXMsXG4gICAgICAgICZfX2NvbnRhY3Qge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19jb250YWN0IHtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5cbi5mb290ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ3ByaW1hcnktbGlnaHQnKTtcbiAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnZGFyaycpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgnbGcnKSB7XG4gICAgICAgIHBhZGRpbmctYmxvY2stc3RhcnQ6IDVyZW07XG4gICAgfVxuXG4gICAgJl9fYmxvY2tzIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgnbGcnKSB7XG4gICAgICAgICAgICBib3JkZXItYmxvY2stZW5kOiBub25lO1xuICAgICAgICAgICAgZ2FwOiAxLjVyZW0gY2xhbXAoMS41cmVtLCAzdncsIDVyZW0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYmxvY2sge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCdsZycpIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogY2FsYygyMSUgLSAwLjc1cmVtKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgnbGcnKSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJsb2NrLWVuZDogMXB4IHNvbGlkIG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgZ3JheS0yMDApO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJsb2NrLWVuZDogNHJlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYmxvY2stZW5kOiA0cmVtO1xuXG4gICAgICAgICAgICAgICAgLnByb21vIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgICAgICAgICBnYXA6IGNsYW1wKDFyZW0sIDV2dywgM3JlbSk7XG5cbiAgICAgICAgICAgICAgICAgICAgKiArICoge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgd29yZC1icmVhazogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNzAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjJyZW07XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmZvb3RlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmLXNvY2lhbHMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1pbmxpbmUtZW5kOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdhcDogY2xhbXAoMXJlbSwgNXZ3LCAzcmVtKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDIuNnJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyLjhyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLWNvbnRhY3RzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBnYXA6IGNsYW1wKDFyZW0sIDV2dywgOHJlbSk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MqPSdpY29uLSddIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2FwOiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIH4gKiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgMzAwO1xuXG4gICAgICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDUwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIHN0cm9rZS13aWR0aDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5pY29uLXNob3AtaXNwYWNlIHtcbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIHdpZHRoOiAxNi45cmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiA0LjRyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9vdGVyLWJsb2NrLWNvbnRlbnQge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCdsZycpIHtcbiAgICAgICAgICAgIHBhZGRpbmctYmxvY2stZW5kOiA1cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgKiArICoge1xuICAgICAgICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYm90dG9tIHtcbiAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2dyYXktOTAwJyk7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ2xnJykge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCdsZycpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gICAgICAgICAgICBnYXA6IDFyZW07XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAzLjZyZW07XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID4gKiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID4gcCB7XG4gICAgICAgICAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA3MDA7XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA0MDA7XG5cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDcwMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mb290ZXIgPiAuY29udGFpbmVyID4gKjpub3QoLmZvb3Rlcl9fYmxvY2tzKSAmX19saW5rIHtcbiAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2dyYXktOTAwJyk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICBAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2xpbmsnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3NlcGFyYXRvciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgnbWQnKSB7XG4gICAgICAgICAgICB+IC5jYW52YXMge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYmxvY2s6IDQuNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIH4gLmZvb3RlciB7XG4gICAgICAgICAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IDQuNXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmFzc29jaWF0aW9ucy1hbmQtbmV3c2xldHRlciB7XG4gICAgJl9fd3JhcHBlciB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgobWluKDQ1MHB4LCAxMDAlKSwgMWZyKSk7XG4gICAgfVxufVxuIiwiQGltcG9ydCAnLi4vLi4vLi4vLi4vZGVmYXVsdC9zYXNzL2FwcC9sYXlvdXQvaGVhZGVyJztcbkBpbXBvcnQgJy4uLy4uLy4uLy4uL2RlZmF1bHQvc2Fzcy9hcHAvbGF5b3V0L25hdic7XG5AaW1wb3J0ICcuLi8uLi8uLi8uLi9kZWZhdWx0L3Nhc3MvYXBwL2xheW91dC9mb290ZXInO1xuQGltcG9ydCAnaGVhZGVyJztcbkBpbXBvcnQgJ2Zvb3Rlcic7XG5cbi5hbHRlcm5hdGUtYmFja2dyb3VuZCxcbi5uYXYtdGFicy5uYXYtdGFiczo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSwgMCk7XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5cbi5idG4sXG4uYnRuOmxpbmssXG4uYnRuOnZpc2l0ZWQsXG4uc3VibWl0LWJ1dHRvbi1jb250YWluZXIgW3R5cGU9J3N1Ym1pdCddLFxuW3R5cGU9J2ZpbGUnXTo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICAgIGNvbG9yOiBtYXAuZ2V0KCRidG4sICdjb2xvcicpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJGJ0biwgJ2JnLWNvbG9yJyk7XG59XG5cbi5idG4sXG4uc3VibWl0LWJ1dHRvbi1jb250YWluZXIgW3R5cGU9J3N1Ym1pdCddLFxuW3R5cGU9J2ZpbGUnXTo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogbWFwLmdldCgkYnRuLCBib3JkZXItcmFkaXVzKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA1MDA7XG4gICAgaGVpZ2h0OiA1cmVtO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBhZGRpbmc6IDAuNGVtIDEuNmVtO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgICBjb2xvciAwLjE1cyBsaW5lYXIsXG4gICAgICAgIGJhY2tncm91bmQtY29sb3IgMC4xNXMgbGluZWFyO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgneGwnKSB7XG4gICAgICAgIGhlaWdodDogNXJlbTtcbiAgICB9XG59XG5cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gICAgLmJ0bixcbiAgICAuc3VibWl0LWJ1dHRvbi1jb250YWluZXIgW3R5cGU9J3N1Ym1pdCddIHtcbiAgICAgICAgJjpub3QoW2Rpc2FibGVkXSk6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkYnRuLCAnaG92ZXItYmctY29sb3InKTtcbiAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCRidG4sICdob3Zlci1jb2xvcicpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5bdHlwZT0nZmlsZSddIHtcbiAgICAmOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgIH1cblxuICAgIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gICAgICAgICY6bm90KFtkaXNhYmxlZF0pOmhvdmVyOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCRidG4sICdob3Zlci1iZy1jb2xvcicpO1xuICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJGJ0biwgJ2hvdmVyLWNvbG9yJyk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5idG4ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICYtLXNtIHtcbiAgICAgICAgaGVpZ2h0OiA0cmVtO1xuICAgIH1cblxuICAgICYtLW1vcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdncmF5LTEwMCcpO1xuICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnZGFyaycpO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDQwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIuMnJlbTtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbSAxLjVyZW07XG4gICAgICAgIGdhcDogMXJlbTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ21kJykge1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbSAycmVtO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICB9XG5cbiAgICAgICAgLmJ0bl9faWNvbiB7XG4gICAgICAgICAgICBzdHJva2Utd2lkdGg6IDE7XG4gICAgICAgICAgICB3aWR0aDogMWVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAxZW07XG4gICAgICAgIH1cblxuICAgICAgICAmLmxvYWRpbmcge1xuICAgICAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICAgICAgJl9faWNvbiB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgJi0tbG9hZGluZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uOiBzcGlubmVyIDAuNzVzIGluZmluaXRlIGxpbmVhcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2ljb24ge1xuICAgICAgICBAaW5jbHVkZSBzcXVhcmUoMS4yZW0pO1xuXG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgc3Ryb2tlLXdpZHRoOiAwO1xuXG4gICAgICAgICYtLWxlZnQge1xuICAgICAgICAgICAgbWFyZ2luLWlubGluZS1lbmQ6IDEuNnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLXJpZ2h0IHtcbiAgICAgICAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDEuNnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLXNtYWxsIHtcbiAgICAgICAgICAgIHdpZHRoOiAxLjRyZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDEuNHJlbTtcblxuICAgICAgICAgICAgJi5idG5fX2ljb24tLWxlZnQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAxcmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmJ0bl9faWNvbi0tcmlnaHQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDFyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19saW5rIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGxpbmspO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogaW5oZXJpdDtcblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzLFxuICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICBjb2xvcjogY3VycmVudGNvbG9yO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdHJhbnNwYXJlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICAgICAgICBiYWNrZ3JvdW5kLWNsaXA6IGJvcmRlci1ib3g7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiBtYXAuZ2V0KCRidG4sIGJvcmRlci1yYWRpdXMpO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDUwMDtcbiAgICAgICAgaGVpZ2h0OiA1cmVtO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMC40ZW0gMS42ZW07XG4gICAgICAgIHRyYW5zaXRpb246XG4gICAgICAgICAgICBjb2xvciAwLjE1cyBsaW5lYXIsXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGxpbmVhcjtcbiAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2dyYXktNjAwJyk7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2dyYXktNjAwJyk7XG5cbiAgICAgICAgJjp3aGVyZSg6bm90KFtkaXNhYmxlZF0pKTpob3ZlcixcbiAgICAgICAgJjp3aGVyZSg6bm90KFtkaXNhYmxlZF0pKTpmb2N1cyxcbiAgICAgICAgJjp3aGVyZSg6bm90KFtkaXNhYmxlZF0pKTphY3RpdmUge1xuICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2RhcmsnKTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnZGFyaycpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYWx0IHtcbiAgICAgICAgJixcbiAgICAgICAgJjpsaW5rLFxuICAgICAgICAmOnZpc2l0ZWQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkYnRuLWFsdCwgYmctY29sb3IpO1xuICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJGJ0bi1hbHQsIGNvbG9yKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KFtkaXNhYmxlZF0pOmhvdmVyLFxuICAgICAgICAmOm5vdChbZGlzYWJsZWRdKTpmb2N1cyxcbiAgICAgICAgJjpub3QoW2Rpc2FibGVkXSk6YWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJGJ0bi1hbHQsIGhvdmVyLWJnLWNvbG9yKTtcbiAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCRidG4tYWx0LCBob3Zlci1jb2xvcik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19kYXJrIHtcbiAgICAgICAgJixcbiAgICAgICAgJjpsaW5rLFxuICAgICAgICAmOnZpc2l0ZWQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkYnRuLWRhcmssIGJnLWNvbG9yKTtcbiAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCRidG4tZGFyaywgY29sb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoW2Rpc2FibGVkXSk6aG92ZXIsXG4gICAgICAgICY6bm90KFtkaXNhYmxlZF0pOmZvY3VzLFxuICAgICAgICAmOm5vdChbZGlzYWJsZWRdKTphY3RpdmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkYnRuLWRhcmssIGhvdmVyLWJnLWNvbG9yKTtcbiAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCRidG4tZGFyaywgaG92ZXItY29sb3IpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tbW9yZSxcbiAgICAmIHtcbiAgICAgICAgJltkaXNhYmxlZF0ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkYnRuLWRpc2FibGVkLCBiZy1jb2xvcik7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb250ZW50LXdpZHRoIHtcbiAgICAgICAgbWF4LXdpZHRoOiBtYXgtY29udGVudDtcblxuICAgICAgICAudGV4dC1jZW50ZXIgPiAmIHtcbiAgICAgICAgICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnByb2R1Y3QtY2FyZF9fYWRkLWxpbmstLWRpc2FibGVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkYnRuLWRpc2FibGVkLCBiZy1jb2xvcik7XG4gICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgICAgICAuYnRuX19pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiBjdXJyZW50Y29sb3I7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCd4bCcpIHtcbiAgICAgICAgLy8gaGVpZ2h0OiA0LjdyZW07XG5cbiAgICAgICAgJi0tc20ge1xuICAgICAgICAgICAgaGVpZ2h0OiA0cmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYnV0dG9uLXRleHQge1xuICAgIHdvcmQtYnJlYWs6IG5vcm1hbDtcbn1cbiIsIi5jYW52YXMge1xuICAgIHBhZGRpbmc6IDRyZW0gMDtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ21kJykge1xuICAgICAgICBwYWRkaW5nOiA1cmVtIDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgneHhsJykge1xuICAgICAgICBwYWRkaW5nOiA2cmVtIDA7XG4gICAgfVxufVxuIiwiQHVzZSAnc2FzczptYXAnO1xuXG4uY29tbW9uLWNvbnRlbnQge1xuICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICB9XG5cbiAgICBoMixcbiAgICBoMyxcbiAgICBoNCxcbiAgICBoNSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgOndoZXJlKCopIHtcbiAgICAgICAgKyA6d2hlcmUoOm5vdChsaSkpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IGNsYW1wKDEuOHJlbSwgM3Z3LCAyLjRyZW0pO1xuICAgICAgICB9XG5cbiAgICAgICAgKyA6d2hlcmUoaDIsIGgzLCBoNCwgaDUpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IGNsYW1wKDMuNXJlbSwgNXZ3LCA0LjVyZW0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm1vZGFsIHtcbiAgICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgcCxcbiAgICB1bDp3aGVyZSg6bm90KFtjbGFzc10pKSxcbiAgICBvbDp3aGVyZSg6bm90KFtjbGFzc10pKSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjYyNTtcbiAgICB9XG5cbiAgICB1bDp3aGVyZSg6bm90KFtjbGFzc10pKSxcbiAgICBvbDp3aGVyZSg6bm90KFtjbGFzc10pKSB7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm90LW5vdGF0aW9uXG4gICAgdWw6d2hlcmUoOm5vdChbY2xhc3NdKTpub3QoW3N0eWxlXSkpIHtcbiAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDRyZW07XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJ+KAoic7XG4gICAgICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0cmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNHJlbTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9sOndoZXJlKDpub3QoW2NsYXNzXSkpIHtcbiAgICAgICAgY291bnRlci1yZXNldDogbGk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuXG4gICAgICAgID4gbGkge1xuICAgICAgICAgICAgY291bnRlci1pbmNyZW1lbnQ6IGxpO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzcmVtO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIC8vIHByZXR0aWVyLWlnbm9yZVxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IGNvdW50ZXIobGkpJy4nO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6IG1heC1jb250ZW50O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgIHdvcmQtYnJlYWs6IGtlZXAtYWxsO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLy8gc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1ub3Qtbm90YXRpb25cblxuICAgIHVsIG9sLFxuICAgIG9sIHVsLFxuICAgIG9sIG9sLFxuICAgIHVsIHVsIHtcbiAgICAgICAgbWFyZ2luLWJsb2NrOiBjbGFtcCgwLjlyZW0sIDEuNXZ3LCAxLjJyZW0pO1xuICAgIH1cblxuICAgIC5mLXJpZ2h0LFxuICAgIC5mLWxlZnQge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCdtZCcpIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogNDAlO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNSU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZi1yaWdodCB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ21kJykge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mLWxlZnQge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCdtZCcpIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwaWN0dXJlLFxuICAgIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5cbi5mb290ZXItYmxvY2stY29udGVudCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjJzIGxpbmVhcjtcblxuICAgICogKyAqIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMWVtO1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgY29sb3I6IGN1cnJlbnRjb2xvcjtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJ3hsJykge1xuICAgICAgICAgICAgZm9udC1zaXplOiBtaW4oY2FsYygxLjM2NXJlbSArIDEuMzh2dyksIDIuNHJlbSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2dyYXktMjAwJyk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICBAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ3ByaW1hcnknKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bignbGcnKSB7XG4gICAgICAgIGgyOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgICAgaGVpZ2h0OiAkZm9vdGVyLWJsb2NrLWNvbGxhcHNlZC1oZWlnaHQ7XG4gICAgICAgIH1cblxuICAgICAgICAmLmlzLWNvbGxhcHNpYmxlIHtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6ICRmb290ZXItYmxvY2stY29sbGFwc2VkLWhlaWdodDtcblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cmVtO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgIC5zdmctaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdwcmltYXJ5Jyk7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5pcy1hY3RpdmUgaDIgLnN2Zy1pY29uIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCdsZycpIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDdyZW07XG5cbiAgICAgICAgJi5pcy1jb2xsYXBzaWJsZSB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICAgIC5zdmctaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcblxuICAgICAgICAgICAgLnN2Zy1pY29uIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgneGwnKSB7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5cbi5mb290ZXItYmxvY2stY29udGVudCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCdsZycpIHtcbiAgICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAzLjZyZW07XG4gICAgICAgIHBhZGRpbmctYmxvY2stZW5kOiAwO1xuICAgICAgICBtYXgtaGVpZ2h0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJsb2NrLWVuZDogMy4ycmVtO1xuICAgICAgICAgICAgYm9yZGVyLWJsb2NrLWVuZDogMXB4IHNvbGlkIG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgZ3JheS1zZW1pLXRyYW5zcCk7XG5cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDcwMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZvb3RlciB7XG4gICAgICAgICAgICAgICAgJi1zb2NpYWxzIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAgICAgICAgICAgICAgID4gbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgJixcbiAgICAgICAgICAgICAgICAgICAgICAgICsgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDRyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0cmVtO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnN2Zy1pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyLjZyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyLjZyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi1jb250YWN0cyB7XG4gICAgICAgICAgICAgICAgICAgID4gbGkgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgZ2FwOiAwIDEuMnJlbTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLnN2Zy1pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEuNnJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMS42cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24tc2hvcC1pc3BhY2Uge1xuICAgICAgICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJ2xnJykge1xuICAgICAgICAgICAgbWFyZ2luLWJsb2NrLWVuZDogMS41cmVtO1xuXG4gICAgICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjJyZW07XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc3ZnLWljb24ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNTAwO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnZ3JheS05MDAnKTtcblxuICAgICAgICBAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ3ByaW1hcnknKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vXG4vLyBQb3BvdmVyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4ucG9wb3ZlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4UG9wb3ZlcjtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWF4LXdpZHRoOiAyNzZweDtcbiAgcGFkZGluZzogMXB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBSZXNldCBnaXZlbiBuZXcgaW5zZXJ0aW9uIG1ldGhvZFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcG9wb3ZlckJhY2tncm91bmQ7XG4gIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICAgLW1vei1iYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmc7XG4gICAgICAgICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLDAsMCwuMik7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgYm94LXNoYWRvdzogMCA1cHggMTBweCByZ2JhKDAsMCwwLC4yKTtcblxuICAvLyBPdmVycmlkZXMgZm9yIHByb3BlciBpbnNlcnRpb25cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcblxuICAvLyBPZmZzZXQgdGhlIHBvcG92ZXIgdG8gYWNjb3VudCBmb3IgdGhlIHBvcG92ZXIgYXJyb3dcbiAgJi50b3AgICAgIHsgbWFyZ2luLXRvcDogLTEwcHg7IH1cbiAgJi5yaWdodCAgIHsgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cbiAgJi5ib3R0b20gIHsgbWFyZ2luLXRvcDogMTBweDsgfVxuICAmLmxlZnQgICAgeyBtYXJnaW4tbGVmdDogLTEwcHg7IH1cbn1cblxuLnBvcG92ZXItdGl0bGUge1xuICBtYXJnaW46IDA7IC8vIHJlc2V0IGhlYWRpbmcgbWFyZ2luXG4gIHBhZGRpbmc6IDhweCAxNHB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcG9wb3ZlclRpdGxlQmFja2dyb3VuZDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGRhcmtlbigkcG9wb3ZlclRpdGxlQmFja2dyb3VuZCwgNSUpO1xuICBib3JkZXItcmFkaXVzOiA1cHggNXB4IDAgMDtcblxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5wb3BvdmVyLWNvbnRlbnQge1xuICBwYWRkaW5nOiA5cHggMTRweDtcbn1cblxuLy8gQXJyb3dzXG4vL1xuLy8gLmFycm93IGlzIG91dGVyLCAuYXJyb3c6YWZ0ZXIgaXMgaW5uZXJcblxuLnBvcG92ZXIgLmFycm93LFxuLnBvcG92ZXIgLmFycm93OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbn1cbi5wb3BvdmVyIC5hcnJvdyB7XG4gIGJvcmRlci13aWR0aDogJHBvcG92ZXJBcnJvd091dGVyV2lkdGg7XG59XG4ucG9wb3ZlciAuYXJyb3c6YWZ0ZXIge1xuICBib3JkZXItd2lkdGg6ICRwb3BvdmVyQXJyb3dXaWR0aDtcbiAgY29udGVudDogXCJcIjtcbn1cblxuLnBvcG92ZXIge1xuICAmLnRvcCAuYXJyb3cge1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLSRwb3BvdmVyQXJyb3dPdXRlcldpZHRoO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXJBcnJvd091dGVyQ29sb3I7XG4gICAgYm90dG9tOiAtJHBvcG92ZXJBcnJvd091dGVyV2lkdGg7XG4gICAgJjphZnRlciB7XG4gICAgICBib3R0b206IDFweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXJBcnJvd1dpZHRoO1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyQXJyb3dDb2xvcjtcbiAgICB9XG4gIH1cbiAgJi5yaWdodCAuYXJyb3cge1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IC0kcG9wb3ZlckFycm93T3V0ZXJXaWR0aDtcbiAgICBtYXJnaW4tdG9wOiAtJHBvcG92ZXJBcnJvd091dGVyV2lkdGg7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG9wb3ZlckFycm93T3V0ZXJDb2xvcjtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGxlZnQ6IDFweDtcbiAgICAgIGJvdHRvbTogLSRwb3BvdmVyQXJyb3dXaWR0aDtcbiAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG9wb3ZlckFycm93Q29sb3I7XG4gICAgfVxuICB9XG4gICYuYm90dG9tIC5hcnJvdyB7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXJBcnJvd091dGVyV2lkdGg7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcG9wb3ZlckFycm93T3V0ZXJDb2xvcjtcbiAgICB0b3A6IC0kcG9wb3ZlckFycm93T3V0ZXJXaWR0aDtcbiAgICAmOmFmdGVyIHtcbiAgICAgIHRvcDogMXB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IC0kcG9wb3ZlckFycm93V2lkdGg7XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXJBcnJvd0NvbG9yO1xuICAgIH1cbiAgfVxuXG4gICYubGVmdCAuYXJyb3cge1xuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiAtJHBvcG92ZXJBcnJvd091dGVyV2lkdGg7XG4gICAgbWFyZ2luLXRvcDogLSRwb3BvdmVyQXJyb3dPdXRlcldpZHRoO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogJHBvcG92ZXJBcnJvd091dGVyQ29sb3I7XG4gICAgJjphZnRlciB7XG4gICAgICByaWdodDogMXB4O1xuICAgICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyQXJyb3dDb2xvcjtcbiAgICAgIGJvdHRvbTogLSRwb3BvdmVyQXJyb3dXaWR0aDtcbiAgICB9XG4gIH1cblxufVxuIiwiQHVzZSAnc2FzczptYXAnO1xuQHVzZSAnc2Fzczpjb2xvcic7XG5cbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnZ3JheS0yMDAnKTtcbiRwb3BvdmVyLXRyaWdnZXItY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2dyYXktNjAwJyk7XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIHNjc3MvZG9sbGFyLXZhcmlhYmxlLXBhdHRlcm5cbi8vIEJvb3RzdHJhcCB2YXJpYWJsZXNcbiR6aW5kZXhQb3BvdmVyOiAxMDEwO1xuJHBvcG92ZXJCYWNrZ3JvdW5kOiAjZmZmO1xuJHBvcG92ZXJUaXRsZUJhY2tncm91bmQ6IGNvbG9yLmFkanVzdCgkcG9wb3ZlckJhY2tncm91bmQsICRsaWdodG5lc3M6IC0zJSk7XG4kcG9wb3ZlckFycm93V2lkdGg6IDEwcHg7XG4kcG9wb3ZlckFycm93T3V0ZXJXaWR0aDogJHBvcG92ZXJBcnJvd1dpZHRoICsgMTtcbiRwb3BvdmVyQXJyb3dDb2xvcjogI2ZmZjtcbiRwb3BvdmVyQXJyb3dPdXRlckNvbG9yOiBjb2xvci5hZGp1c3QoJHBvcG92ZXItYm9yZGVyLWNvbG9yLCAkbGlnaHRuZXNzOiAyJSk7XG5cbkBpbXBvcnQgJy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3B1YmxpY19odG1sL3d3dy9jb21wYXNzX2V4dGVuc2lvbnMvc2hvcGlvX3RoZW1lL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9wb3BvdmVycyc7XG5cbi5wb3BvdmVyIHtcbiAgICAtLWJzLW1vZGFsLXppbmRleDogMTA1NTtcblxuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIGJvcmRlci1jb2xvcjogJHBvcG92ZXItYm9yZGVyLWNvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBmaWx0ZXI6IGRyb3Atc2hhZG93KDAgNXB4IDEwcHggcmdiKDAsIDAsIDAsIDAuMikpO1xuXG4gICAgLy8gZnJvbSBCUyB0b29sdGlwIHN0eWxlc1xuICAgIHRyYW5zaXRpb246IDAuMnMgb3BhY2l0eSBlYXNlLWluO1xuICAgIG9wYWNpdHk6IDA7XG5cbiAgICAmLmluIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICAmX19jb250YWluZXI6d2hlcmUoOm5vdCgucG9wb3Zlcl9fY29udGFpbmVyLS1wbGFpbi10ZXh0KSkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMCAwLjI1ZW07XG4gICAgfVxuXG4gICAgLm1vZGFsIH4gJiB7XG4gICAgICAgIHotaW5kZXg6IHZhcigtLWJzLW1vZGFsLXppbmRleCk7XG4gICAgfVxuXG4gICAgJi1tb2RhbCB7XG4gICAgICAgICZfX2NvbnRhaW5lciB7XG4gICAgICAgICAgICAmLS13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICBAbWVkaWEgKHBvaW50ZXI6IGZpbmUpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWdyaWQ7XG5cbiAgICAgICAgICAgICAgICAgICAgPiAqIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtcm93OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDE7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5wb3BvdmVyX190cmlnZ2VyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLnBvcG92ZXJfX2ljb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX190cmlnZ2VyIHtcbiAgICAgICAgJjp3aGVyZSg6bm90KC5wb3BvdmVyX190cmlnZ2VyLS1wbGFpbi10ZXh0KSkge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBoZWlnaHQ6IDEuNnJlbTtcbiAgICAgICAgICAgIHdpZHRoOiAxLjZyZW07XG4gICAgICAgICAgICBjb2xvcjogJHBvcG92ZXItdHJpZ2dlci1jb2xvcjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHRvcDogMC4xMjVlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIHRyaWdnZXIgaXMgc2V0IHRvICdob3ZlcicsIG5vdCAnY2xpY2snXG4gICAgICAgIC8vIC0gZG8gbm90IGRpc3BsYXkgaWNvbiBvbiBub24tdG91Y2ggZGV2aWNlc1xuICAgICAgICBAbWVkaWEgKHBvaW50ZXI6IGZpbmUpIHtcbiAgICAgICAgICAgICY6d2hlcmUoLnBvcG92ZXJfX3RyaWdnZXItLXBsYWluLXRleHQsIFtkYXRhLXRyaWdnZXI9J2hvdmVyJ10pIHtcbiAgICAgICAgICAgICAgICAucG9wb3Zlcl9faWNvbiB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi0tYWN0aXZlIHtcbiAgICAgICAgICAgIC8vIHRyaWdnZXIgaXMgYWN0aXZlIC0gYXBwbHkgY2hhbmdlIChvbmx5IGZvciAnY2xpY2snLWJhc2VkIHRyaWdnZXJzKVxuICAgICAgICAgICAgJjp3aGVyZSg6bm90KC5wb3BvdmVyX190cmlnZ2VyLS1wbGFpbi10ZXh0LCBbZGF0YS10cmlnZ2VyPSdob3ZlciddKSkge1xuICAgICAgICAgICAgICAgIC5wb3BvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgJl9faWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLS1jbG9zZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIC4uLmJ1dCB3ZSBzdGlsbCBkaXNwbGF5IHRoZSBpY29uIG9uIHRvdWNoIGRldmljZXMsIHNvIHRoZSBiZWhhdmlvdXIgc2hvdWxkIGJlIGFzIHdpdGggJ2NsaWNrJyB0cmlnZ2Vyc1xuICAgICAgICAgICAgQG1lZGlhIChwb2ludGVyOiBjb2Fyc2UpIHtcbiAgICAgICAgICAgICAgICAmOndoZXJlKC5wb3BvdmVyX190cmlnZ2VyLS1wbGFpbi10ZXh0LCBbZGF0YS10cmlnZ2VyPSdob3ZlciddKSB7XG4gICAgICAgICAgICAgICAgICAgIC5wb3BvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICZfX2ljb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLS1jbG9zZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2ljb24ge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgJi0tY2xvc2Uge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICAuYXJyb3cge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZpbHRlci1wb3BvdmVyLW1vZGlmaWVyIHtcbiAgICAmLnBvcG92ZXIge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgICAgICAgICYudG9wIC5hcnJvdyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIucG9wb3ZlciB7XG4gICAgJl9fdHJpZ2dlcjp3aGVyZSg6bm90KC5wb3BvdmVyX190cmlnZ2VyLS1wbGFpbi10ZXh0KSkge1xuICAgICAgICBoZWlnaHQ6IDEuOHJlbTtcbiAgICAgICAgd2lkdGg6IDEuOHJlbTtcbiAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgcHJpbWFyeSk7XG4gICAgfVxuXG4gICAgJl9faWNvbiB7XG4gICAgICAgIHN0cm9rZS13aWR0aDogMC41cHg7XG4gICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdncmF5LTcwMCcpO1xuICAgIH1cbn1cbiIsIkB1c2UgJ3Nhc3M6bWFwJztcblxuLmljb24tbGluayB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAmX19pY29uIHtcbiAgICAgICAgQGluY2x1ZGUgc3F1YXJlKDEuMjhlbSk7XG5cbiAgICAgICAgZmlsbDogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAncHJpbWFyeScpO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC4yZW07XG4gICAgICAgIHN0cm9rZTogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAncHJpbWFyeScpO1xuICAgIH1cbn1cbiIsIkB1c2UgJ3Nhc3M6bWFwJztcbkB1c2UgJ3Nhc3M6Y29sb3InO1xuXG4ucm93ICsgKiB7XG4gICAgbWFyZ2luLXRvcDogMS40cmVtO1xufVxuXG4uZm9ybS1pbnB1dCB7XG4gICAgJiArICY6d2hlcmUoOm5vdCguY29sKSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gICAgfVxuXG4gICAgLnJvdy0tZ3JpZCAmIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG5cbiAgICAmLS1tYXJnaW5lZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgICB9XG5cbiAgICAmLS1zbSB7XG4gICAgICAgIHdpZHRoOiAxMHJlbTtcbiAgICB9XG5cbiAgICAmLS1lcnJvciB7XG4gICAgICAgIC5mb3JtLWZpZWxkLWNvbnRhaW5lciB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2RhbmdlcicpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgW2NsYXNzKj0nLS1pbmxpbmUnXSArICoge1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICB9XG5cbiAgICAmOmhhcyguZXJyb3JzKSB7XG4gICAgICAgIC5mb3JtLWZpZWxkLWNvbnRhaW5lciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdkYW5nZXItYmcnKTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnZGFuZ2VyJykgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgLmZvcm0tZmllbGQge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2Rhbmdlci1iZycpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmVycm9ycyB7XG4gICAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogMC4ycmVtO1xuICAgICAgICBtYXJnaW4taW5saW5lOiAxcHg7XG4gICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdkYW5nZXInKTtcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgfVxuXG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vdC1ub3RhdGlvblxuICAgICY6d2hlcmUoOm5vdChbcmVhZG9ubHldKTpub3QoOmhhcyhbZGlzYWJsZWRdKSkpIHtcbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cy13aXRoaW4ge1xuICAgICAgICAgICAgLmZvcm0taW5wdXRfX2xhYmVsIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAncHJpbWFyeScpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZm9ybS1maWVsZC1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAncHJpbWFyeScpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjp3aGVyZSg6aGFzKFtkaXNhYmxlZF0pKSB7XG4gICAgICAgIC5mb3JtLWlucHV0X19sYWJlbCB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19sYWJlbCB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICBtYXJnaW4tYmxvY2stZW5kOiAwLjJlbTtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXMgbGluZWFyO1xuXG4gICAgICAgICY6d2hlcmUoOm5vdCgudGV4dC1ib2xkKSkge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLWlubGluZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcblxuICAgICAgICAgICAgKyAqIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiAwLjVyZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJsb2NrOiAwIDAuMmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjp3aGVyZSg6aXMobGVnZW5kKSkge1xuICAgICAgICAgICAgbWFyZ2luLWJsb2NrLWVuZDogMC41cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5jaGVja2JveDp3aGVyZSg6aGFzKDpub3QoW3JlYWRvbmx5XSksIDpub3QoW2Rpc2FibGVkXSkpKTpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAncHJpbWFyeScpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbXVsdGkge1xuICAgICAgICB1bCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgKyBsaSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogMXJlbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLWlubGluZSxcbiAgICAgICAgLm11bHRpLS1pbmxpbmUgJiB7XG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICAgICAgZ2FwOiAxcmVtIDIuNXJlbTtcblxuICAgICAgICAgICAgICAgIGxpLFxuICAgICAgICAgICAgICAgIGxpICsgbGkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmhpbnQge1xuICAgICAgICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAwLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19lcnJvciB7XG4gICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdkYXJrJyk7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIG1hcmdpbi10b3A6IDAuNGVtO1xuXG4gICAgICAgICYudmlzaWJsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2hlbHAge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgJl9faGVscCB7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgY3Vyc29yOiBhdXRvO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICY6aG92ZXIgLmZvcm0taW5wdXRfX2hlbHAtYm94IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi1pY29uIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcXVhcmUoMS40cmVtKTtcblxuICAgICAgICAgICAgICAgIHN0cm9rZTogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnaW5mbycpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9faGVscC1ib3gge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnaW5mby1iZycpO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnaW5mbycpO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2luZm8tdGV4dCcpO1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEuNnJlbSAxcmVtO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAtMnJlbTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0xMDAlKTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB3aWR0aDogMzByZW07XG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcXVhcmUoMnJlbSk7XG5cbiAgICAgICAgICAgICAgICBib3R0b206IC0xcmVtO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2luZm8tYmcnKTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdpbmZvJyk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSByb3RhdGUoMTM1ZGVnKSBza2V3KC0xMGRlZywgLTEwZGVnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5oaW50LFxuICAgICsgLmhpbnQsXG4gICAgJl9fbXVsdGkgLmhpbnQge1xuICAgICAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IDAuMnJlbTtcbiAgICAgICAgbWFyZ2luLWlubGluZTogMXB4O1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgZ3JheS02MDApO1xuICAgIH1cbn1cblxuLmZvcm0tY2hlY2sgKyAuZm9ybS1pbnB1dF9fZXJyb3Ige1xuICAgIG1hcmdpbjogMCAwIDAuNGVtO1xufVxuXG4uaW5wdXQtYXBwZW5kIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcblxuICAgID4gKjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGZsZXg6IDE7XG5cbiAgICAgICAgW3R5cGU9J3RleHQnXSB7XG4gICAgICAgICAgICBwYWRkaW5nLWlubGluZTogMXJlbTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJGlucHV0LCAnYmctY29sb3InKTtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIG1hcC5nZXQoJGlucHV0LCAnYm9yZGVyLWNvbG9yJyk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiBtYXAuZ2V0KCRpbnB1dCwgJ2JvcmRlci1yYWRpdXMnKTtcbiAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkaW5wdXQsICdjb2xvcicpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGxpbmVhcjtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6IGNvbG9yLmFkanVzdChtYXAuZ2V0KCRpbnB1dCwgJ2NvbG9yJyksICRhbHBoYTogLTAuNSk7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpub3QoW3JlYWRvbmx5XSkge1xuICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAncHJpbWFyeScpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkB1c2UgJ3Nhc3M6bWFwJztcbkB1c2UgJ3Nhc3M6Y29sb3InO1xuXG4vLyBBYnN0cmFjdHNcbkBpbXBvcnQgJy4uLy4uL2FwcC9hYnN0cmFjdHMvbWl4aW5zJztcblxuLmZvcm0taW5wdXQ6aGFzKDp3aGVyZShpbnB1dDpub3QoW3R5cGU9J2NoZWNrYm94J10sIFt0eXBlPSdyYWRpbyddKSwgdGV4dGFyZWEsIHNlbGVjdCkpIHtcbiAgICB6LWluZGV4OiBpbml0aWFsO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tdG9wOiAycmVtO1xuXG4gICAgdGV4dGFyZWEge1xuICAgICAgICBAaW5jbHVkZSBjdXN0b20tc2Nyb2xsYmFyLWNvbnRhaW5lcjtcbiAgICB9XG5cbiAgICAuZm9ybS1maWVsZC1jb250YWluZXIge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAkZGVmYXVsdC1ib3JkZXItcmFkaXVzO1xuICAgIH1cblxuICAgIC5mb3JtLWZpZWxkID4gKiB7XG4gICAgICAgIHBhZGRpbmctaW5saW5lOiAxLjRyZW07XG5cbiAgICAgICAgJjp3aGVyZSg6bm90KC5zZWFyY2gtcXVlcnkpKTpub3QoW2Rpc2FibGVkXSkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjpoYXMoLmVycm9ycykge1xuICAgICAgICAtLWlucHV0LWJnOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdkYW5nZXInKTtcblxuICAgICAgICAuZm9ybS1maWVsZC1jb250YWluZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdkYW5nZXInKSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpmb2N1cy13aXRoaW4ge1xuICAgICAgICAgICAgLmZvcm0tZmllbGQtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgcHJpbWFyeS1kYXJrKSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjpoYXMoW2Rpc2FibGVkXSkge1xuICAgICAgICAuZm9ybS1maWVsZC1jb250YWluZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBncmF5LTEwMCk7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgZ3JheS0yMDApICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAuZm9ybS1pbnB1dF9fbGFiZWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgc3Itb25seTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIDp3aGVyZSguZm9ybS1pbnB1dF9fbGFiZWwpIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBsaW5lLWhlaWdodDogMnJlbTtcbiAgICAgICAgcGFkZGluZy1pbmxpbmU6IDEuNHJlbSAxcmVtO1xuICAgICAgICBwYWRkaW5nLWJsb2NrOiAxLjVyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBncmF5LTcwMCk7XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0cmFuc2l0aW9uOlxuICAgICAgICAgICAgdHJhbnNmb3JtIDAuMnMgZWFzZSxcbiAgICAgICAgICAgIGZvbnQtc2l6ZSAwLjJzIGVhc2UsXG4gICAgICAgICAgICBiYWNrZ3JvdW5kIDAuMnMgZWFzZTtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNsaXA6IGNvbnRlbnQtYm94O1xuICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDMwMDtcbiAgICAgICAgbWFyZ2luLWJsb2NrLWVuZDogMDtcblxuICAgICAgICAmOjpiZWZvcmUsXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCAwLjJzIGVhc2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhhcyguZm9ybS1maWVsZC0tc20pIHtcbiAgICAgICAgLmZvcm0taW5wdXRfX2xhYmVsIHtcbiAgICAgICAgICAgIHBhZGRpbmctYmxvY2s6IDAuOXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgICAgLmZvcm0tZmllbGQtY29udGFpbmVyOndoZXJlKDpub3QoLnNlYXJjaF9fZmllbGQtY29udGFpbmVyKSkge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIHByaW1hcnktZGFyayk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggbWFwLmdldCgkdGhlbWUtY29sb3JzLCBwcmltYXJ5LWRhcmspO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZvcm0taW5wdXRfX2xhYmVsIHtcbiAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIHByaW1hcnktZGFyayk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgJjpub3QoOndoZXJlKDpmb2N1cy13aXRoaW4sIFtkaXNhYmxlZF0pKSB7XG4gICAgICAgICAgICAmOndoZXJlKDpub3QoOmhhcyguZXJyb3JzKSkpIHtcbiAgICAgICAgICAgICAgICAuZm9ybS1maWVsZC1jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmZvcm0taW5wdXRfX2xhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhhcyguZXJyb3JzKSB7XG4gICAgICAgICAgICAgICAgLmZvcm0tZmllbGQtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGRhbmdlcik7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmZvcm0taW5wdXRfX2xhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgZGFuZ2VyKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBmb3JtLWlucHV0LWxhYmVsLXNlbGVjdG9ycyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIuM3JlbSkgdHJhbnNsYXRlWCgtMC40cmVtKTtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCNmZmYwIGNhbGMoNTAlIC0gM3B4KSwgI2ZmZiBjYWxjKDUwJSAtIDAuM3JlbSkpO1xuICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAqIDEuMjUpO1xuXG4gICAgICAgICY6OmJlZm9yZSxcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgd2lkdGg6IDAuNHJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gZml4IEZveGVudHJ5IGljb24gb24gdG9wIG9mIGhlYWRlciAvIGZsb2F0aW5nIGJhc2tldCBzdW1tYXJ5XG4uZm94ZW50cnktaW5wdXQtaWNvbi5mb3hlbnRyeS1pbnB1dC1pY29uIHtcbiAgICB6LWluZGV4OiAyO1xufVxuIiwiQHVzZSAnc2FzczptYXAnO1xuQHVzZSAnc2Fzczpjb2xvcic7XG5cbi5mb3JtLWZpZWxkLWNvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkaW5wdXQsICdiZy1jb2xvcicpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIG1hcC5nZXQoJGlucHV0LCAnYm9yZGVyLWNvbG9yJyk7XG4gICAgYm9yZGVyLXJhZGl1czogbWFwLmdldCgkaW5wdXQsICdib3JkZXItcmFkaXVzJyk7XG4gICAgcGFkZGluZzogMCAxcmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgbGluZWFyO1xuICAgIG1hcmdpbi1ibG9jay1zdGFydDogMDtcblxuICAgICY6aGFzKFtkaXNhYmxlZF0pIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBsaWdodCk7XG4gICAgfVxuXG4gICAgQG1lZGlhIChob3ZlcjogaG92ZXIpIGFuZCAobWluLXdpZHRoOiAje21hcC5nZXQoJGdyaWQtYnJlYWtwb2ludHMsIG1kKX0pIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgfVxuXG4gICAgQG1lZGlhIChob3Zlcjogbm9uZSksIChwb2ludGVyOiBjb2Fyc2UpIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgfVxuXG4gICAgJi0taWNvbi1hZnRlciB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDRyZW07XG4gICAgfVxuXG4gICAgJi0taWNvbi1iZWZvcmUge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDRyZW07XG4gICAgfVxuXG4gICAgJi0td2l0aC1wcmVmaXgge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIuNXJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgICAgICYtLWljb24tYWZ0ZXIge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLWljb24tYmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNnJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjRyZW07XG5cbiAgICAgICAgJi0td2l0aC1wcmVmaXgge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzcmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZm9ybS1maWVsZCB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCRpbnB1dCwgJ2JnLWNvbG9yJyk7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgaGVpZ2h0OiAzLjhyZW07XG4gICAganVzdGlmeS1zZWxmOiBmbGV4LXN0YXJ0O1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgICY6aGFzKFtkaXNhYmxlZF0pIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAmX19uYXJyb3cge1xuICAgICAgICBtYXgtd2lkdGg6IDUwMHB4O1xuICAgIH1cblxuICAgICYtLXRleHRhcmVhIHtcbiAgICAgICAgaGVpZ2h0OiAxMHJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICAgICAgcGFkZGluZzogMXJlbSAwO1xuXG4gICAgICAgICY6aGFzKFtzdHlsZSo9J2hlaWdodCddKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS10ZXh0YXJlYS1sYXJnZSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDIwcmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgICBwYWRkaW5nOiAxcmVtIDA7XG5cbiAgICAgICAgJjpoYXMoW3N0eWxlKj0naGVpZ2h0J10pIHtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2N1cnJlbmN5IHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC42cmVtO1xuICAgIH1cblxuICAgICZfX3ByZWZpeCxcbiAgICAmX19zdWZmaXgge1xuICAgICAgICBjb2xvcjogY3VycmVudGNvbG9yO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBvdmVyZmxvdy13cmFwOiBub3JtYWw7XG4gICAgfVxuXG4gICAgJl9fcHJlZml4IHtcbiAgICAgICAgbGVmdDogMXJlbTtcbiAgICB9XG5cbiAgICAmX19zdWZmaXgge1xuICAgICAgICByaWdodDogMXJlbTtcbiAgICB9XG5cbiAgICAmX19pbnB1dCxcbiAgICAqOndoZXJlKFt0eXBlPSd0ZXh0J10sIFt0eXBlPSdwYXNzd29yZCddLCBbdHlwZT0nbnVtYmVyJ10sIFt0eXBlPSdlbWFpbCddLCBbdHlwZT0ndGVsJ10sIHRleHRhcmVhLCBzZWxlY3QpIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgY29sb3I6IG1hcC5nZXQoJGlucHV0LCAnY29sb3InKTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBtaW4td2lkdGg6IDFyZW07XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMjtcblxuICAgICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgICBjb2xvcjogY29sb3IuYWRqdXN0KG1hcC5nZXQoJGlucHV0LCAnY29sb3InKSwgJGFscGhhOiAtMC41KTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cblxuICAgICAgICAmW25hbWVdOi13ZWJraXQtYXV0b2ZpbGwge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkaW5wdXQsICdiZy1jb2xvcicpICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAmW25hbWVdOi13ZWJraXQtYXV0b2ZpbGwsXG4gICAgICAgICZbbmFtZV06LXdlYmtpdC1hdXRvZmlsbDpob3ZlcixcbiAgICAgICAgJltuYW1lXTotd2Via2l0LWF1dG9maWxsOmZvY3VzLFxuICAgICAgICAmW25hbWVdOi13ZWJraXQtYXV0b2ZpbGw6YWN0aXZlIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1uby12ZW5kb3ItcHJlZml4XG4gICAgICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAwIDMwcHggbWFwLmdldCgkaW5wdXQsICdiZy1jb2xvcicpIGluc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAmW3JlYWRvbmx5XSB7XG4gICAgICAgICAgICBjdXJzb3I6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAmW2Rpc2FibGVkXSB7XG4gICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBncmF5LTQwMCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzZWxlY3Qge1xuICAgICAgICAvLyBQcmV2ZW50IHRleHQgYmVpbmcgcHVzaGVkIGFnYWluc3QgZHJvcGRvd24gJ2ljb24nIHdoZW4gbWF4LXdpZHRoIGlzIHVzZWRcbiAgICAgICAgLy8gVGhpcyBkb2VzIG5vdCBhZmZlY3Qgd2Via2l0IChTYWZhcmkpIHJlc3R5bGluZ1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICAgIH1cblxuICAgICZfX2lucHV0IHtcbiAgICAgICAgJi0taW5saW5lIHtcbiAgICAgICAgICAgIGZsZXg6IHVuc2V0O1xuICAgICAgICAgICAgd2lkdGg6IDEuN3JlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3NlcGFyYXRvciB7XG4gICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdzZWNvbmRhcnknKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB3aWR0aDogMC43cmVtO1xuICAgIH1cblxuICAgICZfX2ljb24ge1xuICAgICAgICBAaW5jbHVkZSBzcXVhcmUoMi40cmVtKTtcblxuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgei1pbmRleDogMTA7XG5cbiAgICAgICAgJi0tdG9wIHtcbiAgICAgICAgICAgIHRvcDogMS44cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi52aXNpYmxlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tc20ge1xuICAgICAgICAgICAgQGluY2x1ZGUgc3F1YXJlKDEuOHJlbSk7XG4gICAgICAgIH1cblxuICAgICAgICAmLS1hZnRlciB7XG4gICAgICAgICAgICByaWdodDogMXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLWJlZm9yZSB7XG4gICAgICAgICAgICBsZWZ0OiAxcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgICAgICAgICAgJi0tYWZ0ZXIge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAycmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLS1iZWZvcmUge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDJyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBIaWRlIG51bWJlciBhcnJvd3NcbiAgICAvLyBpbnB1dDo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbixcbiAgICAvLyBpbnB1dDo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XG4gICAgLy8gICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1uby12ZW5kb3ItcHJlZml4XG4gICAgLy8gICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAvLyAgICAgbWFyZ2luOiAwO1xuICAgIC8vIH1cbiAgICAvLyAvKiBGaXJlZm94ICovXG4gICAgLy8gaW5wdXRbdHlwZT0nbnVtYmVyJ10ge1xuICAgIC8vICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeFxuICAgIC8vICAgICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgICAvLyB9XG5cbiAgICAmX19maWxlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkaW5wdXQsICdiZy1jb2xvcicpO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBtYXAuZ2V0KCRpbnB1dCwgJ2JvcmRlci1jb2xvcicpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiBtYXAuZ2V0KCRpbnB1dCwgJ2JvcmRlci1yYWRpdXMnKTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgbGluZWFyO1xuICAgIH1cblxuICAgIC5wYXNzd29yZC1zaG93IHtcbiAgICAgICAgJi1jb250YWluZXIge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWdyaWQ7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciBhdXRvO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgID4gKiB7XG4gICAgICAgICAgICAgICAgZ3JpZC1yb3c6IDE7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBbdHlwZT0ndGV4dCddICsgLnBhc3N3b3JkLXNob3ctdHJpZ2dlcjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkcGFzc3dvcmQtc2hvdy1hY3RpdmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLXRyaWdnZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6ICRwYXNzd29yZC1zaG93O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHJpZ2h0IDAuOHJlbTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEuNnJlbSBhdXRvO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICB3aWR0aDogNHJlbTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjY7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDRyZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICBoZWlnaHQ6IDQuNXJlbTtcblxuICAgICAgICAmLS1zbSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDMuOHJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLXRleHRhcmVhIHtcbiAgICAgICAgICAgIGhlaWdodDogMTEuNnJlbTtcblxuICAgICAgICAgICAgJjpoYXMoW3N0eWxlKj0naGVpZ2h0J10pIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19wcmVmaXgge1xuICAgICAgICAgICAgbGVmdDogMS4zcmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5bY2xhc3MqPSdmb3JtLWZpZWxkJ11bdHlwZV0ge1xuICAgIG1hcmdpbi10b3A6IDA7XG59XG5cbltpZD0ndHJvbG9sbyddIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4vLyBhdXRvZ3Jvd2luZyB0ZXh0YXJlYVxuLnRleHRhcmVhLWF1dG9ncm93IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICAvLyBzcGFjZSBwcmV2ZW50cyBzdHJhbmdlIGp1bXBpbmcgYmVoYXZpb3JcbiAgICAgICAgY29udGVudDogYXR0cihkYXRhLXJlcGxpY2F0ZWRWYWx1ZSkgJyAnO1xuXG4gICAgICAgIC8vIGRlZmF1bHQgdGV4dGFyZWEgc3R5bGluZ1xuICAgICAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG5cbiAgICAgICAgLy8gaGlkZSB0aGUgJ292ZXJsYXknXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcblxuICAgICAgICAvLyBtYXRjaCB0aGUgc3R5bGluZyBvZiB0aGUgdGV4dGFyZWFcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICAgIHBhZGRpbmc6IDNweDtcbiAgICAgICAgZm9udDogaW5oZXJpdDtcbiAgICAgICAgbWF4LXdpZHRoOiBjYWxjKCgxMDAlIC0gM3B4ICogMikgKyAycHgpO1xuICAgICAgICB3aWR0aDogODUlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIH1cblxuICAgID4gdGV4dGFyZWEge1xuICAgICAgICAvLyBwcmV2ZW50IHJlc2l6ZSBhcyBpdCBydWlucyB0aGUgc2l6aW5nXG4gICAgICAgIHJlc2l6ZTogbm9uZTtcblxuICAgICAgICAvLyBGaXJlZm94IHNob3dzIHNjcm9sbGJhciBvbiBncm93dGggLSBwcmV2ZW50IHRoYXRcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAvLyBzdHlsaW5nXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgZ3JheS0yMDApO1xuICAgICAgICBwYWRkaW5nOiAzcHg7XG4gICAgfVxuXG4gICAgPiB0ZXh0YXJlYSxcbiAgICAmOjphZnRlciB7XG4gICAgICAgIC8vIFBsYWNlIG9uIHRvcCBvZiBlYWNoIG90aGVyXG4gICAgICAgIGdyaWQtYXJlYTogMSAvIDEgLyAyIC8gMjtcbiAgICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzY3NzL2RvbGxhci12YXJpYWJsZS1lbXB0eS1saW5lLWJlZm9yZVxuLy8gc3R5bGVsaW50LWRpc2FibGUgc2Nzcy9kb3VibGUtc2xhc2gtY29tbWVudC1lbXB0eS1saW5lLWJlZm9yZVxuQHVzZSAnc2FzczptYXAnO1xuXG4vLyBib290c3RyYXAgdmFyaWFibGVzXG4vLyBPcHRpb25zXG4kZW5hYmxlLWRhcmstbW9kZTogZmFsc2U7XG4kZW5hYmxlLXJvdW5kZWQ6IGZhbHNlO1xuJGVuYWJsZS10cmFuc2l0aW9uczogZmFsc2U7XG4vLyAkZW5hYmxlLWdyaWQtY2xhc3NlczogZmFsc2U7XG4vLyAkZW5hYmxlLWNvbnRhaW5lci1jbGFzc2VzOiBmYWxzZTtcbiRlbmFibGUtYnV0dG9uLXBvaW50ZXJzOiBmYWxzZTtcbi8vICRlbmFibGUtcmZzOiBmYWxzZTtcbi8vICRlbmFibGUtdmFsaWRhdGlvbi1pY29uczogZmFsc2U7XG4vLyAkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXM6IGZhbHNlO1xuJGVuYWJsZS1zbW9vdGgtc2Nyb2xsOiB0cnVlO1xuXG4vLyBsYXlvdXRcbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gICAgeHM6IDAsXG4gICAgbXM6IDM2MHB4LFxuICAgIHM6IDQ4MHB4LFxuICAgIHNtOiA1NzZweCxcbiAgICBtZDogNzY4cHgsXG4gICAgbGc6IDk5MnB4LFxuICAgIHhsOiAxMjAwcHgsXG4gICAgeHhsOiAxMzY2cHhcbikgIWRlZmF1bHQ7XG5cbiRjb250YWluZXItbWF4LXdpZHRoczogKFxuICAgIGxnOiA5NjBweCxcbiAgICB4bDogMTE0MHB4LFxuICAgIHh4bDogMTMwMHB4XG4pICFkZWZhdWx0O1xuXG4vLyBzcGFjaW5nXG4kY29udGFpbmVyLXBhZGRpbmcteDogM3JlbSAhZGVmYXVsdDtcbiRjYW52YXMtcGFkZGluZy15OiA0cmVtICFkZWZhdWx0O1xuJGNhbnZhcy1wYWRkaW5nLXktbWQ6IDZyZW0gIWRlZmF1bHQ7XG4kY2FudmFzLXBhZGRpbmcteS14eGw6IDdyZW0gIWRlZmF1bHQ7XG5cbi8vIGZvbnRcbiRmb250LXNpemUtcm9vdDogNjIuNSUgIWRlZmF1bHQ7XG4kZm9udC1zaXplLWJhc2U6IDEuNHJlbSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1iYXNlOiAxLjYgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktYmFzZTogJ0JlIFZpZXRuYW0gUHJvJywgJ0JlIFZpZXRuYW0gUHJvIEZhbGxiYWNrJywgJ0FyaWFsJywgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRmb250LXNpemUtc206IDEuMnJlbSAhZGVmYXVsdDtcbiRmb250LXNpemUtbGc6ICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kZm9udC1zaXplLWxhcmdlcjogJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0OyAvLyAkaDQtZm9udC1zaXplO1xuJGZvbnQtc2l6ZS1sYXJnZXN0OiAkZm9udC1zaXplLWJhc2UgKiAyICFkZWZhdWx0OyAvLyAkaDItZm9udC1zaXplO1xuXG4kbGVnZW5kLWZvbnQtc2l6ZTogMnJlbSAhZGVmYXVsdDtcbiRsZWdlbmQtbWFyZ2luLWJvdHRvbTogMnJlbSAhZGVmYXVsdDtcbiRsZWdlbmQtZm9udC13ZWlnaHQ6IDcwMCAhZGVmYXVsdDtcblxuLy8gdHlwb1xuJGhlYWRpbmdzLW1hcmdpbi1ib3R0b206IDFlbSAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogNzAwICFkZWZhdWx0O1xuXG4vLyBjb2xvcnNcbiRwcmltYXJ5OiAjOGVkNjA5ICFkZWZhdWx0O1xuJHByaW1hcnktZGFyazogIzgxYzcwMCAhZGVmYXVsdDtcbiRwcmltYXJ5LWxpZ2h0OiAjZWVmYmQ3ICFkZWZhdWx0O1xuJHNlY29uZGFyeTogIzAwNmFhZiAhZGVmYXVsdDtcbiRsaWdodDogI2ZmZiAhZGVmYXVsdDtcbiRkYXJrOiAjMDAwICFkZWZhdWx0O1xuXG4kdGhlbWUtY29sb3JzOiAoXG4gICAgcHJpbWFyeTogJHByaW1hcnksXG4gICAgcHJpbWFyeS1kYXJrOiAkcHJpbWFyeS1kYXJrLFxuICAgIHByaW1hcnktbGlnaHQ6ICRwcmltYXJ5LWxpZ2h0LFxuICAgIHNlY29uZGFyeTogJHNlY29uZGFyeSxcbiAgICBsaWdodDogJGxpZ2h0LFxuICAgIGRhcms6ICRkYXJrLFxuICAgIGJhc2UtYmc6ICRsaWdodCxcbiAgICBiYXNlLXRleHQ6ICRkYXJrLFxuICAgIGxpbms6ICRzZWNvbmRhcnksXG4gICAgc3VjY2VzczogIzhlZDYwOSxcbiAgICBzdWNjZXNzLWJnOiAjZThmMWQ5LFxuICAgIHN1Y2Nlc3MtdGV4dDogJGRhcmssXG4gICAgaW5mbzogIzljYjVlMSxcbiAgICBpbmZvLWJnOiAjZGRlZGYzLFxuICAgIGluZm8tdGV4dDogJGRhcmssXG4gICAgd2FybmluZzogIzIzOWJjOCxcbiAgICB3YXJuaW5nLWJnOiAjOWNiNWUxLFxuICAgIHdhcm5pbmctdGV4dDogJGRhcmssXG4gICAgZGFuZ2VyOiAjZTI2OTY5LFxuICAgIGRhbmdlci1iZzogI2Y2ZGZkZixcbiAgICBkYW5nZXItdGV4dDogJGRhcmssXG4gICAgZGFuZ2VyLWRhcmtlcjogI2RmMTYwNyxcbiAgICBzdGFyLXJhdGluZy1iZzogI2ZiMCxcbiAgICBpbi1zdG9jazogIzUxODMwMixcbiAgICBncmF5LTEwMDogI2YzZjNmMyxcbiAgICBncmF5LTIwMDogI2RlZGVkZSxcbiAgICBncmF5LTQwMDogI2IxYjFiMSxcbiAgICBncmF5LTYwMDogIzZlNmU2ZSxcbiAgICBncmF5LTkwMDogIzI2MjYyNlxuKSAhZGVmYXVsdDtcbi8vIGJvb3RzdHJhcCB2YXJpYWJsZXMgZW5kXG5cbi8vIHNob3BpbyB2YXJpYWJsZXNcbiRmb250LXBhdGg6ICcvZm9udCcgIWRlZmF1bHQ7XG4kcHJvZHVjdC1hdmFpbGFiaWxpdHk6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgZ3JheS02MDApO1xuXG4kaDEtZm9udC1zaXplOiBjbGFtcCgzcmVtLCA2dncsIDRyZW0pICFkZWZhdWx0OyAvLyAkZm9udC1zaXplLWJhc2UgKiAyLjU7XG4kaDItZm9udC1zaXplOiAyLjRyZW0gIWRlZmF1bHQ7IC8vICRmb250LXNpemUtYmFzZSAqIDI7XG4kaDMtZm9udC1zaXplOiAycmVtICFkZWZhdWx0OyAvLyAkZm9udC1zaXplLWJhc2UgKiAxLjc1O1xuJGg0LWZvbnQtc2l6ZTogMS44cmVtICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogMS42cmVtICFkZWZhdWx0O1xuJGg2LWZvbnQtc2l6ZTogMS42cmVtICFkZWZhdWx0O1xuXG4kYnRuOiAoXG4gICAgYmctY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ3ByaW1hcnknKSxcbiAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnYmFzZS10ZXh0JyksXG4gICAgaG92ZXItYmctY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ3ByaW1hcnktZGFyaycpLFxuICAgIGhvdmVyLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdiYXNlLXRleHQnKSxcbiAgICBib3JkZXItcmFkaXVzOiAwXG4pICFkZWZhdWx0O1xuXG4kYnRuLWRpc2FibGVkOiAoXG4gICAgYmctY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgZ3JheS0yMDApLFxuICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdiYXNlLXRleHQnKSxcbiAgICBob3Zlci1iZy1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBncmF5LTIwMCksXG4gICAgaG92ZXItY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2Jhc2UtdGV4dCcpXG4pICFkZWZhdWx0O1xuXG4kaW5wdXQ6IChcbiAgICBiZy1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnZ3JheS0xMDAnKSxcbiAgICBib3JkZXItY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2dyYXktMjAwJyksXG4gICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2RhcmsnKSxcbiAgICBib3JkZXItcmFkaXVzOiAwXG4pICFkZWZhdWx0O1xuXG4kY2hlY2tib3gtY2hlY2s6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sLFxcXG4gICAgPHN2ZyB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXFxcbiAgICB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIlxcXG4gICAgZmlsbD1cIm5vbmVcIlxcXG4gICAgc3Ryb2tlPVwiI3tyZ2JhKCRsaWdodCwgMSl9XCJcXFxuICAgIHN0cm9rZS13aWR0aD1cIjNcIj5cXFxuICAgIDxwb2x5bGluZSBwb2ludHM9XCIyMCA2IDkgMTcgNCAxMlwiPjwvcG9seWxpbmU+XFxcbiAgICA8L3N2Zz4nKTtcblxuJHBhc3N3b3JkLXNob3c6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sLFxcXG4gICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiPlxcXG4gICAgPHBhdGggZD1cIk0xIDEyczQtOCAxMS04IDExIDggMTEgOC00IDgtMTEgOC0xMS04LTExLTh6XCI+PC9wYXRoPjxjaXJjbGUgY3g9XCIxMlwiIGN5PVwiMTJcIiByPVwiM1wiPjwvY2lyY2xlPlxcXG4gICAgPC9zdmc+Jyk7XG5cbiRwYXNzd29yZC1zaG93LWFjdGl2ZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWwsXFxcbiAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCI+XFxcbiAgICA8cGF0aCBkPVwiTTE3Ljk0IDE3Ljk0QTEwLjA3IDEwLjA3IDAgMCAxIDEyIDIwYy03IDAtMTEtOC0xMS04YTE4LjQ1IDE4LjQ1IDAgMCAxIDUuMDYtNS45NE05LjkgNC4yNEE5LjEyIDkuMTIgMCAwIDEgMTIgNGM3IDAgMTEgOCAxMSA4YTE4LjUgMTguNSAwIDAgMS0yLjE2IDMuMTltLTYuNzItMS4wN2EzIDMgMCAxIDEtNC4yNC00LjI0XCI+PC9wYXRoPjxsaW5lIHgxPVwiMVwiIHkxPVwiMVwiIHgyPVwiMjNcIiB5Mj1cIjIzXCI+PC9saW5lPlxcXG4gICAgPC9zdmc+Jyk7XG5cbiRhbmdsZS1yaWdodDogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWwsXFxcbiAgICA8c3ZnIHZpZXdCb3g9XCIwIDAgMzIwIDUxMlwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cXFxuICAgIDxwYXRoIGZpbGw9XCIje3JnYmEobWFwLmdldCgkdGhlbWUtY29sb3JzLCBwcmltYXJ5KSwgMC45OTkpfVwiXFxcbiAgICBkPVwiTTI3OC42IDIzMy40YzEyLjUgMTIuNSAxMi41IDMyLjggMCA0NS4zbC0xNjAgMTYwYy0xMi41IDEyLjUtMzIuOCAxMi41LTQ1LjMgMHMtMTIuNS0zMi44IDAtNDUuM0wyMTAuNyAyNTYgNzMuNCAxMTguNmMtMTIuNS0xMi41LTEyLjUtMzIuOCAwLTQ1LjNzMzIuOC0xMi41IDQ1LjMgMGwxNjAgMTYwelwiLz5cXFxuICAgIDwvc3ZnPicpO1xuXG4kZGlhZ29uYWwtbGluZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWwsXFxcbiAgICA8c3ZnIHZpZXdCb3g9XCIwIDAgMTAwIDEwMFwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiBwcmVzZXJ2ZUFzcGVjdFJhdGlvPVwibm9uZVwiPlxcXG4gICAgPGxpbmUgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZT1cIiN7cmdiYShtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGdyYXktNDAwKSwgMC45OTkpfVwiXFxcbiAgICB4MT1cIjBcIiB5MT1cIjBcIiB4Mj1cIjEwMFwiIHkyPVwiMTAwXCIgdmVjdG9yLWVmZmVjdD1cIm5vbi1zY2FsaW5nLXN0cm9rZVwiLz5cXFxuICAgIDwvc3ZnPicpO1xuXG4kYnJlYWRjcnVtYnM6IChcbiAgICBiZy1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnZ3JheS0xMDAnKSxcbiAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnZGFyaycpLFxuICAgIGFjdGl2ZS1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnZ3JheS02MDAnKSxcbiAgICBicmVha3BvaW50LWRvd246IG1hcC5nZXQoJGdyaWQtYnJlYWtwb2ludHMsICdsZycpXG4pICFkZWZhdWx0O1xuXG4vLyBoZWFkZXJcbiRoZWFkZXItZml4ZWQ6IHRydWUgIWRlZmF1bHQ7XG4kaGVhZGVyLW5hdi1oZWlnaHQ6IDUuNXJlbSAhZGVmYXVsdDsgLy8gaGVpZ2h0IG9uIHNtYWxsIHNjcmVlbnNcbiRoZWFkZXItbmF2LWRlc2t0b3AtaGVpZ2h0OiAxNi44cmVtICFkZWZhdWx0OyAvLyBoZWlnaHQgb24gYmlnZ2VyIHNjcmVlbnNcbiRoZWFkZXItdG9wLW5hdi1kZXNrdG9wLWhlaWdodDogMTAuOHJlbSAhZGVmYXVsdDsgLy8gaGVpZ2h0IG9uIGJpZ2dlciBzY3JlZW5zXG4kaGVhZGVyLW5hdi1icmVha3BvaW50OiAneGwnICFkZWZhdWx0OyAvLyBicmVha3BvaW50IHdoZW4gbmF2IGNoYW5nZXMgZnJvbSBtb2JpbGUgdG8gZGVza3RvcFxuJGhlYWRlci1maXhlZC1hZGRpdGlvbmFsOiAoXG4gICAgbW9iaWxlLWJyZWFrcG9pbnQtdXA6IG1hcC5nZXQoJGdyaWQtYnJlYWtwb2ludHMsICRoZWFkZXItbmF2LWJyZWFrcG9pbnQpLFxuICAgIGhlYWRlci1tb2JpbGU6IHRydWUsXG4gICAgaGVhZGVyLWRlc2t0b3A6IGZhbHNlLFxuICAgIHRvcC1iYW5uZXItbW9iaWxlOiBmYWxzZSxcbiAgICB0b3AtYmFubmVyLWRlc2t0b3A6IGZhbHNlXG4pICFkZWZhdWx0O1xuJGhlYWRlci1zZWFyY2gtZGVza3RvcC1oZWlnaHQ6IDUuNHJlbSAhZGVmYXVsdDtcbiRoZWFkZXItc2VhcmNoLWRlc2t0b3Atd2lkdGg6IDQycmVtICFkZWZhdWx0O1xuXG4kc2Nyb2xsYmFyLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdwcmltYXJ5JykgIWRlZmF1bHQ7XG5cbi8vIG1lbnVcbiRtZW51LWl0ZW0tZGVza3RvcC1wYWRkaW5nOiAxcmVtO1xuJG1lbnUtc2Vjb25kYXJ5LWxpbmtzLWJnOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdwcmltYXJ5LWRhcmsnKSAhZGVmYXVsdDtcbiRtZW51LXN1Ym1lbnUtc2luZ2xlLWNvbHVtbi1taW46IDkgIWRlZmF1bHQ7XG5cbi8vIGZvb3RlclxuJGZvb3Rlci1ibG9jay1jb2xsYXBzZWQtaGVpZ2h0OiA2LjVyZW0gIWRlZmF1bHQ7XG5cbi8vIHZvdWNoZXIgUERGXG4vLyBOT1RFOiBpZiB0aGUgZm9udHMgdXNlZCBoZXJlIGFyZSBub24tc3RhbmRhcmQsIHRoZW4gdGhleSBuZWVkIHRvIGJlIHVwbG9hZGVkIGFuZCBzcGVjaWZpZWQgc2VwYXJhdGVseSBpbiB0aGVcbi8vIG1QREYgaW5pdGlhbGl6YXRpb24gKHNlZSB1c2FnZSBpbiBTRCBvciBzcGVhayB3aXRoIERCIDopKVxuJHZvdWNoZXI6IChcbiAgICBwcmltYXJ5LWJhY2tncm91bmQtY29sb3I6ICNmZmYsXG4gICAgcHJpbWFyeS1jb2xvcjogIzQ0NCxcbiAgICBzZWNvbmRhcnktYmFja2dyb3VuZC1jb2xvcjogI2RkZCxcbiAgICBzZWNvbmRhcnktY29sb3I6ICM0NDQsXG4gICAgYmxvY2staGlnaGxpZ2h0LWJhY2tncm91bmQtY29sb3I6ICNmMGYwZjAsXG4gICAgYmxvY2staGlnaGxpZ2h0LWNvbG9yOiAjNDQ0LFxuICAgIGJhc2UtZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2UsXG4gICAgYmFzZS1saW5lLWhlaWdodDogMS41LFxuICAgIGhlYWRpbmctZm9udDogJGZvbnQtZmFtaWx5LWJhc2UsXG4gICAgYm9keS1mb250OiAkZm9udC1mYW1pbHktYmFzZSxcbiAgICBsb2dvLW1heC1oZWlnaHQ6IDEwbW1cbikgIWRlZmF1bHQ7XG5cbi8vIEZ1bGwtd2lkdGggc2xpZGVyIGltYWdlIGRpbWVuc2lvbnMgKGFwcGxpZXMgdG8gZGVza3RvcCBvbmx5KVxuLy8gaW1hZ2Utd2lkdGg6IGltYWdlIHNpemVcbi8vIGltYWdlLWNvbnRlbnQtYXJlYS13aWR0aDogd2hlcmUgd2UgY2FuIHNhZmVseSBjcm9wIChmcm9tIHRoZSBmdWxsIHNpemUgaW1hZ2UpXG4kc2xpZGVyLWRlc2t0b3A6IChcbiAgICBpbWFnZS13aWR0aDogMTkwMHB4LFxuICAgIGltYWdlLWNvbnRlbnQtYXJlYS13aWR0aDogMTIwMHB4XG4pO1xuLy8gc2hvcGlvIHZhcmlhYmxlcyBlbmRcblxuLy8gQ1NTIHZhcmlhYmxlcyAtIG5vdyBhZGRlZCBpbiBhcHAuc2Nzc1xuIiwiLmZvcm0tZmllbGQge1xuICAgIGhlaWdodDogNXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICYtLXRleHRhcmVhIHtcbiAgICAgICAgaGVpZ2h0OiAxMHJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG5cbiAgICAgICAgJjpoYXMoW3N0eWxlKj0naGVpZ2h0J10pIHtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLXRleHRhcmVhLWxhcmdlIHtcbiAgICAgICAgbWluLWhlaWdodDogMjByZW07XG5cbiAgICAgICAgJjpoYXMoW3N0eWxlKj0naGVpZ2h0J10pIHtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2lucHV0IHtcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICAmLS1zbSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDMuOHJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLXRleHRhcmVhIHtcbiAgICAgICAgICAgIGhlaWdodDogMTEuNnJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZvcm0taW5wdXQ6aGFzKC5lcnJvcnMpIC5mb3JtLWZpZWxkLWNvbnRhaW5lciAuZm9ybS1maWVsZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5cbi8vIHRvZ2dsZS1zd2ljaCBmb3IgY2hlY2tib3hlc1xuLnRvZ2dsZS1zd2l0Y2gge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IDI0cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiA0OHB4O1xuXG4gICAgLnRvZ2dsZS1zd2l0Y2gtc2xpZGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGluc2V0OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjRzO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAyNHB4O1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgYm90dG9tOiAycHg7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgIGxlZnQ6IDJweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNHM7XG4gICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIFt0eXBlPSdjaGVja2JveCddIHtcbiAgICAgICAgQGV4dGVuZCAlc3Itb25seTtcblxuICAgICAgICAmOmNoZWNrZWQgKyAudG9nZ2xlLXN3aXRjaC1zbGlkZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBwcmltYXJ5KTtcblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjRweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuc2tpcCB7XG4gICAgJl9fbGluayB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogLTEwMDAwcHg7XG4gICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuaGVhZGVyLWxvZ28ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICZfX2ltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDNyZW07XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGhlYWRlci1uYXYtYnJlYWtwb2ludCkge1xuICAgICAgICAmX19pbWcge1xuICAgICAgICAgICAgaGVpZ2h0OiA0LjZyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5cbi5oZWFkZXItYnRuIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgaGVpZ2h0OiAkaGVhZGVyLW5hdi1oZWlnaHQ7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWluLXdpZHRoOiA0cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogYXV0bztcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1cyBsaW5lYXI7XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdwcmltYXJ5Jyk7XG4gICAgfVxuXG4gICAgJl9faWNvbiB7XG4gICAgICAgIEBpbmNsdWRlIHNxdWFyZSgxLjlyZW0pO1xuXG4gICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdwcmltYXJ5Jyk7XG4gICAgICAgIHN0cm9rZS13aWR0aDogMDtcbiAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHZhbHVlLWtleXdvcmQtY2FzZVxuICAgICAgICBzdHJva2U6IGN1cnJlbnRDb2xvcjtcbiAgICAgICAgei1pbmRleDogMTQwO1xuICAgICAgICBtYXJnaW4tYmxvY2stZW5kOiAwLjVyZW07XG5cbiAgICAgICAgJi0tY2FydCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBzcXVhcmUoMi42cmVtKTtcblxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjVyZW07XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkaGVhZGVyLW5hdi1icmVha3BvaW50KSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc3F1YXJlKDIuMXJlbSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRoZWFkZXItbmF2LWJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNxdWFyZSgxLjhyZW0pO1xuXG4gICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBsaW5rKTtcblxuICAgICAgICAgICAgJi0tY2FydCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiB2YXIoLS1pY29uLW1hcmdpbik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jYXB0aW9uIHtcbiAgICAgICAgYm90dG9tOiAwLjZyZW07XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjFyZW07XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgnbWQnKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgICAgICAgIGJvdHRvbTogMC4zcmVtO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAuMnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkaGVhZGVyLW5hdi1icmVha3BvaW50KSB7XG4gICAgICAgICAgICBib3R0b206IDAuMnJlbTtcbiAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdwcmltYXJ5Jyk7XG5cbiAgICAgICAgICAgICYtLWNhcnQge1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19iYWRnZSB7XG4gICAgICAgIEBpbmNsdWRlIHNxdWFyZSgxLjdlbSk7XG5cbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdzZWNvbmRhcnknKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMC4ycmVtO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHRvcDogMS4xcmVtO1xuICAgICAgICB6LWluZGV4OiAxNTA7XG5cbiAgICAgICAgJi0tbGlnaHQge1xuICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2xpZ2h0Jyk7XG4gICAgICAgIH1cblxuICAgICAgICAmLS1kYXJrIHtcbiAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGxpZ2h0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2JhZGdlLWljb24ge1xuICAgICAgICBAaW5jbHVkZSBzcXVhcmUoMS4yZW0pO1xuXG4gICAgICAgIHN0cm9rZS13aWR0aDogMztcblxuICAgICAgICAmLS1jaGVjayB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMC4wNWVtKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ3ByaW1hcnknKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ3NtJykge1xuICAgICAgICAmOjpiZWZvcmUsXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNxdWFyZSg1cmVtKTtcblxuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwcyBsaW5lYXI7XG4gICAgICAgIH1cblxuICAgICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1cyBsaW5lYXI7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgbGluZWFyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMjU1LCAyNTUsIDApO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDEzNTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5oZWFkZXItc2VhcmNoIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRoZWFkZXItbmF2LWJyZWFrcG9pbnQpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5cbi5oZWFkZXItZHJvcGRvd24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2xpZ2h0Jyk7XG4gICAgYm94LXNoYWRvdzogMCAwIDEwcHggM3B4IHJnYigwLCAwLCAwLCAwLjA1KTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gICAgcGFkZGluZy10b3A6IDJyZW07XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMHMgbGluZWFyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDEzMDtcblxuICAgIEBpZiAkaGVhZGVyLWZpeGVkIHtcbiAgICAgICAgdG9wOiAjeyRoZWFkZXItbmF2LWhlaWdodH07XG4gICAgfSBAZWxzZSB7XG4gICAgICAgIHRvcDogY2FsYygjeyRoZWFkZXItbmF2LWhlaWdodH0gKyB2YXIoLS1wcm9tby1oZWlnaHQsIDBweCkpO1xuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgJi5pcy12aXNpYmxlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBsaW5lYXI7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgnc20nKSB7XG4gICAgICAgICY6d2hlcmUoOm5vdCguc2VhcmNoLWRyb3Bkb3duKSkge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA0MnJlbTtcbiAgICAgICAgICAgIHdpZHRoOiA4MHZ3O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5pcy12aXNpYmxlIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IDNweCByZ2IoMCwgMCwgMCwgMC4wNSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRoZWFkZXItbmF2LWJyZWFrcG9pbnQpIHtcbiAgICAgICAgcGFkZGluZzogMnJlbTtcbiAgICAgICAgcmlnaHQ6IGNhbGMoJGNvbnRhaW5lci1wYWRkaW5nLXggLyAyKTtcbiAgICAgICAgdG9wOiA4LjlyZW07XG4gICAgfVxuXG4gICAgJl9fdXNlciB7XG4gICAgICAgIHBhZGRpbmctYmxvY2s6IDEuNXJlbTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGhlYWRlci1uYXYtYnJlYWtwb2ludCkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWJsb2NrOiBjYWxjKDJyZW0gLSAwLjhlbSk7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZy1ibG9jazogMC41cmVtO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGhlYWRlci1uYXYtYnJlYWtwb2ludCkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYmxvY2s6IDAuNGVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmxpbmssXG4gICAgICAgICAgICAmOnZpc2l0ZWQge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMsXG4gICAgICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuaGVhZGVyLWRyb3Bkb3duIHtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1kcm9wZG93bi1ib3JkZXItcmFkaXVzKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGhlYWRlci1uYXYtYnJlYWtwb2ludCkge1xuICAgICAgICB0b3A6IGNhbGMoNTAlICsgNXJlbSk7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgIH1cbn1cbiIsIi5oZWFkZXItY2FydCB7XG4gICAgJi5oZWFkZXItY2FydCB7XG4gICAgICAgICYtLWwge1xuICAgICAgICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbmFtZSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkaGVhZGVyLW5hdi1icmVha3BvaW50KSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBzci1vbmx5O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmhlYWRlci1jYXJ0IHtcbiAgICAgICAgJi1pdGVtIHtcbiAgICAgICAgICAgICZfX3JlbW92ZSB7XG4gICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiAycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5cbi5oZWFkZXItc2VsZWN0cyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDFyZW07XG4gICAgbWFyZ2luOiAycmVtIDA7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRoZWFkZXItbmF2LWJyZWFrcG9pbnQpIHtcbiAgICAgICAgbWFyZ2luOiAwIDFyZW0gMCAwO1xuICAgIH1cbn1cblxuLmhlYWRlci1zZWxlY3Qge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkaW5wdXQsICdiZy1jb2xvcicpO1xuICAgIGNvbG9yOiBtYXAuZ2V0KCRpbnB1dCwgJ2NvbG9yJyk7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmLS1kZXNrdG9wIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmX19idG4ge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBoZWlnaHQ6IDIuMWVtO1xuICAgICAgICBwYWRkaW5nOiAwIDAuOGVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAgIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1cyBsaW5lYXI7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdwcmltYXJ5Jyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pY29uIHtcbiAgICAgICAgQGluY2x1ZGUgc3F1YXJlKDAuOHJlbSk7XG5cbiAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2dyYXktNjAwJyk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxZW07XG4gICAgfVxuXG4gICAgJl9fbGlzdCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJGlucHV0LCAnYmctY29sb3InKTtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDBzIGxpbmVhcjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDIwO1xuXG4gICAgICAgICYuaXMtYWN0aXZlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5pcy12aXNpYmxlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGxpbmVhcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2xpbmsge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBoZWlnaHQ6IDIuMWVtO1xuICAgICAgICBwYWRkaW5nOiAwIDAuOGVtO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cbiIsIi5oZWFkZXItYmxvY2sge1xuICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5cbi8qIVxuICogSGFtYnVyZ2Vyc1xuICogQGRlc2NyaXB0aW9uIFRhc3R5IENTUy1hbmltYXRlZCBoYW1idXJnZXJzXG4gKiBAYXV0aG9yIEpvbmF0aGFuIFN1aCBAam9uc3VoXG4gKiBAc2l0ZSBodHRwczovL2pvbnN1aC5jb20vaGFtYnVyZ2Vyc1xuICogQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL2pvbnN1aC9oYW1idXJnZXJzXG4gKi9cblxuLy8gU2V0dGluZ3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4kaGFtYnVyZ2VyLXBhZGRpbmcteDogMC41cmVtO1xuJGhhbWJ1cmdlci1wYWRkaW5nLXk6IDAuNXJlbTtcbiRoYW1idXJnZXItbGF5ZXItd2lkdGg6IDIuMnJlbTtcbiRoYW1idXJnZXItbGF5ZXItaGVpZ2h0OiAwLjJyZW07XG4kaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmc6IDAuNnJlbTtcbiRoYW1idXJnZXItbGF5ZXItY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2xpZ2h0Jyk7XG4kaGFtYnVyZ2VyLWxheWVyLWJvcmRlci1yYWRpdXM6IDAuNHJlbTtcbiRoYW1idXJnZXItaG92ZXItb3BhY2l0eTogMTtcbiRoYW1idXJnZXItYWN0aXZlLWxheWVyLWNvbG9yOiAkaGFtYnVyZ2VyLWxheWVyLWNvbG9yO1xuJGhhbWJ1cmdlci1hY3RpdmUtaG92ZXItb3BhY2l0eTogJGhhbWJ1cmdlci1ob3Zlci1vcGFjaXR5O1xuXG4vLyBUbyB1c2UgQ1NTIGZpbHRlcnMgYXMgdGhlIGhvdmVyIGVmZmVjdCBpbnN0ZWFkIG9mIG9wYWNpdHksXG4vLyBzZXQgJGhhbWJ1cmdlci1ob3Zlci11c2UtZmlsdGVyIGFzIHRydWUgYW5kXG4vLyBjaGFuZ2UgdGhlIHZhbHVlIG9mICRoYW1idXJnZXItaG92ZXItZmlsdGVyIGFjY29yZGluZ2x5LlxuJGhhbWJ1cmdlci1ob3Zlci11c2UtZmlsdGVyOiBmYWxzZTtcbiRoYW1idXJnZXItaG92ZXItZmlsdGVyOiBvcGFjaXR5KDUwJSk7XG4kaGFtYnVyZ2VyLWFjdGl2ZS1ob3Zlci1maWx0ZXI6ICRoYW1idXJnZXItaG92ZXItZmlsdGVyO1xuXG4vLyBUeXBlcyAoUmVtb3ZlIG9yIGNvbW1lbnQgb3V0IHdoYXQgeW91IGRvbuKAmXQgbmVlZClcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4kaGFtYnVyZ2VyLXR5cGVzOiAoXG4gICAgM2R4LFxuICAgIDNkeC1yLFxuICAgIDNkeSxcbiAgICAzZHktcixcbiAgICAzZHh5LFxuICAgIDNkeHktcixcbiAgICBhcnJvdyxcbiAgICBhcnJvdy1yLFxuICAgIGFycm93YWx0LFxuICAgIGFycm93YWx0LXIsXG4gICAgYXJyb3d0dXJuLFxuICAgIGFycm93dHVybi1yLFxuICAgIGJvcmluZyxcbiAgICBjb2xsYXBzZSxcbiAgICBjb2xsYXBzZS1yLFxuICAgIGVsYXN0aWMsXG4gICAgZWxhc3RpYy1yLFxuICAgIGVtcGhhdGljLFxuICAgIGVtcGhhdGljLXIsXG4gICAgbWludXMsXG4gICAgc2xpZGVyLFxuICAgIHNsaWRlci1yLFxuICAgIHNwaW4sXG4gICAgc3Bpbi1yLFxuICAgIHNwcmluZyxcbiAgICBzcHJpbmctcixcbiAgICBzdGFuZCxcbiAgICBzdGFuZC1yLFxuICAgIHNxdWVlemUsXG4gICAgdm9ydGV4LFxuICAgIHZvcnRleC1yXG4pO1xuXG5AaW1wb3J0ICcuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL2Jhc2UnO1xuQGltcG9ydCAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9zcXVlZXplJztcblxuLy8gQ3VzdG9tIHN0eWxlc1xuLmhhbWJ1cmdlciB7XG4gICAgQGluY2x1ZGUgc3F1YXJlKCRoZWFkZXItbmF2LWhlaWdodCk7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdwcmltYXJ5Jyk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGp1c3RpZnktc2VsZjogZW5kO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkaGVhZGVyLW5hdi1icmVha3BvaW50KSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuIiwiQHVzZSBcInNhc3M6bWF0aFwiO1xuXG4vLyBIYW1idXJnZXJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4uaGFtYnVyZ2VyIHtcbiAgcGFkZGluZzogJGhhbWJ1cmdlci1wYWRkaW5nLXkgJGhhbWJ1cmdlci1wYWRkaW5nLXg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIGZpbHRlcjtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG5cbiAgLy8gTm9ybWFsaXplICg8YnV0dG9uPilcbiAgZm9udDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gICY6aG92ZXIge1xuICAgIEBpZiAkaGFtYnVyZ2VyLWhvdmVyLXVzZS1maWx0ZXIgPT0gdHJ1ZSB7XG4gICAgICBmaWx0ZXI6ICRoYW1idXJnZXItaG92ZXItZmlsdGVyO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBvcGFjaXR5OiAkaGFtYnVyZ2VyLWhvdmVyLW9wYWNpdHk7XG4gICAgfVxuICB9XG5cbiAgJi5pcy1hY3RpdmUge1xuICAgICY6aG92ZXIge1xuICAgICAgQGlmICRoYW1idXJnZXItaG92ZXItdXNlLWZpbHRlciA9PSB0cnVlIHtcbiAgICAgICAgZmlsdGVyOiAkaGFtYnVyZ2VyLWFjdGl2ZS1ob3Zlci1maWx0ZXI7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIG9wYWNpdHk6ICRoYW1idXJnZXItYWN0aXZlLWhvdmVyLW9wYWNpdHk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhhbWJ1cmdlci1pbm5lcixcbiAgICAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsXG4gICAgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhhbWJ1cmdlci1hY3RpdmUtbGF5ZXItY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5oYW1idXJnZXItYm94IHtcbiAgd2lkdGg6ICRoYW1idXJnZXItbGF5ZXItd2lkdGg7XG4gIGhlaWdodDogJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKiAzICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogMjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5oYW1idXJnZXItaW5uZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6IG1hdGguZGl2KCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0LCAtMik7XG5cbiAgJixcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgd2lkdGg6ICRoYW1idXJnZXItbGF5ZXItd2lkdGg7XG4gICAgaGVpZ2h0OiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGFtYnVyZ2VyLWxheWVyLWNvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6ICRoYW1idXJnZXItbGF5ZXItYm9yZGVyLXJhZGl1cztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICB9XG5cbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQpICogLTE7XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgYm90dG9tOiAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQpICogLTE7XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBzcXVlZXplKSB7XG4gIC8qXG4gICAqIFNxdWVlemVcbiAgICovXG4gIC5oYW1idXJnZXItLXNxdWVlemUge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4wNzVzO1xuICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4wNzVzIDAuMTJzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4wNzVzIGVhc2U7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjEycyBlYXNlLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4wNzVzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMTJzO1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4wNzVzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwLjA3NXMgMC4xMnMgZWFzZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4wNzVzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMDc1cyAwLjEycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gU2ltdWxhdGUgYW4gaW50ZXJhY3RpdmUgbGFiZWw6IG5hbWVseSwgYSBsYWJlbCB3aXRoIGxpbmtzIGFuZC9vciBvdGhlciBpbnRlcmFjdGl2ZSBmZWF0dXJlc1xuLy8gTk9URTogZGVwZW5kaW5nIHVwb24gY29udGV4dCwgdGhlcmUgbWF5IGJlIHNvbWUgY3VzdG9tIGFkanVzdG1lbnRzIHJlcXVpcmVkXG5cbi5sYWJlbC1pbnRlcmFjdGl2ZSB7XG4gICAgJl9fY29udGFpbmVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cblxuICAgICZfX2xhYmVsIHtcbiAgICAgICAgJi0tZGVmYXVsdCB7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLXJlcGxhY2VtZW50IHtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiB2YXIoLS1sYWJlbC1yZXBsYWNlbWVudC10b3AsIDApO1xuICAgICAgICAgICAgbGVmdDogdmFyKC0tbGFiZWwtcmVwbGFjZW1lbnQtbGVmdCwgMCk7XG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWxhYmVsLXJlcGxhY2VtZW50LWZvbnQtc2l6ZSwgaW5oZXJpdCk7XG5cbiAgICAgICAgICAgIGEsXG4gICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5cbi5zZWFyY2gtZHJvcGRvd24ge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGhlYWRlci1uYXYtYnJlYWtwb2ludCkge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4uc2VhcmNoIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgJl9faW5wdXQge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmX19idG4ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMC42cmVtO1xuICAgICAgICBtYXgtaGVpZ2h0OiA0cmVtO1xuICAgIH1cblxuICAgICZfX3N1Ym1pdCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAmOmhhcygud29ya2luZykge1xuICAgICAgICAgICAgLnNlYXJjaF9fYnRuIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zZWFyY2hfX2ljb24tLXNwaW5uZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBpbnNldDogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pY29uIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAmLS1zcGlubmVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNxdWFyZSgxLjhyZW0pO1xuXG4gICAgICAgICAgICBhbmltYXRpb246IHNwaW5uZXIgMC43NXMgaW5maW5pdGUgbGluZWFyO1xuICAgICAgICAgICAgb3BhY2l0eTogMC42O1xuICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiAwLjAxcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICAgICAgICAmX19zdWJtaXQ6aG92ZXIgJl9faWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAncHJpbWFyeScpO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9faWNvbiB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1cyBsaW5lYXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRoZWFkZXItbmF2LWJyZWFrcG9pbnQpIHtcbiAgICAgICAgd2lkdGg6ICRoZWFkZXItc2VhcmNoLWRlc2t0b3Atd2lkdGg7XG5cbiAgICAgICAgJjpmb2N1cy13aXRoaW4ge1xuICAgICAgICAgICAgb3V0bGluZTogMXB4IHNvbGlkIG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ3ByaW1hcnknKTtcbiAgICAgICAgICAgIG91dGxpbmUtb2Zmc2V0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fZmllbGQtY29udGFpbmVyIHtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2ZpZWxkIHtcbiAgICAgICAgICAgIGhlaWdodDogJGhlYWRlci1zZWFyY2gtZGVza3RvcC1oZWlnaHQ7XG4gICAgICAgIH1cblxuICAgICAgICAmX19idG4ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3N1Ym1pdCB7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkaW5wdXQsICdiZy1jb2xvcicpO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgaGVpZ2h0OiAkaGVhZGVyLXNlYXJjaC1kZXNrdG9wLWhlaWdodDtcbiAgICAgICAgICAgIHdpZHRoOiA0LjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmX19pY29uIHtcbiAgICAgICAgICAgICY6d2hlcmUoOm5vdCguc2VhcmNoX19pY29uLS1zcGlubmVyKSkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNxdWFyZSgxLjZyZW0pO1xuXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYud29ya2luZyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgICAgICsgLnNlYXJjaF9faWNvbi0tc3Bpbm5lciB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vIHNjcm9sbC1wYWRkaW5nLXRvcCBpcyBzZXQgb24gcm9vdCBlbGVtZW50IHRvIHByZXZlbnQgdGhlIGhlYWRlciBmcm9tIGNvdmVyaW5nIHRoZSBjb250ZW50XG4vLyBidXQgbmVlZHMgdG8gYmUgcmVtb3ZlZCB3aGVuIHRoZSBzZWFyY2ggaW5wdXQgaW4gdGhlIGhlYWRlciBpcyBmb2N1c2VkXG46cm9vdDpoYXMoLnNlYXJjaCBpbnB1dDpmb2N1cykge1xuICAgIHNjcm9sbC1wYWRkaW5nLXRvcDogMDtcbn1cblxuLnNlYXJjaCB7XG4gICAgJl9faW5wdXQge1xuICAgICAgICBAaW5jbHVkZSByZXNldC1mb3JtLWlucHV0O1xuXG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaXRpYWw7XG4gICAgfVxuXG4gICAgLnN1Z2dlc3Rpb25zIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICBAYXQtcm9vdCAmOmZvY3VzLXdpdGhpbiAmX19zdWJtaXQge1xuICAgICAgICBiYWNrZ3JvdW5kOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIHByaW1hcnkpO1xuICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBsaWdodCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkaGVhZGVyLW5hdi1icmVha3BvaW50KSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRkZWZhdWx0LWJvcmRlci1yYWRpdXM7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgZ3JheS0yMDApO1xuXG4gICAgICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgICAgICAgIG91dGxpbmUtb2Zmc2V0OiAtMXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJl9faW5wdXQge1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuXG4gICAgICAgICAgICAuc2VhcmNoX19maWVsZC1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fZmllbGQtY29udGFpbmVyLFxuICAgICAgICAmX19maWVsZCB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGRlZmF1bHQtYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRkZWZhdWx0LWJvcmRlci1yYWRpdXM7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fc3VibWl0IHtcbiAgICAgICAgICAgIGNvbG9yOiByZ2IoMzMsIDM3LCA0MSwgMC40KTtcbiAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkZGVmYXVsdC1ib3JkZXItcmFkaXVzIC0yO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRkZWZhdWx0LWJvcmRlci1yYWRpdXMgLTI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGdyYXktMTAwKTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuXG4gICAgICAgICAgICAmOmhhcygud29ya2luZykge1xuICAgICAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtcXVlcnksXG4gICAgICAgICZfX2ZpZWxkLFxuICAgICAgICAmX19zdWJtaXQge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogNC44cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9faWNvbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGluc2V0OiAwO1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuXG4gICAgICAgICAgICAmOm5vdCguc2VhcmNoX19pY29uLS1zcGlubmVyKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fYnRuIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGNvbG9yOiBjdXJyZW50Y29sb3IgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDcwMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDJyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5cbi5uYXYtcGFnZXMge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2dyYXktMjAwJyk7XG4gICAgYm9yZGVyLXdpZHRoOiAxcHggMDtcbiAgICBtYXJnaW46IDFyZW0gMDtcbiAgICBwYWRkaW5nOiAxcmVtIDA7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRoZWFkZXItbmF2LWJyZWFrcG9pbnQpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG5cbiAgICAmX19saXN0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGhlYWRlci1uYXYtYnJlYWtwb2ludCkge1xuICAgICAgICAgICAgZ2FwOiAxLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19saW5rIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiAwLjRlbSAwO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgJi0taWNvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcbiAgICAgICAgJl9fbGluazpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAncHJpbWFyeScpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRoZWFkZXItbmF2LWJyZWFrcG9pbnQpIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIG1pbi1oZWlnaHQ6IDRyZW07XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luLWJsb2NrOiAyLjhyZW0gMDtcblxuICAgICAgICAmX19saW5rIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDRyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWlubGluZTogMXJlbTtcblxuICAgICAgICAgICAgJi0taWNvbiB7XG4gICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiAwO1xuICAgICAgICAgICAgICAgIG9yZGVyOiA0O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogOXB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1pbmxpbmU6IGF1dG8gY2FsYygyMHB4IC0gMXJlbSk7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19pdGVtIHtcbiAgICAgICAgICAgIGJvcmRlci1ibG9jay1lbmQ6IDFweCBzb2xpZCBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIHByaW1hcnktbWlkKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGhlYWRlci1uYXYtYnJlYWtwb2ludCkge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAuc3VibWVudSB7XG4gICAgICAgICAgICAmLS1uZXN0ZWQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogMDsgLy8gWzAxXSByZW1vdmUgZGVmYXVsdCBtYXJnaW4gYXMgdGhpcyBjYW4gY2F1c2UgYSAndHdpdGNoJyBpbiByZW5kZXJpbmdcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2xpc3Qge1xuICAgICAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgICAgICAgIGdhcDogMCAxcmVtO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbWFyZ2luLWlubGluZTogMDtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSB2YXIoLS1icy1ndXR0ZXIteCkpO1xuXG4gICAgICAgICAgICAuY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubmF2LXBhZ2VzIHtcbiAgICAgICAgICAgICAgICAmX19saXN0IHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IGNhbGMoMTAwJSArIDAuNHJlbSk7IC8vIFswMV0gYWRkIHRoZSBibG9jayBtYXJnaW4gaGVyZVxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtMC43NXJlbTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnbGlnaHQnKTtcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDEwcHggM3B4IHJnYigwLCAwLCAwLCAwLjA1KTtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICAgICAgZ2FwOiAwO1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxNTA7XG4gICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMHMgbGluZWFyIDBzOyAvLyBhZGQgc2xpZ2h0IGRlbGF5XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBtYXgtY29udGVudDtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA0MnJlbTsgLy8gb3RoZXIgaGVhZGVyIGRyb3Bkb3duc1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDEuNXJlbTtcblxuICAgICAgICAgICAgICAgICAgICAubmF2LXBhZ2VzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICZfX2xpc3Qge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYmxvY2s6IDAuNXJlbTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAgICAgICAgICY6Zm9jdXMsXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19pdGVtIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgICAgICAgICAgICAubmF2LXBhZ2VzIHtcbiAgICAgICAgICAgICAgICAgICAgJl9fbGlzdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGxpbmVhciAwLjNzOyAvLyBhZGQgc2xpZ2h0IGRlbGF5XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpoYXMoLm5hdi1wYWdlc19fbGlzdCkge1xuICAgICAgICAgICAgICAgID4gLm5hdi1wYWdlcyB7XG4gICAgICAgICAgICAgICAgICAgICZfX2xpbmsge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUsXG4gICAgICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnbGlnaHQnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMHMgbGluZWFyIDBzO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IC0wLjVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogLTAuNzVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDEwcHggM3B4IHJnYigwLCAwLCAwLCAwLjA1KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3R0b206IC0wLjVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxNTU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAtMC44NXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgJjpmb2N1cy13aXRoaW4ge1xuICAgICAgICAgICAgICAgICAgICA+IC5uYXYtcGFnZXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgJl9fbGluayB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiAqIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTYwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMHMgbGluZWFyIDAuM3MsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDAuMTVzIGxpbmVhciAwLjNzOyAvLyBhZGQgc2xpZ2h0IGRlbGF5XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fbGluayB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAuMmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiQHVzZSAnc2Fzczpjb2xvcic7XG5AdXNlICdzYXNzOm1hcCc7XG5cbi5jYXRlZ29yaWVzLW1lbnUge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGhlYWRlci1uYXYtYnJlYWtwb2ludCkge1xuICAgICAgICAuaGFtYnVyZ2VyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRkZWZhdWx0LWJvcmRlci1yYWRpdXM7XG5cbiAgICAgICAgICAgICYtYm94IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA+IC5idG4ge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX190cmlnZ2VyIHtcbiAgICAgICAgICAgIGdhcDogMC41cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdiB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1kcm9wZG93bi1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDBmciAwZnI7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBncmlkLXRlbXBsYXRlLXJvd3MgMC4xNXMgbGluZWFyO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgIG1heC13aWR0aDogbWFwLmdldCgkY29udGFpbmVyLW1heC13aWR0aHMsIHh4bCk7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0bztcblxuICAgICAgICAgICAgJixcbiAgICAgICAgICAgICoge1xuICAgICAgICAgICAgICAgIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5uYXYge1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtY2F0ZWdvcmllcy1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAyMHB4IDAgcmdiKDAsIDAsIDAsIDAuMSk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tZHJvcGRvd24tYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWlubGluZTogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm1lbnUge1xuICAgICAgICAgICAgICAgICYtLW1haW4ge1xuICAgICAgICAgICAgICAgICAgICAtLWxlZnQtbWVudS13aWR0aDogMjI0cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIHByaW1hcnktbGlnaHQpIDAsIG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgcHJpbWFyeS1saWdodCkgY2FsYyh2YXIoLS1sZWZ0LW1lbnUtd2lkdGgpICsgMjBweCksICNmZmYgY2FsYyh2YXIoLS1sZWZ0LW1lbnUtd2lkdGgpICsgMjBweCkpO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMjBweCB2YXIoLS1sZWZ0LW1lbnUtd2lkdGgpIDFmcjtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24tY29udGVudDogc3RhcnQ7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1pbmxpbmU6IDA7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYmxvY2s6IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJl9faXRlbSB7XG4gICAgICAgICAgICAgICAgICAgICYtLW1haW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogY29udGVudHM7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6aGFzKC5zdWJtZW51LS1tYWluOmhvdmVyKSA+IC5tZW51X19saW5rIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIHByaW1hcnktZGFyayk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZfX2xpbmstaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgID4gLm1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICZfX2xpbmsge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJi0tcHJpbWFyeSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJi0tc2Vjb25kYXJ5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgcHJpbWFyeS1saWdodCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkZGVmYXVsdC1ib3JkZXItcmFkaXVzIDAgMCAkZGVmYXVsdC1ib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgYmFzZS10ZXh0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3RhcnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2FwOiAwIDFyZW07XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmZvY3VzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgcHJpbWFyeS1kYXJrKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUgbWF4LW5lc3RpbmctZGVwdGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJl9fbGluay1pbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBzdHlsZWxpbnQtZW5hYmxlIG1heC1uZXN0aW5nLWRlcHRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLm1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJl9fbGluay1pbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRkZWZhdWx0LWJvcmRlci1yYWRpdXM7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwaWN0dXJlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWl4LWJsZW5kLW1vZGU6IGRhcmtlbjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLS1wcmltYXJ5OmhhcygrIC5vcGVuKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIHByaW1hcnktZGFyayk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLm1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZfX2xpbmstaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOm5vdCgubWVudV9faXRlbS0tbmVzdGVkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJl9fbGluay10ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmlzLXZpc2libGUge1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogMWZyIDBmcjtcblxuICAgICAgICAgICAgICAgIC5uYXYtY2F0ZWdvcmllcy1jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICAtLWNhdGVnb3JpZXMtbmF2LWhlaWdodDogY2FsYyg5OHZoIC0gI3skaGVhZGVyLW5hdi1kZXNrdG9wLWhlaWdodH0pO1xuXG4gICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDUwdmg7XG4gICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IHZhcigtLWNhdGVnb3JpZXMtbmF2LWhlaWdodCk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBwcmltYXJ5KTtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC43O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zdWJtZW51IHtcbiAgICAgICAgICAgICZfX21vcmUtbGluayB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgICAgIC5zdWJtZW51IHtcbiAgICAgICAgICAgICAgICAgICAgJl9fbGluayB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA2MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGxpbmspO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICZfX2ljb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgJi0tZm9yd2FyZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aDogMS41cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAtMXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmFkZC1zaG93LW1vcmUgKyAuc3VibWVudSB7XG4gICAgICAgICAgICAmX19tb3JlLWxpbmsge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkaGVhZGVyLW5hdi1icmVha3BvaW50KSB7XG4gICAgICAgIC5uYXYge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBwcmltYXJ5LWxpZ2h0KTtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwdnc7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5AdXNlICdzYXNzOmNvbG9yJztcblxuLnByb2R1Y3QtY2FyZC1zYW1wbGUtY29udGFpbmVyOm5vdCgucHJvZHVjdC1jYXJkLXNsaWRlcikge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ2FwOiAxcmVtO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQxMnB4KSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgnc20nKSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDg5MHB4KSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDUsIDFmcik7XG4gICAgfVxufVxuXG4ucHJvZHVjdHMtc2VjdGlvbl9fbGlzdCB7XG4gICAgbWFyZ2luLWJsb2NrLWVuZDogLTRyZW07XG5cbiAgICAucHJvZHVjdC1jYXJkIHtcbiAgICAgICAgQHN1cHBvcnRzIChncmlkLXRlbXBsYXRlLXJvd3M6IHN1YmdyaWQpIHtcbiAgICAgICAgICAgIEBjb250YWluZXIgcHJvZHVjdHMtc2VjdGlvbiAod2lkdGggPiA1NjkuOTk5cHgpIHtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHN1YmdyaWQ7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IG5vcm1hbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBjb250YWluZXIgcHJvZHVjdHMtc2VjdGlvbiAod2lkdGggPCA1NzBweCkge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAzZnIgNGZyO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucHJvZHVjdC1jYXJkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gICAgcGFkZGluZy1ibG9jay1lbmQ6IGNhbGMoMC4zcmVtICsgMnB4KTsgLy8gZW5zdXJlIHRoYXQgdGhlIG9mZmVycyBibG9jayBpcyBub3QgY3JvcHBlZFxuICAgIHotaW5kZXg6IDE7XG4gICAgbWFyZ2luLWJsb2NrLWVuZDogNHJlbTtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtcm93OiBzcGFuIDExO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNmZyIDdmcjtcbiAgICBjb2x1bW4tZ2FwOiAxcmVtO1xuICAgIGFsaWduLWl0ZW1zOiBzdGFydDtcbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOlxuICAgICAgICAndGh1bWIgICB0aHVtYidcbiAgICAgICAgJ2F2YWlsICAgYXZhaWwnXG4gICAgICAgICdoZWFkaW5nIGhlYWRpbmcnXG4gICAgICAgICdwZXJleCAgIHBlcmV4J1xuICAgICAgICAndm91Y2hlciB2b3VjaGVyJ1xuICAgICAgICAncHJpY2UgICBwYXltZW50LWluZm8nXG4gICAgICAgICdwcmljZSAgIHBheW1lbnQtaW5mbydcbiAgICAgICAgJ3ByaWNlICAgYWRkJ1xuICAgICAgICAnb2ZmZXJzICBvZmZlcnMnO1xuXG4gICAgLy8gZGVsYXkgdGhlIHotaW5kZXggdHJhbnNpdGlvbiBzbGlnaHRseSBzbyB0aGF0IHRoZSBjYXJkIGJlbmVhdGggaXMgbm90IGRpc3BsYXllZCB3aGlsZSB0aGUgdHJhbnNpdGlvbiBpcyBpbiBwcm9ncmVzc1xuICAgIHRyYW5zaXRpb246IDJzIHotaW5kZXggMHMgZWFzZS1pbjtcblxuICAgIC5lbWJsYV9fY29udGFpbmVyOndoZXJlKC5lbWJsYV9fY29udGFpbmVyLS1iYXNrZXQpICYsXG4gICAgLnRpbWUtbGltaXRlZC1vZmZlcnMgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nLWJsb2NrLWVuZDogMDtcbiAgICAgICAgbWFyZ2luLWJsb2NrLWVuZDogMDtcblxuICAgICAgICAmX19zZWNvbmRhcnkge1xuICAgICAgICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnRpbWUtbGltaXRlZC1vZmZlcnMgJiB7XG4gICAgICAgIGdyaWQtcm93OiBhdXRvO1xuICAgIH1cblxuICAgIC8vIGNhcmQgc3RydWN0dXJlXG4gICAgJl9faW5uZXIsXG4gICAgJl9fcHJpbWFyeSxcbiAgICAmX19zZWNvbmRhcnksXG4gICAgJl9fc2Vjb25kYXJ5LWlubmVyLFxuICAgICZfX2FkZCB7XG4gICAgICAgIGRpc3BsYXk6IGNvbnRlbnRzO1xuICAgIH1cblxuICAgICZfX3RodW1ibmFpbCB7XG4gICAgICAgIGdyaWQtYXJlYTogdGh1bWI7XG4gICAgfVxuXG4gICAgJl9faGVhZGluZyB7XG4gICAgICAgIG9yZGVyOiB1bnNldDtcbiAgICAgICAgZ3JpZC1hcmVhOiBoZWFkaW5nO1xuICAgIH1cblxuICAgICZfX2F2YWlsYWJpbGl0eSB7XG4gICAgICAgIGdyaWQtYXJlYTogYXZhaWw7XG4gICAgfVxuXG4gICAgJl9fcGVyZXgge1xuICAgICAgICBncmlkLWFyZWE6IHBlcmV4O1xuICAgIH1cblxuICAgICZfX3ByaWNlIHtcbiAgICAgICAgZ3JpZC1hcmVhOiBwcmljZTtcbiAgICB9XG5cbiAgICAmX192b3VjaGVyIHtcbiAgICAgICAgZ3JpZC1hcmVhOiB2b3VjaGVyO1xuICAgICAgICBtYXJnaW4tYmxvY2s6IDFyZW07XG4gICAgfVxuXG4gICAgJl9fY29tcGFyZSB7XG4gICAgICAgIGdyaWQtYXJlYTogdGh1bWI7XG4gICAgICAgIHBsYWNlLXNlbGY6IHN0YXJ0O1xuICAgICAgICB6LWluZGV4OiA1O1xuICAgIH1cblxuICAgICZfX2FkZC1saW5rIHtcbiAgICAgICAgZ3JpZC1hcmVhOiBhZGQ7XG4gICAgICAgIHotaW5kZXg6IDU7XG4gICAgICAgIGhlaWdodDogNHJlbTtcblxuICAgICAgICAudGltZS1saW1pdGVkLW9mZmVycyAmIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19vZmZlcnMge1xuICAgICAgICBncmlkLWFyZWE6IG9mZmVycztcbiAgICB9XG5cbiAgICAvLyAtLWNhcmQgc3RydWN0dXJlXG5cbiAgICAmX19wcmltYXJ5IHtcbiAgICAgICAgQG1lZGlhIChob3ZlcjogaG92ZXIpIGFuZCAobWluLXdpZHRoOiBtYXAuZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCAnbGcnKSkge1xuICAgICAgICAgICAgJjpoYXMoLmNhcmQtcHJpY2VfX2Rpc2NvdW50KSxcbiAgICAgICAgICAgICY6aGFzKC5wcm9kdWN0LWNhcmRfX2F2YWlsYWJpbGl0eSkge1xuICAgICAgICAgICAgICAgICsgLnByb2R1Y3QtY2FyZF9fc2Vjb25kYXJ5IHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50aW1lLWxpbWl0ZWQtb2ZmZXJzICYge1xuICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgYWxpZ24tc2VsZjogc3RhcnQ7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGdhcDogMXJlbTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19zZWNvbmRhcnkge1xuICAgICAgICAmLWlubmVyIHtcbiAgICAgICAgICAgIC50aW1lLWxpbWl0ZWQtb2ZmZXJzICYge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBnYXA6IDFyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4gICAgJl9faGVhZGluZyxcbiAgICAmX19hdmFpbGFiaWxpdHkge1xuICAgICAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IDEuOHJlbTtcblxuICAgICAgICAudGltZS1saW1pdGVkLW9mZmVycyAmIHtcbiAgICAgICAgICAgIG1hcmdpbi1ibG9jazogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2hlYWRpbmcge1xuICAgICAgICBtYXJnaW4tYmxvY2stZW5kOiAxLjhyZW07XG4gICAgICAgIG1pbi1oZWlnaHQ6IDFweDtcbiAgICAgICAgb3JkZXI6IDEwO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDcwMDtcbiAgICAgICAgdGV4dC13cmFwOiBpbml0aWFsO1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcblxuICAgICAgICBAY29udGFpbmVyIHByb2R1Y3RzLXNlY3Rpb24gKHdpZHRoIDwgNTcwcHgpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ibG9jazogMC41cmVtO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmLWxpbmsge1xuICAgICAgICAgICAgd29yZC1icmVhazogbm9ybWFsO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICAgICBAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdGV4dC1kZWNvcmF0aW9uLWNvbG9yIDAuMTVzIGxpbmVhcjtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX190aHVtYm5haWwge1xuICAgICAgICAtLXRodW1ibmFpbC1wYWRkaW5nOiBjbGFtcCgxcmVtLCAzdncsIDJyZW0pO1xuXG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRkZWZhdWx0LWJvcmRlci1yYWRpdXM7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIHBhZGRpbmc6IHZhcigtLXRodW1ibmFpbC1wYWRkaW5nKTtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICAgIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGhlaWdodDogMjdyZW07XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcblxuICAgICAgICBAY29udGFpbmVyIHByb2R1Y3RzLXNlY3Rpb24gKHdpZHRoIDwgNTcwcHgpIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMTBweCA1MHB4IDAgY29sb3IubWl4KG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2RhcmsnKSwgdHJhbnNwYXJlbnQsIDEzJSk7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAgICAgICAgIC50aW1lLWxpbWl0ZWQtb2ZmZXJzICYge1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAudGltZS1saW1pdGVkLW9mZmVycyAmIHtcbiAgICAgICAgICAgIGhlaWdodDogMjNyZW07XG4gICAgICAgIH1cblxuICAgICAgICAudGltZS1saW1pdGVkLW9mZmVycyAmIHtcbiAgICAgICAgICAgIG9yZGVyOiAtMTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIH1cblxuICAgICAgICA+ICoge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyAtMTtcbiAgICAgICAgICAgIGdyaWQtcm93OiAxIC8gLTE7XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgQGNvbnRhaW5lciBwcm9kdWN0cy1zZWN0aW9uICh3aWR0aCA+IDU2OXB4KSB7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiBjYWxjKHZhcigtLXRodW1ibmFpbC1wYWRkaW5nKSAqIDAuNSk7XG4gICAgICAgICAgICAgICAgbGVmdDogY2FsYyh2YXIoLS10aHVtYm5haWwtcGFkZGluZykgKiAwLjUpO1xuICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gdmFyKC0tdGh1bWJuYWlsLXBhZGRpbmcpKTtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gdmFyKC0tdGh1bWJuYWlsLXBhZGRpbmcpKTtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLXRodW1ibmFpbC1wYWRkaW5nKSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBjb250YWluZXIgcHJvZHVjdHMtc2VjdGlvbiAod2lkdGggPCA1NzBweCkge1xuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IGNsYW1wKDEycmVtLCAxMnZoLCAxNnJlbSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50aW1lLWxpbWl0ZWQtb2ZmZXJzICYge1xuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogY2FsYyh2YXIoLS10aHVtYm5haWwtcGFkZGluZykgKiAwLjUpO1xuICAgICAgICAgICAgICAgIGxlZnQ6IGNhbGModmFyKC0tdGh1bWJuYWlsLXBhZGRpbmcpICogMC41KTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIHZhcigtLXRodW1ibmFpbC1wYWRkaW5nKSk7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLXRodW1ibmFpbC1wYWRkaW5nKSk7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSB2YXIoLS10aHVtYm5haWwtcGFkZGluZykpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fZmxhZ3Mge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJvdHRvbTogMC41cmVtO1xuICAgICAgICBsZWZ0OiB2YXIoLS10aHVtYm5haWwtcGFkZGluZyk7XG5cbiAgICAgICAgQGNvbnRhaW5lciBwcm9kdWN0cy1zZWN0aW9uICh3aWR0aCA8IDU3MHB4KSB7XG4gICAgICAgICAgICBib3R0b206IDA7XG5cbiAgICAgICAgICAgIC5mbGFncyB7XG4gICAgICAgICAgICAgICAgJl9faXRlbSB7XG4gICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmX190ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA1MDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYXZhaWxhYmlsaXR5IHtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG5cbiAgICAgICAgQGNvbnRhaW5lciBwcm9kdWN0cy1zZWN0aW9uICh3aWR0aCA8IDU3MHB4KSB7XG4gICAgICAgICAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IDEuNXJlbTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuXG4gICAgICAgICAgICAudGltZS1saW1pdGVkLW9mZmVycyAmIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc3RvY2sge1xuICAgICAgICAgICAgJi0tYXZhaWxhYmxlIHtcbiAgICAgICAgICAgICAgICAmLWV4dHJhIHtcbiAgICAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IGluaXRpYWw7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcblxuICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1pbmxpbmU6IDAgMC4zY2g7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX192YXJpYW50cyB7XG4gICAgICAgIGdyaWQtYXJlYTogMSAvIDE7XG4gICAgICAgIHBsYWNlLXNlbGY6IHN0YXJ0O1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgIH1cblxuICAgICZfX3ByaWNlIHtcbiAgICAgICAgLnByb2R1Y3RzLXNlY3Rpb25fX2xpc3QgJixcbiAgICAgICAgLmVtYmxhX19jb250YWluZXI6d2hlcmUoOm5vdCguZW1ibGFfX2NvbnRhaW5lci0tYmFza2V0KSkgJiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczpcbiAgICAgICAgICAgICAgICAncHJpY2UtZGlzY291bnQtaW5mbydcbiAgICAgICAgICAgICAgICAncHJpY2UtZnVsbCdcbiAgICAgICAgICAgICAgICAncHJpY2Utc2F2aW5ncy1pbmZvJztcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgZ3JheS0xNTApO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGRlZmF1bHQtYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IDEuMjVyZW07XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA5cmVtO1xuXG4gICAgICAgICAgICBAY29udGFpbmVyIHByb2R1Y3RzLXNlY3Rpb24gKHdpZHRoIDwgNTcwcHgpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IDAuNXJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgOndoZXJlKC5wcm9kdWN0LWNhcmRfX3ZvdWNoZXIpICsgJiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAwLjI1cmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhhcyguY2FyZC1wcmljZV9fZGlzY291bnQpIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgc2F2aW5ncy1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIHNhdmluZ3MtcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aGFzKC5jYXJkLXByaWNlX19jb25kaXRpb24pIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgdXNlZC1vZmZlcnMtcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCB1c2VkLW9mZmVycy1zZWNvbmRhcnkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnRpbWUtbGltaXRlZC1vZmZlcnMudGltZS1saW1pdGVkLW9mZmVycyAmIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICAgICAgICBib3JkZXI6IGluaXRpYWw7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiBpbml0aWFsO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5pdGlhbDtcbiAgICAgICAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogMDtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19wZXJleCxcbiAgICAmX19wYXJhbWV0ZXJzIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgICBtYXJnaW46IDAgMCAwLjVyZW07XG4gICAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICAgICAgdGV4dC13cmFwOiBpbml0aWFsO1xuXG4gICAgICAgIEBjb250YWluZXIgcHJvZHVjdHMtc2VjdGlvbiAod2lkdGggPCA1NzBweCkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICAgIH1cblxuICAgICAgICAudGltZS1saW1pdGVkLW9mZmVycyAmIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1icy1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3BhcmFtZXRlcnMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgICAgPiAqIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGR0IHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgICAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyBpbmhlcml0O1xuXG4gICAgICAgICAgICB+IGR0OjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcsICc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBkZCB7XG4gICAgICAgICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogMC4zcmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYWRkIHtcbiAgICAgICAgJi1saW5rIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuN3JlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIGF1dG87XG4gICAgICAgICAgICBnYXA6IDAgMC41NWVtO1xuICAgICAgICAgICAgcGFkZGluZy1pbmxpbmU6IDFyZW07XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBhbGlnbi1zZWxmOiBlbmQ7XG5cbiAgICAgICAgICAgIEBjb250YWluZXIgcHJvZHVjdHMtc2VjdGlvbiAod2lkdGggPiA1NjlweCkge1xuICAgICAgICAgICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNjAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAY29udGFpbmVyIHByb2R1Y3RzLXNlY3Rpb24gKHdpZHRoIDwgNTcwcHgpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2RhcmsnKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwMHB4KSB7XG4gICAgICAgICAgICAgICAgZ2FwOiAwIDAuM2VtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICAgICAmX19pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2xpZ2h0Jyk7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBsaW5lYXI7XG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aDogMDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDJyZW07XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMnJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAudGltZS1saW1pdGVkLW9mZmVycyAmIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBlbmQ7XG4gICAgICAgICAgICBwYWRkaW5nLWJsb2NrLXN0YXJ0OiAwLjVyZW07XG4gICAgICAgICAgICBnYXA6IDFyZW07XG4gICAgICAgIH1cblxuICAgICAgICAudGltZS1saW1pdGVkLW9mZmVycyAmIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBjb21wYXJpbmcgYnV0dG9uIHNob3VsZCBiZSBvbmx5IHNob3duIGluIHRoZSBtYWluIHByb2R1Y3QgbGlzdGluZyAoY2F0ZWdvcmllcywgc2VhcmNoIHJlc3VsdHMpXG4gICAgJl9fY29tcGFyZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIGhlaWdodDogNHJlbTtcbiAgICAgICAgbWFyZ2luOiAxcmVtIDAgMCAxcmVtO1xuICAgIH1cblxuICAgIDp3aGVyZShbaWQ9J3NlY3QtY2F0YWxvZyddKSAmX19jb21wYXJlIHtcbiAgICAgICAgJjppcyg6bGluaywgOnZpc2l0ZWQpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZy1pbmxpbmU6IDAuNGVtO1xuICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxO1xuICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ3ByaW1hcnknKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdwcmltYXJ5Jyk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIH1cblxuICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICZfX2ljb24ge1xuICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aDogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMi40cmVtO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMi40cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi0tYWN0aXZlIHtcbiAgICAgICAgICAgICY6aXMoOmxpbmssIDp2aXNpdGVkKSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdwcmltYXJ5LW1pZCcpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fcGF5bWVudC1pbmZvIHtcbiAgICAgICAgZ3JpZC1hcmVhOiBwYXltZW50LWluZm87XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdhcDogMXJlbTtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIDFmcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1zZWxmOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogMXJlbTtcblxuICAgICAgICAmLWxvZ28ge1xuICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDE3cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLXRleHQge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgc2F2aW5ncy1wcmltYXJ5KTtcblxuICAgICAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50aW1lLWxpbWl0ZWQtb2ZmZXJzICYge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3ZvdWNoZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCB2b3VjaGVyLWJnKTtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDFyZW07XG4gICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNjAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgICAgIG1hcmdpbi1ibG9jay1lbmQ6IDFyZW07XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyOiAxcHggZGFzaGVkIG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgcHJpbWFyeSk7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAudGltZS1saW1pdGVkLW9mZmVycyAmIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICA+IHNwYW4ge1xuICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgcHJpbWFyeSk7XG4gICAgICAgIH1cblxuICAgICAgICBlbSB7XG4gICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogaW5oZXJpdDtcblxuICAgICAgICAgICAgLy8gbWFrZSB0aGUgdm91Y2hlciBjb2RlIGNvcHktYWJsZVxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgfVxuXG4gICAgICAgID4gYSB7XG4gICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBkYXJrKTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNDAwO1xuXG4gICAgICAgICAgICAvLyBtYWtlIHRoZSB3aG9sZSBibG9jayBjbGljay1hYmxlXG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGluc2V0OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX29mZmVycyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgdXNlZC1vZmZlcnMtc2Vjb25kYXJ5KTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA1MDA7XG4gICAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogMXJlbTtcblxuICAgICAgICAudGltZS1saW1pdGVkLW9mZmVycyAmIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmLXRyaWdnZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgei1pbmRleDogNTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuM3JlbSAwLjZyZW0gMDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweCA1cHggMCAwO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgbWFwLmdldCgkdGhlbWUtY29sb3JzLCB1c2VkLW9mZmVycy1wcmltYXJ5KTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgYXV0bztcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbiAgICAgICAgICAgIGdhcDogMC41cmVtO1xuICAgICAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6IGluaGVyaXQ7XG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuM3JlbTtcbiAgICAgICAgICAgICAgICByb3RhdGU6IDQ1ZGVnO1xuICAgICAgICAgICAgICAgIHRyYW5zbGF0ZTogMCAtMC4ycmVtO1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogY3VycmVudGNvbG9yO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5pcy1hY3RpdmU6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICByb3RhdGU6IC0xMzVkZWc7XG4gICAgICAgICAgICAgICAgdG9wOiAwLjJyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLWxpc3Qge1xuICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogMGZyO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGdyaWQtdGVtcGxhdGUtcm93cyAwLjJzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgaW5zZXQ6IGNhbGMoMTAwJSAtIDVweCkgMCBhdXRvO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCA1cHggNXB4O1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGxhYmVsLXVzZWQtcHJvZHVjdC1jb2xvcjtcbiAgICAgICAgICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjZyZW0gMC42cmVtIDAuM3JlbTtcbiAgICAgICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNDAwO1xuXG4gICAgICAgICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnI7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkbGFiZWwtdXNlZC1wcm9kdWN0LWNvbG9yO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX29mZmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJGRlZmF1bHQtYm9yZGVyLXJhZGl1cztcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgbWFwLmdldCgkdGhlbWUtY29sb3JzLCBncmF5LTMwMCk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgcGFkZGluZzogMC40NXJlbSAxLjJyZW07XG4gICAgICAgIG1hcmdpbjogNXB4IDA7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICBzcGFuOm5vdCguY3VycmVuY3kpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1wcmljZSB7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA3MDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLy8gc3R5bGVsaW50LWVuYWJsZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG5cbiAgICAmOmhhcygucHJvZHVjdC1jYXJkX19vZmZlcnMtbGlzdC5pcy1hY3RpdmUpIHtcbiAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgIHRyYW5zaXRpb246IDBzIHotaW5kZXggMHMgZWFzZS1pbjtcbiAgICB9XG59XG5cbi8vIGFkZCBzdHlsaW5nIGZvciBwcm9kdWN0IGNhcmQgYWRkLXRvLWNvbXBhcmUgbW9kYWxcbltpZD0nYWRkVG9Db21wYXJlTW9kYWwnXSAucHJvZHVjdC1kZXRhaWxfX2FjdGlvbnMtaWNvbiB7XG4gICAgaGVpZ2h0OiAxLjZyZW07XG4gICAgc3Ryb2tlLXdpZHRoOiAwLjM7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0wLjNlbTtcbiAgICB0b3A6IC0ycHg7XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5cbi5jYXJkLXByaWNlIHtcbiAgICBkaXNwbGF5OiBjb250ZW50cztcblxuICAgIC50aW1lLWxpbWl0ZWQtb2ZmZXJzICYge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgbWFyZ2luLWJsb2NrOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IDAgMC4zcmVtO1xuICAgIH1cblxuICAgICZfX2NvbmRpdGlvbiB7XG4gICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIHVzZWQtb2ZmZXJzLXByaW1hcnkpO1xuICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDcwMDtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgfVxuXG4gICAgJl9fc2F2aW5nIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJGRlZmF1bHQtYm9yZGVyLXJhZGl1cyAqIDAuNTtcbiAgICAgICAgcGFkZGluZzogMnB4IDVweDtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgIGdyaWQtYXJlYTogcHJpY2Utc2F2aW5ncy1pbmZvO1xuXG4gICAgICAgIC8vIGRlZmF1bHQgY29sb3VycyBhcmUgdGhlIHllbGxvdyBib3JkZXIvYmdcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgbWFwLmdldCgkdGhlbWUtY29sb3JzLCBzYXZpbmdzLXNlY29uZGFyeSk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgc2F2aW5ncy1zZWNvbmRhcnkpO1xuICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBiYXNlLXRleHQpO1xuXG4gICAgICAgIDp3aGVyZSgucHJvZHVjdC1jYXJkX19wcmljZTpoYXMoLmNhcmQtcHJpY2VfX2Rpc2NvdW50KSkgJiB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAzLjJyZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgICAgICBAY29udGFpbmVyIHByb2R1Y3RzLXNlY3Rpb24gKHdpZHRoIDwgNTcwcHgpIHtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAyLjc1cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi0tY29uZGl0aW9uIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBncmF5LTE1MCk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRpbWUtbGltaXRlZC1vZmZlcnMgJiB7XG4gICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnaW4tc3RvY2snKTtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbWluLWhlaWdodDogMXB4O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19mdWxsIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA4MDA7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICB0ZXh0LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgZ3JpZC1hcmVhOiBwcmljZS1mdWxsO1xuXG4gICAgICAgIEBjb250YWluZXIgcHJvZHVjdHMtc2VjdGlvbiAod2lkdGggPCA1NzBweCkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgIH1cblxuICAgICAgICA6d2hlcmUoLnByb2R1Y3QtY2FyZF9fcHJpY2U6aGFzKC5jYXJkLXByaWNlX19kaXNjb3VudCkpICYge1xuICAgICAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA3MDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuODVyZW07XG5cbiAgICAgICAgICAgIEBjb250YWluZXIgcHJvZHVjdHMtc2VjdGlvbiAod2lkdGggPCA1NzBweCkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmN1cnJlbmN5IHtcbiAgICAgICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNTAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRpbWUtbGltaXRlZC1vZmZlcnMgJiB7XG4gICAgICAgICAgICBvcmRlcjogLTE7XG4gICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBwcmltYXJ5KTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA3MDA7XG4gICAgICAgIH1cblxuICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogaW5oZXJpdDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2Rpc2NvdW50IHtcbiAgICAgICAgLS1wZXJjZW50LWJnOiAjZmZmO1xuICAgICAgICAtLXBlcmNlbnQtY29sb3I6ICN7bWFwLmdldCgkdGhlbWUtY29sb3JzLCBzYXZpbmdzLXByaW1hcnkpfTtcblxuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyAzMDA7XG4gICAgICAgIG9wYWNpdHk6IDAuOTtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICBncmlkLWFyZWE6IHByaWNlLWRpc2NvdW50LWluZm87XG5cbiAgICAgICAgJi1wZXJjZW50IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXBlcmNlbnQtYmcpO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXBlcmNlbnQtY29sb3IpO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGRlZmF1bHQtYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDFsaDtcbiAgICAgICAgICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiAwLjNlbTtcbiAgICAgICAgICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAwLjVlbTtcbiAgICAgICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNDAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRpbWUtbGltaXRlZC1vZmZlcnMgJiB7XG4gICAgICAgICAgICAtLXBlcmNlbnQtYmc6IHJnYigyNTUsIDI1NSwgMjU1LCAwKTtcbiAgICAgICAgICAgIC0tcGVyY2VudC1jb2xvcjogI3ttYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdncmF5LTcwMCcpfTtcblxuICAgICAgICAgICAgb3BhY2l0eTogMC42O1xuICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2dyYXktNzAwJyk7XG4gICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogaW5oZXJpdDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5wcm9kdWN0LWNhcmQge1xuICAgICZfX3NwZWNpYWwge1xuICAgICAgICAmLS1pbm5lciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIHByaW1hcnktbGlnaHQpO1xuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgbWFwLmdldCgkdGhlbWUtY29sb3JzLCBwcmltYXJ5KTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRkZWZhdWx0LWJvcmRlci1yYWRpdXM7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgZ2FwOiAxLjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiBjbGFtcCgycmVtLCA1dncsIDRyZW0pO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAqIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLWhlYWRpbmcsXG4gICAgICAgICYtLWRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ2xnJykge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHN0YXJ0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi0taGVhZGluZyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIuMnJlbTtcbiAgICAgICAgICAgIHRleHQtd3JhcDogYmFsYW5jZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLWxpbmsge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ2xnJykge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogMTUlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgZ2FwOiAwLjVyZW07XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi1pY29uIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC0xKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkB1c2UgJ3Nhc3M6bWFwJztcblxuJGZsYWdzOiAoXG4gICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ3ByaW1hcnknKVxuKTtcbiRmbGFncy10ZXh0LWNvbG91cnM6IChcbiAgICAxMDA6ICRsYWJlbC11c2VkLXByb2R1Y3QtY29sb3IsXG4gICAgMTAxOiAkbGFiZWwtZ2lmdC1jb2xvclxuKTtcblxuLmZsYWdzIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcGxhY2Utc2VsZjogZW5kO1xuICAgIGdhcDogMC40cmVtO1xuICAgIHotaW5kZXg6IDI7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAmX19pdGVtIHtcbiAgICAgICAgLy8gWzFdIGNhbGN1bGF0ZSB3aGV0aGVyIGNvbnRyYXN0IGNvbG91ciBzaG91bGQgYmUgYmxhY2sgb3Igd2hpdGVcbiAgICAgICAgLS13aGl0ZS1vci1ibGFjazogI3snb2tsY2goZnJvbSB2YXIoLS1mbGFnLWJhY2tncm91bmQpIHJvdW5kKDEuMjEgLSBMKSAwIDApJ307XG5cbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZmxhZy1iYWNrZ3JvdW5kLCAjZmZmKTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBtaW4taGVpZ2h0OiAyLjJyZW07XG4gICAgICAgIHBhZGRpbmc6IDAuM2VtIDAuNmVtO1xuICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogKCRkZWZhdWx0LWJvcmRlci1yYWRpdXMgKiAwLjUpIDAgMCAoJGRlZmF1bHQtYm9yZGVyLXJhZGl1cyAqIDAuNSk7XG4gICAgICAgIHRleHQtd3JhcDogYmFsYW5jZTtcblxuICAgICAgICAvLyBbMl0gZW5zdXJlIHRoYXQgdGhlIHRleHQgY29sb3VyIGhhcyBzdWZmaWNpZW50IGNvbnRyYXN0IHdpdGggdGhlIGJhY2tncm91bmQgY29sb3VyXG4gICAgICAgIC8vIHNlZSBodHRwczovL2Nzcy10cmlja3MuY29tL2FwcHJveGltYXRpbmctY29udHJhc3QtY29sb3Itd2l0aC1vdGhlci1jc3MtZmVhdHVyZXMvI2FhLW9uZS1zdGVwLWZ1cnRoZXJcbiAgICAgICAgY29sb3I6IG1hcC5nZXQoJGZsYWdzLCAnY29sb3InKTsgLy8gZmFsbGJhY2sgMSAtIGNvbG91cnMgZm9yIG5vbi1zdXBwb3J0aW5nIGJyb3dzZXJzXG4gICAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZS1vci1ibGFjayk7IC8vIGZhbGxiYWNrIDIgLSBTYWZhcmkgPCAxOFxuICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZVxuICAgICAgICBjb2xvcjogcmdiKFxuICAgICAgICAgICAgZnJvbSBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0td2hpdGUtb3ItYmxhY2spLCB2YXIoLS1icy1ib2R5LWNvbG9yKSlcbiAgICAgICAgICAgIGNhbGMoMiAqIHIpIGNhbGMoMiAqIGcpIGNhbGMoMiAqIGIpXG4gICAgICAgICk7XG4gICAgICAgIC8vIHN0eWxlbGludC1lbmFibGVcblxuICAgICAgICAvLyBJZiB3ZSBoYXZlIGEgc3BlY2lmaWMgY29sb3VyLCB1c2UgdGhhdCBpbnN0ZWFkIChhc3N1bWUgdGhhdCBzcGVjaWZpZWQgY29sb3VyIGlzIGFjY2Vzc2libGUpXG4gICAgICAgIEBlYWNoICRmbGFnLWxhYmVsLWlkLCAkZmxhZy10ZXh0LWNvbG9yIGluICRmbGFncy10ZXh0LWNvbG91cnMge1xuICAgICAgICAgICAgJltkYXRhLWxhYmVsLWlkPScjeyRmbGFnLWxhYmVsLWlkfSddIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGZsYWctdGV4dC1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYubGFiZWwtZ2lmdCB7XG4gICAgICAgICAgICBjb2xvcjogJGxhYmVsLWdpZnQtY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pY29uIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmX190ZXh0IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNjAwO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxufVxuIiwiQHVzZSAnc2FzczpsaXN0JztcblxuLy8gMS4gdmFsdWU6IGJhY2tncm91bmQtY29sb3IsIDIuIHZhbHVlOiBjb2xvclxuJGZsYWctc3RhdGljLWNvbG9yczogKFxuICAgICdwYWxlYmx1ZSc6IChcbiAgICAgICAgI2Q4ZWRmNyxcbiAgICAgICAgIzAwMFxuICAgIClcbik7XG5cbi5mbGFnLXN0YXRpYyB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAwLjJyZW0gMC41cmVtO1xuICAgIG1pbi1oZWlnaHQ6IDIuMnJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgIGJvcmRlci1yYWRpdXM6ICRkZWZhdWx0LWJvcmRlci1yYWRpdXMgKiAwLjU7XG4gICAgd2lkdGg6IG1heC1jb250ZW50O1xuXG4gICAgJl9fdGV4dCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDYwMDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIEBlYWNoICRuYW1lLCAkY29sb3JzIGluICRmbGFnLXN0YXRpYy1jb2xvcnMge1xuICAgICAgICAmLS0jeyRuYW1lfSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaXN0Lm50aCgkY29sb3JzLCAxKTtcbiAgICAgICAgICAgIGNvbG9yOiBsaXN0Lm50aCgkY29sb3JzLCAyKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkB1c2UgJ3Nhc3M6bWFwJztcblxuLm5hdi1jYXRlZ29yaWVzLWNvbnRhaW5lciB7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG59XG5cbi5tZW51LWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ubWVudSB7XG4gICAgJl9fbGluayB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGhlYWRlci1uYXYtYnJlYWtwb2ludCkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IDVweDtcblxuICAgICAgICAmLS1tYWluIHtcbiAgICAgICAgICAgID4gLm1lbnUge1xuICAgICAgICAgICAgICAgICZfX2l0ZW0ge1xuICAgICAgICAgICAgICAgICAgICA+IC5tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICZfX2xpbmsge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJl9fbGluay10ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIHByaW1hcnkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9faXRlbSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGRlZmF1bHQtYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gMGZyO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAzMHB4IDFmciA0MHB4O1xuICAgICAgICAgICAgYWxpZ24tY29udGVudDogc3RhcnQ7XG4gICAgICAgICAgICBnYXA6IDAgMXJlbTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGdyaWQtdGVtcGxhdGUtcm93cyAwLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgcGFkZGluZy1ibG9jazogOHB4O1xuXG4gICAgICAgICAgICA+IC5zdWJtZW51IHtcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIC0xO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIDFmcjtcblxuICAgICAgICAgICAgICAgID4gLm1lbnUge1xuICAgICAgICAgICAgICAgICAgICAmX19saW5rIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmX19pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtLW5lc3RlZCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBwcmltYXJ5LWxpZ2h0KTtcblxuICAgICAgICAgICAgICAgIC5tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgJl9fbGluay10ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNDAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm5vdCg6aGFzKD4gLm1lbnVfX2xpbmsgLm1lbnVfX2xpbmstaW1nKSkge1xuICAgICAgICAgICAgICAgIC5tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgJl9fbGluay10ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxIC8gMztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2ljb24ge1xuICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ3ByaW1hcnknKTtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAzO1xuICAgICAgICAgICAgaGVpZ2h0OiAxLjRyZW07XG4gICAgICAgICAgICB3aWR0aDogMS40cmVtO1xuICAgICAgICAgICAganVzdGlmeS1zZWxmOiBjZW50ZXI7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2xpbmsge1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDMuNDRyZW07XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxLjVyZW07XG4gICAgICAgICAgICBtYXJnaW4tYmxvY2s6IC03cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBpbmhlcml0O1xuICAgICAgICAgICAgZ2FwOiBpbmhlcml0O1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyAtMTtcbiAgICAgICAgICAgIGdyaWQtcm93OiAxO1xuXG4gICAgICAgICAgICAmOmlzKGEpIHtcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIC0yO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmRlc2t0b3AtbmF2LW9ubHkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgIC5tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgJl9fbGluayB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmLXRleHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6d2hlcmUoOm5vdCg6bGFzdC1jaGlsZCkpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWlubGluZS1lbmQ6IDAuNzVyZW07IC8vIDAuNSBvZiBub3JtYWwgcGFkZGluZ1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLWltZyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDE7XG5cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIG1peC1ibGVuZC1tb2RlOiBtdWx0aXBseTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtdGV4dCB7XG4gICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtLXByaW1hcnkge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA2MDA7XG5cbiAgICAgICAgICAgICAgICAubmF2LXBhZ2VzICYge1xuICAgICAgICAgICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDQwMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtLXNlY29uZGFyeSB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDQwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLW5lc3RlZCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtIGNhbGMoJGNvbnRhaW5lci1wYWRkaW5nLXggLyAyKTtcblxuICAgICAgICAgICAgLm1lbnUge1xuICAgICAgICAgICAgICAgICYtLW5lc3RlZCB7XG4gICAgICAgICAgICAgICAgICAgIGdhcDogMDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1pbmxpbmU6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkaGVhZGVyLW5hdi1icmVha3BvaW50KSB7XG4gICAgICAgICYtLW1haW4ge1xuICAgICAgICAgICAgQGluY2x1ZGUgc2Nyb2xsLXdpdGhvdXQtc2Nyb2xsYmFyO1xuXG4gICAgICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGhlaWdodDogY2FsYygkaGVhZGVyLW5hdi1kZXNrdG9wLWhlaWdodCAtICRoZWFkZXItdG9wLW5hdi1kZXNrdG9wLWhlaWdodCk7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBtYXJnaW46IDAgY2FsYygkbWVudS1pdGVtLWRlc2t0b3AtcGFkZGluZyAqIC0xKTtcblxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ3ByaW1hcnktZGFyaycpO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYygkaGVhZGVyLW5hdi1kZXNrdG9wLWhlaWdodCAtICRoZWFkZXItdG9wLW5hdi1kZXNrdG9wLWhlaWdodCk7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogJGhlYWRlci10b3AtbmF2LWRlc2t0b3AtaGVpZ2h0O1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MHZ3O1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLS1uZXN0ZWQge1xuICAgICAgICAgICAgLm1lbnUge1xuICAgICAgICAgICAgICAgICZfX2xpbms6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAncHJpbWFyeScpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2l0ZW0sXG4gICAgICAgICZfX2xpbmsge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9faXRlbSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuXG4gICAgICAgICAgICAmLS1tYWluIHtcbiAgICAgICAgICAgICAgICAmOmhvdmVyID4gLm1lbnUge1xuICAgICAgICAgICAgICAgICAgICAmX19saW5rIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2xpZ2h0Jyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICA+IC5tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgJl9fbGluayB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAncHJpbWFyeScpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAkbWVudS1pdGVtLWRlc2t0b3AtcGFkZGluZztcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGxpbmVhcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDExMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJi0tcHJpbWFyeSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJi0tc2Vjb25kYXJ5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWVudS1zZWNvbmRhcnktbGlua3MtYmc7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYuaXMtY3VycmVudCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnZGFyaycpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdsaWdodCcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAubWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJl9fbGluay10ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTAyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2xpbmstdGV4dCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2xpbmstaW1nIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNxdWFyZSg0cmVtKTtcblxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG5cbiAgICAgICAgICAgIHBpY3R1cmUsXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNxdWFyZSgxMDAlKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcGljdHVyZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19pY29uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuc3VibWVudSB7XG4gICAgICAgICAgICAmLS1tYWluIHtcbiAgICAgICAgICAgICAgICA+IC5tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgICAgICAgICAgY29sdW1uLWdhcDogMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbiAgICAgICAgICAgICAgICAgICAgZ3JpZC1hdXRvLXJvd3M6IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgPiAubWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmX19pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDAgMXJlbSAyMiU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiAubWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZfX2xpbmsge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi0tbmVzdGVkIHtcbiAgICAgICAgICAgICAgICAubWVudSB7XG4gICAgICAgICAgICAgICAgICAgICZfX2xpbmsge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjRlbSAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbi8vIC5tb2RhbC1vcGVuICAgICAgLSBib2R5IGNsYXNzIGZvciBraWxsaW5nIHRoZSBzY3JvbGxcbi8vIC5tb2RhbCAgICAgICAgICAgLSBjb250YWluZXIgdG8gc2Nyb2xsIHdpdGhpblxuLy8gLm1vZGFsLWRpYWxvZyAgICAtIHBvc2l0aW9uaW5nIHNoZWxsIGZvciB0aGUgYWN0dWFsIG1vZGFsXG4vLyAubW9kYWwtY29udGVudCAgIC0gYWN0dWFsIG1vZGFsIHcvIGJnIGFuZCBjb3JuZXJzIGFuZCBzdHVmZlxuXG5cbi8vIENvbnRhaW5lciB0aGF0IHRoZSBtb2RhbCBzY3JvbGxzIHdpdGhpblxuLm1vZGFsIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG1vZGFsLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW1vZGFsLXppbmRleDogI3skemluZGV4LW1vZGFsfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtd2lkdGg6ICN7JG1vZGFsLW1kfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtcGFkZGluZzogI3skbW9kYWwtaW5uZXItcGFkZGluZ307XG4gIC0tI3skcHJlZml4fW1vZGFsLW1hcmdpbjogI3skbW9kYWwtZGlhbG9nLW1hcmdpbn07XG4gIC0tI3skcHJlZml4fW1vZGFsLWNvbG9yOiAjeyRtb2RhbC1jb250ZW50LWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtYmc6ICN7JG1vZGFsLWNvbnRlbnQtYmd9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1ib3JkZXItY29sb3I6ICN7JG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtYm9yZGVyLXdpZHRoOiAjeyRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fW1vZGFsLWJvcmRlci1yYWRpdXM6ICN7JG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fW1vZGFsLWJveC1zaGFkb3c6ICN7JG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14c307XG4gIC0tI3skcHJlZml4fW1vZGFsLWlubmVyLWJvcmRlci1yYWRpdXM6ICN7JG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXg6ICN7JG1vZGFsLWhlYWRlci1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZy15OiAjeyRtb2RhbC1oZWFkZXItcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmc6ICN7JG1vZGFsLWhlYWRlci1wYWRkaW5nfTsgLy8gVG9kbyBpbiB2NjogU3BsaXQgdGhpcyBwYWRkaW5nIGludG8geCBhbmQgeVxuICAtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAjeyRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogI3skbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fW1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAjeyRtb2RhbC10aXRsZS1saW5lLWhlaWdodH07XG4gIC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1nYXA6ICN7JG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2Vlbn07XG4gIC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1iZzogI3skbW9kYWwtZm9vdGVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogI3skbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGg6ICN7JG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGh9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG1vZGFsLWNzcy12YXJzXG5cbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IHZhcigtLSN7JHByZWZpeH1tb2RhbC16aW5kZXgpO1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIC8vIFByZXZlbnQgQ2hyb21lIG9uIFdpbmRvd3MgZnJvbSBhZGRpbmcgYSBmb2N1cyBvdXRsaW5lLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEwOTUxLlxuICBvdXRsaW5lOiAwO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG9uJ3QgdXNlIGAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7YCBkdWUgdG8gYVxuICAvLyBnbmFybHkgaU9TIFNhZmFyaSBidWc6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTgzNDJcbiAgLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xNzY5NVxufVxuXG4vLyBTaGVsbCBkaXYgdG8gcG9zaXRpb24gdGhlIG1vZGFsIHdpdGggYm90dG9tIHBhZGRpbmdcbi5tb2RhbC1kaWFsb2cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46IHZhcigtLSN7JHByZWZpeH1tb2RhbC1tYXJnaW4pO1xuICAvLyBhbGxvdyBjbGlja3MgdG8gcGFzcyB0aHJvdWdoIGZvciBjdXN0b20gY2xpY2sgaGFuZGxpbmcgdG8gY2xvc2UgbW9kYWxcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgLy8gV2hlbiBmYWRpbmcgaW4gdGhlIG1vZGFsLCBhbmltYXRlIGl0IHRvIHNsaWRlIGRvd25cbiAgLm1vZGFsLmZhZGUgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtZmFkZS10cmFuc2Zvcm07XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkbW9kYWwtdHJhbnNpdGlvbik7XG4gIH1cbiAgLm1vZGFsLnNob3cgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2hvdy10cmFuc2Zvcm07XG4gIH1cblxuICAvLyBXaGVuIHRyeWluZyB0byBjbG9zZSwgYW5pbWF0ZSBmb2N1cyB0byBzY2FsZVxuICAubW9kYWwubW9kYWwtc3RhdGljICYge1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLXNjYWxlLXRyYW5zZm9ybTtcbiAgfVxufVxuXG4ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIHZhcigtLSN7JHByZWZpeH1tb2RhbC1tYXJnaW4pICogMik7XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIC5tb2RhbC1ib2R5IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiBjYWxjKDEwMCUgLSB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtbWFyZ2luKSAqIDIpO1xufVxuXG4vLyBBY3R1YWwgbW9kYWxcbi5tb2RhbC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB3aWR0aDogMTAwJTsgLy8gRW5zdXJlIGAubW9kYWwtY29udGVudGAgZXh0ZW5kcyB0aGUgZnVsbCB3aWR0aCBvZiB0aGUgcGFyZW50IGAubW9kYWwtZGlhbG9nYFxuICAvLyBjb3VudGVyYWN0IHRoZSBwb2ludGVyLWV2ZW50czogbm9uZTsgaW4gdGhlIC5tb2RhbC1kaWFsb2dcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1tb2RhbC1jb2xvcik7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtYmcpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1tb2RhbC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1tb2RhbC1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1tb2RhbC1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tI3skcHJlZml4fW1vZGFsLWJveC1zaGFkb3cpKTtcbiAgLy8gUmVtb3ZlIGZvY3VzIG91dGxpbmUgZnJvbSBvcGVuZWQgbW9kYWxcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gTW9kYWwgYmFja2dyb3VuZFxuLm1vZGFsLWJhY2tkcm9wIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG1vZGFsLWJhY2tkcm9wLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWJhY2tkcm9wLXppbmRleDogI3skemluZGV4LW1vZGFsLWJhY2tkcm9wfTtcbiAgLS0jeyRwcmVmaXh9YmFja2Ryb3AtYmc6ICN7JG1vZGFsLWJhY2tkcm9wLWJnfTtcbiAgLS0jeyRwcmVmaXh9YmFja2Ryb3Atb3BhY2l0eTogI3skbW9kYWwtYmFja2Ryb3Atb3BhY2l0eX07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbW9kYWwtYmFja2Ryb3AtY3NzLXZhcnNcblxuICBAaW5jbHVkZSBvdmVybGF5LWJhY2tkcm9wKHZhcigtLSN7JHByZWZpeH1iYWNrZHJvcC16aW5kZXgpLCB2YXIoLS0jeyRwcmVmaXh9YmFja2Ryb3AtYmcpLCB2YXIoLS0jeyRwcmVmaXh9YmFja2Ryb3Atb3BhY2l0eSkpO1xufVxuXG4vLyBNb2RhbCBoZWFkZXJcbi8vIFRvcCBzZWN0aW9uIG9mIHRoZSBtb2RhbCB3LyB0aXRsZSBhbmQgZGlzbWlzc1xuLm1vZGFsLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcpO1xuICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xuXG4gIC5idG4tY2xvc2Uge1xuICAgIHBhZGRpbmc6IGNhbGModmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXkpICogLjUpIGNhbGModmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXgpICogLjUpO1xuICAgIC8vIFNwbGl0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW52YWxpZCBjYWxjKCkgZnVuY3Rpb24gaWYgdmFsdWUgaXMgMFxuICAgIG1hcmdpbi10b3A6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXkpKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXgpKTtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZy15KSk7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbn1cblxuLy8gVGl0bGUgdGV4dCB3aXRoaW4gaGVhZGVyXG4ubW9kYWwtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogdmFyKC0tI3skcHJlZml4fW1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0KTtcbn1cblxuLy8gTW9kYWwgYm9keVxuLy8gV2hlcmUgYWxsIG1vZGFsIGNvbnRlbnQgcmVzaWRlcyAoc2libGluZyBvZiAubW9kYWwtaGVhZGVyIGFuZCAubW9kYWwtZm9vdGVyKVxuLm1vZGFsLWJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBzbyB0aGF0IHRoZSBib2R5IHRha2UgdXAgYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZVxuICAvLyB3aGVuIHRoZXJlIHNob3VsZCBiZSBhIGZpeGVkIGhlaWdodCBvbiBgLm1vZGFsLWRpYWxvZ2AuXG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtcGFkZGluZyk7XG59XG5cbi8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXG4ubW9kYWwtZm9vdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gdmVydGljYWxseSBjZW50ZXJcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgLy8gUmlnaHQgYWxpZ24gYnV0dG9ucyB3aXRoIGZsZXggcHJvcGVydHkgYmVjYXVzZSB0ZXh0LWFsaWduIGRvZXNuJ3Qgd29yayBvbiBmbGV4IGl0ZW1zXG4gIHBhZGRpbmc6IGNhbGModmFyKC0tI3skcHJlZml4fW1vZGFsLXBhZGRpbmcpIC0gdmFyKC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1nYXApICogLjUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWJnKTtcbiAgYm9yZGVyLXRvcDogdmFyKC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXModmFyKC0tI3skcHJlZml4fW1vZGFsLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcblxuICAvLyBQbGFjZSBtYXJnaW4gYmV0d2VlbiBmb290ZXIgZWxlbWVudHNcbiAgLy8gVGhpcyBzb2x1dGlvbiBpcyBmYXIgZnJvbSBpZGVhbCBiZWNhdXNlIG9mIHRoZSB1bml2ZXJzYWwgc2VsZWN0b3IgdXNhZ2UsXG4gIC8vIGJ1dCBpcyBuZWVkZWQgdG8gZml4IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQ4MDBcbiAgPiAqIHtcbiAgICBtYXJnaW46IGNhbGModmFyKC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1nYXApICogLjUpOyAvLyBUb2RvIGluIHY2OiByZXBsYWNlIHdpdGggZ2FwIG9uIHBhcmVudCBjbGFzc1xuICB9XG59XG5cbi8vIFNjYWxlIHVwIHRoZSBtb2RhbFxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAubW9kYWwge1xuICAgIC0tI3skcHJlZml4fW1vZGFsLW1hcmdpbjogI3skbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwfTtcbiAgICAtLSN7JHByZWZpeH1tb2RhbC1ib3gtc2hhZG93OiAjeyRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXB9O1xuICB9XG5cbiAgLy8gQXV0b21hdGljYWxseSBzZXQgbW9kYWwncyB3aWR0aCBmb3IgbGFyZ2VyIHZpZXdwb3J0c1xuICAubW9kYWwtZGlhbG9nIHtcbiAgICBtYXgtd2lkdGg6IHZhcigtLSN7JHByZWZpeH1tb2RhbC13aWR0aCk7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG5cbiAgLm1vZGFsLXNtIHtcbiAgICAtLSN7JHByZWZpeH1tb2RhbC13aWR0aDogI3skbW9kYWwtc219O1xuICB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgLm1vZGFsLWxnLFxuICAubW9kYWwteGwge1xuICAgIC0tI3skcHJlZml4fW1vZGFsLXdpZHRoOiAjeyRtb2RhbC1sZ307XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAubW9kYWwteGwge1xuICAgIC0tI3skcHJlZml4fW1vZGFsLXdpZHRoOiAjeyRtb2RhbC14bH07XG4gIH1cbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG1vZGFsLWZ1bGxzY3JlZW4tbG9vcFxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICRwb3N0Zml4OiBpZigkaW5maXggIT0gXCJcIiwgJGluZml4ICsgXCItZG93blwiLCBcIlwiKTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAubW9kYWwtZnVsbHNjcmVlbiN7JHBvc3RmaXh9IHtcbiAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG1hcmdpbjogMDtcblxuICAgICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgIH1cblxuICAgICAgLm1vZGFsLWhlYWRlcixcbiAgICAgIC5tb2RhbC1mb290ZXIge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgfVxuXG4gICAgICAubW9kYWwtYm9keSB7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIG1vZGFsLWZ1bGxzY3JlZW4tbG9vcFxuIiwiLy8gU2hhcmVkIGJldHdlZW4gbW9kYWxzIGFuZCBvZmZjYW52YXNlc1xuQG1peGluIG92ZXJsYXktYmFja2Ryb3AoJHppbmRleCwgJGJhY2tkcm9wLWJnLCAkYmFja2Ryb3Atb3BhY2l0eSkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleDtcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2Ryb3AtYmc7XG5cbiAgLy8gRmFkZSBmb3IgYmFja2Ryb3BcbiAgJi5mYWRlIHsgb3BhY2l0eTogMDsgfVxuICAmLnNob3cgeyBvcGFjaXR5OiAkYmFja2Ryb3Atb3BhY2l0eTsgfVxufVxuIiwiQGltcG9ydCAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21vZGFsJztcblxuLm1vZGFsIHtcbiAgICBAaW5jbHVkZSBtb2RhbC12YXJpYWJsZXM7XG5cbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB0b3A6IDAgIWltcG9ydGFudDtcblxuICAgIC5tb2RhbCB7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLW1vZGFsLWluLW1vZGFsLWJhY2tkcm9wLWNvbG9yKTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcblxuICAgICAgICAubW9kYWwtZGlhbG9nIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogOTAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5oaWRlOm5vdCguaW4pIHtcbiAgICAgICAgei1pbmRleDogLTEwMDA7XG4gICAgfVxuXG4gICAgJi1jb250ZW50IHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cblxuICAgICYtZGlhbG9nIHtcbiAgICAgICAgbWF4LWhlaWdodDogY2FsYyh2YXIoLS1icy1tb2RhbC1tYXgtaGVpZ2h0KSAtICh2YXIoLS1icy1tb2RhbC1tYXJnaW4pICsgdmFyKC0tYnMtbW9kYWwtbWFyZ2luKSkpO1xuICAgICAgICBtYXgtd2lkdGg6IDk4dnc7XG4gICAgICAgIHdpZHRoOiB2YXIoLS1icy1tb2RhbC13aWR0aC1kZWZhdWx0KTtcbiAgICAgICAgaW5zZXQ6IGF1dG87XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmcjtcbiAgICB9XG5cbiAgICAmLndpZGUge1xuICAgICAgICAubW9kYWwtZGlhbG9nIHtcbiAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1icy1tb2RhbC13aWR0aC13aWRlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYubmFycm93IHtcbiAgICAgICAgLm1vZGFsLWRpYWxvZyB7XG4gICAgICAgICAgICB3aWR0aDogdmFyKC0tYnMtbW9kYWwtd2lkdGgtbmFycm93KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuZnVsbC1wYWdlLW1vZGFsIHtcbiAgICAgICAgLm1vZGFsLWRpYWxvZyB7XG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMXB4KSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwdncgLSA0MHB4KTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSA0MHB4KTtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAtbW96LWF2YWlsYWJsZTtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAtd2Via2l0LWZpbGwtYXZhaWxhYmxlO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcblxuICAgICAgICAgICAgICAgIC8vIG1vYmlsZS4uLlxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDB2dyAtIDEwcHgpO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxMHB4KTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAubW9kYWwtYm9keSB7XG4gICAgICAgICAgICAgICAgICAgID4gaWZyYW1lIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLy8gaWZyYW1lIGhhcyBjb250ZW50IHRoYXQgc2l0cyB1bmRlciB0aGUgY2xvc2UgYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICYtLWZ1bGwtaGVpZ2h0LWlmcmFtZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogY2FsYyh2YXIoLS1tb2RhbC1wYWRkaW5nLWJsb2NrKSAqIDMpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5mYWRlIHtcbiAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuXG4gICAgICAgICY6bm90KC5pbikge1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICA+IC5tb2RhbC1kaWFsb2cge1xuICAgICAgICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4zcyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICBvcGFjaXR5IDAuM3MgZWFzZS1vdXQ7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5pbiB7XG4gICAgICAgICAgICA+IC5tb2RhbC1kaWFsb2cge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgICAgICAgICAgICAubW9kYWwtY2xvc2Uge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLWJhY2tkcm9wIHtcbiAgICAgICAgJi5mYWRlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGxpbmVhcjtcblxuICAgICAgICAgICAgJi5pbiB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1jbG9zZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IGNhbGModmFyKC0tbW9kYWwtcGFkZGluZy1pbmxpbmUpIC0gOHB4KTtcbiAgICAgICAgdG9wOiB2YXIoLS1tb2RhbC1wYWRkaW5nLWJsb2NrKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zcHgpO1xuICAgICAgICBjb2xvcjogcmdiKDAsIDAsIDAsIDAuNyk7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiByZ2IoMCwgMCwgMCwgMC45KTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2ljb24ge1xuICAgICAgICAgICAgZmlsdGVyOiBkcm9wLXNoYWRvdygwIDAgMXB4ICNmZmYpO1xuICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZmxvYXRpbmctc3Bpbm5lci1jb250YWluZXIge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgaW5zZXQ6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgICAgICAgICBvcGFjaXR5IGVhc2UtaW4gMC4ycyxcbiAgICAgICAgICAgICAgICB6LWluZGV4IDAuMnMgMC4wMXM7XG4gICAgICAgIH1cblxuICAgICAgICAmLnNwaW5uZXItc2hvdyB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC44O1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLXNwaW5uZXIge1xuICAgICAgICAmX19pY29uIHtcbiAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBpbnNldDogMDtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogbW9kYWwtc3Bpbm5lciAwLjc1cyBpbmZpbml0ZSBsaW5lYXI7XG4gICAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlLWluO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1oZWFkZXIge1xuICAgICAgICBwYWRkaW5nOiB2YXIoLS1icy1tb2RhbC1wYWRkaW5nKTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1tb2RhbC1wYWRkaW5nLWlubGluZSkgKyAzMHB4KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzdGFydDtcblxuICAgICAgICAmOmhhcygubW9kYWwtc3ViaGVhZGVyKSB7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLXN1YmhlYWRlciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmb250LXNpemU6IDAuOWVtO1xuICAgIH1cblxuICAgICYtZm9vdGVyLFxuICAgICYtY29udGVudC1mb290ZXIge1xuICAgICAgICBwYWRkaW5nOiB2YXIoLS1icy1tb2RhbC1wYWRkaW5nKTtcbiAgICB9XG5cbiAgICAmLWNvbnRlbnQtZm9vdGVyIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG5cbiAgICAgICAgJi5jZW50ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgZ2FwOiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1ib2R5IHtcbiAgICAgICAgbWluLWhlaWdodDogY2FsYyh2YXIoLS1tb2RhbC1wYWRkaW5nLWJsb2NrKSAqIDIgKyAyNHB4KTsgLy8gYXZvaWQgc3RyYW5nZSwgbWlzYWxpZ25lZCBjbG9zZSBidXR0b24gb24gbG9hZFxuICAgIH1cblxuICAgICYtaGVhZGVyLFxuICAgIC5tb2RhbC1ib2R5IGgxLFxuICAgIC5jb29raWUtY29uc2VudC1oZWFkZXIge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWJzLW1vZGFsLWhlYWRlci1mb250LXNpemUpO1xuICAgIH1cblxuICAgIC8vIHJlc2V0cyBmb3IgZXh0ZXJuYWwgcGFnZXNcbiAgICBbaWQ9J2FqYXhjb250ZW50J10ge1xuICAgICAgICAuYWRtaW4tZWRpdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAuZGVmYXVsdC1wYWdlLFxuICAgICAgICAuYWRtaW4tZWRpdCArICoge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kZWZhdWx0LXBhZ2Uge1xuICAgICAgICAgICAgJl9faGVhZGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDMwcHggdmFyKC0tbW9kYWwtcGFkZGluZy1ibG9jaykgMDtcblxuICAgICAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fY29udGVudCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY29udGFpbmVyIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAmLWhhcy1zY3JvbGwge1xuICAgICAgICAubW9kYWwtZGlhbG9nIHtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgICAgICAgcGFkZGluZy1ibG9jay1lbmQ6IDJyZW07XG4gICAgICAgICAgICBvdmVyc2Nyb2xsLWJlaGF2aW9yOiBjb250YWluO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBwcmV2ZW50IG11bHRpcGxlIHVzZXIgc3VibWl0cyB3aGVuIG1vZGFsIGlzIGxvYWRpbmcuLi5cbi5tb2RhbC1sb2FkaW5nIHtcbiAgICBbdHlwZT0nc3VibWl0J10ge1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgbW9kYWwtc3Bpbm5lciB7XG4gICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKTtcbiAgICB9XG59XG4iLCIubW9kYWwge1xuICAgIC8vIC0tYnMtbW9kYWwtbWFyZ2luIGlzIHVzZWQgZm9yIG1heC1oZWlnaHQgY2FsY3VsYXRpb25cbiAgICAvLyBidXQgaXMgc2V0IHRvIDAgKHdpdGhvdXQgdW5pdCkgd2hpY2ggaXMgbm90IGEgdmFsaWQgdmFsdWUgYW5kIHRoZSBjYWxjIGZ1bmN0aW9uIGlzIG5vdCB3b3JraW5nXG4gICAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGxlbmd0aC16ZXJvLW5vLXVuaXQgKi9cbiAgICAtLWJzLW1vZGFsLW1hcmdpbjogMHB4O1xuXG4gICAgJi1kaWFsb2csXG4gICAgJi1jb250ZW50LFxuICAgIC5tb2RhbCB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRkZWZhdWx0LWJvcmRlci1yYWRpdXM7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgnbGcnKSB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkZGVmYXVsdC1ib3JkZXItcmFkaXVzO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm1vZGFsLWJvZHkge1xuICAgICAgICBAaW5jbHVkZSBjdXN0b20tc2Nyb2xsYmFyLWNvbnRhaW5lcjtcblxuICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgb3ZlcnNjcm9sbC1iZWhhdmlvcjogY29udGFpbjtcbiAgICB9XG5cbiAgICAubW9kYWwtY2xvc2Uge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkMjAwMDA7XG4gICAgICAgIHdpZHRoOiAyLjVyZW07XG4gICAgICAgIGhlaWdodDogMi41cmVtO1xuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAxMnB4O1xuICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ2xnJykge1xuICAgICAgICAgICAgd2lkdGg6IDQuN3JlbTtcbiAgICAgICAgICAgIGhlaWdodDogNC43cmVtO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICB3aWR0aDogMS44cmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAxLjhyZW07XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwLjM1cmVtO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCdsZycpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMi43cmVtO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMi43cmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxLjFyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5cbi5zdWJtZW51IHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRoZWFkZXItbmF2LWJyZWFrcG9pbnQpIHtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDEwMDtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAmLmlzLXZpc2libGUge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAuc3VibWVudSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2hlYWRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fYnRuIHtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBzdGFydDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDEuOHJlbSAxZnI7XG4gICAgICAgICAgICBnYXA6IDFyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIH1cblxuICAgICAgICAmX19saW5rIHtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgcGFkZGluZzogMC40ZW07XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAgICAgICAgICYtLWJhY2sge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLS1zbSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2ljb24ge1xuICAgICAgICAgICAgQGluY2x1ZGUgc3F1YXJlKDEuOHJlbSk7XG5cbiAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdwcmltYXJ5Jyk7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwLjE1cmVtO1xuXG4gICAgICAgICAgICAmLS1iYWNrIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtLW5leHQge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1tYWluIHtcbiAgICAgICAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cykge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogY2FsYygkY29udGFpbmVyLW1heC13aWR0aCAtICRtZW51LWl0ZW0tZGVza3RvcC1wYWRkaW5nKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGhlYWRlci1uYXYtYnJlYWtwb2ludCkge1xuICAgICAgICBAaW5jbHVkZSBjdXN0b20tc2Nyb2xsYmFyLWNvbnRhaW5lcjtcblxuICAgICAgICBvdmVyc2Nyb2xsLWJlaGF2aW9yOiBhdXRvO1xuICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47XG5cbiAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkc2Nyb2xsYmFyLWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gc2hvdyBvbiB0YWJsZXRzXG4gICAgICAgIEBtZWRpYSAoaG92ZXI6IG5vbmUpLCAocG9pbnRlcjogY29hcnNlKSB7XG4gICAgICAgICAgICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHNjcm9sbGJhci1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuc3VibWVudS0tbWFpbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdsaWdodCcpO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgKyA0MHB4KTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYmxvY2s6IC0yMHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAzO1xuICAgICAgICAgICAgZ3JpZC1yb3c6IDEgLyA1MDtcbiAgICAgICAgICAgIGFsaWduLXNlbGY6IHN0YXJ0O1xuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuXG4gICAgICAgICAgICAvLyBGaXggZm9yIGJsdXJyZWQgdGV4dDogZG8gbm90IHRyYW5zaXRpb24gdGhlIGNvbnRlbnQsIHRyYW5zaXRpb24gYW4gb3ZlcmxheVxuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgaW5zZXQ6IDAgMCAwIGNhbGModmFyKC0tbGVmdC1tZW51LXdpZHRoKSArIDMwcHgpOyAvLyBzbGlnaHRseSBsb3dlciB2YWx1ZSwgZW5zdXJlIHdlIGNvdmVyIHRoZSBzaGFkb3dzXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMjU1LCAyNTUsIDEpO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBsaW5lYXI7XG5cbiAgICAgICAgICAgICAgICAvLyBmaXggJ3R3aXRjaGluZycgdGV4dCBwcm9ibGVtIHdpdGggdG9wIGxldmVsIGNhdGVnb3J5IHRleHQgd2hlbiBjaGFuZ2luZyBjYXRlZ29yeSBvbiBTYWZhcmlcbiAgICAgICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeFxuICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5vcGVuIHtcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDExMDtcblxuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLm1lbnUge1xuICAgICAgICAgICAgICAgICAgICAmX19saW5rLWltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gLS1FTkQgRml4IGZvciBibHVycmVkIHRleHRcblxuICAgICAgICAgICAgPiAubWVudSB7XG4gICAgICAgICAgICAgICAgZ2FwOiAyMHB4O1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KG1pbigzNTBweCwgMTAwJSksIDFmcikpO1xuICAgICAgICAgICAgICAgIGdyaWQtYXV0by1yb3dzOiBhdXRvO1xuXG4gICAgICAgICAgICAgICAgPiAubWVudSB7XG4gICAgICAgICAgICAgICAgICAgICZfX2l0ZW0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc21hbGwtYmxvY2stY29tcG9uZW50O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBncmlkLXJvdzogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctaW5saW5lOiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDAsIDguNXJlbSkgMWZyO1xuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIDFmcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtYXV0by1yb3dzOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgZ2FwOiAwIDFyZW07XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6aGFzKC5tZW51X19saW5rLWltZykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogOC41cmVtIDFmcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgPiAubWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJl9fbGluayB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogc3ViZ3JpZDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBzdWJncmlkO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBncmlkLWF1dG8tcm93czogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC1yb3c6IDEgLyBzcGFuIDI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAyO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZfX2xpbmsge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYtdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHN0YXJ0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBncmlkLXJvdzogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDYwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJi1pbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDcuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA3LjVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtcm93OiAxIC8gc3BhbiAyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbWF4LW5lc3RpbmctZGVwdGggKi9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaXgtYmxlbmQtbW9kZTogZGFya2VuO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiAubWVudSB7XG4gICAgICAgICAgICAuc3VibWVudSB7XG4gICAgICAgICAgICAgICAgJi0tbmVzdGVkIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJsb2NrLXN0YXJ0OiAwLjVyZW07XG4gICAgICAgICAgICAgICAgICAgIGdyaWQtcm93OiAyO1xuICAgICAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLm9wZW4gLm1lbnUge1xuICAgICAgICAgICAgLnN1Ym1lbnUge1xuICAgICAgICAgICAgICAgICYtLW5lc3RlZCB7XG4gICAgICAgICAgICAgICAgICAgIC5tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICZfX2xpbmstaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi0tbmVzdGVkIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuNGVtO1xuXG4gICAgICAgICAgICA+IC5tZW51IHtcbiAgICAgICAgICAgICAgICAmLS1uZXN0ZWQge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAyO1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBsaW5rKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5tZW51IHtcbiAgICAgICAgICAgICAgICAmLS1uZXN0ZWQge1xuICAgICAgICAgICAgICAgICAgICA+IC5tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICZfX2l0ZW0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnLFxcMDBhMCc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4taW5saW5lOiAtMC4zZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmX19pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgZmxleDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBtYXgtY29udGVudDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfX2xpbmsge1xuICAgICAgICAgICAgICAgICAgICAmOndoZXJlKDpub3QoLm1vYmlsZS1uYXYtb25seSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDYwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBsaW5rKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi10ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgICAgICAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBoaWRpbmcgZGVlcGVyIHN0cnVjdHVyZSBvZiBzdWJtZW51c1xuICAgICAgICAuc3VibWVudSAuc3VibWVudSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiQHVzZSAnc2FzczptYXAnO1xuXG4uY2F0ZWdvcmllcy1zZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSwgMCk7XG4gICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2RhcmsnKTtcbiAgICBwYWRkaW5nLXRvcDogMDtcblxuICAgICYtLWIge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgneHhsJykge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2xpc3Qge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBnYXA6IDFyZW07XG4gICAgfVxuXG4gICAgJi0tYiAmX19saXN0LFxuICAgICZfX2xpc3Qge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgyNXJlbSwgMWZyKSk7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgneHhsJykge1xuICAgICAgICAgICAgZ2FwOiAzcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCdtZCcpIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDE1LjVyZW0sIDFmcikpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiQHVzZSAnc2FzczptYXAnO1xuXG4kY2F0ZWdvcnktaXRlbTogKFxuICAgIGJnLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdsaWdodCcpLFxuICAgIGJveC1zaGFkb3c6IDAgNXB4IDEwcHggcmdiKDAsIDAsIDAsIDAuMDUpLFxuICAgIGJ0bi1iZy1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAncHJpbWFyeScpLFxuICAgIGJ0bi1pY29uLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdsaWdodCcpLFxuICAgIGJ0bi1ob3Zlci1iZy1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnZGFyaycpLFxuICAgIGhvdmVyLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdwcmltYXJ5Jylcbik7XG5cbi5jYXRlZ29yeS1pdGVtIHtcbiAgICBAaW5jbHVkZSBzbWFsbC1ibG9jay1jb21wb25lbnQoJHJhZGl1czogOHB4KTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bignbWQnKSB7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBwcmltYXJ5LW1pZCk7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBwcmltYXJ5KTtcbiAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgaW5zZXQ6IDA7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIHByaW1hcnkpO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGRlZmF1bHQtYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IGxpbmVhciAwLjE1cztcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgcHJpbWFyeS1taWQpO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQuNHJlbTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgICAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA2MDA7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLXNtICZfX2ltZyB7XG4gICAgICAgIEBpbmNsdWRlIHNxdWFyZSgzZW0pO1xuICAgIH1cblxuICAgICYtLXNtICZfX25hbWUge1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDYwMDtcbiAgICB9XG5cbiAgICAmLS1zbSAmX19saW5rOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IG1hcC5nZXQoJGNhdGVnb3J5LWl0ZW0sICdob3Zlci1jb2xvcicpO1xuICAgIH1cblxuICAgICZfX2xpbmsge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBnYXA6IDFyZW07XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMS40cmVtO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICZfX25hbWUge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA3MDA7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCdtZCcpIHtcbiAgICAgICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2ltZyB7XG4gICAgICAgIEBpbmNsdWRlIHNxdWFyZSg0ZW0pO1xuXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bignbWQnKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgbWFyZ2luOiAtMC43cmVtIDAgLTAuN3JlbSAtMXJlbTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICBwbGFjZS1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICBwaWN0dXJlIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDg1JTtcbiAgICAgICAgICAgICAgICB3aWR0aDogODUlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY2F0ZWdvcmllcy1zZWN0aW9uICYge1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICB3aWR0aDogNC40cmVtO1xuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMTBweDtcbiAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMTEwcHg7XG4gICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgaW5zZXQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19idG4ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cbiIsIkB1c2UgJ3Nhc3M6Y29sb3InO1xuQHVzZSAnc2FzczptYXAnO1xuXG4ubmF2LXRhYnMubmF2LXRhYnMge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ21kJykge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAkZGVmYXVsdC1ib3JkZXItcmFkaXVzO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIHByaW1hcnktbGlnaHQpO1xuICAgICAgICBwYWRkaW5nLWJsb2NrLXN0YXJ0OiAwO1xuICAgICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNzAwO1xuXG4gICAgICAgID4gbGkge1xuICAgICAgICAgICAgZmxleDogMCAxIDIwJTtcbiAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgICAgIG1pbi13aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBwcmltYXJ5LWRhcmspO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkZGVmYXVsdC1ib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiA3cmVtO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvci5hZGp1c3QobWFwLmdldCgkdGhlbWUtY29sb3JzLCBwcmltYXJ5LW1pZCksICRhbHBoYTogLTEpO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgbGluZWFyO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgaW5oZXJpdDtcblxuICAgICAgICAgICAgICAgICY6bGluayxcbiAgICAgICAgICAgICAgICAmOnZpc2l0ZWQsXG4gICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAmOmFjdGl2ZSxcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAmOmFjdGl2ZSxcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBwcmltYXJ5LW1pZCk7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgICAgICAgICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmFjdGl2ZSBhIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGxpZ2h0KTtcbiAgICAgICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgbWFwLmdldCgkdGhlbWUtY29sb3JzLCBwcmltYXJ5LWRhcmspO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4udGFicyB7XG4gICAgJl9fc2VjdGlvbiB7XG4gICAgICAgICYtaGVhZGluZyB7XG4gICAgICAgICAgICAmLS1pbmRpY2F0b3ItaWNvbiB7XG4gICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAxcmVtO1xuXG4gICAgICAgICAgICAgICAgJi5maWxlcyB7XG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aDogMC40O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtaW5uZXItY29udGVudDpub3QoLnNwZWNpZmljaXR5LWZpeCkge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgnbWQnKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ibG9jay1zdGFydDogNnJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkB1c2UgJ3Nhc3M6bWFwJztcblxuLmFkbWluLWVkaXQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBib3R0b206IG1pbigzMHJlbSwgMjB2aCk7XG4gICAgcmlnaHQ6IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKSB0cmFuc2xhdGVZKGNhbGMoNTAlICsgMC40cmVtKSk7IC8vIGJsb2NrLXBhZGRpbmdcbiAgICB6LWluZGV4OiA1O1xuXG4gICAgYSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJGJ0biwgJ2JnLWNvbG9yJyk7XG4gICAgICAgIGNvbG9yOiBtYXAuZ2V0KCRidG4sICdjb2xvcicpO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgcGFkZGluZzogMC4yZW0gMC42ZW07XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbiAgICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgICAgIGNvbG9yIDAuMTVzIGxpbmVhcixcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgMC4xNXMgbGluZWFyO1xuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMsXG4gICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJGJ0biwgJ2hvdmVyLWJnLWNvbG9yJyk7XG4gICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkYnRuLCAnaG92ZXItY29sb3InKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkB1c2UgJ3Nhc3M6bWFwJztcblxuJG1vcmU6IChcbiAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnbGluaycpLFxuICAgIGFycm93LWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdwcmltYXJ5JylcbikgIWRlZmF1bHQ7XG5cbi5tb3JlIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXG4gICAgJl9faWNvbiB7XG4gICAgICAgIEBpbmNsdWRlIHNxdWFyZSgwLjhyZW0pO1xuXG4gICAgICAgIGNvbG9yOiBtYXAuZ2V0KCRtb3JlLCAnYXJyb3ctY29sb3InKTtcbiAgICAgICAgc3Ryb2tlLXdpZHRoOiAzO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMC40cmVtKTtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhcjtcbiAgICB9XG5cbiAgICBAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICAgICAgICAmOmhvdmVyICZfX2ljb24ge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAuOHJlbSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIubW9yZSB7XG4gICAgJi5idG4ge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLm1vcmUge1xuICAgICAgICAgICAgJl9fdGV4dCB7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjpyb290IHtcbiAgICAtLW1pbmltdW0tY2FyZC13aWR0aDogMjgwcHg7XG4gICAgLS1nYXAtc2l6ZTogI3tjYWxjKCRjb250YWluZXItcGFkZGluZy14IC8gMyl9O1xuICAgIC0tcHJvZHVjdC1jYXJkLWdyaWQtcm93czogMjdyZW0gYXV0byBhdXRvIGF1dG8gYXV0byBhdXRvIGF1dG8gYXV0byBhdXRvIGF1dG8gYXV0bztcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ21kJykge1xuICAgICAgICAtLWdhcC1zaXplOiAycmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ3h4bCcpIHtcbiAgICAgICAgLS1nYXAtc2l6ZTogNHJlbTtcbiAgICB9XG59XG5cbi5wcm9kdWN0cy1zZWN0aW9uIHtcbiAgICBjb250YWluZXItbmFtZTogcHJvZHVjdHMtc2VjdGlvbjtcbiAgICBjb250YWluZXItdHlwZTogaW5saW5lLXNpemU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAmX190eXBvIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA3MDA7XG4gICAgfVxuXG4gICAgJl9fbGlzdCB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdhcDogMCB2YXIoLS1nYXAtc2l6ZSk7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KG1pbih2YXIoLS1taW5pbXVtLWNhcmQtd2lkdGgpLCAxMDAlKSwgMWZyKSk7XG5cbiAgICAgICAgQGNvbnRhaW5lciBwcm9kdWN0cy1zZWN0aW9uICh3aWR0aCA+IDU2OS45OTlweCkge1xuICAgICAgICAgICAgZ3JpZC1hdXRvLXJvd3M6IHZhcigtLXByb2R1Y3QtY2FyZC1ncmlkLXJvd3MpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tcGx1cy1pdGVtIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ3NtJykge1xuICAgICAgICAgICAgICAgIC0tbWluaW11bS1jYXJkLXdpZHRoOiBjbGFtcCgxNjhweCwgMTZ2dywgMzE3cHgpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCd4eGwnKSB7XG4gICAgICAgICAgICAgICAgLS1taW5pbXVtLWNhcmQtd2lkdGg6IGNsYW1wKDE2OHB4LCAxOXZ3LCAzMTdweCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bignbGcnKSB7XG4gICAgICAgICAgICAgICAgLS1nYXAtc2l6ZTogMnJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgIGdhcDogdmFyKC0tZ2FwLXNpemUpO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCdsZycpIHtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciB2YXIoLS1taW5pbXVtLWNhcmQtd2lkdGgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGNvbnRhaW5lciBwcm9kdWN0cy1zZWN0aW9uICh3aWR0aCA8IDM3NHB4KSB7XG4gICAgICAgICAgICAtLWdhcC1zaXplOiA1cmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiQHVzZSAnc2FzczptYXAnO1xuXG4ucHJvZHVjZXJzLXNlY3Rpb24ge1xuICAgICZfX2NvbnRlbnQge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDcwMDtcbiAgICB9XG5cbiAgICAmX19zbGlkZXIge1xuICAgICAgICAuZW1ibGEge1xuICAgICAgICAgICAgJl9fY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgZ2FwOiAyMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19zbGlkZSB7XG4gICAgICAgICAgICAgICAgZmxleDogMCAwIGNhbGMoY2xhbXAoMS41cmVtLCAzdncsIDQuOTVyZW0pICsgMTAwcHgpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19idXR0b25zIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgYm90dG9tOiA1MCU7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUwJSk7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICAgICAgICAgICAgICAgJjpoYXMoLmVtYmxhX19idXR0b24tLXByZXY6ZGlzYWJsZWQpOmhhcyguZW1ibGFfX2J1dHRvbi0tbmV4dDpkaXNhYmxlZCkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bignbWQnKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19idXR0b24ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGRlZmF1bHQtYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDRweCAxMHB4IDAgcmdiKDAsIDAsIDAsIDAuMDgpO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzZweDtcbiAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctaW5saW5lOiAxNHB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkB1c2UgJ3Nhc3M6bWFwJztcblxuLnByb2R1Y2VyLWl0ZW0ge1xuICAgIGhlaWdodDogNnJlbTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bignbWQnKSB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuXG4gICAgJl9faW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDBweDtcbiAgICB9XG5cbiAgICAmX19uYW1lIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIH1cblxuICAgICZfX2xpbmsge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeFxuICAgICAgICAgICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGdyYXlzY2FsZSgxKTtcbiAgICAgICAgICAgIGJhY2tkcm9wLWZpbHRlcjogZ3JheXNjYWxlKDEpO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgZWFzZS1vdXQgMC4xNXM7XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogc2NhbGUtZG93bjtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCdtZCcpIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgKHBvaW50ZXI6IGZpbmUpIHtcbiAgICAgICAgICAgICY6bGluayxcbiAgICAgICAgICAgICY6dmlzaXRlZCB7XG4gICAgICAgICAgICAgICAgLnByb2R1Y2VyLWl0ZW0ge1xuICAgICAgICAgICAgICAgICAgICAmX19pbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSBlYXNlLW91dCAwLjE1cztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMsXG4gICAgICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5wcm9kdWNlci1pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgJl9faW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmX19uYW1lIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLnBvc3RzLXNlY3Rpb24ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCd4eGwnKSB7XG4gICAgICAgICZfX3R5cG8ge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGluaXRpYWw7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX190aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA3MDA7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgnbGcnKSB7XG4gICAgICAgICAgICBtYXJnaW4tYmxvY2stZW5kOiA1cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbW9yZSB7XG4gICAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogMDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIC5tb3JlIHtcbiAgICAgICAgICAgICYuYnRuIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDQuMnJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9faWNvbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wb3N0cy1zbGlkZXIgLmVtYmxhIHtcbiAgICAgICAgJl9fdmlld3BvcnQge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCdtZCcpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjYwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fY29udGFpbmVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ21kJykge1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5cbi5wb3N0LWl0ZW0ge1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBtYXgtd2lkdGg6IDQwcmVtO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICZfX2hlYWRlciB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb3JkZXI6IC0yO1xuXG4gICAgICAgICYtLWhhcy1pbWcge1xuICAgICAgICAgICAgaGVpZ2h0OiAxOHJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2ltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRkZWZhdWx0LWJvcmRlci1yYWRpdXM7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faGVhZGxpbmUge1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA1MDA7XG4gICAgICAgIG1hcmdpbjogMS42cmVtIDAgMS40cmVtO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ3h4bCcpIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19saW5rIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG5cbiAgICAmX19kYXRlIHtcbiAgICAgICAgLnBvc3QtaXRlbSAmIHtcbiAgICAgICAgICAgIG9yZGVyOiAtMTtcbiAgICAgICAgICAgIG1hcmdpbjogMS42cmVtIDAgMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgb3BhY2l0eTogMC43O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fcGVyZXgge1xuICAgICAgICBtYXJnaW4tdG9wOiAwLjhlbTtcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgICAgIC13ZWJraXQtbGluZS1jbGFtcDogNjtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIG9wYWNpdHk6IDAuNztcbiAgICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAwO1xuXG4gICAgICAgICogKyAqIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuNmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2hlYWRlci0taGFzLWltZyB+IC5wb3N0LWl0ZW1fX3BlcmV4IHtcbiAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAzO1xuICAgIH1cblxuICAgIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gICAgICAgICZfX2ltZyB7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjhzIGVhc2U7XG4gICAgICAgICAgICAgICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlciBpbWcge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2xpbmsge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdGV4dC1kZWNvcmF0aW9uLWNvbG9yIDAuMTVzIGxpbmVhcjtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHZhbHVlLWtleXdvcmQtY2FzZVxuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogY3VycmVudENvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgneGwnKSB7XG4gICAgICAgICZfX2hlYWRlci0taGFzLWltZyB7XG4gICAgICAgICAgICBoZWlnaHQ6IDI0cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgneHhsJykge1xuICAgICAgICAmX19oZWFkZXItLWhhcy1pbWcge1xuICAgICAgICAgICAgaGVpZ2h0OiAyN3JlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vICZfX2hlYWRsaW5lIHtcbiAgICAgICAgLy8gICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIC8vIH1cbiAgICB9XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5cbi5iZW5lZml0cy1zZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbml0aWFsO1xuICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdkYXJrJyk7XG4gICAgcGFkZGluZy1ibG9jazogMnJlbSA2cmVtO1xuXG4gICAgJl9fbGlzdCB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgobWluKDIwMHB4LCAxMDAlKSwgMWZyKSk7XG4gICAgICAgIGdhcDogY2xhbXAoM3JlbSwgNXZ3LCA2cmVtKTtcbiAgICB9XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5cbi5iZW5lZml0LWl0ZW0ge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGdhcDogY2xhbXAoMC41cmVtLCAydncsIDJyZW0pO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogYXV0bztcblxuICAgIHAge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDQwMDtcbiAgICAgICAgdGV4dC13cmFwOiBiYWxhbmNlO1xuICAgICAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gICAgfVxuXG4gICAgJl9fbmFtZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA3MDA7XG4gICAgICAgIHRleHQtd3JhcDogYmFsYW5jZTtcbiAgICAgICAgd29yZC1icmVhazogbm9ybWFsO1xuXG4gICAgICAgICsgcCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBjb250ZW50cztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2ljb24ge1xuICAgICAgICBAaW5jbHVkZSBzcXVhcmUoNS41cmVtKTtcblxuICAgICAgICBzdHJva2U6IG5vbmU7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgICAgaGVpZ2h0OiA3MHB4O1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgb3JkZXI6IC0xO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ21kJykge1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgfVxufVxuIiwiQHVzZSAnc2FzczptYXAnO1xuXG4uYnJlYWRjcnVtYnMge1xuICAgIC0tb3ZlcmZsb3ctYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMjU1LCAyNTUsIDEpO1xuXG4gICAgZm9udC1zaXplOiBjbGFtcCgxcmVtLCAwLjcyODZyZW0gKyAwLjU2NTR2dywgMS40cmVtKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgIC8vIGhpZGUgdGhlIHNjcm9sbGJhciBmb3IgRmlyZWZveFxuICAgIHNjcm9sbGJhci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4taW5saW5lOiBjYWxjKHZhcigtLWJzLWd1dHRlci14KSAqIC0wLjUpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyB2YXIoLS1icy1ndXR0ZXIteCkpO1xuICAgIG1heC13aWR0aDogbWF4LWNvbnRlbnQgIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICBwYWRkaW5nOiAwIGNhbGModmFyKC0tYnMtZ3V0dGVyLXgpICogMC41KTtcbiAgICBkaXJlY3Rpb246IHJ0bDtcblxuICAgIC8vIGhpZGUgdGhlIHNjcm9sbGJhciBmb3Igd2Via2l0L2JsaW5rIGJyb3dzZXJzXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgfVxuXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIH1cblxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbm9uZTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgIH1cblxuICAgICYtc2VjdGlvbiB7XG4gICAgICAgIHBhZGRpbmc6IDAuOWVtIDA7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCd4eGwnKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjNlbSAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gc2hhZG93XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgcmdiKDI1NSwgMjU1LCAyNTUsIDEpIDAsIHJnYigyNTUsIDI1NSwgMjU1LCAwKSAyOHB4LCByZ2IoMjU1LCAyNTUsIDI1NSwgMCkgY2FsYygxMDAlIC0gMjhweCksIHJnYigyNTUsIDI1NSwgMjU1LCAxKSAxMDAlKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCdtZCcpIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgcmdiKDI1NSwgMjU1LCAyNTUsIDEpIDAsIHJnYigyNTUsIDI1NSwgMjU1LCAwKSAxOHB4LCByZ2IoMjU1LCAyNTUsIDI1NSwgMCkgY2FsYygxMDAlIC0gMThweCksIHJnYigyNTUsIDI1NSwgMjU1LCAxKSAxMDAlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxuXG4gICAgJl9faXRlbSB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGRpcmVjdGlvbjogbHRyO1xuICAgICAgICBvcmRlcjogY2FsYyh2YXIoLS1vcmRlcikgKiAtMSk7XG5cbiAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJGJyZWFkY3J1bWJzLCAnYWN0aXZlLWNvbG9yJyk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKHZhcigtLWJzLWd1dHRlci14KSAqIDAuNSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKHZhcigtLWJzLWd1dHRlci14KSAqIDAuNSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19saW5rLFxuICAgICZfX2l0ZW0gPiBzcGFuIHtcbiAgICAgICAgcGFkZGluZzogMC40cmVtIDA7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGdhcDogMCAwLjc1cmVtO1xuICAgIH1cblxuICAgICZfX2xpbmsge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCdtZCcpIHtcbiAgICAgICAgICAgICAgICAgICAgLmQtbWQtbm9uZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2hvdXNlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHN0cm9rZS13aWR0aDogMDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgYWxpZ24tc2VsZjogYmFzZWxpbmU7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCdtZCcpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgICAgICAgYWxpZ24tc2VsZjogc3RhcnQ7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB0b3A6IDJweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2Fycm93IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMCAxLjRyZW07XG4gICAgICAgIHN0cm9rZS13aWR0aDogMDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB3aWR0aDogYXV0bztcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJ21kJykge1xuICAgICAgICAgICAgJjpub3QoLnNwZWNpZmljaXR5LWZpeCkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGhlaWdodDogNnB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1pbmxpbmU6IDFyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtLWJhY2sge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAwLjhyZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6IDAuOHJlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bignbWQnKSB7XG4gICAgICAgIC5kLW1kLW5vbmUge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6d2hlcmUoOm5vdCg6aGFzKC5icmVhZGNydW1iLXByb2R1Y3QpKSkge1xuICAgICAgICAgICAgLmJyZWFkY3J1bWJzX19pdGVtIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICAgICAgJjpudGgtbGFzdC1jaGlsZCgyKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjp3aGVyZSg6aGFzKC5icmVhZGNydW1iLXByb2R1Y3QpKSB7XG4gICAgICAgICAgICAuYnJlYWRjcnVtYnNfX2l0ZW0ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAmOm50aC1sYXN0LWNoaWxkKDMpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgKGhvdmVyOiBub25lKSwgKHBvaW50ZXI6IGNvYXJzZSksIChtYXgtd2lkdGg6ICN7bWFwLmdldCgkZ3JpZC1icmVha3BvaW50cywgbWQpfSkge1xuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcblxuICAgICAgICAmOndoZXJlKDpub3QoOmhhcyguYnJlYWRjcnVtYi1wcm9kdWN0KSkpIC5icmVhZGNydW1ic19faXRlbSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLnByb21vIHtcbiAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuIiwiQHVzZSAnc2FzczptYXAnO1xuXG4uZHJvcGRvd24tY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5kcm9wZG93biB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnbGlnaHQnKTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMTAwJTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDBzIGxpbmVhcjtcbiAgICB6LWluZGV4OiAxMzA7XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgICYuaXMtdmlzaWJsZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IDNweCByZ2IoMCwgMCwgMCwgMC4wNSk7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgbGluZWFyO1xuICAgIH1cbn1cbiIsIi5kcm9wZG93bi1idG4ge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgcGFkZGluZzogMC41ZW0gMDtcblxuICAgICZfX2ljb24ge1xuICAgICAgICBAaW5jbHVkZSBzcXVhcmUoMC45ZW0pO1xuXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjVlbTtcbiAgICAgICAgc3Ryb2tlLXdpZHRoOiAxO1xuICAgIH1cbn1cbiIsIkB1c2UgJ3Nhc3M6bWFwJztcblxuLnNvcnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDEwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAmX19yb3cge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBoZWlnaHQ6IDNlbTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmX19jb2wge1xuICAgICAgICAmLS1mb3VuZC1wcm9kdWN0cyB7XG4gICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnZ3JheS02MDAnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bignbWQnKSB7XG4gICAgICAgICZfX3JvdyArICZfX3JvdyB7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnZ3JheS0yMDAnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ21kJykge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnZ3JheS0yMDAnKTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0yMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fcm93IHtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2NvbCArICZfX2NvbCB7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2dyYXktMjAwJyk7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vIG92ZXJyaWRlcyBmcm9tIGRlZmF1bHQuIElmIHRoZXJlIGFyZSBtb3JlIG1vZGlmaWNhdGlvbnMsIG1vdmUgdGhlIGRlZmF1bHQgcnVsZXMgb3ZlciBoZXJlIVxuLnNvcnQge1xuICAgICZfX3JvdyB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bignbGcnKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5cbi5wcm9kdWN0LWF2YWlsYWJpbGl0eSB7XG4gICAgY29sb3I6ICRwcm9kdWN0LWF2YWlsYWJpbGl0eTtcbiAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDUwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0ZXh0LXdyYXA6IGJhbGFuY2U7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICBzdHJvbmcge1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIH1cbn1cblxuLnN0b2NrIHtcbiAgICAmLS1hdmFpbGFibGUge1xuICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBpbi1zdG9jayk7XG5cbiAgICAgICAgJi1leHRyYSB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgdGV4dC13cmFwOiBiYWxhbmNlO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRleHQtdG9wO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcrJztcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWlubGluZTogMC41Y2g7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuanMtYnJhbmNoZXMtYXZhaWxhYmlsaXR5IHtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMC41cmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogLTAuNXJlbTtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBwcmltYXJ5LWRhcmspO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ2xnJykge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tdW5hdmFpbGFibGUge1xuICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBvdXQtb2Ytc3RvY2spO1xuICAgIH1cblxuICAgICYtLXByZW9yZGVyIHtcbiAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgcHJlb3JkZXIpO1xuICAgIH1cbn1cblxuLmRlbGl2ZXJ5LWRhdGUge1xuICAgICZfX3JlYWR5LWZvci1waWNrdXAge1xuICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBpbi1zdG9jayk7XG4gICAgfVxuXG4gICAgJl9fdW5hdmFpbGFibGUsXG4gICAgJl9fdW5rbm93biB7XG4gICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIG91dC1vZi1zdG9jayk7XG4gICAgfVxufVxuXG4ubW9kYWwucHJvZHVjdC1kZWxpdmVyeS1kYXRlcy1tb2RhbCB7XG4gICAgLm1vZGFsLWJvZHkge1xuICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICAgIGRsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBnYXA6IDFyZW07XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggZGFzaGVkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogY29sb3ItbWl4KGluIHNyZ2IsICMwMDhkZDIgMzAlLCB0cmFuc3BhcmVudCk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG5cbiAgICAgICAgICAgIGR0IHtcbiAgICAgICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDcwMDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgIHRleHQtd3JhcDogYmFsYW5jZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDUwMDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgIHRleHQtd3JhcDogYmFsYW5jZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBkbCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkB1c2UgJ3Nhc3M6bWFwJztcblxuLnJlc3VsdHMge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1hcmdpbjogM3JlbSAwO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCdsZycpIHtcbiAgICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAwO1xuICAgIH1cblxuICAgICZfX2Zvb3RlciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgICAgIGdhcDogMnJlbSAxcmVtO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ3h4bCcpIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIGF1dG8gMWZyO1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhIChob3ZlcjogaG92ZXIpIGFuZCAobWluLXdpZHRoOiBtYXAuZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCAnbGcnKSkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogOHJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtY291bnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBncmlkLXJvdzogMjtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAyO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG5cbiAgICAgICAgICAgICYtaXRlbSB7XG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogYXR0cihkYXRhLWNvdW50KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ21kJykge1xuICAgICAgICAgICAgICAgIGdyaWQtcm93OiAxO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLWNlbGwge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCd4eGwnKSB7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgICAgICAgICAgJi0tbGVmdCB7XG4gICAgICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxIC8gMjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLS1taWQge1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDIgLyAzO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYtLXJpZ2h0IHtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDMgLyA0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ21kJykge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogOHJlbTtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnI7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1jZWxsLS1yaWdodCB7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGVuZDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bignbWQnKSB7XG4gICAgICAgICAgICAmLWNlbGwtLW1pZCB7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzdGFydDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkB1c2UgJ3Nhc3M6bWFwJztcblxuJHBhZ2luYXRpb246IChcbiAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAncHJpbWFyeScpLFxuICAgIGFjdGl2ZS1iZy1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnZ3JheS0xMDAnKSxcbiAgICBhY3RpdmUtY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2RhcmsnKSxcbiAgICBuYXYtYmctY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2dyYXktMTAwJyksXG4gICAgbmF2LWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdwcmltYXJ5JyksXG4gICAgbmF2LWRpc2FibGVkLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdncmF5LTYwMCcpXG4pO1xuXG4ucGFnaW5hdGlvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgJl9faXRlbSB7XG4gICAgICAgICsgLnBhZ2luYXRpb24ge1xuICAgICAgICAgICAgJl9faXRlbSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi0taW5mbyB7XG4gICAgICAgICAgICBvcmRlcjogLTE7XG4gICAgICAgICAgICBtYXJnaW4taW5saW5lLWVuZDogMXJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG5cbiAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICBhcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDNyZW07XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzLjJyZW07XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnZ3JheS0yMDAnKTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkZGVmYXVsdC1ib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgICY6Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24sXG4gICAgICAgICAgICAgICAgJjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmVycm9yIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdkYW5nZXInKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ21kJykge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuXG4gICAgICAgICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNC40cmVtO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQuNnJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLS1hY3Rpb24ge1xuICAgICAgICAgICAgJjppcyg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICAucGFnaW5hdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgICZfX25hdiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkZGVmYXVsdC1ib3JkZXItcmFkaXVzIDAgMCAkZGVmYXVsdC1ib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmlzKDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgLnBhZ2luYXRpb24ge1xuICAgICAgICAgICAgICAgICAgICAmX19uYXYge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCAkZGVmYXVsdC1ib3JkZXItcmFkaXVzICRkZWZhdWx0LWJvcmRlci1yYWRpdXMgMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnBhZ2luYXRpb24ge1xuICAgICAgICAgICAgICAgICZfX25hdjppcyhhKSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJGJ0biwgJ2JnLWNvbG9yJyk7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCRidG4sICdjb2xvcicpO1xuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXMsXG4gICAgICAgICAgICAgICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJGJ0biwgJ2hvdmVyLWJnLWNvbG9yJyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmX19uYXY6aXMoc3Bhbikge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdwcmltYXJ5LW1pZCcpO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnbGlnaHQnKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19uYXYge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCRwYWdpbmF0aW9uLCAnbmF2LWJnLWNvbG9yJyk7XG4gICAgICAgIGNvbG9yOiBtYXAuZ2V0KCRwYWdpbmF0aW9uLCAnbmF2LWNvbG9yJyk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB3aWR0aDogM3JlbTtcbiAgICAgICAgaGVpZ2h0OiAzLjJyZW07XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgnbWQnKSB7XG4gICAgICAgICAgICB3aWR0aDogNC41cmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiA0cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faWNvbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMXJlbTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBzdHJva2Utd2lkdGg6IDA7XG5cbiAgICAgICAgJi0tcHJldiB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmLS1uZXh0IHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLTEpO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgnbWQnKSB7XG4gICAgICAgICAgICB3aWR0aDogMnJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5kcm9wZG93bi1saXN0IHtcbiAgICAmX19pdGVtIHtcbiAgICAgICAgJiArICYge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMC4yZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19saW5rIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDAuM2VtIDA7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLmNvbW1hLWxpc3Qge1xuICAgID4gbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJywgJztcbiAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjNlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZDo6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkB1c2UgJ3Nhc3M6bWFwJztcblxuLnBpcGUtbGlzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZ2FwOiAwIDAuNHJlbTtcblxuICAgID4gKiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGdhcDogMCAwLjRyZW07XG5cbiAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vdC1ub3RhdGlvblxuICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJ3wnO1xuICAgICAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGdyYXktNDAwKTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuOGVtO1xuICAgICAgICAgICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkB1c2UgJ3Nhc3M6bWFwJztcbkB1c2UgJ3Nhc3M6Y29sb3InO1xuXG4uY2hlY2tib3gge1xuICAgICRkaW1lbnNpb25zOiAxOHB4O1xuXG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBnYXA6IDAgMC43NWVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6ICRkaW1lbnNpb25zIDFmcjtcblxuICAgICYtLWlubGluZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ncmlkO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG5cbiAgICAgICAgKyAqIHtcbiAgICAgICAgICAgIG1hcmdpbi1ibG9jazogMDtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vdC1ub3RhdGlvblxuICAgICAgICAuY2hlY2tib3hfX2lucHV0OndoZXJlKDpub3QoW3JlYWRvbmx5XSk6bm90KFtkaXNhYmxlZF0pKSxcbiAgICAgICAgLnJhZGlvX19pbnB1dDp3aGVyZSg6bm90KFtyZWFkb25seV0pOm5vdChbZGlzYWJsZWRdKSkge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgfVxuICAgICAgICAvLyBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW5vdC1ub3RhdGlvblxuICAgIH1cblxuICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgICAgJl9faW5wdXQsXG4gICAgICAgIC5yYWRpb19faW5wdXQge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2lucHV0LFxuICAgIC5yYWRpb19faW5wdXQge1xuICAgICAgICAtLWlucHV0LWJnLWNvbG9yOiB2YXIoLS1pbnB1dC1jb2xvciwgI3skbGlnaHR9KTtcbiAgICAgICAgLS1pbnB1dC1ib3JkZXItY29sb3I6IHZhcigtLWlucHV0LWNvbG9yLCBjb2xvci1taXgoaW4gc3JnYiwgI3skcHJpbWFyeX0gMzAlLCAjZmZmKSk7XG5cbiAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeFxuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgLy8gc3R5bGVsaW50LWVuYWJsZSBwcm9wZXJ0eS1uby12ZW5kb3ItcHJlZml4XG4gICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIGdyaWQtY29sdW1uOiAxO1xuICAgICAgICBncmlkLXJvdzogMTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBoZWlnaHQ6ICRkaW1lbnNpb25zO1xuICAgICAgICB3aWR0aDogJGRpbWVuc2lvbnM7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWlucHV0LWJnLWNvbG9yKTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0taW5wdXQtYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuXG4gICAgICAgIH4gKiB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogMjtcbiAgICAgICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Y2hlY2tlZDpub3QoOmRpc2FibGVkKSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcblxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnZ3JheS0xMDAnKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWN0aXZlOndoZXJlKDpub3QoOmRpc2FibGVkKSkge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6d2hlcmUoOm5vdCg6ZGlzYWJsZWQpKSB7XG4gICAgICAgICAgICAmLFxuICAgICAgICAgICAgfiAuY2hlY2tib3hfX3RleHQge1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6d2hlcmUoOmRpc2FibGVkKSB7XG4gICAgICAgICAgICAmLFxuICAgICAgICAgICAgfiAuY2hlY2tib3hfX3RleHQge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2lucHV0IHtcbiAgICAgICAgJjpjaGVja2VkOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5O1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS1jaGVja2JveC1jaGVjayk7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDk1JTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgICAgICArIC5jaGVja2JveF9fdGV4dCB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDYwMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnk7XG5cbiAgICAgICAgICAgICAgICAuY2hlY2tib3hfX3RleHQtLWNvdW50IHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA0MDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnJhZGlvIHtcbiAgICAgICAgJl9faW5wdXQge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGRpbWVuc2lvbnMgKiAwLjU7XG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAoJGRpbWVuc2lvbnMgLSA4cHgpICogMC41O1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGluc2V0OiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgICAgICBoZWlnaHQ6ICRkaW1lbnNpb25zIC0gMTBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogJGRpbWVuc2lvbnMgLSAxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGV4dCB7XG4gICAgICAgIG1hcmdpbi1ibG9jazogMDtcblxuICAgICAgICAmLS1jb3VudCB7XG4gICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBncmF5LTQwMCk7XG4gICAgICAgICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiAwLjVyZW07XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICsgLmhpbnQge1xuICAgICAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IDA7XG4gICAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IGNhbGMoMXB4ICsgMjRweCArIDAuNzVlbSk7XG4gICAgfVxuXG4gICAgfiAuZXJyb3JzIHtcbiAgICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogY2FsYygxcHggKyAyNHB4ICsgMC43NWVtKTtcbiAgICB9XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5cbi5jb2x1bW4taXRlbXMge1xuICAgICYtZHluYW1pYyB7XG4gICAgICAgIC0tY29sdW1uLWNvdW50OiA0O1xuICAgICAgICAtLWNvbHVtbi13aWR0aDogMjAwcHg7XG5cbiAgICAgICAgY29sdW1uLWdhcDogMzBweDtcbiAgICAgICAgY29sdW1uczogdmFyKC0tY29sdW1uLWNvdW50KSB2YXIoLS1jb2x1bW4td2lkdGgpO1xuXG4gICAgICAgICYtLXRyaWdnZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgLmJ0bi0tbW9yZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgbGluayk7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICAuYnRuX19pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogMDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDAuOHJlbTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAwLjhyZW07XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIHByaW1hcnkpO1xuICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg6IDM7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZykgdHJhbnNsYXRlWSgwLjRyZW0pO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgbGluZWFyO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogY3VycmVudGNvbG9yO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgLmJ0bl9faWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpIHRyYW5zbGF0ZVkoMC44cmVtKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIHdlIGRvbid0IHdhbnQgYSBzaW5nbGUgaG9yaXpvbnRhbCBsaW5lIG9mIGl0ZW1zLCBzbyBpZiB0aGVyZSBhcmUgZmV3ZXIgdGhhbiA1Li4uXG4gICAgICAgIC5jb2x1bW4taXRlbXMge1xuICAgICAgICAgICAgJl9faXRlbSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJsb2NrLWVuZDogMC41cmVtO1xuXG4gICAgICAgICAgICAgICAgJjpudGgtbGFzdC1jaGlsZCg0KTpmaXJzdC1jaGlsZCxcbiAgICAgICAgICAgICAgICAmOm50aC1sYXN0LWNoaWxkKDMpOmZpcnN0LWNoaWxkLFxuICAgICAgICAgICAgICAgICY6bnRoLWxhc3QtY2hpbGQoMik6Zmlyc3QtY2hpbGQsXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgJixcbiAgICAgICAgICAgICAgICAgICAgfiAqIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbHVtbi1zcGFuOiBhbGw7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCguc2hvdy1hbGwtaXRlbXMpIHtcbiAgICAgICAgICAgIC5jb2x1bW4taXRlbXNfX2l0ZW0tLWhpZGUge1xuICAgICAgICAgICAgICAgIEBleHRlbmQgJXNyLW9ubHk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIGZhbGxiYWNrIGluIGNhc2UgSlMgaXMgbm90IHdvcmtpbmdcbiAgICAgICAgICAgICY6bm90KC5jb2x1bW4taXRlbXMtZHluYW1pYy1hY3RpdmUpIHtcbiAgICAgICAgICAgICAgICAuY29sdW1uLWl0ZW1zX19pdGVtLS1oaWRlIHtcbiAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uOiBzaG93LWFsbC1pdGVtcyAwcyBsaW5lYXIgNXMgbm9ybWFsIGZvcndhcmRzO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNvbHVtbi1pdGVtcy1keW5hbWljLS10cmlnZ2VyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAje21hcC5nZXQoJGdyaWQtYnJlYWtwb2ludHMsIHMpfSkgYW5kIChtYXgtd2lkdGg6ICN7bWFwLmdldCgkZ3JpZC1icmVha3BvaW50cywgbWQpIC0gMX0pIHtcbiAgICAgICAgICAgIC0tY29sdW1uLWNvdW50OiAyO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNob3ctYWxsLWl0ZW1zIHtcbiAgICAwJSxcbiAgICAxMDAlIHtcbiAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LW5vLWRlcHJlY2F0ZWRcbiAgICAgICAgY2xpcDogcmV2ZXJ0O1xuICAgICAgICBjbGlwLXBhdGg6IHJldmVydDtcbiAgICAgICAgaGVpZ2h0OiByZXZlcnQ7XG4gICAgICAgIHdpZHRoOiByZXZlcnQ7XG4gICAgICAgIG92ZXJmbG93OiByZXZlcnQ7XG4gICAgICAgIHBvc2l0aW9uOiByZXZlcnQ7XG4gICAgICAgIHdoaXRlLXNwYWNlOiByZXZlcnQ7XG4gICAgfVxufVxuIiwiQHVzZSAnc2FzczptYXAnO1xuXG4ubWVzc2FnZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiAje21hcC5nZXQoJHRoZW1lLWNvbG9ycywgZ3JheS0xMDApfTtcbiAgICAtLXRleHQtY29sb3I6ICN7bWFwLmdldCgkdGhlbWUtY29sb3JzLCBkYXJrKX07XG4gICAgLS1pY29uLWJhY2tncm91bmQtY29sb3I6ICN7bWFwLmdldCgkdGhlbWUtY29sb3JzLCBncmF5LTYwMCl9O1xuICAgIC0taWNvbjogdXJsKCcnKTtcblxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtY29sb3IpO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcbiAgICBwYWRkaW5nOiAycmVtIDIuNnJlbSAycmVtIGNhbGMoMy42cmVtICsgMjRweCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiAwIDFyZW07XG5cbiAgICAmLmVycm9yLFxuICAgICYuZm9ybS1lcnJvci1tZXNzYWdlIHtcbiAgICAgICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiAje21hcC5nZXQoJHRoZW1lLWNvbG9ycywgZGFuZ2VyLWJnKX07XG4gICAgICAgIC0taWNvbi1iYWNrZ3JvdW5kLWNvbG9yOiAje21hcC5nZXQoJHRoZW1lLWNvbG9ycywgZGFuZ2VyKX07XG5cbiAgICAgICAgLy8gI2ljb24tZXJyb3JcbiAgICAgICAgLS1pY29uOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzE2JyBoZWlnaHQ9JzE2JyB2aWV3Qm94PScwIDAgMTYgMTYnJTNFJTNDcGF0aCBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGZpbGw9JyUyM2ZmZicgZD0nbTggOS40MTQtNC4yOTMgNC4yOTMtMS40MTQtMS40MTRMNi41ODYgOCAyLjI5MyAzLjcwN2wxLjQxNC0xLjQxNEw4IDYuNTg2bDQuMjkzLTQuMjkzIDEuNDE0IDEuNDE0TDkuNDE0IDhsNC4yOTMgNC4yOTMtMS40MTQgMS40MTRMOCA5LjQxNHonLyUzRSUzQy9zdmclM0VcIik7XG4gICAgfVxuXG4gICAgJi5ub3RpY2Uge1xuICAgICAgICAtLWJhY2tncm91bmQtY29sb3I6ICN7bWFwLmdldCgkdGhlbWUtY29sb3JzLCBpbmZvLWJnKX07XG4gICAgICAgIC0taWNvbi1iYWNrZ3JvdW5kLWNvbG9yOiAje21hcC5nZXQoJHRoZW1lLWNvbG9ycywgd2FybmluZyl9O1xuICAgICAgICAtLWljb246IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMjQgMjQnJTNFJTNDcGF0aCBmaWxsPSclMjNmZmYnIGQ9J00xMiAxMGExIDEgMCAwIDAtMSAxdjZhMSAxIDAgMCAwIDIgMHYtNmExIDEgMCAwIDAtMS0xWm0wLTRhMS4yNSAxLjI1IDAgMSAwIDEuMjUgMS4yNUExLjI1IDEuMjUgMCAwIDAgMTIgNlonLyUzRSUzQy9zdmclM0VcIik7XG4gICAgfVxuXG4gICAgJi5vayB7XG4gICAgICAgIC0tYmFja2dyb3VuZC1jb2xvcjogI3ttYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIHN1Y2Nlc3MtYmcpfTtcbiAgICAgICAgLS1pY29uLWJhY2tncm91bmQtY29sb3I6ICN7bWFwLmdldCgkdGhlbWUtY29sb3JzLCBzdWNjZXNzKX07XG4gICAgICAgIC0taWNvbjogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxNicgaGVpZ2h0PScxNicgZmlsbD0nbm9uZScgc3Ryb2tlPSclMjNmZmYnIHN0cm9rZS13aWR0aD0nMycgdmlld0JveD0nLTYgLTYgMjQgMjQnJTNFJTNDcGF0aCBkPSdNMjAgNiA5IDE3bC01LTUnLyUzRSUzQy9zdmclM0VcIik7XG5cbiAgICAgICAgLmZhOjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGxlZnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZmEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pY29uLWJhY2tncm91bmQtY29sb3IpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMnJlbTtcbiAgICAgICAgbGVmdDogMnJlbTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLFxuICAgIC5tZXNzYWdlLWlubmVyLFxuICAgIC5tc2ctaW5uZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgICAgID4gKjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgPiAqOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgJixcbiAgICAgICAgICAgID4gKjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgICBmb250LXNpemU6IDEuMmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgfVxuXG4gICAgLmFsZXJ0LWFjdGlvbnMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgZ2FwOiAwIDFyZW07XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBvdmVyZmxvdy13cmFwOiBub3JtYWw7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb250YWluZXIge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgIC5tZXNzYWdlIHtcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkB1c2UgJ3Nhc3M6bWFwJztcblxuLmZsb2F0aW5nLXNwaW5uZXItY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuZmxvYXRpbmctc3Bpbm5lciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAzMHB4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuXG4gICAgJi5zcGlubmVyLXNob3cge1xuICAgICAgICAubXNnLW92ZXJsYXkge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgaW5zZXQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogOTBweDsgLy8gc3Bpbm5lciB0b3AgKyBoZWlnaHQgKyAnc3BhY2luZydcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG4gICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnZ3JheS02MDAnKTtcbiAgICAgICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJixcbiAgICAmLS1wYWdlIHtcbiAgICAgICAgLmZsb2F0aW5nLXNwaW5uZXIge1xuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgICAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSBlYXNlLWluIDAuMTVzO1xuICAgICAgICAgICAgd2lkdGg6IG1heC1jb250ZW50O1xuXG4gICAgICAgICAgICA+IHN2ZyB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgICAgICAgIGZpbGw6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2dyYXktNDAwJyk7XG4gICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5zcGlubmVyLXNob3cge1xuICAgICAgICAgICAgLmZsb2F0aW5nLXNwaW5uZXIge1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogc3Bpbm5lci1hbmltYXRpb24gMC43NXMgaW5maW5pdGUgbGluZWFyO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLXBhZ2Uge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCwgMCwgMCwgMC41KTtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICBpbnNldDogMDtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgei1pbmRleDogLTEwO1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICB0cmFuc2l0aW9uOlxuICAgICAgICAgICAgb3BhY2l0eSAwLjE1cyBsaW5lYXIsXG4gICAgICAgICAgICB6LWluZGV4IDBzIGxpbmVhciAwLjE1cztcblxuICAgICAgICAuZmxvYXRpbmctc3Bpbm5lciB7XG4gICAgICAgICAgICBwbGFjZS1zZWxmOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zcGlubmVyLXNob3cge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHotaW5kZXg6IDk5OTk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOlxuICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4xNXMgbGluZWFyLFxuICAgICAgICAgICAgICAgIHotaW5kZXggMC4xNXMgbGluZWFyIDBzO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNwaW5uZXItYW5pbWF0aW9uIHtcbiAgICAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB9XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5cbi5zZWxlY3QyIHtcbiAgICAmLXNlbGVjdGlvbixcbiAgICAmLWNvbnRhaW5lciB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IG1hcC5nZXQoJGlucHV0LCAnYm9yZGVyLXJhZGl1cycpICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJi1zZWxlY3Rpb24ge1xuICAgICAgICAmX19hcnJvdyB7XG4gICAgICAgICAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmctYmxvY2s6IDRweDtcbiAgICAgICAgICAgIGhlaWdodDogY2FsYygzLjhyZW0gLSAycHgpICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAmLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgICAgICAgICAgICYtLXNpbmdsZSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzLjhyZW0gIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgIC5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgICZfX3JlbmRlcmVkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYmxvY2s6IDRweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX3BsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC45ZW0gIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtY29udGFpbmVyIHtcbiAgICAgICAgJi0tb3BlbiB7XG4gICAgICAgICAgICAuc2VsZWN0Mi1kcm9wZG93biB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiQHVzZSAnc2FzczptYXAnO1xuXG4uaG9tZS1zaG9wcyB7XG4gICAgJl9fd3JhcHBlciB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdhcDogMnJlbTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCdtZCcpIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMi4wNmZyIDFmcjtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ3h4bCcpIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMS43NWZyIHJlcGVhdCg0LCAxZnIpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmljb24tYXJyb3ctcmlnaHQge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgICAgICBnYXA6IDAgMC41cmVtO1xuXG4gICAgICAgICAgICAuc3ZnLWljb24ge1xuICAgICAgICAgICAgICAgIG9yZGVyOiA1MDtcbiAgICAgICAgICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAwLjhlbTtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICBhc3BlY3QtcmF0aW86IDE7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHRvcDogLTFweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5tYWluLWJsb2NrIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgZ3JheS0xMDApO1xuICAgICAgICAgICAgcGFkZGluZzogM3JlbTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IHN0YXJ0O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkZGVmYXVsdC1ib3JkZXItcmFkaXVzO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJ21kJykge1xuICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiBzcGFuIDI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDM2cHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDcwMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCArIHAge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zaG9wcy1tYXAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNzAwO1xuICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgcHJpbWFyeSk7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCdtZCcpIHtcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogc3BhbiAyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAqIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDY4JTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJsb2NrLWVuZDogMnJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgID4gdWwge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgobWluKDIwMHB4LCAxMDAlKSwgMWZyKSk7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogc3BhbiAyO1xuICAgICAgICAgICAgZ2FwOiAycmVtO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCdtZCcpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCd4eGwnKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogY29udGVudHM7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGxpIGEge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGRlZmF1bHQtYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAgICAgICAgID4gKixcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMTtcbiAgICAgICAgICAgICAgICAgICAgZ3JpZC1yb3c6IDE7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYigwLCAwLCAwLCAwKSAwJSwgcmdiKDAsIDAsIDAsIDAuNSkgMTAwJSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcGljdHVyZSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1zZWxmOiBlbmQ7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxLjZyZW07XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgICAgICAgICB3aWxsLWNoYW5nZTogdHJhbnNsYXRlO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2xhdGUgMC4ycyBlYXNlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNsYXRlOiAwIC0wLjVyZW07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuYXNzb2NpYXRpb25zIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGdyYXktMTAwKTtcbiAgICBib3JkZXItcmFkaXVzOiAkZGVmYXVsdC1ib3JkZXItcmFkaXVzO1xuICAgIHBhZGRpbmc6IGNsYW1wKDJyZW0sIDN2dywgNnJlbSkgY2xhbXAoMXJlbSwgMnZ3LCAzcmVtKSBjbGFtcCgycmVtLCAzdncsIDZyZW0pIGNsYW1wKDJyZW0sIDN2dywgNnJlbSk7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xuXG4gICAgJl9fbGlzdCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgZ2FwOiBjbGFtcCgxcmVtLCAydncsIDJyZW0pO1xuXG4gICAgICAgID4gKiB7XG4gICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgbWluLXdpZHRoOiBtYXgtY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vIEFic3RyYWN0c1xuQGltcG9ydCAnLi4vLi4vYXBwL2Fic3RyYWN0cy9taXhpbnMnO1xuXG4ubmV3c2xldHRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBwcmltYXJ5KTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBib3JkZXItcmFkaXVzOiAkZGVmYXVsdC1ib3JkZXItcmFkaXVzO1xuICAgIHBhZGRpbmc6IGNsYW1wKDJyZW0sIDN2dywgNXJlbSkgY2xhbXAoMnJlbSwgM3Z3LCA1cmVtKSBjbGFtcCgycmVtLCAzdncsIDVyZW0pIGNsYW1wKDNyZW0sIDV2dywgOHJlbSk7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KG1pbigyMjBweCwgMTAwJSksIDFmcikpO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAycmVtO1xuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgZm9udC1zaXplOiAzLjZyZW07XG4gICAgfVxuXG4gICAgJl9faW5mbyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDYwMDtcbiAgICB9XG5cbiAgICAuZm9ybS1pbnB1dCB7XG4gICAgICAgIEBpbmNsdWRlIHJlc2V0LWZvcm0taW5wdXQ7XG5cbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICZfX2xhYmVsIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IDFyZW07XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDNyZW07XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA0MDA7XG4gICAgICAgICAgICBjb2xvcjogY3VycmVudGNvbG9yO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgICAgICAgICAgICAgbGVmdDogMS40cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmZvcm0tZmllbGQge1xuICAgICAgICAgICAgJixcbiAgICAgICAgICAgICYtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi0tc20ge1xuICAgICAgICAgICAgICAgIGhlaWdodDogM3JlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9faW5wdXQge1xuICAgICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuXG4gICAgICAgICAgICAgICAgJjotd2Via2l0LWF1dG9maWxsIHtcbiAgICAgICAgICAgICAgICAgICAgJixcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAgICAgJjphY3RpdmUsXG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSkgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDI1NSwgMjU1LCAwKSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciA1MDAwcyBlYXNlLWluLW91dCAwcztcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXhcbiAgICAgICAgICAgICAgICAgICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDAgNDBweCByZ2IoMjU1LCAyNTUsIDI1NSwgMCkgaW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gc3R5bGVsaW50LWVuYWJsZSBwcm9wZXJ0eS1uby12ZW5kb3ItcHJlZml4XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmhhcyhpbnB1dDpmb2N1cykge1xuICAgICAgICAgICAgLmZvcm0tZmllbGQtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpoYXMoaW5wdXQ6cGxhY2Vob2xkZXItc2hvd246bm90KDpmb2N1cykpIHtcbiAgICAgICAgICAgIC5mb3JtLWlucHV0IHtcbiAgICAgICAgICAgICAgICAmX19sYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNztcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2UtaW47XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjp3aGVyZSg6bm90KDpoYXMoW2Rpc2FibGVkXSkpKSB7XG4gICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cy13aXRoaW4ge1xuICAgICAgICAgICAgICAgIC5mb3JtLWlucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgJl9fbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuZm9ybS1maWVsZC1jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IG1hcC5nZXQoJGlucHV0LCAnYm9yZGVyLWNvbG9yJyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgW3R5cGU9J3N1Ym1pdCddIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNTAwO1xuXG4gICAgICAgICY6d2hlcmUoOm5vdCg6aG92ZXIpKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdsaWdodCcpO1xuICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ3ByaW1hcnknKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5kZWZhdWx0LXBhZ2Uge1xuICAgICZfX2hlYWRlciB7XG4gICAgICAgIGJvZHkgJiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgcGFkZGluZy1ibG9jay1lbmQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tYmxvY2s6IDA7XG5cbiAgICAgICAgICAgICY6aGFzKCsgLmNhbnZhcykge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ibG9jazogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsImRldGFpbHMge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgcGFkZGluZy1ibG9jazogMXJlbTtcblxuICAgICY6OmRldGFpbHMtY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogMGZyO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0cmFuc2l0aW9uOiBncmlkLXRlbXBsYXRlLXJvd3MgMC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgY29udGVudC12aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICB3aWxsLWNoYW5nZTogY29udGVudHM7XG4gICAgfVxuXG4gICAgZGl2IHtcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2UtaW4tb3V0O1xuXG4gICAgICAgID4gOndoZXJlKGgyLCBoMywgaDQsIGg1LCBoNiwgcCwgb2wsIHVsLCBkbCkgKyAqIHtcbiAgICAgICAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogY2xhbXAoMXJlbSwgMi44MnZpICsgLTAuMTdyZW0sIDJyZW0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJltvcGVuXSB7XG4gICAgICAgICY6OmRldGFpbHMtY29udGVudCB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmcjtcbiAgICAgICAgfVxuXG4gICAgICAgIGRpdiB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2Utb3V0O1xuICAgICAgICB9XG4gICAgfVxufVxuXG5zdW1tYXJ5IHtcbiAgICBkaXNwbGF5OiBncmlkOyAvLyBoaWRlcyB0aGUgc3VtbWFyeSdzIDo6bWFya2VyIHBzZXVkby1lbGVtZW50XG4gICAgZ3JpZC1hdXRvLWZsb3c6IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0O1xuICAgIGdhcDogMCAzcmVtO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgZm9udC1zaXplOiBjbGFtcCgxLjZyZW0sIDMuMzl2aSArIDAuMnJlbSwgMi44cmVtKTtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDE7XG4gICAgICAgIGdyaWQtcm93OiAxO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IC0wLjFlbTtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLWluLW91dDtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnKyc7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnLSc7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgW29wZW5dICYge1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mYXEge1xuICAgIHBhZGRpbmctYmxvY2s6IGNsYW1wKDZyZW0sIDExLjN2aSArIDEuMzJyZW0sIDEwcmVtKTtcblxuICAgIGRldGFpbHMge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAkZGVmYXVsdC1ib3JkZXItcmFkaXVzO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGRhcmstc2VtaS10cmFuc3ApO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGluc2V0OiAtMXB4O1xuICAgICAgICAgICAgYm9yZGVyOiAzcHggc29saWQgdmFyKC0tZmFxLXRoZW1lLCAje21hcC5nZXQoJHRoZW1lLWNvbG9ycywgcHJpbWFyeSl9KTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRkZWZhdWx0LWJvcmRlci1yYWRpdXM7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmW29wZW5dOjphZnRlciB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgKyBkZXRhaWxzIHtcbiAgICAgICAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogMS41cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc3VtbWFyeSB7XG4gICAgICAgIHBhZGRpbmc6IDFyZW0gM3JlbTtcbiAgICAgICAgZm9udC1zaXplOiBjbGFtcCgxLjZyZW0sIDAuNTZ2aSArIDEuMzdyZW0sIDEuOHJlbSk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGRhcmspO1xuICAgIH1cblxuICAgIGRpdiB7XG4gICAgICAgIHBhZGRpbmctaW5saW5lOiAzcmVtO1xuXG4gICAgICAgIC8vIGJvdHRvbSBwYWRkaW5nIGhhY2suLi5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAwO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZGV0YWlsc1tvcGVuXSB7XG4gICAgICAgIHN1bW1hcnkge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWZhcS10aGVtZSwgI3ttYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIHByaW1hcnkpfSk7XG4gICAgICAgIH1cblxuICAgICAgICBkaXY6OmFmdGVyIHtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuc3VnZ2VzdGlvbnMge1xuICAgIG1heC13aWR0aDogbWFwLmdldCgkZ3JpZC1icmVha3BvaW50cywgZGVza3RvcCk7XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICBib3JkZXItcmFkaXVzOiAkZGVmYXVsdC1ib3JkZXItcmFkaXVzO1xuXG4gICAgJl9faW5uZXIge1xuICAgICAgICBAaW5jbHVkZSBjdXN0b20tc2Nyb2xsYmFyLWNvbnRhaW5lcjtcblxuICAgICAgICBib3JkZXItcmFkaXVzOiAkZGVmYXVsdC1ib3JkZXItcmFkaXVzO1xuICAgIH1cblxuICAgICYuc3VnZ2VzdGlvbnMge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRoZWFkZXItbmF2LWJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgIHRvcDogMTAwJTtcblxuICAgICAgICAgICAgJjpub3QoOmVtcHR5KSB7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDIwcHggMCByZ2IoMCwgMCwgMCwgMC4xKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkaGVhZGVyLW5hdi1icmVha3BvaW50KSB7XG4gICAgICAgICAgICAuc3VnZ2VzdGlvbnMge1xuICAgICAgICAgICAgICAgICZfX2lubmVyIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1pbmxpbmU6IGNhbGModmFyKC0tYnMtZ3V0dGVyLXgpICogMC41KTtcblxuICAgICAgICAgICAgICAgICAgICAuc3VnZ2VzdC1zZWN0aW9uLnN1Z2dlc3QtcHJvZHVjdHMge1xuICAgICAgICAgICAgICAgICAgICAgICAgLnN1Z2dlc3QtbmFtZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDUwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLnN1Z2dlc3QtdGh1bWIgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA4MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnN1Z2dlc3Rpb25zIHtcbiAgICAgICAgJl9fY2xvc2Uge1xuICAgICAgICAgICAgJi1pY29uIHtcbiAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg6IDAuNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLmVycm9yLXBhZ2Uge1xuICAgIC5wcm9kdWN0cy1zZWN0aW9uIHtcbiAgICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAkc3BhY2VyICogNjtcblxuICAgICAgICAmX19saXN0IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ3NtJykge1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKipcbiAqIFJldHJpZXZlcyB0aGUgbmV4dCBzbWFsbGVyIGJyZWFrcG9pbnQgZnJvbSB0aGUgZ2l2ZW4gYnJlYWtwb2ludC5cbiAqXG4gKiBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgLSBUaGUgYnJlYWtwb2ludCBmb3Igd2hpY2ggdG8gZmluZCB0aGUgbmV4dCBzbWFsbGVyIGJyZWFrcG9pbnQuXG4gKiBAcmV0dXJuIHtTdHJpbmd8bnVsbH0gLSBUaGUgbmV4dCBzbWFsbGVyIGJyZWFrcG9pbnQsIG9yIG51bGwgaWYgbm8gc21hbGxlciBicmVha3BvaW50IGlzIGF2YWlsYWJsZS5cbiAqL1xuLyoqXG4gKiBSZXRyaWV2ZXMgdGhlIG5leHQgbGFyZ2VyIGJyZWFrcG9pbnQgZnJvbSB0aGUgJGdyaWQtYnJlYWtwb2ludHMgbWFwLlxuICpcbiAqIEBmdW5jdGlvbiBnZXQtYmlnZ2VyLWJyZWFrcG9pbnRcbiAqIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCAtIFRoZSBjdXJyZW50IGJyZWFrcG9pbnQgdG8gZmluZCB0aGUgbmV4dCBsYXJnZXIgb25lIGZvci5cbiAqIEByZXR1cm4ge1N0cmluZyB8IG51bGx9IC0gVGhlIG5leHQgbGFyZ2VyIGJyZWFrcG9pbnQgb3IgbnVsbCBpZiB0aGUgY3VycmVudCBicmVha3BvaW50IGlzIHRoZSBsYXJnZXN0IG9yIG5vdCBmb3VuZC5cbiAqL1xuLyoqXG4gKiBSZXNldCBpU3BhY2UgY3VzdG9tIGZvcm0gaW5wdXQgc3R5bGVzIHRvIGJlIGFibGUgdG8gZGVzaWduIHNwZWNpYWwgaW5wdXRzIG1vcmUgZWFzaWx5XG4gKi9cbi8qKlxuICogU3R5bGVzIHRvIGhpZGUgdGhlIHNjcm9sbGJhciBidXQgc3RpbGwgYWxsb3cgc2Nyb2xsaW5nXG4gKi9cbi5lcnJvci1wYWdlIC5wcm9kdWN0cy1zZWN0aW9uIHtcbiAgbWFyZ2luLWJsb2NrLXN0YXJ0OiA2cmVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5lcnJvci1wYWdlIC5wcm9kdWN0cy1zZWN0aW9uX19saXN0IHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpO1xuICB9XG59Il0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6W10sInNvdXJjZVJvb3QiOiIifQ==*/