/*!***************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/app.scss ***!
  \***************************************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
/**
 * Libs
 */
/*!
 * Bootstrap v5.1.3 (https://getbootstrap.com/)
 * Copyright 2011-2021 The Bootstrap Authors
 * Copyright 2011-2021 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */
:root {
  --bs-blue: #0d6efd;
  --bs-indigo: #6610f2;
  --bs-purple: #6f42c1;
  --bs-pink: #d63384;
  --bs-red: #dc3545;
  --bs-orange: #fd7e14;
  --bs-yellow: #ffc107;
  --bs-green: #198754;
  --bs-teal: #20c997;
  --bs-cyan: #0dcaf0;
  --bs-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: #0d6efd;
  --bs-secondary: #6c757d;
  --bs-success: #198754;
  --bs-info: #0dcaf0;
  --bs-warning: #ffc107;
  --bs-danger: #dc3545;
  --bs-light: #f8f9fa;
  --bs-dark: #212529;
  --bs-primary-rgb: 13, 110, 253;
  --bs-secondary-rgb: 108, 117, 125;
  --bs-success-rgb: 25, 135, 84;
  --bs-info-rgb: 13, 202, 240;
  --bs-warning-rgb: 255, 193, 7;
  --bs-danger-rgb: 220, 53, 69;
  --bs-light-rgb: 248, 249, 250;
  --bs-dark-rgb: 33, 37, 41;
  --bs-white-rgb: 255, 255, 255;
  --bs-black-rgb: 0, 0, 0;
  --bs-body-color-rgb: 33, 37, 41;
  --bs-body-bg-rgb: 255, 255, 255;
  --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
  --bs-body-font-family: var(--bs-font-sans-serif);
  --bs-body-font-size: 1rem;
  --bs-body-font-weight: 400;
  --bs-body-line-height: 1.5;
  --bs-body-color: #212529;
  --bs-body-bg: #fff;
}

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

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

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

hr {
  margin: 1rem 0;
  color: inherit;
  background-color: currentColor;
  border: 0;
  opacity: 0.25;
}

hr:not([size]) {
  height: 1px;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

dt {
  font-weight: 700;
}

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

blockquote {
  margin: 0 0 1rem;
}

b,
strong {
  font-weight: bolder;
}

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

mark, .mark {
  padding: 0.2em;
  background-color: #fcf8e3;
}

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

a {
  color: #0d6efd;
  text-decoration: underline;
}
a:hover {
  color: #0a58ca;
}

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

pre,
code,
kbd,
samp {
  font-family: var(--bs-font-monospace);
  font-size: 1em;
  direction: ltr /* rtl:ignore */;
  unicode-bidi: bidi-override;
}

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

code {
  font-size: 0.875em;
  color: #d63384;
  word-wrap: break-word;
}
a > code {
  color: inherit;
}

kbd {
  padding: 0.2rem 0.4rem;
  font-size: 0.875em;
  color: #fff;
  background-color: #212529;
  border-radius: 0.2rem;
}
kbd kbd {
  padding: 0;
  font-size: 1em;
  font-weight: 700;
}

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: #6c757d;
  text-align: left;
}

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

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

label {
  display: inline-block;
}

button {
  border-radius: 0;
}

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

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

button,
select {
  text-transform: none;
}

[role=button] {
  cursor: pointer;
}

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

[list]::-webkit-calendar-picker-indicator {
  display: none;
}

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

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

textarea {
  resize: vertical;
}

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

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

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

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

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

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

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

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

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

output {
  display: inline-block;
}

iframe {
  border: 0;
}

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

progress {
  vertical-align: baseline;
}

[hidden] {
  display: none !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.img-thumbnail {
  padding: 0.25rem;
  background-color: #fff;
  border: 1px solid #dee2e6;
  border-radius: 0.25rem;
  max-width: 100%;
  height: auto;
}

.figure {
  display: inline-block;
}

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

.figure-caption {
  font-size: 0.875em;
  color: #6c757d;
}

.container,
.container-fluid,
.container-xxl,
.container-xl,
.container-lg,
.container-md,
.container-sm {
  width: 100%;
  padding-right: var(--bs-gutter-x, 0.75rem);
  padding-left: var(--bs-gutter-x, 0.75rem);
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 576px) {
  .container-sm, .container {
    max-width: 540px;
  }
}
@media (min-width: 768px) {
  .container-md, .container-sm, .container {
    max-width: 720px;
  }
}
@media (min-width: 992px) {
  .container-lg, .container-md, .container-sm, .container {
    max-width: 960px;
  }
}
@media (min-width: 1200px) {
  .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 1140px;
  }
}
@media (min-width: 1400px) {
  .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 1320px;
  }
}
.row {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  display: flex;
  flex-wrap: wrap;
  margin-top: calc(-1 * var(--bs-gutter-y));
  margin-right: calc(-0.5 * var(--bs-gutter-x));
  margin-left: calc(-0.5 * var(--bs-gutter-x));
}
.row > * {
  flex-shrink: 0;
  width: 100%;
  max-width: 100%;
  padding-right: calc(var(--bs-gutter-x) * 0.5);
  padding-left: calc(var(--bs-gutter-x) * 0.5);
  margin-top: var(--bs-gutter-y);
}

.col {
  flex: 1 0 0%;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .g-sm-5,
.gy-sm-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 768px) {
  .col-md {
    flex: 1 0 0%;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .g-md-5,
.gy-md-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 992px) {
  .col-lg {
    flex: 1 0 0%;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .g-lg-5,
.gy-lg-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 1200px) {
  .col-xl {
    flex: 1 0 0%;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .g-xl-5,
.gy-xl-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 1400px) {
  .col-xxl {
    flex: 1 0 0%;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .g-xxl-5,
.gy-xxl-5 {
    --bs-gutter-y: 3rem;
  }
}
.table {
  --bs-table-bg: transparent;
  --bs-table-accent-bg: transparent;
  --bs-table-striped-color: #212529;
  --bs-table-striped-bg: rgba(0, 0, 0, 0.05);
  --bs-table-active-color: #212529;
  --bs-table-active-bg: rgba(0, 0, 0, 0.1);
  --bs-table-hover-color: #212529;
  --bs-table-hover-bg: rgba(0, 0, 0, 0.075);
  width: 100%;
  margin-bottom: 1rem;
  color: #212529;
  vertical-align: top;
  border-color: #dee2e6;
}
.table > :not(caption) > * > * {
  padding: 0.5rem 0.5rem;
  background-color: var(--bs-table-bg);
  border-bottom-width: 1px;
  box-shadow: inset 0 0 0 9999px var(--bs-table-accent-bg);
}
.table > tbody {
  vertical-align: inherit;
}
.table > thead {
  vertical-align: bottom;
}
.table > :not(:first-child) {
  border-top: 2px solid currentColor;
}

.caption-top {
  caption-side: top;
}

.table-sm > :not(caption) > * > * {
  padding: 0.25rem 0.25rem;
}

.table-bordered > :not(caption) > * {
  border-width: 1px 0;
}
.table-bordered > :not(caption) > * > * {
  border-width: 0 1px;
}

.table-borderless > :not(caption) > * > * {
  border-bottom-width: 0;
}
.table-borderless > :not(:first-child) {
  border-top-width: 0;
}

.table-striped > tbody > tr:nth-of-type(odd) > * {
  --bs-table-accent-bg: var(--bs-table-striped-bg);
  color: var(--bs-table-striped-color);
}

.table-active {
  --bs-table-accent-bg: var(--bs-table-active-bg);
  color: var(--bs-table-active-color);
}

.table-hover > tbody > tr:hover > * {
  --bs-table-accent-bg: var(--bs-table-hover-bg);
  color: var(--bs-table-hover-color);
}

.table-primary {
  --bs-table-bg: #cfe2ff;
  --bs-table-striped-bg: #c5d7f2;
  --bs-table-striped-color: #000;
  --bs-table-active-bg: #bacbe6;
  --bs-table-active-color: #000;
  --bs-table-hover-bg: #bfd1ec;
  --bs-table-hover-color: #000;
  color: #000;
  border-color: #bacbe6;
}

.table-secondary {
  --bs-table-bg: #e2e3e5;
  --bs-table-striped-bg: #d7d8da;
  --bs-table-striped-color: #000;
  --bs-table-active-bg: #cbccce;
  --bs-table-active-color: #000;
  --bs-table-hover-bg: #d1d2d4;
  --bs-table-hover-color: #000;
  color: #000;
  border-color: #cbccce;
}

.table-success {
  --bs-table-bg: #d1e7dd;
  --bs-table-striped-bg: #c7dbd2;
  --bs-table-striped-color: #000;
  --bs-table-active-bg: #bcd0c7;
  --bs-table-active-color: #000;
  --bs-table-hover-bg: #c1d6cc;
  --bs-table-hover-color: #000;
  color: #000;
  border-color: #bcd0c7;
}

.table-info {
  --bs-table-bg: #cff4fc;
  --bs-table-striped-bg: #c5e8ef;
  --bs-table-striped-color: #000;
  --bs-table-active-bg: #badce3;
  --bs-table-active-color: #000;
  --bs-table-hover-bg: #bfe2e9;
  --bs-table-hover-color: #000;
  color: #000;
  border-color: #badce3;
}

.table-warning {
  --bs-table-bg: #fff3cd;
  --bs-table-striped-bg: #f2e7c3;
  --bs-table-striped-color: #000;
  --bs-table-active-bg: #e6dbb9;
  --bs-table-active-color: #000;
  --bs-table-hover-bg: #ece1be;
  --bs-table-hover-color: #000;
  color: #000;
  border-color: #e6dbb9;
}

.table-danger {
  --bs-table-bg: #f8d7da;
  --bs-table-striped-bg: #eccccf;
  --bs-table-striped-color: #000;
  --bs-table-active-bg: #dfc2c4;
  --bs-table-active-color: #000;
  --bs-table-hover-bg: #e5c7ca;
  --bs-table-hover-color: #000;
  color: #000;
  border-color: #dfc2c4;
}

.table-light {
  --bs-table-bg: #f8f9fa;
  --bs-table-striped-bg: #ecedee;
  --bs-table-striped-color: #000;
  --bs-table-active-bg: #dfe0e1;
  --bs-table-active-color: #000;
  --bs-table-hover-bg: #e5e6e7;
  --bs-table-hover-color: #000;
  color: #000;
  border-color: #dfe0e1;
}

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

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

@media (max-width: 575.98px) {
  .table-responsive-sm {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
@media (max-width: 767.98px) {
  .table-responsive-md {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
@media (max-width: 991.98px) {
  .table-responsive-lg {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
@media (max-width: 1199.98px) {
  .table-responsive-xl {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
@media (max-width: 1399.98px) {
  .table-responsive-xxl {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
.form-label {
  margin-bottom: 0.5rem;
}

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

.col-form-label-lg {
  padding-top: calc(0.5rem + 1px);
  padding-bottom: calc(0.5rem + 1px);
  font-size: 1.25rem;
}

.col-form-label-sm {
  padding-top: calc(0.25rem + 1px);
  padding-bottom: calc(0.25rem + 1px);
  font-size: 0.875rem;
}

.form-text {
  margin-top: 0.25rem;
  font-size: 0.875em;
  color: #6c757d;
}

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

.form-control-plaintext {
  display: block;
  width: 100%;
  padding: 0.375rem 0;
  margin-bottom: 0;
  line-height: 1.5;
  color: #212529;
  background-color: transparent;
  border: solid transparent;
  border-width: 1px 0;
}
.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {
  padding-right: 0;
  padding-left: 0;
}

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

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

textarea.form-control {
  min-height: calc(1.5em + 0.75rem + 2px);
}
textarea.form-control-sm {
  min-height: calc(1.5em + 0.5rem + 2px);
}
textarea.form-control-lg {
  min-height: calc(1.5em + 1rem + 2px);
}

.form-control-color {
  width: 3rem;
  height: auto;
  padding: 0.375rem;
}
.form-control-color:not(:disabled):not([readonly]) {
  cursor: pointer;
}
.form-control-color::-moz-color-swatch {
  height: 1.5em;
  border-radius: 0.25rem;
}
.form-control-color::-webkit-color-swatch {
  height: 1.5em;
  border-radius: 0.25rem;
}

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

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

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

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

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

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

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

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

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

.form-floating {
  position: relative;
}
.form-floating > .form-control,
.form-floating > .form-select {
  height: calc(3.5rem + 2px);
  line-height: 1.25;
}
.form-floating > label {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  padding: 1rem 0.75rem;
  pointer-events: none;
  border: 1px solid transparent;
  transform-origin: 0 0;
  transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-floating > label {
    transition: none;
  }
}
.form-floating > .form-control {
  padding: 1rem 0.75rem;
}
.form-floating > .form-control::placeholder {
  color: transparent;
}
.form-floating > .form-control:focus, .form-floating > .form-control:not(:placeholder-shown) {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}
.form-floating > .form-control:-webkit-autofill {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}
.form-floating > .form-select {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}
.form-floating > .form-control:focus ~ label,
.form-floating > .form-control:not(:placeholder-shown) ~ label,
.form-floating > .form-select ~ label {
  opacity: 0.65;
  transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}
.form-floating > .form-control:-webkit-autofill ~ label {
  opacity: 0.65;
  transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}

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

.input-group-text {
  display: flex;
  align-items: center;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  text-align: center;
  white-space: nowrap;
  background-color: #e9ecef;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
}

.input-group-lg > .form-control,
.input-group-lg > .form-select,
.input-group-lg > .input-group-text,
.input-group-lg > .btn,
.input-group-lg > .btn__outline,
.input-group-lg > .btn-primary,
.row .input-group-lg > .btn-primary {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  border-radius: 0.3rem;
}

.input-group-sm > .form-control,
.input-group-sm > .form-select,
.input-group-sm > .input-group-text,
.input-group-sm > .btn,
.input-group-sm > .btn__outline,
.input-group-sm > .btn-primary,
.row .input-group-sm > .btn-primary {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  border-radius: 0.2rem;
}

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

.input-group:not(.has-validation) > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu),
.input-group:not(.has-validation) > .dropdown-toggle:nth-last-child(n+3) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group.has-validation > :nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu),
.input-group.has-validation > .dropdown-toggle:nth-last-child(n+4) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
  margin-left: -1px;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.valid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 0.875em;
  color: #198754;
}

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

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

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

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

.was-validated .form-select:valid, .form-select.is-valid {
  border-color: #198754;
}
.was-validated .form-select:valid:not([multiple]):not([size]), .was-validated .form-select:valid:not([multiple])[size="1"], .form-select.is-valid:not([multiple]):not([size]), .form-select.is-valid:not([multiple])[size="1"] {
  padding-right: 4.125rem;
  background-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27%3e%3cpath fill=%27none%27 stroke=%27%23343a40%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%272%27 d=%27M2 5l6 6 6-6%27/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 8 8%27%3e%3cpath fill=%27%23198754%27 d=%27M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z%27/%3e%3c/svg%3e");
  background-position: right 0.75rem center, center right 2.25rem;
  background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.was-validated .form-select:valid:focus, .form-select.is-valid:focus {
  border-color: #198754;
  box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25);
}

.was-validated .form-check-input:valid, .form-check-input.is-valid {
  border-color: #198754;
}
.was-validated .form-check-input:valid:checked, .form-check-input.is-valid:checked {
  background-color: #198754;
}
.was-validated .form-check-input:valid:focus, .form-check-input.is-valid:focus {
  box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25);
}
.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
  color: #198754;
}

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

.was-validated .input-group .form-control:valid, .input-group .form-control.is-valid,
.was-validated .input-group .form-select:valid,
.input-group .form-select.is-valid {
  z-index: 1;
}
.was-validated .input-group .form-control:valid:focus, .input-group .form-control.is-valid:focus,
.was-validated .input-group .form-select:valid:focus,
.input-group .form-select.is-valid:focus {
  z-index: 3;
}

.invalid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 0.875em;
  color: #dc3545;
}

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

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

.was-validated .form-control:invalid, .form-control.is-invalid {
  border-color: #dc3545;
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 12 12%27 width=%2712%27 height=%2712%27 fill=%27none%27 stroke=%27%23dc3545%27%3e%3ccircle cx=%276%27 cy=%276%27 r=%274.5%27/%3e%3cpath stroke-linejoin=%27round%27 d=%27M5.8 3.6h.4L6 6.5z%27/%3e%3ccircle cx=%276%27 cy=%278.2%27 r=%27.6%27 fill=%27%23dc3545%27 stroke=%27none%27/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25);
}

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

.was-validated .form-select:invalid, .form-select.is-invalid {
  border-color: #dc3545;
}
.was-validated .form-select:invalid:not([multiple]):not([size]), .was-validated .form-select:invalid:not([multiple])[size="1"], .form-select.is-invalid:not([multiple]):not([size]), .form-select.is-invalid:not([multiple])[size="1"] {
  padding-right: 4.125rem;
  background-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27%3e%3cpath fill=%27none%27 stroke=%27%23343a40%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%272%27 d=%27M2 5l6 6 6-6%27/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 12 12%27 width=%2712%27 height=%2712%27 fill=%27none%27 stroke=%27%23dc3545%27%3e%3ccircle cx=%276%27 cy=%276%27 r=%274.5%27/%3e%3cpath stroke-linejoin=%27round%27 d=%27M5.8 3.6h.4L6 6.5z%27/%3e%3ccircle cx=%276%27 cy=%278.2%27 r=%27.6%27 fill=%27%23dc3545%27 stroke=%27none%27/%3e%3c/svg%3e");
  background-position: right 0.75rem center, center right 2.25rem;
  background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.was-validated .form-select:invalid:focus, .form-select.is-invalid:focus {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25);
}

.was-validated .form-check-input:invalid, .form-check-input.is-invalid {
  border-color: #dc3545;
}
.was-validated .form-check-input:invalid:checked, .form-check-input.is-invalid:checked {
  background-color: #dc3545;
}
.was-validated .form-check-input:invalid:focus, .form-check-input.is-invalid:focus {
  box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25);
}
.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
  color: #dc3545;
}

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

.was-validated .input-group .form-control:invalid, .input-group .form-control.is-invalid,
.was-validated .input-group .form-select:invalid,
.input-group .form-select.is-invalid {
  z-index: 2;
}
.was-validated .input-group .form-control:invalid:focus, .input-group .form-control.is-invalid:focus,
.was-validated .input-group .form-select:invalid:focus,
.input-group .form-select.is-invalid:focus {
  z-index: 3;
}

.btn, .btn__outline, .btn-primary,
.row .btn-primary {
  display: inline-block;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  cursor: pointer;
  user-select: none;
  background-color: transparent;
  border: 1px solid transparent;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .btn, .btn__outline, .btn-primary,
.row .btn-primary {
    transition: none;
  }
}
.btn:hover, .btn__outline:hover, .btn-primary:hover {
  color: #212529;
}
.btn-check:focus + .btn, .btn-check:focus + .btn__outline, .btn-check:focus + .btn-primary,
.row .btn-check:focus + .btn-primary, .btn:focus, .btn__outline:focus, .btn-primary:focus {
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.btn:disabled, .btn__outline:disabled, .btn-primary:disabled, .btn.disabled, .disabled.btn__outline, .disabled.btn-primary, fieldset:disabled .btn, fieldset:disabled .btn__outline, fieldset:disabled .btn-primary {
  pointer-events: none;
  opacity: 0.65;
}

.btn-primary {
  color: #fff;
  background-color: #0d6efd;
  border-color: #0d6efd;
}
.btn-primary:hover {
  color: #fff;
  background-color: #0b5ed7;
  border-color: #0a58ca;
}
.btn-check:focus + .btn-primary, .btn-primary:focus {
  color: #fff;
  background-color: #0b5ed7;
  border-color: #0a58ca;
  box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5);
}
.btn-check:checked + .btn-primary, .btn-check:active + .btn-primary, .btn-primary:active, .btn-primary.active, .show > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #0a58ca;
  border-color: #0a53be;
}
.btn-check:checked + .btn-primary:focus, .btn-check:active + .btn-primary:focus, .btn-primary:active:focus, .btn-primary.active:focus, .show > .btn-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5);
}
.btn-primary:disabled, .btn-primary.disabled {
  color: #fff;
  background-color: #0d6efd;
  border-color: #0d6efd;
}

.btn-secondary {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}
.btn-secondary:hover {
  color: #fff;
  background-color: #5c636a;
  border-color: #565e64;
}
.btn-check:focus + .btn-secondary, .btn-secondary:focus {
  color: #fff;
  background-color: #5c636a;
  border-color: #565e64;
  box-shadow: 0 0 0 0.25rem rgba(130, 138, 145, 0.5);
}
.btn-check:checked + .btn-secondary, .btn-check:active + .btn-secondary, .btn-secondary:active, .btn-secondary.active, .show > .btn-secondary.dropdown-toggle {
  color: #fff;
  background-color: #565e64;
  border-color: #51585e;
}
.btn-check:checked + .btn-secondary:focus, .btn-check:active + .btn-secondary:focus, .btn-secondary:active:focus, .btn-secondary.active:focus, .show > .btn-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.25rem rgba(130, 138, 145, 0.5);
}
.btn-secondary:disabled, .btn-secondary.disabled {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}

.btn-success {
  color: #fff;
  background-color: #198754;
  border-color: #198754;
}
.btn-success:hover {
  color: #fff;
  background-color: #157347;
  border-color: #146c43;
}
.btn-check:focus + .btn-success, .btn-success:focus {
  color: #fff;
  background-color: #157347;
  border-color: #146c43;
  box-shadow: 0 0 0 0.25rem rgba(60, 153, 110, 0.5);
}
.btn-check:checked + .btn-success, .btn-check:active + .btn-success, .btn-success:active, .btn-success.active, .show > .btn-success.dropdown-toggle {
  color: #fff;
  background-color: #146c43;
  border-color: #13653f;
}
.btn-check:checked + .btn-success:focus, .btn-check:active + .btn-success:focus, .btn-success:active:focus, .btn-success.active:focus, .show > .btn-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.25rem rgba(60, 153, 110, 0.5);
}
.btn-success:disabled, .btn-success.disabled {
  color: #fff;
  background-color: #198754;
  border-color: #198754;
}

.btn-info {
  color: #000;
  background-color: #0dcaf0;
  border-color: #0dcaf0;
}
.btn-info:hover {
  color: #000;
  background-color: #31d2f2;
  border-color: #25cff2;
}
.btn-check:focus + .btn-info, .btn-info:focus {
  color: #000;
  background-color: #31d2f2;
  border-color: #25cff2;
  box-shadow: 0 0 0 0.25rem rgba(11, 172, 204, 0.5);
}
.btn-check:checked + .btn-info, .btn-check:active + .btn-info, .btn-info:active, .btn-info.active, .show > .btn-info.dropdown-toggle {
  color: #000;
  background-color: #3dd5f3;
  border-color: #25cff2;
}
.btn-check:checked + .btn-info:focus, .btn-check:active + .btn-info:focus, .btn-info:active:focus, .btn-info.active:focus, .show > .btn-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.25rem rgba(11, 172, 204, 0.5);
}
.btn-info:disabled, .btn-info.disabled {
  color: #000;
  background-color: #0dcaf0;
  border-color: #0dcaf0;
}

.btn-warning {
  color: #000;
  background-color: #ffc107;
  border-color: #ffc107;
}
.btn-warning:hover {
  color: #000;
  background-color: #ffca2c;
  border-color: #ffc720;
}
.btn-check:focus + .btn-warning, .btn-warning:focus {
  color: #000;
  background-color: #ffca2c;
  border-color: #ffc720;
  box-shadow: 0 0 0 0.25rem rgba(217, 164, 6, 0.5);
}
.btn-check:checked + .btn-warning, .btn-check:active + .btn-warning, .btn-warning:active, .btn-warning.active, .show > .btn-warning.dropdown-toggle {
  color: #000;
  background-color: #ffcd39;
  border-color: #ffc720;
}
.btn-check:checked + .btn-warning:focus, .btn-check:active + .btn-warning:focus, .btn-warning:active:focus, .btn-warning.active:focus, .show > .btn-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.25rem rgba(217, 164, 6, 0.5);
}
.btn-warning:disabled, .btn-warning.disabled {
  color: #000;
  background-color: #ffc107;
  border-color: #ffc107;
}

.btn-danger {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}
.btn-danger:hover {
  color: #fff;
  background-color: #bb2d3b;
  border-color: #b02a37;
}
.btn-check:focus + .btn-danger, .btn-danger:focus {
  color: #fff;
  background-color: #bb2d3b;
  border-color: #b02a37;
  box-shadow: 0 0 0 0.25rem rgba(225, 83, 97, 0.5);
}
.btn-check:checked + .btn-danger, .btn-check:active + .btn-danger, .btn-danger:active, .btn-danger.active, .show > .btn-danger.dropdown-toggle {
  color: #fff;
  background-color: #b02a37;
  border-color: #a52834;
}
.btn-check:checked + .btn-danger:focus, .btn-check:active + .btn-danger:focus, .btn-danger:active:focus, .btn-danger.active:focus, .show > .btn-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.25rem rgba(225, 83, 97, 0.5);
}
.btn-danger:disabled, .btn-danger.disabled {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btn-light {
  color: #000;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-light:hover {
  color: #000;
  background-color: #f9fafb;
  border-color: #f9fafb;
}
.btn-check:focus + .btn-light, .btn-light:focus {
  color: #000;
  background-color: #f9fafb;
  border-color: #f9fafb;
  box-shadow: 0 0 0 0.25rem rgba(211, 212, 213, 0.5);
}
.btn-check:checked + .btn-light, .btn-check:active + .btn-light, .btn-light:active, .btn-light.active, .show > .btn-light.dropdown-toggle {
  color: #000;
  background-color: #f9fafb;
  border-color: #f9fafb;
}
.btn-check:checked + .btn-light:focus, .btn-check:active + .btn-light:focus, .btn-light:active:focus, .btn-light.active:focus, .show > .btn-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.25rem rgba(211, 212, 213, 0.5);
}
.btn-light:disabled, .btn-light.disabled {
  color: #000;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-dark {
  color: #fff;
  background-color: #212529;
  border-color: #212529;
}
.btn-dark:hover {
  color: #fff;
  background-color: #1c1f23;
  border-color: #1a1e21;
}
.btn-check:focus + .btn-dark, .btn-dark:focus {
  color: #fff;
  background-color: #1c1f23;
  border-color: #1a1e21;
  box-shadow: 0 0 0 0.25rem rgba(66, 70, 73, 0.5);
}
.btn-check:checked + .btn-dark, .btn-check:active + .btn-dark, .btn-dark:active, .btn-dark.active, .show > .btn-dark.dropdown-toggle {
  color: #fff;
  background-color: #1a1e21;
  border-color: #191c1f;
}
.btn-check:checked + .btn-dark:focus, .btn-check:active + .btn-dark:focus, .btn-dark:active:focus, .btn-dark.active:focus, .show > .btn-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.25rem rgba(66, 70, 73, 0.5);
}
.btn-dark:disabled, .btn-dark.disabled {
  color: #fff;
  background-color: #212529;
  border-color: #212529;
}

.btn-outline-primary {
  color: #0d6efd;
  border-color: #0d6efd;
}
.btn-outline-primary:hover {
  color: #fff;
  background-color: #0d6efd;
  border-color: #0d6efd;
}
.btn-check:focus + .btn-outline-primary, .btn-outline-primary:focus {
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.5);
}
.btn-check:checked + .btn-outline-primary, .btn-check:active + .btn-outline-primary, .btn-outline-primary:active, .btn-outline-primary.active, .btn-outline-primary.dropdown-toggle.show {
  color: #fff;
  background-color: #0d6efd;
  border-color: #0d6efd;
}
.btn-check:checked + .btn-outline-primary:focus, .btn-check:active + .btn-outline-primary:focus, .btn-outline-primary:active:focus, .btn-outline-primary.active:focus, .btn-outline-primary.dropdown-toggle.show:focus {
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.5);
}
.btn-outline-primary:disabled, .btn-outline-primary.disabled {
  color: #0d6efd;
  background-color: transparent;
}

.btn-outline-secondary {
  color: #6c757d;
  border-color: #6c757d;
}
.btn-outline-secondary:hover {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}
.btn-check:focus + .btn-outline-secondary, .btn-outline-secondary:focus {
  box-shadow: 0 0 0 0.25rem rgba(108, 117, 125, 0.5);
}
.btn-check:checked + .btn-outline-secondary, .btn-check:active + .btn-outline-secondary, .btn-outline-secondary:active, .btn-outline-secondary.active, .btn-outline-secondary.dropdown-toggle.show {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}
.btn-check:checked + .btn-outline-secondary:focus, .btn-check:active + .btn-outline-secondary:focus, .btn-outline-secondary:active:focus, .btn-outline-secondary.active:focus, .btn-outline-secondary.dropdown-toggle.show:focus {
  box-shadow: 0 0 0 0.25rem rgba(108, 117, 125, 0.5);
}
.btn-outline-secondary:disabled, .btn-outline-secondary.disabled {
  color: #6c757d;
  background-color: transparent;
}

.btn-outline-success {
  color: #198754;
  border-color: #198754;
}
.btn-outline-success:hover {
  color: #fff;
  background-color: #198754;
  border-color: #198754;
}
.btn-check:focus + .btn-outline-success, .btn-outline-success:focus {
  box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.5);
}
.btn-check:checked + .btn-outline-success, .btn-check:active + .btn-outline-success, .btn-outline-success:active, .btn-outline-success.active, .btn-outline-success.dropdown-toggle.show {
  color: #fff;
  background-color: #198754;
  border-color: #198754;
}
.btn-check:checked + .btn-outline-success:focus, .btn-check:active + .btn-outline-success:focus, .btn-outline-success:active:focus, .btn-outline-success.active:focus, .btn-outline-success.dropdown-toggle.show:focus {
  box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.5);
}
.btn-outline-success:disabled, .btn-outline-success.disabled {
  color: #198754;
  background-color: transparent;
}

.btn-outline-info {
  color: #0dcaf0;
  border-color: #0dcaf0;
}
.btn-outline-info:hover {
  color: #000;
  background-color: #0dcaf0;
  border-color: #0dcaf0;
}
.btn-check:focus + .btn-outline-info, .btn-outline-info:focus {
  box-shadow: 0 0 0 0.25rem rgba(13, 202, 240, 0.5);
}
.btn-check:checked + .btn-outline-info, .btn-check:active + .btn-outline-info, .btn-outline-info:active, .btn-outline-info.active, .btn-outline-info.dropdown-toggle.show {
  color: #000;
  background-color: #0dcaf0;
  border-color: #0dcaf0;
}
.btn-check:checked + .btn-outline-info:focus, .btn-check:active + .btn-outline-info:focus, .btn-outline-info:active:focus, .btn-outline-info.active:focus, .btn-outline-info.dropdown-toggle.show:focus {
  box-shadow: 0 0 0 0.25rem rgba(13, 202, 240, 0.5);
}
.btn-outline-info:disabled, .btn-outline-info.disabled {
  color: #0dcaf0;
  background-color: transparent;
}

.btn-outline-warning {
  color: #ffc107;
  border-color: #ffc107;
}
.btn-outline-warning:hover {
  color: #000;
  background-color: #ffc107;
  border-color: #ffc107;
}
.btn-check:focus + .btn-outline-warning, .btn-outline-warning:focus {
  box-shadow: 0 0 0 0.25rem rgba(255, 193, 7, 0.5);
}
.btn-check:checked + .btn-outline-warning, .btn-check:active + .btn-outline-warning, .btn-outline-warning:active, .btn-outline-warning.active, .btn-outline-warning.dropdown-toggle.show {
  color: #000;
  background-color: #ffc107;
  border-color: #ffc107;
}
.btn-check:checked + .btn-outline-warning:focus, .btn-check:active + .btn-outline-warning:focus, .btn-outline-warning:active:focus, .btn-outline-warning.active:focus, .btn-outline-warning.dropdown-toggle.show:focus {
  box-shadow: 0 0 0 0.25rem rgba(255, 193, 7, 0.5);
}
.btn-outline-warning:disabled, .btn-outline-warning.disabled {
  color: #ffc107;
  background-color: transparent;
}

.btn-outline-danger {
  color: #dc3545;
  border-color: #dc3545;
}
.btn-outline-danger:hover {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}
.btn-check:focus + .btn-outline-danger, .btn-outline-danger:focus {
  box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.5);
}
.btn-check:checked + .btn-outline-danger, .btn-check:active + .btn-outline-danger, .btn-outline-danger:active, .btn-outline-danger.active, .btn-outline-danger.dropdown-toggle.show {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}
.btn-check:checked + .btn-outline-danger:focus, .btn-check:active + .btn-outline-danger:focus, .btn-outline-danger:active:focus, .btn-outline-danger.active:focus, .btn-outline-danger.dropdown-toggle.show:focus {
  box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.5);
}
.btn-outline-danger:disabled, .btn-outline-danger.disabled {
  color: #dc3545;
  background-color: transparent;
}

.btn-outline-light {
  color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-outline-light:hover {
  color: #000;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-check:focus + .btn-outline-light, .btn-outline-light:focus {
  box-shadow: 0 0 0 0.25rem rgba(248, 249, 250, 0.5);
}
.btn-check:checked + .btn-outline-light, .btn-check:active + .btn-outline-light, .btn-outline-light:active, .btn-outline-light.active, .btn-outline-light.dropdown-toggle.show {
  color: #000;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-check:checked + .btn-outline-light:focus, .btn-check:active + .btn-outline-light:focus, .btn-outline-light:active:focus, .btn-outline-light.active:focus, .btn-outline-light.dropdown-toggle.show:focus {
  box-shadow: 0 0 0 0.25rem rgba(248, 249, 250, 0.5);
}
.btn-outline-light:disabled, .btn-outline-light.disabled {
  color: #f8f9fa;
  background-color: transparent;
}

.btn-outline-dark {
  color: #212529;
  border-color: #212529;
}
.btn-outline-dark:hover {
  color: #fff;
  background-color: #212529;
  border-color: #212529;
}
.btn-check:focus + .btn-outline-dark, .btn-outline-dark:focus {
  box-shadow: 0 0 0 0.25rem rgba(33, 37, 41, 0.5);
}
.btn-check:checked + .btn-outline-dark, .btn-check:active + .btn-outline-dark, .btn-outline-dark:active, .btn-outline-dark.active, .btn-outline-dark.dropdown-toggle.show {
  color: #fff;
  background-color: #212529;
  border-color: #212529;
}
.btn-check:checked + .btn-outline-dark:focus, .btn-check:active + .btn-outline-dark:focus, .btn-outline-dark:active:focus, .btn-outline-dark.active:focus, .btn-outline-dark.dropdown-toggle.show:focus {
  box-shadow: 0 0 0 0.25rem rgba(33, 37, 41, 0.5);
}
.btn-outline-dark:disabled, .btn-outline-dark.disabled {
  color: #212529;
  background-color: transparent;
}

.btn-link {
  font-weight: 400;
  color: #0d6efd;
  text-decoration: underline;
}
.btn-link:hover {
  color: #0a58ca;
}
.btn-link:disabled, .btn-link.disabled {
  color: #6c757d;
}

.btn-lg, .btn-group-lg > .btn, .btn-group-lg > .btn__outline, .btn-group-lg > .btn-primary,
.row .btn-group-lg > .btn-primary {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  border-radius: 0.3rem;
}

.btn-sm, .btn-group-sm > .btn, .btn-group-sm > .btn__outline, .btn-group-sm > .btn-primary,
.row .btn-group-sm > .btn-primary {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  border-radius: 0.2rem;
}

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

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

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

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

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

.dropdown-menu {
  position: absolute;
  z-index: 1000;
  display: none;
  min-width: 10rem;
  padding: 0.5rem 0;
  margin: 0;
  font-size: 1rem;
  color: #212529;
  text-align: left;
  list-style: none;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem;
}
.dropdown-menu[data-bs-popper] {
  top: 100%;
  left: 0;
  margin-top: 0.125rem;
}

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

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

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

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

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

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

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

  .dropdown-menu-xxl-end {
    --bs-position: end;
  }
  .dropdown-menu-xxl-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
.dropup .dropdown-menu[data-bs-popper] {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: 0.125rem;
}
.dropup .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0;
  border-right: 0.3em solid transparent;
  border-bottom: 0.3em solid;
  border-left: 0.3em solid transparent;
}
.dropup .dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropend .dropdown-menu[data-bs-popper] {
  top: 0;
  right: auto;
  left: 100%;
  margin-top: 0;
  margin-left: 0.125rem;
}
.dropend .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0;
  border-bottom: 0.3em solid transparent;
  border-left: 0.3em solid;
}
.dropend .dropdown-toggle:empty::after {
  margin-left: 0;
}
.dropend .dropdown-toggle::after {
  vertical-align: 0;
}

.dropstart .dropdown-menu[data-bs-popper] {
  top: 0;
  right: 100%;
  left: auto;
  margin-top: 0;
  margin-right: 0.125rem;
}
.dropstart .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
}
.dropstart .dropdown-toggle::after {
  display: none;
}
.dropstart .dropdown-toggle::before {
  display: inline-block;
  margin-right: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0.3em solid;
  border-bottom: 0.3em solid transparent;
}
.dropstart .dropdown-toggle:empty::after {
  margin-left: 0;
}
.dropstart .dropdown-toggle::before {
  vertical-align: 0;
}

.dropdown-divider {
  height: 0;
  margin: 0.5rem 0;
  overflow: hidden;
  border-top: 1px solid rgba(0, 0, 0, 0.15);
}

.dropdown-item {
  display: block;
  width: 100%;
  padding: 0.25rem 1rem;
  clear: both;
  font-weight: 400;
  color: #212529;
  text-align: inherit;
  text-decoration: none;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
}
.dropdown-item:hover, .dropdown-item:focus {
  color: #1e2125;
  background-color: #e9ecef;
}
.dropdown-item.active, .dropdown-item:active {
  color: #fff;
  text-decoration: none;
  background-color: #0d6efd;
}
.dropdown-item.disabled, .dropdown-item:disabled {
  color: #adb5bd;
  pointer-events: none;
  background-color: transparent;
}

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

.dropdown-header {
  display: block;
  padding: 0.5rem 1rem;
  margin-bottom: 0;
  font-size: 0.875rem;
  color: #6c757d;
  white-space: nowrap;
}

.dropdown-item-text {
  display: block;
  padding: 0.25rem 1rem;
  color: #212529;
}

.dropdown-menu-dark {
  color: #dee2e6;
  background-color: #343a40;
  border-color: rgba(0, 0, 0, 0.15);
}
.dropdown-menu-dark .dropdown-item {
  color: #dee2e6;
}
.dropdown-menu-dark .dropdown-item:hover, .dropdown-menu-dark .dropdown-item:focus {
  color: #fff;
  background-color: rgba(255, 255, 255, 0.15);
}
.dropdown-menu-dark .dropdown-item.active, .dropdown-menu-dark .dropdown-item:active {
  color: #fff;
  background-color: #0d6efd;
}
.dropdown-menu-dark .dropdown-item.disabled, .dropdown-menu-dark .dropdown-item:disabled {
  color: #adb5bd;
}
.dropdown-menu-dark .dropdown-divider {
  border-color: rgba(0, 0, 0, 0.15);
}
.dropdown-menu-dark .dropdown-item-text {
  color: #dee2e6;
}
.dropdown-menu-dark .dropdown-header {
  color: #adb5bd;
}

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

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

.btn-group > .btn:not(:first-child), .btn-group > .btn__outline:not(:first-child), .btn-group > .btn-primary:not(:first-child),
.btn-group > .btn-group:not(:first-child) {
  margin-left: -1px;
}
.btn-group > .btn:not(:last-child):not(.dropdown-toggle), .btn-group > .btn__outline:not(:last-child):not(.dropdown-toggle), .btn-group > .btn-primary:not(:last-child):not(.dropdown-toggle),
.btn-group > .btn-group:not(:last-child) > .btn,
.btn-group > .btn-group:not(:last-child) > .btn__outline,
.btn-group > .btn-group:not(:last-child) > .btn-primary {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.btn-group > .btn:nth-child(n+3), .btn-group > .btn__outline:nth-child(n+3), .btn-group > .btn-primary:nth-child(n+3),
.btn-group > :not(.btn-check) + .btn,
.btn-group > :not(.btn-check) + .btn__outline,
.btn-group > :not(.btn-check) + .btn-primary,
.btn-group > .btn-group:not(:first-child) > .btn,
.btn-group > .btn-group:not(:first-child) > .btn__outline,
.btn-group > .btn-group:not(:first-child) > .btn-primary {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

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

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

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

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

.nav {
  display: flex;
  flex-wrap: wrap;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.nav-link {
  display: block;
  padding: 0.5rem 1rem;
  color: #0d6efd;
  text-decoration: none;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .nav-link {
    transition: none;
  }
}
.nav-link:hover, .nav-link:focus {
  color: #0a58ca;
}
.nav-link.disabled {
  color: #6c757d;
  pointer-events: none;
  cursor: default;
}

.nav-tabs {
  border-bottom: 1px solid #dee2e6;
}
.nav-tabs .nav-link {
  margin-bottom: -1px;
  background: none;
  border: 1px solid transparent;
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}
.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
  border-color: #e9ecef #e9ecef #dee2e6;
  isolation: isolate;
}
.nav-tabs .nav-link.disabled {
  color: #6c757d;
  background-color: transparent;
  border-color: transparent;
}
.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: #495057;
  background-color: #fff;
  border-color: #dee2e6 #dee2e6 #fff;
}
.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.nav-pills .nav-link {
  background: none;
  border: 0;
  border-radius: 0.25rem;
}
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  color: #fff;
  background-color: #0d6efd;
}

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

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

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

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

.navbar {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.navbar > .container,
.navbar > .container-fluid,
.navbar > .container-sm,
.navbar > .container-md,
.navbar > .container-lg,
.navbar > .container-xl,
.navbar > .container-xxl {
  display: flex;
  flex-wrap: inherit;
  align-items: center;
  justify-content: space-between;
}
.navbar-brand {
  padding-top: 0.3125rem;
  padding-bottom: 0.3125rem;
  margin-right: 1rem;
  font-size: 1.25rem;
  text-decoration: none;
  white-space: nowrap;
}
.navbar-nav {
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}
.navbar-nav .nav-link {
  padding-right: 0;
  padding-left: 0;
}
.navbar-nav .dropdown-menu {
  position: static;
}

.navbar-text {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

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

.navbar-toggler {
  padding: 0.25rem 0.75rem;
  font-size: 1.25rem;
  line-height: 1;
  background-color: transparent;
  border: 1px solid transparent;
  border-radius: 0.25rem;
  transition: box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .navbar-toggler {
    transition: none;
  }
}
.navbar-toggler:hover {
  text-decoration: none;
}
.navbar-toggler:focus {
  text-decoration: none;
  outline: 0;
  box-shadow: 0 0 0 0.25rem;
}

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

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

@media (min-width: 576px) {
  .navbar-expand-sm {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-sm .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-sm .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-sm .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-sm .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-sm .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-sm .navbar-toggler {
    display: none;
  }
  .navbar-expand-sm .offcanvas-header {
    display: none;
  }
  .navbar-expand-sm .offcanvas {
    position: inherit;
    bottom: 0;
    z-index: 1000;
    flex-grow: 1;
    visibility: visible !important;
    background-color: transparent;
    border-right: 0;
    border-left: 0;
    transition: none;
    transform: none;
  }
  .navbar-expand-sm .offcanvas-top,
.navbar-expand-sm .offcanvas-bottom {
    height: auto;
    border-top: 0;
    border-bottom: 0;
  }
  .navbar-expand-sm .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
@media (min-width: 768px) {
  .navbar-expand-md {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-md .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-md .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-md .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-md .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-md .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-md .navbar-toggler {
    display: none;
  }
  .navbar-expand-md .offcanvas-header {
    display: none;
  }
  .navbar-expand-md .offcanvas {
    position: inherit;
    bottom: 0;
    z-index: 1000;
    flex-grow: 1;
    visibility: visible !important;
    background-color: transparent;
    border-right: 0;
    border-left: 0;
    transition: none;
    transform: none;
  }
  .navbar-expand-md .offcanvas-top,
.navbar-expand-md .offcanvas-bottom {
    height: auto;
    border-top: 0;
    border-bottom: 0;
  }
  .navbar-expand-md .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
@media (min-width: 992px) {
  .navbar-expand-lg {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-lg .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-lg .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-lg .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-lg .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-lg .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-lg .navbar-toggler {
    display: none;
  }
  .navbar-expand-lg .offcanvas-header {
    display: none;
  }
  .navbar-expand-lg .offcanvas {
    position: inherit;
    bottom: 0;
    z-index: 1000;
    flex-grow: 1;
    visibility: visible !important;
    background-color: transparent;
    border-right: 0;
    border-left: 0;
    transition: none;
    transform: none;
  }
  .navbar-expand-lg .offcanvas-top,
.navbar-expand-lg .offcanvas-bottom {
    height: auto;
    border-top: 0;
    border-bottom: 0;
  }
  .navbar-expand-lg .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
@media (min-width: 1200px) {
  .navbar-expand-xl {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-xl .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-xl .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-xl .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-xl .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-xl .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-xl .navbar-toggler {
    display: none;
  }
  .navbar-expand-xl .offcanvas-header {
    display: none;
  }
  .navbar-expand-xl .offcanvas {
    position: inherit;
    bottom: 0;
    z-index: 1000;
    flex-grow: 1;
    visibility: visible !important;
    background-color: transparent;
    border-right: 0;
    border-left: 0;
    transition: none;
    transform: none;
  }
  .navbar-expand-xl .offcanvas-top,
.navbar-expand-xl .offcanvas-bottom {
    height: auto;
    border-top: 0;
    border-bottom: 0;
  }
  .navbar-expand-xl .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
@media (min-width: 1400px) {
  .navbar-expand-xxl {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-xxl .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-xxl .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-xxl .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-xxl .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-xxl .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-xxl .navbar-toggler {
    display: none;
  }
  .navbar-expand-xxl .offcanvas-header {
    display: none;
  }
  .navbar-expand-xxl .offcanvas {
    position: inherit;
    bottom: 0;
    z-index: 1000;
    flex-grow: 1;
    visibility: visible !important;
    background-color: transparent;
    border-right: 0;
    border-left: 0;
    transition: none;
    transform: none;
  }
  .navbar-expand-xxl .offcanvas-top,
.navbar-expand-xxl .offcanvas-bottom {
    height: auto;
    border-top: 0;
    border-bottom: 0;
  }
  .navbar-expand-xxl .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
.navbar-expand {
  flex-wrap: nowrap;
  justify-content: flex-start;
}
.navbar-expand .navbar-nav {
  flex-direction: row;
}
.navbar-expand .navbar-nav .dropdown-menu {
  position: absolute;
}
.navbar-expand .navbar-nav .nav-link {
  padding-right: 0.5rem;
  padding-left: 0.5rem;
}
.navbar-expand .navbar-nav-scroll {
  overflow: visible;
}
.navbar-expand .navbar-collapse {
  display: flex !important;
  flex-basis: auto;
}
.navbar-expand .navbar-toggler {
  display: none;
}
.navbar-expand .offcanvas-header {
  display: none;
}
.navbar-expand .offcanvas {
  position: inherit;
  bottom: 0;
  z-index: 1000;
  flex-grow: 1;
  visibility: visible !important;
  background-color: transparent;
  border-right: 0;
  border-left: 0;
  transition: none;
  transform: none;
}
.navbar-expand .offcanvas-top,
.navbar-expand .offcanvas-bottom {
  height: auto;
  border-top: 0;
  border-bottom: 0;
}
.navbar-expand .offcanvas-body {
  display: flex;
  flex-grow: 0;
  padding: 0;
  overflow-y: visible;
}

.navbar-light .navbar-brand {
  color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus {
  color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-nav .nav-link {
  color: rgba(0, 0, 0, 0.55);
}
.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus {
  color: rgba(0, 0, 0, 0.7);
}
.navbar-light .navbar-nav .nav-link.disabled {
  color: rgba(0, 0, 0, 0.3);
}
.navbar-light .navbar-nav .show > .nav-link,
.navbar-light .navbar-nav .nav-link.active {
  color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-toggler {
  color: rgba(0, 0, 0, 0.55);
  border-color: rgba(0, 0, 0, 0.1);
}
.navbar-light .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 30 30%27%3e%3cpath stroke=%27rgba%280, 0, 0, 0.55%29%27 stroke-linecap=%27round%27 stroke-miterlimit=%2710%27 stroke-width=%272%27 d=%27M4 7h22M4 15h22M4 23h22%27/%3e%3c/svg%3e");
}
.navbar-light .navbar-text {
  color: rgba(0, 0, 0, 0.55);
}
.navbar-light .navbar-text a,
.navbar-light .navbar-text a:hover,
.navbar-light .navbar-text a:focus {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-dark .navbar-brand {
  color: #fff;
}
.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus {
  color: #fff;
}
.navbar-dark .navbar-nav .nav-link {
  color: rgba(255, 255, 255, 0.55);
}
.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {
  color: rgba(255, 255, 255, 0.75);
}
.navbar-dark .navbar-nav .nav-link.disabled {
  color: rgba(255, 255, 255, 0.25);
}
.navbar-dark .navbar-nav .show > .nav-link,
.navbar-dark .navbar-nav .nav-link.active {
  color: #fff;
}
.navbar-dark .navbar-toggler {
  color: rgba(255, 255, 255, 0.55);
  border-color: rgba(255, 255, 255, 0.1);
}
.navbar-dark .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 30 30%27%3e%3cpath stroke=%27rgba%28255, 255, 255, 0.55%29%27 stroke-linecap=%27round%27 stroke-miterlimit=%2710%27 stroke-width=%272%27 d=%27M4 7h22M4 15h22M4 23h22%27/%3e%3c/svg%3e");
}
.navbar-dark .navbar-text {
  color: rgba(255, 255, 255, 0.55);
}
.navbar-dark .navbar-text a,
.navbar-dark .navbar-text a:hover,
.navbar-dark .navbar-text a:focus {
  color: #fff;
}

.card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: border-box;
  border: 1px solid rgba(0, 0, 0, 0.125);
  border-radius: 0.25rem;
}
.card > hr {
  margin-right: 0;
  margin-left: 0;
}
.card > .list-group {
  border-top: inherit;
  border-bottom: inherit;
}
.card > .list-group:first-child {
  border-top-width: 0;
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}
.card > .list-group:last-child {
  border-bottom-width: 0;
  border-bottom-right-radius: calc(0.25rem - 1px);
  border-bottom-left-radius: calc(0.25rem - 1px);
}
.card > .card-header + .list-group,
.card > .list-group + .card-footer {
  border-top: 0;
}

.card-body {
  flex: 1 1 auto;
  padding: 1rem 1rem;
}

.card-title {
  margin-bottom: 0.5rem;
}

.card-subtitle {
  margin-top: -0.25rem;
  margin-bottom: 0;
}

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

.card-link + .card-link {
  margin-left: 1rem;
}

.card-header {
  padding: 0.5rem 1rem;
  margin-bottom: 0;
  background-color: rgba(0, 0, 0, 0.03);
  border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}
.card-header:first-child {
  border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0;
}

.card-footer {
  padding: 0.5rem 1rem;
  background-color: rgba(0, 0, 0, 0.03);
  border-top: 1px solid rgba(0, 0, 0, 0.125);
}
.card-footer:last-child {
  border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);
}

.card-header-tabs {
  margin-right: -0.5rem;
  margin-bottom: -0.5rem;
  margin-left: -0.5rem;
  border-bottom: 0;
}

.card-header-pills {
  margin-right: -0.5rem;
  margin-left: -0.5rem;
}

.card-img-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 1rem;
  border-radius: calc(0.25rem - 1px);
}

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

.card-img,
.card-img-top {
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}

.card-img,
.card-img-bottom {
  border-bottom-right-radius: calc(0.25rem - 1px);
  border-bottom-left-radius: calc(0.25rem - 1px);
}

.card-group > .card {
  margin-bottom: 0.75rem;
}
@media (min-width: 576px) {
  .card-group {
    display: flex;
    flex-flow: row wrap;
  }
  .card-group > .card {
    flex: 1 0 0%;
    margin-bottom: 0;
  }
  .card-group > .card + .card {
    margin-left: 0;
    border-left: 0;
  }
  .card-group > .card:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }
  .card-group > .card:not(:last-child) .card-img-top,
.card-group > .card:not(:last-child) .card-header {
    border-top-right-radius: 0;
  }
  .card-group > .card:not(:last-child) .card-img-bottom,
.card-group > .card:not(:last-child) .card-footer {
    border-bottom-right-radius: 0;
  }
  .card-group > .card:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }
  .card-group > .card:not(:first-child) .card-img-top,
.card-group > .card:not(:first-child) .card-header {
    border-top-left-radius: 0;
  }
  .card-group > .card:not(:first-child) .card-img-bottom,
.card-group > .card:not(:first-child) .card-footer {
    border-bottom-left-radius: 0;
  }
}

.accordion-button {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  padding: 1rem 1.25rem;
  font-size: 1rem;
  color: #212529;
  text-align: left;
  background-color: #fff;
  border: 0;
  border-radius: 0;
  overflow-anchor: none;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease;
}
@media (prefers-reduced-motion: reduce) {
  .accordion-button {
    transition: none;
  }
}
.accordion-button:not(.collapsed) {
  color: #0c63e4;
  background-color: #e7f1ff;
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.125);
}
.accordion-button:not(.collapsed)::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27%230c63e4%27%3e%3cpath fill-rule=%27evenodd%27 d=%27M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z%27/%3e%3c/svg%3e");
  transform: rotate(-180deg);
}
.accordion-button::after {
  flex-shrink: 0;
  width: 1.25rem;
  height: 1.25rem;
  margin-left: auto;
  content: "";
  background-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27%23212529%27%3e%3cpath fill-rule=%27evenodd%27 d=%27M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z%27/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-size: 1.25rem;
  transition: transform 0.2s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .accordion-button::after {
    transition: none;
  }
}
.accordion-button:hover {
  z-index: 2;
}
.accordion-button:focus {
  z-index: 3;
  border-color: #86b7fe;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

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

.accordion-item {
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.125);
}
.accordion-item:first-of-type {
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}
.accordion-item:first-of-type .accordion-button {
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}
.accordion-item:not(:first-of-type) {
  border-top: 0;
}
.accordion-item:last-of-type {
  border-bottom-right-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}
.accordion-item:last-of-type .accordion-button.collapsed {
  border-bottom-right-radius: calc(0.25rem - 1px);
  border-bottom-left-radius: calc(0.25rem - 1px);
}
.accordion-item:last-of-type .accordion-collapse {
  border-bottom-right-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}

.accordion-body {
  padding: 1rem 1.25rem;
}

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

.breadcrumb {
  display: flex;
  flex-wrap: wrap;
  padding: 0 0;
  margin-bottom: 1rem;
  list-style: none;
}

.breadcrumb-item + .breadcrumb-item {
  padding-left: 0.5rem;
}
.breadcrumb-item + .breadcrumb-item::before {
  float: left;
  padding-right: 0.5rem;
  color: #6c757d;
  content: var(--bs-breadcrumb-divider, "/") /* rtl: var(--bs-breadcrumb-divider, "/") */;
}
.breadcrumb-item.active {
  color: #6c757d;
}

.pagination {
  display: flex;
  padding-left: 0;
  list-style: none;
}

.page-link {
  position: relative;
  display: block;
  color: #0d6efd;
  text-decoration: none;
  background-color: #fff;
  border: 1px solid #dee2e6;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .page-link {
    transition: none;
  }
}
.page-link:hover {
  z-index: 2;
  color: #0a58ca;
  background-color: #e9ecef;
  border-color: #dee2e6;
}
.page-link:focus {
  z-index: 3;
  color: #0a58ca;
  background-color: #e9ecef;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.page-item:not(:first-child) .page-link {
  margin-left: -1px;
}
.page-item.active .page-link {
  z-index: 3;
  color: #fff;
  background-color: #0d6efd;
  border-color: #0d6efd;
}
.page-item.disabled .page-link {
  color: #6c757d;
  pointer-events: none;
  background-color: #fff;
  border-color: #dee2e6;
}

.page-link {
  padding: 0.375rem 0.75rem;
}

.page-item:first-child .page-link {
  border-top-left-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}
.page-item:last-child .page-link {
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
}

.pagination-lg .page-link {
  padding: 0.75rem 1.5rem;
  font-size: 1.25rem;
}
.pagination-lg .page-item:first-child .page-link {
  border-top-left-radius: 0.3rem;
  border-bottom-left-radius: 0.3rem;
}
.pagination-lg .page-item:last-child .page-link {
  border-top-right-radius: 0.3rem;
  border-bottom-right-radius: 0.3rem;
}

.pagination-sm .page-link {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
}
.pagination-sm .page-item:first-child .page-link {
  border-top-left-radius: 0.2rem;
  border-bottom-left-radius: 0.2rem;
}
.pagination-sm .page-item:last-child .page-link {
  border-top-right-radius: 0.2rem;
  border-bottom-right-radius: 0.2rem;
}

.badge {
  display: inline-block;
  padding: 0.35em 0.65em;
  font-size: 0.75em;
  font-weight: 700;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.25rem;
}
.badge:empty {
  display: none;
}

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

.alert {
  position: relative;
  padding: 1rem 1rem;
  margin-bottom: 1rem;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}

.alert-heading {
  color: inherit;
}

.alert-link {
  font-weight: 700;
}

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

.alert-primary {
  color: #084298;
  background-color: #cfe2ff;
  border-color: #b6d4fe;
}
.alert-primary .alert-link {
  color: #06357a;
}

.alert-secondary {
  color: #41464b;
  background-color: #e2e3e5;
  border-color: #d3d6d8;
}
.alert-secondary .alert-link {
  color: #34383c;
}

.alert-success {
  color: #0f5132;
  background-color: #d1e7dd;
  border-color: #badbcc;
}
.alert-success .alert-link {
  color: #0c4128;
}

.alert-info {
  color: #055160;
  background-color: #cff4fc;
  border-color: #b6effb;
}
.alert-info .alert-link {
  color: #04414d;
}

.alert-warning {
  color: #664d03;
  background-color: #fff3cd;
  border-color: #ffecb5;
}
.alert-warning .alert-link {
  color: #523e02;
}

.alert-danger {
  color: #842029;
  background-color: #f8d7da;
  border-color: #f5c2c7;
}
.alert-danger .alert-link {
  color: #6a1a21;
}

.alert-light {
  color: #636464;
  background-color: #fefefe;
  border-color: #fdfdfe;
}
.alert-light .alert-link {
  color: #4f5050;
}

.alert-dark {
  color: #141619;
  background-color: #d3d3d4;
  border-color: #bcbebf;
}
.alert-dark .alert-link {
  color: #101214;
}

@keyframes progress-bar-stripes {
  0% {
    background-position-x: 1rem;
  }
}
.progress {
  display: flex;
  height: 1rem;
  overflow: hidden;
  font-size: 0.75rem;
  background-color: #e9ecef;
  border-radius: 0.25rem;
}

.progress-bar {
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  background-color: #0d6efd;
  transition: width 0.6s ease;
}
@media (prefers-reduced-motion: reduce) {
  .progress-bar {
    transition: none;
  }
}

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

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

.list-group {
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  border-radius: 0.25rem;
}

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

.list-group-item-action {
  width: 100%;
  color: #495057;
  text-align: inherit;
}
.list-group-item-action:hover, .list-group-item-action:focus {
  z-index: 1;
  color: #495057;
  text-decoration: none;
  background-color: #f8f9fa;
}
.list-group-item-action:active {
  color: #212529;
  background-color: #e9ecef;
}

.list-group-item {
  position: relative;
  display: block;
  padding: 0.5rem 1rem;
  color: #212529;
  text-decoration: none;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.125);
}
.list-group-item:first-child {
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
}
.list-group-item:last-child {
  border-bottom-right-radius: inherit;
  border-bottom-left-radius: inherit;
}
.list-group-item.disabled, .list-group-item:disabled {
  color: #6c757d;
  pointer-events: none;
  background-color: #fff;
}
.list-group-item.active {
  z-index: 2;
  color: #fff;
  background-color: #0d6efd;
  border-color: #0d6efd;
}
.list-group-item + .list-group-item {
  border-top-width: 0;
}
.list-group-item + .list-group-item.active {
  margin-top: -1px;
  border-top-width: 1px;
}

.list-group-horizontal {
  flex-direction: row;
}
.list-group-horizontal > .list-group-item:first-child {
  border-bottom-left-radius: 0.25rem;
  border-top-right-radius: 0;
}
.list-group-horizontal > .list-group-item:last-child {
  border-top-right-radius: 0.25rem;
  border-bottom-left-radius: 0;
}
.list-group-horizontal > .list-group-item.active {
  margin-top: 0;
}
.list-group-horizontal > .list-group-item + .list-group-item {
  border-top-width: 1px;
  border-left-width: 0;
}
.list-group-horizontal > .list-group-item + .list-group-item.active {
  margin-left: -1px;
  border-left-width: 1px;
}

@media (min-width: 576px) {
  .list-group-horizontal-sm {
    flex-direction: row;
  }
  .list-group-horizontal-sm > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-sm > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-sm > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-sm > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-sm > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}
@media (min-width: 768px) {
  .list-group-horizontal-md {
    flex-direction: row;
  }
  .list-group-horizontal-md > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-md > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-md > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-md > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-md > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}
@media (min-width: 992px) {
  .list-group-horizontal-lg {
    flex-direction: row;
  }
  .list-group-horizontal-lg > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-lg > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-lg > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-lg > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-lg > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}
@media (min-width: 1200px) {
  .list-group-horizontal-xl {
    flex-direction: row;
  }
  .list-group-horizontal-xl > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-xl > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-xl > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-xl > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-xl > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}
@media (min-width: 1400px) {
  .list-group-horizontal-xxl {
    flex-direction: row;
  }
  .list-group-horizontal-xxl > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-xxl > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-xxl > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-xxl > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-xxl > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}
.list-group-flush {
  border-radius: 0;
}
.list-group-flush > .list-group-item {
  border-width: 0 0 1px;
}
.list-group-flush > .list-group-item:last-child {
  border-bottom-width: 0;
}

.list-group-item-primary {
  color: #084298;
  background-color: #cfe2ff;
}
.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus {
  color: #084298;
  background-color: #bacbe6;
}
.list-group-item-primary.list-group-item-action.active {
  color: #fff;
  background-color: #084298;
  border-color: #084298;
}

.list-group-item-secondary {
  color: #41464b;
  background-color: #e2e3e5;
}
.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus {
  color: #41464b;
  background-color: #cbccce;
}
.list-group-item-secondary.list-group-item-action.active {
  color: #fff;
  background-color: #41464b;
  border-color: #41464b;
}

.list-group-item-success {
  color: #0f5132;
  background-color: #d1e7dd;
}
.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus {
  color: #0f5132;
  background-color: #bcd0c7;
}
.list-group-item-success.list-group-item-action.active {
  color: #fff;
  background-color: #0f5132;
  border-color: #0f5132;
}

.list-group-item-info {
  color: #055160;
  background-color: #cff4fc;
}
.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus {
  color: #055160;
  background-color: #badce3;
}
.list-group-item-info.list-group-item-action.active {
  color: #fff;
  background-color: #055160;
  border-color: #055160;
}

.list-group-item-warning {
  color: #664d03;
  background-color: #fff3cd;
}
.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus {
  color: #664d03;
  background-color: #e6dbb9;
}
.list-group-item-warning.list-group-item-action.active {
  color: #fff;
  background-color: #664d03;
  border-color: #664d03;
}

.list-group-item-danger {
  color: #842029;
  background-color: #f8d7da;
}
.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus {
  color: #842029;
  background-color: #dfc2c4;
}
.list-group-item-danger.list-group-item-action.active {
  color: #fff;
  background-color: #842029;
  border-color: #842029;
}

.list-group-item-light {
  color: #636464;
  background-color: #fefefe;
}
.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus {
  color: #636464;
  background-color: #e5e5e5;
}
.list-group-item-light.list-group-item-action.active {
  color: #fff;
  background-color: #636464;
  border-color: #636464;
}

.list-group-item-dark {
  color: #141619;
  background-color: #d3d3d4;
}
.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus {
  color: #141619;
  background-color: #bebebf;
}
.list-group-item-dark.list-group-item-action.active {
  color: #fff;
  background-color: #141619;
  border-color: #141619;
}

.btn-close {
  box-sizing: content-box;
  width: 1em;
  height: 1em;
  padding: 0.25em 0.25em;
  color: #000;
  background: transparent url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27%23000%27%3e%3cpath d=%27M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z%27/%3e%3c/svg%3e") center/1em auto no-repeat;
  border: 0;
  border-radius: 0.25rem;
  opacity: 0.5;
}
.btn-close:hover {
  color: #000;
  text-decoration: none;
  opacity: 0.75;
}
.btn-close:focus {
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
  opacity: 1;
}
.btn-close:disabled, .btn-close.disabled {
  pointer-events: none;
  user-select: none;
  opacity: 0.25;
}

.btn-close-white {
  filter: invert(1) grayscale(100%) brightness(200%);
}

.toast {
  width: 350px;
  max-width: 100%;
  font-size: 0.875rem;
  pointer-events: auto;
  background-color: rgba(255, 255, 255, 0.85);
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.1);
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem;
}
.toast.showing {
  opacity: 0;
}
.toast:not(.show) {
  display: none;
}

.toast-container {
  width: max-content;
  max-width: 100%;
  pointer-events: none;
}
.toast-container > :not(:last-child) {
  margin-bottom: 0.75rem;
}

.toast-header {
  display: flex;
  align-items: center;
  padding: 0.5rem 0.75rem;
  color: #6c757d;
  background-color: rgba(255, 255, 255, 0.85);
  background-clip: padding-box;
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}
.toast-header .btn-close {
  margin-right: -0.375rem;
  margin-left: 0.75rem;
}

.toast-body {
  padding: 0.75rem;
  word-wrap: break-word;
}

.modal, .modal-xl {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1055;
  display: none;
  width: 100%;
  height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  outline: 0;
}

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

.modal-dialog-scrollable {
  height: calc(100% - 1rem);
}
.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% - 1rem);
}

.modal-content {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  pointer-events: auto;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
  outline: 0;
}

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

.modal-header {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: space-between;
  padding: 1rem 1rem;
  border-bottom: 1px solid #dee2e6;
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px);
}
.modal-header .btn-close {
  padding: 0.5rem 0.5rem;
  margin: -0.5rem -0.5rem -0.5rem auto;
}

.modal-title {
  margin-bottom: 0;
  line-height: 1.5;
}

.modal-body {
  position: relative;
  flex: 1 1 auto;
  padding: 1rem;
}

.modal-footer {
  display: flex;
  flex-wrap: wrap;
  flex-shrink: 0;
  align-items: center;
  justify-content: flex-end;
  padding: 0.75rem;
  border-top: 1px solid #dee2e6;
  border-bottom-right-radius: calc(0.3rem - 1px);
  border-bottom-left-radius: calc(0.3rem - 1px);
}
.modal-footer > * {
  margin: 0.25rem;
}

@media (min-width: 576px) {
  .modal-dialog {
    max-width: 500px;
    margin: 1.75rem auto;
  }

  .modal-dialog-scrollable {
    height: calc(100% - 3.5rem);
  }

  .modal-dialog-centered {
    min-height: calc(100% - 3.5rem);
  }

  .modal-sm {
    max-width: 300px;
  }
}
@media (min-width: 992px) {
  .modal-lg,
.modal-xl {
    max-width: 800px;
  }
}
@media (min-width: 1200px) {
  .modal-xl {
    max-width: 1140px;
  }
}
.modal-fullscreen {
  width: 100vw;
  max-width: none;
  height: 100%;
  margin: 0;
}
.modal-fullscreen .modal-content {
  height: 100%;
  border: 0;
  border-radius: 0;
}
.modal-fullscreen .modal-header {
  border-radius: 0;
}
.modal-fullscreen .modal-body {
  overflow-y: auto;
}
.modal-fullscreen .modal-footer {
  border-radius: 0;
}

@media (max-width: 575.98px) {
  .modal-fullscreen-sm-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-sm-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-sm-down .modal-header {
    border-radius: 0;
  }
  .modal-fullscreen-sm-down .modal-body {
    overflow-y: auto;
  }
  .modal-fullscreen-sm-down .modal-footer {
    border-radius: 0;
  }
}
@media (max-width: 767.98px) {
  .modal-fullscreen-md-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-md-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-md-down .modal-header {
    border-radius: 0;
  }
  .modal-fullscreen-md-down .modal-body {
    overflow-y: auto;
  }
  .modal-fullscreen-md-down .modal-footer {
    border-radius: 0;
  }
}
@media (max-width: 991.98px) {
  .modal-fullscreen-lg-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-lg-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-lg-down .modal-header {
    border-radius: 0;
  }
  .modal-fullscreen-lg-down .modal-body {
    overflow-y: auto;
  }
  .modal-fullscreen-lg-down .modal-footer {
    border-radius: 0;
  }
}
@media (max-width: 1199.98px) {
  .modal-fullscreen-xl-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-xl-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-xl-down .modal-header {
    border-radius: 0;
  }
  .modal-fullscreen-xl-down .modal-body {
    overflow-y: auto;
  }
  .modal-fullscreen-xl-down .modal-footer {
    border-radius: 0;
  }
}
@media (max-width: 1399.98px) {
  .modal-fullscreen-xxl-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-xxl-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-xxl-down .modal-header {
    border-radius: 0;
  }
  .modal-fullscreen-xxl-down .modal-body {
    overflow-y: auto;
  }
  .modal-fullscreen-xxl-down .modal-footer {
    border-radius: 0;
  }
}
.tooltip {
  position: absolute;
  z-index: 1080;
  display: block;
  margin: 0;
  font-family: var(--bs-font-sans-serif);
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  opacity: 0;
}
.tooltip.show {
  opacity: 0.9;
}
.tooltip .tooltip-arrow {
  position: absolute;
  display: block;
  width: 0.8rem;
  height: 0.4rem;
}
.tooltip .tooltip-arrow::before {
  position: absolute;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-tooltip-top, .bs-tooltip-auto[data-popper-placement^=top] {
  padding: 0.4rem 0;
}
.bs-tooltip-top .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow {
  bottom: 0;
}
.bs-tooltip-top .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before {
  top: -1px;
  border-width: 0.4rem 0.4rem 0;
  border-top-color: #000;
}

.bs-tooltip-end, .bs-tooltip-auto[data-popper-placement^=right] {
  padding: 0 0.4rem;
}
.bs-tooltip-end .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow {
  left: 0;
  width: 0.4rem;
  height: 0.8rem;
}
.bs-tooltip-end .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before {
  right: -1px;
  border-width: 0.4rem 0.4rem 0.4rem 0;
  border-right-color: #000;
}

.bs-tooltip-bottom, .bs-tooltip-auto[data-popper-placement^=bottom] {
  padding: 0.4rem 0;
}
.bs-tooltip-bottom .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow {
  top: 0;
}
.bs-tooltip-bottom .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before {
  bottom: -1px;
  border-width: 0 0.4rem 0.4rem;
  border-bottom-color: #000;
}

.bs-tooltip-start, .bs-tooltip-auto[data-popper-placement^=left] {
  padding: 0 0.4rem;
}
.bs-tooltip-start .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow {
  right: 0;
  width: 0.4rem;
  height: 0.8rem;
}
.bs-tooltip-start .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before {
  left: -1px;
  border-width: 0.4rem 0 0.4rem 0.4rem;
  border-left-color: #000;
}

.tooltip-inner {
  max-width: 200px;
  padding: 0.25rem 0.5rem;
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: 0.25rem;
}

.popover {
  position: absolute;
  top: 0;
  left: 0 /* rtl:ignore */;
  z-index: 1070;
  display: block;
  max-width: 276px;
  font-family: var(--bs-font-sans-serif);
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
}
.popover .popover-arrow {
  position: absolute;
  display: block;
  width: 1rem;
  height: 0.5rem;
}
.popover .popover-arrow::before, .popover .popover-arrow::after {
  position: absolute;
  display: block;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-popover-top > .popover-arrow, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow {
  bottom: calc(-0.5rem - 1px);
}
.bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before {
  bottom: 0;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: rgba(0, 0, 0, 0.25);
}
.bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after {
  bottom: 1px;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: #fff;
}

.bs-popover-end > .popover-arrow, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow {
  left: calc(-0.5rem - 1px);
  width: 0.5rem;
  height: 1rem;
}
.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before {
  left: 0;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: rgba(0, 0, 0, 0.25);
}
.bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {
  left: 1px;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: #fff;
}

.bs-popover-bottom > .popover-arrow, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow {
  top: calc(-0.5rem - 1px);
}
.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before {
  top: 0;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: rgba(0, 0, 0, 0.25);
}
.bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after {
  top: 1px;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: #fff;
}
.bs-popover-bottom .popover-header::before, .bs-popover-auto[data-popper-placement^=bottom] .popover-header::before {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: 1rem;
  margin-left: -0.5rem;
  content: "";
  border-bottom: 1px solid #f0f0f0;
}

.bs-popover-start > .popover-arrow, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow {
  right: calc(-0.5rem - 1px);
  width: 0.5rem;
  height: 1rem;
}
.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before {
  right: 0;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: rgba(0, 0, 0, 0.25);
}
.bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {
  right: 1px;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: #fff;
}

.popover-header {
  padding: 0.5rem 1rem;
  margin-bottom: 0;
  font-size: 1rem;
  background-color: #f0f0f0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px);
}
.popover-header:empty {
  display: none;
}

.popover-body {
  padding: 1rem 1rem;
  color: #212529;
}

.carousel {
  position: relative;
}

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

.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.carousel-inner::after {
  display: block;
  clear: both;
  content: "";
}

.carousel-item {
  position: relative;
  display: none;
  float: left;
  width: 100%;
  margin-right: -100%;
  backface-visibility: hidden;
  transition: transform 0.6s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-item {
    transition: none;
  }
}

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

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

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

/* rtl:end:ignore */
.carousel-fade .carousel-item {
  opacity: 0;
  transition-property: opacity;
  transform: none;
}
.carousel-fade .carousel-item.active,
.carousel-fade .carousel-item-next.carousel-item-start,
.carousel-fade .carousel-item-prev.carousel-item-end {
  z-index: 1;
  opacity: 1;
}
.carousel-fade .active.carousel-item-start,
.carousel-fade .active.carousel-item-end {
  z-index: 0;
  opacity: 0;
  transition: opacity 0s 0.6s;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-fade .active.carousel-item-start,
.carousel-fade .active.carousel-item-end {
    transition: none;
  }
}

.carousel-control-prev,
.carousel-control-next {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 15%;
  padding: 0;
  color: #fff;
  text-align: center;
  background: none;
  border: 0;
  opacity: 0.5;
  transition: opacity 0.15s ease;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-control-prev,
.carousel-control-next {
    transition: none;
  }
}
.carousel-control-prev:hover, .carousel-control-prev:focus,
.carousel-control-next:hover,
.carousel-control-next:focus {
  color: #fff;
  text-decoration: none;
  outline: 0;
  opacity: 0.9;
}

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

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

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

/* rtl:options: {
  "autoRename": true,
  "stringMap":[ {
    "name"    : "prev-next",
    "search"  : "prev",
    "replace" : "next"
  } ]
} */
.carousel-control-prev-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27%23fff%27%3e%3cpath d=%27M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z%27/%3e%3c/svg%3e");
}

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

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

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

.carousel-dark .carousel-control-prev-icon,
.carousel-dark .carousel-control-next-icon {
  filter: invert(1) grayscale(100);
}
.carousel-dark .carousel-indicators [data-bs-target] {
  background-color: #000;
}
.carousel-dark .carousel-caption {
  color: #000;
}

@keyframes spinner-border {
  to {
    transform: rotate(360deg) /* rtl:ignore */;
  }
}
.spinner-border {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: -0.125em;
  border: 0.25em solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  animation: 0.75s linear infinite spinner-border;
}

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

@keyframes spinner-grow {
  0% {
    transform: scale(0);
  }
  50% {
    opacity: 1;
    transform: none;
  }
}
.spinner-grow {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: -0.125em;
  background-color: currentColor;
  border-radius: 50%;
  opacity: 0;
  animation: 0.75s linear infinite spinner-grow;
}

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

@media (prefers-reduced-motion: reduce) {
  .spinner-border,
.spinner-grow {
    animation-duration: 1.5s;
  }
}
.offcanvas {
  position: fixed;
  bottom: 0;
  z-index: 1045;
  display: flex;
  flex-direction: column;
  max-width: 100%;
  visibility: hidden;
  background-color: #fff;
  background-clip: padding-box;
  outline: 0;
  transition: transform 0.3s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .offcanvas {
    transition: none;
  }
}

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

.offcanvas-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1rem 1rem;
}
.offcanvas-header .btn-close {
  padding: 0.5rem 0.5rem;
  margin-top: -0.5rem;
  margin-right: -0.5rem;
  margin-bottom: -0.5rem;
}

.offcanvas-title {
  margin-bottom: 0;
  line-height: 1.5;
}

.offcanvas-body {
  flex-grow: 1;
  padding: 1rem 1rem;
  overflow-y: auto;
}

.offcanvas-start {
  top: 0;
  left: 0;
  width: 400px;
  border-right: 1px solid rgba(0, 0, 0, 0.2);
  transform: translateX(-100%);
}

.offcanvas-end {
  top: 0;
  right: 0;
  width: 400px;
  border-left: 1px solid rgba(0, 0, 0, 0.2);
  transform: translateX(100%);
}

.offcanvas-top {
  top: 0;
  right: 0;
  left: 0;
  height: 30vh;
  max-height: 100%;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  transform: translateY(-100%);
}

.offcanvas-bottom {
  right: 0;
  left: 0;
  height: 30vh;
  max-height: 100%;
  border-top: 1px solid rgba(0, 0, 0, 0.2);
  transform: translateY(100%);
}

.offcanvas.show {
  transform: none;
}

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

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

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

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

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

@keyframes placeholder-glow {
  50% {
    opacity: 0.2;
  }
}
.placeholder-wave {
  mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);
  mask-size: 200% 100%;
  animation: placeholder-wave 2s linear infinite;
}

@keyframes placeholder-wave {
  100% {
    mask-position: -200% 0%;
  }
}
.clearfix::after {
  display: block;
  clear: both;
  content: "";
}

.link-primary {
  color: #0d6efd;
}
.link-primary:hover, .link-primary:focus {
  color: #0a58ca;
}

.link-secondary {
  color: #6c757d;
}
.link-secondary:hover, .link-secondary:focus {
  color: #565e64;
}

.link-success {
  color: #198754;
}
.link-success:hover, .link-success:focus {
  color: #146c43;
}

.link-info {
  color: #0dcaf0;
}
.link-info:hover, .link-info:focus {
  color: #3dd5f3;
}

.link-warning {
  color: #ffc107;
}
.link-warning:hover, .link-warning:focus {
  color: #ffcd39;
}

.link-danger {
  color: #dc3545;
}
.link-danger:hover, .link-danger:focus {
  color: #b02a37;
}

.link-light {
  color: #f8f9fa;
}
.link-light:hover, .link-light:focus {
  color: #f9fafb;
}

.link-dark {
  color: #212529;
}
.link-dark:hover, .link-dark:focus {
  color: #1a1e21;
}

.ratio {
  position: relative;
  width: 100%;
}
.ratio::before {
  display: block;
  padding-top: var(--bs-aspect-ratio);
  content: "";
}
.ratio > * {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

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

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

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

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

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

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

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

@media (min-width: 576px) {
  .sticky-sm-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
}
@media (min-width: 768px) {
  .sticky-md-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
}
@media (min-width: 992px) {
  .sticky-lg-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
}
@media (min-width: 1200px) {
  .sticky-xl-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
}
@media (min-width: 1400px) {
  .sticky-xxl-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
}
.hstack {
  display: flex;
  flex-direction: row;
  align-items: center;
  align-self: stretch;
}

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

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

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

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

.vr {
  display: inline-block;
  align-self: stretch;
  width: 1px;
  min-height: 1em;
  background-color: currentColor;
  opacity: 0.25;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.shadow {
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.shadow-sm {
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
}

.shadow-lg {
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.border {
  border: 1px solid #dee2e6 !important;
}

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

.border-top {
  border-top: 1px solid #dee2e6 !important;
}

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

.border-end {
  border-right: 1px solid #dee2e6 !important;
}

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

.border-bottom {
  border-bottom: 1px solid #dee2e6 !important;
}

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

.border-start {
  border-left: 1px solid #dee2e6 !important;
}

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

.border-primary {
  border-color: #0d6efd !important;
}

.border-secondary {
  border-color: #6c757d !important;
}

.border-success {
  border-color: #198754 !important;
}

.border-info {
  border-color: #0dcaf0 !important;
}

.border-warning {
  border-color: #ffc107 !important;
}

.border-danger {
  border-color: #dc3545 !important;
}

.border-light {
  border-color: #f8f9fa !important;
}

.border-dark {
  border-color: #212529 !important;
}

.border-white {
  border-color: #fff !important;
}

.border-1 {
  border-width: 1px !important;
}

.border-2 {
  border-width: 2px !important;
}

.border-3 {
  border-width: 3px !important;
}

.border-4 {
  border-width: 4px !important;
}

.border-5 {
  border-width: 5px !important;
}

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

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

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

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

.w-auto {
  width: auto !important;
}

.mw-100 {
  max-width: 100% !important;
}

.vw-100 {
  width: 100vw !important;
}

.min-vw-100 {
  min-width: 100vw !important;
}

.h-25 {
  height: 25% !important;
}

.h-50 {
  height: 50% !important;
}

.h-75 {
  height: 75% !important;
}

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

.h-auto {
  height: auto !important;
}

.mh-100 {
  max-height: 100% !important;
}

.vh-100 {
  height: 100vh !important;
}

.min-vh-100 {
  min-height: 100vh !important;
}

.flex-fill {
  flex: 1 1 auto !important;
}

.flex-row {
  flex-direction: row !important;
}

.flex-column {
  flex-direction: column !important;
}

.flex-row-reverse {
  flex-direction: row-reverse !important;
}

.flex-column-reverse {
  flex-direction: column-reverse !important;
}

.flex-grow-0 {
  flex-grow: 0 !important;
}

.flex-grow-1 {
  flex-grow: 1 !important;
}

.flex-shrink-0 {
  flex-shrink: 0 !important;
}

.flex-shrink-1 {
  flex-shrink: 1 !important;
}

.flex-wrap {
  flex-wrap: wrap !important;
}

.flex-nowrap {
  flex-wrap: nowrap !important;
}

.flex-wrap-reverse {
  flex-wrap: wrap-reverse !important;
}

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

.gap-1 {
  gap: 0.25rem !important;
}

.gap-2 {
  gap: 0.5rem !important;
}

.gap-3 {
  gap: 1rem !important;
}

.gap-4 {
  gap: 1.5rem !important;
}

.gap-5 {
  gap: 3rem !important;
}

.justify-content-start {
  justify-content: flex-start !important;
}

.justify-content-end {
  justify-content: flex-end !important;
}

.justify-content-center {
  justify-content: center !important;
}

.justify-content-between {
  justify-content: space-between !important;
}

.justify-content-around {
  justify-content: space-around !important;
}

.justify-content-evenly {
  justify-content: space-evenly !important;
}

.align-items-start {
  align-items: flex-start !important;
}

.align-items-end {
  align-items: flex-end !important;
}

.align-items-center {
  align-items: center !important;
}

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

.align-items-stretch {
  align-items: stretch !important;
}

.align-content-start {
  align-content: flex-start !important;
}

.align-content-end {
  align-content: flex-end !important;
}

.align-content-center {
  align-content: center !important;
}

.align-content-between {
  align-content: space-between !important;
}

.align-content-around {
  align-content: space-around !important;
}

.align-content-stretch {
  align-content: stretch !important;
}

.align-self-auto {
  align-self: auto !important;
}

.align-self-start {
  align-self: flex-start !important;
}

.align-self-end {
  align-self: flex-end !important;
}

.align-self-center {
  align-self: center !important;
}

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

.align-self-stretch {
  align-self: stretch !important;
}

.order-first {
  order: -1 !important;
}

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

.order-1 {
  order: 1 !important;
}

.order-2 {
  order: 2 !important;
}

.order-3 {
  order: 3 !important;
}

.order-4 {
  order: 4 !important;
}

.order-5 {
  order: 5 !important;
}

.order-last {
  order: 6 !important;
}

.m-0 {
  margin: 0 !important;
}

.m-1 {
  margin: 0.25rem !important;
}

.m-2 {
  margin: 0.5rem !important;
}

.m-3 {
  margin: 1rem !important;
}

.m-4 {
  margin: 1.5rem !important;
}

.m-5 {
  margin: 3rem !important;
}

.m-auto {
  margin: auto !important;
}

.mx-0 {
  margin-right: 0 !important;
  margin-left: 0 !important;
}

.mx-1 {
  margin-right: 0.25rem !important;
  margin-left: 0.25rem !important;
}

.mx-2 {
  margin-right: 0.5rem !important;
  margin-left: 0.5rem !important;
}

.mx-3 {
  margin-right: 1rem !important;
  margin-left: 1rem !important;
}

.mx-4 {
  margin-right: 1.5rem !important;
  margin-left: 1.5rem !important;
}

.mx-5 {
  margin-right: 3rem !important;
  margin-left: 3rem !important;
}

.mx-auto {
  margin-right: auto !important;
  margin-left: auto !important;
}

.my-0 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.my-1 {
  margin-top: 0.25rem !important;
  margin-bottom: 0.25rem !important;
}

.my-2 {
  margin-top: 0.5rem !important;
  margin-bottom: 0.5rem !important;
}

.my-3 {
  margin-top: 1rem !important;
  margin-bottom: 1rem !important;
}

.my-4 {
  margin-top: 1.5rem !important;
  margin-bottom: 1.5rem !important;
}

.my-5 {
  margin-top: 3rem !important;
  margin-bottom: 3rem !important;
}

.my-auto {
  margin-top: auto !important;
  margin-bottom: auto !important;
}

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

.mt-1 {
  margin-top: 0.25rem !important;
}

.mt-2 {
  margin-top: 0.5rem !important;
}

.mt-3 {
  margin-top: 1rem !important;
}

.mt-4 {
  margin-top: 1.5rem !important;
}

.mt-5 {
  margin-top: 3rem !important;
}

.mt-auto {
  margin-top: auto !important;
}

.me-0 {
  margin-right: 0 !important;
}

.me-1 {
  margin-right: 0.25rem !important;
}

.me-2 {
  margin-right: 0.5rem !important;
}

.me-3 {
  margin-right: 1rem !important;
}

.me-4 {
  margin-right: 1.5rem !important;
}

.me-5 {
  margin-right: 3rem !important;
}

.me-auto {
  margin-right: auto !important;
}

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

.mb-1 {
  margin-bottom: 0.25rem !important;
}

.mb-2 {
  margin-bottom: 0.5rem !important;
}

.mb-3 {
  margin-bottom: 1rem !important;
}

.mb-4 {
  margin-bottom: 1.5rem !important;
}

.mb-5 {
  margin-bottom: 3rem !important;
}

.mb-auto {
  margin-bottom: auto !important;
}

.ms-0 {
  margin-left: 0 !important;
}

.ms-1 {
  margin-left: 0.25rem !important;
}

.ms-2 {
  margin-left: 0.5rem !important;
}

.ms-3 {
  margin-left: 1rem !important;
}

.ms-4 {
  margin-left: 1.5rem !important;
}

.ms-5 {
  margin-left: 3rem !important;
}

.ms-auto {
  margin-left: auto !important;
}

.p-0 {
  padding: 0 !important;
}

.p-1 {
  padding: 0.25rem !important;
}

.p-2 {
  padding: 0.5rem !important;
}

.p-3 {
  padding: 1rem !important;
}

.p-4 {
  padding: 1.5rem !important;
}

.p-5 {
  padding: 3rem !important;
}

.px-0 {
  padding-right: 0 !important;
  padding-left: 0 !important;
}

.px-1 {
  padding-right: 0.25rem !important;
  padding-left: 0.25rem !important;
}

.px-2 {
  padding-right: 0.5rem !important;
  padding-left: 0.5rem !important;
}

.px-3 {
  padding-right: 1rem !important;
  padding-left: 1rem !important;
}

.px-4 {
  padding-right: 1.5rem !important;
  padding-left: 1.5rem !important;
}

.px-5 {
  padding-right: 3rem !important;
  padding-left: 3rem !important;
}

.py-0 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.py-1 {
  padding-top: 0.25rem !important;
  padding-bottom: 0.25rem !important;
}

.py-2 {
  padding-top: 0.5rem !important;
  padding-bottom: 0.5rem !important;
}

.py-3 {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}

.py-4 {
  padding-top: 1.5rem !important;
  padding-bottom: 1.5rem !important;
}

.py-5 {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}

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

.pt-1 {
  padding-top: 0.25rem !important;
}

.pt-2 {
  padding-top: 0.5rem !important;
}

.pt-3 {
  padding-top: 1rem !important;
}

.pt-4 {
  padding-top: 1.5rem !important;
}

.pt-5 {
  padding-top: 3rem !important;
}

.pe-0 {
  padding-right: 0 !important;
}

.pe-1 {
  padding-right: 0.25rem !important;
}

.pe-2 {
  padding-right: 0.5rem !important;
}

.pe-3 {
  padding-right: 1rem !important;
}

.pe-4 {
  padding-right: 1.5rem !important;
}

.pe-5 {
  padding-right: 3rem !important;
}

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

.pb-1 {
  padding-bottom: 0.25rem !important;
}

.pb-2 {
  padding-bottom: 0.5rem !important;
}

.pb-3 {
  padding-bottom: 1rem !important;
}

.pb-4 {
  padding-bottom: 1.5rem !important;
}

.pb-5 {
  padding-bottom: 3rem !important;
}

.ps-0 {
  padding-left: 0 !important;
}

.ps-1 {
  padding-left: 0.25rem !important;
}

.ps-2 {
  padding-left: 0.5rem !important;
}

.ps-3 {
  padding-left: 1rem !important;
}

.ps-4 {
  padding-left: 1.5rem !important;
}

.ps-5 {
  padding-left: 3rem !important;
}

.font-monospace {
  font-family: var(--bs-font-monospace) !important;
}

.fs-1 {
  font-size: calc(1.375rem + 1.5vw) !important;
}

.fs-2 {
  font-size: calc(1.325rem + 0.9vw) !important;
}

.fs-3 {
  font-size: calc(1.3rem + 0.6vw) !important;
}

.fs-4 {
  font-size: calc(1.275rem + 0.3vw) !important;
}

.fs-5 {
  font-size: 1.25rem !important;
}

.fs-6 {
  font-size: 1rem !important;
}

.fst-italic {
  font-style: italic !important;
}

.fst-normal {
  font-style: normal !important;
}

.fw-light {
  font-weight: 300 !important;
}

.fw-lighter {
  font-weight: lighter !important;
}

.fw-normal {
  font-weight: 400 !important;
}

.fw-bold {
  font-weight: 700 !important;
}

.fw-bolder {
  font-weight: bolder !important;
}

.lh-1 {
  line-height: 1 !important;
}

.lh-sm {
  line-height: 1.25 !important;
}

.lh-base {
  line-height: 1.5 !important;
}

.lh-lg {
  line-height: 2 !important;
}

.text-start {
  text-align: left !important;
}

.text-end {
  text-align: right !important;
}

.text-center {
  text-align: center !important;
}

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

.text-decoration-underline {
  text-decoration: underline !important;
}

.text-decoration-line-through {
  text-decoration: line-through !important;
}

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

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

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

.text-wrap {
  white-space: normal !important;
}

.text-nowrap {
  white-space: nowrap !important;
}

/* rtl:begin:remove */
.text-break {
  word-wrap: break-word !important;
  word-break: break-word !important;
}

/* rtl:end:remove */
.text-primary {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important;
}

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

.text-success {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-success-rgb), var(--bs-text-opacity)) !important;
}

.text-info {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-info-rgb), var(--bs-text-opacity)) !important;
}

.text-warning {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-warning-rgb), var(--bs-text-opacity)) !important;
}

.text-danger {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-danger-rgb), var(--bs-text-opacity)) !important;
}

.text-light {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-light-rgb), var(--bs-text-opacity)) !important;
}

.text-dark {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important;
}

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

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

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

.text-muted {
  --bs-text-opacity: 1;
  color: #6c757d !important;
}

.text-black-50 {
  --bs-text-opacity: 1;
  color: rgba(0, 0, 0, 0.5) !important;
}

.text-white-50 {
  --bs-text-opacity: 1;
  color: rgba(255, 255, 255, 0.5) !important;
}

.text-reset {
  --bs-text-opacity: 1;
  color: inherit !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.rounded {
  border-radius: 0.25rem !important;
}

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

.rounded-1 {
  border-radius: 0.2rem !important;
}

.rounded-2 {
  border-radius: 0.25rem !important;
}

.rounded-3 {
  border-radius: 0.3rem !important;
}

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

.rounded-pill {
  border-radius: 50rem !important;
}

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

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

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

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

.visible {
  visibility: visible !important;
}

.invisible {
  visibility: hidden !important;
}

@media (min-width: 576px) {
  .float-sm-start {
    float: left !important;
  }

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

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

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

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

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

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

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

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

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

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

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

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

  .flex-sm-fill {
    flex: 1 1 auto !important;
  }

  .flex-sm-row {
    flex-direction: row !important;
  }

  .flex-sm-column {
    flex-direction: column !important;
  }

  .flex-sm-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-sm-column-reverse {
    flex-direction: column-reverse !important;
  }

  .flex-sm-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-sm-grow-1 {
    flex-grow: 1 !important;
  }

  .flex-sm-shrink-0 {
    flex-shrink: 0 !important;
  }

  .flex-sm-shrink-1 {
    flex-shrink: 1 !important;
  }

  .flex-sm-wrap {
    flex-wrap: wrap !important;
  }

  .flex-sm-nowrap {
    flex-wrap: nowrap !important;
  }

  .flex-sm-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }

  .gap-sm-0 {
    gap: 0 !important;
  }

  .gap-sm-1 {
    gap: 0.25rem !important;
  }

  .gap-sm-2 {
    gap: 0.5rem !important;
  }

  .gap-sm-3 {
    gap: 1rem !important;
  }

  .gap-sm-4 {
    gap: 1.5rem !important;
  }

  .gap-sm-5 {
    gap: 3rem !important;
  }

  .justify-content-sm-start {
    justify-content: flex-start !important;
  }

  .justify-content-sm-end {
    justify-content: flex-end !important;
  }

  .justify-content-sm-center {
    justify-content: center !important;
  }

  .justify-content-sm-between {
    justify-content: space-between !important;
  }

  .justify-content-sm-around {
    justify-content: space-around !important;
  }

  .justify-content-sm-evenly {
    justify-content: space-evenly !important;
  }

  .align-items-sm-start {
    align-items: flex-start !important;
  }

  .align-items-sm-end {
    align-items: flex-end !important;
  }

  .align-items-sm-center {
    align-items: center !important;
  }

  .align-items-sm-baseline {
    align-items: baseline !important;
  }

  .align-items-sm-stretch {
    align-items: stretch !important;
  }

  .align-content-sm-start {
    align-content: flex-start !important;
  }

  .align-content-sm-end {
    align-content: flex-end !important;
  }

  .align-content-sm-center {
    align-content: center !important;
  }

  .align-content-sm-between {
    align-content: space-between !important;
  }

  .align-content-sm-around {
    align-content: space-around !important;
  }

  .align-content-sm-stretch {
    align-content: stretch !important;
  }

  .align-self-sm-auto {
    align-self: auto !important;
  }

  .align-self-sm-start {
    align-self: flex-start !important;
  }

  .align-self-sm-end {
    align-self: flex-end !important;
  }

  .align-self-sm-center {
    align-self: center !important;
  }

  .align-self-sm-baseline {
    align-self: baseline !important;
  }

  .align-self-sm-stretch {
    align-self: stretch !important;
  }

  .order-sm-first {
    order: -1 !important;
  }

  .order-sm-0 {
    order: 0 !important;
  }

  .order-sm-1 {
    order: 1 !important;
  }

  .order-sm-2 {
    order: 2 !important;
  }

  .order-sm-3 {
    order: 3 !important;
  }

  .order-sm-4 {
    order: 4 !important;
  }

  .order-sm-5 {
    order: 5 !important;
  }

  .order-sm-last {
    order: 6 !important;
  }

  .m-sm-0 {
    margin: 0 !important;
  }

  .m-sm-1 {
    margin: 0.25rem !important;
  }

  .m-sm-2 {
    margin: 0.5rem !important;
  }

  .m-sm-3 {
    margin: 1rem !important;
  }

  .m-sm-4 {
    margin: 1.5rem !important;
  }

  .m-sm-5 {
    margin: 3rem !important;
  }

  .m-sm-auto {
    margin: auto !important;
  }

  .mx-sm-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  .mx-sm-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }

  .mx-sm-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }

  .mx-sm-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }

  .mx-sm-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }

  .mx-sm-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }

  .mx-sm-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }

  .my-sm-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .my-sm-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }

  .my-sm-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }

  .my-sm-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }

  .my-sm-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }

  .my-sm-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }

  .my-sm-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }

  .mt-sm-0 {
    margin-top: 0 !important;
  }

  .mt-sm-1 {
    margin-top: 0.25rem !important;
  }

  .mt-sm-2 {
    margin-top: 0.5rem !important;
  }

  .mt-sm-3 {
    margin-top: 1rem !important;
  }

  .mt-sm-4 {
    margin-top: 1.5rem !important;
  }

  .mt-sm-5 {
    margin-top: 3rem !important;
  }

  .mt-sm-auto {
    margin-top: auto !important;
  }

  .me-sm-0 {
    margin-right: 0 !important;
  }

  .me-sm-1 {
    margin-right: 0.25rem !important;
  }

  .me-sm-2 {
    margin-right: 0.5rem !important;
  }

  .me-sm-3 {
    margin-right: 1rem !important;
  }

  .me-sm-4 {
    margin-right: 1.5rem !important;
  }

  .me-sm-5 {
    margin-right: 3rem !important;
  }

  .me-sm-auto {
    margin-right: auto !important;
  }

  .mb-sm-0 {
    margin-bottom: 0 !important;
  }

  .mb-sm-1 {
    margin-bottom: 0.25rem !important;
  }

  .mb-sm-2 {
    margin-bottom: 0.5rem !important;
  }

  .mb-sm-3 {
    margin-bottom: 1rem !important;
  }

  .mb-sm-4 {
    margin-bottom: 1.5rem !important;
  }

  .mb-sm-5 {
    margin-bottom: 3rem !important;
  }

  .mb-sm-auto {
    margin-bottom: auto !important;
  }

  .ms-sm-0 {
    margin-left: 0 !important;
  }

  .ms-sm-1 {
    margin-left: 0.25rem !important;
  }

  .ms-sm-2 {
    margin-left: 0.5rem !important;
  }

  .ms-sm-3 {
    margin-left: 1rem !important;
  }

  .ms-sm-4 {
    margin-left: 1.5rem !important;
  }

  .ms-sm-5 {
    margin-left: 3rem !important;
  }

  .ms-sm-auto {
    margin-left: auto !important;
  }

  .p-sm-0 {
    padding: 0 !important;
  }

  .p-sm-1 {
    padding: 0.25rem !important;
  }

  .p-sm-2 {
    padding: 0.5rem !important;
  }

  .p-sm-3 {
    padding: 1rem !important;
  }

  .p-sm-4 {
    padding: 1.5rem !important;
  }

  .p-sm-5 {
    padding: 3rem !important;
  }

  .px-sm-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .px-sm-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }

  .px-sm-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }

  .px-sm-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }

  .px-sm-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }

  .px-sm-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }

  .py-sm-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .py-sm-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }

  .py-sm-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }

  .py-sm-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }

  .py-sm-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }

  .py-sm-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }

  .pt-sm-0 {
    padding-top: 0 !important;
  }

  .pt-sm-1 {
    padding-top: 0.25rem !important;
  }

  .pt-sm-2 {
    padding-top: 0.5rem !important;
  }

  .pt-sm-3 {
    padding-top: 1rem !important;
  }

  .pt-sm-4 {
    padding-top: 1.5rem !important;
  }

  .pt-sm-5 {
    padding-top: 3rem !important;
  }

  .pe-sm-0 {
    padding-right: 0 !important;
  }

  .pe-sm-1 {
    padding-right: 0.25rem !important;
  }

  .pe-sm-2 {
    padding-right: 0.5rem !important;
  }

  .pe-sm-3 {
    padding-right: 1rem !important;
  }

  .pe-sm-4 {
    padding-right: 1.5rem !important;
  }

  .pe-sm-5 {
    padding-right: 3rem !important;
  }

  .pb-sm-0 {
    padding-bottom: 0 !important;
  }

  .pb-sm-1 {
    padding-bottom: 0.25rem !important;
  }

  .pb-sm-2 {
    padding-bottom: 0.5rem !important;
  }

  .pb-sm-3 {
    padding-bottom: 1rem !important;
  }

  .pb-sm-4 {
    padding-bottom: 1.5rem !important;
  }

  .pb-sm-5 {
    padding-bottom: 3rem !important;
  }

  .ps-sm-0 {
    padding-left: 0 !important;
  }

  .ps-sm-1 {
    padding-left: 0.25rem !important;
  }

  .ps-sm-2 {
    padding-left: 0.5rem !important;
  }

  .ps-sm-3 {
    padding-left: 1rem !important;
  }

  .ps-sm-4 {
    padding-left: 1.5rem !important;
  }

  .ps-sm-5 {
    padding-left: 3rem !important;
  }

  .text-sm-start {
    text-align: left !important;
  }

  .text-sm-end {
    text-align: right !important;
  }

  .text-sm-center {
    text-align: center !important;
  }
}
@media (min-width: 768px) {
  .float-md-start {
    float: left !important;
  }

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

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

  .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-table {
    display: table !important;
  }

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

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

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

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

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

  .flex-md-fill {
    flex: 1 1 auto !important;
  }

  .flex-md-row {
    flex-direction: row !important;
  }

  .flex-md-column {
    flex-direction: column !important;
  }

  .flex-md-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-md-column-reverse {
    flex-direction: column-reverse !important;
  }

  .flex-md-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-md-grow-1 {
    flex-grow: 1 !important;
  }

  .flex-md-shrink-0 {
    flex-shrink: 0 !important;
  }

  .flex-md-shrink-1 {
    flex-shrink: 1 !important;
  }

  .flex-md-wrap {
    flex-wrap: wrap !important;
  }

  .flex-md-nowrap {
    flex-wrap: nowrap !important;
  }

  .flex-md-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }

  .gap-md-0 {
    gap: 0 !important;
  }

  .gap-md-1 {
    gap: 0.25rem !important;
  }

  .gap-md-2 {
    gap: 0.5rem !important;
  }

  .gap-md-3 {
    gap: 1rem !important;
  }

  .gap-md-4 {
    gap: 1.5rem !important;
  }

  .gap-md-5 {
    gap: 3rem !important;
  }

  .justify-content-md-start {
    justify-content: flex-start !important;
  }

  .justify-content-md-end {
    justify-content: flex-end !important;
  }

  .justify-content-md-center {
    justify-content: center !important;
  }

  .justify-content-md-between {
    justify-content: space-between !important;
  }

  .justify-content-md-around {
    justify-content: space-around !important;
  }

  .justify-content-md-evenly {
    justify-content: space-evenly !important;
  }

  .align-items-md-start {
    align-items: flex-start !important;
  }

  .align-items-md-end {
    align-items: flex-end !important;
  }

  .align-items-md-center {
    align-items: center !important;
  }

  .align-items-md-baseline {
    align-items: baseline !important;
  }

  .align-items-md-stretch {
    align-items: stretch !important;
  }

  .align-content-md-start {
    align-content: flex-start !important;
  }

  .align-content-md-end {
    align-content: flex-end !important;
  }

  .align-content-md-center {
    align-content: center !important;
  }

  .align-content-md-between {
    align-content: space-between !important;
  }

  .align-content-md-around {
    align-content: space-around !important;
  }

  .align-content-md-stretch {
    align-content: stretch !important;
  }

  .align-self-md-auto {
    align-self: auto !important;
  }

  .align-self-md-start {
    align-self: flex-start !important;
  }

  .align-self-md-end {
    align-self: flex-end !important;
  }

  .align-self-md-center {
    align-self: center !important;
  }

  .align-self-md-baseline {
    align-self: baseline !important;
  }

  .align-self-md-stretch {
    align-self: stretch !important;
  }

  .order-md-first {
    order: -1 !important;
  }

  .order-md-0 {
    order: 0 !important;
  }

  .order-md-1 {
    order: 1 !important;
  }

  .order-md-2 {
    order: 2 !important;
  }

  .order-md-3 {
    order: 3 !important;
  }

  .order-md-4 {
    order: 4 !important;
  }

  .order-md-5 {
    order: 5 !important;
  }

  .order-md-last {
    order: 6 !important;
  }

  .m-md-0 {
    margin: 0 !important;
  }

  .m-md-1 {
    margin: 0.25rem !important;
  }

  .m-md-2 {
    margin: 0.5rem !important;
  }

  .m-md-3 {
    margin: 1rem !important;
  }

  .m-md-4 {
    margin: 1.5rem !important;
  }

  .m-md-5 {
    margin: 3rem !important;
  }

  .m-md-auto {
    margin: auto !important;
  }

  .mx-md-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  .mx-md-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }

  .mx-md-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }

  .mx-md-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }

  .mx-md-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }

  .mx-md-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }

  .mx-md-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }

  .my-md-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .my-md-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }

  .my-md-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }

  .my-md-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }

  .my-md-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }

  .my-md-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }

  .my-md-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }

  .mt-md-0 {
    margin-top: 0 !important;
  }

  .mt-md-1 {
    margin-top: 0.25rem !important;
  }

  .mt-md-2 {
    margin-top: 0.5rem !important;
  }

  .mt-md-3 {
    margin-top: 1rem !important;
  }

  .mt-md-4 {
    margin-top: 1.5rem !important;
  }

  .mt-md-5 {
    margin-top: 3rem !important;
  }

  .mt-md-auto {
    margin-top: auto !important;
  }

  .me-md-0 {
    margin-right: 0 !important;
  }

  .me-md-1 {
    margin-right: 0.25rem !important;
  }

  .me-md-2 {
    margin-right: 0.5rem !important;
  }

  .me-md-3 {
    margin-right: 1rem !important;
  }

  .me-md-4 {
    margin-right: 1.5rem !important;
  }

  .me-md-5 {
    margin-right: 3rem !important;
  }

  .me-md-auto {
    margin-right: auto !important;
  }

  .mb-md-0 {
    margin-bottom: 0 !important;
  }

  .mb-md-1 {
    margin-bottom: 0.25rem !important;
  }

  .mb-md-2 {
    margin-bottom: 0.5rem !important;
  }

  .mb-md-3 {
    margin-bottom: 1rem !important;
  }

  .mb-md-4 {
    margin-bottom: 1.5rem !important;
  }

  .mb-md-5 {
    margin-bottom: 3rem !important;
  }

  .mb-md-auto {
    margin-bottom: auto !important;
  }

  .ms-md-0 {
    margin-left: 0 !important;
  }

  .ms-md-1 {
    margin-left: 0.25rem !important;
  }

  .ms-md-2 {
    margin-left: 0.5rem !important;
  }

  .ms-md-3 {
    margin-left: 1rem !important;
  }

  .ms-md-4 {
    margin-left: 1.5rem !important;
  }

  .ms-md-5 {
    margin-left: 3rem !important;
  }

  .ms-md-auto {
    margin-left: auto !important;
  }

  .p-md-0 {
    padding: 0 !important;
  }

  .p-md-1 {
    padding: 0.25rem !important;
  }

  .p-md-2 {
    padding: 0.5rem !important;
  }

  .p-md-3 {
    padding: 1rem !important;
  }

  .p-md-4 {
    padding: 1.5rem !important;
  }

  .p-md-5 {
    padding: 3rem !important;
  }

  .px-md-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .px-md-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }

  .px-md-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }

  .px-md-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }

  .px-md-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }

  .px-md-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }

  .py-md-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .py-md-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }

  .py-md-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }

  .py-md-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }

  .py-md-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }

  .py-md-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }

  .pt-md-0 {
    padding-top: 0 !important;
  }

  .pt-md-1 {
    padding-top: 0.25rem !important;
  }

  .pt-md-2 {
    padding-top: 0.5rem !important;
  }

  .pt-md-3 {
    padding-top: 1rem !important;
  }

  .pt-md-4 {
    padding-top: 1.5rem !important;
  }

  .pt-md-5 {
    padding-top: 3rem !important;
  }

  .pe-md-0 {
    padding-right: 0 !important;
  }

  .pe-md-1 {
    padding-right: 0.25rem !important;
  }

  .pe-md-2 {
    padding-right: 0.5rem !important;
  }

  .pe-md-3 {
    padding-right: 1rem !important;
  }

  .pe-md-4 {
    padding-right: 1.5rem !important;
  }

  .pe-md-5 {
    padding-right: 3rem !important;
  }

  .pb-md-0 {
    padding-bottom: 0 !important;
  }

  .pb-md-1 {
    padding-bottom: 0.25rem !important;
  }

  .pb-md-2 {
    padding-bottom: 0.5rem !important;
  }

  .pb-md-3 {
    padding-bottom: 1rem !important;
  }

  .pb-md-4 {
    padding-bottom: 1.5rem !important;
  }

  .pb-md-5 {
    padding-bottom: 3rem !important;
  }

  .ps-md-0 {
    padding-left: 0 !important;
  }

  .ps-md-1 {
    padding-left: 0.25rem !important;
  }

  .ps-md-2 {
    padding-left: 0.5rem !important;
  }

  .ps-md-3 {
    padding-left: 1rem !important;
  }

  .ps-md-4 {
    padding-left: 1.5rem !important;
  }

  .ps-md-5 {
    padding-left: 3rem !important;
  }

  .text-md-start {
    text-align: left !important;
  }

  .text-md-end {
    text-align: right !important;
  }

  .text-md-center {
    text-align: center !important;
  }
}
@media (min-width: 992px) {
  .float-lg-start {
    float: left !important;
  }

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

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

  .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-table {
    display: table !important;
  }

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

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

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

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

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

  .flex-lg-fill {
    flex: 1 1 auto !important;
  }

  .flex-lg-row {
    flex-direction: row !important;
  }

  .flex-lg-column {
    flex-direction: column !important;
  }

  .flex-lg-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-lg-column-reverse {
    flex-direction: column-reverse !important;
  }

  .flex-lg-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-lg-grow-1 {
    flex-grow: 1 !important;
  }

  .flex-lg-shrink-0 {
    flex-shrink: 0 !important;
  }

  .flex-lg-shrink-1 {
    flex-shrink: 1 !important;
  }

  .flex-lg-wrap {
    flex-wrap: wrap !important;
  }

  .flex-lg-nowrap {
    flex-wrap: nowrap !important;
  }

  .flex-lg-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }

  .gap-lg-0 {
    gap: 0 !important;
  }

  .gap-lg-1 {
    gap: 0.25rem !important;
  }

  .gap-lg-2 {
    gap: 0.5rem !important;
  }

  .gap-lg-3 {
    gap: 1rem !important;
  }

  .gap-lg-4 {
    gap: 1.5rem !important;
  }

  .gap-lg-5 {
    gap: 3rem !important;
  }

  .justify-content-lg-start {
    justify-content: flex-start !important;
  }

  .justify-content-lg-end {
    justify-content: flex-end !important;
  }

  .justify-content-lg-center {
    justify-content: center !important;
  }

  .justify-content-lg-between {
    justify-content: space-between !important;
  }

  .justify-content-lg-around {
    justify-content: space-around !important;
  }

  .justify-content-lg-evenly {
    justify-content: space-evenly !important;
  }

  .align-items-lg-start {
    align-items: flex-start !important;
  }

  .align-items-lg-end {
    align-items: flex-end !important;
  }

  .align-items-lg-center {
    align-items: center !important;
  }

  .align-items-lg-baseline {
    align-items: baseline !important;
  }

  .align-items-lg-stretch {
    align-items: stretch !important;
  }

  .align-content-lg-start {
    align-content: flex-start !important;
  }

  .align-content-lg-end {
    align-content: flex-end !important;
  }

  .align-content-lg-center {
    align-content: center !important;
  }

  .align-content-lg-between {
    align-content: space-between !important;
  }

  .align-content-lg-around {
    align-content: space-around !important;
  }

  .align-content-lg-stretch {
    align-content: stretch !important;
  }

  .align-self-lg-auto {
    align-self: auto !important;
  }

  .align-self-lg-start {
    align-self: flex-start !important;
  }

  .align-self-lg-end {
    align-self: flex-end !important;
  }

  .align-self-lg-center {
    align-self: center !important;
  }

  .align-self-lg-baseline {
    align-self: baseline !important;
  }

  .align-self-lg-stretch {
    align-self: stretch !important;
  }

  .order-lg-first {
    order: -1 !important;
  }

  .order-lg-0 {
    order: 0 !important;
  }

  .order-lg-1 {
    order: 1 !important;
  }

  .order-lg-2 {
    order: 2 !important;
  }

  .order-lg-3 {
    order: 3 !important;
  }

  .order-lg-4 {
    order: 4 !important;
  }

  .order-lg-5 {
    order: 5 !important;
  }

  .order-lg-last {
    order: 6 !important;
  }

  .m-lg-0 {
    margin: 0 !important;
  }

  .m-lg-1 {
    margin: 0.25rem !important;
  }

  .m-lg-2 {
    margin: 0.5rem !important;
  }

  .m-lg-3 {
    margin: 1rem !important;
  }

  .m-lg-4 {
    margin: 1.5rem !important;
  }

  .m-lg-5 {
    margin: 3rem !important;
  }

  .m-lg-auto {
    margin: auto !important;
  }

  .mx-lg-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  .mx-lg-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }

  .mx-lg-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }

  .mx-lg-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }

  .mx-lg-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }

  .mx-lg-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }

  .mx-lg-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }

  .my-lg-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .my-lg-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }

  .my-lg-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }

  .my-lg-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }

  .my-lg-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }

  .my-lg-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }

  .my-lg-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }

  .mt-lg-0 {
    margin-top: 0 !important;
  }

  .mt-lg-1 {
    margin-top: 0.25rem !important;
  }

  .mt-lg-2 {
    margin-top: 0.5rem !important;
  }

  .mt-lg-3 {
    margin-top: 1rem !important;
  }

  .mt-lg-4 {
    margin-top: 1.5rem !important;
  }

  .mt-lg-5 {
    margin-top: 3rem !important;
  }

  .mt-lg-auto {
    margin-top: auto !important;
  }

  .me-lg-0 {
    margin-right: 0 !important;
  }

  .me-lg-1 {
    margin-right: 0.25rem !important;
  }

  .me-lg-2 {
    margin-right: 0.5rem !important;
  }

  .me-lg-3 {
    margin-right: 1rem !important;
  }

  .me-lg-4 {
    margin-right: 1.5rem !important;
  }

  .me-lg-5 {
    margin-right: 3rem !important;
  }

  .me-lg-auto {
    margin-right: auto !important;
  }

  .mb-lg-0 {
    margin-bottom: 0 !important;
  }

  .mb-lg-1 {
    margin-bottom: 0.25rem !important;
  }

  .mb-lg-2 {
    margin-bottom: 0.5rem !important;
  }

  .mb-lg-3 {
    margin-bottom: 1rem !important;
  }

  .mb-lg-4 {
    margin-bottom: 1.5rem !important;
  }

  .mb-lg-5 {
    margin-bottom: 3rem !important;
  }

  .mb-lg-auto {
    margin-bottom: auto !important;
  }

  .ms-lg-0 {
    margin-left: 0 !important;
  }

  .ms-lg-1 {
    margin-left: 0.25rem !important;
  }

  .ms-lg-2 {
    margin-left: 0.5rem !important;
  }

  .ms-lg-3 {
    margin-left: 1rem !important;
  }

  .ms-lg-4 {
    margin-left: 1.5rem !important;
  }

  .ms-lg-5 {
    margin-left: 3rem !important;
  }

  .ms-lg-auto {
    margin-left: auto !important;
  }

  .p-lg-0 {
    padding: 0 !important;
  }

  .p-lg-1 {
    padding: 0.25rem !important;
  }

  .p-lg-2 {
    padding: 0.5rem !important;
  }

  .p-lg-3 {
    padding: 1rem !important;
  }

  .p-lg-4 {
    padding: 1.5rem !important;
  }

  .p-lg-5 {
    padding: 3rem !important;
  }

  .px-lg-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .px-lg-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }

  .px-lg-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }

  .px-lg-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }

  .px-lg-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }

  .px-lg-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }

  .py-lg-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .py-lg-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }

  .py-lg-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }

  .py-lg-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }

  .py-lg-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }

  .py-lg-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }

  .pt-lg-0 {
    padding-top: 0 !important;
  }

  .pt-lg-1 {
    padding-top: 0.25rem !important;
  }

  .pt-lg-2 {
    padding-top: 0.5rem !important;
  }

  .pt-lg-3 {
    padding-top: 1rem !important;
  }

  .pt-lg-4 {
    padding-top: 1.5rem !important;
  }

  .pt-lg-5 {
    padding-top: 3rem !important;
  }

  .pe-lg-0 {
    padding-right: 0 !important;
  }

  .pe-lg-1 {
    padding-right: 0.25rem !important;
  }

  .pe-lg-2 {
    padding-right: 0.5rem !important;
  }

  .pe-lg-3 {
    padding-right: 1rem !important;
  }

  .pe-lg-4 {
    padding-right: 1.5rem !important;
  }

  .pe-lg-5 {
    padding-right: 3rem !important;
  }

  .pb-lg-0 {
    padding-bottom: 0 !important;
  }

  .pb-lg-1 {
    padding-bottom: 0.25rem !important;
  }

  .pb-lg-2 {
    padding-bottom: 0.5rem !important;
  }

  .pb-lg-3 {
    padding-bottom: 1rem !important;
  }

  .pb-lg-4 {
    padding-bottom: 1.5rem !important;
  }

  .pb-lg-5 {
    padding-bottom: 3rem !important;
  }

  .ps-lg-0 {
    padding-left: 0 !important;
  }

  .ps-lg-1 {
    padding-left: 0.25rem !important;
  }

  .ps-lg-2 {
    padding-left: 0.5rem !important;
  }

  .ps-lg-3 {
    padding-left: 1rem !important;
  }

  .ps-lg-4 {
    padding-left: 1.5rem !important;
  }

  .ps-lg-5 {
    padding-left: 3rem !important;
  }

  .text-lg-start {
    text-align: left !important;
  }

  .text-lg-end {
    text-align: right !important;
  }

  .text-lg-center {
    text-align: center !important;
  }
}
@media (min-width: 1200px) {
  .float-xl-start {
    float: left !important;
  }

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

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

  .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-table {
    display: table !important;
  }

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

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

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

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

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

  .flex-xl-fill {
    flex: 1 1 auto !important;
  }

  .flex-xl-row {
    flex-direction: row !important;
  }

  .flex-xl-column {
    flex-direction: column !important;
  }

  .flex-xl-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-xl-column-reverse {
    flex-direction: column-reverse !important;
  }

  .flex-xl-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-xl-grow-1 {
    flex-grow: 1 !important;
  }

  .flex-xl-shrink-0 {
    flex-shrink: 0 !important;
  }

  .flex-xl-shrink-1 {
    flex-shrink: 1 !important;
  }

  .flex-xl-wrap {
    flex-wrap: wrap !important;
  }

  .flex-xl-nowrap {
    flex-wrap: nowrap !important;
  }

  .flex-xl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }

  .gap-xl-0 {
    gap: 0 !important;
  }

  .gap-xl-1 {
    gap: 0.25rem !important;
  }

  .gap-xl-2 {
    gap: 0.5rem !important;
  }

  .gap-xl-3 {
    gap: 1rem !important;
  }

  .gap-xl-4 {
    gap: 1.5rem !important;
  }

  .gap-xl-5 {
    gap: 3rem !important;
  }

  .justify-content-xl-start {
    justify-content: flex-start !important;
  }

  .justify-content-xl-end {
    justify-content: flex-end !important;
  }

  .justify-content-xl-center {
    justify-content: center !important;
  }

  .justify-content-xl-between {
    justify-content: space-between !important;
  }

  .justify-content-xl-around {
    justify-content: space-around !important;
  }

  .justify-content-xl-evenly {
    justify-content: space-evenly !important;
  }

  .align-items-xl-start {
    align-items: flex-start !important;
  }

  .align-items-xl-end {
    align-items: flex-end !important;
  }

  .align-items-xl-center {
    align-items: center !important;
  }

  .align-items-xl-baseline {
    align-items: baseline !important;
  }

  .align-items-xl-stretch {
    align-items: stretch !important;
  }

  .align-content-xl-start {
    align-content: flex-start !important;
  }

  .align-content-xl-end {
    align-content: flex-end !important;
  }

  .align-content-xl-center {
    align-content: center !important;
  }

  .align-content-xl-between {
    align-content: space-between !important;
  }

  .align-content-xl-around {
    align-content: space-around !important;
  }

  .align-content-xl-stretch {
    align-content: stretch !important;
  }

  .align-self-xl-auto {
    align-self: auto !important;
  }

  .align-self-xl-start {
    align-self: flex-start !important;
  }

  .align-self-xl-end {
    align-self: flex-end !important;
  }

  .align-self-xl-center {
    align-self: center !important;
  }

  .align-self-xl-baseline {
    align-self: baseline !important;
  }

  .align-self-xl-stretch {
    align-self: stretch !important;
  }

  .order-xl-first {
    order: -1 !important;
  }

  .order-xl-0 {
    order: 0 !important;
  }

  .order-xl-1 {
    order: 1 !important;
  }

  .order-xl-2 {
    order: 2 !important;
  }

  .order-xl-3 {
    order: 3 !important;
  }

  .order-xl-4 {
    order: 4 !important;
  }

  .order-xl-5 {
    order: 5 !important;
  }

  .order-xl-last {
    order: 6 !important;
  }

  .m-xl-0 {
    margin: 0 !important;
  }

  .m-xl-1 {
    margin: 0.25rem !important;
  }

  .m-xl-2 {
    margin: 0.5rem !important;
  }

  .m-xl-3 {
    margin: 1rem !important;
  }

  .m-xl-4 {
    margin: 1.5rem !important;
  }

  .m-xl-5 {
    margin: 3rem !important;
  }

  .m-xl-auto {
    margin: auto !important;
  }

  .mx-xl-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  .mx-xl-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }

  .mx-xl-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }

  .mx-xl-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }

  .mx-xl-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }

  .mx-xl-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }

  .mx-xl-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }

  .my-xl-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .my-xl-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }

  .my-xl-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }

  .my-xl-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }

  .my-xl-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }

  .my-xl-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }

  .my-xl-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }

  .mt-xl-0 {
    margin-top: 0 !important;
  }

  .mt-xl-1 {
    margin-top: 0.25rem !important;
  }

  .mt-xl-2 {
    margin-top: 0.5rem !important;
  }

  .mt-xl-3 {
    margin-top: 1rem !important;
  }

  .mt-xl-4 {
    margin-top: 1.5rem !important;
  }

  .mt-xl-5 {
    margin-top: 3rem !important;
  }

  .mt-xl-auto {
    margin-top: auto !important;
  }

  .me-xl-0 {
    margin-right: 0 !important;
  }

  .me-xl-1 {
    margin-right: 0.25rem !important;
  }

  .me-xl-2 {
    margin-right: 0.5rem !important;
  }

  .me-xl-3 {
    margin-right: 1rem !important;
  }

  .me-xl-4 {
    margin-right: 1.5rem !important;
  }

  .me-xl-5 {
    margin-right: 3rem !important;
  }

  .me-xl-auto {
    margin-right: auto !important;
  }

  .mb-xl-0 {
    margin-bottom: 0 !important;
  }

  .mb-xl-1 {
    margin-bottom: 0.25rem !important;
  }

  .mb-xl-2 {
    margin-bottom: 0.5rem !important;
  }

  .mb-xl-3 {
    margin-bottom: 1rem !important;
  }

  .mb-xl-4 {
    margin-bottom: 1.5rem !important;
  }

  .mb-xl-5 {
    margin-bottom: 3rem !important;
  }

  .mb-xl-auto {
    margin-bottom: auto !important;
  }

  .ms-xl-0 {
    margin-left: 0 !important;
  }

  .ms-xl-1 {
    margin-left: 0.25rem !important;
  }

  .ms-xl-2 {
    margin-left: 0.5rem !important;
  }

  .ms-xl-3 {
    margin-left: 1rem !important;
  }

  .ms-xl-4 {
    margin-left: 1.5rem !important;
  }

  .ms-xl-5 {
    margin-left: 3rem !important;
  }

  .ms-xl-auto {
    margin-left: auto !important;
  }

  .p-xl-0 {
    padding: 0 !important;
  }

  .p-xl-1 {
    padding: 0.25rem !important;
  }

  .p-xl-2 {
    padding: 0.5rem !important;
  }

  .p-xl-3 {
    padding: 1rem !important;
  }

  .p-xl-4 {
    padding: 1.5rem !important;
  }

  .p-xl-5 {
    padding: 3rem !important;
  }

  .px-xl-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .px-xl-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }

  .px-xl-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }

  .px-xl-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }

  .px-xl-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }

  .px-xl-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }

  .py-xl-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .py-xl-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }

  .py-xl-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }

  .py-xl-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }

  .py-xl-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }

  .py-xl-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }

  .pt-xl-0 {
    padding-top: 0 !important;
  }

  .pt-xl-1 {
    padding-top: 0.25rem !important;
  }

  .pt-xl-2 {
    padding-top: 0.5rem !important;
  }

  .pt-xl-3 {
    padding-top: 1rem !important;
  }

  .pt-xl-4 {
    padding-top: 1.5rem !important;
  }

  .pt-xl-5 {
    padding-top: 3rem !important;
  }

  .pe-xl-0 {
    padding-right: 0 !important;
  }

  .pe-xl-1 {
    padding-right: 0.25rem !important;
  }

  .pe-xl-2 {
    padding-right: 0.5rem !important;
  }

  .pe-xl-3 {
    padding-right: 1rem !important;
  }

  .pe-xl-4 {
    padding-right: 1.5rem !important;
  }

  .pe-xl-5 {
    padding-right: 3rem !important;
  }

  .pb-xl-0 {
    padding-bottom: 0 !important;
  }

  .pb-xl-1 {
    padding-bottom: 0.25rem !important;
  }

  .pb-xl-2 {
    padding-bottom: 0.5rem !important;
  }

  .pb-xl-3 {
    padding-bottom: 1rem !important;
  }

  .pb-xl-4 {
    padding-bottom: 1.5rem !important;
  }

  .pb-xl-5 {
    padding-bottom: 3rem !important;
  }

  .ps-xl-0 {
    padding-left: 0 !important;
  }

  .ps-xl-1 {
    padding-left: 0.25rem !important;
  }

  .ps-xl-2 {
    padding-left: 0.5rem !important;
  }

  .ps-xl-3 {
    padding-left: 1rem !important;
  }

  .ps-xl-4 {
    padding-left: 1.5rem !important;
  }

  .ps-xl-5 {
    padding-left: 3rem !important;
  }

  .text-xl-start {
    text-align: left !important;
  }

  .text-xl-end {
    text-align: right !important;
  }

  .text-xl-center {
    text-align: center !important;
  }
}
@media (min-width: 1400px) {
  .float-xxl-start {
    float: left !important;
  }

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

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

  .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-table {
    display: table !important;
  }

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

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

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

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

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

  .flex-xxl-fill {
    flex: 1 1 auto !important;
  }

  .flex-xxl-row {
    flex-direction: row !important;
  }

  .flex-xxl-column {
    flex-direction: column !important;
  }

  .flex-xxl-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-xxl-column-reverse {
    flex-direction: column-reverse !important;
  }

  .flex-xxl-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-xxl-grow-1 {
    flex-grow: 1 !important;
  }

  .flex-xxl-shrink-0 {
    flex-shrink: 0 !important;
  }

  .flex-xxl-shrink-1 {
    flex-shrink: 1 !important;
  }

  .flex-xxl-wrap {
    flex-wrap: wrap !important;
  }

  .flex-xxl-nowrap {
    flex-wrap: nowrap !important;
  }

  .flex-xxl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }

  .gap-xxl-0 {
    gap: 0 !important;
  }

  .gap-xxl-1 {
    gap: 0.25rem !important;
  }

  .gap-xxl-2 {
    gap: 0.5rem !important;
  }

  .gap-xxl-3 {
    gap: 1rem !important;
  }

  .gap-xxl-4 {
    gap: 1.5rem !important;
  }

  .gap-xxl-5 {
    gap: 3rem !important;
  }

  .justify-content-xxl-start {
    justify-content: flex-start !important;
  }

  .justify-content-xxl-end {
    justify-content: flex-end !important;
  }

  .justify-content-xxl-center {
    justify-content: center !important;
  }

  .justify-content-xxl-between {
    justify-content: space-between !important;
  }

  .justify-content-xxl-around {
    justify-content: space-around !important;
  }

  .justify-content-xxl-evenly {
    justify-content: space-evenly !important;
  }

  .align-items-xxl-start {
    align-items: flex-start !important;
  }

  .align-items-xxl-end {
    align-items: flex-end !important;
  }

  .align-items-xxl-center {
    align-items: center !important;
  }

  .align-items-xxl-baseline {
    align-items: baseline !important;
  }

  .align-items-xxl-stretch {
    align-items: stretch !important;
  }

  .align-content-xxl-start {
    align-content: flex-start !important;
  }

  .align-content-xxl-end {
    align-content: flex-end !important;
  }

  .align-content-xxl-center {
    align-content: center !important;
  }

  .align-content-xxl-between {
    align-content: space-between !important;
  }

  .align-content-xxl-around {
    align-content: space-around !important;
  }

  .align-content-xxl-stretch {
    align-content: stretch !important;
  }

  .align-self-xxl-auto {
    align-self: auto !important;
  }

  .align-self-xxl-start {
    align-self: flex-start !important;
  }

  .align-self-xxl-end {
    align-self: flex-end !important;
  }

  .align-self-xxl-center {
    align-self: center !important;
  }

  .align-self-xxl-baseline {
    align-self: baseline !important;
  }

  .align-self-xxl-stretch {
    align-self: stretch !important;
  }

  .order-xxl-first {
    order: -1 !important;
  }

  .order-xxl-0 {
    order: 0 !important;
  }

  .order-xxl-1 {
    order: 1 !important;
  }

  .order-xxl-2 {
    order: 2 !important;
  }

  .order-xxl-3 {
    order: 3 !important;
  }

  .order-xxl-4 {
    order: 4 !important;
  }

  .order-xxl-5 {
    order: 5 !important;
  }

  .order-xxl-last {
    order: 6 !important;
  }

  .m-xxl-0 {
    margin: 0 !important;
  }

  .m-xxl-1 {
    margin: 0.25rem !important;
  }

  .m-xxl-2 {
    margin: 0.5rem !important;
  }

  .m-xxl-3 {
    margin: 1rem !important;
  }

  .m-xxl-4 {
    margin: 1.5rem !important;
  }

  .m-xxl-5 {
    margin: 3rem !important;
  }

  .m-xxl-auto {
    margin: auto !important;
  }

  .mx-xxl-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  .mx-xxl-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }

  .mx-xxl-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }

  .mx-xxl-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }

  .mx-xxl-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }

  .mx-xxl-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }

  .mx-xxl-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }

  .my-xxl-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .my-xxl-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }

  .my-xxl-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }

  .my-xxl-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }

  .my-xxl-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }

  .my-xxl-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }

  .my-xxl-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }

  .mt-xxl-0 {
    margin-top: 0 !important;
  }

  .mt-xxl-1 {
    margin-top: 0.25rem !important;
  }

  .mt-xxl-2 {
    margin-top: 0.5rem !important;
  }

  .mt-xxl-3 {
    margin-top: 1rem !important;
  }

  .mt-xxl-4 {
    margin-top: 1.5rem !important;
  }

  .mt-xxl-5 {
    margin-top: 3rem !important;
  }

  .mt-xxl-auto {
    margin-top: auto !important;
  }

  .me-xxl-0 {
    margin-right: 0 !important;
  }

  .me-xxl-1 {
    margin-right: 0.25rem !important;
  }

  .me-xxl-2 {
    margin-right: 0.5rem !important;
  }

  .me-xxl-3 {
    margin-right: 1rem !important;
  }

  .me-xxl-4 {
    margin-right: 1.5rem !important;
  }

  .me-xxl-5 {
    margin-right: 3rem !important;
  }

  .me-xxl-auto {
    margin-right: auto !important;
  }

  .mb-xxl-0 {
    margin-bottom: 0 !important;
  }

  .mb-xxl-1 {
    margin-bottom: 0.25rem !important;
  }

  .mb-xxl-2 {
    margin-bottom: 0.5rem !important;
  }

  .mb-xxl-3 {
    margin-bottom: 1rem !important;
  }

  .mb-xxl-4 {
    margin-bottom: 1.5rem !important;
  }

  .mb-xxl-5 {
    margin-bottom: 3rem !important;
  }

  .mb-xxl-auto {
    margin-bottom: auto !important;
  }

  .ms-xxl-0 {
    margin-left: 0 !important;
  }

  .ms-xxl-1 {
    margin-left: 0.25rem !important;
  }

  .ms-xxl-2 {
    margin-left: 0.5rem !important;
  }

  .ms-xxl-3 {
    margin-left: 1rem !important;
  }

  .ms-xxl-4 {
    margin-left: 1.5rem !important;
  }

  .ms-xxl-5 {
    margin-left: 3rem !important;
  }

  .ms-xxl-auto {
    margin-left: auto !important;
  }

  .p-xxl-0 {
    padding: 0 !important;
  }

  .p-xxl-1 {
    padding: 0.25rem !important;
  }

  .p-xxl-2 {
    padding: 0.5rem !important;
  }

  .p-xxl-3 {
    padding: 1rem !important;
  }

  .p-xxl-4 {
    padding: 1.5rem !important;
  }

  .p-xxl-5 {
    padding: 3rem !important;
  }

  .px-xxl-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .px-xxl-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }

  .px-xxl-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }

  .px-xxl-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }

  .px-xxl-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }

  .px-xxl-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }

  .py-xxl-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .py-xxl-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }

  .py-xxl-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }

  .py-xxl-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }

  .py-xxl-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }

  .py-xxl-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }

  .pt-xxl-0 {
    padding-top: 0 !important;
  }

  .pt-xxl-1 {
    padding-top: 0.25rem !important;
  }

  .pt-xxl-2 {
    padding-top: 0.5rem !important;
  }

  .pt-xxl-3 {
    padding-top: 1rem !important;
  }

  .pt-xxl-4 {
    padding-top: 1.5rem !important;
  }

  .pt-xxl-5 {
    padding-top: 3rem !important;
  }

  .pe-xxl-0 {
    padding-right: 0 !important;
  }

  .pe-xxl-1 {
    padding-right: 0.25rem !important;
  }

  .pe-xxl-2 {
    padding-right: 0.5rem !important;
  }

  .pe-xxl-3 {
    padding-right: 1rem !important;
  }

  .pe-xxl-4 {
    padding-right: 1.5rem !important;
  }

  .pe-xxl-5 {
    padding-right: 3rem !important;
  }

  .pb-xxl-0 {
    padding-bottom: 0 !important;
  }

  .pb-xxl-1 {
    padding-bottom: 0.25rem !important;
  }

  .pb-xxl-2 {
    padding-bottom: 0.5rem !important;
  }

  .pb-xxl-3 {
    padding-bottom: 1rem !important;
  }

  .pb-xxl-4 {
    padding-bottom: 1.5rem !important;
  }

  .pb-xxl-5 {
    padding-bottom: 3rem !important;
  }

  .ps-xxl-0 {
    padding-left: 0 !important;
  }

  .ps-xxl-1 {
    padding-left: 0.25rem !important;
  }

  .ps-xxl-2 {
    padding-left: 0.5rem !important;
  }

  .ps-xxl-3 {
    padding-left: 1rem !important;
  }

  .ps-xxl-4 {
    padding-left: 1.5rem !important;
  }

  .ps-xxl-5 {
    padding-left: 3rem !important;
  }

  .text-xxl-start {
    text-align: left !important;
  }

  .text-xxl-end {
    text-align: right !important;
  }

  .text-xxl-center {
    text-align: center !important;
  }
}
@media (min-width: 1200px) {
  .fs-1 {
    font-size: 2.5rem !important;
  }

  .fs-2 {
    font-size: 2rem !important;
  }

  .fs-3 {
    font-size: 1.75rem !important;
  }

  .fs-4 {
    font-size: 1.5rem !important;
  }
}
@media print {
  .d-print-inline {
    display: inline !important;
  }

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

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

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

  .d-print-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;
  }
}
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/**
 * App styles
 */
/**
 * Colors variables
 */
:root {
  --bg-color: #930000;
  --text-Color: #6e1802;
  --darker-color-5: #7a0000;
  --lighter-color-5: #ad0000;
  --lighter-color-70: #fff9f9;
  --cellarmanTheme-bg-color: #904d14;
  --cellarmanTheme-text-color: #904d14;
  --cellarmanTheme-darker-color-5: #7a4111;
  --cellarmanTheme-lighter-color-5: #a65917;
  --cellarmanTheme-lighter-color-70: #ffffff;
}

/**
 * Fonts variables
 */
/**
 * Animations variables
 */
/**
 * Breakpoints variables
 */
/**
 * Basic styles
 */
html {
  height: 100%;
}

body {
  background-color: #ffffff;
  color: #000000;
  font-family: "Roboto Condensed", sans-serif;
  font-size: 14px;
  font-weight: 400;
  margin: 0;
  height: 100%;
}

.main-container {
  display: flex;
  flex-direction: column;
  min-height: 85%;
  max-width: 1080px;
  margin: 0 auto;
}

a {
  color: var(--text-Color);
  transition: color 0.3s ease-in-out;
}
a:hover {
  color: var(--bg-color);
}

strong {
  font-weight: bold;
}

::-webkit-scrollbar {
  width: 5px;
}

::-webkit-scrollbar-track {
  background-color: #F7F3F1;
  border-radius: 0;
}

::-webkit-scrollbar-thumb {
  border-radius: 0;
  background-color: var(--bg-color);
}

.cursor-pointer {
  cursor: pointer;
}

.body_maintenance {
  height: 86vh;
}

.navbar-breadcrumb {
  padding-top: 2rem;
  border-top: 1px solid #979797;
}
.navbar-breadcrumb ul {
  display: flex;
  padding-left: 0;
  list-style: none;
  font-size: 14px;
  color: #787878;
}
.navbar-breadcrumb ul li {
  margin-right: 5px;
}
.navbar-breadcrumb ul li a {
  color: inherit;
}
.navbar-breadcrumb ul li:nth-child(1) {
  text-transform: uppercase;
}

/**
 * Buttons
 */
.btn, .btn__outline, .btn-primary,
.row .btn-primary {
  text-transform: uppercase;
  padding: 0.375rem 1.75rem;
  transition: all 0.3s ease-in-out;
}

.btn-primary,
.row .btn-primary {
  font-size: 14px;
  background-color: var(--bg-color);
  border-color: var(--bg-color);
  color: #ffffff;
}
.btn-primary:hover,
.row .btn-primary:hover {
  color: #ffffff;
  background-color: var(--lighter-color-5);
  border-color: var(--lighter-color-70);
}
.btn-primary:focus, .btn-primary:active,
.row .btn-primary:focus,
.row .btn-primary:active {
  background-color: var(--lighter-color-5);
  border-color: var(--darker-color-5);
  box-shadow: 0 0 0 0.25rem var(--darker-color-5);
}
.btn-primary:active:focus,
.row .btn-primary:active:focus {
  box-shadow: 0 0 0 0.25rem var(--darker-color-5);
}
.btn-primary:disabled, .btn-primary.btn-disabled,
.row .btn-primary:disabled,
.row .btn-primary.btn-disabled {
  background-color: #c3c3c3;
  border-color: #c3c3c3;
  color: #787878;
  cursor: initial;
}

.btn__outline {
  border-color: var(--bg-color);
  color: var(--bg-color);
}
.btn__outline:hover {
  color: #ffffff;
  background-color: var(--bg-color);
}
.btn__outline:focus, .btn__outline:active {
  color: #ffffff;
  background-color: var(--bg-color);
  box-shadow: 0 0 0 0.25rem var(--bg-color);
}
.btn__outline:active:focus {
  box-shadow: 0 0 0 0.25rem var(--bg-color);
}

.btn-delete {
  min-width: 128px;
  margin: 9px 0 !important;
}
.btn-delete--disabled {
  background-color: #c3c3c3;
  border-color: #c3c3c3;
}
.btn-delete--disabled:focus, .btn-delete--disabled:active, .btn-delete--disabled:hover {
  background-color: #c3c3c3;
  border-color: #c3c3c3;
}

.btn-right {
  width: 47% !important;
  margin: 0 0 0 10px !important;
}
@media (max-width: 991px) {
  .btn-right {
    width: 80% !important;
  }
}

button:disabled {
  background-color: #c3c3c3 !important;
  border-color: #c3c3c3 !important;
  color: #787878;
  cursor: initial;
}

/**
 * Checkboxes
 */
.checkbox {
  display: flex;
}
.checkbox input {
  display: none;
}
.checkbox label {
  color: #444444;
  font-size: 14px;
  cursor: pointer;
}
.checkbox i {
  margin-right: 5px;
  color: #c3c3c3;
  font-size: 20px;
}
.checkbox a {
  color: #444444;
}
.checkbox .checkbox__checked {
  display: none;
}
.checkbox input[type=checkbox]:checked ~ .checkbox__checked {
  display: inline-block;
  color: var(--bg-color);
}
.checkbox input[type=checkbox]:checked ~ .checkbox__unchecked {
  display: none;
}
.checkbox .checkbox__label-text {
  vertical-align: top;
}

/**
 * Forms fields
 */
label {
  margin-bottom: 10px;
}

.sub-label {
  color: #c3c3c3;
}

input[type=email],
input[type=tel] input[type=text],
input[type=url],
textarea {
  width: 100%;
  border-radius: 2px;
  border: 1px solid #c3c3c3;
  padding: 5px 10px;
  transition: all 0.3s ease-in-out;
}
input[type=email]:focus, input[type=email]:hover, input[type=email]:active,
input[type=tel] input[type=text]:focus,
input[type=tel] input[type=text]:hover,
input[type=tel] input[type=text]:active,
input[type=url]:focus,
input[type=url]:hover,
input[type=url]:active,
textarea:focus,
textarea:hover,
textarea:active {
  box-shadow: 0 0 0 0.1rem var(--darker-color-5) inset;
  border-color: var(--bg-color);
}
input[type=email].error,
input[type=tel] input[type=text].error,
input[type=url].error,
textarea.error {
  border-color: red;
}

textarea {
  resize: none;
}

input.form-control,
textarea.form-control,
select.form-control {
  border: 1px solid #c3c3c3 !important;
  transition: all 0.3s ease-in-out;
  padding: 0.375rem 0.75rem !important;
}
input.form-control:-webkit-autofill,
textarea.form-control:-webkit-autofill,
select.form-control:-webkit-autofill {
  -webkit-text-fill-color: #000000;
  box-shadow: 0 0 0 1000px var(--lighter-color-70) inset;
  -webkit-box-shadow: 0 0 0 1000px var(--lighter-color-70) inset;
  transition: background-color 5000s ease-in-out 0s;
}
input.form-control:focus, input.form-control:active,
textarea.form-control:focus,
textarea.form-control:active,
select.form-control:focus,
select.form-control:active {
  box-shadow: 0 0 0 0.1rem var(--darker-color-5) inset;
  border-color: var(--bg-color);
}

.form-check-input:checked {
  background-color: var(--bg-color);
  border-color: var(--bg-color);
}
.form-check-input:focus {
  box-shadow: 0 0 0 0.25rem var(--lighter-color-70);
  border-color: var(--bg-color);
}

.custom-checkbox {
  min-width: 35px;
}
.custom-checkbox [type=checkbox]:checked,
.custom-checkbox [type=checkbox]:not(:checked) {
  position: absolute;
  left: -9999px;
}
.custom-checkbox [type=checkbox]:checked + label,
.custom-checkbox [type=checkbox]:not(:checked) + label {
  position: relative;
  padding-left: 28px;
  cursor: pointer;
  line-height: 20px;
  display: inline-block;
  color: #666666;
}
.custom-checkbox [type=checkbox]:checked + label:before,
.custom-checkbox [type=checkbox]:not(:checked) + label:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 18px;
  height: 18px;
  border: 1px solid #c3c3c3;
  border-radius: 2%;
  background: #ffffff;
}
.custom-checkbox [type=checkbox]:checked + label:after,
.custom-checkbox [type=checkbox]:not(:checked) + label:after {
  content: "✔";
  color: var(--bg-color);
  position: absolute;
  top: 0px;
  left: 4px;
  transition: all 0.3s ease-in-out;
}
.custom-checkbox [type=checkbox]:not(:checked) + label:after {
  opacity: 0;
  transform: scale(0);
}
.custom-checkbox [type=checkbox]:checked + label:after {
  opacity: 1;
  transform: scale(1);
}
.custom-checkbox.checkbox-bottom {
  justify-content: center;
  padding-top: 20px;
}
.custom-checkbox.checkbox-bottom [type=checkbox]:checked + label,
.custom-checkbox.checkbox-bottom [type=checkbox]:not(:checked) + label {
  padding: 0;
  padding-bottom: 38px;
}
.custom-checkbox.checkbox-bottom [type=checkbox]:checked + label:before,
.custom-checkbox.checkbox-bottom [type=checkbox]:not(:checked) + label:before {
  bottom: 0;
  top: inherit;
  left: 50%;
  transform: translateX(-50%);
}
.custom-checkbox.checkbox-bottom [type=checkbox]:checked + label:after,
.custom-checkbox.checkbox-bottom [type=checkbox]:not(:checked) + label:after {
  bottom: -1px;
  top: inherit;
  left: 50%;
  transform: translateX(-50%);
}

.upload-zone {
  padding: 10px;
  background: #d8d8d8;
  background-size: cover;
}
.upload-zone.uploaded .upload-content {
  opacity: 0;
}
.upload-zone p {
  margin: 0;
}

#upload-cover {
  padding: 30px 10px;
}
#upload-cover #upload-list div {
  position: relative;
  width: 110px;
  height: 38px;
  box-shadow: 0px 0px 0px 1px #909090;
  overflow: hidden;
  transition: all 0.3s ease-in-out;
}
#upload-cover #upload-list div:hover, #upload-cover #upload-list div.selected {
  cursor: pointer;
  box-shadow: 0px 0px 0px 4px var(--bg-color);
}
#upload-cover #upload-list div img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 110px;
  transform: translate(-50%, -50%);
}

#upload-profil-picture {
  margin: 0 auto;
  width: 200px;
  height: 200px;
  line-height: 18px;
}

.product_picture input[type=file] {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  overflow: hidden;
  z-index: -1;
}

.input-error {
  display: none;
  color: red;
  font-size: 12px;
  margin-top: 10px;
}

.radio-tasting label {
  position: relative;
  left: -5px;
  bottom: 5px;
  margin-top: 0;
}
.radio-tasting input[type=radio] {
  appearance: none;
  width: 20px;
  height: 20px;
  border: 1px solid #d5d5d5;
  background-clip: content-box;
  padding: 2px;
  border-radius: 50%;
  margin: 0 15px;
}
.radio-tasting input[type=radio]:checked {
  background-color: var(--bg-color);
  border-color: var(--bg-color);
}

/**
 * Step bar
 */
.stepbar {
  display: flex;
  justify-content: center;
  width: 30%;
  height: 40px;
  margin: auto auto 1% auto;
}
@media (max-width: 575px) {
  .stepbar {
    width: 100%;
  }
}

.stepbar__step {
  position: relative;
  flex: 0 0 25%;
  margin: 0 1px;
  background-color: #ececec;
  text-align: center;
  line-height: 40px;
  font-size: 24px;
}
.stepbar__step span {
  margin-left: 20px;
  color: #ababab;
  font-size: 24px;
  font-family: "Bebas Neue", sans-serif;
}
.stepbar__step:after, .stepbar__step:before {
  content: "";
  position: absolute;
  right: -20px;
  bottom: 0;
  width: 0;
  height: 0;
  border-left: 20px solid #ececec;
  border-top: 20px solid transparent;
  border-bottom: 20px solid transparent;
  z-index: 2;
}
.stepbar__step:before {
  content: "";
  position: absolute;
  right: auto;
  left: 0;
  border-left: 20px solid #ffffff;
  z-index: 0;
}

.stepbar__step-active {
  background-color: #c07460;
}
.stepbar__step-active span {
  color: #ffffff;
}
.stepbar__step-active:after {
  border-left: 20px solid #c07460;
}

.stepbar__step-first span {
  margin-left: 0;
}
.stepbar__step-first:before {
  border-left: initial;
}

/**
 * Title styles
 */
h1, .h1 {
  color: var(--bg-color);
  text-transform: uppercase;
  font-size: 48px;
  font-family: "Bebas Neue", sans-serif;
  font-style: normal;
  font-weight: 400;
  text-align: center;
}

h3, .h3 {
  color: var(--bg-color);
  text-transform: uppercase;
  font-size: 21px;
  text-align: center;
}

h4, .h4 {
  color: var(--bg-color);
  font-size: 16px;
  text-transform: uppercase;
}

.page-title {
  position: relative;
  color: var(--bg-color);
  text-transform: uppercase;
  font-size: 21px;
}
.page-title:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  transform: translateY(-50%);
  border-top: 1px solid #979797;
}
.page-title > span {
  position: relative;
  display: block;
  padding: 0 30px;
  background: #ffffff;
  z-index: 2;
}
.page-title img {
  margin-bottom: 4px;
  margin-left: 10px;
}

.winegrower__title {
  text-transform: none;
  color: #737373;
}

/**
 * Links
 */
.link, .link__logout {
  text-decoration: none;
}

.link__logout {
  position: relative;
  top: 10px;
  text-transform: uppercase;
  color: #979797;
  font-size: 12px;
}

.modal, .modal-xl {
  display: none;
  position: fixed;
  top: 20%;
  right: 0;
  left: 0;
  width: 35%;
  height: auto;
  max-height: 60%;
  margin: auto;
  z-index: 1055;
  overflow-x: hidden;
  overflow-y: auto;
}
.modal::-webkit-scrollbar, .modal-xl::-webkit-scrollbar {
  width: 0;
}
@media (max-width: 575px) {
  .modal, .modal-xl {
    width: 90%;
  }
}
.modal .modal-dialog, .modal-xl .modal-dialog {
  margin: 0 auto !important;
  max-width: 100% !important;
}
.modal .modal-content, .modal-xl .modal-content,
.modal .modal-dialog .modal-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  height: 100%;
  padding: 30px;
  background: #ffffff;
  border-radius: 8px;
  text-align: center;
  box-shadow: 2px 2px 4px 0 rgba(0, 0, 0, 0.5);
  border: none;
}
.modal .modal-content .modal__separator, .modal-xl .modal-content .modal__separator,
.modal .modal-dialog .modal-content .modal__separator {
  border-top: 1px solid #979797;
  margin: 1rem auto;
  width: 50%;
}
.modal .modal__loader, .modal-xl .modal__loader {
  display: none;
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  background: black;
  border-radius: 8px;
  opacity: 0.7;
  z-index: 5;
}
.modal .modal__loader .modal__loader-animation, .modal-xl .modal__loader .modal__loader-animation {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  border: 16px solid #f3f3f3;
  border-radius: 50%;
  border-top: 16px solid #c07460;
  width: 120px;
  height: 120px;
  -webkit-animation: spin 2s linear infinite;
  /* Safari */
  animation: spin 2s linear infinite;
}
@-webkit-keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
  }
}
@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.modal h2 .modal-dialogue h2, .modal-xl h2 .modal-dialogue h2, .modal .h2 .modal-dialogue h2, .modal-xl .h2 .modal-dialogue h2, .modal h2 .modal-dialogue .h2, .modal-xl h2 .modal-dialogue .h2, .modal .h2 .modal-dialogue .h2, .modal-xl .h2 .modal-dialogue .h2 {
  color: var(--bg-color);
  font-family: "Roboto Condensed", sans-serif;
  font-weight: bold;
  font-size: 21px;
  text-align: center;
}
.modal p, .modal-xl p,
.modal label,
.modal-xl label {
  color: #909090;
  font-size: 14px;
}
.modal a, .modal-xl a {
  width: 60%;
  background-color: var(--bg-color);
  font-weight: bold;
  color: #ffffff;
}
.modal a.modal-close, .modal-xl a.modal-close {
  display: flex;
  margin: 0.5rem auto;
  justify-content: center;
  align-items: center;
  text-transform: uppercase;
  background-color: transparent;
  font-weight: normal;
  color: white;
  text-decoration: none;
}
.modal a.modal-close img, .modal-xl a.modal-close img {
  filter: brightness(100);
  height: 14px;
}
.modal .close, .modal-xl .close,
.modal .close-button-modal,
.modal-xl .close-button-modal {
  position: absolute;
  top: 10px;
  right: 10px;
  background: none;
  border: none;
  font-size: 1.5rem;
  cursor: pointer;
}

.yousign-modal {
  width: 80%;
  height: 100%;
  top: 5%;
  max-height: 80%;
}
.yousign-modal iframe {
  width: 100%;
  height: 100%;
}

.modal-xl {
  width: 90%;
}

.cover {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000000;
  opacity: 0.7;
  z-index: 20;
}

.delivery-table {
  width: 60%;
  text-align: left;
}
@media (max-width: 991px) {
  .delivery-table {
    width: 270px;
  }
}

#subscription-modal-edit.modal, #subscription-modal-edit.modal-xl {
  max-height: 80%;
}

.change-modal {
  border: 2px solid var(--bg-color);
}
.change-modal .modal-content {
  border-radius: 0;
  z-index: 15;
}
.change-modal .modal-backdrop {
  opacity: 0.5;
  z-index: 0;
}

/**
 * Tabs
 */
.tabs {
  padding: 24px 0;
  border-bottom: 1px solid #909090;
}
@media (max-width: 575px) {
  .tabs {
    display: none;
  }
}
.tabs ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.tabs ul li {
  padding: 0 15px;
  margin: auto;
}
.tabs ul li.intent {
  background-color: #c07460 !important;
  padding-top: 1%;
}
.tabs ul li.intent a {
  color: #ffffff !important;
}
.tabs ul li.intent a:after {
  width: 0%;
}
.tabs ul li a {
  position: relative;
  display: block;
  text-align: center;
  color: #909090;
  padding-bottom: 10px;
  font-size: 14px;
  line-height: 16px;
  text-transform: uppercase;
  text-decoration: none;
  transition: all 0.3s ease-in-out;
}
.tabs ul li a:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 5px;
  background-color: var(--bg-color);
  transition: width 0.3s ease-in-out;
}
.tabs ul li.active a,
.tabs ul li a:hover {
  color: var(--bg-color);
  font-weight: bold;
}
.tabs ul li.active a.contessa,
.tabs ul li a:hover.contessa {
  color: #c07460;
}
.tabs ul li.active a:after,
.tabs ul li a:hover:after {
  width: 100%;
}
.tabs.border-none {
  border: none;
}

.tabs.contessa ul li a, .tabs-select.contessa ul li a {
  color: #909090;
}
.tabs.contessa ul li a:after, .tabs-select.contessa ul li a:after {
  background-color: #c07460;
}
.tabs.contessa ul li.active a, .tabs.contessa ul li a:hover, .tabs-select.contessa ul li.active a, .tabs-select.contessa ul li a:hover {
  color: #c07460;
}

.tabs-select.contessa .container-fluid, .tabs-select.contessa .container-sm, .tabs-select.contessa .container-md, .tabs-select.contessa .container-lg, .tabs-select.contessa .container-xl, .tabs-select.contessa .container-xxl {
  color: #c07460;
}
.tabs-select.contessa .container-fluid a, .tabs-select.contessa .container-sm a, .tabs-select.contessa .container-md a, .tabs-select.contessa .container-lg a, .tabs-select.contessa .container-xl a, .tabs-select.contessa .container-xxl a {
  color: #c07460;
}
.tabs-select.contessa .container-fluid .navbar-collapse a, .tabs-select.contessa .container-sm .navbar-collapse a, .tabs-select.contessa .container-md .navbar-collapse a, .tabs-select.contessa .container-lg .navbar-collapse a, .tabs-select.contessa .container-xl .navbar-collapse a, .tabs-select.contessa .container-xxl .navbar-collapse a {
  color: #909090;
}
.tabs-select.contessa:hover {
  border-color: #c07460;
  box-shadow: 0 0 0 0.1rem #c07460 inset;
}

/**
 * Page content
 */
.page-header {
  padding: 0 35px;
}

.page-content {
  padding: 35px 35px 125px 35px;
}

/**
 * Custom notif badge
 */
.badge {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  top: -20px;
  right: -10px;
  padding: 0;
  width: 20px;
  font-size: 9px;
  height: 20px;
  color: var(--bg-color);
  border-radius: 20px;
  border: 1px solid var(--bg-color);
  background: #ffffff;
}
.badge:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 4px;
  height: 4px;
  background: #ffffff;
  border-radius: 4px;
  z-index: 1;
}

/**
 * Sliders
 */
.slick-slider .slick-arrow {
  position: absolute;
  top: 50%;
  width: 26px;
  height: 26px;
  border-radius: 26px;
  background: var(--bg-color);
  transform: translateY(-50%);
  border: none;
  z-index: 10;
}
.slick-slider .slick-arrow i {
  position: absolute;
  top: 50%;
  left: 50%;
  color: #ffffff;
  font-size: 16px;
  transform: translate(-50%, -50%);
}
.slick-slider .slick-arrow.slick-prev {
  left: -13px;
}
.slick-slider .slick-arrow.slick-next {
  right: -13px;
}

#welcome-slider {
  display: none;
}

/**
 * Select
 */
.select-navbar, .tabs-select {
  font-size: 1em;
  border-radius: 2px;
  border: 1px solid #c3c3c3;
  padding: 5px 10px;
  transition: all 0.3s ease-in-out;
}
.select-navbar:focus, .tabs-select:focus, .select-navbar:hover, .tabs-select:hover, .select-navbar:active, .tabs-select:active {
  box-shadow: 0 0 0 0.1rem var(--darker-color-5) inset;
  border-color: var(--bg-color);
}

.tabs-select {
  display: none;
  text-transform: uppercase;
  font-family: "Roboto Condensed", sans-serif;
  color: var(--bg-color);
  font-weight: bold;
  font-size: 13px;
}
.tabs-select a {
  text-decoration: none;
  margin-left: 5px;
}
@media (max-width: 575px) {
  .tabs-select {
    display: block;
  }
}
.tabs-select .nav-item {
  background-color: #d8d8d8;
}
.tabs-select .navbar-toggler {
  color: #939393;
  border-color: transparent !important;
  position: relative;
  left: 25px;
}
.tabs-select .navbar-toggler:focus {
  box-shadow: none;
}
.tabs-select option:not(:checked) {
  color: #979797;
  font-weight: normal;
}

/**
 * Tables
 */
.table-bordered {
  border-color: #c3c3c3;
  text-align: center;
}
.table-bordered input[type=text] {
  border: none;
}

.border-top-gray {
  border-top: 1pc solid #909090;
}

.table-cell-text {
  color: #787878;
}

.search-container {
  width: 100%;
  font-family: "Roboto Condensed", sans-serif;
  font-size: inherit;
  padding: 0 35px 0 0;
}

img.information {
  width: 28px;
  height: 34px;
  margin-right: 6px;
  float: left;
}

.search-text {
  font-family: "Roboto Condensed", sans-serif;
  font-size: 12px;
  font-weight: bold;
  font-stretch: condensed;
  font-style: normal;
  line-height: normal;
  letter-spacing: normal;
  color: #909090;
  text-transform: uppercase;
  margin-top: 2px;
  cursor: pointer;
}
.search-text--information {
  width: 100%;
  padding-left: 5px;
}
.search-text--open {
  color: var(--text-Color);
  margin-right: 10px;
}

.search-bar {
  display: flex;
  justify-content: space-between;
  margin: auto;
  background-color: #f1f1f1;
  height: 65px;
}
.search-bar p {
  margin-bottom: 0;
}
.search-bar__information {
  display: flex;
  align-items: center;
  padding-left: 15px;
}
.search-bar__information .close-help {
  display: none;
}
.search-bar__search {
  display: flex;
}
.search-bar__search .close-menu {
  display: none;
}
.search-bar__search.help-opened {
  border-left: 4px solid #ffffff;
}
.search-bar__search .input-group {
  margin: 15px;
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
}
@media (max-width: 575px) {
  .search-bar__search .input-group {
    margin: 10px;
    width: 100%;
  }
}
.search-bar__advanced {
  position: relative;
  padding: 15px;
  background-color: #f1f1f1;
  z-index: 2;
}
.search-bar__advanced.search-opened {
  border-left: 4px solid #ffffff;
}
@media (max-width: 575px) {
  .search-bar__advanced {
    padding: 10px;
    padding-bottom: 0px;
    white-space: normal;
    overflow: visible;
    text-overflow: initial;
    max-width: none;
  }
  .search-bar__information {
    padding-left: 10px;
  }
}

#button-search {
  background-color: #ffffff;
  border-color: #c3c3c3;
  border-left: none;
  border-radius: 0;
  padding: 0 10px;
  display: flex;
  align-items: center;
  height: 35px;
}
@media (max-width: 575px) {
  #button-search {
    height: 35px;
    padding: 0 8px;
  }
}

#button-search:focus {
  border-color: var(--darker-color-5);
}

.input-group {
  margin: 15px;
}

#button-search,
#product_search_searchBar {
  height: 35px;
  font-size: inherit;
}

@media (max-width: 575px) {
  #product_search_searchBar {
    width: 100%;
  }
}

.admin-search {
  background-color: #ffffff;
  border-color: #c3c3c3;
  border-left: none;
  border-radius: 0;
  padding: 0 10px;
  height: 38px;
  font-size: inherit;
}

.admin-search:focus {
  border-color: var(--darker-color-5);
}

.avanced-search {
  width: 28px;
  height: 28px;
  cursor: pointer;
}
.avanced-search--close {
  width: 18px;
  height: 18px;
  margin-left: 10px;
  margin-top: 5px;
}

.advanced-search-menu,
.help-search-menu {
  position: relative;
  display: none;
  background-color: #f1f1f1;
  width: 100%;
  margin: auto;
  z-index: 1;
  padding: 0 11%;
}
.advanced-search-menu.advanced-panel-opened, .advanced-search-menu.help-panel-opened,
.help-search-menu.advanced-panel-opened,
.help-search-menu.help-panel-opened {
  border-top: 4px solid #ffffff;
}
.advanced-search-menu p,
.advanced-search-menu span,
.help-search-menu p,
.help-search-menu span {
  color: #737373;
  font-size: 1rem;
  font-family: "Roboto Condensed", sans-serif;
  font-weight: normal;
  font-style: normal;
  line-height: normal;
  letter-spacing: normal;
  margin: 0;
}
.advanced-search-menu h1, .advanced-search-menu .h1,
.help-search-menu h1,
.help-search-menu .h1 {
  font-family: "Roboto Condensed", sans-serif;
  color: #666666;
  font-size: 1.5rem;
  text-align: center;
  text-transform: none;
  line-height: normal;
}
.advanced-search-menu h2, .advanced-search-menu .h2,
.help-search-menu h2,
.help-search-menu .h2 {
  font-family: "Roboto Condensed", sans-serif;
  color: #c07460;
  line-height: 0.96;
  text-align: center;
  letter-spacing: normal;
  font-weight: normal;
  font-style: normal;
  font-size: 1.5rem;
}
.advanced-search-menu h3, .advanced-search-menu .h3,
.help-search-menu h3,
.help-search-menu .h3 {
  font-family: "Roboto Condensed", sans-serif;
  color: #c07460;
  line-height: normal;
  text-align: center;
  letter-spacing: normal;
  font-weight: normal;
  font-style: normal;
  font-size: 1.625rem;
  text-transform: none;
  margin-top: 13px;
}
.advanced-search-menu h3 span, .advanced-search-menu .h3 span,
.help-search-menu h3 span,
.help-search-menu .h3 span {
  color: var(--text-Color);
  font-size: 1.625rem;
}
.advanced-search-menu .contessa,
.help-search-menu .contessa {
  color: #c07460;
  font-weight: bold;
}
.advanced-search-menu .white-section,
.help-search-menu .white-section {
  padding: 2em 1.5em;
  background: #ffffff;
  border-radius: 8px;
}
.advanced-search-menu .block,
.help-search-menu .block {
  border-left: #c07460 3px solid;
  padding-left: 1em;
}
.advanced-search-menu .block--gray,
.help-search-menu .block--gray {
  border-left: #d8d8d8 3px solid;
}
.advanced-search-menu .discount,
.help-search-menu .discount {
  margin: 0;
}
.advanced-search-menu .section .plus,
.help-search-menu .section .plus {
  width: 40px;
  height: 85px;
  margin: 6px 46px 0px 105px;
  font-family: "Roboto", sans-serif;
  font-size: 72px;
  font-weight: bold;
  font-stretch: normal;
  font-style: normal;
  line-height: normal;
  letter-spacing: normal;
  color: #c07460;
}
.advanced-search-menu .section-plus,
.help-search-menu .section-plus {
  z-index: 1;
  margin: 20px 0 5px;
}
.advanced-search-menu .discount,
.help-search-menu .discount {
  margin-left: 19px;
  width: 63%;
  font-family: "Roboto Condensed", sans-serif;
  color: #737373;
  font-size: 1rem;
}
.advanced-search-menu .jumbo,
.help-search-menu .jumbo {
  border-radius: 8px;
  background-color: #e5e5e5;
  padding: 20px;
  font-size: 16px;
}
.advanced-search-menu .jumbo img.p_negocie,
.help-search-menu .jumbo img.p_negocie {
  width: 110px;
  height: 187px;
  object-fit: contain;
}
.advanced-search-menu .jumbo img.table-prices,
.help-search-menu .jumbo img.table-prices {
  object-fit: contain;
  margin-left: 20px;
}
.advanced-search-menu .jumbo .bloc-bottle,
.help-search-menu .jumbo .bloc-bottle {
  position: relative;
  width: 240px;
}
.advanced-search-menu .jumbo .bottle-table-prices,
.help-search-menu .jumbo .bottle-table-prices {
  align-items: unsafe center;
  margin-left: -104px;
  margin-top: -12px;
}
.advanced-search-menu .jumbo .bottle-table-prices .free-shipping,
.help-search-menu .jumbo .bottle-table-prices .free-shipping {
  width: 67%;
  font-family: "Roboto Condensed", sans-serif;
  color: #737373;
  font-size: 1rem;
  line-height: normal;
  margin-top: 48px;
  float: left;
}
.advanced-search-menu .jumbo .bottle-table-prices .free-shipping .rectangle,
.help-search-menu .jumbo .bottle-table-prices .free-shipping .rectangle {
  width: 54px;
  height: 3px;
  background-color: #c07460;
  margin-left: 140px;
  margin-bottom: 5px;
  position: relative;
}
.advanced-search-menu .jumbo img.bottle,
.help-search-menu .jumbo img.bottle {
  width: 48px;
  height: 174px;
  object-fit: contain;
  margin-left: 18px;
}
.advanced-search-menu .jumbo img.panachage,
.help-search-menu .jumbo img.panachage {
  margin-left: 83px;
  margin-right: 27px;
  width: 141px;
  height: 118px;
}
.advanced-search-menu .jumbo img.chrono,
.help-search-menu .jumbo img.chrono {
  margin-left: 15px;
  margin-right: 29px;
  width: 141px;
  height: 118px;
}
.advanced-search-menu .jumbo img.reco,
.help-search-menu .jumbo img.reco {
  width: 71px;
  height: 84px;
  margin-left: 25px;
  margin-right: 11px;
}
.advanced-search-menu .jumbo .intention,
.help-search-menu .jumbo .intention {
  margin-top: 15px;
  margin-bottom: 20px;
  align-items: center;
}
.advanced-search-menu .jumbo .intention-time,
.help-search-menu .jumbo .intention-time {
  margin-bottom: 29px;
}
.advanced-search-menu .jumbo .intention-time p:first-of-type,
.help-search-menu .jumbo .intention-time p:first-of-type {
  margin-bottom: 18px;
}
.advanced-search-menu .jumbo ~ .jumbo,
.help-search-menu .jumbo ~ .jumbo {
  margin-bottom: 30px;
}
.advanced-search-menu .wine-image,
.help-search-menu .wine-image {
  width: 156px;
  height: 149px;
  border: solid 2px #c07460;
  position: relative;
}
.advanced-search-menu .wine-image--gray,
.help-search-menu .wine-image--gray {
  border: 2px solid #909090;
  margin-left: 17px;
}
.advanced-search-menu .wine-image img,
.help-search-menu .wine-image img {
  height: 100%;
  width: 100%;
}
.advanced-search-menu .wine-image p,
.help-search-menu .wine-image p {
  font-family: "Roboto Condensed", sans-serif;
  font-size: 0.875rem;
  font-weight: bold;
  font-style: normal;
  line-height: normal;
  letter-spacing: normal;
  color: #c07460;
  margin: 4px 4px 0;
}
.advanced-search-menu .wine-image .flag,
.help-search-menu .wine-image .flag {
  margin-top: 19px;
}
.advanced-search-menu .wine-image .flag p,
.help-search-menu .wine-image .flag p {
  color: #ffffff;
}
.advanced-search-menu .wine-image .flag .flag__text,
.help-search-menu .wine-image .flag .flag__text {
  margin: 2px 15px 0 2px;
}
.advanced-search-menu .wine-description,
.help-search-menu .wine-description {
  width: 167px;
  margin-top: 10px;
  position: relative;
}
.advanced-search-menu .wine-description--gray,
.help-search-menu .wine-description--gray {
  margin-left: 17px;
}
.advanced-search-menu .wine-description p,
.help-search-menu .wine-description p {
  margin: 0;
  text-align: center;
  color: #666666;
  font-size: 0.875rem;
  text-align: center;
}
.advanced-search-menu .wine-description p.fw-bold,
.help-search-menu .wine-description p.fw-bold {
  font-weight: bold;
  text-decoration: line-through;
}
.advanced-search-menu .wine-description .usual-price,
.help-search-menu .wine-description .usual-price {
  text-decoration: line-through;
  font-weight: normal;
  font-size: inherit;
  font-family: inherit;
}
.advanced-search-menu .wine-description .description__top-text,
.help-search-menu .wine-description .description__top-text {
  font-family: inherit;
  font-size: inherit;
  font-weight: bold;
  text-transform: uppercase;
  margin: 0;
  text-align: center;
}
.advanced-search-menu .wine-description .description__top-text--top-sales,
.help-search-menu .wine-description .description__top-text--top-sales {
  color: #865cac;
}
.advanced-search-menu .wine-description .description__top-text--favourite,
.help-search-menu .wine-description .description__top-text--favourite {
  color: #d42b25;
}
.advanced-search-menu .wine-description .description__top-text--new,
.help-search-menu .wine-description .description__top-text--new {
  color: #436400;
}
.advanced-search-menu .wine-description .description__top-text--promo,
.help-search-menu .wine-description .description__top-text--promo {
  color: #ffa200;
}
.advanced-search-menu .wine-description .description__top-text--top-marge,
.help-search-menu .wine-description .description__top-text--top-marge {
  color: #e67e22;
}
.advanced-search-menu .wine-description .annotation,
.help-search-menu .wine-description .annotation {
  position: absolute;
  top: -22px;
  right: 17px;
}
.advanced-search-menu .example,
.help-search-menu .example {
  width: 299px;
  margin: 79px auto 0;
  flex-direction: column;
}
.advanced-search-menu .read-more,
.help-search-menu .read-more {
  margin: 68px auto 0;
  padding: 8px 17px;
  border-radius: 0.938rem;
  background-color: #d8d8d8;
  color: #737373;
  text-transform: uppercase;
  font-size: 0.75rem;
  border: none;
  text-decoration: none;
}
.advanced-search-menu .button-selection,
.help-search-menu .button-selection {
  background-color: #c07460;
  font-size: 0.75rem;
  padding: 8px 17px;
  font-weight: bold;
  color: #ffffff;
  border-radius: 0.938rem;
  border: none;
  width: 177px;
  margin: 26px auto 40px;
  text-transform: uppercase;
  text-decoration: none;
}
.advanced-search-menu .prev-arrow,
.help-search-menu .prev-arrow {
  position: absolute;
  top: calc(50% - 30px);
  left: calc(0% - 50px);
  z-index: 10;
}
.advanced-search-menu .next-arrow,
.help-search-menu .next-arrow {
  position: absolute;
  top: calc(50% - 30px);
  right: calc(0% - 21px);
  z-index: 10;
}
.advanced-search-menu .slick-arrow,
.help-search-menu .slick-arrow {
  background: none;
  width: 0;
  height: 0;
  transform: none;
}
.advanced-search-menu .time-container,
.help-search-menu .time-container {
  position: absolute;
  top: 0;
  left: 0;
  margin: 40px 0 0 6px;
  display: flex;
}
.advanced-search-menu .time-container p,
.help-search-menu .time-container p {
  margin: 0;
  font-size: 1.125rem;
  font-weight: bold;
  line-height: normal;
}
.advanced-search-menu .time-container .time-container__time,
.help-search-menu .time-container .time-container__time {
  color: var(--text-Color);
}
.advanced-search-menu .time-container .time-container__text,
.help-search-menu .time-container .time-container__text {
  color: #c07460;
}
.advanced-search-menu .double-product,
.help-search-menu .double-product {
  display: flex;
  margin: 0 auto;
  overflow: hidden;
}
.advanced-search-menu .double-product .product,
.help-search-menu .double-product .product {
  width: 138px;
  margin: 0 2px 0;
}
.advanced-search-menu .double-product .wine-image,
.help-search-menu .double-product .wine-image {
  width: 138px;
  height: 123px;
  margin: 0;
}
.advanced-search-menu .double-product .wine-description,
.help-search-menu .double-product .wine-description {
  width: 100%;
}

.progress-bar,
.mobile-progress-bar {
  display: block;
  width: 176px;
  height: 5px;
  overflow: hidden;
  margin: 15px auto 9px auto;
  background-color: #d8d8d8;
  background-image: linear-gradient(to right, #c07460, #c07460);
  background-repeat: no-repeat;
  background-size: 0 100%;
  transition: background-size 0.4s ease-in-out;
}

.help-search-menu svg path {
  fill: #979797;
}
.help-search-menu .badge {
  top: -15px;
  right: -10px;
  padding: 0;
  width: 30px;
  font-size: 13px;
  height: 30px;
  background: #f1f1f1;
}

.find-a-wine {
  color: var(--darker-color-5);
  font-family: inherit;
  font-size: 24px;
  margin-top: 11px;
}

.form {
  display: flex;
  height: 140px;
  margin-top: 17px;
  height: 35px;
}
.form .form__input {
  color: #787878;
  margin-right: 10px;
  font-family: inherit;
  line-height: normal;
  letter-spacing: normal;
  font-size: inherit;
  width: 167px;
}
.form .input__radio {
  height: 19px;
  width: 100%;
  margin: 0 5px;
}
.form .input__radio > input {
  height: 19px;
  width: 19px;
  margin: 0 5px;
}

.form-select:focus {
  box-shadow: 0 0 0 0.1rem var(--darker-color-5) inset;
  border-color: var(--darker-color-5);
}

.form-input:focus {
  box-shadow: 0 0 0 0.1rem var(--darker-color-5) inset;
  border-color: var(--darker-color-5);
}

.wine-form {
  max-width: 1280px;
}
.wine-form .form__radio {
  display: flex;
  align-items: center;
  margin-right: 10px;
}
.wine-form .form__radio label {
  margin: 0;
}

#find-wine {
  margin-top: 35px;
}

.panel-margin {
  padding: 3rem;
}

img.arrow {
  object-fit: contain;
  margin-right: 14px;
}

.mobile-slider,
.mobile-navigation {
  display: none;
}

.help-slider .read-more {
  margin: auto auto 16px;
}
.help-slider .white-section {
  height: 256px;
  padding: 0;
}
.help-slider .scrollable {
  width: 292px;
  overflow-x: auto;
  overflow-y: hidden;
  border-right: solid 1px #979797;
}
.help-slider .padding {
  padding: 12px 0 38px 0;
}
.help-slider #desktop-slide-1 .padding {
  padding-left: 14px;
}
.help-slider #desktop-slide-2 .padding > div:first-child {
  margin: auto;
}
.help-slider #desktop-slide-2 .wine-image,
.help-slider #desktop-slide-2 .wine-description {
  margin-left: 0;
}
.help-slider #desktop-slide-3 .table-bordered {
  margin: auto;
}
.help-slider #desktop-slide-3 th {
  padding: 5px;
}
.help-slider #desktop-slide-3 th,
.help-slider #desktop-slide-3 td {
  font-size: 1rem;
}
.help-slider #desktop-slide-3 div.padding > div:first-child {
  height: 159px;
  overflow: hidden;
}
.help-slider #desktop-slide-4 .product {
  margin: auto;
}
.help-slider #desktop-slide-4 .time-container p {
  margin: 0;
  font-size: 1.125rem;
}
.help-slider #desktop-slide-5 img {
  border-radius: 8px;
  margin-top: 2px;
}
.help-slider #desktop-slide-5 h1, .help-slider #desktop-slide-5 .h1 {
  font-size: 1.375rem;
  color: var(--text-Color);
  margin-top: 4px;
  margin-bottom: 0;
  text-transform: uppercase;
}
.help-slider #desktop-slide-5 .padding p {
  margin: 0;
  text-align: center;
  font-size: 0.875rem;
}
.help-slider #desktop-slide-5 .discover {
  text-align: center;
  border-radius: 3px;
  font-size: 0.875rem;
  font-weight: bold;
  margin: 4px auto;
}
.help-slider #desktop-slide-7 .chrono {
  position: absolute;
  top: 120px;
  margin-left: 12px;
}
.help-slider #desktop-slide-15 .block {
  margin: auto 10px;
}
.help-slider #desktop-slide-15 .example {
  margin: 0 0 0 auto;
  width: 54%;
  height: 100%;
}
.help-slider #desktop-slide-15 .example p {
  margin: auto 30px 51px;
}
.help-slider #desktop-slide-15 .example img {
  margin: 0;
  height: 256px;
}
.help-slider #desktop-slide-15 .example .d-flex div {
  margin-top: 79px;
}
.help-slider #desktop-slide-15 .block {
  margin: auto 10px;
}
.help-slider #desktop-slide-15 .example {
  margin: 0 0 0 auto;
  width: 54%;
  height: 100%;
}
.help-slider #desktop-slide-15 .example p {
  margin: auto 30px 51px;
}
.help-slider #desktop-slide-15 .example img {
  margin: 0;
  height: 256px;
}
.help-slider #desktop-slide-15 .example .d-flex div {
  margin-top: 79px;
}
.help-slider #desktop-slide-17 .example {
  margin: auto auto 0;
}
.help-slider #desktop-slide-17 .example .read-more {
  margin-top: 15px;
}
.help-slider #desktop-slide-18 .example {
  margin: 6px auto 0;
}
.help-slider #desktop-slide-18 .example p {
  margin: auto 6px;
}
.help-slider #desktop-slide-18 .example .read-more {
  margin: -44px auto;
}
.help-slider #desktop-slide-18 .example img {
  margin: 0;
}

@media (max-width: 800px) {
  .advanced-search-menu,
.help-search-menu {
    padding: 0;
  }

  .search-container {
    padding: 0;
  }

  #winegrower,
#winegrower-radio {
    display: none;
  }

  .form {
    flex-direction: column;
    height: 164px;
    align-items: center;
    margin: 0;
  }
  .form .form__input,
.form .input__radio {
    margin: 8px auto 0;
  }
  .form .form__radio {
    display: inline-block;
  }

  .advanced-search-menu {
    height: auto;
  }

  .wine-form {
    text-align: center;
  }

  #color {
    margin: 0;
  }

  #find-wine {
    margin: 15px auto;
  }

  .mobile-slider {
    display: block;
    height: 359px;
  }

  #desktop-help-menu {
    display: none;
  }

  .slick-slider .slick-arrow {
    position: absolute;
    top: 0;
    z-index: 10;
    margin-top: 24px;
  }

  .mobile-next-arrow {
    right: 0;
    margin-right: 35px;
  }

  .mobile-prev-arrow {
    left: 0;
    margin-left: 12px;
  }

  .help-search-menu h1, .help-search-menu .h1 {
    margin: 0;
  }
  .help-search-menu p {
    font-size: 0.938rem;
    line-height: normal;
    letter-spacing: normal;
  }
  .help-search-menu span {
    font-size: 0.938rem;
  }
  .help-search-menu .navigation {
    margin: 20px auto 0;
  }
  .help-search-menu .navigation p,
.help-search-menu .navigation span {
    font-size: 0.875rem;
  }
  .help-search-menu .read-more {
    background-color: #ffffff;
    margin: 0 auto 24px;
  }
  .help-search-menu .read-more--grey {
    background-color: #c3c3c3;
    color: #444444;
    margin-top: -42px;
  }
  .help-search-menu .slide-number {
    font-size: 0.875rem;
    font-weight: bold;
  }
  .help-search-menu .waw-price {
    margin-right: 15px;
  }
  .help-search-menu .discount {
    margin: 18px 0;
    font-size: 0.938rem;
    line-height: normal;
    letter-spacing: normal;
  }
  .help-search-menu .principle {
    margin: 46px auto 24px auto;
    width: 272px;
  }
  .help-search-menu .section {
    margin: 27px auto 12px;
    width: 256px;
  }
  .help-search-menu .section img {
    width: 100px;
    height: 171px;
  }
  .help-search-menu .section-plus {
    margin: 20px auto 5px;
  }
  .help-search-menu #slide3 img {
    margin-bottom: 24px;
    width: 262px;
  }
  .help-search-menu .bloc-bottle {
    width: 227px;
    margin: 7px auto 30px;
  }
  .help-search-menu .bloc-bottle img {
    margin-right: 25px;
  }
  .help-search-menu .bloc-bottle .free-shipping {
    margin: 42px 0 27px 0;
    color: #737373;
  }
  .help-search-menu #slide5 img {
    margin-right: 13.7px;
    width: 112.3px;
  }
  .help-search-menu #slide5 .block,
.help-search-menu #slide5 .intention {
    margin: auto;
    width: 296px;
  }
  .help-search-menu #slide5 .block {
    margin-top: 39px;
    margin-bottom: 5px;
  }
  .help-search-menu #slide5 button {
    margin-top: 10px;
  }
  .help-search-menu #slide6 .block {
    margin-top: 41px;
    margin-bottom: 26px;
  }
  .help-search-menu #slide6 img {
    width: 60px;
    height: 100%;
    margin: auto 11px auto 0;
    box-shadow: none;
  }
  .help-search-menu .intention-time {
    width: 289px;
    margin: 0 auto 26px;
  }
  .help-search-menu #slide7 img {
    margin-right: 23px;
    width: 71px;
    margin-top: 50px;
  }
  .help-search-menu #slide7 .d-flex p:first-of-type {
    margin-top: 42px;
  }
  .help-search-menu #slide7 .block {
    margin-top: 12px;
    margin-bottom: 22px;
  }
  .help-search-menu .tasting {
    width: 289px;
    margin: auto;
  }

  .mobile-slider {
    display: block;
    height: 359px;
    margin-top: 43px;
    -webkit-transition: all 0.8s ease;
    -moz-transition: all 0.8s ease;
    -ms-transition: all 0.8s ease;
    -o-transition: all 0.8s ease;
    transition: all 0.8s ease;
  }
  .mobile-slider span,
.mobile-slider p {
    font-size: 0.875rem;
  }
  .mobile-slider .white-section {
    width: 292px !important;
    height: 407px;
    padding: 22px 21px 0 19px;
    margin: auto;
    -webkit-transition: all 0.8s ease;
    -moz-transition: all 0.8s ease;
    -ms-transition: all 0.8s ease;
    -o-transition: all 0.8s ease;
    transition: all 0.8s ease;
  }
  .mobile-slider .wine-image {
    height: 145px;
    margin: 0 6px 0;
  }
  .mobile-slider .wine-image img {
    height: 100%;
  }
  .mobile-slider .scrollable {
    width: 100%;
    overflow-x: auto;
  }
  .mobile-slider .example {
    width: 100%;
    margin: 22px auto 35px;
  }
  .mobile-slider .example p {
    line-height: 1.43;
  }
  .mobile-slider .-read-more--grey {
    margin-top: 0;
  }
  .mobile-slider .example-read-more {
    margin: 0 auto 24px;
    display: flex;
    color: #444444;
    background-color: #ececec;
    padding: 8px 17px;
    border-radius: 0.938rem;
    text-transform: uppercase;
    font-size: 0.75rem;
    border: none;
  }
  .mobile-slider .product {
    margin: 0 auto;
  }
  .mobile-slider .wine-description {
    margin: 10px auto 0;
  }
  .mobile-slider .double-product {
    margin: 0 -13px 0 -17px;
  }
  .mobile-slider #example-slide-1 .white-section {
    padding-top: 19px;
  }
  .mobile-slider #example-slide-1 .example {
    margin-top: 10px;
  }
  .mobile-slider #example-slide-2 .white-section {
    padding-top: 19px;
  }
  .mobile-slider #example-slide-2 .example {
    margin-top: 17px;
  }
  .mobile-slider #example-slide-3 .white-section {
    padding-top: 14px;
  }
  .mobile-slider #example-slide-3 .table-bordered {
    border: solid 1px #e5e5e5;
    height: 156px;
    overflow: hidden;
  }
  .mobile-slider #example-slide-3 .table-bordered thead {
    border: solid 1px #e5e5e5;
  }
  .mobile-slider #example-slide-3 .table-bordered td {
    width: 125px;
    height: 33px;
    padding: 0;
    font-family: "Roboto Condensed", sans-serif;
    font-size: 0.845rem;
    line-height: normal;
  }
  .mobile-slider #example-slide-3 .table-bordered td p {
    margin: 0;
  }
  .mobile-slider #example-slide-3 .table-bordered td span {
    font-size: 0.845rem;
  }
  .mobile-slider #example-slide-3 .table-bordered th {
    color: #737373;
    font-weight: normal;
    padding: 0;
  }
  .mobile-slider #example-slide-3 .table-bordered .usual-price {
    text-decoration: line-through;
  }
  .mobile-slider #example-slide-3 .example {
    margin: 18px auto 14px;
  }
  .mobile-slider #example-slide-3 div.white-section > div:first-child {
    height: 173px;
    overflow: hidden;
  }
  .mobile-slider #example-slide-4 .example {
    margin-top: 14px;
  }
  .mobile-slider #example-slide-5 .white-section {
    padding-top: 14px;
  }
  .mobile-slider #example-slide-5 img {
    width: 257px;
    height: 141px;
    border-radius: 8px;
  }
  .mobile-slider #example-slide-5 h1, .mobile-slider #example-slide-5 .h1 {
    font-size: 1.375rem;
    color: var(--text-Color);
    margin-top: 4px;
    text-transform: uppercase;
  }
  .mobile-slider #example-slide-5 p {
    margin: 0;
    text-align: center;
  }
  .mobile-slider #example-slide-5 .example {
    margin: 10px auto 4px;
  }
  .mobile-slider #example-slide-5 .example p {
    text-align: left;
  }
  .mobile-slider #example-slide-5 a {
    text-align: center;
    border-radius: 3px;
    font-size: 0.688rem;
    font-weight: bold;
    margin: 0 auto;
  }
  .mobile-slider #example-slide-6 .annotation {
    right: 29px;
  }
  .mobile-slider #example-slide-6 .example {
    margin: 44px auto 17px;
  }
  .mobile-slider .chrono {
    box-shadow: 3px 3px 4px 0 rgba(0, 0, 0, 0.25);
    margin: -30px 0 0 -9px;
    position: relative;
  }
  .mobile-slider #example-slide-7 .example {
    margin-bottom: 19px;
  }
  .mobile-slider #example-slide-8 .white-section {
    padding-top: 9px;
    padding-right: 17px;
  }
  .mobile-slider #example-slide-8 img {
    display: flex;
    margin: auto;
  }
  .mobile-slider #example-slide-8 .example {
    margin: 18px auto 17px;
  }
  .mobile-slider #example-slide-15 .white-section {
    padding-top: 48px;
    padding-left: 13px;
  }
  .mobile-slider #example-slide-15 img {
    margin-right: -21px;
    margin-top: 18px;
  }
  .mobile-slider #example-slide-15 .d-flex p {
    margin: 20px 0 0 15px;
    width: 119px;
    height: 193px;
  }
  .mobile-slider #example-slide-15 button {
    margin-top: -63px;
  }
  .mobile-slider #example-slide-16 .example {
    margin-bottom: 12px;
  }
  .mobile-slider #example-slide-17 .block ~ .block {
    margin-top: 10px;
  }
  .mobile-slider #example-slide-17 .example {
    margin: 15px 0 15px;
  }
  .mobile-slider #example-slide-18 .white-section {
    padding: 25px 17px 0 13px;
  }
  .mobile-slider #example-slide-18 img {
    margin-right: 1px;
    margin-top: 47px;
  }
  .mobile-slider #example-slide-18 button {
    margin-top: -42px;
    position: relative;
  }
  .mobile-slider #example-slide-19 .white-section {
    padding: 89px 15px 0 15px;
  }
  .mobile-slider #example-slide-19 h3 div, .mobile-slider #example-slide-19 .h3 div {
    margin-top: 20px;
  }
  .mobile-slider #example-slide-19 .button-selection {
    display: flex;
    text-decoration: none;
  }

  .mobile-navigation {
    height: 100px;
    align-content: space-around;
    display: flex;
  }
  .mobile-navigation .concrete-example {
    margin: auto;
  }
  .mobile-navigation button {
    border: none;
  }
  .mobile-navigation .navigation-next {
    margin-right: 15px;
  }
  .mobile-navigation .navigation-next .mobile-next-arrow {
    border: none;
    margin-left: -40px;
    margin-right: 15px;
  }
  .mobile-navigation .navigation-next {
    margin-left: 15px;
  }
}
#winegrower__map {
  height: 400px;
  width: 100%;
  z-index: 1;
}

#cellarman__map {
  height: 169px;
  width: 169px;
  z-index: 1;
}

#modal__map {
  width: 100vh;
  height: 100vh;
}

#winegrower__map a, #cellarman__map a {
  margin: 0;
}

.vineyard__localization__input {
  display: block;
  z-index: 2;
  position: relative;
  bottom: 28em;
  left: 0.6em;
}
.vineyard__localization__input .form-control {
  width: 35%;
  font-size: 14px;
}

.autocomplete-suggestions {
  background-color: #ffffff;
  opacity: 0.8;
  cursor: pointer;
}

.close-alert {
  float: right;
}

.product-item {
  position: relative;
  width: 150px;
  height: 150px;
  overflow: hidden;
}
.product-item img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 150px;
}

.custom-file-input {
  width: 0.1px;
  height: 0.1px;
  opacity: 0;
  overflow: hidden;
  position: absolute;
  z-index: -1;
}

.product-infos figure,
.spirit-infos figure {
  position: relative;
  width: 167px;
  overflow: hidden;
  border: 2px solid var(--cellarmanTheme-bg-color);
  text-align: center;
}
.product-infos figure img,
.spirit-infos figure img {
  height: 167px;
  max-width: 163px;
  text-align: center;
}

.description {
  position: relative;
}
.description .description__text {
  font-family: inherit;
  font-size: inherit;
  color: #787878;
  margin: 0;
  text-align: center;
}
.description .description__top-text {
  font-family: inherit;
  font-size: inherit;
  font-weight: bold;
  text-transform: uppercase;
  margin: 0;
  text-align: center;
}
.description .description__top-text--top-sales {
  color: #865cac;
}
.description .description__top-text--favourite {
  color: #d42b25;
}
.description .description__top-text--new {
  color: #436400;
}
.description .description__top-text--promo {
  color: #ffa200;
}
.description .description__top-text--top-marge {
  color: #e67e22;
}
.description .description__annotation {
  position: absolute;
  top: -26px;
  right: 17px;
}
.description .description__state {
  color: var(--bg-color);
  font-family: inherit;
  font-weight: bold;
  font-size: inherit;
  text-align: center;
  margin: 0;
}
.description .description__state--warning {
  color: #ff6b35;
  background-color: #fff3cd;
  border: 1px solid #ffeaa7;
  border-radius: 4px;
  padding: 4px 8px;
  margin-top: 4px;
}
.description .wawPrice {
  text-decoration: line-through;
  margin-right: 3px;
  margin-bottom: 0;
}
.description .description__text-focus {
  color: #c07460;
  font-weight: bold;
}

.delete-section {
  text-align: center;
  margin-top: 15px;
}
.delete-section p {
  margin-top: 5px;
  font-family: "Roboto Condensed", sans-serif;
  font-size: inherit;
  color: #787878;
}

input.product-price,
input.spirit-price {
  font-family: "Roboto Condensed", sans-serif;
  font-size: 14px;
  color: #444444;
  border: none;
}

.free-shipping {
  font-family: "Roboto Condensed", sans-serif;
  font-size: 14px;
  color: var(--bg-color);
  margin-top: 0.4rem;
  margin-bottom: 1.4rem;
}

.winegrower-product .form-control,
.winegrower-product .form-select,
.distiller-spirit .form-control,
.distiller-spirit .form-select,
#spirit-form .form-control,
#spirit-form .form-select {
  margin: 10px auto 10px auto;
}
.winegrower-product label,
.distiller-spirit label,
#spirit-form label {
  margin-bottom: 0;
}
.winegrower-product .checkbox,
.distiller-spirit .checkbox,
#spirit-form .checkbox {
  margin: 1rem 0 1rem;
}

#upload-product-picture,
#upload-spirit-picture {
  margin: 0 auto;
  width: 195px;
  height: 195px;
  line-height: 18px;
  border-radius: 17px;
}

.input-error {
  display: none;
  color: red;
  font-size: 12px;
  margin-top: 10px;
}

.slick-slide img {
  display: flex;
  margin: auto;
}

#table-prices th {
  background-color: #f1f1f1;
  color: #444444;
  font-weight: bold;
}
#table-prices td {
  vertical-align: middle;
}

.submit-buttons {
  display: flex;
  justify-content: space-between;
  margin-top: 20px;
}
@media (max-width: 575px) {
  .submit-buttons {
    flex-direction: column;
    align-items: center;
  }
  .submit-buttons .btn, .submit-buttons .btn-primary, .submit-buttons .btn__outline {
    margin-bottom: 10px;
    width: 100%;
  }
}

#spirit-slider .slick-arrow,
#product-slider .slick-arrow {
  position: absolute;
  top: 50%;
  width: 26px;
  height: 26px;
  border-radius: 26px;
  background: var(--bg-color);
  transform: translateY(-50%);
  border: none;
  z-index: 10;
}
#spirit-slider .slick-arrow i,
#product-slider .slick-arrow i {
  position: absolute;
  top: 50%;
  left: 50%;
  color: #ffffff;
  font-size: 16px;
  transform: translate(-50%, -50%);
}
#spirit-slider .slick-arrow.slick-prev,
#product-slider .slick-arrow.slick-prev {
  left: -13px;
}
#spirit-slider .slick-arrow.slick-next,
#product-slider .slick-arrow.slick-next {
  right: -13px;
}

#bottle-steps-array {
  color: #444444;
}

.winegrower-product .product-franchised {
  display: none;
}

.spirit-franchised {
  display: none;
}

.product__description {
  padding-top: 5px;
  height: initial;
  font-size: 14px;
  color: #787878;
  line-height: 1.5;
}

.square__product {
  position: relative;
  margin-bottom: 1rem;
  cursor: pointer;
}
.square__product:hover {
  cursor: pointer;
}
.square__product .square__image {
  border: 4px solid #c07460;
  width: 100%;
  height: auto;
}
.square__product .product__name {
  font-size: 16px;
  font-weight: bold;
  color: #787878;
  margin-top: 0.5rem;
}
.square__product .product__price {
  font-size: 18px;
  color: #c07460;
  font-weight: bold;
}
.square__product .product__state {
  position: absolute;
  top: 0;
  right: 0;
  padding: 0.25rem 0.5rem;
  background-color: #c07460;
  color: white;
  font-size: 12px;
  font-weight: bold;
}

.admin {
  font-family: "Roboto Condensed", sans-serif;
  font-size: 14px;
  color: #787878;
  max-width: 1140px;
  margin: 0 auto;
}

#winegrower__map__preview {
  height: 130px;
}

.recommendationPortrait {
  object-fit: cover;
  border-radius: 50%;
  height: 31px;
  width: 31px;
}

.admin .admin__action-icon {
  width: 30px;
  margin-right: 5px;
}
.admin .admin__action {
  width: 100px;
}
.admin .admin__category {
  width: 170px;
}
.admin .admin__title {
  color: #787878;
}
.admin .admin__price {
  width: 90px;
}
.admin .admin__price .price__cellarman {
  text-decoration: line-through;
  margin-right: 3px;
  margin-bottom: 0;
}
.admin .btn, .admin .btn-primary, .admin .btn__outline {
  margin-left: auto;
  height: 37px;
}

.admin-form {
  margin: 1rem auto;
  padding: 20px;
  border: 1px solid #979797;
}
.admin-form .form-control,
.admin-form .form-select {
  background-color: #f1f1f1;
  color: #444444;
  font-size: 14px;
}
.admin-form .form-select {
  height: 36px;
}
.admin-form .admin__button {
  display: flex;
}
.admin-form .btn, .admin-form .btn-primary, .admin-form .btn__outline {
  display: flex;
  margin: 20px auto 0;
  font-weight: bold;
  font-size: 14px;
}
.admin-form #open-recommendationProfilPicture {
  display: block;
}

#product_validated,
#admin_product_validated {
  margin-left: 4px;
}

#admin_product_description {
  height: 250px;
}

#user_filter_searchBar {
  max-width: 200px;
}

.product-description figure {
  position: relative;
  width: 187px;
  height: auto;
  overflow: hidden;
  border: 2px solid #930000;
}
.product-description figure img {
  width: 100%;
}

.img-home {
  width: 25%;
}

.pagination li:hover {
  cursor: pointer;
}
.pagination li:hover table tbody tr {
  display: none;
}

.pagination > li {
  display: flex;
  color: var(--bg-color);
  background-color: #fff;
  border: 1px solid #ddd;
}
.pagination > li.active {
  background-color: var(--bg-color);
  color: white;
}
.pagination > li a {
  padding: 6px 12px;
}

.search-button {
  display: inline-block;
  align-self: flex-end;
}

.search-section {
  margin-top: 2.7rem;
}

label.btn.btn-primary.text-center.mt-2, label.btn-primary.text-center.mt-2 {
  display: inline-block;
}

article .row {
  align-items: start;
}

#mySearchUsers tr {
  background-color: var(--bs-table-bg);
  border-bottom-width: 1px;
  box-shadow: inset 0 0 0 9999px var(--bs-table-accent-bg);
}
#mySearchUsers tr:hover {
  --bs-table-accent-bg: var(--bs-table-hover-bg);
  color: var(--bs-table-hover-color);
}
#mySearchUsers tr:hover td {
  box-shadow: unset;
}
#mySearchUsers :not(caption) {
  border: none;
}
#mySearchUsers .admin__action {
  display: flex;
}

.action-container {
  display: flex;
}
.action-container .tabs {
  width: 100%;
  margin: 0 auto;
  border-bottom: none;
}

.nav-tabs .nav-link {
  overflow: hidden;
  text-overflow: ellipsis;
}

.nav-tabs {
  border-bottom: none;
}

.nav-tabs .nav-link:hover,
.nav-tabs .nav-link:focus {
  border: none;
}

.navbarP ul li {
  padding: 0;
}

#tableProducts {
  min-width: 100%;
  width: max-content;
}
#tableProducts th {
  white-space: normal;
  word-wrap: break-word;
  line-height: 1.2;
  padding: 8px 12px;
}
#tableProducts td {
  white-space: nowrap;
  padding: 8px 12px;
}
#tableProducts th:nth-child(1),
#tableProducts td:nth-child(1) {
  max-width: 120px;
  white-space: normal;
  word-wrap: break-word;
  line-height: 1.2;
}
#tableProducts th:nth-child(2),
#tableProducts td:nth-child(2) {
  max-width: 120px;
  white-space: normal;
  word-wrap: break-word;
  line-height: 1.2;
}
#tableProducts th:nth-child(3),
#tableProducts td:nth-child(3) {
  max-width: 80px;
}
#tableProducts th:nth-child(4),
#tableProducts td:nth-child(4) {
  max-width: 80px;
}
#tableProducts th:nth-child(5),
#tableProducts td:nth-child(5) {
  min-width: 80px;
}
#tableProducts th:nth-child(6),
#tableProducts td:nth-child(6) {
  max-width: 80px;
}
#tableProducts th:nth-child(7),
#tableProducts td:nth-child(7) {
  max-width: 80px;
}
#tableProducts th:nth-child(8),
#tableProducts td:nth-child(8) {
  min-width: 80px;
}
#tableProducts th:nth-child(9),
#tableProducts td:nth-child(9) {
  min-width: 80px;
  max-width: 80px;
  overflow: hidden;
  text-overflow: ellipsis;
}
#tableProducts th:nth-child(10),
#tableProducts td:nth-child(10) {
  min-width: 120px;
  position: sticky;
  right: 0;
  background-color: white;
  z-index: 10;
}

/**
 * Some spécifics styles of detail page
 */
.detail {
  display: flex;
  justify-content: space-around;
}
@media (max-width: 575px) {
  .detail {
    flex-direction: column;
  }
}
.detail h1, .detail .h1 {
  font-family: "Roboto Condensed", sans-serif;
  font-size: 21px;
  margin-bottom: 1.3rem;
}
.detail p {
  font-family: "Roboto Condensed", sans-serif;
  font-size: 14px;
  text-align: center;
  color: #444444;
}
.detail .detail__left,
.detail .detail__right {
  flex: 0 0 35%;
}
@media (max-width: 767px) {
  .detail .detail__left,
.detail .detail__right {
    flex: 0 0 45%;
  }
}
.detail .detail-form .form-select {
  display: block;
  position: relative;
  padding: 0;
  border: none;
  color: #444444;
}
.detail .detail-form .form-select:after {
  content: "\f107";
  position: absolute;
  top: 0;
  right: 10px;
  padding: 0.375rem 0;
  font-family: "Font Awesome 5 Free", sans-serif;
  font-weight: 900;
}
.detail .detail-form,
.detail .location-form,
.detail .password-form,
.detail .subscription-form,
.detail .bank-form,
.detail .contract-form,
.detail .cellarman-validation,
.detail .winegrower-validation,
.detail .distiller-validation {
  margin: 1rem auto;
  padding: 20px;
  border: 1px solid #979797;
}
.detail .detail-form label,
.detail .location-form label,
.detail .password-form label,
.detail .subscription-form label,
.detail .bank-form label,
.detail .contract-form label,
.detail .cellarman-validation label,
.detail .winegrower-validation label,
.detail .distiller-validation label {
  margin-bottom: 0;
}
.detail .detail-form .form-control,
.detail .detail-form .form-select,
.detail .location-form .form-control,
.detail .location-form .form-select,
.detail .password-form .form-control,
.detail .password-form .form-select,
.detail .subscription-form .form-control,
.detail .subscription-form .form-select,
.detail .bank-form .form-control,
.detail .bank-form .form-select,
.detail .contract-form .form-control,
.detail .contract-form .form-select,
.detail .cellarman-validation .form-control,
.detail .cellarman-validation .form-select,
.detail .winegrower-validation .form-control,
.detail .winegrower-validation .form-select,
.detail .distiller-validation .form-control,
.detail .distiller-validation .form-select {
  margin: 10px auto 10px auto;
  background-color: #f2f2f2;
  color: #444444;
}
.detail .detail-form .form-select,
.detail .location-form .form-select,
.detail .password-form .form-select,
.detail .subscription-form .form-select,
.detail .bank-form .form-select,
.detail .contract-form .form-select,
.detail .cellarman-validation .form-select,
.detail .winegrower-validation .form-select,
.detail .distiller-validation .form-select {
  padding: 0.375rem 0.75rem !important;
  border: 1px solid #c3c3c3;
}
.detail .detail-form .location-form__select-wrapper,
.detail .location-form .location-form__select-wrapper,
.detail .password-form .location-form__select-wrapper,
.detail .subscription-form .location-form__select-wrapper,
.detail .bank-form .location-form__select-wrapper,
.detail .contract-form .location-form__select-wrapper,
.detail .cellarman-validation .location-form__select-wrapper,
.detail .winegrower-validation .location-form__select-wrapper,
.detail .distiller-validation .location-form__select-wrapper {
  position: relative;
  font-size: 1rem;
  color: #444444;
}
.detail .detail-form .location-form__select-wrapper select,
.detail .location-form .location-form__select-wrapper select,
.detail .password-form .location-form__select-wrapper select,
.detail .subscription-form .location-form__select-wrapper select,
.detail .bank-form .location-form__select-wrapper select,
.detail .contract-form .location-form__select-wrapper select,
.detail .cellarman-validation .location-form__select-wrapper select,
.detail .winegrower-validation .location-form__select-wrapper select,
.detail .distiller-validation .location-form__select-wrapper select {
  background-color: white;
}
.detail .detail-form .location-form__select-wrapper:after,
.detail .location-form .location-form__select-wrapper:after,
.detail .password-form .location-form__select-wrapper:after,
.detail .subscription-form .location-form__select-wrapper:after,
.detail .bank-form .location-form__select-wrapper:after,
.detail .contract-form .location-form__select-wrapper:after,
.detail .cellarman-validation .location-form__select-wrapper:after,
.detail .winegrower-validation .location-form__select-wrapper:after,
.detail .distiller-validation .location-form__select-wrapper:after {
  content: "\f107";
  position: absolute;
  top: 0;
  right: 10px;
  padding: 0.375rem 0;
  font-family: "Font Awesome 5 Free", sans-serif;
  font-weight: 900;
}
.detail .detail-form .location-form__edit,
.detail .detail-form .location-form__location-container,
.detail .location-form .location-form__edit,
.detail .location-form .location-form__location-container,
.detail .password-form .location-form__edit,
.detail .password-form .location-form__location-container,
.detail .subscription-form .location-form__edit,
.detail .subscription-form .location-form__location-container,
.detail .bank-form .location-form__edit,
.detail .bank-form .location-form__location-container,
.detail .contract-form .location-form__edit,
.detail .contract-form .location-form__location-container,
.detail .cellarman-validation .location-form__edit,
.detail .cellarman-validation .location-form__location-container,
.detail .winegrower-validation .location-form__edit,
.detail .winegrower-validation .location-form__location-container,
.detail .distiller-validation .location-form__edit,
.detail .distiller-validation .location-form__location-container {
  display: none;
}
.detail .detail-form .btn, .detail .detail-form .btn-primary, .detail .detail-form .btn__outline,
.detail .location-form .btn,
.detail .location-form .btn-primary,
.detail .location-form .btn__outline,
.detail .password-form .btn,
.detail .password-form .btn-primary,
.detail .password-form .btn__outline,
.detail .subscription-form .btn,
.detail .subscription-form .btn-primary,
.detail .subscription-form .btn__outline,
.detail .bank-form .btn,
.detail .bank-form .btn-primary,
.detail .bank-form .btn__outline,
.detail .contract-form .btn,
.detail .contract-form .btn-primary,
.detail .contract-form .btn__outline,
.detail .cellarman-validation .btn,
.detail .cellarman-validation .btn-primary,
.detail .cellarman-validation .btn__outline,
.detail .winegrower-validation .btn,
.detail .winegrower-validation .btn-primary,
.detail .winegrower-validation .btn__outline,
.detail .distiller-validation .btn,
.detail .distiller-validation .btn-primary,
.detail .distiller-validation .btn__outline {
  margin-top: 20px;
  width: 100%;
  font-weight: bold;
  font-size: 14px;
}
.detail .detail-form .location-form__info,
.detail .location-form .location-form__info,
.detail .password-form .location-form__info,
.detail .subscription-form .location-form__info,
.detail .bank-form .location-form__info,
.detail .contract-form .location-form__info,
.detail .cellarman-validation .location-form__info,
.detail .winegrower-validation .location-form__info,
.detail .distiller-validation .location-form__info {
  padding-bottom: 1rem;
}
.detail .detail-form .location-form__separator,
.detail .location-form .location-form__separator,
.detail .password-form .location-form__separator,
.detail .subscription-form .location-form__separator,
.detail .bank-form .location-form__separator,
.detail .contract-form .location-form__separator,
.detail .cellarman-validation .location-form__separator,
.detail .winegrower-validation .location-form__separator,
.detail .distiller-validation .location-form__separator {
  margin-top: 1rem;
  border-bottom: 1px dashed;
}
.detail .detail-form .text-green,
.detail .location-form .text-green,
.detail .password-form .text-green,
.detail .subscription-form .text-green,
.detail .bank-form .text-green,
.detail .contract-form .text-green,
.detail .cellarman-validation .text-green,
.detail .winegrower-validation .text-green,
.detail .distiller-validation .text-green {
  color: green;
  margin: 0;
}
.detail .detail-form .text-red,
.detail .location-form .text-red,
.detail .password-form .text-red,
.detail .subscription-form .text-red,
.detail .bank-form .text-red,
.detail .contract-form .text-red,
.detail .cellarman-validation .text-red,
.detail .winegrower-validation .text-red,
.detail .distiller-validation .text-red {
  color: red !important;
  margin: 0;
}
.detail .subscription-form .subscription-form__price {
  margin: -10% 0;
  color: var(--bg-color);
  font-size: 24px;
  text-align: center;
  font-family: "Bebas Neue", sans-serif;
}
.detail .subscription-form .subscription-form__price .subscription-form__price__euros {
  vertical-align: middle;
  font-size: 72px;
}
.detail .bank-form .bank-form__hidden {
  display: none;
}
.detail .password-form .password-form-hidden {
  display: none;
}
.detail .password-form .password-form-hidden p {
  font-size: 12px;
  color: #8d8d8d;
}

.delivery_schedule span,
.delivery-timeslots-display span {
  font-size: 16px;
  color: #444444;
  margin-left: 5px;
}

.contextual-container {
  position: relative;
}
.contextual-container .contextual-icon {
  position: absolute;
  top: 0;
  right: 0;
  padding-top: 17px;
  padding-right: 5px;
  color: var(--cellarmanTheme-bg-color);
  cursor: pointer;
  opacity: 0;
  pointer-events: none;
  transition: 0.2s ease-in all;
}
.contextual-container.active .contextual-icon {
  opacity: 1;
  pointer-events: all;
}

/**
 * Some spécifics styles of signup page
 */
.map-modal {
  max-height: 130px;
  width: 100%;
}

.icon-left {
  position: absolute;
  left: 0;
}
.icon-left img {
  max-width: 165px;
}

@media (max-width: 855px) {
  .icon-left {
    position: inherit;
  }
}
.select-icon {
  -webkit-appearance: listbox;
}

.glass-wines {
  width: 100px;
}

.signup {
  display: flex;
  flex-direction: column;
  width: 80%;
  margin: auto;
  padding-top: 5%;
}
.signup h1, .signup .h1 {
  text-transform: capitalize;
}
.signup .signup__info {
  color: var(--text-Color);
  text-align: center;
  font-size: 14px;
}
.signup .signup__info h2, .signup .signup__info .h2 {
  font-size: inherit;
}
.signup .signup__logo {
  display: none;
}
@media (max-width: 575px) {
  .signup .signup__logo {
    display: flex;
    margin: 1.5em auto;
  }
}
.signup .signup__role {
  display: flex;
  flex-direction: column;
  width: 35%;
  margin: auto;
}
@media (max-width: 575px) {
  .signup .signup__role {
    width: 100%;
  }
}
.signup .signup__role a {
  margin: 5px;
  padding: 0.5rem;
  border: 1px solid #c3c3c3;
  border-radius: 2px;
  color: #444444;
  text-decoration: none;
}
.signup .signup__role span {
  margin-left: 15px;
  color: #444444;
}
.signup .save-btn {
  display: flex;
  justify-content: space-around;
  margin-bottom: 1%;
  margin-top: 10px;
}
.signup .save-btn button,
.signup .save-btn a {
  padding: 0.375rem 3rem;
  font-weight: bold;
  font-size: 14px;
}
.signup .required-info {
  margin: auto;
  color: #787878;
  text-align: center;
  font-size: 14px;
}
.signup .detail-form {
  display: flex;
  justify-content: space-evenly;
}
@media (max-width: 575px) {
  .signup .detail-form {
    /* For mobile phones: */
    flex-direction: column;
  }
}
.signup .detail-form .detail-form__left,
.signup .detail-form .detail-form__right {
  flex: 0 0 30%;
}
.signup .detail-form__errors {
  display: none;
  color: #930000;
  text-align: center;
  margin-bottom: 0.5rem;
}
.signup .contract-summary,
.signup .debit-summary {
  margin: 2% auto;
  width: 80%;
  color: #444444;
}
@media (max-width: 575px) {
  .signup .contract-summary,
.signup .debit-summary {
    width: 100%;
  }
}
.signup .contract-summary__title,
.signup .debit-summary__title {
  font-size: 14px;
  font-weight: bold;
}
.signup .contract-summary__title-warning,
.signup .debit-summary__title-warning {
  margin-bottom: 3em;
  color: var(--bg-color);
  text-align: center;
}
.signup .subscription,
.signup .debit {
  flex: 0 0 50%;
  margin: 2% auto;
  padding: 0 50px;
}
@media (max-width: 575px) {
  .signup .subscription,
.signup .debit {
    padding: 0;
  }
}
.signup .debit p {
  color: #444444;
  text-align: center;
  font-size: 14px;
}
.signup .debit .save-btn {
  margin: auto 0 1%;
  flex-direction: column;
}
.signup .debit-form {
  height: 100%;
  display: flex;
  flex-direction: column;
}
.signup .account .account__flex {
  display: flex;
  justify-content: space-between;
}
@media (max-width: 575px) {
  .signup .account .account__flex {
    flex-direction: column;
  }
}
.signup .account .account__flex__left,
.signup .account .account__flex__right {
  flex: 0 0 45%;
}
.signup .account .account__flex__left label,
.signup .account .account__flex__right label {
  margin-left: 3%;
  color: #444444;
  font-size: 14px;
}
.signup .account .account__flex__right {
  position: relative;
}
.signup .account .account__flex__right input {
  position: absolute;
  bottom: 0;
}
@media (max-width: 575px) {
  .signup .account .account__flex__right input {
    position: inherit;
  }
}
.signup .account .account__rules {
  color: #909090;
  font-size: 12px;
}
.signup .account .account__errors {
  font-family: "Roboto Condensed", sans-serif;
  font-size: 12px;
  color: var(--bg-color);
  text-align: center;
}
.signup .account .account__errors ul {
  padding: 0;
}
.signup .account .account__errors ul li {
  display: block;
}

.signup .subscription,
.modal-content .subscription {
  flex: 0 0 50%;
  margin: 2% auto;
}
.signup .subscription p,
.modal-content .subscription p {
  color: #444444;
  text-align: center;
  font-size: 14px;
}
.signup .subscription .subscription__price,
.modal-content .subscription .subscription__price {
  color: var(--bg-color);
  font-size: 24px;
  text-align: center;
  font-family: "Bebas Neue", sans-serif;
}
.signup .subscription .subscription__price .subscription__price__euros,
.modal-content .subscription .subscription__price .subscription__price__euros {
  vertical-align: middle;
  font-size: 72px;
}
.signup .subscription .subscription__debit,
.modal-content .subscription .subscription__debit {
  display: flex;
  flex-direction: column;
  margin-top: 10%;
  color: var(--bg-color);
}
.signup .subscription .subscription__debit span,
.modal-content .subscription .subscription__debit span {
  margin: auto;
}
.signup .subscription .subscription__debit .subscription__debit__date,
.modal-content .subscription .subscription__debit .subscription__debit__date {
  font-size: 24px;
}
.signup .pricing,
.modal-content .pricing {
  display: flex;
  margin: auto;
}
@media (max-width: 575px) {
  .signup .pricing,
.modal-content .pricing {
    flex-direction: column;
  }
}
.signup .form-select,
.modal-content .form-select {
  display: block;
  position: relative;
  padding: 0;
  border: none;
  color: #444444;
  background-image: none;
}
.signup .form-select:after,
.modal-content .form-select:after {
  content: "\f107";
  position: absolute;
  top: 0;
  right: 10px;
  padding: 0.375rem 0;
  font-family: "Font Awesome 5 Free", sans-serif;
  font-weight: 900;
}
.signup .form-control,
.modal-content .form-control {
  margin: 0 auto 12px auto;
  font-size: 14px;
}
.signup .checkbox,
.modal-content .checkbox {
  text-align: left;
}
.signup .modal-link,
.modal-content .modal-link {
  background: none;
  font-weight: normal;
  color: var(--bg-color);
}

#product_sign_up_imageUrl {
  margin-left: 76px;
}
@media (max-width: 575px) {
  #product_sign_up_imageUrl {
    margin-left: 270px;
  }
}

#step1_companyLocation_commercialName,
#step1_companyLocation_name {
  margin-bottom: 5px;
}

#add-distillery .row {
  align-items: unset !important;
}

.spirit-type-item {
  position: relative;
  min-width: 80px;
}

.spirit-type-label {
  display: block;
  padding: 8px 12px;
  background-color: #f8f9fa;
  border: 2px solid #dee2e6;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 600;
  text-align: center;
  cursor: pointer;
  transition: all 0.2s ease;
  white-space: nowrap;
  line-height: 1.2;
}

.spirit-type-item input[type=checkbox]:checked + .spirit-type-label {
  background-color: #007bff;
  border-color: #007bff;
  color: white;
}

.spirit-type-label:hover {
  background-color: #e9ecef;
  border-color: #adb5bd;
}

.spirit-type-item input[type=checkbox]:checked + .spirit-type-label:hover {
  background-color: #0056b3;
  border-color: #0056b3;
}

.spirit-type-item input[type=checkbox] {
  display: none !important;
}

/**
 * Styles communs pour les formulaires de producteurs (vignerons et distillateurs)
 */
#add-vineyard .upload-content,
#add-distillery .upload-content {
  opacity: 1;
}
#add-vineyard textarea,
#add-distillery textarea {
  height: calc(100% - 41px);
  min-height: 180px;
}
#add-vineyard input[type=file],
#add-distillery input[type=file] {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  overflow: hidden;
  z-index: -1;
}
#add-vineyard .vineyard__save-buttons .btn, #add-vineyard .vineyard__save-buttons .btn-primary, #add-vineyard .vineyard__save-buttons .btn__outline,
#add-vineyard .distillery__save-buttons .btn,
#add-vineyard .distillery__save-buttons .btn-primary,
#add-vineyard .distillery__save-buttons .btn__outline,
#add-distillery .vineyard__save-buttons .btn,
#add-distillery .vineyard__save-buttons .btn-primary,
#add-distillery .vineyard__save-buttons .btn__outline,
#add-distillery .distillery__save-buttons .btn,
#add-distillery .distillery__save-buttons .btn-primary,
#add-distillery .distillery__save-buttons .btn__outline {
  min-width: 20%;
}
@media (max-width: 575px) {
  #add-vineyard .vineyard__save-buttons .btn, #add-vineyard .vineyard__save-buttons .btn-primary, #add-vineyard .vineyard__save-buttons .btn__outline,
#add-vineyard .distillery__save-buttons .btn,
#add-vineyard .distillery__save-buttons .btn-primary,
#add-vineyard .distillery__save-buttons .btn__outline,
#add-distillery .vineyard__save-buttons .btn,
#add-distillery .vineyard__save-buttons .btn-primary,
#add-distillery .vineyard__save-buttons .btn__outline,
#add-distillery .distillery__save-buttons .btn,
#add-distillery .distillery__save-buttons .btn-primary,
#add-distillery .distillery__save-buttons .btn__outline {
    min-width: 100%;
  }
}

article .vineyard__save-buttons .btn, article .vineyard__save-buttons .btn-primary, article .vineyard__save-buttons .btn__outline,
article .distillery__save-buttons .btn,
article .distillery__save-buttons .btn-primary,
article .distillery__save-buttons .btn__outline {
  width: 30%;
}
@media (max-width: 575px) {
  article .vineyard__save-buttons .btn, article .vineyard__save-buttons .btn-primary, article .vineyard__save-buttons .btn__outline,
article .distillery__save-buttons .btn,
article .distillery__save-buttons .btn-primary,
article .distillery__save-buttons .btn__outline {
    width: 80%;
  }
}

#single-article-wine-colors img,
#single-article-wine-labels img,
#single-article-spirit-types img {
  display: none;
}

.text-danger ul {
  padding: 0;
}
.text-danger ul li {
  list-style: none;
  text-align: center;
}

#list__winegrowers {
  width: 96%;
}

.square__vineyard {
  margin-bottom: 3em;
}

.winegrower__form, #cellarman_winegrower_search_vineyardRegion {
  color: #737373;
  font-size: 14px;
}
.winegrower__form input, #cellarman_winegrower_search_vineyardRegion input {
  padding: 0 15px;
  border-radius: 0;
  font-size: 14px;
}

.winegrower__label {
  padding-top: 8px;
  padding-right: 0;
}

.winegrower__vineyard:hover {
  cursor: pointer;
}

/**
 * Some spécifics styles of selection page
 */
.selection #welcome {
  min-width: 54.5vw;
  margin-left: -35px;
  background-color: #F7F3F1;
}
@media (max-width: 767px) {
  .selection #welcome {
    width: 102.5vw;
  }
}
.selection #welcome .welcome-title {
  position: relative;
  color: #787878;
  font-size: 21px;
}
.selection #welcome .welcome-title:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  transform: translateY(-50%);
  border-top: 1px solid #979797;
}
.selection #welcome .welcome-title > span {
  position: relative;
  display: block;
  padding-right: 30px;
  background: #F7F3F1;
  z-index: 2;
}
@media (max-width: 575px) {
  .selection #welcome .welcome-title > span {
    padding-right: 0;
    text-align: center;
    font-size: 18px;
  }
}
.selection #welcome .welcome-title > span span {
  color: var(--bg-color);
}
.selection #welcome .welcome-title a {
  position: relative;
  display: block;
  color: #787878;
  padding-left: 30px;
  background: #F7F3F1;
  font-size: 12px;
  text-decoration: underline;
  text-transform: uppercase;
}
@media (max-width: 991px) {
  .selection #welcome .welcome-title a {
    padding: 0 8px;
  }
}
@media (max-width: 991px) {
  .selection #welcome .welcome-title-mobile {
    justify-content: center !important;
  }
  .selection #welcome .welcome-title-mobile:before {
    width: 0;
  }
}
.selection #welcome .slick-slider .slick-arrow {
  top: 85px;
}
.selection .separator {
  border-top: 1px solid #979797;
  margin: 2rem auto;
  width: 50%;
}
.selection .hide {
  display: none !important;
}
.selection .show {
  display: block !important;
}

.container {
  font-size: 14px;
  font-family: "Roboto Condensed", sans-serif;
  max-width: 100%;
}
.container .separator {
  border-top: 1px solid #979797;
  margin: 2rem auto;
  width: 50%;
}

.intendOrder {
  font-size: 21px;
  font-family: inherit;
  color: var(--cellarmanTheme-text-color);
  width: 35%;
}

.cellarman-page-title {
  margin-bottom: 18px;
  margin-top: 28px;
}

.line {
  width: 30%;
  height: 1px;
  margin: 12px 20px 11px 0;
  border: solid 1px #979797;
}

#filter {
  width: 189px;
  font-size: inherit;
  font-family: inherit;
  color: #787878;
  margin-left: 5px;
}

.row {
  justify-content: space-between;
  align-items: center;
}
.row .row__filter {
  display: inherit;
  align-items: center;
  width: 55%;
}
@media (max-width: 767px) {
  .row .row__filter {
    width: 100%;
  }
}
.row .row__help {
  width: 200px;
}
.row .row__line {
  margin: auto;
}
.row .row__button {
  text-align: center;
  margin: 20px auto 31px auto;
}

.row a {
  margin: 0 7px 0 0 !important;
  font-family: inherit;
  font-size: 14px;
  color: #787878;
}

.square {
  grid-column-gap: 20px;
  grid-row-gap: 40px;
  height: 100%;
  width: 100%;
  margin: 28px 0 28px 0;
}
.square--empty {
  height: 159px;
}
.square .square__product {
  max-width: 200px;
  margin: 0px auto;
}
.square .square__product--empty {
  opacity: 0.5;
  border: 2px solid #ececec;
  height: 167px;
}
.square .square__image {
  border: 4px solid #c07460;
  position: relative;
  text-align: center;
  width: 176px;
}
.square .square__image--focus {
  border: 5px solid #c07460;
}
.square .square__image--gray {
  border: 2px solid #909090;
}
.square .square__image.active {
  background-color: #c07460 !important;
}
.square .square__image.active .flag {
  background-color: #ffffff !important;
  color: #c07460 !important;
}
.square .square__image.active .flag:after {
  border-right-color: #c07460 !important;
}
.square .square__image.active .time-container .time-container__text,
.square .square__image.active .number-of-bottle {
  color: #ffffff !important;
}
.square .product__description {
  padding-top: 15px;
  position: relative;
  height: 130px;
}
.square .product__description--focus {
  background-color: #c07460;
  margin-top: 0;
  height: 125px;
}
.square .product__description--panache {
  height: 50px;
}
.square .product__image {
  height: 167px;
  max-width: 100%;
}
.square .product__image--focus {
  max-width: 157px;
}
.square .product__name {
  font-family: inherit;
  font-size: inherit;
  color: #787878;
  margin: 0;
  text-align: center;
}
.square .product__name--focus {
  color: #fff;
}
.square .product__price {
  font-family: inherit;
  font-size: inherit;
  color: #787878;
  font-weight: bold;
  margin: 0;
  text-align: center;
  text-decoration: line-through;
}
.square .product__selection {
  display: flex;
  justify-content: center;
}
.square .product__selection .selection__price {
  font-family: inherit;
  font-size: inherit;
  color: #787878;
  font-weight: normal;
  margin: 0;
  text-decoration: line-through;
}
.square .product__selection .selection__price--wawPrice {
  text-decoration: none;
  font-weight: bold;
  margin-right: 4px;
}
.square .product__selection .product__text-focus {
  font-family: inherit;
  font-size: inherit;
  font-weight: bold;
  color: #ffffff;
  margin: 0;
  text-align: center;
}
.square .product__selection .product__text-focus--wawPrice {
  margin-right: 4px;
  text-decoration: none;
}
.square .product__state {
  color: var(--bg-color);
  font-family: inherit;
  font-weight: bold;
  font-size: inherit;
  text-align: center;
  margin: 0;
}
.square .product__top-text {
  font-family: inherit;
  font-size: inherit;
  font-weight: bold;
  text-transform: uppercase;
  margin: 0;
  text-align: center;
}
.square .product__top-text--top-sales {
  color: #865cac;
}
.square .product__top-text--favourite {
  color: #d42b25;
}
.square .product__top-text--new {
  color: #436400;
}
.square .product__top-text--promo {
  color: #ffa200;
}
.square .product__top-text--top-marge {
  color: #e67e22;
}
.square .product__annotation {
  position: absolute;
  top: -14px;
  right: 17px;
}
.square a {
  text-decoration: none;
}

.first {
  height: 54px;
  font-family: inherit;
  font-size: 36px;
  text-align: center;
  color: var(--cellarmanTheme-bg-color);
  z-index: 2;
}

.row-first {
  position: relative;
  top: -120px;
}

.first-description {
  font-family: inherit;
  font-size: 18px;
  font-stretch: condensed;
  text-align: center;
  color: #909090;
}

.button-cellarman {
  width: 167px;
  height: 31px;
  font-family: inherit;
  font-size: inherit;
  font-weight: bold;
  text-align: center;
  border-radius: 5px;
}
.button-cellarman--red {
  color: #ffffff;
  background-color: var(--cellarmanTheme-bg-color);
  border: none;
}
.button-cellarman--transparent {
  color: var(--cellarmanTheme-bg-color);
  font-weight: 500;
  background-color: transparent;
  border-color: var(--cellarmanTheme-bg-color);
  border: solid 1px var(--cellarmanTheme-bg-color);
}

.selection {
  margin: 0px auto 31px auto;
}

.number-of-bottle {
  position: absolute;
  top: 0;
  left: 0;
  width: 50px;
  height: 16px;
  margin: 5px 0 0 4px;
  font-weight: bold;
  color: #c07460;
}
.number-of-bottle--gray {
  color: #909090;
}

.time-container {
  position: absolute;
  top: 0;
  left: 0;
  margin: 46px 0 0 4px;
  display: flex;
}
.time-container .time-container__time {
  font-size: 18px;
  font-family: inherit;
  font-weight: bold;
  color: var(--text-Color);
}
.time-container .time-container__time--gray {
  color: #666666;
}
.time-container .time-container__text {
  font-size: 18px;
  color: #c07460;
  font-weight: bold;
}
.time-container .time-container__text--gray {
  color: #909090;
}

.flag {
  height: 22px;
  background: #c07460;
  position: absolute;
  top: 0;
  margin-top: 24px;
  font-size: 14px;
  font-weight: bold;
  color: #ffffff;
  padding: 0 2px;
}
.flag:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: 0;
  height: 0;
  border-right: 11px solid #ffffff;
  border-top: 11px solid transparent;
  border-bottom: 11px solid transparent;
}
.flag--gray {
  background-color: #909090;
}
.flag .flag__text {
  margin: 0 15px 0 2px;
}

@media (max-width: 1000px) {
  #line-left {
    display: none;
  }

  .line,
.intendOrder {
    width: 100%;
  }
}
@media (max-width: 800px) {
  #square4 {
    display: none;
  }
}
@media (max-width: 520px) {
  #square3,
#square4 {
    display: none;
  }
}
#bottle-steps-array {
  color: #444444;
}

.winegrower-product .product-franchised {
  display: none;
}

.order-container {
  max-width: 75rem;
  font-family: "Roboto Condensed", sans-serif;
  margin: auto;
}
.order-container h1, .order-container .h1 {
  font-family: "Roboto Condensed", sans-serif;
  font-size: 1.3rem;
  margin-top: 1.3rem;
}
.order-container h2, .order-container .h2 {
  font-family: "Roboto Condensed", sans-serif;
  font-size: 1.1rem;
  margin: 40.5rem 13.5rem 4.2rem;
}
.order-container p,
.order-container a {
  color: #787878;
  font-size: 0.75rem;
  margin: 0;
  font-family: "Roboto Condensed", sans-serif;
  text-align: left;
}
.order-container .table-header {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  margin-top: 2.3rem;
}
@media (max-width: 575px) {
  .order-container .table-header {
    display: block;
  }
}
.order-container .table-header p,
.order-container .table-header span {
  color: #787878;
  font-size: 0.9rem;
  font-family: "Roboto Condensed", sans-serif;
}
.order-container .table-header .table-header__command {
  text-transform: uppercase;
  font-weight: bold;
}
.order-container .table-header .table-header__command--state {
  color: #c07460;
}
.order-container .table-header .table-header__product {
  text-decoration: underline;
  font-weight: bold;
}
.order-container .table-header .table-header__product a {
  color: #787878;
  font-size: 0.9rem;
  font-family: "Roboto Condensed", sans-serif;
}
.order-container th {
  font-size: 0.9rem;
  font-weight: bold;
  font-family: "Roboto Condensed", sans-serif;
  margin: 0.2rem 0 0 1.3rem;
  text-transform: uppercase;
  color: #c3c3c3;
}
.order-container .table-intends-order,
.order-container .table-order > :not(caption) > * {
  border-width: 0.06rem 0;
  border-color: #979797;
}
.order-container .wine-name {
  text-decoration: underline;
  font-family: "Roboto Condensed", sans-serif;
  color: #787878;
  font-size: 0.9rem;
  width: 50%;
}
.order-container .wine-name a {
  font-size: 0.9rem;
}
.order-container .price {
  color: #c3c3c3;
  text-decoration: line-through;
}
.order-container .quantity {
  border: solid 0.06rem #c3c3c3;
  font-size: 1.1rem;
  font-family: "Roboto Condensed", sans-serif;
  color: #787878;
  text-align: right;
  width: 4.4rem;
}
.order-container .quantity:focus-visible {
  outline: #c3c3c3 auto 0.06rem;
}
.order-container .waw-price,
.order-container .table-intends-order > td {
  font-family: "Roboto Condensed", sans-serif;
  color: #c07460;
  font-size: 0.9rem;
}
.order-container .address,
.order-container .waw-price,
.order-container .table-order > td {
  font-family: "Roboto Condensed", sans-serif;
  color: #787878;
  font-size: 0.9rem;
  font-weight: normal;
  text-transform: none;
}
.order-container tr:last-child > td > :not(.table-cell-text) > * {
  font-size: 0.9rem;
  font-weight: bold;
  font-family: "Roboto Condensed", sans-serif;
  text-transform: uppercase;
  color: #c3c3c3;
}
.order-container tr:last-child > td > .order-action {
  display: flex;
  line-height: 20px;
}
.order-container tr:last-child > td > .order-action .order-reset-button {
  line-height: inherit;
  margin-right: 1%;
  color: white;
  font-weight: 400;
  padding: 1.75rem;
  transition: all 0.3s ease-in-out;
}
.order-container tr:last-child > td > .order-action .order-change-button {
  line-height: inherit;
  color: white;
  font-weight: 400;
}
.order-container tr:last-child > td > .order-action .order-validate-button {
  line-height: inherit;
  color: white;
  font-weight: 400;
}
.order-container .table-order tr:last-child > td {
  line-height: 2em;
}
.order-container .table-intends-order tr:last-child > td > strong {
  color: #c07460;
}
.order-container .table-intends-order tr:last-child > .contessa {
  color: #c07460;
}
@media (max-width: 600px) {
  .order-container .table-bills {
    width: 45rem;
  }
}
.order-container .table-intends-order .btn, .order-container .table-intends-order .btn-primary, .order-container .table-intends-order .btn__outline {
  background-color: #c07460;
  border-color: #c07460;
}
.order-container .table-intends-order .btn-disabled {
  background-color: #c3c3c3;
  border-color: #c3c3c3;
  color: #787878;
  cursor: initial;
}
.order-container .delivery {
  margin: 0 0.5rem 0 0;
  float: left;
}
.order-container .delivery1 {
  margin: 0 0.5rem 0 0;
  float: left;
  width: 100%;
}
.order-container .form-select-address {
  float: right;
  width: 82%;
  margin-top: 0.6rem;
}
@media (max-width: 991px) {
  .order-container .form-select-address {
    width: 200px;
    float: none;
  }
}
.order-container .history {
  margin-top: 4.5rem;
}
.order-container tr:last-child > td > strong {
  color: #444444;
}
.order-container .table-footer-container {
  display: none;
}
.order-container .table-footer-container .btn-mix {
  width: initial;
  height: initial;
}
.order-container span.table-footer {
  text-transform: uppercase;
  font-weight: bold;
  color: #787878;
}
.order-container p.table-footer {
  text-transform: none;
  font-weight: normal;
  color: #c07460;
  text-align: center;
  font-size: 0.9rem;
}
.order-container .contessa {
  color: #c07460;
}
.order-container .btn-contessa {
  background-color: #c07460;
  color: #ffffff;
}
.order-container .btn-mix {
  width: 10.44rem;
  height: 1.9rem;
  font-family: "Roboto Condensed", sans-serif;
  font-weight: bold;
  font-size: 0.9rem;
}
.order-container .order-separator {
  border-top: 0.06rem solid #979797;
  margin: 2rem auto;
  width: 50%;
}
.order-container .more-products-title {
  font-size: 1.3rem;
  color: var(--bg-color);
  margin-bottom: 1rem;
}
.order-container .py-4 {
  margin: auto;
}

.table-bill-number {
  width: 20em;
}

.bill__download {
  width: 2em;
}

.bill__download:hover {
  cursor: pointer;
}

#bills .order-container tr {
  height: 3em;
}

#bills .separator {
  border-top: 1px solid #979797;
  margin: 2rem auto;
  width: 50%;
}

.winegrower-form {
  background-size: cover;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-image: url(/build/images/q-1-visuel.0c0f6161.png);
}
.winegrower-form .row {
  align-items: flex-start;
}
.winegrower-form h3, .winegrower-form .h3 {
  font-size: 24px;
  text-transform: none;
}
.winegrower-form .questionnaire-wrapper {
  padding: 30px 0 125px 0;
}
.winegrower-form .questionnaire {
  border-radius: 8px;
  box-shadow: 2px 2px 4px 0 rgba(0, 0, 0, 0.5);
  width: 576px;
  padding: 17px 26px 16px 27px;
  margin-bottom: 70px;
  background-color: #ffffff;
}
@media (max-width: 799px) {
  .winegrower-form .questionnaire {
    width: 476px;
  }
}
.winegrower-form .description-form {
  color: #737373;
}
.winegrower-form .description-form h2, .winegrower-form .description-form .h2 {
  font-weight: bold;
  color: var(--bg-color);
}
.winegrower-form .description-form .txtWelcome {
  color: #9e1a1a;
}
.winegrower-form .form-questionnaire label {
  color: #444444;
  position: relative;
  left: 15px;
  margin-top: 20px;
}
.winegrower-form .step {
  font-size: 32px;
  font-weight: bold;
  padding: 10px 10px 0 0;
  color: #9b9b9b;
}
.winegrower-form .step span {
  color: var(--bg-color);
}
.winegrower-form .step-img {
  object-fit: contain;
}
.winegrower-form .link-download a {
  font-size: 12px;
  text-decoration: none;
  color: var(--bg-color);
}
.winegrower-form .link-download span {
  text-decoration: underline;
}
.winegrower-form .link-download a:hover {
  text-decoration: underline;
}
.winegrower-form .etape-suivante {
  font-size: 14px;
  padding: 6px 40px !important;
}
.winegrower-form .mentions {
  font-size: 11px;
  color: #737373;
}
.winegrower-form .vintage {
  color: #444444;
}
.winegrower-form .txtTundora {
  color: #444444;
}
.winegrower-form .subtittle {
  font-size: 18px;
  color: var(--bg-color);
}
.winegrower-form .border-underline {
  border-bottom: 1px solid #cdcdcd;
  width: 289px;
  margin: 0 auto;
}
@media (max-width: 799px) {
  .winegrower-form .border-underline {
    width: 215px;
  }
}
.winegrower-form #step-4 {
  padding: 6px 60px;
  font-size: 14px;
}
.winegrower-form .cuve p {
  color: #444444;
}
.winegrower-form .cuve__cuvee a {
  color: var(--bg-color);
  font-size: 12px;
}
.winegrower-form label {
  color: #444444;
}
.winegrower-form .save {
  font-size: 14px;
  padding: 6px 90px;
}
.winegrower-form #site {
  font-size: 14px;
}
.winegrower-form #winegrower_form_step3_sample label {
  position: relative;
  left: -5px;
  bottom: 2px;
}
.winegrower-form #winegrower_form_step3_sample input[type=radio] {
  appearance: none;
  width: 15px;
  height: 15px;
  border: 1px solid #d5d5d5;
  background-clip: content-box;
  padding: 2px;
  border-radius: 50%;
  margin: 0 15px;
}
.winegrower-form #winegrower_form_step3_sample input[type=radio]:checked {
  background-color: var(--bg-color);
  border-color: var(--bg-color);
}
.winegrower-form #winegrower_form_step5_internet, .winegrower-form #winegrower_form_step5_distribution,
.winegrower-form #winegrower_form_step5_e_commerce, .winegrower-form #winegrower_form_step5_chains {
  margin-left: 20px !important;
}
.winegrower-form #winegrower_form_step5_internet label, .winegrower-form #winegrower_form_step5_distribution label,
.winegrower-form #winegrower_form_step5_e_commerce label, .winegrower-form #winegrower_form_step5_chains label {
  position: relative;
  left: -5px;
  bottom: 5px;
  margin-top: 0;
}
.winegrower-form #winegrower_form_step5_internet input[type=radio], .winegrower-form #winegrower_form_step5_distribution input[type=radio],
.winegrower-form #winegrower_form_step5_e_commerce input[type=radio], .winegrower-form #winegrower_form_step5_chains input[type=radio] {
  appearance: none;
  width: 20px;
  height: 20px;
  border: 1px solid #d5d5d5;
  background-clip: content-box;
  padding: 2px;
  border-radius: 50%;
  margin: 0 15px;
}
.winegrower-form #winegrower_form_step5_internet input[type=radio]:checked, .winegrower-form #winegrower_form_step5_distribution input[type=radio]:checked,
.winegrower-form #winegrower_form_step5_e_commerce input[type=radio]:checked, .winegrower-form #winegrower_form_step5_chains input[type=radio]:checked {
  background-color: var(--bg-color);
  border-color: var(--bg-color);
}
.winegrower-form #winegrower_form_step5_wine_concerned_1 label, .winegrower-form #winegrower_form_step5_wine_concerned_2 label {
  position: relative;
  left: 40px;
  margin-top: 0;
  bottom: 25px;
  display: block;
}
.winegrower-form #winegrower_form_step5_wine_concerned_1 input[type=checkbox], .winegrower-form #winegrower_form_step5_wine_concerned_2 input[type=checkbox] {
  appearance: none;
  width: 17px;
  height: 17px;
  border: 1px solid #c9c9c9;
  padding: 2px;
  margin: 0 15px;
  border-radius: 2px;
}
.winegrower-form #winegrower_form_step5_wine_concerned_1 input[type=checkbox]:checked, .winegrower-form #winegrower_form_step5_wine_concerned_2 input[type=checkbox]:checked {
  background-color: var(--bg-color);
  border-color: var(--bg-color);
}
.winegrower-form #winegrower_form_step5_wine_concerned_1 input[type=checkbox]:checked:before, .winegrower-form #winegrower_form_step5_wine_concerned_2 input[type=checkbox]:checked:before {
  content: "✔";
  position: relative;
  bottom: 5px;
  color: #FFFFFF;
}

.submit-buttons div:first-child {
  margin: 0 10px 0 auto;
}

.submit-buttons div:nth-child(2n) {
  margin: auto auto auto 10px;
}

.vineyard__sample-btn {
  margin: auto;
  padding: 0.8rem 2rem;
  border-radius: 32px;
  background-color: var(--text-Color);
  color: white;
  cursor: pointer;
  line-height: initial;
  font-weight: bold;
  text-transform: uppercase;
  width: 9.6rem;
}

.vineyard {
  color: #787878;
}

.vineyard__separator {
  border-top: 1px solid #979797;
  margin: 1rem auto;
  width: 50%;
}

.wine-labele {
  margin-bottom: 0.5rem;
}

@media (min-width: 800px) {
  .square__winegrower {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}

.maintenance_container a {
  color: var(--bg-color);
}
.maintenance_container .maintenance_img {
  margin: 20px;
  max-width: 350px;
}
.maintenance_container .error-actions {
  display: flex;
}
.maintenance_container a.btn.btn-primary.btn-lg, .maintenance_container a.btn-primary.btn-lg, .maintenance_container .btn-group-lg > a.btn-primary,
.maintenance_container .row .btn-group-lg > a.btn-primary {
  color: #ffffff;
  margin: auto;
}

.product {
  display: flex;
  flex-direction: column;
  color: #787878;
  font-size: 14px;
}
.product h2, .product .h2 {
  font-size: 21px;
  color: #444444;
}
.product .recommendate-circle .rounded-circle {
  margin: 10px auto;
}
.product .recommendate-circle .text-danger {
  margin-left: auto;
}
@media (max-width: 800px) and (min-width: 570px) {
  .product .recommendate-circle .rounded-circle {
    margin: 10px auto;
    min-width: 60px;
  }
  .product .recommendate-circle .text-danger {
    margin-left: 10%;
  }
}
.product .product__flex {
  display: flex;
  justify-content: space-between;
  margin-bottom: 2rem;
}
@media (max-width: 575px) {
  .product .product__flex {
    flex-direction: column;
  }
}
@media (max-width: 991px) {
  .product .product__flex {
    justify-content: center;
  }
}
.product .product__flex .product__display {
  flex: 0;
}
.product .product__flex .product__display .product__display__image-container {
  position: relative;
}
.product .product__flex .product__display .product__display__image-container .product__display__image {
  border: 1px solid #c3c3c3;
  width: 350px;
}
@media (max-width: 575px) {
  .product .product__flex .product__display .product__display__image-container .product__display__image {
    width: 100%;
  }
}
.product .product__flex .product__display .product__display__image-container .product__display__image-active {
  border: 4px solid #c07460;
}
.product .product__flex .product__display .product__display__image-container .product__display__image-active--gray {
  border: 4px solid #909090;
}
.product .product__flex .product__display .product__display__image-container .product__display__info {
  position: absolute;
  top: 15%;
  left: 0;
}
.product .product__flex .product__display .product__display__image-container .product__display__info .number-of-bottle {
  position: initial;
  margin: 0 0 0 1rem;
  width: initial;
  font-size: 24px;
  color: #c07460;
}
.product .product__flex .product__display .product__display__image-container .product__display__info .number-of-bottle--gray {
  color: #909090;
}
.product .product__flex .product__display .product__display__image-container .product__display__info .flag {
  position: relative;
  height: 34px;
  background-color: #c07460;
  padding-left: 1rem;
}
.product .product__flex .product__display .product__display__image-container .product__display__info .flag .flag__text {
  font-size: 24px;
}
.product .product__flex .product__display .product__display__image-container .product__display__info .flag:after {
  border-right: 17px solid #ffffff;
  border-top: 17px solid transparent;
  border-bottom: 17px solid transparent;
}
.product .product__flex .product__display .product__display__image-container .product__display__info .flag--gray {
  background-color: #909090;
}
.product .product__flex .product__display .product__display__image-container .product__display__info .time-container {
  position: initial;
  margin: 0 0 0 1rem;
}
.product .product__flex .product__display .product__display__image-container .product__display__info .time-container .time-container__time,
.product .product__flex .product__display .product__display__image-container .product__display__info .time-container .time-container__text {
  font-size: 24px;
}
.product .product__flex .product__display .product__display__image-container .product__display__filter {
  position: absolute;
  bottom: -1.2rem;
  right: 1rem;
  width: 40px;
}
.product .product__flex .product__display .product__display__image-container span {
  position: absolute;
  bottom: 5px;
  left: 10px;
  font-size: 18px;
  font-weight: bold;
  color: #666666;
}
.product .product__flex .product__infos {
  display: flex;
  flex-direction: column;
  flex: 0 0 50%;
}
@media (max-width: 991px) {
  .product .product__flex .product__infos {
    margin-top: 25px;
  }
}
.product .product__flex .product__infos .product__infos__vineyard,
.product .product__flex .product__infos .product__infos__region {
  text-decoration: underline;
}
.product .product__flex .product__infos .product__infos__name {
  font-size: 24px;
  font-weight: bold;
  color: #c07460;
}
.product .product__flex .product__infos .product__infos__year {
  font-size: 21px;
}
.product .product__flex .product__infos .product__infos__description-title {
  margin-top: 1rem;
  font-weight: bold;
}
.product .product__flex .product__infos .product__infos__sample-btn {
  margin: auto;
  padding: 0.8rem 2rem;
  border-radius: 32px;
  background-color: var(--text-Color);
  color: white;
  cursor: pointer;
  line-height: initial;
  font-weight: bold;
  text-transform: uppercase;
  text-decoration: none;
}
.product .product__flex .product__infos .product__infos__recommendation {
  display: flex;
  margin: 12px 0;
}
.product .product__flex .product__infos .product__infos__recommendation p {
  color: #c07460;
  padding: 0;
}
.product .product__flex .product__infos .product__infos__recommendation img {
  border-radius: 50%;
  box-shadow: rgba(0, 0, 0, 0.24) 0 1px 4px;
  display: inline-block;
  margin-right: 4px;
  width: 46px;
  height: 46px;
}
.product .product__flex .product__reviews {
  display: flex;
  align-items: center;
  margin-bottom: 1rem;
  line-height: normal;
}
.product .product__flex .product__reviews .product__stars {
  margin-right: 1rem;
}
.product .product__flex .product__reviews .product__stars .stars__author {
  display: inline-block;
}
.product .product__flex .product__reviews span {
  font-weight: bold;
}
.product .product__flex .product__reviews-links a {
  color: #787878;
}
.product .product__rating {
  display: flex;
}
.product .product__rating p {
  margin-top: 3px;
}
.product .product__rating .product__stars {
  margin-left: 6px;
}
.product .product__reviews-form {
  background-color: #f1f1f1;
  padding: 15px 34px 28px 34px;
}
.product .product__reviews-author {
  display: flex;
  margin-left: 5px;
}
.product .product__reviews-author p {
  font-size: 14px;
  color: #444444;
}
.product .product__reviews-author img {
  margin: auto 11px auto;
}
.product .product__sold-out {
  text-align: center;
  color: #c07460;
  font-size: 32px;
  font-weight: bold;
  text-transform: uppercase;
}
.product .product__filter {
  flex: 0 0 70%;
  padding-left: 1rem;
  border-left: 4px solid #ec5569;
}
.product .product__filter h2, .product .product__filter .h2 {
  font-weight: bold;
  font-size: 14px;
  text-transform: uppercase;
}
.product .product__filter p {
  margin-bottom: 0;
}
.product .product__filter.product__filter-favorite h2, .product .product__filter.product__filter-favorite .h2 {
  color: #d42b25;
}
.product .product__filter.product__filter-new {
  border-color: #436400;
}
.product .product__filter.product__filter-new h2, .product .product__filter.product__filter-new .h2 {
  color: #436400;
}
.product .product__filter.product__filter-discount {
  border-color: #ffa200;
}
.product .product__filter.product__filter-discount h2, .product .product__filter.product__filter-discount .h2 {
  color: #ffa200;
}
.product .product__filter.product__filter-top {
  border-color: #865cac;
}
.product .product__filter.product__filter-top h2, .product .product__filter.product__filter-top .h2 {
  color: #865cac;
}
.product .product__separator {
  border-top: 1px solid #979797;
  margin: 2rem auto;
  width: 50%;
}
.product .product__small-separator {
  border-top: 1px solid #979797;
  margin: 0.3rem auto;
  width: 25%;
}
.product .product__intends-infos {
  display: flex;
  flex-direction: column;
  text-align: center;
}
.product .product__intends-infos h2, .product .product__intends-infos .h2 {
  font-weight: bold;
  text-transform: uppercase;
  color: #c07460;
}
.product .product__intends-infos p {
  margin: 0;
  font-size: 21px;
}
.product .product__intends-infos span {
  color: #c07460;
}
.product .product__intends-infos .font-size-14 {
  font-size: 14px;
}
.product .product__intends {
  display: flex;
  justify-content: space-evenly;
  background-color: rgba(192, 116, 96, 0.1);
  margin: 0.5rem 0;
  padding: 1rem 0;
}
@media (max-width: 575px) {
  .product .product__intends {
    flex-direction: column;
    padding: 0 10px 10px;
  }
}
.product .product__intends #pricing-level {
  cursor: pointer;
}
.product .product__intends .product__intends-flex {
  flex: 0 0 33%;
}
.product .product__intends .product__intends__banner {
  position: relative;
  background: white;
  width: 150px;
  padding: 0.7rem;
  font-size: 18px;
  margin-top: -1rem;
}
@media (max-width: 575px) {
  .product .product__intends .product__intends__banner {
    margin: -1rem auto auto auto;
  }
}
.product .product__intends .product__intends__banner .product__intends__big-price {
  display: flex;
  line-height: normal;
  margin-bottom: 0.5rem;
}
.product .product__intends .product__intends__banner .product__intends__big-price .product__intends__big-price-number {
  font-size: 82px;
  color: #c07460;
  font-weight: bold;
}
.product .product__intends .product__intends__banner .product__intends__big-price .product__intends__big-price-euros {
  font-size: 48px;
  color: #c07460;
  font-weight: bold;
}
.product .product__intends .product__intends__banner p {
  margin-top: -0.8rem;
  padding: 0.5rem;
  line-height: normal;
}
.product .product__intends .product__intends__banner:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  width: 0;
  height: 0;
  margin: auto;
  border-bottom: 30px solid rgba(192, 116, 96, 0.1);
  border-left: 75px solid transparent;
  border-right: 75px solid transparent;
}
.product .product__intends .product__intends-contessa {
  color: #c07460;
}
.product .product__intends .product__intends__order {
  display: flex;
  flex-direction: column;
  text-align: center;
}
.product .product__intends .product__intends__order .product__intends__order-title {
  color: #787878;
  font-size: 18px;
  font-weight: bold;
}
.product .product__intends .product__intends__order .product__intends__order-input-container {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.product .product__intends .product__intends__order .product__intends__order-label {
  margin-right: 1rem;
  font-size: 16px;
}
.product .product__intends .product__intends__order .product__intends__order-bottles {
  font-size: 42px;
}
.product .product__intends .product__intends__order .product__intends__order-euros {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  padding-right: 0.5rem;
  background: white;
  font-size: 24px;
}
.product .product__intends .product__intends__order input,
.product .product__intends .product__intends__order .product__intends__order-euros {
  margin-bottom: 0.2rem;
  width: 7rem;
  height: 3rem;
  color: #787878;
  text-align: right;
  border: 0;
}
.product .product__intends .product__intends__order .btn, .product .product__intends .product__intends__order .btn-primary, .product .product__intends .product__intends__order .btn__outline {
  background-color: #c07460;
  border-color: #c07460;
}
.product .product__intends .product__intends__order .btn-disabled {
  background-color: #c3c3c3;
  border-color: #c3c3c3;
  color: #787878;
  cursor: initial;
}
.product .product-intend {
  padding: 20px;
  margin-top: 30px;
  margin-bottom: 30px;
  background-color: rgba(193, 193, 193, 0.1);
}
.product .product-intend h2, .product .product-intend .h2,
.product .product-intend h2.title {
  font-size: 2rem;
  text-transform: uppercase;
  text-align: center;
  margin-bottom: 2rem;
}
.product .product-intend h2 .text-red, .product .product-intend .h2 .text-red,
.product .product-intend h2.title .text-red {
  color: #c07460;
}
.product .product-intend p {
  font-size: 1.5rem;
  text-align: center;
}
.product .product-intend .big-price {
  display: flex;
  line-height: normal;
  margin-bottom: 0.5rem;
  background: white;
  padding: 1.5rem 2rem;
  border-radius: 20px;
  box-shadow: rgba(0, 0, 0, 0.24) 0 3px 8px;
  /*width: 150px;*/
  text-align: center;
  position: relative;
}
@media (max-width: 575px) {
  .product .product-intend .big-price {
    padding: 0.6rem 0.8rem;
    border-radius: 8px;
    width: 100px;
  }
}
.product .product-intend .big-price .big-price-number {
  font-size: 82px;
  color: #c07460;
  font-weight: bold;
  line-height: 1;
}
.product .product-intend .big-price .big-price-number.intend-block {
  font-size: 70px;
}
@media (max-width: 575px) {
  .product .product-intend .big-price .big-price-number.intend-block {
    font-size: 20px;
  }
}
.product .product-intend .big-price .big-price-euros {
  font-size: 48px;
  color: #c07460;
  font-weight: bold;
  line-height: 1;
}
@media (max-width: 575px) {
  .product .product-intend .big-price .big-price-euros {
    font-size: 16px;
  }
}
.product .product-intend .box-indend {
  box-shadow: rgba(0, 0, 0, 0.24) 0 3px 8px;
  padding: 1.5rem 2rem;
  border-radius: 20px;
  background: white;
  /*width: 150px;*/
  text-align: center;
  position: relative;
  margin: 0 auto;
}
@media (max-width: 575px) {
  .product .product-intend .box-indend {
    padding: 0.6rem 0.8rem;
    border-radius: 8px;
    /*width: 100px;*/
  }
}
.product .product-intend .operator {
  font-size: 90px;
  color: #c07460;
  line-height: 40px;
  vertical-align: middle;
}
@media (max-width: 575px) {
  .product .product-intend .operator {
    font-size: 40px;
  }
}
.product .product-intend .product__intends__order {
  text-align: right;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
.product .product-intend .product__intends__order .text-red {
  color: #c07460;
  margin-right: 1rem;
  font-size: 2rem;
  text-transform: uppercase;
}
.product .product-intend .product__intends__order input {
  margin-bottom: 0.2rem;
  width: 8rem;
  height: 3rem;
  color: #787878;
  text-align: right;
  border: 0;
  font-size: 3rem;
  line-height: 3rem;
  padding: 0;
  vertical-align: middle;
  display: inline-block;
}
.product .product-intend .sample-btn {
  margin: auto;
  padding: 1.2rem 2rem;
  border-radius: 3px;
  color: #fff !important;
  cursor: pointer;
  line-height: initial;
  font-weight: bold;
  text-transform: uppercase;
  text-decoration: none !important;
  display: inline-block !important;
}
.product .product-intend .sample-btn:hover {
  opacity: 0.9;
}
.product .product-intend .sample-btn-primary {
  background-color: var(--text-Color) !important;
}
.product .product-intend .sample-btn-gray {
  background-color: #a7a7a7 !important;
}
.product .product-intend .btn-disabled {
  cursor: not-allowed !important;
}
.product .product-intend .ww-border-bottom {
  border-top: 1px solid #979797;
  margin: 0.4rem auto 2rem;
  width: 40%;
}
.product .product-intend .time-line-text {
  display: inline-block;
  padding: 10px 32px;
}
@media (max-width: 575px) {
  .product .product-intend .time-line-text {
    padding: 10px;
    font-size: 0.7rem;
  }
}
.product .product-intend .panache-item {
  margin-bottom: 3rem !important;
}
@media (max-width: 575px) {
  .product .product-intend .panache-item p {
    font-size: 0.7rem;
  }
}
.product .product-intend .panache-item.selected {
  border: 1px dotted #c07460 !important;
  padding-top: 6px;
}
.product .product-intend .panache-item.selected p,
.product .product-intend .panache-item.selected input.form-control {
  color: #c07460 !important;
}
.product .product-intend .panache-item.selected p.flag__text {
  color: #fff !important;
}
.product .product-intend .panache-item.selected input.form-control {
  border: 1px solid #c07460 !important;
}
.product .Tarif-Caviste-10 {
  width: 698px;
  height: 22px;
  margin: 0 0 11px 2px;
  font-size: 18px;
  font-weight: normal;
  font-stretch: condensed;
  font-style: normal;
  line-height: normal;
  letter-spacing: normal;
  text-align: center;
  color: #737373;
}
.product .Tarif-Caviste-10 .text-style-1 {
  color: #c07460;
}
.product .bloc {
  width: 698px;
  height: 443px;
  margin: 11px 2px 17px 0;
  padding: 32px 20px 29px 5px;
  background-color: rgba(193, 193, 193, 0.1);
}
.product .text-red {
  color: #c07460 !important;
}
.product .bg-red {
  background-color: #c07460 !important;
}
.product .bg-white {
  background-color: #fff !important;
}
.product .bg-gry-193 {
  background-color: rgba(193, 193, 193, 0.1) !important;
}
.product .border-grey {
  border: solid 1px #d9d9d9;
}
.product .rec-56x11 {
  width: 56px;
  height: 11px;
  margin: 9px 2px;
  border-radius: 5.5px;
}
.product .rec-56x11-bordered {
  border: solid 1px #d9d9d9 !important;
}
.product .text-bold {
  font-weight: bold !important;
}
.product .big-price {
  display: flex;
  line-height: normal;
  margin-bottom: 0.5rem;
}
.product .big-price-number {
  font-size: 82px;
  color: #c07460;
  font-weight: bold;
}
.product .big-price-euros {
  font-size: 48px;
  color: #c07460;
  font-weight: bold;
}
.product .box-indend {
  box-shadow: rgba(0, 0, 0, 0.24) 0 3px 8px;
  padding: 1.5rem 2rem;
  border-radius: 20px;
}
.product .inline-block {
  display: inline-block !important;
}
.product .product-intend {
  padding: 20px;
  margin-top: 30px;
  margin-bottom: 30px;
}
.product .product-intend h2, .product .product-intend .h2,
.product .product-intend h2.title {
  font-size: 2rem;
  text-transform: uppercase;
  text-align: center;
}
.product .product-intend p {
  font-size: 1.5rem;
  text-align: center;
}
.product .product-intend .operator {
  font-size: 90px;
}
.product .product__intends__order {
  text-align: right;
}
.product .product__intends__order input {
  margin-bottom: 0.2rem;
  width: 8rem;
  height: 3rem;
  color: #787878;
  text-align: right;
  border: 0;
  font-size: 3rem;
  line-height: 3rem;
  padding: 0;
  vertical-align: middle;
  display: inline-block;
}
.product .product__intends__order span {
  font-size: 2rem;
  text-transform: uppercase;
}
.product .sample-btn {
  margin: auto;
  padding: 1.2rem 2rem;
  border-radius: 3px;
  color: #fff !important;
  cursor: pointer;
  line-height: initial;
  font-weight: bold;
  text-transform: uppercase;
  text-decoration: none !important;
  display: inline-block !important;
}
.product .sample-btn:hover {
  opacity: 0.9;
}
.product .sample-btn-primary {
  background-color: var(--text-Color) !important;
}
.product .sample-btn-gray {
  background-color: #a7a7a7 !important;
}
.product .btn-disabled {
  cursor: not-allowed !important;
}
.product .baseline {
  margin-top: -12px !important;
}
.product .ww-border-bottom {
  border-top: 1px solid #979797;
  margin: 0.4rem auto 2rem;
  width: 40%;
}
.product .square .product__description.hidden {
  height: 1px !important;
}
.product #product-panache .square .square__image {
  width: 100% !important;
}
.product #product-panache .panache-item {
  margin-bottom: 3rem !important;
}
.product #product-panache .panache-item.selected {
  border: 1px dotted #c07460 !important;
  padding-top: 6px;
}
.product #product-panache .panache-item.selected p,
.product #product-panache .panache-item.selected input.form-control {
  color: #c07460 !important;
}
.product #product-panache .panache-item.selected p.flag__text {
  color: #fff !important;
}
.product #product-panache .panache-item.selected input.form-control {
  border: 1px solid #c07460 !important;
}
.product .time-line-text {
  display: inline-block;
  padding: 10px 32px;
}
.product .square__product {
  display: block !important;
}
@media (max-width: 767px) {
  .product .box-indend {
    padding: 0.6rem 0.8rem;
    border-radius: 8px;
  }
  .product .product-intend .operator {
    font-size: 40px;
  }
  .product .big-price-number.intend-block {
    font-size: 20px;
  }
  .product .big-price-number.price {
    font-size: 30px;
  }
  .product .big-price-euros.cents {
    font-size: 15px;
  }
}

.modal, .modal-xl {
  box-shadow: 0 0 20px 4px #ababab;
}
.modal--hidden {
  display: none;
}
.modal--visible {
  display: block;
}
.modal .modal-content.product-modal p, .modal-xl .modal-content.product-modal p {
  text-align: left;
}
.modal .modal-content.product-modal h2, .modal-xl .modal-content.product-modal h2, .modal .modal-content.product-modal .h2, .modal-xl .modal-content.product-modal .h2 {
  color: #c07460;
}
.modal .modal-content.product-modal h3, .modal-xl .modal-content.product-modal h3, .modal .modal-content.product-modal .h3, .modal-xl .modal-content.product-modal .h3 {
  color: #c07460;
  font-size: 16px;
  font-weight: bold;
  text-transform: initial;
}
.modal .modal-content.product-modal .btn, .modal-xl .modal-content.product-modal .btn, .modal .modal-content.product-modal .btn-primary, .modal-xl .modal-content.product-modal .btn-primary, .modal .modal-content.product-modal .btn__outline, .modal-xl .modal-content.product-modal .btn__outline {
  margin: 0.5rem 0;
  background-color: #c07460;
  border-color: #c07460;
}
.modal .modal-content.product-modal .btn-disabled, .modal-xl .modal-content.product-modal .btn-disabled {
  background-color: #c3c3c3;
  border-color: #c3c3c3;
  color: #787878;
  cursor: initial;
}
.modal .modal-content.product-modal select, .modal-xl .modal-content.product-modal select {
  width: 60%;
}
.modal .modal-content.product-modal .validate, .modal-xl .modal-content.product-modal .validate {
  width: 30%;
}
.modal .modal-content.product-modal .product-modal__form-address, .modal-xl .modal-content.product-modal .product-modal__form-address {
  width: 60%;
  margin: 6px 0;
  color: #444444;
}
.modal .modal-content.product-modal .product-modal__table, .modal-xl .modal-content.product-modal .product-modal__table {
  display: flex;
  width: 100%;
}
.modal .modal-content.product-modal .product-modal__table .product-modal__table-flex, .modal-xl .modal-content.product-modal .product-modal__table .product-modal__table-flex {
  display: flex;
  flex: 0 0 50%;
  flex-direction: column;
}
.modal .modal-content.product-modal .product-modal__table .product-modal__table-row, .modal-xl .modal-content.product-modal .product-modal__table .product-modal__table-row {
  margin: -1px 0 0 -1px;
  padding: 10px;
  border: 1px solid #c3c3c3;
  color: #444444;
}
.modal .modal-content.product-modal .product-modal__table .product-modal__table-price, .modal-xl .modal-content.product-modal .product-modal__table .product-modal__table-price {
  font-weight: bold;
  color: #c07460;
}
.modal .modal-content.product-modal .product-modal__table .product-modal__table-price span, .modal-xl .modal-content.product-modal .product-modal__table .product-modal__table-price span {
  color: #979797;
  font-weight: normal;
  margin-left: 0.5rem;
}
.modal .modal-content.product-modal .product-modal__wine-none, .modal-xl .modal-content.product-modal .product-modal__wine-none {
  display: none;
  justify-content: space-between;
}
.modal .modal-content.product-modal .product-modal__wine, .modal-xl .modal-content.product-modal .product-modal__wine {
  display: flex;
  flex-direction: column;
}
.modal .modal-content.product-modal .product-modal__wine span, .modal-xl .modal-content.product-modal .product-modal__wine span {
  color: #787878;
}
.modal .modal-content.product-modal .product-modal__wine .product-modal__wine__title, .modal-xl .modal-content.product-modal .product-modal__wine .product-modal__wine__title {
  color: #787878;
  font-weight: bold;
  text-decoration: underline;
  text-align: left;
}
.modal .modal-content.product-modal .product-modal__wine .product-modal__wine__info, .modal-xl .modal-content.product-modal .product-modal__wine .product-modal__wine__info {
  display: flex;
}
.modal .modal-content.product-modal .product-modal__wine .product-modal__wine-focus, .modal-xl .modal-content.product-modal .product-modal__wine .product-modal__wine-focus {
  color: #c07460;
  font-weight: bold;
}
.modal .modal-content.product-modal .product-modal__wine .product-modal__wine-total, .modal-xl .modal-content.product-modal .product-modal__wine .product-modal__wine-total {
  color: #787878;
  font-weight: bold;
  text-transform: uppercase;
}
.modal .modal-content.product-modal .product-modal__wine-number, .modal-xl .modal-content.product-modal .product-modal__wine-number {
  flex: 0 0 25%;
}
.modal .modal-content.product-modal .product-modal__wine-number input, .modal-xl .modal-content.product-modal .product-modal__wine-number input {
  text-align: right;
}
.modal .modal-content.product-modal .product-modal__link, .modal-xl .modal-content.product-modal .product-modal__link {
  color: #c07460;
  text-decoration: none;
  background: initial;
}
.modal .modal-content.product-modal .product-modal__adjust, .modal-xl .modal-content.product-modal .product-modal__adjust {
  display: none;
}
.modal .modal-content.product-modal .product-modal__adjust .product-modal__adjust__paragraph, .modal-xl .modal-content.product-modal .product-modal__adjust .product-modal__adjust__paragraph {
  display: none;
  padding: 0 1rem;
  font-weight: bold;
  border-left: 3px solid #c07460;
  color: #787878;
}
.modal .modal-content.product-modal .product-modal__adjust .product-modal__adjust__paragraph span, .modal-xl .modal-content.product-modal .product-modal__adjust .product-modal__adjust__paragraph span {
  color: #c07460;
}
.modal .modal-content.product-modal .product-modal__sample-btn, .modal-xl .modal-content.product-modal .product-modal__sample-btn {
  background-color: var(--text-Color);
  color: white;
  font-weight: bold;
}
.modal .modal-content.product-modal #bottles-total-price, .modal-xl .modal-content.product-modal #bottles-total-price,
.modal .modal-content.product-modal #bottles-text-after,
.modal-xl .modal-content.product-modal #bottles-text-after {
  display: none;
}
.modal .modal-content.product-modal #bottles-total-price, .modal-xl .modal-content.product-modal #bottles-total-price {
  color: #787878;
}
.modal .modal-content #intend-select-address, .modal-xl .modal-content #intend-select-address {
  display: none;
}
.modal .modal-content #intend-select-address select, .modal-xl .modal-content #intend-select-address select {
  margin: auto;
}

#sample-modal {
  top: 10%;
  width: fit-content;
  max-height: 80%;
}
#sample-modal h2, #sample-modal .h2 {
  color: var(--text-Color);
}
#sample-modal .btn-disabled {
  background-color: #c3c3c3;
  border-color: #c3c3c3;
  color: #787878;
  cursor: initial;
}
@media (max-width: 575px) {
  #sample-modal .sample-square {
    grid-template-columns: 1fr 1fr;
  }
}
#sample-modal .sample-square .square__product.sample-square__product-empty .square__image {
  border-color: #a2a2a2;
}
#sample-modal .sample-square .square__product.sample-square__product-empty .flag {
  background-color: #a2a2a2;
}
#sample-modal .sample-square .square__product.sample-square__product-empty .number-of-bottle,
#sample-modal .sample-square .square__product.sample-square__product-empty .time-container__text {
  color: #a2a2a2;
}
#sample-modal .sample-square .square__product.sample-square__product-empty .time-container__time {
  color: #787878;
}
#sample-modal .sample-square .square__product .flag {
  background-color: #c07460;
}
#sample-modal .sample-square .square__product .flag__text {
  color: white;
}
#sample-modal .sample-square .square__product .number-of-bottle {
  color: #c07460;
}
#sample-modal .sample-square .square__product .square__image {
  border: 4px solid #c07460;
}
#sample-modal .sample-square .square__product input {
  font-size: 1rem;
  line-height: 1.5;
  padding: 11px 23px;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0;
  outline: 0;
  background-color: transparent;
}
#sample-modal .sample-square .square__product .square__product__checkbox-input {
  opacity: 0;
  position: absolute;
}
#sample-modal .sample-square .square__product .square__product__checkbox-control {
  position: relative;
  display: inline-block;
  width: 18px;
  height: 18px;
  margin-right: 12px;
  vertical-align: middle;
  border-radius: 2px;
  border: 1px solid #c3c3c3;
}
#sample-modal .sample-square .square__product .square__product__checkbox-input:checked + .square__product__checkbox-control:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 75%;
  height: 75%;
  border-radius: 2px;
  background-color: #c07460;
}
#sample-modal .sample-square .square__product .square__product__checkbox-label {
  margin: 0.5rem 0 0 0;
  cursor: pointer;
}
#sample-modal .sample-square .square__product .square__product-unavailable {
  margin-top: 0.5rem;
  color: #787878;
  text-align: center;
  font-weight: bold;
}
#sample-modal .sample-square .square__product .product__description {
  padding-top: 5px;
  height: initial;
}
#sample-modal .sample-square .square__product .product__review-number h2, #sample-modal .sample-square .square__product .product__review-number .h2 {
  font-size: 21px;
  color: #444444;
}
#sample-modal .table-rowlol {
  border: 1px solid #979797;
}
#sample-modal #sample-modal-second {
  display: none;
}

.square__product:hover {
  cursor: pointer;
}

.btn-review {
  margin: 12px auto 0;
  display: block;
}

.review-stars {
  margin-left: 50px;
}

.custom-file-input {
  width: 0.1px;
  height: 0.1px;
  opacity: 0;
  overflow: hidden;
  position: absolute;
  z-index: -1;
}

#copyEmailBtn {
  font-size: 0.875em;
}

/* Récapitulatif moderne pour le panachage de spiritueux */
.panache-summary-modern {
  background: #fff;
  border-radius: 20px;
  box-shadow: 0 6px 30px rgba(0, 0, 0, 0.1);
  overflow: hidden;
  border: 2px solid #f8f9fa;
}

.summary-header {
  background: linear-gradient(135deg, #f8f9fa, #e9ecef);
  padding: 20px 24px;
  border-bottom: 1px solid #dee2e6;
}
.summary-header h4, .summary-header .h4 {
  color: #333;
  font-weight: 600;
}
.summary-header i {
  color: #dc3545;
}

.summary-content {
  padding: 24px;
}

.summary-stat {
  background: #f8f9fa;
  border-radius: 12px;
  padding: 20px;
  text-align: center;
  border: 1px solid #e9ecef;
  transition: all 0.3s ease;
}
.summary-stat:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

.stat-icon {
  font-size: 24px;
  color: #666;
  margin-bottom: 8px;
}

.stat-number {
  font-size: 24px;
  font-weight: 700;
  color: #333;
  margin-bottom: 4px;
}

.stat-label {
  font-size: 12px;
  color: #666;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  font-weight: 600;
}

.progress-section {
  background: #f8f9fa;
  border-radius: 12px;
  padding: 16px;
}

.progress {
  border-radius: 8px;
  overflow: hidden;
  background-color: #e9ecef;
}

.progress-bar {
  background: linear-gradient(90deg, #dc3545, #28a745);
  transition: width 0.4s ease;
}

.panache-item-compact {
  margin-bottom: 0.75rem;
}
.panache-item-compact.selected .spirit-card-compact {
  background: #f8fdf9;
  border-color: #28a745;
}

.spirit-card-compact {
  background: #fff;
  border: 1px solid #e9ecef;
  border-radius: 8px;
  padding: 0.75rem;
  transition: all 0.3s ease;
}
.spirit-card-compact:hover {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.spirit-row {
  display: flex;
  align-items: center;
  gap: 1rem;
  flex-wrap: wrap;
}

.spirit-basic-info {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex: 1 1 200px;
  min-width: 200px;
}
.spirit-basic-info .spirit-image-small {
  width: 40px;
  flex-shrink: 0;
}
.spirit-basic-info .spirit-text {
  flex: 1;
}
.spirit-basic-info .spirit-text .spirit-name-compact {
  font-size: 0.9rem;
  font-weight: 600;
  color: #2c3e50;
  margin: 0 0 0.2rem 0;
  line-height: 1.2;
}
.spirit-basic-info .spirit-text .distillery-compact {
  color: #6c757d;
  font-size: 0.75rem;
  display: block;
  margin-bottom: 0.3rem;
}
.spirit-basic-info .spirit-text .spirit-badges-inline {
  display: flex;
  gap: 0.25rem;
  flex-wrap: wrap;
}
.spirit-basic-info .spirit-text .spirit-badges-inline .badge-mini {
  background: #e9ecef;
  color: #495057;
  font-size: 0.6rem;
  padding: 0.1rem 0.3rem;
  border-radius: 4px;
  font-weight: 500;
}

.spirit-pricing-compact {
  text-align: center;
  flex: 0 0 auto;
}
.spirit-pricing-compact .main-price-compact small, .spirit-pricing-compact .main-price-compact .small {
  display: block;
  font-size: 0.65rem;
  color: #6c757d;
  margin-bottom: 0.1rem;
}
.spirit-pricing-compact .main-price-compact strong {
  color: #28a745;
  font-size: 0.9rem;
  font-weight: 600;
}
.spirit-pricing-compact .stock-compact {
  margin-top: 0.2rem;
  font-size: 0.7rem;
}
.spirit-pricing-compact .stock-compact .number-of-bottle {
  color: #28a745;
  font-weight: 600;
}
.spirit-pricing-compact .stock-compact .stock-label {
  color: #6c757d;
}

.spirit-quantity-compact {
  flex: 0 0 auto;
}
.spirit-quantity-compact .quantity-input-compact {
  width: 60px;
  text-align: center;
  border: 1px solid #e9ecef;
  border-radius: 4px;
  padding: 0.3rem 0.2rem;
  font-size: 0.85rem;
  font-weight: 600;
}
.spirit-quantity-compact .quantity-input-compact:focus {
  border-color: #28a745;
  box-shadow: 0 0 0 0.1rem rgba(40, 167, 69, 0.25);
}

.spirit-next-level-compact {
  flex: 0 0 auto;
  min-width: 120px;
}
.spirit-next-level-compact .next-compact {
  font-size: 0.65rem;
  color: #6c757d;
  line-height: 1.2;
}
.spirit-next-level-compact .next-compact .next-level-intend-bottles {
  color: #007bff;
  font-weight: 600;
}
.spirit-next-level-compact .next-compact .next-level-intend-price {
  color: #28a745;
  font-weight: 600;
}

/* Responsive */
@media (max-width: 768px) {
  .summary-content {
    padding: 16px;
  }

  .summary-header {
    padding: 16px;
  }

  .stat-number {
    font-size: 20px;
  }

  .stat-icon {
    font-size: 20px;
  }

  .spirit-row {
    flex-direction: column;
    gap: 0.5rem;
    align-items: stretch;
  }

  .spirit-basic-info {
    min-width: auto;
    flex: none;
  }

  .spirit-pricing-compact,
.spirit-quantity-compact,
.spirit-next-level-compact {
    text-align: center;
    min-width: auto;
  }

  .spirit-next-level-compact .next-compact {
    text-align: center;
  }
}
@media (max-width: 480px) {
  .spirit-basic-info .spirit-text .spirit-name-compact {
    font-size: 0.8rem;
  }
  .spirit-basic-info .spirit-text .distillery-compact {
    font-size: 0.7rem;
  }
  .spirit-basic-info .spirit-text .spirit-badges-inline .badge-mini {
    font-size: 0.55rem;
  }

  .spirit-pricing-compact .main-price-compact strong {
    font-size: 0.8rem;
  }

  .quantity-input-compact {
    width: 50px !important;
    font-size: 0.75rem !important;
  }
}
.footer-container {
  padding: 25px;
  margin-top: auto;
  text-align: center;
  background-color: #f5ebd7;
  width: 100%;
}
.footer-container a {
  margin: 1rem;
  color: var(--bg-color);
  font-size: 16px;
  font-family: "Roboto Condensed", sans-serif;
  text-decoration: none;
}
.footer-container img {
  margin: 1rem;
  width: 152px;
}
.footer-container .lemonway-credentials {
  font-size: 9px;
}
.footer-container .lemonway-credentials a {
  margin: 0;
  font-size: 9px;
}
.footer-container .wearewine-version {
  margin: 0;
  padding: 0;
  color: gray;
}

@media (max-width: 800px) {
  .footer-container div {
    display: grid;
  }
  .footer-container a {
    margin: 0.5rem;
  }
}
/**
 * Some spécifics styles of login component
 */
#loginComponent {
  max-width: 500px;
}
#loginComponent p {
  font-family: "Roboto", sans-serif;
  font-size: 16px;
  font-weight: normal;
  font-style: normal;
  line-height: normal;
  letter-spacing: normal;
  color: var(--text-Color);
  text-align: center;
}
#loginComponent p a {
  color: var(--text-Color);
  text-decoration: underline;
  font-size: 24px;
}
#loginComponent p.password a {
  text-align: right;
  display: block;
  font-size: 14px;
}
#loginComponent button[type=submit] {
  display: block;
  margin: auto auto 10px;
}
#loginComponent img {
  max-width: 300px;
  margin: 3rem auto 3rem auto;
  display: block;
}

/**
 * Some spécifics styles of password forgot
 */
#passwordForgotComponent {
  max-width: 500px;
}
#passwordForgotComponent p {
  font-family: "Roboto", sans-serif;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  line-height: normal;
  letter-spacing: normal;
  color: var(--text-Color);
  text-align: center;
}
#passwordForgotComponent p a {
  color: var(--text-Color);
  text-decoration: underline;
}
#passwordForgotComponent button[type=submit] {
  display: block;
  margin: auto auto;
}
#passwordForgotComponent img {
  max-width: 300px;
  margin: 3rem auto 3rem auto;
  display: block;
}
#passwordForgotComponent hr {
  border: none;
  height: 2px;
  background: rgba(0, 0, 0, 0.2);
  width: 100%;
  display: block;
  margin: 3rem auto;
}
#passwordForgotComponent a i {
  margin-right: 5px;
}

/**
 * Some spécifics styles of password forgot form
 */
#passwordForgotFormComponent {
  max-width: 550px;
}
#passwordForgotFormComponent p {
  font-family: "Roboto", sans-serif;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  line-height: normal;
  letter-spacing: normal;
  color: var(--text-Color);
  text-align: center;
}
#passwordForgotFormComponent p a {
  color: var(--text-Color);
  text-decoration: underline;
}
#passwordForgotFormComponent button[type=submit] {
  display: block;
  margin: auto auto;
}
#passwordForgotFormComponent img {
  max-width: 300px;
  margin: 3rem auto 3rem auto;
  display: block;
}
#passwordForgotFormComponent hr {
  border: none;
  height: 2px;
  background: rgba(0, 0, 0, 0.2);
  width: 100%;
  display: block;
  margin: 3rem auto;
}
#passwordForgotFormComponent a i {
  margin-right: 5px;
}

/**
 * Some spécifics styles of navbar
 */
nav.waw-navbar {
  height: 120px;
  margin-top: 5px;
}
@media (max-width: 799px) {
  nav.waw-navbar {
    flex-direction: column;
    align-items: center !important;
    height: auto;
  }
}
nav.waw-navbar #logo-desktop {
  height: 110px;
}
@media (max-width: 799px) {
  nav.waw-navbar #logo-desktop {
    display: none;
  }
}
nav.waw-navbar #logo-mobile {
  display: none;
}
@media (max-width: 799px) {
  nav.waw-navbar #logo-mobile {
    display: block;
    margin-top: 50px;
    margin-bottom: 30px;
    width: 230px;
    max-width: 100%;
    margin-right: auto;
    margin-left: auto;
  }
}
nav.waw-navbar ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
nav.waw-navbar ul li {
  max-width: 90px;
}
@media (max-width: 575px) {
  nav.waw-navbar ul li {
    margin-left: 0.4em !important;
    margin-right: 0.4em !important;
  }
}
nav.waw-navbar ul li a {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  text-decoration: none;
  height: 100%;
  color: #c3c3c3;
  font-size: 12px;
  font-weight: bold;
  text-transform: uppercase;
  transition: all 0.3s ease-in-out;
}
@media (max-width: 799px) {
  nav.waw-navbar ul li a {
    padding-bottom: 30px;
  }
}
nav.waw-navbar ul li a .badge {
  top: -10px;
}
nav.waw-navbar ul li a svg {
  margin-bottom: 5px;
}
nav.waw-navbar ul li a svg path {
  fill: #c3c3c3;
  transition: all 0.3s ease-in-out;
}
nav.waw-navbar ul li a .nav-text {
  position: relative;
  padding-bottom: 15px;
}
nav.waw-navbar ul li a .nav-text:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 5px;
  background-color: var(--bg-color);
  transition: width 0.3s ease-in-out;
}
@media (max-width: 799px) {
  nav.waw-navbar ul li a .nav-text {
    position: absolute;
    bottom: 0;
    left: 50%;
    height: 0;
    padding-bottom: 0;
    overflow: hidden;
    transform: translateX(-50%);
    transition: all 0.3s ease-in-out;
  }
}
nav.waw-navbar ul li a.active,
nav.waw-navbar ul li a:hover {
  color: var(--bg-color);
}
nav.waw-navbar ul li a.active svg path,
nav.waw-navbar ul li a:hover svg path {
  fill: var(--bg-color);
}
nav.waw-navbar ul li a.active .nav-text:after,
nav.waw-navbar ul li a:hover .nav-text:after {
  width: 100%;
}
@media (max-width: 799px) {
  nav.waw-navbar ul li a:hover .nav-text {
    padding-bottom: 10px;
    height: auto;
    white-space: nowrap;
  }
}

/**
 * Profil infos part
 */
.profile-infos figure {
  position: relative;
  width: 169px;
  height: 169px;
  overflow: hidden;
}
.profile-infos figure img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  transform: translate(-50%, -50%);
}
.profile-infos figure:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 155px;
  height: 155px;
  border: 2px solid #ffffff;
  transform: translate(-50%, -50%);
  z-index: 2;
}
.profile-infos p {
  margin-bottom: 0;
  color: #787878;
}
.profile-infos a {
  display: block;
  width: 100%;
  color: var(--bg-color);
  background: none;
  font-weight: normal;
}

#more_products .more-products-title {
  font-size: 21px;
  color: var(--bg-color);
}
#more_products a {
  color: var(--text-Color);
}

/**
 * Single article part
 */
@media (max-width: 575px) {
  .single-article {
    flex-direction: column-reverse;
  }
}
.single-article h3, .single-article .h3 {
  font-size: 30px;
  text-align: center;
  font-weight: 300;
  margin: 0;
  text-transform: none;
}
.single-article .single-article-subtitle {
  color: #444444;
  font-size: 14px;
  text-align: center;
  margin: 0;
}
.single-article > figure {
  position: relative;
  height: 250px;
  width: 100%;
  overflow: hidden;
}
.single-article > figure img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  transform: translate(-50%, -50%);
}
.single-article #single-article-description-history,
.single-article #single-article-description,
.single-article #single-article-description-wines,
.single-article #single-article-description-spirits {
  white-space: pre-line;
}

.terms {
  margin: 2rem;
  font-size: 16px;
  font-family: "Roboto Condensed", sans-serif;
}
.terms h2, .terms .h2 {
  margin-bottom: 1.5rem;
  color: black;
}
.terms h3, .terms .h3 {
  color: black;
  text-align: left;
  text-transform: none;
}
.terms thead, .terms tbody, .terms tr, .terms td, .terms th {
  border-width: 1px;
  padding: 0.5rem;
  vertical-align: top;
}
.terms table {
  margin-bottom: 1rem;
}
.terms tr > th {
  background-color: #f7f4f1;
}
.terms .terms__border-div {
  margin: 1rem;
  padding: 1rem 1rem 1rem 2rem;
  border-left: 2px solid var(--bg-color);
}

.form-error {
  color: #dc3545 !important;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmNzcyIsIm1hcHBpbmdzIjoiOzs7QUFBQSxnQkFBZ0I7QUFBaEI7O0VBQUE7QUNBQTs7Ozs7RUFBQTtBQ0FBO0VBUUk7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUdGO0VBQ0E7RUFDQTtFQUNBO0VBTUE7RUFDQTtFQUNBO0VBUUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUlBO0FGYUY7O0FHaERBOzs7RUFHRTtBSG1ERjs7QUdwQ0k7RUFOSjtJQU9NO0VId0NKO0FBQ0Y7O0FHM0JBO0VBQ0U7RUFDQTtFQ21QSSxtQ0FMSTtFRDVPUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSDhCRjs7QUdwQkE7RUFDRTtFQUNBLGNFK2tCNEI7RUY5a0I1QjtFQUNBO0VBQ0EsYUU4a0I0QjtBTHZqQjlCOztBR3BCQTtFQUNFLFdFd2I0QjtBTGphOUI7O0FHYkE7RUFDRTtFQUNBLHFCRW9oQjRCO0VGamhCNUIsZ0JFb2hCNEI7RUZuaEI1QixnQkVvaEI0QjtBTHRnQjlCOztBR1ZBO0VDd01RO0FKMUxSO0FJd0JJO0VEdENKO0lDK01RO0VKN0xOO0FBQ0Y7O0FHZEE7RUNtTVE7QUpqTFI7QUllSTtFRGpDSjtJQzBNUTtFSnBMTjtBQUNGOztBR2xCQTtFQzhMUTtBSnhLUjtBSU1JO0VENUJKO0lDcU1RO0VKM0tOO0FBQ0Y7O0FHdEJBO0VDeUxRO0FKL0pSO0FJSEk7RUR2Qko7SUNnTVE7RUpsS047QUFDRjs7QUcxQkE7RUNnTE0sa0JBTEk7QUo3SVY7O0FHekJBO0VDMktNLGVBTEk7QUp6SVY7O0FHbEJBO0VBQ0U7RUFDQSxtQkVrVTBCO0FMN1M1Qjs7QUdWQTs7RUFFRTtFQUNBO0VBQ0E7QUhhRjs7QUdQQTtFQUNFO0VBQ0E7RUFDQTtBSFVGOztBR0pBOztFQUVFO0FIT0Y7O0FHSkE7OztFQUdFO0VBQ0E7QUhPRjs7QUdKQTs7OztFQUlFO0FIT0Y7O0FHSkE7RUFDRSxnQkV1WjRCO0FMaFo5Qjs7QUdGQTtFQUNFO0VBQ0E7QUhLRjs7QUdDQTtFQUNFO0FIRUY7O0FHTUE7O0VBRUUsbUJFZ1k0QjtBTG5ZOUI7O0FHV0E7RUM0RU0sa0JBTEk7QUo5RVY7O0FHY0E7RUFDRSxjRTRiNEI7RUYzYjVCLHlCRW1jNEI7QUw5YzlCOztBR29CQTs7RUFFRTtFQ3dESSxpQkFMSTtFRGpEUjtFQUNBO0FIakJGOztBR29CQTtFQUFNO0FIaEJOOztBR2lCQTtFQUFNO0FIYk47O0FHa0JBO0VBQ0UsY0VwTlE7RUZxTlIsMEJFa013QztBTGpOMUM7QUdpQkU7RUFDRSxjRWlNc0M7QUxoTjFDOztBRzBCRTtFQUVFO0VBQ0E7QUh4Qko7O0FHK0JBOzs7O0VBSUUscUNFNlM0QjtFRC9SeEIsY0FMSTtFRFBSO0VBQ0E7QUg1QkY7O0FHbUNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUNBSSxrQkFMSTtBSjFCVjtBR29DRTtFQ0xJLGtCQUxJO0VEWU47RUFDQTtBSGxDSjs7QUdzQ0E7RUNaTSxrQkFMSTtFRG1CUixjRTFRUTtFRjJRUjtBSG5DRjtBR3NDRTtFQUNFO0FIcENKOztBR3dDQTtFQUNFO0VDeEJJLGtCQUxJO0VEK0JSLFdFdlRTO0VGd1RULHlCRS9TUztFQ0VQO0FOeVFKO0FHdUNFO0VBQ0U7RUMvQkUsY0FMSTtFRHNDTixnQkUwUTBCO0FML1M5Qjs7QUc4Q0E7RUFDRTtBSDNDRjs7QUdpREE7O0VBRUU7QUg5Q0Y7O0FHc0RBO0VBQ0U7RUFDQTtBSG5ERjs7QUdzREE7RUFDRSxtQkV3VTRCO0VGdlU1QixzQkV1VTRCO0VGdFU1QixjRTFWUztFRjJWVDtBSG5ERjs7QUcwREE7RUFFRTtFQUNBO0FIeERGOztBRzJEQTs7Ozs7O0VBTUU7RUFDQTtFQUNBO0FIeERGOztBR2dFQTtFQUNFO0FIN0RGOztBR21FQTtFQUVFO0FIakVGOztBR3lFQTtFQUNFO0FIdEVGOztBRzJFQTs7Ozs7RUFLRTtFQUNBO0VDOUhJLGtCQUxJO0VEcUlSO0FIeEVGOztBRzRFQTs7RUFFRTtBSHpFRjs7QUc4RUE7RUFDRTtBSDNFRjs7QUc4RUE7RUFHRTtBSDdFRjtBR2dGRTtFQUNFO0FIOUVKOztBR3FGQTtFQUNFO0FIbEZGOztBRzBGQTs7OztFQUlFO0FIdkZGO0FHMEZJOzs7O0VBQ0U7QUhyRk47O0FHNEZBO0VBQ0U7RUFDQTtBSHpGRjs7QUc4RkE7RUFDRTtBSDNGRjs7QUdxR0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBSGxHRjs7QUcwR0E7RUFDRTtFQUNBO0VBQ0E7RUFDQSxxQkU2SjRCO0VEaFh0QjtFRHNOTjtBSHhHRjtBSWhSSTtFRGlYSjtJQ3hNUTtFSjJHTjtBQUNGO0FHcUdFO0VBQ0U7QUhuR0o7O0FHMEdBOzs7Ozs7O0VBT0U7QUh2R0Y7O0FHMEdBO0VBQ0U7QUh2R0Y7O0FHZ0hBO0VBQ0U7RUFDQTtBSDdHRjs7QUdxSEE7Ozs7Ozs7Q0FBQTtBQVdBO0VBQ0U7QUhySEY7O0FHMEhBO0VBQ0U7QUh2SEY7O0FHNkhBO0VBQ0U7QUgxSEY7O0FHZ0lBO0VBQ0U7RUFDQTtBSDdIRjs7QUdrSUE7RUFDRTtBSC9IRjs7QUdvSUE7RUFDRTtBSGpJRjs7QUd3SUE7RUFDRTtFQUNBO0FIcklGOztBRzZJQTtFQUNFO0FIMUlGOztBR2tKQTtFQUNFO0FIL0lGOztBT3BjQTtFSHlRTSxrQkFMSTtFR2xRUixnQkZ1bUI0QjtBTGhLOUI7O0FPbGNFO0VIc1FNO0VHcFFKLGdCRjBsQmtCO0VFemxCbEIsZ0JGMmtCMEI7QUx0STlCO0FJcFdJO0VHcEdGO0lINlFNO0VKK0xOO0FBQ0Y7O0FPN2NFO0VIc1FNO0VHcFFKLGdCRjBsQmtCO0VFemxCbEIsZ0JGMmtCMEI7QUwzSDlCO0FJL1dJO0VHcEdGO0lINlFNO0VKME1OO0FBQ0Y7O0FPeGRFO0VIc1FNO0VHcFFKLGdCRjBsQmtCO0VFemxCbEIsZ0JGMmtCMEI7QUxoSDlCO0FJMVhJO0VHcEdGO0lINlFNO0VKcU5OO0FBQ0Y7O0FPbmVFO0VIc1FNO0VHcFFKLGdCRjBsQmtCO0VFemxCbEIsZ0JGMmtCMEI7QUxyRzlCO0FJcllJO0VHcEdGO0lINlFNO0VKZ09OO0FBQ0Y7O0FPOWVFO0VIc1FNO0VHcFFKLGdCRjBsQmtCO0VFemxCbEIsZ0JGMmtCMEI7QUwxRjlCO0FJaFpJO0VHcEdGO0lINlFNO0VKMk9OO0FBQ0Y7O0FPemZFO0VIc1FNO0VHcFFKLGdCRjBsQmtCO0VFemxCbEIsZ0JGMmtCMEI7QUwvRTlCO0FJM1pJO0VHcEdGO0lINlFNO0VKc1BOO0FBQ0Y7O0FPOWVBO0VDckRFO0VBQ0E7QVJ1aUJGOztBTzllQTtFQzFERTtFQUNBO0FSNGlCRjs7QU9oZkE7RUFDRTtBUG1mRjtBT2pmRTtFQUNFLG9CRjhsQjBCO0FMM0c5Qjs7QU96ZUE7RUhzTk0sa0JBTEk7RUcvTVI7QVA0ZUY7O0FPeGVBO0VBQ0UsbUJGZ1NPO0VEakZILGtCQUxJO0FKa1NWO0FPemVFO0VBQ0U7QVAyZUo7O0FPdmVBO0VBQ0U7RUFDQSxtQkZzUk87RURqRkgsa0JBTEk7RUc5TFIsY0ZwRlM7QUw4akJYO0FPeGVFO0VBQ0U7QVAwZUo7O0FTeGtCQTtFQ0lFO0VBR0E7QVZza0JGOztBU3ZrQkE7RUFDRSxnQkpzOUNrQztFSXI5Q2xDLHNCSlBTO0VJUVQ7RUhHRTtFSVJGO0VBR0E7QVYra0JGOztBU2prQkE7RUFFRTtBVG1rQkY7O0FTaGtCQTtFQUNFO0VBQ0E7QVRta0JGOztBU2hrQkE7RUwrUE0sa0JBTEk7RUt4UFIsY0oxQlM7QUw2bEJYOztBV3JtQkU7Ozs7Ozs7RUNIQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0Faa25CRjs7QWExakJJO0VGNUNFO0lBQ0UsZ0JOaWRlO0VMeUpyQjtBQUNGO0FhaGtCSTtFRjVDRTtJQUNFLGdCTmlkZTtFTDhKckI7QUFDRjtBYXJrQkk7RUY1Q0U7SUFDRSxnQk5pZGU7RUxtS3JCO0FBQ0Y7QWExa0JJO0VGNUNFO0lBQ0UsaUJOaWRlO0VMd0tyQjtBQUNGO0FhL2tCSTtFRjVDRTtJQUNFLGlCTmlkZTtFTDZLckI7QUFDRjtBYzlvQkU7RUNBQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtBZmdwQkY7QWNwcEJJO0VDYUY7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FmMG9CRjs7QWUzbEJNO0VBQ0U7QWY4bEJSOztBZTNsQk07RUFwQ0o7RUFDQTtBZm1vQkY7O0Flcm5CRTtFQUNFO0VBQ0E7QWZ3bkJKOztBZTFuQkU7RUFDRTtFQUNBO0FmNm5CSjs7QWUvbkJFO0VBQ0U7RUFDQTtBZmtvQko7O0FlcG9CRTtFQUNFO0VBQ0E7QWZ1b0JKOztBZXpvQkU7RUFDRTtFQUNBO0FmNG9CSjs7QWU5b0JFO0VBQ0U7RUFDQTtBZmlwQko7O0FlbG5CTTtFQWhESjtFQUNBO0Fmc3FCRjs7QWVqbkJVO0VBaEVOO0VBQ0E7QWZxckJKOztBZXRuQlU7RUFoRU47RUFDQTtBZjByQko7O0FlM25CVTtFQWhFTjtFQUNBO0FmK3JCSjs7QWVob0JVO0VBaEVOO0VBQ0E7QWZvc0JKOztBZXJvQlU7RUFoRU47RUFDQTtBZnlzQko7O0FlMW9CVTtFQWhFTjtFQUNBO0FmOHNCSjs7QWUvb0JVO0VBaEVOO0VBQ0E7QWZtdEJKOztBZXBwQlU7RUFoRU47RUFDQTtBZnd0Qko7O0FlenBCVTtFQWhFTjtFQUNBO0FmNnRCSjs7QWU5cEJVO0VBaEVOO0VBQ0E7QWZrdUJKOztBZW5xQlU7RUFoRU47RUFDQTtBZnV1Qko7O0FleHFCVTtFQWhFTjtFQUNBO0FmNHVCSjs7QWVycUJZO0VBeERWO0FmaXVCRjs7QWV6cUJZO0VBeERWO0FmcXVCRjs7QWU3cUJZO0VBeERWO0FmeXVCRjs7QWVqckJZO0VBeERWO0FmNnVCRjs7QWVyckJZO0VBeERWO0FmaXZCRjs7QWV6ckJZO0VBeERWO0FmcXZCRjs7QWU3ckJZO0VBeERWO0FmeXZCRjs7QWVqc0JZO0VBeERWO0FmNnZCRjs7QWVyc0JZO0VBeERWO0FmaXdCRjs7QWV6c0JZO0VBeERWO0FmcXdCRjs7QWU3c0JZO0VBeERWO0FmeXdCRjs7QWV0c0JROztFQUVFO0FmeXNCVjs7QWV0c0JROztFQUVFO0FmeXNCVjs7QWVodEJROztFQUVFO0FmbXRCVjs7QWVodEJROztFQUVFO0FmbXRCVjs7QWUxdEJROztFQUVFO0FmNnRCVjs7QWUxdEJROztFQUVFO0FmNnRCVjs7QWVwdUJROztFQUVFO0FmdXVCVjs7QWVwdUJROztFQUVFO0FmdXVCVjs7QWU5dUJROztFQUVFO0FmaXZCVjs7QWU5dUJROztFQUVFO0FmaXZCVjs7QWV4dkJROztFQUVFO0FmMnZCVjs7QWV4dkJROztFQUVFO0FmMnZCVjs7QWFyekJJO0VFVUU7SUFDRTtFZit5Qk47O0VlNXlCSTtJQXBDSjtJQUNBO0VmbzFCQTs7RWV0MEJBO0lBQ0U7SUFDQTtFZnkwQkY7O0VlMzBCQTtJQUNFO0lBQ0E7RWY4MEJGOztFZWgxQkE7SUFDRTtJQUNBO0VmbTFCRjs7RWVyMUJBO0lBQ0U7SUFDQTtFZncxQkY7O0VlMTFCQTtJQUNFO0lBQ0E7RWY2MUJGOztFZS8xQkE7SUFDRTtJQUNBO0VmazJCRjs7RWVuMEJJO0lBaERKO0lBQ0E7RWZ1M0JBOztFZWwwQlE7SUFoRU47SUFDQTtFZnM0QkY7O0VldjBCUTtJQWhFTjtJQUNBO0VmMjRCRjs7RWU1MEJRO0lBaEVOO0lBQ0E7RWZnNUJGOztFZWoxQlE7SUFoRU47SUFDQTtFZnE1QkY7O0VldDFCUTtJQWhFTjtJQUNBO0VmMDVCRjs7RWUzMUJRO0lBaEVOO0lBQ0E7RWYrNUJGOztFZWgyQlE7SUFoRU47SUFDQTtFZm82QkY7O0VlcjJCUTtJQWhFTjtJQUNBO0VmeTZCRjs7RWUxMkJRO0lBaEVOO0lBQ0E7RWY4NkJGOztFZS8yQlE7SUFoRU47SUFDQTtFZm03QkY7O0VlcDNCUTtJQWhFTjtJQUNBO0VmdzdCRjs7RWV6M0JRO0lBaEVOO0lBQ0E7RWY2N0JGOztFZXQzQlU7SUF4RFY7RWZrN0JBOztFZTEzQlU7SUF4RFY7RWZzN0JBOztFZTkzQlU7SUF4RFY7RWYwN0JBOztFZWw0QlU7SUF4RFY7RWY4N0JBOztFZXQ0QlU7SUF4RFY7RWZrOEJBOztFZTE0QlU7SUF4RFY7RWZzOEJBOztFZTk0QlU7SUF4RFY7RWYwOEJBOztFZWw1QlU7SUF4RFY7RWY4OEJBOztFZXQ1QlU7SUF4RFY7RWZrOUJBOztFZTE1QlU7SUF4RFY7RWZzOUJBOztFZTk1QlU7SUF4RFY7RWYwOUJBOztFZWw2QlU7SUF4RFY7RWY4OUJBOztFZTM1Qk07O0lBRUU7RWY4NUJSOztFZTM1Qk07O0lBRUU7RWY4NUJSOztFZXI2Qk07O0lBRUU7RWZ3NkJSOztFZXI2Qk07O0lBRUU7RWZ3NkJSOztFZS82Qk07O0lBRUU7RWZrN0JSOztFZS82Qk07O0lBRUU7RWZrN0JSOztFZXo3Qk07O0lBRUU7RWY0N0JSOztFZXo3Qk07O0lBRUU7RWY0N0JSOztFZW44Qk07O0lBRUU7RWZzOEJSOztFZW44Qk07O0lBRUU7RWZzOEJSOztFZTc4Qk07O0lBRUU7RWZnOUJSOztFZTc4Qk07O0lBRUU7RWZnOUJSO0FBQ0Y7QWEzZ0NJO0VFVUU7SUFDRTtFZm9nQ047O0VlamdDSTtJQXBDSjtJQUNBO0VmeWlDQTs7RWUzaENBO0lBQ0U7SUFDQTtFZjhoQ0Y7O0VlaGlDQTtJQUNFO0lBQ0E7RWZtaUNGOztFZXJpQ0E7SUFDRTtJQUNBO0Vmd2lDRjs7RWUxaUNBO0lBQ0U7SUFDQTtFZjZpQ0Y7O0VlL2lDQTtJQUNFO0lBQ0E7RWZrakNGOztFZXBqQ0E7SUFDRTtJQUNBO0VmdWpDRjs7RWV4aENJO0lBaERKO0lBQ0E7RWY0a0NBOztFZXZoQ1E7SUFoRU47SUFDQTtFZjJsQ0Y7O0VlNWhDUTtJQWhFTjtJQUNBO0VmZ21DRjs7RWVqaUNRO0lBaEVOO0lBQ0E7RWZxbUNGOztFZXRpQ1E7SUFoRU47SUFDQTtFZjBtQ0Y7O0VlM2lDUTtJQWhFTjtJQUNBO0VmK21DRjs7RWVoakNRO0lBaEVOO0lBQ0E7RWZvbkNGOztFZXJqQ1E7SUFoRU47SUFDQTtFZnluQ0Y7O0VlMWpDUTtJQWhFTjtJQUNBO0VmOG5DRjs7RWUvakNRO0lBaEVOO0lBQ0E7RWZtb0NGOztFZXBrQ1E7SUFoRU47SUFDQTtFZndvQ0Y7O0VlemtDUTtJQWhFTjtJQUNBO0VmNm9DRjs7RWU5a0NRO0lBaEVOO0lBQ0E7RWZrcENGOztFZTNrQ1U7SUF4RFY7RWZ1b0NBOztFZS9rQ1U7SUF4RFY7RWYyb0NBOztFZW5sQ1U7SUF4RFY7RWYrb0NBOztFZXZsQ1U7SUF4RFY7RWZtcENBOztFZTNsQ1U7SUF4RFY7RWZ1cENBOztFZS9sQ1U7SUF4RFY7RWYycENBOztFZW5tQ1U7SUF4RFY7RWYrcENBOztFZXZtQ1U7SUF4RFY7RWZtcUNBOztFZTNtQ1U7SUF4RFY7RWZ1cUNBOztFZS9tQ1U7SUF4RFY7RWYycUNBOztFZW5uQ1U7SUF4RFY7RWYrcUNBOztFZXZuQ1U7SUF4RFY7RWZtckNBOztFZWhuQ007O0lBRUU7RWZtbkNSOztFZWhuQ007O0lBRUU7RWZtbkNSOztFZTFuQ007O0lBRUU7RWY2bkNSOztFZTFuQ007O0lBRUU7RWY2bkNSOztFZXBvQ007O0lBRUU7RWZ1b0NSOztFZXBvQ007O0lBRUU7RWZ1b0NSOztFZTlvQ007O0lBRUU7RWZpcENSOztFZTlvQ007O0lBRUU7RWZpcENSOztFZXhwQ007O0lBRUU7RWYycENSOztFZXhwQ007O0lBRUU7RWYycENSOztFZWxxQ007O0lBRUU7RWZxcUNSOztFZWxxQ007O0lBRUU7RWZxcUNSO0FBQ0Y7QWFodUNJO0VFVUU7SUFDRTtFZnl0Q047O0VldHRDSTtJQXBDSjtJQUNBO0VmOHZDQTs7RWVodkNBO0lBQ0U7SUFDQTtFZm12Q0Y7O0VlcnZDQTtJQUNFO0lBQ0E7RWZ3dkNGOztFZTF2Q0E7SUFDRTtJQUNBO0VmNnZDRjs7RWUvdkNBO0lBQ0U7SUFDQTtFZmt3Q0Y7O0VlcHdDQTtJQUNFO0lBQ0E7RWZ1d0NGOztFZXp3Q0E7SUFDRTtJQUNBO0VmNHdDRjs7RWU3dUNJO0lBaERKO0lBQ0E7RWZpeUNBOztFZTV1Q1E7SUFoRU47SUFDQTtFZmd6Q0Y7O0VlanZDUTtJQWhFTjtJQUNBO0VmcXpDRjs7RWV0dkNRO0lBaEVOO0lBQ0E7RWYwekNGOztFZTN2Q1E7SUFoRU47SUFDQTtFZit6Q0Y7O0VlaHdDUTtJQWhFTjtJQUNBO0VmbzBDRjs7RWVyd0NRO0lBaEVOO0lBQ0E7RWZ5MENGOztFZTF3Q1E7SUFoRU47SUFDQTtFZjgwQ0Y7O0VlL3dDUTtJQWhFTjtJQUNBO0VmbTFDRjs7RWVweENRO0lBaEVOO0lBQ0E7RWZ3MUNGOztFZXp4Q1E7SUFoRU47SUFDQTtFZjYxQ0Y7O0VlOXhDUTtJQWhFTjtJQUNBO0VmazJDRjs7RWVueUNRO0lBaEVOO0lBQ0E7RWZ1MkNGOztFZWh5Q1U7SUF4RFY7RWY0MUNBOztFZXB5Q1U7SUF4RFY7RWZnMkNBOztFZXh5Q1U7SUF4RFY7RWZvMkNBOztFZTV5Q1U7SUF4RFY7RWZ3MkNBOztFZWh6Q1U7SUF4RFY7RWY0MkNBOztFZXB6Q1U7SUF4RFY7RWZnM0NBOztFZXh6Q1U7SUF4RFY7RWZvM0NBOztFZTV6Q1U7SUF4RFY7RWZ3M0NBOztFZWgwQ1U7SUF4RFY7RWY0M0NBOztFZXAwQ1U7SUF4RFY7RWZnNENBOztFZXgwQ1U7SUF4RFY7RWZvNENBOztFZTUwQ1U7SUF4RFY7RWZ3NENBOztFZXIwQ007O0lBRUU7RWZ3MENSOztFZXIwQ007O0lBRUU7RWZ3MENSOztFZS8wQ007O0lBRUU7RWZrMUNSOztFZS8wQ007O0lBRUU7RWZrMUNSOztFZXoxQ007O0lBRUU7RWY0MUNSOztFZXoxQ007O0lBRUU7RWY0MUNSOztFZW4yQ007O0lBRUU7RWZzMkNSOztFZW4yQ007O0lBRUU7RWZzMkNSOztFZTcyQ007O0lBRUU7RWZnM0NSOztFZTcyQ007O0lBRUU7RWZnM0NSOztFZXYzQ007O0lBRUU7RWYwM0NSOztFZXYzQ007O0lBRUU7RWYwM0NSO0FBQ0Y7QWFyN0NJO0VFVUU7SUFDRTtFZjg2Q047O0VlMzZDSTtJQXBDSjtJQUNBO0VmbTlDQTs7RWVyOENBO0lBQ0U7SUFDQTtFZnc4Q0Y7O0VlMThDQTtJQUNFO0lBQ0E7RWY2OENGOztFZS84Q0E7SUFDRTtJQUNBO0VmazlDRjs7RWVwOUNBO0lBQ0U7SUFDQTtFZnU5Q0Y7O0VlejlDQTtJQUNFO0lBQ0E7RWY0OUNGOztFZTk5Q0E7SUFDRTtJQUNBO0VmaStDRjs7RWVsOENJO0lBaERKO0lBQ0E7RWZzL0NBOztFZWo4Q1E7SUFoRU47SUFDQTtFZnFnREY7O0VldDhDUTtJQWhFTjtJQUNBO0VmMGdERjs7RWUzOENRO0lBaEVOO0lBQ0E7RWYrZ0RGOztFZWg5Q1E7SUFoRU47SUFDQTtFZm9oREY7O0VlcjlDUTtJQWhFTjtJQUNBO0VmeWhERjs7RWUxOUNRO0lBaEVOO0lBQ0E7RWY4aERGOztFZS85Q1E7SUFoRU47SUFDQTtFZm1pREY7O0VlcCtDUTtJQWhFTjtJQUNBO0Vmd2lERjs7RWV6K0NRO0lBaEVOO0lBQ0E7RWY2aURGOztFZTkrQ1E7SUFoRU47SUFDQTtFZmtqREY7O0Vlbi9DUTtJQWhFTjtJQUNBO0VmdWpERjs7RWV4L0NRO0lBaEVOO0lBQ0E7RWY0akRGOztFZXIvQ1U7SUF4RFY7RWZpakRBOztFZXovQ1U7SUF4RFY7RWZxakRBOztFZTcvQ1U7SUF4RFY7RWZ5akRBOztFZWpnRFU7SUF4RFY7RWY2akRBOztFZXJnRFU7SUF4RFY7RWZpa0RBOztFZXpnRFU7SUF4RFY7RWZxa0RBOztFZTdnRFU7SUF4RFY7RWZ5a0RBOztFZWpoRFU7SUF4RFY7RWY2a0RBOztFZXJoRFU7SUF4RFY7RWZpbERBOztFZXpoRFU7SUF4RFY7RWZxbERBOztFZTdoRFU7SUF4RFY7RWZ5bERBOztFZWppRFU7SUF4RFY7RWY2bERBOztFZTFoRE07O0lBRUU7RWY2aERSOztFZTFoRE07O0lBRUU7RWY2aERSOztFZXBpRE07O0lBRUU7RWZ1aURSOztFZXBpRE07O0lBRUU7RWZ1aURSOztFZTlpRE07O0lBRUU7RWZpakRSOztFZTlpRE07O0lBRUU7RWZpakRSOztFZXhqRE07O0lBRUU7RWYyakRSOztFZXhqRE07O0lBRUU7RWYyakRSOztFZWxrRE07O0lBRUU7RWZxa0RSOztFZWxrRE07O0lBRUU7RWZxa0RSOztFZTVrRE07O0lBRUU7RWYra0RSOztFZTVrRE07O0lBRUU7RWYra0RSO0FBQ0Y7QWExb0RJO0VFVUU7SUFDRTtFZm1vRE47O0VlaG9ESTtJQXBDSjtJQUNBO0Vmd3FEQTs7RWUxcERBO0lBQ0U7SUFDQTtFZjZwREY7O0VlL3BEQTtJQUNFO0lBQ0E7RWZrcURGOztFZXBxREE7SUFDRTtJQUNBO0VmdXFERjs7RWV6cURBO0lBQ0U7SUFDQTtFZjRxREY7O0VlOXFEQTtJQUNFO0lBQ0E7RWZpckRGOztFZW5yREE7SUFDRTtJQUNBO0Vmc3JERjs7RWV2cERJO0lBaERKO0lBQ0E7RWYyc0RBOztFZXRwRFE7SUFoRU47SUFDQTtFZjB0REY7O0VlM3BEUTtJQWhFTjtJQUNBO0VmK3RERjs7RWVocURRO0lBaEVOO0lBQ0E7RWZvdURGOztFZXJxRFE7SUFoRU47SUFDQTtFZnl1REY7O0VlMXFEUTtJQWhFTjtJQUNBO0VmOHVERjs7RWUvcURRO0lBaEVOO0lBQ0E7RWZtdkRGOztFZXByRFE7SUFoRU47SUFDQTtFZnd2REY7O0VlenJEUTtJQWhFTjtJQUNBO0VmNnZERjs7RWU5ckRRO0lBaEVOO0lBQ0E7RWZrd0RGOztFZW5zRFE7SUFoRU47SUFDQTtFZnV3REY7O0VleHNEUTtJQWhFTjtJQUNBO0VmNHdERjs7RWU3c0RRO0lBaEVOO0lBQ0E7RWZpeERGOztFZTFzRFU7SUF4RFY7RWZzd0RBOztFZTlzRFU7SUF4RFY7RWYwd0RBOztFZWx0RFU7SUF4RFY7RWY4d0RBOztFZXR0RFU7SUF4RFY7RWZreERBOztFZTF0RFU7SUF4RFY7RWZzeERBOztFZTl0RFU7SUF4RFY7RWYweERBOztFZWx1RFU7SUF4RFY7RWY4eERBOztFZXR1RFU7SUF4RFY7RWZreURBOztFZTF1RFU7SUF4RFY7RWZzeURBOztFZTl1RFU7SUF4RFY7RWYweURBOztFZWx2RFU7SUF4RFY7RWY4eURBOztFZXR2RFU7SUF4RFY7RWZrekRBOztFZS91RE07O0lBRUU7RWZrdkRSOztFZS91RE07O0lBRUU7RWZrdkRSOztFZXp2RE07O0lBRUU7RWY0dkRSOztFZXp2RE07O0lBRUU7RWY0dkRSOztFZW53RE07O0lBRUU7RWZzd0RSOztFZW53RE07O0lBRUU7RWZzd0RSOztFZTd3RE07O0lBRUU7RWZneERSOztFZTd3RE07O0lBRUU7RWZneERSOztFZXZ4RE07O0lBRUU7RWYweERSOztFZXZ4RE07O0lBRUU7RWYweERSOztFZWp5RE07O0lBRUU7RWZveURSOztFZWp5RE07O0lBRUU7RWZveURSO0FBQ0Y7QWdCMTVEQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBLG1CWHVXTztFV3RXUCxjWENTO0VXQVQsbUJYa3FCNEI7RVdqcUI1QixxQlhQUztBTGs2RFg7QWdCcDVERTtFQUNFO0VBQ0E7RUFDQSx3Qlh5ZTBCO0VXeGUxQjtBaEJzNURKO0FnQm41REU7RUFDRTtBaEJxNURKO0FnQmw1REU7RUFDRTtBaEJvNURKO0FnQmg1REU7RUFDRTtBaEJrNURKOztBZ0J6NERBO0VBQ0U7QWhCNDRERjs7QWdCbDRERTtFQUNFO0FoQnE0REo7O0FnQnQzREU7RUFDRTtBaEJ5M0RKO0FnQnQzREk7RUFDRTtBaEJ3M0ROOztBZ0JqM0RFO0VBQ0U7QWhCbzNESjtBZ0JqM0RFO0VBQ0U7QWhCbTNESjs7QWdCMTJERTtFQUNFO0VBQ0E7QWhCNjJESjs7QWdCcjJEQTtFQUNFO0VBQ0E7QWhCdzJERjs7QWdCaDJERTtFQUNFO0VBQ0E7QWhCbTJESjs7QWlCLzlERTtFQU1FO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUEsV0FiUTtFQWNSO0FqQjQ5REo7O0FpQjMrREU7RUFNRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBLFdBYlE7RUFjUjtBakJ3K0RKOztBaUJ2L0RFO0VBTUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQSxXQWJRO0VBY1I7QWpCby9ESjs7QWlCbmdFRTtFQU1FO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUEsV0FiUTtFQWNSO0FqQmdnRUo7O0FpQi9nRUU7RUFNRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBLFdBYlE7RUFjUjtBakI0Z0VKOztBaUIzaEVFO0VBTUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQSxXQWJRO0VBY1I7QWpCd2hFSjs7QWlCdmlFRTtFQU1FO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUEsV0FiUTtFQWNSO0FqQm9pRUo7O0FpQm5qRUU7RUFNRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBLFdBYlE7RUFjUjtBakJnakVKOztBZ0I1NkRJO0VBQ0U7RUFDQTtBaEIrNkROOztBYTEvREk7RUd5RUE7SUFDRTtJQUNBO0VoQnE3REo7QUFDRjtBYWpnRUk7RUd5RUE7SUFDRTtJQUNBO0VoQjI3REo7QUFDRjtBYXZnRUk7RUd5RUE7SUFDRTtJQUNBO0VoQmk4REo7QUFDRjtBYTdnRUk7RUd5RUE7SUFDRTtJQUNBO0VoQnU4REo7QUFDRjtBYW5oRUk7RUd5RUE7SUFDRTtJQUNBO0VoQjY4REo7QUFDRjtBa0JqbUVBO0VBQ0UscUJid3pCc0M7QUwyeUN4Qzs7QWtCMWxFQTtFQUNFO0VBQ0E7RUFDQTtFZG9SSSxrQkFMSTtFYzNRUixnQmJna0I0QjtBTDJoRDlCOztBa0J2bEVBO0VBQ0U7RUFDQTtFZDBRSSxrQkFMSTtBSnMxRFY7O0FrQnZsRUE7RUFDRTtFQUNBO0Vkb1FJLG1CQUxJO0FKNDFEVjs7QW1CeG5FQTtFQUNFLG1CZGd6QnNDO0VEaGhCbEMsa0JBTEk7RWV2UlIsY2RLUztBTG9uRVg7O0FvQjluRUE7RUFDRTtFQUNBO0VBQ0E7RWhCOFJJLGVBTEk7RWdCdFJSLGdCZnFrQjRCO0VlcGtCNUIsZ0JmMGtCNEI7RWV6a0I1QixjZktTO0VlSlQsc0JmTFM7RWVNVDtFQUNBO0VBQ0E7RWRHRTtFZUhFLHdFRE1KO0FwQjRuRUY7QXFCOW5FTTtFRGhCTjtJQ2lCUTtFckJpb0VOO0FBQ0Y7QW9CL25FRTtFQUNFO0FwQmlvRUo7QW9CL25FSTtFQUNFO0FwQmlvRU47QW9CNW5FRTtFQUNFLGNmakJPO0Vla0JQLHNCZjNCTztFZTRCUCxxQmY4ekJvQztFZTd6QnBDO0VBS0Usa0RmdXNCMEI7QUxtN0NoQztBb0JubkVFO0VBRUU7QXBCb25FSjtBb0JobkVFO0VBQ0UsY2YxQ087RWU0Q1A7QXBCaW5FSjtBb0J6bUVFO0VBRUUseUJmMURPO0VlNkRQO0FwQndtRUo7QW9CcG1FRTtFQUNFO0VBQ0E7RUFDQSwwQmYwcEIwQjtFZXpwQjFCLGNmOURPO0VpQmJULHlCakJNUztFZXVFUDtFQUNBO0VBQ0E7RUFDQTtFQUNBLDRCZmdiMEI7RWUvYTFCO0VDdEVFLHFJRHVFRjtBcEJzbUVKO0FxQnpxRU07RUR1REo7SUN0RE07RXJCNHFFTjtBQUNGO0FvQnhtRUU7RUFDRSx5QmYrNUI4QjtBTDJzQ2xDO0FvQnZtRUU7RUFDRTtFQUNBO0VBQ0EsMEJmdW9CMEI7RWV0b0IxQixjZmpGTztFaUJiVCx5QmpCTVM7RWUwRlA7RUFDQTtFQUNBO0VBQ0E7RUFDQSw0QmY2WjBCO0VlNVoxQjtFQ3pGRSxxSUQwRkY7QXBCeW1FSjtBcUIvckVNO0VEMEVKO0lDekVNO0VyQmtzRU47QUFDRjtBb0IzbUVFO0VBQ0UseUJmNDRCOEI7QUxpdUNsQzs7QW9CcG1FQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsZ0JmeWQ0QjtFZXhkNUIsY2Y1R1M7RWU2R1Q7RUFDQTtFQUNBO0FwQnVtRUY7QW9Ccm1FRTtFQUVFO0VBQ0E7QXBCc21FSjs7QW9CM2xFQTtFQUNFLHNDZmd1QnNDO0VlL3RCdEM7RWhCbUpJLG1CQUxJO0VFN1FOO0FOK3RFSjtBb0I1bEVFO0VBQ0U7RUFDQTtFQUNBLHlCZjJsQjBCO0FMbWdEOUI7QW9CM2xFRTtFQUNFO0VBQ0E7RUFDQSx5QmZxbEIwQjtBTHdnRDlCOztBb0J6bEVBO0VBQ0Usb0NmOHNCc0M7RWU3c0J0QztFaEJnSUksa0JBTEk7RUU3UU47QU5ndkVKO0FvQjFsRUU7RUFDRTtFQUNBO0VBQ0EsdUJmNGtCMEI7QUxnaEQ5QjtBb0J6bEVFO0VBQ0U7RUFDQTtFQUNBLHVCZnNrQjBCO0FMcWhEOUI7O0FvQm5sRUU7RUFDRSx1Q2ZxckJvQztBTGk2Q3hDO0FvQm5sRUU7RUFDRSxzQ2ZrckJvQztBTG02Q3hDO0FvQmxsRUU7RUFDRSxvQ2YrcUJvQztBTHE2Q3hDOztBb0Iva0VBO0VBQ0UsV2Y2cUJzQztFZTVxQnRDO0VBQ0EsaUJmNGhCNEI7QUxzakQ5QjtBb0JobEVFO0VBQ0U7QXBCa2xFSjtBb0Iva0VFO0VBQ0U7RWQvTEE7QU5peEVKO0FvQjlrRUU7RUFDRTtFZHBNQTtBTnF4RUo7O0F1Qm55RUE7RUFDRTtFQUNBO0VBQ0E7RUFFQTtFbkIyUkksZUFMSTtFbUJuUlIsZ0JsQmtrQjRCO0VrQmprQjVCLGdCbEJ1a0I0QjtFa0J0a0I1QixjbEJFUztFa0JEVCxzQmxCUlM7RWtCU1Q7RUFDQTtFQUNBLHlDbEJnN0JrQztFa0IvNkJsQywwQmxCZzdCa0M7RWtCLzZCbEM7RWpCRkU7RWVIRSx3RUVRSjtFQUNBO0F2Qm15RUY7QXFCeHlFTTtFRWZOO0lGZ0JRO0VyQjJ5RU47QUFDRjtBdUJ0eUVFO0VBQ0UscUJsQnMwQm9DO0VrQnIwQnBDO0VBS0Usa0RsQmk3QjRCO0FMbTNDbEM7QXVCaHlFRTtFQUVFLHNCbEJnc0IwQjtFa0IvckIxQjtBdkJpeUVKO0F1Qjl4RUU7RUFFRSx5QmxCcENPO0FMbTBFWDtBdUIxeEVFO0VBQ0U7RUFDQTtBdkI0eEVKOztBdUJ4eEVBO0VBQ0Usb0JsQnlyQjRCO0VrQnhyQjVCLHVCbEJ3ckI0QjtFa0J2ckI1QixvQmxCd3JCNEI7RUQvY3hCLG1CQUxJO0VFN1FOO0FOczBFSjs7QXVCeHhFQTtFQUNFLG1CbEJxckI0QjtFa0JwckI1QixzQmxCb3JCNEI7RWtCbnJCNUIsa0JsQm9yQjRCO0VEbmR4QixrQkFMSTtFRTdRTjtBTjgwRUo7O0F3QjcxRUE7RUFDRTtFQUNBLGtCbkJxM0J3QztFbUJwM0J4QyxtQm5CcTNCd0M7RW1CcDNCeEMsdUJuQnEzQndDO0FMMitDMUM7QXdCOTFFRTtFQUNFO0VBQ0E7QXhCZzJFSjs7QXdCNTFFQTtFQUNFLFVuQnkyQndDO0VtQngyQnhDLFduQncyQndDO0VtQnYyQnhDO0VBQ0E7RUFDQSxzQm5CYlM7RW1CY1Q7RUFDQTtFQUNBO0VBQ0EscUNuQjQyQndDO0VtQjMyQnhDO0VBQ0E7QXhCKzFFRjtBd0I1MUVFO0VsQlhFO0FOMDJFSjtBd0IzMUVFO0VBRUUsa0JuQm0yQnNDO0FMeS9DMUM7QXdCejFFRTtFQUNFLHVCbkIwMUJzQztBTGlnRDFDO0F3QngxRUU7RUFDRSxxQm5Cc3pCb0M7RW1CcnpCcEM7RUFDQSxrRG5CbXNCNEI7QUx1cERoQztBd0J2MUVFO0VBQ0UseUJuQlpNO0VtQmFOLHFCbkJiTTtBTHMyRVY7QXdCdjFFSTtFQUlJO0F4QnMxRVI7QXdCbDFFSTtFQUlJO0F4QmkxRVI7QXdCNTBFRTtFQUNFLHlCbkJqQ007RW1Ca0NOLHFCbkJsQ007RW1CdUNKO0F4QjAwRU47QXdCdDBFRTtFQUNFO0VBQ0E7RUFDQSxZbkJrMEJ1QztBTHNnRDNDO0F3QmowRUk7RUFDRSxZbkIwekJxQztBTHlnRDNDOztBd0JyekVBO0VBQ0UsbUJuQnF6QmdDO0FMbWdEbEM7QXdCdHpFRTtFQUNFLFVuQml6QjhCO0VtQmh6QjlCO0VBQ0E7RUFDQTtFbEI5RkE7RWVIRSxpREdtR0Y7QXhCd3pFSjtBcUJ2NUVNO0VHeUZKO0lIeEZNO0VyQjA1RU47QUFDRjtBd0IzekVJO0VBQ0U7QXhCNnpFTjtBd0IxekVJO0VBQ0UsaUNuQmd6QjRCO0VtQjN5QjFCO0F4Qnd6RVI7O0F3Qmx6RUE7RUFDRTtFQUNBLGtCbkJteEJnQztBTGtpRGxDOztBd0JsekVBO0VBQ0U7RUFDQTtFQUNBO0F4QnF6RUY7QXdCanpFSTs7O0VBQ0U7RUFDQTtFQUNBLGFuQnFvQndCO0FMZ3JEOUI7O0F5Qm44RUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F6QnM4RUY7QXlCcDhFRTtFQUNFO0F6QnM4RUo7QXlCbDhFSTtFQUEwQixrRXBCODlCYTtBTHUrQzNDO0F5QnA4RUk7RUFBMEIsa0VwQjY5QmE7QUwwK0MzQztBeUJwOEVFO0VBQ0U7QXpCczhFSjtBeUJuOEVFO0VBQ0UsV3BCKzhCdUM7RW9COThCdkMsWXBCODhCdUM7RW9CNzhCdkM7RUh6QkYseUJqQmtDUTtFb0JQTixTcEI4OEJ1QztFQzE5QnZDO0VlSEUsNEdJa0JGO0VBQ0E7QXpCbzhFSjtBcUJuOUVNO0VJTUo7SUpMTTtFckJzOUVOO0FBQ0Y7QXlCdjhFSTtFSGpDRix5QmpCOCtCeUM7QUw2L0MzQztBeUJyOEVFO0VBQ0UsV3BCdzdCOEI7RW9CdjdCOUIsY3BCdzdCOEI7RW9CdjdCOUI7RUFDQSxlcEJ1N0I4QjtFb0J0N0I5Qix5QnBCcENPO0VvQnFDUDtFbkI3QkE7QU5xK0VKO0F5Qm44RUU7RUFDRSxXcEJvN0J1QztFb0JuN0J2QyxZcEJtN0J1QztFaUJ0K0J6Qyx5QmpCa0NRO0VvQm1CTixTcEJvN0J1QztFQzE5QnZDO0VlSEUsNEdJNENGO0VBQ0E7QXpCbzhFSjtBcUI3K0VNO0VJaUNKO0lKaENNO0VyQmcvRU47QUFDRjtBeUJ2OEVJO0VIM0RGLHlCakI4K0J5QztBTHVoRDNDO0F5QnI4RUU7RUFDRSxXcEI4NUI4QjtFb0I3NUI5QixjcEI4NUI4QjtFb0I3NUI5QjtFQUNBLGVwQjY1QjhCO0VvQjU1QjlCLHlCcEI5RE87RW9CK0RQO0VuQnZEQTtBTisvRUo7QXlCbjhFRTtFQUNFO0F6QnE4RUo7QXlCbjhFSTtFQUNFLHlCcEJ0RUs7QUwyZ0ZYO0F5Qmw4RUk7RUFDRSx5QnBCMUVLO0FMOGdGWDs7QTBCM2hGQTtFQUNFO0ExQjhoRkY7QTBCNWhGRTs7RUFFRSwwQnJCeS9COEI7RXFCeC9COUIsaUJyQnkvQjhCO0FMcWlEbEM7QTBCM2hGRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUxERSxnRUtFRjtBMUI2aEZKO0FxQjNoRk07RUtYSjtJTFlNO0VyQjhoRk47QUFDRjtBMEI5aEZFO0VBQ0U7QTFCZ2lGSjtBMEI5aEZJO0VBQ0U7QTFCZ2lGTjtBMEI3aEZJO0VBRUUscUJyQm0rQjRCO0VxQmwrQjVCLHdCckJtK0I0QjtBTDJqRGxDO0EwQjNoRkk7RUFDRSxxQnJCODlCNEI7RXFCNzlCNUIsd0JyQjg5QjRCO0FMK2pEbEM7QTBCemhGRTtFQUNFLHFCckJ3OUI4QjtFcUJ2OUI5Qix3QnJCdzlCOEI7QUxta0RsQztBMEJyaEZJOzs7RUFDRSxhckJrOUI0QjtFcUJqOUI1Qiw4RHJCazlCNEI7QUx1a0RsQztBMEJwaEZJO0VBQ0UsYXJCMjhCNEI7RXFCMThCNUIsOERyQjI4QjRCO0FMMmtEbEM7O0EyQjVrRkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzQitrRkY7QTJCN2tGRTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtBM0Ira0ZKO0EyQjNrRkU7O0VBRUU7QTNCNmtGSjtBMkJ2a0ZFO0VBQ0U7RUFDQTtBM0J5a0ZKO0EyQnZrRkk7RUFDRTtBM0J5a0ZOOztBMkI5akZBO0VBQ0U7RUFDQTtFQUNBO0V2QnNQSSxlQUxJO0V1Qi9PUixnQnRCOGhCNEI7RXNCN2hCNUIsZ0J0Qm1pQjRCO0VzQmxpQjVCLGN0QmxDUztFc0JtQ1Q7RUFDQTtFQUNBLHlCdEI1Q1M7RXNCNkNUO0VyQnBDRTtBTnNtRko7O0EyQnhqRkE7Ozs7Ozs7RUFJRTtFdkJnT0ksa0JBTEk7RUU3UU47QU5rbkZKOztBMkIzakZBOzs7Ozs7O0VBSUU7RXZCdU5JLG1CQUxJO0VFN1FOO0FOOG5GSjs7QTJCOWpGQTs7RUFFRTtBM0Jpa0ZGOztBMkJwakZJOztFckIvREE7RUFDQTtBTnduRko7QTJCbmpGSTs7RXJCdEVBO0VBQ0E7QU42bkZKO0EyQjdpRkU7RUFDRTtFckJwRUE7RUFDQTtBTm9uRko7O0E0QjdvRkU7RUFDRTtFQUNBO0VBQ0EsbUJ2Qnl4Qm9DO0VEaGhCbEMsa0JBTEk7RXdCalFOLGN2QjAvQnFCO0FMcXBEekI7O0E0QjVvRkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFeEI0UEUsbUJBTEk7RXdCcFBOLFdBdkJjO0VBd0JkLHdDQXZCaUI7RXRCSGpCO0FOeXFGSjs7QTRCMW9GSTs7OztFQUVFO0E1QitvRk47O0E0QjdyRkk7RUFvREUscUJ2Qis5Qm1CO0V1QjU5QmpCLG9DdkIreUJnQztFdUI5eUJoQztFQUNBO0VBQ0E7RUFDQTtBNUIyb0ZSO0E0QnhvRk07RUFDRSxxQnZCbzlCaUI7RXVCbjlCakIsaURBL0NhO0E1QnlyRnJCOztBNEIxc0ZJO0VBeUVJLG9DdkI2eEJnQztFdUI1eEJoQztBNUJxb0ZSOztBNEIvc0ZJO0VBaUZFLHFCdkJrOEJtQjtBTGdzRHpCO0E0Qi9uRlE7RUFFRSx1QnZCNDJCOEI7RXVCMzJCOUI7RUFDQTtFQUNBO0E1QmdvRlY7QTRCNW5GTTtFQUNFLHFCdkJxN0JpQjtFdUJwN0JqQixpREE5RWE7QTVCNHNGckI7O0E0Qjd0Rkk7RUFzR0UscUJ2QjY2Qm1CO0FMOHNEekI7QTRCem5GTTtFQUNFLHlCdkIwNkJpQjtBTGl0RHpCO0E0QnhuRk07RUFDRSxpREE1RmE7QTVCc3RGckI7QTRCdm5GTTtFQUNFLGN2Qms2QmlCO0FMdXREekI7O0E0QnBuRkk7RUFDRTtBNUJ1bkZOOztBNEI5dUZJOzs7RUErSEk7QTVCcW5GUjtBNEJqbkZNOzs7RUFDRTtBNUJxbkZSOztBNEJ0dUZFO0VBQ0U7RUFDQTtFQUNBLG1CdkJ5eEJvQztFRGhoQmxDLGtCQUxJO0V3QmpRTixjdkIwL0JxQjtBTDh1RHpCOztBNEJydUZFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RXhCNFBFLG1CQUxJO0V3QnBQTixXQXZCYztFQXdCZCx3Q0F2QmlCO0V0QkhqQjtBTmt3Rko7O0E0Qm51Rkk7Ozs7RUFFRTtBNUJ3dUZOOztBNEJ0eEZJO0VBb0RFLHFCdkIrOUJtQjtFdUI1OUJqQixvQ3ZCK3lCZ0M7RXVCOXlCaEM7RUFDQTtFQUNBO0VBQ0E7QTVCb3VGUjtBNEJqdUZNO0VBQ0UscUJ2Qm85QmlCO0V1Qm45QmpCLGlEQS9DYTtBNUJreEZyQjs7QTRCbnlGSTtFQXlFSSxvQ3ZCNnhCZ0M7RXVCNXhCaEM7QTVCOHRGUjs7QTRCeHlGSTtFQWlGRSxxQnZCazhCbUI7QUx5eER6QjtBNEJ4dEZRO0VBRUUsdUJ2QjQyQjhCO0V1QjMyQjlCO0VBQ0E7RUFDQTtBNUJ5dEZWO0E0QnJ0Rk07RUFDRSxxQnZCcTdCaUI7RXVCcDdCakIsaURBOUVhO0E1QnF5RnJCOztBNEJ0ekZJO0VBc0dFLHFCdkI2NkJtQjtBTHV5RHpCO0E0Qmx0Rk07RUFDRSx5QnZCMDZCaUI7QUwweUR6QjtBNEJqdEZNO0VBQ0UsaURBNUZhO0E1Qit5RnJCO0E0Qmh0Rk07RUFDRSxjdkJrNkJpQjtBTGd6RHpCOztBNEI3c0ZJO0VBQ0U7QTVCZ3RGTjs7QTRCdjBGSTs7O0VBaUlJO0E1QjRzRlI7QTRCMXNGTTs7O0VBQ0U7QTVCOHNGUjs7QTZCcDFGQTs7RUFDRTtFQUVBLGdCeEJ3a0I0QjtFd0J2a0I1QixnQnhCNmtCNEI7RXdCNWtCNUIsY3hCUVM7RXdCUFQ7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUM4R0E7RTFCc0tJLGVBTEk7RUU3UU47RWVIRSxxSVFHSjtBN0J3MUZGO0FxQnYxRk07RVFoQk47O0lSaUJRO0VyQjIxRk47QUFDRjtBNkI1MUZFO0VBQ0UsY3hCTE87QUxtMkZYO0E2QjExRkU7O0VBRUU7RUFDQSxrRHhCb3RCNEI7QUx3b0VoQztBNkI5MEZFO0VBR0U7RUFDQSxheEIwdUIwQjtBTG9tRTlCOztBNkJsMEZFO0VDdkNBLFdBWFE7RVJMUix5QmpCNEVhO0V5QjFEYixxQnpCMERhO0FMbXpGZjtBOEIxMkZFO0VBQ0UsV0FkWTtFUlJkLHlCUU1tQjtFQWtCakIscUJBakJhO0E5QjYzRmpCO0E4QnoyRkU7RUFFRSxXQXJCWTtFUlJkLHlCUU1tQjtFQXlCakIscUJBeEJhO0VBNkJYO0E5QnMyRk47QThCbDJGRTtFQUtFLFdBbENhO0VBbUNiLHlCQXJDa0I7RUF3Q2xCLHFCQXZDYztBOUJxNEZsQjtBOEI1MUZJO0VBS0k7QTlCMDFGUjtBOEJyMUZFO0VBRUUsV0FqRGU7RUFrRGYseUJ6QllXO0V5QlRYLHFCekJTVztBTDIwRmY7O0E2QmgyRkU7RUN2Q0EsV0FYUTtFUkxSLHlCakI0RWE7RXlCMURiLHFCekIwRGE7QUxpMUZmO0E4Qng0RkU7RUFDRSxXQWRZO0VSUmQseUJRTW1CO0VBa0JqQixxQkFqQmE7QTlCMjVGakI7QThCdjRGRTtFQUVFLFdBckJZO0VSUmQseUJRTW1CO0VBeUJqQixxQkF4QmE7RUE2Qlg7QTlCbzRGTjtBOEJoNEZFO0VBS0UsV0FsQ2E7RUFtQ2IseUJBckNrQjtFQXdDbEIscUJBdkNjO0E5Qm02RmxCO0E4QjEzRkk7RUFLSTtBOUJ3M0ZSO0E4Qm4zRkU7RUFFRSxXQWpEZTtFQWtEZix5QnpCWVc7RXlCVFgscUJ6QlNXO0FMeTJGZjs7QTZCOTNGRTtFQ3ZDQSxXQVhRO0VSTFIseUJqQjRFYTtFeUIxRGIscUJ6QjBEYTtBTCsyRmY7QThCdDZGRTtFQUNFLFdBZFk7RVJSZCx5QlFNbUI7RUFrQmpCLHFCQWpCYTtBOUJ5N0ZqQjtBOEJyNkZFO0VBRUUsV0FyQlk7RVJSZCx5QlFNbUI7RUF5QmpCLHFCQXhCYTtFQTZCWDtBOUJrNkZOO0E4Qjk1RkU7RUFLRSxXQWxDYTtFQW1DYix5QkFyQ2tCO0VBd0NsQixxQkF2Q2M7QTlCaThGbEI7QThCeDVGSTtFQUtJO0E5QnM1RlI7QThCajVGRTtFQUVFLFdBakRlO0VBa0RmLHlCekJZVztFeUJUWCxxQnpCU1c7QUx1NEZmOztBNkI1NUZFO0VDdkNBLFdBWFE7RVJMUix5QmpCNEVhO0V5QjFEYixxQnpCMERhO0FMNjRGZjtBOEJwOEZFO0VBQ0UsV0FkWTtFUlJkLHlCUU1tQjtFQWtCakIscUJBakJhO0E5QnU5RmpCO0E4Qm44RkU7RUFFRSxXQXJCWTtFUlJkLHlCUU1tQjtFQXlCakIscUJBeEJhO0VBNkJYO0E5Qmc4Rk47QThCNTdGRTtFQUtFLFdBbENhO0VBbUNiLHlCQXJDa0I7RUF3Q2xCLHFCQXZDYztBOUIrOUZsQjtBOEJ0N0ZJO0VBS0k7QTlCbzdGUjtBOEIvNkZFO0VBRUUsV0FqRGU7RUFrRGYseUJ6QllXO0V5QlRYLHFCekJTVztBTHE2RmY7O0E2QjE3RkU7RUN2Q0EsV0FYUTtFUkxSLHlCakI0RWE7RXlCMURiLHFCekIwRGE7QUwyNkZmO0E4QmwrRkU7RUFDRSxXQWRZO0VSUmQseUJRTW1CO0VBa0JqQixxQkFqQmE7QTlCcS9GakI7QThCaitGRTtFQUVFLFdBckJZO0VSUmQseUJRTW1CO0VBeUJqQixxQkF4QmE7RUE2Qlg7QTlCODlGTjtBOEIxOUZFO0VBS0UsV0FsQ2E7RUFtQ2IseUJBckNrQjtFQXdDbEIscUJBdkNjO0E5QjYvRmxCO0E4QnA5Rkk7RUFLSTtBOUJrOUZSO0E4Qjc4RkU7RUFFRSxXQWpEZTtFQWtEZix5QnpCWVc7RXlCVFgscUJ6QlNXO0FMbThGZjs7QTZCeDlGRTtFQ3ZDQSxXQVhRO0VSTFIseUJqQjRFYTtFeUIxRGIscUJ6QjBEYTtBTHk4RmY7QThCaGdHRTtFQUNFLFdBZFk7RVJSZCx5QlFNbUI7RUFrQmpCLHFCQWpCYTtBOUJtaEdqQjtBOEIvL0ZFO0VBRUUsV0FyQlk7RVJSZCx5QlFNbUI7RUF5QmpCLHFCQXhCYTtFQTZCWDtBOUI0L0ZOO0E4QngvRkU7RUFLRSxXQWxDYTtFQW1DYix5QkFyQ2tCO0VBd0NsQixxQkF2Q2M7QTlCMmhHbEI7QThCbC9GSTtFQUtJO0E5QmcvRlI7QThCMytGRTtFQUVFLFdBakRlO0VBa0RmLHlCekJZVztFeUJUWCxxQnpCU1c7QUxpK0ZmOztBNkJ0L0ZFO0VDdkNBLFdBWFE7RVJMUix5QmpCNEVhO0V5QjFEYixxQnpCMERhO0FMdStGZjtBOEI5aEdFO0VBQ0UsV0FkWTtFUlJkLHlCUU1tQjtFQWtCakIscUJBakJhO0E5QmlqR2pCO0E4QjdoR0U7RUFFRSxXQXJCWTtFUlJkLHlCUU1tQjtFQXlCakIscUJBeEJhO0VBNkJYO0E5QjBoR047QThCdGhHRTtFQUtFLFdBbENhO0VBbUNiLHlCQXJDa0I7RUF3Q2xCLHFCQXZDYztBOUJ5akdsQjtBOEJoaEdJO0VBS0k7QTlCOGdHUjtBOEJ6Z0dFO0VBRUUsV0FqRGU7RUFrRGYseUJ6QllXO0V5QlRYLHFCekJTVztBTCsvRmY7O0E2QnBoR0U7RUN2Q0EsV0FYUTtFUkxSLHlCakI0RWE7RXlCMURiLHFCekIwRGE7QUxxZ0dmO0E4QjVqR0U7RUFDRSxXQWRZO0VSUmQseUJRTW1CO0VBa0JqQixxQkFqQmE7QTlCK2tHakI7QThCM2pHRTtFQUVFLFdBckJZO0VSUmQseUJRTW1CO0VBeUJqQixxQkF4QmE7RUE2Qlg7QTlCd2pHTjtBOEJwakdFO0VBS0UsV0FsQ2E7RUFtQ2IseUJBckNrQjtFQXdDbEIscUJBdkNjO0E5QnVsR2xCO0E4QjlpR0k7RUFLSTtBOUI0aUdSO0E4QnZpR0U7RUFFRSxXQWpEZTtFQWtEZix5QnpCWVc7RXlCVFgscUJ6QlNXO0FMNmhHZjs7QTZCNWlHRTtFQ21CQSxjekJKYTtFeUJLYixxQnpCTGE7QUxraUdmO0E4QjNoR0U7RUFDRSxXQVRZO0VBVVoseUJ6QlRXO0V5QlVYLHFCekJWVztBTHVpR2Y7QThCMWhHRTtFQUVFO0E5QjJoR0o7QThCeGhHRTtFQUtFLFdBckJhO0VBc0JiLHlCekJ4Qlc7RXlCeUJYLHFCekJ6Qlc7QUwraUdmO0E4QnBoR0k7RUFLSTtBOUJraEdSO0E4QjdnR0U7RUFFRSxjekJ2Q1c7RXlCd0NYO0E5QjhnR0o7O0E2QnJrR0U7RUNtQkEsY3pCSmE7RXlCS2IscUJ6QkxhO0FMMmpHZjtBOEJwakdFO0VBQ0UsV0FUWTtFQVVaLHlCekJUVztFeUJVWCxxQnpCVlc7QUxna0dmO0E4Qm5qR0U7RUFFRTtBOUJvakdKO0E4QmpqR0U7RUFLRSxXQXJCYTtFQXNCYix5QnpCeEJXO0V5QnlCWCxxQnpCekJXO0FMd2tHZjtBOEI3aUdJO0VBS0k7QTlCMmlHUjtBOEJ0aUdFO0VBRUUsY3pCdkNXO0V5QndDWDtBOUJ1aUdKOztBNkI5bEdFO0VDbUJBLGN6QkphO0V5QktiLHFCekJMYTtBTG9sR2Y7QThCN2tHRTtFQUNFLFdBVFk7RUFVWix5QnpCVFc7RXlCVVgscUJ6QlZXO0FMeWxHZjtBOEI1a0dFO0VBRUU7QTlCNmtHSjtBOEIxa0dFO0VBS0UsV0FyQmE7RUFzQmIseUJ6QnhCVztFeUJ5QlgscUJ6QnpCVztBTGltR2Y7QThCdGtHSTtFQUtJO0E5Qm9rR1I7QThCL2pHRTtFQUVFLGN6QnZDVztFeUJ3Q1g7QTlCZ2tHSjs7QTZCdm5HRTtFQ21CQSxjekJKYTtFeUJLYixxQnpCTGE7QUw2bUdmO0E4QnRtR0U7RUFDRSxXQVRZO0VBVVoseUJ6QlRXO0V5QlVYLHFCekJWVztBTGtuR2Y7QThCcm1HRTtFQUVFO0E5QnNtR0o7QThCbm1HRTtFQUtFLFdBckJhO0VBc0JiLHlCekJ4Qlc7RXlCeUJYLHFCekJ6Qlc7QUwwbkdmO0E4Qi9sR0k7RUFLSTtBOUI2bEdSO0E4QnhsR0U7RUFFRSxjekJ2Q1c7RXlCd0NYO0E5QnlsR0o7O0E2QmhwR0U7RUNtQkEsY3pCSmE7RXlCS2IscUJ6QkxhO0FMc29HZjtBOEIvbkdFO0VBQ0UsV0FUWTtFQVVaLHlCekJUVztFeUJVWCxxQnpCVlc7QUwyb0dmO0E4QjluR0U7RUFFRTtBOUIrbkdKO0E4QjVuR0U7RUFLRSxXQXJCYTtFQXNCYix5QnpCeEJXO0V5QnlCWCxxQnpCekJXO0FMbXBHZjtBOEJ4bkdJO0VBS0k7QTlCc25HUjtBOEJqbkdFO0VBRUUsY3pCdkNXO0V5QndDWDtBOUJrbkdKOztBNkJ6cUdFO0VDbUJBLGN6QkphO0V5QktiLHFCekJMYTtBTCtwR2Y7QThCeHBHRTtFQUNFLFdBVFk7RUFVWix5QnpCVFc7RXlCVVgscUJ6QlZXO0FMb3FHZjtBOEJ2cEdFO0VBRUU7QTlCd3BHSjtBOEJycEdFO0VBS0UsV0FyQmE7RUFzQmIseUJ6QnhCVztFeUJ5QlgscUJ6QnpCVztBTDRxR2Y7QThCanBHSTtFQUtJO0E5QitvR1I7QThCMW9HRTtFQUVFLGN6QnZDVztFeUJ3Q1g7QTlCMm9HSjs7QTZCbHNHRTtFQ21CQSxjekJKYTtFeUJLYixxQnpCTGE7QUx3ckdmO0E4QmpyR0U7RUFDRSxXQVRZO0VBVVoseUJ6QlRXO0V5QlVYLHFCekJWVztBTDZyR2Y7QThCaHJHRTtFQUVFO0E5QmlyR0o7QThCOXFHRTtFQUtFLFdBckJhO0VBc0JiLHlCekJ4Qlc7RXlCeUJYLHFCekJ6Qlc7QUxxc0dmO0E4QjFxR0k7RUFLSTtBOUJ3cUdSO0E4Qm5xR0U7RUFFRSxjekJ2Q1c7RXlCd0NYO0E5Qm9xR0o7O0E2QjN0R0U7RUNtQkEsY3pCSmE7RXlCS2IscUJ6QkxhO0FMaXRHZjtBOEIxc0dFO0VBQ0UsV0FUWTtFQVVaLHlCekJUVztFeUJVWCxxQnpCVlc7QUxzdEdmO0E4QnpzR0U7RUFFRTtBOUIwc0dKO0E4QnZzR0U7RUFLRSxXQXJCYTtFQXNCYix5QnpCeEJXO0V5QnlCWCxxQnpCekJXO0FMOHRHZjtBOEJuc0dJO0VBS0k7QTlCaXNHUjtBOEI1ckdFO0VBRUUsY3pCdkNXO0V5QndDWDtBOUI2ckdKOztBNkJ4dUdBO0VBQ0UsZ0J4QmlnQjRCO0V3QmhnQjVCLGN4QnpDUTtFd0IwQ1IsMEJ4QjZXd0M7QUw4M0YxQztBNkJ6dUdFO0VBQ0UsY3hCNFdzQztBTCszRjFDO0E2Qm51R0U7RUFFRSxjeEIvRU87QUxtekdYOztBNkJ6dEdBOztFQ3VCRTtFMUJzS0ksa0JBTEk7RUU3UU47QU5xekdKOztBNkI1dEdBOztFQ21CRTtFMUJzS0ksbUJBTEk7RUU3UU47QU40ekdKOztBK0IvMEdBO0VWZ0JNLGdDVWZKO0EvQmsxR0Y7QXFCL3pHTTtFVXBCTjtJVnFCUTtFckJrMEdOO0FBQ0Y7QStCcjFHRTtFQUNFO0EvQnUxR0o7O0ErQmoxR0U7RUFDRTtBL0JvMUdKOztBK0JoMUdBO0VBQ0U7RUFDQTtFVkRJLDZCVUVKO0EvQm0xR0Y7QXFCajFHTTtFVUxOO0lWTVE7RXJCbzFHTjtBQUNGO0ErQnQxR0U7RUFDRTtFQUNBO0VWTkUsNEJVT0Y7QS9CdzFHSjtBcUIzMUdNO0VVQUo7SVZDTTtFckI4MUdOO0FBQ0Y7O0FnQ24zR0E7Ozs7RUFJRTtBaENzM0dGOztBZ0NuM0dBO0VBQ0U7QWhDczNHRjtBaUNqMkdJO0VBQ0U7RUFDQSxvQjVCcWdCd0I7RTRCcGdCeEIsdUI1Qm1nQndCO0U0QmxnQnhCO0VBaENKO0VBQ0E7RUFDQTtFQUNBO0FqQ280R0Y7QWlDLzBHSTtFQUNFO0FqQ2kxR047O0FnQzUzR0E7RUFDRTtFQUNBLGEzQnloQ2tDO0UyQnhoQ2xDO0VBQ0EsZ0IzQittQ2tDO0UyQjltQ2xDO0VBQ0E7RTVCK1FJLGVBTEk7RTRCeFFSLGMzQlBTO0UyQlFUO0VBQ0E7RUFDQSxzQjNCbkJTO0UyQm9CVDtFQUNBO0UxQlZFO0FOMDRHSjtBZ0M1M0dFO0VBQ0U7RUFDQTtFQUNBLG9CM0JrbUNnQztBTDR4RXBDOztBZ0NsM0dJO0VBQ0U7QWhDcTNHTjtBZ0NuM0dNO0VBQ0U7RUFDQTtBaENxM0dSOztBZ0NqM0dJO0VBQ0U7QWhDbzNHTjtBZ0NsM0dNO0VBQ0U7RUFDQTtBaENvM0dSOztBYW4zR0k7RW1CZkE7SUFDRTtFaENzNEdKO0VnQ3A0R0k7SUFDRTtJQUNBO0VoQ3M0R047O0VnQ2w0R0U7SUFDRTtFaENxNEdKO0VnQ240R0k7SUFDRTtJQUNBO0VoQ3E0R047QUFDRjtBYXI0R0k7RW1CZkE7SUFDRTtFaEN1NUdKO0VnQ3I1R0k7SUFDRTtJQUNBO0VoQ3U1R047O0VnQ241R0U7SUFDRTtFaENzNUdKO0VnQ3A1R0k7SUFDRTtJQUNBO0VoQ3M1R047QUFDRjtBYXQ1R0k7RW1CZkE7SUFDRTtFaEN3NkdKO0VnQ3Q2R0k7SUFDRTtJQUNBO0VoQ3c2R047O0VnQ3A2R0U7SUFDRTtFaEN1NkdKO0VnQ3I2R0k7SUFDRTtJQUNBO0VoQ3U2R047QUFDRjtBYXY2R0k7RW1CZkE7SUFDRTtFaEN5N0dKO0VnQ3Y3R0k7SUFDRTtJQUNBO0VoQ3k3R047O0VnQ3I3R0U7SUFDRTtFaEN3N0dKO0VnQ3Q3R0k7SUFDRTtJQUNBO0VoQ3c3R047QUFDRjtBYXg3R0k7RW1CZkE7SUFDRTtFaEMwOEdKO0VnQ3g4R0k7SUFDRTtJQUNBO0VoQzA4R047O0VnQ3Q4R0U7SUFDRTtFaEN5OEdKO0VnQ3Y4R0k7SUFDRTtJQUNBO0VoQ3k4R047QUFDRjtBZ0NoOEdFO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsdUIzQjBqQ2dDO0FMdzRFcEM7QWlDaC9HSTtFQUNFO0VBQ0Esb0I1QnFnQndCO0U0QnBnQnhCLHVCNUJtZ0J3QjtFNEJsZ0J4QjtFQXpCSjtFQUNBO0VBQ0E7RUFDQTtBakM0Z0hGO0FpQzk5R0k7RUFDRTtBakNnK0dOOztBZ0N0OEdFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxxQjNCNGlDZ0M7QUw2NUVwQztBaUNyZ0hJO0VBQ0U7RUFDQSxvQjVCcWdCd0I7RTRCcGdCeEIsdUI1Qm1nQndCO0U0QmxnQnhCO0VBbEJKO0VBQ0E7RUFDQTtFQUNBO0FqQzBoSEY7QWlDbi9HSTtFQUNFO0FqQ3EvR047QWdDajlHSTtFQUNFO0FoQ205R047O0FnQzc4R0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHNCM0IyaENnQztBTHE3RXBDO0FpQzdoSEk7RUFDRTtFQUNBLG9CNUJxZ0J3QjtFNEJwZ0J4Qix1QjVCbWdCd0I7RTRCbGdCeEI7QWpDK2hITjtBaUNwaEhNO0VBQ0U7QWpDc2hIUjtBaUNuaEhNO0VBQ0U7RUFDQSxxQjVCa2ZzQjtFNEJqZnRCLHVCNUJnZnNCO0U0Qi9ldEI7RUE5Qk47RUFDQTtFQUNBO0FqQ29qSEY7QWlDbmhISTtFQUNFO0FqQ3FoSE47QWdDaCtHSTtFQUNFO0FoQ2srR047O0FnQzM5R0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBaEM4OUdGOztBZ0N4OUdBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxnQjNCd2M0QjtFMkJ2YzVCLGMzQnZIUztFMkJ3SFQ7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEMyOUdGO0FnQzc4R0U7RUFFRSxjM0JzL0JnQztFaUIvb0NsQyx5QmpCTVM7QUxrbUhYO0FnQzE4R0U7RUFFRSxXM0I1Sk87RTJCNkpQO0VWaktGLHlCakJrQ1E7QUwya0hWO0FnQ3g4R0U7RUFFRSxjM0I5Sk87RTJCK0pQO0VBQ0E7QWhDeThHSjs7QWdDbjhHQTtFQUNFO0FoQ3M4R0Y7O0FnQ2w4R0E7RUFDRTtFQUNBLG9CM0JxK0JrQztFMkJwK0JsQztFNUIwR0ksbUJBTEk7RTRCbkdSLGMzQi9LUztFMkJnTFQ7QWhDcThHRjs7QWdDajhHQTtFQUNFO0VBQ0E7RUFDQSxjM0JwTFM7QUx3bkhYOztBZ0NoOEdBO0VBQ0UsYzNCL0xTO0UyQmdNVCx5QjNCM0xTO0UyQjRMVCxpQzNCODdCa0M7QUxxZ0ZwQztBZ0NoOEdFO0VBQ0UsYzNCck1PO0FMdW9IWDtBZ0NoOEdJO0VBRUUsVzNCNU1LO0VpQkpULDJDakJzcUNrQztBTDQrRXBDO0FnQzk3R0k7RUFFRSxXM0JsTks7RWlCSlQseUJqQmtDUTtBTG9uSFY7QWdDNTdHSTtFQUVFLGMzQm5OSztBTGdwSFg7QWdDejdHRTtFQUNFLGlDM0JxNkJnQztBTHNoRnBDO0FnQ3g3R0U7RUFDRSxjM0I5Tk87QUx3cEhYO0FnQ3Y3R0U7RUFDRSxjM0JoT087QUx5cEhYOztBa0NycUhBOztFQUVFO0VBQ0E7RUFDQTtBbEN3cUhGO0FrQ3RxSEU7Ozs7OztFQUNFO0VBQ0E7QWxDNnFISjtBa0N4cUhFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBTUU7QWxDc3NISjs7QWtDanNIQTtFQUNFO0VBQ0E7RUFDQTtBbENvc0hGO0FrQ2xzSEU7RUFDRTtBbENvc0hKOztBa0M5ckhFOztFQUVFO0FsQ2lzSEo7QWtDN3JIRTs7OztFNUJSRTtFQUNBO0FOMnNISjtBa0MzckhFOzs7Ozs7O0U1QkhFO0VBQ0E7QU51c0hKOztBa0NsckhBO0VBQ0U7RUFDQTtBbENxckhGO0FrQ25ySEU7RUFHRTtBbENtckhKO0FrQ2hySEU7RUFDRTtBbENrckhKOztBa0M5cUhBO0VBQ0U7RUFDQTtBbENpckhGOztBa0M5cUhBO0VBQ0U7RUFDQTtBbENpckhGOztBa0M3cEhBO0VBQ0U7RUFDQTtFQUNBO0FsQ2dxSEY7QWtDOXBIRTs7O0VBRUU7QWxDaXFISjtBa0M5cEhFOztFQUVFO0FsQ2dxSEo7QWtDNXBIRTs7OztFNUJ2RkU7RUFDQTtBTnl2SEo7QWtDOXBIRTs7OztFNUIxR0U7RUFDQTtBTjh3SEo7O0FtQ3R5SEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuQ3l5SEY7O0FtQ3R5SEE7RUFDRTtFQUNBO0VBR0EsYzlCb0JRO0U4Qm5CUjtFZEhJLHVHY0lKO0FuQ3V5SEY7QXFCdnlITTtFY1BOO0lkUVE7RXJCMHlITjtBQUNGO0FtQzF5SEU7RUFFRSxjOUJ1YXNDO0FMbzRHMUM7QW1DdHlIRTtFQUNFLGM5QmhCTztFOEJpQlA7RUFDQTtBbkN3eUhKOztBbUNoeUhBO0VBQ0U7QW5DbXlIRjtBbUNqeUhFO0VBQ0U7RUFDQTtFQUNBO0U3QmxCQTtFQUNBO0FOc3pISjtBbUNseUhJO0VBRUUscUM5Qm1oQzhCO0U4QmpoQzlCO0FuQ2t5SE47QW1DL3hISTtFQUNFLGM5QjNDSztFOEI0Q0w7RUFDQTtBbkNpeUhOO0FtQzd4SEU7O0VBRUUsYzlCbERPO0U4Qm1EUCxzQjlCMURPO0U4QjJEUCxrQzlCc2dDZ0M7QUx5eEZwQztBbUM1eEhFO0VBRUU7RTdCNUNBO0VBQ0E7QU4wMEhKOztBbUNueEhFO0VBQ0U7RUFDQTtFN0JuRUE7QU4wMUhKO0FtQ254SEU7O0VBRUUsVzlCcEZPO0VpQkpULHlCakJrQ1E7QUw0MEhWOztBbUMzd0hFOztFQUVFO0VBQ0E7QW5DOHdISjs7QW1DendIRTs7RUFFRTtFQUNBO0VBQ0E7QW5DNHdISjs7QW1DdHdIRTs7RUFDRTtBbkMwd0hKOztBbUNod0hFO0VBQ0U7QW5DbXdISjtBbUNqd0hFO0VBQ0U7QW5DbXdISjs7QW9DMzNIQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxtQi9COGpDa0M7RStCNWpDbEMsc0IvQjRqQ2tDO0FMaTBGcEM7QW9DdDNIRTs7Ozs7OztFQUNFO0VBQ0E7RUFDQTtFQUNBO0FwQzgzSEo7QW9DMTJIQTtFQUNFLHNCL0JxaUNrQztFK0JwaUNsQyx5Qi9Cb2lDa0M7RStCbmlDbEMsa0IvQm9pQ2tDO0VEenpCOUIsa0JBTEk7RWdDcE9SO0VBQ0E7QXBDNDJIRjtBb0MvMUhBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcENpMkhGO0FvQy8xSEU7RUFDRTtFQUNBO0FwQ2kySEo7QW9DOTFIRTtFQUNFO0FwQ2cySEo7O0FvQ3YxSEE7RUFDRSxtQi9CeTlCa0M7RStCeDlCbEMsc0IvQnc5QmtDO0FMazRGcEM7O0FvQzkwSEE7RUFDRTtFQUNBO0VBR0E7QXBDKzBIRjs7QW9DMzBIQTtFQUNFO0VoQzZLSSxrQkFMSTtFZ0N0S1I7RUFDQTtFQUNBO0U5QnpHRTtFZUhFLHdDZThHSjtBcEM4MEhGO0FxQng3SE07RWVtR047SWZsR1E7RXJCMjdITjtBQUNGO0FvQ2oxSEU7RUFDRTtBcENtMUhKO0FvQ2gxSEU7RUFDRTtFQUNBO0VBQ0E7QXBDazFISjs7QW9DNTBIQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwQyswSEY7O0FvQzUwSEE7RUFDRTtFQUNBO0FwQyswSEY7O0FhejZISTtFdUJzR0E7SUFFSTtJQUNBO0VwQ3MwSE47RW9DcDBITTtJQUNFO0VwQ3MwSFI7RW9DcDBIUTtJQUNFO0VwQ3MwSFY7RW9DbjBIUTtJQUNFLHFCL0JxNkJ3QjtJK0JwNkJ4QixvQi9CbzZCd0I7RUxpNkZsQztFb0NqMEhNO0lBQ0U7RXBDbTBIUjtFb0NoMEhNO0lBQ0U7SUFDQTtFcENrMEhSO0VvQy96SE07SUFDRTtFcENpMEhSO0VvQzl6SE07SUFDRTtFcENnMEhSO0VvQzd6SE07SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lmaE1KLGdCZWlNSTtJQUNBO0VwQyt6SFI7RW9DN3pITTs7SUFFRTtJQUNBO0lBQ0E7RXBDK3pIUjtFb0M1ekhNO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RXBDOHpIUjtBQUNGO0FhLzlISTtFdUJzR0E7SUFFSTtJQUNBO0VwQzIzSE47RW9DejNITTtJQUNFO0VwQzIzSFI7RW9DejNIUTtJQUNFO0VwQzIzSFY7RW9DeDNIUTtJQUNFLHFCL0JxNkJ3QjtJK0JwNkJ4QixvQi9CbzZCd0I7RUxzOUZsQztFb0N0M0hNO0lBQ0U7RXBDdzNIUjtFb0NyM0hNO0lBQ0U7SUFDQTtFcEN1M0hSO0VvQ3AzSE07SUFDRTtFcENzM0hSO0VvQ24zSE07SUFDRTtFcENxM0hSO0VvQ2wzSE07SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lmaE1KLGdCZWlNSTtJQUNBO0VwQ28zSFI7RW9DbDNITTs7SUFFRTtJQUNBO0lBQ0E7RXBDbzNIUjtFb0NqM0hNO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RXBDbTNIUjtBQUNGO0FhcGhJSTtFdUJzR0E7SUFFSTtJQUNBO0VwQ2c3SE47RW9DOTZITTtJQUNFO0VwQ2c3SFI7RW9DOTZIUTtJQUNFO0VwQ2c3SFY7RW9DNzZIUTtJQUNFLHFCL0JxNkJ3QjtJK0JwNkJ4QixvQi9CbzZCd0I7RUwyZ0dsQztFb0MzNkhNO0lBQ0U7RXBDNjZIUjtFb0MxNkhNO0lBQ0U7SUFDQTtFcEM0NkhSO0VvQ3o2SE07SUFDRTtFcEMyNkhSO0VvQ3g2SE07SUFDRTtFcEMwNkhSO0VvQ3Y2SE07SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lmaE1KLGdCZWlNSTtJQUNBO0VwQ3k2SFI7RW9DdjZITTs7SUFFRTtJQUNBO0lBQ0E7RXBDeTZIUjtFb0N0NkhNO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RXBDdzZIUjtBQUNGO0FhemtJSTtFdUJzR0E7SUFFSTtJQUNBO0VwQ3ErSE47RW9DbitITTtJQUNFO0VwQ3ErSFI7RW9DbitIUTtJQUNFO0VwQ3ErSFY7RW9DbCtIUTtJQUNFLHFCL0JxNkJ3QjtJK0JwNkJ4QixvQi9CbzZCd0I7RUxna0dsQztFb0NoK0hNO0lBQ0U7RXBDaytIUjtFb0MvOUhNO0lBQ0U7SUFDQTtFcENpK0hSO0VvQzk5SE07SUFDRTtFcENnK0hSO0VvQzc5SE07SUFDRTtFcEMrOUhSO0VvQzU5SE07SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lmaE1KLGdCZWlNSTtJQUNBO0VwQzg5SFI7RW9DNTlITTs7SUFFRTtJQUNBO0lBQ0E7RXBDODlIUjtFb0MzOUhNO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RXBDNjlIUjtBQUNGO0FhOW5JSTtFdUJzR0E7SUFFSTtJQUNBO0VwQzBoSU47RW9DeGhJTTtJQUNFO0VwQzBoSVI7RW9DeGhJUTtJQUNFO0VwQzBoSVY7RW9DdmhJUTtJQUNFLHFCL0JxNkJ3QjtJK0JwNkJ4QixvQi9CbzZCd0I7RUxxbkdsQztFb0NyaElNO0lBQ0U7RXBDdWhJUjtFb0NwaElNO0lBQ0U7SUFDQTtFcENzaElSO0VvQ25oSU07SUFDRTtFcENxaElSO0VvQ2xoSU07SUFDRTtFcENvaElSO0VvQ2poSU07SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lmaE1KLGdCZWlNSTtJQUNBO0VwQ21oSVI7RW9DamhJTTs7SUFFRTtJQUNBO0lBQ0E7RXBDbWhJUjtFb0NoaElNO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RXBDa2hJUjtBQUNGO0FvQzdrSUk7RUFFSTtFQUNBO0FwQzhrSVI7QW9DNWtJUTtFQUNFO0FwQzhrSVY7QW9DNWtJVTtFQUNFO0FwQzhrSVo7QW9DM2tJVTtFQUNFLHFCL0JxNkJ3QjtFK0JwNkJ4QixvQi9CbzZCd0I7QUx5cUdwQztBb0N6a0lRO0VBQ0U7QXBDMmtJVjtBb0N4a0lRO0VBQ0U7RUFDQTtBcEMwa0lWO0FvQ3ZrSVE7RUFDRTtBcEN5a0lWO0FvQ3RrSVE7RUFDRTtBcEN3a0lWO0FvQ3JrSVE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VmaE1KLGdCZWlNSTtFQUNBO0FwQ3VrSVY7QW9DcmtJUTs7RUFFRTtFQUNBO0VBQ0E7QXBDdWtJVjtBb0Nwa0lRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXBDc2tJVjs7QW9DeGpJRTtFQUNFLHlCL0JvNEJnQztBTHVyR3BDO0FvQ3pqSUk7RUFFRSx5Qi9CZzRCOEI7QUwwckdwQztBb0NyaklJO0VBQ0UsMEIvQnczQjhCO0FMK3JHcEM7QW9DcmpJTTtFQUVFLHlCL0JxM0I0QjtBTGlzR3BDO0FvQ25qSU07RUFDRSx5Qi9CbTNCNEI7QUxrc0dwQztBb0NqaklJOztFQUVFLHlCL0I0MkI4QjtBTHVzR3BDO0FvQy9pSUU7RUFDRSwwQi9CcTJCZ0M7RStCcDJCaEMsZ0MvQnkyQmdDO0FMd3NHcEM7QW9DOWlJRTtFQUNFO0FwQ2dqSUo7QW9DN2lJRTtFQUNFLDBCL0I0MUJnQztBTG10R3BDO0FvQzdpSUk7OztFQUdFLHlCL0J5MUI4QjtBTHN0R3BDOztBb0N4aUlFO0VBQ0UsVy9CelJPO0FMbzBJWDtBb0N6aUlJO0VBRUUsVy9CN1JLO0FMdTBJWDtBb0NyaUlJO0VBQ0UsZ0MvQjh6QjhCO0FMeXVHcEM7QW9DcmlJTTtFQUVFLGdDL0IyekI0QjtBTDJ1R3BDO0FvQ25pSU07RUFDRSxnQy9CeXpCNEI7QUw0dUdwQztBb0NqaUlJOztFQUVFLFcvQmpUSztBTG8xSVg7QW9DL2hJRTtFQUNFLGdDL0IyeUJnQztFK0IxeUJoQyxzQy9CK3lCZ0M7QUxrdkdwQztBb0M5aElFO0VBQ0U7QXBDZ2lJSjtBb0M3aElFO0VBQ0UsZ0MvQmt5QmdDO0FMNnZHcEM7QW9DOWhJSTs7O0VBR0UsVy9CblVLO0FMbTJJWDs7QXFDdjJJQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQSxzQmhDSFM7RWdDSVQ7RUFDQTtFL0JNRTtBTm8ySUo7QXFDdDJJRTtFQUNFO0VBQ0E7QXJDdzJJSjtBcUNyMklFO0VBQ0U7RUFDQTtBckN1MklKO0FxQ3IySUk7RUFDRTtFL0JDRjtFQUNBO0FOdTJJSjtBcUNyMklJO0VBQ0U7RS9CVUY7RUFDQTtBTjgxSUo7QXFDbDJJRTs7RUFFRTtBckNvMklKOztBcUNoMklBO0VBR0U7RUFDQTtBckNpMklGOztBcUM3MUlBO0VBQ0UscUJoQ2lyQ2tDO0FMK3FHcEM7O0FxQzcxSUE7RUFDRTtFQUNBO0FyQ2cySUY7O0FxQzcxSUE7RUFDRTtBckNnMklGOztBcUN4MUlFO0VBQ0UsaUJoQzhTSztBTDZpSVQ7O0FxQ24xSUE7RUFDRTtFQUNBO0VBRUEscUNoQzJwQ2tDO0VnQzFwQ2xDO0FyQ3ExSUY7QXFDbjFJRTtFL0JwRUU7QU4wNUlKOztBcUNqMUlBO0VBQ0U7RUFFQSxxQ2hDZ3BDa0M7RWdDL29DbEM7QXJDbTFJRjtBcUNqMUlFO0UvQi9FRTtBTm02SUo7O0FxQzEwSUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBckM2MElGOztBcUNuMElBO0VBQ0U7RUFDQTtBckNzMElGOztBcUNsMElBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGFoQ2dQTztFQ25XTDtBTnk3SUo7O0FxQ2wwSUE7OztFQUdFO0FyQ3EwSUY7O0FxQ2wwSUE7O0UvQnBISTtFQUNBO0FOMjdJSjs7QXFDbjBJQTs7RS9CM0dJO0VBQ0E7QU5tN0lKOztBcUM1eklFO0VBQ0Usc0JoQ2tsQ2dDO0FMNnVHcEM7QWFuNklJO0V3QmdHSjtJQVFJO0lBQ0E7RXJDK3pJRjtFcUM1eklFO0lBRUU7SUFDQTtFckM2eklKO0VxQzN6SUk7SUFDRTtJQUNBO0VyQzZ6SU47RXFDeHpJTTtJL0JwSko7SUFDQTtFTis4SUY7RXFDenpJUTs7SUFHRTtFckMweklWO0VxQ3h6SVE7O0lBR0U7RXJDeXpJVjtFcUNyeklNO0kvQnJKSjtJQUNBO0VONjhJRjtFcUN0eklROztJQUdFO0VyQ3V6SVY7RXFDcnpJUTs7SUFHRTtFckNzeklWO0FBQ0Y7O0FzQ3BnSkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VsQzRSSSxlQUxJO0VrQ3JSUixjakNNUztFaUNMVDtFQUNBLHNCakNMUztFaUNNVDtFaENLRTtFZ0NIRjtFakJBSSwrSmlCQ0o7QXRDdWdKRjtBcUJwZ0pNO0VpQmhCTjtJakJpQlE7RXJCdWdKTjtBQUNGO0FzQzFnSkU7RUFDRSxjakN5dkNzQztFaUN4dkN0Qyx5QmpDdXZDc0M7RWlDdHZDdEM7QXRDNGdKSjtBc0MxZ0pJO0VBQ0U7RUFDQSwwQmpDNHZDb0M7QUxneEcxQztBc0N2Z0pFO0VBQ0U7RUFDQSxjakNpdkNzQztFaUNodkN0QyxlakNndkNzQztFaUMvdUN0QztFQUNBO0VBQ0E7RUFDQTtFQUNBLHdCakMydUNzQztFZ0Jsd0NwQyxzQ2lCd0JGO0F0Q3lnSko7QXFCN2hKTTtFaUJXSjtJakJWTTtFckJnaUpOO0FBQ0Y7QXNDM2dKRTtFQUNFO0F0QzZnSko7QXNDMWdKRTtFQUNFO0VBQ0EscUJqQ2l6Qm9DO0VpQ2h6QnBDO0VBQ0Esa0RqQzhyQjRCO0FMODBIaEM7O0FzQ3hnSkE7RUFDRTtBdEMyZ0pGOztBc0N4Z0pBO0VBQ0Usc0JqQ3BEUztFaUNxRFQ7QXRDMmdKRjtBc0N6Z0pFO0VoQ25DRTtFQUNBO0FOK2lKSjtBc0MxZ0pJO0VoQ3RDQTtFQUNBO0FObWpKSjtBc0N6Z0pFO0VBQ0U7QXRDMmdKSjtBc0N2Z0pFO0VoQ2xDRTtFQUNBO0FONGlKSjtBc0N2Z0pNO0VoQ3RDRjtFQUNBO0FOZ2pKSjtBc0N0Z0pJO0VoQzNDQTtFQUNBO0FOb2pKSjs7QXNDcGdKQTtFQUNFO0F0Q3VnSkY7O0FzQzkvSUU7RUFDRTtBdENpZ0pKO0FzQzkvSUU7RUFDRTtFQUNBO0VoQ3hGQTtBTnlsSko7QXNDOS9JSTtFQUFnQjtBdENpZ0pwQjtBc0NoZ0pJO0VBQWU7QXRDbWdKbkI7QXNDamdKSTtFaEM5RkE7QU5rbUpKOztBdUNybkpBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsbUJsQ3cvQ2tDO0VrQ3QvQ2xDO0F2Q3VuSkY7O0F1Q2huSkU7RUFDRSxvQmxDNitDZ0M7QUxzb0dwQztBdUNqbkpJO0VBQ0U7RUFDQSxxQmxDeStDOEI7RWtDeCtDOUIsY2xDTEs7RWtDTUw7QXZDbW5KTjtBdUMvbUpFO0VBQ0UsY2xDWE87QUw0bkpYOztBd0Mxb0pBO0VBQ0U7RWhDR0E7RUFDQTtBUjJvSkY7O0F3QzNvSkE7RUFDRTtFQUNBO0VBQ0EsY25DOEJRO0VtQzdCUjtFQUNBLHNCbkNGUztFbUNHVDtFbkJLSSxxSW1CSko7QXhDOG9KRjtBcUJ0b0pNO0VtQmZOO0luQmdCUTtFckJ5b0pOO0FBQ0Y7QXdDanBKRTtFQUNFO0VBQ0EsY25DK2FzQztFbUM3YXRDLHlCbkNSTztFbUNTUCxxQm5DUk87QUwwcEpYO0F3Qy9vSkU7RUFDRTtFQUNBLGNuQ3Vhc0M7RW1DdGF0Qyx5Qm5DZk87RW1DZ0JQLFVuQzRxQ2dDO0VtQzNxQ2hDLGtEbkNzdEI0QjtBTDI3SGhDOztBd0M1b0pFO0VBQ0UsaUJuQytwQ2dDO0FMZy9HcEM7QXdDNW9KRTtFQUNFO0VBQ0EsV25DOUJPO0VpQkpULHlCakJrQ1E7RW1DRU4scUJuQ0ZNO0FMZ3BKVjtBd0Mzb0pFO0VBQ0UsY25DOUJPO0VtQytCUDtFQUNBLHNCbkN0Q087RW1DdUNQLHFCbkNwQ087QUxpckpYOztBeUN4ckpFO0VBQ0U7QXpDMnJKSjs7QXlDcHJKUTtFbkNxQ0o7RUFDQTtBTm1wSko7QXlDbnJKUTtFbkNpQko7RUFDQTtBTnFxSko7O0F5Q3JzSkU7RUFDRTtFckNnU0Usa0JBTEk7QUo4NklWO0F5Q2xzSlE7RW5DcUNKO0VBQ0E7QU5ncUpKO0F5Q2hzSlE7RW5DaUJKO0VBQ0E7QU5rckpKOztBeUNsdEpFO0VBQ0U7RXJDZ1NFLG1CQUxJO0FKMjdJVjtBeUMvc0pRO0VuQ3FDSjtFQUNBO0FONnFKSjtBeUM3c0pRO0VuQ2lCSjtFQUNBO0FOK3JKSjs7QTBDOXRKQTtFQUNFO0VBQ0E7RXRDOFJJLGlCQUxJO0VzQ3ZSUixnQnJDdWtCNEI7RXFDdGtCNUI7RUFDQSxXckNIUztFcUNJVDtFQUNBO0VBQ0E7RXBDS0U7QU42dEpKO0EwQzd0SkU7RUFDRTtBMUMrdEpKOztBMEMxdEpBO0VBQ0U7RUFDQTtBMUM2dEpGOztBMkNwdkpBO0VBQ0U7RUFDQTtFQUNBLG1CdENrNkM4QjtFc0NqNkM5QjtFckNXRTtBTjZ1Sko7O0EyQ252SkE7RUFFRTtBM0NxdkpGOztBMkNqdkpBO0VBQ0UsZ0J0QzRqQjRCO0FMd3JJOUI7O0EyQzV1SkE7RUFDRSxtQnRDbTVDOEI7QUw0MUdoQztBMkM1dUpFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0M4dUpKOztBMkMvdEpFO0VDbERBLGNEOENjO0VyQjVDZCx5QnFCMENtQjtFQzFDbkIscUJEMkNlO0EzQzB1SmpCO0E0Q254SkU7RUFDRTtBNUNxeEpKOztBMkN4dUpFO0VDbERBLGNEOENjO0VyQjVDZCx5QnFCMENtQjtFQzFDbkIscUJEMkNlO0EzQ212SmpCO0E0QzV4SkU7RUFDRTtBNUM4eEpKOztBMkNqdkpFO0VDbERBLGNEOENjO0VyQjVDZCx5QnFCMENtQjtFQzFDbkIscUJEMkNlO0EzQzR2SmpCO0E0Q3J5SkU7RUFDRTtBNUN1eUpKOztBMkMxdkpFO0VDbERBLGNEZ0RnQjtFckI5Q2hCLHlCcUIwQ21CO0VDMUNuQixxQkQyQ2U7QTNDcXdKakI7QTRDOXlKRTtFQUNFO0E1Q2d6Sko7O0EyQ253SkU7RUNsREEsY0RnRGdCO0VyQjlDaEIseUJxQjBDbUI7RUMxQ25CLHFCRDJDZTtBM0M4d0pqQjtBNEN2ekpFO0VBQ0U7QTVDeXpKSjs7QTJDNXdKRTtFQ2xEQSxjRDhDYztFckI1Q2QseUJxQjBDbUI7RUMxQ25CLHFCRDJDZTtBM0N1eEpqQjtBNENoMEpFO0VBQ0U7QTVDazBKSjs7QTJDcnhKRTtFQ2xEQSxjRGdEZ0I7RXJCOUNoQix5QnFCMENtQjtFQzFDbkIscUJEMkNlO0EzQ2d5SmpCO0E0Q3owSkU7RUFDRTtBNUMyMEpKOztBMkM5eEpFO0VDbERBLGNEOENjO0VyQjVDZCx5QnFCMENtQjtFQzFDbkIscUJEMkNlO0EzQ3l5SmpCO0E0Q2wxSkU7RUFDRTtBNUNvMUpKOztBNkN2MUpFO0VBQ0U7SUFBSywyQnhDazdDMkI7RUx5NkdsQztBQUNGO0E2Q3YxSkE7RUFDRTtFQUNBLFl4QzI2Q2tDO0V3QzE2Q2xDO0V6Q3dSSSxrQkFMSTtFeUNqUlIseUJ4Q0xTO0VDU1A7QU5zMUpKOztBNkNyMUpBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxXeENqQlM7RXdDa0JUO0VBQ0E7RUFDQSx5QnhDVVE7RWdCdEJKLDJCd0JhSjtBN0N3MUpGO0FxQmoySk07RXdCQU47SXhCQ1E7RXJCbzJKTjtBQUNGOztBNkMxMUpBO0V2QllFO0V1QlZBO0E3QzYxSkY7O0E2Q3oxSkU7RUFDRTtBN0M0MUpKO0E2Q3oxSk07RUFKSjtJQUtNO0U3QzQxSk47QUFDRjs7QThDcDRKQTtFQUNFO0VBQ0E7RUFHQTtFQUNBO0V4Q1NFO0FONjNKSjs7QThDbDRKQTtFQUNFO0VBQ0E7QTlDcTRKRjtBOENuNEpFO0VBRUU7RUFDQTtBOUNvNEpKOztBOEMxM0pBO0VBQ0U7RUFDQSxjekNsQlM7RXlDbUJUO0E5QzYzSkY7QThDMTNKRTtFQUVFO0VBQ0EsY3pDekJPO0V5QzBCUDtFQUNBLHlCekNqQ087QUw0NUpYO0E4Q3gzSkU7RUFDRSxjekM3Qk87RXlDOEJQLHlCekNyQ087QUwrNUpYOztBOENqM0pBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsY3pDM0NTO0V5QzRDVDtFQUNBLHNCekN0RFM7RXlDdURUO0E5Q28zSkY7QThDbDNKRTtFeENyQ0U7RUFDQTtBTjA1Sko7QThDbDNKRTtFeEMzQkU7RUFDQTtBTmc1Sko7QThDbDNKRTtFQUVFLGN6QzdETztFeUM4RFA7RUFDQSxzQnpDckVPO0FMdzdKWDtBOEMvMkpFO0VBQ0U7RUFDQSxXekMzRU87RXlDNEVQLHlCekM5Q007RXlDK0NOLHFCekMvQ007QUxnNkpWO0E4QzkySkU7RUFDRTtBOUNnM0pKO0E4QzkySkk7RUFDRTtFQUNBLHFCekN3YXdCO0FMdzhJOUI7O0E4Q2wySkk7RUFDRTtBOUNxMkpOO0E4Q2wySlE7RXhDckNKO0VBWkE7QU51NUpKO0E4Q2oySlE7RXhDdERKO0VBWUE7QU4rNEpKO0E4Q2gySlE7RUFDRTtBOUNrMkpWO0E4Qy8xSlE7RUFDRSxxQnpDdVlvQjtFeUN0WXBCO0E5Q2kySlY7QThDLzFKVTtFQUNFO0VBQ0Esc0J6Q2tZa0I7QUwrOUk5Qjs7QWFyNkpJO0VpQzRDQTtJQUNFO0U5QzYzSko7RThDMTNKTTtJeENyQ0o7SUFaQTtFTis2SkY7RThDejNKTTtJeEN0REo7SUFZQTtFTnU2SkY7RThDeDNKTTtJQUNFO0U5QzAzSlI7RThDdjNKTTtJQUNFLHFCekN1WW9CO0l5Q3RZcEI7RTlDeTNKUjtFOEN2M0pRO0lBQ0U7SUFDQSxzQnpDa1lrQjtFTHUvSTVCO0FBQ0Y7QWE5N0pJO0VpQzRDQTtJQUNFO0U5Q3E1Sko7RThDbDVKTTtJeENyQ0o7SUFaQTtFTnU4SkY7RThDajVKTTtJeEN0REo7SUFZQTtFTis3SkY7RThDaDVKTTtJQUNFO0U5Q2s1SlI7RThDLzRKTTtJQUNFLHFCekN1WW9CO0l5Q3RZcEI7RTlDaTVKUjtFOEMvNEpRO0lBQ0U7SUFDQSxzQnpDa1lrQjtFTCtnSjVCO0FBQ0Y7QWF0OUpJO0VpQzRDQTtJQUNFO0U5QzY2Sko7RThDMTZKTTtJeENyQ0o7SUFaQTtFTis5SkY7RThDejZKTTtJeEN0REo7SUFZQTtFTnU5SkY7RThDeDZKTTtJQUNFO0U5QzA2SlI7RThDdjZKTTtJQUNFLHFCekN1WW9CO0l5Q3RZcEI7RTlDeTZKUjtFOEN2NkpRO0lBQ0U7SUFDQSxzQnpDa1lrQjtFTHVpSjVCO0FBQ0Y7QWE5K0pJO0VpQzRDQTtJQUNFO0U5Q3E4Sko7RThDbDhKTTtJeENyQ0o7SUFaQTtFTnUvSkY7RThDajhKTTtJeEN0REo7SUFZQTtFTisrSkY7RThDaDhKTTtJQUNFO0U5Q2s4SlI7RThDLzdKTTtJQUNFLHFCekN1WW9CO0l5Q3RZcEI7RTlDaThKUjtFOEMvN0pRO0lBQ0U7SUFDQSxzQnpDa1lrQjtFTCtqSjVCO0FBQ0Y7QWF0Z0tJO0VpQzRDQTtJQUNFO0U5QzY5Sko7RThDMTlKTTtJeENyQ0o7SUFaQTtFTitnS0Y7RThDejlKTTtJeEN0REo7SUFZQTtFTnVnS0Y7RThDeDlKTTtJQUNFO0U5QzA5SlI7RThDdjlKTTtJQUNFLHFCekN1WW9CO0l5Q3RZcEI7RTlDeTlKUjtFOEN2OUpRO0lBQ0U7SUFDQSxzQnpDa1lrQjtFTHVsSjVCO0FBQ0Y7QThDNThKQTtFeEM5SEk7QU42a0tKO0E4QzU4SkU7RUFDRTtBOUM4OEpKO0E4QzU4Skk7RUFDRTtBOUM4OEpOOztBK0NsbUtFO0VBQ0UsY0RpS3lCO0VDaEt6Qix5QkQrSnNCO0E5Q3M4SjFCO0ErQ2xtS007RUFFRSxjRDJKcUI7RUMxSnJCO0EvQ21tS1I7QStDaG1LTTtFQUNFLFcxQ1JHO0UwQ1NILHlCRHFKcUI7RUNwSnJCLHFCRG9KcUI7QTlDODhKN0I7O0ErQ2huS0U7RUFDRSxjRGlLeUI7RUNoS3pCLHlCRCtKc0I7QTlDbzlKMUI7QStDaG5LTTtFQUVFLGNEMkpxQjtFQzFKckI7QS9DaW5LUjtBK0M5bUtNO0VBQ0UsVzFDUkc7RTBDU0gseUJEcUpxQjtFQ3BKckIscUJEb0pxQjtBOUM0OUo3Qjs7QStDOW5LRTtFQUNFLGNEaUt5QjtFQ2hLekIseUJEK0pzQjtBOUNrK0oxQjtBK0M5bktNO0VBRUUsY0QySnFCO0VDMUpyQjtBL0MrbktSO0ErQzVuS007RUFDRSxXMUNSRztFMENTSCx5QkRxSnFCO0VDcEpyQixxQkRvSnFCO0E5QzArSjdCOztBK0M1b0tFO0VBQ0UsY0RtSzJCO0VDbEszQix5QkQrSnNCO0E5Q2cvSjFCO0ErQzVvS007RUFFRSxjRDZKdUI7RUM1SnZCO0EvQzZvS1I7QStDMW9LTTtFQUNFLFcxQ1JHO0UwQ1NILHlCRHVKdUI7RUN0SnZCLHFCRHNKdUI7QTlDcy9KL0I7O0ErQzFwS0U7RUFDRSxjRG1LMkI7RUNsSzNCLHlCRCtKc0I7QTlDOC9KMUI7QStDMXBLTTtFQUVFLGNENkp1QjtFQzVKdkI7QS9DMnBLUjtBK0N4cEtNO0VBQ0UsVzFDUkc7RTBDU0gseUJEdUp1QjtFQ3RKdkIscUJEc0p1QjtBOUNvZ0svQjs7QStDeHFLRTtFQUNFLGNEaUt5QjtFQ2hLekIseUJEK0pzQjtBOUM0Z0sxQjtBK0N4cUtNO0VBRUUsY0QySnFCO0VDMUpyQjtBL0N5cUtSO0ErQ3RxS007RUFDRSxXMUNSRztFMENTSCx5QkRxSnFCO0VDcEpyQixxQkRvSnFCO0E5Q29oSzdCOztBK0N0cktFO0VBQ0UsY0RtSzJCO0VDbEszQix5QkQrSnNCO0E5QzBoSzFCO0ErQ3RyS007RUFFRSxjRDZKdUI7RUM1SnZCO0EvQ3VyS1I7QStDcHJLTTtFQUNFLFcxQ1JHO0UwQ1NILHlCRHVKdUI7RUN0SnZCLHFCRHNKdUI7QTlDZ2lLL0I7O0ErQ3BzS0U7RUFDRSxjRGlLeUI7RUNoS3pCLHlCRCtKc0I7QTlDd2lLMUI7QStDcHNLTTtFQUVFLGNEMkpxQjtFQzFKckI7QS9DcXNLUjtBK0Nsc0tNO0VBQ0UsVzFDUkc7RTBDU0gseUJEcUpxQjtFQ3BKckIscUJEb0pxQjtBOUNnaks3Qjs7QWdEanRLQTtFQUNFO0VBQ0EsVTNDcWpEMkI7RTJDcGpEM0IsVzNDb2pEMkI7RTJDbmpEM0I7RUFDQSxXM0NRUztFMkNQVDtFQUNBO0UxQ09FO0UwQ0xGLFkzQ3FqRDJCO0FMK3BIN0I7QWdEanRLRTtFQUNFO0VBQ0E7RUFDQSxhM0NnakR5QjtBTG1xSDdCO0FnRGh0S0U7RUFDRTtFQUNBLGtEM0N3dEI0QjtFMkN2dEI1QixVM0MyaUR5QjtBTHVxSDdCO0FnRC9zS0U7RUFFRTtFQUNBO0VBQ0EsYTNDcWlEeUI7QUwycUg3Qjs7QWdENXNLQTtFQUNFLGtEM0NpaUQyQjtBTDhxSDdCOztBaURydktBO0VBQ0UsWTVDdzFDa0M7RTRDdjFDbEM7RTdDbVNJLG1CQUxJO0U2QzNSUjtFQUNBLDJDNUN3MUNrQztFNEN2MUNsQztFQUNBO0VBQ0EsNkM1Q2doQjRCO0VDdGdCMUI7QU44dUtKO0FpRHJ2S0U7RUFDRTtBakR1dktKO0FpRHB2S0U7RUFDRTtBakRzdktKOztBaURsdktBO0VBQ0U7RUFDQTtFQUNBO0FqRHF2S0Y7QWlEbnZLRTtFQUNFLHNCNUNrZWtCO0FMbXhKdEI7O0FpRGp2S0E7RUFDRTtFQUNBO0VBQ0E7RUFDQSxjNUNyQlM7RTRDc0JULDJDNUNrMENrQztFNENqMENsQztFQUNBO0UzQ1ZFO0VBQ0E7QU4rdktKO0FpRG52S0U7RUFDRTtFQUNBLG9CNUMreUNnQztBTHM4SHBDOztBaURqdktBO0VBQ0UsZ0I1QzB5Q2tDO0U0Q3p5Q2xDO0FqRG92S0Y7O0FrRDl4S0E7RUFDRTtFQUNBO0VBQ0E7RUFDQSxhN0NzaUNrQztFNkNyaUNsQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7QWxEK3hLRjs7QWtEeHhLQTtFQUNFO0VBQ0E7RUFDQSxjN0NpMkNrQztFNkMvMUNsQztBbEQweEtGO0FrRHZ4S0U7RTdCbEJJLG1DNkJtQkY7RUFDQSw4QjdDdTNDZ0M7QUxrNkhwQztBcUJ6eUtNO0U2QmNKO0k3QmJNO0VyQjR5S047QUFDRjtBa0Q1eEtFO0VBQ0UsZTdDcTNDZ0M7QUx5NkhwQztBa0QxeEtFO0VBQ0Usc0I3Q2szQ2dDO0FMMDZIcEM7O0FrRHh4S0E7RUFDRTtBbEQyeEtGO0FrRHp4S0U7RUFDRTtFQUNBO0FsRDJ4S0o7QWtEeHhLRTtFQUNFO0FsRDB4S0o7O0FrRHR4S0E7RUFDRTtFQUNBO0VBQ0E7QWxEeXhLRjs7QWtEcnhLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQSxzQjdDcEVTO0U2Q3FFVDtFQUNBO0U1QzNERTtFNEMrREY7QWxEb3hLRjs7QWtEaHhLQTtFQ3BGRTtFQUNBO0VBQ0E7RUFDQSxhOUMyaUNrQztFOEMxaUNsQztFQUNBO0VBQ0Esc0I5Q1VTO0FMODFLWDtBbURyMktFO0VBQVM7QW5EdzJLWDtBbUR2MktFO0VBQVMsWTlDaTRDeUI7QUx5K0hwQzs7QWtEMXhLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esa0I3Q216Q2tDO0U2Q2x6Q2xDO0U1Q3RFRTtFQUNBO0FObzJLSjtBa0Q1eEtFO0VBQ0U7RUFDQTtBbEQ4eEtKOztBa0R6eEtBO0VBQ0U7RUFDQSxnQjdDdWU0QjtBTHF6SjlCOztBa0R2eEtBO0VBQ0U7RUFHQTtFQUNBLGE3QzhQTztBTDBoS1Q7O0FrRHB4S0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFNUN6RkU7RUFDQTtBTmkzS0o7QWtEbnhLRTtFQUNFO0FsRHF4S0o7O0FhaDJLSTtFcUNrRkY7SUFDRSxnQjdDcXdDZ0M7STZDcHdDaEM7RWxEa3hLRjs7RWtEL3dLQTtJQUNFO0VsRGt4S0Y7O0VrRC93S0E7SUFDRTtFbERreEtGOztFa0Qzd0tBO0lBQVksZ0I3Q292Q3NCO0VMMmhJbEM7QUFDRjtBYW4zS0k7RXFDdUdGOztJQUVFLGdCN0NndkNnQztFTCtoSWxDO0FBQ0Y7QWF6M0tJO0VxQzhHRjtJQUFZLGlCN0M0dUNzQjtFTG1pSWxDO0FBQ0Y7QWtEdndLSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FsRHl3S047QWtEdndLTTtFQUNFO0VBQ0E7RTVDM0tKO0FOcTdLSjtBa0R0d0tNO0U1Qy9LRjtBTnc3S0o7QWtEcndLTTtFQUNFO0FsRHV3S1I7QWtEcHdLTTtFNUN2TEY7QU44N0tKOztBYXI0S0k7RXFDMEdBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RWxEK3hLSjtFa0Q3eEtJO0lBQ0U7SUFDQTtJNUMzS0o7RU4yOEtGO0VrRDV4S0k7STVDL0tGO0VOODhLRjtFa0QzeEtJO0lBQ0U7RWxENnhLTjtFa0QxeEtJO0k1Q3ZMRjtFTm85S0Y7QUFDRjtBYTU1S0k7RXFDMEdBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RWxEcXpLSjtFa0RuektJO0lBQ0U7SUFDQTtJNUMzS0o7RU5pK0tGO0VrRGx6S0k7STVDL0tGO0VObytLRjtFa0RqektJO0lBQ0U7RWxEbXpLTjtFa0RoektJO0k1Q3ZMRjtFTjArS0Y7QUFDRjtBYWw3S0k7RXFDMEdBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RWxEMjBLSjtFa0R6MEtJO0lBQ0U7SUFDQTtJNUMzS0o7RU51L0tGO0VrRHgwS0k7STVDL0tGO0VOMC9LRjtFa0R2MEtJO0lBQ0U7RWxEeTBLTjtFa0R0MEtJO0k1Q3ZMRjtFTmdnTEY7QUFDRjtBYXg4S0k7RXFDMEdBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RWxEaTJLSjtFa0QvMUtJO0lBQ0U7SUFDQTtJNUMzS0o7RU42Z0xGO0VrRDkxS0k7STVDL0tGO0VOZ2hMRjtFa0Q3MUtJO0lBQ0U7RWxEKzFLTjtFa0Q1MUtJO0k1Q3ZMRjtFTnNoTEY7QUFDRjtBYTk5S0k7RXFDMEdBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RWxEdTNLSjtFa0RyM0tJO0lBQ0U7SUFDQTtJNUMzS0o7RU5taUxGO0VrRHAzS0k7STVDL0tGO0VOc2lMRjtFa0RuM0tJO0lBQ0U7RWxEcTNLTjtFa0RsM0tJO0k1Q3ZMRjtFTjRpTEY7QUFDRjtBb0QvakxBO0VBQ0U7RUFDQSxhL0NnakNrQztFK0MvaUNsQztFQUNBLFMvQ2t5Q2tDO0VnRHR5Q2xDLHNDaERra0I0QjtFZ0Roa0I1QjtFQUNBLGdCaEQya0I0QjtFZ0Qxa0I1QixnQmhEZ2xCNEI7RWdEL2tCNUI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWpEc1JJLG1CQUxJO0VnRHJSUjtFQUNBO0FwRDJrTEY7QW9EemtMRTtFQUFTLFkvQ3N4Q3lCO0FMc3pJcEM7QW9EMWtMRTtFQUNFO0VBQ0E7RUFDQSxhL0NzeENnQztFK0NyeENoQyxjL0NzeENnQztBTHN6SXBDO0FvRDFrTEk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBcEQ0a0xOOztBb0R2a0xBO0VBQ0U7QXBEMGtMRjtBb0R4a0xFO0VBQ0U7QXBEMGtMSjtBb0R4a0xJO0VBQ0U7RUFDQTtFQUNBLHNCL0N0Qks7QUxnbUxYOztBb0Rya0xBO0VBQ0U7QXBEd2tMRjtBb0R0a0xFO0VBQ0U7RUFDQSxhL0N3dkNnQztFK0N2dkNoQyxjL0NzdkNnQztBTGsxSXBDO0FvRHRrTEk7RUFDRTtFQUNBO0VBQ0Esd0IvQ3RDSztBTDhtTFg7O0FvRG5rTEE7RUFDRTtBcERza0xGO0FvRHBrTEU7RUFDRTtBcERza0xKO0FvRHBrTEk7RUFDRTtFQUNBO0VBQ0EseUIvQ3BESztBTDBuTFg7O0FvRGprTEE7RUFDRTtBcERva0xGO0FvRGxrTEU7RUFDRTtFQUNBLGEvQzB0Q2dDO0UrQ3p0Q2hDLGMvQ3d0Q2dDO0FMNDJJcEM7QW9EbGtMSTtFQUNFO0VBQ0E7RUFDQSx1Qi9DcEVLO0FMd29MWDs7QW9EL2lMQTtFQUNFLGdCL0NvckNrQztFK0NuckNsQztFQUNBLFcvQ3RHUztFK0N1R1Q7RUFDQSxzQi9DOUZTO0VDQ1A7QU5ncExKOztBc0RucUxBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsYWpEOGlDa0M7RWlEN2lDbEM7RUFDQSxnQmpEd3pDa0M7RWdEN3pDbEMsc0NoRGtrQjRCO0VnRGhrQjVCO0VBQ0EsZ0JoRDJrQjRCO0VnRDFrQjVCLGdCaERnbEI0QjtFZ0Qva0I1QjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFakRzUkksbUJBTEk7RWtEcFJSO0VBQ0Esc0JqRExTO0VpRE1UO0VBQ0E7RWhESUU7QU42cUxKO0FzRDdxTEU7RUFDRTtFQUNBO0VBQ0EsV2pEd3pDZ0M7RWlEdnpDaEMsY2pEd3pDZ0M7QUx1M0lwQztBc0Q3cUxJO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEQ4cUxOOztBc0R4cUxFO0VBQ0U7QXREMnFMSjtBc0R6cUxJO0VBQ0U7RUFDQTtFQUNBLHFDakR1eUM4QjtBTG80SXBDO0FzRHhxTEk7RUFDRSxXakRzZHdCO0VpRHJkeEI7RUFDQSxzQmpEekNLO0FMbXRMWDs7QXNEcHFMRTtFQUNFO0VBQ0EsYWpEc3hDZ0M7RWlEcnhDaEMsWWpEb3hDZ0M7QUxtNUlwQztBc0RycUxJO0VBQ0U7RUFDQTtFQUNBLHVDakRteEM4QjtBTG81SXBDO0FzRHBxTEk7RUFDRSxTakRrY3dCO0VpRGpjeEI7RUFDQSx3QmpEN0RLO0FMbXVMWDs7QXNEaHFMRTtFQUNFO0F0RG1xTEo7QXNEanFMSTtFQUNFO0VBQ0E7RUFDQSx3Q2pEaXdDOEI7QUxrNklwQztBc0RocUxJO0VBQ0UsUWpEZ2J3QjtFaUQvYXhCO0VBQ0EseUJqRC9FSztBTGl2TFg7QXNEN3BMRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsV2pENnVDZ0M7RWlENXVDaEM7RUFDQTtFQUNBO0F0RCtwTEo7O0FzRDFwTEU7RUFDRTtFQUNBLGFqRG91Q2dDO0VpRG51Q2hDLFlqRGt1Q2dDO0FMMjdJcEM7QXNEM3BMSTtFQUNFO0VBQ0E7RUFDQSxzQ2pEaXVDOEI7QUw0N0lwQztBc0QxcExJO0VBQ0UsVWpEZ1p3QjtFaUQvWXhCO0VBQ0EsdUJqRC9HSztBTDJ3TFg7O0FzRHZvTEE7RUFDRTtFQUNBO0VsRHVKSSxlQUxJO0VrRC9JUix5QmpEb3JDa0M7RWlEbnJDbEM7RWhEdEhFO0VBQ0E7QU5nd0xKO0FzRHhvTEU7RUFDRTtBdEQwb0xKOztBc0R0b0xBO0VBQ0U7RUFDQSxjakQzSVM7QUxveExYOztBdUR4eExBO0VBQ0U7QXZEMnhMRjs7QXVEeHhMQTtFQUNFO0F2RDJ4TEY7O0F1RHh4TEE7RUFDRTtFQUNBO0VBQ0E7QXZEMnhMRjtBd0RqekxFO0VBQ0U7RUFDQTtFQUNBO0F4RG16TEo7O0F1RDV4TEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWxDbEJJLHNDa0NtQko7QXZEK3hMRjtBcUI5eUxNO0VrQ1FOO0lsQ1BRO0VyQml6TE47QUFDRjs7QXVEanlMQTs7O0VBR0U7QXZEb3lMRjs7QXVEanlMQTtBQUNBOztFQUVFO0F2RG95TEY7O0F1RGp5TEE7O0VBRUU7QXZEb3lMRjs7QXVEanlMQTtBQVFFO0VBQ0U7RUFDQTtFQUNBO0F2RDZ4TEo7QXVEMXhMRTs7O0VBR0U7RUFDQTtBdkQ0eExKO0F1RHp4TEU7O0VBRUU7RUFDQTtFbEMvREUsMkJrQ2dFRjtBdkQyeExKO0FxQnYxTE07RWtDd0RKOztJbEN2RE07RXJCMjFMTjtBQUNGOztBdUR4eExBOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0EsVWxEczZDbUM7RWtEcjZDbkM7RUFDQSxXbEQ3RlM7RWtEOEZUO0VBQ0E7RUFDQTtFQUNBLFlsRGk2Q21DO0VnQjEvQy9CLDhCa0MwRko7QXZEMHhMRjtBcUJoM0xNO0VrQ3FFTjs7SWxDcEVRO0VyQm8zTE47QUFDRjtBdUQ3eExFOzs7RUFFRSxXbER2R087RWtEd0dQO0VBQ0E7RUFDQSxZbER5NUNpQztBTHU0SXJDOztBdUQ3eExBO0VBQ0U7QXZEZ3lMRjs7QXVEN3hMQTtFQUNFO0F2RGd5TEY7O0F1RDN4TEE7O0VBRUU7RUFDQSxXbEQwNUNtQztFa0R6NUNuQyxZbER5NUNtQztFa0R4NUNuQztFQUNBO0VBQ0E7QXZEOHhMRjs7QXVEM3hMQTs7Ozs7OztHQUFBO0FBUUE7RUFDRTtBdkQ4eExGOztBdUQ1eExBO0VBQ0U7QXZEK3hMRjs7QXVEdnhMQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQSxpQmxEazJDbUM7RWtEajJDbkM7RUFDQSxnQmxEZzJDbUM7RWtELzFDbkM7QXZEeXhMRjtBdUR2eExFO0VBQ0U7RUFDQTtFQUNBLFdsRCsxQ2lDO0VrRDkxQ2pDLFdsRCsxQ2lDO0VrRDkxQ2pDO0VBQ0EsaUJsRCsxQ2lDO0VrRDkxQ2pDLGdCbEQ4MUNpQztFa0Q3MUNqQztFQUNBO0VBQ0Esc0JsRDlLTztFa0QrS1A7RUFDQTtFQUVBO0VBQ0E7RUFDQSxZbERzMUNpQztFZ0JsZ0QvQiw2QmtDNktGO0F2RHd4TEo7QXFCajhMTTtFa0N3Sko7SWxDdkpNO0VyQm84TE47QUFDRjtBdUQxeExFO0VBQ0UsVWxEbTFDaUM7QUx5OElyQzs7QXVEbnhMQTtFQUNFO0VBQ0E7RUFDQSxlbEQ2MENtQztFa0Q1MENuQztFQUNBLG9CbEQwMENtQztFa0R6MENuQyx1QmxEeTBDbUM7RWtEeDBDbkMsV2xEek1TO0VrRDBNVDtBdkRzeExGOztBdURoeExFOztFQUVFLGdDbEQ0MENpQztBTHU4SXJDO0F1RGh4TEU7RUFDRSxzQmxENU1PO0FMODlMWDtBdUQvd0xFO0VBQ0UsV2xEaE5PO0FMaStMWDs7QXlEOStMQTtFQUNFO0lBQUs7RXpEay9MTDtBQUNGO0F5RC8rTEE7RUFDRTtFQUNBLFdwRGlpRHdCO0VvRGhpRHhCLFlwRGdpRHdCO0VvRC9oRHhCLHdCcERpaUR3QjtFb0RoaUR4QjtFQUNBO0VBRUE7RUFDQTtBekRnL0xGOztBeUQ3K0xBO0VBQ0UsV3BENGhEd0I7RW9EM2hEeEIsWXBEMmhEd0I7RW9EMWhEeEIsbUJwRDRoRHdCO0FMbzlJMUI7O0F5RHgrTEE7RUFDRTtJQUNFO0V6RDIrTEY7RXlEeitMQTtJQUNFO0lBQ0E7RXpEMitMRjtBQUNGO0F5RHYrTEE7RUFDRTtFQUNBLFdwRCsvQ3dCO0VvRDkvQ3hCLFlwRDgvQ3dCO0VvRDcvQ3hCLHdCcEQrL0N3QjtFb0Q5L0N4QjtFQUVBO0VBQ0E7RUFDQTtBekR3K0xGOztBeURyK0xBO0VBQ0UsV3BEMC9Dd0I7RW9Eei9DeEIsWXBEeS9Dd0I7QUwrK0kxQjs7QXlEcCtMRTtFQUNFOztJQUVFO0V6RHUrTEo7QUFDRjtBMER6aU1BO0VBQ0U7RUFDQTtFQUNBLGFyRDRpQ2tDO0VxRDNpQ2xDO0VBQ0E7RUFDQTtFQUVBO0VBQ0Esc0JyRERTO0VxREVUO0VBQ0E7RXJDS0ksc0NxQ0hKO0ExRHlpTUY7QXFCbGlNTTtFcUNwQk47SXJDcUJRO0VyQnFpTU47QUFDRjs7QTBEM2lNQTtFUGRFO0VBQ0E7RUFDQTtFQUNBLGE5Q3lpQ2tDO0U4Q3hpQ2xDO0VBQ0E7RUFDQSxzQjlDVVM7QUxtak1YO0FtRDFqTUU7RUFBUztBbkQ2ak1YO0FtRDVqTUU7RUFBUyxZOUNpNEN5QjtBTDhySnBDOztBMER2ak1BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTFEMGpNRjtBMER4ak1FO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTFEMGpNSjs7QTBEdGpNQTtFQUNFO0VBQ0EsZ0JyRGlqQjRCO0FMd2dMOUI7O0EwRHRqTUE7RUFDRTtFQUNBO0VBQ0E7QTFEeWpNRjs7QTBEdGpNQTtFQUNFO0VBQ0E7RUFDQSxZckRnaURrQztFcUQvaERsQztFQUNBO0ExRHlqTUY7O0EwRHRqTUE7RUFDRTtFQUNBO0VBQ0EsWXJEd2hEa0M7RXFEdmhEbEM7RUFDQTtBMUR5ak1GOztBMER0ak1BO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsWXJEZ2hEa0M7RXFEL2dEbEM7RUFDQTtFQUNBO0ExRHlqTUY7O0EwRHRqTUE7RUFDRTtFQUNBO0VBQ0EsWXJEdWdEa0M7RXFEdGdEbEM7RUFDQTtFQUNBO0ExRHlqTUY7O0EwRHRqTUE7RUFDRTtBMUR5ak1GOztBMkQxb01BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFl0RHd0Q2tDO0FMcTdKcEM7QTJEM29NRTtFQUNFO0VBQ0E7QTNENm9NSjs7QTJEeG9NQTtFQUNFO0EzRDJvTUY7O0EyRHhvTUE7RUFDRTtBM0Qyb01GOztBMkR4b01BO0VBQ0U7QTNEMm9NRjs7QTJEdG9NRTtFQUNFO0EzRHlvTUo7O0EyRHJvTUE7RUFDRTtJQUNFLFl0RDJyQ2dDO0VMNjhKbEM7QUFDRjtBMkRyb01BO0VBQ0U7RUFDQTtFQUNBO0EzRHVvTUY7O0EyRHBvTUE7RUFDRTtJQUNFO0UzRHVvTUY7QUFDRjtBd0R0ck1FO0VBQ0U7RUFDQTtFQUNBO0F4RHdyTUo7O0E0RDVyTUU7RUFDRSxjdkQ4RVc7QUxpbk1mO0E0RDVyTU07RUFFRTtBNUQ2ck1SOztBNERuc01FO0VBQ0UsY3ZEOEVXO0FMd25NZjtBNERuc01NO0VBRUU7QTVEb3NNUjs7QTREMXNNRTtFQUNFLGN2RDhFVztBTCtuTWY7QTREMXNNTTtFQUVFO0E1RDJzTVI7O0E0RGp0TUU7RUFDRSxjdkQ4RVc7QUxzb01mO0E0RGp0TU07RUFFRTtBNURrdE1SOztBNER4dE1FO0VBQ0UsY3ZEOEVXO0FMNm9NZjtBNER4dE1NO0VBRUU7QTVEeXRNUjs7QTREL3RNRTtFQUNFLGN2RDhFVztBTG9wTWY7QTREL3RNTTtFQUVFO0E1RGd1TVI7O0E0RHR1TUU7RUFDRSxjdkQ4RVc7QUwycE1mO0E0RHR1TU07RUFFRTtBNUR1dU1SOztBNEQ3dU1FO0VBQ0UsY3ZEOEVXO0FMa3FNZjtBNEQ3dU1NO0VBRUU7QTVEOHVNUjs7QTZEbnZNQTtFQUNFO0VBQ0E7QTdEc3ZNRjtBNkRwdk1FO0VBQ0U7RUFDQTtFQUNBO0E3RHN2TUo7QTZEbnZNRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdEcXZNSjs7QTZEaHZNRTtFQUNFO0E3RG12TUo7O0E2RHB2TUU7RUFDRTtBN0R1dk1KOztBNkR4dk1FO0VBQ0U7QTdEMnZNSjs7QTZENXZNRTtFQUNFO0E3RCt2TUo7O0E4RHB4TUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGF6RHNpQ2tDO0FMaXZLcEM7O0E4RHB4TUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGF6RDhoQ2tDO0FMeXZLcEM7O0E4RC93TUk7RUFDRTtFQUNBO0VBQ0EsYXpEa2hDOEI7QUxnd0twQzs7QWE3dU1JO0VpRHhDQTtJQUNFO0lBQ0E7SUFDQSxhekRraEM4QjtFTHV3S2xDO0FBQ0Y7QWFydk1JO0VpRHhDQTtJQUNFO0lBQ0E7SUFDQSxhekRraEM4QjtFTDh3S2xDO0FBQ0Y7QWE1dk1JO0VpRHhDQTtJQUNFO0lBQ0E7SUFDQSxhekRraEM4QjtFTHF4S2xDO0FBQ0Y7QWFud01JO0VpRHhDQTtJQUNFO0lBQ0E7SUFDQSxhekRraEM4QjtFTDR4S2xDO0FBQ0Y7QWExd01JO0VpRHhDQTtJQUNFO0lBQ0E7SUFDQSxhekRraEM4QjtFTG15S2xDO0FBQ0Y7QStELzBNQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0EvRGkxTUY7O0ErRDkwTUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBL0RpMU1GOztBZ0V6MU1BOztFQ0lFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakUwMU1GOztBa0VyMk1FO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFU3RHdic0M7RTZEdmJ0QztBbEV3Mk1KOztBbUVoM01BO0VDQUU7RUFDQTtFQUNBO0FwRW8zTUY7O0FxRTEzTUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsYWhFaXBCNEI7QUw0dUw5Qjs7QXNFcDBNUTtFQU9JO0F0RWkwTVo7O0FzRXgwTVE7RUFPSTtBdEVxME1aOztBc0U1ME1RO0VBT0k7QXRFeTBNWjs7QXNFaDFNUTtFQU9JO0F0RTYwTVo7O0FzRXAxTVE7RUFPSTtBdEVpMU1aOztBc0V4MU1RO0VBT0k7QXRFcTFNWjs7QXNFNTFNUTtFQU9JO0F0RXkxTVo7O0FzRWgyTVE7RUFPSTtBdEU2MU1aOztBc0VwMk1RO0VBT0k7QXRFaTJNWjs7QXNFeDJNUTtFQU9JO0F0RXEyTVo7O0FzRTUyTVE7RUFPSTtBdEV5Mk1aOztBc0VoM01RO0VBT0k7QXRFNjJNWjs7QXNFcDNNUTtFQU9JO0F0RWkzTVo7O0FzRXgzTVE7RUFPSTtBdEVxM01aOztBc0U1M01RO0VBT0k7QXRFeTNNWjs7QXNFaDRNUTtFQU9JO0F0RTYzTVo7O0FzRXA0TVE7RUFPSTtBdEVpNE1aOztBc0V4NE1RO0VBT0k7QXRFcTRNWjs7QXNFNTRNUTtFQU9JO0F0RXk0TVo7O0FzRWg1TVE7RUFPSTtBdEU2NE1aOztBc0VwNU1RO0VBT0k7QXRFaTVNWjs7QXNFeDVNUTtFQU9JO0F0RXE1TVo7O0FzRTU1TVE7RUFPSTtBdEV5NU1aOztBc0VoNk1RO0VBT0k7QXRFNjVNWjs7QXNFcDZNUTtFQU9JO0F0RWk2TVo7O0FzRXg2TVE7RUFPSTtBdEVxNk1aOztBc0U1Nk1RO0VBT0k7QXRFeTZNWjs7QXNFaDdNUTtFQU9JO0F0RTY2TVo7O0FzRXA3TVE7RUFPSTtBdEVpN01aOztBc0V4N01RO0VBT0k7QXRFcTdNWjs7QXNFNTdNUTtFQU9JO0F0RXk3TVo7O0FzRWg4TVE7RUFPSTtBdEU2N01aOztBc0VwOE1RO0VBT0k7QXRFaThNWjs7QXNFeDhNUTtFQU9JO0F0RXE4TVo7O0FzRTU4TVE7RUFPSTtBdEV5OE1aOztBc0VoOU1RO0VBT0k7QXRFNjhNWjs7QXNFcDlNUTtFQU9JO0F0RWk5TVo7O0FzRXg5TVE7RUFPSTtBdEVxOU1aOztBc0U1OU1RO0VBT0k7QXRFeTlNWjs7QXNFaCtNUTtFQU9JO0F0RTY5TVo7O0FzRXArTVE7RUFPSTtBdEVpK01aOztBc0V4K01RO0VBT0k7QXRFcStNWjs7QXNFNStNUTtFQU9JO0F0RXkrTVo7O0FzRWgvTVE7RUFPSTtBdEU2K01aOztBc0VwL01RO0VBT0k7QXRFaS9NWjs7QXNFeC9NUTtFQU9JO0F0RXEvTVo7O0FzRTUvTVE7RUFPSTtBdEV5L01aOztBc0VoZ05RO0VBT0k7QXRFNi9NWjs7QXNFcGdOUTtFQU9JO0F0RWlnTlo7O0FzRXhnTlE7RUFPSTtBdEVxZ05aOztBc0U1Z05RO0VBT0k7QXRFeWdOWjs7QXNFaGhOUTtFQU9JO0F0RTZnTlo7O0FzRXBoTlE7RUFPSTtBdEVpaE5aOztBc0V4aE5RO0VBT0k7QXRFcWhOWjs7QXNFNWhOUTtFQU9JO0F0RXloTlo7O0FzRWhpTlE7RUFPSTtBdEU2aE5aOztBc0VwaU5RO0VBT0k7QXRFaWlOWjs7QXNFeGlOUTtFQU9JO0F0RXFpTlo7O0FzRTVpTlE7RUFPSTtBdEV5aU5aOztBc0Voak5RO0VBT0k7QXRFNmlOWjs7QXNFcGpOUTtFQU9JO0F0RWlqTlo7O0FzRXhqTlE7RUFPSTtBdEVxak5aOztBc0U1ak5RO0VBT0k7QXRFeWpOWjs7QXNFaGtOUTtFQU9JO0F0RTZqTlo7O0FzRXBrTlE7RUFPSTtBdEVpa05aOztBc0V4a05RO0VBT0k7QXRFcWtOWjs7QXNFNWtOUTtFQU9JO0F0RXlrTlo7O0FzRWhsTlE7RUFPSTtBdEU2a05aOztBc0VwbE5RO0VBT0k7QXRFaWxOWjs7QXNFeGxOUTtFQU9JO0F0RXFsTlo7O0FzRTVsTlE7RUFPSTtBdEV5bE5aOztBc0VobU5RO0VBT0k7QXRFNmxOWjs7QXNFcG1OUTtFQU9JO0F0RWltTlo7O0FzRXhtTlE7RUFPSTtBdEVxbU5aOztBc0U1bU5RO0VBT0k7QXRFeW1OWjs7QXNFaG5OUTtFQU9JO0F0RTZtTlo7O0FzRXBuTlE7RUFPSTtBdEVpbk5aOztBc0V4bk5RO0VBT0k7QXRFcW5OWjs7QXNFNW5OUTtFQU9JO0F0RXluTlo7O0FzRWhvTlE7RUFPSTtBdEU2bk5aOztBc0Vwb05RO0VBT0k7QXRFaW9OWjs7QXNFeG9OUTtFQU9JO0F0RXFvTlo7O0FzRTVvTlE7RUFPSTtBdEV5b05aOztBc0VocE5RO0VBT0k7QXRFNm9OWjs7QXNFcHBOUTtFQU9JO0F0RWlwTlo7O0FzRXhwTlE7RUFPSTtBdEVxcE5aOztBc0U1cE5RO0VBT0k7QXRFeXBOWjs7QXNFaHFOUTtFQU9JO0F0RTZwTlo7O0FzRXBxTlE7RUFPSTtBdEVpcU5aOztBc0V4cU5RO0VBT0k7QXRFcXFOWjs7QXNFNXFOUTtFQU9JO0F0RXlxTlo7O0FzRWhyTlE7RUFPSTtBdEU2cU5aOztBc0Vwck5RO0VBT0k7QXRFaXJOWjs7QXNFeHJOUTtFQU9JO0F0RXFyTlo7O0FzRTVyTlE7RUFPSTtBdEV5ck5aOztBc0Voc05RO0VBT0k7QXRFNnJOWjs7QXNFcHNOUTtFQU9JO0F0RWlzTlo7O0FzRXhzTlE7RUFPSTtBdEVxc05aOztBc0U1c05RO0VBT0k7QXRFeXNOWjs7QXNFaHROUTtFQU9JO0F0RTZzTlo7O0FzRXB0TlE7RUFPSTtBdEVpdE5aOztBc0V4dE5RO0VBT0k7QXRFcXROWjs7QXNFNXROUTtFQU9JO0F0RXl0Tlo7O0FzRWh1TlE7RUFPSTtBdEU2dE5aOztBc0VwdU5RO0VBT0k7QXRFaXVOWjs7QXNFeHVOUTtFQU9JO0F0RXF1Tlo7O0FzRTV1TlE7RUFPSTtBdEV5dU5aOztBc0Vodk5RO0VBT0k7QXRFNnVOWjs7QXNFcHZOUTtFQU9JO0F0RWl2Tlo7O0FzRXh2TlE7RUFPSTtBdEVxdk5aOztBc0U1dk5RO0VBT0k7QXRFeXZOWjs7QXNFaHdOUTtFQU9JO0F0RTZ2Tlo7O0FzRXB3TlE7RUFPSTtBdEVpd05aOztBc0V4d05RO0VBT0k7QXRFcXdOWjs7QXNFNXdOUTtFQU9JO0F0RXl3Tlo7O0FzRWh4TlE7RUFPSTtBdEU2d05aOztBc0VweE5RO0VBT0k7QXRFaXhOWjs7QXNFeHhOUTtFQU9JO0F0RXF4Tlo7O0FzRTV4TlE7RUFPSTtBdEV5eE5aOztBc0VoeU5RO0VBT0k7QXRFNnhOWjs7QXNFcHlOUTtFQU9JO0F0RWl5Tlo7O0FzRXh5TlE7RUFPSTtBdEVxeU5aOztBc0U1eU5RO0VBT0k7QXRFeXlOWjs7QXNFaHpOUTtFQU9JO0F0RTZ5Tlo7O0FzRXB6TlE7RUFPSTtBdEVpek5aOztBc0V4ek5RO0VBT0k7QXRFcXpOWjs7QXNFNXpOUTtFQU9JO0F0RXl6Tlo7O0FzRWgwTlE7RUFPSTtBdEU2ek5aOztBc0VwME5RO0VBT0k7QXRFaTBOWjs7QXNFeDBOUTtFQU9JO0F0RXEwTlo7O0FzRTUwTlE7RUFPSTtBdEV5ME5aOztBc0VoMU5RO0VBT0k7QXRFNjBOWjs7QXNFcDFOUTtFQU9JO0F0RWkxTlo7O0FzRXgxTlE7RUFPSTtBdEVxMU5aOztBc0U1MU5RO0VBT0k7QXRFeTFOWjs7QXNFaDJOUTtFQU9JO0F0RTYxTlo7O0FzRXAyTlE7RUFPSTtBdEVpMk5aOztBc0V4Mk5RO0VBT0k7QXRFcTJOWjs7QXNFNTJOUTtFQU9JO0F0RXkyTlo7O0FzRWgzTlE7RUFPSTtBdEU2Mk5aOztBc0VwM05RO0VBT0k7QXRFaTNOWjs7QXNFeDNOUTtFQU9JO0F0RXEzTlo7O0FzRTUzTlE7RUFPSTtBdEV5M05aOztBc0VoNE5RO0VBT0k7QXRFNjNOWjs7QXNFcDROUTtFQU9JO0F0RWk0Tlo7O0FzRXg0TlE7RUFPSTtBdEVxNE5aOztBc0U1NE5RO0VBT0k7QXRFeTROWjs7QXNFaDVOUTtFQU9JO0F0RTY0Tlo7O0FzRXA1TlE7RUFPSTtFQUFBO0F0RWs1Tlo7O0FzRXo1TlE7RUFPSTtFQUFBO0F0RXU1Tlo7O0FzRTk1TlE7RUFPSTtFQUFBO0F0RTQ1Tlo7O0FzRW42TlE7RUFPSTtFQUFBO0F0RWk2Tlo7O0FzRXg2TlE7RUFPSTtFQUFBO0F0RXM2Tlo7O0FzRTc2TlE7RUFPSTtFQUFBO0F0RTI2Tlo7O0FzRWw3TlE7RUFPSTtFQUFBO0F0RWc3Tlo7O0FzRXY3TlE7RUFPSTtFQUFBO0F0RXE3Tlo7O0FzRTU3TlE7RUFPSTtFQUFBO0F0RTA3Tlo7O0FzRWo4TlE7RUFPSTtFQUFBO0F0RSs3Tlo7O0FzRXQ4TlE7RUFPSTtFQUFBO0F0RW84Tlo7O0FzRTM4TlE7RUFPSTtFQUFBO0F0RXk4Tlo7O0FzRWg5TlE7RUFPSTtFQUFBO0F0RTg4Tlo7O0FzRXI5TlE7RUFPSTtFQUFBO0F0RW05Tlo7O0FzRTE5TlE7RUFPSTtBdEV1OU5aOztBc0U5OU5RO0VBT0k7QXRFMjlOWjs7QXNFbCtOUTtFQU9JO0F0RSs5Tlo7O0FzRXQrTlE7RUFPSTtBdEVtK05aOztBc0UxK05RO0VBT0k7QXRFdStOWjs7QXNFOStOUTtFQU9JO0F0RTIrTlo7O0FzRWwvTlE7RUFPSTtBdEUrK05aOztBc0V0L05RO0VBT0k7QXRFbS9OWjs7QXNFMS9OUTtFQU9JO0F0RXUvTlo7O0FzRTkvTlE7RUFPSTtBdEUyL05aOztBc0VsZ09RO0VBT0k7QXRFKy9OWjs7QXNFdGdPUTtFQU9JO0F0RW1nT1o7O0FzRTFnT1E7RUFPSTtBdEV1Z09aOztBc0U5Z09RO0VBT0k7QXRFMmdPWjs7QXNFbGhPUTtFQU9JO0F0RStnT1o7O0FzRXRoT1E7RUFPSTtBdEVtaE9aOztBc0UxaE9RO0VBT0k7QXRFdWhPWjs7QXNFOWhPUTtFQU9JO0F0RTJoT1o7O0FzRWxpT1E7RUFPSTtBdEUraE9aOztBc0V0aU9RO0VBT0k7QXRFbWlPWjs7QXNFMWlPUTtFQU9JO0F0RXVpT1o7O0FzRTlpT1E7RUFPSTtBdEUyaU9aOztBc0Vsak9RO0VBT0k7QXRFK2lPWjs7QXNFdGpPUTtFQU9JO0F0RW1qT1o7O0FzRTFqT1E7RUFPSTtBdEV1ak9aOztBc0U5ak9RO0VBT0k7QXRFMmpPWjs7QXNFbGtPUTtFQU9JO0F0RStqT1o7O0FzRXRrT1E7RUFPSTtBdEVta09aOztBc0Uxa09RO0VBT0k7QXRFdWtPWjs7QXNFOWtPUTtFQU9JO0F0RTJrT1o7O0FzRWxsT1E7RUFPSTtBdEUra09aOztBc0V0bE9RO0VBT0k7QXRFbWxPWjs7QXNFMWxPUTtFQU9JO0F0RXVsT1o7O0FzRTlsT1E7RUFPSTtBdEUybE9aOztBc0VsbU9RO0VBT0k7RUFBQTtBdEVnbU9aOztBc0V2bU9RO0VBT0k7RUFBQTtBdEVxbU9aOztBc0U1bU9RO0VBT0k7RUFBQTtBdEUwbU9aOztBc0Vqbk9RO0VBT0k7RUFBQTtBdEUrbU9aOztBc0V0bk9RO0VBT0k7RUFBQTtBdEVvbk9aOztBc0Uzbk9RO0VBT0k7RUFBQTtBdEV5bk9aOztBc0Vob09RO0VBT0k7RUFBQTtBdEU4bk9aOztBc0Vyb09RO0VBT0k7RUFBQTtBdEVtb09aOztBc0Uxb09RO0VBT0k7RUFBQTtBdEV3b09aOztBc0Uvb09RO0VBT0k7RUFBQTtBdEU2b09aOztBc0VwcE9RO0VBT0k7RUFBQTtBdEVrcE9aOztBc0V6cE9RO0VBT0k7RUFBQTtBdEV1cE9aOztBc0U5cE9RO0VBT0k7QXRFMnBPWjs7QXNFbHFPUTtFQU9JO0F0RStwT1o7O0FzRXRxT1E7RUFPSTtBdEVtcU9aOztBc0UxcU9RO0VBT0k7QXRFdXFPWjs7QXNFOXFPUTtFQU9JO0F0RTJxT1o7O0FzRWxyT1E7RUFPSTtBdEUrcU9aOztBc0V0ck9RO0VBT0k7QXRFbXJPWjs7QXNFMXJPUTtFQU9JO0F0RXVyT1o7O0FzRTlyT1E7RUFPSTtBdEUyck9aOztBc0Vsc09RO0VBT0k7QXRFK3JPWjs7QXNFdHNPUTtFQU9JO0F0RW1zT1o7O0FzRTFzT1E7RUFPSTtBdEV1c09aOztBc0U5c09RO0VBT0k7QXRFMnNPWjs7QXNFbHRPUTtFQU9JO0F0RStzT1o7O0FzRXR0T1E7RUFPSTtBdEVtdE9aOztBc0UxdE9RO0VBT0k7QXRFdXRPWjs7QXNFOXRPUTtFQU9JO0F0RTJ0T1o7O0FzRWx1T1E7RUFPSTtBdEUrdE9aOztBc0V0dU9RO0VBT0k7QXRFbXVPWjs7QXNFMXVPUTtFQU9JO0F0RXV1T1o7O0FzRTl1T1E7RUFPSTtBdEUydU9aOztBc0Vsdk9RO0VBT0k7QXRFK3VPWjs7QXNFdHZPUTtFQU9JO0F0RW12T1o7O0FzRTF2T1E7RUFPSTtBdEV1dk9aOztBc0U5dk9RO0VBT0k7QXRFMnZPWjs7QXNFbHdPUTtFQU9JO0F0RSt2T1o7O0FzRXR3T1E7RUFPSTtBdEVtd09aOztBc0Uxd09RO0VBT0k7QXRFdXdPWjs7QXNFOXdPUTtFQU9JO0F0RTJ3T1o7O0FzRWx4T1E7RUFPSTtBdEUrd09aOztBc0V0eE9RO0VBT0k7QXRFbXhPWjs7QXNFMXhPUTtFQU9JO0F0RXV4T1o7O0FzRTl4T1E7RUFPSTtBdEUyeE9aOztBc0VseU9RO0VBT0k7QXRFK3hPWjs7QXNFdHlPUTtFQU9JO0F0RW15T1o7O0FzRTF5T1E7RUFPSTtBdEV1eU9aOztBc0U5eU9RO0VBT0k7QXRFMnlPWjs7QXNFbHpPUTtFQU9JO0F0RSt5T1o7O0FzRXR6T1E7RUFPSTtBdEVtek9aOztBc0Uxek9RO0VBT0k7QXRFdXpPWjs7QXNFOXpPUTtFQU9JO0F0RTJ6T1o7O0FzRWwwT1E7RUFPSTtBdEUrek9aOztBc0V0ME9RO0VBT0k7QXRFbTBPWjs7QXNFMTBPUTtFQU9JO0F0RXUwT1o7O0FzRTkwT1E7RUFPSTtBdEUyME9aOztBc0VsMU9RO0VBT0k7QXRFKzBPWjs7QXNFdDFPUTtFQU9JO0F0RW0xT1o7O0FzRTExT1E7RUFPSTtBdEV1MU9aOztBc0U5MU9RO0VBT0k7QXRFMjFPWjs7QXNFbDJPUTtFQU9JO0F0RSsxT1o7O0FzRXQyT1E7RUFPSTtBdEVtMk9aOztBc0UxMk9RO0VBT0k7QXRFdTJPWjs7QXNFOTJPUTtFQU9JO0F0RTIyT1o7O0FzRWg0T1E7QUFjQTtFQU9JO0VBQUE7QXRFaTNPWjs7QXNFbjJPUTtBQXJCQTtFQUlRO0VBR0o7QXRFdTNPWjs7QXNFOTNPUTtFQUlRO0VBR0o7QXRFNDNPWjs7QXNFbjRPUTtFQUlRO0VBR0o7QXRFaTRPWjs7QXNFeDRPUTtFQUlRO0VBR0o7QXRFczRPWjs7QXNFNzRPUTtFQUlRO0VBR0o7QXRFMjRPWjs7QXNFbDVPUTtFQUlRO0VBR0o7QXRFZzVPWjs7QXNFdjVPUTtFQUlRO0VBR0o7QXRFcTVPWjs7QXNFNTVPUTtFQUlRO0VBR0o7QXRFMDVPWjs7QXNFajZPUTtFQUlRO0VBR0o7QXRFKzVPWjs7QXNFdDZPUTtFQUlRO0VBR0o7QXRFbzZPWjs7QXNFMzZPUTtFQUlRO0VBR0o7QXRFeTZPWjs7QXNFaDdPUTtFQUlRO0VBR0o7QXRFODZPWjs7QXNFcjdPUTtFQUlRO0VBR0o7QXRFbTdPWjs7QXNFMTdPUTtFQUlRO0VBR0o7QXRFdzdPWjs7QXNFLzdPUTtFQUlRO0VBR0o7QXRFNjdPWjs7QXNFOThPUTtFQUNFO0F0RWk5T1Y7O0FzRWw5T1E7RUFDRTtBdEVxOU9WOztBc0V0OU9RO0VBQ0U7QXRFeTlPVjs7QXNFMTlPUTtFQUNFO0F0RTY5T1Y7O0FzRXA5T1E7RUFJUTtFQUdKO0F0RWs5T1o7O0FzRXo5T1E7RUFJUTtFQUdKO0F0RXU5T1o7O0FzRTk5T1E7RUFJUTtFQUdKO0F0RTQ5T1o7O0FzRW4rT1E7RUFJUTtFQUdKO0F0RWkrT1o7O0FzRXgrT1E7RUFJUTtFQUdKO0F0RXMrT1o7O0FzRTcrT1E7RUFJUTtFQUdKO0F0RTIrT1o7O0FzRWwvT1E7RUFJUTtFQUdKO0F0RWcvT1o7O0FzRXYvT1E7RUFJUTtFQUdKO0F0RXEvT1o7O0FzRTUvT1E7RUFJUTtFQUdKO0F0RTAvT1o7O0FzRWpnUFE7RUFJUTtFQUdKO0F0RSsvT1o7O0FzRXRnUFE7RUFJUTtFQUdKO0F0RW9nUFo7O0FzRTNnUFE7RUFJUTtFQUdKO0F0RXlnUFo7O0FzRTFoUFE7RUFDRTtBdEU2aFBWOztBc0U5aFBRO0VBQ0U7QXRFaWlQVjs7QXNFbGlQUTtFQUNFO0F0RXFpUFY7O0FzRXRpUFE7RUFDRTtBdEV5aVBWOztBc0UxaVBRO0VBQ0U7QXRFNmlQVjs7QXNFcGlQUTtFQU9JO0F0RWlpUFo7O0FzRXhpUFE7RUFPSTtBdEVxaVBaOztBc0U1aVBRO0VBT0k7QXRFeWlQWjs7QXNFaGpQUTtFQU9JO0F0RTZpUFo7O0FzRXBqUFE7RUFPSTtBdEVpalBaOztBc0V4alBRO0VBT0k7QXRFcWpQWjs7QXNFNWpQUTtFQU9JO0F0RXlqUFo7O0FzRWhrUFE7RUFPSTtBdEU2alBaOztBc0Vwa1BRO0VBT0k7QXRFaWtQWjs7QXNFeGtQUTtFQU9JO0F0RXFrUFo7O0FzRTVrUFE7RUFPSTtBdEV5a1BaOztBc0VobFBRO0VBT0k7QXRFNmtQWjs7QXNFcGxQUTtFQU9JO0F0RWlsUFo7O0FzRXhsUFE7RUFPSTtFQUFBO0F0RXNsUFo7O0FzRTdsUFE7RUFPSTtFQUFBO0F0RTJsUFo7O0FzRWxtUFE7RUFPSTtFQUFBO0F0RWdtUFo7O0FzRXZtUFE7RUFPSTtFQUFBO0F0RXFtUFo7O0FzRTVtUFE7RUFPSTtBdEV5bVBaOztBc0VoblBRO0VBT0k7QXRFNm1QWjs7QWFwblBJO0V5REFJO0lBT0k7RXRFa25QVjs7RXNFem5QTTtJQU9JO0V0RXNuUFY7O0VzRTduUE07SUFPSTtFdEUwblBWOztFc0Vqb1BNO0lBT0k7RXRFOG5QVjs7RXNFcm9QTTtJQU9JO0V0RWtvUFY7O0VzRXpvUE07SUFPSTtFdEVzb1BWOztFc0U3b1BNO0lBT0k7RXRFMG9QVjs7RXNFanBQTTtJQU9JO0V0RThvUFY7O0VzRXJwUE07SUFPSTtFdEVrcFBWOztFc0V6cFBNO0lBT0k7RXRFc3BQVjs7RXNFN3BQTTtJQU9JO0V0RTBwUFY7O0VzRWpxUE07SUFPSTtFdEU4cFBWOztFc0VycVBNO0lBT0k7RXRFa3FQVjs7RXNFenFQTTtJQU9JO0V0RXNxUFY7O0VzRTdxUE07SUFPSTtFdEUwcVBWOztFc0VqclBNO0lBT0k7RXRFOHFQVjs7RXNFcnJQTTtJQU9JO0V0RWtyUFY7O0VzRXpyUE07SUFPSTtFdEVzclBWOztFc0U3clBNO0lBT0k7RXRFMHJQVjs7RXNFanNQTTtJQU9JO0V0RThyUFY7O0VzRXJzUE07SUFPSTtFdEVrc1BWOztFc0V6c1BNO0lBT0k7RXRFc3NQVjs7RXNFN3NQTTtJQU9JO0V0RTBzUFY7O0VzRWp0UE07SUFPSTtFdEU4c1BWOztFc0VydFBNO0lBT0k7RXRFa3RQVjs7RXNFenRQTTtJQU9JO0V0RXN0UFY7O0VzRTd0UE07SUFPSTtFdEUwdFBWOztFc0VqdVBNO0lBT0k7RXRFOHRQVjs7RXNFcnVQTTtJQU9JO0V0RWt1UFY7O0VzRXp1UE07SUFPSTtFdEVzdVBWOztFc0U3dVBNO0lBT0k7RXRFMHVQVjs7RXNFanZQTTtJQU9JO0V0RTh1UFY7O0VzRXJ2UE07SUFPSTtFdEVrdlBWOztFc0V6dlBNO0lBT0k7RXRFc3ZQVjs7RXNFN3ZQTTtJQU9JO0V0RTB2UFY7O0VzRWp3UE07SUFPSTtFdEU4dlBWOztFc0Vyd1BNO0lBT0k7RXRFa3dQVjs7RXNFendQTTtJQU9JO0V0RXN3UFY7O0VzRTd3UE07SUFPSTtFdEUwd1BWOztFc0VqeFBNO0lBT0k7RXRFOHdQVjs7RXNFcnhQTTtJQU9JO0V0RWt4UFY7O0VzRXp4UE07SUFPSTtFdEVzeFBWOztFc0U3eFBNO0lBT0k7RXRFMHhQVjs7RXNFanlQTTtJQU9JO0V0RTh4UFY7O0VzRXJ5UE07SUFPSTtFdEVreVBWOztFc0V6eVBNO0lBT0k7RXRFc3lQVjs7RXNFN3lQTTtJQU9JO0V0RTB5UFY7O0VzRWp6UE07SUFPSTtFdEU4eVBWOztFc0VyelBNO0lBT0k7RXRFa3pQVjs7RXNFenpQTTtJQU9JO0V0RXN6UFY7O0VzRTd6UE07SUFPSTtFdEUwelBWOztFc0VqMFBNO0lBT0k7RXRFOHpQVjs7RXNFcjBQTTtJQU9JO0V0RWswUFY7O0VzRXowUE07SUFPSTtFdEVzMFBWOztFc0U3MFBNO0lBT0k7RXRFMDBQVjs7RXNFajFQTTtJQU9JO0V0RTgwUFY7O0VzRXIxUE07SUFPSTtFdEVrMVBWOztFc0V6MVBNO0lBT0k7RXRFczFQVjs7RXNFNzFQTTtJQU9JO0V0RTAxUFY7O0VzRWoyUE07SUFPSTtFdEU4MVBWOztFc0VyMlBNO0lBT0k7RXRFazJQVjs7RXNFejJQTTtJQU9JO0V0RXMyUFY7O0VzRTcyUE07SUFPSTtFdEUwMlBWOztFc0VqM1BNO0lBT0k7RXRFODJQVjs7RXNFcjNQTTtJQU9JO0V0RWszUFY7O0VzRXozUE07SUFPSTtFdEVzM1BWOztFc0U3M1BNO0lBT0k7RXRFMDNQVjs7RXNFajRQTTtJQU9JO0V0RTgzUFY7O0VzRXI0UE07SUFPSTtFdEVrNFBWOztFc0V6NFBNO0lBT0k7SUFBQTtFdEV1NFBWOztFc0U5NFBNO0lBT0k7SUFBQTtFdEU0NFBWOztFc0VuNVBNO0lBT0k7SUFBQTtFdEVpNVBWOztFc0V4NVBNO0lBT0k7SUFBQTtFdEVzNVBWOztFc0U3NVBNO0lBT0k7SUFBQTtFdEUyNVBWOztFc0VsNlBNO0lBT0k7SUFBQTtFdEVnNlBWOztFc0V2NlBNO0lBT0k7SUFBQTtFdEVxNlBWOztFc0U1NlBNO0lBT0k7SUFBQTtFdEUwNlBWOztFc0VqN1BNO0lBT0k7SUFBQTtFdEUrNlBWOztFc0V0N1BNO0lBT0k7SUFBQTtFdEVvN1BWOztFc0UzN1BNO0lBT0k7SUFBQTtFdEV5N1BWOztFc0VoOFBNO0lBT0k7SUFBQTtFdEU4N1BWOztFc0VyOFBNO0lBT0k7SUFBQTtFdEVtOFBWOztFc0UxOFBNO0lBT0k7SUFBQTtFdEV3OFBWOztFc0UvOFBNO0lBT0k7RXRFNDhQVjs7RXNFbjlQTTtJQU9JO0V0RWc5UFY7O0VzRXY5UE07SUFPSTtFdEVvOVBWOztFc0UzOVBNO0lBT0k7RXRFdzlQVjs7RXNFLzlQTTtJQU9JO0V0RTQ5UFY7O0VzRW4rUE07SUFPSTtFdEVnK1BWOztFc0V2K1BNO0lBT0k7RXRFbytQVjs7RXNFMytQTTtJQU9JO0V0RXcrUFY7O0VzRS8rUE07SUFPSTtFdEU0K1BWOztFc0VuL1BNO0lBT0k7RXRFZy9QVjs7RXNFdi9QTTtJQU9JO0V0RW8vUFY7O0VzRTMvUE07SUFPSTtFdEV3L1BWOztFc0UvL1BNO0lBT0k7RXRFNC9QVjs7RXNFbmdRTTtJQU9JO0V0RWdnUVY7O0VzRXZnUU07SUFPSTtFdEVvZ1FWOztFc0UzZ1FNO0lBT0k7RXRFd2dRVjs7RXNFL2dRTTtJQU9JO0V0RTRnUVY7O0VzRW5oUU07SUFPSTtFdEVnaFFWOztFc0V2aFFNO0lBT0k7RXRFb2hRVjs7RXNFM2hRTTtJQU9JO0V0RXdoUVY7O0VzRS9oUU07SUFPSTtFdEU0aFFWOztFc0VuaVFNO0lBT0k7RXRFZ2lRVjs7RXNFdmlRTTtJQU9JO0V0RW9pUVY7O0VzRTNpUU07SUFPSTtFdEV3aVFWOztFc0UvaVFNO0lBT0k7RXRFNGlRVjs7RXNFbmpRTTtJQU9JO0V0RWdqUVY7O0VzRXZqUU07SUFPSTtFdEVvalFWOztFc0UzalFNO0lBT0k7RXRFd2pRVjs7RXNFL2pRTTtJQU9JO0V0RTRqUVY7O0VzRW5rUU07SUFPSTtFdEVna1FWOztFc0V2a1FNO0lBT0k7RXRFb2tRVjs7RXNFM2tRTTtJQU9JO0V0RXdrUVY7O0VzRS9rUU07SUFPSTtFdEU0a1FWOztFc0VubFFNO0lBT0k7RXRFZ2xRVjs7RXNFdmxRTTtJQU9JO0lBQUE7RXRFcWxRVjs7RXNFNWxRTTtJQU9JO0lBQUE7RXRFMGxRVjs7RXNFam1RTTtJQU9JO0lBQUE7RXRFK2xRVjs7RXNFdG1RTTtJQU9JO0lBQUE7RXRFb21RVjs7RXNFM21RTTtJQU9JO0lBQUE7RXRFeW1RVjs7RXNFaG5RTTtJQU9JO0lBQUE7RXRFOG1RVjs7RXNFcm5RTTtJQU9JO0lBQUE7RXRFbW5RVjs7RXNFMW5RTTtJQU9JO0lBQUE7RXRFd25RVjs7RXNFL25RTTtJQU9JO0lBQUE7RXRFNm5RVjs7RXNFcG9RTTtJQU9JO0lBQUE7RXRFa29RVjs7RXNFem9RTTtJQU9JO0lBQUE7RXRFdW9RVjs7RXNFOW9RTTtJQU9JO0lBQUE7RXRFNG9RVjs7RXNFbnBRTTtJQU9JO0V0RWdwUVY7O0VzRXZwUU07SUFPSTtFdEVvcFFWOztFc0UzcFFNO0lBT0k7RXRFd3BRVjs7RXNFL3BRTTtJQU9JO0V0RTRwUVY7O0VzRW5xUU07SUFPSTtFdEVncVFWOztFc0V2cVFNO0lBT0k7RXRFb3FRVjs7RXNFM3FRTTtJQU9JO0V0RXdxUVY7O0VzRS9xUU07SUFPSTtFdEU0cVFWOztFc0VuclFNO0lBT0k7RXRFZ3JRVjs7RXNFdnJRTTtJQU9JO0V0RW9yUVY7O0VzRTNyUU07SUFPSTtFdEV3clFWOztFc0UvclFNO0lBT0k7RXRFNHJRVjs7RXNFbnNRTTtJQU9JO0V0RWdzUVY7O0VzRXZzUU07SUFPSTtFdEVvc1FWOztFc0Uzc1FNO0lBT0k7RXRFd3NRVjs7RXNFL3NRTTtJQU9JO0V0RTRzUVY7O0VzRW50UU07SUFPSTtFdEVndFFWOztFc0V2dFFNO0lBT0k7RXRFb3RRVjs7RXNFM3RRTTtJQU9JO0V0RXd0UVY7O0VzRS90UU07SUFPSTtFdEU0dFFWOztFc0VudVFNO0lBT0k7RXRFZ3VRVjs7RXNFdnVRTTtJQU9JO0V0RW91UVY7O0VzRTN1UU07SUFPSTtFdEV3dVFWOztFc0UvdVFNO0lBT0k7RXRFNHVRVjs7RXNFbnZRTTtJQU9JO0V0RWd2UVY7O0VzRXZ2UU07SUFPSTtFdEVvdlFWOztFc0UzdlFNO0lBT0k7RXRFd3ZRVjtBQUNGO0FhaHdRSTtFeURBSTtJQU9JO0V0RTZ2UVY7O0VzRXB3UU07SUFPSTtFdEVpd1FWOztFc0V4d1FNO0lBT0k7RXRFcXdRVjs7RXNFNXdRTTtJQU9JO0V0RXl3UVY7O0VzRWh4UU07SUFPSTtFdEU2d1FWOztFc0VweFFNO0lBT0k7RXRFaXhRVjs7RXNFeHhRTTtJQU9JO0V0RXF4UVY7O0VzRTV4UU07SUFPSTtFdEV5eFFWOztFc0VoeVFNO0lBT0k7RXRFNnhRVjs7RXNFcHlRTTtJQU9JO0V0RWl5UVY7O0VzRXh5UU07SUFPSTtFdEVxeVFWOztFc0U1eVFNO0lBT0k7RXRFeXlRVjs7RXNFaHpRTTtJQU9JO0V0RTZ5UVY7O0VzRXB6UU07SUFPSTtFdEVpelFWOztFc0V4elFNO0lBT0k7RXRFcXpRVjs7RXNFNXpRTTtJQU9JO0V0RXl6UVY7O0VzRWgwUU07SUFPSTtFdEU2elFWOztFc0VwMFFNO0lBT0k7RXRFaTBRVjs7RXNFeDBRTTtJQU9JO0V0RXEwUVY7O0VzRTUwUU07SUFPSTtFdEV5MFFWOztFc0VoMVFNO0lBT0k7RXRFNjBRVjs7RXNFcDFRTTtJQU9JO0V0RWkxUVY7O0VzRXgxUU07SUFPSTtFdEVxMVFWOztFc0U1MVFNO0lBT0k7RXRFeTFRVjs7RXNFaDJRTTtJQU9JO0V0RTYxUVY7O0VzRXAyUU07SUFPSTtFdEVpMlFWOztFc0V4MlFNO0lBT0k7RXRFcTJRVjs7RXNFNTJRTTtJQU9JO0V0RXkyUVY7O0VzRWgzUU07SUFPSTtFdEU2MlFWOztFc0VwM1FNO0lBT0k7RXRFaTNRVjs7RXNFeDNRTTtJQU9JO0V0RXEzUVY7O0VzRTUzUU07SUFPSTtFdEV5M1FWOztFc0VoNFFNO0lBT0k7RXRFNjNRVjs7RXNFcDRRTTtJQU9JO0V0RWk0UVY7O0VzRXg0UU07SUFPSTtFdEVxNFFWOztFc0U1NFFNO0lBT0k7RXRFeTRRVjs7RXNFaDVRTTtJQU9JO0V0RTY0UVY7O0VzRXA1UU07SUFPSTtFdEVpNVFWOztFc0V4NVFNO0lBT0k7RXRFcTVRVjs7RXNFNTVRTTtJQU9JO0V0RXk1UVY7O0VzRWg2UU07SUFPSTtFdEU2NVFWOztFc0VwNlFNO0lBT0k7RXRFaTZRVjs7RXNFeDZRTTtJQU9JO0V0RXE2UVY7O0VzRTU2UU07SUFPSTtFdEV5NlFWOztFc0VoN1FNO0lBT0k7RXRFNjZRVjs7RXNFcDdRTTtJQU9JO0V0RWk3UVY7O0VzRXg3UU07SUFPSTtFdEVxN1FWOztFc0U1N1FNO0lBT0k7RXRFeTdRVjs7RXNFaDhRTTtJQU9JO0V0RTY3UVY7O0VzRXA4UU07SUFPSTtFdEVpOFFWOztFc0V4OFFNO0lBT0k7RXRFcThRVjs7RXNFNThRTTtJQU9JO0V0RXk4UVY7O0VzRWg5UU07SUFPSTtFdEU2OFFWOztFc0VwOVFNO0lBT0k7RXRFaTlRVjs7RXNFeDlRTTtJQU9JO0V0RXE5UVY7O0VzRTU5UU07SUFPSTtFdEV5OVFWOztFc0VoK1FNO0lBT0k7RXRFNjlRVjs7RXNFcCtRTTtJQU9JO0V0RWkrUVY7O0VzRXgrUU07SUFPSTtFdEVxK1FWOztFc0U1K1FNO0lBT0k7RXRFeStRVjs7RXNFaC9RTTtJQU9JO0V0RTYrUVY7O0VzRXAvUU07SUFPSTtFdEVpL1FWOztFc0V4L1FNO0lBT0k7RXRFcS9RVjs7RXNFNS9RTTtJQU9JO0V0RXkvUVY7O0VzRWhnUk07SUFPSTtFdEU2L1FWOztFc0VwZ1JNO0lBT0k7RXRFaWdSVjs7RXNFeGdSTTtJQU9JO0V0RXFnUlY7O0VzRTVnUk07SUFPSTtFdEV5Z1JWOztFc0VoaFJNO0lBT0k7RXRFNmdSVjs7RXNFcGhSTTtJQU9JO0lBQUE7RXRFa2hSVjs7RXNFemhSTTtJQU9JO0lBQUE7RXRFdWhSVjs7RXNFOWhSTTtJQU9JO0lBQUE7RXRFNGhSVjs7RXNFbmlSTTtJQU9JO0lBQUE7RXRFaWlSVjs7RXNFeGlSTTtJQU9JO0lBQUE7RXRFc2lSVjs7RXNFN2lSTTtJQU9JO0lBQUE7RXRFMmlSVjs7RXNFbGpSTTtJQU9JO0lBQUE7RXRFZ2pSVjs7RXNFdmpSTTtJQU9JO0lBQUE7RXRFcWpSVjs7RXNFNWpSTTtJQU9JO0lBQUE7RXRFMGpSVjs7RXNFamtSTTtJQU9JO0lBQUE7RXRFK2pSVjs7RXNFdGtSTTtJQU9JO0lBQUE7RXRFb2tSVjs7RXNFM2tSTTtJQU9JO0lBQUE7RXRFeWtSVjs7RXNFaGxSTTtJQU9JO0lBQUE7RXRFOGtSVjs7RXNFcmxSTTtJQU9JO0lBQUE7RXRFbWxSVjs7RXNFMWxSTTtJQU9JO0V0RXVsUlY7O0VzRTlsUk07SUFPSTtFdEUybFJWOztFc0VsbVJNO0lBT0k7RXRFK2xSVjs7RXNFdG1STTtJQU9JO0V0RW1tUlY7O0VzRTFtUk07SUFPSTtFdEV1bVJWOztFc0U5bVJNO0lBT0k7RXRFMm1SVjs7RXNFbG5STTtJQU9JO0V0RSttUlY7O0VzRXRuUk07SUFPSTtFdEVtblJWOztFc0UxblJNO0lBT0k7RXRFdW5SVjs7RXNFOW5STTtJQU9JO0V0RTJuUlY7O0VzRWxvUk07SUFPSTtFdEUrblJWOztFc0V0b1JNO0lBT0k7RXRFbW9SVjs7RXNFMW9STTtJQU9JO0V0RXVvUlY7O0VzRTlvUk07SUFPSTtFdEUyb1JWOztFc0VscFJNO0lBT0k7RXRFK29SVjs7RXNFdHBSTTtJQU9JO0V0RW1wUlY7O0VzRTFwUk07SUFPSTtFdEV1cFJWOztFc0U5cFJNO0lBT0k7RXRFMnBSVjs7RXNFbHFSTTtJQU9JO0V0RStwUlY7O0VzRXRxUk07SUFPSTtFdEVtcVJWOztFc0UxcVJNO0lBT0k7RXRFdXFSVjs7RXNFOXFSTTtJQU9JO0V0RTJxUlY7O0VzRWxyUk07SUFPSTtFdEUrcVJWOztFc0V0clJNO0lBT0k7RXRFbXJSVjs7RXNFMXJSTTtJQU9JO0V0RXVyUlY7O0VzRTlyUk07SUFPSTtFdEUyclJWOztFc0Vsc1JNO0lBT0k7RXRFK3JSVjs7RXNFdHNSTTtJQU9JO0V0RW1zUlY7O0VzRTFzUk07SUFPSTtFdEV1c1JWOztFc0U5c1JNO0lBT0k7RXRFMnNSVjs7RXNFbHRSTTtJQU9JO0V0RStzUlY7O0VzRXR0Uk07SUFPSTtFdEVtdFJWOztFc0UxdFJNO0lBT0k7RXRFdXRSVjs7RXNFOXRSTTtJQU9JO0V0RTJ0UlY7O0VzRWx1Uk07SUFPSTtJQUFBO0V0RWd1UlY7O0VzRXZ1Uk07SUFPSTtJQUFBO0V0RXF1UlY7O0VzRTV1Uk07SUFPSTtJQUFBO0V0RTB1UlY7O0VzRWp2Uk07SUFPSTtJQUFBO0V0RSt1UlY7O0VzRXR2Uk07SUFPSTtJQUFBO0V0RW92UlY7O0VzRTN2Uk07SUFPSTtJQUFBO0V0RXl2UlY7O0VzRWh3Uk07SUFPSTtJQUFBO0V0RTh2UlY7O0VzRXJ3Uk07SUFPSTtJQUFBO0V0RW13UlY7O0VzRTF3Uk07SUFPSTtJQUFBO0V0RXd3UlY7O0VzRS93Uk07SUFPSTtJQUFBO0V0RTZ3UlY7O0VzRXB4Uk07SUFPSTtJQUFBO0V0RWt4UlY7O0VzRXp4Uk07SUFPSTtJQUFBO0V0RXV4UlY7O0VzRTl4Uk07SUFPSTtFdEUyeFJWOztFc0VseVJNO0lBT0k7RXRFK3hSVjs7RXNFdHlSTTtJQU9JO0V0RW15UlY7O0VzRTF5Uk07SUFPSTtFdEV1eVJWOztFc0U5eVJNO0lBT0k7RXRFMnlSVjs7RXNFbHpSTTtJQU9JO0V0RSt5UlY7O0VzRXR6Uk07SUFPSTtFdEVtelJWOztFc0UxelJNO0lBT0k7RXRFdXpSVjs7RXNFOXpSTTtJQU9JO0V0RTJ6UlY7O0VzRWwwUk07SUFPSTtFdEUrelJWOztFc0V0MFJNO0lBT0k7RXRFbTBSVjs7RXNFMTBSTTtJQU9JO0V0RXUwUlY7O0VzRTkwUk07SUFPSTtFdEUyMFJWOztFc0VsMVJNO0lBT0k7RXRFKzBSVjs7RXNFdDFSTTtJQU9JO0V0RW0xUlY7O0VzRTExUk07SUFPSTtFdEV1MVJWOztFc0U5MVJNO0lBT0k7RXRFMjFSVjs7RXNFbDJSTTtJQU9JO0V0RSsxUlY7O0VzRXQyUk07SUFPSTtFdEVtMlJWOztFc0UxMlJNO0lBT0k7RXRFdTJSVjs7RXNFOTJSTTtJQU9JO0V0RTIyUlY7O0VzRWwzUk07SUFPSTtFdEUrMlJWOztFc0V0M1JNO0lBT0k7RXRFbTNSVjs7RXNFMTNSTTtJQU9JO0V0RXUzUlY7O0VzRTkzUk07SUFPSTtFdEUyM1JWOztFc0VsNFJNO0lBT0k7RXRFKzNSVjs7RXNFdDRSTTtJQU9JO0V0RW00UlY7QUFDRjtBYTM0Ukk7RXlEQUk7SUFPSTtFdEV3NFJWOztFc0UvNFJNO0lBT0k7RXRFNDRSVjs7RXNFbjVSTTtJQU9JO0V0RWc1UlY7O0VzRXY1Uk07SUFPSTtFdEVvNVJWOztFc0UzNVJNO0lBT0k7RXRFdzVSVjs7RXNFLzVSTTtJQU9JO0V0RTQ1UlY7O0VzRW42Uk07SUFPSTtFdEVnNlJWOztFc0V2NlJNO0lBT0k7RXRFbzZSVjs7RXNFMzZSTTtJQU9JO0V0RXc2UlY7O0VzRS82Uk07SUFPSTtFdEU0NlJWOztFc0VuN1JNO0lBT0k7RXRFZzdSVjs7RXNFdjdSTTtJQU9JO0V0RW83UlY7O0VzRTM3Uk07SUFPSTtFdEV3N1JWOztFc0UvN1JNO0lBT0k7RXRFNDdSVjs7RXNFbjhSTTtJQU9JO0V0RWc4UlY7O0VzRXY4Uk07SUFPSTtFdEVvOFJWOztFc0UzOFJNO0lBT0k7RXRFdzhSVjs7RXNFLzhSTTtJQU9JO0V0RTQ4UlY7O0VzRW45Uk07SUFPSTtFdEVnOVJWOztFc0V2OVJNO0lBT0k7RXRFbzlSVjs7RXNFMzlSTTtJQU9JO0V0RXc5UlY7O0VzRS85Uk07SUFPSTtFdEU0OVJWOztFc0VuK1JNO0lBT0k7RXRFZytSVjs7RXNFditSTTtJQU9JO0V0RW8rUlY7O0VzRTMrUk07SUFPSTtFdEV3K1JWOztFc0UvK1JNO0lBT0k7RXRFNCtSVjs7RXNFbi9STTtJQU9JO0V0RWcvUlY7O0VzRXYvUk07SUFPSTtFdEVvL1JWOztFc0UzL1JNO0lBT0k7RXRFdy9SVjs7RXNFLy9STTtJQU9JO0V0RTQvUlY7O0VzRW5nU007SUFPSTtFdEVnZ1NWOztFc0V2Z1NNO0lBT0k7RXRFb2dTVjs7RXNFM2dTTTtJQU9JO0V0RXdnU1Y7O0VzRS9nU007SUFPSTtFdEU0Z1NWOztFc0VuaFNNO0lBT0k7RXRFZ2hTVjs7RXNFdmhTTTtJQU9JO0V0RW9oU1Y7O0VzRTNoU007SUFPSTtFdEV3aFNWOztFc0UvaFNNO0lBT0k7RXRFNGhTVjs7RXNFbmlTTTtJQU9JO0V0RWdpU1Y7O0VzRXZpU007SUFPSTtFdEVvaVNWOztFc0UzaVNNO0lBT0k7RXRFd2lTVjs7RXNFL2lTTTtJQU9JO0V0RTRpU1Y7O0VzRW5qU007SUFPSTtFdEVnalNWOztFc0V2alNNO0lBT0k7RXRFb2pTVjs7RXNFM2pTTTtJQU9JO0V0RXdqU1Y7O0VzRS9qU007SUFPSTtFdEU0alNWOztFc0Vua1NNO0lBT0k7RXRFZ2tTVjs7RXNFdmtTTTtJQU9JO0V0RW9rU1Y7O0VzRTNrU007SUFPSTtFdEV3a1NWOztFc0Uva1NNO0lBT0k7RXRFNGtTVjs7RXNFbmxTTTtJQU9JO0V0RWdsU1Y7O0VzRXZsU007SUFPSTtFdEVvbFNWOztFc0UzbFNNO0lBT0k7RXRFd2xTVjs7RXNFL2xTTTtJQU9JO0V0RTRsU1Y7O0VzRW5tU007SUFPSTtFdEVnbVNWOztFc0V2bVNNO0lBT0k7RXRFb21TVjs7RXNFM21TTTtJQU9JO0V0RXdtU1Y7O0VzRS9tU007SUFPSTtFdEU0bVNWOztFc0VublNNO0lBT0k7RXRFZ25TVjs7RXNFdm5TTTtJQU9JO0V0RW9uU1Y7O0VzRTNuU007SUFPSTtFdEV3blNWOztFc0UvblNNO0lBT0k7RXRFNG5TVjs7RXNFbm9TTTtJQU9JO0V0RWdvU1Y7O0VzRXZvU007SUFPSTtFdEVvb1NWOztFc0Uzb1NNO0lBT0k7RXRFd29TVjs7RXNFL29TTTtJQU9JO0V0RTRvU1Y7O0VzRW5wU007SUFPSTtFdEVncFNWOztFc0V2cFNNO0lBT0k7RXRFb3BTVjs7RXNFM3BTTTtJQU9JO0V0RXdwU1Y7O0VzRS9wU007SUFPSTtJQUFBO0V0RTZwU1Y7O0VzRXBxU007SUFPSTtJQUFBO0V0RWtxU1Y7O0VzRXpxU007SUFPSTtJQUFBO0V0RXVxU1Y7O0VzRTlxU007SUFPSTtJQUFBO0V0RTRxU1Y7O0VzRW5yU007SUFPSTtJQUFBO0V0RWlyU1Y7O0VzRXhyU007SUFPSTtJQUFBO0V0RXNyU1Y7O0VzRTdyU007SUFPSTtJQUFBO0V0RTJyU1Y7O0VzRWxzU007SUFPSTtJQUFBO0V0RWdzU1Y7O0VzRXZzU007SUFPSTtJQUFBO0V0RXFzU1Y7O0VzRTVzU007SUFPSTtJQUFBO0V0RTBzU1Y7O0VzRWp0U007SUFPSTtJQUFBO0V0RStzU1Y7O0VzRXR0U007SUFPSTtJQUFBO0V0RW90U1Y7O0VzRTN0U007SUFPSTtJQUFBO0V0RXl0U1Y7O0VzRWh1U007SUFPSTtJQUFBO0V0RTh0U1Y7O0VzRXJ1U007SUFPSTtFdEVrdVNWOztFc0V6dVNNO0lBT0k7RXRFc3VTVjs7RXNFN3VTTTtJQU9JO0V0RTB1U1Y7O0VzRWp2U007SUFPSTtFdEU4dVNWOztFc0VydlNNO0lBT0k7RXRFa3ZTVjs7RXNFenZTTTtJQU9JO0V0RXN2U1Y7O0VzRTd2U007SUFPSTtFdEUwdlNWOztFc0Vqd1NNO0lBT0k7RXRFOHZTVjs7RXNFcndTTTtJQU9JO0V0RWt3U1Y7O0VzRXp3U007SUFPSTtFdEVzd1NWOztFc0U3d1NNO0lBT0k7RXRFMHdTVjs7RXNFanhTTTtJQU9JO0V0RTh3U1Y7O0VzRXJ4U007SUFPSTtFdEVreFNWOztFc0V6eFNNO0lBT0k7RXRFc3hTVjs7RXNFN3hTTTtJQU9JO0V0RTB4U1Y7O0VzRWp5U007SUFPSTtFdEU4eFNWOztFc0VyeVNNO0lBT0k7RXRFa3lTVjs7RXNFenlTTTtJQU9JO0V0RXN5U1Y7O0VzRTd5U007SUFPSTtFdEUweVNWOztFc0VqelNNO0lBT0k7RXRFOHlTVjs7RXNFcnpTTTtJQU9JO0V0RWt6U1Y7O0VzRXp6U007SUFPSTtFdEVzelNWOztFc0U3elNNO0lBT0k7RXRFMHpTVjs7RXNFajBTTTtJQU9JO0V0RTh6U1Y7O0VzRXIwU007SUFPSTtFdEVrMFNWOztFc0V6MFNNO0lBT0k7RXRFczBTVjs7RXNFNzBTTTtJQU9JO0V0RTAwU1Y7O0VzRWoxU007SUFPSTtFdEU4MFNWOztFc0VyMVNNO0lBT0k7RXRFazFTVjs7RXNFejFTTTtJQU9JO0V0RXMxU1Y7O0VzRTcxU007SUFPSTtFdEUwMVNWOztFc0VqMlNNO0lBT0k7RXRFODFTVjs7RXNFcjJTTTtJQU9JO0V0RWsyU1Y7O0VzRXoyU007SUFPSTtFdEVzMlNWOztFc0U3MlNNO0lBT0k7SUFBQTtFdEUyMlNWOztFc0VsM1NNO0lBT0k7SUFBQTtFdEVnM1NWOztFc0V2M1NNO0lBT0k7SUFBQTtFdEVxM1NWOztFc0U1M1NNO0lBT0k7SUFBQTtFdEUwM1NWOztFc0VqNFNNO0lBT0k7SUFBQTtFdEUrM1NWOztFc0V0NFNNO0lBT0k7SUFBQTtFdEVvNFNWOztFc0UzNFNNO0lBT0k7SUFBQTtFdEV5NFNWOztFc0VoNVNNO0lBT0k7SUFBQTtFdEU4NFNWOztFc0VyNVNNO0lBT0k7SUFBQTtFdEVtNVNWOztFc0UxNVNNO0lBT0k7SUFBQTtFdEV3NVNWOztFc0UvNVNNO0lBT0k7SUFBQTtFdEU2NVNWOztFc0VwNlNNO0lBT0k7SUFBQTtFdEVrNlNWOztFc0V6NlNNO0lBT0k7RXRFczZTVjs7RXNFNzZTTTtJQU9JO0V0RTA2U1Y7O0VzRWo3U007SUFPSTtFdEU4NlNWOztFc0VyN1NNO0lBT0k7RXRFazdTVjs7RXNFejdTTTtJQU9JO0V0RXM3U1Y7O0VzRTc3U007SUFPSTtFdEUwN1NWOztFc0VqOFNNO0lBT0k7RXRFODdTVjs7RXNFcjhTTTtJQU9JO0V0RWs4U1Y7O0VzRXo4U007SUFPSTtFdEVzOFNWOztFc0U3OFNNO0lBT0k7RXRFMDhTVjs7RXNFajlTTTtJQU9JO0V0RTg4U1Y7O0VzRXI5U007SUFPSTtFdEVrOVNWOztFc0V6OVNNO0lBT0k7RXRFczlTVjs7RXNFNzlTTTtJQU9JO0V0RTA5U1Y7O0VzRWorU007SUFPSTtFdEU4OVNWOztFc0VyK1NNO0lBT0k7RXRFaytTVjs7RXNFeitTTTtJQU9JO0V0RXMrU1Y7O0VzRTcrU007SUFPSTtFdEUwK1NWOztFc0VqL1NNO0lBT0k7RXRFOCtTVjs7RXNFci9TTTtJQU9JO0V0RWsvU1Y7O0VzRXovU007SUFPSTtFdEVzL1NWOztFc0U3L1NNO0lBT0k7RXRFMC9TVjs7RXNFamdUTTtJQU9JO0V0RTgvU1Y7O0VzRXJnVE07SUFPSTtFdEVrZ1RWOztFc0V6Z1RNO0lBT0k7RXRFc2dUVjs7RXNFN2dUTTtJQU9JO0V0RTBnVFY7O0VzRWpoVE07SUFPSTtFdEU4Z1RWO0FBQ0Y7QWF0aFRJO0V5REFJO0lBT0k7RXRFbWhUVjs7RXNFMWhUTTtJQU9JO0V0RXVoVFY7O0VzRTloVE07SUFPSTtFdEUyaFRWOztFc0VsaVRNO0lBT0k7RXRFK2hUVjs7RXNFdGlUTTtJQU9JO0V0RW1pVFY7O0VzRTFpVE07SUFPSTtFdEV1aVRWOztFc0U5aVRNO0lBT0k7RXRFMmlUVjs7RXNFbGpUTTtJQU9JO0V0RStpVFY7O0VzRXRqVE07SUFPSTtFdEVtalRWOztFc0UxalRNO0lBT0k7RXRFdWpUVjs7RXNFOWpUTTtJQU9JO0V0RTJqVFY7O0VzRWxrVE07SUFPSTtFdEUralRWOztFc0V0a1RNO0lBT0k7RXRFbWtUVjs7RXNFMWtUTTtJQU9JO0V0RXVrVFY7O0VzRTlrVE07SUFPSTtFdEUya1RWOztFc0VsbFRNO0lBT0k7RXRFK2tUVjs7RXNFdGxUTTtJQU9JO0V0RW1sVFY7O0VzRTFsVE07SUFPSTtFdEV1bFRWOztFc0U5bFRNO0lBT0k7RXRFMmxUVjs7RXNFbG1UTTtJQU9JO0V0RStsVFY7O0VzRXRtVE07SUFPSTtFdEVtbVRWOztFc0UxbVRNO0lBT0k7RXRFdW1UVjs7RXNFOW1UTTtJQU9JO0V0RTJtVFY7O0VzRWxuVE07SUFPSTtFdEUrbVRWOztFc0V0blRNO0lBT0k7RXRFbW5UVjs7RXNFMW5UTTtJQU9JO0V0RXVuVFY7O0VzRTluVE07SUFPSTtFdEUyblRWOztFc0Vsb1RNO0lBT0k7RXRFK25UVjs7RXNFdG9UTTtJQU9JO0V0RW1vVFY7O0VzRTFvVE07SUFPSTtFdEV1b1RWOztFc0U5b1RNO0lBT0k7RXRFMm9UVjs7RXNFbHBUTTtJQU9JO0V0RStvVFY7O0VzRXRwVE07SUFPSTtFdEVtcFRWOztFc0UxcFRNO0lBT0k7RXRFdXBUVjs7RXNFOXBUTTtJQU9JO0V0RTJwVFY7O0VzRWxxVE07SUFPSTtFdEUrcFRWOztFc0V0cVRNO0lBT0k7RXRFbXFUVjs7RXNFMXFUTTtJQU9JO0V0RXVxVFY7O0VzRTlxVE07SUFPSTtFdEUycVRWOztFc0VsclRNO0lBT0k7RXRFK3FUVjs7RXNFdHJUTTtJQU9JO0V0RW1yVFY7O0VzRTFyVE07SUFPSTtFdEV1clRWOztFc0U5clRNO0lBT0k7RXRFMnJUVjs7RXNFbHNUTTtJQU9JO0V0RStyVFY7O0VzRXRzVE07SUFPSTtFdEVtc1RWOztFc0Uxc1RNO0lBT0k7RXRFdXNUVjs7RXNFOXNUTTtJQU9JO0V0RTJzVFY7O0VzRWx0VE07SUFPSTtFdEUrc1RWOztFc0V0dFRNO0lBT0k7RXRFbXRUVjs7RXNFMXRUTTtJQU9JO0V0RXV0VFY7O0VzRTl0VE07SUFPSTtFdEUydFRWOztFc0VsdVRNO0lBT0k7RXRFK3RUVjs7RXNFdHVUTTtJQU9JO0V0RW11VFY7O0VzRTF1VE07SUFPSTtFdEV1dVRWOztFc0U5dVRNO0lBT0k7RXRFMnVUVjs7RXNFbHZUTTtJQU9JO0V0RSt1VFY7O0VzRXR2VE07SUFPSTtFdEVtdlRWOztFc0UxdlRNO0lBT0k7RXRFdXZUVjs7RXNFOXZUTTtJQU9JO0V0RTJ2VFY7O0VzRWx3VE07SUFPSTtFdEUrdlRWOztFc0V0d1RNO0lBT0k7RXRFbXdUVjs7RXNFMXdUTTtJQU9JO0V0RXV3VFY7O0VzRTl3VE07SUFPSTtFdEUyd1RWOztFc0VseFRNO0lBT0k7RXRFK3dUVjs7RXNFdHhUTTtJQU9JO0V0RW14VFY7O0VzRTF4VE07SUFPSTtFdEV1eFRWOztFc0U5eFRNO0lBT0k7RXRFMnhUVjs7RXNFbHlUTTtJQU9JO0V0RSt4VFY7O0VzRXR5VE07SUFPSTtFdEVteVRWOztFc0UxeVRNO0lBT0k7SUFBQTtFdEV3eVRWOztFc0UveVRNO0lBT0k7SUFBQTtFdEU2eVRWOztFc0VwelRNO0lBT0k7SUFBQTtFdEVrelRWOztFc0V6elRNO0lBT0k7SUFBQTtFdEV1elRWOztFc0U5elRNO0lBT0k7SUFBQTtFdEU0elRWOztFc0VuMFRNO0lBT0k7SUFBQTtFdEVpMFRWOztFc0V4MFRNO0lBT0k7SUFBQTtFdEVzMFRWOztFc0U3MFRNO0lBT0k7SUFBQTtFdEUyMFRWOztFc0VsMVRNO0lBT0k7SUFBQTtFdEVnMVRWOztFc0V2MVRNO0lBT0k7SUFBQTtFdEVxMVRWOztFc0U1MVRNO0lBT0k7SUFBQTtFdEUwMVRWOztFc0VqMlRNO0lBT0k7SUFBQTtFdEUrMVRWOztFc0V0MlRNO0lBT0k7SUFBQTtFdEVvMlRWOztFc0UzMlRNO0lBT0k7SUFBQTtFdEV5MlRWOztFc0VoM1RNO0lBT0k7RXRFNjJUVjs7RXNFcDNUTTtJQU9JO0V0RWkzVFY7O0VzRXgzVE07SUFPSTtFdEVxM1RWOztFc0U1M1RNO0lBT0k7RXRFeTNUVjs7RXNFaDRUTTtJQU9JO0V0RTYzVFY7O0VzRXA0VE07SUFPSTtFdEVpNFRWOztFc0V4NFRNO0lBT0k7RXRFcTRUVjs7RXNFNTRUTTtJQU9JO0V0RXk0VFY7O0VzRWg1VE07SUFPSTtFdEU2NFRWOztFc0VwNVRNO0lBT0k7RXRFaTVUVjs7RXNFeDVUTTtJQU9JO0V0RXE1VFY7O0VzRTU1VE07SUFPSTtFdEV5NVRWOztFc0VoNlRNO0lBT0k7RXRFNjVUVjs7RXNFcDZUTTtJQU9JO0V0RWk2VFY7O0VzRXg2VE07SUFPSTtFdEVxNlRWOztFc0U1NlRNO0lBT0k7RXRFeTZUVjs7RXNFaDdUTTtJQU9JO0V0RTY2VFY7O0VzRXA3VE07SUFPSTtFdEVpN1RWOztFc0V4N1RNO0lBT0k7RXRFcTdUVjs7RXNFNTdUTTtJQU9JO0V0RXk3VFY7O0VzRWg4VE07SUFPSTtFdEU2N1RWOztFc0VwOFRNO0lBT0k7RXRFaThUVjs7RXNFeDhUTTtJQU9JO0V0RXE4VFY7O0VzRTU4VE07SUFPSTtFdEV5OFRWOztFc0VoOVRNO0lBT0k7RXRFNjhUVjs7RXNFcDlUTTtJQU9JO0V0RWk5VFY7O0VzRXg5VE07SUFPSTtFdEVxOVRWOztFc0U1OVRNO0lBT0k7RXRFeTlUVjs7RXNFaCtUTTtJQU9JO0V0RTY5VFY7O0VzRXArVE07SUFPSTtFdEVpK1RWOztFc0V4K1RNO0lBT0k7RXRFcStUVjs7RXNFNStUTTtJQU9JO0V0RXkrVFY7O0VzRWgvVE07SUFPSTtFdEU2K1RWOztFc0VwL1RNO0lBT0k7RXRFaS9UVjs7RXNFeC9UTTtJQU9JO0lBQUE7RXRFcy9UVjs7RXNFNy9UTTtJQU9JO0lBQUE7RXRFMi9UVjs7RXNFbGdVTTtJQU9JO0lBQUE7RXRFZ2dVVjs7RXNFdmdVTTtJQU9JO0lBQUE7RXRFcWdVVjs7RXNFNWdVTTtJQU9JO0lBQUE7RXRFMGdVVjs7RXNFamhVTTtJQU9JO0lBQUE7RXRFK2dVVjs7RXNFdGhVTTtJQU9JO0lBQUE7RXRFb2hVVjs7RXNFM2hVTTtJQU9JO0lBQUE7RXRFeWhVVjs7RXNFaGlVTTtJQU9JO0lBQUE7RXRFOGhVVjs7RXNFcmlVTTtJQU9JO0lBQUE7RXRFbWlVVjs7RXNFMWlVTTtJQU9JO0lBQUE7RXRFd2lVVjs7RXNFL2lVTTtJQU9JO0lBQUE7RXRFNmlVVjs7RXNFcGpVTTtJQU9JO0V0RWlqVVY7O0VzRXhqVU07SUFPSTtFdEVxalVWOztFc0U1alVNO0lBT0k7RXRFeWpVVjs7RXNFaGtVTTtJQU9JO0V0RTZqVVY7O0VzRXBrVU07SUFPSTtFdEVpa1VWOztFc0V4a1VNO0lBT0k7RXRFcWtVVjs7RXNFNWtVTTtJQU9JO0V0RXlrVVY7O0VzRWhsVU07SUFPSTtFdEU2a1VWOztFc0VwbFVNO0lBT0k7RXRFaWxVVjs7RXNFeGxVTTtJQU9JO0V0RXFsVVY7O0VzRTVsVU07SUFPSTtFdEV5bFVWOztFc0VobVVNO0lBT0k7RXRFNmxVVjs7RXNFcG1VTTtJQU9JO0V0RWltVVY7O0VzRXhtVU07SUFPSTtFdEVxbVVWOztFc0U1bVVNO0lBT0k7RXRFeW1VVjs7RXNFaG5VTTtJQU9JO0V0RTZtVVY7O0VzRXBuVU07SUFPSTtFdEVpblVWOztFc0V4blVNO0lBT0k7RXRFcW5VVjs7RXNFNW5VTTtJQU9JO0V0RXluVVY7O0VzRWhvVU07SUFPSTtFdEU2blVWOztFc0Vwb1VNO0lBT0k7RXRFaW9VVjs7RXNFeG9VTTtJQU9JO0V0RXFvVVY7O0VzRTVvVU07SUFPSTtFdEV5b1VWOztFc0VocFVNO0lBT0k7RXRFNm9VVjs7RXNFcHBVTTtJQU9JO0V0RWlwVVY7O0VzRXhwVU07SUFPSTtFdEVxcFVWOztFc0U1cFVNO0lBT0k7RXRFeXBVVjtBQUNGO0FhanFVSTtFeURBSTtJQU9JO0V0RThwVVY7O0VzRXJxVU07SUFPSTtFdEVrcVVWOztFc0V6cVVNO0lBT0k7RXRFc3FVVjs7RXNFN3FVTTtJQU9JO0V0RTBxVVY7O0VzRWpyVU07SUFPSTtFdEU4cVVWOztFc0VyclVNO0lBT0k7RXRFa3JVVjs7RXNFenJVTTtJQU9JO0V0RXNyVVY7O0VzRTdyVU07SUFPSTtFdEUwclVWOztFc0Vqc1VNO0lBT0k7RXRFOHJVVjs7RXNFcnNVTTtJQU9JO0V0RWtzVVY7O0VzRXpzVU07SUFPSTtFdEVzc1VWOztFc0U3c1VNO0lBT0k7RXRFMHNVVjs7RXNFanRVTTtJQU9JO0V0RThzVVY7O0VzRXJ0VU07SUFPSTtFdEVrdFVWOztFc0V6dFVNO0lBT0k7RXRFc3RVVjs7RXNFN3RVTTtJQU9JO0V0RTB0VVY7O0VzRWp1VU07SUFPSTtFdEU4dFVWOztFc0VydVVNO0lBT0k7RXRFa3VVVjs7RXNFenVVTTtJQU9JO0V0RXN1VVY7O0VzRTd1VU07SUFPSTtFdEUwdVVWOztFc0VqdlVNO0lBT0k7RXRFOHVVVjs7RXNFcnZVTTtJQU9JO0V0RWt2VVY7O0VzRXp2VU07SUFPSTtFdEVzdlVWOztFc0U3dlVNO0lBT0k7RXRFMHZVVjs7RXNFandVTTtJQU9JO0V0RTh2VVY7O0VzRXJ3VU07SUFPSTtFdEVrd1VWOztFc0V6d1VNO0lBT0k7RXRFc3dVVjs7RXNFN3dVTTtJQU9JO0V0RTB3VVY7O0VzRWp4VU07SUFPSTtFdEU4d1VWOztFc0VyeFVNO0lBT0k7RXRFa3hVVjs7RXNFenhVTTtJQU9JO0V0RXN4VVY7O0VzRTd4VU07SUFPSTtFdEUweFVWOztFc0VqeVVNO0lBT0k7RXRFOHhVVjs7RXNFcnlVTTtJQU9JO0V0RWt5VVY7O0VzRXp5VU07SUFPSTtFdEVzeVVWOztFc0U3eVVNO0lBT0k7RXRFMHlVVjs7RXNFanpVTTtJQU9JO0V0RTh5VVY7O0VzRXJ6VU07SUFPSTtFdEVrelVWOztFc0V6elVNO0lBT0k7RXRFc3pVVjs7RXNFN3pVTTtJQU9JO0V0RTB6VVY7O0VzRWowVU07SUFPSTtFdEU4elVWOztFc0VyMFVNO0lBT0k7RXRFazBVVjs7RXNFejBVTTtJQU9JO0V0RXMwVVY7O0VzRTcwVU07SUFPSTtFdEUwMFVWOztFc0VqMVVNO0lBT0k7RXRFODBVVjs7RXNFcjFVTTtJQU9JO0V0RWsxVVY7O0VzRXoxVU07SUFPSTtFdEVzMVVWOztFc0U3MVVNO0lBT0k7RXRFMDFVVjs7RXNFajJVTTtJQU9JO0V0RTgxVVY7O0VzRXIyVU07SUFPSTtFdEVrMlVWOztFc0V6MlVNO0lBT0k7RXRFczJVVjs7RXNFNzJVTTtJQU9JO0V0RTAyVVY7O0VzRWozVU07SUFPSTtFdEU4MlVWOztFc0VyM1VNO0lBT0k7RXRFazNVVjs7RXNFejNVTTtJQU9JO0V0RXMzVVY7O0VzRTczVU07SUFPSTtFdEUwM1VWOztFc0VqNFVNO0lBT0k7RXRFODNVVjs7RXNFcjRVTTtJQU9JO0V0RWs0VVY7O0VzRXo0VU07SUFPSTtFdEVzNFVWOztFc0U3NFVNO0lBT0k7RXRFMDRVVjs7RXNFajVVTTtJQU9JO0V0RTg0VVY7O0VzRXI1VU07SUFPSTtFdEVrNVVWOztFc0V6NVVNO0lBT0k7RXRFczVVVjs7RXNFNzVVTTtJQU9JO0V0RTA1VVY7O0VzRWo2VU07SUFPSTtFdEU4NVVWOztFc0VyNlVNO0lBT0k7RXRFazZVVjs7RXNFejZVTTtJQU9JO0V0RXM2VVY7O0VzRTc2VU07SUFPSTtFdEUwNlVWOztFc0VqN1VNO0lBT0k7RXRFODZVVjs7RXNFcjdVTTtJQU9JO0lBQUE7RXRFbTdVVjs7RXNFMTdVTTtJQU9JO0lBQUE7RXRFdzdVVjs7RXNFLzdVTTtJQU9JO0lBQUE7RXRFNjdVVjs7RXNFcDhVTTtJQU9JO0lBQUE7RXRFazhVVjs7RXNFejhVTTtJQU9JO0lBQUE7RXRFdThVVjs7RXNFOThVTTtJQU9JO0lBQUE7RXRFNDhVVjs7RXNFbjlVTTtJQU9JO0lBQUE7RXRFaTlVVjs7RXNFeDlVTTtJQU9JO0lBQUE7RXRFczlVVjs7RXNFNzlVTTtJQU9JO0lBQUE7RXRFMjlVVjs7RXNFbCtVTTtJQU9JO0lBQUE7RXRFZytVVjs7RXNFditVTTtJQU9JO0lBQUE7RXRFcStVVjs7RXNFNStVTTtJQU9JO0lBQUE7RXRFMCtVVjs7RXNFai9VTTtJQU9JO0lBQUE7RXRFKytVVjs7RXNFdC9VTTtJQU9JO0lBQUE7RXRFby9VVjs7RXNFMy9VTTtJQU9JO0V0RXcvVVY7O0VzRS8vVU07SUFPSTtFdEU0L1VWOztFc0VuZ1ZNO0lBT0k7RXRFZ2dWVjs7RXNFdmdWTTtJQU9JO0V0RW9nVlY7O0VzRTNnVk07SUFPSTtFdEV3Z1ZWOztFc0UvZ1ZNO0lBT0k7RXRFNGdWVjs7RXNFbmhWTTtJQU9JO0V0RWdoVlY7O0VzRXZoVk07SUFPSTtFdEVvaFZWOztFc0UzaFZNO0lBT0k7RXRFd2hWVjs7RXNFL2hWTTtJQU9JO0V0RTRoVlY7O0VzRW5pVk07SUFPSTtFdEVnaVZWOztFc0V2aVZNO0lBT0k7RXRFb2lWVjs7RXNFM2lWTTtJQU9JO0V0RXdpVlY7O0VzRS9pVk07SUFPSTtFdEU0aVZWOztFc0VualZNO0lBT0k7RXRFZ2pWVjs7RXNFdmpWTTtJQU9JO0V0RW9qVlY7O0VzRTNqVk07SUFPSTtFdEV3alZWOztFc0UvalZNO0lBT0k7RXRFNGpWVjs7RXNFbmtWTTtJQU9JO0V0RWdrVlY7O0VzRXZrVk07SUFPSTtFdEVva1ZWOztFc0Uza1ZNO0lBT0k7RXRFd2tWVjs7RXNFL2tWTTtJQU9JO0V0RTRrVlY7O0VzRW5sVk07SUFPSTtFdEVnbFZWOztFc0V2bFZNO0lBT0k7RXRFb2xWVjs7RXNFM2xWTTtJQU9JO0V0RXdsVlY7O0VzRS9sVk07SUFPSTtFdEU0bFZWOztFc0VubVZNO0lBT0k7RXRFZ21WVjs7RXNFdm1WTTtJQU9JO0V0RW9tVlY7O0VzRTNtVk07SUFPSTtFdEV3bVZWOztFc0UvbVZNO0lBT0k7RXRFNG1WVjs7RXNFbm5WTTtJQU9JO0V0RWduVlY7O0VzRXZuVk07SUFPSTtFdEVvblZWOztFc0UzblZNO0lBT0k7RXRFd25WVjs7RXNFL25WTTtJQU9JO0V0RTRuVlY7O0VzRW5vVk07SUFPSTtJQUFBO0V0RWlvVlY7O0VzRXhvVk07SUFPSTtJQUFBO0V0RXNvVlY7O0VzRTdvVk07SUFPSTtJQUFBO0V0RTJvVlY7O0VzRWxwVk07SUFPSTtJQUFBO0V0RWdwVlY7O0VzRXZwVk07SUFPSTtJQUFBO0V0RXFwVlY7O0VzRTVwVk07SUFPSTtJQUFBO0V0RTBwVlY7O0VzRWpxVk07SUFPSTtJQUFBO0V0RStwVlY7O0VzRXRxVk07SUFPSTtJQUFBO0V0RW9xVlY7O0VzRTNxVk07SUFPSTtJQUFBO0V0RXlxVlY7O0VzRWhyVk07SUFPSTtJQUFBO0V0RThxVlY7O0VzRXJyVk07SUFPSTtJQUFBO0V0RW1yVlY7O0VzRTFyVk07SUFPSTtJQUFBO0V0RXdyVlY7O0VzRS9yVk07SUFPSTtFdEU0clZWOztFc0Vuc1ZNO0lBT0k7RXRFZ3NWVjs7RXNFdnNWTTtJQU9JO0V0RW9zVlY7O0VzRTNzVk07SUFPSTtFdEV3c1ZWOztFc0Uvc1ZNO0lBT0k7RXRFNHNWVjs7RXNFbnRWTTtJQU9JO0V0RWd0VlY7O0VzRXZ0Vk07SUFPSTtFdEVvdFZWOztFc0UzdFZNO0lBT0k7RXRFd3RWVjs7RXNFL3RWTTtJQU9JO0V0RTR0VlY7O0VzRW51Vk07SUFPSTtFdEVndVZWOztFc0V2dVZNO0lBT0k7RXRFb3VWVjs7RXNFM3VWTTtJQU9JO0V0RXd1VlY7O0VzRS91Vk07SUFPSTtFdEU0dVZWOztFc0VudlZNO0lBT0k7RXRFZ3ZWVjs7RXNFdnZWTTtJQU9JO0V0RW92VlY7O0VzRTN2Vk07SUFPSTtFdEV3dlZWOztFc0UvdlZNO0lBT0k7RXRFNHZWVjs7RXNFbndWTTtJQU9JO0V0RWd3VlY7O0VzRXZ3Vk07SUFPSTtFdEVvd1ZWOztFc0Uzd1ZNO0lBT0k7RXRFd3dWVjs7RXNFL3dWTTtJQU9JO0V0RTR3VlY7O0VzRW54Vk07SUFPSTtFdEVneFZWOztFc0V2eFZNO0lBT0k7RXRFb3hWVjs7RXNFM3hWTTtJQU9JO0V0RXd4VlY7O0VzRS94Vk07SUFPSTtFdEU0eFZWOztFc0VueVZNO0lBT0k7RXRFZ3lWVjs7RXNFdnlWTTtJQU9JO0V0RW95VlY7QUFDRjtBdUV4MVZBO0VENENRO0lBT0k7RXRFeXlWVjs7RXNFaHpWTTtJQU9JO0V0RTZ5VlY7O0VzRXB6Vk07SUFPSTtFdEVpelZWOztFc0V4elZNO0lBT0k7RXRFcXpWVjtBQUNGO0F1RXQxVkE7RUR5QlE7SUFPSTtFdEUwelZWOztFc0VqMFZNO0lBT0k7RXRFOHpWVjs7RXNFcjBWTTtJQU9JO0V0RWswVlY7O0VzRXowVk07SUFPSTtFdEVzMFZWOztFc0U3MFZNO0lBT0k7RXRFMDBWVjs7RXNFajFWTTtJQU9JO0V0RTgwVlY7O0VzRXIxVk07SUFPSTtFdEVrMVZWOztFc0V6MVZNO0lBT0k7RXRFczFWVjs7RXNFNzFWTTtJQU9JO0V0RTAxVlY7O0VzRWoyVk07SUFPSTtFdEU4MVZWO0FBQ0Y7QXdFcjZWQTtBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4RXM2Vko7O0F3RXA2VkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4RXU2Vko7QXdFcjZWSTtFQUNJO0F4RXU2VlI7QXdFcDZWSTtFQUNJO0VBQ0E7QXhFczZWUjs7QXdFbjZWQTs7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4RXM2Vko7O0F3RW42VkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhFczZWSjtBd0VwNlZJO0VBRUk7RUFDQTtBeEVxNlZSO0F3RWw2Vkk7RUFDSTtBeEVvNlZSO0F3RWo2Vkk7RUFDSTtBeEVtNlZSOztBd0VoNlZBO0VBQ0k7RUFDQTtFQUNBO0VBV0E7QXhFeTVWSjtBd0VuNlZJO0VBQ0k7QXhFcTZWUjtBd0VuNlZJO0VBQ0k7QXhFcTZWUjtBd0VuNlZJO0VBQ0k7QXhFcTZWUjtBd0VoNlZJO0VBQ0k7QXhFazZWUjtBd0UvNVZJO0VBQ0k7QXhFaTZWUjtBd0U5NVZJO0VBQ0k7QXhFZzZWUjtBd0U3NVZJO0VBQ0k7RUFDQTtFQUNBO0F4RSs1VlI7O0F3RTU1VkE7RUFDSTtBeEUrNVZKOztBQXIvVkE7O0VBQUE7QXlFWkE7O0VBQUE7QUFLQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F6RWtnV0Y7O0F5RXY5VkE7O0VBQUE7QUFPQTs7RUFBQTtBQU1BOztFQUFBO0FDMUVBOztFQUFBO0FBSUE7RUFDRTtBMUUraFdGOztBMEU1aFdBO0VBQ0UseUJEcUJNO0VDcEJOLGNEbUJNO0VDbEJOLDJDRHNEaUI7RUNyRGpCO0VBQ0E7RUFDQTtFQUNBO0ExRStoV0Y7O0EwRTVoV0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExRStoV0Y7O0EwRTVoV0E7RUFDRSx3QkRKZ0I7RUNLaEI7QTFFK2hXRjtBMEU5aFdFO0VBQ0Usc0JEUlM7QXpFd2lXYjs7QTBFNWhXQTtFQUNFO0ExRStoV0Y7O0EwRTVoV0E7RUFDRTtBMUUraFdGOztBMEU1aFdBO0VBQ0UseUJEWk87RUNhUDtBMUUraFdGOztBMEU1aFdBO0VBQ0U7RUFDQSxpQ0QzQlc7QXpFMGpXYjs7QTBFNWhXQTtFQUNFO0ExRStoV0Y7O0EwRTNoV0E7RUFDRTtBMUU4aFdGOztBMkV4bFdBO0VBQ0U7RUFDQTtBM0UybFdGO0EyRTFsV0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGNGaUNNO0F6RTJqV1Y7QTJFM2xXSTtFQUNFO0EzRTZsV047QTJFNWxXTTtFQUNFO0EzRThsV1I7QTJFNWxXTTtFQUNFO0EzRThsV1I7O0E0RTdtV0E7O0VBQUE7QUFHQTs7RUFDRTtFQUNBO0VBQ0E7QTVFaW5XRjs7QTRFOW1XQTs7RUFJRTtFQUNBLGlDSFFXO0VHUFgsNkJIT1c7RUdOWCxjSGNNO0F6RWltV1I7QTRFN21XRTs7RUFDRSxjSFdJO0VHVkosd0NIS21CO0VHSm5CLHFDSEtvQjtBekUybVd4QjtBNEU3bVdFOzs7RUFFRSx3Q0hEbUI7RUdFbkIsbUNISGtCO0VHSWxCO0E1RWduV0o7QTRFN21XRTs7RUFDRTtBNUVnbldKO0E0RTdtV0U7OztFQUVFLHlCSERLO0VHRUwscUJIRks7RUdHTCxjSEVNO0VHRE47QTVFZ25XSjs7QTRFNW1XQTtFQUdFLDZCSHpCVztFRzBCWCxzQkgxQlc7QXpFdW9XYjtBNEUzbVdFO0VBQ0UsY0hyQkk7RUdzQkosaUNIOUJTO0F6RTJvV2I7QTRFMW1XRTtFQUVFLGNIM0JJO0VHNEJKLGlDSHBDUztFR3FDVDtBNUUybVdKO0E0RXhtV0U7RUFDRTtBNUUwbVdKOztBNEV0bVdBO0VBQ0U7RUFDQTtBNUV5bVdGO0E0RXZtV0U7RUFDRSx5QkhwQ0s7RUdxQ0wscUJIckNLO0F6RThvV1Q7QTRFdm1XSTtFQUdFLHlCSDFDRztFRzJDSCxxQkgzQ0c7QXpFa3BXVDs7QTRFam1XQTtFQUNFO0VBQ0E7QTVFb21XRjtBNkU5b1ZJO0VEeGRKO0lBS0k7RTVFcW1XRjtBQUNGOztBNEVsbVdBO0VBQ0U7RUFDQTtFQUNBLGNIeERRO0VHeURSO0E1RXFtV0Y7O0E4RXZzV0E7O0VBQUE7QUFJQTtFQUNFO0E5RXlzV0Y7QThFeHNXRTtFQUNFO0E5RTBzV0o7QThFeHNXRTtFQUNFLGNMa0NNO0VLakNOO0VBQ0E7QTlFMHNXSjtBOEV4c1dFO0VBQ0U7RUFDQSxjTG9CSztFS25CTDtBOUUwc1dKO0E4RXhzV0U7RUFDRSxjTHdCTTtBekVrcldWO0E4RXhzV0U7RUFDRTtBOUUwc1dKO0E4RXhzV0U7RUFDRTtFQUNBLHNCTExTO0F6RStzV2I7QThFeHNXRTtFQUNFO0E5RTBzV0o7QThFeHNXRTtFQUNFO0E5RTBzV0o7O0ErRTN1V0E7O0VBQUE7QUFHQTtFQUNFO0EvRTh1V0Y7O0ErRTN1V0E7RUFDRSxjTjRCTztBekVrdFdUOztBK0UzdVdBOzs7O0VBSUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0U4dVdGO0ErRTV1V0U7Ozs7Ozs7Ozs7RUFHRTtFQUNBLDZCTkhTO0F6RXd2V2I7QStFbHZXRTs7OztFQUNFLGlCTnNCSTtBekVpdVdSOztBK0VudldBO0VBQ0U7QS9Fc3ZXRjs7QStFaHZXRTs7O0VBQ0U7RUFDQTtFQUNBO0EvRXF2V0o7QStFbnZXSTs7O0VBQ0UsZ0NOakJFO0VNa0JGO0VBQ0E7RUFDQTtBL0V1dldOO0ErRXB2V0k7Ozs7O0VBRUU7RUFDQSw2Qk5qQ087QXpFMHhXYjs7QStFbnZXRTtFQUNFLGlDTnhDUztFTXlDVCw2Qk56Q1M7QXpFK3hXYjtBK0VudldFO0VBQ0U7RUFDQSw2Qk45Q1M7QXpFbXlXYjs7QStFanZXQTtFQUNFO0EvRW92V0Y7QStFbHZXRTs7RUFFRTtFQUNBO0EvRW92V0o7QStFanZXRTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsY043Q1E7QXpFZ3lXWjtBK0VodldFOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxtQk52RUk7QXpFeXpXUjtBK0UvdVdFOztFQUVFO0VBQ0Esc0JOckZTO0VNc0ZUO0VBQ0E7RUFDQTtFQUNBO0EvRWl2V0o7QStFOXVXRTtFQUNFO0VBQ0E7QS9FZ3ZXSjtBK0U3dVdFO0VBQ0U7RUFDQTtBL0UrdVdKO0ErRTV1V0U7RUFDRTtFQUNBO0EvRTh1V0o7QStFNXVXSTs7RUFFRTtFQUNBO0EvRTh1V047QStFM3VXSTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtBL0U2dVdOO0ErRTF1V0k7O0VBRUU7RUFDQTtFQUNBO0VBQ0E7QS9FNHVXTjs7QStFdnVXQTtFQUNFO0VBQ0EsbUJOeEhLO0VNeUhMO0EvRTB1V0Y7QStFdnVXSTtFQUNFO0EvRXl1V047QStFcnVXRTtFQUNFO0EvRXV1V0o7O0ErRW51V0E7RUFDRTtBL0VzdVdGO0ErRW51V0k7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9FcXVXTjtBK0VudVdNO0VBRUU7RUFDQTtBL0VvdVdSO0ErRWp1V007RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvRW11V1I7O0ErRTd0V0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBL0VndVdGOztBK0U1dFdFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvRSt0V0o7O0ErRTN0V0E7RUFDRTtFQUNBLFVOdEtNO0VNdUtOO0VBQ0E7QS9FOHRXRjs7QStFMXRXRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0EvRTZ0V0o7QStFMXRXRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9FNHRXSjtBK0V6dFdFO0VBQ0UsaUNONU5TO0VNNk5ULDZCTjdOUztBekV3N1diOztBZ0Y5OFdBOztFQUFBO0FBR0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoRmk5V0Y7QTZFNTZWSTtFRzFpQko7SUFPSTtFaEZtOVdGO0FBQ0Y7O0FnRmg5V0E7RUFDRTtFQUNBO0VBQ0E7RUFDQSx5QlBlUTtFT2RSO0VBQ0E7RUFDQTtBaEZtOVdGO0FnRmw5V0U7RUFDRTtFQUNBLGNQYWE7RU9aYjtFQUNBLHFDUHdDWTtBekU0NldoQjtBZ0ZsOVdFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhGbzlXSjtBZ0ZsOVdFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoRm85V0o7O0FnRmg5V0E7RUFDRSx5QlBMUztBekV3OVdYO0FnRmw5V0U7RUFDRSxjUHZCSTtBekUyK1dSO0FnRmw5V0U7RUFDRTtBaEZvOVdKOztBZ0YvOFdFO0VBQ0U7QWhGazlXSjtBZ0ZoOVdFO0VBQ0U7QWhGazlXSjs7QWlGbmhYQTs7RUFBQTtBQUdBO0VBQ0Usc0JSa0JXO0VRakJYO0VBQ0E7RUFDQSxxQ1IyRGM7RVExRGQ7RUFDQTtFQUNBO0FqRnNoWEY7O0FpRm5oWEE7RUFDRSxzQlJRVztFUVBYO0VBQ0E7RUFDQTtBakZzaFhGOztBaUZuaFhBO0VBQ0Usc0JSQ1c7RVFBWDtFQUNBO0FqRnNoWEY7O0FpRm5oWEE7RUFDRTtFQUNBLHNCUk5XO0VRT1g7RUFDQTtBakZzaFhGO0FpRnJoWEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakZ1aFhKO0FpRnJoWEU7RUFDRTtFQUNBO0VBQ0E7RUFDQSxtQlJkSTtFUWVKO0FqRnVoWEo7QWlGcGhYRTtFQUNFO0VBQ0E7QWpGc2hYSjs7QWlGbGhYQTtFQUNFO0VBQ0EsY1JkUztBekVtaVhYOztBa0Y3a1hBOztFQUFBO0FBSUE7RUFDRTtBbEYra1hGOztBa0Y1a1hBO0VBR0U7RUFDQTtFQUNEO0VBQ0EsY1R3Qlk7RVN2Qlo7QWxGNmtYRDs7QW1GNWxYQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkYrbFhGO0FtRjdsWEU7RUFDRTtBbkYrbFhKO0E2RWprV0k7RU03aUJKO0lBbUJJO0VuRitsWEY7QUFDRjtBbUY3bFhFO0VBQ0U7RUFDQTtBbkYrbFhKO0FtRjVsWEU7O0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLG1CVkpJO0VVS0o7RUFDQTtFQUNBO0VBQ0E7QW5GOGxYSjtBbUY1bFhJOztFQUNFO0VBQ0E7RUFDQTtBbkYrbFhOO0FtRjNsWEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GNmxYSjtBbUYzbFhJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkY2bFhOO0FtRjNsWE07RUFDRTtJQUNFO0VuRjZsWFI7RW1GMWxYTTtJQUNFO0VuRjRsWFI7QUFDRjtBbUZ6bFhNO0VBQ0U7SUFDRTtFbkYybFhSO0VtRnhsWE07SUFDRTtFbkYwbFhSO0FBQ0Y7QW1GcmxYRTtFQUNFLHNCVjNFUztFVTRFVCwyQ1ZqQ2U7RVVrQ2Y7RUFDQTtFQUNBO0FuRnVsWEo7QW1GcGxYRTs7O0VBRUUsY1ZuRUc7RVVvRUg7QW5GdWxYSjtBbUZwbFhFO0VBQ0U7RUFDQSxpQ1YxRlM7RVUyRlQ7RUFDQSxjVnBGSTtBekUwcVhSO0FtRnBsWEk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5Gc2xYTjtBbUZwbFhNO0VBQ0U7RUFDQTtBbkZzbFhSO0FtRmpsWEU7OztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRm9sWEo7O0FtRmhsWEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbkZtbFhGO0FtRmpsWEU7RUFDRTtFQUNBO0FuRm1sWEo7O0FtRi9rWEE7RUFHRTtBbkZnbFhGOztBbUY3a1hBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsbUJWOUlNO0VVK0lOO0VBQ0E7QW5GZ2xYRjs7QW1GN2tYQTtFQUNFO0VBQ0E7QW5GZ2xYRjtBNkVydFdJO0VNN1hKO0lBS0k7RW5GaWxYRjtBQUNGOztBbUY5a1hBO0VBQ0U7QW5GaWxYRjs7QW1GOWtYQTtFQUNFO0FuRmlsWEY7QW1GL2tYRTtFQUNFO0VBQ0E7QW5GaWxYSjtBbUY5a1hFO0VBQ0U7RUFDQTtBbkZnbFhKOztBb0Z2eFhBOztFQUFBO0FBSUE7RUFDRTtFQUNBO0FwRnl4WEY7QTZFbHZXSTtFT3ppQko7SUFJSTtFcEYyeFhGO0FBQ0Y7QW9GMXhYRTtFQUNFO0VBQ0E7RUFDQTtBcEY0eFhKO0FvRjN4WEk7RUFDRTtFQUNBO0FwRjZ4WE47QW9GM3hYTTtFQUNFO0VBQ0E7QXBGNnhYUjtBb0Y1eFhRO0VBQ0U7QXBGOHhYVjtBb0Y1eFhVO0VBQ0U7QXBGOHhYWjtBb0Z6eFhNO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsY1hLRDtFV0pDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEYyeFhSO0FvRjF4WFE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxpQ1gxQkc7RVcyQkg7QXBGNHhYVjtBb0Z4eFhNOztFQUVFLHNCWGpDSztFV2tDTDtBcEYweFhSO0FvRnp4WFE7O0VBQ0UsY1haQztBekV3eVhYO0FvRjF4WFE7O0VBQ0U7QXBGNnhYVjtBb0Z2eFhFO0VBQ0U7QXBGeXhYSjs7QW9GanhYUTtFQUNFLGNYdENIO0F6RTB6WFA7QW9GbnhYVTtFQUNFLHlCWGpDRDtBekVzelhYO0FvRmx4WFE7RUFDRSxjWHJDQztBekV5elhYOztBb0Yzd1hJO0VBQ0UsY1gvQ0s7QXpFNnpYWDtBb0Y3d1hNO0VBQ0UsY1hqREc7QXpFZzBYWDtBb0Y1d1hRO0VBQ0UsY1g1REg7QXpFMDBYUDtBb0Yxd1hJO0VBQ0UscUJYMURLO0VXMkRMO0FwRjR3WE47O0FxRnIzWEE7O0VBQUE7QUFHQTtFQUNFO0FyRnczWEY7O0FxRnIzWEE7RUFDRTtBckZ3M1hGOztBc0ZoNFhBOztFQUFBO0FBSUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHNCYk9XO0VhTlg7RUFDQTtFQUNBLG1CYllNO0F6RXMzWFI7QXNGajRYRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLG1CYklJO0VhSEo7RUFDQTtBdEZtNFhKOztBdUYvNVhBOztFQUFBO0FBS0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsMkJkV1M7RWNWVDtFQUNBO0VBQ0E7QXZGZzZYSjtBdUYvNVhJO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsY2RXRTtFY1ZGO0VBQ0E7QXZGaTZYTjtBdUYvNVhJO0VBQ0U7QXZGaTZYTjtBdUYvNVhJO0VBQ0U7QXZGaTZYTjs7QXVGNzVYQTtFQUNFO0F2Rmc2WEY7O0F3Rmg4WEE7O0VBQUE7QUFHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhGbThYRjtBd0ZsOFhFO0VBR0U7RUFDQSw2QmZTUztBekV5N1hiOztBd0Y5N1hBO0VBRUU7RUFDQTtFQUNBLDJDZjRDaUI7RWUzQ2pCO0VBQ0E7RUFDQTtBeEZnOFhGO0F3Ri83WEU7RUFDRTtFQUNBO0F4Rmk4WEo7QTZFLzZXSTtFVzVoQko7SUFhSTtFeEZrOFhGO0FBQ0Y7QXdGajhYRTtFQUNFLHlCZkNHO0F6RWs4WFA7QXdGajhYRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F4Rm04WEo7QXdGbDhYSTtFQUNFO0F4Rm84WE47QXdGajhYRTtFQUNFLGNmUFM7RWVRVDtBeEZtOFhKOztBeUZqL1hBOztFQUFBO0FBSUE7RUFDRSxxQmhCK0JPO0VnQjlCUDtBekZtL1hGO0F5RmwvWEU7RUFDRTtBekZvL1hKOztBeUZoL1hBO0VBQ0U7QXpGbS9YRjs7QXlGaC9YQTtFQUNFLGNoQndCUTtBekUyOVhWOztBMEZwZ1lBO0VBQ0U7RUFDQSwyQ2pCK0RpQjtFaUI5RGpCO0VBQ0E7QTFGdWdZRjs7QTBGcGdZQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0ExRnVnWUY7O0EwRnBnWUE7RUFDRSwyQ2pCa0RpQjtFaUJqRGpCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGNqQmlCSztFaUJoQkw7RUFDQTtFQUNBO0ExRnVnWUY7QTBGcmdZRTtFQUNFO0VBQ0E7QTFGdWdZSjtBMEZwZ1lFO0VBQ0Usd0JqQlZjO0VpQldkO0ExRnNnWUo7O0EwRmxnWUE7RUFDRTtFQUNBO0VBQ0E7RUFDQSx5QmpCVlM7RWlCV1Q7QTFGcWdZRjtBMEZuZ1lFO0VBQ0U7QTFGcWdZSjtBMEZsZ1lFO0VBQ0U7RUFDQTtFQUNBO0ExRm9nWUo7QTBGbGdZSTtFQUNFO0ExRm9nWU47QTBGaGdZRTtFQUNFO0ExRmtnWUo7QTBGaGdZSTtFQUNFO0ExRmtnWU47QTBGLy9YSTtFQUNFO0ExRmlnWU47QTBGOS9YSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0ExRmdnWU47QTZFN2hYSTtFYXZlQTtJQU9JO0lBQ0E7RTFGaWdZTjtBQUNGO0EwRjcvWEU7RUFDRTtFQUNBO0VBQ0EseUJqQnRETztFaUJ1RFA7QTFGKy9YSjtBMEY3L1hJO0VBQ0U7QTFGKy9YTjtBNkU1aVhJO0VhOWNBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UxRjYvWEo7RTBGMS9YRTtJQUNFO0UxRjQvWEo7QUFDRjs7QTBGeC9YQTtFQUNFLHlCakJqRk07RWlCa0ZOLHFCakI1RU87RWlCNkVQO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUYyL1hGO0E2RXBrWEk7RWEvYko7SUFXSTtJQUNBO0UxRjQvWEY7QUFDRjs7QTBGei9YQTtFQUNFLG1DakJ2R29CO0F6RW1tWXRCOztBMEZ6L1hBO0VBQ0U7QTFGNC9YRjs7QTBGei9YQTs7RUFFRTtFQUNBO0ExRjQvWEY7O0E2RXhsWEk7RWFqYUo7SUFFSTtFMUY0L1hGO0FBQ0Y7O0EwRnovWEE7RUFDRSx5QmpCckhNO0VpQnNITixxQmpCaEhPO0VpQmlIUDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExRjQvWEY7O0EwRnovWEE7RUFDRSxtQ2pCcklvQjtBekVpb1l0Qjs7QTBGei9YQTtFQUNFO0VBQ0E7RUFDQTtBMUY0L1hGO0EwRjEvWEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBMUY0L1hKOztBMEZ4L1hBOztFQUVFO0VBQ0E7RUFDQSx5QmpCakpTO0VpQmtKVDtFQUNBO0VBQ0E7RUFDQTtBMUYyL1hGO0EwRnovWEU7OztFQUVFO0ExRjQvWEo7QTBGei9YRTs7OztFQUVFLGNqQnBKTztFaUJxSlA7RUFDQSwyQ2pCL0hlO0VpQmdJZjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExRjYvWEo7QTBGMS9YRTs7O0VBQ0UsMkNqQnhJZTtFaUJ5SWYsY2pCL0pRO0VpQmdLUjtFQUNBO0VBQ0E7RUFDQTtBMUY4L1hKO0EwRjMvWEU7OztFQUNFLDJDakJqSmU7RWlCa0pmLGNqQnJLTztFaUJzS1A7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExRisvWEo7QTBGNS9YRTs7O0VBQ0UsMkNqQjVKZTtFaUI2SmYsY2pCaExPO0VpQmlMUDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExRmdnWUo7QTBGOS9YSTs7O0VBQ0Usd0JqQmxOWTtFaUJtTlo7QTFGa2dZTjtBMEY5L1hFOztFQUNFLGNqQmpNTztFaUJrTVA7QTFGaWdZSjtBMEY5L1hFOztFQUNFO0VBQ0EsbUJqQnZOSTtFaUJ3Tko7QTFGaWdZSjtBMEY5L1hFOztFQUNFO0VBQ0E7QTFGaWdZSjtBMEYvL1hJOztFQUNFO0ExRmtnWU47QTBGOS9YRTs7RUFDRTtBMUZpZ1lKO0EwRjkvWEU7O0VBQ0U7RUFDQTtFQUVBO0VBQ0EsaUNqQjNNYTtFaUI0TWI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsY2pCcE9PO0F6RW91WVg7QTBGNy9YRTs7RUFDRTtFQUNBO0ExRmdnWUo7QTBGNy9YRTs7RUFDRTtFQUNBO0VBQ0EsMkNqQjVOZTtFaUI2TmYsY2pCcFBPO0VpQnFQUDtBMUZnZ1lKO0EwRjcvWEU7O0VBQ0U7RUFDQSx5QmpCalFJO0VpQmtRSjtFQUNBO0ExRmdnWUo7QTBGOS9YSTs7RUFDRTtFQUNBO0VBQ0E7QTFGaWdZTjtBMEY5L1hJOztFQUNFO0VBQ0E7QTFGaWdZTjtBMEY5L1hJOztFQUNFO0VBQ0E7QTFGaWdZTjtBMEY5L1hJOztFQUNFO0VBQ0E7RUFDQTtBMUZpZ1lOO0EwRi8vWE07O0VBQ0U7RUFDQSwyQ2pCOVBXO0VpQitQWCxjakJ0Ukc7RWlCdVJIO0VBQ0E7RUFDQTtFQUNBO0ExRmtnWVI7QTBGaGdZUTs7RUFDRTtFQUNBO0VBQ0EseUJqQjNSQztFaUI0UkQ7RUFDQTtFQUNBO0ExRm1nWVY7QTBGOS9YSTs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBMUZpZ1lOO0EwRjkvWEk7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTFGaWdZTjtBMEY5L1hJOztFQUNFO0VBQ0E7RUFDQTtFQUNBO0ExRmlnWU47QTBGOS9YSTs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBMUZpZ1lOO0EwRjkvWEk7O0VBQ0U7RUFDQTtFQUNBO0ExRmlnWU47QTBGOS9YSTs7RUFDRTtBMUZpZ1lOO0EwRjkvWEk7O0VBQ0U7QTFGaWdZTjtBMEY3L1hFOztFQUNFO0ExRmdnWUo7QTBGNy9YRTs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBMUZnZ1lKO0EwRjkvWEk7O0VBQ0U7RUFDQTtBMUZpZ1lOO0EwRjkvWEk7O0VBQ0U7RUFDQTtBMUZpZ1lOO0EwRjkvWEk7O0VBQ0UsMkNqQmhWYTtFaUJpVmI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGNqQnpXSztFaUIwV0w7QTFGaWdZTjtBMEY5L1hJOztFQUNFO0ExRmlnWU47QTBGLy9YTTs7RUFDRSxjakJqWUE7QXpFbTRZUjtBMEYvL1hNOztFQUNFO0ExRmtnWVI7QTBGNy9YRTs7RUFDRTtFQUNBO0VBQ0E7QTFGZ2dZSjtBMEY5L1hJOztFQUNFO0ExRmlnWU47QTBGOS9YSTs7RUFDRTtFQUNBO0VBQ0EsY2pCellNO0VpQjBZTjtFQUNBO0ExRmlnWU47QTBGOS9YSTs7RUFDRTtFQUNBO0ExRmlnWU47QTBGOS9YSTs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBMUZpZ1lOO0EwRjkvWEk7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExRmlnWU47QTBGLy9YTTs7RUFDRSxjakJ4Wkk7QXpFMDVZWjtBMEYvL1hNOztFQUNFLGNqQjNaSTtBekU2NVlaO0EwRi8vWE07O0VBQ0UsY2pCOVpGO0F6RWc2WU47QTBGLy9YTTs7RUFDRSxjakJqYUE7QXpFbTZZUjtBMEYvL1hNOztFQUNFLGNqQnBhSTtBekVzNllaO0EwRjkvWEk7O0VBQ0U7RUFDQTtFQUNBO0ExRmlnWU47QTBGNy9YRTs7RUFDRTtFQUNBO0VBQ0E7QTFGZ2dZSjtBMEY3L1hFOztFQUNFO0VBQ0E7RUFDQTtFQUNBLHlCakJqZEc7RWlCa2RILGNqQjFjTztFaUIyY1A7RUFDQTtFQUNBO0VBQ0E7QTFGZ2dZSjtBMEY3L1hFOztFQUNFLHlCakI5Y087RWlCK2NQO0VBQ0E7RUFDQTtFQUNBLGNqQmxlSTtFaUJtZUo7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExRmdnWUo7QTBGNy9YRTs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBMUZnZ1lKO0EwRjcvWEU7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTFGZ2dZSjtBMEY3L1hFOztFQUNFO0VBQ0E7RUFDQTtFQUNBO0ExRmdnWUo7QTBGNy9YRTs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExRmdnWUo7QTBGOS9YSTs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBMUZpZ1lOO0EwRjkvWEk7O0VBQ0Usd0JqQnRoQlk7QXpFdWhabEI7QTBGOS9YSTs7RUFDRSxjakJuZ0JLO0F6RW9nWlg7QTBGNy9YRTs7RUFDRTtFQUNBO0VBQ0E7QTFGZ2dZSjtBMEY5L1hJOztFQUNFO0VBQ0E7QTFGaWdZTjtBMEY5L1hJOztFQUNFO0VBQ0E7RUFDQTtBMUZpZ1lOO0EwRjkvWEk7O0VBQ0U7QTFGaWdZTjs7QTBGNS9YQTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUEseUJqQmpqQks7RWlCa2pCTDtFQUNBO0VBQ0E7RUFFQTtBMUY2L1hGOztBMEZ4L1hJO0VBQ0UsYWpCeGpCTztBekVtalpiO0EwRnYvWEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxtQmpCemtCTztBekVra1pYOztBMEZyL1hBO0VBQ0UsNEJqQnRsQm9CO0VpQnVsQnBCO0VBQ0E7RUFDQTtBMUZ3L1hGOztBMEZyL1hBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTFGdy9YRjtBMEZ0L1hFO0VBQ0UsY2pCbGxCTTtFaUJtbEJOO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUZ3L1hKO0EwRnIvWEU7RUFDRTtFQUNBO0VBQ0E7QTFGdS9YSjtBMEZwL1hFO0VBQ0U7RUFDQTtFQUNBO0ExRnMvWEo7O0EwRmwvWEE7RUFDRTtFQUNBLG1DakIzbkJvQjtBekVnblp0Qjs7QTBGbC9YQTtFQUNFO0VBQ0EsbUNqQmhvQm9CO0F6RXFuWnRCOztBMEZsL1hBO0VBQ0U7QTFGcS9YRjtBMEZuL1hFO0VBQ0U7RUFDQTtFQUNBO0ExRnEvWEo7QTBGbi9YSTtFQUNFO0ExRnEvWE47O0EwRmgvWEE7RUFDRTtBMUZtL1hGOztBMEZoL1hBO0VBQ0U7QTFGbS9YRjs7QTBGaC9YQTtFQUNFO0VBQ0E7QTFGbS9YRjs7QTBGaC9YQTs7RUFFRTtBMUZtL1hGOztBMEYvK1hFO0VBQ0U7QTFGay9YSjtBMEYvK1hFO0VBQ0U7RUFDQTtBMUZpL1hKO0EwRjkrWEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBMUZnL1hKO0EwRjcrWEU7RUFDRTtBMUYrK1hKO0EwRjUrWEU7RUFDRTtBMUY4K1hKO0EwRjErWEk7RUFDRTtBMUY0K1hOO0EwRnorWEk7O0VBRUU7QTFGMitYTjtBMEZ0K1hJO0VBQ0U7QTFGdytYTjtBMEZyK1hJO0VBQ0U7QTFGdStYTjtBMEZwK1hJOztFQUVFO0ExRnMrWE47QTBGbitYSTtFQUNFO0VBQ0E7QTFGcStYTjtBMEZoK1hJO0VBQ0U7QTFGaytYTjtBMEYvOVhJO0VBQ0U7RUFDQTtBMUZpK1hOO0EwRjU5WEk7RUFDRTtFQUNBO0ExRjg5WE47QTBGMzlYSTtFQUNFO0VBQ0Esd0JqQi91Qlk7RWlCZ3ZCWjtFQUNBO0VBQ0E7QTFGNjlYTjtBMEYxOVhJO0VBQ0U7RUFDQTtFQUNBO0ExRjQ5WE47QTBGejlYSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFGMjlYTjtBMEZ0OVhJO0VBQ0U7RUFDQTtFQUNBO0ExRnc5WE47QTBGbjlYSTtFQUNFO0ExRnE5WE47QTBGbDlYSTtFQUNFO0VBQ0E7RUFDQTtBMUZvOVhOO0EwRmw5WE07RUFDRTtBMUZvOVhSO0EwRmo5WE07RUFDRTtFQUNBO0ExRm05WFI7QTBGaDlYTTtFQUNFO0ExRms5WFI7QTBGNThYSTtFQUNFO0ExRjg4WE47QTBGMzhYSTtFQUNFO0VBQ0E7RUFDQTtBMUY2OFhOO0EwRjM4WE07RUFDRTtBMUY2OFhSO0EwRjE4WE07RUFDRTtFQUNBO0ExRjQ4WFI7QTBGejhYTTtFQUNFO0ExRjI4WFI7QTBGcjhYSTtFQUNFO0ExRnU4WE47QTBGcjhYTTtFQUNFO0ExRnU4WFI7QTBGajhYSTtFQUNFO0ExRm04WE47QTBGajhYTTtFQUNFO0ExRm04WFI7QTBGaDhYTTtFQUNFO0ExRms4WFI7QTBGLzdYTTtFQUNFO0ExRmk4WFI7O0EwRjE3WEE7RUFFRTs7SUFFRTtFMUY0N1hGOztFMEZ6N1hBO0lBQ0U7RTFGNDdYRjs7RTBGejdYQTs7SUFFRTtFMUY0N1hGOztFMEZ6N1hBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RTFGNDdYRjtFMEYxN1hFOztJQUVFO0UxRjQ3WEo7RTBGejdYRTtJQUNFO0UxRjI3WEo7O0UwRnY3WEE7SUFDRTtFMUYwN1hGOztFMEZ2N1hBO0lBQ0U7RTFGMDdYRjs7RTBGdjdYQTtJQUNFO0UxRjA3WEY7O0UwRnY3WEE7SUFDRTtFMUYwN1hGOztFMEZ2N1hBO0lBQ0U7SUFDQTtFMUYwN1hGOztFMEZ2N1hBO0lBQ0U7RTFGMDdYRjs7RTBGdjdYQTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0UxRjA3WEY7O0UwRnY3WEE7SUFDRTtJQUNBO0UxRjA3WEY7O0UwRnY3WEE7SUFDRTtJQUNBO0UxRjA3WEY7O0UwRnQ3WEU7SUFDRTtFMUZ5N1hKO0UwRnQ3WEU7SUFDRTtJQUNBO0lBQ0E7RTFGdzdYSjtFMEZyN1hFO0lBQ0U7RTFGdTdYSjtFMEZwN1hFO0lBQ0U7RTFGczdYSjtFMEZwN1hJOztJQUVFO0UxRnM3WE47RTBGbDdYRTtJQUNFLHlCakJ4N0JFO0lpQnk3QkY7RTFGbzdYSjtFMEZsN1hJO0lBQ0UseUJqQnQ3QkM7SWlCdTdCRCxjakIvNkJFO0lpQmc3QkY7RTFGbzdYTjtFMEZoN1hFO0lBQ0U7SUFDQTtFMUZrN1hKO0UwRi82WEU7SUFDRTtFMUZpN1hKO0UwRjk2WEU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFMUZnN1hKO0UwRjc2WEU7SUFDRTtJQUNBO0UxRis2WEo7RTBGNTZYRTtJQUNFO0lBQ0E7RTFGODZYSjtFMEY1NlhJO0lBQ0U7SUFDQTtFMUY4NlhOO0UwRjE2WEU7SUFDRTtFMUY0NlhKO0UwRng2WEk7SUFDRTtJQUNBO0UxRjA2WE47RTBGdDZYRTtJQUNFO0lBQ0E7RTFGdzZYSjtFMEZ0NlhJO0lBQ0U7RTFGdzZYTjtFMEZyNlhJO0lBQ0U7SUFDQSxjakIxK0JHO0V6RWk1WlQ7RTBGbDZYSTtJQUNFO0lBQ0E7RTFGbzZYTjtFMEZqNlhJOztJQUVFO0lBQ0E7RTFGbTZYTjtFMEZoNlhJO0lBQ0U7SUFDQTtFMUZrNlhOO0UwRi81WEk7SUFDRTtFMUZpNlhOO0UwRjU1WEk7SUFDRTtJQUNBO0UxRjg1WE47RTBGMzVYSTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0UxRjY1WE47RTBGejVYRTtJQUNFO0lBQ0E7RTFGMjVYSjtFMEZ2NVhJO0lBQ0U7SUFDQTtJQUNBO0UxRnk1WE47RTBGdDVYSTtJQUNFO0UxRnc1WE47RTBGcjVYSTtJQUNFO0lBQ0E7RTFGdTVYTjtFMEZsNVhFO0lBQ0U7SUFDQTtFMUZvNVhKOztFMEZoNVhBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFMUZtNVhGO0UwRmo1WEU7O0lBRUU7RTFGbTVYSjtFMEZoNVhFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UxRms1WEo7RTBGLzRYRTtJQUNFO0lBQ0E7RTFGaTVYSjtFMEYvNFhJO0lBQ0U7RTFGaTVYTjtFMEY3NFhFO0lBQ0U7SUFDQTtFMUYrNFhKO0UwRjU0WEU7SUFDRTtJQUNBO0UxRjg0WEo7RTBGNTRYSTtJQUNFO0UxRjg0WE47RTBGejRYSTtJQUNFO0UxRjI0WE47RTBGdjRYRTtJQUNFO0lBQ0E7SUFDQSxjakJ4bUNJO0lpQnltQ0oseUJqQnBuQ0k7SWlCcW5DSjtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UxRnk0WEo7RTBGdDRYRTtJQUNFO0UxRnc0WEo7RTBGcjRYRTtJQUNFO0UxRnU0WEo7RTBGcDRYRTtJQUNFO0UxRnM0WEo7RTBGbDRYSTtJQUNFO0UxRm80WE47RTBGajRYSTtJQUVFO0UxRms0WE47RTBGNzNYSTtJQUNFO0UxRiszWE47RTBGNTNYSTtJQUNFO0UxRjgzWE47RTBGejNYSTtJQUNFO0UxRjIzWE47RTBGeDNYSTtJQUNFO0lBQ0E7SUFDQTtFMUYwM1hOO0UwRngzWE07SUFDRTtFMUYwM1hSO0UwRnYzWE07SUFDRTtJQUNBO0lBQ0E7SUFDQSwyQ2pCL29DUztJaUJncENUO0lBQ0E7RTFGeTNYUjtFMEZ2M1hRO0lBQ0U7RTFGeTNYVjtFMEZ0M1hRO0lBQ0U7RTFGdzNYVjtFMEZwM1hNO0lBQ0UsY2pCcHJDQztJaUJxckNEO0lBQ0E7RTFGczNYUjtFMEZuM1hNO0lBQ0U7RTFGcTNYUjtFMEZqM1hJO0lBQ0U7RTFGbTNYTjtFMEZoM1hJO0lBQ0U7SUFDQTtFMUZrM1hOO0UwRjcyWEk7SUFDRTtFMUYrMlhOO0UwRjEyWEk7SUFDRTtFMUY0MlhOO0UwRnoyWEk7SUFDRTtJQUNBO0lBQ0E7RTFGMjJYTjtFMEZ4MlhJO0lBQ0U7SUFDQSx3QmpCOXVDVTtJaUIrdUNWO0lBQ0E7RTFGMDJYTjtFMEZ2MlhJO0lBQ0U7SUFDQTtFMUZ5MlhOO0UwRnQyWEk7SUFDRTtFMUZ3MlhOO0UwRnQyWE07SUFDRTtFMUZ3MlhSO0UwRnAyWEk7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UxRnMyWE47RTBGajJYSTtJQUNFO0UxRm0yWE47RTBGaDJYSTtJQUNFO0UxRmsyWE47RTBGOTFYRTtJQUNFO0lBQ0E7SUFDQTtFMUZnMlhKO0UwRjUxWEk7SUFDRTtFMUY4MVhOO0UwRnoxWEk7SUFDRTtJQUNBO0UxRjIxWE47RTBGeDFYSTtJQUNFO0lBQ0E7RTFGMDFYTjtFMEZ2MVhJO0lBQ0U7RTFGeTFYTjtFMEZwMVhJO0lBQ0U7SUFDQTtFMUZzMVhOO0UwRm4xWEk7SUFDRTtJQUNBO0UxRnExWE47RTBGbDFYSTtJQUNFO0lBQ0E7SUFDQTtFMUZvMVhOO0UwRmoxWEk7SUFDRTtFMUZtMVhOO0UwRi8wWEU7SUFDRTtFMUZpMVhKO0UwRjcwWEk7SUFDRTtFMUYrMFhOO0UwRjUwWEk7SUFDRTtFMUY4MFhOO0UwRnowWEk7SUFDRTtFMUYyMFhOO0UwRngwWEk7SUFDRTtJQUNBO0UxRjAwWE47RTBGdjBYSTtJQUNFO0lBQ0E7RTFGeTBYTjtFMEZwMFhJO0lBQ0U7RTFGczBYTjtFMEZuMFhJO0lBQ0U7RTFGcTBYTjtFMEZsMFhJO0lBQ0U7SUFDQTtFMUZvMFhOOztFMEYvelhBO0lBQ0U7SUFDQTtJQUNBO0UxRmswWEY7RTBGaDBYRTtJQUNFO0UxRmswWEo7RTBGL3pYRTtJQUNFO0UxRmkwWEo7RTBGOXpYRTtJQUNFO0UxRmcwWEo7RTBGOXpYSTtJQUNFO0lBQ0E7SUFDQTtFMUZnMFhOO0UwRjV6WEU7SUFDRTtFMUY4elhKO0FBQ0Y7QTJGanVhQTtFQUNFO0VBQ0E7RUFDQTtBM0ZtdWFGOztBMkZodWFBO0VBQ0U7RUFDQTtFQUNBO0EzRm11YUY7O0EyRmh1YUE7RUFDRTtFQUNBO0EzRm11YUY7O0EyRjl0YUU7RUFDRTtBM0ZpdWFKOztBMkY1dGFBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0YrdGFGO0EyRjd0YUU7RUFDRTtFQUNBO0EzRit0YUo7O0EyRjN0YUE7RUFDRSx5QmxCVE07RWtCVU47RUFDQTtBM0Y4dGFGOztBNEZ2d2FBO0VBQ0k7QTVGMHdhSjs7QTZGeHdhQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E3RjJ3YUo7QTZGendhSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdGMndhUjs7QTZGdHdhQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0Z5d2FKOztBNkZud2FJOztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdGdXdhUjtBNkZyd2FROztFQUNJO0VBQ0E7RUFDQTtBN0Z3d2FaOztBNkZsd2FBO0VBQ0k7QTdGcXdhSjtBNkZud2FJO0VBQ0k7RUFDQTtFQUNBLGNwQlpFO0VvQmFGO0VBQ0E7QTdGcXdhUjtBNkZsd2FJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3Rm93YVI7QTZGbHdhUTtFQUNJLGNwQmJBO0F6RWl4YVo7QTZGandhUTtFQUNJLGNwQmhCQTtBekVteGFaO0E2Rmh3YVE7RUFDSSxjcEJuQk47QXpFcXhhTjtBNkYvdmFRO0VBQ0ksY3BCdEJKO0F6RXV4YVI7QTZGOXZhUTtFQUNJLGNwQnpCQTtBekV5eGFaO0E2RjV2YUk7RUFDSTtFQUNBO0VBQ0E7QTdGOHZhUjtBNkYzdmFJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RjZ2YVI7QTZGM3ZhUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0Y2dmFaO0E2Rnp2YUk7RUFDSTtFQUNBO0VBQ0E7QTdGMnZhUjtBNkZ4dmFJO0VBQ0ksY3BCeEVHO0VvQnlFSDtBN0YwdmFSOztBNkZydmFBO0VBQ0k7RUFDQTtBN0Z3dmFKO0E2RnR2YUk7RUFDSTtFQUNBLDJDcEJqRVc7RW9Ca0VYO0VBQ0EsY3BCM0ZFO0F6RW0xYVY7O0E2Rm52YUE7O0VBRUksMkNwQjFFZTtFb0IyRWY7RUFDQSxjcEJqR007RW9Ca0dOO0E3RnN2YUo7O0E2Rmx2YUE7RUFDSSwyQ3BCbEZlO0VvQm1GZjtFQUNBLHNCcEIvSFM7RW9CZ0lUO0VBQ0E7QTdGcXZhSjs7QTZGN3VhSTs7Ozs7O0VBRUk7QTdGb3ZhUjtBNkZqdmFJOzs7RUFDSTtBN0ZxdmFSO0E2Rmx2YUk7OztFQUNJO0E3RnN2YVI7O0E2Rmp2YUE7O0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0ZvdmFKOztBNkZodmFBO0VBQ0k7RUFDQSxVcEJ2SUk7RW9Cd0lKO0VBQ0E7QTdGbXZhSjs7QTZGL3VhQTtFQUNJO0VBQ0E7QTdGa3ZhSjs7QTZGN3VhSTtFQUNJLHlCcEJ4S0c7RW9CeUtILGNwQjdKRTtFb0I4SkY7QTdGZ3ZhUjtBNkY3dWFJO0VBQ0k7QTdGK3VhUjs7QTZGMXVhQTtFQUNJO0VBQ0E7RUFDQTtBN0Y2dWFKO0E2RXQ1Wkk7RWdCMVZKO0lBTVE7SUFDQTtFN0Y4dWFOO0U2RjV1YU07SUFDSTtJQUNBO0U3Rjh1YVY7QUFDRjs7QTZGdnVhSTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsMkJwQnROSztFb0J1Tkw7RUFDQTtFQUNBO0E3RjJ1YVI7QTZGenVhUTs7RUFDSTtFQUNBO0VBQ0E7RUFDQSxjcEJ2Tko7RW9Cd05JO0VBQ0E7QTdGNHVhWjtBNkZ6dWFROztFQUNJO0E3RjR1YVo7QTZGenVhUTs7RUFDSTtBN0Y0dWFaOztBNkZ0dWFBO0VBQ0ksY3BCMU5NO0F6RW04YVY7O0E2RnJ1YUk7RUFDSTtBN0Z3dWFSOztBNkZwdWFBO0VBQ0k7QTdGdXVhSjs7QTZGbnVhQTtFQUNJO0VBQ0E7RUFDQTtFQUNBLGNwQi9PTTtFb0JnUE47QTdGc3VhSjs7QTZGbHVhQTtFQUNJO0VBQ0E7RUFDQTtBN0ZxdWFKO0E2Rm51YUk7RUFDSTtBN0ZxdWFSO0E2Rmx1YUk7RUFDSTtFQUNBO0VBQ0E7QTdGb3VhUjtBNkZqdWFJO0VBQ0k7RUFDQTtFQUNBLGNwQnRRRTtFb0J1UUY7QTdGbXVhUjtBNkZodWFJO0VBQ0k7RUFDQSxjcEJ2UUc7RW9Cd1FIO0E3Rmt1YVI7QTZGL3RhSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0EseUJwQmhSRztFb0JpUkg7RUFDQTtFQUNBO0E3Rml1YVI7O0E4RmxpYkE7RUFDRSwyQ3JCZ0VpQjtFcUIvRGpCO0VBQ0EsY3JCc0NRO0VxQnJDUjtFQUNBO0E5RnFpYkY7O0E4RmxpYkE7RUFDRTtBOUZxaWJGOztBOEZsaWJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTlGcWliRjs7QThGamliRTtFQUNFO0VBQ0E7QTlGb2liSjtBOEZqaWJFO0VBQ0U7QTlGbWliSjtBOEZoaWJFO0VBQ0U7QTlGa2liSjtBOEYvaGJFO0VBQ0UsY3JCT007QXpFMGhiVjtBOEY5aGJFO0VBQ0U7QTlGZ2liSjtBOEY5aGJJO0VBQ0U7RUFDQTtFQUNBO0E5RmdpYk47QThGNWhiRTtFQUNFO0VBQ0E7QTlGOGhiSjs7QThGMWhiQTtFQUNFO0VBQ0E7RUFDQTtBOUY2aGJGO0E4RjNoYkU7O0VBRUUseUJyQjVCTztFcUI2QlAsY3JCakJNO0VxQmtCTjtBOUY2aGJKO0E4RjFoYkU7RUFDRTtBOUY0aGJKO0E4RnpoYkU7RUFDRTtBOUYyaGJKO0E4RnhoYkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBOUYwaGJKO0E4RnZoYkU7RUFDRTtBOUZ5aGJKOztBOEZyaGJBOztFQUVFO0E5RndoYkY7O0E4RnJoYkE7RUFDRTtBOUZ3aGJGOztBOEZyaGJBO0VBQ0U7QTlGd2hiRjs7QThGcGhiRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlGdWhiSjtBOEZyaGJJO0VBQ0U7QTlGdWhiTjs7QThGbGhiQTtFQUNFO0E5RnFoYkY7O0E4RmxoYkE7RUFDRTtBOUZxaGJGO0E4Rm5oYkU7RUFDRTtBOUZxaGJKOztBOEZqaGJBO0VBQ0U7RUFDQSxzQnJCeEdXO0VxQnlHWDtFQUNBO0E5Rm9oYkY7QThGbGhiRTtFQUNFLGlDckI3R1M7RXFCOEdUO0E5Rm9oYko7QThGamhiRTtFQUNFO0E5Rm1oYko7O0E4Ri9nYkE7RUFDRTtFQUNBO0E5RmtoYkY7O0E4Ri9nYkE7RUFDRTtBOUZraGJGOztBOEYvZ2JBO0VBQ0U7QTlGa2hiRjs7QThGL2diQTtFQUNFO0E5RmtoYkY7O0E4RjlnYkU7RUFDRTtFQUNBO0VBQ0E7QTlGaWhiSjtBOEYvZ2JJO0VBQ0U7RUFDQTtBOUZpaGJOO0E4Ri9nYk07RUFDRTtBOUZpaGJSO0E4RjVnYkU7RUFDRTtBOUY4Z2JKO0E4RjNnYkU7RUFDRTtBOUY2Z2JKOztBOEZ4Z2JBO0VBQ0U7QTlGMmdiRjtBOEZ6Z2JFO0VBQ0U7RUFDQTtFQUNBO0E5RjJnYko7O0E4RnZnYkE7RUFDRTtFQUNBO0E5RjBnYkY7O0E4RnZnYkE7RUFDRTtBOUYwZ2JGOztBOEZ2Z2JBOztFQUVFO0E5RjBnYkY7O0E4RnZnYkE7RUFDRTtBOUYwZ2JGOztBOEZsZ2JBO0VBQ0U7RUFDQTtBOUZxZ2JGO0E4Rm5nYkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBOUZxZ2JKO0E4RmxnYkU7RUFDRTtFQUNBO0E5Rm9nYko7QThGaGdiRTs7RUFHRTtFQUNBO0VBQ0E7RUFDQTtBOUZpZ2JKO0E4RjkvYUU7O0VBR0U7RUFDQTtFQUNBO0VBQ0E7QTlGKy9hSjtBOEY1L2FFOztFQUdFO0E5RjYvYUo7QThGMS9hRTs7RUFHRTtBOUYyL2FKO0E4RngvYUU7O0VBR0U7QTlGeS9hSjtBOEZ0L2FFOztFQUdFO0E5RnUvYUo7QThGcC9hRTs7RUFHRTtBOUZxL2FKO0E4RmwvYUU7O0VBR0U7QTlGbS9hSjtBOEZoL2FFOztFQUdFO0VBQ0E7RUFDQTtFQUNBO0E5RmkvYUo7QThGOSthRTs7RUFHRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RisrYUo7O0ErRjl4YkE7O0VBQUE7QUFJQTtFQUNFO0VBQ0E7QS9GZ3liRjtBNkV6dmFJO0VrQnppQko7SUFLSTtFL0ZpeWJGO0FBQ0Y7QStGL3hiRTtFQUNFLDJDdEJvRGU7RXNCbkRmO0VBQ0E7QS9GaXliSjtBK0Y5eGJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsY3RCc0JNO0F6RTB3YlY7QStGN3hiRTs7RUFFRTtBL0YreGJKO0E2RTd3YUk7RWtCcGhCRjs7SUFLSTtFL0ZpeWJKO0FBQ0Y7QStGN3hiSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsY3RCSUk7QXpFMnhiVjtBK0Y3eGJNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLDhDdEJtQk87RXNCbEJQO0EvRit4YlI7QStGMXhiRTs7Ozs7Ozs7O0VBU0U7RUFDQTtFQUNBO0EvRjR4Yko7QStGMXhiSTs7Ozs7Ozs7O0VBQ0U7QS9Gb3liTjtBK0ZqeWJJOzs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFFRTtFQUNBO0VBQ0EsY3RCL0JJO0F6RWsxYlY7QStGaHpiSTs7Ozs7Ozs7O0VBQ0U7RUFDQTtBL0YwemJOO0ErRnZ6Ykk7Ozs7Ozs7OztFQUNFO0VBQ0E7RUFDQSxjdEIxQ0k7QXpFMjJiVjtBK0YvemJNOzs7Ozs7Ozs7RUFDRTtBL0Z5MGJSO0ErRnQwYk07Ozs7Ozs7OztFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSw4Q3RCL0JPO0VzQmdDUDtBL0ZnMWJSO0ErRjUwYkk7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQUVFO0EvRjgxYk47QStGMzFiSTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQUNFO0VBQ0E7RUFDQTtFQUNBO0EvRnEzYk47QStGbDNiSTs7Ozs7Ozs7O0VBQ0U7QS9GNDNiTjtBK0Z6M2JJOzs7Ozs7Ozs7RUFDRTtFQUNBO0EvRm00Yk47QStGaDRiSTs7Ozs7Ozs7O0VBQ0UsWXRCNUVFO0VzQjZFRjtBL0YwNGJOO0ErRnY0Ykk7Ozs7Ozs7OztFQUNFO0VBQ0E7QS9GaTViTjtBK0Y1NGJJO0VBQ0U7RUFDQSxzQnRCcEhPO0VzQnFIUDtFQUNBO0VBQ0E7QS9GODRiTjtBK0Y1NGJNO0VBQ0U7RUFDQTtBL0Y4NGJSO0ErRng0Ykk7RUFDRTtBL0YwNGJOO0ErRnI0Ykk7RUFDRTtBL0Z1NGJOO0ErRnI0Yk07RUFDRTtFQUNBO0EvRnU0YlI7O0ErRjkzYkU7O0VBQ0U7RUFDQSxjdEJqSU07RXNCa0lOO0EvRms0Yko7O0ErRjkzYkE7RUFDRTtBL0ZpNGJGO0ErRi8zYkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFFQTtFQUVBO0VBQ0E7RUFDQTtBL0Y4M2JKO0ErRjEzYkk7RUFDRTtFQUNBO0EvRjQzYk47O0FnR3BrY0E7O0VBQUE7QUFJQTtFQUNFO0VBQ0E7QWhHc2tjRjs7QWdHbmtjQTtFQUNFO0VBQ0E7QWhHc2tjRjtBZ0dwa2NFO0VBQ0U7QWhHc2tjSjs7QWdHbGtjQTtFQUNFO0lBQ0U7RWhHcWtjRjtBQUNGO0FnR2prY0E7RUFDRTtBaEdta2NGOztBZ0doa2NBO0VBQ0U7QWhHbWtjRjs7QWdHaGtjQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhHbWtjRjtBZ0dqa2NFO0VBQ0U7QWhHbWtjSjtBZ0doa2NFO0VBQ0Usd0J2QnRCYztFdUJ1QmQ7RUFDQTtBaEdra2NKO0FnR2hrY0k7RUFDRTtBaEdra2NOO0FnRzlqY0U7RUFDRTtBaEdna2NKO0E2RTFrYkk7RW1CdmZGO0lBSUk7SUFDQTtFaEdpa2NKO0FBQ0Y7QWdHOWpjRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FoR2drY0o7QTZFdGxiSTtFbUI5ZUY7SUFPSTtFaEdpa2NKO0FBQ0Y7QWdHL2pjSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsY3ZCbENJO0V1Qm1DSjtBaEdpa2NOO0FnRzlqY0k7RUFDRTtFQUNBLGN2QnhDSTtBekV3bWNWO0FnRzVqY0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBaEc4amNKO0FnRzVqY0k7O0VBRUU7RUFDQTtFQUNBO0FoRzhqY047QWdHMWpjRTtFQUNFO0VBQ0EsY3ZCL0RNO0V1QmdFTjtFQUNBO0FoRzRqY0o7QWdHempjRTtFQUNFO0VBQ0E7QWhHMmpjSjtBNkU3bmJJO0VtQmhjRjtJQUtJO0lBQ0E7RWhHNGpjSjtBQUNGO0FnRzFqY0k7O0VBRUU7QWhHNGpjTjtBZ0d4amNFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWhHMGpjSjtBZ0d2amNFOztFQUVFO0VBQ0E7RUFDQSxjdkIzRk07QXpFb3BjVjtBNkVucGJJO0VtQjFhRjs7SUFPSTtFaEcyamNKO0FBQ0Y7QWdHeGpjRTs7RUFFRTtFQUNBO0FoRzBqY0o7QWdHdmpjRTs7RUFFRTtFQUNBLHNCdkJqSVM7RXVCa0lUO0FoR3lqY0o7QWdHdGpjRTs7RUFFRTtFQUNBO0VBQ0E7QWhHd2pjSjtBNkUxcWJJO0VtQmxaRjs7SUFPSTtFaEcwamNKO0FBQ0Y7QWdHdGpjSTtFQUNFLGN2QjVISTtFdUI2SEo7RUFDQTtBaEd3amNOO0FnR3JqY0k7RUFDRTtFQUNBO0FoR3VqY047QWdHbmpjRTtFQUNFO0VBQ0E7RUFDQTtBaEdxamNKO0FnR2pqY0k7RUFDRTtFQUNBO0FoR21qY047QTZFbHNiSTtFbUJuWEE7SUFLSTtFaEdvamNOO0FBQ0Y7QWdHampjSTs7RUFFRTtBaEdtamNOO0FnR2pqY007O0VBQ0U7RUFDQSxjdkI3SkU7RXVCOEpGO0FoR29qY1I7QWdHaGpjSTtFQUNFO0FoR2tqY047QWdHaGpjTTtFQUNFO0VBQ0E7QWhHa2pjUjtBNkV4dGJJO0VtQjVWRTtJQUtJO0VoR21qY1I7QUFDRjtBZ0cvaWNJO0VBQ0UsY3ZCckxDO0V1QnNMRDtBaEdpamNOO0FnRzlpY0k7RUFDRSwyQ3ZCaEthO0V1QmlLYjtFQUNBLHNCdkI3TU87RXVCOE1QO0FoR2dqY047QWdHOWljTTtFQUNFO0FoR2dqY1I7QWdHOWljUTtFQUNFO0FoR2dqY1Y7O0FnR3ZpY0U7O0VBQ0U7RUFDQTtBaEcyaWNKO0FnR3ppY0k7O0VBQ0UsY3ZCNU1JO0V1QjZNSjtFQUNBO0FoRzRpY047QWdHemljSTs7RUFDRSxzQnZCeE9PO0V1QnlPUDtFQUNBO0VBQ0EscUN2Qi9MVTtBekUydWNoQjtBZ0cxaWNNOztFQUNFO0VBQ0E7QWhHNmljUjtBZ0d6aWNJOztFQUNFO0VBQ0E7RUFDQTtFQUNBLHNCdkJ2UE87QXpFbXljYjtBZ0cxaWNNOztFQUNFO0FoRzZpY1I7QWdHMWljTTs7RUFDRTtBaEc2aWNSO0FnR3hpY0U7O0VBQ0U7RUFDQTtBaEcyaWNKO0E2RXp4Ykk7RW1CcFJGOztJQUtJO0VoRzZpY0o7QUFDRjtBZ0cxaWNFOztFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsY3ZCM1BNO0V1QjRQTjtBaEc2aWNKO0FnRzNpY0k7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLDhDdkI3T1M7RXVCOE9UO0FoRzhpY047QWdHMWljRTs7RUFDRTtFQUNBO0FoRzZpY0o7QWdHMWljRTs7RUFDRTtBaEc2aWNKO0FnRzFpY0U7O0VBQ0U7RUFDQTtFQUNBLHNCdkIzU1M7QXpFdzFjYjs7QWdHemljQTtFQUNFO0FoRzRpY0Y7QTZFcjBiSTtFbUJ4T0o7SUFJSTtFaEc2aWNGO0FBQ0Y7O0FnRzFpY0E7O0VBRUU7QWhHNmljRjs7QWdHeGljRTtFQUNFO0FoRzJpY0o7O0FnR3RpY0E7RUFDRTtFQUNBO0FoR3lpY0Y7O0FnR3RpY0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhHeWljRjs7QWdHdGljQTtFQUNFO0VBQ0E7RUFDQTtBaEd5aWNGOztBZ0d0aWNBO0VBQ0U7RUFDQTtBaEd5aWNGOztBZ0d0aWNBO0VBQ0U7RUFDQTtBaEd5aWNGOztBZ0d0aWNBO0VBQ0U7QWhHeWljRjs7QWlHeDZjQTs7RUFBQTtBQU1JOztFQUNJO0FqR3k2Y1I7QWlHdDZjSTs7RUFDSTtFQUNBO0FqR3k2Y1I7QWlHdDZjSTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpHeTZjUjtBaUdwNmNJOzs7Ozs7Ozs7O0VBRUk7QWpHODZjUjtBNkU3NWJJO0VvQm5oQkE7Ozs7Ozs7Ozs7SUFLUTtFakd3N2NWO0FBQ0Y7O0FpR2w3Y0k7Ozs7RUFFSTtBakd1N2NSO0E2RWw3Ykk7RW9CdmdCQTs7OztJQUtRO0VqRzI3Y1Y7QUFDRjs7QWlHcDdjSTs7O0VBQ0k7QWpHeTdjUjs7QWlHcDdjSTtFQUNJO0FqR3U3Y1I7QWlHcjdjUTtFQUNJO0VBQ0E7QWpHdTdjWjs7QWtHci9jQTtFQUNFO0FsR3cvY0Y7O0FrR3IvY0E7RUFDRTtBbEd3L2NGOztBa0dyL2NBO0VBQ0UsY3pCaUNTO0V5QmhDVDtBbEd3L2NGO0FrR3YvY0U7RUFDRTtFQUNBO0VBQ0E7QWxHeS9jSjs7QWtHci9jQTtFQUNFO0VBQ0E7QWxHdy9jRjs7QWtHci9jQTtFQUNFO0FsR3cvY0Y7O0FtR2hoZEE7O0VBQUE7QUFLQztFQUNHO0VBQ0E7RUFDRix5QjFCdUJPO0F6RTAvY1Q7QTZFNStiSTtFc0J4aUJIO0lBS0s7RW5HbWhkSjtBQUNGO0FtR2xoZEk7RUFDRTtFQUNBLGMxQjJCSTtFMEIxQko7QW5Hb2hkTjtBbUduaGRNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5HcWhkUjtBbUduaGRNO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsbUIxQkVDO0UwQkREO0FuR3FoZFI7QTZFdGdjSTtFc0JwaEJFO0lBT0k7SUFDQTtJQUNBO0VuR3VoZFI7QUFDRjtBbUd0aGRRO0VBQ0Usc0IxQmZHO0F6RXVpZGI7QW1HcmhkTTtFQUNFO0VBQ0E7RUFDQSxjMUJGRTtFMEJHRjtFQUNBLG1CMUJkQztFMEJlRDtFQUNBO0VBQ0E7QW5HdWhkUjtBNkUxaGNJO0VzQnJnQkU7SUFVSTtFbkd5aGRSO0FBQ0Y7QTZFL2hjSTtFc0J2ZkE7SUFFSTtFbkd3aGROO0VtR3ZoZE07SUFDRTtFbkd5aGRSO0FBQ0Y7QW1HcmhkTTtFQUNFO0FuR3VoZFI7QW1HbmhkRTtFQUNFO0VBQ0E7RUFDQTtBbkdxaGRKO0FtR25oZEU7RUFDRTtBbkdxaGRKO0FtR25oZEU7RUFDRTtBbkdxaGRKOztBb0dsbWRBO0VBQ0U7RUFDQSwyQzNCK0RpQjtFMkI5RGpCO0FwR3FtZEY7QW9Hbm1kRTtFQUNFO0VBQ0E7RUFDQTtBcEdxbWRKOztBb0dqbWRBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXBHb21kRjs7QW9Ham1kQTtFQUNFO0VBQ0E7QXBHb21kRjs7QW9Ham1kQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FwR29tZEY7O0FvR2ptZEE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxjM0JNUTtFMkJMUjtBcEdvbWRGOztBb0dqbWRBO0VBQ0U7RUFDQTtBcEdvbWRGO0FvR2xtZEU7RUFDRTtFQUNBO0VBQ0E7QXBHb21kSjtBNkVybWNJO0V1QmxnQkY7SUFNSTtFcEdxbWRKO0FBQ0Y7QW9HbG1kRTtFQUNFO0FwR29tZEo7QW9Ham1kRTtFQUNFO0FwR21tZEo7QW9HaG1kRTtFQUNFO0VBQ0E7QXBHa21kSjs7QW9HOWxkQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGMzQjlCUTtBekUrbmRWOztBb0c5bGRBO0VBSUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEc4bGRGO0FvRzVsZEU7RUFDRTtBcEc4bGRKO0FvRzNsZEU7RUFDRTtFQUNBO0FwRzZsZEo7QW9HM2xkSTtFQUNFO0VBQ0E7RUFDQTtBcEc2bGROO0FvR3psZEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBcEcybGRKO0FvR3psZEk7RUFDRTtBcEcybGROO0FvR3hsZEk7RUFDRTtBcEcwbGROO0FvR3ZsZEk7RUFDRTtBcEd5bGROO0FvR3ZsZE07RUFDRTtFQUNBO0FwR3lsZFI7QW9HdmxkUTtFQUNFO0FwR3lsZFY7QW9HcmxkTTs7RUFFRTtBcEd1bGRSO0FvR2xsZEU7RUFDRTtFQUNBO0VBQ0E7QXBHb2xkSjtBb0dsbGRJO0VBQ0UseUIzQjVGSztFMkI2Rkw7RUFDQTtBcEdvbGROO0FvR2psZEk7RUFDRTtBcEdtbGROO0FvRy9rZEU7RUFDRTtFQUNBO0FwR2lsZEo7QW9HL2tkSTtFQUNFO0FwR2lsZE47QW9HN2tkRTtFQUNFO0VBQ0E7RUFDQSxjM0J2SE07RTJCd0hOO0VBQ0E7QXBHK2tkSjtBb0c3a2RJO0VBQ0U7QXBHK2tkTjtBb0cza2RFO0VBQ0U7RUFDQTtFQUNBLGMzQm5JTTtFMkJvSU47RUFDQTtFQUNBO0VBQ0E7QXBHNmtkSjtBb0cxa2RFO0VBQ0U7RUFDQTtBcEc0a2RKO0FvRzFrZEk7RUFDRTtFQUNBO0VBQ0EsYzNCakpJO0UyQmtKSjtFQUNBO0VBQ0E7QXBHNGtkTjtBb0cxa2RNO0VBQ0U7RUFDQTtFQUNBO0FwRzRrZFI7QW9HeGtkSTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGMzQjVLRTtFMkI2S0Y7RUFDQTtBcEcwa2ROO0FvR3hrZE07RUFDRTtFQUNBO0FwRzBrZFI7QW9HcmtkRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEd1a2RKO0FvR3BrZEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBHc2tkSjtBb0dwa2RJO0VBQ0UsYzNCakxNO0F6RXV2ZFo7QW9HbmtkSTtFQUNFLGMzQnBMTTtBekV5dmRaO0FvR2xrZEk7RUFDRSxjM0J2TEE7QXpFMnZkTjtBb0dqa2RJO0VBQ0UsYzNCMUxFO0F6RTZ2ZFI7QW9HaGtkSTtFQUNFLGMzQjdMTTtBekUrdmRaO0FvRzlqZEU7RUFDRTtFQUNBO0VBQ0E7QXBHZ2tkSjtBb0c3amRFO0VBQ0U7QXBHK2pkSjs7QW9HM2pkQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEc4amRGOztBb0czamRBO0VBQ0U7RUFDQTtBcEc4amRGOztBb0czamRBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxjM0JsUEs7QXpFZ3pkUDs7QW9HM2pkQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwRzhqZEY7QW9HNWpkRTtFQUNFLGMzQnhRSTtFMkJ5UUo7RUFDQTtBcEc4amRKO0FvRzNqZEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwRzZqZEo7O0FvR3pqZEE7RUFDRTtBcEc0amRGOztBb0d6amRBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxjM0JsUlM7QXpFODBkWDtBb0cxamRFO0VBQ0UsYzNCNVJHO0F6RXcxZFA7O0FvR3hqZEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwRzJqZEY7QW9HempkRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FwRzJqZEo7QW9HempkSTtFQUNFLGMzQjFTTTtBekVxMmRaO0FvR3ZqZEU7RUFDRTtFQUNBLGMzQjdTTztFMkI4U1A7QXBHeWpkSjtBb0d2amRJO0VBQ0UsYzNCeFRDO0F6RWkzZFA7O0FvR3BqZEE7RUFDRTtFQUNBLG1CM0J4VFM7RTJCeVRUO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxjM0I5VU07RTJCK1VOO0FwR3VqZEY7QW9HcmpkRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEd1amRKO0FvR3BqZEU7RUFDRSx5QjNCclZHO0F6RTI0ZFA7QW9HbmpkRTtFQUNFO0FwR3FqZEo7O0FvR2pqZEE7RUFDRTtJQUNFO0VwR29qZEY7O0VvR2pqZEE7O0lBRUU7RXBHb2pkRjtBQUNGO0FvR2pqZEE7RUFDRTtJQUNFO0VwR21qZEY7QUFDRjtBb0doamRBO0VBRUU7O0lBRUU7RXBHaWpkRjtBQUNGO0FxRzM4ZEE7RUFDRSxjNUIyQ1E7QXpFazZkVjs7QXFHejhkRTtFQUNFO0FyRzQ4ZEo7O0FzR2w5ZEE7RUFDRTtFQUVBLDJDN0I4RGlCO0U2QjdEakI7QXRHbzlkRjtBc0dsOWRFO0VBQ0UsMkM3QjBEZTtFNkJ6RGY7RUFDQTtBdEdvOWRKO0FzR2o5ZEU7RUFDRSwyQzdCb0RlO0U2Qm5EZjtFQUNBO0F0R205ZEo7QXNHaDlkRTs7RUFFRSxjN0JxQk07RTZCcEJOO0VBQ0E7RUFDQSwyQzdCMENlO0U2QnpDZjtBdEdrOWRKO0FzRy84ZEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBdEdpOWRKO0E2RW44Y0k7RXlCbGhCRjtJQU9JO0V0R2s5ZEo7QUFDRjtBc0doOWRJOztFQUVFLGM3QkVJO0U2QkRKO0VBQ0EsMkM3QndCYTtBekUwN2RuQjtBc0cvOGRJO0VBQ0U7RUFDQTtBdEdpOWROO0FzRy84ZE07RUFDRSxjN0JIRztBekVvOWRYO0FzRzc4ZEk7RUFDRTtFQUNBO0F0Rys4ZE47QXNHNzhkTTtFQUNFLGM3QmpCRTtFNkJrQkY7RUFDQSwyQzdCS1c7QXpFMDhkbkI7QXNHMThkRTtFQUNFO0VBQ0E7RUFDQSwyQzdCSGU7RTZCSWY7RUFDQTtFQUNBLGM3Qm5DSztBekUrK2RUO0FzR3o4ZEU7O0VBRUU7RUFDQSxxQjdCdkNTO0F6RWsvZGI7QXNHeDhkRTtFQUNFO0VBQ0EsMkM3QmpCZTtFNkJrQmYsYzdCMUNNO0U2QjJDTjtFQUNBO0F0RzA4ZEo7QXNHeDhkSTtFQUNFO0F0RzA4ZE47QXNHdDhkRTtFQUNFLGM3QnpESztFNkIwREw7QXRHdzhkSjtBc0dyOGRFO0VBQ0U7RUFDQTtFQUNBLDJDN0JuQ2U7RTZCb0NmLGM3QjVETTtFNkI2RE47RUFDQTtBdEd1OGRKO0FzR3A4ZEU7RUFDRTtBdEdzOGRKO0FzR244ZEU7O0VBRUUsMkM3Qi9DZTtFNkJnRGYsYzdCbkVPO0U2Qm9FUDtBdEdxOGRKO0FzR2w4ZEU7OztFQUdFLDJDN0J2RGU7RTZCd0RmLGM3QmhGTTtFNkJpRk47RUFDQTtFQUNBO0F0R284ZEo7QXNHajhkRTtFQUNFO0VBQ0E7RUFDQSwyQzdCakVlO0U2QmtFZjtFQUNBLGM3QmhHSztBekVtaWVUO0FzR2g4ZEU7RUFDRTtFQUNBO0F0R2s4ZEo7QXNHaDhkSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEdrOGROO0FzRy83ZEk7RUFDRTtFQUNBO0VBQ0E7QXRHaThkTjtBc0c3N2RJO0VBQ0U7RUFDQTtFQUNBO0F0Rys3ZE47QXNHMTdkSTtFQUNFO0F0RzQ3ZE47QXNHeDdkRTtFQUNFLGM3QjNITztBekVxamVYO0FzR3Y3ZEU7RUFDRSxjN0IvSE87QXpFd2plWDtBc0dyN2RJO0VBREY7SUFFSTtFdEd3N2RKO0FBQ0Y7QXNHcDdkSTtFQUNFLHlCN0IxSUs7RTZCMklMLHFCN0IzSUs7QXpFaWtlWDtBc0duN2RJO0VBQ0UseUI3QnpKRztFNkIwSkgscUI3QjFKRztFNkIySkgsYzdCdEpJO0U2QnVKSjtBdEdxN2ROO0FzR2o3ZEU7RUFDRTtFQUNBO0F0R203ZEo7QXNHaDdkRTtFQUNFO0VBQ0E7RUFDQTtBdEdrN2RKO0FzRy82ZEU7RUFDRTtFQUNBO0VBQ0E7QXRHaTdkSjtBNkV0bGRJO0V5QjlWRjtJQU9JO0lBQ0E7RXRHaTdkSjtBQUNGO0FzRzk2ZEU7RUFDRTtBdEdnN2RKO0FzRzc2ZEU7RUFDRSxjN0JwTE07QXpFbW1lVjtBc0c1NmRFO0VBQ0U7QXRHODZkSjtBc0c1NmRJO0VBQ0U7RUFDQTtBdEc4NmROO0FzRzE2ZEU7RUFDRTtFQUNBO0VBQ0EsYzdCdE1NO0F6RWtuZVY7QXNHejZkRTtFQUNFO0VBQ0E7RUFDQSxjN0J2TU87RTZCd01QO0VBQ0E7QXRHMjZkSjtBc0d4NmRFO0VBQ0UsYzdCN01PO0F6RXVuZVg7QXNHdjZkRTtFQUNFLHlCN0JqTk87RTZCa05QLGM3QmxPSTtBekUyb2VSO0FzR3Q2ZEU7RUFDRTtFQUNBO0VBQ0EsMkM3QnJNZTtFNkJzTWY7RUFDQTtBdEd3NmRKO0FzR3I2ZEU7RUFDRTtFQUNBO0VBQ0E7QXRHdTZkSjtBc0dwNmRFO0VBQ0U7RUFDQSxzQjdCN1BTO0U2QjhQVDtBdEdzNmRKO0FzR242ZEU7RUFDRTtBdEdxNmRKOztBc0dqNmRBO0VBQ0U7QXRHbzZkRjs7QXNHajZkQTtFQUNFO0F0R282ZEY7O0FzR2o2ZEE7RUFDRTtBdEdvNmRGOztBc0cvNWRJO0VBQ0U7QXRHazZkTjs7QXVHNXNlRTtFQUNFO0VBQ0E7RUFDQTtBdkcrc2VKOztBd0dudGVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXhHc3RlRjtBd0dydGVFO0VBQ0U7QXhHdXRlSjtBd0dydGVFO0VBQ0U7RUFDQTtBeEd1dGVKO0F3R3J0ZUU7RUFDRTtBeEd1dGVKO0F3R3J0ZUU7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EseUIvQlFJO0F6RThzZVI7QTZFL3JkSTtFMkI5aEJGO0lBU0k7RXhHd3RlSjtBQUNGO0F3R3R0ZUU7RUFDRSxjL0JjTztBekUwc2VYO0F3R3Z0ZUk7RUFDRTtFQUNBLHNCL0JUTztBekVrdWViO0F3R3Z0ZUk7RUFDRSxjL0JhUztBekU0c2VmO0F3R3J0ZUk7RUFDRSxjL0JLSTtFK0JKSjtFQUNBO0VBQ0E7QXhHdXRlTjtBd0dwdGVFO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsYy9CVFU7QXpFK3RlZDtBd0dydGVJO0VBQ0Usc0IvQjdCTztBekVvdmViO0F3R3B0ZUU7RUFDRTtBeEdzdGVKO0F3R250ZUk7RUFDQTtFQUNBO0VBQ0Esc0IvQnZDUztBekU0dmViO0F3R250ZUk7RUFDRTtBeEdxdGVOO0F3R250ZUk7RUFDRTtBeEdxdGVOO0F3R2x0ZUU7RUFDRTtFQUNBO0F4R290ZUo7QXdHbHRlRTtFQUNFO0VBQ0EsYy9CbENPO0F6RXN2ZVg7QXdHanRlRTtFQUNFLGMvQnBDTTtBekV1dmVWO0F3R2h0ZUU7RUFDRSxjL0J4Q007QXpFMHZlVjtBd0dodGVFO0VBQ0U7RUFDQSxzQi9CbEVTO0F6RW94ZWI7QXdHL3NlRTtFQUNFO0VBQ0E7RUFDQTtBeEdpdGVKO0E2RWx3ZEk7RTJCbGRGO0lBS0k7RXhHbXRlSjtBQUNGO0F3R2p0ZUU7RUFDRTtFQUNBO0F4R210ZUo7QXdHaHRlSTtFQUNFLGMvQjdESTtBekUrd2VWO0F3Ry9zZU07RUFDRSxzQi9CdkZLO0UrQndGTDtBeEdpdGVSO0F3RzdzZUU7RUFDRSxjL0J2RU07QXpFc3hlVjtBd0c3c2VFO0VBQ0U7RUFDQTtBeEcrc2VKO0F3RzVzZUU7RUFDRTtBeEc4c2VKO0F3RzFzZUk7RUFDRTtFQUNBO0VBQ0E7QXhHNHNlTjtBd0cxc2VJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEc0c2VOO0F3RzFzZUk7RUFDRSxpQy9CekhPO0UrQjBIUCw2Qi9CMUhPO0F6RXMwZWI7QXdHenNlRTs7RUFFRTtBeEcyc2VKO0F3RzFzZUk7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXhHNnNlTjtBd0czc2VJOztFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhHOHNlTjtBd0c1c2VJOztFQUNFLGlDL0JqSk87RStCa0pQLDZCL0JsSk87QXpFaTJlYjtBd0czc2VJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEc2c2VOO0F3RzNzZUk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEc2c2VOO0F3RzNzZUk7RUFDRSxpQy9CdktPO0UrQndLUCw2Qi9CeEtPO0F6RXEzZWI7QXdHNXNlTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F4RzhzZVI7O0F3R3hzZUE7RUFDRTtBeEcyc2VGOztBd0d4c2VBO0VBQ0U7QXhHMnNlRjs7QXlHejVlQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLG1DaENtQmdCO0VnQ2xCaEI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F6RzQ1ZUY7O0F5R3g1ZUE7RUFDRSxjaEMwQlE7QXpFaTRlVjs7QXlHeDVlQTtFQUNFO0VBQ0E7RUFDQTtBekcyNWVGOztBeUd4NWVBO0VBQ0U7QXpHMjVlRjs7QXlHdjVlRTtFQURGO0lBRUk7SUFDQTtFekcyNWVGO0FBQ0Y7O0EwRzE3ZUk7RUFDSSxzQmpDb0JLO0F6RXk2ZWI7QTBHMzdlSTtFQUNJO0VBQ0E7QTFHNjdlUjtBMEczN2VJO0VBQ0k7QTFHNjdlUjtBMEczN2VJOztFQUNJLGNqQ2tCQTtFaUNqQkE7QTFHODdlUjs7QTJHMzhlQTtFQUNJO0VBQ0E7RUFDQSxjbENzQ007RWtDckNOO0EzRzg4ZUo7QTJHNThlSTtFQUNJO0VBQ0EsY2xDb0NFO0F6RTA2ZVY7QTJHMThlUTtFQUNJO0EzRzQ4ZVo7QTJHejhlUTtFQUNJO0EzRzI4ZVo7QTJHeDhlUTtFQUNJO0lBQ0k7SUFDQTtFM0cwOGVkO0UyR3Y4ZVU7SUFDSTtFM0d5OGVkO0FBQ0Y7QTJHcjhlSTtFQUNJO0VBQ0E7RUFDQTtBM0d1OGVSO0E2RTc3ZEk7RThCN2dCQTtJQU1RO0UzR3c4ZVY7QUFDRjtBNkVsOGRJO0U4QjdnQkE7SUFVUTtFM0d5OGVWO0FBQ0Y7QTJHdjhlUTtFQUNJO0EzR3k4ZVo7QTJHdjhlWTtFQUNJO0EzR3k4ZWhCO0EyR3Y4ZWdCO0VBQ0k7RUFDQTtBM0d5OGVwQjtBNkVqOWRJO0U4QjFmWTtJQUtRO0UzRzA4ZXRCO0FBQ0Y7QTJHdjhlZ0I7RUFDSTtBM0d5OGVwQjtBMkd2OGVvQjtFQUNJO0EzR3k4ZXhCO0EyR3I4ZWdCO0VBQ0k7RUFDQTtFQUNBO0EzR3U4ZXBCO0EyR3I4ZW9CO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQSxjbENoQ2I7QXpFdStlWDtBMkdyOGV3QjtFQUNJLGNsQzFDckI7QXpFaS9lUDtBMkduOGVvQjtFQUNJO0VBQ0E7RUFDQSx5QmxDMUNiO0VrQzJDYTtBM0dxOGV4QjtBMkduOGV3QjtFQUNJO0EzR3E4ZTVCO0EyR2w4ZXdCO0VBQ0k7RUFDQTtFQUNBO0EzR284ZTVCO0EyR2o4ZXdCO0VBQ0kseUJsQy9EckI7QXpFa2dmUDtBMkcvN2VvQjtFQUNJO0VBQ0E7QTNHaThleEI7QTJHLzdld0I7O0VBRUk7QTNHaThlNUI7QTJHNTdlZ0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBM0c4N2VwQjtBMkczN2VnQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxjbEN2RlI7QXpFb2hmWjtBMkd4N2VRO0VBQ0k7RUFDQTtFQUNBO0EzRzA3ZVo7QTZFdmhlSTtFOEJ0YUk7SUFNUTtFM0cyN2VkO0FBQ0Y7QTJHejdlWTs7RUFFSTtBM0cyN2VoQjtBMkd4N2VZO0VBQ0k7RUFDQTtFQUNBLGNsQzFHTDtBekVvaWZYO0EyR3Y3ZVk7RUFDSTtBM0d5N2VoQjtBMkd0N2VZO0VBQ0k7RUFDQTtBM0d3N2VoQjtBMkdyN2VZO0VBQ0k7RUFDQTtFQUNBO0VBQ0EsbUNsQ2pKRTtFa0NrSkY7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzR3U3ZWhCO0EyR3A3ZVk7RUFDSTtFQUNBO0EzR3M3ZWhCO0EyR3A3ZWdCO0VBQ0ksY2xDeElUO0VrQ3lJUztBM0dzN2VwQjtBMkduN2VnQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0dxN2VwQjtBMkdoN2VRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTNHazdlWjtBMkdoN2VZO0VBQ0k7QTNHazdlaEI7QTJHaDdlZ0I7RUFDSTtBM0drN2VwQjtBMkc5NmVZO0VBQ0k7QTNHZzdlaEI7QTJHMzZlWTtFQUNJLGNsQ2pMTjtBekU4bGZWO0EyR3g2ZUk7RUFDSTtBM0cwNmVSO0EyR3g2ZVE7RUFDSTtBM0cwNmVaO0EyR3Q2ZUk7RUFDSTtBM0d3NmVSO0EyR3I2ZUk7RUFDSSx5QmxDNU1HO0VrQzZNSDtBM0d1NmVSO0EyR3A2ZUk7RUFDSTtFQUNBO0EzR3M2ZVI7QTJHcDZlUTtFQUNJO0VBQ0EsY2xDMU1GO0F6RWduZlY7QTJHbjZlUTtFQUNJO0EzR3E2ZVo7QTJHajZlSTtFQUNJO0VBQ0EsY2xDbE5HO0VrQ21OSDtFQUNBO0VBQ0E7QTNHbTZlUjtBMkdoNmVJO0VBQ0k7RUFDQTtFQUNBO0EzR2s2ZVI7QTJHaDZlUTtFQUNJO0VBQ0E7RUFDQTtBM0drNmVaO0EyRy81ZVE7RUFDSTtBM0dpNmVaO0EyRzc1ZVk7RUFDSTtBM0crNWVoQjtBMkczNWVRO0VBQ0k7QTNHNjVlWjtBMkczNWVZO0VBQ0k7QTNHNjVlaEI7QTJHejVlUTtFQUNJO0EzRzI1ZVo7QTJHejVlWTtFQUNJO0EzRzI1ZWhCO0EyR3Y1ZVE7RUFDSTtBM0d5NWVaO0EyR3Y1ZVk7RUFDSTtBM0d5NWVoQjtBMkdwNWVJO0VBQ0k7RUFDQTtFQUNBO0EzR3M1ZVI7QTJHbjVlSTtFQUNJO0VBQ0E7RUFDQTtBM0dxNWVSO0EyR2w1ZUk7RUFDSTtFQUNBO0VBQ0E7QTNHbzVlUjtBMkdsNWVRO0VBQ0k7RUFDQTtFQUNBLGNsQzFSRDtBekU4cWZYO0EyR2o1ZVE7RUFDSTtFQUNBO0EzR201ZVo7QTJHaDVlUTtFQUNJLGNsQ25TRDtBekVxcmZYO0EyRy80ZVE7RUFDSTtBM0dpNWVaO0EyRzc0ZUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzRys0ZVI7QTZFaHNlSTtFOEJwTkE7SUFRUTtJQUNBO0UzR2c1ZVY7QUFDRjtBMkc5NGVRO0VBQ0k7QTNHZzVlWjtBMkc3NGVRO0VBQ0k7QTNHKzRlWjtBMkc1NGVRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzRzg0ZVo7QTZFcHRlSTtFOEJoTUk7SUFTUTtFM0crNGVkO0FBQ0Y7QTJHNzRlWTtFQUNJO0VBQ0E7RUFDQTtBM0crNGVoQjtBMkc3NGVnQjtFQUNJO0VBQ0EsY2xDbFZUO0VrQ21WUztBM0crNGVwQjtBMkc1NGVnQjtFQUNJO0VBQ0EsY2xDeFZUO0VrQ3lWUztBM0c4NGVwQjtBMkcxNGVZO0VBQ0k7RUFDQTtFQUNBO0EzRzQ0ZWhCO0EyR3o0ZVk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzRzI0ZWhCO0EyR3Y0ZVE7RUFDSSxjbENuWEQ7QXpFNHZmWDtBMkd0NGVRO0VBQ0k7RUFDQTtFQUNBO0EzR3c0ZVo7QTJHdDRlWTtFQUNJLGNsQ2pZTjtFa0NrWU07RUFDQTtBM0d3NGVoQjtBMkdyNGVZO0VBQ0k7RUFDQTtFQUNBO0EzR3U0ZWhCO0EyR3A0ZVk7RUFDSTtFQUNBO0EzR3M0ZWhCO0EyR240ZVk7RUFDSTtBM0dxNGVoQjtBMkdsNGVZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzR280ZWhCO0EyR2o0ZVk7O0VBRUk7RUFDQTtFQUNBO0VBQ0EsY2xDbmFOO0VrQ29hTTtFQUNBO0EzR200ZWhCO0EyR2g0ZVk7RUFDSSx5QmxDcGFMO0VrQ3FhSyxxQmxDcmFMO0F6RXV5Zlg7QTJHLzNlWTtFQUNJLHlCbENuYlA7RWtDb2JPLHFCbENwYlA7RWtDcWJPLGNsQ2hiTjtFa0NpYk07QTNHaTRlaEI7QTJHNTNlSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0EzRzgzZVI7QTJHNTNlUTs7RUFFSTtFQUNBO0VBQ0E7RUFDQTtBM0c4M2VaO0EyRzUzZVk7O0VBQ0ksY2xDL2JMO0F6RTh6Zlg7QTJHMzNlUTtFQUNJO0VBQ0E7QTNHNjNlWjtBMkcxM2VRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNHNDNlWjtBNkUvMGVJO0U4QnZESTtJQWFRO0lBQ0E7SUFDQTtFM0c2M2VkO0FBQ0Y7QTJHMzNlWTtFQUNJO0VBQ0EsY2xDNWRMO0VrQzZkSztFQUNBO0EzRzYzZWhCO0EyRzMzZWdCO0VBQ0k7QTNHNjNlcEI7QTZFLzFlSTtFOEIvQlk7SUFJUTtFM0c4M2V0QjtBQUNGO0EyRzEzZVk7RUFDSTtFQUNBLGNsQzNlTDtFa0M0ZUs7RUFDQTtBM0c0M2VoQjtBNkUxMmVJO0U4QnRCUTtJQU9RO0UzRzYzZWxCO0FBQ0Y7QTJHejNlUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNHMjNlWjtBNkV6M2VJO0U4QlZJO0lBV1E7SUFDQTtJQUNBO0UzRzQzZWQ7QUFDRjtBMkd6M2VRO0VBQ0k7RUFDQSxjbEN4Z0JEO0VrQ3lnQkM7RUFDQTtBM0cyM2VaO0E2RXQ0ZUk7RThCT0k7SUFPUTtFM0c0M2VkO0FBQ0Y7QTJHejNlUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0EzRzIzZVo7QTJHejNlWTtFQUNJLGNsQ3hoQkw7RWtDeWhCSztFQUNBO0VBQ0E7QTNHMjNlaEI7QTJHeDNlWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNHMDNlaEI7QTJHdDNlUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzR3czZVo7QTJHdDNlWTtFQUNJO0EzR3czZWhCO0EyR3IzZVk7RUFDSTtBM0d1M2VoQjtBMkdwM2VZO0VBQ0k7QTNHczNlaEI7QTJHbDNlUTtFQUNJO0EzR28zZVo7QTJHajNlUTtFQUNJO0VBQ0E7RUFDQTtBM0dtM2VaO0EyR2gzZVE7RUFDSTtFQUNBO0EzR2szZVo7QTZFcjhlSTtFOEJpRkk7SUFLUTtJQUNBO0UzR20zZWQ7QUFDRjtBMkdoM2VRO0VBQ0k7QTNHazNlWjtBNkU5OGVJO0U4QjhGUTtJQUVRO0UzR2szZWxCO0FBQ0Y7QTJHLzJlWTtFQUNJO0VBQ0E7QTNHaTNlaEI7QTJHLzJlZ0I7O0VBRUk7QTNHaTNlcEI7QTJHOTJlZ0I7RUFDSTtBM0dnM2VwQjtBMkc3MmVnQjtFQUNJO0EzRysyZXBCO0EyR3oyZUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzRzIyZVI7QTJHejJlUTtFQUNJLGNsQ3JvQkQ7QXpFZy9mWDtBMkd2MmVJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0d5MmVSO0EyR3QyZUk7RUFDSTtBM0d3MmVSO0EyR3IyZUk7RUFDSTtBM0d1MmVSO0EyR3AyZUk7RUFDSTtBM0dzMmVSO0EyR24yZUk7RUFDSTtBM0dxMmVSO0EyR2wyZUk7RUFDSTtBM0dvMmVSO0EyR2oyZUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBM0dtMmVSO0EyR2gyZUk7RUFDSTtBM0drMmVSO0EyRy8xZUk7RUFDSTtBM0dpMmVSO0EyRzkxZUk7RUFDSTtFQUNBO0VBQ0E7QTNHZzJlUjtBMkc3MWVJO0VBQ0k7RUFDQSxjbEM1ckJHO0VrQzZyQkg7QTNHKzFlUjtBMkc1MWVJO0VBQ0k7RUFDQSxjbENsc0JHO0VrQ21zQkg7QTNHODFlUjtBMkczMWVJO0VBQ0k7RUFDQTtFQUNBO0EzRzYxZVI7QTJHMTFlSTtFQUNJO0EzRzQxZVI7QTJHejFlSTtFQUNJO0VBQ0E7RUFDQTtBM0cyMWVSO0EyR3oxZVE7O0VBRUk7RUFDQTtFQUNBO0EzRzIxZVo7QTJHeDFlUTtFQUNJO0VBQ0E7QTNHMDFlWjtBMkd2MWVRO0VBQ0k7QTNHeTFlWjtBMkdqMWVJO0VBQ0k7QTNHbTFlUjtBMkdqMWVRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0dtMWVaO0EyR2gxZVE7RUFDSTtFQUNBO0EzR2sxZVo7QTJHOTBlSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzR2cxZVI7QTJHOTBlUTtFQUNJO0EzR2cxZVo7QTJHNzBlUTtFQUNJO0EzRyswZVo7QTJHNTBlUTtFQUNJO0EzRzgwZVo7QTJHMTBlSTtFQUNJO0EzRzQwZVI7QTJHejBlSTtFQUNJO0EzRzIwZVI7QTJHeDBlSTtFQUNJO0VBQ0E7RUFDQTtBM0cwMGVSO0EyR3QwZVE7RUFDSTtBM0d3MGVaO0EyR2wwZVk7RUFDSTtBM0dvMGVoQjtBMkdoMGVRO0VBQ0k7QTNHazBlWjtBMkdoMGVZO0VBQ0k7RUFDQTtBM0drMGVoQjtBMkdoMGVnQjs7RUFFSTtBM0drMGVwQjtBMkcvemVnQjtFQUNJO0EzR2kwZXBCO0EyRzl6ZWdCO0VBQ0k7QTNHZzBlcEI7QTJHMXplSTtFQUNJO0VBQ0E7QTNHNHplUjtBMkd6emVJO0VBQ0k7QTNHMnplUjtBMkd4emVJO0VBQ0k7SUFDSTtJQUNBO0UzRzB6ZVY7RTJHdnplTTtJQUNJO0UzR3l6ZVY7RTJHdHplTTtJQUNJO0UzR3d6ZVY7RTJHcnplTTtJQUNJO0UzR3V6ZVY7RTJHcHplTTtJQUNJO0UzR3N6ZVY7QUFDRjs7QTJHbHplQTtFQUNJO0EzR3F6ZUo7QTJHbnplSTtFQUNJO0EzR3F6ZVI7QTJHbHplSTtFQUNJO0EzR296ZVI7QTJHL3llWTtFQUNJO0EzR2l6ZWhCO0EyRzl5ZVk7RUFDSSxjbEMvM0JMO0F6RStxZ0JYO0EyRzd5ZVk7RUFDSSxjbENuNEJMO0VrQ280Qks7RUFDQTtFQUNBO0EzRyt5ZWhCO0EyRzV5ZVk7RUFDSTtFQUNBLHlCbEMzNEJMO0VrQzQ0QksscUJsQzU0Qkw7QXpFMHJnQlg7QTJHM3llWTtFQUNJLHlCbEMxNUJQO0VrQzI1Qk8scUJsQzM1QlA7RWtDNDVCTyxjbEN2NUJOO0VrQ3c1Qk07QTNHNnllaEI7QTJHMXllWTtFQUNJO0EzRzR5ZWhCO0EyR3p5ZVk7RUFDSTtBM0cyeWVoQjtBMkd4eWVZO0VBQ0k7RUFDQTtFQUNBLGNsQ242Qk47QXpFNnNnQlY7QTJHdnllWTtFQUNJO0VBQ0E7QTNHeXllaEI7QTJHdnllZ0I7RUFDSTtFQUNBO0VBQ0E7QTNHeXllcEI7QTJHdHllZ0I7RUFDSTtFQUNBO0VBQ0E7RUFDQSxjbENwN0JWO0F6RTR0Z0JWO0EyR3J5ZWdCO0VBQ0k7RUFDQSxjbEN2N0JUO0F6RTh0Z0JYO0EyR3J5ZW9CO0VBQ0ksY2xDbDhCWDtFa0NtOEJXO0VBQ0E7QTNHdXlleEI7QTJHbHllWTtFQUNJO0VBQ0E7QTNHb3llaEI7QTJHanllWTtFQUNJO0VBQ0E7QTNHbXllaEI7QTJHanllZ0I7RUFDSSxjbENoOUJWO0F6RW12Z0JWO0EyR2h5ZWdCO0VBQ0ksY2xDcDlCVjtFa0NxOUJVO0VBQ0E7RUFDQTtBM0dreWVwQjtBMkcveGVnQjtFQUNJO0EzR2l5ZXBCO0EyRzl4ZWdCO0VBQ0ksY2xDMTlCVDtFa0MyOUJTO0EzR2d5ZXBCO0EyRzd4ZWdCO0VBQ0ksY2xDcCtCVjtFa0NxK0JVO0VBQ0E7QTNHK3hlcEI7QTJHM3hlWTtFQUNJO0EzRzZ4ZWhCO0EyRzN4ZWdCO0VBQ0k7QTNHNnhlcEI7QTJHenhlWTtFQUNJLGNsQzkrQkw7RWtDKytCSztFQUNBO0EzRzJ4ZWhCO0EyR3h4ZVk7RUFDSTtBM0cweGVoQjtBMkd4eGVnQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsY2xDaGdDVjtBekUweGdCVjtBMkd4eGVvQjtFQUNJLGNsQzkvQmI7QXpFd3hnQlg7QTJHcnhlWTtFQUNJLG1DbEMzaENFO0VrQzRoQ0Y7RUFDQTtBM0d1eGVoQjtBMkdweGVZOzs7RUFFSTtBM0d1eGVoQjtBMkdweGVZO0VBQ0ksY2xDcGhDTjtBekUweWdCVjtBMkdseGVRO0VBQ0k7QTNHb3hlWjtBMkdseGVZO0VBQ0k7QTNHb3hlaEI7O0EyRzl3ZUE7RUFDSTtFQUNBO0VBQ0E7QTNHaXhlSjtBMkcvd2VJO0VBQ0ksd0JsQzFqQ1U7QXpFMjBnQmxCO0EyRzl3ZUk7RUFDSSx5QmxDampDQztFa0NrakNELHFCbENsakNDO0VrQ21qQ0QsY2xDOWlDRTtFa0MraUNGO0EzR2d4ZVI7QTZFM3pmSTtFOEI4aUJBO0lBRVE7RTNHK3dlVjtBQUNGO0EyRzN3ZWdCO0VBQ0k7QTNHNndlcEI7QTJHMXdlZ0I7RUFDSTtBM0c0d2VwQjtBMkd6d2VnQjs7RUFFSTtBM0cyd2VwQjtBMkd4d2VnQjtFQUNJLGNsQ3ZrQ1Y7QXpFaTFnQlY7QTJHdHdlWTtFQUNJLHlCbEN2a0NMO0F6RSswZ0JYO0EyR3J3ZVk7RUFDSTtBM0d1d2VoQjtBMkdwd2VZO0VBQ0ksY2xDL2tDTDtBekVxMWdCWDtBMkdud2VZO0VBQ0k7QTNHcXdlaEI7QTJHbHdlWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzR293ZWhCO0EyR2p3ZVk7RUFDSTtFQUNBO0EzR213ZWhCO0EyR2h3ZVk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzR2t3ZWhCO0EyRy92ZVk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EseUJsQzVuQ0w7QXpFNjNnQlg7QTJHOXZlWTtFQUNJO0VBQ0E7QTNHZ3dlaEI7QTJHN3ZlWTtFQUNJO0VBQ0EsY2xDM29DTjtFa0M0b0NNO0VBQ0E7QTNHK3ZlaEI7QTJHNXZlWTtFQUNJO0VBQ0E7QTNHOHZlaEI7QTJHMXZlZ0I7RUFDSTtFQUNBLGNsQ3JwQ1Y7QXpFaTVnQlY7QTJHdHZlSTtFQUNJO0EzR3d2ZVI7QTJHcnZlSTtFQUNJO0EzR3V2ZVI7O0EyR252ZUE7RUFDSTtBM0dzdmVKOztBMkdudmVBO0VBQ0k7RUFDQTtBM0dzdmVKOztBMkdudmVBO0VBQ0k7QTNHc3ZlSjs7QTJHbHZlQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0dxdmVKOztBMkdsdmVBO0VBQ0k7QTNHcXZlSjs7QTRHNzlnQkE7QUFDQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVHZytnQkY7O0E0Rzc5Z0JBO0VBQ0U7RUFDQTtFQUNBO0E1R2crZ0JGO0E0Rzk5Z0JFO0VBQ0U7RUFDQTtBNUdnK2dCSjtBNEc3OWdCRTtFQUNFO0E1Rys5Z0JKOztBNEczOWdCQTtFQUNFO0E1Rzg5Z0JGOztBNEczOWdCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUc4OWdCRjtBNEc1OWdCRTtFQUNFO0VBQ0E7QTVHODlnQko7O0E0RzE5Z0JBO0VBQ0U7RUFDQTtFQUNBO0E1RzY5Z0JGOztBNEcxOWdCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E1RzY5Z0JGOztBNEcxOWdCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVHNjlnQkY7O0E0RzE5Z0JBO0VBQ0U7RUFDQTtFQUNBO0E1RzY5Z0JGOztBNEcxOWdCQTtFQUNFO0VBQ0E7RUFDQTtBNUc2OWdCRjs7QTRHMTlnQkE7RUFDRTtFQUNBO0E1RzY5Z0JGOztBNEd6OWdCQTtFQUNFO0E1RzQ5Z0JGO0E0R3o5Z0JJO0VBQ0U7RUFDQTtBNUcyOWdCTjs7QTRHdDlnQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1R3k5Z0JGO0E0R3Y5Z0JFO0VBQ0U7QTVHeTlnQko7O0E0R3I5Z0JBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTVHdzlnQkY7O0E0R3I5Z0JBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUd3OWdCRjtBNEd0OWdCRTtFQUNFO0VBQ0E7QTVHdzlnQko7QTRHcjlnQkU7RUFDRTtBNUd1OWdCSjtBNEdyOWdCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVHdTlnQk47QTRHcDlnQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBNUdzOWdCTjtBNEduOWdCSTtFQUNFO0VBQ0E7RUFDQTtBNUdxOWdCTjtBNEduOWdCTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUdxOWdCUjs7QTRHLzhnQkE7RUFDRTtFQUNBO0E1R2s5Z0JGO0E0Ry84Z0JJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTVHaTlnQk47QTRHOThnQkk7RUFDRTtFQUNBO0VBQ0E7QTVHZzlnQk47QTRHNThnQkU7RUFDRTtFQUNBO0E1Rzg4Z0JKO0E0RzU4Z0JJO0VBQ0U7RUFDQTtBNUc4OGdCTjtBNEczOGdCSTtFQUNFO0E1RzY4Z0JOOztBNEd4OGdCQTtFQUNFO0E1RzI4Z0JGO0E0R3o4Z0JFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVHMjhnQko7QTRHejhnQkk7RUFDRTtFQUNBO0E1RzI4Z0JOOztBNEd0OGdCQTtFQUNFO0VBQ0E7QTVHeThnQkY7QTRHdjhnQkU7RUFDRTtFQUNBO0VBQ0E7QTVHeThnQko7QTRHdjhnQkk7RUFDRTtFQUNBO0E1R3k4Z0JOO0E0R3Q4Z0JJO0VBQ0U7RUFDQTtBNUd3OGdCTjs7QTRHbjhnQkE7QUFDQTtFQUNFO0lBQ0U7RTVHczhnQkY7O0U0R244Z0JBO0lBQ0U7RTVHczhnQkY7O0U0R244Z0JBO0lBQ0U7RTVHczhnQkY7O0U0R244Z0JBO0lBQ0U7RTVHczhnQkY7O0U0R2w4Z0JBO0lBQ0U7SUFDQTtJQUNBO0U1R3E4Z0JGOztFNEdsOGdCQTtJQUNFO0lBQ0E7RTVHcThnQkY7O0U0R2w4Z0JBOzs7SUFHRTtJQUNBO0U1R3E4Z0JGOztFNEdqOGdCRTtJQUNFO0U1R284Z0JKO0FBQ0Y7QTRHaDhnQkE7RUFHTTtJQUNFO0U1R2c4Z0JOO0U0Rzc3Z0JJO0lBQ0U7RTVHKzdnQk47RTRHMzdnQk07SUFDRTtFNUc2N2dCUjs7RTRHdDdnQkU7SUFDRTtFNUd5N2dCSjs7RTRHcjdnQkE7SUFDRTtJQUNBO0U1R3c3Z0JGO0FBQ0Y7QTZHeHVoQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RzB1aEJGO0E2R3p1aEJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0cydWhCSjtBNkd6dWhCRTtFQUNFO0VBQ0E7QTdHMnVoQko7QTZHenVoQkU7RUFLRTtBN0d1dWhCSjtBNkczdWhCSTtFQUNFO0VBQ0E7QTdHNnVoQk47QTZHenVoQkU7RUFDRTtFQUNBO0VBQ0E7QTdHMnVoQko7O0E2R3Z1aEJBO0VBRUk7SUFDRTtFN0d5dWhCSjtFNkd2dWhCRTtJQUNFO0U3R3l1aEJKO0FBQ0Y7QThHL3doQkE7O0VBQUE7QUFHQTtFQUNFO0E5R2l4aEJGO0E4Ry93aEJFO0VBQ0UsaUNyQ3lEYTtFcUN4RGI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHdCckNVYztFcUNUZDtBOUdpeGhCSjtBOEcvd2hCSTtFQUNFLHdCckNNWTtFcUNMWjtFQUNBO0E5R2l4aEJOO0E4Rzd3aEJNO0VBQ0U7RUFDQTtFQUNBO0E5Ryt3aEJSO0E4RzF3aEJFO0VBQ0U7RUFDQTtBOUc0d2hCSjtBOEd6d2hCRTtFQUNFO0VBQ0E7RUFDQTtBOUcyd2hCSjs7QStHbHpoQkE7O0VBQUE7QUFHQTtFQUNFO0EvR3F6aEJGO0ErR3B6aEJFO0VBQ0UsaUN0QzBEYTtFc0N6RGI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHdCdENXYztFc0NWZDtBL0dzemhCSjtBK0dyemhCSTtFQUNFLHdCdENRWTtFc0NQWjtBL0d1emhCTjtBK0duemhCRTtFQUNFO0VBQ0E7QS9HcXpoQko7QStHbHpoQkU7RUFDRTtFQUNBO0VBQ0E7QS9Hb3poQko7QStHanpoQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9HbXpoQko7QStHanpoQkU7RUFDRTtBL0dtemhCSjs7QWdIMzFoQkE7O0VBQUE7QUFHQTtFQUNFO0FoSDgxaEJGO0FnSDcxaEJFO0VBQ0UsaUN2QzBEYTtFdUN6RGI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHdCdkNXYztFdUNWZDtBaEgrMWhCSjtBZ0g5MWhCSTtFQUNFLHdCdkNRWTtFdUNQWjtBaEhnMmhCTjtBZ0g1MWhCRTtFQUNFO0VBQ0E7QWhIODFoQko7QWdIMzFoQkU7RUFDRTtFQUNBO0VBQ0E7QWhINjFoQko7QWdIMTFoQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhINDFoQko7QWdIMTFoQkU7RUFDRTtBaEg0MWhCSjs7QWlIcDRoQkE7O0VBQUE7QUFNQTtFQUNFO0VBQ0E7QWpIbzRoQkY7QTZFLzFnQkk7RW9DdmlCSjtJQUlJO0lBQ0E7SUFDQTtFakhzNGhCRjtBQUNGO0FpSHI0aEJFO0VBQ0U7QWpIdTRoQko7QTZFejJnQkk7RW9DL2hCRjtJQUdJO0VqSHk0aEJKO0FBQ0Y7QWlIdjRoQkU7RUFDRTtBakh5NGhCSjtBNkVqM2dCSTtFb0N6aEJGO0lBR0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWpIMjRoQko7QUFDRjtBaUh6NGhCRTtFQUNFO0VBQ0E7RUFDQTtBakgyNGhCSjtBaUgxNGhCSTtFQUNFO0FqSDQ0aEJOO0E2RXA0Z0JJO0VvQ3pnQkE7SUFHSTtJQUNBO0VqSDg0aEJOO0FBQ0Y7QWlINzRoQk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGN4Q2RDO0V3Q2VEO0VBQ0E7RUFDQTtFQUNBO0FqSCs0aEJSO0E2RXg1Z0JJO0VvQ25nQkU7SUFjSTtFakhpNWhCUjtBQUNGO0FpSGg1aEJRO0VBQ0U7QWpIazVoQlY7QWlIaDVoQlE7RUFLRTtBakg4NGhCVjtBaUhsNWhCVTtFQUNFLGF4QzNCSDtFd0M0Qkc7QWpIbzVoQlo7QWlIaDVoQlE7RUFDRTtFQUNBO0FqSGs1aEJWO0FpSGo1aEJVO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsaUN4Q3hEQztFd0N5REQ7QWpIbTVoQlo7QTZFcjdnQkk7RW9DemVJO0lBZUk7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFakhtNWhCVjtBQUNGO0FpSC80aEJNOztFQUVFLHNCeEMzRUs7QXpFNDloQmI7QWlILzRoQlU7O0VBQ0UscUJ4QzlFQztBekVnK2hCYjtBaUg3NGhCVTs7RUFDRTtBakhnNWhCWjtBNkU3OGdCSTtFb0M5Ykk7SUFFSTtJQUNBO0lBQ0E7RWpINjRoQlY7QUFDRjs7QWtIamdpQkE7O0VBQUE7QUFJRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FsSG1naUJKO0FrSGxnaUJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEhvZ2lCTjtBa0hsZ2lCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEhvZ2lCTjtBa0hqZ2lCRTtFQUNFO0VBQ0EsY3pDV007QXpFdy9oQlY7QWtIamdpQkU7RUFDRTtFQUNBO0VBQ0Esc0J6Q2JTO0V5Q2NUO0VBQ0E7QWxIbWdpQko7O0FtSHZpaUJFO0VBQ0U7RUFDQSxzQjFDbUJTO0F6RXVoaUJiO0FtSHhpaUJFO0VBQ0Usd0IxQ2lCYztBekV5aGlCbEI7O0FvSGhqaUJBOztFQUFBO0F2QzZpQkk7RXVDMWlCSjtJQUVJO0VwSG1qaUJGO0FBQ0Y7QW9IamppQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwSG1qaUJKO0FvSGhqaUJFO0VBQ0UsYzNDMkJNO0UyQzFCTjtFQUNBO0VBQ0E7QXBIa2ppQko7QW9IL2lpQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBcEhpamlCSjtBb0gvaWlCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBIaWppQk47QW9INWlpQkU7Ozs7RUFJRTtBcEg4aWlCSjs7QXFIemxpQkE7RUFDRTtFQUNBO0VBQ0EsMkM1QzhEaUI7QXpFOGhpQm5CO0FxSDNsaUJFO0VBQ0U7RUFDQTtBckg2bGlCSjtBcUgzbGlCRTtFQUNFO0VBQ0E7RUFDQTtBckg2bGlCSjtBcUgzbGlCRTtFQUNFO0VBQ0E7RUFDQTtBckg2bGlCSjtBcUgxbGlCRTtFQUNFO0FySDRsaUJKO0FxSHpsaUJFO0VBQ0U7QXJIMmxpQko7QXFIeGxpQkU7RUFDRTtFQUNBO0VBQ0E7QXJIMGxpQko7O0FBL2lpQkE7RUFDRTtBQWtqaUJGLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL2FwcC5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9ib290c3RyYXAuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Jvb3Quc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3JlYm9vdC5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy92ZW5kb3IvX3Jmcy5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdHlwZS5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2xpc3RzLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19pbWFnZXMuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19pbWFnZS5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY29udGFpbmVycy5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NvbnRhaW5lci5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdGFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGFibGUtdmFyaWFudHMuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2xhYmVscy5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZm9ybS10ZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mb3JtLWNvbnRyb2wuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190cmFuc2l0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JhZGllbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mb3JtLXNlbGVjdC5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZm9ybS1jaGVjay5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZm9ybS1yYW5nZS5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZmxvYXRpbmctbGFiZWxzLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19pbnB1dC1ncm91cC5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2Zvcm1zLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnV0dG9ucy5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdHJhbnNpdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Ryb3Bkb3duLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2FyZXQuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2J1dHRvbi1ncm91cC5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbmF2LnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19uYXZiYXIuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2NhcmQuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2FjY29yZGlvbi5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnJlYWRjcnVtYi5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcGFnaW5hdGlvbi5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2JhZGdlLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19hbGVydC5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2FsZXJ0LnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wcm9ncmVzcy5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbGlzdC1ncm91cC5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2xpc3QtZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Nsb3NlLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190b2FzdHMuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX21vZGFsLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFja2Ryb3Auc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Rvb2x0aXAuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19yZXNldC10ZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wb3BvdmVyLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jYXJvdXNlbC5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NsZWFyZml4LnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19zcGlubmVycy5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fb2ZmY2FudmFzLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wbGFjZWhvbGRlcnMuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fY29sb3JlZC1saW5rcy5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19yYXRpby5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19wb3NpdGlvbi5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19zdGFja3Muc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fdmlzdWFsbHktaGlkZGVuLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdmlzdWFsbHktaGlkZGVuLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3N0cmV0Y2hlZC1saW5rLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3RleHQtdHJ1bmNhdGlvbi5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtdHJ1bmNhdGUuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fdnIuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL191dGlsaXRpZXMuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19hcGkuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvc2xpY2stY2Fyb3VzZWwvc2xpY2svc2xpY2suc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL2Fic3RyYWN0L192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL2Jhc2UvX2hlbHBlci5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL2Fzc2V0cy9zdHlsZXMvY29tcG9uZW50cy9fYnJlYWRjcnVtYi5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL2Fzc2V0cy9zdHlsZXMvY29tcG9uZW50cy9fYnV0dG9ucy5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9pbmNsdWRlLW1lZGlhL2Rpc3QvX2luY2x1ZGUtbWVkaWEuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL2NvbXBvbmVudHMvX2NoZWNrYm94LnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vYXNzZXRzL3N0eWxlcy9jb21wb25lbnRzL19mb3Jtcy5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL2Fzc2V0cy9zdHlsZXMvY29tcG9uZW50cy9fc3RlcGJhci5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL2Fzc2V0cy9zdHlsZXMvY29tcG9uZW50cy9fdGl0bGVzLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vYXNzZXRzL3N0eWxlcy9jb21wb25lbnRzL19saW5rcy5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL2Fzc2V0cy9zdHlsZXMvY29tcG9uZW50cy9fbW9kYWwuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL2NvbXBvbmVudHMvX3RhYnMuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL2NvbXBvbmVudHMvX3BhZ2Uuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL2NvbXBvbmVudHMvX2JhZGdlLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vYXNzZXRzL3N0eWxlcy9jb21wb25lbnRzL19zbGlkZXIuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL2NvbXBvbmVudHMvX3NlbGVjdC5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL2Fzc2V0cy9zdHlsZXMvY29tcG9uZW50cy9fdGFibGUuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL2NvbXBvbmVudHMvX3NlYXJjaC1iYXIuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL2NvbXBvbmVudHMvX21hcC5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL2Fzc2V0cy9zdHlsZXMvY29tcG9uZW50cy9fZmxhc2gtbWVzc2FnZXMuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL3BhcnRpYWxzL19jb21tb24taXRlbXMuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL3BhZ2VzL19hZG1pbi5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL2Fzc2V0cy9zdHlsZXMvcGFnZXMvX2RldGFpbC5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL2Fzc2V0cy9zdHlsZXMvcGFnZXMvX3NpZ251cC5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL2Fzc2V0cy9zdHlsZXMvcGFnZXMvX3Byb2R1Y2VyLWZvcm0uc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL3BhZ2VzL19jZWxsYXJtYW4td2luZWdyb3dlci1saXN0LnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vYXNzZXRzL3N0eWxlcy9wYWdlcy9fc2VsZWN0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vYXNzZXRzL3N0eWxlcy9wYWdlcy9fY2VsbGFybWFuLW9yZGVyaW50ZW5kLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vYXNzZXRzL3N0eWxlcy9wYWdlcy9fd2luZWdyb3dlci1hY2NvdW50LnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vYXNzZXRzL3N0eWxlcy9wYWdlcy9fb3JkZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vYXNzZXRzL3N0eWxlcy9wYWdlcy9fYmlsbHMuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL3BhZ2VzL193aW5lZ3Jvd2VyLWZvcm0uc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL3BhZ2VzL19jZWxsYXJtYW4tdmluZXlhcmQtZGV0YWlsLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vYXNzZXRzL3N0eWxlcy9wYWdlcy9fbWFpbnRlbmFuY2Uuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL3BhZ2VzL19wcm9kdWN0LWRldGFpbC5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL2Fzc2V0cy9zdHlsZXMvcGFnZXMvX3NwaXJpdC1wYW5hY2hlLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vYXNzZXRzL3N0eWxlcy9wYXJ0aWFscy9fZm9vdGVyLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vYXNzZXRzL3N0eWxlcy9wYXJ0aWFscy9fbG9naW4uc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL3BhcnRpYWxzL19wYXNzb3dyZC1mb3Jnb3Quc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL3BhcnRpYWxzL19wYXNzd29yZC1mb3Jnb3QtZm9ybS5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL2Fzc2V0cy9zdHlsZXMvcGFydGlhbHMvX25hdmJhci5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL2Fzc2V0cy9zdHlsZXMvcGFydGlhbHMvX3Byb2ZpbC1pbmZvcy5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL2Fzc2V0cy9zdHlsZXMvcGFydGlhbHMvX21vcmUtcHJvZHVjdHMuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL3BhcnRpYWxzL19zaW5nbGUtYXJ0aWNsZS5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL2Fzc2V0cy9zdHlsZXMvcGFydGlhbHMvX3Rlcm1zLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBMaWJzXG4gKi9cblxuLy8gSW1wb3J0IGJvb3RzdHJhcCBtb2R1bGUgc3R5bGVzXG5AaW1wb3J0IFwifmJvb3RzdHJhcC9zY3NzL2Jvb3RzdHJhcFwiO1xuXG4vLyBJbXBvcnQgY3VzdG9tIGxpYnJhaXJpZXMgc3R5bGVzXG5AaW1wb3J0ICd+aW5jbHVkZS1tZWRpYS9kaXN0L2luY2x1ZGUtbWVkaWEnO1xuQGltcG9ydCBcIn5zbGljay1jYXJvdXNlbC9zbGljay9zbGljay5zY3NzXCI7XG5AaW1wb3J0IFwifmxlYWZsZXQvZGlzdC9sZWFmbGV0LmNzc1wiO1xuXG4vKipcbiAqIEFwcCBzdHlsZXNcbiAqL1xuXG4vLyBJbXBvcnQgdmFyaWFibGVzXG5AaW1wb3J0IFwiYWJzdHJhY3QvdmFyaWFibGVzXCI7XG5cbi8vIEltcG9ydCBiYXNlcyBzdHlsZXNcbkBpbXBvcnQgXCJiYXNlL2hlbHBlclwiO1xuXG4vLyBJbXBvcnQgY29tcG9uZW50cyBzdHlsZXNcbkBpbXBvcnQgXCJjb21wb25lbnRzL2JyZWFkY3J1bWJcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2NoZWNrYm94XCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9mb3Jtc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvc3RlcGJhclwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvdGl0bGVzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9saW5rc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvbW9kYWxcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3RhYnNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3BhZ2VcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2JhZGdlXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9zbGlkZXJcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3NlbGVjdFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvdGFibGVcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3NlYXJjaC1iYXJcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL21hcFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvZmxhc2gtbWVzc2FnZXNcIjtcblxuLy8gSW1wb3J0IGNvbW1vbiBzdHlsZXNcbkBpbXBvcnQgXCJwYXJ0aWFscy9jb21tb24taXRlbXNcIjtcblxuLy8gSW1wb3J0IHBhZ2VzIGdsb2JhbCBzdHlsZXNcbkBpbXBvcnQgXCJwYWdlcy9hZG1pblwiO1xuQGltcG9ydCBcInBhZ2VzL2RldGFpbFwiO1xuQGltcG9ydCBcInBhZ2VzL3NpZ251cFwiO1xuQGltcG9ydCBcInBhZ2VzL3Byb2R1Y2VyLWZvcm1cIjtcbkBpbXBvcnQgXCJwYWdlcy9jZWxsYXJtYW4td2luZWdyb3dlci1saXN0XCI7XG5AaW1wb3J0IFwicGFnZXMvc2VsZWN0aW9uXCI7XG5AaW1wb3J0IFwicGFnZXMvY2VsbGFybWFuLW9yZGVyaW50ZW5kXCI7XG5AaW1wb3J0IFwicGFnZXMvd2luZWdyb3dlci1hY2NvdW50XCI7XG5AaW1wb3J0IFwicGFnZXMvb3JkZXJzXCI7XG5AaW1wb3J0IFwicGFnZXMvYmlsbHNcIjtcbkBpbXBvcnQgXCJwYWdlcy93aW5lZ3Jvd2VyLWZvcm1cIjtcbkBpbXBvcnQgXCJwYWdlcy9jZWxsYXJtYW4tdmluZXlhcmQtZGV0YWlsXCI7XG5AaW1wb3J0IFwicGFnZXMvbWFpbnRlbmFuY2VcIjtcbkBpbXBvcnQgXCJwYWdlcy9wcm9kdWN0LWRldGFpbFwiO1xuQGltcG9ydCBcInBhZ2VzL3NwaXJpdC1wYW5hY2hlXCI7XG5cbi8vIEltcG9ydCBjdXN0b20gYmxvY2tzIChwYXJ0aWFscykgc3R5bGVzXG5AaW1wb3J0IFwicGFydGlhbHMvZm9vdGVyLnNjc3NcIjtcbkBpbXBvcnQgXCJwYXJ0aWFscy9sb2dpbi5zY3NzXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvcGFzc293cmQtZm9yZ290LnNjc3NcIjtcbkBpbXBvcnQgXCJwYXJ0aWFscy9wYXNzd29yZC1mb3Jnb3QtZm9ybS5zY3NzXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvbmF2YmFyXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvcHJvZmlsLWluZm9zXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvbW9yZS1wcm9kdWN0c1wiO1xuQGltcG9ydCBcInBhcnRpYWxzL3NpbmdsZS1hcnRpY2xlXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvcHJvZHVjdHNcIjtcbkBpbXBvcnQgXCJwYXJ0aWFscy90ZXJtc1wiO1xuXG4uZm9ybS1lcnJvciB7XG4gIGNvbG9yOiAjZGMzNTQ1ICFpbXBvcnRhbnQ7XG59IiwiLyohXG4gKiBCb290c3RyYXAgdjUuMS4zIChodHRwczovL2dldGJvb3RzdHJhcC5jb20vKVxuICogQ29weXJpZ2h0IDIwMTEtMjAyMSBUaGUgQm9vdHN0cmFwIEF1dGhvcnNcbiAqIENvcHlyaWdodCAyMDExLTIwMjEgVHdpdHRlciwgSW5jLlxuICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYWluL0xJQ0VOU0UpXG4gKi9cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGltcG9ydC1zdGFja1xuLy8gQ29uZmlndXJhdGlvblxuQGltcG9ydCBcImZ1bmN0aW9uc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIm1peGluc1wiO1xuQGltcG9ydCBcInV0aWxpdGllc1wiO1xuXG4vLyBMYXlvdXQgJiBjb21wb25lbnRzXG5AaW1wb3J0IFwicm9vdFwiO1xuQGltcG9ydCBcInJlYm9vdFwiO1xuQGltcG9ydCBcInR5cGVcIjtcbkBpbXBvcnQgXCJpbWFnZXNcIjtcbkBpbXBvcnQgXCJjb250YWluZXJzXCI7XG5AaW1wb3J0IFwiZ3JpZFwiO1xuQGltcG9ydCBcInRhYmxlc1wiO1xuQGltcG9ydCBcImZvcm1zXCI7XG5AaW1wb3J0IFwiYnV0dG9uc1wiO1xuQGltcG9ydCBcInRyYW5zaXRpb25zXCI7XG5AaW1wb3J0IFwiZHJvcGRvd25cIjtcbkBpbXBvcnQgXCJidXR0b24tZ3JvdXBcIjtcbkBpbXBvcnQgXCJuYXZcIjtcbkBpbXBvcnQgXCJuYXZiYXJcIjtcbkBpbXBvcnQgXCJjYXJkXCI7XG5AaW1wb3J0IFwiYWNjb3JkaW9uXCI7XG5AaW1wb3J0IFwiYnJlYWRjcnVtYlwiO1xuQGltcG9ydCBcInBhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCJiYWRnZVwiO1xuQGltcG9ydCBcImFsZXJ0XCI7XG5AaW1wb3J0IFwicHJvZ3Jlc3NcIjtcbkBpbXBvcnQgXCJsaXN0LWdyb3VwXCI7XG5AaW1wb3J0IFwiY2xvc2VcIjtcbkBpbXBvcnQgXCJ0b2FzdHNcIjtcbkBpbXBvcnQgXCJtb2RhbFwiO1xuQGltcG9ydCBcInRvb2x0aXBcIjtcbkBpbXBvcnQgXCJwb3BvdmVyXCI7XG5AaW1wb3J0IFwiY2Fyb3VzZWxcIjtcbkBpbXBvcnQgXCJzcGlubmVyc1wiO1xuQGltcG9ydCBcIm9mZmNhbnZhc1wiO1xuQGltcG9ydCBcInBsYWNlaG9sZGVyc1wiO1xuXG4vLyBIZWxwZXJzXG5AaW1wb3J0IFwiaGVscGVyc1wiO1xuXG4vLyBVdGlsaXRpZXNcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvYXBpXCI7XG4vLyBzY3NzLWRvY3MtZW5kIGltcG9ydC1zdGFja1xuIiwiOnJvb3Qge1xuICAvLyBOb3RlOiBDdXN0b20gdmFyaWFibGUgdmFsdWVzIG9ubHkgc3VwcG9ydCBTYXNzU2NyaXB0IGluc2lkZSBgI3t9YC5cblxuICAvLyBDb2xvcnNcbiAgLy9cbiAgLy8gR2VuZXJhdGUgcGFsZXR0ZXMgZm9yIGZ1bGwgY29sb3JzLCBncmF5cywgYW5kIHRoZW1lIGNvbG9ycy5cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkY29sb3JzIHtcbiAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICRncmF5cyB7XG4gICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3JheS0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy1yZ2Ige1xuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fSN7JGNvbG9yfS1yZ2I6ICN7JHZhbHVlfTtcbiAgfVxuXG4gIC0tI3skdmFyaWFibGUtcHJlZml4fXdoaXRlLXJnYjogI3t0by1yZ2IoJHdoaXRlKX07XG4gIC0tI3skdmFyaWFibGUtcHJlZml4fWJsYWNrLXJnYjogI3t0by1yZ2IoJGJsYWNrKX07XG4gIC0tI3skdmFyaWFibGUtcHJlZml4fWJvZHktY29sb3ItcmdiOiAje3RvLXJnYigkYm9keS1jb2xvcil9O1xuICAtLSN7JHZhcmlhYmxlLXByZWZpeH1ib2R5LWJnLXJnYjogI3t0by1yZ2IoJGJvZHktYmcpfTtcblxuICAvLyBGb250c1xuXG4gIC8vIE5vdGU6IFVzZSBgaW5zcGVjdGAgZm9yIGxpc3RzIHNvIHRoYXQgcXVvdGVkIGl0ZW1zIGtlZXAgdGhlIHF1b3Rlcy5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL3Nhc3MvaXNzdWVzLzIzODMjaXNzdWVjb21tZW50LTMzNjM0OTE3MlxuICAtLSN7JHZhcmlhYmxlLXByZWZpeH1mb250LXNhbnMtc2VyaWY6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktc2Fucy1zZXJpZil9O1xuICAtLSN7JHZhcmlhYmxlLXByZWZpeH1mb250LW1vbm9zcGFjZTogI3tpbnNwZWN0KCRmb250LWZhbWlseS1tb25vc3BhY2UpfTtcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3JhZGllbnQ6ICN7JGdyYWRpZW50fTtcblxuICAvLyBSb290IGFuZCBib2R5XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlIGN1c3RvbS1wcm9wZXJ0eS1lbXB0eS1saW5lLWJlZm9yZVxuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcm9vdC1ib2R5LXZhcmlhYmxlc1xuICBAaWYgJGZvbnQtc2l6ZS1yb290ICE9IG51bGwge1xuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fXJvb3QtZm9udC1zaXplOiAjeyRmb250LXNpemUtcm9vdH07XG4gIH1cbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9Ym9keS1mb250LWZhbWlseTogI3skZm9udC1mYW1pbHktYmFzZX07XG4gIC0tI3skdmFyaWFibGUtcHJlZml4fWJvZHktZm9udC1zaXplOiAjeyRmb250LXNpemUtYmFzZX07XG4gIC0tI3skdmFyaWFibGUtcHJlZml4fWJvZHktZm9udC13ZWlnaHQ6ICN7JGZvbnQtd2VpZ2h0LWJhc2V9O1xuICAtLSN7JHZhcmlhYmxlLXByZWZpeH1ib2R5LWxpbmUtaGVpZ2h0OiAjeyRsaW5lLWhlaWdodC1iYXNlfTtcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9Ym9keS1jb2xvcjogI3skYm9keS1jb2xvcn07XG4gIEBpZiAkYm9keS10ZXh0LWFsaWduICE9IG51bGwge1xuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fWJvZHktdGV4dC1hbGlnbjogI3skYm9keS10ZXh0LWFsaWdufTtcbiAgfVxuICAtLSN7JHZhcmlhYmxlLXByZWZpeH1ib2R5LWJnOiAjeyRib2R5LWJnfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCByb290LWJvZHktdmFyaWFibGVzXG4gIC8vIHN0eWxlbGludC1lbmFibGUgY3VzdG9tLXByb3BlcnR5LWVtcHR5LWxpbmUtYmVmb3JlXG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSwgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeFxuXG5cbi8vIFJlYm9vdFxuLy9cbi8vIE5vcm1hbGl6YXRpb24gb2YgSFRNTCBlbGVtZW50cywgbWFudWFsbHkgZm9ya2VkIGZyb20gTm9ybWFsaXplLmNzcyB0byByZW1vdmVcbi8vIHN0eWxlcyB0YXJnZXRpbmcgaXJyZWxldmFudCBicm93c2VycyB3aGlsZSBhcHBseWluZyBuZXcgc3R5bGVzLlxuLy9cbi8vIE5vcm1hbGl6ZSBpcyBsaWNlbnNlZCBNSVQuIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3NcblxuXG4vLyBEb2N1bWVudFxuLy9cbi8vIENoYW5nZSBmcm9tIGBib3gtc2l6aW5nOiBjb250ZW50LWJveGAgc28gdGhhdCBgd2lkdGhgIGlzIG5vdCBhZmZlY3RlZCBieSBgcGFkZGluZ2Agb3IgYGJvcmRlcmAuXG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cblxuLy8gUm9vdFxuLy9cbi8vIEFiaWxpdHkgdG8gdGhlIHZhbHVlIG9mIHRoZSByb290IGZvbnQgc2l6ZXMsIGFmZmVjdGluZyB0aGUgdmFsdWUgb2YgYHJlbWAuXG4vLyBudWxsIGJ5IGRlZmF1bHQsIHRodXMgbm90aGluZyBpcyBnZW5lcmF0ZWQuXG5cbjpyb290IHtcbiAgQGlmICRmb250LXNpemUtcm9vdCAhPSBudWxsIHtcbiAgICBmb250LXNpemU6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1yb290LWZvbnQtc2l6ZSk7XG4gIH1cblxuICBAaWYgJGVuYWJsZS1zbW9vdGgtc2Nyb2xsIHtcbiAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IG5vLXByZWZlcmVuY2UpIHtcbiAgICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEJvZHlcbi8vXG4vLyAxLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4vLyAyLiBBcyBhIGJlc3QgcHJhY3RpY2UsIGFwcGx5IGEgZGVmYXVsdCBgYmFja2dyb3VuZC1jb2xvcmAuXG4vLyAzLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbi8vIDQuIENoYW5nZSB0aGUgZGVmYXVsdCB0YXAgaGlnaGxpZ2h0IHRvIGJlIGNvbXBsZXRlbHkgdHJhbnNwYXJlbnQgaW4gaU9TLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcmVib290LWJvZHktcnVsZXNcbmJvZHkge1xuICBtYXJnaW46IDA7IC8vIDFcbiAgZm9udC1mYW1pbHk6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ib2R5LWZvbnQtZmFtaWx5KTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ib2R5LWZvbnQtc2l6ZSkpO1xuICBmb250LXdlaWdodDogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWJvZHktZm9udC13ZWlnaHQpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWJvZHktbGluZS1oZWlnaHQpO1xuICBjb2xvcjogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWJvZHktY29sb3IpO1xuICB0ZXh0LWFsaWduOiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Ym9keS10ZXh0LWFsaWduKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWJvZHktYmcpOyAvLyAyXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gM1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoJGJsYWNrLCAwKTsgLy8gNFxufVxuLy8gc2Nzcy1kb2NzLWVuZCByZWJvb3QtYm9keS1ydWxlc1xuXG5cbi8vIENvbnRlbnQgZ3JvdXBpbmdcbi8vXG4vLyAxLiBSZXNldCBGaXJlZm94J3MgZ3JheSBjb2xvclxuLy8gMi4gU2V0IGNvcnJlY3QgaGVpZ2h0IGFuZCBwcmV2ZW50IHRoZSBgc2l6ZWAgYXR0cmlidXRlIHRvIG1ha2UgdGhlIGBocmAgbG9vayBsaWtlIGFuIGlucHV0IGZpZWxkXG5cbmhyIHtcbiAgbWFyZ2luOiAkaHItbWFyZ2luLXkgMDtcbiAgY29sb3I6ICRoci1jb2xvcjsgLy8gMVxuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIGJvcmRlcjogMDtcbiAgb3BhY2l0eTogJGhyLW9wYWNpdHk7XG59XG5cbmhyOm5vdChbc2l6ZV0pIHtcbiAgaGVpZ2h0OiAkaHItaGVpZ2h0OyAvLyAyXG59XG5cblxuLy8gVHlwb2dyYXBoeVxuLy9cbi8vIDEuIFJlbW92ZSB0b3AgbWFyZ2lucyBmcm9tIGhlYWRpbmdzXG4vLyAgICBCeSBkZWZhdWx0LCBgPGgxPmAtYDxoNj5gIGFsbCByZWNlaXZlIHRvcCBhbmQgYm90dG9tIG1hcmdpbnMuIFdlIG51a2UgdGhlIHRvcFxuLy8gICAgbWFyZ2luIGZvciBlYXNpZXIgY29udHJvbCB3aXRoaW4gdHlwZSBzY2FsZXMgYXMgaXQgYXZvaWRzIG1hcmdpbiBjb2xsYXBzaW5nLlxuXG4laGVhZGluZyB7XG4gIG1hcmdpbi10b3A6IDA7IC8vIDFcbiAgbWFyZ2luLWJvdHRvbTogJGhlYWRpbmdzLW1hcmdpbi1ib3R0b207XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gIGZvbnQtc3R5bGU6ICRoZWFkaW5ncy1mb250LXN0eWxlO1xuICBmb250LXdlaWdodDogJGhlYWRpbmdzLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xufVxuXG5oMSB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDEtZm9udC1zaXplKTtcbn1cblxuaDIge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGgyLWZvbnQtc2l6ZSk7XG59XG5cbmgzIHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoMy1mb250LXNpemUpO1xufVxuXG5oNCB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDQtZm9udC1zaXplKTtcbn1cblxuaDUge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGg1LWZvbnQtc2l6ZSk7XG59XG5cbmg2IHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoNi1mb250LXNpemUpO1xufVxuXG5cbi8vIFJlc2V0IG1hcmdpbnMgb24gcGFyYWdyYXBoc1xuLy9cbi8vIFNpbWlsYXJseSwgdGhlIHRvcCBtYXJnaW4gb24gYDxwPmBzIGdldCByZXNldC4gSG93ZXZlciwgd2UgYWxzbyByZXNldCB0aGVcbi8vIGJvdHRvbSBtYXJnaW4gdG8gdXNlIGByZW1gIHVuaXRzIGluc3RlYWQgb2YgYGVtYC5cblxucCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbn1cblxuXG4vLyBBYmJyZXZpYXRpb25zXG4vL1xuLy8gMS4gRHVwbGljYXRlIGJlaGF2aW9yIHRvIHRoZSBkYXRhLWJzLSogYXR0cmlidXRlIGZvciBvdXIgdG9vbHRpcCBwbHVnaW5cbi8vIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBPcGVyYSwgYW5kIFNhZmFyaS5cbi8vIDMuIEFkZCBleHBsaWNpdCBjdXJzb3IgdG8gaW5kaWNhdGUgY2hhbmdlZCBiZWhhdmlvci5cbi8vIDQuIFByZXZlbnQgdGhlIHRleHQtZGVjb3JhdGlvbiB0byBiZSBza2lwcGVkLlxuXG5hYmJyW3RpdGxlXSxcbmFiYnJbZGF0YS1icy1vcmlnaW5hbC10aXRsZV0geyAvLyAxXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMlxuICBjdXJzb3I6IGhlbHA7IC8vIDNcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lOyAvLyA0XG59XG5cblxuLy8gQWRkcmVzc1xuXG5hZGRyZXNzIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuXG4vLyBMaXN0c1xuXG5vbCxcbnVsIHtcbiAgcGFkZGluZy1sZWZ0OiAycmVtO1xufVxuXG5vbCxcbnVsLFxuZGwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5vbCBvbCxcbnVsIHVsLFxub2wgdWwsXG51bCBvbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmR0IHtcbiAgZm9udC13ZWlnaHQ6ICRkdC1mb250LXdlaWdodDtcbn1cblxuLy8gMS4gVW5kbyBicm93c2VyIGRlZmF1bHRcblxuZGQge1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7IC8vIDFcbn1cblxuXG4vLyBCbG9ja3F1b3RlXG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5cbi8vIFN0cm9uZ1xuLy9cbi8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmlcblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZGVyO1xufVxuXG5cbi8vIFNtYWxsXG4vL1xuLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnNcblxuc21hbGwge1xuICBAaW5jbHVkZSBmb250LXNpemUoJHNtYWxsLWZvbnQtc2l6ZSk7XG59XG5cblxuLy8gTWFya1xuXG5tYXJrIHtcbiAgcGFkZGluZzogJG1hcmstcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1hcmstYmc7XG59XG5cblxuLy8gU3ViIGFuZCBTdXBcbi8vXG4vLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbi8vIGFsbCBicm93c2Vycy5cblxuc3ViLFxuc3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHN1Yi1zdXAtZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHsgYm90dG9tOiAtLjI1ZW07IH1cbnN1cCB7IHRvcDogLS41ZW07IH1cblxuXG4vLyBMaW5rc1xuXG5hIHtcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxufVxuXG4vLyBBbmQgdW5kbyB0aGVzZSBzdHlsZXMgZm9yIHBsYWNlaG9sZGVyIGxpbmtzL25hbWVkIGFuY2hvcnMgKHdpdGhvdXQgaHJlZikuXG4vLyBJdCB3b3VsZCBiZSBtb3JlIHN0cmFpZ2h0Zm9yd2FyZCB0byBqdXN0IHVzZSBhW2hyZWZdIGluIHByZXZpb3VzIGJsb2NrLCBidXQgdGhhdFxuLy8gY2F1c2VzIHNwZWNpZmljaXR5IGlzc3VlcyBpbiBtYW55IG90aGVyIHN0eWxlcyB0aGF0IGFyZSB0b28gY29tcGxleCB0byBmaXguXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTQwMlxuXG5hOm5vdChbaHJlZl0pOm5vdChbY2xhc3NdKSB7XG4gICYsXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG5cbi8vIENvZGVcblxucHJlLFxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWNvZGU7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgxZW0pOyAvLyBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gIGRpcmVjdGlvbjogbHRyICN7XCIvKiBydGw6aWdub3JlICovXCJ9O1xuICB1bmljb2RlLWJpZGk6IGJpZGktb3ZlcnJpZGU7XG59XG5cbi8vIDEuIFJlbW92ZSBicm93c2VyIGRlZmF1bHQgdG9wIG1hcmdpblxuLy8gMi4gUmVzZXQgYnJvd3NlciBkZWZhdWx0IG9mIGAxZW1gIHRvIHVzZSBgcmVtYHNcbi8vIDMuIERvbid0IGFsbG93IGNvbnRlbnQgdG8gYnJlYWsgb3V0c2lkZVxuXG5wcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMDsgLy8gMVxuICBtYXJnaW4tYm90dG9tOiAxcmVtOyAvLyAyXG4gIG92ZXJmbG93OiBhdXRvOyAvLyAzXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogJHByZS1jb2xvcjtcblxuICAvLyBBY2NvdW50IGZvciBzb21lIGNvZGUgb3V0cHV0cyB0aGF0IHBsYWNlIGNvZGUgdGFncyBpbiBwcmUgdGFnc1xuICBjb2RlIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgd29yZC1icmVhazogbm9ybWFsO1xuICB9XG59XG5cbmNvZGUge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNvZGUtZm9udC1zaXplKTtcbiAgY29sb3I6ICRjb2RlLWNvbG9yO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cbiAgLy8gU3RyZWFtbGluZSB0aGUgc3R5bGUgd2hlbiBpbnNpZGUgYW5jaG9ycyB0byBhdm9pZCBicm9rZW4gdW5kZXJsaW5lIGFuZCBtb3JlXG4gIGEgPiAmIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG5rYmQge1xuICBwYWRkaW5nOiAka2JkLXBhZGRpbmcteSAka2JkLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRrYmQtZm9udC1zaXplKTtcbiAgY29sb3I6ICRrYmQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRrYmQtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtc20pO1xuXG4gIGtiZCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoMWVtKTtcbiAgICBmb250LXdlaWdodDogJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ7XG4gIH1cbn1cblxuXG4vLyBGaWd1cmVzXG4vL1xuLy8gQXBwbHkgYSBjb25zaXN0ZW50IG1hcmdpbiBzdHJhdGVneSAobWF0Y2hlcyBvdXIgdHlwZSBzdHlsZXMpLlxuXG5maWd1cmUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5cbi8vIEltYWdlcyBhbmQgY29udGVudFxuXG5pbWcsXG5zdmcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG5cbi8vIFRhYmxlc1xuLy9cbi8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnNcblxudGFibGUge1xuICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAkdGFibGUtY2VsbC1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkdGFibGUtY2VsbC1wYWRkaW5nLXk7XG4gIGNvbG9yOiAkdGFibGUtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLy8gMS4gUmVtb3ZlcyBmb250LXdlaWdodCBib2xkIGJ5IGluaGVyaXRpbmdcbi8vIDIuIE1hdGNoZXMgZGVmYXVsdCBgPHRkPmAgYWxpZ25tZW50IGJ5IGluaGVyaXRpbmcgYHRleHQtYWxpZ25gLlxuLy8gMy4gRml4IGFsaWdubWVudCBmb3IgU2FmYXJpXG5cbnRoIHtcbiAgZm9udC13ZWlnaHQ6ICR0YWJsZS10aC1mb250LXdlaWdodDsgLy8gMVxuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyAyXG4gIHRleHQtYWxpZ246IC13ZWJraXQtbWF0Y2gtcGFyZW50OyAvLyAzXG59XG5cbnRoZWFkLFxudGJvZHksXG50Zm9vdCxcbnRyLFxudGQsXG50aCB7XG4gIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwO1xufVxuXG5cbi8vIEZvcm1zXG4vL1xuLy8gMS4gQWxsb3cgbGFiZWxzIHRvIHVzZSBgbWFyZ2luYCBmb3Igc3BhY2luZy5cblxubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIDFcbn1cblxuLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IGBib3JkZXItcmFkaXVzYCB0aGF0IG1hY09TIENocm9tZSBhZGRzLlxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQwOTNcblxuYnV0dG9uIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4vLyBFeHBsaWNpdGx5IHJlbW92ZSBmb2N1cyBvdXRsaW5lIGluIENocm9taXVtIHdoZW4gaXQgc2hvdWxkbid0IGJlXG4vLyB2aXNpYmxlIChlLmcuIGFzIHJlc3VsdCBvZiBtb3VzZSBjbGljayBvciB0b3VjaCB0YXApLiBJdCBhbHJlYWR5XG4vLyBzaG91bGQgYmUgZG9pbmcgdGhpcyBhdXRvbWF0aWNhbGx5LCBidXQgc2VlbXMgdG8gY3VycmVudGx5IGJlXG4vLyBjb25mdXNlZCBhbmQgYXBwbGllcyBpdHMgdmVyeSB2aXNpYmxlIHR3by10b25lIG91dGxpbmUgYW55d2F5LlxuXG5idXR0b246Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIDEuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaVxuXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbm9wdGdyb3VwLFxudGV4dGFyZWEge1xuICBtYXJnaW46IDA7IC8vIDFcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbi8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveFxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG4vLyBTZXQgdGhlIGN1cnNvciBmb3Igbm9uLWA8YnV0dG9uPmAgYnV0dG9uc1xuLy9cbi8vIERldGFpbHMgYXQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMzA1NjJcbltyb2xlPVwiYnV0dG9uXCJdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5zZWxlY3Qge1xuICAvLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHdvcmQtd3JhcCBpbiBTYWZhcmkuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0OTkwXG4gIHdvcmQtd3JhcDogbm9ybWFsO1xuXG4gIC8vIFVuZG8gdGhlIG9wYWNpdHkgY2hhbmdlIGZyb20gQ2hyb21lXG4gICY6ZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLy8gUmVtb3ZlIHRoZSBkcm9wZG93biBhcnJvdyBpbiBDaHJvbWUgZnJvbSBpbnB1dHMgYnVpbHQgd2l0aCBkYXRhbGlzdHMuXG4vLyBTZWUgaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9hLzU0OTk3MTE4XG5cbltsaXN0XTo6LXdlYmtpdC1jYWxlbmRhci1waWNrZXItaW5kaWNhdG9yIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLy8gMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4vLyAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4vLyAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuLy8gMy4gT3BpbmlvbmF0ZWQ6IGFkZCBcImhhbmRcIiBjdXJzb3IgdG8gbm9uLWRpc2FibGVkIGJ1dHRvbiBlbGVtZW50cy5cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sIC8vIDFcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAyXG5cbiAgQGlmICRlbmFibGUtYnV0dG9uLXBvaW50ZXJzIHtcbiAgICAmOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgLy8gM1xuICAgIH1cbiAgfVxufVxuXG4vLyBSZW1vdmUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGZyb20gRmlyZWZveCwgYnV0IGRvbid0IHJlc3RvcmUgdGhlIG91dGxpbmUgbGlrZSBOb3JtYWxpemUuXG5cbjo6LW1vei1mb2N1cy1pbm5lciB7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLy8gMS4gVGV4dGFyZWFzIHNob3VsZCByZWFsbHkgb25seSByZXNpemUgdmVydGljYWxseSBzbyB0aGV5IGRvbid0IGJyZWFrIHRoZWlyIChob3Jpem9udGFsKSBjb250YWluZXJzLlxuXG50ZXh0YXJlYSB7XG4gIHJlc2l6ZTogdmVydGljYWw7IC8vIDFcbn1cblxuLy8gMS4gQnJvd3NlcnMgc2V0IGEgZGVmYXVsdCBgbWluLXdpZHRoOiBtaW4tY29udGVudDtgIG9uIGZpZWxkc2V0cyxcbi8vICAgIHVubGlrZSBlLmcuIGA8ZGl2PmBzLCB3aGljaCBoYXZlIGBtaW4td2lkdGg6IDA7YCBieSBkZWZhdWx0LlxuLy8gICAgU28gd2UgcmVzZXQgdGhhdCB0byBlbnN1cmUgZmllbGRzZXRzIGJlaGF2ZSBtb3JlIGxpa2UgYSBzdGFuZGFyZCBibG9jayBlbGVtZW50LlxuLy8gICAgU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTlcbi8vICAgIGFuZCBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS8jdGhlLWZpZWxkc2V0LWFuZC1sZWdlbmQtZWxlbWVudHNcbi8vIDIuIFJlc2V0IHRoZSBkZWZhdWx0IG91dGxpbmUgYmVoYXZpb3Igb2YgZmllbGRzZXRzIHNvIHRoZXkgZG9uJ3QgYWZmZWN0IHBhZ2UgbGF5b3V0LlxuXG5maWVsZHNldCB7XG4gIG1pbi13aWR0aDogMDsgLy8gMVxuICBwYWRkaW5nOiAwOyAvLyAyXG4gIG1hcmdpbjogMDsgLy8gMlxuICBib3JkZXI6IDA7IC8vIDJcbn1cblxuLy8gMS4gQnkgdXNpbmcgYGZsb2F0OiBsZWZ0YCwgdGhlIGxlZ2VuZCB3aWxsIGJlaGF2ZSBsaWtlIGEgYmxvY2sgZWxlbWVudC5cbi8vICAgIFRoaXMgd2F5IHRoZSBib3JkZXIgb2YgYSBmaWVsZHNldCB3cmFwcyBhcm91bmQgdGhlIGxlZ2VuZCBpZiBwcmVzZW50LlxuLy8gMi4gRml4IHdyYXBwaW5nIGJ1Zy5cbi8vICAgIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI5NzEyXG5cbmxlZ2VuZCB7XG4gIGZsb2F0OiBsZWZ0OyAvLyAxXG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkbGVnZW5kLW1hcmdpbi1ib3R0b207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbGVnZW5kLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkbGVnZW5kLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcblxuICArICoge1xuICAgIGNsZWFyOiBsZWZ0OyAvLyAyXG4gIH1cbn1cblxuLy8gRml4IGhlaWdodCBvZiBpbnB1dHMgd2l0aCBhIHR5cGUgb2YgZGF0ZXRpbWUtbG9jYWwsIGRhdGUsIG1vbnRoLCB3ZWVrLCBvciB0aW1lXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xODg0MlxuXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1maWVsZHMtd3JhcHBlcixcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXRleHQsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1taW51dGUsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1ob3VyLWZpZWxkLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtZGF5LWZpZWxkLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtbW9udGgtZmllbGQsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC15ZWFyLWZpZWxkIHtcbiAgcGFkZGluZzogMDtcbn1cblxuOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vLyAxLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbi8vIDIuIFRoaXMgb3ZlcnJpZGVzIHRoZSBleHRyYSByb3VuZGVkIGNvcm5lcnMgb24gc2VhcmNoIGlucHV0cyBpbiBpT1Mgc28gdGhhdCBvdXJcbi8vICAgIGAuZm9ybS1jb250cm9sYCBjbGFzcyBjYW4gcHJvcGVybHkgc3R5bGUgdGhlbS4gTm90ZSB0aGF0IHRoaXMgY2Fubm90IHNpbXBseVxuLy8gICAgYmUgYWRkZWQgdG8gYC5mb3JtLWNvbnRyb2xgIGFzIGl0J3Mgbm90IHNwZWNpZmljIGVub3VnaC4gRm9yIGRldGFpbHMsIHNlZVxuLy8gICAgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTU4Ni5cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLy8gMVxuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gMlxufVxuXG4vLyAxLiBBIGZldyBpbnB1dCB0eXBlcyBzaG91bGQgc3RheSBMVFJcbi8vIFNlZSBodHRwczovL3J0bHN0eWxpbmcuY29tL3Bvc3RzL3J0bC1zdHlsaW5nI2Zvcm0taW5wdXRzXG4vLyAyLiBSVEwgb25seSBvdXRwdXRcbi8vIFNlZSBodHRwczovL3J0bGNzcy5jb20vbGVhcm4vdXNhZ2UtZ3VpZGUvY29udHJvbC1kaXJlY3RpdmVzLyNyYXdcblxuLyogcnRsOnJhdzpcblt0eXBlPVwidGVsXCJdLFxuW3R5cGU9XCJ1cmxcIl0sXG5bdHlwZT1cImVtYWlsXCJdLFxuW3R5cGU9XCJudW1iZXJcIl0ge1xuICBkaXJlY3Rpb246IGx0cjtcbn1cbiovXG5cbi8vIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cblxuOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vLyBSZW1vdmUgcGFkZGluZyBhcm91bmQgY29sb3IgcGlja2VycyBpbiB3ZWJraXQgYnJvd3NlcnNcblxuOjotd2Via2l0LWNvbG9yLXN3YXRjaC13cmFwcGVyIHtcbiAgcGFkZGluZzogMDtcbn1cblxuXG4vLyBJbmhlcml0IGZvbnQgZmFtaWx5IGFuZCBsaW5lIGhlaWdodCBmb3IgZmlsZSBpbnB1dCBidXR0b25zXG5cbjo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICBmb250OiBpbmhlcml0O1xufVxuXG4vLyAxLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YFxuLy8gMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIGZvbnQ6IGluaGVyaXQ7IC8vIDFcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcbn1cblxuLy8gQ29ycmVjdCBlbGVtZW50IGRpc3BsYXlzXG5cbm91dHB1dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLy8gUmVtb3ZlIGJvcmRlciBmcm9tIGlmcmFtZVxuXG5pZnJhbWUge1xuICBib3JkZXI6IDA7XG59XG5cbi8vIFN1bW1hcnlcbi8vXG4vLyAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnNcblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgLy8gMVxuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cblxuLy8gUHJvZ3Jlc3Ncbi8vXG4vLyBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuXG4vLyBIaWRkZW4gYXR0cmlidXRlXG4vL1xuLy8gQWx3YXlzIGhpZGUgYW4gZWxlbWVudCB3aXRoIHRoZSBgaGlkZGVuYCBIVE1MIGF0dHJpYnV0ZS5cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3QsIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcblxuLy8gU0NTUyBSRlMgbWl4aW5cbi8vXG4vLyBBdXRvbWF0ZWQgcmVzcG9uc2l2ZSB2YWx1ZXMgZm9yIGZvbnQgc2l6ZXMsIHBhZGRpbmdzLCBtYXJnaW5zIGFuZCBtdWNoIG1vcmVcbi8vXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9ibG9iL21haW4vTElDRU5TRSlcblxuLy8gQ29uZmlndXJhdGlvblxuXG4vLyBCYXNlIHZhbHVlXG4kcmZzLWJhc2UtdmFsdWU6IDEuMjVyZW0gIWRlZmF1bHQ7XG4kcmZzLXVuaXQ6IHJlbSAhZGVmYXVsdDtcblxuQGlmICRyZnMtdW5pdCAhPSByZW0gYW5kICRyZnMtdW5pdCAhPSBweCB7XG4gIEBlcnJvciBcImAjeyRyZnMtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtdW5pdC4gVXNlIGBweGAgb3IgYHJlbWAuXCI7XG59XG5cbi8vIEJyZWFrcG9pbnQgYXQgd2hlcmUgdmFsdWVzIHN0YXJ0IGRlY3JlYXNpbmcgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsZXJcbiRyZnMtYnJlYWtwb2ludDogMTIwMHB4ICFkZWZhdWx0O1xuJHJmcy1icmVha3BvaW50LXVuaXQ6IHB4ICFkZWZhdWx0O1xuXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gcHggYW5kICRyZnMtYnJlYWtwb2ludC11bml0ICE9IGVtIGFuZCAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSByZW0ge1xuICBAZXJyb3IgXCJgI3skcmZzLWJyZWFrcG9pbnQtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtYnJlYWtwb2ludC11bml0LiBVc2UgYHB4YCwgYGVtYCBvciBgcmVtYC5cIjtcbn1cblxuLy8gUmVzaXplIHZhbHVlcyBiYXNlZCBvbiBzY3JlZW4gaGVpZ2h0IGFuZCB3aWR0aFxuJHJmcy10d28tZGltZW5zaW9uYWw6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBGYWN0b3Igb2YgZGVjcmVhc2VcbiRyZnMtZmFjdG9yOiAxMCAhZGVmYXVsdDtcblxuQGlmIHR5cGUtb2YoJHJmcy1mYWN0b3IpICE9IG51bWJlciBvciAkcmZzLWZhY3RvciA8PSAxIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1mYWN0b3J9YCBpcyBub3QgYSB2YWxpZCAgJHJmcy1mYWN0b3IsIGl0IG11c3QgYmUgZ3JlYXRlciB0aGFuIDEuXCI7XG59XG5cbi8vIE1vZGUuIFBvc3NpYmlsaXRpZXM6IFwibWluLW1lZGlhLXF1ZXJ5XCIsIFwibWF4LW1lZGlhLXF1ZXJ5XCJcbiRyZnMtbW9kZTogbWluLW1lZGlhLXF1ZXJ5ICFkZWZhdWx0O1xuXG4vLyBHZW5lcmF0ZSBlbmFibGUgb3IgZGlzYWJsZSBjbGFzc2VzLiBQb3NzaWJpbGl0aWVzOiBmYWxzZSwgXCJlbmFibGVcIiBvciBcImRpc2FibGVcIlxuJHJmcy1jbGFzczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIDEgcmVtID0gJHJmcy1yZW0tdmFsdWUgcHhcbiRyZnMtcmVtLXZhbHVlOiAxNiAhZGVmYXVsdDtcblxuLy8gU2FmYXJpIGlmcmFtZSByZXNpemUgYnVnOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvaXNzdWVzLzE0XG4kcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXg6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBEaXNhYmxlIFJGUyBieSBzZXR0aW5nICRlbmFibGUtcmZzIHRvIGZhbHNlXG4kZW5hYmxlLXJmczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gQ2FjaGUgJHJmcy1iYXNlLXZhbHVlIHVuaXRcbiRyZnMtYmFzZS12YWx1ZS11bml0OiB1bml0KCRyZnMtYmFzZS12YWx1ZSk7XG5cbkBmdW5jdGlvbiBkaXZpZGUoJGRpdmlkZW5kLCAkZGl2aXNvciwgJHByZWNpc2lvbjogMTApIHtcbiAgJHNpZ246IGlmKCRkaXZpZGVuZCA+IDAgYW5kICRkaXZpc29yID4gMCBvciAkZGl2aWRlbmQgPCAwIGFuZCAkZGl2aXNvciA8IDAsIDEsIC0xKTtcbiAgJGRpdmlkZW5kOiBhYnMoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3I6IGFicygkZGl2aXNvcik7XG4gIEBpZiAkZGl2aWRlbmQgPT0gMCB7XG4gICAgQHJldHVybiAwO1xuICB9XG4gIEBpZiAkZGl2aXNvciA9PSAwIHtcbiAgICBAZXJyb3IgXCJDYW5ub3QgZGl2aWRlIGJ5IDBcIjtcbiAgfVxuICAkcmVtYWluZGVyOiAkZGl2aWRlbmQ7XG4gICRyZXN1bHQ6IDA7XG4gICRmYWN0b3I6IDEwO1xuICBAd2hpbGUgKCRyZW1haW5kZXIgPiAwIGFuZCAkcHJlY2lzaW9uID49IDApIHtcbiAgICAkcXVvdGllbnQ6IDA7XG4gICAgQHdoaWxlICgkcmVtYWluZGVyID49ICRkaXZpc29yKSB7XG4gICAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyIC0gJGRpdmlzb3I7XG4gICAgICAkcXVvdGllbnQ6ICRxdW90aWVudCArIDE7XG4gICAgfVxuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArICRxdW90aWVudDtcbiAgICAkZmFjdG9yOiAkZmFjdG9yICogLjE7XG4gICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAqIDEwO1xuICAgICRwcmVjaXNpb246ICRwcmVjaXNpb24gLSAxO1xuICAgIEBpZiAoJHByZWNpc2lvbiA8IDAgYW5kICRyZW1haW5kZXIgPj0gJGRpdmlzb3IgKiA1KSB7XG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICsgMTtcbiAgICB9XG4gIH1cbiAgJHJlc3VsdDogJHJlc3VsdCAqICRmYWN0b3IgKiAkc2lnbjtcbiAgJGRpdmlkZW5kLXVuaXQ6IHVuaXQoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3ItdW5pdDogdW5pdCgkZGl2aXNvcik7XG4gICR1bml0LW1hcDogKFxuICAgIFwicHhcIjogMXB4LFxuICAgIFwicmVtXCI6IDFyZW0sXG4gICAgXCJlbVwiOiAxZW0sXG4gICAgXCIlXCI6IDElXG4gICk7XG4gIEBpZiAoJGRpdmlkZW5kLXVuaXQgIT0gJGRpdmlzb3ItdW5pdCBhbmQgbWFwLWhhcy1rZXkoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCkpIHtcbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogbWFwLWdldCgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KTtcbiAgfVxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbi8vIFJlbW92ZSBweC11bml0IGZyb20gJHJmcy1iYXNlLXZhbHVlIGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJhc2UtdmFsdWUtdW5pdCA9PSBweCB7XG4gICRyZnMtYmFzZS12YWx1ZTogZGl2aWRlKCRyZnMtYmFzZS12YWx1ZSwgJHJmcy1iYXNlLXZhbHVlICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1iYXNlLXZhbHVlLXVuaXQgPT0gcmVtIHtcbiAgJHJmcy1iYXNlLXZhbHVlOiBkaXZpZGUoJHJmcy1iYXNlLXZhbHVlLCBkaXZpZGUoJHJmcy1iYXNlLXZhbHVlICogMCArIDEsICRyZnMtcmVtLXZhbHVlKSk7XG59XG5cbi8vIENhY2hlICRyZnMtYnJlYWtwb2ludCB1bml0IHRvIHByZXZlbnQgbXVsdGlwbGUgY2FsbHNcbiRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlOiB1bml0KCRyZnMtYnJlYWtwb2ludCk7XG5cbi8vIFJlbW92ZSB1bml0IGZyb20gJHJmcy1icmVha3BvaW50IGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBweCB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1icmVha3BvaW50ICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gcmVtIG9yICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwiZW1cIiB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgZGl2aWRlKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxLCAkcmZzLXJlbS12YWx1ZSkpO1xufVxuXG4vLyBDYWxjdWxhdGUgdGhlIG1lZGlhIHF1ZXJ5IHZhbHVlXG4kcmZzLW1xLXZhbHVlOiBpZigkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSBweCwgI3skcmZzLWJyZWFrcG9pbnR9cHgsICN7ZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1yZW0tdmFsdWUpfSN7JHJmcy1icmVha3BvaW50LXVuaXR9KTtcbiRyZnMtbXEtcHJvcGVydHktd2lkdGg6IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksIG1heC13aWR0aCwgbWluLXdpZHRoKTtcbiRyZnMtbXEtcHJvcGVydHktaGVpZ2h0OiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCBtYXgtaGVpZ2h0LCBtaW4taGVpZ2h0KTtcblxuLy8gSW50ZXJuYWwgbWl4aW4gdXNlZCB0byBkZXRlcm1pbmUgd2hpY2ggbWVkaWEgcXVlcnkgbmVlZHMgdG8gYmUgdXNlZFxuQG1peGluIF9yZnMtbWVkaWEtcXVlcnkge1xuICBAaWYgJHJmcy10d28tZGltZW5zaW9uYWwge1xuICAgIEBpZiAkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5IHtcbiAgICAgIEBtZWRpYSAoI3skcmZzLW1xLXByb3BlcnR5LXdpZHRofTogI3skcmZzLW1xLXZhbHVlfSksICgjeyRyZnMtbXEtcHJvcGVydHktaGVpZ2h0fTogI3skcmZzLW1xLXZhbHVlfSkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSBhbmQgKCN7JHJmcy1tcS1wcm9wZXJ0eS1oZWlnaHR9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gSW50ZXJuYWwgbWl4aW4gdGhhdCBhZGRzIGRpc2FibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtcnVsZSB7XG4gIEBpZiAkcmZzLWNsYXNzID09IGRpc2FibGUgYW5kICRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnkge1xuICAgIC8vIEFkZGluZyBhbiBleHRyYSBjbGFzcyBpbmNyZWFzZXMgc3BlY2lmaWNpdHksIHdoaWNoIHByZXZlbnRzIHRoZSBtZWRpYSBxdWVyeSB0byBvdmVycmlkZSB0aGUgcHJvcGVydHlcbiAgICAmLFxuICAgIC5kaXNhYmxlLXJmcyAmLFxuICAgICYuZGlzYWJsZS1yZnMge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRyZnMtY2xhc3MgPT0gZW5hYmxlIGFuZCAkcmZzLW1vZGUgPT0gbWluLW1lZGlhLXF1ZXJ5IHtcbiAgICAuZW5hYmxlLXJmcyAmLFxuICAgICYuZW5hYmxlLXJmcyB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIEludGVybmFsIG1peGluIHRoYXQgYWRkcyBlbmFibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtbWVkaWEtcXVlcnktcnVsZSB7XG5cbiAgQGlmICRyZnMtY2xhc3MgPT0gZW5hYmxlIHtcbiAgICBAaWYgJHJmcy1tb2RlID09IG1pbi1tZWRpYS1xdWVyeSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBfcmZzLW1lZGlhLXF1ZXJ5IHtcbiAgICAgIC5lbmFibGUtcmZzICYsXG4gICAgICAmLmVuYWJsZS1yZnMge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpZiAkcmZzLWNsYXNzID09IGRpc2FibGUgYW5kICRyZnMtbW9kZSA9PSBtaW4tbWVkaWEtcXVlcnkge1xuICAgICAgLmRpc2FibGUtcmZzICYsXG4gICAgICAmLmRpc2FibGUtcmZzIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byBnZXQgdGhlIGZvcm1hdHRlZCBub24tcmVzcG9uc2l2ZSB2YWx1ZVxuQGZ1bmN0aW9uIHJmcy12YWx1ZSgkdmFsdWVzKSB7XG4gIC8vIENvbnZlcnQgdG8gbGlzdFxuICAkdmFsdWVzOiBpZih0eXBlLW9mKCR2YWx1ZXMpICE9IGxpc3QsICgkdmFsdWVzLCksICR2YWx1ZXMpO1xuXG4gICR2YWw6ICcnO1xuXG4gIC8vIExvb3Agb3ZlciBlYWNoIHZhbHVlIGFuZCBjYWxjdWxhdGUgdmFsdWVcbiAgQGVhY2ggJHZhbHVlIGluICR2YWx1ZXMge1xuICAgIEBpZiAkdmFsdWUgPT0gMCB7XG4gICAgICAkdmFsOiAkdmFsICsgJyAwJztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gQ2FjaGUgJHZhbHVlIHVuaXRcbiAgICAgICR1bml0OiBpZih0eXBlLW9mKCR2YWx1ZSkgPT0gXCJudW1iZXJcIiwgdW5pdCgkdmFsdWUpLCBmYWxzZSk7XG5cbiAgICAgIEBpZiAkdW5pdCA9PSBweCB7XG4gICAgICAgIC8vIENvbnZlcnQgdG8gcmVtIGlmIG5lZWRlZFxuICAgICAgICAkdmFsOiAkdmFsICsgJyAnICsgaWYoJHJmcy11bml0ID09IHJlbSwgI3tkaXZpZGUoJHZhbHVlLCAkdmFsdWUgKiAwICsgJHJmcy1yZW0tdmFsdWUpfXJlbSwgJHZhbHVlKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICR1bml0ID09IHJlbSB7XG4gICAgICAgIC8vIENvbnZlcnQgdG8gcHggaWYgbmVlZGVkXG4gICAgICAgICR2YWw6ICR2YWwgKyAnICcgKyBpZigkcmZzLXVuaXQgPT0gcHgsICN7ZGl2aWRlKCR2YWx1ZSwgJHZhbHVlICogMCArIDEpICogJHJmcy1yZW0tdmFsdWV9cHgsICR2YWx1ZSk7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIC8vIElmICR2YWx1ZSBpc24ndCBhIG51bWJlciAobGlrZSBpbmhlcml0KSBvciAkdmFsdWUgaGFzIGEgdW5pdCAobm90IHB4IG9yIHJlbSwgbGlrZSAxLjVlbSkgb3IgJCBpcyAwLCBqdXN0IHByaW50IHRoZSB2YWx1ZVxuICAgICAgICAkdmFsOiAkdmFsICsgJyAnICsgJHZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlbW92ZSBmaXJzdCBzcGFjZVxuICBAcmV0dXJuIHVucXVvdGUoc3RyLXNsaWNlKCR2YWwsIDIpKTtcbn1cblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIGdldCB0aGUgcmVzcG9uc2l2ZSB2YWx1ZSBjYWxjdWxhdGVkIGJ5IFJGU1xuQGZ1bmN0aW9uIHJmcy1mbHVpZC12YWx1ZSgkdmFsdWVzKSB7XG4gIC8vIENvbnZlcnQgdG8gbGlzdFxuICAkdmFsdWVzOiBpZih0eXBlLW9mKCR2YWx1ZXMpICE9IGxpc3QsICgkdmFsdWVzLCksICR2YWx1ZXMpO1xuXG4gICR2YWw6ICcnO1xuXG4gIC8vIExvb3Agb3ZlciBlYWNoIHZhbHVlIGFuZCBjYWxjdWxhdGUgdmFsdWVcbiAgQGVhY2ggJHZhbHVlIGluICR2YWx1ZXMge1xuICAgIEBpZiAkdmFsdWUgPT0gMCB7XG4gICAgICAkdmFsOiAkdmFsICsgJyAwJztcbiAgICB9XG5cbiAgICBAZWxzZSB7XG4gICAgICAvLyBDYWNoZSAkdmFsdWUgdW5pdFxuICAgICAgJHVuaXQ6IGlmKHR5cGUtb2YoJHZhbHVlKSA9PSBcIm51bWJlclwiLCB1bml0KCR2YWx1ZSksIGZhbHNlKTtcblxuICAgICAgLy8gSWYgJHZhbHVlIGlzbid0IGEgbnVtYmVyIChsaWtlIGluaGVyaXQpIG9yICR2YWx1ZSBoYXMgYSB1bml0IChub3QgcHggb3IgcmVtLCBsaWtlIDEuNWVtKSBvciAkIGlzIDAsIGp1c3QgcHJpbnQgdGhlIHZhbHVlXG4gICAgICBAaWYgbm90ICR1bml0IG9yICR1bml0ICE9IHB4IGFuZCAkdW5pdCAhPSByZW0ge1xuICAgICAgICAkdmFsOiAkdmFsICsgJyAnICsgJHZhbHVlO1xuICAgICAgfVxuXG4gICAgICBAZWxzZSB7XG4gICAgICAgIC8vIFJlbW92ZSB1bml0IGZyb20gJHZhbHVlIGZvciBjYWxjdWxhdGlvbnNcbiAgICAgICAgJHZhbHVlOiBkaXZpZGUoJHZhbHVlLCAkdmFsdWUgKiAwICsgaWYoJHVuaXQgPT0gcHgsIDEsIGRpdmlkZSgxLCAkcmZzLXJlbS12YWx1ZSkpKTtcblxuICAgICAgICAvLyBPbmx5IGFkZCB0aGUgbWVkaWEgcXVlcnkgaWYgdGhlIHZhbHVlIGlzIGdyZWF0ZXIgdGhhbiB0aGUgbWluaW11bSB2YWx1ZVxuICAgICAgICBAaWYgYWJzKCR2YWx1ZSkgPD0gJHJmcy1iYXNlLXZhbHVlIG9yIG5vdCAkZW5hYmxlLXJmcyB7XG4gICAgICAgICAgJHZhbDogJHZhbCArICcgJyArICBpZigkcmZzLXVuaXQgPT0gcmVtLCAje2RpdmlkZSgkdmFsdWUsICRyZnMtcmVtLXZhbHVlKX1yZW0sICN7JHZhbHVlfXB4KTtcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgLy8gQ2FsY3VsYXRlIHRoZSBtaW5pbXVtIHZhbHVlXG4gICAgICAgICAgJHZhbHVlLW1pbjogJHJmcy1iYXNlLXZhbHVlICsgZGl2aWRlKGFicygkdmFsdWUpIC0gJHJmcy1iYXNlLXZhbHVlLCAkcmZzLWZhY3Rvcik7XG5cbiAgICAgICAgICAvLyBDYWxjdWxhdGUgZGlmZmVyZW5jZSBiZXR3ZWVuICR2YWx1ZSBhbmQgdGhlIG1pbmltdW0gdmFsdWVcbiAgICAgICAgICAkdmFsdWUtZGlmZjogYWJzKCR2YWx1ZSkgLSAkdmFsdWUtbWluO1xuXG4gICAgICAgICAgLy8gQmFzZSB2YWx1ZSBmb3JtYXR0aW5nXG4gICAgICAgICAgJG1pbi13aWR0aDogaWYoJHJmcy11bml0ID09IHJlbSwgI3tkaXZpZGUoJHZhbHVlLW1pbiwgJHJmcy1yZW0tdmFsdWUpfXJlbSwgI3skdmFsdWUtbWlufXB4KTtcblxuICAgICAgICAgIC8vIFVzZSBuZWdhdGl2ZSB2YWx1ZSBpZiBuZWVkZWRcbiAgICAgICAgICAkbWluLXdpZHRoOiBpZigkdmFsdWUgPCAwLCAtJG1pbi13aWR0aCwgJG1pbi13aWR0aCk7XG5cbiAgICAgICAgICAvLyBVc2UgYHZtaW5gIGlmIHR3by1kaW1lbnNpb25hbCBpcyBlbmFibGVkXG4gICAgICAgICAgJHZhcmlhYmxlLXVuaXQ6IGlmKCRyZnMtdHdvLWRpbWVuc2lvbmFsLCB2bWluLCB2dyk7XG5cbiAgICAgICAgICAvLyBDYWxjdWxhdGUgdGhlIHZhcmlhYmxlIHdpZHRoIGJldHdlZW4gMCBhbmQgJHJmcy1icmVha3BvaW50XG4gICAgICAgICAgJHZhcmlhYmxlLXdpZHRoOiAje2RpdmlkZSgkdmFsdWUtZGlmZiAqIDEwMCwgJHJmcy1icmVha3BvaW50KX0jeyR2YXJpYWJsZS11bml0fTtcblxuICAgICAgICAgIC8vIFJldHVybiB0aGUgY2FsY3VsYXRlZCB2YWx1ZVxuICAgICAgICAgICR2YWw6ICR2YWwgKyAnIGNhbGMoJyArICRtaW4td2lkdGggKyBpZigkdmFsdWUgPCAwLCAnIC0gJywgJyArICcpICsgJHZhcmlhYmxlLXdpZHRoICsgJyknO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUmVtb3ZlIGZpcnN0IHNwYWNlXG4gIEByZXR1cm4gdW5xdW90ZShzdHItc2xpY2UoJHZhbCwgMikpO1xufVxuXG4vLyBSRlMgbWl4aW5cbkBtaXhpbiByZnMoJHZhbHVlcywgJHByb3BlcnR5OiBmb250LXNpemUpIHtcbiAgQGlmICR2YWx1ZXMgIT0gbnVsbCB7XG4gICAgJHZhbDogcmZzLXZhbHVlKCR2YWx1ZXMpO1xuICAgICRmbHVpZFZhbDogcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZXMpO1xuXG4gICAgLy8gRG8gbm90IHByaW50IHRoZSBtZWRpYSBxdWVyeSBpZiByZXNwb25zaXZlICYgbm9uLXJlc3BvbnNpdmUgdmFsdWVzIGFyZSB0aGUgc2FtZVxuICAgIEBpZiAkdmFsID09ICRmbHVpZFZhbCB7XG4gICAgICAjeyRwcm9wZXJ0eX06ICR2YWw7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIF9yZnMtcnVsZSB7XG4gICAgICAgICN7JHByb3BlcnR5fTogaWYoJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSwgJHZhbCwgJGZsdWlkVmFsKTtcblxuICAgICAgICAvLyBJbmNsdWRlIHNhZmFyaSBpZnJhbWUgcmVzaXplIGZpeCBpZiBuZWVkZWRcbiAgICAgICAgbWluLXdpZHRoOiBpZigkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgsICgwICogMXZ3KSwgbnVsbCk7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnktcnVsZSB7XG4gICAgICAgICN7JHByb3BlcnR5fTogaWYoJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSwgJGZsdWlkVmFsLCAkdmFsKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gU2hvcnRoYW5kIGhlbHBlciBtaXhpbnNcbkBtaXhpbiBmb250LXNpemUoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUpO1xufVxuXG5AbWl4aW4gcGFkZGluZygkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZyk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLXRvcCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy10b3ApO1xufVxuXG5AbWl4aW4gcGFkZGluZy1yaWdodCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1yaWdodCk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLWJvdHRvbSgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1ib3R0b20pO1xufVxuXG5AbWl4aW4gcGFkZGluZy1sZWZ0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nLWxlZnQpO1xufVxuXG5AbWl4aW4gbWFyZ2luKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4pO1xufVxuXG5AbWl4aW4gbWFyZ2luLXRvcCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luLXRvcCk7XG59XG5cbkBtaXhpbiBtYXJnaW4tcmlnaHQoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbi1yaWdodCk7XG59XG5cbkBtaXhpbiBtYXJnaW4tYm90dG9tKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tYm90dG9tKTtcbn1cblxuQG1peGluIG1hcmdpbi1sZWZ0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tbGVmdCk7XG59XG4iLCIvLyBWYXJpYWJsZXNcbi8vXG4vLyBWYXJpYWJsZXMgc2hvdWxkIGZvbGxvdyB0aGUgYCRjb21wb25lbnQtc3RhdGUtcHJvcGVydHktc2l6ZWAgZm9ybXVsYSBmb3Jcbi8vIGNvbnNpc3RlbnQgbmFtaW5nLiBFeDogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yIGFuZCAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzLlxuXG4vLyBDb2xvciBzeXN0ZW1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYXktY29sb3ItdmFyaWFibGVzXG4kd2hpdGU6ICAgICNmZmYgIWRlZmF1bHQ7XG4kZ3JheS0xMDA6ICNmOGY5ZmEgIWRlZmF1bHQ7XG4kZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XG4kZ3JheS0zMDA6ICNkZWUyZTYgIWRlZmF1bHQ7XG4kZ3JheS00MDA6ICNjZWQ0ZGEgIWRlZmF1bHQ7XG4kZ3JheS01MDA6ICNhZGI1YmQgIWRlZmF1bHQ7XG4kZ3JheS02MDA6ICM2Yzc1N2QgIWRlZmF1bHQ7XG4kZ3JheS03MDA6ICM0OTUwNTcgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICMzNDNhNDAgIWRlZmF1bHQ7XG4kZ3JheS05MDA6ICMyMTI1MjkgIWRlZmF1bHQ7XG4kYmxhY2s6ICAgICMwMDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGdyYXktY29sb3ItdmFyaWFibGVzXG5cbi8vIGZ1c3YtZGlzYWJsZVxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYXktY29sb3JzLW1hcFxuJGdyYXlzOiAoXG4gIFwiMTAwXCI6ICRncmF5LTEwMCxcbiAgXCIyMDBcIjogJGdyYXktMjAwLFxuICBcIjMwMFwiOiAkZ3JheS0zMDAsXG4gIFwiNDAwXCI6ICRncmF5LTQwMCxcbiAgXCI1MDBcIjogJGdyYXktNTAwLFxuICBcIjYwMFwiOiAkZ3JheS02MDAsXG4gIFwiNzAwXCI6ICRncmF5LTcwMCxcbiAgXCI4MDBcIjogJGdyYXktODAwLFxuICBcIjkwMFwiOiAkZ3JheS05MDBcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGdyYXktY29sb3JzLW1hcFxuLy8gZnVzdi1lbmFibGVcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbG9yLXZhcmlhYmxlc1xuJGJsdWU6ICAgICMwZDZlZmQgIWRlZmF1bHQ7XG4kaW5kaWdvOiAgIzY2MTBmMiAhZGVmYXVsdDtcbiRwdXJwbGU6ICAjNmY0MmMxICFkZWZhdWx0O1xuJHBpbms6ICAgICNkNjMzODQgIWRlZmF1bHQ7XG4kcmVkOiAgICAgI2RjMzU0NSAhZGVmYXVsdDtcbiRvcmFuZ2U6ICAjZmQ3ZTE0ICFkZWZhdWx0O1xuJHllbGxvdzogICNmZmMxMDcgIWRlZmF1bHQ7XG4kZ3JlZW46ICAgIzE5ODc1NCAhZGVmYXVsdDtcbiR0ZWFsOiAgICAjMjBjOTk3ICFkZWZhdWx0O1xuJGN5YW46ICAgICMwZGNhZjAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNvbG9yLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sb3JzLW1hcFxuJGNvbG9yczogKFxuICBcImJsdWVcIjogICAgICAgJGJsdWUsXG4gIFwiaW5kaWdvXCI6ICAgICAkaW5kaWdvLFxuICBcInB1cnBsZVwiOiAgICAgJHB1cnBsZSxcbiAgXCJwaW5rXCI6ICAgICAgICRwaW5rLFxuICBcInJlZFwiOiAgICAgICAgJHJlZCxcbiAgXCJvcmFuZ2VcIjogICAgICRvcmFuZ2UsXG4gIFwieWVsbG93XCI6ICAgICAkeWVsbG93LFxuICBcImdyZWVuXCI6ICAgICAgJGdyZWVuLFxuICBcInRlYWxcIjogICAgICAgJHRlYWwsXG4gIFwiY3lhblwiOiAgICAgICAkY3lhbixcbiAgXCJ3aGl0ZVwiOiAgICAgICR3aGl0ZSxcbiAgXCJncmF5XCI6ICAgICAgICRncmF5LTYwMCxcbiAgXCJncmF5LWRhcmtcIjogICRncmF5LTgwMFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY29sb3JzLW1hcFxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtY29sb3ItdmFyaWFibGVzXG4kcHJpbWFyeTogICAgICAgJGJsdWUgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5OiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHN1Y2Nlc3M6ICAgICAgICRncmVlbiAhZGVmYXVsdDtcbiRpbmZvOiAgICAgICAgICAkY3lhbiAhZGVmYXVsdDtcbiR3YXJuaW5nOiAgICAgICAkeWVsbG93ICFkZWZhdWx0O1xuJGRhbmdlcjogICAgICAgICRyZWQgIWRlZmF1bHQ7XG4kbGlnaHQ6ICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGRhcms6ICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtY29sb3ItdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1jb2xvcnMtbWFwXG4kdGhlbWUtY29sb3JzOiAoXG4gIFwicHJpbWFyeVwiOiAgICAkcHJpbWFyeSxcbiAgXCJzZWNvbmRhcnlcIjogICRzZWNvbmRhcnksXG4gIFwic3VjY2Vzc1wiOiAgICAkc3VjY2VzcyxcbiAgXCJpbmZvXCI6ICAgICAgICRpbmZvLFxuICBcIndhcm5pbmdcIjogICAgJHdhcm5pbmcsXG4gIFwiZGFuZ2VyXCI6ICAgICAkZGFuZ2VyLFxuICBcImxpZ2h0XCI6ICAgICAgJGxpZ2h0LFxuICBcImRhcmtcIjogICAgICAgJGRhcmtcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWNvbG9ycy1tYXBcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWNvbG9ycy1yZ2JcbiR0aGVtZS1jb2xvcnMtcmdiOiBtYXAtbG9vcCgkdGhlbWUtY29sb3JzLCB0by1yZ2IsIFwiJHZhbHVlXCIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1jb2xvcnMtcmdiXG5cbi8vIFRoZSBjb250cmFzdCByYXRpbyB0byByZWFjaCBhZ2FpbnN0IHdoaXRlLCB0byBkZXRlcm1pbmUgaWYgY29sb3IgY2hhbmdlcyBmcm9tIFwibGlnaHRcIiB0byBcImRhcmtcIi4gQWNjZXB0YWJsZSB2YWx1ZXMgZm9yIFdDQUcgMi4wIGFyZSAzLCA0LjUgYW5kIDcuXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL1dDQUcyMC8jdmlzdWFsLWF1ZGlvLWNvbnRyYXN0LWNvbnRyYXN0XG4kbWluLWNvbnRyYXN0LXJhdGlvOiAgIDQuNSAhZGVmYXVsdDtcblxuLy8gQ3VzdG9taXplIHRoZSBsaWdodCBhbmQgZGFyayB0ZXh0IGNvbG9ycyBmb3IgdXNlIGluIG91ciBjb2xvciBjb250cmFzdCBmdW5jdGlvbi5cbiRjb2xvci1jb250cmFzdC1kYXJrOiAgICAgICRibGFjayAhZGVmYXVsdDtcbiRjb2xvci1jb250cmFzdC1saWdodDogICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8gZnVzdi1kaXNhYmxlXG4kYmx1ZS0xMDA6IHRpbnQtY29sb3IoJGJsdWUsIDgwJSkgIWRlZmF1bHQ7XG4kYmx1ZS0yMDA6IHRpbnQtY29sb3IoJGJsdWUsIDYwJSkgIWRlZmF1bHQ7XG4kYmx1ZS0zMDA6IHRpbnQtY29sb3IoJGJsdWUsIDQwJSkgIWRlZmF1bHQ7XG4kYmx1ZS00MDA6IHRpbnQtY29sb3IoJGJsdWUsIDIwJSkgIWRlZmF1bHQ7XG4kYmx1ZS01MDA6ICRibHVlICFkZWZhdWx0O1xuJGJsdWUtNjAwOiBzaGFkZS1jb2xvcigkYmx1ZSwgMjAlKSAhZGVmYXVsdDtcbiRibHVlLTcwMDogc2hhZGUtY29sb3IoJGJsdWUsIDQwJSkgIWRlZmF1bHQ7XG4kYmx1ZS04MDA6IHNoYWRlLWNvbG9yKCRibHVlLCA2MCUpICFkZWZhdWx0O1xuJGJsdWUtOTAwOiBzaGFkZS1jb2xvcigkYmx1ZSwgODAlKSAhZGVmYXVsdDtcblxuJGluZGlnby0xMDA6IHRpbnQtY29sb3IoJGluZGlnbywgODAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tMjAwOiB0aW50LWNvbG9yKCRpbmRpZ28sIDYwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTMwMDogdGludC1jb2xvcigkaW5kaWdvLCA0MCUpICFkZWZhdWx0O1xuJGluZGlnby00MDA6IHRpbnQtY29sb3IoJGluZGlnbywgMjAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tNTAwOiAkaW5kaWdvICFkZWZhdWx0O1xuJGluZGlnby02MDA6IHNoYWRlLWNvbG9yKCRpbmRpZ28sIDIwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTcwMDogc2hhZGUtY29sb3IoJGluZGlnbywgNDAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tODAwOiBzaGFkZS1jb2xvcigkaW5kaWdvLCA2MCUpICFkZWZhdWx0O1xuJGluZGlnby05MDA6IHNoYWRlLWNvbG9yKCRpbmRpZ28sIDgwJSkgIWRlZmF1bHQ7XG5cbiRwdXJwbGUtMTAwOiB0aW50LWNvbG9yKCRwdXJwbGUsIDgwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTIwMDogdGludC1jb2xvcigkcHVycGxlLCA2MCUpICFkZWZhdWx0O1xuJHB1cnBsZS0zMDA6IHRpbnQtY29sb3IoJHB1cnBsZSwgNDAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtNDAwOiB0aW50LWNvbG9yKCRwdXJwbGUsIDIwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTUwMDogJHB1cnBsZSAhZGVmYXVsdDtcbiRwdXJwbGUtNjAwOiBzaGFkZS1jb2xvcigkcHVycGxlLCAyMCUpICFkZWZhdWx0O1xuJHB1cnBsZS03MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDQwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTgwMDogc2hhZGUtY29sb3IoJHB1cnBsZSwgNjAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtOTAwOiBzaGFkZS1jb2xvcigkcHVycGxlLCA4MCUpICFkZWZhdWx0O1xuXG4kcGluay0xMDA6IHRpbnQtY29sb3IoJHBpbmssIDgwJSkgIWRlZmF1bHQ7XG4kcGluay0yMDA6IHRpbnQtY29sb3IoJHBpbmssIDYwJSkgIWRlZmF1bHQ7XG4kcGluay0zMDA6IHRpbnQtY29sb3IoJHBpbmssIDQwJSkgIWRlZmF1bHQ7XG4kcGluay00MDA6IHRpbnQtY29sb3IoJHBpbmssIDIwJSkgIWRlZmF1bHQ7XG4kcGluay01MDA6ICRwaW5rICFkZWZhdWx0O1xuJHBpbmstNjAwOiBzaGFkZS1jb2xvcigkcGluaywgMjAlKSAhZGVmYXVsdDtcbiRwaW5rLTcwMDogc2hhZGUtY29sb3IoJHBpbmssIDQwJSkgIWRlZmF1bHQ7XG4kcGluay04MDA6IHNoYWRlLWNvbG9yKCRwaW5rLCA2MCUpICFkZWZhdWx0O1xuJHBpbmstOTAwOiBzaGFkZS1jb2xvcigkcGluaywgODAlKSAhZGVmYXVsdDtcblxuJHJlZC0xMDA6IHRpbnQtY29sb3IoJHJlZCwgODAlKSAhZGVmYXVsdDtcbiRyZWQtMjAwOiB0aW50LWNvbG9yKCRyZWQsIDYwJSkgIWRlZmF1bHQ7XG4kcmVkLTMwMDogdGludC1jb2xvcigkcmVkLCA0MCUpICFkZWZhdWx0O1xuJHJlZC00MDA6IHRpbnQtY29sb3IoJHJlZCwgMjAlKSAhZGVmYXVsdDtcbiRyZWQtNTAwOiAkcmVkICFkZWZhdWx0O1xuJHJlZC02MDA6IHNoYWRlLWNvbG9yKCRyZWQsIDIwJSkgIWRlZmF1bHQ7XG4kcmVkLTcwMDogc2hhZGUtY29sb3IoJHJlZCwgNDAlKSAhZGVmYXVsdDtcbiRyZWQtODAwOiBzaGFkZS1jb2xvcigkcmVkLCA2MCUpICFkZWZhdWx0O1xuJHJlZC05MDA6IHNoYWRlLWNvbG9yKCRyZWQsIDgwJSkgIWRlZmF1bHQ7XG5cbiRvcmFuZ2UtMTAwOiB0aW50LWNvbG9yKCRvcmFuZ2UsIDgwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTIwMDogdGludC1jb2xvcigkb3JhbmdlLCA2MCUpICFkZWZhdWx0O1xuJG9yYW5nZS0zMDA6IHRpbnQtY29sb3IoJG9yYW5nZSwgNDAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtNDAwOiB0aW50LWNvbG9yKCRvcmFuZ2UsIDIwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTUwMDogJG9yYW5nZSAhZGVmYXVsdDtcbiRvcmFuZ2UtNjAwOiBzaGFkZS1jb2xvcigkb3JhbmdlLCAyMCUpICFkZWZhdWx0O1xuJG9yYW5nZS03MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDQwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTgwMDogc2hhZGUtY29sb3IoJG9yYW5nZSwgNjAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtOTAwOiBzaGFkZS1jb2xvcigkb3JhbmdlLCA4MCUpICFkZWZhdWx0O1xuXG4keWVsbG93LTEwMDogdGludC1jb2xvcigkeWVsbG93LCA4MCUpICFkZWZhdWx0O1xuJHllbGxvdy0yMDA6IHRpbnQtY29sb3IoJHllbGxvdywgNjAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctMzAwOiB0aW50LWNvbG9yKCR5ZWxsb3csIDQwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTQwMDogdGludC1jb2xvcigkeWVsbG93LCAyMCUpICFkZWZhdWx0O1xuJHllbGxvdy01MDA6ICR5ZWxsb3cgIWRlZmF1bHQ7XG4keWVsbG93LTYwMDogc2hhZGUtY29sb3IoJHllbGxvdywgMjAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctNzAwOiBzaGFkZS1jb2xvcigkeWVsbG93LCA0MCUpICFkZWZhdWx0O1xuJHllbGxvdy04MDA6IHNoYWRlLWNvbG9yKCR5ZWxsb3csIDYwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTkwMDogc2hhZGUtY29sb3IoJHllbGxvdywgODAlKSAhZGVmYXVsdDtcblxuJGdyZWVuLTEwMDogdGludC1jb2xvcigkZ3JlZW4sIDgwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tMjAwOiB0aW50LWNvbG9yKCRncmVlbiwgNjAlKSAhZGVmYXVsdDtcbiRncmVlbi0zMDA6IHRpbnQtY29sb3IoJGdyZWVuLCA0MCUpICFkZWZhdWx0O1xuJGdyZWVuLTQwMDogdGludC1jb2xvcigkZ3JlZW4sIDIwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tNTAwOiAkZ3JlZW4gIWRlZmF1bHQ7XG4kZ3JlZW4tNjAwOiBzaGFkZS1jb2xvcigkZ3JlZW4sIDIwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tNzAwOiBzaGFkZS1jb2xvcigkZ3JlZW4sIDQwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tODAwOiBzaGFkZS1jb2xvcigkZ3JlZW4sIDYwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tOTAwOiBzaGFkZS1jb2xvcigkZ3JlZW4sIDgwJSkgIWRlZmF1bHQ7XG5cbiR0ZWFsLTEwMDogdGludC1jb2xvcigkdGVhbCwgODAlKSAhZGVmYXVsdDtcbiR0ZWFsLTIwMDogdGludC1jb2xvcigkdGVhbCwgNjAlKSAhZGVmYXVsdDtcbiR0ZWFsLTMwMDogdGludC1jb2xvcigkdGVhbCwgNDAlKSAhZGVmYXVsdDtcbiR0ZWFsLTQwMDogdGludC1jb2xvcigkdGVhbCwgMjAlKSAhZGVmYXVsdDtcbiR0ZWFsLTUwMDogJHRlYWwgIWRlZmF1bHQ7XG4kdGVhbC02MDA6IHNoYWRlLWNvbG9yKCR0ZWFsLCAyMCUpICFkZWZhdWx0O1xuJHRlYWwtNzAwOiBzaGFkZS1jb2xvcigkdGVhbCwgNDAlKSAhZGVmYXVsdDtcbiR0ZWFsLTgwMDogc2hhZGUtY29sb3IoJHRlYWwsIDYwJSkgIWRlZmF1bHQ7XG4kdGVhbC05MDA6IHNoYWRlLWNvbG9yKCR0ZWFsLCA4MCUpICFkZWZhdWx0O1xuXG4kY3lhbi0xMDA6IHRpbnQtY29sb3IoJGN5YW4sIDgwJSkgIWRlZmF1bHQ7XG4kY3lhbi0yMDA6IHRpbnQtY29sb3IoJGN5YW4sIDYwJSkgIWRlZmF1bHQ7XG4kY3lhbi0zMDA6IHRpbnQtY29sb3IoJGN5YW4sIDQwJSkgIWRlZmF1bHQ7XG4kY3lhbi00MDA6IHRpbnQtY29sb3IoJGN5YW4sIDIwJSkgIWRlZmF1bHQ7XG4kY3lhbi01MDA6ICRjeWFuICFkZWZhdWx0O1xuJGN5YW4tNjAwOiBzaGFkZS1jb2xvcigkY3lhbiwgMjAlKSAhZGVmYXVsdDtcbiRjeWFuLTcwMDogc2hhZGUtY29sb3IoJGN5YW4sIDQwJSkgIWRlZmF1bHQ7XG4kY3lhbi04MDA6IHNoYWRlLWNvbG9yKCRjeWFuLCA2MCUpICFkZWZhdWx0O1xuJGN5YW4tOTAwOiBzaGFkZS1jb2xvcigkY3lhbiwgODAlKSAhZGVmYXVsdDtcblxuJGJsdWVzOiAoXG4gIFwiYmx1ZS0xMDBcIjogJGJsdWUtMTAwLFxuICBcImJsdWUtMjAwXCI6ICRibHVlLTIwMCxcbiAgXCJibHVlLTMwMFwiOiAkYmx1ZS0zMDAsXG4gIFwiYmx1ZS00MDBcIjogJGJsdWUtNDAwLFxuICBcImJsdWUtNTAwXCI6ICRibHVlLTUwMCxcbiAgXCJibHVlLTYwMFwiOiAkYmx1ZS02MDAsXG4gIFwiYmx1ZS03MDBcIjogJGJsdWUtNzAwLFxuICBcImJsdWUtODAwXCI6ICRibHVlLTgwMCxcbiAgXCJibHVlLTkwMFwiOiAkYmx1ZS05MDBcbikgIWRlZmF1bHQ7XG5cbiRpbmRpZ29zOiAoXG4gIFwiaW5kaWdvLTEwMFwiOiAkaW5kaWdvLTEwMCxcbiAgXCJpbmRpZ28tMjAwXCI6ICRpbmRpZ28tMjAwLFxuICBcImluZGlnby0zMDBcIjogJGluZGlnby0zMDAsXG4gIFwiaW5kaWdvLTQwMFwiOiAkaW5kaWdvLTQwMCxcbiAgXCJpbmRpZ28tNTAwXCI6ICRpbmRpZ28tNTAwLFxuICBcImluZGlnby02MDBcIjogJGluZGlnby02MDAsXG4gIFwiaW5kaWdvLTcwMFwiOiAkaW5kaWdvLTcwMCxcbiAgXCJpbmRpZ28tODAwXCI6ICRpbmRpZ28tODAwLFxuICBcImluZGlnby05MDBcIjogJGluZGlnby05MDBcbikgIWRlZmF1bHQ7XG5cbiRwdXJwbGVzOiAoXG4gIFwicHVycGxlLTEwMFwiOiAkcHVycGxlLTIwMCxcbiAgXCJwdXJwbGUtMjAwXCI6ICRwdXJwbGUtMTAwLFxuICBcInB1cnBsZS0zMDBcIjogJHB1cnBsZS0zMDAsXG4gIFwicHVycGxlLTQwMFwiOiAkcHVycGxlLTQwMCxcbiAgXCJwdXJwbGUtNTAwXCI6ICRwdXJwbGUtNTAwLFxuICBcInB1cnBsZS02MDBcIjogJHB1cnBsZS02MDAsXG4gIFwicHVycGxlLTcwMFwiOiAkcHVycGxlLTcwMCxcbiAgXCJwdXJwbGUtODAwXCI6ICRwdXJwbGUtODAwLFxuICBcInB1cnBsZS05MDBcIjogJHB1cnBsZS05MDBcbikgIWRlZmF1bHQ7XG5cbiRwaW5rczogKFxuICBcInBpbmstMTAwXCI6ICRwaW5rLTEwMCxcbiAgXCJwaW5rLTIwMFwiOiAkcGluay0yMDAsXG4gIFwicGluay0zMDBcIjogJHBpbmstMzAwLFxuICBcInBpbmstNDAwXCI6ICRwaW5rLTQwMCxcbiAgXCJwaW5rLTUwMFwiOiAkcGluay01MDAsXG4gIFwicGluay02MDBcIjogJHBpbmstNjAwLFxuICBcInBpbmstNzAwXCI6ICRwaW5rLTcwMCxcbiAgXCJwaW5rLTgwMFwiOiAkcGluay04MDAsXG4gIFwicGluay05MDBcIjogJHBpbmstOTAwXG4pICFkZWZhdWx0O1xuXG4kcmVkczogKFxuICBcInJlZC0xMDBcIjogJHJlZC0xMDAsXG4gIFwicmVkLTIwMFwiOiAkcmVkLTIwMCxcbiAgXCJyZWQtMzAwXCI6ICRyZWQtMzAwLFxuICBcInJlZC00MDBcIjogJHJlZC00MDAsXG4gIFwicmVkLTUwMFwiOiAkcmVkLTUwMCxcbiAgXCJyZWQtNjAwXCI6ICRyZWQtNjAwLFxuICBcInJlZC03MDBcIjogJHJlZC03MDAsXG4gIFwicmVkLTgwMFwiOiAkcmVkLTgwMCxcbiAgXCJyZWQtOTAwXCI6ICRyZWQtOTAwXG4pICFkZWZhdWx0O1xuXG4kb3JhbmdlczogKFxuICBcIm9yYW5nZS0xMDBcIjogJG9yYW5nZS0xMDAsXG4gIFwib3JhbmdlLTIwMFwiOiAkb3JhbmdlLTIwMCxcbiAgXCJvcmFuZ2UtMzAwXCI6ICRvcmFuZ2UtMzAwLFxuICBcIm9yYW5nZS00MDBcIjogJG9yYW5nZS00MDAsXG4gIFwib3JhbmdlLTUwMFwiOiAkb3JhbmdlLTUwMCxcbiAgXCJvcmFuZ2UtNjAwXCI6ICRvcmFuZ2UtNjAwLFxuICBcIm9yYW5nZS03MDBcIjogJG9yYW5nZS03MDAsXG4gIFwib3JhbmdlLTgwMFwiOiAkb3JhbmdlLTgwMCxcbiAgXCJvcmFuZ2UtOTAwXCI6ICRvcmFuZ2UtOTAwXG4pICFkZWZhdWx0O1xuXG4keWVsbG93czogKFxuICBcInllbGxvdy0xMDBcIjogJHllbGxvdy0xMDAsXG4gIFwieWVsbG93LTIwMFwiOiAkeWVsbG93LTIwMCxcbiAgXCJ5ZWxsb3ctMzAwXCI6ICR5ZWxsb3ctMzAwLFxuICBcInllbGxvdy00MDBcIjogJHllbGxvdy00MDAsXG4gIFwieWVsbG93LTUwMFwiOiAkeWVsbG93LTUwMCxcbiAgXCJ5ZWxsb3ctNjAwXCI6ICR5ZWxsb3ctNjAwLFxuICBcInllbGxvdy03MDBcIjogJHllbGxvdy03MDAsXG4gIFwieWVsbG93LTgwMFwiOiAkeWVsbG93LTgwMCxcbiAgXCJ5ZWxsb3ctOTAwXCI6ICR5ZWxsb3ctOTAwXG4pICFkZWZhdWx0O1xuXG4kZ3JlZW5zOiAoXG4gIFwiZ3JlZW4tMTAwXCI6ICRncmVlbi0xMDAsXG4gIFwiZ3JlZW4tMjAwXCI6ICRncmVlbi0yMDAsXG4gIFwiZ3JlZW4tMzAwXCI6ICRncmVlbi0zMDAsXG4gIFwiZ3JlZW4tNDAwXCI6ICRncmVlbi00MDAsXG4gIFwiZ3JlZW4tNTAwXCI6ICRncmVlbi01MDAsXG4gIFwiZ3JlZW4tNjAwXCI6ICRncmVlbi02MDAsXG4gIFwiZ3JlZW4tNzAwXCI6ICRncmVlbi03MDAsXG4gIFwiZ3JlZW4tODAwXCI6ICRncmVlbi04MDAsXG4gIFwiZ3JlZW4tOTAwXCI6ICRncmVlbi05MDBcbikgIWRlZmF1bHQ7XG5cbiR0ZWFsczogKFxuICBcInRlYWwtMTAwXCI6ICR0ZWFsLTEwMCxcbiAgXCJ0ZWFsLTIwMFwiOiAkdGVhbC0yMDAsXG4gIFwidGVhbC0zMDBcIjogJHRlYWwtMzAwLFxuICBcInRlYWwtNDAwXCI6ICR0ZWFsLTQwMCxcbiAgXCJ0ZWFsLTUwMFwiOiAkdGVhbC01MDAsXG4gIFwidGVhbC02MDBcIjogJHRlYWwtNjAwLFxuICBcInRlYWwtNzAwXCI6ICR0ZWFsLTcwMCxcbiAgXCJ0ZWFsLTgwMFwiOiAkdGVhbC04MDAsXG4gIFwidGVhbC05MDBcIjogJHRlYWwtOTAwXG4pICFkZWZhdWx0O1xuXG4kY3lhbnM6IChcbiAgXCJjeWFuLTEwMFwiOiAkY3lhbi0xMDAsXG4gIFwiY3lhbi0yMDBcIjogJGN5YW4tMjAwLFxuICBcImN5YW4tMzAwXCI6ICRjeWFuLTMwMCxcbiAgXCJjeWFuLTQwMFwiOiAkY3lhbi00MDAsXG4gIFwiY3lhbi01MDBcIjogJGN5YW4tNTAwLFxuICBcImN5YW4tNjAwXCI6ICRjeWFuLTYwMCxcbiAgXCJjeWFuLTcwMFwiOiAkY3lhbi03MDAsXG4gIFwiY3lhbi04MDBcIjogJGN5YW4tODAwLFxuICBcImN5YW4tOTAwXCI6ICRjeWFuLTkwMFxuKSAhZGVmYXVsdDtcbi8vIGZ1c3YtZW5hYmxlXG5cbi8vIENoYXJhY3RlcnMgd2hpY2ggYXJlIGVzY2FwZWQgYnkgdGhlIGVzY2FwZS1zdmcgZnVuY3Rpb25cbiRlc2NhcGVkLWNoYXJhY3RlcnM6IChcbiAgKFwiPFwiLCBcIiUzY1wiKSxcbiAgKFwiPlwiLCBcIiUzZVwiKSxcbiAgKFwiI1wiLCBcIiUyM1wiKSxcbiAgKFwiKFwiLCBcIiUyOFwiKSxcbiAgKFwiKVwiLCBcIiUyOVwiKSxcbikgIWRlZmF1bHQ7XG5cbi8vIE9wdGlvbnNcbi8vXG4vLyBRdWlja2x5IG1vZGlmeSBnbG9iYWwgc3R5bGluZyBieSBlbmFibGluZyBvciBkaXNhYmxpbmcgb3B0aW9uYWwgZmVhdHVyZXMuXG5cbiRlbmFibGUtY2FyZXQ6ICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJvdW5kZWQ6ICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1zaGFkb3dzOiAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWdyYWRpZW50czogICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtdHJhbnNpdGlvbnM6ICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJlZHVjZWQtbW90aW9uOiAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1zbW9vdGgtc2Nyb2xsOiAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JpZC1jbGFzc2VzOiAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWNzc2dyaWQ6ICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtYnV0dG9uLXBvaW50ZXJzOiAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJmczogICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS12YWxpZGF0aW9uLWljb25zOiAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtbmVnYXRpdmUtbWFyZ2luczogICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1kZXByZWNhdGlvbi1tZXNzYWdlczogdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllczogIHRydWUgIWRlZmF1bHQ7XG5cbi8vIFByZWZpeCBmb3IgOnJvb3QgQ1NTIHZhcmlhYmxlc1xuXG4kdmFyaWFibGUtcHJlZml4OiAgICAgICAgICAgICBicy0gIWRlZmF1bHQ7XG5cbi8vIEdyYWRpZW50XG4vL1xuLy8gVGhlIGdyYWRpZW50IHdoaWNoIGlzIGFkZGVkIHRvIGNvbXBvbmVudHMgaWYgYCRlbmFibGUtZ3JhZGllbnRzYCBpcyBgdHJ1ZWBcbi8vIFRoaXMgZ3JhZGllbnQgaXMgYWxzbyBhZGRlZCB0byBlbGVtZW50cyB3aXRoIGAuYmctZ3JhZGllbnRgXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdmFyaWFibGUtZ3JhZGllbnRcbiRncmFkaWVudDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgkd2hpdGUsIC4xNSksIHJnYmEoJHdoaXRlLCAwKSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHZhcmlhYmxlLWdyYWRpZW50XG5cbi8vIFNwYWNpbmdcbi8vXG4vLyBDb250cm9sIHRoZSBkZWZhdWx0IHN0eWxpbmcgb2YgbW9zdCBCb290c3RyYXAgZWxlbWVudHMgYnkgbW9kaWZ5aW5nIHRoZXNlXG4vLyB2YXJpYWJsZXMuIE1vc3RseSBmb2N1c2VkIG9uIHNwYWNpbmcuXG4vLyBZb3UgY2FuIGFkZCBtb3JlIGVudHJpZXMgdG8gdGhlICRzcGFjZXJzIG1hcCwgc2hvdWxkIHlvdSBuZWVkIG1vcmUgdmFyaWF0aW9uLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc3BhY2VyLXZhcmlhYmxlcy1tYXBzXG4kc3BhY2VyOiAxcmVtICFkZWZhdWx0O1xuJHNwYWNlcnM6IChcbiAgMDogMCxcbiAgMTogJHNwYWNlciAqIC4yNSxcbiAgMjogJHNwYWNlciAqIC41LFxuICAzOiAkc3BhY2VyLFxuICA0OiAkc3BhY2VyICogMS41LFxuICA1OiAkc3BhY2VyICogMyxcbikgIWRlZmF1bHQ7XG5cbiRuZWdhdGl2ZS1zcGFjZXJzOiBpZigkZW5hYmxlLW5lZ2F0aXZlLW1hcmdpbnMsIG5lZ2F0aXZpZnktbWFwKCRzcGFjZXJzKSwgbnVsbCkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNwYWNlci12YXJpYWJsZXMtbWFwc1xuXG4vLyBQb3NpdGlvblxuLy9cbi8vIERlZmluZSB0aGUgZWRnZSBwb3NpdGlvbmluZyBhbmNob3JzIG9mIHRoZSBwb3NpdGlvbiB1dGlsaXRpZXMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwb3NpdGlvbi1tYXBcbiRwb3NpdGlvbi12YWx1ZXM6IChcbiAgMDogMCxcbiAgNTA6IDUwJSxcbiAgMTAwOiAxMDAlXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwb3NpdGlvbi1tYXBcblxuLy8gQm9keVxuLy9cbi8vIFNldHRpbmdzIGZvciB0aGUgYDxib2R5PmAgZWxlbWVudC5cblxuJGJvZHktYmc6ICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kYm9keS10ZXh0LWFsaWduOiAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuLy8gVXRpbGl0aWVzIG1hcHNcbi8vXG4vLyBFeHRlbmRzIHRoZSBkZWZhdWx0IGAkdGhlbWUtY29sb3JzYCBtYXBzIHRvIGhlbHAgY3JlYXRlIG91ciB1dGlsaXRpZXMuXG5cbi8vIENvbWUgdjYsIHdlJ2xsIGRlLWR1cGUgdGhlc2UgdmFyaWFibGVzLiBVbnRpbCB0aGVuLCBmb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eSwgd2Uga2VlcCB0aGVtIHRvIHJlYXNzaWduLlxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxpdGllcy1jb2xvcnNcbiR1dGlsaXRpZXMtY29sb3JzOiAkdGhlbWUtY29sb3JzLXJnYiAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdXRpbGl0aWVzLWNvbG9yc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbGl0aWVzLXRleHQtY29sb3JzXG4kdXRpbGl0aWVzLXRleHQ6IG1hcC1tZXJnZShcbiAgJHV0aWxpdGllcy1jb2xvcnMsXG4gIChcbiAgICBcImJsYWNrXCI6IHRvLXJnYigkYmxhY2spLFxuICAgIFwid2hpdGVcIjogdG8tcmdiKCR3aGl0ZSksXG4gICAgXCJib2R5XCI6IHRvLXJnYigkYm9keS1jb2xvcilcbiAgKVxuKSAhZGVmYXVsdDtcbiR1dGlsaXRpZXMtdGV4dC1jb2xvcnM6IG1hcC1sb29wKCR1dGlsaXRpZXMtdGV4dCwgcmdiYS1jc3MtdmFyLCBcIiRrZXlcIiwgXCJ0ZXh0XCIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB1dGlsaXRpZXMtdGV4dC1jb2xvcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxpdGllcy1iZy1jb2xvcnNcbiR1dGlsaXRpZXMtYmc6IG1hcC1tZXJnZShcbiAgJHV0aWxpdGllcy1jb2xvcnMsXG4gIChcbiAgICBcImJsYWNrXCI6IHRvLXJnYigkYmxhY2spLFxuICAgIFwid2hpdGVcIjogdG8tcmdiKCR3aGl0ZSksXG4gICAgXCJib2R5XCI6IHRvLXJnYigkYm9keS1iZylcbiAgKVxuKSAhZGVmYXVsdDtcbiR1dGlsaXRpZXMtYmctY29sb3JzOiBtYXAtbG9vcCgkdXRpbGl0aWVzLWJnLCByZ2JhLWNzcy12YXIsIFwiJGtleVwiLCBcImJnXCIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB1dGlsaXRpZXMtYmctY29sb3JzXG5cbi8vIExpbmtzXG4vL1xuLy8gU3R5bGUgYW5jaG9yIGVsZW1lbnRzLlxuXG4kbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkcHJpbWFyeSAhZGVmYXVsdDtcbiRsaW5rLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgICAgICAgIHVuZGVybGluZSAhZGVmYXVsdDtcbiRsaW5rLXNoYWRlLXBlcmNlbnRhZ2U6ICAgICAgICAgICAgICAgICAgIDIwJSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIHNoaWZ0LWNvbG9yKCRsaW5rLWNvbG9yLCAkbGluay1zaGFkZS1wZXJjZW50YWdlKSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRzdHJldGNoZWQtbGluay1wc2V1ZG8tZWxlbWVudDogICAgICAgICAgIGFmdGVyICFkZWZhdWx0O1xuJHN0cmV0Y2hlZC1saW5rLXotaW5kZXg6ICAgICAgICAgICAgICAgICAgMSAhZGVmYXVsdDtcblxuLy8gUGFyYWdyYXBoc1xuLy9cbi8vIFN0eWxlIHAgZWxlbWVudC5cblxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAgIDFyZW0gIWRlZmF1bHQ7XG5cblxuLy8gR3JpZCBicmVha3BvaW50c1xuLy9cbi8vIERlZmluZSB0aGUgbWluaW11bSBkaW1lbnNpb25zIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLFxuLy8gYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcywgZm9yIHVzZSBpbiBtZWRpYSBxdWVyaWVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZ3JpZC1icmVha3BvaW50c1xuJGdyaWQtYnJlYWtwb2ludHM6IChcbiAgeHM6IDAsXG4gIHNtOiA1NzZweCxcbiAgbWQ6IDc2OHB4LFxuICBsZzogOTkycHgsXG4gIHhsOiAxMjAwcHgsXG4gIHh4bDogMTQwMHB4XG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBncmlkLWJyZWFrcG9pbnRzXG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuQGluY2x1ZGUgX2Fzc2VydC1zdGFydHMtYXQtemVybygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcblxuXG4vLyBHcmlkIGNvbnRhaW5lcnNcbi8vXG4vLyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29udGFpbmVyLW1heC13aWR0aHNcbiRjb250YWluZXItbWF4LXdpZHRoczogKFxuICBzbTogNTQwcHgsXG4gIG1kOiA3MjBweCxcbiAgbGc6IDk2MHB4LFxuICB4bDogMTE0MHB4LFxuICB4eGw6IDEzMjBweFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY29udGFpbmVyLW1heC13aWR0aHNcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGNvbnRhaW5lci1tYXgtd2lkdGhzLCBcIiRjb250YWluZXItbWF4LXdpZHRoc1wiKTtcblxuXG4vLyBHcmlkIGNvbHVtbnNcbi8vXG4vLyBTZXQgdGhlIG51bWJlciBvZiBjb2x1bW5zIGFuZCBzcGVjaWZ5IHRoZSB3aWR0aCBvZiB0aGUgZ3V0dGVycy5cblxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XG4kZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kZ3JpZC1yb3ctY29sdW1uczogICAgICAgICAgICA2ICFkZWZhdWx0O1xuXG4kZ3V0dGVyczogJHNwYWNlcnMgIWRlZmF1bHQ7XG5cbi8vIENvbnRhaW5lciBwYWRkaW5nXG5cbiRjb250YWluZXItcGFkZGluZy14OiAkZ3JpZC1ndXR0ZXItd2lkdGggKiAuNSAhZGVmYXVsdDtcblxuXG4vLyBDb21wb25lbnRzXG4vL1xuLy8gRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm9yZGVyLXZhcmlhYmxlc1xuJGJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJGJvcmRlci13aWR0aHM6IChcbiAgMTogMXB4LFxuICAyOiAycHgsXG4gIDM6IDNweCxcbiAgNDogNHB4LFxuICA1OiA1cHhcbikgIWRlZmF1bHQ7XG5cbiRib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYm9yZGVyLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm9yZGVyLXJhZGl1cy12YXJpYWJsZXNcbiRib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgLjNyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1waWxsOiAgICAgICAgICA1MHJlbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYm9yZGVyLXJhZGl1cy12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJveC1zaGFkb3ctdmFyaWFibGVzXG4kYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1zbTogICAgICAgICAgICAgICAwIC4xMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWxnOiAgICAgICAgICAgICAgIDAgMXJlbSAzcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWluc2V0OiAgICAgICAgICAgIGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJveC1zaGFkb3ctdmFyaWFibGVzXG5cbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAgICRwcmltYXJ5ICFkZWZhdWx0O1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2FyZXQtdmFyaWFibGVzXG4kY2FyZXQtd2lkdGg6ICAgICAgICAgICAgICAgICAuM2VtICFkZWZhdWx0O1xuJGNhcmV0LXZlcnRpY2FsLWFsaWduOiAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuJGNhcmV0LXNwYWNpbmc6ICAgICAgICAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjYXJldC12YXJpYWJsZXNcblxuJHRyYW5zaXRpb24tYmFzZTogICAgICAgICAgICAgYWxsIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWZhZGU6ICAgICAgICAgICAgIG9wYWNpdHkgLjE1cyBsaW5lYXIgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sbGFwc2UtdHJhbnNpdGlvblxuJHRyYW5zaXRpb24tY29sbGFwc2U6ICAgICAgICAgaGVpZ2h0IC4zNXMgZWFzZSAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWNvbGxhcHNlLXdpZHRoOiAgIHdpZHRoIC4zNXMgZWFzZSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY29sbGFwc2UtdHJhbnNpdGlvblxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3Rcbi8vIHNjc3MtZG9jcy1zdGFydCBhc3BlY3QtcmF0aW9zXG4kYXNwZWN0LXJhdGlvczogKFxuICBcIjF4MVwiOiAxMDAlLFxuICBcIjR4M1wiOiBjYWxjKDMgLyA0ICogMTAwJSksXG4gIFwiMTZ4OVwiOiBjYWxjKDkgLyAxNiAqIDEwMCUpLFxuICBcIjIxeDlcIjogY2FsYyg5IC8gMjEgKiAxMDAlKVxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYXNwZWN0LXJhdGlvc1xuLy8gc3R5bGVsaW50LWVuYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuLy8gVHlwb2dyYXBoeVxuLy9cbi8vIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9udC12YXJpYWJsZXNcbi8vIHN0eWxlbGludC1kaXNhYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICAgICAgc3lzdGVtLXVpLCAtYXBwbGUtc3lzdGVtLCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgXCJOb3RvIFNhbnNcIiwgXCJMaWJlcmF0aW9uIFNhbnNcIiwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogICAgICAgU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1lbmFibGUgdmFsdWUta2V5d29yZC1jYXNlXG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgICAgICB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Zm9udC1zYW5zLXNlcmlmKSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1jb2RlOiAgICAgICAgICAgIHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1mb250LW1vbm9zcGFjZSkgIWRlZmF1bHQ7XG5cbi8vICRmb250LXNpemUtcm9vdCBhZmZlY3RzIHRoZSB2YWx1ZSBvZiBgcmVtYCwgd2hpY2ggaXMgdXNlZCBmb3IgYXMgd2VsbCBmb250IHNpemVzLCBwYWRkaW5ncywgYW5kIG1hcmdpbnNcbi8vICRmb250LXNpemUtYmFzZSBhZmZlY3RzIHRoZSBmb250IHNpemUgb2YgdGhlIGJvZHkgdGV4dFxuJGZvbnQtc2l6ZS1yb290OiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb250LXNpemUtYmFzZTogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7IC8vIEFzc3VtZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCwgdHlwaWNhbGx5IGAxNnB4YFxuJGZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjg3NSAhZGVmYXVsdDtcbiRmb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1saWdodGVyOiAgICAgICAgIGxpZ2h0ZXIgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbGlnaHQ6ICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbm9ybWFsOiAgICAgICAgICA0MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZDogICAgICAgICAgICA3MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZGVyOiAgICAgICAgICBib2xkZXIgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1iYXNlOiAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbiRsaW5lLWhlaWdodC1iYXNlOiAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1zbTogICAgICAgICAgICAgIDEuMjUgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAyICFkZWZhdWx0O1xuXG4kaDEtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyLjUgIWRlZmF1bHQ7XG4kaDItZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS43NSAhZGVmYXVsdDtcbiRoNC1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRoNS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kaDYtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvbnQtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb250LXNpemVzXG4kZm9udC1zaXplczogKFxuICAxOiAkaDEtZm9udC1zaXplLFxuICAyOiAkaDItZm9udC1zaXplLFxuICAzOiAkaDMtZm9udC1zaXplLFxuICA0OiAkaDQtZm9udC1zaXplLFxuICA1OiAkaDUtZm9udC1zaXplLFxuICA2OiAkaDYtZm9udC1zaXplXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb250LXNpemVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBoZWFkaW5ncy12YXJpYWJsZXNcbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tOiAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC1zdHlsZTogICAgICAgICBudWxsICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgICAgICAgNTAwICFkZWZhdWx0O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAgICAgMS4yICFkZWZhdWx0O1xuJGhlYWRpbmdzLWNvbG9yOiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgaGVhZGluZ3MtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBkaXNwbGF5LWhlYWRpbmdzXG4kZGlzcGxheS1mb250LXNpemVzOiAoXG4gIDE6IDVyZW0sXG4gIDI6IDQuNXJlbSxcbiAgMzogNHJlbSxcbiAgNDogMy41cmVtLFxuICA1OiAzcmVtLFxuICA2OiAyLjVyZW1cbikgIWRlZmF1bHQ7XG5cbiRkaXNwbGF5LWZvbnQtd2VpZ2h0OiAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheS1saW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBkaXNwbGF5LWhlYWRpbmdzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0eXBlLXZhcmlhYmxlc1xuJGxlYWQtZm9udC1zaXplOiAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRsZWFkLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcblxuJHNtYWxsLWZvbnQtc2l6ZTogICAgICAgICAgICAgLjg3NWVtICFkZWZhdWx0O1xuXG4kc3ViLXN1cC1mb250LXNpemU6ICAgICAgICAgICAuNzVlbSAhZGVmYXVsdDtcblxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kaW5pdGlhbGlzbS1mb250LXNpemU6ICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuXG4kYmxvY2txdW90ZS1tYXJnaW4teTogICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWZvb3Rlci1jb2xvcjogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWZvb3Rlci1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG5cbiRoci1tYXJnaW4teTogICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kaHItY29sb3I6ICAgICAgICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuJGhyLWhlaWdodDogICAgICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRoci1vcGFjaXR5OiAgICAgICAgICAgICAgICAgIC4yNSAhZGVmYXVsdDtcblxuJGxlZ2VuZC1tYXJnaW4tYm90dG9tOiAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbGVnZW5kLWZvbnQtc2l6ZTogICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kbGVnZW5kLWZvbnQtd2VpZ2h0OiAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kbWFyay1wYWRkaW5nOiAgICAgICAgICAgICAgICAuMmVtICFkZWZhdWx0O1xuXG4kZHQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ6ICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRsaXN0LWlubGluZS1wYWRkaW5nOiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbWFyay1iZzogICAgICAgICAgICAgICAgICAgICAjZmNmOGUzICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0eXBlLXZhcmlhYmxlc1xuXG5cbi8vIFRhYmxlc1xuLy9cbi8vIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRhYmxlLXZhcmlhYmxlc1xuJHRhYmxlLWNlbGwtcGFkZGluZy15OiAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXg6ICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmcteS1zbTogICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmcteC1zbTogICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJHRhYmxlLWNlbGwtdmVydGljYWwtYWxpZ246ICAgdG9wICFkZWZhdWx0O1xuXG4kdGFibGUtY29sb3I6ICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJHRhYmxlLWFjY2VudC1iZzogICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbiR0YWJsZS10aC1mb250LXdlaWdodDogICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiR0YWJsZS1zdHJpcGVkLWNvbG9yOiAgICAgICAgICR0YWJsZS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1zdHJpcGVkLWJnLWZhY3RvcjogICAgIC4wNSAhZGVmYXVsdDtcbiR0YWJsZS1zdHJpcGVkLWJnOiAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAkdGFibGUtc3RyaXBlZC1iZy1mYWN0b3IpICFkZWZhdWx0O1xuXG4kdGFibGUtYWN0aXZlLWNvbG9yOiAgICAgICAgICAkdGFibGUtY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtYWN0aXZlLWJnLWZhY3RvcjogICAgICAuMSAhZGVmYXVsdDtcbiR0YWJsZS1hY3RpdmUtYmc6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAkdGFibGUtYWN0aXZlLWJnLWZhY3RvcikgIWRlZmF1bHQ7XG5cbiR0YWJsZS1ob3Zlci1jb2xvcjogICAgICAgICAgICR0YWJsZS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1iZy1mYWN0b3I6ICAgICAgIC4wNzUgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItYmc6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgJHRhYmxlLWhvdmVyLWJnLWZhY3RvcikgIWRlZmF1bHQ7XG5cbiR0YWJsZS1ib3JkZXItZmFjdG9yOiAgICAgICAgIC4xICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci13aWR0aDogICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiR0YWJsZS1zdHJpcGVkLW9yZGVyOiAgICAgICAgIG9kZCAhZGVmYXVsdDtcblxuJHRhYmxlLWdyb3VwLXNlcGFyYXRvci1jb2xvcjogY3VycmVudENvbG9yICFkZWZhdWx0O1xuXG4kdGFibGUtY2FwdGlvbi1jb2xvcjogICAgICAgICAkdGV4dC1tdXRlZCAhZGVmYXVsdDtcblxuJHRhYmxlLWJnLXNjYWxlOiAgICAgICAgICAgICAgLTgwJSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGFibGUtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0YWJsZS1sb29wXG4kdGFibGUtdmFyaWFudHM6IChcbiAgXCJwcmltYXJ5XCI6ICAgIHNoaWZ0LWNvbG9yKCRwcmltYXJ5LCAkdGFibGUtYmctc2NhbGUpLFxuICBcInNlY29uZGFyeVwiOiAgc2hpZnQtY29sb3IoJHNlY29uZGFyeSwgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJzdWNjZXNzXCI6ICAgIHNoaWZ0LWNvbG9yKCRzdWNjZXNzLCAkdGFibGUtYmctc2NhbGUpLFxuICBcImluZm9cIjogICAgICAgc2hpZnQtY29sb3IoJGluZm8sICR0YWJsZS1iZy1zY2FsZSksXG4gIFwid2FybmluZ1wiOiAgICBzaGlmdC1jb2xvcigkd2FybmluZywgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJkYW5nZXJcIjogICAgIHNoaWZ0LWNvbG9yKCRkYW5nZXIsICR0YWJsZS1iZy1zY2FsZSksXG4gIFwibGlnaHRcIjogICAgICAkbGlnaHQsXG4gIFwiZGFya1wiOiAgICAgICAkZGFyayxcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRhYmxlLWxvb3BcblxuXG4vLyBCdXR0b25zICsgRm9ybXNcbi8vXG4vLyBTaGFyZWQgdmFyaWFibGVzIHRoYXQgYXJlIHJlYXNzaWduZWQgdG8gYCRpbnB1dC1gIGFuZCBgJGJ0bi1gIHNwZWNpZmljIHZhcmlhYmxlcy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGlucHV0LWJ0bi12YXJpYWJsZXNcbiRpbnB1dC1idG4tcGFkZGluZy15OiAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteDogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtZmFtaWx5OiAgICAgICBudWxsICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemU6ICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodDogICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tZm9jdXMtd2lkdGg6ICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1jb2xvci1vcGFjaXR5OiAuMjUgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWNvbG9yOiAgICAgICAgIHJnYmEoJGNvbXBvbmVudC1hY3RpdmUtYmcsICRpbnB1dC1idG4tZm9jdXMtY29sb3Itb3BhY2l0eSkgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJsdXI6ICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgIDAgMCAkaW5wdXQtYnRuLWZvY3VzLWJsdXIgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1zbTogICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1zbTogICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLXNtOiAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LWxnOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgMXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLWxnOiAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tYm9yZGVyLXdpZHRoOiAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGlucHV0LWJ0bi12YXJpYWJsZXNcblxuXG4vLyBCdXR0b25zXG4vL1xuLy8gRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQsIGFuZCBib3JkZXIgY29sb3IuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tdmFyaWFibGVzXG4kYnRuLXBhZGRpbmcteTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGJ0bi1mb250LWZhbWlseTogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplOiAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodDogICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRidG4td2hpdGUtc3BhY2U6ICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIFNldCB0byBgbm93cmFwYCB0byBwcmV2ZW50IHRleHQgd3JhcHBpbmdcblxuJGJ0bi1wYWRkaW5nLXktc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG5cbiRidG4tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGJ0bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMCByZ2JhKCR3aGl0ZSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRidG4tZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAuNjUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiAgICAgICBpbnNldCAwIDNweCA1cHggcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstY29sb3I6ICAgICAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbiRidG4tbGluay1ob3Zlci1jb2xvcjogICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXG4kYnRuLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG5cbiRidG4tdHJhbnNpdGlvbjogICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGJ0bi1ob3Zlci1iZy1zaGFkZS1hbW91bnQ6ICAgICAgIDE1JSAhZGVmYXVsdDtcbiRidG4taG92ZXItYmctdGludC1hbW91bnQ6ICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kYnRuLWhvdmVyLWJvcmRlci1zaGFkZS1hbW91bnQ6ICAgMjAlICFkZWZhdWx0O1xuJGJ0bi1ob3Zlci1ib3JkZXItdGludC1hbW91bnQ6ICAgIDEwJSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJnLXNoYWRlLWFtb3VudDogICAgICAyMCUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1iZy10aW50LWFtb3VudDogICAgICAgMjAlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm9yZGVyLXNoYWRlLWFtb3VudDogIDI1JSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJvcmRlci10aW50LWFtb3VudDogICAxMCUgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJ0bi12YXJpYWJsZXNcblxuXG4vLyBGb3Jtc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS10ZXh0LXZhcmlhYmxlc1xuJGZvcm0tdGV4dC1tYXJnaW4tdG9wOiAgICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRmb3JtLXRleHQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1mb250LXN0eWxlOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS10ZXh0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLXRleHQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAkdGV4dC1tdXRlZCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS10ZXh0LXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1sYWJlbC12YXJpYWJsZXNcbiRmb3JtLWxhYmVsLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtZm9udC1zdHlsZTogICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWxhYmVsLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1pbnB1dC12YXJpYWJsZXNcbiRpbnB1dC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRpbnB1dC1mb250LWZhbWlseTogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemUtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWJvcmRlci1jb2xvcjogICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ3JheS00MDAgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgJGJveC1zaGFkb3ctaW5zZXQgIWRlZmF1bHQ7XG5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWZvY3VzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICB0aW50LWNvbG9yKCRjb21wb25lbnQtYWN0aXZlLWJnLCA1MCUpICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRpbnB1dC1wbGFpbnRleHQtY29sb3I6ICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggKiAyICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWlubmVyOiAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgJGlucHV0LXBhZGRpbmcteSAqIDIpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1oYWxmOiAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAuNWVtLCAkaW5wdXQtcGFkZGluZy15KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjogICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjI1ZW0sICRpbnB1dC1wYWRkaW5nLXkgKiAuNSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteSAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LXNtICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcblxuJGlucHV0LXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLWNvbG9yLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAzcmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWlucHV0LXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1jaGVjay12YXJpYWJsZXNcbiRmb3JtLWNoZWNrLWlucHV0LXdpZHRoOiAgICAgICAgICAgICAgICAgIDFlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLW1pbi1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stcGFkZGluZy1zdGFydDogICAgICAgICAgICAgICAgJGZvcm0tY2hlY2staW5wdXQtd2lkdGggKyAuNWVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1sYWJlbC1jdXJzb3I6ICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtYWN0aXZlLWZpbHRlcjogICAgICAgICAgYnJpZ2h0bmVzcyg5MCUpICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1ib3JkZXI6ICAgICAgICAgICAgICAgICAxcHggc29saWQgcmdiYSgkYmxhY2ssIC4yNSkgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAuMjVlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLXJhZGlvLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDUwJSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJvcmRlcjogICAgICAgICAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtY29sb3I6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJvcmRlci1jb2xvcjogICAkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1pbWFnZTogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMjAgMjAnPjxwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzMnIGQ9J002IDEwbDMgM2w2LTYnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1yYWRpby1jaGVja2VkLWJnLWltYWdlOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPScyJyBmaWxsPScjeyRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWNvbG9yOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I6ICAgJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctaW1hZ2U6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDIwIDIwJz48cGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPSczJyBkPSdNNiAxMGg4Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgLjUgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1sYWJlbC1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgJGZvcm0tY2hlY2staW5wdXQtZGlzYWJsZWQtb3BhY2l0eSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWJ0bi1jaGVjay1kaXNhYmxlZC1vcGFjaXR5OiAgICAkYnRuLWRpc2FibGVkLW9wYWNpdHkgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4tZW5kOiAgICAxcmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWNoZWNrLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1zd2l0Y2gtdmFyaWFibGVzXG4kZm9ybS1zd2l0Y2gtY29sb3I6ICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4yNSkgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtd2lkdGg6ICAgICAgICAgICAgICAgMmVtICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQ6ICAgICAgICRmb3JtLXN3aXRjaC13aWR0aCArIC41ZW0gIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtYmctaW1hZ2U6ICAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skZm9ybS1zd2l0Y2gtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWJvcmRlci1yYWRpdXM6ICAgICAgICRmb3JtLXN3aXRjaC13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC10cmFuc2l0aW9uOiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uIC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXN3aXRjaC1mb2N1cy1jb2xvcjogICAgICAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWZvY3VzLWJnLWltYWdlOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGZvcm0tc3dpdGNoLWZvY3VzLWNvbG9yfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tc3dpdGNoLWNoZWNrZWQtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctaW1hZ2U6ICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGZvcm0tc3dpdGNoLWNoZWNrZWQtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctcG9zaXRpb246IHJpZ2h0IGNlbnRlciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1zd2l0Y2gtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBpbnB1dC1ncm91cC12YXJpYWJsZXNcbiRpbnB1dC1ncm91cC1hZGRvbi1wYWRkaW5nLXk6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLXBhZGRpbmcteDogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tZm9udC13ZWlnaHQ6ICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgaW5wdXQtZ3JvdXAtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXNlbGVjdC12YXJpYWJsZXNcbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXk6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtcGFkZGluZy14OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtZmFtaWx5OiAgICAgICAgICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZTogICAgICAgICAgICAgJGlucHV0LWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZzogICAgICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggKiAzICFkZWZhdWx0OyAvLyBFeHRyYSBwYWRkaW5nIGZvciBiYWNrZ3JvdW5kLWltYWdlXG4kZm9ybS1zZWxlY3QtZm9udC13ZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtY29sb3I6ICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYmc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZGlzYWJsZWQtY29sb3I6ICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJnOiAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJvcmRlci1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1iZy1wb3NpdGlvbjogICAgICAgICAgIHJpZ2h0ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggY2VudGVyICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJnLXNpemU6ICAgICAgICAgICAgICAgMTZweCAxMnB4ICFkZWZhdWx0OyAvLyBJbiBwaXhlbHMgYmVjYXVzZSBpbWFnZSBkaW1lbnNpb25zXG4kZm9ybS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yOiAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtaW5kaWNhdG9yOiAgICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNic+PHBhdGggZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMicgZD0nTTIgNWw2IDYgNi02Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLWVuZDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteCAqIDIuNSArICRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uOiAgICBjZW50ZXIgcmlnaHQgJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTogICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1ib3JkZXItd2lkdGg6ICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1czogICAgICAgJGlucHV0LWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm94LXNoYWRvdzogICAgICAgICAgJGJveC1zaGFkb3ctaW5zZXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I6ICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvY3VzLXdpZHRoOiAgICAgICAgICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93OiAgICAwIDAgMCAkZm9ybS1zZWxlY3QtZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtcGFkZGluZy14LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb250LXNpemUtc206ICAgICAgICAkaW5wdXQtZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJvcmRlci1yYWRpdXMtc206ICAgICRpbnB1dC1ib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtcGFkZGluZy15LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXgtbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZS1sZzogICAgICAgICRpbnB1dC1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cy1sZzogICAgJGlucHV0LWJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC10cmFuc2l0aW9uOiAgICAgICAgICAkaW5wdXQtdHJhbnNpdGlvbiAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1zZWxlY3QtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXJhbmdlLXZhcmlhYmxlc1xuJGZvcm0tcmFuZ2UtdHJhY2std2lkdGg6ICAgICAgICAgIDEwMCUgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1oZWlnaHQ6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1jdXJzb3I6ICAgICAgICAgcG9pbnRlciAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWJnOiAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzOiAgMXJlbSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWJveC1zaGFkb3c6ICAgICAkYm94LXNoYWRvdy1pbnNldCAhZGVmYXVsdDtcblxuJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGg6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGggIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1iZzogICAgICAgICAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYm94LXNoYWRvdzogICAgICAgICAgICAgIDAgLjFyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgMCAwIDAgMXB4ICRib2R5LWJnLCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGg6ICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7IC8vIEZvciBmb2N1cyBib3ggc2hhZG93IGlzc3VlIGluIEVkZ2VcbiRmb3JtLXJhbmdlLXRodW1iLWFjdGl2ZS1iZzogICAgICAgICAgICAgICB0aW50LWNvbG9yKCRjb21wb25lbnQtYWN0aXZlLWJnLCA3MCUpICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLXRyYW5zaXRpb246ICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tcmFuZ2UtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWZpbGUtdmFyaWFibGVzXG4kZm9ybS1maWxlLWJ1dHRvbi1jb2xvcjogICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmlsZS1idXR0b24tYmc6ICAgICAgICAgICAgICRpbnB1dC1ncm91cC1hZGRvbi1iZyAhZGVmYXVsdDtcbiRmb3JtLWZpbGUtYnV0dG9uLWhvdmVyLWJnOiAgICAgICBzaGFkZS1jb2xvcigkZm9ybS1maWxlLWJ1dHRvbi1iZywgNSUpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWZpbGUtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWZsb2F0aW5nLXZhcmlhYmxlc1xuJGZvcm0tZmxvYXRpbmctaGVpZ2h0OiAgICAgICAgICAgIGFkZCgzLjVyZW0sICRpbnB1dC1oZWlnaHQtYm9yZGVyKSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWxpbmUtaGVpZ2h0OiAgICAgICAxLjI1ICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctcGFkZGluZy14OiAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1wYWRkaW5nLXk6ICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctdDogICAxLjYyNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctYjogICAuNjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctbGFiZWwtb3BhY2l0eTogICAgIC42NSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWxhYmVsLXRyYW5zZm9ybTogICBzY2FsZSguODUpIHRyYW5zbGF0ZVkoLS41cmVtKSB0cmFuc2xhdGVYKC4xNXJlbSkgIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy10cmFuc2l0aW9uOiAgICAgICAgb3BhY2l0eSAuMXMgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSAuMXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tZmxvYXRpbmctdmFyaWFibGVzXG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1mZWVkYmFjay12YXJpYWJsZXNcbiRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A6ICAgICAgICAgICRmb3JtLXRleHQtbWFyZ2luLXRvcCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZTogICAgICAgICAgICRmb3JtLXRleHQtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stZm9udC1zdHlsZTogICAgICAgICAgJGZvcm0tdGV4dC1mb250LXN0eWxlICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3I6ICAgICAgICAgJHN1Y2Nlc3MgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yOiAgICAgICAkZGFuZ2VyICFkZWZhdWx0O1xuXG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yOiAgICAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQ6ICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yfScgZD0nTTIuMyA2LjczTC42IDQuNTNjLS40LTEuMDQuNDYtMS40IDEuMS0uOGwxLjEgMS40IDMuNC0zLjhjLjYtLjYzIDEuNi0uMjcgMS4yLjdsLTQgNC42Yy0uNDMuNS0uOC40LTEuMS4xeicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcjogICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQ6ICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxMiAxMicgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfSc+PGNpcmNsZSBjeD0nNicgY3k9JzYnIHI9JzQuNScvPjxwYXRoIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIGQ9J001LjggMy42aC40TDYgNi41eicvPjxjaXJjbGUgY3g9JzYnIGN5PSc4LjInIHI9Jy42JyBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nIHN0cm9rZT0nbm9uZScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1mZWVkYmFjay12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXNcbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiAoXG4gIFwidmFsaWRcIjogKFxuICAgIFwiY29sb3JcIjogJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IsXG4gICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWRcbiAgKSxcbiAgXCJpbnZhbGlkXCI6IChcbiAgICBcImNvbG9yXCI6ICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IsXG4gICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZFxuICApXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXZhbGlkYXRpb24tc3RhdGVzXG5cbi8vIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHppbmRleC1zdGFja1xuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtc3RpY2t5OiAgICAgICAgICAgICAgICAgICAgIDEwMjAgIWRlZmF1bHQ7XG4kemluZGV4LWZpeGVkOiAgICAgICAgICAgICAgICAgICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1vZmZjYW52YXMtYmFja2Ryb3A6ICAgICAgICAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtb2ZmY2FudmFzOiAgICAgICAgICAgICAgICAgIDEwNDUgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsLWJhY2tkcm9wOiAgICAgICAgICAgICAxMDUwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbDogICAgICAgICAgICAgICAgICAgICAgMTA1NSAhZGVmYXVsdDtcbiR6aW5kZXgtcG9wb3ZlcjogICAgICAgICAgICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG4kemluZGV4LXRvb2x0aXA6ICAgICAgICAgICAgICAgICAgICAxMDgwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB6aW5kZXgtc3RhY2tcblxuXG4vLyBOYXZzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXYtdmFyaWFibGVzXG4kbmF2LWxpbmstcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstZm9udC1zaXplOiAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJG5hdi1saW5rLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRuYXYtbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2LWxpbmstdHJhbnNpdGlvbjogICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAkZ3JheS0yMDAgJGdyYXktMjAwICRuYXYtdGFicy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I6ICRncmF5LTMwMCAkZ3JheS0zMDAgJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG5hdi12YXJpYWJsZXNcblxuXG4vLyBOYXZiYXJcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdmJhci12YXJpYWJsZXNcbiRuYXZiYXItcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy14OiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZTogICAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuLy8gQ29tcHV0ZSB0aGUgbmF2YmFyLWJyYW5kIHBhZGRpbmcteSBzbyB0aGUgbmF2YmFyLWJyYW5kIHdpbGwgaGF2ZSB0aGUgc2FtZSBoZWlnaHQgYXMgbmF2YmFyLXRleHQgYW5kIG5hdi1saW5rXG4kbmF2LWxpbmstaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSArICRuYXYtbGluay1wYWRkaW5nLXkgKiAyICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1oZWlnaHQ6ICAgICAgICAgICAgICAgJG5hdmJhci1icmFuZC1mb250LXNpemUgKiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtcGFkZGluZy15OiAgICAgICAgICAgICgkbmF2LWxpbmstaGVpZ2h0IC0gJG5hdmJhci1icmFuZC1oZWlnaHQpICogLjUgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLW1hcmdpbi1lbmQ6ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15OiAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplOiAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXM6ICAgICAgJGJ0bi1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWZvY3VzLXdpZHRoOiAgICAgICAgJGJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci10cmFuc2l0aW9uOiAgICAgICAgIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbmF2YmFyLXRoZW1lLXZhcmlhYmxlc1xuJG5hdmJhci1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC41NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstaG92ZXItY29sb3I6ICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjc1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I6ICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjogICAgICAgIHJnYmEoJHdoaXRlLCAuMjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZzogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWRhcmstY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjogIHJnYmEoJHdoaXRlLCAuMSkgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNTUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjogICAgICAgICAgcmdiYSgkYmxhY2ssIC43KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yOiAgICAgICAgIHJnYmEoJGJsYWNrLCAuOSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yOiAgICAgICByZ2JhKCRibGFjaywgLjMpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWxpZ2h0LWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yOiByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG5hdmJhci10aGVtZS12YXJpYWJsZXNcblxuXG4vLyBEcm9wZG93bnNcbi8vXG4vLyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBkcm9wZG93bi12YXJpYWJsZXNcbiRkcm9wZG93bi1taW4td2lkdGg6ICAgICAgICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXBhZGRpbmcteDogICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXNwYWNlcjogICAgICAgICAgICAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1jb2xvcjogICAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1czogICAgICBzdWJ0cmFjdCgkZHJvcGRvd24tYm9yZGVyLXJhZGl1cywgJGRyb3Bkb3duLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGl2aWRlci1iZzogICAgICAgICAgICAgICAkZHJvcGRvd24tYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXk6ICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgJGJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgIHNoYWRlLWNvbG9yKCRkcm9wZG93bi1saW5rLWNvbG9yLCAxMCUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteTogICAgICAgICAgICRzcGFjZXIgKiAuMjUgIWRlZmF1bHQ7XG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6ICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24taGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAkZHJvcGRvd24tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZHJvcGRvd24tdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBkcm9wZG93bi1kYXJrLXZhcmlhYmxlc1xuJGRyb3Bkb3duLWRhcmstY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstYm9yZGVyLWNvbG9yOiAgICAgICAgJGRyb3Bkb3duLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWRpdmlkZXItYmc6ICAgICAgICAgICRkcm9wZG93bi1kaXZpZGVyLWJnICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstYm94LXNoYWRvdzogICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstY29sb3I6ICAgICAgICAgICRkcm9wZG93bi1kYXJrLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1ob3Zlci1jb2xvcjogICAgJHdoaXRlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1ob3Zlci1iZzogICAgICAgcmdiYSgkd2hpdGUsIC4xNSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWFjdGl2ZS1jb2xvcjogICAkZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWFjdGl2ZS1iZzogICAgICAkZHJvcGRvd24tbGluay1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWRpc2FibGVkLWNvbG9yOiAkZ3JheS01MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1oZWFkZXItY29sb3I6ICAgICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGRyb3Bkb3duLWRhcmstdmFyaWFibGVzXG5cblxuLy8gUGFnaW5hdGlvblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcGFnaW5hdGlvbi12YXJpYWJsZXNcbiRwYWdpbmF0aW9uLXBhZGRpbmcteTogICAgICAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktc206ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtc206ICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZzogICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZzogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1czogICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1tYXJnaW4tc3RhcnQ6ICAgICAgICAgICAtJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb2N1cy1jb2xvcjogICAgICAgICAgICAkbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWZvY3VzLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWZvY3VzLW91dGxpbmU6ICAgICAgICAgIDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJHBhZ2luYXRpb24tYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLXRyYW5zaXRpb246ICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtc206ICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHBhZ2luYXRpb24tdmFyaWFibGVzXG5cblxuLy8gUGxhY2Vob2xkZXJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwbGFjZWhvbGRlcnNcbiRwbGFjZWhvbGRlci1vcGFjaXR5LW1heDogICAgICAgICAgIC41ICFkZWZhdWx0O1xuJHBsYWNlaG9sZGVyLW9wYWNpdHktbWluOiAgICAgICAgICAgLjIgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHBsYWNlaG9sZGVyc1xuXG4vLyBDYXJkc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2FyZC12YXJpYWJsZXNcbiRjYXJkLXNwYWNlci15OiAgICAgICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kY2FyZC1zcGFjZXIteDogICAgICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGNhcmQtdGl0bGUtc3BhY2VyLXk6ICAgICAgICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGNhcmQtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIHN1YnRyYWN0KCRjYXJkLWJvcmRlci1yYWRpdXMsICRjYXJkLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtcGFkZGluZy15OiAgICAgICAgICAgICAgICAkY2FyZC1zcGFjZXIteSAqIC41ICFkZWZhdWx0O1xuJGNhcmQtY2FwLXBhZGRpbmcteDogICAgICAgICAgICAgICAgJGNhcmQtc3BhY2VyLXggIWRlZmF1bHQ7XG4kY2FyZC1jYXAtYmc6ICAgICAgICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjAzKSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1jb2xvcjogICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6ICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kY2FyZC1ncm91cC1tYXJnaW46ICAgICAgICAgICAgICAgICAkZ3JpZC1ndXR0ZXItd2lkdGggKiAuNSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY2FyZC12YXJpYWJsZXNcblxuLy8gQWNjb3JkaW9uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBhY2NvcmRpb24tdmFyaWFibGVzXG4kYWNjb3JkaW9uLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGFjY29yZGlvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGFjY29yZGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGFjY29yZGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICBzdWJ0cmFjdCgkYWNjb3JkaW9uLWJvcmRlci1yYWRpdXMsICRhY2NvcmRpb24tYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAgICAgJGFjY29yZGlvbi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJvZHktcGFkZGluZy14OiAgICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1idXR0b24tcGFkZGluZy15OiAgICAgICAgICAgICAgJGFjY29yZGlvbi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICRhY2NvcmRpb24tY29sb3IgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1iZzogICAgICAgICAgICAgICAgICAgICAkYWNjb3JkaW9uLWJnICFkZWZhdWx0O1xuJGFjY29yZGlvbi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICAgJGJ0bi10cmFuc2l0aW9uLCBib3JkZXItcmFkaXVzIC4xNXMgZWFzZSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgIHRpbnQtY29sb3IoJGNvbXBvbmVudC1hY3RpdmUtYmcsIDkwJSkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICBzaGFkZS1jb2xvcigkcHJpbWFyeSwgMTAlKSAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1idXR0b24tZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRidG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1pY29uLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICRhY2NvcmRpb24tYnV0dG9uLWNvbG9yICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pY29uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pY29uLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgdHJhbnNmb3JtIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi10cmFuc2Zvcm06ICAgICAgICAgICAgICAgIHJvdGF0ZSgtMTgwZGVnKSAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1idXR0b24taWNvbjogICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skYWNjb3JkaW9uLWljb24tY29sb3J9Jz48cGF0aCBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGQ9J00xLjY0NiA0LjY0NmEuNS41IDAgMCAxIC43MDggMEw4IDEwLjI5M2w1LjY0Ni01LjY0N2EuNS41IDAgMCAxIC43MDguNzA4bC02IDZhLjUuNSAwIDAgMS0uNzA4IDBsLTYtNmEuNS41IDAgMCAxIDAtLjcwOHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtaWNvbjogIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPScjeyRhY2NvcmRpb24taWNvbi1hY3RpdmUtY29sb3J9Jz48cGF0aCBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGQ9J00xLjY0NiA0LjY0NmEuNS41IDAgMCAxIC43MDggMEw4IDEwLjI5M2w1LjY0Ni01LjY0N2EuNS41IDAgMCAxIC43MDguNzA4bC02IDZhLjUuNSAwIDAgMS0uNzA4IDBsLTYtNmEuNS41IDAgMCAxIDAtLjcwOHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGFjY29yZGlvbi12YXJpYWJsZXNcblxuLy8gVG9vbHRpcHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRvb2x0aXAtdmFyaWFibGVzXG4kdG9vbHRpcC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgJHNwYWNlciAqIC4yNSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiR0b29sdGlwLW1hcmdpbjogICAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG5cbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIC44cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkdG9vbHRpcC1iZyAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdG9vbHRpcC12YXJpYWJsZXNcblxuLy8gRm9ybSB0b29sdGlwcyBtdXN0IGNvbWUgYWZ0ZXIgcmVndWxhciB0b29sdGlwc1xuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRvb2x0aXAtZmVlZGJhY2stdmFyaWFibGVzXG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteTogICAgICR0b29sdGlwLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14OiAgICAgJHRvb2x0aXAtcGFkZGluZy14ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemU6ICAgICAkdG9vbHRpcC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0OiAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLW9wYWNpdHk6ICAgICAgICR0b29sdGlwLW9wYWNpdHkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXM6ICR0b29sdGlwLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRvb2x0aXAtZmVlZGJhY2stdmFyaWFibGVzXG5cblxuLy8gUG9wb3ZlcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBvcG92ZXItdmFyaWFibGVzXG4kcG9wb3Zlci1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJHBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgc3VidHJhY3QoJHBvcG92ZXItYm9yZGVyLXJhZGl1cywgJHBvcG92ZXItYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICRib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1oZWFkZXItYmc6ICAgICAgICAgICAgICAgICBzaGFkZS1jb2xvcigkcG9wb3Zlci1iZywgNiUpICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgJGhlYWRpbmdzLWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1ib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy15OiAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteDogICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgZmFkZS1pbigkcG9wb3Zlci1ib3JkZXItY29sb3IsIC4wNSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHBvcG92ZXItdmFyaWFibGVzXG5cblxuLy8gVG9hc3RzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0b2FzdC12YXJpYWJsZXNcbiR0b2FzdC1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAgIDM1MHB4ICFkZWZhdWx0O1xuJHRvYXN0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHRvYXN0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAuODc1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRvYXN0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgJGJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kdG9hc3Qtc3BhY2luZzogICAgICAgICAgICAgICAgICAgICAkY29udGFpbmVyLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuJHRvYXN0LWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgcmdiYSgkd2hpdGUsIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICByZ2JhKCRibGFjaywgLjA1KSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdG9hc3QtdmFyaWFibGVzXG5cblxuLy8gQmFkZ2VzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBiYWRnZS12YXJpYWJsZXNcbiRiYWRnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIC43NWVtICFkZWZhdWx0O1xuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMzVlbSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC42NWVtICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJhZGdlLXZhcmlhYmxlc1xuXG5cbi8vIE1vZGFsc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbW9kYWwtdmFyaWFibGVzXG4kbW9kYWwtaW5uZXItcGFkZGluZzogICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVuOiAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLWRpYWxvZy1tYXJnaW46ICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwOiAgICAgICAxLjc1cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJG1vZGFsLWNvbnRlbnQtY29sb3I6ICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJnOiAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGg6ICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzOiBzdWJ0cmFjdCgkbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzLCAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14czogICAgICAgJGJveC1zaGFkb3ctc20gIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwOiAgICAkYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAgICRtb2RhbC1pbm5lci1wYWRkaW5nICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgICAgJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAgICAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteSAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDsgLy8gS2VlcCB0aGlzIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eVxuXG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAgICAgICAzMDBweCAhZGVmYXVsdDtcbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgICAgICAgIDUwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgICAgICAgODAwcHggIWRlZmF1bHQ7XG4kbW9kYWwteGw6ICAgICAgICAgICAgICAgICAgICAgICAgICAxMTQwcHggIWRlZmF1bHQ7XG5cbiRtb2RhbC1mYWRlLXRyYW5zZm9ybTogICAgICAgICAgICAgIHRyYW5zbGF0ZSgwLCAtNTBweCkgIWRlZmF1bHQ7XG4kbW9kYWwtc2hvdy10cmFuc2Zvcm06ICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJG1vZGFsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIC4zcyBlYXNlLW91dCAhZGVmYXVsdDtcbiRtb2RhbC1zY2FsZS10cmFuc2Zvcm06ICAgICAgICAgICAgIHNjYWxlKDEuMDIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBtb2RhbC12YXJpYWJsZXNcblxuXG4vLyBBbGVydHNcbi8vXG4vLyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGFsZXJ0LXZhcmlhYmxlc1xuJGFsZXJ0LXBhZGRpbmcteTogICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGFsZXJ0LXBhZGRpbmcteDogICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGFsZXJ0LW1hcmdpbi1ib3R0b206ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kYWxlcnQtYmctc2NhbGU6ICAgICAgICAgICAgICAgIC04MCUgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXNjYWxlOiAgICAgICAgICAgIC03MCUgIWRlZmF1bHQ7XG4kYWxlcnQtY29sb3Itc2NhbGU6ICAgICAgICAgICAgIDQwJSAhZGVmYXVsdDtcbiRhbGVydC1kaXNtaXNzaWJsZS1wYWRkaW5nLXI6ICAgJGFsZXJ0LXBhZGRpbmcteCAqIDMgIWRlZmF1bHQ7IC8vIDN4IGNvdmVycyB3aWR0aCBvZiB4IHBsdXMgZGVmYXVsdCBwYWRkaW5nIG9uIGVpdGhlciBzaWRlXG4vLyBzY3NzLWRvY3MtZW5kIGFsZXJ0LXZhcmlhYmxlc1xuXG5cbi8vIFByb2dyZXNzIGJhcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHByb2dyZXNzLXZhcmlhYmxlc1xuJHByb2dyZXNzLWhlaWdodDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC43NSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHByb2dyZXNzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgJGJveC1zaGFkb3ctaW5zZXQgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAgICAgICAkcHJpbWFyeSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZzogICAgIDFzIGxpbmVhciBpbmZpbml0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbjogICAgICAgICAgIHdpZHRoIC42cyBlYXNlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwcm9ncmVzcy12YXJpYWJsZXNcblxuXG4vLyBMaXN0IGdyb3VwXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBsaXN0LWdyb3VwLXZhcmlhYmxlc1xuJGxpc3QtZ3JvdXAtY29sb3I6ICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteTogICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDogICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtaXRlbS1iZy1zY2FsZTogICAgICAgICAgLTgwJSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWl0ZW0tY29sb3Itc2NhbGU6ICAgICAgIDQwJSAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRsaXN0LWdyb3VwLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJGxpc3QtZ3JvdXAtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjogICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjogICAgICRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjogICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnOiAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGxpc3QtZ3JvdXAtdmFyaWFibGVzXG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGh1bWJuYWlsLXZhcmlhYmxlc1xuJHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRodW1ibmFpbC1iZzogICAgICAgICAgICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci13aWR0aDogICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAkYm94LXNoYWRvdy1zbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGh1bWJuYWlsLXZhcmlhYmxlc1xuXG5cbi8vIEZpZ3VyZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZpZ3VyZS12YXJpYWJsZXNcbiRmaWd1cmUtY2FwdGlvbi1mb250LXNpemU6ICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZmlndXJlLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZpZ3VyZS12YXJpYWJsZXNcblxuXG4vLyBCcmVhZGNydW1ic1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnJlYWRjcnVtYi12YXJpYWJsZXNcbiRicmVhZGNydW1iLWZvbnQtc2l6ZTogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy14OiAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWl0ZW0tcGFkZGluZy14OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTogICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyOiAgICAgICAgICAgICAgICBxdW90ZShcIi9cIikgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLWZsaXBwZWQ6ICAgICAgICAkYnJlYWRjcnVtYi1kaXZpZGVyICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYnJlYWRjcnVtYi12YXJpYWJsZXNcblxuLy8gQ2Fyb3VzZWxcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcm91c2VsLXZhcmlhYmxlc1xuJGNhcm91c2VsLWNvbnRyb2wtY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1ob3Zlci1vcGFjaXR5OiAgICAgLjkgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uOiAgICAgICAgb3BhY2l0eSAuMTVzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg6ICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0OiAxMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3Itb3BhY2l0eTogICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1vcGFjaXR5OiAgMSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbjogICAgICBvcGFjaXR5IC42cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY2FwdGlvbi13aWR0aDogICAgICAgICAgICAgNzAlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLXBhZGRpbmcteTogICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tc3BhY2VyOiAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg6ICAgICAgICAycmVtICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9Jz48cGF0aCBkPSdNMTEuMzU0IDEuNjQ2YS41LjUgMCAwIDEgMCAuNzA4TDUuNzA3IDhsNS42NDcgNS42NDZhLjUuNSAwIDAgMS0uNzA4LjcwOGwtNi02YS41LjUgMCAwIDEgMC0uNzA4bDYtNmEuNS41IDAgMCAxIC43MDggMHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9Jz48cGF0aCBkPSdNNC42NDYgMS42NDZhLjUuNSAwIDAgMSAuNzA4IDBsNiA2YS41LjUgMCAwIDEgMCAuNzA4bC02IDZhLjUuNSAwIDAgMS0uNzA4LS43MDhMMTAuMjkzIDggNC42NDYgMi4zNTRhLjUuNSAwIDAgMSAwLS43MDh6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbjogICAgICAgLjZzICFkZWZhdWx0O1xuJGNhcm91c2VsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAkY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbiBlYXNlLWluLW91dCAhZGVmYXVsdDsgLy8gRGVmaW5lIHRyYW5zZm9ybSB0cmFuc2l0aW9uIGZpcnN0IGlmIHVzaW5nIG11bHRpcGxlIHRyYW5zaXRpb25zIChlLmcuLCBgdHJhbnNmb3JtIDJzIGVhc2UsIG9wYWNpdHkgLjVzIGVhc2Utb3V0YClcblxuJGNhcm91c2VsLWRhcmstaW5kaWNhdG9yLWFjdGl2ZS1iZzogICRibGFjayAhZGVmYXVsdDtcbiRjYXJvdXNlbC1kYXJrLWNhcHRpb24tY29sb3I6ICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtZGFyay1jb250cm9sLWljb24tZmlsdGVyOiAgaW52ZXJ0KDEpIGdyYXlzY2FsZSgxMDApICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjYXJvdXNlbC12YXJpYWJsZXNcblxuXG4vLyBTcGlubmVyc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc3Bpbm5lci12YXJpYWJsZXNcbiRzcGlubmVyLXdpZHRoOiAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodDogICAgICAgICAgJHNwaW5uZXItd2lkdGggIWRlZmF1bHQ7XG4kc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjogIC0uMTI1ZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGg6ICAgIC4yNWVtICFkZWZhdWx0O1xuJHNwaW5uZXItYW5pbWF0aW9uLXNwZWVkOiAuNzVzICFkZWZhdWx0O1xuXG4kc3Bpbm5lci13aWR0aC1zbTogICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1oZWlnaHQtc206ICAgICAgICRzcGlubmVyLXdpZHRoLXNtICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoLXNtOiAuMmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBzcGlubmVyLXZhcmlhYmxlc1xuXG5cbi8vIENsb3NlXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjbG9zZS12YXJpYWJsZXNcbiRidG4tY2xvc2Utd2lkdGg6ICAgICAgICAgICAgMWVtICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1oZWlnaHQ6ICAgICAgICAgICAkYnRuLWNsb3NlLXdpZHRoICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1wYWRkaW5nLXg6ICAgICAgICAuMjVlbSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtcGFkZGluZy15OiAgICAgICAgJGJ0bi1jbG9zZS1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWNvbG9yOiAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRidG4tY2xvc2UtYmc6ICAgICAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGJ0bi1jbG9zZS1jb2xvcn0nPjxwYXRoIGQ9J00uMjkzLjI5M2ExIDEgMCAwMTEuNDE0IDBMOCA2LjU4NiAxNC4yOTMuMjkzYTEgMSAwIDExMS40MTQgMS40MTRMOS40MTQgOGw2LjI5MyA2LjI5M2ExIDEgMCAwMS0xLjQxNCAxLjQxNEw4IDkuNDE0bC02LjI5MyA2LjI5M2ExIDEgMCAwMS0xLjQxNC0xLjQxNEw2LjU4NiA4IC4yOTMgMS43MDdhMSAxIDAgMDEwLTEuNDE0eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtZm9jdXMtc2hhZG93OiAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1vcGFjaXR5OiAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtaG92ZXItb3BhY2l0eTogICAgLjc1ICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1mb2N1cy1vcGFjaXR5OiAgICAxICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1kaXNhYmxlZC1vcGFjaXR5OiAuMjUgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLXdoaXRlLWZpbHRlcjogICAgIGludmVydCgxKSBncmF5c2NhbGUoMTAwJSkgYnJpZ2h0bmVzcygyMDAlKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY2xvc2UtdmFyaWFibGVzXG5cblxuLy8gT2ZmY2FudmFzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBvZmZjYW52YXMtdmFyaWFibGVzXG4kb2ZmY2FudmFzLXBhZGRpbmcteTogICAgICAgICAgICAgICAkbW9kYWwtaW5uZXItcGFkZGluZyAhZGVmYXVsdDtcbiRvZmZjYW52YXMtcGFkZGluZy14OiAgICAgICAgICAgICAgICRtb2RhbC1pbm5lci1wYWRkaW5nICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1ob3Jpem9udGFsLXdpZHRoOiAgICAgICAgNDAwcHggIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLXZlcnRpY2FsLWhlaWdodDogICAgICAgICAzMHZoICFkZWZhdWx0O1xuJG9mZmNhbnZhcy10cmFuc2l0aW9uLWR1cmF0aW9uOiAgICAgLjNzICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG9mZmNhbnZhcy10aXRsZS1saW5lLWhlaWdodDogICAgICAgJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1iZy1jb2xvcjogICAgICAgICAgICAgICAgJG1vZGFsLWNvbnRlbnQtYmcgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkbW9kYWwtY29udGVudC1jb2xvciAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYm94LXNoYWRvdzogICAgICAgICAgICAgICRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJhY2tkcm9wLWJnOiAgICAgICAgICAgICAkbW9kYWwtYmFja2Ryb3AtYmcgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgICAkbW9kYWwtYmFja2Ryb3Atb3BhY2l0eSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgb2ZmY2FudmFzLXZhcmlhYmxlc1xuXG4vLyBDb2RlXG5cbiRjb2RlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkcGluayAhZGVmYXVsdDtcblxuJGtiZC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XG4ka2JkLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbiRrYmQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICRjb2RlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcblxuJHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuLy8gU2luZ2xlIHNpZGUgYm9yZGVyLXJhZGl1c1xuXG4vLyBIZWxwZXIgZnVuY3Rpb24gdG8gcmVwbGFjZSBuZWdhdGl2ZSB2YWx1ZXMgd2l0aCAwXG5AZnVuY3Rpb24gdmFsaWQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgJHJldHVybjogKCk7XG4gIEBlYWNoICR2YWx1ZSBpbiAkcmFkaXVzIHtcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09IG51bWJlciB7XG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgbWF4KCR2YWx1ZSwgMCkpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJHJldHVybjogYXBwZW5kKCRyZXR1cm4sICR2YWx1ZSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJHJldHVybjtcbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJvcmRlci1yYWRpdXMtbWl4aW5zXG5AbWl4aW4gYm9yZGVyLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cywgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM6IGZhbHNlKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxuICBAZWxzZSBpZiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cyAhPSBmYWxzZSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItZW5kLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItc3RhcnQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3Atc3RhcnQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1lbmQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tZW5kLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXN0YXJ0LXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgYm9yZGVyLXJhZGl1cy1taXhpbnNcbiIsIi8vXG4vLyBIZWFkaW5nc1xuLy9cbi5oMSB7XG4gIEBleHRlbmQgaDE7XG59XG5cbi5oMiB7XG4gIEBleHRlbmQgaDI7XG59XG5cbi5oMyB7XG4gIEBleHRlbmQgaDM7XG59XG5cbi5oNCB7XG4gIEBleHRlbmQgaDQ7XG59XG5cbi5oNSB7XG4gIEBleHRlbmQgaDU7XG59XG5cbi5oNiB7XG4gIEBleHRlbmQgaDY7XG59XG5cblxuLmxlYWQge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGxlYWQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRsZWFkLWZvbnQtd2VpZ2h0O1xufVxuXG4vLyBUeXBlIGRpc3BsYXkgY2xhc3Nlc1xuQGVhY2ggJGRpc3BsYXksICRmb250LXNpemUgaW4gJGRpc3BsYXktZm9udC1zaXplcyB7XG4gIC5kaXNwbGF5LSN7JGRpc3BsYXl9IHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZSk7XG4gICAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5LWZvbnQtd2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbiAgfVxufVxuXG4vL1xuLy8gRW1waGFzaXNcbi8vXG4uc21hbGwge1xuICBAZXh0ZW5kIHNtYWxsO1xufVxuXG4ubWFyayB7XG4gIEBleHRlbmQgbWFyaztcbn1cblxuLy9cbi8vIExpc3RzXG4vL1xuXG4ubGlzdC11bnN0eWxlZCB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbn1cblxuLy8gSW5saW5lIHR1cm5zIGxpc3QgaXRlbXMgaW50byBpbmxpbmUtYmxvY2tcbi5saXN0LWlubGluZSB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbn1cbi5saXN0LWlubGluZS1pdGVtIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkbGlzdC1pbmxpbmUtcGFkZGluZztcbiAgfVxufVxuXG5cbi8vXG4vLyBNaXNjXG4vL1xuXG4vLyBCdWlsZHMgb24gYGFiYnJgXG4uaW5pdGlhbGlzbSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5pdGlhbGlzbS1mb250LXNpemUpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4vLyBCbG9ja3F1b3Rlc1xuLmJsb2NrcXVvdGUge1xuICBtYXJnaW4tYm90dG9tOiAkYmxvY2txdW90ZS1tYXJnaW4teTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLWZvbnQtc2l6ZSk7XG5cbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4uYmxvY2txdW90ZS1mb290ZXIge1xuICBtYXJnaW4tdG9wOiAtJGJsb2NrcXVvdGUtbWFyZ2luLXk7XG4gIG1hcmdpbi1ib3R0b206ICRibG9ja3F1b3RlLW1hcmdpbi15O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJsb2NrcXVvdGUtZm9vdGVyLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkYmxvY2txdW90ZS1mb290ZXItY29sb3I7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcMjAxNFxcMDBBMFwiOyAvLyBlbSBkYXNoLCBuYnNwXG4gIH1cbn1cbiIsIi8vIExpc3RzXG5cbi8vIFVuc3R5bGVkIGtlZXBzIGxpc3QgaXRlbXMgYmxvY2sgbGV2ZWwsIGp1c3QgcmVtb3ZlcyBkZWZhdWx0IGJyb3dzZXIgcGFkZGluZyBhbmQgbGlzdC1zdHlsZVxuQG1peGluIGxpc3QtdW5zdHlsZWQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4iLCIvLyBSZXNwb25zaXZlIGltYWdlcyAoZW5zdXJlIGltYWdlcyBkb24ndCBzY2FsZSBiZXlvbmQgdGhlaXIgcGFyZW50cylcbi8vXG4vLyBUaGlzIGlzIHB1cnBvc2VmdWxseSBvcHQtaW4gdmlhIGFuIGV4cGxpY2l0IGNsYXNzIHJhdGhlciB0aGFuIGJlaW5nIHRoZSBkZWZhdWx0IGZvciBhbGwgYDxpbWc+YHMuXG4vLyBXZSBwcmV2aW91c2x5IHRyaWVkIHRoZSBcImltYWdlcyBhcmUgcmVzcG9uc2l2ZSBieSBkZWZhdWx0XCIgYXBwcm9hY2ggaW4gQm9vdHN0cmFwIHYyLFxuLy8gYW5kIGFiYW5kb25lZCBpdCBpbiBCb290c3RyYXAgdjMgYmVjYXVzZSBpdCBicmVha3MgbG90cyBvZiB0aGlyZC1wYXJ0eSB3aWRnZXRzIChpbmNsdWRpbmcgR29vZ2xlIE1hcHMpXG4vLyB3aGljaCB3ZXJlbid0IGV4cGVjdGluZyB0aGUgaW1hZ2VzIHdpdGhpbiB0aGVtc2VsdmVzIHRvIGJlIGludm9sdW50YXJpbHkgcmVzaXplZC5cbi8vIFNlZSBhbHNvIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTgxNzhcbi5pbWctZmx1aWQge1xuICBAaW5jbHVkZSBpbWctZmx1aWQoKTtcbn1cblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG4uaW1nLXRodW1ibmFpbCB7XG4gIHBhZGRpbmc6ICR0aHVtYm5haWwtcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1ibmFpbC1iZztcbiAgYm9yZGVyOiAkdGh1bWJuYWlsLWJvcmRlci13aWR0aCBzb2xpZCAkdGh1bWJuYWlsLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdGh1bWJuYWlsLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCR0aHVtYm5haWwtYm94LXNoYWRvdyk7XG5cbiAgLy8gS2VlcCB0aGVtIGF0IG1vc3QgMTAwJSB3aWRlXG4gIEBpbmNsdWRlIGltZy1mbHVpZCgpO1xufVxuXG4vL1xuLy8gRmlndXJlc1xuLy9cblxuLmZpZ3VyZSB7XG4gIC8vIEVuc3VyZXMgdGhlIGNhcHRpb24ncyB0ZXh0IGFsaWducyB3aXRoIHRoZSBpbWFnZS5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uZmlndXJlLWltZyB7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXIgKiAuNTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5maWd1cmUtY2FwdGlvbiB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZmlndXJlLWNhcHRpb24tZm9udC1zaXplKTtcbiAgY29sb3I6ICRmaWd1cmUtY2FwdGlvbi1jb2xvcjtcbn1cbiIsIi8vIEltYWdlIE1peGluc1xuLy8gLSBSZXNwb25zaXZlIGltYWdlXG4vLyAtIFJldGluYSBpbWFnZVxuXG5cbi8vIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vXG4vLyBLZWVwIGltYWdlcyBmcm9tIHNjYWxpbmcgYmV5b25kIHRoZSB3aWR0aCBvZiB0aGVpciBwYXJlbnRzLlxuXG5AbWl4aW4gaW1nLWZsdWlkIHtcbiAgLy8gUGFydCAxOiBTZXQgYSBtYXhpbXVtIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnRcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAvLyBQYXJ0IDI6IE92ZXJyaWRlIHRoZSBoZWlnaHQgdG8gYXV0bywgb3RoZXJ3aXNlIGltYWdlcyB3aWxsIGJlIHN0cmV0Y2hlZFxuICAvLyB3aGVuIHNldHRpbmcgYSB3aWR0aCBhbmQgaGVpZ2h0IGF0dHJpYnV0ZSBvbiB0aGUgaW1nIGVsZW1lbnQuXG4gIGhlaWdodDogYXV0bztcbn1cbiIsIi8vIENvbnRhaW5lciB3aWR0aHNcbi8vXG4vLyBTZXQgdGhlIGNvbnRhaW5lciB3aWR0aCwgYW5kIG92ZXJyaWRlIGl0IGZvciBmaXhlZCBuYXZiYXJzIGluIG1lZGlhIHF1ZXJpZXMuXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC8vIFNpbmdsZSBjb250YWluZXIgY2xhc3Mgd2l0aCBicmVha3BvaW50IG1heC13aWR0aHNcbiAgLmNvbnRhaW5lcixcbiAgLy8gMTAwJSB3aWRlIGNvbnRhaW5lciBhdCBhbGwgYnJlYWtwb2ludHNcbiAgLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgQGluY2x1ZGUgbWFrZS1jb250YWluZXIoKTtcbiAgfVxuXG4gIC8vIFJlc3BvbnNpdmUgY29udGFpbmVycyB0aGF0IGFyZSAxMDAlIHdpZGUgdW50aWwgYSBicmVha3BvaW50XG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xuICAgIC5jb250YWluZXItI3skYnJlYWtwb2ludH0ge1xuICAgICAgQGV4dGVuZCAuY29udGFpbmVyLWZsdWlkO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgICAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH0ge1xuICAgICAgICBtYXgtd2lkdGg6ICRjb250YWluZXItbWF4LXdpZHRoO1xuICAgICAgfVxuXG4gICAgICAvLyBFeHRlbmQgZWFjaCBicmVha3BvaW50IHdoaWNoIGlzIHNtYWxsZXIgb3IgZXF1YWwgdG8gdGhlIGN1cnJlbnQgYnJlYWtwb2ludFxuICAgICAgJGV4dGVuZC1icmVha3BvaW50OiB0cnVlO1xuXG4gICAgICBAZWFjaCAkbmFtZSwgJHdpZHRoIGluICRncmlkLWJyZWFrcG9pbnRzIHtcbiAgICAgICAgQGlmICgkZXh0ZW5kLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRuYW1lLCAkZ3JpZC1icmVha3BvaW50cyl9IHtcbiAgICAgICAgICAgIEBleHRlbmQgJXJlc3BvbnNpdmUtY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIE9uY2UgdGhlIGN1cnJlbnQgYnJlYWtwb2ludCBpcyByZWFjaGVkLCBzdG9wIGV4dGVuZGluZ1xuICAgICAgICAgIEBpZiAoJGJyZWFrcG9pbnQgPT0gJG5hbWUpIHtcbiAgICAgICAgICAgICRleHRlbmQtYnJlYWtwb2ludDogZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBDb250YWluZXIgbWl4aW5zXG5cbkBtaXhpbiBtYWtlLWNvbnRhaW5lcigkZ3V0dGVyOiAkY29udGFpbmVyLXBhZGRpbmcteCkge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci14LCAjeyRndXR0ZXJ9KTtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXgsICN7JGd1dHRlcn0pO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuIiwiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cbi8vXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XG4vL1xuLy8gICAgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KVxuLy9cbi8vIFRoZSBtYXAgZGVmaW5lZCBpbiB0aGUgYCRncmlkLWJyZWFrcG9pbnRzYCBnbG9iYWwgdmFyaWFibGUgaXMgdXNlZCBhcyB0aGUgYCRicmVha3BvaW50c2AgYXJndW1lbnQgYnkgZGVmYXVsdC5cblxuLy8gTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKSkge1xuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcbiAgQGlmIG5vdCAkbiB7XG4gICAgQGVycm9yIFwiYnJlYWtwb2ludCBgI3skbmFtZX1gIG5vdCBmb3VuZCBpbiBgI3skYnJlYWtwb2ludHN9YFwiO1xuICB9XG4gIEByZXR1cm4gaWYoJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xufVxuXG4vLyBNaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBzbWFsbGVzdCAoZmlyc3QpIGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1taW4oc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA1NzZweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1pbiAhPSAwLCAkbWluLCBudWxsKTtcbn1cblxuLy8gTWF4aW11bSBicmVha3BvaW50IHdpZHRoLlxuLy8gVGhlIG1heGltdW0gdmFsdWUgaXMgcmVkdWNlZCBieSAwLjAycHggdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mXG4vLyBgbWluLWAgYW5kIGBtYXgtYCBwcmVmaXhlcyBhbmQgdmlld3BvcnRzIHdpdGggZnJhY3Rpb25hbCB3aWR0aHMuXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL21lZGlhcXVlcmllcy00LyNtcS1taW4tbWF4XG4vLyBVc2VzIDAuMDJweCByYXRoZXIgdGhhbiAwLjAxcHggdG8gd29yayBhcm91bmQgYSBjdXJyZW50IHJvdW5kaW5nIGJ1ZyBpbiBTYWZhcmkuXG4vLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODI2MVxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWF4KG1kLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNzY3Ljk4cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtYXggYW5kICRtYXggPiAwLCAkbWF4IC0gLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiAgYnJlYWtwb2ludC1tYXgoJG5leHQpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmV4dCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFJvd1xuLy9cbi8vIFJvd3MgY29udGFpbiB5b3VyIGNvbHVtbnMuXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC5yb3cge1xuICAgIEBpbmNsdWRlIG1ha2Utcm93KCk7XG5cbiAgICA+ICoge1xuICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtcmVhZHkoKTtcbiAgICB9XG4gIH1cbn1cblxuQGlmICRlbmFibGUtY3NzZ3JpZCB7XG4gIC5ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1yb3dzLCAxKSwgMWZyKTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCh2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Y29sdW1ucywgI3skZ3JpZC1jb2x1bW5zfSksIDFmcik7XG4gICAgZ2FwOiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z2FwLCAjeyRncmlkLWd1dHRlci13aWR0aH0pO1xuXG4gICAgQGluY2x1ZGUgbWFrZS1jc3NncmlkKCk7XG4gIH1cbn1cblxuXG4vLyBDb2x1bW5zXG4vL1xuLy8gQ29tbW9uIHN0eWxlcyBmb3Igc21hbGwgYW5kIGxhcmdlIGdyaWQgY29sdW1uc1xuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICBAaW5jbHVkZSBtYWtlLWdyaWQtY29sdW1ucygpO1xufVxuIiwiLy8gR3JpZCBzeXN0ZW1cbi8vXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXG5cbkBtaXhpbiBtYWtlLXJvdygkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXg6ICN7JGd1dHRlcn07XG4gIC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci15OiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIC8vIFRPRE86IFJldmlzaXQgY2FsYyBvcmRlciBhZnRlciBodHRwczovL2dpdGh1Yi5jb20vcmVhY3QtYm9vdHN0cmFwL3JlYWN0LWJvb3RzdHJhcC9pc3N1ZXMvNjAzOSBpcyBmaXhlZFxuICBtYXJnaW4tdG9wOiBjYWxjKC0xICogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci15KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1yaWdodDogY2FsYygtLjUgKiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoLS41ICogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci14KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1yZWFkeSgkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgLy8gQWRkIGJveCBzaXppbmcgaWYgb25seSB0aGUgZ3JpZCBpcyBsb2FkZWRcbiAgYm94LXNpemluZzogaWYodmFyaWFibGUtZXhpc3RzKGluY2x1ZGUtY29sdW1uLWJveC1zaXppbmcpIGFuZCAkaW5jbHVkZS1jb2x1bW4tYm94LXNpemluZywgYm9yZGVyLWJveCwgbnVsbCk7XG4gIC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGJlY29taW5nIHRvbyBuYXJyb3cgd2hlbiBhdCBzbWFsbGVyIGdyaWQgdGllcnMgYnlcbiAgLy8gYWx3YXlzIHNldHRpbmcgYHdpZHRoOiAxMDAlO2AuIFRoaXMgd29ya3MgYmVjYXVzZSB3ZSBzZXQgdGhlIHdpZHRoXG4gIC8vIGxhdGVyIG9uIHRvIG92ZXJyaWRlIHRoaXMgaW5pdGlhbCB3aWR0aC5cbiAgZmxleC1zaHJpbms6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIFByZXZlbnQgYC5jb2wtYXV0b2AsIGAuY29sYCAoJiByZXNwb25zaXZlIHZhcmlhbnRzKSBmcm9tIGJyZWFraW5nIG91dCB0aGUgZ3JpZFxuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ndXR0ZXIteCkgKiAuNSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXgpICogLjUpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tdG9wOiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXkpO1xufVxuXG5AbWl4aW4gbWFrZS1jb2woJHNpemU6IGZhbHNlLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICBAaWYgJHNpemUge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKGRpdmlkZSgkc2l6ZSwgJGNvbHVtbnMpKTtcblxuICB9IEBlbHNlIHtcbiAgICBmbGV4OiAxIDEgMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuQG1peGluIG1ha2UtY29sLWF1dG8oKSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogYXV0bztcbn1cblxuQG1peGluIG1ha2UtY29sLW9mZnNldCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgJG51bTogZGl2aWRlKCRzaXplLCAkY29sdW1ucyk7XG4gIG1hcmdpbi1sZWZ0OiBpZigkbnVtID09IDAsIDAsIHBlcmNlbnRhZ2UoJG51bSkpO1xufVxuXG4vLyBSb3cgY29sdW1uc1xuLy9cbi8vIFNwZWNpZnkgb24gYSBwYXJlbnQgZWxlbWVudChlLmcuLCAucm93KSB0byBmb3JjZSBpbW1lZGlhdGUgY2hpbGRyZW4gaW50byBOTlxuLy8gbnVtYmVyb2YgY29sdW1ucy4gU3VwcG9ydHMgd3JhcHBpbmcgdG8gbmV3IGxpbmVzLCBidXQgZG9lcyBub3QgZG8gYSBNYXNvbnJ5XG4vLyBzdHlsZSBncmlkLlxuQG1peGluIHJvdy1jb2xzKCRjb3VudCkge1xuICA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBkaXZpZGUoMTAwJSwgJGNvdW50KTtcbiAgfVxufVxuXG4vLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXG4vL1xuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxuXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIC8vIFByb3ZpZGUgYmFzaWMgYC5jb2wte2JwfWAgY2xhc3NlcyBmb3IgZXF1YWwtd2lkdGggZmxleGJveCBjb2x1bW5zXG4gICAgICAuY29sI3skaW5maXh9IHtcbiAgICAgICAgZmxleDogMSAwIDAlOyAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIH1cblxuICAgICAgLnJvdy1jb2xzI3skaW5maXh9LWF1dG8gPiAqIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGdyaWQtcm93LWNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1yb3ctY29sdW1ucyB7XG4gICAgICAgICAgLnJvdy1jb2xzI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJvdy1jb2xzKCRpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZVxuICAgICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIiBhbmQgJGkgPT0gMCkgeyAvLyBBdm9pZCBlbWl0dGluZyB1c2VsZXNzIC5vZmZzZXQtMFxuICAgICAgICAgICAgLm9mZnNldCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLW9mZnNldCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBHdXR0ZXJzXG4gICAgICAvL1xuICAgICAgLy8gTWFrZSB1c2Ugb2YgYC5nLSpgLCBgLmd4LSpgIG9yIGAuZ3ktKmAgdXRpbGl0aWVzIHRvIGNoYW5nZSBzcGFjaW5nIGJldHdlZW4gdGhlIGNvbHVtbnMuXG4gICAgICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJGd1dHRlcnMge1xuICAgICAgICAuZyN7JGluZml4fS0jeyRrZXl9LFxuICAgICAgICAuZ3gjeyRpbmZpeH0tI3ska2V5fSB7XG4gICAgICAgICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXg6ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5nI3skaW5maXh9LSN7JGtleX0sXG4gICAgICAgIC5neSN7JGluZml4fS0jeyRrZXl9IHtcbiAgICAgICAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH1ndXR0ZXIteTogI3skdmFsdWV9O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYWtlLWNzc2dyaWQoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmctY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiAkaTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTdGFydCB3aXRoIGAxYCBiZWNhdXNlIGAwYCBpcyBhbmQgaW52YWxpZCB2YWx1ZS5cbiAgICAgICAgLy8gRW5kcyB3aXRoIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZS5cbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAoJGNvbHVtbnMgLSAxKSB7XG4gICAgICAgICAgLmctc3RhcnQjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW4tc3RhcnQ6ICRpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2ljIEJvb3RzdHJhcCB0YWJsZVxuLy9cblxuLnRhYmxlIHtcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYmc6ICN7JHRhYmxlLWJnfTtcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYWNjZW50LWJnOiAjeyR0YWJsZS1hY2NlbnQtYmd9O1xuICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yOiAjeyR0YWJsZS1zdHJpcGVkLWNvbG9yfTtcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtc3RyaXBlZC1iZzogI3skdGFibGUtc3RyaXBlZC1iZ307XG4gIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWFjdGl2ZS1jb2xvcjogI3skdGFibGUtYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYWN0aXZlLWJnOiAjeyR0YWJsZS1hY3RpdmUtYmd9O1xuICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1ob3Zlci1jb2xvcjogI3skdGFibGUtaG92ZXItY29sb3J9O1xuICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1ob3Zlci1iZzogI3skdGFibGUtaG92ZXItYmd9O1xuXG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuICBjb2xvcjogJHRhYmxlLWNvbG9yO1xuICB2ZXJ0aWNhbC1hbGlnbjogJHRhYmxlLWNlbGwtdmVydGljYWwtYWxpZ247XG4gIGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcblxuICAvLyBUYXJnZXQgdGggJiB0ZFxuICAvLyBXZSBuZWVkIHRoZSBjaGlsZCBjb21iaW5hdG9yIHRvIHByZXZlbnQgc3R5bGVzIGxlYWtpbmcgdG8gbmVzdGVkIHRhYmxlcyB3aGljaCBkb2Vzbid0IGhhdmUgYSBgLnRhYmxlYCBjbGFzcy5cbiAgLy8gV2UgdXNlIHRoZSB1bml2ZXJzYWwgc2VsZWN0b3JzIGhlcmUgdG8gc2ltcGxpZnkgdGhlIHNlbGVjdG9yIChlbHNlIHdlIHdvdWxkIG5lZWQgNiBkaWZmZXJlbnQgc2VsZWN0b3JzKS5cbiAgLy8gQW5vdGhlciBhZHZhbnRhZ2UgaXMgdGhhdCB0aGlzIGdlbmVyYXRlcyBsZXNzIGNvZGUgYW5kIG1ha2VzIHRoZSBzZWxlY3RvciBsZXNzIHNwZWNpZmljIG1ha2luZyBpdCBlYXNpZXIgdG8gb3ZlcnJpZGUuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtdW5pdmVyc2FsXG4gID4gOm5vdChjYXB0aW9uKSA+ICogPiAqIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nLXkgJHRhYmxlLWNlbGwtcGFkZGluZy14O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1iZyk7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogJHRhYmxlLWJvcmRlci13aWR0aDtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA5OTk5cHggdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWFjY2VudC1iZyk7XG4gIH1cblxuICA+IHRib2R5IHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogaW5oZXJpdDtcbiAgfVxuXG4gID4gdGhlYWQge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gIH1cblxuICAvLyBIaWdobGlnaHQgYm9yZGVyIGNvbG9yIGJldHdlZW4gdGhlYWQsIHRib2R5IGFuZCB0Zm9vdC5cbiAgPiA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGJvcmRlci10b3A6ICgyICogJHRhYmxlLWJvcmRlci13aWR0aCkgc29saWQgJHRhYmxlLWdyb3VwLXNlcGFyYXRvci1jb2xvcjtcbiAgfVxufVxuXG5cbi8vXG4vLyBDaGFuZ2UgcGxhY2VtZW50IG9mIGNhcHRpb25zIHdpdGggYSBjbGFzc1xuLy9cblxuLmNhcHRpb24tdG9wIHtcbiAgY2FwdGlvbi1zaWRlOiB0b3A7XG59XG5cblxuLy9cbi8vIENvbmRlbnNlZCB0YWJsZSB3LyBoYWxmIHBhZGRpbmdcbi8vXG5cbi50YWJsZS1zbSB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtdW5pdmVyc2FsXG4gID4gOm5vdChjYXB0aW9uKSA+ICogPiAqIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nLXktc20gJHRhYmxlLWNlbGwtcGFkZGluZy14LXNtO1xuICB9XG59XG5cblxuLy8gQm9yZGVyIHZlcnNpb25zXG4vL1xuLy8gQWRkIG9yIHJlbW92ZSBib3JkZXJzIGFsbCBhcm91bmQgdGhlIHRhYmxlIGFuZCBiZXR3ZWVuIGFsbCB0aGUgY29sdW1ucy5cbi8vXG4vLyBXaGVuIGJvcmRlcnMgYXJlIGFkZGVkIG9uIGFsbCBzaWRlcyBvZiB0aGUgY2VsbHMsIHRoZSBjb3JuZXJzIGNhbiByZW5kZXIgb2RkIHdoZW5cbi8vIHRoZXNlIGJvcmRlcnMgZG8gbm90IGhhdmUgdGhlIHNhbWUgY29sb3Igb3IgaWYgdGhleSBhcmUgc2VtaS10cmFuc3BhcmVudC5cbi8vIFRoZXJlZm9yIHdlIGFkZCB0b3AgYW5kIGJvcmRlciBib3R0b21zIHRvIHRoZSBgdHJgcyBhbmQgbGVmdCBhbmQgcmlnaHQgYm9yZGVyc1xuLy8gdG8gdGhlIGB0ZGBzIG9yIGB0aGBzXG5cbi50YWJsZS1ib3JkZXJlZCB7XG4gID4gOm5vdChjYXB0aW9uKSA+ICoge1xuICAgIGJvcmRlci13aWR0aDogJHRhYmxlLWJvcmRlci13aWR0aCAwO1xuXG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC11bml2ZXJzYWxcbiAgICA+ICoge1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICR0YWJsZS1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbi50YWJsZS1ib3JkZXJsZXNzIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC11bml2ZXJzYWxcbiAgPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIH1cblxuICA+IDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgfVxufVxuXG4vLyBaZWJyYS1zdHJpcGluZ1xuLy9cbi8vIERlZmF1bHQgemVicmEtc3RyaXBlIHN0eWxlcyAoYWx0ZXJuYXRpbmcgZ3JheSBhbmQgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMpXG5cbi50YWJsZS1zdHJpcGVkIHtcbiAgPiB0Ym9keSA+IHRyOm50aC1vZi10eXBlKCN7JHRhYmxlLXN0cmlwZWQtb3JkZXJ9KSA+ICoge1xuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWFjY2VudC1iZzogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLXN0cmlwZWQtYmcpO1xuICAgIGNvbG9yOiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtc3RyaXBlZC1jb2xvcik7XG4gIH1cbn1cblxuLy8gQWN0aXZlIHRhYmxlXG4vL1xuLy8gVGhlIGAudGFibGUtYWN0aXZlYCBjbGFzcyBjYW4gYmUgYWRkZWQgdG8gaGlnaGxpZ2h0IHJvd3Mgb3IgY2VsbHNcblxuLnRhYmxlLWFjdGl2ZSB7XG4gIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWFjY2VudC1iZzogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWFjdGl2ZS1iZyk7XG4gIGNvbG9yOiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYWN0aXZlLWNvbG9yKTtcbn1cblxuLy8gSG92ZXIgZWZmZWN0XG4vL1xuLy8gUGxhY2VkIGhlcmUgc2luY2UgaXQgaGFzIHRvIGNvbWUgYWZ0ZXIgdGhlIHBvdGVudGlhbCB6ZWJyYSBzdHJpcGluZ1xuXG4udGFibGUtaG92ZXIge1xuICA+IHRib2R5ID4gdHI6aG92ZXIgPiAqIHtcbiAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1hY2NlbnQtYmc6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1ob3Zlci1iZyk7XG4gICAgY29sb3I6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1ob3Zlci1jb2xvcik7XG4gIH1cbn1cblxuXG4vLyBUYWJsZSB2YXJpYW50c1xuLy9cbi8vIFRhYmxlIHZhcmlhbnRzIHNldCB0aGUgdGFibGUgY2VsbCBiYWNrZ3JvdW5kcywgYm9yZGVyIGNvbG9yc1xuLy8gYW5kIHRoZSBjb2xvcnMgb2YgdGhlIHN0cmlwZWQsIGhvdmVyZWQgJiBhY3RpdmUgdGFibGVzXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0YWJsZS12YXJpYW50cyB7XG4gIEBpbmNsdWRlIHRhYmxlLXZhcmlhbnQoJGNvbG9yLCAkdmFsdWUpO1xufVxuXG4vLyBSZXNwb25zaXZlIHRhYmxlc1xuLy9cbi8vIEdlbmVyYXRlIHNlcmllcyBvZiBgLnRhYmxlLXJlc3BvbnNpdmUtKmAgY2xhc3NlcyBmb3IgY29uZmlndXJpbmcgdGhlIHNjcmVlblxuLy8gc2l6ZSBvZiB3aGVyZSB5b3VyIHRhYmxlIHdpbGwgb3ZlcmZsb3cuXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgIC50YWJsZS1yZXNwb25zaXZlI3skaW5maXh9IHtcbiAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzY3NzLWRvY3Mtc3RhcnQgdGFibGUtdmFyaWFudFxuQG1peGluIHRhYmxlLXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCkge1xuICAudGFibGUtI3skc3RhdGV9IHtcbiAgICAkY29sb3I6IGNvbG9yLWNvbnRyYXN0KG9wYXF1ZSgkYm9keS1iZywgJGJhY2tncm91bmQpKTtcbiAgICAkaG92ZXItYmc6IG1peCgkY29sb3IsICRiYWNrZ3JvdW5kLCBwZXJjZW50YWdlKCR0YWJsZS1ob3Zlci1iZy1mYWN0b3IpKTtcbiAgICAkc3RyaXBlZC1iZzogbWl4KCRjb2xvciwgJGJhY2tncm91bmQsIHBlcmNlbnRhZ2UoJHRhYmxlLXN0cmlwZWQtYmctZmFjdG9yKSk7XG4gICAgJGFjdGl2ZS1iZzogbWl4KCRjb2xvciwgJGJhY2tncm91bmQsIHBlcmNlbnRhZ2UoJHRhYmxlLWFjdGl2ZS1iZy1mYWN0b3IpKTtcblxuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWJnOiAjeyRiYWNrZ3JvdW5kfTtcbiAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1zdHJpcGVkLWJnOiAjeyRzdHJpcGVkLWJnfTtcbiAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yOiAje2NvbG9yLWNvbnRyYXN0KCRzdHJpcGVkLWJnKX07XG4gICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYWN0aXZlLWJnOiAjeyRhY3RpdmUtYmd9O1xuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWFjdGl2ZS1jb2xvcjogI3tjb2xvci1jb250cmFzdCgkYWN0aXZlLWJnKX07XG4gICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtaG92ZXItYmc6ICN7JGhvdmVyLWJnfTtcbiAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1ob3Zlci1jb2xvcjogI3tjb2xvci1jb250cmFzdCgkaG92ZXItYmcpfTtcblxuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtYm9yZGVyLWZhY3RvcikpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIHRhYmxlLXZhcmlhbnRcbiIsIi8vXG4vLyBMYWJlbHNcbi8vXG5cbi5mb3JtLWxhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tbGFiZWwtbWFyZ2luLWJvdHRvbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWxhYmVsLWZvbnQtc2l6ZSk7XG4gIGZvbnQtc3R5bGU6ICRmb3JtLWxhYmVsLWZvbnQtc3R5bGU7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS1sYWJlbC1mb250LXdlaWdodDtcbiAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yO1xufVxuXG4vLyBGb3IgdXNlIHdpdGggaG9yaXpvbnRhbCBhbmQgaW5saW5lIGZvcm1zLCB3aGVuIHlvdSBuZWVkIHRoZSBsYWJlbCAob3IgbGVnZW5kKVxuLy8gdGV4dCB0byBhbGlnbiB3aXRoIHRoZSBmb3JtIGNvbnRyb2xzLlxuLmNvbC1mb3JtLWxhYmVsIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgdGhlIGA8bGVnZW5kPmAgZGVmYXVsdFxuICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7IC8vIE92ZXJyaWRlIHRoZSBgPGxlZ2VuZD5gIGRlZmF1bHRcbiAgZm9udC1zdHlsZTogJGZvcm0tbGFiZWwtZm9udC1zdHlsZTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1sZyB7XG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbn1cblxuLmNvbC1mb3JtLWxhYmVsLXNtIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xufVxuIiwiLy9cbi8vIEZvcm0gdGV4dFxuLy9cblxuLmZvcm0tdGV4dCB7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXRleHQtbWFyZ2luLXRvcDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLXRleHQtZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogJGZvcm0tdGV4dC1mb250LXN0eWxlO1xuICBmb250LXdlaWdodDogJGZvcm0tdGV4dC1mb250LXdlaWdodDtcbiAgY29sb3I6ICRmb3JtLXRleHQtY29sb3I7XG59XG4iLCIvL1xuLy8gR2VuZXJhbCBmb3JtIGNvbnRyb2xzIChwbHVzIGEgZmV3IHNwZWNpZmljIGhpZ2gtbGV2ZWwgaW50ZXJ2ZW50aW9ucylcbi8vXG5cbi5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICBhcHBlYXJhbmNlOiBub25lOyAvLyBGaXggYXBwZWFyYW5jZSBmb3IgZGF0ZSBpbnB1dHMgaW4gU2FmYXJpXG5cbiAgLy8gTm90ZTogVGhpcyBoYXMgbm8gZWZmZWN0IG9uIDxzZWxlY3Q+cyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLCAwKTtcblxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkaW5wdXQtdHJhbnNpdGlvbik7XG5cbiAgJlt0eXBlPVwiZmlsZVwiXSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gcHJldmVudCBwc2V1ZG8gZWxlbWVudCBidXR0b24gb3ZlcmxhcFxuXG4gICAgJjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSkge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxuXG4gIC8vIEN1c3RvbWl6ZSB0aGUgYDpmb2N1c2Agc3RhdGUgdG8gaW1pdGF0ZSBuYXRpdmUgV2ViS2l0IHN0eWxlcy5cbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRpbnB1dC1mb2N1cy1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZm9jdXMtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93LCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAvLyBBZGQgc29tZSBoZWlnaHQgdG8gZGF0ZSBpbnB1dHMgb24gaU9TXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjMzMDdcbiAgLy8gVE9ETzogd2UgY2FuIHJlbW92ZSB0aGlzIHdvcmthcm91bmQgb25jZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk4OTU5IGlzIHJlc29sdmVkXG4gICY6Oi13ZWJraXQtZGF0ZS1hbmQtdGltZS12YWx1ZSB7XG4gICAgLy8gTXVsdGlwbHkgbGluZS1oZWlnaHQgYnkgMWVtIGlmIGl0IGhhcyBubyB1bml0XG4gICAgaGVpZ2h0OiBpZih1bml0KCRpbnB1dC1saW5lLWhlaWdodCkgPT0gXCJcIiwgJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCAkaW5wdXQtbGluZS1oZWlnaHQpO1xuICB9XG5cbiAgLy8gUGxhY2Vob2xkZXJcbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gICAgLy8gT3ZlcnJpZGUgRmlyZWZveCdzIHVudXN1YWwgZGVmYXVsdCBvcGFjaXR5OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjYuXG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIGFuZCByZWFkLW9ubHkgaW5wdXRzXG4gIC8vXG4gIC8vIEhUTUw1IHNheXMgdGhhdCBjb250cm9scyB1bmRlciBhIGZpZWxkc2V0ID4gbGVnZW5kOmZpcnN0LWNoaWxkIHdvbid0IGJlXG4gIC8vIGRpc2FibGVkIGlmIHRoZSBmaWVsZHNldCBpcyBkaXNhYmxlZC4gRHVlIHRvIGltcGxlbWVudGF0aW9uIGRpZmZpY3VsdHksIHdlXG4gIC8vIGRvbid0IGhvbm9yIHRoYXQgZWRnZSBjYXNlOyB3ZSBzdHlsZSB0aGVtIGFzIGRpc2FibGVkIGFueXdheS5cbiAgJjpkaXNhYmxlZCxcbiAgJltyZWFkb25seV0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1iZztcbiAgICBib3JkZXItY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1ib3JkZXItY29sb3I7XG4gICAgLy8gaU9TIGZpeCBmb3IgdW5yZWFkYWJsZSBkaXNhYmxlZCBjb250ZW50OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTY1NS5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLy8gRmlsZSBpbnB1dCBidXR0b25zIHRoZW1pbmdcbiAgJjo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgICBtYXJnaW46ICgtJGlucHV0LXBhZGRpbmcteSkgKC0kaW5wdXQtcGFkZGluZy14KTtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogJGlucHV0LXBhZGRpbmcteDtcbiAgICBjb2xvcjogJGZvcm0tZmlsZS1idXR0b24tY29sb3I7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tZmlsZS1idXR0b24tYmcpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogMDtcbiAgICBib3JkZXItaW5saW5lLWVuZC13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aDtcbiAgICBib3JkZXItcmFkaXVzOiAwOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJ0bi10cmFuc2l0aW9uKTtcbiAgfVxuXG4gICY6aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tZmlsZS1idXR0b24taG92ZXItYmc7XG4gIH1cblxuICAmOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICAgIG1hcmdpbjogKC0kaW5wdXQtcGFkZGluZy15KSAoLSRpbnB1dC1wYWRkaW5nLXgpO1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAkaW5wdXQtcGFkZGluZy14O1xuICAgIGNvbG9yOiAkZm9ybS1maWxlLWJ1dHRvbi1jb2xvcjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1maWxlLWJ1dHRvbi1iZyk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAwO1xuICAgIGJvcmRlci1pbmxpbmUtZW5kLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYnRuLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgJjpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSk6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1maWxlLWJ1dHRvbi1ob3Zlci1iZztcbiAgfVxufVxuXG4vLyBSZWFkb25seSBjb250cm9scyBhcyBwbGFpbiB0ZXh0XG4vL1xuLy8gQXBwbHkgY2xhc3MgdG8gYSByZWFkb25seSBpbnB1dCB0byBtYWtlIGl0IGFwcGVhciBsaWtlIHJlZ3VsYXIgcGxhaW5cbi8vIHRleHQgKHdpdGhvdXQgYW55IGJvcmRlciwgYmFja2dyb3VuZCBjb2xvciwgZm9jdXMgaW5kaWNhdG9yKVxuXG4uZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAwO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBtYXRjaCBpbnB1dHMgaWYgdGhpcyBjbGFzcyBjb21lcyBvbiBpbnB1dHMgd2l0aCBkZWZhdWx0IG1hcmdpbnNcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1wbGFpbnRleHQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGggMDtcblxuICAmLmZvcm0tY29udHJvbC1zbSxcbiAgJi5mb3JtLWNvbnRyb2wtbGcge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cbi8vIEZvcm0gY29udHJvbCBzaXppbmdcbi8vXG4vLyBCdWlsZCBvbiBgLmZvcm0tY29udHJvbGAgd2l0aCBtb2RpZmllciBjbGFzc2VzIHRvIGRlY3JlYXNlIG9yIGluY3JlYXNlIHRoZVxuLy8gaGVpZ2h0IGFuZCBmb250LXNpemUgb2YgZm9ybSBjb250cm9scy5cbi8vXG4vLyBSZXBlYXRlZCBpbiBgX2lucHV0X2dyb3VwLnNjc3NgIHRvIGF2b2lkIFNhc3MgZXh0ZW5kIGlzc3Vlcy5cblxuLmZvcm0tY29udHJvbC1zbSB7XG4gIG1pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLXNtKTtcblxuICAmOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICAgIG1hcmdpbjogKC0kaW5wdXQtcGFkZGluZy15LXNtKSAoLSRpbnB1dC1wYWRkaW5nLXgtc20pO1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAkaW5wdXQtcGFkZGluZy14LXNtO1xuICB9XG5cbiAgJjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgICBtYXJnaW46ICgtJGlucHV0LXBhZGRpbmcteS1zbSkgKC0kaW5wdXQtcGFkZGluZy14LXNtKTtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgfVxufVxuXG4uZm9ybS1jb250cm9sLWxnIHtcbiAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodC1sZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xuXG4gICY6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gICAgbWFyZ2luOiAoLSRpbnB1dC1wYWRkaW5nLXktbGcpICgtJGlucHV0LXBhZGRpbmcteC1sZyk7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6ICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIH1cblxuICAmOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICAgIG1hcmdpbjogKC0kaW5wdXQtcGFkZGluZy15LWxnKSAoLSRpbnB1dC1wYWRkaW5nLXgtbGcpO1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAkaW5wdXQtcGFkZGluZy14LWxnO1xuICB9XG59XG5cbi8vIE1ha2Ugc3VyZSB0ZXh0YXJlYXMgZG9uJ3Qgc2hyaW5rIHRvbyBtdWNoIHdoZW4gcmVzaXplZFxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjkxMjRcbi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxudGV4dGFyZWEge1xuICAmLmZvcm0tY29udHJvbCB7XG4gICAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgfVxuXG4gICYuZm9ybS1jb250cm9sLXNtIHtcbiAgICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xuICB9XG5cbiAgJi5mb3JtLWNvbnRyb2wtbGcge1xuICAgIG1pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG4gIH1cbn1cbi8vIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi5mb3JtLWNvbnRyb2wtY29sb3Ige1xuICB3aWR0aDogJGZvcm0tY29sb3Itd2lkdGg7XG4gIGhlaWdodDogYXV0bzsgLy8gT3ZlcnJpZGUgZml4ZWQgYnJvd3NlciBoZWlnaHRcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteTtcblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgJjo6LW1vei1jb2xvci1zd2F0Y2gge1xuICAgIGhlaWdodDogaWYodW5pdCgkaW5wdXQtbGluZS1oZWlnaHQpID09IFwiXCIsICRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgJGlucHV0LWxpbmUtaGVpZ2h0KTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICY6Oi13ZWJraXQtY29sb3Itc3dhdGNoIHtcbiAgICBoZWlnaHQ6IGlmKHVuaXQoJGlucHV0LWxpbmUtaGVpZ2h0KSA9PSBcIlwiLCAkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sICRpbnB1dC1saW5lLWhlaWdodCk7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcbiAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbikgPT0gMCB7XG4gICAgJHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWJhc2U7XG4gIH1cblxuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA+IDEge1xuICAgIEBlYWNoICR2YWx1ZSBpbiAkdHJhbnNpdGlvbiB7XG4gICAgICBAaWYgJHZhbHVlID09IG51bGwgb3IgJHZhbHVlID09IG5vbmUge1xuICAgICAgICBAd2FybiBcIlRoZSBrZXl3b3JkICdub25lJyBvciAnbnVsbCcgbXVzdCBiZSB1c2VkIGFzIGEgc2luZ2xlIGFyZ3VtZW50LlwiO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgICBAaWYgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBudWxsIHtcbiAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgIH1cblxuICAgIEBpZiAkZW5hYmxlLXJlZHVjZWQtbW90aW9uIGFuZCBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwgYW5kIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbm9uZSB7XG4gICAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gR3JhZGllbnRzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBncmFkaWVudC1iZy1taXhpblxuQG1peGluIGdyYWRpZW50LWJnKCRjb2xvcjogbnVsbCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG5cbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3JhZGllbnQpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGdyYWRpZW50LWJnLW1peGluXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBncmFkaWVudC1taXhpbnNcbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xufVxuXG4vLyBWZXJ0aWNhbCBncmFkaWVudCwgZnJvbSB0b3AgdG8gYm90dG9tXG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC15KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiBudWxsLCAkZW5kLXBlcmNlbnQ6IG51bGwpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG59XG5cbkBtaXhpbiBncmFkaWVudC1kaXJlY3Rpb25hbCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkZGVnOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcbn1cblxuQG1peGluIGdyYWRpZW50LXgtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQteS10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbn1cblxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICRncmF5LTcwMCwgJG91dGVyLWNvbG9yOiAkZ3JheS04MDApIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoJHdoaXRlLCAuMTUpLCAkYW5nbGU6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgZ3JhZGllbnQtbWl4aW5zXG4iLCIvLyBTZWxlY3Rcbi8vXG4vLyBSZXBsYWNlcyB0aGUgYnJvd3NlciBkZWZhdWx0IHNlbGVjdCB3aXRoIGEgY3VzdG9tIG9uZSwgbW9zdGx5IHB1bGxlZCBmcm9tXG4vLyBodHRwczovL3ByaW1lci5naXRodWIuaW8vLlxuXG4uZm9ybS1zZWxlY3Qge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXkgJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nICRmb3JtLXNlbGVjdC1wYWRkaW5nLXkgJGZvcm0tc2VsZWN0LXBhZGRpbmcteDtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXhcbiAgLW1vei1wYWRkaW5nLXN0YXJ0OiBzdWJ0cmFjdCgkZm9ybS1zZWxlY3QtcGFkZGluZy14LCAzcHgpOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8zMjYzNlxuICBmb250LWZhbWlseTogJGZvcm0tc2VsZWN0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS1zZWxlY3QtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZm9ybS1zZWxlY3QtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkZm9ybS1zZWxlY3QtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXNlbGVjdC1iZztcbiAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1zZWxlY3QtaW5kaWNhdG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGZvcm0tc2VsZWN0LWJnLXBvc2l0aW9uO1xuICBiYWNrZ3JvdW5kLXNpemU6ICRmb3JtLXNlbGVjdC1iZy1zaXplO1xuICBib3JkZXI6ICRmb3JtLXNlbGVjdC1ib3JkZXItd2lkdGggc29saWQgJGZvcm0tc2VsZWN0LWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cywgMCk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tc2VsZWN0LWJveC1zaGFkb3cpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLXNlbGVjdC10cmFuc2l0aW9uKTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tc2VsZWN0LWJveC1zaGFkb3csICRmb3JtLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6ICRmb3JtLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxuXG4gICZbbXVsdGlwbGVdLFxuICAmW3NpemVdOm5vdChbc2l6ZT1cIjFcIl0pIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1zZWxlY3QtcGFkZGluZy14O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGZvcm0tc2VsZWN0LWRpc2FibGVkLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXNlbGVjdC1kaXNhYmxlZC1iZztcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLXNlbGVjdC1kaXNhYmxlZC1ib3JkZXItY29sb3I7XG4gIH1cblxuICAvLyBSZW1vdmUgb3V0bGluZSBmcm9tIHNlbGVjdCBib3ggaW4gRkZcbiAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiAwIDAgMCAkZm9ybS1zZWxlY3QtY29sb3I7XG4gIH1cbn1cblxuLmZvcm0tc2VsZWN0LXNtIHtcbiAgcGFkZGluZy10b3A6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXktc207XG4gIHBhZGRpbmctYm90dG9tOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1zZWxlY3QtZm9udC1zaXplLXNtKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbi5mb3JtLXNlbGVjdC1sZyB7XG4gIHBhZGRpbmctdG9wOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBwYWRkaW5nLWJvdHRvbTogJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1sZztcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1zZWxlY3QtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZS1sZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tc2VsZWN0LWJvcmRlci1yYWRpdXMtbGcpO1xufVxuIiwiLy9cbi8vIENoZWNrL3JhZGlvXG4vL1xuXG4uZm9ybS1jaGVjayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtaW4taGVpZ2h0OiAkZm9ybS1jaGVjay1taW4taGVpZ2h0O1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLWNoZWNrLXBhZGRpbmctc3RhcnQ7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLWNoZWNrLW1hcmdpbi1ib3R0b207XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAkZm9ybS1jaGVjay1wYWRkaW5nLXN0YXJ0ICogLTE7XG4gIH1cbn1cblxuLmZvcm0tY2hlY2staW5wdXQge1xuICB3aWR0aDogJGZvcm0tY2hlY2staW5wdXQtd2lkdGg7XG4gIGhlaWdodDogJGZvcm0tY2hlY2staW5wdXQtd2lkdGg7XG4gIG1hcmdpbi10b3A6ICgkbGluZS1oZWlnaHQtYmFzZSAtICRmb3JtLWNoZWNrLWlucHV0LXdpZHRoKSAqIC41OyAvLyBsaW5lLWhlaWdodCBtaW51cyBjaGVjayBoZWlnaHRcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtYmc7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBib3JkZXI6ICRmb3JtLWNoZWNrLWlucHV0LWJvcmRlcjtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgY29sb3ItYWRqdXN0OiBleGFjdDsgLy8gS2VlcCB0aGVtZWQgYXBwZWFyYW5jZSBmb3IgcHJpbnRcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1jaGVjay10cmFuc2l0aW9uKTtcblxuICAmW3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1jaGVjay1pbnB1dC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICZbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyLXJhZGl1czogJGZvcm0tY2hlY2stcmFkaW8tYm9yZGVyLXJhZGl1cztcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICBmaWx0ZXI6ICRmb3JtLWNoZWNrLWlucHV0LWFjdGl2ZS1maWx0ZXI7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJvcmRlcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cblxuICAmOmNoZWNrZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJvcmRlci1jb2xvcjtcblxuICAgICZbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1pbWFnZSksIHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ncmFkaWVudCk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWltYWdlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLXJhZGlvLWNoZWNrZWQtYmctaW1hZ2UpLCB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3JhZGllbnQpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tY2hlY2stcmFkaW8tY2hlY2tlZC1iZy1pbWFnZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJlt0eXBlPVwiY2hlY2tib3hcIl06aW5kZXRlcm1pbmF0ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYm9yZGVyLWNvbG9yO1xuXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1pbWFnZSksIHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ncmFkaWVudCk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctaW1hZ2UpO1xuICAgIH1cbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGZpbHRlcjogbm9uZTtcbiAgICBvcGFjaXR5OiAkZm9ybS1jaGVjay1pbnB1dC1kaXNhYmxlZC1vcGFjaXR5O1xuICB9XG5cbiAgLy8gVXNlIGRpc2FibGVkIGF0dHJpYnV0ZSBpbiBhZGRpdGlvbiBvZiA6ZGlzYWJsZWQgcHNldWRvLWNsYXNzXG4gIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yODI0N1xuICAmW2Rpc2FibGVkXSxcbiAgJjpkaXNhYmxlZCB7XG4gICAgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICBvcGFjaXR5OiAkZm9ybS1jaGVjay1sYWJlbC1kaXNhYmxlZC1vcGFjaXR5O1xuICAgIH1cbiAgfVxufVxuXG4uZm9ybS1jaGVjay1sYWJlbCB7XG4gIGNvbG9yOiAkZm9ybS1jaGVjay1sYWJlbC1jb2xvcjtcbiAgY3Vyc29yOiAkZm9ybS1jaGVjay1sYWJlbC1jdXJzb3I7XG59XG5cbi8vXG4vLyBTd2l0Y2hcbi8vXG5cbi5mb3JtLXN3aXRjaCB7XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQ7XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIHdpZHRoOiAkZm9ybS1zd2l0Y2gtd2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6ICRmb3JtLXN3aXRjaC1wYWRkaW5nLXN0YXJ0ICogLTE7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1zd2l0Y2gtYmctaW1hZ2UpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tc3dpdGNoLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGZvcm0tc3dpdGNoLXRyYW5zaXRpb24pO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1mb2N1cy1iZy1pbWFnZSk7XG4gICAgfVxuXG4gICAgJjpjaGVja2VkIHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLXBvc2l0aW9uO1xuXG4gICAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLWltYWdlKSwgdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWdyYWRpZW50KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLWltYWdlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmZvcm0tY2hlY2staW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4tZW5kO1xufVxuXG4uYnRuLWNoZWNrIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAmW2Rpc2FibGVkXSxcbiAgJjpkaXNhYmxlZCB7XG4gICAgKyAuYnRuIHtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgZmlsdGVyOiBub25lO1xuICAgICAgb3BhY2l0eTogJGZvcm0tY2hlY2stYnRuLWNoZWNrLWRpc2FibGVkLW9wYWNpdHk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBSYW5nZVxuLy9cbi8vIFN0eWxlIHJhbmdlIGlucHV0cyB0aGUgc2FtZSBhY3Jvc3MgYnJvd3NlcnMuIFZlbmRvci1zcGVjaWZpYyBydWxlcyBmb3IgcHNldWRvXG4vLyBlbGVtZW50cyBjYW5ub3QgYmUgbWl4ZWQuIEFzIHN1Y2gsIHRoZXJlIGFyZSBubyBzaGFyZWQgc3R5bGVzIGZvciBmb2N1cyBvclxuLy8gYWN0aXZlIHN0YXRlcyBvbiBwcmVmaXhlZCBzZWxlY3RvcnMuXG5cbi5mb3JtLXJhbmdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYWRkKCRmb3JtLXJhbmdlLXRodW1iLWhlaWdodCwgJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aCAqIDIpO1xuICBwYWRkaW5nOiAwOyAvLyBOZWVkIHRvIHJlc2V0IHBhZGRpbmdcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcblxuICAgIC8vIFBzZXVkby1lbGVtZW50cyBtdXN0IGJlIHNwbGl0IGFjcm9zcyBtdWx0aXBsZSBydWxlc2V0cyB0byBoYXZlIGFuIGVmZmVjdC5cbiAgICAvLyBObyBib3gtc2hhZG93KCkgbWl4aW4gZm9yIGZvY3VzIGFjY2Vzc2liaWxpdHkuXG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIgeyBib3gtc2hhZG93OiAkZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gICAgJjo6LW1vei1yYW5nZS10aHVtYiAgICAgeyBib3gtc2hhZG93OiAkZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gIH1cblxuICAmOjotbW96LWZvY3VzLW91dGVyIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgd2lkdGg6ICRmb3JtLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIG1hcmdpbi10b3A6ICgkZm9ybS1yYW5nZS10cmFjay1oZWlnaHQgLSAkZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQpICogLjU7IC8vIFdlYmtpdCBzcGVjaWZpY1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRmb3JtLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRmb3JtLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1yYW5nZS10aHVtYi10cmFuc2l0aW9uKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cblxuICAmOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gICAgd2lkdGg6ICRmb3JtLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGZvcm0tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDsgLy8gV2h5P1xuICAgIGN1cnNvcjogJGZvcm0tcmFuZ2UtdHJhY2stY3Vyc29yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXJhbmdlLXRyYWNrLWJnO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRmb3JtLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgd2lkdGg6ICRmb3JtLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRmb3JtLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRmb3JtLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1yYW5nZS10aHVtYi10cmFuc2l0aW9uKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cblxuICAmOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICB3aWR0aDogJGZvcm0tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkZm9ybS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogJGZvcm0tcmFuZ2UtdHJhY2stY3Vyc29yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXJhbmdlLXRyYWNrLWJnO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIEZpcmVmb3ggc3BlY2lmaWM/XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRmb3JtLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZztcbiAgICB9XG5cbiAgICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cbiAgfVxufVxuIiwiLmZvcm0tZmxvYXRpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5mb3JtLXNlbGVjdCB7XG4gICAgaGVpZ2h0OiAkZm9ybS1mbG9hdGluZy1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRmb3JtLWZsb2F0aW5nLWxpbmUtaGVpZ2h0O1xuICB9XG5cbiAgPiBsYWJlbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogMTAwJTsgLy8gYWxsb3cgdGV4dGFyZWFzXG4gICAgcGFkZGluZzogJGZvcm0tZmxvYXRpbmctcGFkZGluZy15ICRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7IC8vIFJlcXVpcmVkIGZvciBhbGlnbmluZyBsYWJlbCdzIHRleHQgd2l0aCB0aGUgaW5wdXQgYXMgaXQgYWZmZWN0cyBpbm5lciBib3ggbW9kZWxcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1mbG9hdGluZy10cmFuc2l0aW9uKTtcbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbiAgPiAuZm9ybS1jb250cm9sIHtcbiAgICBwYWRkaW5nOiAkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXkgJGZvcm0tZmxvYXRpbmctcGFkZGluZy14O1xuXG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJjpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB7XG4gICAgICBwYWRkaW5nLXRvcDogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy10O1xuICAgICAgcGFkZGluZy1ib3R0b206ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctYjtcbiAgICB9XG4gICAgLy8gRHVwbGljYXRlZCBiZWNhdXNlIGA6LXdlYmtpdC1hdXRvZmlsbGAgaW52YWxpZGF0ZXMgb3RoZXIgc2VsZWN0b3JzIHdoZW4gZ3JvdXBlZFxuICAgICY6LXdlYmtpdC1hdXRvZmlsbCB7XG4gICAgICBwYWRkaW5nLXRvcDogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy10O1xuICAgICAgcGFkZGluZy1ib3R0b206ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctYjtcbiAgICB9XG4gIH1cblxuICA+IC5mb3JtLXNlbGVjdCB7XG4gICAgcGFkZGluZy10b3A6ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctdDtcbiAgICBwYWRkaW5nLWJvdHRvbTogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy1iO1xuICB9XG5cbiAgPiAuZm9ybS1jb250cm9sOmZvY3VzLFxuICA+IC5mb3JtLWNvbnRyb2w6bm90KDpwbGFjZWhvbGRlci1zaG93biksXG4gID4gLmZvcm0tc2VsZWN0IHtcbiAgICB+IGxhYmVsIHtcbiAgICAgIG9wYWNpdHk6ICRmb3JtLWZsb2F0aW5nLWxhYmVsLW9wYWNpdHk7XG4gICAgICB0cmFuc2Zvcm06ICRmb3JtLWZsb2F0aW5nLWxhYmVsLXRyYW5zZm9ybTtcbiAgICB9XG4gIH1cbiAgLy8gRHVwbGljYXRlZCBiZWNhdXNlIGA6LXdlYmtpdC1hdXRvZmlsbGAgaW52YWxpZGF0ZXMgb3RoZXIgc2VsZWN0b3JzIHdoZW4gZ3JvdXBlZFxuICA+IC5mb3JtLWNvbnRyb2w6LXdlYmtpdC1hdXRvZmlsbCB7XG4gICAgfiBsYWJlbCB7XG4gICAgICBvcGFjaXR5OiAkZm9ybS1mbG9hdGluZy1sYWJlbC1vcGFjaXR5O1xuICAgICAgdHJhbnNmb3JtOiAkZm9ybS1mbG9hdGluZy1sYWJlbC10cmFuc2Zvcm07XG4gICAgfVxuICB9XG4gIC8vIHN0eWxlbGludC1lbmFibGUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uaW5wdXQtZ3JvdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgLy8gRm9yIGZvcm0gdmFsaWRhdGlvbiBmZWVkYmFja1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5mb3JtLXNlbGVjdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyAvLyBGb3IgZm9jdXMgc3RhdGUncyB6LWluZGV4XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgd2lkdGg6IDElO1xuICAgIG1pbi13aWR0aDogMDsgLy8gaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMzYyNDcxNDAvd2h5LWRvbnQtZmxleC1pdGVtcy1zaHJpbmstcGFzdC1jb250ZW50LXNpemVcbiAgfVxuXG4gIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGZvcm0gY29udHJvbCB0byB0aGUgdG9wIG9mIHN1cnJvdW5kaW5nIGVsZW1lbnRzXG4gID4gLmZvcm0tY29udHJvbDpmb2N1cyxcbiAgPiAuZm9ybS1zZWxlY3Q6Zm9jdXMge1xuICAgIHotaW5kZXg6IDM7XG4gIH1cblxuICAvLyBFbnN1cmUgYnV0dG9ucyBhcmUgYWx3YXlzIGFib3ZlIGlucHV0cyBmb3IgbW9yZSB2aXN1YWxseSBwbGVhc2luZyBib3JkZXJzLlxuICAvLyBUaGlzIGlzbid0IG5lZWRlZCBmb3IgYC5pbnB1dC1ncm91cC10ZXh0YCBzaW5jZSBpdCBzaGFyZXMgdGhlIHNhbWUgYm9yZGVyLWNvbG9yXG4gIC8vIGFzIG91ciBpbnB1dHMuXG4gIC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICB6LWluZGV4OiAzO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFRleHR1YWwgYWRkb25zXG4vL1xuLy8gU2VydmVzIGFzIGEgY2F0Y2gtYWxsIGVsZW1lbnQgZm9yIGFueSB0ZXh0IG9yIHJhZGlvL2NoZWNrYm94IGlucHV0IHlvdSB3aXNoXG4vLyB0byBwcmVwZW5kIG9yIGFwcGVuZCB0byBhbiBpbnB1dC5cblxuLmlucHV0LWdyb3VwLXRleHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAkaW5wdXQtZ3JvdXAtYWRkb24tcGFkZGluZy15ICRpbnB1dC1ncm91cC1hZGRvbi1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplKTsgLy8gTWF0Y2ggaW5wdXRzXG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZ3JvdXAtYWRkb24tZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWJnO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG59XG5cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgZm9ybSBjb250cm9sIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llclxuLy8gbWFuaXB1bGF0aW9uLlxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tc2VsZWN0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuYnRuIHtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tc2VsZWN0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuYnRuIHtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1zZWxlY3Qge1xuICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1zZWxlY3QtcGFkZGluZy14ICsgJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nO1xufVxuXG5cbi8vIFJvdW5kZWQgY29ybmVyc1xuLy9cbi8vIFRoZXNlIHJ1bGVzZXRzIG11c3QgY29tZSBhZnRlciB0aGUgc2l6aW5nIG9uZXMgdG8gcHJvcGVybHkgb3ZlcnJpZGUgc20gYW5kIGxnXG4vLyBib3JkZXItcmFkaXVzIHZhbHVlcyB3aGVuIGV4dGVuZGluZy4gVGhleSdyZSBtb3JlIHNwZWNpZmljIHRoYW4gd2UnZCBsaWtlXG4vLyB3aXRoIHRoZSBgLmlucHV0LWdyb3VwID5gIHBhcnQsIGJ1dCB3aXRob3V0IGl0LCB3ZSBjYW5ub3Qgb3ZlcnJpZGUgdGhlIHNpemluZy5cblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbi5pbnB1dC1ncm91cCB7XG4gICY6bm90KC5oYXMtdmFsaWRhdGlvbikge1xuICAgID4gOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpOm5vdCguZHJvcGRvd24tbWVudSksXG4gICAgPiAuZHJvcGRvd24tdG9nZ2xlOm50aC1sYXN0LWNoaWxkKG4gKyAzKSB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItZW5kLXJhZGl1cygwKTtcbiAgICB9XG4gIH1cblxuICAmLmhhcy12YWxpZGF0aW9uIHtcbiAgICA+IDpudGgtbGFzdC1jaGlsZChuICsgMyk6bm90KC5kcm9wZG93bi10b2dnbGUpOm5vdCguZHJvcGRvd24tbWVudSksXG4gICAgPiAuZHJvcGRvd24tdG9nZ2xlOm50aC1sYXN0LWNoaWxkKG4gKyA0KSB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItZW5kLXJhZGl1cygwKTtcbiAgICB9XG4gIH1cblxuICAkdmFsaWRhdGlvbi1tZXNzYWdlczogXCJcIjtcbiAgQGVhY2ggJHN0YXRlIGluIG1hcC1rZXlzKCRmb3JtLXZhbGlkYXRpb24tc3RhdGVzKSB7XG4gICAgJHZhbGlkYXRpb24tbWVzc2FnZXM6ICR2YWxpZGF0aW9uLW1lc3NhZ2VzICsgXCI6bm90KC5cIiArIHVucXVvdGUoJHN0YXRlKSArIFwiLXRvb2x0aXApXCIgKyBcIjpub3QoLlwiICsgdW5xdW90ZSgkc3RhdGUpICsgXCItZmVlZGJhY2spXCI7XG4gIH1cblxuICA+IDpub3QoOmZpcnN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLW1lbnUpI3skdmFsaWRhdGlvbi1tZXNzYWdlc30ge1xuICAgIG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgICBAaW5jbHVkZSBib3JkZXItc3RhcnQtcmFkaXVzKDApO1xuICB9XG59XG4iLCIvLyBUaGlzIG1peGluIHVzZXMgYW4gYGlmKClgIHRlY2huaXF1ZSB0byBiZSBjb21wYXRpYmxlIHdpdGggRGFydCBTYXNzXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMTg3MyNpc3N1ZWNvbW1lbnQtMTUyMjkzNzI1IGZvciBtb3JlIGRldGFpbHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tdmFsaWRhdGlvbi1taXhpbnNcbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gIEBpZiAoJHN0YXRlID09IFwidmFsaWRcIiBvciAkc3RhdGUgPT0gXCJpbnZhbGlkXCIpIHtcbiAgICAud2FzLXZhbGlkYXRlZCAje2lmKCYsIFwiJlwiLCBcIlwiKX06I3skc3RhdGV9LFxuICAgICN7aWYoJiwgXCImXCIsIFwiXCIpfS5pcy0jeyRzdGF0ZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAje2lmKCYsIFwiJlwiLCBcIlwiKX0uaXMtI3skc3RhdGV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlKFxuICAkc3RhdGUsXG4gICRjb2xvcixcbiAgJGljb24sXG4gICR0b29sdGlwLWNvbG9yOiBjb2xvci1jb250cmFzdCgkY29sb3IpLFxuICAkdG9vbHRpcC1iZy1jb2xvcjogcmdiYSgkY29sb3IsICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eSksXG4gICRmb2N1cy1ib3gtc2hhZG93OiAwIDAgJGlucHV0LWJ0bi1mb2N1cy1ibHVyICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgJGlucHV0LWJ0bi1mb2N1cy1jb2xvci1vcGFjaXR5KVxuKSB7XG4gIC4jeyRzdGF0ZX0tZmVlZGJhY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stZm9udC1zaXplKTtcbiAgICBmb250LXN0eWxlOiAkZm9ybS1mZWVkYmFjay1mb250LXN0eWxlO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgei1pbmRleDogNTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1heC13aWR0aDogMTAwJTsgLy8gQ29udGFpbiB0byBwYXJlbnQgd2hlbiBwb3NzaWJsZVxuICAgIHBhZGRpbmc6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14O1xuICAgIG1hcmdpbi10b3A6IC4xcmVtO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnLWNvbG9yO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRpY29uKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6ICRmb2N1cy1ib3gtc2hhZG93O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbiAgdGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgICY6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pLFxuICAgICAgICAmOm5vdChbbXVsdGlwbGVdKVtzaXplPVwiMVwiXSB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1lbmQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1zZWxlY3QtaW5kaWNhdG9yKSwgZXNjYXBlLXN2ZygkaWNvbik7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGZvcm0tc2VsZWN0LWJnLXBvc2l0aW9uLCAkZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICRmb3JtLXNlbGVjdC1iZy1zaXplLCAkZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogJGZvY3VzLWJveC1zaGFkb3c7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICAmOmNoZWNrZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3gtc2hhZG93OiAkZm9jdXMtYm94LXNoYWRvdztcbiAgICAgIH1cblxuICAgICAgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5mb3JtLWNoZWNrLWlubGluZSAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAuNWVtO1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sLFxuICAuaW5wdXQtZ3JvdXAgLmZvcm0tc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBAaWYgJHN0YXRlID09IFwidmFsaWRcIiB7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICB9IEBlbHNlIGlmICRzdGF0ZSA9PSBcImludmFsaWRcIiB7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICB9XG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgei1pbmRleDogMztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS12YWxpZGF0aW9uLW1peGluc1xuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogJGJ0bi1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRidG4tZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkYnRuLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGJvZHktY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICB3aGl0ZS1zcGFjZTogJGJ0bi13aGl0ZS1zcGFjZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiBpZigkZW5hYmxlLWJ1dHRvbi1wb2ludGVycywgcG9pbnRlciwgbnVsbCk7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAkYnRuLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXksICRidG4tcGFkZGluZy14LCAkYnRuLWZvbnQtc2l6ZSwgJGJ0bi1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYnRuLXRyYW5zaXRpb24pO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgfVxuXG4gIC5idG4tY2hlY2s6Zm9jdXMgKyAmLFxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRidG4tZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gIC5idG4tY2hlY2s6Y2hlY2tlZCArICYsXG4gIC5idG4tY2hlY2s6YWN0aXZlICsgJixcbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlIHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tZm9jdXMtYm94LXNoYWRvdywgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG4gICAgfVxuICB9XG5cbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCxcbiAgZmllbGRzZXQ6ZGlzYWJsZWQgJiB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgb3BhY2l0eTogJGJ0bi1kaXNhYmxlZC1vcGFjaXR5O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gQWx0ZXJuYXRlIGJ1dHRvbnNcbi8vXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tdmFyaWFudC1sb29wc1xuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5idG4tI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkdmFsdWUsICR2YWx1ZSk7XG4gIH1cbn1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5idG4tb3V0bGluZS0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tdmFyaWFudC1sb29wc1xuXG5cbi8vXG4vLyBMaW5rIGJ1dHRvbnNcbi8vXG5cbi8vIE1ha2UgYSBidXR0b24gbG9vayBhbmQgYmVoYXZlIGxpa2UgYSBsaW5rXG4uYnRuLWxpbmsge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgY29sb3I6ICRidG4tbGluay1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkYnRuLWxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG5cbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRidG4tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgfVxuXG4gIC8vIE5vIG5lZWQgZm9yIGFuIGFjdGl2ZSBzdGF0ZSBoZXJlXG59XG5cblxuLy9cbi8vIEJ1dHRvbiBTaXplc1xuLy9cblxuLmJ0bi1sZyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LWxnLCAkYnRuLXBhZGRpbmcteC1sZywgJGJ0bi1mb250LXNpemUtbGcsICRidG4tYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5idG4tc20ge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS1zbSwgJGJ0bi1wYWRkaW5nLXgtc20sICRidG4tZm9udC1zaXplLXNtLCAkYnRuLWJvcmRlci1yYWRpdXMtc20pO1xufVxuIiwiLy8gQnV0dG9uIHZhcmlhbnRzXG4vL1xuLy8gRWFzaWx5IHB1bXAgb3V0IGRlZmF1bHQgc3R5bGVzLCBhcyB3ZWxsIGFzIDpob3ZlciwgOmZvY3VzLCA6YWN0aXZlLFxuLy8gYW5kIGRpc2FibGVkIG9wdGlvbnMgZm9yIGFsbCBidXR0b25zXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tdmFyaWFudC1taXhpblxuQG1peGluIGJ1dHRvbi12YXJpYW50KFxuICAkYmFja2dyb3VuZCxcbiAgJGJvcmRlcixcbiAgJGNvbG9yOiBjb2xvci1jb250cmFzdCgkYmFja2dyb3VuZCksXG4gICRob3Zlci1iYWNrZ3JvdW5kOiBpZigkY29sb3IgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCBzaGFkZS1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1ob3Zlci1iZy1zaGFkZS1hbW91bnQpLCB0aW50LWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLWhvdmVyLWJnLXRpbnQtYW1vdW50KSksXG4gICRob3Zlci1ib3JkZXI6IGlmKCRjb2xvciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCRib3JkZXIsICRidG4taG92ZXItYm9yZGVyLXNoYWRlLWFtb3VudCksIHRpbnQtY29sb3IoJGJvcmRlciwgJGJ0bi1ob3Zlci1ib3JkZXItdGludC1hbW91bnQpKSxcbiAgJGhvdmVyLWNvbG9yOiBjb2xvci1jb250cmFzdCgkaG92ZXItYmFja2dyb3VuZCksXG4gICRhY3RpdmUtYmFja2dyb3VuZDogaWYoJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJGJhY2tncm91bmQsICRidG4tYWN0aXZlLWJnLXNoYWRlLWFtb3VudCksIHRpbnQtY29sb3IoJGJhY2tncm91bmQsICRidG4tYWN0aXZlLWJnLXRpbnQtYW1vdW50KSksXG4gICRhY3RpdmUtYm9yZGVyOiBpZigkY29sb3IgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCBzaGFkZS1jb2xvcigkYm9yZGVyLCAkYnRuLWFjdGl2ZS1ib3JkZXItc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYm9yZGVyLCAkYnRuLWFjdGl2ZS1ib3JkZXItdGludC1hbW91bnQpKSxcbiAgJGFjdGl2ZS1jb2xvcjogY29sb3ItY29udHJhc3QoJGFjdGl2ZS1iYWNrZ3JvdW5kKSxcbiAgJGRpc2FibGVkLWJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLFxuICAkZGlzYWJsZWQtYm9yZGVyOiAkYm9yZGVyLFxuICAkZGlzYWJsZWQtY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRkaXNhYmxlZC1iYWNrZ3JvdW5kKVxuKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRiYWNrZ3JvdW5kKTtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYm94LXNoYWRvdyk7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRob3Zlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgYm9yZGVyLWNvbG9yOiAkaG92ZXItYm9yZGVyO1xuICB9XG5cbiAgLmJ0bi1jaGVjazpmb2N1cyArICYsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkaG92ZXItY29sb3I7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIGJvcmRlci1jb2xvcjogJGhvdmVyLWJvcmRlcjtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KCRjb2xvciwgJGJvcmRlciwgMTUlKSwgLjUpKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoJGNvbG9yLCAkYm9yZGVyLCAxNSUpLCAuNSk7XG4gICAgfVxuICB9XG5cbiAgLmJ0bi1jaGVjazpjaGVja2VkICsgJixcbiAgLmJ0bi1jaGVjazphY3RpdmUgKyAmLFxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUsXG4gIC5zaG93ID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiAkYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBpZigkZW5hYmxlLWdyYWRpZW50cywgbm9uZSwgbnVsbCk7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peCgkY29sb3IsICRib3JkZXIsIDE1JSksIC41KSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KCRjb2xvciwgJGJvcmRlciwgMTUlKSwgLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICY6ZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRpc2FibGVkLWJhY2tncm91bmQ7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIG5vbmUsIG51bGwpO1xuICAgIGJvcmRlci1jb2xvcjogJGRpc2FibGVkLWJvcmRlcjtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tdmFyaWFudC1taXhpblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLW91dGxpbmUtdmFyaWFudC1taXhpblxuQG1peGluIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoXG4gICRjb2xvcixcbiAgJGNvbG9yLWhvdmVyOiBjb2xvci1jb250cmFzdCgkY29sb3IpLFxuICAkYWN0aXZlLWJhY2tncm91bmQ6ICRjb2xvcixcbiAgJGFjdGl2ZS1ib3JkZXI6ICRjb2xvcixcbiAgJGFjdGl2ZS1jb2xvcjogY29sb3ItY29udHJhc3QoJGFjdGl2ZS1iYWNrZ3JvdW5kKVxuKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG4gIH1cblxuICAuYnRuLWNoZWNrOmZvY3VzICsgJixcbiAgJjpmb2N1cyB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICB9XG5cbiAgLmJ0bi1jaGVjazpjaGVja2VkICsgJixcbiAgLmJ0bi1jaGVjazphY3RpdmUgKyAmLFxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUsXG4gICYuZHJvcGRvd24tdG9nZ2xlLnNob3cge1xuICAgIGNvbG9yOiAkYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSkpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICY6ZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgYnRuLW91dGxpbmUtdmFyaWFudC1taXhpblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLXNpemUtbWl4aW5cbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkYm9yZGVyLXJhZGl1cykge1xuICBwYWRkaW5nOiAkcGFkZGluZy15ICRwYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgLy8gTWFudWFsbHkgZGVjbGFyZSB0byBwcm92aWRlIGFuIG92ZXJyaWRlIHRvIHRoZSBicm93c2VyIGRlZmF1bHRcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cywgMCk7XG59XG4vLyBzY3NzLWRvY3MtZW5kIGJ0bi1zaXplLW1peGluXG4iLCIuZmFkZSB7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tZmFkZSk7XG5cbiAgJjpub3QoLnNob3cpIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjb2xsYXBzZS1jbGFzc2VzXG4uY29sbGFwc2Uge1xuICAmOm5vdCguc2hvdykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmNvbGxhcHNpbmcge1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tY29sbGFwc2UpO1xuXG4gICYuY29sbGFwc2UtaG9yaXpvbnRhbCB7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tY29sbGFwc2Utd2lkdGgpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGNvbGxhcHNlLWNsYXNzZXNcbiIsIi8vIFRoZSBkcm9wZG93biB3cmFwcGVyIChgPGRpdj5gKVxuLmRyb3B1cCxcbi5kcm9wZW5kLFxuLmRyb3Bkb3duLFxuLmRyb3BzdGFydCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgLy8gR2VuZXJhdGUgdGhlIGNhcmV0IGF1dG9tYXRpY2FsbHlcbiAgQGluY2x1ZGUgY2FyZXQoKTtcbn1cblxuLy8gVGhlIGRyb3Bkb3duIG1lbnVcbi5kcm9wZG93bi1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duO1xuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxuICBtaW4td2lkdGg6ICRkcm9wZG93bi1taW4td2lkdGg7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nLXkgJGRyb3Bkb3duLXBhZGRpbmcteDtcbiAgbWFyZ2luOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IG1hcmdpbiBvZiB1bFxuICBAaW5jbHVkZSBmb250LXNpemUoJGRyb3Bkb3duLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkZHJvcGRvd24tY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEVuc3VyZXMgcHJvcGVyIGFsaWdubWVudCBpZiBwYXJlbnQgaGFzIGl0IGNoYW5nZWQgKGUuZy4sIG1vZGFsIGZvb3RlcilcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRkcm9wZG93bi1ib3JkZXItd2lkdGggc29saWQgJGRyb3Bkb3duLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZHJvcGRvd24tYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGRyb3Bkb3duLWJveC1zaGFkb3cpO1xuXG4gICZbZGF0YS1icy1wb3BwZXJdIHtcbiAgICB0b3A6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCByZXNwb25zaXZlLWJyZWFrcG9pbnRzXG4vLyBXZSBkZWxpYmVyYXRlbHkgaGFyZGNvZGUgdGhlIGBicy1gIHByZWZpeCBiZWNhdXNlIHdlIGNoZWNrXG4vLyB0aGlzIGN1c3RvbSBwcm9wZXJ0eSBpbiBKUyB0byBkZXRlcm1pbmUgUG9wcGVyJ3MgcG9zaXRpb25pbmdcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tc3RhcnQge1xuICAgICAgLS1icy1wb3NpdGlvbjogc3RhcnQ7XG5cbiAgICAgICZbZGF0YS1icy1wb3BwZXJdIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tZW5kIHtcbiAgICAgIC0tYnMtcG9zaXRpb246IGVuZDtcblxuICAgICAgJltkYXRhLWJzLXBvcHBlcl0ge1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgcmVzcG9uc2l2ZS1icmVha3BvaW50c1xuXG4vLyBBbGxvdyBmb3IgZHJvcGRvd25zIHRvIGdvIGJvdHRvbSB1cCAoYWthLCBkcm9wdXAtbWVudSlcbi8vIEp1c3QgYWRkIC5kcm9wdXAgYWZ0ZXIgdGhlIHN0YW5kYXJkIC5kcm9wZG93biBjbGFzcyBhbmQgeW91J3JlIHNldC5cbi5kcm9wdXAge1xuICAuZHJvcGRvd24tbWVudVtkYXRhLWJzLXBvcHBlcl0ge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQodXApO1xuICB9XG59XG5cbi5kcm9wZW5kIHtcbiAgLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQoZW5kKTtcbiAgICAmOjphZnRlciB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogMDtcbiAgICB9XG4gIH1cbn1cblxuLmRyb3BzdGFydCB7XG4gIC5kcm9wZG93bi1tZW51W2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChzdGFydCk7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gYDxocj5gKSB3aXRoaW4gdGhlIGRyb3Bkb3duXG4uZHJvcGRvd24tZGl2aWRlciB7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAkZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teSAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGRyb3Bkb3duLWRpdmlkZXItYmc7XG59XG5cbi8vIExpbmtzLCBidXR0b25zLCBhbmQgbW9yZSB3aXRoaW4gdGhlIGRyb3Bkb3duIG1lbnVcbi8vXG4vLyBgPGJ1dHRvbj5gLXNwZWNpZmljIHN0eWxlcyBhcmUgZGVub3RlZCB3aXRoIGAvLyBGb3IgPGJ1dHRvbj5zYFxuLmRyb3Bkb3duLWl0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBjbGVhcjogYm90aDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gcHJldmVudCBsaW5rcyBmcm9tIHJhbmRvbWx5IGJyZWFraW5nIG9udG8gbmV3IGxpbmVzXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGb3IgYDxidXR0b24+YHNcbiAgYm9yZGVyOiAwOyAvLyBGb3IgYDxidXR0b24+YHNcblxuICAvLyBQcmV2ZW50IGRyb3Bkb3duIG92ZXJmbG93IGlmIHRoZXJlJ3Mgbm8gcGFkZGluZ1xuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjc3MDNcbiAgQGlmICRkcm9wZG93bi1wYWRkaW5nLXkgPT0gMCB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGRyb3Bkb3duLWxpbmstaG92ZXItYmcpO1xuICB9XG5cbiAgJi5hY3RpdmUsXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tbGluay1hY3RpdmUtYmcpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGlmKCRlbmFibGUtZ3JhZGllbnRzLCBub25lLCBudWxsKTtcbiAgfVxufVxuXG4uZHJvcGRvd24tbWVudS5zaG93IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIERyb3Bkb3duIHNlY3Rpb24gaGVhZGVyc1xuLmRyb3Bkb3duLWhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkZHJvcGRvd24taGVhZGVyLXBhZGRpbmc7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIGZvciB1c2Ugd2l0aCBoZWFkaW5nIGVsZW1lbnRzXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLXNtKTtcbiAgY29sb3I6ICRkcm9wZG93bi1oZWFkZXItY29sb3I7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIGFzIHdpdGggPiBsaSA+IGFcbn1cblxuLy8gRHJvcGRvd24gdGV4dFxuLmRyb3Bkb3duLWl0ZW0tdGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBjb2xvcjogJGRyb3Bkb3duLWxpbmstY29sb3I7XG59XG5cbi8vIERhcmsgZHJvcGRvd25zXG4uZHJvcGRvd24tbWVudS1kYXJrIHtcbiAgY29sb3I6ICRkcm9wZG93bi1kYXJrLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tZGFyay1iZztcbiAgYm9yZGVyLWNvbG9yOiAkZHJvcGRvd24tZGFyay1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGRyb3Bkb3duLWRhcmstYm94LXNoYWRvdyk7XG5cbiAgLmRyb3Bkb3duLWl0ZW0ge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tZGFyay1saW5rLWNvbG9yO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGRyb3Bkb3duLWRhcmstbGluay1ob3Zlci1iZyk7XG4gICAgfVxuXG4gICAgJi5hY3RpdmUsXG4gICAgJjphY3RpdmUge1xuICAgICAgY29sb3I6ICRkcm9wZG93bi1kYXJrLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGRyb3Bkb3duLWRhcmstbGluay1hY3RpdmUtYmcpO1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQsXG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICBjb2xvcjogJGRyb3Bkb3duLWRhcmstbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAuZHJvcGRvd24tZGl2aWRlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZHJvcGRvd24tZGFyay1kaXZpZGVyLWJnO1xuICB9XG5cbiAgLmRyb3Bkb3duLWl0ZW0tdGV4dCB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1kYXJrLWxpbmstY29sb3I7XG4gIH1cblxuICAuZHJvcGRvd24taGVhZGVyIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWRhcmstaGVhZGVyLWNvbG9yO1xuICB9XG59XG4iLCIvLyBzY3NzLWRvY3Mtc3RhcnQgY2FyZXQtbWl4aW5zXG5AbWl4aW4gY2FyZXQtZG93biB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC11cCB7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC1lbmQge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkO1xufVxuXG5AbWl4aW4gY2FyZXQtc3RhcnQge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldCgkZGlyZWN0aW9uOiBkb3duKSB7XG4gIEBpZiAkZW5hYmxlLWNhcmV0IHtcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogJGNhcmV0LXNwYWNpbmc7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXZlcnRpY2FsLWFsaWduO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIEBpZiAkZGlyZWN0aW9uID09IGRvd24ge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1kb3duKCk7XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gdXAge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC11cCgpO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IGVuZCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWVuZCgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkZGlyZWN0aW9uID09IHN0YXJ0IHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRjYXJldC1zcGFjaW5nO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXZlcnRpY2FsLWFsaWduO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1zdGFydCgpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6ZW1wdHk6OmFmdGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBjYXJldC1taXhpbnNcbiIsIi8vIE1ha2UgdGhlIGRpdiBiZWhhdmUgbGlrZSBhIGJ1dHRvblxuLmJ0bi1ncm91cCxcbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBtYXRjaCAuYnRuIGFsaWdubWVudCBnaXZlbiBmb250LXNpemUgaGFjayBhYm92ZVxuXG4gID4gLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICB9XG5cbiAgLy8gQnJpbmcgdGhlIGhvdmVyLCBmb2N1c2VkLCBhbmQgXCJhY3RpdmVcIiBidXR0b25zIHRvIHRoZSBmcm9udCB0byBvdmVybGF5XG4gIC8vIHRoZSBib3JkZXJzIHByb3Blcmx5XG4gID4gLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bixcbiAgPiAuYnRuLWNoZWNrOmZvY3VzICsgLmJ0bixcbiAgPiAuYnRuOmhvdmVyLFxuICA+IC5idG46Zm9jdXMsXG4gID4gLmJ0bjphY3RpdmUsXG4gID4gLmJ0bi5hY3RpdmUge1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbn1cblxuLy8gT3B0aW9uYWw6IEdyb3VwIG11bHRpcGxlIGJ1dHRvbiBncm91cHMgdG9nZXRoZXIgZm9yIGEgdG9vbGJhclxuLmJ0bi10b29sYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4uYnRuLWdyb3VwIHtcbiAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVycyB3aGVuIGJ1dHRvbnMgYXJlIG5leHQgdG8gZWFjaCBvdGhlclxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kYnRuLWJvcmRlci13aWR0aDtcbiAgfVxuXG4gIC8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWVuZC1yYWRpdXMoMCk7XG4gIH1cblxuICAvLyBUaGUgbGVmdCByYWRpdXMgc2hvdWxkIGJlIDAgaWYgdGhlIGJ1dHRvbiBpczpcbiAgLy8gLSB0aGUgXCJ0aGlyZCBvciBtb3JlXCIgY2hpbGRcbiAgLy8gLSB0aGUgc2Vjb25kIGNoaWxkIGFuZCB0aGUgcHJldmlvdXMgZWxlbWVudCBpc24ndCBgLmJ0bi1jaGVja2AgKG1ha2luZyBpdCB0aGUgZmlyc3QgY2hpbGQgdmlzdWFsbHkpXG4gIC8vIC0gcGFydCBvZiBhIGJ0bi1ncm91cCB3aGljaCBpc24ndCB0aGUgZmlyc3QgY2hpbGRcbiAgPiAuYnRuOm50aC1jaGlsZChuICsgMyksXG4gID4gOm5vdCguYnRuLWNoZWNrKSArIC5idG4sXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1zdGFydC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgYnV0dG9uIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llciBtYW5pcHVsYXRpb24uXG5cbi5idG4tZ3JvdXAtc20gPiAuYnRuIHsgQGV4dGVuZCAuYnRuLXNtOyB9XG4uYnRuLWdyb3VwLWxnID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1sZzsgfVxuXG5cbi8vXG4vLyBTcGxpdCBidXR0b24gZHJvcGRvd25zXG4vL1xuXG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG5cbiAgJjo6YWZ0ZXIsXG4gIC5kcm9wdXAgJjo6YWZ0ZXIsXG4gIC5kcm9wZW5kICY6OmFmdGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gIC5kcm9wc3RhcnQgJjo6YmVmb3JlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmJ0bi1zbSArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteC1zbSAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteC1zbSAqIC43NTtcbn1cblxuLmJ0bi1sZyArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteC1sZyAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteC1sZyAqIC43NTtcbn1cblxuXG4vLyBUaGUgY2xpY2thYmxlIGJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG1lbnVcbi8vIFNldCB0aGUgc2FtZSBpbnNldCBzaGFkb3cgYXMgdGhlIDphY3RpdmUgc3RhdGVcbi5idG4tZ3JvdXAuc2hvdyAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcblxuICAvLyBTaG93IG5vIHNoYWRvdyBmb3IgYC5idG4tbGlua2Agc2luY2UgaXQgaGFzIG5vIG90aGVyIGJ1dHRvbiBzdHlsZXMuXG4gICYuYnRuLWxpbmsge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gVmVydGljYWwgYnV0dG9uIGdyb3Vwc1xuLy9cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXRvcDogLSRidG4tYm9yZGVyLXdpZHRoO1xuICB9XG5cbiAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4gID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgfVxuXG4gID4gLmJ0biB+IC5idG4sXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gS2lja3N0YXJ0IGFueSBuYXZpZ2F0aW9uIGNvbXBvbmVudCB3aXRoIGEgc2V0IG9mIHN0eWxlIHJlc2V0cy4gV29ya3Mgd2l0aFxuLy8gYDxuYXY+YHMsIGA8dWw+YHMgb3IgYDxvbD5gcy5cblxuLm5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubmF2LWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJG5hdi1saW5rLXBhZGRpbmcteSAkbmF2LWxpbmstcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJG5hdi1saW5rLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkbmF2LWxpbmstZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkbmF2LWxpbmstY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkbmF2LWxpbmstdHJhbnNpdGlvbik7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRuYXYtbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlIGxpZ2h0ZW5zIHRleHRcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cbn1cblxuLy9cbi8vIFRhYnNcbi8vXG5cbi5uYXYtdGFicyB7XG4gIGJvcmRlci1ib3R0b206ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcblxuICAubmF2LWxpbmsge1xuICAgIG1hcmdpbi1ib3R0b206IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm9yZGVyOiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRuYXYtdGFicy1ib3JkZXItcmFkaXVzKTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjtcbiAgICAgIC8vIFByZXZlbnRzIGFjdGl2ZSAubmF2LWxpbmsgdGFiIG92ZXJsYXBwaW5nIGZvY3VzIG91dGxpbmUgb2YgcHJldmlvdXMvbmV4dCAubmF2LWxpbmtcbiAgICAgIGlzb2xhdGlvbjogaXNvbGF0ZTtcbiAgICB9XG5cbiAgICAmLmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLm5hdi1pdGVtLnNob3cgLm5hdi1saW5rIHtcbiAgICBjb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgLy8gTWFrZSBkcm9wZG93biBib3JkZXIgb3ZlcmxhcCB0YWIgYm9yZGVyXG4gICAgbWFyZ2luLXRvcDogLSRuYXYtdGFicy1ib3JkZXItd2lkdGg7XG4gICAgLy8gUmVtb3ZlIHRoZSB0b3Agcm91bmRlZCBjb3JuZXJzIGhlcmUgc2luY2UgdGhlcmUgaXMgYSBoYXJkIGVkZ2UgYWJvdmUgdGhlIG1lbnVcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBQaWxsc1xuLy9cblxuLm5hdi1waWxscyB7XG4gIC5uYXYtbGluayB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbmF2LXBpbGxzLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLnNob3cgPiAubmF2LWxpbmsge1xuICAgIGNvbG9yOiAkbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmcpO1xuICB9XG59XG5cblxuLy9cbi8vIEp1c3RpZmllZCB2YXJpYW50c1xuLy9cblxuLm5hdi1maWxsIHtcbiAgPiAubmF2LWxpbmssXG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5uYXYtanVzdGlmaWVkIHtcbiAgPiAubmF2LWxpbmssXG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5uYXYtZmlsbCxcbi5uYXYtanVzdGlmaWVkIHtcbiAgLm5hdi1pdGVtIC5uYXYtbGluayB7XG4gICAgd2lkdGg6IDEwMCU7IC8vIE1ha2Ugc3VyZSBidXR0b24gd2lsbCBncm93XG4gIH1cbn1cblxuXG4vLyBUYWJiYWJsZSB0YWJzXG4vL1xuLy8gSGlkZSB0YWJiYWJsZSBwYW5lcyB0byBzdGFydCwgc2hvdyB0aGVtIHdoZW4gYC5hY3RpdmVgXG5cbi50YWItY29udGVudCB7XG4gID4gLnRhYi1wYW5lIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gID4gLmFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiIsIi8vIENvbnRlbnRzXG4vL1xuLy8gTmF2YmFyXG4vLyBOYXZiYXIgYnJhbmRcbi8vIE5hdmJhciBuYXZcbi8vIE5hdmJhciB0ZXh0XG4vLyBSZXNwb25zaXZlIG5hdmJhclxuLy8gTmF2YmFyIHBvc2l0aW9uXG4vLyBOYXZiYXIgdGhlbWVzXG5cblxuLy8gTmF2YmFyXG4vL1xuLy8gUHJvdmlkZSBhIHN0YXRpYyBuYXZiYXIgZnJvbSB3aGljaCB3ZSBleHBhbmQgdG8gY3JlYXRlIGZ1bGwtd2lkdGgsIGZpeGVkLCBhbmRcbi8vIG90aGVyIG5hdmJhciB2YXJpYXRpb25zLlxuXG4ubmF2YmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIGFsbG93IHVzIHRvIGRvIHRoZSBsaW5lIGJyZWFrIGZvciBjb2xsYXBzaW5nIGNvbnRlbnRcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBzcGFjZSBvdXQgYnJhbmQgZnJvbSBsb2dvXG4gIHBhZGRpbmctdG9wOiAkbmF2YmFyLXBhZGRpbmcteTtcbiAgcGFkZGluZy1yaWdodDogJG5hdmJhci1wYWRkaW5nLXg7IC8vIGRlZmF1bHQ6IG51bGxcbiAgcGFkZGluZy1ib3R0b206ICRuYXZiYXItcGFkZGluZy15O1xuICBwYWRkaW5nLWxlZnQ6ICRuYXZiYXItcGFkZGluZy14OyAvLyBkZWZhdWx0OiBudWxsXG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCk7XG5cbiAgLy8gQmVjYXVzZSBmbGV4IHByb3BlcnRpZXMgYXJlbid0IGluaGVyaXRlZCwgd2UgbmVlZCB0byByZWRlY2xhcmUgdGhlc2UgZmlyc3RcbiAgLy8gZmV3IHByb3BlcnRpZXMgc28gdGhhdCBjb250ZW50IG5lc3RlZCB3aXRoaW4gYmVoYXZlIHByb3Blcmx5LlxuICAvLyBUaGUgYGZsZXgtd3JhcGAgcHJvcGVydHkgaXMgaW5oZXJpdGVkIHRvIHNpbXBsaWZ5IHRoZSBleHBhbmRlZCBuYXZiYXJzXG4gICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogaW5oZXJpdDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuXG4gID4gLmNvbnRhaW5lcixcbiAgPiAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAZXh0ZW5kICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzO1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgPiAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aHMpfSB7XG4gICAgICBAZXh0ZW5kICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdmJhciBicmFuZFxuLy9cbi8vIFVzZWQgZm9yIGJyYW5kLCBwcm9qZWN0LCBvciBzaXRlIG5hbWVzLlxuXG4ubmF2YmFyLWJyYW5kIHtcbiAgcGFkZGluZy10b3A6ICRuYXZiYXItYnJhbmQtcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJG5hdmJhci1icmFuZC1wYWRkaW5nLXk7XG4gIG1hcmdpbi1yaWdodDogJG5hdmJhci1icmFuZC1tYXJnaW4tZW5kO1xuICBAaW5jbHVkZSBmb250LXNpemUoJG5hdmJhci1icmFuZC1mb250LXNpemUpO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgbmF2XG4vL1xuLy8gQ3VzdG9tIG5hdmJhciBuYXZpZ2F0aW9uIChkb2Vzbid0IHJlcXVpcmUgYC5uYXZgLCBidXQgZG9lcyBtYWtlIHVzZSBvZiBgLm5hdi1saW5rYCkuXG5cbi5uYXZiYXItbmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLy8gY2Fubm90IHVzZSBgaW5oZXJpdGAgdG8gZ2V0IHRoZSBgLm5hdmJhcmBzIHZhbHVlXG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdGV4dFxuLy9cbi8vXG5cbi5uYXZiYXItdGV4dCB7XG4gIHBhZGRpbmctdG9wOiAkbmF2LWxpbmstcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJG5hdi1saW5rLXBhZGRpbmcteTtcbn1cblxuXG4vLyBSZXNwb25zaXZlIG5hdmJhclxuLy9cbi8vIEN1c3RvbSBzdHlsZXMgZm9yIHJlc3BvbnNpdmUgY29sbGFwc2luZyBhbmQgdG9nZ2xpbmcgb2YgbmF2YmFyIGNvbnRlbnRzLlxuLy8gUG93ZXJlZCBieSB0aGUgY29sbGFwc2UgQm9vdHN0cmFwIEphdmFTY3JpcHQgcGx1Z2luLlxuXG4vLyBXaGVuIGNvbGxhcHNlZCwgcHJldmVudCB0aGUgdG9nZ2xlYWJsZSBuYXZiYXIgY29udGVudHMgZnJvbSBhcHBlYXJpbmcgaW5cbi8vIHRoZSBkZWZhdWx0IGZsZXhib3ggcm93IG9yaWVudGF0aW9uLiBSZXF1aXJlcyB0aGUgdXNlIG9mIGBmbGV4LXdyYXA6IHdyYXBgXG4vLyBvbiB0aGUgYC5uYXZiYXJgIHBhcmVudC5cbi5uYXZiYXItY29sbGFwc2Uge1xuICBmbGV4LWJhc2lzOiAxMDAlO1xuICBmbGV4LWdyb3c6IDE7XG4gIC8vIEZvciBhbHdheXMgZXhwYW5kZWQgb3IgZXh0cmEgZnVsbCBuYXZiYXJzLCBlbnN1cmUgY29udGVudCBhbGlnbnMgaXRzZWxmXG4gIC8vIHByb3Blcmx5IHZlcnRpY2FsbHkuIENhbiBiZSBlYXNpbHkgb3ZlcnJpZGRlbiB3aXRoIGZsZXggdXRpbGl0aWVzLlxuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4vLyBCdXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBuYXZiYXIgd2hlbiBpbiBpdHMgY29sbGFwc2VkIHN0YXRlXG4ubmF2YmFyLXRvZ2dsZXIge1xuICBwYWRkaW5nOiAkbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15ICRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJG5hdmJhci10b2dnbGVyLXRyYW5zaXRpb24pO1xuXG4gICY6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwICRuYXZiYXItdG9nZ2xlci1mb2N1cy13aWR0aDtcbiAgfVxufVxuXG4vLyBLZWVwIGFzIGEgc2VwYXJhdGUgZWxlbWVudCBzbyBmb2xrcyBjYW4gZWFzaWx5IG92ZXJyaWRlIGl0IHdpdGggYW5vdGhlciBpY29uXG4vLyBvciBpbWFnZSBmaWxlIGFzIG5lZWRlZC5cbi5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMS41ZW07XG4gIGhlaWdodDogMS41ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xufVxuXG4ubmF2YmFyLW5hdi1zY3JvbGwge1xuICBtYXgtaGVpZ2h0OiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9c2Nyb2xsLWhlaWdodCwgNzV2aCk7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItZXhwYW5kLWxvb3Bcbi8vIEdlbmVyYXRlIHNlcmllcyBvZiBgLm5hdmJhci1leHBhbmQtKmAgcmVzcG9uc2l2ZSBjbGFzc2VzIGZvciBjb25maWd1cmluZ1xuLy8gd2hlcmUgeW91ciBuYXZiYXIgY29sbGFwc2VzLlxuLm5hdmJhci1leHBhbmQge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJG5leHQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL3NlbGVjdG9yLW5vLXVuaW9uLWNsYXNzLW5hbWVcbiAgICAmI3skaW5maXh9IHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5leHQpIHtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgICAgICAubmF2YmFyLW5hdiB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItbmF2LXNjcm9sbCB7XG4gICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5vZmZjYW52YXMtaGVhZGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLm9mZmNhbnZhcyB7XG4gICAgICAgICAgcG9zaXRpb246IGluaGVyaXQ7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHotaW5kZXg6IDEwMDA7XG4gICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihub25lKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgLm9mZmNhbnZhcy10b3AsXG4gICAgICAgIC5vZmZjYW52YXMtYm90dG9tIHtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLm9mZmNhbnZhcy1ib2R5IHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIG92ZXJmbG93LXk6IHZpc2libGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLWV4cGFuZC1sb29wXG5cbi8vIE5hdmJhciB0aGVtZXNcbi8vXG4vLyBTdHlsZXMgZm9yIHN3aXRjaGluZyBiZXR3ZWVuIG5hdmJhcnMgd2l0aCBsaWdodCBvciBkYXJrIGJhY2tncm91bmQuXG5cbi8vIERhcmsgbGlua3MgYWdhaW5zdCBhIGxpZ2h0IGJhY2tncm91bmRcbi5uYXZiYXItbGlnaHQge1xuICAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1icmFuZC1jb2xvcjtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLW5hdiB7XG4gICAgLm5hdi1saW5rIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNob3cgPiAubmF2LWxpbmssXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyIHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZyk7XG4gIH1cblxuICAubmF2YmFyLXRleHQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuXG4gICAgYSxcbiAgICBhOmhvdmVyLFxuICAgIGE6Zm9jdXMgIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLy8gV2hpdGUgbGlua3MgYWdhaW5zdCBhIGRhcmsgYmFja2dyb3VuZFxuLm5hdmJhci1kYXJrIHtcbiAgLm5hdmJhci1icmFuZCB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1icmFuZC1jb2xvcjtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItbmF2IHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2hvdyA+IC5uYXYtbGluayxcbiAgICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmcpO1xuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuICAgIGEsXG4gICAgYTpob3ZlcixcbiAgICBhOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uY2FyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLXdpZHRoOiAwOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjI3NDAjaXNzdWVjb21tZW50LTMwNTg2ODEwNlxuICBoZWlnaHQ6ICRjYXJkLWhlaWdodDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBib3JkZXItYm94O1xuICBib3JkZXI6ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGNhcmQtYm94LXNoYWRvdyk7XG5cbiAgPiBociB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgPiAubGlzdC1ncm91cCB7XG4gICAgYm9yZGVyLXRvcDogaW5oZXJpdDtcbiAgICBib3JkZXItYm90dG9tOiBpbmhlcml0O1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkICB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgLy8gRHVlIHRvIHNwZWNpZmljaXR5IG9mIHRoZSBhYm92ZSBzZWxlY3RvciAoYC5jYXJkID4gLmxpc3QtZ3JvdXBgKSwgd2UgbXVzdFxuICAvLyB1c2UgYSBjaGlsZCBzZWxlY3RvciBoZXJlIHRvIHByZXZlbnQgZG91YmxlIGJvcmRlcnMuXG4gID4gLmNhcmQtaGVhZGVyICsgLmxpc3QtZ3JvdXAsXG4gID4gLmxpc3QtZ3JvdXAgKyAuY2FyZC1mb290ZXIge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cblxuLmNhcmQtYm9keSB7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBmb3IgZGVja3MgYW5kIGdyb3VwcyBzbyB0aGF0IGNhcmQgYmxvY2tzIHRha2UgdXBcbiAgLy8gYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZSwgZW5zdXJpbmcgZm9vdGVycyBhcmUgYWxpZ25lZCB0byB0aGUgYm90dG9tLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG4gIGNvbG9yOiAkY2FyZC1jb2xvcjtcbn1cblxuLmNhcmQtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAkY2FyZC10aXRsZS1zcGFjZXIteTtcbn1cblxuLmNhcmQtc3VidGl0bGUge1xuICBtYXJnaW4tdG9wOiAtJGNhcmQtdGl0bGUtc3BhY2VyLXkgKiAuNTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtdGV4dDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtbGluayB7XG4gICY6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICB9XG5cbiAgKyAuY2FyZC1saW5rIHtcbiAgICBtYXJnaW4tbGVmdDogJGNhcmQtc3BhY2VyLXg7XG4gIH1cbn1cblxuLy9cbi8vIE9wdGlvbmFsIHRleHR1YWwgY2Fwc1xuLy9cblxuLmNhcmQtaGVhZGVyIHtcbiAgcGFkZGluZzogJGNhcmQtY2FwLXBhZGRpbmcteSAkY2FyZC1jYXAtcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZW1vdmVzIHRoZSBkZWZhdWx0IG1hcmdpbi1ib3R0b20gb2YgPGhOPlxuICBjb2xvcjogJGNhcmQtY2FwLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1jYXAtYmc7XG4gIGJvcmRlci1ib3R0b206ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgMCAwKTtcbiAgfVxufVxuXG4uY2FyZC1mb290ZXIge1xuICBwYWRkaW5nOiAkY2FyZC1jYXAtcGFkZGluZy15ICRjYXJkLWNhcC1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkY2FyZC1jYXAtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWNhcC1iZztcbiAgYm9yZGVyLXRvcDogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAwICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gIH1cbn1cblxuXG4vL1xuLy8gSGVhZGVyIG5hdnNcbi8vXG5cbi5jYXJkLWhlYWRlci10YWJzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtJGNhcmQtY2FwLXBhZGRpbmcteCAqIC41O1xuICBtYXJnaW4tYm90dG9tOiAtJGNhcmQtY2FwLXBhZGRpbmcteTtcbiAgbWFyZ2luLWxlZnQ6IC0kY2FyZC1jYXAtcGFkZGluZy14ICogLjU7XG4gIGJvcmRlci1ib3R0b206IDA7XG5cbiAgQGlmICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZyAhPSAkY2FyZC1iZyB7XG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1iZztcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjYXJkLWJnO1xuICAgIH1cbiAgfVxufVxuXG4uY2FyZC1oZWFkZXItcGlsbHMge1xuICBtYXJnaW4tcmlnaHQ6IC0kY2FyZC1jYXAtcGFkZGluZy14ICogLjU7XG4gIG1hcmdpbi1sZWZ0OiAtJGNhcmQtY2FwLXBhZGRpbmcteCAqIC41O1xufVxuXG4vLyBDYXJkIGltYWdlXG4uY2FyZC1pbWctb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiAkY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIHdpZHRoOiAxMDAlOyAvLyBSZXF1aXJlZCBiZWNhdXNlIHdlIHVzZSBmbGV4Ym94IGFuZCB0aGlzIGluaGVyZW50bHkgYXBwbGllcyBhbGlnbi1zZWxmOiBzdHJldGNoXG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy10b3Age1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG5cbi8vXG4vLyBDYXJkIGdyb3Vwc1xuLy9cblxuLmNhcmQtZ3JvdXAge1xuICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXG4gIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gID4gLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWdyb3VwLW1hcmdpbjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAgIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gICAgPiAuY2FyZCB7XG4gICAgICAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICsgLmNhcmQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICB9XG5cbiAgICAgIC8vIEhhbmRsZSByb3VuZGVkIGNvcm5lcnNcbiAgICAgIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1zdGFydC1yYWRpdXMoMCk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2FyZC1pbWctYm90dG9tLFxuICAgICAgICAgIC5jYXJkLWZvb3RlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYWNjb3JkaW9uLWJ1dHRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteSAkYWNjb3JkaW9uLWJ1dHRvbi1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLWJhc2UpO1xuICBjb2xvcjogJGFjY29yZGlvbi1idXR0b24tY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIFJlc2V0IGJ1dHRvbiBzdHlsZVxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWNjb3JkaW9uLWJ1dHRvbi1iZztcbiAgYm9yZGVyOiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICBvdmVyZmxvdy1hbmNob3I6IG5vbmU7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGFjY29yZGlvbi10cmFuc2l0aW9uKTtcblxuICAmOm5vdCguY29sbGFwc2VkKSB7XG4gICAgY29sb3I6ICRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtYmc7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAoJGFjY29yZGlvbi1ib3JkZXItd2lkdGggKiAtMSkgMCAkYWNjb3JkaW9uLWJvcmRlci1jb2xvcjtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWljb24pO1xuICAgICAgdHJhbnNmb3JtOiAkYWNjb3JkaW9uLWljb24tdHJhbnNmb3JtO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFjY29yZGlvbiBpY29uXG4gICY6OmFmdGVyIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICB3aWR0aDogJGFjY29yZGlvbi1pY29uLXdpZHRoO1xuICAgIGhlaWdodDogJGFjY29yZGlvbi1pY29uLXdpZHRoO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkYWNjb3JkaW9uLWJ1dHRvbi1pY29uKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogJGFjY29yZGlvbi1pY29uLXdpZHRoO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGFjY29yZGlvbi1pY29uLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgei1pbmRleDogMjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIHotaW5kZXg6IDM7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWNjb3JkaW9uLWJ1dHRvbi1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAkYWNjb3JkaW9uLWJ1dHRvbi1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG59XG5cbi5hY2NvcmRpb24taGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmFjY29yZGlvbi1pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGFjY29yZGlvbi1iZztcbiAgYm9yZGVyOiAkYWNjb3JkaW9uLWJvcmRlci13aWR0aCBzb2xpZCAkYWNjb3JkaW9uLWJvcmRlci1jb2xvcjtcblxuICAmOmZpcnN0LW9mLXR5cGUge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRhY2NvcmRpb24tYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkYWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuXG4gICY6bm90KDpmaXJzdC1vZi10eXBlKSB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxuXG4gIC8vIE9ubHkgc2V0IGEgYm9yZGVyLXJhZGl1cyBvbiB0aGUgbGFzdCBpdGVtIGlmIHRoZSBhY2NvcmRpb24gaXMgY29sbGFwc2VkXG4gICY6bGFzdC1vZi10eXBlIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkYWNjb3JkaW9uLWJvcmRlci1yYWRpdXMpO1xuXG4gICAgLmFjY29yZGlvbi1idXR0b24ge1xuICAgICAgJi5jb2xsYXBzZWQge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkYWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5hY2NvcmRpb24tY29sbGFwc2Uge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGFjY29yZGlvbi1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cbn1cblxuLmFjY29yZGlvbi1ib2R5IHtcbiAgcGFkZGluZzogJGFjY29yZGlvbi1ib2R5LXBhZGRpbmcteSAkYWNjb3JkaW9uLWJvZHktcGFkZGluZy14O1xufVxuXG5cbi8vIEZsdXNoIGFjY29yZGlvbiBpdGVtc1xuLy9cbi8vIFJlbW92ZSBib3JkZXJzIGFuZCBib3JkZXItcmFkaXVzIHRvIGtlZXAgYWNjb3JkaW9uIGl0ZW1zIGVkZ2UtdG8tZWRnZS5cblxuLmFjY29yZGlvbi1mbHVzaCB7XG4gIC5hY2NvcmRpb24tY29sbGFwc2Uge1xuICAgIGJvcmRlci13aWR0aDogMDtcbiAgfVxuXG4gIC5hY2NvcmRpb24taXRlbSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHsgYm9yZGVyLXRvcDogMDsgfVxuICAgICY6bGFzdC1jaGlsZCB7IGJvcmRlci1ib3R0b206IDA7IH1cblxuICAgIC5hY2NvcmRpb24tYnV0dG9uIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgfVxuICB9XG59XG4iLCIuYnJlYWRjcnVtYiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZzogJGJyZWFkY3J1bWItcGFkZGluZy15ICRicmVhZGNydW1iLXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRicmVhZGNydW1iLWZvbnQtc2l6ZSk7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmVhZGNydW1iLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRicmVhZGNydW1iLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uYnJlYWRjcnVtYi1pdGVtIHtcbiAgLy8gVGhlIHNlcGFyYXRvciBiZXR3ZWVuIGJyZWFkY3J1bWJzIChieSBkZWZhdWx0LCBhIGZvcndhcmQtc2xhc2g6IFwiL1wiKVxuICArIC5icmVhZGNydW1iLWl0ZW0ge1xuICAgIHBhZGRpbmctbGVmdDogJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgZmxvYXQ6IGxlZnQ7IC8vIFN1cHByZXNzIGlubGluZSBzcGFjaW5ncyBhbmQgdW5kZXJsaW5pbmcgb2YgdGhlIHNlcGFyYXRvclxuICAgICAgcGFkZGluZy1yaWdodDogJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXg7XG4gICAgICBjb2xvcjogJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjtcbiAgICAgIGNvbnRlbnQ6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1icmVhZGNydW1iLWRpdmlkZXIsIGVzY2FwZS1zdmcoJGJyZWFkY3J1bWItZGl2aWRlcikpICN7XCIvKiBydGw6XCJ9IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1icmVhZGNydW1iLWRpdmlkZXIsIGVzY2FwZS1zdmcoJGJyZWFkY3J1bWItZGl2aWRlci1mbGlwcGVkKSkgI3tcIiovXCJ9O1xuICAgIH1cbiAgfVxuXG4gICYuYWN0aXZlIHtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yO1xuICB9XG59XG4iLCIucGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbn1cblxuLnBhZ2UtbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAkcGFnaW5hdGlvbi1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1iZztcbiAgYm9yZGVyOiAkcGFnaW5hdGlvbi1ib3JkZXItd2lkdGggc29saWQgJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRwYWdpbmF0aW9uLXRyYW5zaXRpb24pO1xuXG4gICY6aG92ZXIge1xuICAgIHotaW5kZXg6IDI7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgei1pbmRleDogMztcbiAgICBjb2xvcjogJHBhZ2luYXRpb24tZm9jdXMtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tZm9jdXMtYmc7XG4gICAgb3V0bGluZTogJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTtcbiAgICBib3gtc2hhZG93OiAkcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG59XG5cbi5wYWdlLWl0ZW0ge1xuICAmOm5vdCg6Zmlyc3QtY2hpbGQpIC5wYWdlLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiAkcGFnaW5hdGlvbi1tYXJnaW4tc3RhcnQ7XG4gIH1cblxuICAmLmFjdGl2ZSAucGFnZS1saW5rIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJHBhZ2luYXRpb24tYWN0aXZlLWJnKTtcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmLmRpc2FibGVkIC5wYWdlLWxpbmsge1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1iZztcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjtcbiAgfVxufVxuXG5cbi8vXG4vLyBTaXppbmdcbi8vXG5AaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgsIG51bGwsICRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMpO1xuXG4ucGFnaW5hdGlvbi1sZyB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFnaW5hdGlvbi1wYWRkaW5nLXktbGcsICRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZywgJGZvbnQtc2l6ZS1sZywgJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5wYWdpbmF0aW9uLXNtIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbSwgJHBhZ2luYXRpb24tcGFkZGluZy14LXNtLCAkZm9udC1zaXplLXNtLCAkcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLXNtKTtcbn1cbiIsIi8vIFBhZ2luYXRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBhZ2luYXRpb24tbWl4aW5cbkBtaXhpbiBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGJvcmRlci1yYWRpdXMpIHtcbiAgLnBhZ2UtbGluayB7XG4gICAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgfVxuXG4gIC5wYWdlLWl0ZW0ge1xuICAgIEBpZiAkcGFnaW5hdGlvbi1tYXJnaW4tc3RhcnQgPT0gKC0kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGgpIHtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItc3RhcnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItZW5kLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vQWRkIGJvcmRlci1yYWRpdXMgdG8gYWxsIHBhZ2VMaW5rcyBpbiBjYXNlIHRoZXkgaGF2ZSBsZWZ0IG1hcmdpblxuICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBwYWdpbmF0aW9uLW1peGluXG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gUmVxdWlyZXMgb25lIG9mIHRoZSBjb250ZXh0dWFsLCBjb2xvciBtb2RpZmllciBjbGFzc2VzIGZvciBgY29sb3JgIGFuZFxuLy8gYGJhY2tncm91bmQtY29sb3JgLlxuXG4uYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6ICRiYWRnZS1wYWRkaW5nLXkgJGJhZGdlLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRiYWRnZS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGJhZGdlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRiYWRnZS1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJhZGdlLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZygpO1xuXG4gIC8vIEVtcHR5IGJhZGdlcyBjb2xsYXBzZSBhdXRvbWF0aWNhbGx5XG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLy8gUXVpY2sgZml4IGZvciBiYWRnZXMgaW4gYnV0dG9uc1xuLmJ0biAuYmFkZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTFweDtcbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmFsZXJ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZy15ICRhbGVydC1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206ICRhbGVydC1tYXJnaW4tYm90dG9tO1xuICBib3JkZXI6ICRhbGVydC1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGFsZXJ0LWJvcmRlci1yYWRpdXMpO1xufVxuXG4vLyBIZWFkaW5ncyBmb3IgbGFyZ2VyIGFsZXJ0c1xuLmFsZXJ0LWhlYWRpbmcge1xuICAvLyBTcGVjaWZpZWQgdG8gcHJldmVudCBjb25mbGljdHMgb2YgY2hhbmdpbmcgJGhlYWRpbmdzLWNvbG9yXG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4vLyBQcm92aWRlIGNsYXNzIGZvciBsaW5rcyB0aGF0IG1hdGNoIGFsZXJ0c1xuLmFsZXJ0LWxpbmsge1xuICBmb250LXdlaWdodDogJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ7XG59XG5cblxuLy8gRGlzbWlzc2libGUgYWxlcnRzXG4vL1xuLy8gRXhwYW5kIHRoZSByaWdodCBwYWRkaW5nIGFuZCBhY2NvdW50IGZvciB0aGUgY2xvc2UgYnV0dG9uJ3MgcG9zaXRpb25pbmcuXG5cbi5hbGVydC1kaXNtaXNzaWJsZSB7XG4gIHBhZGRpbmctcmlnaHQ6ICRhbGVydC1kaXNtaXNzaWJsZS1wYWRkaW5nLXI7XG5cbiAgLy8gQWRqdXN0IGNsb3NlIGxpbmsgcG9zaXRpb25cbiAgLmJ0bi1jbG9zZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiAkc3RyZXRjaGVkLWxpbmstei1pbmRleCArIDE7XG4gICAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmcteSAqIDEuMjUgJGFsZXJ0LXBhZGRpbmcteDtcbiAgfVxufVxuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBhbGVydC1tb2RpZmllcnNcbi8vIEdlbmVyYXRlIGNvbnRleHR1YWwgbW9kaWZpZXIgY2xhc3NlcyBmb3IgY29sb3JpemluZyB0aGUgYWxlcnQuXG5cbkBlYWNoICRzdGF0ZSwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAkYWxlcnQtYmFja2dyb3VuZDogc2hpZnQtY29sb3IoJHZhbHVlLCAkYWxlcnQtYmctc2NhbGUpO1xuICAkYWxlcnQtYm9yZGVyOiBzaGlmdC1jb2xvcigkdmFsdWUsICRhbGVydC1ib3JkZXItc2NhbGUpO1xuICAkYWxlcnQtY29sb3I6IHNoaWZ0LWNvbG9yKCR2YWx1ZSwgJGFsZXJ0LWNvbG9yLXNjYWxlKTtcbiAgQGlmIChjb250cmFzdC1yYXRpbygkYWxlcnQtYmFja2dyb3VuZCwgJGFsZXJ0LWNvbG9yKSA8ICRtaW4tY29udHJhc3QtcmF0aW8pIHtcbiAgICAkYWxlcnQtY29sb3I6IG1peCgkdmFsdWUsIGNvbG9yLWNvbnRyYXN0KCRhbGVydC1iYWNrZ3JvdW5kKSwgYWJzKCRhbGVydC1jb2xvci1zY2FsZSkpO1xuICB9XG4gIC5hbGVydC0jeyRzdGF0ZX0ge1xuICAgIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQoJGFsZXJ0LWJhY2tncm91bmQsICRhbGVydC1ib3JkZXIsICRhbGVydC1jb2xvcik7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgYWxlcnQtbW9kaWZpZXJzXG4iLCIvLyBzY3NzLWRvY3Mtc3RhcnQgYWxlcnQtdmFyaWFudC1taXhpblxuQG1peGluIGFsZXJ0LXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICRjb2xvcikge1xuICBjb2xvcjogJGNvbG9yO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZygkYmFja2dyb3VuZCk7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcblxuICAuYWxlcnQtbGluayB7XG4gICAgY29sb3I6IHNoYWRlLWNvbG9yKCRjb2xvciwgMjAlKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBhbGVydC12YXJpYW50LW1peGluXG4iLCIvLyBEaXNhYmxlIGFuaW1hdGlvbiBpZiB0cmFuc2l0aW9ucyBhcmUgZGlzYWJsZWRcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHByb2dyZXNzLWtleWZyYW1lc1xuQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICBAa2V5ZnJhbWVzIHByb2dyZXNzLWJhci1zdHJpcGVzIHtcbiAgICAwJSB7IGJhY2tncm91bmQtcG9zaXRpb24teDogJHByb2dyZXNzLWhlaWdodDsgfVxuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIHByb2dyZXNzLWtleWZyYW1lc1xuXG4ucHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6ICRwcm9ncmVzcy1oZWlnaHQ7XG4gIG92ZXJmbG93OiBoaWRkZW47IC8vIGZvcmNlIHJvdW5kZWQgY29ybmVycyBieSBjcm9wcGluZyBpdFxuICBAaW5jbHVkZSBmb250LXNpemUoJHByb2dyZXNzLWZvbnQtc2l6ZSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHByb2dyZXNzLWJveC1zaGFkb3cpO1xufVxuXG4ucHJvZ3Jlc3MtYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iYXItYmc7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHByb2dyZXNzLWJhci10cmFuc2l0aW9uKTtcbn1cblxuLnByb2dyZXNzLWJhci1zdHJpcGVkIHtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtc3RyaXBlZCgpO1xuICBiYWNrZ3JvdW5kLXNpemU6ICRwcm9ncmVzcy1oZWlnaHQgJHByb2dyZXNzLWhlaWdodDtcbn1cblxuQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAucHJvZ3Jlc3MtYmFyLWFuaW1hdGVkIHtcbiAgICBhbmltYXRpb246ICRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZyBwcm9ncmVzcy1iYXItc3RyaXBlcztcblxuICAgIEBpZiAkZW5hYmxlLXJlZHVjZWQtbW90aW9uIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBFYXNpbHkgdXNhYmxlIG9uIDx1bD4sIDxvbD4sIG9yIDxkaXY+LlxuXG4ubGlzdC1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgLy8gTm8gbmVlZCB0byBzZXQgbGlzdC1zdHlsZTogbm9uZTsgc2luY2UgLmxpc3QtZ3JvdXAtaXRlbSBpcyBibG9jayBsZXZlbFxuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIHJlc2V0IHBhZGRpbmcgYmVjYXVzZSB1bCBhbmQgb2xcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmxpc3QtZ3JvdXAtbnVtYmVyZWQge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIGNvdW50ZXItcmVzZXQ6IHNlY3Rpb247XG5cbiAgPiBsaTo6YmVmb3JlIHtcbiAgICAvLyBJbmNyZW1lbnRzIG9ubHkgdGhpcyBpbnN0YW5jZSBvZiB0aGUgc2VjdGlvbiBjb3VudGVyXG4gICAgY29udGVudDogY291bnRlcnMoc2VjdGlvbiwgXCIuXCIpIFwiLiBcIjtcbiAgICBjb3VudGVyLWluY3JlbWVudDogc2VjdGlvbjtcbiAgfVxufVxuXG5cbi8vIEludGVyYWN0aXZlIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2UgYW5jaG9yIG9yIGJ1dHRvbiBlbGVtZW50cyBpbnN0ZWFkIG9mIGBsaWBzIG9yIGBkaXZgcyB0byBjcmVhdGUgaW50ZXJhY3RpdmVcbi8vIGxpc3QgaXRlbXMuIEluY2x1ZGVzIGFuIGV4dHJhIGAuYWN0aXZlYCBtb2RpZmllciBjbGFzcyBmb3Igc2VsZWN0ZWQgaXRlbXMuXG5cbi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gcyAoYW5jaG9ycyBiZWNvbWUgMTAwJSBieSBkZWZhdWx0IHRob3VnaClcbiAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGluaGVyaXQpXG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgei1pbmRleDogMTsgLy8gUGxhY2UgaG92ZXIvZm9jdXMgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWhvdmVyLWJnO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc7XG4gIH1cbn1cblxuXG4vLyBJbmRpdmlkdWFsIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2Ugb24gYGxpYHMgb3IgYGRpdmBzIHdpdGhpbiB0aGUgYC5saXN0LWdyb3VwYCBwYXJlbnQuXG5cbi5saXN0LWdyb3VwLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteSAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDtcbiAgY29sb3I6ICRsaXN0LWdyb3VwLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWJnO1xuICBib3JkZXI6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aCBzb2xpZCAkbGlzdC1ncm91cC1ib3JkZXItY29sb3I7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoaW5oZXJpdCk7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKGluaGVyaXQpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWJnO1xuICB9XG5cbiAgLy8gSW5jbHVkZSBib3RoIGhlcmUgZm9yIGA8YT5gcyBhbmQgYDxidXR0b24+YHNcbiAgJi5hY3RpdmUge1xuICAgIHotaW5kZXg6IDI7IC8vIFBsYWNlIGFjdGl2ZSBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJiArICYge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBtYXJnaW4tdG9wOiAtJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEhvcml6b250YWxcbi8vXG4vLyBDaGFuZ2UgdGhlIGxheW91dCBvZiBsaXN0IGdyb3VwIGl0ZW1zIGZyb20gdmVydGljYWwgKGRlZmF1bHQpIHRvIGhvcml6b250YWwuXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5saXN0LWdyb3VwLWhvcml6b250YWwjeyRpbmZpeH0ge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgPiAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1zdGFydC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1lbmQtcmFkaXVzKDApO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLWVuZC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1zdGFydC1yYWRpdXMoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICsgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuXG4gICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIEZsdXNoIGxpc3QgaXRlbXNcbi8vXG4vLyBSZW1vdmUgYm9yZGVycyBhbmQgYm9yZGVyLXJhZGl1cyB0byBrZWVwIGxpc3QgZ3JvdXAgaXRlbXMgZWRnZS10by1lZGdlLiBNb3N0XG4vLyB1c2VmdWwgd2l0aGluIG90aGVyIGNvbXBvbmVudHMgKGUuZy4sIGNhcmRzKS5cblxuLmxpc3QtZ3JvdXAtZmx1c2gge1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuXG4gID4gLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDAgJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgfVxuICB9XG59XG5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGxpc3QtZ3JvdXAtbW9kaWZpZXJzXG4vLyBMaXN0IGdyb3VwIGNvbnRleHR1YWwgdmFyaWFudHNcbi8vXG4vLyBBZGQgbW9kaWZpZXIgY2xhc3NlcyB0byBjaGFuZ2UgdGV4dCBhbmQgYmFja2dyb3VuZCBjb2xvciBvbiBpbmRpdmlkdWFsIGl0ZW1zLlxuLy8gT3JnYW5pemF0aW9uYWxseSwgdGhpcyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIGA6aG92ZXJgIHN0YXRlcy5cblxuQGVhY2ggJHN0YXRlLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICRsaXN0LWdyb3VwLXZhcmlhbnQtYmc6IHNoaWZ0LWNvbG9yKCR2YWx1ZSwgJGxpc3QtZ3JvdXAtaXRlbS1iZy1zY2FsZSk7XG4gICRsaXN0LWdyb3VwLXZhcmlhbnQtY29sb3I6IHNoaWZ0LWNvbG9yKCR2YWx1ZSwgJGxpc3QtZ3JvdXAtaXRlbS1jb2xvci1zY2FsZSk7XG4gIEBpZiAoY29udHJhc3QtcmF0aW8oJGxpc3QtZ3JvdXAtdmFyaWFudC1iZywgJGxpc3QtZ3JvdXAtdmFyaWFudC1jb2xvcikgPCAkbWluLWNvbnRyYXN0LXJhdGlvKSB7XG4gICAgJGxpc3QtZ3JvdXAtdmFyaWFudC1jb2xvcjogbWl4KCR2YWx1ZSwgY29sb3ItY29udHJhc3QoJGxpc3QtZ3JvdXAtdmFyaWFudC1iZyksIGFicygkbGlzdC1ncm91cC1pdGVtLWNvbG9yLXNjYWxlKSk7XG4gIH1cblxuICBAaW5jbHVkZSBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkc3RhdGUsICRsaXN0LWdyb3VwLXZhcmlhbnQtYmcsICRsaXN0LWdyb3VwLXZhcmlhbnQtY29sb3IpO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBsaXN0LWdyb3VwLW1vZGlmaWVyc1xuIiwiLy8gTGlzdCBHcm91cHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGxpc3QtZ3JvdXAtbWl4aW5cbkBtaXhpbiBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkY29sb3IpIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgICAmLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBzaGFkZS1jb2xvcigkYmFja2dyb3VuZCwgMTAlKTtcbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBsaXN0LWdyb3VwLW1peGluXG4iLCIvLyB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgcHJvcGVydGllcyBpbmNsdWRlZCBmb3IgYnV0dG9uIHZlcnNpb24uXG4vLyBpT1MgcmVxdWlyZXMgdGhlIGJ1dHRvbiBlbGVtZW50IGluc3RlYWQgb2YgYW4gYW5jaG9yIHRhZy5cbi8vIElmIHlvdSB3YW50IHRoZSBhbmNob3IgdmVyc2lvbiwgaXQgcmVxdWlyZXMgYGhyZWY9XCIjXCJgLlxuLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9jbGljayNTYWZhcmlfTW9iaWxlXG5cbi5idG4tY2xvc2Uge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgd2lkdGg6ICRidG4tY2xvc2Utd2lkdGg7XG4gIGhlaWdodDogJGJ0bi1jbG9zZS1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRidG4tY2xvc2UtcGFkZGluZy15ICRidG4tY2xvc2UtcGFkZGluZy14O1xuICBjb2xvcjogJGJ0bi1jbG9zZS1jb2xvcjtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgZXNjYXBlLXN2ZygkYnRuLWNsb3NlLWJnKSBjZW50ZXIgLyAkYnRuLWNsb3NlLXdpZHRoIGF1dG8gbm8tcmVwZWF0OyAvLyBpbmNsdWRlIHRyYW5zcGFyZW50IGZvciBidXR0b24gZWxlbWVudHNcbiAgYm9yZGVyOiAwOyAvLyBmb3IgYnV0dG9uIGVsZW1lbnRzXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoKTtcbiAgb3BhY2l0eTogJGJ0bi1jbG9zZS1vcGFjaXR5O1xuXG4gIC8vIE92ZXJyaWRlIDxhPidzIGhvdmVyIHN0eWxlXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkYnRuLWNsb3NlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvcGFjaXR5OiAkYnRuLWNsb3NlLWhvdmVyLW9wYWNpdHk7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRidG4tY2xvc2UtZm9jdXMtc2hhZG93O1xuICAgIG9wYWNpdHk6ICRidG4tY2xvc2UtZm9jdXMtb3BhY2l0eTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIG9wYWNpdHk6ICRidG4tY2xvc2UtZGlzYWJsZWQtb3BhY2l0eTtcbiAgfVxufVxuXG4uYnRuLWNsb3NlLXdoaXRlIHtcbiAgZmlsdGVyOiAkYnRuLWNsb3NlLXdoaXRlLWZpbHRlcjtcbn1cbiIsIi50b2FzdCB7XG4gIHdpZHRoOiAkdG9hc3QtbWF4LXdpZHRoO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkdG9hc3QtZm9udC1zaXplKTtcbiAgY29sb3I6ICR0b2FzdC1jb2xvcjtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICR0b2FzdC1ib3JkZXItd2lkdGggc29saWQgJHRvYXN0LWJvcmRlci1jb2xvcjtcbiAgYm94LXNoYWRvdzogJHRvYXN0LWJveC1zaGFkb3c7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRvYXN0LWJvcmRlci1yYWRpdXMpO1xuXG4gICYuc2hvd2luZyB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gICY6bm90KC5zaG93KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4udG9hc3QtY29udGFpbmVyIHtcbiAgd2lkdGg6IG1heC1jb250ZW50O1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gID4gOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206ICR0b2FzdC1zcGFjaW5nO1xuICB9XG59XG5cbi50b2FzdC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAkdG9hc3QtcGFkZGluZy15ICR0b2FzdC1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkdG9hc3QtaGVhZGVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3I7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlci1ib3R0b206ICR0b2FzdC1ib3JkZXItd2lkdGggc29saWQgJHRvYXN0LWhlYWRlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHN1YnRyYWN0KCR0b2FzdC1ib3JkZXItcmFkaXVzLCAkdG9hc3QtYm9yZGVyLXdpZHRoKSk7XG5cbiAgLmJ0bi1jbG9zZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkdG9hc3QtcGFkZGluZy14ICogLS41O1xuICAgIG1hcmdpbi1sZWZ0OiAkdG9hc3QtcGFkZGluZy14O1xuICB9XG59XG5cbi50b2FzdC1ib2R5IHtcbiAgcGFkZGluZzogJHRvYXN0LXBhZGRpbmcteDsgLy8gYXBwbHkgdG8gYm90aCB2ZXJ0aWNhbCBhbmQgaG9yaXpvbnRhbFxuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG4iLCIvLyAubW9kYWwtb3BlbiAgICAgIC0gYm9keSBjbGFzcyBmb3Iga2lsbGluZyB0aGUgc2Nyb2xsXG4vLyAubW9kYWwgICAgICAgICAgIC0gY29udGFpbmVyIHRvIHNjcm9sbCB3aXRoaW5cbi8vIC5tb2RhbC1kaWFsb2cgICAgLSBwb3NpdGlvbmluZyBzaGVsbCBmb3IgdGhlIGFjdHVhbCBtb2RhbFxuLy8gLm1vZGFsLWNvbnRlbnQgICAtIGFjdHVhbCBtb2RhbCB3LyBiZyBhbmQgY29ybmVycyBhbmQgc3R1ZmZcblxuXG4vLyBDb250YWluZXIgdGhhdCB0aGUgbW9kYWwgc2Nyb2xscyB3aXRoaW5cbi5tb2RhbCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LW1vZGFsO1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIC8vIFByZXZlbnQgQ2hyb21lIG9uIFdpbmRvd3MgZnJvbSBhZGRpbmcgYSBmb2N1cyBvdXRsaW5lLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEwOTUxLlxuICBvdXRsaW5lOiAwO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG9uJ3QgdXNlIGAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7YCBkdWUgdG8gYVxuICAvLyBnbmFybHkgaU9TIFNhZmFyaSBidWc6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTgzNDJcbiAgLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xNzY5NVxufVxuXG4vLyBTaGVsbCBkaXYgdG8gcG9zaXRpb24gdGhlIG1vZGFsIHdpdGggYm90dG9tIHBhZGRpbmdcbi5tb2RhbC1kaWFsb2cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46ICRtb2RhbC1kaWFsb2ctbWFyZ2luO1xuICAvLyBhbGxvdyBjbGlja3MgdG8gcGFzcyB0aHJvdWdoIGZvciBjdXN0b20gY2xpY2sgaGFuZGxpbmcgdG8gY2xvc2UgbW9kYWxcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgLy8gV2hlbiBmYWRpbmcgaW4gdGhlIG1vZGFsLCBhbmltYXRlIGl0IHRvIHNsaWRlIGRvd25cbiAgLm1vZGFsLmZhZGUgJiB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkbW9kYWwtdHJhbnNpdGlvbik7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtZmFkZS10cmFuc2Zvcm07XG4gIH1cbiAgLm1vZGFsLnNob3cgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2hvdy10cmFuc2Zvcm07XG4gIH1cblxuICAvLyBXaGVuIHRyeWluZyB0byBjbG9zZSwgYW5pbWF0ZSBmb2N1cyB0byBzY2FsZVxuICAubW9kYWwubW9kYWwtc3RhdGljICYge1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLXNjYWxlLXRyYW5zZm9ybTtcbiAgfVxufVxuXG4ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICBoZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIC5tb2RhbC1ib2R5IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpO1xufVxuXG4vLyBBY3R1YWwgbW9kYWxcbi5tb2RhbC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB3aWR0aDogMTAwJTsgLy8gRW5zdXJlIGAubW9kYWwtY29udGVudGAgZXh0ZW5kcyB0aGUgZnVsbCB3aWR0aCBvZiB0aGUgcGFyZW50IGAubW9kYWwtZGlhbG9nYFxuICAvLyBjb3VudGVyYWN0IHRoZSBwb2ludGVyLWV2ZW50czogbm9uZTsgaW4gdGhlIC5tb2RhbC1kaWFsb2dcbiAgY29sb3I6ICRtb2RhbC1jb250ZW50LWNvbG9yO1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWNvbnRlbnQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzKTtcbiAgLy8gUmVtb3ZlIGZvY3VzIG91dGxpbmUgZnJvbSBvcGVuZWQgbW9kYWxcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gTW9kYWwgYmFja2dyb3VuZFxuLm1vZGFsLWJhY2tkcm9wIHtcbiAgQGluY2x1ZGUgb3ZlcmxheS1iYWNrZHJvcCgkemluZGV4LW1vZGFsLWJhY2tkcm9wLCAkbW9kYWwtYmFja2Ryb3AtYmcsICRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5KTtcbn1cblxuLy8gTW9kYWwgaGVhZGVyXG4vLyBUb3Agc2VjdGlvbiBvZiB0aGUgbW9kYWwgdy8gdGl0bGUgYW5kIGRpc21pc3Ncbi5tb2RhbC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXNocmluazogMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBQdXQgbW9kYWwgaGVhZGVyIGVsZW1lbnRzICh0aXRsZSBhbmQgZGlzbWlzcykgb24gb3Bwb3NpdGUgZW5kc1xuICBwYWRkaW5nOiAkbW9kYWwtaGVhZGVyLXBhZGRpbmc7XG4gIGJvcmRlci1ib3R0b206ICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzKTtcblxuICAuYnRuLWNsb3NlIHtcbiAgICBwYWRkaW5nOiAoJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkgKiAuNSkgKCRtb2RhbC1oZWFkZXItcGFkZGluZy14ICogLjUpO1xuICAgIG1hcmdpbjogKCRtb2RhbC1oZWFkZXItcGFkZGluZy15ICogLS41KSAoJG1vZGFsLWhlYWRlci1wYWRkaW5nLXggKiAtLjUpICgkbW9kYWwtaGVhZGVyLXBhZGRpbmcteSAqIC0uNSkgYXV0bztcbiAgfVxufVxuXG4vLyBUaXRsZSB0ZXh0IHdpdGhpbiBoZWFkZXJcbi5tb2RhbC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiAkbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ7XG59XG5cbi8vIE1vZGFsIGJvZHlcbi8vIFdoZXJlIGFsbCBtb2RhbCBjb250ZW50IHJlc2lkZXMgKHNpYmxpbmcgb2YgLm1vZGFsLWhlYWRlciBhbmQgLm1vZGFsLWZvb3Rlcilcbi5tb2RhbC1ib2R5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBFbmFibGUgYGZsZXgtZ3JvdzogMWAgc28gdGhhdCB0aGUgYm9keSB0YWtlIHVwIGFzIG11Y2ggc3BhY2UgYXMgcG9zc2libGVcbiAgLy8gd2hlbiB0aGVyZSBzaG91bGQgYmUgYSBmaXhlZCBoZWlnaHQgb24gYC5tb2RhbC1kaWFsb2dgLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG59XG5cbi8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXG4ubW9kYWwtZm9vdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LXNocmluazogMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gdmVydGljYWxseSBjZW50ZXJcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgLy8gUmlnaHQgYWxpZ24gYnV0dG9ucyB3aXRoIGZsZXggcHJvcGVydHkgYmVjYXVzZSB0ZXh0LWFsaWduIGRvZXNuJ3Qgd29yayBvbiBmbGV4IGl0ZW1zXG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nIC0gJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbiAqIC41O1xuICBib3JkZXItdG9wOiAkbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgLy8gUGxhY2UgbWFyZ2luIGJldHdlZW4gZm9vdGVyIGVsZW1lbnRzXG4gIC8vIFRoaXMgc29sdXRpb24gaXMgZmFyIGZyb20gaWRlYWwgYmVjYXVzZSBvZiB0aGUgdW5pdmVyc2FsIHNlbGVjdG9yIHVzYWdlLFxuICAvLyBidXQgaXMgbmVlZGVkIHRvIGZpeCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0ODAwXG4gID4gKiB7XG4gICAgbWFyZ2luOiAkbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVuICogLjU7XG4gIH1cbn1cblxuLy8gU2NhbGUgdXAgdGhlIG1vZGFsXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gIC8vIEF1dG9tYXRpY2FsbHkgc2V0IG1vZGFsJ3Mgd2lkdGggZm9yIGxhcmdlciB2aWV3cG9ydHNcbiAgLm1vZGFsLWRpYWxvZyB7XG4gICAgbWF4LXdpZHRoOiAkbW9kYWwtbWQ7XG4gICAgbWFyZ2luOiAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwIGF1dG87XG4gIH1cblxuICAubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICAgIGhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDIpO1xuICB9XG5cbiAgLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gICAgbWluLWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDIpO1xuICB9XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cCk7XG4gIH1cblxuICAubW9kYWwtc20geyBtYXgtd2lkdGg6ICRtb2RhbC1zbTsgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gIC5tb2RhbC1sZyxcbiAgLm1vZGFsLXhsIHtcbiAgICBtYXgtd2lkdGg6ICRtb2RhbC1sZztcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gIC5tb2RhbC14bCB7IG1heC13aWR0aDogJG1vZGFsLXhsOyB9XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBtb2RhbC1mdWxsc2NyZWVuLWxvb3BcbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAkcG9zdGZpeDogaWYoJGluZml4ICE9IFwiXCIsICRpbmZpeCArIFwiLWRvd25cIiwgXCJcIik7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgLm1vZGFsLWZ1bGxzY3JlZW4jeyRwb3N0Zml4fSB7XG4gICAgICB3aWR0aDogMTAwdnc7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBtYXJnaW46IDA7XG5cbiAgICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgICB9XG5cbiAgICAgIC5tb2RhbC1oZWFkZXIge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgfVxuXG4gICAgICAubW9kYWwtYm9keSB7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICB9XG5cbiAgICAgIC5tb2RhbC1mb290ZXIge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBtb2RhbC1mdWxsc2NyZWVuLWxvb3BcbiIsIi8vIFNoYXJlZCBiZXR3ZWVuIG1vZGFscyBhbmQgb2ZmY2FudmFzZXNcbkBtaXhpbiBvdmVybGF5LWJhY2tkcm9wKCR6aW5kZXgsICRiYWNrZHJvcC1iZywgJGJhY2tkcm9wLW9wYWNpdHkpIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXg7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tkcm9wLWJnO1xuXG4gIC8vIEZhZGUgZm9yIGJhY2tkcm9wXG4gICYuZmFkZSB7IG9wYWNpdHk6IDA7IH1cbiAgJi5zaG93IHsgb3BhY2l0eTogJGJhY2tkcm9wLW9wYWNpdHk7IH1cbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi50b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAkemluZGV4LXRvb2x0aXA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46ICR0b29sdGlwLW1hcmdpbjtcbiAgLy8gT3VyIHBhcmVudCBlbGVtZW50IGNhbiBiZSBhcmJpdHJhcnkgc2luY2UgdG9vbHRpcHMgYXJlIGJ5IGRlZmF1bHQgaW5zZXJ0ZWQgYXMgYSBzaWJsaW5nIG9mIHRoZWlyIHRhcmdldCBlbGVtZW50LlxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxuICBAaW5jbHVkZSByZXNldC10ZXh0KCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkdG9vbHRpcC1mb250LXNpemUpO1xuICAvLyBBbGxvdyBicmVha2luZyB2ZXJ5IGxvbmcgd29yZHMgc28gdGhleSBkb24ndCBvdmVyZmxvdyB0aGUgdG9vbHRpcCdzIGJvdW5kc1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIG9wYWNpdHk6IDA7XG5cbiAgJi5zaG93IHsgb3BhY2l0eTogJHRvb2x0aXAtb3BhY2l0eTsgfVxuXG4gIC50b29sdGlwLWFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtdG9wIHtcbiAgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0IDA7XG5cbiAgLnRvb2x0aXAtYXJyb3cge1xuICAgIGJvdHRvbTogMDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IC0xcHg7XG4gICAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggKiAuNSkgMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1lbmQge1xuICBwYWRkaW5nOiAwICR0b29sdGlwLWFycm93LWhlaWdodDtcblxuICAudG9vbHRpcC1hcnJvdyB7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IC0xcHg7XG4gICAgICBib3JkZXItd2lkdGg6ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAqIC41KSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgKCR0b29sdGlwLWFycm93LXdpZHRoICogLjUpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1ib3R0b20ge1xuICBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgMDtcblxuICAudG9vbHRpcC1hcnJvdyB7XG4gICAgdG9wOiAwO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogLTFweDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggKiAuNSkgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLXN0YXJ0IHtcbiAgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG5cbiAgLnRvb2x0aXAtYXJyb3cge1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAtMXB4O1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHRvb2x0aXAtYXJyb3ctd2lkdGggKiAuNSkgMCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggKiAuNSkgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1hdXRvIHtcbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLXRvcDtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1lbmQ7XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWJvdHRvbTtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLXN0YXJ0O1xuICB9XG59XG5cbi8vIFdyYXBwZXIgZm9yIHRoZSB0b29sdGlwIGNvbnRlbnRcbi50b29sdGlwLWlubmVyIHtcbiAgbWF4LXdpZHRoOiAkdG9vbHRpcC1tYXgtd2lkdGg7XG4gIHBhZGRpbmc6ICR0b29sdGlwLXBhZGRpbmcteSAkdG9vbHRpcC1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkdG9vbHRpcC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9vbHRpcC1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdG9vbHRpcC1ib3JkZXItcmFkaXVzKTtcbn1cbiIsIkBtaXhpbiByZXNldC10ZXh0IHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG8gTk9UIHJlc2V0IGZvbnQtc2l6ZSBvciBvdmVyZmxvdy13cmFwIC8gd29yZC13cmFwLlxuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEZhbGxiYWNrIGZvciB3aGVyZSBgc3RhcnRgIGlzIG5vdCBzdXBwb3J0ZWRcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBsaW5lLWJyZWFrOiBhdXRvO1xufVxuIiwiLnBvcG92ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMCAje1wiLyogcnRsOmlnbm9yZSAqL1wifTtcbiAgei1pbmRleDogJHppbmRleC1wb3BvdmVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAkcG9wb3Zlci1tYXgtd2lkdGg7XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHBvcG92ZXItZm9udC1zaXplKTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHBvcG92ZXIncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcG9wb3Zlci1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgJHBvcG92ZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRwb3BvdmVyLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRwb3BvdmVyLWJveC1zaGFkb3cpO1xuXG4gIC5wb3BvdmVyLWFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci10b3Age1xuICA+IC5wb3BvdmVyLWFycm93IHtcbiAgICBib3R0b206IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpIDA7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBib3R0b206ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLWVuZCB7XG4gID4gLnBvcG92ZXItYXJyb3cge1xuICAgIGxlZnQ6IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGxlZnQ6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgMDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLWJvdHRvbSB7XG4gID4gLnBvcG92ZXItYXJyb3cge1xuICAgIHRvcDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSk7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICB0b3A6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KTtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIFRoaXMgd2lsbCByZW1vdmUgdGhlIHBvcG92ZXItaGVhZGVyJ3MgYm9yZGVyIGp1c3QgYmVsb3cgdGhlIGFycm93XG4gIC5wb3BvdmVyLWhlYWRlcjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLWJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkICRwb3BvdmVyLWhlYWRlci1iZztcbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1zdGFydCB7XG4gID4gLnBvcG92ZXItYXJyb3cge1xuICAgIHJpZ2h0OiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpIDAgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICByaWdodDogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1hdXRvIHtcbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXRvcDtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1lbmQ7XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWJvdHRvbTtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXN0YXJ0O1xuICB9XG59XG5cbi8vIE9mZnNldCB0aGUgcG9wb3ZlciB0byBhY2NvdW50IGZvciB0aGUgcG9wb3ZlciBhcnJvd1xuLnBvcG92ZXItaGVhZGVyIHtcbiAgcGFkZGluZzogJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIFJlYm9vdFxuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1iYXNlKTtcbiAgY29sb3I6ICRwb3BvdmVyLWhlYWRlci1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItaGVhZGVyLWJnO1xuICBib3JkZXItYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgJHBvcG92ZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkcG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzKTtcblxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5wb3BvdmVyLWJvZHkge1xuICBwYWRkaW5nOiAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteSAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteDtcbiAgY29sb3I6ICRwb3BvdmVyLWJvZHktY29sb3I7XG59XG4iLCIvLyBOb3RlcyBvbiB0aGUgY2xhc3Nlczpcbi8vXG4vLyAxLiAuY2Fyb3VzZWwucG9pbnRlci1ldmVudCBzaG91bGQgaWRlYWxseSBiZSBwYW4teSAodG8gYWxsb3cgZm9yIHVzZXJzIHRvIHNjcm9sbCB2ZXJ0aWNhbGx5KVxuLy8gICAgZXZlbiB3aGVuIHRoZWlyIHNjcm9sbCBhY3Rpb24gc3RhcnRlZCBvbiBhIGNhcm91c2VsLCBidXQgZm9yIGNvbXBhdGliaWxpdHkgKHdpdGggRmlyZWZveClcbi8vICAgIHdlJ3JlIHByZXZlbnRpbmcgYWxsIGFjdGlvbnMgaW5zdGVhZFxuLy8gMi4gVGhlIC5jYXJvdXNlbC1pdGVtLXN0YXJ0IGFuZCAuY2Fyb3VzZWwtaXRlbS1lbmQgaXMgdXNlZCB0byBpbmRpY2F0ZSB3aGVyZVxuLy8gICAgdGhlIGFjdGl2ZSBzbGlkZSBpcyBoZWFkaW5nLlxuLy8gMy4gLmFjdGl2ZS5jYXJvdXNlbC1pdGVtIGlzIHRoZSBjdXJyZW50IHNsaWRlLlxuLy8gNC4gLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXN0YXJ0IGFuZCAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tZW5kIGlzIHRoZSBjdXJyZW50XG4vLyAgICBzbGlkZSBpbiBpdHMgaW4tdHJhbnNpdGlvbiBzdGF0ZS4gT25seSBvbmUgb2YgdGhlc2Ugb2NjdXJzIGF0IGEgdGltZS5cbi8vIDUuIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1zdGFydCBhbmQgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLWVuZFxuLy8gICAgaXMgdGhlIHVwY29taW5nIHNsaWRlIGluIHRyYW5zaXRpb24uXG5cbi5jYXJvdXNlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNhcm91c2VsLnBvaW50ZXItZXZlbnQge1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xufVxuXG4uY2Fyb3VzZWwtaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLXRyYW5zaXRpb24pO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4uY2Fyb3VzZWwtaXRlbS1uZXh0LFxuLmNhcm91c2VsLWl0ZW0tcHJldiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKiBydGw6YmVnaW46aWdub3JlICovXG4uY2Fyb3VzZWwtaXRlbS1uZXh0Om5vdCguY2Fyb3VzZWwtaXRlbS1zdGFydCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tZW5kIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1wcmV2Om5vdCguY2Fyb3VzZWwtaXRlbS1lbmQpLFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXN0YXJ0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbn1cblxuLyogcnRsOmVuZDppZ25vcmUgKi9cblxuXG4vL1xuLy8gQWx0ZXJuYXRlIHRyYW5zaXRpb25zXG4vL1xuXG4uY2Fyb3VzZWwtZmFkZSB7XG4gIC5jYXJvdXNlbC1pdGVtIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuICAuY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tc3RhcnQsXG4gIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1lbmQge1xuICAgIHotaW5kZXg6IDE7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1zdGFydCxcbiAgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWVuZCB7XG4gICAgei1pbmRleDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAwcyAkY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbik7XG4gIH1cbn1cblxuXG4vL1xuLy8gTGVmdC9yaWdodCBjb250cm9scyBmb3IgbmF2XG4vL1xuXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDE7XG4gIC8vIFVzZSBmbGV4IGZvciBhbGlnbm1lbnQgKDEtMylcbiAgZGlzcGxheTogZmxleDsgLy8gMS4gYWxsb3cgZmxleCBzdHlsZXNcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gMi4gdmVydGljYWxseSBjZW50ZXIgY29udGVudHNcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IC8vIDMuIGhvcml6b250YWxseSBjZW50ZXIgY29udGVudHNcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBwYWRkaW5nOiAwO1xuICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBvcGFjaXR5OiAkY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5O1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC1jb250cm9sLXRyYW5zaXRpb24pO1xuXG4gIC8vIEhvdmVyL2ZvY3VzIHN0YXRlXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgb3V0bGluZTogMDtcbiAgICBvcGFjaXR5OiAkY2Fyb3VzZWwtY29udHJvbC1ob3Zlci1vcGFjaXR5O1xuICB9XG59XG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2IHtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgkYmxhY2ssIC4yNSksIHJnYmEoJGJsYWNrLCAuMDAxKSksIG51bGwpO1xufVxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHJpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBpZigkZW5hYmxlLWdyYWRpZW50cywgbGluZWFyLWdyYWRpZW50KDI3MGRlZywgcmdiYSgkYmxhY2ssIC4yNSksIHJnYmEoJGJsYWNrLCAuMDAxKSksIG51bGwpO1xufVxuXG4vLyBJY29ucyBmb3Igd2l0aGluXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoO1xuICBoZWlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG59XG5cbi8qIHJ0bDpvcHRpb25zOiB7XG4gIFwiYXV0b1JlbmFtZVwiOiB0cnVlLFxuICBcInN0cmluZ01hcFwiOlsge1xuICAgIFwibmFtZVwiICAgIDogXCJwcmV2LW5leHRcIixcbiAgICBcInNlYXJjaFwiICA6IFwicHJldlwiLFxuICAgIFwicmVwbGFjZVwiIDogXCJuZXh0XCJcbiAgfSBdXG59ICovXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZyk7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZyk7XG59XG5cbi8vIE9wdGlvbmFsIGluZGljYXRvciBwaXBzL2NvbnRyb2xzXG4vL1xuLy8gQWRkIGEgY29udGFpbmVyIChzdWNoIGFzIGEgbGlzdCkgd2l0aCB0aGUgZm9sbG93aW5nIGNsYXNzIGFuZCBhZGQgYW4gaXRlbSAoaWRlYWxseSBhIGZvY3VzYWJsZSBjb250cm9sLFxuLy8gbGlrZSBhIGJ1dHRvbikgd2l0aCBkYXRhLWJzLXRhcmdldCBmb3IgZWFjaCBzbGlkZSB5b3VyIGNhcm91c2VsIGhvbGRzLlxuXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMjtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDA7XG4gIC8vIFVzZSB0aGUgLmNhcm91c2VsLWNvbnRyb2wncyB3aWR0aCBhcyBtYXJnaW4gc28gd2UgZG9uJ3Qgb3ZlcmxheSB0aG9zZVxuICBtYXJnaW4tcmlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgW2RhdGEtYnMtdGFyZ2V0XSB7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6ICRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg7XG4gICAgaGVpZ2h0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhlaWdodDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyO1xuICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgYm9yZGVyOiAwO1xuICAgIC8vIFVzZSB0cmFuc3BhcmVudCBib3JkZXJzIHRvIGluY3JlYXNlIHRoZSBoaXQgYXJlYSBieSAxMHB4IG9uIHRvcCBhbmQgYm90dG9tLlxuICAgIGJvcmRlci10b3A6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIG9wYWNpdHk6ICRjYXJvdXNlbC1pbmRpY2F0b3Itb3BhY2l0eTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbik7XG4gIH1cblxuICAuYWN0aXZlIHtcbiAgICBvcGFjaXR5OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1vcGFjaXR5O1xuICB9XG59XG5cblxuLy8gT3B0aW9uYWwgY2FwdGlvbnNcbi8vXG4vL1xuXG4uY2Fyb3VzZWwtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6ICgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpICogLjU7XG4gIGJvdHRvbTogJGNhcm91c2VsLWNhcHRpb24tc3BhY2VyO1xuICBsZWZ0OiAoMTAwJSAtICRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoKSAqIC41O1xuICBwYWRkaW5nLXRvcDogJGNhcm91c2VsLWNhcHRpb24tcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJGNhcm91c2VsLWNhcHRpb24tcGFkZGluZy15O1xuICBjb2xvcjogJGNhcm91c2VsLWNhcHRpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLy8gRGFyayBtb2RlIGNhcm91c2VsXG5cbi5jYXJvdXNlbC1kYXJrIHtcbiAgLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLFxuICAuY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICAgIGZpbHRlcjogJGNhcm91c2VsLWRhcmstY29udHJvbC1pY29uLWZpbHRlcjtcbiAgfVxuXG4gIC5jYXJvdXNlbC1pbmRpY2F0b3JzIFtkYXRhLWJzLXRhcmdldF0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJvdXNlbC1kYXJrLWluZGljYXRvci1hY3RpdmUtYmc7XG4gIH1cblxuICAuY2Fyb3VzZWwtY2FwdGlvbiB7XG4gICAgY29sb3I6ICRjYXJvdXNlbC1kYXJrLWNhcHRpb24tY29sb3I7XG4gIH1cbn1cbiIsIi8vIHNjc3MtZG9jcy1zdGFydCBjbGVhcmZpeFxuQG1peGluIGNsZWFyZml4KCkge1xuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBjbGVhcmZpeFxuIiwiLy9cbi8vIFJvdGF0aW5nIGJvcmRlclxuLy9cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwaW5uZXItYm9yZGVyLWtleWZyYW1lc1xuQGtleWZyYW1lcyBzcGlubmVyLWJvcmRlciB7XG4gIHRvIHsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKSAje1wiLyogcnRsOmlnbm9yZSAqL1wifTsgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBzcGlubmVyLWJvcmRlci1rZXlmcmFtZXNcblxuLnNwaW5uZXItYm9yZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGg7XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0O1xuICB2ZXJ0aWNhbC1hbGlnbjogJHNwaW5uZXItdmVydGljYWwtYWxpZ247XG4gIGJvcmRlcjogJHNwaW5uZXItYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGFuaW1hdGlvbjogJHNwaW5uZXItYW5pbWF0aW9uLXNwZWVkIGxpbmVhciBpbmZpbml0ZSBzcGlubmVyLWJvcmRlcjtcbn1cblxuLnNwaW5uZXItYm9yZGVyLXNtIHtcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoLXNtO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodC1zbTtcbiAgYm9yZGVyLXdpZHRoOiAkc3Bpbm5lci1ib3JkZXItd2lkdGgtc207XG59XG5cbi8vXG4vLyBHcm93aW5nIGNpcmNsZVxuLy9cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwaW5uZXItZ3Jvdy1rZXlmcmFtZXNcbkBrZXlmcmFtZXMgc3Bpbm5lci1ncm93IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBzcGlubmVyLWdyb3cta2V5ZnJhbWVzXG5cbi5zcGlubmVyLWdyb3cge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aDtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQ7XG4gIHZlcnRpY2FsLWFsaWduOiAkc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb3BhY2l0eTogMDtcbiAgYW5pbWF0aW9uOiAkc3Bpbm5lci1hbmltYXRpb24tc3BlZWQgbGluZWFyIGluZmluaXRlIHNwaW5uZXItZ3Jvdztcbn1cblxuLnNwaW5uZXItZ3Jvdy1zbSB7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aC1zbTtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQtc207XG59XG5cbkBpZiAkZW5hYmxlLXJlZHVjZWQtbW90aW9uIHtcbiAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAuc3Bpbm5lci1ib3JkZXIsXG4gICAgLnNwaW5uZXItZ3JvdyB7XG4gICAgICBhbmltYXRpb24tZHVyYXRpb246ICRzcGlubmVyLWFuaW1hdGlvbi1zcGVlZCAqIDI7XG4gICAgfVxuICB9XG59XG4iLCIub2ZmY2FudmFzIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtb2ZmY2FudmFzO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGNvbG9yOiAkb2ZmY2FudmFzLWNvbG9yO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6ICRvZmZjYW52YXMtYmctY29sb3I7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIG91dGxpbmU6IDA7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJG9mZmNhbnZhcy1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbih0cmFuc2Zvcm0gJG9mZmNhbnZhcy10cmFuc2l0aW9uLWR1cmF0aW9uIGVhc2UtaW4tb3V0KTtcbn1cblxuLm9mZmNhbnZhcy1iYWNrZHJvcCB7XG4gIEBpbmNsdWRlIG92ZXJsYXktYmFja2Ryb3AoJHppbmRleC1vZmZjYW52YXMtYmFja2Ryb3AsICRvZmZjYW52YXMtYmFja2Ryb3AtYmcsICRvZmZjYW52YXMtYmFja2Ryb3Atb3BhY2l0eSk7XG59XG5cbi5vZmZjYW52YXMtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAkb2ZmY2FudmFzLXBhZGRpbmcteSAkb2ZmY2FudmFzLXBhZGRpbmcteDtcblxuICAuYnRuLWNsb3NlIHtcbiAgICBwYWRkaW5nOiAoJG9mZmNhbnZhcy1wYWRkaW5nLXkgKiAuNSkgKCRvZmZjYW52YXMtcGFkZGluZy14ICogLjUpO1xuICAgIG1hcmdpbi10b3A6ICRvZmZjYW52YXMtcGFkZGluZy15ICogLS41O1xuICAgIG1hcmdpbi1yaWdodDogJG9mZmNhbnZhcy1wYWRkaW5nLXggKiAtLjU7XG4gICAgbWFyZ2luLWJvdHRvbTogJG9mZmNhbnZhcy1wYWRkaW5nLXkgKiAtLjU7XG4gIH1cbn1cblxuLm9mZmNhbnZhcy10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiAkb2ZmY2FudmFzLXRpdGxlLWxpbmUtaGVpZ2h0O1xufVxuXG4ub2ZmY2FudmFzLWJvZHkge1xuICBmbGV4LWdyb3c6IDE7XG4gIHBhZGRpbmc6ICRvZmZjYW52YXMtcGFkZGluZy15ICRvZmZjYW52YXMtcGFkZGluZy14O1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4ub2ZmY2FudmFzLXN0YXJ0IHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogJG9mZmNhbnZhcy1ob3Jpem9udGFsLXdpZHRoO1xuICBib3JkZXItcmlnaHQ6ICRvZmZjYW52YXMtYm9yZGVyLXdpZHRoIHNvbGlkICRvZmZjYW52YXMtYm9yZGVyLWNvbG9yO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xufVxuXG4ub2ZmY2FudmFzLWVuZCB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAkb2ZmY2FudmFzLWhvcml6b250YWwtd2lkdGg7XG4gIGJvcmRlci1sZWZ0OiAkb2ZmY2FudmFzLWJvcmRlci13aWR0aCBzb2xpZCAkb2ZmY2FudmFzLWJvcmRlci1jb2xvcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xufVxuXG4ub2ZmY2FudmFzLXRvcCB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogJG9mZmNhbnZhcy12ZXJ0aWNhbC1oZWlnaHQ7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIGJvcmRlci1ib3R0b206ICRvZmZjYW52YXMtYm9yZGVyLXdpZHRoIHNvbGlkICRvZmZjYW52YXMtYm9yZGVyLWNvbG9yO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xufVxuXG4ub2ZmY2FudmFzLWJvdHRvbSB7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6ICRvZmZjYW52YXMtdmVydGljYWwtaGVpZ2h0O1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBib3JkZXItdG9wOiAkb2ZmY2FudmFzLWJvcmRlci13aWR0aCBzb2xpZCAkb2ZmY2FudmFzLWJvcmRlci1jb2xvcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xufVxuXG4ub2ZmY2FudmFzLnNob3cge1xuICB0cmFuc2Zvcm06IG5vbmU7XG59XG4iLCIucGxhY2Vob2xkZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1pbi1oZWlnaHQ6IDFlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiB3YWl0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIG9wYWNpdHk6ICRwbGFjZWhvbGRlci1vcGFjaXR5LW1heDtcblxuICAmLmJ0bjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuXG4vLyBTaXppbmdcbi5wbGFjZWhvbGRlci14cyB7XG4gIG1pbi1oZWlnaHQ6IC42ZW07XG59XG5cbi5wbGFjZWhvbGRlci1zbSB7XG4gIG1pbi1oZWlnaHQ6IC44ZW07XG59XG5cbi5wbGFjZWhvbGRlci1sZyB7XG4gIG1pbi1oZWlnaHQ6IDEuMmVtO1xufVxuXG4vLyBBbmltYXRpb25cbi5wbGFjZWhvbGRlci1nbG93IHtcbiAgLnBsYWNlaG9sZGVyIHtcbiAgICBhbmltYXRpb246IHBsYWNlaG9sZGVyLWdsb3cgMnMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBwbGFjZWhvbGRlci1nbG93IHtcbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAkcGxhY2Vob2xkZXItb3BhY2l0eS1taW47XG4gIH1cbn1cblxuLnBsYWNlaG9sZGVyLXdhdmUge1xuICBtYXNrLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMTMwZGVnLCAkYmxhY2sgNTUlLCByZ2JhKDAsIDAsIDAsICgxIC0gJHBsYWNlaG9sZGVyLW9wYWNpdHktbWluKSkgNzUlLCAkYmxhY2sgOTUlKTtcbiAgbWFzay1zaXplOiAyMDAlIDEwMCU7XG4gIGFuaW1hdGlvbjogcGxhY2Vob2xkZXItd2F2ZSAycyBsaW5lYXIgaW5maW5pdGU7XG59XG5cbkBrZXlmcmFtZXMgcGxhY2Vob2xkZXItd2F2ZSB7XG4gIDEwMCUge1xuICAgIG1hc2stcG9zaXRpb246IC0yMDAlIDAlO1xuICB9XG59XG4iLCJAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmxpbmstI3skY29sb3J9IHtcbiAgICBjb2xvcjogJHZhbHVlO1xuXG4gICAgQGlmICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UgIT0gMCB7XG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiBpZihjb2xvci1jb250cmFzdCgkdmFsdWUpID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJHZhbHVlLCAkbGluay1zaGFkZS1wZXJjZW50YWdlKSwgdGludC1jb2xvcigkdmFsdWUsICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxuXG4ucmF0aW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1hc3BlY3QtcmF0aW8pO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICA+ICoge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuQGVhY2ggJGtleSwgJHJhdGlvIGluICRhc3BlY3QtcmF0aW9zIHtcbiAgLnJhdGlvLSN7JGtleX0ge1xuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fWFzcGVjdC1yYXRpbzogI3skcmF0aW99O1xuICB9XG59XG4iLCIvLyBTaG9ydGhhbmRcblxuLmZpeGVkLXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLmZpeGVkLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLy8gUmVzcG9uc2l2ZSBzdGlja3kgdG9wXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuc3RpY2t5I3skaW5maXh9LXRvcCB7XG4gICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgdG9wOiAwO1xuICAgICAgei1pbmRleDogJHppbmRleC1zdGlja3k7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzY3NzLWRvY3Mtc3RhcnQgc3RhY2tzXG4uaHN0YWNrIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbn1cblxuLnZzdGFjayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBzdGFja3NcbiIsIi8vXG4vLyBWaXN1YWxseSBoaWRkZW5cbi8vXG5cbi52aXN1YWxseS1oaWRkZW4sXG4udmlzdWFsbHktaGlkZGVuLWZvY3VzYWJsZTpub3QoOmZvY3VzKTpub3QoOmZvY3VzLXdpdGhpbikge1xuICBAaW5jbHVkZSB2aXN1YWxseS1oaWRkZW4oKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBIaWRlIGNvbnRlbnQgdmlzdWFsbHkgd2hpbGUga2VlcGluZyBpdCBhY2Nlc3NpYmxlIHRvIGFzc2lzdGl2ZSB0ZWNobm9sb2dpZXNcbi8vXG4vLyBTZWU6IGh0dHBzOi8vd3d3LmExMXlwcm9qZWN0LmNvbS9wb3N0cy8yMDEzLTAxLTExLWhvdy10by1oaWRlLWNvbnRlbnQvXG4vLyBTZWU6IGh0dHBzOi8va2l0dHlnaXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cblxuQG1peGluIHZpc3VhbGx5LWhpZGRlbigpIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHggIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxcHggIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBtYXJnaW46IC0xcHggIWltcG9ydGFudDsgLy8gRml4IGZvciBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI1Njg2XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKSAhaW1wb3J0YW50O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xufVxuXG4vLyBVc2UgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQsIG9yIG9uZSBvZiBpdHMgY2hpbGQgZWxlbWVudHMgaXMgZm9jdXNlZFxuLy8gKGkuZS4gd2hlbiBmb2N1cyBpcyB3aXRoaW4gdGhlIGVsZW1lbnQvY29udGFpbmVyIHRoYXQgdGhlIGNsYXNzIHdhcyBhcHBsaWVkIHRvKVxuLy9cbi8vIFVzZWZ1bCBmb3IgXCJTa2lwIHRvIG1haW4gY29udGVudFwiIGxpbmtzOyBzZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcblxuQG1peGluIHZpc3VhbGx5LWhpZGRlbi1mb2N1c2FibGUoKSB7XG4gICY6bm90KDpmb2N1cyk6bm90KDpmb2N1cy13aXRoaW4pIHtcbiAgICBAaW5jbHVkZSB2aXN1YWxseS1oaWRkZW4oKTtcbiAgfVxufVxuIiwiLy9cbi8vIFN0cmV0Y2hlZCBsaW5rXG4vL1xuXG4uc3RyZXRjaGVkLWxpbmsge1xuICAmOjojeyRzdHJldGNoZWQtbGluay1wc2V1ZG8tZWxlbWVudH0ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogJHN0cmV0Y2hlZC1saW5rLXotaW5kZXg7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuIiwiLy9cbi8vIFRleHQgdHJ1bmNhdGlvblxuLy9cblxuLnRleHQtdHJ1bmNhdGUge1xuICBAaW5jbHVkZSB0ZXh0LXRydW5jYXRlKCk7XG59XG4iLCIvLyBUZXh0IHRydW5jYXRlXG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXG5cbkBtaXhpbiB0ZXh0LXRydW5jYXRlKCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIi52ciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgd2lkdGg6IDFweDtcbiAgbWluLWhlaWdodDogMWVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIG9wYWNpdHk6ICRoci1vcGFjaXR5O1xufVxuIiwiLy8gVXRpbGl0eSBnZW5lcmF0b3Jcbi8vIFVzZWQgdG8gZ2VuZXJhdGUgdXRpbGl0aWVzICYgcHJpbnQgdXRpbGl0aWVzXG5AbWl4aW4gZ2VuZXJhdGUtdXRpbGl0eSgkdXRpbGl0eSwgJGluZml4LCAkaXMtcmZzLW1lZGlhLXF1ZXJ5OiBmYWxzZSkge1xuICAkdmFsdWVzOiBtYXAtZ2V0KCR1dGlsaXR5LCB2YWx1ZXMpO1xuXG4gIC8vIElmIHRoZSB2YWx1ZXMgYXJlIGEgbGlzdCBvciBzdHJpbmcsIGNvbnZlcnQgaXQgaW50byBhIG1hcFxuICBAaWYgdHlwZS1vZigkdmFsdWVzKSA9PSBcInN0cmluZ1wiIG9yIHR5cGUtb2YobnRoKCR2YWx1ZXMsIDEpKSAhPSBcImxpc3RcIiB7XG4gICAgJHZhbHVlczogemlwKCR2YWx1ZXMsICR2YWx1ZXMpO1xuICB9XG5cbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICR2YWx1ZXMge1xuICAgICRwcm9wZXJ0aWVzOiBtYXAtZ2V0KCR1dGlsaXR5LCBwcm9wZXJ0eSk7XG5cbiAgICAvLyBNdWx0aXBsZSBwcm9wZXJ0aWVzIGFyZSBwb3NzaWJsZSwgZm9yIGV4YW1wbGUgd2l0aCB2ZXJ0aWNhbCBvciBob3Jpem9udGFsIG1hcmdpbnMgb3IgcGFkZGluZ3NcbiAgICBAaWYgdHlwZS1vZigkcHJvcGVydGllcykgPT0gXCJzdHJpbmdcIiB7XG4gICAgICAkcHJvcGVydGllczogYXBwZW5kKCgpLCAkcHJvcGVydGllcyk7XG4gICAgfVxuXG4gICAgLy8gVXNlIGN1c3RvbSBjbGFzcyBpZiBwcmVzZW50XG4gICAgJHByb3BlcnR5LWNsYXNzOiBpZihtYXAtaGFzLWtleSgkdXRpbGl0eSwgY2xhc3MpLCBtYXAtZ2V0KCR1dGlsaXR5LCBjbGFzcyksIG50aCgkcHJvcGVydGllcywgMSkpO1xuICAgICRwcm9wZXJ0eS1jbGFzczogaWYoJHByb3BlcnR5LWNsYXNzID09IG51bGwsIFwiXCIsICRwcm9wZXJ0eS1jbGFzcyk7XG5cbiAgICAvLyBTdGF0ZSBwYXJhbXMgdG8gZ2VuZXJhdGUgcHNldWRvLWNsYXNzZXNcbiAgICAkc3RhdGU6IGlmKG1hcC1oYXMta2V5KCR1dGlsaXR5LCBzdGF0ZSksIG1hcC1nZXQoJHV0aWxpdHksIHN0YXRlKSwgKCkpO1xuXG4gICAgJGluZml4OiBpZigkcHJvcGVydHktY2xhc3MgPT0gXCJcIiBhbmQgc3RyLXNsaWNlKCRpbmZpeCwgMSwgMSkgPT0gXCItXCIsIHN0ci1zbGljZSgkaW5maXgsIDIpLCAkaW5maXgpO1xuXG4gICAgLy8gRG9uJ3QgcHJlZml4IGlmIHZhbHVlIGtleSBpcyBudWxsIChlZy4gd2l0aCBzaGFkb3cgY2xhc3MpXG4gICAgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyOiBpZigka2V5LCBpZigkcHJvcGVydHktY2xhc3MgPT0gXCJcIiBhbmQgJGluZml4ID09IFwiXCIsIFwiXCIsIFwiLVwiKSArICRrZXksIFwiXCIpO1xuXG4gICAgQGlmIG1hcC1nZXQoJHV0aWxpdHksIHJmcykge1xuICAgICAgLy8gSW5zaWRlIHRoZSBtZWRpYSBxdWVyeVxuICAgICAgQGlmICRpcy1yZnMtbWVkaWEtcXVlcnkge1xuICAgICAgICAkdmFsOiByZnMtdmFsdWUoJHZhbHVlKTtcblxuICAgICAgICAvLyBEbyBub3QgcmVuZGVyIGFueXRoaW5nIGlmIGZsdWlkIGFuZCBub24gZmx1aWQgdmFsdWVzIGFyZSB0aGUgc2FtZVxuICAgICAgICAkdmFsdWU6IGlmKCR2YWwgPT0gcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZSksIG51bGwsICR2YWwpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAkdmFsdWU6IHJmcy1mbHVpZC12YWx1ZSgkdmFsdWUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICRpcy1jc3MtdmFyOiBtYXAtZ2V0KCR1dGlsaXR5LCBjc3MtdmFyKTtcbiAgICAkaXMtbG9jYWwtdmFyczogbWFwLWdldCgkdXRpbGl0eSwgbG9jYWwtdmFycyk7XG4gICAgJGlzLXJ0bDogbWFwLWdldCgkdXRpbGl0eSwgcnRsKTtcblxuICAgIEBpZiAkdmFsdWUgIT0gbnVsbCB7XG4gICAgICBAaWYgJGlzLXJ0bCA9PSBmYWxzZSB7XG4gICAgICAgIC8qIHJ0bDpiZWdpbjpyZW1vdmUgKi9cbiAgICAgIH1cblxuICAgICAgQGlmICRpcy1jc3MtdmFyIHtcbiAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfSB7XG4gICAgICAgICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9I3skcHJvcGVydHktY2xhc3N9OiAjeyR2YWx1ZX07XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkcHNldWRvIGluICRzdGF0ZSB7XG4gICAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfS0jeyRwc2V1ZG99OiN7JHBzZXVkb30ge1xuICAgICAgICAgICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9I3skcHJvcGVydHktY2xhc3N9OiAjeyR2YWx1ZX07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfSB7XG4gICAgICAgICAgQGVhY2ggJHByb3BlcnR5IGluICRwcm9wZXJ0aWVzIHtcbiAgICAgICAgICAgIEBpZiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgIEBlYWNoICRsb2NhbC12YXIsICR2YWx1ZSBpbiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9I3skbG9jYWwtdmFyfTogI3skdmFsdWV9O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAjeyRwcm9wZXJ0eX06ICR2YWx1ZSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRwc2V1ZG8gaW4gJHN0YXRlIHtcbiAgICAgICAgICAuI3skcHJvcGVydHktY2xhc3MgKyAkaW5maXggKyAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXJ9LSN7JHBzZXVkb306I3skcHNldWRvfSB7XG4gICAgICAgICAgICBAZWFjaCAkcHJvcGVydHkgaW4gJHByb3BlcnRpZXMge1xuICAgICAgICAgICAgICAjeyRwcm9wZXJ0eX06ICR2YWx1ZSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaWYgJGlzLXJ0bCA9PSBmYWxzZSB7XG4gICAgICAgIC8qIHJ0bDplbmQ6cmVtb3ZlICovXG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBMb29wIG92ZXIgZWFjaCBicmVha3BvaW50XG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuXG4gIC8vIEdlbmVyYXRlIG1lZGlhIHF1ZXJ5IGlmIG5lZWRlZFxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAvLyBMb29wIG92ZXIgZWFjaCB1dGlsaXR5IHByb3BlcnR5XG4gICAgQGVhY2ggJGtleSwgJHV0aWxpdHkgaW4gJHV0aWxpdGllcyB7XG4gICAgICAvLyBUaGUgdXRpbGl0eSBjYW4gYmUgZGlzYWJsZWQgd2l0aCBgZmFsc2VgLCB0aHVzIGNoZWNrIGlmIHRoZSB1dGlsaXR5IGlzIGEgbWFwIGZpcnN0XG4gICAgICAvLyBPbmx5IHByb2NlZWQgaWYgcmVzcG9uc2l2ZSBtZWRpYSBxdWVyaWVzIGFyZSBlbmFibGVkIG9yIGlmIGl0J3MgdGhlIGJhc2UgbWVkaWEgcXVlcnlcbiAgICAgIEBpZiB0eXBlLW9mKCR1dGlsaXR5KSA9PSBcIm1hcFwiIGFuZCAobWFwLWdldCgkdXRpbGl0eSwgcmVzcG9uc2l2ZSkgb3IgJGluZml4ID09IFwiXCIpIHtcbiAgICAgICAgQGluY2x1ZGUgZ2VuZXJhdGUtdXRpbGl0eSgkdXRpbGl0eSwgJGluZml4KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gUkZTIHJlc2NhbGluZ1xuQG1lZGlhIChtaW4td2lkdGg6ICRyZnMtbXEtdmFsdWUpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIEBpZiAobWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQpIDwgJHJmcy1icmVha3BvaW50KSB7XG4gICAgICAvLyBMb29wIG92ZXIgZWFjaCB1dGlsaXR5IHByb3BlcnR5XG4gICAgICBAZWFjaCAka2V5LCAkdXRpbGl0eSBpbiAkdXRpbGl0aWVzIHtcbiAgICAgICAgLy8gVGhlIHV0aWxpdHkgY2FuIGJlIGRpc2FibGVkIHdpdGggYGZhbHNlYCwgdGh1cyBjaGVjayBpZiB0aGUgdXRpbGl0eSBpcyBhIG1hcCBmaXJzdFxuICAgICAgICAvLyBPbmx5IHByb2NlZWQgaWYgcmVzcG9uc2l2ZSBtZWRpYSBxdWVyaWVzIGFyZSBlbmFibGVkIG9yIGlmIGl0J3MgdGhlIGJhc2UgbWVkaWEgcXVlcnlcbiAgICAgICAgQGlmIHR5cGUtb2YoJHV0aWxpdHkpID09IFwibWFwXCIgYW5kIG1hcC1nZXQoJHV0aWxpdHksIHJmcykgYW5kIChtYXAtZ2V0KCR1dGlsaXR5LCByZXNwb25zaXZlKSBvciAkaW5maXggPT0gXCJcIikge1xuICAgICAgICAgIEBpbmNsdWRlIGdlbmVyYXRlLXV0aWxpdHkoJHV0aWxpdHksICRpbmZpeCwgdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBQcmludCB1dGlsaXRpZXNcbkBtZWRpYSBwcmludCB7XG4gIEBlYWNoICRrZXksICR1dGlsaXR5IGluICR1dGlsaXRpZXMge1xuICAgIC8vIFRoZSB1dGlsaXR5IGNhbiBiZSBkaXNhYmxlZCB3aXRoIGBmYWxzZWAsIHRodXMgY2hlY2sgaWYgdGhlIHV0aWxpdHkgaXMgYSBtYXAgZmlyc3RcbiAgICAvLyBUaGVuIGNoZWNrIGlmIHRoZSB1dGlsaXR5IG5lZWRzIHByaW50IHN0eWxlc1xuICAgIEBpZiB0eXBlLW9mKCR1dGlsaXR5KSA9PSBcIm1hcFwiIGFuZCBtYXAtZ2V0KCR1dGlsaXR5LCBwcmludCkgPT0gdHJ1ZSB7XG4gICAgICBAaW5jbHVkZSBnZW5lcmF0ZS11dGlsaXR5KCR1dGlsaXR5LCBcIi1wcmludFwiKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qIFNsaWRlciAqL1xuXG4uc2xpY2stc2xpZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLnNsaWNrLWxpc3Qge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuXG4gICAgJi5kcmFnZ2luZyB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgY3Vyc29yOiBoYW5kO1xuICAgIH1cbn1cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi5zbGljay10cmFjayB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcblxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG59XG4uc2xpY2stc2xpZGUge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgJi5zbGljay1sb2FkaW5nIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgICYuZHJhZ2dpbmcgaW1nIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuXG4gICAgLnNsaWNrLWluaXRpYWxpemVkICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cblxuICAgIC5zbGljay12ZXJ0aWNhbCAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgfVxufVxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbiIsIi8qKlxuICogQ29sb3JzIHZhcmlhYmxlc1xuICovXG5cbi8vIERlZmluZSB0aGVtZXMgY29sb3JzXG46cm9vdCB7XG4gIC8vIERlZmF1bHQgVGhlbWUgQ29sb3JzXG4gIC0tYmctY29sb3I6ICM5MzAwMDA7XG4gIC0tdGV4dC1Db2xvcjogIzZlMTgwMjtcbiAgLS1kYXJrZXItY29sb3ItNTogIzdhMDAwMDtcbiAgLS1saWdodGVyLWNvbG9yLTU6ICNhZDAwMDA7XG4gIC0tbGlnaHRlci1jb2xvci03MDogI2ZmZjlmOTtcblxuICAvLyBjZWxsYXJtYW5UaGVtZSBjb2xvcnNcbiAgLS1jZWxsYXJtYW5UaGVtZS1iZy1jb2xvcjogIzkwNGQxNDtcbiAgLS1jZWxsYXJtYW5UaGVtZS10ZXh0LWNvbG9yOiAjOTA0ZDE0O1xuICAtLWNlbGxhcm1hblRoZW1lLWRhcmtlci1jb2xvci01OiAjN2E0MTExO1xuICAtLWNlbGxhcm1hblRoZW1lLWxpZ2h0ZXItY29sb3ItNTogI2E2NTkxNztcbiAgLS1jZWxsYXJtYW5UaGVtZS1saWdodGVyLWNvbG9yLTcwOiAjZmZmZmZmO1xufVxuXG4vLyBEZWZpbmUgY29sb3JzIGluIHNjc3MgdmFyaWFibGVzXG4kbWFpbi1jb2xvcjogdmFyKC0tYmctY29sb3IpO1xuJG1haW4tdGV4dC1jb2xvcjogdmFyKC0tdGV4dC1Db2xvcik7XG4kbWFpbi1kYXJrZXItY29sb3ItNTogdmFyKC0tZGFya2VyLWNvbG9yLTUpO1xuJG1haW4tbGlnaHRlci1jb2xvci01OiB2YXIoLS1saWdodGVyLWNvbG9yLTUpO1xuJG1haW4tbGlnaHRlci1jb2xvci03MDogdmFyKC0tbGlnaHRlci1jb2xvci03MCk7XG5cbi8vIE5ldXRyYWwgY29sb3JzIChuYW1lIHNvdXJjZSA6IGh0dHBzOi8vYXBwbGVjb2xvcnMuY29tL2NvbG9yLylcbiRibGFjazogIzAwMDAwMDtcbiR3aGl0ZTogI2ZmZmZmZjtcbiRwYW1wYXM6ICNGN0YzRjE7XG4kc2Vhc2hlbGw6ICNmMWYxZjE7XG4kZ2FsbGVyeTogI2VjZWNlYztcbiRhbHRvOiAjZDhkOGQ4O1xuJGp1bWJvOiAjZTVlNWU1O1xuJHNpbHZlcjogI2MzYzNjMztcbiRzaWx2ZXItY2hhbGljZTogI2FiYWJhYjtcbiRkdXN0eS1ncmF5OiAjOTc5Nzk3O1xuJGdyYXk6ICM5MDkwOTA7XG4kcXVpY2tzaWx2ZXI6ICM5YjliOWI7XG4kYm91bGRlcjogIzc4Nzg3ODtcbiRkaW0tZ3JleTogIzczNzM3MztcbiRkb3ZlLWdyYXk6ICM2NjY2NjY7XG4kdHVuZG9yYTogIzQ0NDQ0NDtcblxuJGNvbnRlc3NhOiAjYzA3NDYwO1xuJG1hbmRhcmluLXJlZDogIzllMWExYTtcblxuJHZhbGlkOiBncmVlbjtcbiR3YXJuaW5nOiBvcmFuZ2U7XG4kYWxlcnQ6IHJlZDtcblxuLy9Qcm9kdWN0IGNvbG9yc1xuJHRvcC1zYWxlczogIzg2NWNhYztcbiRmYXZvdXJpdGU6ICNkNDJiMjU7XG4kbmV3OiAjNDM2NDAwO1xuJHByb21vOiAjZmZhMjAwO1xuJHRvcC1tYXJnZTogI2U2N2UyMjtcblxuXG4vKipcbiAqIEZvbnRzIHZhcmlhYmxlc1xuICovXG4kcm9ib3RvLXJlZ3VsYXI6ICdSb2JvdG8nLCBzYW5zLXNlcmlmO1xuJHJvYm90by1jb25kZW5zZWQ6ICdSb2JvdG8gQ29uZGVuc2VkJywgc2Fucy1zZXJpZjtcbiRiZWJhcy1yZWd1bGFyOiAnQmViYXMgTmV1ZScsIHNhbnMtc2VyaWY7XG4kZm9udC1hd2Vzb21lOiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIiwgc2Fucy1zZXJpZjtcbi8qKlxuICogQW5pbWF0aW9ucyB2YXJpYWJsZXNcbiAqL1xuJGFuaW1UaW1lOiAwLjNzO1xuJGFuaW1TdHlsZTogZWFzZS1pbi1vdXQ7XG5cbi8qKlxuICogQnJlYWtwb2ludHMgdmFyaWFibGVzXG4gKi9cbiRicmVha3BvaW50czogKFxuICAnbW9iaWxlJzogMzYwcHgsXG4gICdtb2JpbGUtbGFyZ2UnOiA1NzZweCxcbiAgJ3RhYmxldCc6IDc2OHB4LFxuICAndGFibGV0LW1lZGl1bSc6ODAwcHgsXG4gICd0YWJsZXQtbGFyZ2UnOiA5OTJweCxcbiAgJ2Rlc2t0b3AnOiAxMjAwcHhcbik7IiwiLyoqXG4gKiBCYXNpYyBzdHlsZXNcbiAqL1xuXG5odG1sIHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG5ib2R5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICBjb2xvcjogJGJsYWNrO1xuICBmb250LWZhbWlseTogJHJvYm90by1jb25kZW5zZWQ7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbWFyZ2luOiAwO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5tYWluLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1pbi1oZWlnaHQ6IDg1JTtcbiAgbWF4LXdpZHRoOiAxMDgwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG5he1xuICBjb2xvcjogJG1haW4tdGV4dC1jb2xvcjtcbiAgdHJhbnNpdGlvbjogY29sb3IgJGFuaW1UaW1lICRhbmltU3R5bGU7XG4gICY6aG92ZXJ7XG4gICAgY29sb3I6ICRtYWluLWNvbG9yO1xuICB9XG59XG5cbnN0cm9uZ3tcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICB3aWR0aDogNXB4O1xufVxuXG46Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBhbXBhcztcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRtYWluLWNvbG9yO1xufVxuXG4uY3Vyc29yLXBvaW50ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cblxuLmJvZHlfbWFpbnRlbmFuY2Uge1xuICBoZWlnaHQ6IDg2dmg7XG59XG4iLCIubmF2YmFyLWJyZWFkY3J1bWIge1xuICBwYWRkaW5nLXRvcDogMnJlbTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRkdXN0eS1ncmF5O1xuICB1bCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgY29sb3I6ICRib3VsZGVyO1xuICAgIGxpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgfVxuICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBCdXR0b25zXG4gKi9cbi5idG4ge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBwYWRkaW5nOiAwLjM3NXJlbSAxLjc1cmVtO1xuICB0cmFuc2l0aW9uOiBhbGwgJGFuaW1UaW1lICRhbmltU3R5bGU7XG59XG5cbi5idG4tcHJpbWFyeSxcbi5yb3cgLmJ0bi1wcmltYXJ5IHtcbiAgQGV4dGVuZCAuYnRuO1xuXG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XG4gIGJvcmRlci1jb2xvcjogJG1haW4tY29sb3I7XG4gIGNvbG9yOiAkd2hpdGU7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFpbi1saWdodGVyLWNvbG9yLTU7XG4gICAgYm9yZGVyLWNvbG9yOiAkbWFpbi1saWdodGVyLWNvbG9yLTcwO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRtYWluLWxpZ2h0ZXItY29sb3ItNTtcbiAgICBib3JkZXItY29sb3I6ICRtYWluLWRhcmtlci1jb2xvci01O1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gJG1haW4tZGFya2VyLWNvbG9yLTU7XG4gIH1cblxuICAmOmFjdGl2ZTpmb2N1cyB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSAkbWFpbi1kYXJrZXItY29sb3ItNTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQsXG4gICYuYnRuLWRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2lsdmVyO1xuICAgIGJvcmRlci1jb2xvcjogJHNpbHZlcjtcbiAgICBjb2xvcjogJGJvdWxkZXI7XG4gICAgY3Vyc29yOiBpbml0aWFsO1xuICB9XG59XG5cbi5idG5fX291dGxpbmUge1xuICBAZXh0ZW5kIC5idG47XG5cbiAgYm9yZGVyLWNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgY29sb3I6ICRtYWluLWNvbG9yO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtICRtYWluLWNvbG9yO1xuICB9XG5cbiAgJjphY3RpdmU6Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gJG1haW4tY29sb3I7XG4gIH1cbn1cblxuLmJ0bi1kZWxldGUge1xuICBtaW4td2lkdGg6IDEyOHB4O1xuICBtYXJnaW46IDlweCAwICFpbXBvcnRhbnQ7XG5cbiAgJi0tZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzaWx2ZXI7XG4gICAgYm9yZGVyLWNvbG9yOiAkc2lsdmVyO1xuXG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSxcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzaWx2ZXI7XG4gICAgICBib3JkZXItY29sb3I6ICRzaWx2ZXI7XG4gICAgICA7XG4gICAgfVxuICB9XG59XG5cbi5idG4tcmlnaHQge1xuICB3aWR0aDogNDclICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMCAwIDAgMTBweCAhaW1wb3J0YW50O1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPHRhYmxldC1sYXJnZVwiKSB7XG4gICAgd2lkdGg6IDgwJSAhaW1wb3J0YW50O1xuICB9XG59XG5cbmJ1dHRvbjpkaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzaWx2ZXIgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAkc2lsdmVyICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAkYm91bGRlcjtcbiAgY3Vyc29yOiBpbml0aWFsO1xufSIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8gICAgIF8gICAgICAgICAgICBfICAgICAgICAgICBfICAgICAgICAgICAgICAgICAgICAgICAgICAgXyBfXG4vLyAgICAoXykgICAgICAgICAgfCB8ICAgICAgICAgfCB8ICAgICAgICAgICAgICAgICAgICAgICAgIHwgKF8pXG4vLyAgICAgXyBfIF9fICAgX19ffCB8XyAgIF8gIF9ffCB8IF9fXyAgIF8gX18gX19fICAgX19fICBfX3wgfF8gIF9fIF9cbi8vICAgIHwgfCAnXyBcXCAvIF9ffCB8IHwgfCB8LyBfYCB8LyBfIFxcIHwgJ18gYCBfIFxcIC8gXyBcXC8gX2AgfCB8LyBfYCB8XG4vLyAgICB8IHwgfCB8IHwgKF9ffCB8IHxffCB8IChffCB8ICBfXy8gfCB8IHwgfCB8IHwgIF9fLyAoX3wgfCB8IChffCB8XG4vLyAgICB8X3xffCB8X3xcXF9fX3xffFxcX18sX3xcXF9fLF98XFxfX198IHxffCB8X3wgfF98XFxfX198XFxfXyxffF98XFxfXyxffFxuLy9cbi8vICAgICAgU2ltcGxlLCBlbGVnYW50IGFuZCBtYWludGFpbmFibGUgbWVkaWEgcXVlcmllcyBpbiBTYXNzXG4vLyAgICAgICAgICAgICAgICAgICAgICAgIHYxLjQuOVxuLy9cbi8vICAgICAgICBodHRwczovL2VkdWFyZG9ib3VjYXMuZ2l0aHViLmlvL2luY2x1ZGUtbWVkaWFcbi8vXG4vLyAgICAgICAgIEF1dGhvcnM6IEVkdWFyZG8gQm91Y2FzIChAZWR1YXJkb2JvdWNhcylcbi8vICAgICAgICAgICAgICAgICAgS2l0dHkgR2lyYXVkZWwgKEBraXR0eWdpcmF1ZGVsKVxuLy9cbi8vICAgICAgVGhpcyBwcm9qZWN0IGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgTUlUIGxpY2Vuc2Vcbi8vLy9cbi8vLyBpbmNsdWRlLW1lZGlhIGxpYnJhcnkgcHVibGljIGNvbmZpZ3VyYXRpb25cbi8vLyBAYXV0aG9yIEVkdWFyZG8gQm91Y2FzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLy9cblxuXG4vLy9cbi8vLyBDcmVhdGVzIGEgbGlzdCBvZiBnbG9iYWwgYnJlYWtwb2ludHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBDcmVhdGVzIGEgc2luZ2xlIGJyZWFrcG9pbnQgd2l0aCB0aGUgbGFiZWwgYHBob25lYFxuLy8vICAkYnJlYWtwb2ludHM6ICgncGhvbmUnOiAzMjBweCk7XG4vLy9cbiRicmVha3BvaW50czogKFxuICAncGhvbmUnOiAzMjBweCxcbiAgJ3RhYmxldCc6IDc2OHB4LFxuICAnZGVza3RvcCc6IDEwMjRweFxuKSAhZGVmYXVsdDtcblxuXG4vLy9cbi8vLyBDcmVhdGVzIGEgbGlzdCBvZiBzdGF0aWMgZXhwcmVzc2lvbnMgb3IgbWVkaWEgdHlwZXNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBDcmVhdGVzIGEgc2luZ2xlIG1lZGlhIHR5cGUgKHNjcmVlbilcbi8vLyAgJG1lZGlhLWV4cHJlc3Npb25zOiAoJ3NjcmVlbic6ICdzY3JlZW4nKTtcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBDcmVhdGVzIGEgc3RhdGljIGV4cHJlc3Npb24gd2l0aCBsb2dpY2FsIGRpc2p1bmN0aW9uIChPUiBvcGVyYXRvcilcbi8vLyAgJG1lZGlhLWV4cHJlc3Npb25zOiAoXG4vLy8gICAgJ3JldGluYTJ4JzogJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSknXG4vLy8gICk7XG4vLy9cbiRtZWRpYS1leHByZXNzaW9uczogKFxuICAnc2NyZWVuJzogJ3NjcmVlbicsXG4gICdwcmludCc6ICdwcmludCcsXG4gICdoYW5kaGVsZCc6ICdoYW5kaGVsZCcsXG4gICdsYW5kc2NhcGUnOiAnKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpJyxcbiAgJ3BvcnRyYWl0JzogJyhvcmllbnRhdGlvbjogcG9ydHJhaXQpJyxcbiAgJ3JldGluYTJ4JzogJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSksIChtaW4tcmVzb2x1dGlvbjogMmRwcHgpJyxcbiAgJ3JldGluYTN4JzogJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDMpLCAobWluLXJlc29sdXRpb246IDM1MGRwaSksIChtaW4tcmVzb2x1dGlvbjogM2RwcHgpJ1xuKSAhZGVmYXVsdDtcblxuXG4vLy9cbi8vLyBEZWZpbmVzIGEgbnVtYmVyIHRvIGJlIGFkZGVkIG9yIHN1YnRyYWN0ZWQgZnJvbSBlYWNoIHVuaXQgd2hlbiBkZWNsYXJpbmcgYnJlYWtwb2ludHMgd2l0aCBleGNsdXNpdmUgaW50ZXJ2YWxzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gSW50ZXJ2YWwgZm9yIHBpeGVscyBpcyBkZWZpbmVkIGFzIGAxYCBieSBkZWZhdWx0XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+MTI4cHgnKSB7fVxuLy8vXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cbi8vLyAgQG1lZGlhIChtaW4td2lkdGg6IDEyOXB4KSB7fVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEludGVydmFsIGZvciBlbXMgaXMgZGVmaW5lZCBhcyBgMC4wMWAgYnkgZGVmYXVsdFxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPjIwZW0nKSB7fVxuLy8vXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cbi8vLyAgQG1lZGlhIChtaW4td2lkdGg6IDIwLjAxZW0pIHt9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gSW50ZXJ2YWwgZm9yIHJlbXMgaXMgZGVmaW5lZCBhcyBgMC4xYCBieSBkZWZhdWx0LCB0byBiZSB1c2VkIHdpdGggYGZvbnQtc2l6ZTogNjIuNSU7YFxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPjIuMHJlbScpIHt9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogMi4xcmVtKSB7fVxuLy8vXG4kdW5pdC1pbnRlcnZhbHM6IChcbiAgJ3B4JzogMSxcbiAgJ2VtJzogMC4wMSxcbiAgJ3JlbSc6IDAuMSxcbiAgJyc6IDBcbikgIWRlZmF1bHQ7XG5cbi8vL1xuLy8vIERlZmluZXMgd2hldGhlciBzdXBwb3J0IGZvciBtZWRpYSBxdWVyaWVzIGlzIGF2YWlsYWJsZSwgdXNlZnVsIGZvciBjcmVhdGluZyBzZXBhcmF0ZSBzdHlsZXNoZWV0c1xuLy8vIGZvciBicm93c2VycyB0aGF0IGRvbid0IHN1cHBvcnQgbWVkaWEgcXVlcmllcy5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBEaXNhYmxlcyBzdXBwb3J0IGZvciBtZWRpYSBxdWVyaWVzXG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgY29sb3I6IHRvbWF0bztcbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vICAvKiBHZW5lcmF0ZXM6ICovXG4vLy8gIC5mb28ge1xuLy8vICAgIGNvbG9yOiB0b21hdG87XG4vLy8gIH1cbi8vL1xuJGltLW1lZGlhLXN1cHBvcnQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vL1xuLy8vIFNlbGVjdHMgd2hpY2ggYnJlYWtwb2ludCB0byBlbXVsYXRlIHdoZW4gc3VwcG9ydCBmb3IgbWVkaWEgcXVlcmllcyBpcyBkaXNhYmxlZC4gTWVkaWEgcXVlcmllcyB0aGF0IHN0YXJ0IGF0IG9yXG4vLy8gaW50ZXJjZXB0IHRoZSBicmVha3BvaW50IHdpbGwgYmUgZGlzcGxheWVkLCBhbnkgb3RoZXJzIHdpbGwgYmUgaWdub3JlZC5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBUaGlzIG1lZGlhIHF1ZXJ5IHdpbGwgc2hvdyBiZWNhdXNlIGl0IGludGVyY2VwdHMgdGhlIHN0YXRpYyBicmVha3BvaW50XG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcbi8vLyAgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICdkZXNrdG9wJztcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgY29sb3I6IHRvbWF0bztcbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vICAvKiBHZW5lcmF0ZXM6ICovXG4vLy8gIC5mb28ge1xuLy8vICAgIGNvbG9yOiB0b21hdG87XG4vLy8gIH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBUaGlzIG1lZGlhIHF1ZXJ5IHdpbGwgTk9UIHNob3cgYmVjYXVzZSBpdCBkb2VzIG5vdCBpbnRlcmNlcHQgdGhlIGRlc2t0b3AgYnJlYWtwb2ludFxuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAndGFibGV0Jztcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgLyogTm8gb3V0cHV0ICovXG4vLy9cbiRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCcgIWRlZmF1bHQ7XG5cbi8vL1xuLy8vIFNlbGVjdHMgd2hpY2ggbWVkaWEgZXhwcmVzc2lvbnMgYXJlIGFsbG93ZWQgaW4gYW4gZXhwcmVzc2lvbiBmb3IgaXQgdG8gYmUgdXNlZCB3aGVuIG1lZGlhIHF1ZXJpZXNcbi8vLyBhcmUgbm90IHN1cHBvcnRlZC5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBUaGlzIG1lZGlhIHF1ZXJ5IHdpbGwgc2hvdyBiZWNhdXNlIGl0IGludGVyY2VwdHMgdGhlIHN0YXRpYyBicmVha3BvaW50IGFuZCBjb250YWlucyBvbmx5IGFjY2VwdGVkIG1lZGlhIGV4cHJlc3Npb25zXG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcbi8vLyAgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICdkZXNrdG9wJztcbi8vLyAgJGltLW5vLW1lZGlhLWV4cHJlc3Npb25zOiAoJ3NjcmVlbicpO1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnLCAnc2NyZWVuJykge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgY29sb3I6IHRvbWF0bztcbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vICAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICAgLmZvbyB7XG4vLy8gICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIE5PVCBzaG93IGJlY2F1c2UgaXQgaW50ZXJjZXB0cyB0aGUgc3RhdGljIGJyZWFrcG9pbnQgYnV0IGNvbnRhaW5zIGEgbWVkaWEgZXhwcmVzc2lvbiB0aGF0IGlzIG5vdCBhY2NlcHRlZFxuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCc7XG4vLy8gICRpbS1uby1tZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nKTtcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0JywgJ3JldGluYTJ4Jykge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgY29sb3I6IHRvbWF0bztcbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vICAvKiBObyBvdXRwdXQgKi9cbi8vL1xuJGltLW5vLW1lZGlhLWV4cHJlc3Npb25zOiAoJ3NjcmVlbicsICdwb3J0cmFpdCcsICdsYW5kc2NhcGUnKSAhZGVmYXVsdDtcblxuLy8vL1xuLy8vIENyb3NzLWVuZ2luZSBsb2dnaW5nIGVuZ2luZVxuLy8vIEBhdXRob3IgS2l0dHkgR2lyYXVkZWxcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLy9cblxuXG4vLy9cbi8vLyBMb2cgYSBtZXNzYWdlIGVpdGhlciB3aXRoIGBAZXJyb3JgIGlmIHN1cHBvcnRlZFxuLy8vIGVsc2Ugd2l0aCBgQHdhcm5gLCB1c2luZyBgZmVhdHVyZS1leGlzdHMoJ2F0LWVycm9yJylgXG4vLy8gdG8gZGV0ZWN0IHN1cHBvcnQuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1lc3NhZ2UgLSBNZXNzYWdlIHRvIGxvZ1xuLy8vXG5AZnVuY3Rpb24gaW0tbG9nKCRtZXNzYWdlKSB7XG4gIEBpZiBmZWF0dXJlLWV4aXN0cygnYXQtZXJyb3InKSB7XG4gICAgQGVycm9yICRtZXNzYWdlO1xuICB9IEBlbHNlIHtcbiAgICBAd2FybiAkbWVzc2FnZTtcbiAgICAkXzogbm9vcCgpO1xuICB9XG5cbiAgQHJldHVybiAkbWVzc2FnZTtcbn1cblxuXG4vLy9cbi8vLyBXcmFwcGVyIG1peGluIGZvciB0aGUgbG9nIGZ1bmN0aW9uIHNvIGl0IGNhbiBiZSB1c2VkIHdpdGggYSBtb3JlIGZyaWVuZGx5XG4vLy8gQVBJIHRoYW4gYEBpZiBpbS1sb2coJy4uJykge31gIG9yIGAkXzogaW0tbG9nKCcuLicpYC4gQmFzaWNhbGx5LCB1c2UgdGhlIGZ1bmN0aW9uXG4vLy8gd2l0aGluIGZ1bmN0aW9ucyBiZWNhdXNlIGl0IGlzIG5vdCBwb3NzaWJsZSB0byBpbmNsdWRlIGEgbWl4aW4gaW4gYSBmdW5jdGlvblxuLy8vIGFuZCB1c2UgdGhlIG1peGluIGV2ZXJ5d2hlcmUgZWxzZSBiZWNhdXNlIGl0J3MgbXVjaCBtb3JlIGVsZWdhbnQuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1lc3NhZ2UgLSBNZXNzYWdlIHRvIGxvZ1xuLy8vXG5AbWl4aW4gbG9nKCRtZXNzYWdlKSB7XG4gIEBpZiBpbS1sb2coJG1lc3NhZ2UpIHt9XG59XG5cblxuLy8vXG4vLy8gRnVuY3Rpb24gd2l0aCBubyBgQHJldHVybmAgY2FsbGVkIG5leHQgdG8gYEB3YXJuYCBpbiBTYXNzIDMuM1xuLy8vIHRvIHRyaWdnZXIgYSBjb21waWxpbmcgZXJyb3IgYW5kIHN0b3AgdGhlIHByb2Nlc3MuXG4vLy9cbkBmdW5jdGlvbiBub29wKCkge31cblxuLy8vXG4vLy8gRGV0ZXJtaW5lcyB3aGV0aGVyIGEgbGlzdCBvZiBjb25kaXRpb25zIGlzIGludGVyY2VwdGVkIGJ5IHRoZSBzdGF0aWMgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEBwYXJhbSB7QXJnbGlzdH0gICAkY29uZGl0aW9ucyAgLSBNZWRpYSBxdWVyeSBjb25kaXRpb25zXG4vLy9cbi8vLyBAcmV0dXJuIHtCb29sZWFufSAtIFJldHVybnMgdHJ1ZSBpZiB0aGUgY29uZGl0aW9ucyBhcmUgaW50ZXJjZXB0ZWQgYnkgdGhlIHN0YXRpYyBicmVha3BvaW50XG4vLy9cbkBmdW5jdGlvbiBpbS1pbnRlcmNlcHRzLXN0YXRpYy1icmVha3BvaW50KCRjb25kaXRpb25zLi4uKSB7XG4gICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQpO1xuXG4gIEBpZiBub3QgJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWUge1xuICAgIEBpZiBpbS1sb2coJ2AjeyRpbS1uby1tZWRpYS1icmVha3BvaW50fWAgaXMgbm90IGEgdmFsaWQgYnJlYWtwb2ludC4nKSB7fVxuICB9XG5cbiAgQGVhY2ggJGNvbmRpdGlvbiBpbiAkY29uZGl0aW9ucyB7XG4gICAgQGlmIG5vdCBtYXAtaGFzLWtleSgkbWVkaWEtZXhwcmVzc2lvbnMsICRjb25kaXRpb24pIHtcbiAgICAgICRvcGVyYXRvcjogZ2V0LWV4cHJlc3Npb24tb3BlcmF0b3IoJGNvbmRpdGlvbik7XG4gICAgICAkcHJlZml4OiBnZXQtZXhwcmVzc2lvbi1wcmVmaXgoJG9wZXJhdG9yKTtcbiAgICAgICR2YWx1ZTogZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGNvbmRpdGlvbiwgJG9wZXJhdG9yKTtcblxuICAgICAgQGlmICgkcHJlZml4ID09ICdtYXgnIGFuZCAkdmFsdWUgPD0gJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWUpIG9yXG4gICAgICAgICAgKCRwcmVmaXggPT0gJ21pbicgYW5kICR2YWx1ZSA+ICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlKSB7XG4gICAgICAgIEByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfSBAZWxzZSBpZiBub3QgaW5kZXgoJGltLW5vLW1lZGlhLWV4cHJlc3Npb25zLCAkY29uZGl0aW9uKSB7XG4gICAgICBAcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gdHJ1ZTtcbn1cblxuLy8vL1xuLy8vIFBhcnNpbmcgZW5naW5lXG4vLy8gQGF1dGhvciBLaXR0eSBHaXJhdWRlbFxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vL1xuXG5cbi8vL1xuLy8vIEdldCBvcGVyYXRvciBvZiBhbiBleHByZXNzaW9uXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGV4cHJlc3Npb24gLSBFeHByZXNzaW9uIHRvIGV4dHJhY3Qgb3BlcmF0b3IgZnJvbVxuLy8vXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIEFueSBvZiBgPj1gLCBgPmAsIGA8PWAsIGA8YCwgYOKJpWAsIGDiiaRgXG4vLy9cbkBmdW5jdGlvbiBnZXQtZXhwcmVzc2lvbi1vcGVyYXRvcigkZXhwcmVzc2lvbikge1xuICBAZWFjaCAkb3BlcmF0b3IgaW4gKCc+PScsICc+JywgJzw9JywgJzwnLCAn4omlJywgJ+KJpCcpIHtcbiAgICBAaWYgc3RyLWluZGV4KCRleHByZXNzaW9uLCAkb3BlcmF0b3IpIHtcbiAgICAgIEByZXR1cm4gJG9wZXJhdG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIEl0IGlzIG5vdCBwb3NzaWJsZSB0byBpbmNsdWRlIGEgbWl4aW4gaW5zaWRlIGEgZnVuY3Rpb24sIHNvIHdlIGhhdmUgdG9cbiAgLy8gcmVseSBvbiB0aGUgYGltLWxvZyguLilgIGZ1bmN0aW9uIHJhdGhlciB0aGFuIHRoZSBgbG9nKC4uKWAgbWl4aW4uIEJlY2F1c2VcbiAgLy8gZnVuY3Rpb25zIGNhbm5vdCBiZSBjYWxsZWQgYW55d2hlcmUgaW4gU2Fzcywgd2UgbmVlZCB0byBoYWNrIHRoZSBjYWxsIGluXG4gIC8vIGEgZHVtbXkgdmFyaWFibGUsIHN1Y2ggYXMgYCRfYC4gSWYgYW55Ym9keSBldmVyIHJhaXNlIGEgc2NvcGluZyBpc3N1ZSB3aXRoXG4gIC8vIFNhc3MgMy4zLCBjaGFuZ2UgdGhpcyBsaW5lIGluIGBAaWYgaW0tbG9nKC4uKSB7fWAgaW5zdGVhZC5cbiAgJF86IGltLWxvZygnTm8gb3BlcmF0b3IgZm91bmQgaW4gYCN7JGV4cHJlc3Npb259YC4nKTtcbn1cblxuXG4vLy9cbi8vLyBHZXQgZGltZW5zaW9uIG9mIGFuIGV4cHJlc3Npb24sIGJhc2VkIG9uIGEgZm91bmQgb3BlcmF0b3Jcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCBkaW1lbnNpb24gZnJvbVxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkb3BlcmF0b3IgLSBPcGVyYXRvciBmcm9tIGAkZXhwcmVzc2lvbmBcbi8vL1xuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBgd2lkdGhgIG9yIGBoZWlnaHRgIChvciBwb3RlbnRpYWxseSBhbnl0aGluZyBlbHNlKVxuLy8vXG5AZnVuY3Rpb24gZ2V0LWV4cHJlc3Npb24tZGltZW5zaW9uKCRleHByZXNzaW9uLCAkb3BlcmF0b3IpIHtcbiAgJG9wZXJhdG9yLWluZGV4OiBzdHItaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XG4gICRwYXJzZWQtZGltZW5zaW9uOiBzdHItc2xpY2UoJGV4cHJlc3Npb24sIDAsICRvcGVyYXRvci1pbmRleCAtIDEpO1xuICAkZGltZW5zaW9uOiAnd2lkdGgnO1xuXG4gIEBpZiBzdHItbGVuZ3RoKCRwYXJzZWQtZGltZW5zaW9uKSA+IDAge1xuICAgICRkaW1lbnNpb246ICRwYXJzZWQtZGltZW5zaW9uO1xuICB9XG5cbiAgQHJldHVybiAkZGltZW5zaW9uO1xufVxuXG5cbi8vL1xuLy8vIEdldCBkaW1lbnNpb24gcHJlZml4IGJhc2VkIG9uIGFuIG9wZXJhdG9yXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG9wZXJhdG9yIC0gT3BlcmF0b3Jcbi8vL1xuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBgbWluYCBvciBgbWF4YFxuLy8vXG5AZnVuY3Rpb24gZ2V0LWV4cHJlc3Npb24tcHJlZml4KCRvcGVyYXRvcikge1xuICBAcmV0dXJuIGlmKGluZGV4KCgnPCcsICc8PScsICfiiaQnKSwgJG9wZXJhdG9yKSwgJ21heCcsICdtaW4nKTtcbn1cblxuXG4vLy9cbi8vLyBHZXQgdmFsdWUgb2YgYW4gZXhwcmVzc2lvbiwgYmFzZWQgb24gYSBmb3VuZCBvcGVyYXRvclxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRleHByZXNzaW9uIC0gRXhwcmVzc2lvbiB0byBleHRyYWN0IHZhbHVlIGZyb21cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG9wZXJhdG9yIC0gT3BlcmF0b3IgZnJvbSBgJGV4cHJlc3Npb25gXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gQSBudW1lcmljIHZhbHVlXG4vLy9cbkBmdW5jdGlvbiBnZXQtZXhwcmVzc2lvbi12YWx1ZSgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKSB7XG4gICRvcGVyYXRvci1pbmRleDogc3RyLWluZGV4KCRleHByZXNzaW9uLCAkb3BlcmF0b3IpO1xuICAkdmFsdWU6IHN0ci1zbGljZSgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yLWluZGV4ICsgc3RyLWxlbmd0aCgkb3BlcmF0b3IpKTtcblxuICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkdmFsdWUpIHtcbiAgICAkdmFsdWU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkdmFsdWUpO1xuICB9IEBlbHNlIHtcbiAgICAkdmFsdWU6IHRvLW51bWJlcigkdmFsdWUpO1xuICB9XG5cbiAgJGludGVydmFsOiBtYXAtZ2V0KCR1bml0LWludGVydmFscywgdW5pdCgkdmFsdWUpKTtcblxuICBAaWYgbm90ICRpbnRlcnZhbCB7XG4gICAgLy8gSXQgaXMgbm90IHBvc3NpYmxlIHRvIGluY2x1ZGUgYSBtaXhpbiBpbnNpZGUgYSBmdW5jdGlvbiwgc28gd2UgaGF2ZSB0b1xuICAgIC8vIHJlbHkgb24gdGhlIGBpbS1sb2coLi4pYCBmdW5jdGlvbiByYXRoZXIgdGhhbiB0aGUgYGxvZyguLilgIG1peGluLiBCZWNhdXNlXG4gICAgLy8gZnVuY3Rpb25zIGNhbm5vdCBiZSBjYWxsZWQgYW55d2hlcmUgaW4gU2Fzcywgd2UgbmVlZCB0byBoYWNrIHRoZSBjYWxsIGluXG4gICAgLy8gYSBkdW1teSB2YXJpYWJsZSwgc3VjaCBhcyBgJF9gLiBJZiBhbnlib2R5IGV2ZXIgcmFpc2UgYSBzY29waW5nIGlzc3VlIHdpdGhcbiAgICAvLyBTYXNzIDMuMywgY2hhbmdlIHRoaXMgbGluZSBpbiBgQGlmIGltLWxvZyguLikge31gIGluc3RlYWQuXG4gICAgJF86IGltLWxvZygnVW5rbm93biB1bml0IGAje3VuaXQoJHZhbHVlKX1gLicpO1xuICB9XG5cbiAgQGlmICRvcGVyYXRvciA9PSAnPicge1xuICAgICR2YWx1ZTogJHZhbHVlICsgJGludGVydmFsO1xuICB9IEBlbHNlIGlmICRvcGVyYXRvciA9PSAnPCcge1xuICAgICR2YWx1ZTogJHZhbHVlIC0gJGludGVydmFsO1xuICB9XG5cbiAgQHJldHVybiAkdmFsdWU7XG59XG5cblxuLy8vXG4vLy8gUGFyc2UgYW4gZXhwcmVzc2lvbiB0byByZXR1cm4gYSB2YWxpZCBtZWRpYS1xdWVyeSBleHByZXNzaW9uXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGV4cHJlc3Npb24gLSBFeHByZXNzaW9uIHRvIHBhcnNlXG4vLy9cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gVmFsaWQgbWVkaWEgcXVlcnlcbi8vL1xuQGZ1bmN0aW9uIHBhcnNlLWV4cHJlc3Npb24oJGV4cHJlc3Npb24pIHtcbiAgLy8gSWYgaXQgaXMgcGFydCBvZiAkbWVkaWEtZXhwcmVzc2lvbnMsIGl0IGhhcyBubyBvcGVyYXRvclxuICAvLyB0aGVuIHRoZXJlIGlzIG5vIG5lZWQgdG8gZ28gYW55IGZ1cnRoZXIsIGp1c3QgcmV0dXJuIHRoZSB2YWx1ZVxuICBAaWYgbWFwLWhhcy1rZXkoJG1lZGlhLWV4cHJlc3Npb25zLCAkZXhwcmVzc2lvbikge1xuICAgIEByZXR1cm4gbWFwLWdldCgkbWVkaWEtZXhwcmVzc2lvbnMsICRleHByZXNzaW9uKTtcbiAgfVxuXG4gICRvcGVyYXRvcjogZ2V0LWV4cHJlc3Npb24tb3BlcmF0b3IoJGV4cHJlc3Npb24pO1xuICAkZGltZW5zaW9uOiBnZXQtZXhwcmVzc2lvbi1kaW1lbnNpb24oJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XG4gICRwcmVmaXg6IGdldC1leHByZXNzaW9uLXByZWZpeCgkb3BlcmF0b3IpO1xuICAkdmFsdWU6IGdldC1leHByZXNzaW9uLXZhbHVlKCRleHByZXNzaW9uLCAkb3BlcmF0b3IpO1xuXG4gIEByZXR1cm4gJygjeyRwcmVmaXh9LSN7JGRpbWVuc2lvbn06ICN7JHZhbHVlfSknO1xufVxuXG4vLy9cbi8vLyBTbGljZSBgJGxpc3RgIGJldHdlZW4gYCRzdGFydGAgYW5kIGAkZW5kYCBpbmRleGVzXG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TGlzdH0gJGxpc3QgLSBMaXN0IHRvIHNsaWNlXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzdGFydCBbMV0gLSBTdGFydCBpbmRleFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZW5kIFtsZW5ndGgoJGxpc3QpXSAtIEVuZCBpbmRleFxuLy8vXG4vLy8gQHJldHVybiB7TGlzdH0gU2xpY2VkIGxpc3Rcbi8vL1xuQGZ1bmN0aW9uIHNsaWNlKCRsaXN0LCAkc3RhcnQ6IDEsICRlbmQ6IGxlbmd0aCgkbGlzdCkpIHtcbiAgQGlmIGxlbmd0aCgkbGlzdCkgPCAxIG9yICRzdGFydCA+ICRlbmQge1xuICAgIEByZXR1cm4gKCk7XG4gIH1cblxuICAkcmVzdWx0OiAoKTtcblxuICBAZm9yICRpIGZyb20gJHN0YXJ0IHRocm91Z2ggJGVuZCB7XG4gICAgJHJlc3VsdDogYXBwZW5kKCRyZXN1bHQsIG50aCgkbGlzdCwgJGkpKTtcbiAgfVxuXG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuLy8vL1xuLy8vIFN0cmluZyB0byBudW1iZXIgY29udmVydGVyXG4vLy8gQGF1dGhvciBLaXR0eSBHaXJhdWRlbFxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vL1xuXG5cbi8vL1xuLy8vIENhc3RzIGEgc3RyaW5nIGludG8gYSBudW1iZXJcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nIHwgTnVtYmVyfSAkdmFsdWUgLSBWYWx1ZSB0byBiZSBwYXJzZWRcbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn1cbi8vL1xuQGZ1bmN0aW9uIHRvLW51bWJlcigkdmFsdWUpIHtcbiAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyB7XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH0gQGVsc2UgaWYgdHlwZS1vZigkdmFsdWUpICE9ICdzdHJpbmcnIHtcbiAgICAkXzogaW0tbG9nKCdWYWx1ZSBmb3IgYHRvLW51bWJlcmAgc2hvdWxkIGJlIGEgbnVtYmVyIG9yIGEgc3RyaW5nLicpO1xuICB9XG5cbiAgJGZpcnN0LWNoYXJhY3Rlcjogc3RyLXNsaWNlKCR2YWx1ZSwgMSwgMSk7XG4gICRyZXN1bHQ6IDA7XG4gICRkaWdpdHM6IDA7XG4gICRtaW51czogKCRmaXJzdC1jaGFyYWN0ZXIgPT0gJy0nKTtcbiAgJG51bWJlcnM6ICgnMCc6IDAsICcxJzogMSwgJzInOiAyLCAnMyc6IDMsICc0JzogNCwgJzUnOiA1LCAnNic6IDYsICc3JzogNywgJzgnOiA4LCAnOSc6IDkpO1xuXG4gIC8vIFJlbW92ZSArLy0gc2lnbiBpZiBwcmVzZW50IGF0IGZpcnN0IGNoYXJhY3RlclxuICBAaWYgKCRmaXJzdC1jaGFyYWN0ZXIgPT0gJysnIG9yICRmaXJzdC1jaGFyYWN0ZXIgPT0gJy0nKSB7XG4gICAgJHZhbHVlOiBzdHItc2xpY2UoJHZhbHVlLCAyKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggc3RyLWxlbmd0aCgkdmFsdWUpIHtcbiAgICAkY2hhcmFjdGVyOiBzdHItc2xpY2UoJHZhbHVlLCAkaSwgJGkpO1xuXG4gICAgQGlmIG5vdCAoaW5kZXgobWFwLWtleXMoJG51bWJlcnMpLCAkY2hhcmFjdGVyKSBvciAkY2hhcmFjdGVyID09ICcuJykge1xuICAgICAgQHJldHVybiB0by1sZW5ndGgoaWYoJG1pbnVzLCAtJHJlc3VsdCwgJHJlc3VsdCksIHN0ci1zbGljZSgkdmFsdWUsICRpKSlcbiAgICB9XG5cbiAgICBAaWYgJGNoYXJhY3RlciA9PSAnLicge1xuICAgICAgJGRpZ2l0czogMTtcbiAgICB9IEBlbHNlIGlmICRkaWdpdHMgPT0gMCB7XG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICogMTAgKyBtYXAtZ2V0KCRudW1iZXJzLCAkY2hhcmFjdGVyKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRkaWdpdHM6ICRkaWdpdHMgKiAxMDtcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKyBtYXAtZ2V0KCRudW1iZXJzLCAkY2hhcmFjdGVyKSAvICRkaWdpdHM7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiBpZigkbWludXMsIC0kcmVzdWx0LCAkcmVzdWx0KTtcbn1cblxuXG4vLy9cbi8vLyBBZGQgYCR1bml0YCB0byBgJHZhbHVlYFxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGFkZCB1bml0IHRvXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICR1bml0IC0gU3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoZSB1bml0XG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gYCR2YWx1ZWAgZXhwcmVzc2VkIGluIGAkdW5pdGBcbi8vL1xuQGZ1bmN0aW9uIHRvLWxlbmd0aCgkdmFsdWUsICR1bml0KSB7XG4gICR1bml0czogKCdweCc6IDFweCwgJ2NtJzogMWNtLCAnbW0nOiAxbW0sICclJzogMSUsICdjaCc6IDFjaCwgJ3BjJzogMXBjLCAnaW4nOiAxaW4sICdlbSc6IDFlbSwgJ3JlbSc6IDFyZW0sICdwdCc6IDFwdCwgJ2V4JzogMWV4LCAndncnOiAxdncsICd2aCc6IDF2aCwgJ3ZtaW4nOiAxdm1pbiwgJ3ZtYXgnOiAxdm1heCk7XG5cbiAgQGlmIG5vdCBpbmRleChtYXAta2V5cygkdW5pdHMpLCAkdW5pdCkge1xuICAgICRfOiBpbS1sb2coJ0ludmFsaWQgdW5pdCBgI3skdW5pdH1gLicpO1xuICB9XG5cbiAgQHJldHVybiAkdmFsdWUgKiBtYXAtZ2V0KCR1bml0cywgJHVuaXQpO1xufVxuXG4vLy9cbi8vLyBUaGlzIG1peGluIGFpbXMgYXQgcmVkZWZpbmluZyB0aGUgY29uZmlndXJhdGlvbiBqdXN0IGZvciB0aGUgc2NvcGUgb2Zcbi8vLyB0aGUgY2FsbC4gSXQgaXMgaGVscGZ1bCB3aGVuIGhhdmluZyBhIGNvbXBvbmVudCBuZWVkaW5nIGFuIGV4dGVuZGVkXG4vLy8gY29uZmlndXJhdGlvbiBzdWNoIGFzIGN1c3RvbSBicmVha3BvaW50cyAocmVmZXJyZWQgdG8gYXMgdHdlYWtwb2ludHMpXG4vLy8gZm9yIGluc3RhbmNlLlxuLy8vXG4vLy8gQGF1dGhvciBLaXR0eSBHaXJhdWRlbFxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICR0d2Vha3BvaW50cyBbKCldIC0gTWFwIG9mIHR3ZWFrcG9pbnRzIHRvIGJlIG1lcmdlZCB3aXRoIGAkYnJlYWtwb2ludHNgXG4vLy8gQHBhcmFtIHtNYXB9ICR0d2Vhay1tZWRpYS1leHByZXNzaW9ucyBbKCldIC0gTWFwIG9mIHR3ZWFrZWQgbWVkaWEgZXhwcmVzc2lvbnMgdG8gYmUgbWVyZ2VkIHdpdGggYCRtZWRpYS1leHByZXNzaW9uYFxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEV4dGVuZCB0aGUgZ2xvYmFsIGJyZWFrcG9pbnRzIHdpdGggYSB0d2Vha3BvaW50XG4vLy8gIEBpbmNsdWRlIG1lZGlhLWNvbnRleHQoKCdjdXN0b20nOiA2NzhweCkpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIEBpbmNsdWRlIG1lZGlhKCc+cGhvbmUnLCAnPD1jdXN0b20nKSB7XG4vLy8gICAgICAgLy8gLi4uXG4vLy8gICAgICB9XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gRXh0ZW5kIHRoZSBnbG9iYWwgbWVkaWEgZXhwcmVzc2lvbnMgd2l0aCBhIGN1c3RvbSBvbmVcbi8vLyAgQGluY2x1ZGUgbWVkaWEtY29udGV4dCgkdHdlYWstbWVkaWEtZXhwcmVzc2lvbnM6ICgnYWxsJzogJ2FsbCcpKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBAaW5jbHVkZSBtZWRpYSgnYWxsJywgJz5waG9uZScpIHtcbi8vLyAgICAgICAvLyAuLi5cbi8vLyAgICAgIH1cbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBFeHRlbmQgYm90aCBjb25maWd1cmF0aW9uIG1hcHNcbi8vLyAgQGluY2x1ZGUgbWVkaWEtY29udGV4dCgoJ2N1c3RvbSc6IDY3OHB4KSwgKCdhbGwnOiAnYWxsJykpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIEBpbmNsdWRlIG1lZGlhKCdhbGwnLCAnPnBob25lJywgJzw9Y3VzdG9tJykge1xuLy8vICAgICAgIC8vIC4uLlxuLy8vICAgICAgfVxuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG5AbWl4aW4gbWVkaWEtY29udGV4dCgkdHdlYWtwb2ludHM6ICgpLCAkdHdlYWstbWVkaWEtZXhwcmVzc2lvbnM6ICgpKSB7XG4gIC8vIFNhdmUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cbiAgJGdsb2JhbC1icmVha3BvaW50czogJGJyZWFrcG9pbnRzO1xuICAkZ2xvYmFsLW1lZGlhLWV4cHJlc3Npb25zOiAkbWVkaWEtZXhwcmVzc2lvbnM7XG5cbiAgLy8gVXBkYXRlIGdsb2JhbCBjb25maWd1cmF0aW9uXG4gICRicmVha3BvaW50czogbWFwLW1lcmdlKCRicmVha3BvaW50cywgJHR3ZWFrcG9pbnRzKSAhZ2xvYmFsO1xuICAkbWVkaWEtZXhwcmVzc2lvbnM6IG1hcC1tZXJnZSgkbWVkaWEtZXhwcmVzc2lvbnMsICR0d2Vhay1tZWRpYS1leHByZXNzaW9ucykgIWdsb2JhbDtcblxuICBAY29udGVudDtcblxuICAvLyBSZXN0b3JlIGdsb2JhbCBjb25maWd1cmF0aW9uXG4gICRicmVha3BvaW50czogJGdsb2JhbC1icmVha3BvaW50cyAhZ2xvYmFsO1xuICAkbWVkaWEtZXhwcmVzc2lvbnM6ICRnbG9iYWwtbWVkaWEtZXhwcmVzc2lvbnMgIWdsb2JhbDtcbn1cblxuLy8vL1xuLy8vIGluY2x1ZGUtbWVkaWEgcHVibGljIGV4cG9zZWQgQVBJXG4vLy8gQGF1dGhvciBFZHVhcmRvIEJvdWNhc1xuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8vXG5cblxuLy8vXG4vLy8gR2VuZXJhdGVzIGEgbWVkaWEgcXVlcnkgYmFzZWQgb24gYSBsaXN0IG9mIGNvbmRpdGlvbnNcbi8vL1xuLy8vIEBwYXJhbSB7QXJnbGlzdH0gICAkY29uZGl0aW9ucyAgLSBNZWRpYSBxdWVyeSBjb25kaXRpb25zXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBhIHNpbmdsZSBzZXQgYnJlYWtwb2ludFxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPnBob25lJykgeyB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCB0d28gc2V0IGJyZWFrcG9pbnRzXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+cGhvbmUnLCAnPD10YWJsZXQnKSB7IH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIGN1c3RvbSB2YWx1ZXNcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49MzU4cHgnLCAnPDg1MHB4JykgeyB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBzZXQgYnJlYWtwb2ludHMgd2l0aCBjdXN0b20gdmFsdWVzXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+ZGVza3RvcCcsICc8PTEzNTBweCcpIHsgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggYSBzdGF0aWMgZXhwcmVzc2lvblxuLy8vICBAaW5jbHVkZSBtZWRpYSgncmV0aW5hMngnKSB7IH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBNaXhpbmcgZXZlcnl0aGluZ1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj0zNTBweCcsICc8dGFibGV0JywgJ3JldGluYTN4JykgeyB9XG4vLy9cbkBtaXhpbiBtZWRpYSgkY29uZGl0aW9ucy4uLikge1xuICBAaWYgKCRpbS1tZWRpYS1zdXBwb3J0IGFuZCBsZW5ndGgoJGNvbmRpdGlvbnMpID09IDApIG9yXG4gICAgICAobm90ICRpbS1tZWRpYS1zdXBwb3J0IGFuZCBpbS1pbnRlcmNlcHRzLXN0YXRpYy1icmVha3BvaW50KCRjb25kaXRpb25zLi4uKSkge1xuICAgIEBjb250ZW50O1xuICB9IEBlbHNlIGlmICgkaW0tbWVkaWEtc3VwcG9ydCBhbmQgbGVuZ3RoKCRjb25kaXRpb25zKSA+IDApIHtcbiAgICBAbWVkaWEgI3t1bnF1b3RlKHBhcnNlLWV4cHJlc3Npb24obnRoKCRjb25kaXRpb25zLCAxKSkpfSB7XG4gICAgICAvLyBSZWN1cnNpdmUgY2FsbFxuICAgICAgQGluY2x1ZGUgbWVkaWEoc2xpY2UoJGNvbmRpdGlvbnMsIDIpLi4uKSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBDaGVja2JveGVzXG4gKi9cblxuLmNoZWNrYm94IHtcbiAgZGlzcGxheTogZmxleDtcbiAgaW5wdXQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgbGFiZWwge1xuICAgIGNvbG9yOiAkdHVuZG9yYTtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG4gIGkge1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgIGNvbG9yOiAkc2lsdmVyO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgfVxuICBhIHtcbiAgICBjb2xvcjogJHR1bmRvcmE7XG4gIH1cbiAgLmNoZWNrYm94X19jaGVja2VkIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkIH4gLmNoZWNrYm94X19jaGVja2VkIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgY29sb3I6ICRtYWluLWNvbG9yO1xuICB9XG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkIH4gLmNoZWNrYm94X191bmNoZWNrZWQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmNoZWNrYm94X19sYWJlbC10ZXh0IHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB9XG59XG4iLCIvKipcbiAqIEZvcm1zIGZpZWxkc1xuICovXG5sYWJlbCB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi5zdWItbGFiZWwge1xuICBjb2xvcjogJHNpbHZlcjtcbn1cblxuaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuaW5wdXRbdHlwZT1cInRlbFwiXSBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbmlucHV0W3R5cGU9XCJ1cmxcIl0sXG50ZXh0YXJlYSB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRzaWx2ZXI7XG4gIHBhZGRpbmc6IDVweCAxMHB4O1xuICB0cmFuc2l0aW9uOiBhbGwgJGFuaW1UaW1lICRhbmltU3R5bGU7XG5cbiAgJjpmb2N1cyxcbiAgJjpob3ZlcixcbiAgJjphY3RpdmUge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMXJlbSAkbWFpbi1kYXJrZXItY29sb3ItNSBpbnNldDtcbiAgICBib3JkZXItY29sb3I6ICRtYWluLWNvbG9yO1xuICB9XG5cbiAgJi5lcnJvciB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWxlcnQ7XG4gIH1cbn1cblxudGV4dGFyZWEge1xuICByZXNpemU6IG5vbmU7XG59XG5cbmlucHV0LFxudGV4dGFyZWEsXG5zZWxlY3Qge1xuICAmLmZvcm0tY29udHJvbCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHNpbHZlciAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb246IGFsbCAkYW5pbVRpbWUgJGFuaW1TdHlsZTtcbiAgICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtICFpbXBvcnRhbnQ7XG5cbiAgICAmOi13ZWJraXQtYXV0b2ZpbGwge1xuICAgICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6ICRibGFjaztcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDEwMDBweCAkbWFpbi1saWdodGVyLWNvbG9yLTcwIGluc2V0O1xuICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMCAxMDAwcHggJG1haW4tbGlnaHRlci1jb2xvci03MCBpbnNldDtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgNTAwMHMgZWFzZS1pbi1vdXQgMHM7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSB7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAwLjFyZW0gJG1haW4tZGFya2VyLWNvbG9yLTUgaW5zZXQ7XG4gICAgICBib3JkZXItY29sb3I6ICRtYWluLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uZm9ybS1jaGVjay1pbnB1dCB7XG4gICY6Y2hlY2tlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gJG1haW4tbGlnaHRlci1jb2xvci03MDtcbiAgICBib3JkZXItY29sb3I6ICRtYWluLWNvbG9yO1xuICB9XG59XG5cbi5jdXN0b20tY2hlY2tib3gge1xuICBtaW4td2lkdGg6IDM1cHg7XG5cbiAgW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkLFxuICBbdHlwZT1cImNoZWNrYm94XCJdOm5vdCg6Y2hlY2tlZCkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAtOTk5OXB4O1xuICB9XG5cbiAgW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkK2xhYmVsLFxuICBbdHlwZT1cImNoZWNrYm94XCJdOm5vdCg6Y2hlY2tlZCkrbGFiZWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDI4cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjb2xvcjogJGRvdmUtZ3JheTtcbiAgfVxuXG4gIFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCtsYWJlbDpiZWZvcmUsXG4gIFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKStsYWJlbDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMThweDtcbiAgICBoZWlnaHQ6IDE4cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHNpbHZlcjtcbiAgICBib3JkZXItcmFkaXVzOiAyJTtcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gIH1cblxuICBbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQrbGFiZWw6YWZ0ZXIsXG4gIFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKStsYWJlbDphZnRlciB7XG4gICAgY29udGVudDogJ+KclCc7XG4gICAgY29sb3I6ICRtYWluLWNvbG9yO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDBweDtcbiAgICBsZWZ0OiA0cHg7XG4gICAgdHJhbnNpdGlvbjogYWxsICRhbmltVGltZSAkYW5pbVN0eWxlO1xuICB9XG5cbiAgW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpK2xhYmVsOmFmdGVyIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cblxuICBbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQrbGFiZWw6YWZ0ZXIge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gICYuY2hlY2tib3gtYm90dG9tIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcblxuICAgIFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCtsYWJlbCxcbiAgICBbdHlwZT1cImNoZWNrYm94XCJdOm5vdCg6Y2hlY2tlZCkrbGFiZWwge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzOHB4O1xuICAgIH1cblxuICAgIFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCtsYWJlbDpiZWZvcmUsXG4gICAgW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpK2xhYmVsOmJlZm9yZSB7XG4gICAgICBib3R0b206IDA7XG4gICAgICB0b3A6IGluaGVyaXQ7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgfVxuXG4gICAgW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkK2xhYmVsOmFmdGVyLFxuICAgIFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKStsYWJlbDphZnRlciB7XG4gICAgICBib3R0b206IC0xcHg7XG4gICAgICB0b3A6IGluaGVyaXQ7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgfVxuICB9XG59XG5cbi51cGxvYWQtem9uZSB7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJhY2tncm91bmQ6ICRhbHRvO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXG4gICYudXBsb2FkZWQge1xuICAgIC51cGxvYWQtY29udGVudCB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbiAgfVxuXG4gIHAge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuXG4jdXBsb2FkLWNvdmVyIHtcbiAgcGFkZGluZzogMzBweCAxMHB4O1xuXG4gICN1cGxvYWQtbGlzdCB7XG4gICAgZGl2IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiAxMTBweDtcbiAgICAgIGhlaWdodDogMzhweDtcbiAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAkZ3JheTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgJGFuaW1UaW1lICRhbmltU3R5bGU7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmLnNlbGVjdGVkIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBib3gtc2hhZG93OiAwcHggMHB4IDBweCA0cHggJG1haW4tY29sb3I7XG4gICAgICB9XG5cbiAgICAgIGltZyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgd2lkdGg6IDExMHB4O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuI3VwbG9hZC1wcm9maWwtcGljdHVyZSB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB3aWR0aDogMjAwcHg7XG4gIGhlaWdodDogMjAwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xufVxuXG4ucHJvZHVjdF9waWN0dXJlIHtcbiAgaW5wdXRbdHlwZT1cImZpbGVcIl0ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogMXB4O1xuICAgIG9wYWNpdHk6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB6LWluZGV4OiAtMTtcbiAgfVxufVxuXG4uaW5wdXQtZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBjb2xvcjogJGFsZXJ0O1xuICBmb250LXNpemU6IDEycHg7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG59XG5cbi5yYWRpby10YXN0aW5nIHtcbiAgbGFiZWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNXB4O1xuICAgIGJvdHRvbTogNXB4O1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICBpbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNkNWQ1ZDU7XG4gICAgYmFja2dyb3VuZC1jbGlwOiBjb250ZW50LWJveDtcbiAgICBwYWRkaW5nOiAycHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIG1hcmdpbjogMCAxNXB4O1xuICB9XG5cbiAgaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRtYWluLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJG1haW4tY29sb3I7XG4gIH1cbn0iLCIvKipcbiAqIFN0ZXAgYmFyXG4gKi9cbi5zdGVwYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiAzMCU7XG4gIGhlaWdodDogNDBweDtcbiAgbWFyZ2luOiBhdXRvIGF1dG8gMSUgYXV0bztcbiAgQGluY2x1ZGUgbWVkaWEoXCI8bW9iaWxlLWxhcmdlXCIpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uc3RlcGJhcl9fc3RlcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleDogMCAwIDI1JTtcbiAgbWFyZ2luOiAwIDFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdhbGxlcnk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgc3BhbiB7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgY29sb3I6ICRzaWx2ZXItY2hhbGljZTtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgZm9udC1mYW1pbHk6ICRiZWJhcy1yZWd1bGFyO1xuICB9XG4gICY6YWZ0ZXIsICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogLTIwcHg7XG4gICAgYm90dG9tOiAwO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItbGVmdDogMjBweCBzb2xpZCAkZ2FsbGVyeTtcbiAgICBib3JkZXItdG9wOiAyMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206IDIwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgei1pbmRleDogMjtcbiAgfVxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgICBib3JkZXItbGVmdDogMjBweCBzb2xpZCAkd2hpdGU7XG4gICAgei1pbmRleDogMDtcbiAgfVxufVxuXG4uc3RlcGJhcl9fc3RlcC1hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29udGVzc2E7XG4gIHNwYW4ge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgYm9yZGVyLWxlZnQ6IDIwcHggc29saWQgJGNvbnRlc3NhO1xuICB9XG59XG5cbi5zdGVwYmFyX19zdGVwLWZpcnN0IHtcbiAgc3BhbiB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgJjpiZWZvcmUge1xuICAgIGJvcmRlci1sZWZ0OiBpbml0aWFsO1xuICB9XG59XG4iLCIvKipcbiAqIFRpdGxlIHN0eWxlc1xuICovXG5oMXtcbiAgY29sb3I6ICRtYWluLWNvbG9yO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDQ4cHg7XG4gIGZvbnQtZmFtaWx5OiAkYmViYXMtcmVndWxhcjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbmgze1xuICBjb2xvcjogJG1haW4tY29sb3I7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMjFweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5oNHtcbiAgY29sb3I6ICRtYWluLWNvbG9yO1xuICBmb250LXNpemU6IDE2cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5wYWdlLXRpdGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb2xvcjogJG1haW4tY29sb3I7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMjFweDtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGR1c3R5LWdyYXk7XG4gIH1cbiAgPiBzcGFuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMCAzMHB4O1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICB6LWluZGV4OiAyO1xuICB9XG5cbiAgaW1nIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gIH1cbn1cblxuLndpbmVncm93ZXJfX3RpdGxle1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgY29sb3I6ICRkaW0tZ3JleTtcbn1cbiIsIi8qKlxuICogTGlua3NcbiAqL1xuXG4ubGluayB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmxpbmtfX2xvZ291dHtcblx0QGV4dGVuZCAubGluaztcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMTBweDtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0Y29sb3I6ICRkdXN0eS1ncmF5O1xuXHRmb250LXNpemU6IDEycHg7XG59XG4iLCIubW9kYWwge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMjAlO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDM1JTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXgtaGVpZ2h0OiA2MCU7XG4gIG1hcmdpbjogYXV0bztcbiAgei1pbmRleDogMTA1NTtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICB3aWR0aDogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPG1vYmlsZS1sYXJnZVwiKSB7XG4gICAgd2lkdGg6IDkwJTtcbiAgfVxuXG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubW9kYWwtY29udGVudCxcbiAgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYm94LXNoYWRvdzogMnB4IDJweCA0cHggMCByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgYm9yZGVyOiBub25lO1xuXG4gICAgLm1vZGFsX19zZXBhcmF0b3Ige1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRkdXN0eS1ncmF5O1xuICAgICAgbWFyZ2luOiAxcmVtIGF1dG87XG4gICAgICB3aWR0aDogNTAlO1xuICAgIH1cbiAgfVxuXG4gIC5tb2RhbF9fbG9hZGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQ6IGJsYWNrO1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICBvcGFjaXR5OiAwLjc7XG4gICAgei1pbmRleDogNTtcblxuICAgIC5tb2RhbF9fbG9hZGVyLWFuaW1hdGlvbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgICBib3JkZXI6IDE2cHggc29saWQgI2YzZjNmMztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGJvcmRlci10b3A6IDE2cHggc29saWQgJGNvbnRlc3NhO1xuICAgICAgd2lkdGg6IDEyMHB4O1xuICAgICAgaGVpZ2h0OiAxMjBweDtcbiAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBzcGluIDJzIGxpbmVhciBpbmZpbml0ZTtcbiAgICAgIC8qIFNhZmFyaSAqL1xuICAgICAgYW5pbWF0aW9uOiBzcGluIDJzIGxpbmVhciBpbmZpbml0ZTtcblxuICAgICAgQC13ZWJraXQta2V5ZnJhbWVzIHNwaW4ge1xuICAgICAgICAwJSB7XG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIDEwMCUge1xuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAa2V5ZnJhbWVzIHNwaW4ge1xuICAgICAgICAwJSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgIH1cblxuICAgICAgICAxMDAlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaDIgLm1vZGFsLWRpYWxvZ3VlIGgyIHtcbiAgICBjb2xvcjogJG1haW4tY29sb3I7XG4gICAgZm9udC1mYW1pbHk6ICRyb2JvdG8tY29uZGVuc2VkO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICBwLFxuICBsYWJlbCB7XG4gICAgY29sb3I6ICRncmF5O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxuXG4gIGEge1xuICAgIHdpZHRoOiA2MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICYubW9kYWwtY2xvc2Uge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIG1hcmdpbjogMC41cmVtIGF1dG87XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICBpbWcge1xuICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMTAwKTtcbiAgICAgICAgaGVpZ2h0OiAxNHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jbG9zZSxcbiAgLmNsb3NlLWJ1dHRvbi1tb2RhbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTBweDtcbiAgICByaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuLnlvdXNpZ24tbW9kYWwge1xuICB3aWR0aDogODAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRvcDogNSU7XG4gIG1heC1oZWlnaHQ6IDgwJTtcblxuICBpZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG4ubW9kYWwteGwge1xuICBAZXh0ZW5kIC5tb2RhbDtcblxuICB3aWR0aDogOTAlO1xufVxuXG4uY292ZXIge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogJGJsYWNrO1xuICBvcGFjaXR5OiAwLjc7XG4gIHotaW5kZXg6IDIwO1xufVxuXG4uZGVsaXZlcnktdGFibGUge1xuICB3aWR0aDogNjAlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPHRhYmxldC1sYXJnZVwiKSB7XG4gICAgd2lkdGg6IDI3MHB4O1xuICB9XG59XG5cbiNzdWJzY3JpcHRpb24tbW9kYWwtZWRpdC5tb2RhbCB7XG4gIG1heC1oZWlnaHQ6IDgwJTtcbn1cblxuLmNoYW5nZS1tb2RhbCB7XG4gIGJvcmRlcjogMnB4IHNvbGlkICRtYWluLWNvbG9yO1xuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHotaW5kZXg6IDE1O1xuICB9XG5cbiAgLm1vZGFsLWJhY2tkcm9wIHtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICB6LWluZGV4OiAwO1xuICB9XG59IiwiLyoqXG4gKiBUYWJzXG4gKi9cblxuLnRhYnMge1xuICBwYWRkaW5nOiAyNHB4IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JheTtcbiAgQGluY2x1ZGUgbWVkaWEoXCI8bW9iaWxlLWxhcmdlXCIpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpIHtcbiAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgIG1hcmdpbjogYXV0bztcblxuICAgICAgJi5pbnRlbnR7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb250ZXNzYSAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLXRvcDogMSU7XG4gICAgICAgIGF7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgJjphZnRlcntcbiAgICAgICAgICAgIHdpZHRoOiAwJTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgYXtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb2xvcjogJGdyYXk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAkYW5pbVRpbWUgJGFuaW1TdHlsZTtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgIGhlaWdodDogNXB4O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtYWluLWNvbG9yO1xuICAgICAgICAgIHRyYW5zaXRpb246IHdpZHRoICRhbmltVGltZSAkYW5pbVN0eWxlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuYWN0aXZlIGEsXG4gICAgICBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRtYWluLWNvbG9yO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgJi5jb250ZXNzYSB7XG4gICAgICAgICAgY29sb3I6ICRjb250ZXNzYTtcbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuYm9yZGVyLW5vbmUge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxufVxuXG4udGFicywgLnRhYnMtc2VsZWN0IHtcbiAgJi5jb250ZXNzYSB7XG4gICAgdWwge1xuICAgICAgbGkge1xuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogJGdyYXk7XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29udGVzc2E7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuYWN0aXZlIGEsIGE6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAkY29udGVzc2E7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnRhYnMtc2VsZWN0IHtcbiAgJi5jb250ZXNzYSB7XG4gICAgLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgICBjb2xvcjogJGNvbnRlc3NhO1xuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAkY29udGVzc2E7XG4gICAgICB9XG4gICAgICAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6ICRncmF5O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29udGVzc2E7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAwLjFyZW0gJGNvbnRlc3NhIGluc2V0O1xuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBQYWdlIGNvbnRlbnRcbiAqL1xuLnBhZ2UtaGVhZGVyIHtcbiAgcGFkZGluZzogMCAzNXB4O1xufVxuXG4ucGFnZS1jb250ZW50IHtcbiAgcGFkZGluZzogMzVweCAzNXB4IDEyNXB4IDM1cHg7XG59XG4iLCIvKipcbiAqIEN1c3RvbSBub3RpZiBiYWRnZVxuICovXG5cbi5iYWRnZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHRvcDogLTIwcHg7XG4gIHJpZ2h0OiAtMTBweDtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDIwcHg7XG4gIGZvbnQtc2l6ZTogOXB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIGNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgJG1haW4tY29sb3I7XG4gIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogNHB4O1xuICAgIGhlaWdodDogNHB4O1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgei1pbmRleDogMTtcbiAgfVxufVxuIiwiLyoqXG4gKiBTbGlkZXJzXG4gKi9cblxuLnNsaWNrLXNsaWRlciB7XG4gIC5zbGljay1hcnJvd3tcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgd2lkdGg6IDI2cHg7XG4gICAgaGVpZ2h0OiAyNnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDI2cHg7XG4gICAgYmFja2dyb3VuZDogJG1haW4tY29sb3I7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICB6LWluZGV4OiAxMDtcbiAgICBpIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIH1cbiAgICAmLnNsaWNrLXByZXYge1xuICAgICAgbGVmdDogLTEzcHg7XG4gICAgfVxuICAgICYuc2xpY2stbmV4dCB7XG4gICAgICByaWdodDogLTEzcHg7XG4gICAgfVxuICB9XG59XG4jd2VsY29tZS1zbGlkZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuIiwiLyoqXG4gKiBTZWxlY3RcbiAqL1xuLnNlbGVjdC1uYXZiYXIge1xuICBmb250LXNpemU6IDFlbTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAkc2lsdmVyO1xuICBwYWRkaW5nOiA1cHggMTBweDtcbiAgdHJhbnNpdGlvbjogYWxsICRhbmltVGltZSAkYW5pbVN0eWxlO1xuICAmOmZvY3VzLFxuICAmOmhvdmVyLFxuICAmOmFjdGl2ZXtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAwLjFyZW0gJG1haW4tZGFya2VyLWNvbG9yLTUgaW5zZXQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgfVxufVxuXG4udGFicy1zZWxlY3Qge1xuICBAZXh0ZW5kIC5zZWxlY3QtbmF2YmFyO1xuICBkaXNwbGF5OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LWZhbWlseTogJHJvYm90by1jb25kZW5zZWQ7XG4gIGNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgYXtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYShcIjxtb2JpbGUtbGFyZ2VcIikge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5uYXYtaXRlbXtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWx0bztcbiAgfVxuICAubmF2YmFyLXRvZ2dsZXJ7XG4gICAgY29sb3I6ICM5MzkzOTM7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAyNXB4O1xuICAgICY6Zm9jdXN7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cbiAgfVxuICBvcHRpb246bm90KDpjaGVja2VkKSB7XG4gICAgY29sb3I6ICRkdXN0eS1ncmF5O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIH1cbn1cbiIsIi8qKlxuICogVGFibGVzXG4gKi9cblxuLnRhYmxlLWJvcmRlcmVkIHtcbiAgYm9yZGVyLWNvbG9yOiAkc2lsdmVyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gIH1cbn1cblxuLmJvcmRlci10b3AtZ3JheSB7XG4gIGJvcmRlci10b3A6IDFwYyBzb2xpZCAkZ3JheTtcbn1cblxuLnRhYmxlLWNlbGwtdGV4dCB7XG4gIGNvbG9yOiAkYm91bGRlcjtcbn1cbiIsIi5zZWFyY2gtY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtZmFtaWx5OiAkcm9ib3RvLWNvbmRlbnNlZDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBwYWRkaW5nOiAwIDM1cHggMCAwO1xufVxuXG5pbWcuaW5mb3JtYXRpb24ge1xuICB3aWR0aDogMjhweDtcbiAgaGVpZ2h0OiAzNHB4O1xuICBtYXJnaW4tcmlnaHQ6IDZweDtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5zZWFyY2gtdGV4dCB7XG4gIGZvbnQtZmFtaWx5OiAkcm9ib3RvLWNvbmRlbnNlZDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zdHJldGNoOiBjb25kZW5zZWQ7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgY29sb3I6ICRncmF5O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBtYXJnaW4tdG9wOiAycHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmLS1pbmZvcm1hdGlvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gIH1cblxuICAmLS1vcGVuIHtcbiAgICBjb2xvcjogJG1haW4tdGV4dC1jb2xvcjtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIH1cbn1cblxuLnNlYXJjaC1iYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIG1hcmdpbjogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNlYXNoZWxsO1xuICBoZWlnaHQ6IDY1cHg7XG5cbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gICZfX2luZm9ybWF0aW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuXG4gICAgLmNsb3NlLWhlbHAge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmX19zZWFyY2gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAuY2xvc2UtbWVudSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYuaGVscC1vcGVuZWQge1xuICAgICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAkd2hpdGU7XG4gICAgfVxuXG4gICAgLmlucHV0LWdyb3VwIHtcbiAgICAgIG1hcmdpbjogMTVweDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPG1vYmlsZS1sYXJnZVwiKSB7XG4gICAgICAgIG1hcmdpbjogMTBweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fYWR2YW5jZWQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAxNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWFzaGVsbDtcbiAgICB6LWluZGV4OiAyO1xuXG4gICAgJi5zZWFyY2gtb3BlbmVkIHtcbiAgICAgIGJvcmRlci1sZWZ0OiA0cHggc29saWQgJHdoaXRlO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPG1vYmlsZS1sYXJnZVwiKSB7XG4gICAgJl9fYWR2YW5jZWQge1xuICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwcHg7XG4gICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICB0ZXh0LW92ZXJmbG93OiBpbml0aWFsO1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgIH1cblxuICAgICZfX2luZm9ybWF0aW9uIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICB9XG4gIH1cbn1cblxuI2J1dHRvbi1zZWFyY2gge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIGJvcmRlci1jb2xvcjogJHNpbHZlcjtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHBhZGRpbmc6IDAgMTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgaGVpZ2h0OiAzNXB4O1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPG1vYmlsZS1sYXJnZVwiKSB7XG4gICAgaGVpZ2h0OiAzNXB4O1xuICAgIHBhZGRpbmc6IDAgOHB4O1xuICB9XG59XG5cbiNidXR0b24tc2VhcmNoOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAkbWFpbi1kYXJrZXItY29sb3ItNTtcbn1cblxuLmlucHV0LWdyb3VwIHtcbiAgbWFyZ2luOiAxNXB4O1xufVxuXG4jYnV0dG9uLXNlYXJjaCxcbiNwcm9kdWN0X3NlYXJjaF9zZWFyY2hCYXIge1xuICBoZWlnaHQ6IDM1cHg7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbn1cblxuI3Byb2R1Y3Rfc2VhcmNoX3NlYXJjaEJhciB7XG4gIEBpbmNsdWRlIG1lZGlhKFwiPG1vYmlsZS1sYXJnZVwiKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLmFkbWluLXNlYXJjaCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgYm9yZGVyLWNvbG9yOiAkc2lsdmVyO1xuICBib3JkZXItbGVmdDogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgcGFkZGluZzogMCAxMHB4O1xuICBoZWlnaHQ6IDM4cHg7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbn1cblxuLmFkbWluLXNlYXJjaDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogJG1haW4tZGFya2VyLWNvbG9yLTU7XG59XG5cbi5hdmFuY2VkLXNlYXJjaCB7XG4gIHdpZHRoOiAyOHB4O1xuICBoZWlnaHQ6IDI4cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmLS1jbG9zZSB7XG4gICAgd2lkdGg6IDE4cHg7XG4gICAgaGVpZ2h0OiAxOHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgIG1hcmdpbi10b3A6IDVweDtcbiAgfVxufVxuXG4uYWR2YW5jZWQtc2VhcmNoLW1lbnUsXG4uaGVscC1zZWFyY2gtbWVudSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNlYXNoZWxsO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiBhdXRvO1xuICB6LWluZGV4OiAxO1xuICBwYWRkaW5nOiAwIDExJTtcblxuICAmLmFkdmFuY2VkLXBhbmVsLW9wZW5lZCxcbiAgJi5oZWxwLXBhbmVsLW9wZW5lZCB7XG4gICAgYm9yZGVyLXRvcDogNHB4IHNvbGlkICR3aGl0ZTtcbiAgfVxuXG4gIHAsXG4gIHNwYW4ge1xuICAgIGNvbG9yOiAkZGltLWdyZXk7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtZmFtaWx5OiAkcm9ib3RvLWNvbmRlbnNlZDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgaDEge1xuICAgIGZvbnQtZmFtaWx5OiAkcm9ib3RvLWNvbmRlbnNlZDtcbiAgICBjb2xvcjogJGRvdmUtZ3JheTtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgfVxuXG4gIGgyIHtcbiAgICBmb250LWZhbWlseTogJHJvYm90by1jb25kZW5zZWQ7XG4gICAgY29sb3I6ICRjb250ZXNzYTtcbiAgICBsaW5lLWhlaWdodDogMC45NjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgfVxuXG4gIGgzIHtcbiAgICBmb250LWZhbWlseTogJHJvYm90by1jb25kZW5zZWQ7XG4gICAgY29sb3I6ICRjb250ZXNzYTtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtc2l6ZTogMS42MjVyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgbWFyZ2luLXRvcDogMTNweDtcblxuICAgIHNwYW4ge1xuICAgICAgY29sb3I6ICRtYWluLXRleHQtY29sb3I7XG4gICAgICBmb250LXNpemU6IDEuNjI1cmVtO1xuICAgIH1cbiAgfVxuXG4gIC5jb250ZXNzYSB7XG4gICAgY29sb3I6ICRjb250ZXNzYTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuXG4gIC53aGl0ZS1zZWN0aW9uIHtcbiAgICBwYWRkaW5nOiAyZW0gMS41ZW07XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgfVxuXG4gIC5ibG9jayB7XG4gICAgYm9yZGVyLWxlZnQ6ICRjb250ZXNzYSAzcHggc29saWQ7XG4gICAgcGFkZGluZy1sZWZ0OiAxZW07XG5cbiAgICAmLS1ncmF5IHtcbiAgICAgIGJvcmRlci1sZWZ0OiAkYWx0byAzcHggc29saWQ7XG4gICAgfVxuICB9XG5cbiAgLmRpc2NvdW50IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAuc2VjdGlvbiAucGx1cyB7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA4NXB4O1xuICAgIC8vbWFyZ2luOiAyJSAxNCU7XG4gICAgbWFyZ2luOiA2cHggNDZweCAwcHggMTA1cHg7XG4gICAgZm9udC1mYW1pbHk6ICRyb2JvdG8tcmVndWxhcjtcbiAgICBmb250LXNpemU6IDcycHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zdHJldGNoOiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICBjb2xvcjogJGNvbnRlc3NhO1xuICB9XG5cbiAgLnNlY3Rpb24tcGx1cyB7XG4gICAgei1pbmRleDogMTtcbiAgICBtYXJnaW46IDIwcHggMCA1cHg7XG4gIH1cblxuICAuZGlzY291bnQge1xuICAgIG1hcmdpbi1sZWZ0OiAxOXB4O1xuICAgIHdpZHRoOiA2MyU7XG4gICAgZm9udC1mYW1pbHk6ICRyb2JvdG8tY29uZGVuc2VkO1xuICAgIGNvbG9yOiAkZGltLWdyZXk7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG5cbiAgLmp1bWJvIHtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGp1bWJvO1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuXG4gICAgaW1nLnBfbmVnb2NpZSB7XG4gICAgICB3aWR0aDogMTEwcHg7XG4gICAgICBoZWlnaHQ6IDE4N3B4O1xuICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICB9XG5cbiAgICBpbWcudGFibGUtcHJpY2VzIHtcbiAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICB9XG5cbiAgICAuYmxvYy1ib3R0bGUge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgd2lkdGg6IDI0MHB4O1xuICAgIH1cblxuICAgIC5ib3R0bGUtdGFibGUtcHJpY2VzIHtcbiAgICAgIGFsaWduLWl0ZW1zOiB1bnNhZmUgY2VudGVyO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xMDRweDtcbiAgICAgIG1hcmdpbi10b3A6IC0xMnB4O1xuXG4gICAgICAuZnJlZS1zaGlwcGluZyB7XG4gICAgICAgIHdpZHRoOiA2NyU7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkcm9ib3RvLWNvbmRlbnNlZDtcbiAgICAgICAgY29sb3I6ICRkaW0tZ3JleTtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICBtYXJnaW4tdG9wOiA0OHB4O1xuICAgICAgICBmbG9hdDogbGVmdDtcblxuICAgICAgICAucmVjdGFuZ2xlIHtcbiAgICAgICAgICB3aWR0aDogNTRweDtcbiAgICAgICAgICBoZWlnaHQ6IDNweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29udGVzc2E7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDE0MHB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpbWcuYm90dGxlIHtcbiAgICAgIHdpZHRoOiA0OHB4O1xuICAgICAgaGVpZ2h0OiAxNzRweDtcbiAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICBtYXJnaW4tbGVmdDogMThweDtcbiAgICB9XG5cbiAgICBpbWcucGFuYWNoYWdlIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA4M3B4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyN3B4O1xuICAgICAgd2lkdGg6IDE0MXB4O1xuICAgICAgaGVpZ2h0OiAxMThweDtcbiAgICB9XG5cbiAgICBpbWcuY2hyb25vIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyOXB4O1xuICAgICAgd2lkdGg6IDE0MXB4O1xuICAgICAgaGVpZ2h0OiAxMThweDtcbiAgICB9XG5cbiAgICBpbWcucmVjbyB7XG4gICAgICB3aWR0aDogNzFweDtcbiAgICAgIGhlaWdodDogODRweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNXB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMXB4O1xuICAgIH1cblxuICAgIC5pbnRlbnRpb24ge1xuICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cblxuICAgIC5pbnRlbnRpb24tdGltZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyOXB4O1xuICAgIH1cblxuICAgIC5pbnRlbnRpb24tdGltZSBwOmZpcnN0LW9mLXR5cGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMThweDtcbiAgICB9XG4gIH1cblxuICAuanVtYm9+Lmp1bWJvIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB9XG5cbiAgLndpbmUtaW1hZ2Uge1xuICAgIHdpZHRoOiAxNTZweDtcbiAgICBoZWlnaHQ6IDE0OXB4O1xuICAgIGJvcmRlcjogc29saWQgMnB4ICRjb250ZXNzYTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmLS1ncmF5IHtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRncmF5O1xuICAgICAgbWFyZ2luLWxlZnQ6IDE3cHg7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgZm9udC1mYW1pbHk6ICRyb2JvdG8tY29uZGVuc2VkO1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gICAgICBjb2xvcjogJGNvbnRlc3NhO1xuICAgICAgbWFyZ2luOiA0cHggNHB4IDA7XG4gICAgfVxuXG4gICAgLmZsYWcge1xuICAgICAgbWFyZ2luLXRvcDogMTlweDtcblxuICAgICAgcCB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG5cbiAgICAgIC5mbGFnX190ZXh0IHtcbiAgICAgICAgbWFyZ2luOiAycHggMTVweCAwIDJweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAud2luZS1kZXNjcmlwdGlvbiB7XG4gICAgd2lkdGg6IDE2N3B4O1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJi0tZ3JheSB7XG4gICAgICBtYXJnaW4tbGVmdDogMTdweDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGNvbG9yOiAkZG92ZS1ncmF5O1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICBwLmZ3LWJvbGQge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICB9XG5cbiAgICAudXN1YWwtcHJpY2Uge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgLmRlc2NyaXB0aW9uX190b3AtdGV4dCB7XG4gICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgJi0tdG9wLXNhbGVzIHtcbiAgICAgICAgY29sb3I6ICR0b3Atc2FsZXM7XG4gICAgICB9XG5cbiAgICAgICYtLWZhdm91cml0ZSB7XG4gICAgICAgIGNvbG9yOiAkZmF2b3VyaXRlO1xuICAgICAgfVxuXG4gICAgICAmLS1uZXcge1xuICAgICAgICBjb2xvcjogJG5ldztcbiAgICAgIH1cblxuICAgICAgJi0tcHJvbW8ge1xuICAgICAgICBjb2xvcjogJHByb21vO1xuICAgICAgfVxuXG4gICAgICAmLS10b3AtbWFyZ2Uge1xuICAgICAgICBjb2xvcjogJHRvcC1tYXJnZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYW5ub3RhdGlvbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IC0yMnB4O1xuICAgICAgcmlnaHQ6IDE3cHg7XG4gICAgfVxuICB9XG5cbiAgLmV4YW1wbGUge1xuICAgIHdpZHRoOiAyOTlweDtcbiAgICBtYXJnaW46IDc5cHggYXV0byAwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cblxuICAucmVhZC1tb3JlIHtcbiAgICBtYXJnaW46IDY4cHggYXV0byAwO1xuICAgIHBhZGRpbmc6IDhweCAxN3B4O1xuICAgIGJvcmRlci1yYWRpdXM6IDAuOTM4cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhbHRvO1xuICAgIGNvbG9yOiAkZGltLWdyZXk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC5idXR0b24tc2VsZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29udGVzc2E7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIHBhZGRpbmc6IDhweCAxN3B4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgYm9yZGVyLXJhZGl1czogMC45MzhyZW07XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHdpZHRoOiAxNzdweDtcbiAgICBtYXJnaW46IDI2cHggYXV0byA0MHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLnByZXYtYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IGNhbGMoNTAlIC0gMzBweCk7XG4gICAgbGVmdDogY2FsYygwJSAtIDUwcHgpO1xuICAgIHotaW5kZXg6IDEwO1xuICB9XG5cbiAgLm5leHQtYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IGNhbGMoNTAlIC0gMzBweCk7XG4gICAgcmlnaHQ6IGNhbGMoMCUgLSAyMXB4KTtcbiAgICB6LWluZGV4OiAxMDtcbiAgfVxuXG4gIC5zbGljay1hcnJvdyB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLnRpbWUtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luOiA0MHB4IDAgMCA2cHg7XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgIHAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICB9XG5cbiAgICAudGltZS1jb250YWluZXJfX3RpbWUge1xuICAgICAgY29sb3I6ICRtYWluLXRleHQtY29sb3I7XG4gICAgfVxuXG4gICAgLnRpbWUtY29udGFpbmVyX190ZXh0IHtcbiAgICAgIGNvbG9yOiAkY29udGVzc2E7XG4gICAgfVxuICB9XG5cbiAgLmRvdWJsZS1wcm9kdWN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAucHJvZHVjdCB7XG4gICAgICB3aWR0aDogMTM4cHg7XG4gICAgICBtYXJnaW46IDAgMnB4IDA7XG4gICAgfVxuXG4gICAgLndpbmUtaW1hZ2Uge1xuICAgICAgd2lkdGg6IDEzOHB4O1xuICAgICAgaGVpZ2h0OiAxMjNweDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAud2luZS1kZXNjcmlwdGlvbiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuLnByb2dyZXNzLWJhcixcbi5tb2JpbGUtcHJvZ3Jlc3MtYmFyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxNzZweDtcbiAgaGVpZ2h0OiA1cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbjogMTVweCBhdXRvIDlweCBhdXRvO1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRhbHRvO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRjb250ZXNzYSwgJGNvbnRlc3NhKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAwIDEwMCU7XG5cbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1zaXplIC40cyBlYXNlLWluLW91dDtcbn1cblxuLmhlbHAtc2VhcmNoLW1lbnUge1xuICBzdmcge1xuICAgIHBhdGgge1xuICAgICAgZmlsbDogJGR1c3R5LWdyYXlcbiAgICB9XG4gIH1cblxuICAuYmFkZ2Uge1xuICAgIHRvcDogLTE1cHg7XG4gICAgcmlnaHQ6IC0xMHB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGhlaWdodDogMzBweDtcbiAgICBiYWNrZ3JvdW5kOiAkc2Vhc2hlbGw7XG4gIH1cbn1cblxuLmZpbmQtYS13aW5lIHtcbiAgY29sb3I6ICRtYWluLWRhcmtlci1jb2xvci01O1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBtYXJnaW4tdG9wOiAxMXB4O1xufVxuXG4uZm9ybSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogMTQwcHg7XG4gIG1hcmdpbi10b3A6IDE3cHg7XG4gIGhlaWdodDogMzVweDtcblxuICAuZm9ybV9faW5wdXQge1xuICAgIGNvbG9yOiAkYm91bGRlcjtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICB3aWR0aDogMTY3cHg7XG4gIH1cblxuICAuaW5wdXRfX3JhZGlvIHtcbiAgICBoZWlnaHQ6IDE5cHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwIDVweDtcbiAgfVxuXG4gIC5pbnB1dF9fcmFkaW8+aW5wdXQge1xuICAgIGhlaWdodDogMTlweDtcbiAgICB3aWR0aDogMTlweDtcbiAgICBtYXJnaW46IDAgNXB4O1xuICB9XG59XG5cbi5mb3JtLXNlbGVjdDpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMXJlbSAkbWFpbi1kYXJrZXItY29sb3ItNSBpbnNldDtcbiAgYm9yZGVyLWNvbG9yOiAkbWFpbi1kYXJrZXItY29sb3ItNTtcbn1cblxuLmZvcm0taW5wdXQ6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjFyZW0gJG1haW4tZGFya2VyLWNvbG9yLTUgaW5zZXQ7XG4gIGJvcmRlci1jb2xvcjogJG1haW4tZGFya2VyLWNvbG9yLTU7XG59XG5cbi53aW5lLWZvcm0ge1xuICBtYXgtd2lkdGg6IDEyODBweDtcblxuICAuZm9ybV9fcmFkaW8ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cbiAgICBsYWJlbCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG59XG5cbiNmaW5kLXdpbmUge1xuICBtYXJnaW4tdG9wOiAzNXB4O1xufVxuXG4ucGFuZWwtbWFyZ2luIHtcbiAgcGFkZGluZzogM3JlbTtcbn1cblxuaW1nLmFycm93IHtcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgbWFyZ2luLXJpZ2h0OiAxNHB4O1xufVxuXG4ubW9iaWxlLXNsaWRlcixcbi5tb2JpbGUtbmF2aWdhdGlvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5oZWxwLXNsaWRlciB7XG4gIC5yZWFkLW1vcmUge1xuICAgIG1hcmdpbjogYXV0byBhdXRvIDE2cHhcbiAgfVxuXG4gIC53aGl0ZS1zZWN0aW9uIHtcbiAgICBoZWlnaHQ6IDI1NnB4O1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAuc2Nyb2xsYWJsZSB7XG4gICAgd2lkdGg6IDI5MnB4O1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAgIGJvcmRlci1yaWdodDogc29saWQgMXB4ICRkdXN0eS1ncmF5O1xuICB9XG5cbiAgLnBhZGRpbmcge1xuICAgIHBhZGRpbmc6IDEycHggMCAzOHB4IDA7XG4gIH1cblxuICAjZGVza3RvcC1zbGlkZS0xIC5wYWRkaW5nIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDE0cHg7XG4gIH1cblxuICAjZGVza3RvcC1zbGlkZS0yIHtcbiAgICAucGFkZGluZz5kaXY6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgIH1cblxuICAgIC53aW5lLWltYWdlLFxuICAgIC53aW5lLWRlc2NyaXB0aW9uIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gICNkZXNrdG9wLXNsaWRlLTMge1xuICAgIC50YWJsZS1ib3JkZXJlZCB7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgfVxuXG4gICAgdGgge1xuICAgICAgcGFkZGluZzogNXB4O1xuICAgIH1cblxuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICB9XG5cbiAgICBkaXYucGFkZGluZz5kaXY6Zmlyc3QtY2hpbGQge1xuICAgICAgaGVpZ2h0OiAxNTlweDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICB9XG5cbiAgI2Rlc2t0b3Atc2xpZGUtNCB7XG4gICAgLnByb2R1Y3Qge1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgIH1cblxuICAgIC50aW1lLWNvbnRhaW5lciBwIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgfVxuICB9XG5cbiAgI2Rlc2t0b3Atc2xpZGUtNSB7XG4gICAgaW1nIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgIG1hcmdpbi10b3A6IDJweDtcbiAgICB9XG5cbiAgICBoMSB7XG4gICAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICAgICAgY29sb3I6ICRtYWluLXRleHQtY29sb3I7XG4gICAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG5cbiAgICAucGFkZGluZyBwIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgfVxuXG4gICAgLmRpc2NvdmVyIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIG1hcmdpbjogNHB4IGF1dG87XG4gICAgfVxuICB9XG5cbiAgI2Rlc2t0b3Atc2xpZGUtNyB7XG4gICAgLmNocm9ubyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDEyMHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDEycHg7XG4gICAgfVxuICB9XG5cbiAgI2Rlc2t0b3Atc2xpZGUtMTUge1xuICAgIC5ibG9jayB7XG4gICAgICBtYXJnaW46IGF1dG8gMTBweDtcbiAgICB9XG5cbiAgICAuZXhhbXBsZSB7XG4gICAgICBtYXJnaW46IDAgMCAwIGF1dG87XG4gICAgICB3aWR0aDogNTQlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICBwIHtcbiAgICAgICAgbWFyZ2luOiBhdXRvIDMwcHggNTFweDtcbiAgICAgIH1cblxuICAgICAgaW1nIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBoZWlnaHQ6IDI1NnB4O1xuICAgICAgfVxuXG4gICAgICAuZC1mbGV4IGRpdiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDc5cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgI2Rlc2t0b3Atc2xpZGUtMTUge1xuICAgIC5ibG9jayB7XG4gICAgICBtYXJnaW46IGF1dG8gMTBweDtcbiAgICB9XG5cbiAgICAuZXhhbXBsZSB7XG4gICAgICBtYXJnaW46IDAgMCAwIGF1dG87XG4gICAgICB3aWR0aDogNTQlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICBwIHtcbiAgICAgICAgbWFyZ2luOiBhdXRvIDMwcHggNTFweDtcbiAgICAgIH1cblxuICAgICAgaW1nIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBoZWlnaHQ6IDI1NnB4O1xuICAgICAgfVxuXG4gICAgICAuZC1mbGV4IGRpdiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDc5cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgI2Rlc2t0b3Atc2xpZGUtMTcge1xuICAgIC5leGFtcGxlIHtcbiAgICAgIG1hcmdpbjogYXV0byBhdXRvIDA7XG5cbiAgICAgIC5yZWFkLW1vcmUge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICNkZXNrdG9wLXNsaWRlLTE4IHtcbiAgICAuZXhhbXBsZSB7XG4gICAgICBtYXJnaW46IDZweCBhdXRvIDA7XG5cbiAgICAgIHAge1xuICAgICAgICBtYXJnaW46IGF1dG8gNnB4O1xuICAgICAgfVxuXG4gICAgICAucmVhZC1tb3JlIHtcbiAgICAgICAgbWFyZ2luOiAtNDRweCBhdXRvO1xuICAgICAgfVxuXG4gICAgICBpbWcge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuQG1lZGlhIChtYXgtd2lkdGg6IDgwMHB4KSB7XG5cbiAgLmFkdmFuY2VkLXNlYXJjaC1tZW51LFxuICAuaGVscC1zZWFyY2gtbWVudSB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC5zZWFyY2gtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgI3dpbmVncm93ZXIsXG4gICN3aW5lZ3Jvd2VyLXJhZGlvIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLmZvcm0ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgaGVpZ2h0OiAxNjRweDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbjogMDtcblxuICAgIC5mb3JtX19pbnB1dCxcbiAgICAuaW5wdXRfX3JhZGlvIHtcbiAgICAgIG1hcmdpbjogOHB4IGF1dG8gMDtcbiAgICB9XG5cbiAgICAuZm9ybV9fcmFkaW8ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5hZHZhbmNlZC1zZWFyY2gtbWVudSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG5cbiAgLndpbmUtZm9ybSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgI2NvbG9yIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAjZmluZC13aW5lIHtcbiAgICBtYXJnaW46IDE1cHggYXV0bztcbiAgfVxuXG4gIC5tb2JpbGUtc2xpZGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDM1OXB4O1xuICB9XG5cbiAgI2Rlc2t0b3AtaGVscC1tZW51IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLnNsaWNrLXNsaWRlciAuc2xpY2stYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogMTA7XG4gICAgbWFyZ2luLXRvcDogMjRweDtcbiAgfVxuXG4gIC5tb2JpbGUtbmV4dC1hcnJvdyB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAzNXB4O1xuICB9XG5cbiAgLm1vYmlsZS1wcmV2LWFycm93IHtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAxMnB4O1xuICB9XG5cbiAgLmhlbHAtc2VhcmNoLW1lbnUge1xuICAgIGgxIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMC45MzhyZW07XG4gICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICB9XG5cbiAgICBzcGFuIHtcbiAgICAgIGZvbnQtc2l6ZTogMC45MzhyZW07XG4gICAgfVxuXG4gICAgLm5hdmlnYXRpb24ge1xuICAgICAgbWFyZ2luOiAyMHB4IGF1dG8gMDtcblxuICAgICAgcCxcbiAgICAgIHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5yZWFkLW1vcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgbWFyZ2luOiAwIGF1dG8gMjRweDtcblxuICAgICAgJi0tZ3JleSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzaWx2ZXI7XG4gICAgICAgIGNvbG9yOiAkdHVuZG9yYTtcbiAgICAgICAgbWFyZ2luLXRvcDogLTQycHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNsaWRlLW51bWJlciB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuXG4gICAgLndhdy1wcmljZSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgfVxuXG4gICAgLmRpc2NvdW50IHtcbiAgICAgIG1hcmdpbjogMThweCAwO1xuICAgICAgZm9udC1zaXplOiAwLjkzOHJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICAgIH1cblxuICAgIC5wcmluY2lwbGUge1xuICAgICAgbWFyZ2luOiA0NnB4IGF1dG8gMjRweCBhdXRvO1xuICAgICAgd2lkdGg6IDI3MnB4O1xuICAgIH1cblxuICAgIC5zZWN0aW9uIHtcbiAgICAgIG1hcmdpbjogMjdweCBhdXRvIDEycHg7XG4gICAgICB3aWR0aDogMjU2cHg7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgaGVpZ2h0OiAxNzFweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2VjdGlvbi1wbHVzIHtcbiAgICAgIG1hcmdpbjogMjBweCBhdXRvIDVweDtcbiAgICB9XG5cbiAgICAjc2xpZGUzIHtcbiAgICAgIGltZyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XG4gICAgICAgIHdpZHRoOiAyNjJweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYmxvYy1ib3R0bGUge1xuICAgICAgd2lkdGg6IDIyN3B4O1xuICAgICAgbWFyZ2luOiA3cHggYXV0byAzMHB4O1xuXG4gICAgICBpbWcge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDI1cHg7XG4gICAgICB9XG5cbiAgICAgIC5mcmVlLXNoaXBwaW5nIHtcbiAgICAgICAgbWFyZ2luOiA0MnB4IDAgMjdweCAwO1xuICAgICAgICBjb2xvcjogJGRpbS1ncmV5O1xuICAgICAgfVxuICAgIH1cblxuICAgICNzbGlkZTUge1xuICAgICAgaW1nIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMy43cHg7XG4gICAgICAgIHdpZHRoOiAxMTIuM3B4O1xuICAgICAgfVxuXG4gICAgICAuYmxvY2ssXG4gICAgICAuaW50ZW50aW9uIHtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICB3aWR0aDogMjk2cHg7XG4gICAgICB9XG5cbiAgICAgIC5ibG9jayB7XG4gICAgICAgIG1hcmdpbi10b3A6IDM5cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgIH1cblxuICAgICAgYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAjc2xpZGU2IHtcbiAgICAgIC5ibG9jayB7XG4gICAgICAgIG1hcmdpbi10b3A6IDQxcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI2cHg7XG4gICAgICB9XG5cbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogYXV0byAxMXB4IGF1dG8gMDtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaW50ZW50aW9uLXRpbWUge1xuICAgICAgd2lkdGg6IDI4OXB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG8gMjZweDtcbiAgICB9XG5cbiAgICAjc2xpZGU3IHtcbiAgICAgIGltZyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMjNweDtcbiAgICAgICAgd2lkdGg6IDcxcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgICB9XG5cbiAgICAgIC5kLWZsZXggcDpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNDJweDtcbiAgICAgIH1cblxuICAgICAgLmJsb2NrIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTJweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjJweDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIC50YXN0aW5nIHtcbiAgICAgIHdpZHRoOiAyODlweDtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICB9XG4gIH1cblxuICAubW9iaWxlLXNsaWRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAzNTlweDtcbiAgICBtYXJnaW4tdG9wOiA0M3B4O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC44cyBlYXNlO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIC44cyBlYXNlO1xuICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgLjhzIGVhc2U7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIC44cyBlYXNlO1xuICAgIHRyYW5zaXRpb246IGFsbCAuOHMgZWFzZTtcblxuICAgIHNwYW4sXG4gICAgcCB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIH1cblxuICAgIC53aGl0ZS1zZWN0aW9uIHtcbiAgICAgIHdpZHRoOiAyOTJweCAhaW1wb3J0YW50O1xuICAgICAgaGVpZ2h0OiA0MDdweDtcbiAgICAgIHBhZGRpbmc6IDIycHggMjFweCAwIDE5cHg7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuOHMgZWFzZTtcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIC44cyBlYXNlO1xuICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAuOHMgZWFzZTtcbiAgICAgIC1vLXRyYW5zaXRpb246IGFsbCAuOHMgZWFzZTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAuOHMgZWFzZTtcbiAgICB9XG5cbiAgICAud2luZS1pbWFnZSB7XG4gICAgICBoZWlnaHQ6IDE0NXB4O1xuICAgICAgbWFyZ2luOiAwIDZweCAwO1xuXG4gICAgICBpbWcge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNjcm9sbGFibGUge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIH1cblxuICAgIC5leGFtcGxlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luOiAyMnB4IGF1dG8gMzVweDtcblxuICAgICAgcCB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQzO1xuICAgICAgfVxuICAgIH1cblxuICAgIC4tcmVhZC1tb3JlIHtcbiAgICAgICYtLWdyZXkge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5leGFtcGxlLXJlYWQtbW9yZSB7XG4gICAgICBtYXJnaW46IDAgYXV0byAyNHB4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGNvbG9yOiAkdHVuZG9yYTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRnYWxsZXJ5O1xuICAgICAgcGFkZGluZzogOHB4IDE3cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjkzOHJlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgfVxuXG4gICAgLnByb2R1Y3Qge1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuXG4gICAgLndpbmUtZGVzY3JpcHRpb24ge1xuICAgICAgbWFyZ2luOiAxMHB4IGF1dG8gMDtcbiAgICB9XG5cbiAgICAuZG91YmxlLXByb2R1Y3Qge1xuICAgICAgbWFyZ2luOiAwIC0xM3B4IDAgLTE3cHg7XG4gICAgfVxuXG4gICAgI2V4YW1wbGUtc2xpZGUtMSB7XG4gICAgICAud2hpdGUtc2VjdGlvbiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxOXB4O1xuICAgICAgfVxuXG4gICAgICAuZXhhbXBsZSB7XG4gICAgICAgIC8vbWFyZ2luLXRvcDogMTdweDsgTGEgc2Nyb2xsYmFyIGfDqG5lIGxlIG1hcmdpbi4gRmF1ZHJhaXQgdm9pciBzaSBvbiBwZXV0IHBlcm1ldHRyZSB1biBzY3JvbGwgbW9iaWxlIHNhbnMgbGEgc2Nyb2xsYmFyXG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgI2V4YW1wbGUtc2xpZGUtMiB7XG4gICAgICAud2hpdGUtc2VjdGlvbiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxOXB4O1xuICAgICAgfVxuXG4gICAgICAuZXhhbXBsZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE3cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgI2V4YW1wbGUtc2xpZGUtMyB7XG4gICAgICAud2hpdGUtc2VjdGlvbiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxNHB4O1xuICAgICAgfVxuXG4gICAgICAudGFibGUtYm9yZGVyZWQge1xuICAgICAgICBib3JkZXI6IHNvbGlkIDFweCAkanVtYm87XG4gICAgICAgIGhlaWdodDogMTU2cHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgdGhlYWQge1xuICAgICAgICAgIGJvcmRlcjogc29saWQgMXB4ICRqdW1ibztcbiAgICAgICAgfVxuXG4gICAgICAgIHRkIHtcbiAgICAgICAgICB3aWR0aDogMTI1cHg7XG4gICAgICAgICAgaGVpZ2h0OiAzM3B4O1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRyb2JvdG8tY29uZGVuc2VkO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC44NDVyZW07XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcblxuICAgICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg0NXJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0aCB7XG4gICAgICAgICAgY29sb3I6ICRkaW0tZ3JleTtcbiAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAudXN1YWwtcHJpY2Uge1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5leGFtcGxlIHtcbiAgICAgICAgbWFyZ2luOiAxOHB4IGF1dG8gMTRweDtcbiAgICAgIH1cblxuICAgICAgZGl2LndoaXRlLXNlY3Rpb24+ZGl2OmZpcnN0LWNoaWxkIHtcbiAgICAgICAgaGVpZ2h0OiAxNzNweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAjZXhhbXBsZS1zbGlkZS00IHtcbiAgICAgIC5leGFtcGxlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTRweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAjZXhhbXBsZS1zbGlkZS01IHtcbiAgICAgIC53aGl0ZS1zZWN0aW9uIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDE0cHg7XG4gICAgICB9XG5cbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAyNTdweDtcbiAgICAgICAgaGVpZ2h0OiAxNDFweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgfVxuXG4gICAgICBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gICAgICAgIGNvbG9yOiAkbWFpbi10ZXh0LWNvbG9yO1xuICAgICAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICB9XG5cbiAgICAgIHAge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgLmV4YW1wbGUge1xuICAgICAgICBtYXJnaW46IDEwcHggYXV0byA0cHg7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBhIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMC42ODhyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAjZXhhbXBsZS1zbGlkZS02IHtcbiAgICAgIC5hbm5vdGF0aW9uIHtcbiAgICAgICAgcmlnaHQ6IDI5cHg7XG4gICAgICB9XG5cbiAgICAgIC5leGFtcGxlIHtcbiAgICAgICAgbWFyZ2luOiA0NHB4IGF1dG8gMTdweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY2hyb25vIHtcbiAgICAgIGJveC1zaGFkb3c6IDNweCAzcHggNHB4IDAgcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgICAgIG1hcmdpbjogLTMwcHggMCAwIC05cHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgI2V4YW1wbGUtc2xpZGUtNyB7XG4gICAgICAuZXhhbXBsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE5cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgI2V4YW1wbGUtc2xpZGUtOCB7XG4gICAgICAud2hpdGUtc2VjdGlvbiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA5cHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE3cHg7XG4gICAgICB9XG5cbiAgICAgIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgIH1cblxuICAgICAgLmV4YW1wbGUge1xuICAgICAgICBtYXJnaW46IDE4cHggYXV0byAxN3B4O1xuICAgICAgfVxuICAgIH1cblxuICAgICNleGFtcGxlLXNsaWRlLTE1IHtcbiAgICAgIC53aGl0ZS1zZWN0aW9uIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDQ4cHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTNweDtcbiAgICAgIH1cblxuICAgICAgaW1nIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMjFweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMThweDtcbiAgICAgIH1cblxuICAgICAgLmQtZmxleCBwIHtcbiAgICAgICAgbWFyZ2luOiAyMHB4IDAgMCAxNXB4O1xuICAgICAgICB3aWR0aDogMTE5cHg7XG4gICAgICAgIGhlaWdodDogMTkzcHg7XG4gICAgICB9XG5cbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IC02M3B4O1xuICAgICAgfVxuICAgIH1cblxuICAgICNleGFtcGxlLXNsaWRlLTE2IC5leGFtcGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7XG4gICAgfVxuXG4gICAgI2V4YW1wbGUtc2xpZGUtMTcge1xuICAgICAgLmJsb2Nrfi5ibG9jayB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICB9XG5cbiAgICAgIC5leGFtcGxlIHtcbiAgICAgICAgbWFyZ2luOiAxNXB4IDAgMTVweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAjZXhhbXBsZS1zbGlkZS0xOCB7XG4gICAgICAud2hpdGUtc2VjdGlvbiB7XG4gICAgICAgIHBhZGRpbmc6IDI1cHggMTdweCAwIDEzcHg7XG4gICAgICB9XG5cbiAgICAgIGltZyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMXB4O1xuICAgICAgICBtYXJnaW4tdG9wOiA0N3B4O1xuICAgICAgfVxuXG4gICAgICBidXR0b24ge1xuICAgICAgICBtYXJnaW4tdG9wOiAtNDJweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgfVxuICAgIH1cblxuICAgICNleGFtcGxlLXNsaWRlLTE5IHtcbiAgICAgIC53aGl0ZS1zZWN0aW9uIHtcbiAgICAgICAgcGFkZGluZzogODlweCAxNXB4IDAgMTVweDtcbiAgICAgIH1cblxuICAgICAgaDMgZGl2IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgIH1cblxuICAgICAgLmJ1dHRvbi1zZWxlY3Rpb24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm1vYmlsZS1uYXZpZ2F0aW9uIHtcbiAgICBoZWlnaHQ6IDEwMHB4O1xuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgLmNvbmNyZXRlLWV4YW1wbGUge1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgIH1cblxuICAgIGJ1dHRvbiB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgfVxuXG4gICAgLm5hdmlnYXRpb24tbmV4dCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG5cbiAgICAgIC5tb2JpbGUtbmV4dC1hcnJvdyB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC00MHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm5hdmlnYXRpb24tbmV4dCB7XG4gICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICB9XG4gIH1cbn0iLCIjd2luZWdyb3dlcl9fbWFwIHtcbiAgaGVpZ2h0OiA0MDBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6MTtcbn1cblxuI2NlbGxhcm1hbl9fbWFwIHtcbiAgaGVpZ2h0OiAxNjlweDtcbiAgd2lkdGg6IDE2OXB4O1xuICB6LWluZGV4OjE7XG59XG5cbiNtb2RhbF9fbWFwIHtcbiAgd2lkdGg6IDEwMHZoO1xuICBoZWlnaHQ6IDEwMHZoO1xufVxuXG5cbiN3aW5lZ3Jvd2VyX19tYXAsICNjZWxsYXJtYW5fX21hcCB7XG4gIGEge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuXG5cbi52aW5leWFyZF9fbG9jYWxpemF0aW9uX19pbnB1dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB6LWluZGV4OiAyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvdHRvbTogMjhlbTtcbiAgbGVmdDogMC42ZW07XG5cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgd2lkdGg6IDM1JTtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gIH1cbn1cblxuLmF1dG9jb21wbGV0ZS1zdWdnZXN0aW9ucyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgb3BhY2l0eTogLjg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn0iLCIuY2xvc2UtYWxlcnR7XG4gICAgZmxvYXQ6IHJpZ2h0O1xufVxuIiwiLy8gU3R5bGVzIGNvbW11bnMgcG91ciBsZXMgcHJvZHVpdHMgZXQgbGVzIHNwaXJpdHVldXhcblxuLy8gU3R5bGVzIHBvdXIgbGVzIMOpbMOpbWVudHMgZGUgcHJvZHVpdFxuLnByb2R1Y3QtaXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxNTBweDtcbiAgICBoZWlnaHQ6IDE1MHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBpbWcge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICB3aWR0aDogMTUwcHg7XG4gICAgfVxufVxuXG4vLyBGYWlyZSBkaXNwYXJhaXRyZSBsJ2lucHV0IHNhbnMgZmFpcmUgZGUgZGlzcGxheTpub25lIChwb3VyIGxlIGZvcm0pXG4uY3VzdG9tLWZpbGUtaW5wdXQge1xuICAgIHdpZHRoOiAwLjFweDtcbiAgICBoZWlnaHQ6IDAuMXB4O1xuICAgIG9wYWNpdHk6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogLTE7XG59XG5cbi8vIFN0eWxlcyBwb3VyIGxlcyBmaWd1cmVzIGQnaW1hZ2VzXG4ucHJvZHVjdC1pbmZvcyxcbi5zcGlyaXQtaW5mb3Mge1xuICAgIGZpZ3VyZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDE2N3B4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1jZWxsYXJtYW5UaGVtZS1iZy1jb2xvcik7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgaGVpZ2h0OiAxNjdweDtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTYzcHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIFN0eWxlcyBwb3VyIGxlcyBkZXNjcmlwdGlvbnNcbi5kZXNjcmlwdGlvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLmRlc2NyaXB0aW9uX190ZXh0IHtcbiAgICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgICAgY29sb3I6ICRib3VsZGVyO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICAuZGVzY3JpcHRpb25fX3RvcC10ZXh0IHtcbiAgICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICYtLXRvcC1zYWxlcyB7XG4gICAgICAgICAgICBjb2xvcjogJHRvcC1zYWxlcztcbiAgICAgICAgfVxuXG4gICAgICAgICYtLWZhdm91cml0ZSB7XG4gICAgICAgICAgICBjb2xvcjogJGZhdm91cml0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLW5ldyB7XG4gICAgICAgICAgICBjb2xvcjogJG5ldztcbiAgICAgICAgfVxuXG4gICAgICAgICYtLXByb21vIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJvbW87XG4gICAgICAgIH1cblxuICAgICAgICAmLS10b3AtbWFyZ2Uge1xuICAgICAgICAgICAgY29sb3I6ICR0b3AtbWFyZ2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZGVzY3JpcHRpb25fX2Fubm90YXRpb24ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogLTI2cHg7XG4gICAgICAgIHJpZ2h0OiAxN3B4O1xuICAgIH1cblxuICAgIC5kZXNjcmlwdGlvbl9fc3RhdGUge1xuICAgICAgICBjb2xvcjogdmFyKC0tYmctY29sb3IpO1xuICAgICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgJi0td2FybmluZyB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmNmIzNTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYzY2Q7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZlYWE3O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgICAgcGFkZGluZzogNHB4IDhweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDRweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC53YXdQcmljZSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDNweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAuZGVzY3JpcHRpb25fX3RleHQtZm9jdXMge1xuICAgICAgICBjb2xvcjogJGNvbnRlc3NhO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG59XG5cbi8vIFN0eWxlcyBwb3VyIGxlcyBzZWN0aW9ucyBkZSBzdXBwcmVzc2lvblxuLmRlbGV0ZS1zZWN0aW9uIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogMTVweDtcblxuICAgIHAge1xuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkcm9ib3RvLWNvbmRlbnNlZDtcbiAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgICBjb2xvcjogJGJvdWxkZXI7XG4gICAgfVxufVxuXG4vLyBTdHlsZXMgcG91ciBsZXMgcHJpeFxuaW5wdXQucHJvZHVjdC1wcmljZSxcbmlucHV0LnNwaXJpdC1wcmljZSB7XG4gICAgZm9udC1mYW1pbHk6ICRyb2JvdG8tY29uZGVuc2VkO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBjb2xvcjogJHR1bmRvcmE7XG4gICAgYm9yZGVyOiBub25lO1xufVxuXG4vLyBTdHlsZXMgcG91ciBsZSBmcmFuY28gZGUgcG9ydFxuLmZyZWUtc2hpcHBpbmcge1xuICAgIGZvbnQtZmFtaWx5OiAkcm9ib3RvLWNvbmRlbnNlZDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgY29sb3I6ICRtYWluLWNvbG9yO1xuICAgIG1hcmdpbi10b3A6IDAuNHJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjRyZW07XG59XG5cbi8vIFN0eWxlcyBwb3VyIGxlcyBmb3JtdWxhaXJlc1xuLndpbmVncm93ZXItcHJvZHVjdCxcbi5kaXN0aWxsZXItc3Bpcml0LFxuI3NwaXJpdC1mb3JtIHtcblxuICAgIC5mb3JtLWNvbnRyb2wsXG4gICAgLmZvcm0tc2VsZWN0IHtcbiAgICAgICAgbWFyZ2luOiAxMHB4IGF1dG8gMTBweCBhdXRvO1xuICAgIH1cblxuICAgIGxhYmVsIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAuY2hlY2tib3gge1xuICAgICAgICBtYXJnaW46IDFyZW0gMCAxcmVtO1xuICAgIH1cbn1cblxuLy8gU3R5bGVzIHBvdXIgbGVzIHpvbmVzIGQndXBsb2FkIGQnaW1hZ2VcbiN1cGxvYWQtcHJvZHVjdC1waWN0dXJlLFxuI3VwbG9hZC1zcGlyaXQtcGljdHVyZSB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgd2lkdGg6IDE5NXB4O1xuICAgIGhlaWdodDogMTk1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgYm9yZGVyLXJhZGl1czogMTdweDtcbn1cblxuLy8gU3R5bGVzIHBvdXIgbGVzIGVycmV1cnNcbi5pbnB1dC1lcnJvciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBjb2xvcjogJGFsZXJ0O1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuXG4vLyBTdHlsZXMgcG91ciBsZXMgc2xpZGVyc1xuLnNsaWNrLXNsaWRlIGltZyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtYXJnaW46IGF1dG87XG59XG5cbi8vIFN0eWxlcyBwb3VyIGxlcyB0YWJsZWF1eCBkZSBwcml4XG4jdGFibGUtcHJpY2VzIHtcbiAgICB0aCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWFzaGVsbDtcbiAgICAgICAgY29sb3I6ICR0dW5kb3JhO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG5cbiAgICB0ZCB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxufVxuXG4vLyBTdHlsZXMgcG91ciBsZXMgYm91dG9ucyBkZSBzb3VtaXNzaW9uXG4uc3VibWl0LWJ1dHRvbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIjxtb2JpbGUtbGFyZ2VcIikge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIC5idG4ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBTdHlsZXMgcG91ciBsZXMgc2xpZGVycyBkZSBzcGlyaXR1ZXV4XG4jc3Bpcml0LXNsaWRlcixcbiNwcm9kdWN0LXNsaWRlciB7XG4gICAgLnNsaWNrLWFycm93IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgd2lkdGg6IDI2cHg7XG4gICAgICAgIGhlaWdodDogMjZweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMjZweDtcbiAgICAgICAgYmFja2dyb3VuZDogJG1haW4tY29sb3I7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICB6LWluZGV4OiAxMDtcblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zbGljay1wcmV2IHtcbiAgICAgICAgICAgIGxlZnQ6IC0xM3B4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zbGljay1uZXh0IHtcbiAgICAgICAgICAgIHJpZ2h0OiAtMTNweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gU3R5bGVzIHNww6ljaWZpcXVlcyBwb3VyIGxlIGNvbXB0ZSB2aXRpY3VsdGV1clxuI2JvdHRsZS1zdGVwcy1hcnJheSB7XG4gICAgY29sb3I6ICR0dW5kb3JhO1xufVxuXG4ud2luZWdyb3dlci1wcm9kdWN0IHtcbiAgICAucHJvZHVjdC1mcmFuY2hpc2VkIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi5zcGlyaXQtZnJhbmNoaXNlZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLy8gU3R5bGVzIGNvbW11bnMgcG91ciBsZXMgZGVzY3JpcHRpb25zIGRlIHByb2R1aXRzXG4ucHJvZHVjdF9fZGVzY3JpcHRpb24ge1xuICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgaGVpZ2h0OiBpbml0aWFsO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBjb2xvcjogJGJvdWxkZXI7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLy8gU3R5bGVzIGNvbW11bnMgcG91ciBsZXMgY2FycsOpcyBkZSBwcm9kdWl0c1xuLnNxdWFyZV9fcHJvZHVjdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAuc3F1YXJlX19pbWFnZSB7XG4gICAgICAgIGJvcmRlcjogNHB4IHNvbGlkICRjb250ZXNzYTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAucHJvZHVjdF9fbmFtZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGNvbG9yOiAkYm91bGRlcjtcbiAgICAgICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgIH1cblxuICAgIC5wcm9kdWN0X19wcmljZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgY29sb3I6ICRjb250ZXNzYTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuXG4gICAgLnByb2R1Y3RfX3N0YXRlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbnRlc3NhO1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxufSIsIi5hZG1pbiB7XG4gIGZvbnQtZmFtaWx5OiAkcm9ib3RvLWNvbmRlbnNlZDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBjb2xvcjogJGJvdWxkZXI7XG4gIG1heC13aWR0aDogMTE0MHB4O1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuI3dpbmVncm93ZXJfX21hcF9fcHJldmlldyB7XG4gIGhlaWdodDogMTMwcHg7XG59XG5cbi5yZWNvbW1lbmRhdGlvblBvcnRyYWl0IHtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgaGVpZ2h0OiAzMXB4O1xuICB3aWR0aDogMzFweDtcbn1cblxuLmFkbWluIHtcbiAgLmFkbWluX19hY3Rpb24taWNvbiB7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gIH1cblxuICAuYWRtaW5fX2FjdGlvbiB7XG4gICAgd2lkdGg6IDEwMHB4O1xuICB9XG5cbiAgLmFkbWluX19jYXRlZ29yeSB7XG4gICAgd2lkdGg6IDE3MHB4O1xuICB9XG5cbiAgLmFkbWluX190aXRsZSB7XG4gICAgY29sb3I6ICRib3VsZGVyO1xuICB9XG5cbiAgLmFkbWluX19wcmljZSB7XG4gICAgd2lkdGg6IDkwcHg7XG5cbiAgICAucHJpY2VfX2NlbGxhcm1hbiB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICAgIG1hcmdpbi1yaWdodDogM3B4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAuYnRuIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBoZWlnaHQ6IDM3cHg7XG4gIH1cbn1cblxuLmFkbWluLWZvcm0ge1xuICBtYXJnaW46IDFyZW0gYXV0bztcbiAgcGFkZGluZzogMjBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgJGR1c3R5LWdyYXk7XG5cbiAgLmZvcm0tY29udHJvbCxcbiAgLmZvcm0tc2VsZWN0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vhc2hlbGw7XG4gICAgY29sb3I6ICR0dW5kb3JhO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxuXG4gIC5mb3JtLXNlbGVjdCB7XG4gICAgaGVpZ2h0OiAzNnB4O1xuICB9XG5cbiAgLmFkbWluX19idXR0b24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAuYnRuIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1hcmdpbjogMjBweCBhdXRvIDA7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICB9XG5cbiAgI29wZW4tcmVjb21tZW5kYXRpb25Qcm9maWxQaWN0dXJlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4jcHJvZHVjdF92YWxpZGF0ZWQsXG4jYWRtaW5fcHJvZHVjdF92YWxpZGF0ZWQge1xuICBtYXJnaW4tbGVmdDogNHB4O1xufVxuXG4jYWRtaW5fcHJvZHVjdF9kZXNjcmlwdGlvbiB7XG4gIGhlaWdodDogMjUwcHg7XG59XG5cbiN1c2VyX2ZpbHRlcl9zZWFyY2hCYXIge1xuICBtYXgtd2lkdGg6IDIwMHB4O1xufVxuXG4ucHJvZHVjdC1kZXNjcmlwdGlvbiB7XG4gIGZpZ3VyZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxODdweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjOTMwMDAwO1xuXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4uaW1nLWhvbWUge1xuICB3aWR0aDogMjUlO1xufVxuXG4ucGFnaW5hdGlvbiBsaTpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICB0YWJsZSB0Ym9keSB0ciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ucGFnaW5hdGlvbj5saSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcblxuICAmLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XG4gICAgY29sb3I6IHdoaXRlO1xuICB9XG5cbiAgYSB7XG4gICAgcGFkZGluZzogNnB4IDEycHg7XG4gIH1cbn1cblxuLnNlYXJjaC1idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xufVxuXG4uc2VhcmNoLXNlY3Rpb24ge1xuICBtYXJnaW4tdG9wOiAyLjdyZW07XG59XG5cbmxhYmVsLmJ0bi5idG4tcHJpbWFyeS50ZXh0LWNlbnRlci5tdC0yIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5hcnRpY2xlIC5yb3cge1xuICBhbGlnbi1pdGVtczogc3RhcnQ7XG59XG5cbiNteVNlYXJjaFVzZXJzIHtcbiAgdHIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLXRhYmxlLWJnKTtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgOTk5OXB4IHZhcigtLWJzLXRhYmxlLWFjY2VudC1iZyk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIC0tYnMtdGFibGUtYWNjZW50LWJnOiB2YXIoLS1icy10YWJsZS1ob3Zlci1iZyk7XG4gICAgICBjb2xvcjogdmFyKC0tYnMtdGFibGUtaG92ZXItY29sb3IpO1xuXG4gICAgICB0ZCB7XG4gICAgICAgIGJveC1zaGFkb3c6IHVuc2V0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIDpub3QoY2FwdGlvbikge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxuXG4gIC5hZG1pbl9fYWN0aW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5cblxuLmFjdGlvbi1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gIC50YWJzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICB9XG59XG5cbi5uYXYtdGFicyAubmF2LWxpbmsge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cblxuLm5hdi10YWJzIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLm5hdi10YWJzIC5uYXYtbGluazpob3Zlcixcbi5uYXYtdGFicyAubmF2LWxpbms6Zm9jdXMge1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi5uYXZiYXJQIHVsIGxpIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLy8gLnRhYnMgdWwgbGkge1xuLy8gICBwYWRkaW5nOiAwIDBweDtcbi8vIH1cblxuLy8gU3R5bGVzIHNww6ljaWZpcXVlcyBwb3VyIGxlIHRhYmxlYXUgZGVzIHByb2R1aXRzXG4jdGFibGVQcm9kdWN0cyB7XG4gIG1pbi13aWR0aDogMTAwJTtcbiAgd2lkdGg6IG1heC1jb250ZW50O1xuXG4gIHRoIHtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIHBhZGRpbmc6IDhweCAxMnB4O1xuICB9XG5cbiAgdGQge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgcGFkZGluZzogOHB4IDEycHg7XG4gIH1cblxuICAvLyBDb2xvbm5lcyBhdmVjIGxhcmdldXJzIG9wdGltaXPDqWVzXG4gIHRoOm50aC1jaGlsZCgxKSxcbiAgdGQ6bnRoLWNoaWxkKDEpIHtcbiAgICAvLyBQcm9kdWl0XG4gICAgbWF4LXdpZHRoOiAxMjBweDtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG5cbiAgdGg6bnRoLWNoaWxkKDIpLFxuICB0ZDpudGgtY2hpbGQoMikge1xuICAgIC8vIFZpZ25lcm9uXG4gICAgbWF4LXdpZHRoOiAxMjBweDtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG5cbiAgdGg6bnRoLWNoaWxkKDMpLFxuICB0ZDpudGgtY2hpbGQoMykge1xuICAgIC8vIFN0YXR1dCB2aWduZXJvblxuICAgIG1heC13aWR0aDogODBweDtcbiAgfVxuXG4gIHRoOm50aC1jaGlsZCg0KSxcbiAgdGQ6bnRoLWNoaWxkKDQpIHtcbiAgICAvLyBTdGF0dXQgdmlnbm9ibGVcbiAgICBtYXgtd2lkdGg6IDgwcHg7XG4gIH1cblxuICB0aDpudGgtY2hpbGQoNSksXG4gIHRkOm50aC1jaGlsZCg1KSB7XG4gICAgLy8gUHJpeFxuICAgIG1pbi13aWR0aDogODBweDtcbiAgfVxuXG4gIHRoOm50aC1jaGlsZCg2KSxcbiAgdGQ6bnRoLWNoaWxkKDYpIHtcbiAgICAvLyBCb3V0ZWlsbGVzIHZlbmR1ZXNcbiAgICBtYXgtd2lkdGg6IDgwcHg7XG4gIH1cblxuICB0aDpudGgtY2hpbGQoNyksXG4gIHRkOm50aC1jaGlsZCg3KSB7XG4gICAgLy8gUXVhbnRpdMOpIGRpc3BvbmlibGVcbiAgICBtYXgtd2lkdGg6IDgwcHg7XG4gIH1cblxuICB0aDpudGgtY2hpbGQoOCksXG4gIHRkOm50aC1jaGlsZCg4KSB7XG4gICAgLy8gQ2F0w6lnb3JpZVxuICAgIG1pbi13aWR0aDogODBweDtcbiAgfVxuXG4gIHRoOm50aC1jaGlsZCg5KSxcbiAgdGQ6bnRoLWNoaWxkKDkpIHtcbiAgICAvLyBFdGF0XG4gICAgbWluLXdpZHRoOiA4MHB4O1xuICAgIG1heC13aWR0aDogODBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB9XG5cbiAgdGg6bnRoLWNoaWxkKDEwKSxcbiAgdGQ6bnRoLWNoaWxkKDEwKSB7XG4gICAgLy8gQWN0aW9uc1xuICAgIG1pbi13aWR0aDogMTIwcHg7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICByaWdodDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICB6LWluZGV4OiAxMDtcbiAgfVxufSIsIi8qKlxuICogU29tZSBzcMOpY2lmaWNzIHN0eWxlcyBvZiBkZXRhaWwgcGFnZVxuICovXG5cbi5kZXRhaWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcblxuICBAaW5jbHVkZSBtZWRpYShcIjxtb2JpbGUtbGFyZ2VcIikge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cblxuICBoMSB7XG4gICAgZm9udC1mYW1pbHk6ICRyb2JvdG8tY29uZGVuc2VkO1xuICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjNyZW07XG4gIH1cblxuICBwIHtcbiAgICBmb250LWZhbWlseTogXCJSb2JvdG8gQ29uZGVuc2VkXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogJHR1bmRvcmE7XG4gIH1cblxuICAuZGV0YWlsX19sZWZ0LFxuICAuZGV0YWlsX19yaWdodCB7XG4gICAgZmxleDogMCAwIDM1JTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPHRhYmxldFwiKSB7XG4gICAgICBmbGV4OiAwIDAgNDUlO1xuICAgIH1cbiAgfVxuXG4gIC5kZXRhaWwtZm9ybSB7XG4gICAgLmZvcm0tc2VsZWN0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGNvbG9yOiAkdHVuZG9yYTtcblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxmMTA3XCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMTBweDtcbiAgICAgICAgcGFkZGluZzogMC4zNzVyZW0gMDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWF3ZXNvbWU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmRldGFpbC1mb3JtLFxuICAubG9jYXRpb24tZm9ybSxcbiAgLnBhc3N3b3JkLWZvcm0sXG4gIC5zdWJzY3JpcHRpb24tZm9ybSxcbiAgLmJhbmstZm9ybSxcbiAgLmNvbnRyYWN0LWZvcm0sXG4gIC5jZWxsYXJtYW4tdmFsaWRhdGlvbixcbiAgLndpbmVncm93ZXItdmFsaWRhdGlvbixcbiAgLmRpc3RpbGxlci12YWxpZGF0aW9uIHtcbiAgICBtYXJnaW46IDFyZW0gYXV0bztcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRkdXN0eS1ncmF5O1xuXG4gICAgbGFiZWwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAuZm9ybS1jb250cm9sLFxuICAgIC5mb3JtLXNlbGVjdCB7XG4gICAgICBtYXJnaW46IDEwcHggYXV0byAxMHB4IGF1dG87XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyO1xuICAgICAgY29sb3I6ICR0dW5kb3JhO1xuICAgIH1cblxuICAgIC5mb3JtLXNlbGVjdCB7XG4gICAgICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkc2lsdmVyO1xuICAgIH1cblxuICAgIC5sb2NhdGlvbi1mb3JtX19zZWxlY3Qtd3JhcHBlciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBjb2xvcjogJHR1bmRvcmE7XG5cbiAgICAgIHNlbGVjdCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgfVxuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcXGYxMDdcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICBwYWRkaW5nOiAwLjM3NXJlbSAwO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtYXdlc29tZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubG9jYXRpb24tZm9ybV9fZWRpdCxcbiAgICAubG9jYXRpb24tZm9ybV9fbG9jYXRpb24tY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLmJ0biB7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB9XG5cbiAgICAubG9jYXRpb24tZm9ybV9faW5mbyB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICB9XG5cbiAgICAubG9jYXRpb24tZm9ybV9fc2VwYXJhdG9yIHtcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggZGFzaGVkO1xuICAgIH1cblxuICAgIC50ZXh0LWdyZWVuIHtcbiAgICAgIGNvbG9yOiAkdmFsaWQ7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgLnRleHQtcmVkIHtcbiAgICAgIGNvbG9yOiAkYWxlcnQgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cblxuICAuc3Vic2NyaXB0aW9uLWZvcm0ge1xuICAgIC5zdWJzY3JpcHRpb24tZm9ybV9fcHJpY2Uge1xuICAgICAgbWFyZ2luOiAtMTAlIDA7XG4gICAgICBjb2xvcjogJG1haW4tY29sb3I7XG4gICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmb250LWZhbWlseTogJ0JlYmFzIE5ldWUnLCBzYW5zLXNlcmlmO1xuXG4gICAgICAuc3Vic2NyaXB0aW9uLWZvcm1fX3ByaWNlX19ldXJvcyB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIGZvbnQtc2l6ZTogNzJweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYmFuay1mb3JtIHtcbiAgICAuYmFuay1mb3JtX19oaWRkZW4ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAucGFzc3dvcmQtZm9ybSB7XG4gICAgLnBhc3N3b3JkLWZvcm0taGlkZGVuIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgIHAge1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGNvbG9yOiAjOGQ4ZDhkO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG59XG5cbi5kZWxpdmVyeV9zY2hlZHVsZSxcbi5kZWxpdmVyeS10aW1lc2xvdHMtZGlzcGxheSB7XG4gIHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBjb2xvcjogJHR1bmRvcmE7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgfVxufVxuXG4uY29udGV4dHVhbC1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLmNvbnRleHR1YWwtaWNvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBwYWRkaW5nLXRvcDogMTdweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG5cbiAgICBjb2xvcjogdmFyKC0tY2VsbGFybWFuVGhlbWUtYmctY29sb3IpO1xuXG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgb3BhY2l0eTogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiAuMnMgZWFzZS1pbiBhbGw7XG4gIH1cblxuICAmLmFjdGl2ZSB7XG4gICAgLmNvbnRleHR1YWwtaWNvbiB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICB9XG4gIH1cbn0iLCIvKipcbiAqIFNvbWUgc3DDqWNpZmljcyBzdHlsZXMgb2Ygc2lnbnVwIHBhZ2VcbiAqL1xuXG4ubWFwLW1vZGFsIHtcbiAgbWF4LWhlaWdodDogMTMwcHg7XG4gIHdpZHRoOiAxMDAlXG59XG5cbi5pY29uLWxlZnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG5cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDE2NXB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA4NTVweCkge1xuICAuaWNvbi1sZWZ0IHtcbiAgICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgfVxufVxuXG5cbi5zZWxlY3QtaWNvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbGlzdGJveDtcbn1cblxuLmdsYXNzLXdpbmVzIHtcbiAgd2lkdGg6IDEwMHB4O1xufVxuXG4uc2lnbnVwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2lkdGg6IDgwJTtcbiAgbWFyZ2luOiBhdXRvO1xuICBwYWRkaW5nLXRvcDogNSU7XG5cbiAgaDEge1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICB9XG5cbiAgLnNpZ251cF9faW5mbyB7XG4gICAgY29sb3I6ICRtYWluLXRleHQtY29sb3I7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcblxuICAgIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICB9XG4gIH1cblxuICAuc2lnbnVwX19sb2dvIHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8bW9iaWxlLWxhcmdlXCIpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBtYXJnaW46IDEuNWVtIGF1dG87XG4gICAgfVxuICB9XG5cbiAgLnNpZ251cF9fcm9sZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHdpZHRoOiAzNSU7XG4gICAgbWFyZ2luOiBhdXRvO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8bW9iaWxlLWxhcmdlXCIpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgbWFyZ2luOiA1cHg7XG4gICAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkc2lsdmVyO1xuICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgY29sb3I6ICR0dW5kb3JhO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgICBjb2xvcjogJHR1bmRvcmE7XG4gICAgfVxuICB9XG5cbiAgLnNhdmUtYnRuIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgIG1hcmdpbi1ib3R0b206IDElO1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG5cbiAgICBidXR0b24sXG4gICAgYSB7XG4gICAgICBwYWRkaW5nOiAwLjM3NXJlbSAzcmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgfVxuICB9XG5cbiAgLnJlcXVpcmVkLWluZm8ge1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBjb2xvcjogJGJvdWxkZXI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxuXG4gIC5kZXRhaWwtZm9ybSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPG1vYmlsZS1sYXJnZVwiKSB7XG4gICAgICAvKiBGb3IgbW9iaWxlIHBob25lczogKi9cbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuXG4gICAgLmRldGFpbC1mb3JtX19sZWZ0LFxuICAgIC5kZXRhaWwtZm9ybV9fcmlnaHQge1xuICAgICAgZmxleDogMCAwIDMwJTtcbiAgICB9XG4gIH1cblxuICAuZGV0YWlsLWZvcm1fX2Vycm9ycyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBjb2xvcjogIzkzMDAwMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICB9XG5cbiAgLmNvbnRyYWN0LXN1bW1hcnksXG4gIC5kZWJpdC1zdW1tYXJ5IHtcbiAgICBtYXJnaW46IDIlIGF1dG87XG4gICAgd2lkdGg6IDgwJTtcbiAgICBjb2xvcjogJHR1bmRvcmE7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIjxtb2JpbGUtbGFyZ2VcIikge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmNvbnRyYWN0LXN1bW1hcnlfX3RpdGxlLFxuICAuZGViaXQtc3VtbWFyeV9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuXG4gIC5jb250cmFjdC1zdW1tYXJ5X190aXRsZS13YXJuaW5nLFxuICAuZGViaXQtc3VtbWFyeV9fdGl0bGUtd2FybmluZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogM2VtO1xuICAgIGNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAuc3Vic2NyaXB0aW9uLFxuICAuZGViaXQge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWFyZ2luOiAyJSBhdXRvO1xuICAgIHBhZGRpbmc6IDAgNTBweDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPG1vYmlsZS1sYXJnZVwiKSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5kZWJpdCB7XG4gICAgcCB7XG4gICAgICBjb2xvcjogJHR1bmRvcmE7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgfVxuXG4gICAgLnNhdmUtYnRuIHtcbiAgICAgIG1hcmdpbjogYXV0byAwIDElO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gIH1cblxuICAuZGViaXQtZm9ybSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuXG4gIC5hY2NvdW50IHtcbiAgICAuYWNjb3VudF9fZmxleCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIjxtb2JpbGUtbGFyZ2VcIikge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5hY2NvdW50X19mbGV4X19sZWZ0LFxuICAgIC5hY2NvdW50X19mbGV4X19yaWdodCB7XG4gICAgICBmbGV4OiAwIDAgNDUlO1xuXG4gICAgICBsYWJlbCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAzJTtcbiAgICAgICAgY29sb3I6ICR0dW5kb3JhO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmFjY291bnRfX2ZsZXhfX3JpZ2h0IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgaW5wdXQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjxtb2JpbGUtbGFyZ2VcIikge1xuICAgICAgICAgIHBvc2l0aW9uOiBpbmhlcml0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmFjY291bnRfX3J1bGVzIHtcbiAgICAgIGNvbG9yOiAkZ3JheTtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICB9XG5cbiAgICAuYWNjb3VudF9fZXJyb3JzIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkcm9ib3RvLWNvbmRlbnNlZDtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIGNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgdWwge1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uc2lnbnVwLFxuLm1vZGFsLWNvbnRlbnQge1xuICAuc3Vic2NyaXB0aW9uIHtcbiAgICBmbGV4OiAwIDAgNTAlOyAvL1RPRE8gw6l2aXRlciBkZSByw6l1dGlsaXNlclxuICAgIG1hcmdpbjogMiUgYXV0bztcblxuICAgIHAge1xuICAgICAgY29sb3I6ICR0dW5kb3JhO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgIH1cblxuICAgIC5zdWJzY3JpcHRpb25fX3ByaWNlIHtcbiAgICAgIGNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtZmFtaWx5OiAkYmViYXMtcmVndWxhcjtcblxuICAgICAgLnN1YnNjcmlwdGlvbl9fcHJpY2VfX2V1cm9zIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgZm9udC1zaXplOiA3MnB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zdWJzY3JpcHRpb25fX2RlYml0IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgbWFyZ2luLXRvcDogMTAlO1xuICAgICAgY29sb3I6ICRtYWluLWNvbG9yO1xuXG4gICAgICBzcGFuIHtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgfVxuXG4gICAgICAuc3Vic2NyaXB0aW9uX19kZWJpdF9fZGF0ZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAucHJpY2luZyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtYXJnaW46IGF1dG87XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIjxtb2JpbGUtbGFyZ2VcIikge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gIH1cblxuICAuZm9ybS1zZWxlY3Qge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBjb2xvcjogJHR1bmRvcmE7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcXGYxMDdcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgcGFkZGluZzogMC4zNzVyZW0gMDtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1hd2Vzb21lO1xuICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICB9XG4gIH1cblxuICAuZm9ybS1jb250cm9sIHtcbiAgICBtYXJnaW46IDAgYXV0byAxMnB4IGF1dG87XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICB9XG5cbiAgLmNoZWNrYm94IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgLm1vZGFsLWxpbmsge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBjb2xvcjogJG1haW4tY29sb3I7XG4gIH1cbn1cblxuI3Byb2R1Y3Rfc2lnbl91cF9pbWFnZVVybCB7XG4gIG1hcmdpbi1sZWZ0OiA3NnB4O1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPG1vYmlsZS1sYXJnZVwiKSB7XG4gICAgbWFyZ2luLWxlZnQ6IDI3MHB4O1xuICB9XG59XG5cbiNzdGVwMV9jb21wYW55TG9jYXRpb25fY29tbWVyY2lhbE5hbWUsXG4jc3RlcDFfY29tcGFueUxvY2F0aW9uX25hbWUge1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG5cbi8vIFN0eWxlcyBwb3VyIGxlIGZvcm11bGFpcmUgZGUgZGlzdGlsbGVyaWVcbiNhZGQtZGlzdGlsbGVyeSB7XG4gIC5yb3cge1xuICAgIGFsaWduLWl0ZW1zOiB1bnNldCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vIFN0eWxlcyBwb3VyIGxlcyBjYXTDqWdvcmllcyBkZSBzcGlyaXR1ZXV4XG4uc3Bpcml0LXR5cGUtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLXdpZHRoOiA4MHB4O1xufVxuXG4uc3Bpcml0LXR5cGUtbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogOHB4IDEycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNkZWUyZTY7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxuLnNwaXJpdC10eXBlLWl0ZW0gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQrLnNwaXJpdC10eXBlLWxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwN2JmZjtcbiAgYm9yZGVyLWNvbG9yOiAjMDA3YmZmO1xuICBjb2xvcjogd2hpdGU7XG59XG5cbi5zcGlyaXQtdHlwZS1sYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XG4gIGJvcmRlci1jb2xvcjogI2FkYjViZDtcbn1cblxuLnNwaXJpdC10eXBlLWl0ZW0gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQrLnNwaXJpdC10eXBlLWxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNTZiMztcbiAgYm9yZGVyLWNvbG9yOiAjMDA1NmIzO1xufVxuXG4uc3Bpcml0LXR5cGUtaXRlbSBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59IiwiLyoqXG4gKiBTdHlsZXMgY29tbXVucyBwb3VyIGxlcyBmb3JtdWxhaXJlcyBkZSBwcm9kdWN0ZXVycyAodmlnbmVyb25zIGV0IGRpc3RpbGxhdGV1cnMpXG4gKi9cblxuI2FkZC12aW5leWFyZCxcbiNhZGQtZGlzdGlsbGVyeSB7XG4gICAgLnVwbG9hZC1jb250ZW50IHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICB0ZXh0YXJlYSB7XG4gICAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gNDFweCk7IC8vIDMxcHggPSBsYWJlbCBoZWlnaHRcbiAgICAgICAgbWluLWhlaWdodDogMTgwcHg7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cImZpbGVcIl0ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB6LWluZGV4OiAtMTtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwiZmlsZVwiXStsYWJlbCB7fVxuXG4gICAgLnZpbmV5YXJkX19zYXZlLWJ1dHRvbnMgLmJ0bixcbiAgICAuZGlzdGlsbGVyeV9fc2F2ZS1idXR0b25zIC5idG4ge1xuICAgICAgICBtaW4td2lkdGg6IDIwJTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjxtb2JpbGUtbGFyZ2VcIikge1xuICAgICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5hcnRpY2xlIHtcblxuICAgIC52aW5leWFyZF9fc2F2ZS1idXR0b25zIC5idG4sXG4gICAgLmRpc3RpbGxlcnlfX3NhdmUtYnV0dG9ucyAuYnRuIHtcbiAgICAgICAgd2lkdGg6IDMwJTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjxtb2JpbGUtbGFyZ2VcIikge1xuICAgICAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuI3NpbmdsZS1hcnRpY2xlLXdpbmUtY29sb3JzLFxuI3NpbmdsZS1hcnRpY2xlLXdpbmUtbGFiZWxzLFxuI3NpbmdsZS1hcnRpY2xlLXNwaXJpdC10eXBlcyB7XG4gICAgaW1nIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi50ZXh0LWRhbmdlciB7XG4gICAgdWwge1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG59IiwiI2xpc3RfX3dpbmVncm93ZXJze1xuICB3aWR0aDogOTYlO1xufVxuXG4uc3F1YXJlX192aW5leWFyZHtcbiAgbWFyZ2luLWJvdHRvbTogM2VtO1xufVxuXG4ud2luZWdyb3dlcl9fZm9ybSwgI2NlbGxhcm1hbl93aW5lZ3Jvd2VyX3NlYXJjaF92aW5leWFyZFJlZ2lvbntcbiAgY29sb3I6ICRkaW0tZ3JleTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICAmIGlucHV0e1xuICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxufVxuXG4ud2luZWdyb3dlcl9fbGFiZWx7XG4gIHBhZGRpbmctdG9wOiA4cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi53aW5lZ3Jvd2VyX192aW5leWFyZDpob3ZlcntcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5cblxuXG5cbiIsIi8qKlxuICogU29tZSBzcMOpY2lmaWNzIHN0eWxlcyBvZiBzZWxlY3Rpb24gcGFnZVxuICovXG5cbi5zZWxlY3Rpb24ge1xuXHQjd2VsY29tZSB7XG4gICAgbWluLXdpZHRoOiA1NC41dnc7XG4gICAgbWFyZ2luLWxlZnQ6IC0zNXB4O1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRwYW1wYXM7XG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8dGFibGV0XCIpIHtcbiAgICAgIHdpZHRoOiAxMDIuNXZ3O1xuICAgIH1cbiAgICAud2VsY29tZS10aXRsZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBjb2xvcjogJGJvdWxkZXI7XG4gICAgICBmb250LXNpemU6IDIxcHg7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGR1c3R5LWdyYXk7XG4gICAgICB9XG4gICAgICA+IHNwYW4ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcGFtcGFzO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjxtb2JpbGUtbGFyZ2VcIikge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgfVxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBjb2xvcjogJG1haW4tY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGF7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNvbG9yOiAkYm91bGRlcjtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcGFtcGFzO1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybSA6IHVwcGVyY2FzZTtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8dGFibGV0LWxhcmdlXCIpIHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDhweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAud2VsY29tZS10aXRsZS1tb2JpbGUge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8dGFibGV0LWxhcmdlXCIpIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuc2xpY2stc2xpZGVyIHtcbiAgICAgIC5zbGljay1hcnJvd3tcbiAgICAgICAgdG9wOiA4NXB4O1xuICAgICAgfVxuICAgIH1cblx0fVxuICAuc2VwYXJhdG9ye1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZHVzdHktZ3JheTtcbiAgICBtYXJnaW46IDJyZW0gYXV0bztcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5oaWRle1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAuc2hvdyB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLmNvbnRhaW5lciB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC1mYW1pbHk6ICRyb2JvdG8tY29uZGVuc2VkO1xuICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgLnNlcGFyYXRvciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRkdXN0eS1ncmF5O1xuICAgIG1hcmdpbjogMnJlbSBhdXRvO1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cblxuLmludGVuZE9yZGVyIHtcbiAgZm9udC1zaXplOiAyMXB4O1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgY29sb3I6IHZhcigtLWNlbGxhcm1hblRoZW1lLXRleHQtY29sb3IpO1xuICB3aWR0aDogMzUlO1xufVxuXG4uY2VsbGFybWFuLXBhZ2UtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICBtYXJnaW4tdG9wOiAyOHB4O1xufVxuXG4ubGluZSB7XG4gIHdpZHRoOiAzMCU7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IDEycHggMjBweCAxMXB4IDA7XG4gIGJvcmRlcjogc29saWQgMXB4ICRkdXN0eS1ncmF5O1xufVxuXG4jZmlsdGVyIHtcbiAgd2lkdGg6IDE4OXB4O1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBjb2xvcjogJGJvdWxkZXI7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7XG59XG5cbi5yb3cge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgLnJvd19fZmlsdGVyIHtcbiAgICBkaXNwbGF5OiBpbmhlcml0O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgd2lkdGg6IDU1JTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPHRhYmxldFwiKSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAucm93X19oZWxwIHtcbiAgICB3aWR0aDogMjAwcHg7XG4gIH1cblxuICAucm93X19saW5lIHtcbiAgICBtYXJnaW46IGF1dG87XG4gIH1cblxuICAucm93X19idXR0b24ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW46IDIwcHggYXV0byAzMXB4IGF1dG87XG4gIH1cbn1cblxuLnJvdyBhIHtcbiAgbWFyZ2luOiAwIDdweCAwIDAgIWltcG9ydGFudDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgY29sb3I6ICRib3VsZGVyO1xufVxuXG4uc3F1YXJlIHtcbiAgLy9kaXNwbGF5OiBncmlkO1xuICAvL2dyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnIgMWZyO1xuICAvL21hcmdpbjogMjhweCBhdXRvIDA7XG4gIGdyaWQtY29sdW1uLWdhcDogMjBweDtcbiAgZ3JpZC1yb3ctZ2FwOiA0MHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDI4cHggMCAyOHB4IDA7XG5cbiAgJi0tZW1wdHkge1xuICAgIGhlaWdodDogMTU5cHg7XG4gIH1cblxuICAuc3F1YXJlX19wcm9kdWN0IHtcbiAgICBtYXgtd2lkdGg6IDIwMHB4O1xuICAgIG1hcmdpbjogMHB4IGF1dG87XG5cbiAgICAmLS1lbXB0eSB7XG4gICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAkZ2FsbGVyeTtcbiAgICAgIGhlaWdodDogMTY3cHg7XG4gICAgfVxuICB9XG5cbiAgLnNxdWFyZV9faW1hZ2Uge1xuICAgIGJvcmRlcjogNHB4IHNvbGlkICRjb250ZXNzYTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiAxNzZweDtcblxuICAgICYtLWZvY3VzIHtcbiAgICAgIGJvcmRlcjogNXB4IHNvbGlkICRjb250ZXNzYTtcbiAgICB9XG5cbiAgICAmLS1ncmF5IHtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRncmF5O1xuICAgIH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb250ZXNzYSAhaW1wb3J0YW50O1xuXG4gICAgICAuZmxhZyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogJGNvbnRlc3NhICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkY29udGVzc2EgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAudGltZS1jb250YWluZXIgLnRpbWUtY29udGFpbmVyX190ZXh0LFxuICAgICAgLm51bWJlci1vZi1ib3R0bGUge1xuICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnByb2R1Y3RfX2Rlc2NyaXB0aW9uIHtcbiAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiAxMzBweDtcblxuICAgICYtLWZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb250ZXNzYTtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBoZWlnaHQ6IDEyNXB4O1xuICAgIH1cblxuICAgICYtLXBhbmFjaGUge1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgIH1cbiAgfVxuXG4gIC5wcm9kdWN0X19pbWFnZSB7XG4gICAgaGVpZ2h0OiAxNjdweDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAmLS1mb2N1cyB7XG4gICAgICBtYXgtd2lkdGg6IDE1N3B4O1xuICAgIH1cbiAgfVxuXG4gIC5wcm9kdWN0X19uYW1lIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgY29sb3I6ICRib3VsZGVyO1xuICAgIG1hcmdpbjogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAmLS1mb2N1cyB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG4gIH1cblxuICAucHJvZHVjdF9fcHJpY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBjb2xvcjogJGJvdWxkZXI7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgfVxuXG4gIC5wcm9kdWN0X19zZWxlY3Rpb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAuc2VsZWN0aW9uX19wcmljZSB7XG4gICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgIGNvbG9yOiAkYm91bGRlcjtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcblxuICAgICAgJi0td2F3UHJpY2Uge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAucHJvZHVjdF9fdGV4dC1mb2N1cyB7XG4gICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgJi0td2F3UHJpY2Uge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5wcm9kdWN0X19zdGF0ZSB7XG4gICAgY29sb3I6IHZhcigtLWJnLWNvbG9yKTtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC5wcm9kdWN0X190b3AtdGV4dCB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICYtLXRvcC1zYWxlcyB7XG4gICAgICBjb2xvcjogJHRvcC1zYWxlcztcbiAgICB9XG5cbiAgICAmLS1mYXZvdXJpdGUge1xuICAgICAgY29sb3I6ICRmYXZvdXJpdGU7XG4gICAgfVxuXG4gICAgJi0tbmV3IHtcbiAgICAgIGNvbG9yOiAkbmV3O1xuICAgIH1cblxuICAgICYtLXByb21vIHtcbiAgICAgIGNvbG9yOiAkcHJvbW87XG4gICAgfVxuXG4gICAgJi0tdG9wLW1hcmdlIHtcbiAgICAgIGNvbG9yOiAkdG9wLW1hcmdlO1xuICAgIH1cbiAgfVxuXG4gIC5wcm9kdWN0X19hbm5vdGF0aW9uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMTRweDtcbiAgICByaWdodDogMTdweDtcbiAgfVxuXG4gIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG4uZmlyc3Qge1xuICBoZWlnaHQ6IDU0cHg7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDM2cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6IHZhcigtLWNlbGxhcm1hblRoZW1lLWJnLWNvbG9yKTtcbiAgei1pbmRleDogMjtcbn1cblxuLnJvdy1maXJzdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMTIwcHg7XG59XG5cbi5maXJzdC1kZXNjcmlwdGlvbiB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDE4cHg7XG4gIGZvbnQtc3RyZXRjaDogY29uZGVuc2VkO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAkZ3JheTtcbn1cblxuLmJ1dHRvbi1jZWxsYXJtYW4ge1xuICB3aWR0aDogMTY3cHg7XG4gIGhlaWdodDogMzFweDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuXG4gICYtLXJlZCB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jZWxsYXJtYW5UaGVtZS1iZy1jb2xvcik7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG5cbiAgJi0tdHJhbnNwYXJlbnQge1xuICAgIGNvbG9yOiB2YXIoLS1jZWxsYXJtYW5UaGVtZS1iZy1jb2xvcik7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNlbGxhcm1hblRoZW1lLWJnLWNvbG9yKTtcbiAgICBib3JkZXI6IHNvbGlkIDFweCB2YXIoLS1jZWxsYXJtYW5UaGVtZS1iZy1jb2xvcik7XG4gIH1cbn1cblxuLnNlbGVjdGlvbiB7XG4gIG1hcmdpbjogMHB4IGF1dG8gMzFweCBhdXRvO1xufVxuXG4ubnVtYmVyLW9mLWJvdHRsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBtYXJnaW46IDVweCAwIDAgNHB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICRjb250ZXNzYTtcblxuICAmLS1ncmF5IHtcbiAgICBjb2xvcjogJGdyYXk7XG4gIH1cbn1cblxuLnRpbWUtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbjogNDZweCAwIDAgNHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gIC50aW1lLWNvbnRhaW5lcl9fdGltZSB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LUNvbG9yKTtcblxuICAgICYtLWdyYXkge1xuICAgICAgY29sb3I6ICRkb3ZlLWdyYXk7XG4gICAgfVxuICB9XG5cbiAgLnRpbWUtY29udGFpbmVyX190ZXh0IHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgY29sb3I6ICRjb250ZXNzYTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICYtLWdyYXkge1xuICAgICAgY29sb3I6ICRncmF5O1xuICAgIH1cbiAgfVxufVxuXG4uZmxhZyB7XG4gIGhlaWdodDogMjJweDtcbiAgYmFja2dyb3VuZDogJGNvbnRlc3NhO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbWFyZ2luLXRvcDogMjRweDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgcGFkZGluZzogMCAycHg7XG5cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItcmlnaHQ6IDExcHggc29saWQgJHdoaXRlO1xuICAgIGJvcmRlci10b3A6IDExcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogMTFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgfVxuXG4gICYtLWdyYXkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5O1xuICB9XG5cbiAgLmZsYWdfX3RleHQge1xuICAgIG1hcmdpbjogMCAxNXB4IDAgMnB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgI2xpbmUtbGVmdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5saW5lLFxuICAuaW50ZW5kT3JkZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA4MDBweCkge1xuICAjc3F1YXJlNCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTIwcHgpIHtcblxuICAjc3F1YXJlMyxcbiAgI3NxdWFyZTQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn0iLCIjYm90dGxlLXN0ZXBzLWFycmF5IHtcbiAgY29sb3I6ICR0dW5kb3JhO1xufVxuXG4ud2luZWdyb3dlci1wcm9kdWN0IHtcbiAgLnByb2R1Y3QtZnJhbmNoaXNlZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufSIsIi5vcmRlci1jb250YWluZXIge1xuICBtYXgtd2lkdGg6IDc1cmVtO1xuICAvL3dpZHRoOiA3NXJlbTtcbiAgZm9udC1mYW1pbHk6ICRyb2JvdG8tY29uZGVuc2VkO1xuICBtYXJnaW46IGF1dG87XG5cbiAgaDEge1xuICAgIGZvbnQtZmFtaWx5OiAkcm9ib3RvLWNvbmRlbnNlZDtcbiAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICBtYXJnaW4tdG9wOiAxLjNyZW07XG4gIH1cblxuICBoMiB7XG4gICAgZm9udC1mYW1pbHk6ICRyb2JvdG8tY29uZGVuc2VkO1xuICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgIG1hcmdpbjogNDAuNXJlbSAxMy41cmVtIDQuMnJlbTtcbiAgfVxuXG4gIHAsXG4gIGEge1xuICAgIGNvbG9yOiAkYm91bGRlcjtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtZmFtaWx5OiAkcm9ib3RvLWNvbmRlbnNlZDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgLnRhYmxlLWhlYWRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICAgIG1hcmdpbi10b3A6IDIuM3JlbTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPG1vYmlsZS1sYXJnZVwiKSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICBwLFxuICAgIHNwYW4ge1xuICAgICAgY29sb3I6ICRib3VsZGVyO1xuICAgICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgICBmb250LWZhbWlseTogJHJvYm90by1jb25kZW5zZWQ7XG4gICAgfVxuXG4gICAgLnRhYmxlLWhlYWRlcl9fY29tbWFuZCB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICAgICYtLXN0YXRlIHtcbiAgICAgICAgY29sb3I6ICRjb250ZXNzYTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUtaGVhZGVyX19wcm9kdWN0IHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJGJvdWxkZXI7XG4gICAgICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgICAgICBmb250LWZhbWlseTogJHJvYm90by1jb25kZW5zZWQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgdGgge1xuICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtZmFtaWx5OiAkcm9ib3RvLWNvbmRlbnNlZDtcbiAgICBtYXJnaW46IDAuMnJlbSAwIDAgMS4zcmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6ICRzaWx2ZXI7XG4gIH1cblxuICAudGFibGUtaW50ZW5kcy1vcmRlcixcbiAgLnRhYmxlLW9yZGVyPjpub3QoY2FwdGlvbik+KiB7XG4gICAgYm9yZGVyLXdpZHRoOiAwLjA2cmVtIDA7XG4gICAgYm9yZGVyLWNvbG9yOiAkZHVzdHktZ3JheTtcbiAgfVxuXG4gIC53aW5lLW5hbWUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIGZvbnQtZmFtaWx5OiAkcm9ib3RvLWNvbmRlbnNlZDtcbiAgICBjb2xvcjogJGJvdWxkZXI7XG4gICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgd2lkdGg6IDUwJTtcblxuICAgIGEge1xuICAgICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgfVxuICB9XG5cbiAgLnByaWNlIHtcbiAgICBjb2xvcjogJHNpbHZlcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgfVxuXG4gIC5xdWFudGl0eSB7XG4gICAgYm9yZGVyOiBzb2xpZCAwLjA2cmVtICRzaWx2ZXI7XG4gICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgZm9udC1mYW1pbHk6ICRyb2JvdG8tY29uZGVuc2VkO1xuICAgIGNvbG9yOiAkYm91bGRlcjtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB3aWR0aDogNC40cmVtO1xuICB9XG5cbiAgLnF1YW50aXR5OmZvY3VzLXZpc2libGUge1xuICAgIG91dGxpbmU6ICRzaWx2ZXIgYXV0byAwLjA2cmVtO1xuICB9XG5cbiAgLndhdy1wcmljZSxcbiAgLnRhYmxlLWludGVuZHMtb3JkZXI+dGQge1xuICAgIGZvbnQtZmFtaWx5OiAkcm9ib3RvLWNvbmRlbnNlZDtcbiAgICBjb2xvcjogJGNvbnRlc3NhO1xuICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICB9XG5cbiAgLmFkZHJlc3MsXG4gIC53YXctcHJpY2UsXG4gIC50YWJsZS1vcmRlcj50ZCB7XG4gICAgZm9udC1mYW1pbHk6ICRyb2JvdG8tY29uZGVuc2VkO1xuICAgIGNvbG9yOiAkYm91bGRlcjtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgdHI6bGFzdC1jaGlsZD50ZD46bm90KC50YWJsZS1jZWxsLXRleHQpPioge1xuICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtZmFtaWx5OiAkcm9ib3RvLWNvbmRlbnNlZDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiAkc2lsdmVyO1xuICB9XG5cbiAgdHI6bGFzdC1jaGlsZD50ZD4ub3JkZXItYWN0aW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuXG4gICAgLm9yZGVyLXJlc2V0LWJ1dHRvbiB7XG4gICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICAgIG1hcmdpbi1yaWdodDogMSU7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgcGFkZGluZzogMS43NXJlbTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICAgIH1cblxuICAgIC5vcmRlci1jaGFuZ2UtYnV0dG9uIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB9XG5cblxuICAgIC5vcmRlci12YWxpZGF0ZS1idXR0b24ge1xuICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cbiAgfVxuXG4gIC50YWJsZS1vcmRlciB7XG4gICAgdHI6bGFzdC1jaGlsZD50ZCB7XG4gICAgICBsaW5lLWhlaWdodDogMmVtO1xuICAgIH1cbiAgfVxuXG4gIC50YWJsZS1pbnRlbmRzLW9yZGVyIHRyOmxhc3QtY2hpbGQ+dGQ+c3Ryb25nIHtcbiAgICBjb2xvcjogJGNvbnRlc3NhO1xuICB9XG5cbiAgLnRhYmxlLWludGVuZHMtb3JkZXIgdHI6bGFzdC1jaGlsZD4uY29udGVzc2Ege1xuICAgIGNvbG9yOiAkY29udGVzc2E7XG4gIH1cblxuICAudGFibGUtYmlsbHMge1xuICAgIEBtZWRpYShtYXgtd2lkdGg6IDYwMHB4KSB7XG4gICAgICB3aWR0aDogNDVyZW07XG4gICAgfVxuICB9XG5cbiAgLnRhYmxlLWludGVuZHMtb3JkZXIge1xuICAgIC5idG4ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbnRlc3NhO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29udGVzc2E7XG4gICAgfVxuXG4gICAgLmJ0bi1kaXNhYmxlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2lsdmVyO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkc2lsdmVyO1xuICAgICAgY29sb3I6ICRib3VsZGVyO1xuICAgICAgY3Vyc29yOiBpbml0aWFsO1xuICAgIH1cbiAgfVxuXG4gIC5kZWxpdmVyeSB7XG4gICAgbWFyZ2luOiAwIDAuNXJlbSAwIDA7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cblxuICAuZGVsaXZlcnkxIHtcbiAgICBtYXJnaW46IDAgMC41cmVtIDAgMDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5mb3JtLXNlbGVjdC1hZGRyZXNzIHtcbiAgICBmbG9hdDogcmlnaHQ7IC8vbGVmdCBlbiBtb2JpbGVcbiAgICB3aWR0aDogODIlO1xuICAgIG1hcmdpbi10b3A6IDAuNnJlbTtcblxuICAgIC8vbWFyZ2luOiAwOyAvL0VuIG1vYmlsZVxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPHRhYmxldC1sYXJnZVwiKSB7XG4gICAgICB3aWR0aDogMjAwcHg7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuaGlzdG9yeSB7XG4gICAgbWFyZ2luLXRvcDogNC41cmVtO1xuICB9XG5cbiAgdHI6bGFzdC1jaGlsZD50ZD5zdHJvbmcge1xuICAgIGNvbG9yOiAkdHVuZG9yYTtcbiAgfVxuXG4gIC50YWJsZS1mb290ZXItY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgLmJ0bi1taXgge1xuICAgICAgd2lkdGg6IGluaXRpYWw7XG4gICAgICBoZWlnaHQ6IGluaXRpYWw7XG4gICAgfVxuICB9XG5cbiAgc3Bhbi50YWJsZS1mb290ZXIge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6ICRib3VsZGVyO1xuICB9XG5cbiAgcC50YWJsZS1mb290ZXIge1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgY29sb3I6ICRjb250ZXNzYTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAwLjlyZW07XG4gIH1cblxuICAuY29udGVzc2Ege1xuICAgIGNvbG9yOiAkY29udGVzc2E7XG4gIH1cblxuICAuYnRuLWNvbnRlc3NhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29udGVzc2E7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgfVxuXG4gIC5idG4tbWl4IHtcbiAgICB3aWR0aDogMTAuNDRyZW07XG4gICAgaGVpZ2h0OiAxLjlyZW07XG4gICAgZm9udC1mYW1pbHk6ICRyb2JvdG8tY29uZGVuc2VkO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICB9XG5cbiAgLm9yZGVyLXNlcGFyYXRvciB7XG4gICAgYm9yZGVyLXRvcDogMC4wNnJlbSBzb2xpZCAkZHVzdHktZ3JheTtcbiAgICBtYXJnaW46IDJyZW0gYXV0bztcbiAgICB3aWR0aDogNTAlO1xuICB9XG5cbiAgLm1vcmUtcHJvZHVjdHMtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgIGNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG5cbiAgLnB5LTQge1xuICAgIG1hcmdpbjogYXV0bztcbiAgfVxufVxuXG4udGFibGUtYmlsbC1udW1iZXIge1xuICB3aWR0aDogMjBlbTtcbn1cblxuLmJpbGxfX2Rvd25sb2FkIHtcbiAgd2lkdGg6IDJlbTtcbn1cblxuLmJpbGxfX2Rvd25sb2FkOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4jYmlsbHMge1xuICAub3JkZXItY29udGFpbmVyIHtcbiAgICB0ciB7XG4gICAgICBoZWlnaHQ6IDNlbTtcbiAgICB9XG4gIH1cbn0iLCIjYmlsbHMge1xuICAuc2VwYXJhdG9yIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGR1c3R5LWdyYXk7XG4gICAgbWFyZ2luOiAycmVtIGF1dG87XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuIiwiLndpbmVncm93ZXItZm9ybSB7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL3B1YmxpYy9pbWFnZXMvd2luZWdyb3dlci1mb3JtL3EtMS12aXN1ZWwucG5nJyk7XG4gIC5yb3cge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB9XG4gIGgze1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAucXVlc3Rpb25uYWlyZS13cmFwcGVyIHtcbiAgICBwYWRkaW5nOiAzMHB4IDAgMTI1cHggMDtcbiAgfVxuICAucXVlc3Rpb25uYWlyZVxuICB7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIGJveC1zaGFkb3c6IDJweCAycHggNHB4IDAgcmdiYSgwLCAwLCAwLCAwLjUpO1xuICAgIHdpZHRoOiA1NzZweDtcbiAgICBwYWRkaW5nOiAxN3B4IDI2cHggMTZweCAyN3B4O1xuICAgIG1hcmdpbi1ib3R0b206IDcwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIEBpbmNsdWRlIG1lZGlhKFwiPHRhYmxldC1tZWRpdW1cIikge1xuICAgICAgd2lkdGg6IDQ3NnB4O1xuICAgIH1cbiAgfVxuICAuZGVzY3JpcHRpb24tZm9ybSB7XG4gICAgY29sb3I6ICRkaW0tZ3JleTtcbiAgICBoMiB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgICB9XG4gICAgLnR4dFdlbGNvbWUge1xuICAgICAgY29sb3I6ICRtYW5kYXJpbi1yZWQ7XG4gICAgfVxuICB9XG4gIC5mb3JtLXF1ZXN0aW9ubmFpcmUge1xuICAgIGxhYmVse1xuICAgICAgY29sb3I6ICR0dW5kb3JhO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbGVmdDogMTVweDtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgfVxuICB9XG4gIC5zdGVwIHtcbiAgICBmb250LXNpemU6IDMycHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgcGFkZGluZzogMTBweCAxMHB4IDAgMDtcbiAgICBjb2xvcjogJHF1aWNrc2lsdmVyO1xuICAgIHNwYW4ge1xuICAgICAgY29sb3I6ICRtYWluLWNvbG9yO1xuICAgIH1cbiAgfVxuICAuc3RlcC1pbWcge1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gIH1cbiAgLmxpbmstZG93bmxvYWQge1xuICAgIGEge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6ICRtYWluLWNvbG9yO1xuICAgIH1cbiAgICBzcGFue1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuICAgIGE6aG92ZXJ7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gIH1cbiAgLmV0YXBlLXN1aXZhbnRlIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgcGFkZGluZzogNnB4IDQwcHggIWltcG9ydGFudDtcbiAgfVxuICAubWVudGlvbnMge1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBjb2xvcjogJGRpbS1ncmV5O1xuICB9XG4vL3N0ZXAgMlxuICAudmludGFnZSB7XG4gICAgY29sb3I6ICR0dW5kb3JhXG4gIH1cbi8vc3RlcCAzXG4gIC50eHRUdW5kb3JhIHtcbiAgICBjb2xvcjogJHR1bmRvcmE7XG4gIH1cbiAgLnN1YnRpdHRsZSB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgfVxuLy9zdGVwIDRcbiAgLmJvcmRlci11bmRlcmxpbmV7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjZGNkY2Q7XG4gICAgd2lkdGg6IDI4OXB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIEBpbmNsdWRlIG1lZGlhKFwiPHRhYmxldC1tZWRpdW1cIikge1xuICAgICAgd2lkdGg6IDIxNXB4O1xuICAgIH1cbiAgfVxuICAjc3RlcC00e1xuICAgIHBhZGRpbmc6IDZweCA2MHB4O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxuICAuY3V2ZSB7XG4gICAgcCB7XG4gICAgICBjb2xvcjogJHR1bmRvcmE7XG4gICAgfVxuICAgICZfX2N1dmVlIHtcbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJG1haW4tY29sb3I7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgbGFiZWwge1xuICAgIGNvbG9yOiAkdHVuZG9yYTtcbiAgfVxuICAuc2F2ZSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIHBhZGRpbmc6IDZweCA5MHB4O1xuICB9XG4vLyBzdGVwIDdcbiAgI3NpdGUge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxuLy8gcmFkaW9UeXBlIGFuZCBjaGVja2JveFR5cGVcbiAgI3dpbmVncm93ZXJfZm9ybV9zdGVwM19zYW1wbGUge1xuICAgIGxhYmVsIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGxlZnQ6IC01cHg7XG4gICAgICBib3R0b206IDJweDtcbiAgICB9XG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICB3aWR0aDogMTVweDtcbiAgICAgIGhlaWdodDogMTVweDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkNWQ1ZDU7XG4gICAgICBiYWNrZ3JvdW5kLWNsaXA6IGNvbnRlbnQtYm94O1xuICAgICAgcGFkZGluZzogMnB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgbWFyZ2luOiAwIDE1cHg7XG4gICAgfVxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtYWluLWNvbG9yO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgICB9XG4gIH1cbiAgI3dpbmVncm93ZXJfZm9ybV9zdGVwNV9pbnRlcm5ldCwgI3dpbmVncm93ZXJfZm9ybV9zdGVwNV9kaXN0cmlidXRpb24sXG4gICN3aW5lZ3Jvd2VyX2Zvcm1fc3RlcDVfZV9jb21tZXJjZSwgI3dpbmVncm93ZXJfZm9ybV9zdGVwNV9jaGFpbnMge1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgbGFiZWwge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbGVmdDogLTVweDtcbiAgICAgIGJvdHRvbTogNXB4O1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkNWQ1ZDU7XG4gICAgICBiYWNrZ3JvdW5kLWNsaXA6IGNvbnRlbnQtYm94O1xuICAgICAgcGFkZGluZzogMnB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgbWFyZ2luOiAwIDE1cHg7XG4gICAgfVxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtYWluLWNvbG9yO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgICB9XG4gIH1cbiAgI3dpbmVncm93ZXJfZm9ybV9zdGVwNV93aW5lX2NvbmNlcm5lZF8xLCAjd2luZWdyb3dlcl9mb3JtX3N0ZXA1X3dpbmVfY29uY2VybmVkXzIge1xuICAgIGxhYmVsIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGxlZnQ6IDQwcHg7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgYm90dG9tOiAyNXB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgICAgd2lkdGg6IDE3cHg7XG4gICAgICBoZWlnaHQ6IDE3cHg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjYzljOWM5O1xuICAgICAgcGFkZGluZzogMnB4O1xuICAgICAgbWFyZ2luOiAwIDE1cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgfVxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtYWluLWNvbG9yO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJ+KclCc7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYm90dG9tOiA1cHg7XG4gICAgICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uc3VibWl0LWJ1dHRvbnMgZGl2OmZpcnN0LWNoaWxke1xuICBtYXJnaW46IDAgMTBweCAwIGF1dG87XG59XG5cbi5zdWJtaXQtYnV0dG9ucyBkaXY6bnRoLWNoaWxkKDJuKXtcbiAgbWFyZ2luOiBhdXRvIGF1dG8gYXV0byAxMHB4OyAgXG59XG4iLCIudmluZXlhcmRfX3NhbXBsZS1idG57XG4gIG1hcmdpbjogYXV0bztcbiAgcGFkZGluZzogMC44cmVtIDJyZW07XG4gIGJvcmRlci1yYWRpdXM6IDMycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRtYWluLXRleHQtY29sb3I7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBsaW5lLWhlaWdodDogaW5pdGlhbDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHdpZHRoOjkuNnJlbTtcbn1cblxuXG4udmluZXlhcmR7XG4gIGNvbG9yOiAkYm91bGRlcjtcbn1cblxuLnZpbmV5YXJkX19zZXBhcmF0b3J7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZHVzdHktZ3JheTtcbiAgbWFyZ2luOiAxcmVtIGF1dG87XG4gIHdpZHRoOiA1MCU7XG59XG5cbi53aW5lLWxhYmVsZXtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG4uc3F1YXJlX193aW5lZ3Jvd2Vye1xuICBAbWVkaWEobWluLXdpZHRoOiA4MDBweCkge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmciAxZnI7XG4gIH1cbn1cbiIsIi5tYWludGVuYW5jZV9jb250YWluZXJ7XG4gICAgYXtcbiAgICAgICAgY29sb3I6ICRtYWluLWNvbG9yO1xuICAgIH1cbiAgICAubWFpbnRlbmFuY2VfaW1nIHtcbiAgICAgICAgbWFyZ2luOiAyMHB4O1xuICAgICAgICBtYXgtd2lkdGg6IDM1MHB4O1xuICAgIH1cbiAgICAuZXJyb3ItYWN0aW9uc3tcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG4gICAgYS5idG4uYnRuLXByaW1hcnkuYnRuLWxnIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgIH1cbn1cblxuIiwiLnByb2R1Y3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBjb2xvcjogJGJvdWxkZXI7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuXG4gICAgaDIge1xuICAgICAgICBmb250LXNpemU6IDIxcHg7XG4gICAgICAgIGNvbG9yOiAkdHVuZG9yYTtcbiAgICB9XG5cbiAgICAucmVjb21tZW5kYXRlLWNpcmNsZSB7XG4gICAgICAgIC5yb3VuZGVkLWNpcmNsZSB7XG4gICAgICAgICAgICBtYXJnaW46IDEwcHggYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC50ZXh0LWRhbmdlciB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDgwMHB4KSBhbmQgKG1pbi13aWR0aDogNTcwcHgpIHtcbiAgICAgICAgICAgIC5yb3VuZGVkLWNpcmNsZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAxMHB4IGF1dG87XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiA2MHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGV4dC1kYW5nZXIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucHJvZHVjdF9fZmxleCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjxtb2JpbGUtbGFyZ2VcIikge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPHRhYmxldC1sYXJnZVwiKSB7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9kdWN0X19kaXNwbGF5IHtcbiAgICAgICAgICAgIGZsZXg6IDA7XG5cbiAgICAgICAgICAgIC5wcm9kdWN0X19kaXNwbGF5X19pbWFnZS1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgIC5wcm9kdWN0X19kaXNwbGF5X19pbWFnZSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRzaWx2ZXI7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzNTBweDtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjxtb2JpbGUtbGFyZ2VcIikge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucHJvZHVjdF9fZGlzcGxheV9faW1hZ2UtYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiA0cHggc29saWQgJGNvbnRlc3NhO1xuXG4gICAgICAgICAgICAgICAgICAgICYtLWdyYXkge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiA0cHggc29saWQgJGdyYXk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucHJvZHVjdF9fZGlzcGxheV9faW5mbyB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAxNSU7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgLm51bWJlci1vZi1ib3R0bGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGluaXRpYWw7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAwIDFyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29udGVzc2E7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYtLWdyYXkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JheTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5mbGFnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb250ZXNzYTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMXJlbTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLmZsYWdfX3RleHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxN3B4IHNvbGlkICNmZmZmZmY7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMTdweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxN3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLS1ncmF5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC50aW1lLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDAgMXJlbTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLnRpbWUtY29udGFpbmVyX190aW1lLFxuICAgICAgICAgICAgICAgICAgICAgICAgLnRpbWUtY29udGFpbmVyX190ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucHJvZHVjdF9fZGlzcGxheV9fZmlsdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IC0xLjJyZW07XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDVweDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRkb3ZlLWdyYXk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnByb2R1Y3RfX2luZm9zIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgZmxleDogMCAwIDUwJTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8dGFibGV0LWxhcmdlXCIpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHJvZHVjdF9faW5mb3NfX3ZpbmV5YXJkLFxuICAgICAgICAgICAgLnByb2R1Y3RfX2luZm9zX19yZWdpb24ge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHJvZHVjdF9faW5mb3NfX25hbWUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbnRlc3NhO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHJvZHVjdF9faW5mb3NfX3llYXIge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByb2R1Y3RfX2luZm9zX19kZXNjcmlwdGlvbi10aXRsZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByb2R1Y3RfX2luZm9zX19zYW1wbGUtYnRuIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMC44cmVtIDJyZW07XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMzJweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFpbi10ZXh0LWNvbG9yO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGluaXRpYWw7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9kdWN0X19pbmZvc19fcmVjb21tZW5kYXRpb24ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAxMnB4IDA7XG5cbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb250ZXNzYTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IHJnYigwIDAgMCAvIDI0JSkgMCAxcHggNHB4O1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDZweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0NnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9kdWN0X19yZXZpZXdzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG5cbiAgICAgICAgICAgIC5wcm9kdWN0X19zdGFycyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuXG4gICAgICAgICAgICAgICAgLnN0YXJzX19hdXRob3Ige1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9kdWN0X19yZXZpZXdzLWxpbmtzIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYm91bGRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wcm9kdWN0X19yYXRpbmcge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogM3B4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnByb2R1Y3RfX3JhdGluZyAucHJvZHVjdF9fc3RhcnMge1xuICAgICAgICBtYXJnaW4tbGVmdDogNnB4O1xuICAgIH1cblxuICAgIC5wcm9kdWN0X19yZXZpZXdzLWZvcm0ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vhc2hlbGw7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMzRweCAyOHB4IDM0cHg7XG4gICAgfVxuXG4gICAgLnByb2R1Y3RfX3Jldmlld3MtYXV0aG9yIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIGNvbG9yOiAkdHVuZG9yYTtcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG8gMTFweCBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnByb2R1Y3RfX3NvbGQtb3V0IHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb2xvcjogJGNvbnRlc3NhO1xuICAgICAgICBmb250LXNpemU6IDMycHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cblxuICAgIC5wcm9kdWN0X19maWx0ZXIge1xuICAgICAgICBmbGV4OiAwIDAgNzAlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gICAgICAgIGJvcmRlci1sZWZ0OiA0cHggc29saWQgI2VjNTU2OTtcblxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLnByb2R1Y3RfX2ZpbHRlci1mYXZvcml0ZSB7XG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNkNDJiMjU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnByb2R1Y3RfX2ZpbHRlci1uZXcge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjNDM2NDAwO1xuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM0MzY0MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnByb2R1Y3RfX2ZpbHRlci1kaXNjb3VudCB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICNmZmEyMDA7XG5cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmYTIwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYucHJvZHVjdF9fZmlsdGVyLXRvcCB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICM4NjVjYWM7XG5cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzg2NWNhYztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wcm9kdWN0X19zZXBhcmF0b3Ige1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGR1c3R5LWdyYXk7XG4gICAgICAgIG1hcmdpbjogMnJlbSBhdXRvO1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgIH1cblxuICAgIC5wcm9kdWN0X19zbWFsbC1zZXBhcmF0b3Ige1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGR1c3R5LWdyYXk7XG4gICAgICAgIG1hcmdpbjogMC4zcmVtIGF1dG87XG4gICAgICAgIHdpZHRoOiAyNSU7XG4gICAgfVxuXG4gICAgLnByb2R1Y3RfX2ludGVuZHMtaW5mb3Mge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgY29sb3I6ICRjb250ZXNzYTtcbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbnRlc3NhO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZvbnQtc2l6ZS0xNCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucHJvZHVjdF9faW50ZW5kcyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE5MiwgMTE2LCA5NiwgMC4xKTtcbiAgICAgICAgbWFyZ2luOiAwLjVyZW0gMDtcbiAgICAgICAgcGFkZGluZzogMXJlbSAwO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPG1vYmlsZS1sYXJnZVwiKSB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4IDEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAjcHJpY2luZy1sZXZlbCB7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdF9faW50ZW5kcy1mbGV4IHtcbiAgICAgICAgICAgIGZsZXg6IDAgMCAzMyU7XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdF9faW50ZW5kc19fYmFubmVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICAgICAgd2lkdGg6IDE1MHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMC43cmVtO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTFyZW07XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPG1vYmlsZS1sYXJnZVwiKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAtMXJlbSBhdXRvIGF1dG8gYXV0bztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByb2R1Y3RfX2ludGVuZHNfX2JpZy1wcmljZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcblxuICAgICAgICAgICAgICAgIC5wcm9kdWN0X19pbnRlbmRzX19iaWctcHJpY2UtbnVtYmVyIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiA4MnB4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbnRlc3NhO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucHJvZHVjdF9faW50ZW5kc19fYmlnLXByaWNlLWV1cm9zIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiA0OHB4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbnRlc3NhO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0wLjhyZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMC41cmVtO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMzBweCBzb2xpZCByZ2JhKDE5MiwgMTE2LCA5NiwgMC4xKTtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogNzVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDc1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdF9faW50ZW5kcy1jb250ZXNzYSB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbnRlc3NhO1xuICAgICAgICB9XG5cbiAgICAgICAgLnByb2R1Y3RfX2ludGVuZHNfX29yZGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAucHJvZHVjdF9faW50ZW5kc19fb3JkZXItdGl0bGUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYm91bGRlcjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9kdWN0X19pbnRlbmRzX19vcmRlci1pbnB1dC1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHJvZHVjdF9faW50ZW5kc19fb3JkZXItbGFiZWwge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9kdWN0X19pbnRlbmRzX19vcmRlci1ib3R0bGVzIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDQycHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9kdWN0X19pbnRlbmRzX19vcmRlci1ldXJvcyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaW5wdXQsXG4gICAgICAgICAgICAucHJvZHVjdF9faW50ZW5kc19fb3JkZXItZXVyb3Mge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuMnJlbTtcbiAgICAgICAgICAgICAgICB3aWR0aDogN3JlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDNyZW07XG4gICAgICAgICAgICAgICAgY29sb3I6ICRib3VsZGVyO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbnRlc3NhO1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbnRlc3NhO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYnRuLWRpc2FibGVkIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2lsdmVyO1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHNpbHZlcjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJvdWxkZXI7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBpbml0aWFsO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnByb2R1Y3QtaW50ZW5kIHtcbiAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxOTMsIDE5MywgMTkzLCAwLjEpO1xuXG4gICAgICAgIGgyLFxuICAgICAgICBoMi50aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcblxuICAgICAgICAgICAgLnRleHQtcmVkIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbnRlc3NhO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5iaWctcHJpY2Uge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEuNXJlbSAycmVtO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IHJnYigwIDAgMCAvIDI0JSkgMCAzcHggOHB4O1xuICAgICAgICAgICAgLyp3aWR0aDogMTUwcHg7Ki9cbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8bW9iaWxlLWxhcmdlXCIpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjZyZW0gMC44cmVtO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5iaWctcHJpY2UtbnVtYmVyIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDgycHg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb250ZXNzYTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcblxuICAgICAgICAgICAgICAgICYuaW50ZW5kLWJsb2NrIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiA3MHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPG1vYmlsZS1sYXJnZVwiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5iaWctcHJpY2UtZXVyb3Mge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNDhweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbnRlc3NhO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8bW9iaWxlLWxhcmdlXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5ib3gtaW5kZW5kIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IHJnYigwIDAgMCAvIDI0JSkgMCAzcHggOHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMS41cmVtIDJyZW07XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgICAgICAvKndpZHRoOiAxNTBweDsqL1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPG1vYmlsZS1sYXJnZVwiKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMC42cmVtIDAuOHJlbTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgICAgICAgICAgLyp3aWR0aDogMTAwcHg7Ki9cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5vcGVyYXRvciB7XG4gICAgICAgICAgICBmb250LXNpemU6IDkwcHg7XG4gICAgICAgICAgICBjb2xvcjogJGNvbnRlc3NhO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjxtb2JpbGUtbGFyZ2VcIikge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9kdWN0X19pbnRlbmRzX19vcmRlciB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblxuICAgICAgICAgICAgLnRleHQtcmVkIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbnRlc3NhO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuMnJlbTtcbiAgICAgICAgICAgICAgICB3aWR0aDogOHJlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDNyZW07XG4gICAgICAgICAgICAgICAgY29sb3I6ICM3ODc4Nzg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogM3JlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNhbXBsZS1idG4ge1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgcGFkZGluZzogMS4ycmVtIDJyZW07XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGluaXRpYWw7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtcHJpbWFyeSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tdGV4dC1jb2xvciAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLWdyYXkge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNhN2E3YTcgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5idG4tZGlzYWJsZWQge1xuICAgICAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLnd3LWJvcmRlci1ib3R0b20ge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM5Nzk3OTc7XG4gICAgICAgICAgICBtYXJnaW46IDAuNHJlbSBhdXRvIDJyZW07XG4gICAgICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRpbWUtbGluZS10ZXh0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMzJweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8bW9iaWxlLWxhcmdlXCIpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnBhbmFjaGUtaXRlbSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPG1vYmlsZS1sYXJnZVwiKSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5zZWxlY3RlZCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggZG90dGVkICRjb250ZXNzYSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA2cHg7XG5cbiAgICAgICAgICAgICAgICBwLFxuICAgICAgICAgICAgICAgIGlucHV0LmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29udGVzc2EgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBwLmZsYWdfX3RleHQge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlucHV0LmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb250ZXNzYSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5UYXJpZi1DYXZpc3RlLTEwIHtcbiAgICAgICAgd2lkdGg6IDY5OHB4O1xuICAgICAgICBoZWlnaHQ6IDIycHg7XG4gICAgICAgIG1hcmdpbjogMCAwIDExcHggMnB4O1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGZvbnQtc3RyZXRjaDogY29uZGVuc2VkO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgY29sb3I6ICM3MzczNzM7XG5cbiAgICAgICAgLnRleHQtc3R5bGUtMSB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbnRlc3NhO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJsb2Mge1xuICAgICAgICB3aWR0aDogNjk4cHg7XG4gICAgICAgIGhlaWdodDogNDQzcHg7XG4gICAgICAgIG1hcmdpbjogMTFweCAycHggMTdweCAwO1xuICAgICAgICBwYWRkaW5nOiAzMnB4IDIwcHggMjlweCA1cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTkzLCAxOTMsIDE5MywgMC4xKTtcbiAgICB9XG5cbiAgICAudGV4dC1yZWQge1xuICAgICAgICBjb2xvcjogJGNvbnRlc3NhICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmJnLXJlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb250ZXNzYSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5iZy13aGl0ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuYmctZ3J5LTE5MyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTkzLCAxOTMsIDE5MywgMC4xKSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5ib3JkZXItZ3JleSB7XG4gICAgICAgIGJvcmRlcjogc29saWQgMXB4ICNkOWQ5ZDk7XG4gICAgfVxuXG4gICAgLnJlYy01NngxMSB7XG4gICAgICAgIHdpZHRoOiA1NnB4O1xuICAgICAgICBoZWlnaHQ6IDExcHg7XG4gICAgICAgIG1hcmdpbjogOXB4IDJweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNS41cHg7XG4gICAgfVxuXG4gICAgLnJlYy01NngxMS1ib3JkZXJlZCB7XG4gICAgICAgIGJvcmRlcjogc29saWQgMXB4ICNkOWQ5ZDkgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAudGV4dC1ib2xkIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuYmlnLXByaWNlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgIH1cblxuICAgIC5iaWctcHJpY2UtbnVtYmVyIHtcbiAgICAgICAgZm9udC1zaXplOiA4MnB4O1xuICAgICAgICBjb2xvcjogJGNvbnRlc3NhO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG5cbiAgICAuYmlnLXByaWNlLWV1cm9zIHtcbiAgICAgICAgZm9udC1zaXplOiA0OHB4O1xuICAgICAgICBjb2xvcjogJGNvbnRlc3NhO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG5cbiAgICAuYm94LWluZGVuZCB7XG4gICAgICAgIGJveC1zaGFkb3c6IHJnYigwIDAgMCAvIDI0JSkgMCAzcHggOHB4O1xuICAgICAgICBwYWRkaW5nOiAxLjVyZW0gMnJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICB9XG5cbiAgICAuaW5saW5lLWJsb2NrIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnByb2R1Y3QtaW50ZW5kIHtcbiAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcblxuICAgICAgICBoMixcbiAgICAgICAgaDIudGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAub3BlcmF0b3Ige1xuICAgICAgICAgICAgZm9udC1zaXplOiA5MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnByaWNlIHtcbiAgICAgICAgICAgIC8vIEVtcHR5IGNsYXNzIGFzIGluIHByb2R1Y3Rpb25cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wcm9kdWN0X19pbnRlbmRzX19vcmRlciB7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuMnJlbTtcbiAgICAgICAgICAgIHdpZHRoOiA4cmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAzcmVtO1xuICAgICAgICAgICAgY29sb3I6ICM3ODc4Nzg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzcmVtO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2FtcGxlLWJ0biB7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgcGFkZGluZzogMS4ycmVtIDJyZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBsaW5lLWhlaWdodDogaW5pdGlhbDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuOTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtcHJpbWFyeSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFpbi10ZXh0LWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAmLWdyYXkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E3YTdhNyAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJ0bi1kaXNhYmxlZCB7XG4gICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuYmFzZWxpbmUge1xuICAgICAgICBtYXJnaW4tdG9wOiAtMTJweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC53dy1ib3JkZXItYm90dG9tIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM5Nzk3OTc7XG4gICAgICAgIG1hcmdpbjogMC40cmVtIGF1dG8gMnJlbTtcbiAgICAgICAgd2lkdGg6IDQwJTtcbiAgICB9XG5cbiAgICAuc3F1YXJlIHtcbiAgICAgICAgLnByb2R1Y3RfX2Rlc2NyaXB0aW9uLmhpZGRlbiB7XG4gICAgICAgICAgICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgI3Byb2R1Y3QtcGFuYWNoZSB7XG4gICAgICAgIC5zcXVhcmUge1xuICAgICAgICAgICAgLnNxdWFyZV9faW1hZ2Uge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucGFuYWNoZS1pdGVtIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcblxuICAgICAgICAgICAgJi5zZWxlY3RlZCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggZG90dGVkICRjb250ZXNzYSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA2cHg7XG5cbiAgICAgICAgICAgICAgICBwLFxuICAgICAgICAgICAgICAgIGlucHV0LmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29udGVzc2EgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBwLmZsYWdfX3RleHQge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlucHV0LmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb250ZXNzYSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50aW1lLWxpbmUtdGV4dCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZzogMTBweCAzMnB4O1xuICAgIH1cblxuICAgIC5zcXVhcmVfX3Byb2R1Y3Qge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOjc2N3B4KSB7XG4gICAgICAgIC5ib3gtaW5kZW5kIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNnJlbSAwLjhyZW07XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdC1pbnRlbmQgLm9wZXJhdG9yIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5iaWctcHJpY2UtbnVtYmVyLmludGVuZC1ibG9jayB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuYmlnLXByaWNlLW51bWJlci5wcmljZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuYmlnLXByaWNlLWV1cm9zLmNlbnRzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm1vZGFsIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMjBweCA0cHggJHNpbHZlci1jaGFsaWNlO1xuXG4gICAgJi0taGlkZGVuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmLS12aXNpYmxlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgICAmLnByb2R1Y3QtbW9kYWwge1xuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29udGVzc2E7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbnRlc3NhO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwLjVyZW0gMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29udGVzc2E7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29udGVzc2E7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5idG4tZGlzYWJsZWQge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzaWx2ZXI7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkc2lsdmVyO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYm91bGRlcjtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IGluaXRpYWw7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnZhbGlkYXRlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHJvZHVjdC1tb2RhbF9fZm9ybS1hZGRyZXNzIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogNnB4IDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR0dW5kb3JhO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHJvZHVjdC1tb2RhbF9fdGFibGUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICAucHJvZHVjdC1tb2RhbF9fdGFibGUtZmxleCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnByb2R1Y3QtbW9kYWxfX3RhYmxlLXJvdyB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogLTFweCAwIDAgLTFweDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHNpbHZlcjtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0dW5kb3JhO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5wcm9kdWN0LW1vZGFsX190YWJsZS1wcmljZSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbnRlc3NhO1xuXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRkdXN0eS1ncmF5O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9kdWN0LW1vZGFsX193aW5lLW5vbmUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHJvZHVjdC1tb2RhbF9fd2luZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYm91bGRlcjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucHJvZHVjdC1tb2RhbF9fd2luZV9fdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJvdWxkZXI7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucHJvZHVjdC1tb2RhbF9fd2luZV9faW5mbyB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnByb2R1Y3QtbW9kYWxfX3dpbmUtZm9jdXMge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbnRlc3NhO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucHJvZHVjdC1tb2RhbF9fd2luZS10b3RhbCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYm91bGRlcjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHJvZHVjdC1tb2RhbF9fd2luZS1udW1iZXIge1xuICAgICAgICAgICAgICAgIGZsZXg6IDAgMCAyNSU7XG5cbiAgICAgICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByb2R1Y3QtbW9kYWxfX2xpbmsge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29udGVzc2E7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGluaXRpYWw7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9kdWN0LW1vZGFsX19hZGp1c3Qge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAucHJvZHVjdC1tb2RhbF9fYWRqdXN0X19wYXJhZ3JhcGgge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogM3B4IHNvbGlkICRjb250ZXNzYTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRib3VsZGVyO1xuXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb250ZXNzYTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByb2R1Y3QtbW9kYWxfX3NhbXBsZS1idG4ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtYWluLXRleHQtY29sb3I7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAjYm90dGxlcy10b3RhbC1wcmljZSxcbiAgICAgICAgICAgICNib3R0bGVzLXRleHQtYWZ0ZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICNib3R0bGVzLXRvdGFsLXByaWNlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJvdWxkZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAjaW50ZW5kLXNlbGVjdC1hZGRyZXNzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4jc2FtcGxlLW1vZGFsIHtcbiAgICB0b3A6IDEwJTtcbiAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgbWF4LWhlaWdodDogODAlO1xuXG4gICAgaDIge1xuICAgICAgICBjb2xvcjogJG1haW4tdGV4dC1jb2xvcjtcbiAgICB9XG5cbiAgICAuYnRuLWRpc2FibGVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNpbHZlcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkc2lsdmVyO1xuICAgICAgICBjb2xvcjogJGJvdWxkZXI7XG4gICAgICAgIGN1cnNvcjogaW5pdGlhbDtcbiAgICB9XG5cbiAgICAuc2FtcGxlLXNxdWFyZSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPG1vYmlsZS1sYXJnZVwiKSB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgICAgIH1cblxuICAgICAgICAuc3F1YXJlX19wcm9kdWN0IHtcbiAgICAgICAgICAgICYuc2FtcGxlLXNxdWFyZV9fcHJvZHVjdC1lbXB0eSB7XG4gICAgICAgICAgICAgICAgLnNxdWFyZV9faW1hZ2Uge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICNhMmEyYTI7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmZsYWcge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTJhMmEyO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5udW1iZXItb2YtYm90dGxlLFxuICAgICAgICAgICAgICAgIC50aW1lLWNvbnRhaW5lcl9fdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjYTJhMmEyXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnRpbWUtY29udGFpbmVyX190aW1lIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRib3VsZGVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZsYWcge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb250ZXNzYTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZsYWdfX3RleHQge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm51bWJlci1vZi1ib3R0bGUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29udGVzc2E7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zcXVhcmVfX2ltYWdlIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDRweCBzb2xpZCAkY29udGVzc2E7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMXB4IDIzcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAuMTUpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNxdWFyZV9fcHJvZHVjdF9fY2hlY2tib3gtaW5wdXQge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc3F1YXJlX19wcm9kdWN0X19jaGVja2JveC1jb250cm9sIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMThweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHNpbHZlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNxdWFyZV9fcHJvZHVjdF9fY2hlY2tib3gtaW5wdXQ6Y2hlY2tlZCsuc3F1YXJlX19wcm9kdWN0X19jaGVja2JveC1jb250cm9sOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA3NSU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA3NSU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb250ZXNzYTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNxdWFyZV9fcHJvZHVjdF9fY2hlY2tib3gtbGFiZWwge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMC41cmVtIDAgMCAwO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNxdWFyZV9fcHJvZHVjdC11bmF2YWlsYWJsZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYm91bGRlcjtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9kdWN0X19kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDVweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGluaXRpYWw7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9kdWN0X19yZXZpZXctbnVtYmVyIHtcbiAgICAgICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0dW5kb3JhO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZS1yb3dsb2wge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZHVzdHktZ3JheTtcbiAgICB9XG5cbiAgICAjc2FtcGxlLW1vZGFsLXNlY29uZCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4uc3F1YXJlX19wcm9kdWN0OmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5idG4tcmV2aWV3IHtcbiAgICBtYXJnaW46IDEycHggYXV0byAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ucmV2aWV3LXN0YXJzIHtcbiAgICBtYXJnaW4tbGVmdDogNTBweDtcbn1cblxuLy8gRmFpcmUgZGlzcGFyYWl0cmUgbCdpbnB1dCBzYW5zIGZhaXJlIGRlIGRpc3BsYXk6bm9uZSAocG91ciBsZSBmb3JtKVxuLmN1c3RvbS1maWxlLWlucHV0IHtcbiAgICB3aWR0aDogMC4xcHg7XG4gICAgaGVpZ2h0OiAwLjFweDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IC0xO1xufVxuXG4jY29weUVtYWlsQnRuIHtcbiAgICBmb250LXNpemU6IDAuODc1ZW07XG59IiwiLyogUsOpY2FwaXR1bGF0aWYgbW9kZXJuZSBwb3VyIGxlIHBhbmFjaGFnZSBkZSBzcGlyaXR1ZXV4ICovXG4ucGFuYWNoZS1zdW1tYXJ5LW1vZGVybiB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIGJveC1zaGFkb3c6IDAgNnB4IDMwcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXI6IDJweCBzb2xpZCAjZjhmOWZhO1xufVxuXG4uc3VtbWFyeS1oZWFkZXIge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZjhmOWZhLCAjZTllY2VmKTtcbiAgcGFkZGluZzogMjBweCAyNHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RlZTJlNjtcblxuICBoNCB7XG4gICAgY29sb3I6ICMzMzM7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgfVxuXG4gIGkge1xuICAgIGNvbG9yOiAjZGMzNTQ1O1xuICB9XG59XG5cbi5zdW1tYXJ5LWNvbnRlbnQge1xuICBwYWRkaW5nOiAyNHB4O1xufVxuXG4uc3VtbWFyeS1zdGF0IHtcbiAgYmFja2dyb3VuZDogI2Y4ZjlmYTtcbiAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgcGFkZGluZzogMjBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTllY2VmO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuXG4gICY6aG92ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcbiAgICBib3gtc2hhZG93OiAwIDRweCAxNXB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgfVxufVxuXG4uc3RhdC1pY29uIHtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBjb2xvcjogIzY2NjtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xufVxuXG4uc3RhdC1udW1iZXIge1xuICBmb250LXNpemU6IDI0cHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjMzMzO1xuICBtYXJnaW4tYm90dG9tOiA0cHg7XG59XG5cbi5zdGF0LWxhYmVsIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogIzY2NjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4ucHJvZ3Jlc3Mtc2VjdGlvbiB7XG4gIGJhY2tncm91bmQ6ICNmOGY5ZmE7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIHBhZGRpbmc6IDE2cHg7XG59XG5cbi5wcm9ncmVzcyB7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbn1cblxuLnByb2dyZXNzLWJhciB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgI2RjMzU0NSwgIzI4YTc0NSk7XG4gIHRyYW5zaXRpb246IHdpZHRoIDAuNHMgZWFzZTtcbn1cblxuLy8gQ2FydGVzIHNwaXJpdHVldXggY29tcGFjdGVzIChsYXlvdXQgaG9yaXpvbnRhbClcbi5wYW5hY2hlLWl0ZW0tY29tcGFjdCB7XG4gIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG5cbiAgJi5zZWxlY3RlZCB7XG4gICAgLnNwaXJpdC1jYXJkLWNvbXBhY3Qge1xuICAgICAgYmFja2dyb3VuZDogI2Y4ZmRmOTtcbiAgICAgIGJvcmRlci1jb2xvcjogIzI4YTc0NTtcbiAgICB9XG4gIH1cbn1cblxuLnNwaXJpdC1jYXJkLWNvbXBhY3Qge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTllY2VmO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIHBhZGRpbmc6IDAuNzVyZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG5cbiAgJjpob3ZlciB7XG4gICAgYm94LXNoYWRvdzogMCAycHggOHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgfVxufVxuXG4uc3Bpcml0LXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMXJlbTtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4uc3Bpcml0LWJhc2ljLWluZm8ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDAuNXJlbTtcbiAgZmxleDogMSAxIDIwMHB4O1xuICBtaW4td2lkdGg6IDIwMHB4O1xuXG4gIC5zcGlyaXQtaW1hZ2Utc21hbGwge1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICB9XG5cbiAgLnNwaXJpdC10ZXh0IHtcbiAgICBmbGV4OiAxO1xuICAgIFxuICAgIC5zcGlyaXQtbmFtZS1jb21wYWN0IHtcbiAgICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGNvbG9yOiAjMmMzZTUwO1xuICAgICAgbWFyZ2luOiAwIDAgMC4ycmVtIDA7XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIH1cblxuICAgIC5kaXN0aWxsZXJ5LWNvbXBhY3Qge1xuICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiAgICB9XG5cbiAgICAuc3Bpcml0LWJhZGdlcy1pbmxpbmUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGdhcDogMC4yNXJlbTtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgLmJhZGdlLW1pbmkge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZTllY2VmO1xuICAgICAgICBjb2xvcjogIzQ5NTA1NztcbiAgICAgICAgZm9udC1zaXplOiAwLjZyZW07XG4gICAgICAgIHBhZGRpbmc6IDAuMXJlbSAwLjNyZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnNwaXJpdC1wcmljaW5nLWNvbXBhY3Qge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBcbiAgLm1haW4tcHJpY2UtY29tcGFjdCB7XG4gICAgc21hbGwge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IDAuNjVyZW07XG4gICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuMXJlbTtcbiAgICB9XG5cbiAgICBzdHJvbmcge1xuICAgICAgY29sb3I6ICMyOGE3NDU7XG4gICAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxuICB9XG5cbiAgLnN0b2NrLWNvbXBhY3Qge1xuICAgIG1hcmdpbi10b3A6IDAuMnJlbTtcbiAgICBmb250LXNpemU6IDAuN3JlbTtcblxuICAgIC5udW1iZXItb2YtYm90dGxlIHtcbiAgICAgIGNvbG9yOiAjMjhhNzQ1O1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB9XG5cbiAgICAuc3RvY2stbGFiZWwge1xuICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgfVxuICB9XG59XG5cbi5zcGlyaXQtcXVhbnRpdHktY29tcGFjdCB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuXG4gIC5xdWFudGl0eS1pbnB1dC1jb21wYWN0IHtcbiAgICB3aWR0aDogNjBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2U5ZWNlZjtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgcGFkZGluZzogMC4zcmVtIDAuMnJlbTtcbiAgICBmb250LXNpemU6IDAuODVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcblxuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMjhhNzQ1O1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgMC4xcmVtIHJnYmEoNDAsIDE2NywgNjksIDAuMjUpO1xuICAgIH1cbiAgfVxufVxuXG4uc3Bpcml0LW5leHQtbGV2ZWwtY29tcGFjdCB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBtaW4td2lkdGg6IDEyMHB4O1xuXG4gIC5uZXh0LWNvbXBhY3Qge1xuICAgIGZvbnQtc2l6ZTogMC42NXJlbTtcbiAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuXG4gICAgLm5leHQtbGV2ZWwtaW50ZW5kLWJvdHRsZXMge1xuICAgICAgY29sb3I6ICMwMDdiZmY7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgIH1cblxuICAgIC5uZXh0LWxldmVsLWludGVuZC1wcmljZSB7XG4gICAgICBjb2xvcjogIzI4YTc0NTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxuICB9XG59XG5cbi8qIFJlc3BvbnNpdmUgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuc3VtbWFyeS1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAxNnB4O1xuICB9XG4gIFxuICAuc3VtbWFyeS1oZWFkZXIge1xuICAgIHBhZGRpbmc6IDE2cHg7XG4gIH1cbiAgXG4gIC5zdGF0LW51bWJlciB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICB9XG4gIFxuICAuc3RhdC1pY29uIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gIH1cblxuICAvLyBMYXlvdXQgY29tcGFjdCByZXNwb25zaXZlXG4gIC5zcGlyaXQtcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMC41cmVtO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB9XG5cbiAgLnNwaXJpdC1iYXNpYy1pbmZvIHtcbiAgICBtaW4td2lkdGg6IGF1dG87XG4gICAgZmxleDogbm9uZTtcbiAgfVxuXG4gIC5zcGlyaXQtcHJpY2luZy1jb21wYWN0LFxuICAuc3Bpcml0LXF1YW50aXR5LWNvbXBhY3QsXG4gIC5zcGlyaXQtbmV4dC1sZXZlbC1jb21wYWN0IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWluLXdpZHRoOiBhdXRvO1xuICB9XG5cbiAgLnNwaXJpdC1uZXh0LWxldmVsLWNvbXBhY3Qge1xuICAgIC5uZXh0LWNvbXBhY3Qge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLnNwaXJpdC1iYXNpYy1pbmZvIHtcbiAgICAuc3Bpcml0LXRleHQge1xuICAgICAgLnNwaXJpdC1uYW1lLWNvbXBhY3Qge1xuICAgICAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICAgIH1cblxuICAgICAgLmRpc3RpbGxlcnktY29tcGFjdCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43cmVtO1xuICAgICAgfVxuXG4gICAgICAuc3Bpcml0LWJhZGdlcy1pbmxpbmUge1xuICAgICAgICAuYmFkZ2UtbWluaSB7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjU1cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnNwaXJpdC1wcmljaW5nLWNvbXBhY3Qge1xuICAgIC5tYWluLXByaWNlLWNvbXBhY3Qgc3Ryb25nIHtcbiAgICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgIH1cbiAgfVxuXG4gIC5xdWFudGl0eS1pbnB1dC1jb21wYWN0IHtcbiAgICB3aWR0aDogNTBweCAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbSAhaW1wb3J0YW50O1xuICB9XG59IiwiLmZvb3Rlci1jb250YWluZXIge1xuICBwYWRkaW5nOiAyNXB4O1xuICBtYXJnaW4tdG9wOiBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWViZDc7XG4gIHdpZHRoOiAxMDAlO1xuICBhIHtcbiAgICBtYXJnaW46IDFyZW07XG4gICAgY29sb3I6IHZhcigtLWJnLWNvbG9yKTtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZm9udC1mYW1pbHk6ICdSb2JvdG8gQ29uZGVuc2VkJywgc2Fucy1zZXJpZjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbiAgaW1nIHtcbiAgICBtYXJnaW46IDFyZW07XG4gICAgd2lkdGg6IDE1MnB4O1xuICB9XG4gIC5sZW1vbndheS1jcmVkZW50aWFsc3tcbiAgICBhe1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZm9udC1zaXplOiA5cHg7XG4gICAgfVxuICAgIGZvbnQtc2l6ZTogOXB4O1xuICB9XG4gIC53ZWFyZXdpbmUtdmVyc2lvbntcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBjb2xvcjogZ3JheTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogODAwcHgpIHtcbiAgLmZvb3Rlci1jb250YWluZXIge1xuICAgIGRpdntcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgfVxuICAgIGEge1xuICAgICAgbWFyZ2luOiAwLjVyZW07XG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAqIFNvbWUgc3DDqWNpZmljcyBzdHlsZXMgb2YgbG9naW4gY29tcG9uZW50XG4gKi9cbiNsb2dpbkNvbXBvbmVudCB7XG4gIG1heC13aWR0aDogNTAwcHg7XG5cbiAgcCB7XG4gICAgZm9udC1mYW1pbHk6ICRyb2JvdG8tcmVndWxhcjtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICAgIGNvbG9yOiAkbWFpbi10ZXh0LWNvbG9yO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIGEge1xuICAgICAgY29sb3I6ICRtYWluLXRleHQtY29sb3I7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICB9XG5cbiAgICAmLnBhc3N3b3JkIHtcbiAgICAgIGEge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBidXR0b25bdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiBhdXRvIGF1dG8gMTBweDtcbiAgfVxuXG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgICBtYXJnaW46IDNyZW0gYXV0byAzcmVtIGF1dG87XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn0iLCIvKipcbiAqIFNvbWUgc3DDqWNpZmljcyBzdHlsZXMgb2YgcGFzc3dvcmQgZm9yZ290XG4gKi9cbiNwYXNzd29yZEZvcmdvdENvbXBvbmVudHtcbiAgbWF4LXdpZHRoOiA1MDBweDtcbiAgcHtcbiAgICBmb250LWZhbWlseTogJHJvYm90by1yZWd1bGFyO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gICAgY29sb3I6ICRtYWluLXRleHQtY29sb3I7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGF7XG4gICAgICBjb2xvcjogJG1haW4tdGV4dC1jb2xvcjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgfVxuXG4gIGJ1dHRvblt0eXBlPVwic3VibWl0XCJde1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogYXV0byBhdXRvO1xuICB9XG5cbiAgaW1ne1xuICAgIG1heC13aWR0aDogMzAwcHg7XG4gICAgbWFyZ2luOiAzcmVtIGF1dG8gM3JlbSBhdXRvO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgaHJ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsLjIwKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDNyZW0gYXV0bztcbiAgfVxuICBhIGl7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gIH1cbn1cbiIsIi8qKlxuICogU29tZSBzcMOpY2lmaWNzIHN0eWxlcyBvZiBwYXNzd29yZCBmb3Jnb3QgZm9ybVxuICovXG4jcGFzc3dvcmRGb3Jnb3RGb3JtQ29tcG9uZW50e1xuICBtYXgtd2lkdGg6IDU1MHB4O1xuICBwe1xuICAgIGZvbnQtZmFtaWx5OiRyb2JvdG8tcmVndWxhcjtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICAgIGNvbG9yOiAkbWFpbi10ZXh0LWNvbG9yO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBhe1xuICAgICAgY29sb3I6ICRtYWluLXRleHQtY29sb3I7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gIH1cblxuICBidXR0b25bdHlwZT1cInN1Ym1pdFwiXXtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IGF1dG8gYXV0bztcbiAgfVxuXG4gIGltZ3tcbiAgICBtYXgtd2lkdGg6IDMwMHB4O1xuICAgIG1hcmdpbjogM3JlbSBhdXRvIDNyZW0gYXV0bztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIGhye1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLC4yMCk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAzcmVtIGF1dG87XG4gIH1cbiAgYSBpe1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICB9XG59XG4iLCIvKipcbiAqIFNvbWUgc3DDqWNpZmljcyBzdHlsZXMgb2YgbmF2YmFyXG4gKi9cblxuXG5cbm5hdi53YXctbmF2YmFyIHtcbiAgaGVpZ2h0OiAxMjBweDtcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBAaW5jbHVkZSBtZWRpYShcIjx0YWJsZXQtbWVkaXVtXCIpIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgI2xvZ28tZGVza3RvcCB7XG4gICAgaGVpZ2h0OiAxMTBweDtcbiAgICBAaW5jbHVkZSBtZWRpYShcIjx0YWJsZXQtbWVkaXVtXCIpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gICNsb2dvLW1vYmlsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBAaW5jbHVkZSBtZWRpYShcIjx0YWJsZXQtbWVkaXVtXCIpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICB3aWR0aDogMjMwcHg7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICB9XG4gIH1cbiAgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGkge1xuICAgICAgbWF4LXdpZHRoOiA5MHB4O1xuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8bW9iaWxlLWxhcmdlXCIpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDAuNGVtICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC40ZW0gIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGNvbG9yOiAkc2lsdmVyO1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgJGFuaW1UaW1lICRhbmltU3R5bGU7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPHRhYmxldC1tZWRpdW1cIikge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5iYWRnZSB7XG4gICAgICAgICAgdG9wOiAtMTBweDtcbiAgICAgICAgfVxuICAgICAgICBzdmcge1xuICAgICAgICAgIHBhdGgge1xuICAgICAgICAgICAgZmlsbDogJHNpbHZlcjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAkYW5pbVRpbWUgJGFuaW1TdHlsZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICB9XG4gICAgICAgIC5uYXYtdGV4dCB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDVweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtYWluLWNvbG9yO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggJGFuaW1UaW1lICRhbmltU3R5bGU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8dGFibGV0LW1lZGl1bVwiKSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgJGFuaW1UaW1lICRhbmltU3R5bGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGEuYWN0aXZlLFxuICAgICAgYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICBwYXRoe1xuICAgICAgICAgICAgZmlsbDogJG1haW4tY29sb3I7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm5hdi10ZXh0IHtcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgYTpob3ZlciB7XG4gICAgICAgIC5uYXYtdGV4dCB7XG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8dGFibGV0LW1lZGl1bVwiKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAqIFByb2ZpbCBpbmZvcyBwYXJ0XG4gKi9cbi5wcm9maWxlLWluZm9zIHtcbiAgZmlndXJlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDE2OXB4O1xuICAgIGhlaWdodDogMTY5cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBpbWcge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgd2lkdGg6IDE1NXB4O1xuICAgICAgaGVpZ2h0OiAxNTVweDtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICR3aGl0ZTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgei1pbmRleDogMjtcbiAgICB9XG4gIH1cbiAgcHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGNvbG9yOiAkYm91bGRlcjtcbiAgfVxuICBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBjb2xvcjogJG1haW4tY29sb3I7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICB9XG59XG4iLCIjbW9yZV9wcm9kdWN0cyB7XG4gIC5tb3JlLXByb2R1Y3RzLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDIxcHg7XG4gICAgY29sb3I6ICRtYWluLWNvbG9yO1xuICB9XG4gICYgYSB7XG4gICAgY29sb3I6ICRtYWluLXRleHQtY29sb3I7XG4gIH1cbn1cbiIsIi8qKlxuICogU2luZ2xlIGFydGljbGUgcGFydFxuICovXG4uc2luZ2xlLWFydGljbGUge1xuICBAaW5jbHVkZSBtZWRpYShcIjxtb2JpbGUtbGFyZ2VcIikge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZVxuICB9XG5cbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBtYXJnaW46IDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAuc2luZ2xlLWFydGljbGUtc3VidGl0bGUge1xuICAgIGNvbG9yOiAkdHVuZG9yYTtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gID5maWd1cmUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDI1MHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBpbWcge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFN0eWxlcyBwb3VyIGxlcyBkZXNjcmlwdGlvbnMgZGUgcHLDqXZpc3VhbGlzYXRpb25cbiAgI3NpbmdsZS1hcnRpY2xlLWRlc2NyaXB0aW9uLWhpc3RvcnksXG4gICNzaW5nbGUtYXJ0aWNsZS1kZXNjcmlwdGlvbixcbiAgI3NpbmdsZS1hcnRpY2xlLWRlc2NyaXB0aW9uLXdpbmVzLFxuICAjc2luZ2xlLWFydGljbGUtZGVzY3JpcHRpb24tc3Bpcml0cyB7XG4gICAgd2hpdGUtc3BhY2U6IHByZS1saW5lO1xuICB9XG59IiwiLnRlcm1zIHtcbiAgbWFyZ2luOiAycmVtO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtZmFtaWx5OiAkcm9ib3RvLWNvbmRlbnNlZDtcbiAgaDIge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICBjb2xvcjogYmxhY2s7XG4gIH1cbiAgaDMge1xuICAgIGNvbG9yOiBibGFjaztcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIHRoZWFkLCB0Ym9keSwgdHIsIHRkLCB0aCB7XG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gICAgcGFkZGluZzogMC41cmVtO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIH1cblxuICB0YWJsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxuXG4gIHRyID4gdGgge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmN2Y0ZjE7XG4gIH1cblxuICAudGVybXNfX2JvcmRlci1kaXYge1xuICAgIG1hcmdpbjogMXJlbTtcbiAgICBwYWRkaW5nOiAxcmVtIDFyZW0gMXJlbSAycmVtO1xuICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgdmFyKC0tYmctY29sb3IpO1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/