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

.toggle-visibility--hidden {
  background-color: #c3c3c3;
  border-color: #c3c3c3;
  color: #787878;
  opacity: 0.7;
}
.toggle-visibility--hidden:hover {
  background-color: #c3c3c3;
  border-color: #c3c3c3;
  color: #787878;
  opacity: 0.8;
}

.btn-action {
  min-width: 40px;
  width: 40px;
  height: 40px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0 !important;
  border-radius: 4px;
}
.btn-action i {
  font-size: 16px;
  line-height: 1;
}
.btn-action:hover {
  transform: scale(1.05);
}
.btn-action:active {
  transform: scale(0.95);
}

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

/**
 * Technical Sheet Upload
 */
.technical-sheet-upload {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 0.75rem 1.5rem;
  padding: 1.1rem 1.25rem;
  border: 1px solid #e5e7eb;
  border-radius: 0.625rem;
  background-color: #fff;
  box-shadow: 0 0.5rem 1.5rem rgba(15, 23, 42, 0.06);
}
.technical-sheet-upload__left {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  min-width: 200px;
}
.technical-sheet-upload__icon {
  width: 32px;
  height: 32px;
  object-fit: contain;
}
.technical-sheet-upload__texts {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}
.technical-sheet-upload__title {
  font-size: 0.95rem;
  font-weight: 400;
  color: #111827;
}
.technical-sheet-upload__subtitle {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 0.875rem;
  color: #6b7280;
}
.technical-sheet-upload__right {
  flex: 1 1 220px;
}
.technical-sheet-upload__widget {
  width: 100%;
}
.technical-sheet-upload__form-row {
  margin-bottom: 0;
  display: flex;
  width: 100%;
}
.technical-sheet-upload .vich-file {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem 1.25rem;
  width: 100%;
}
.technical-sheet-upload .technical-sheet-upload__input {
  flex: 1 1 240px;
  font-size: 0.9rem;
  padding: 0.35rem 0.65rem;
}
.technical-sheet-upload .vich-file > div {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin: 0;
}
.technical-sheet-upload .technical-sheet-upload__delete-checkbox {
  width: 16px;
  height: 16px;
  margin-top: 0;
}
.technical-sheet-upload .vich-file .form-control {
  max-width: 100%;
}
.technical-sheet-upload .vich-file .form-text {
  flex-basis: 100%;
  margin: 0;
}
@media (max-width: 767.98px) {
  .technical-sheet-upload {
    padding: 1rem;
    gap: 1rem;
  }
  .technical-sheet-upload__left {
    align-items: flex-start;
  }
  .technical-sheet-upload .vich-file {
    flex-direction: column;
    align-items: stretch;
  }
  .technical-sheet-upload .technical-sheet-upload__input {
    flex-basis: auto;
  }
}

.technical-sheet-display {
  padding: 0.5rem 0;
}

/**
 * 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 {
  display: none;
  position: fixed;
  z-index: 1000;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0, 0, 0, 0.4);
  border: 2px solid var(--bg-color);
}
.change-modal .modal-content {
  background-color: #fefefe;
  margin: 5% auto;
  padding: 20px;
  border: 1px solid #888;
  width: 80%;
  max-width: 1000px;
  border-radius: 8px;
  position: relative;
  z-index: 15;
}
.change-modal .modal-backdrop {
  opacity: 0.5;
  z-index: 0;
}
.change-modal .close-button-modal {
  position: absolute;
  right: 20px;
  top: 20px;
  color: #aaa;
  font-size: 28px;
  font-weight: bold;
  border: none;
  background: none;
  cursor: pointer;
}
.change-modal .close-button-modal:hover, .change-modal .close-button-modal:focus {
  color: #000;
}

/**
 * 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;
}
.delete-section.product-actions {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

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: 100px;
  max-width: 150px;
  white-space: normal;
  word-wrap: break-word;
  line-height: 1.2;
}
#tableProducts th:nth-child(10),
#tableProducts td:nth-child(10) {
  min-width: 120px;
  position: sticky;
  right: 0;
  background-color: white;
  z-index: 10;
}

#tableSpirits {
  min-width: 100%;
  width: max-content;
}
#tableSpirits th {
  white-space: normal;
  word-wrap: break-word;
  line-height: 1.2;
  padding: 8px 12px;
}
#tableSpirits td {
  white-space: nowrap;
  padding: 8px 12px;
}
#tableSpirits th:nth-child(1),
#tableSpirits td:nth-child(1) {
  max-width: 120px;
  white-space: normal;
  word-wrap: break-word;
  line-height: 1.2;
}
#tableSpirits th:nth-child(2),
#tableSpirits td:nth-child(2) {
  max-width: 120px;
  white-space: normal;
  word-wrap: break-word;
  line-height: 1.2;
}
#tableSpirits th:nth-child(3),
#tableSpirits td:nth-child(3) {
  max-width: 80px;
}
#tableSpirits th:nth-child(4),
#tableSpirits td:nth-child(4) {
  max-width: 80px;
}
#tableSpirits th:nth-child(5),
#tableSpirits td:nth-child(5) {
  min-width: 80px;
}
#tableSpirits th:nth-child(6),
#tableSpirits td:nth-child(6) {
  max-width: 80px;
}
#tableSpirits th:nth-child(7),
#tableSpirits td:nth-child(7) {
  max-width: 80px;
}
#tableSpirits th:nth-child(8),
#tableSpirits td:nth-child(8) {
  min-width: 80px;
}
#tableSpirits th:nth-child(9),
#tableSpirits td:nth-child(9) {
  min-width: 100px;
  max-width: 150px;
  white-space: normal;
  word-wrap: break-word;
  line-height: 1.2;
}
#tableSpirits th:nth-child(10),
#tableSpirits 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 .selection__price--focus {
  color: #000000;
}
.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;
}

.description__state .badge {
  position: relative;
  top: auto;
  right: auto;
  display: inline-block;
  padding: 0.25rem 0.5rem;
  width: auto;
  height: auto;
  font-size: 0.75rem;
  margin-top: 0.5rem;
  border: none;
  background: #ffc107;
  color: #000;
}
.description__state .badge:before {
  display: none;
}
.description__state .badge i {
  margin-right: 0.25rem;
}

.product-actions .btn-warning,
.spirit-actions .btn-warning {
  background-color: #ffc107;
  border-color: #ffc107;
  color: #000;
}
.product-actions .btn-warning:hover,
.spirit-actions .btn-warning:hover {
  background-color: #ffca2c;
  border-color: #ffc720;
  color: #000;
}

.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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLjA2OWVmMTViLmNzcyIsIm1hcHBpbmdzIjoiOzs7QUFBQSxnQkFBZ0I7QUFBaEI7O0VBQUE7QUNBQTs7Ozs7RUFBQTtBQ0FBO0VBUUk7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUdGO0VBQ0E7RUFDQTtFQUNBO0VBTUE7RUFDQTtFQUNBO0VBUUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUlBO0FGYUY7O0FHaERBOzs7RUFHRTtBSG1ERjs7QUdwQ0k7RUFOSjtJQU9NO0VId0NKO0FBQ0Y7O0FHM0JBO0VBQ0U7RUFDQTtFQ21QSSxtQ0FMSTtFRDVPUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSDhCRjs7QUdwQkE7RUFDRTtFQUNBLGNFK2tCNEI7RUY5a0I1QjtFQUNBO0VBQ0EsYUU4a0I0QjtBTHZqQjlCOztBR3BCQTtFQUNFLFdFd2I0QjtBTGphOUI7O0FHYkE7RUFDRTtFQUNBLHFCRW9oQjRCO0VGamhCNUIsZ0JFb2hCNEI7RUZuaEI1QixnQkVvaEI0QjtBTHRnQjlCOztBR1ZBO0VDd01RO0FKMUxSO0FJd0JJO0VEdENKO0lDK01RO0VKN0xOO0FBQ0Y7O0FHZEE7RUNtTVE7QUpqTFI7QUllSTtFRGpDSjtJQzBNUTtFSnBMTjtBQUNGOztBR2xCQTtFQzhMUTtBSnhLUjtBSU1JO0VENUJKO0lDcU1RO0VKM0tOO0FBQ0Y7O0FHdEJBO0VDeUxRO0FKL0pSO0FJSEk7RUR2Qko7SUNnTVE7RUpsS047QUFDRjs7QUcxQkE7RUNnTE0sa0JBTEk7QUo3SVY7O0FHekJBO0VDMktNLGVBTEk7QUp6SVY7O0FHbEJBO0VBQ0U7RUFDQSxtQkVrVTBCO0FMN1M1Qjs7QUdWQTs7RUFFRTtFQUNBO0VBQ0E7QUhhRjs7QUdQQTtFQUNFO0VBQ0E7RUFDQTtBSFVGOztBR0pBOztFQUVFO0FIT0Y7O0FHSkE7OztFQUdFO0VBQ0E7QUhPRjs7QUdKQTs7OztFQUlFO0FIT0Y7O0FHSkE7RUFDRSxnQkV1WjRCO0FMaFo5Qjs7QUdGQTtFQUNFO0VBQ0E7QUhLRjs7QUdDQTtFQUNFO0FIRUY7O0FHTUE7O0VBRUUsbUJFZ1k0QjtBTG5ZOUI7O0FHV0E7RUM0RU0sa0JBTEk7QUo5RVY7O0FHY0E7RUFDRSxjRTRiNEI7RUYzYjVCLHlCRW1jNEI7QUw5YzlCOztBR29CQTs7RUFFRTtFQ3dESSxpQkFMSTtFRGpEUjtFQUNBO0FIakJGOztBR29CQTtFQUFNO0FIaEJOOztBR2lCQTtFQUFNO0FIYk47O0FHa0JBO0VBQ0UsY0VwTlE7RUZxTlIsMEJFa013QztBTGpOMUM7QUdpQkU7RUFDRSxjRWlNc0M7QUxoTjFDOztBRzBCRTtFQUVFO0VBQ0E7QUh4Qko7O0FHK0JBOzs7O0VBSUUscUNFNlM0QjtFRC9SeEIsY0FMSTtFRFBSO0VBQ0E7QUg1QkY7O0FHbUNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUNBSSxrQkFMSTtBSjFCVjtBR29DRTtFQ0xJLGtCQUxJO0VEWU47RUFDQTtBSGxDSjs7QUdzQ0E7RUNaTSxrQkFMSTtFRG1CUixjRTFRUTtFRjJRUjtBSG5DRjtBR3NDRTtFQUNFO0FIcENKOztBR3dDQTtFQUNFO0VDeEJJLGtCQUxJO0VEK0JSLFdFdlRTO0VGd1RULHlCRS9TUztFQ0VQO0FOeVFKO0FHdUNFO0VBQ0U7RUMvQkUsY0FMSTtFRHNDTixnQkUwUTBCO0FML1M5Qjs7QUc4Q0E7RUFDRTtBSDNDRjs7QUdpREE7O0VBRUU7QUg5Q0Y7O0FHc0RBO0VBQ0U7RUFDQTtBSG5ERjs7QUdzREE7RUFDRSxtQkV3VTRCO0VGdlU1QixzQkV1VTRCO0VGdFU1QixjRTFWUztFRjJWVDtBSG5ERjs7QUcwREE7RUFFRTtFQUNBO0FIeERGOztBRzJEQTs7Ozs7O0VBTUU7RUFDQTtFQUNBO0FIeERGOztBR2dFQTtFQUNFO0FIN0RGOztBR21FQTtFQUVFO0FIakVGOztBR3lFQTtFQUNFO0FIdEVGOztBRzJFQTs7Ozs7RUFLRTtFQUNBO0VDOUhJLGtCQUxJO0VEcUlSO0FIeEVGOztBRzRFQTs7RUFFRTtBSHpFRjs7QUc4RUE7RUFDRTtBSDNFRjs7QUc4RUE7RUFHRTtBSDdFRjtBR2dGRTtFQUNFO0FIOUVKOztBR3FGQTtFQUNFO0FIbEZGOztBRzBGQTs7OztFQUlFO0FIdkZGO0FHMEZJOzs7O0VBQ0U7QUhyRk47O0FHNEZBO0VBQ0U7RUFDQTtBSHpGRjs7QUc4RkE7RUFDRTtBSDNGRjs7QUdxR0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBSGxHRjs7QUcwR0E7RUFDRTtFQUNBO0VBQ0E7RUFDQSxxQkU2SjRCO0VEaFh0QjtFRHNOTjtBSHhHRjtBSWhSSTtFRGlYSjtJQ3hNUTtFSjJHTjtBQUNGO0FHcUdFO0VBQ0U7QUhuR0o7O0FHMEdBOzs7Ozs7O0VBT0U7QUh2R0Y7O0FHMEdBO0VBQ0U7QUh2R0Y7O0FHZ0hBO0VBQ0U7RUFDQTtBSDdHRjs7QUdxSEE7Ozs7Ozs7Q0FBQTtBQVdBO0VBQ0U7QUhySEY7O0FHMEhBO0VBQ0U7QUh2SEY7O0FHNkhBO0VBQ0U7QUgxSEY7O0FHZ0lBO0VBQ0U7RUFDQTtBSDdIRjs7QUdrSUE7RUFDRTtBSC9IRjs7QUdvSUE7RUFDRTtBSGpJRjs7QUd3SUE7RUFDRTtFQUNBO0FIcklGOztBRzZJQTtFQUNFO0FIMUlGOztBR2tKQTtFQUNFO0FIL0lGOztBT3BjQTtFSHlRTSxrQkFMSTtFR2xRUixnQkZ1bUI0QjtBTGhLOUI7O0FPbGNFO0VIc1FNO0VHcFFKLGdCRjBsQmtCO0VFemxCbEIsZ0JGMmtCMEI7QUx0STlCO0FJcFdJO0VHcEdGO0lINlFNO0VKK0xOO0FBQ0Y7O0FPN2NFO0VIc1FNO0VHcFFKLGdCRjBsQmtCO0VFemxCbEIsZ0JGMmtCMEI7QUwzSDlCO0FJL1dJO0VHcEdGO0lINlFNO0VKME1OO0FBQ0Y7O0FPeGRFO0VIc1FNO0VHcFFKLGdCRjBsQmtCO0VFemxCbEIsZ0JGMmtCMEI7QUxoSDlCO0FJMVhJO0VHcEdGO0lINlFNO0VKcU5OO0FBQ0Y7O0FPbmVFO0VIc1FNO0VHcFFKLGdCRjBsQmtCO0VFemxCbEIsZ0JGMmtCMEI7QUxyRzlCO0FJcllJO0VHcEdGO0lINlFNO0VKZ09OO0FBQ0Y7O0FPOWVFO0VIc1FNO0VHcFFKLGdCRjBsQmtCO0VFemxCbEIsZ0JGMmtCMEI7QUwxRjlCO0FJaFpJO0VHcEdGO0lINlFNO0VKMk9OO0FBQ0Y7O0FPemZFO0VIc1FNO0VHcFFKLGdCRjBsQmtCO0VFemxCbEIsZ0JGMmtCMEI7QUwvRTlCO0FJM1pJO0VHcEdGO0lINlFNO0VKc1BOO0FBQ0Y7O0FPOWVBO0VDckRFO0VBQ0E7QVJ1aUJGOztBTzllQTtFQzFERTtFQUNBO0FSNGlCRjs7QU9oZkE7RUFDRTtBUG1mRjtBT2pmRTtFQUNFLG9CRjhsQjBCO0FMM0c5Qjs7QU96ZUE7RUhzTk0sa0JBTEk7RUcvTVI7QVA0ZUY7O0FPeGVBO0VBQ0UsbUJGZ1NPO0VEakZILGtCQUxJO0FKa1NWO0FPemVFO0VBQ0U7QVAyZUo7O0FPdmVBO0VBQ0U7RUFDQSxtQkZzUk87RURqRkgsa0JBTEk7RUc5TFIsY0ZwRlM7QUw4akJYO0FPeGVFO0VBQ0U7QVAwZUo7O0FTeGtCQTtFQ0lFO0VBR0E7QVZza0JGOztBU3ZrQkE7RUFDRSxnQkpzOUNrQztFSXI5Q2xDLHNCSlBTO0VJUVQ7RUhHRTtFSVJGO0VBR0E7QVYra0JGOztBU2prQkE7RUFFRTtBVG1rQkY7O0FTaGtCQTtFQUNFO0VBQ0E7QVRta0JGOztBU2hrQkE7RUwrUE0sa0JBTEk7RUt4UFIsY0oxQlM7QUw2bEJYOztBV3JtQkU7Ozs7Ozs7RUNIQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0Faa25CRjs7QWExakJJO0VGNUNFO0lBQ0UsZ0JOaWRlO0VMeUpyQjtBQUNGO0FhaGtCSTtFRjVDRTtJQUNFLGdCTmlkZTtFTDhKckI7QUFDRjtBYXJrQkk7RUY1Q0U7SUFDRSxnQk5pZGU7RUxtS3JCO0FBQ0Y7QWExa0JJO0VGNUNFO0lBQ0UsaUJOaWRlO0VMd0tyQjtBQUNGO0FhL2tCSTtFRjVDRTtJQUNFLGlCTmlkZTtFTDZLckI7QUFDRjtBYzlvQkU7RUNBQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtBZmdwQkY7QWNwcEJJO0VDYUY7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FmMG9CRjs7QWUzbEJNO0VBQ0U7QWY4bEJSOztBZTNsQk07RUFwQ0o7RUFDQTtBZm1vQkY7O0Flcm5CRTtFQUNFO0VBQ0E7QWZ3bkJKOztBZTFuQkU7RUFDRTtFQUNBO0FmNm5CSjs7QWUvbkJFO0VBQ0U7RUFDQTtBZmtvQko7O0FlcG9CRTtFQUNFO0VBQ0E7QWZ1b0JKOztBZXpvQkU7RUFDRTtFQUNBO0FmNG9CSjs7QWU5b0JFO0VBQ0U7RUFDQTtBZmlwQko7O0FlbG5CTTtFQWhESjtFQUNBO0Fmc3FCRjs7QWVqbkJVO0VBaEVOO0VBQ0E7QWZxckJKOztBZXRuQlU7RUFoRU47RUFDQTtBZjByQko7O0FlM25CVTtFQWhFTjtFQUNBO0FmK3JCSjs7QWVob0JVO0VBaEVOO0VBQ0E7QWZvc0JKOztBZXJvQlU7RUFoRU47RUFDQTtBZnlzQko7O0FlMW9CVTtFQWhFTjtFQUNBO0FmOHNCSjs7QWUvb0JVO0VBaEVOO0VBQ0E7QWZtdEJKOztBZXBwQlU7RUFoRU47RUFDQTtBZnd0Qko7O0FlenBCVTtFQWhFTjtFQUNBO0FmNnRCSjs7QWU5cEJVO0VBaEVOO0VBQ0E7QWZrdUJKOztBZW5xQlU7RUFoRU47RUFDQTtBZnV1Qko7O0FleHFCVTtFQWhFTjtFQUNBO0FmNHVCSjs7QWVycUJZO0VBeERWO0FmaXVCRjs7QWV6cUJZO0VBeERWO0FmcXVCRjs7QWU3cUJZO0VBeERWO0FmeXVCRjs7QWVqckJZO0VBeERWO0FmNnVCRjs7QWVyckJZO0VBeERWO0FmaXZCRjs7QWV6ckJZO0VBeERWO0FmcXZCRjs7QWU3ckJZO0VBeERWO0FmeXZCRjs7QWVqc0JZO0VBeERWO0FmNnZCRjs7QWVyc0JZO0VBeERWO0FmaXdCRjs7QWV6c0JZO0VBeERWO0FmcXdCRjs7QWU3c0JZO0VBeERWO0FmeXdCRjs7QWV0c0JROztFQUVFO0FmeXNCVjs7QWV0c0JROztFQUVFO0FmeXNCVjs7QWVodEJROztFQUVFO0FmbXRCVjs7QWVodEJROztFQUVFO0FmbXRCVjs7QWUxdEJROztFQUVFO0FmNnRCVjs7QWUxdEJROztFQUVFO0FmNnRCVjs7QWVwdUJROztFQUVFO0FmdXVCVjs7QWVwdUJROztFQUVFO0FmdXVCVjs7QWU5dUJROztFQUVFO0FmaXZCVjs7QWU5dUJROztFQUVFO0FmaXZCVjs7QWV4dkJROztFQUVFO0FmMnZCVjs7QWV4dkJROztFQUVFO0FmMnZCVjs7QWFyekJJO0VFVUU7SUFDRTtFZit5Qk47O0VlNXlCSTtJQXBDSjtJQUNBO0VmbzFCQTs7RWV0MEJBO0lBQ0U7SUFDQTtFZnkwQkY7O0VlMzBCQTtJQUNFO0lBQ0E7RWY4MEJGOztFZWgxQkE7SUFDRTtJQUNBO0VmbTFCRjs7RWVyMUJBO0lBQ0U7SUFDQTtFZncxQkY7O0VlMTFCQTtJQUNFO0lBQ0E7RWY2MUJGOztFZS8xQkE7SUFDRTtJQUNBO0VmazJCRjs7RWVuMEJJO0lBaERKO0lBQ0E7RWZ1M0JBOztFZWwwQlE7SUFoRU47SUFDQTtFZnM0QkY7O0VldjBCUTtJQWhFTjtJQUNBO0VmMjRCRjs7RWU1MEJRO0lBaEVOO0lBQ0E7RWZnNUJGOztFZWoxQlE7SUFoRU47SUFDQTtFZnE1QkY7O0VldDFCUTtJQWhFTjtJQUNBO0VmMDVCRjs7RWUzMUJRO0lBaEVOO0lBQ0E7RWYrNUJGOztFZWgyQlE7SUFoRU47SUFDQTtFZm82QkY7O0VlcjJCUTtJQWhFTjtJQUNBO0VmeTZCRjs7RWUxMkJRO0lBaEVOO0lBQ0E7RWY4NkJGOztFZS8yQlE7SUFoRU47SUFDQTtFZm03QkY7O0VlcDNCUTtJQWhFTjtJQUNBO0VmdzdCRjs7RWV6M0JRO0lBaEVOO0lBQ0E7RWY2N0JGOztFZXQzQlU7SUF4RFY7RWZrN0JBOztFZTEzQlU7SUF4RFY7RWZzN0JBOztFZTkzQlU7SUF4RFY7RWYwN0JBOztFZWw0QlU7SUF4RFY7RWY4N0JBOztFZXQ0QlU7SUF4RFY7RWZrOEJBOztFZTE0QlU7SUF4RFY7RWZzOEJBOztFZTk0QlU7SUF4RFY7RWYwOEJBOztFZWw1QlU7SUF4RFY7RWY4OEJBOztFZXQ1QlU7SUF4RFY7RWZrOUJBOztFZTE1QlU7SUF4RFY7RWZzOUJBOztFZTk1QlU7SUF4RFY7RWYwOUJBOztFZWw2QlU7SUF4RFY7RWY4OUJBOztFZTM1Qk07O0lBRUU7RWY4NUJSOztFZTM1Qk07O0lBRUU7RWY4NUJSOztFZXI2Qk07O0lBRUU7RWZ3NkJSOztFZXI2Qk07O0lBRUU7RWZ3NkJSOztFZS82Qk07O0lBRUU7RWZrN0JSOztFZS82Qk07O0lBRUU7RWZrN0JSOztFZXo3Qk07O0lBRUU7RWY0N0JSOztFZXo3Qk07O0lBRUU7RWY0N0JSOztFZW44Qk07O0lBRUU7RWZzOEJSOztFZW44Qk07O0lBRUU7RWZzOEJSOztFZTc4Qk07O0lBRUU7RWZnOUJSOztFZTc4Qk07O0lBRUU7RWZnOUJSO0FBQ0Y7QWEzZ0NJO0VFVUU7SUFDRTtFZm9nQ047O0VlamdDSTtJQXBDSjtJQUNBO0VmeWlDQTs7RWUzaENBO0lBQ0U7SUFDQTtFZjhoQ0Y7O0VlaGlDQTtJQUNFO0lBQ0E7RWZtaUNGOztFZXJpQ0E7SUFDRTtJQUNBO0Vmd2lDRjs7RWUxaUNBO0lBQ0U7SUFDQTtFZjZpQ0Y7O0VlL2lDQTtJQUNFO0lBQ0E7RWZrakNGOztFZXBqQ0E7SUFDRTtJQUNBO0VmdWpDRjs7RWV4aENJO0lBaERKO0lBQ0E7RWY0a0NBOztFZXZoQ1E7SUFoRU47SUFDQTtFZjJsQ0Y7O0VlNWhDUTtJQWhFTjtJQUNBO0VmZ21DRjs7RWVqaUNRO0lBaEVOO0lBQ0E7RWZxbUNGOztFZXRpQ1E7SUFoRU47SUFDQTtFZjBtQ0Y7O0VlM2lDUTtJQWhFTjtJQUNBO0VmK21DRjs7RWVoakNRO0lBaEVOO0lBQ0E7RWZvbkNGOztFZXJqQ1E7SUFoRU47SUFDQTtFZnluQ0Y7O0VlMWpDUTtJQWhFTjtJQUNBO0VmOG5DRjs7RWUvakNRO0lBaEVOO0lBQ0E7RWZtb0NGOztFZXBrQ1E7SUFoRU47SUFDQTtFZndvQ0Y7O0VlemtDUTtJQWhFTjtJQUNBO0VmNm9DRjs7RWU5a0NRO0lBaEVOO0lBQ0E7RWZrcENGOztFZTNrQ1U7SUF4RFY7RWZ1b0NBOztFZS9rQ1U7SUF4RFY7RWYyb0NBOztFZW5sQ1U7SUF4RFY7RWYrb0NBOztFZXZsQ1U7SUF4RFY7RWZtcENBOztFZTNsQ1U7SUF4RFY7RWZ1cENBOztFZS9sQ1U7SUF4RFY7RWYycENBOztFZW5tQ1U7SUF4RFY7RWYrcENBOztFZXZtQ1U7SUF4RFY7RWZtcUNBOztFZTNtQ1U7SUF4RFY7RWZ1cUNBOztFZS9tQ1U7SUF4RFY7RWYycUNBOztFZW5uQ1U7SUF4RFY7RWYrcUNBOztFZXZuQ1U7SUF4RFY7RWZtckNBOztFZWhuQ007O0lBRUU7RWZtbkNSOztFZWhuQ007O0lBRUU7RWZtbkNSOztFZTFuQ007O0lBRUU7RWY2bkNSOztFZTFuQ007O0lBRUU7RWY2bkNSOztFZXBvQ007O0lBRUU7RWZ1b0NSOztFZXBvQ007O0lBRUU7RWZ1b0NSOztFZTlvQ007O0lBRUU7RWZpcENSOztFZTlvQ007O0lBRUU7RWZpcENSOztFZXhwQ007O0lBRUU7RWYycENSOztFZXhwQ007O0lBRUU7RWYycENSOztFZWxxQ007O0lBRUU7RWZxcUNSOztFZWxxQ007O0lBRUU7RWZxcUNSO0FBQ0Y7QWFodUNJO0VFVUU7SUFDRTtFZnl0Q047O0VldHRDSTtJQXBDSjtJQUNBO0VmOHZDQTs7RWVodkNBO0lBQ0U7SUFDQTtFZm12Q0Y7O0VlcnZDQTtJQUNFO0lBQ0E7RWZ3dkNGOztFZTF2Q0E7SUFDRTtJQUNBO0VmNnZDRjs7RWUvdkNBO0lBQ0U7SUFDQTtFZmt3Q0Y7O0VlcHdDQTtJQUNFO0lBQ0E7RWZ1d0NGOztFZXp3Q0E7SUFDRTtJQUNBO0VmNHdDRjs7RWU3dUNJO0lBaERKO0lBQ0E7RWZpeUNBOztFZTV1Q1E7SUFoRU47SUFDQTtFZmd6Q0Y7O0VlanZDUTtJQWhFTjtJQUNBO0VmcXpDRjs7RWV0dkNRO0lBaEVOO0lBQ0E7RWYwekNGOztFZTN2Q1E7SUFoRU47SUFDQTtFZit6Q0Y7O0VlaHdDUTtJQWhFTjtJQUNBO0VmbzBDRjs7RWVyd0NRO0lBaEVOO0lBQ0E7RWZ5MENGOztFZTF3Q1E7SUFoRU47SUFDQTtFZjgwQ0Y7O0VlL3dDUTtJQWhFTjtJQUNBO0VmbTFDRjs7RWVweENRO0lBaEVOO0lBQ0E7RWZ3MUNGOztFZXp4Q1E7SUFoRU47SUFDQTtFZjYxQ0Y7O0VlOXhDUTtJQWhFTjtJQUNBO0VmazJDRjs7RWVueUNRO0lBaEVOO0lBQ0E7RWZ1MkNGOztFZWh5Q1U7SUF4RFY7RWY0MUNBOztFZXB5Q1U7SUF4RFY7RWZnMkNBOztFZXh5Q1U7SUF4RFY7RWZvMkNBOztFZTV5Q1U7SUF4RFY7RWZ3MkNBOztFZWh6Q1U7SUF4RFY7RWY0MkNBOztFZXB6Q1U7SUF4RFY7RWZnM0NBOztFZXh6Q1U7SUF4RFY7RWZvM0NBOztFZTV6Q1U7SUF4RFY7RWZ3M0NBOztFZWgwQ1U7SUF4RFY7RWY0M0NBOztFZXAwQ1U7SUF4RFY7RWZnNENBOztFZXgwQ1U7SUF4RFY7RWZvNENBOztFZTUwQ1U7SUF4RFY7RWZ3NENBOztFZXIwQ007O0lBRUU7RWZ3MENSOztFZXIwQ007O0lBRUU7RWZ3MENSOztFZS8wQ007O0lBRUU7RWZrMUNSOztFZS8wQ007O0lBRUU7RWZrMUNSOztFZXoxQ007O0lBRUU7RWY0MUNSOztFZXoxQ007O0lBRUU7RWY0MUNSOztFZW4yQ007O0lBRUU7RWZzMkNSOztFZW4yQ007O0lBRUU7RWZzMkNSOztFZTcyQ007O0lBRUU7RWZnM0NSOztFZTcyQ007O0lBRUU7RWZnM0NSOztFZXYzQ007O0lBRUU7RWYwM0NSOztFZXYzQ007O0lBRUU7RWYwM0NSO0FBQ0Y7QWFyN0NJO0VFVUU7SUFDRTtFZjg2Q047O0VlMzZDSTtJQXBDSjtJQUNBO0VmbTlDQTs7RWVyOENBO0lBQ0U7SUFDQTtFZnc4Q0Y7O0VlMThDQTtJQUNFO0lBQ0E7RWY2OENGOztFZS84Q0E7SUFDRTtJQUNBO0VmazlDRjs7RWVwOUNBO0lBQ0U7SUFDQTtFZnU5Q0Y7O0VlejlDQTtJQUNFO0lBQ0E7RWY0OUNGOztFZTk5Q0E7SUFDRTtJQUNBO0VmaStDRjs7RWVsOENJO0lBaERKO0lBQ0E7RWZzL0NBOztFZWo4Q1E7SUFoRU47SUFDQTtFZnFnREY7O0VldDhDUTtJQWhFTjtJQUNBO0VmMGdERjs7RWUzOENRO0lBaEVOO0lBQ0E7RWYrZ0RGOztFZWg5Q1E7SUFoRU47SUFDQTtFZm9oREY7O0VlcjlDUTtJQWhFTjtJQUNBO0VmeWhERjs7RWUxOUNRO0lBaEVOO0lBQ0E7RWY4aERGOztFZS85Q1E7SUFoRU47SUFDQTtFZm1pREY7O0VlcCtDUTtJQWhFTjtJQUNBO0Vmd2lERjs7RWV6K0NRO0lBaEVOO0lBQ0E7RWY2aURGOztFZTkrQ1E7SUFoRU47SUFDQTtFZmtqREY7O0Vlbi9DUTtJQWhFTjtJQUNBO0VmdWpERjs7RWV4L0NRO0lBaEVOO0lBQ0E7RWY0akRGOztFZXIvQ1U7SUF4RFY7RWZpakRBOztFZXovQ1U7SUF4RFY7RWZxakRBOztFZTcvQ1U7SUF4RFY7RWZ5akRBOztFZWpnRFU7SUF4RFY7RWY2akRBOztFZXJnRFU7SUF4RFY7RWZpa0RBOztFZXpnRFU7SUF4RFY7RWZxa0RBOztFZTdnRFU7SUF4RFY7RWZ5a0RBOztFZWpoRFU7SUF4RFY7RWY2a0RBOztFZXJoRFU7SUF4RFY7RWZpbERBOztFZXpoRFU7SUF4RFY7RWZxbERBOztFZTdoRFU7SUF4RFY7RWZ5bERBOztFZWppRFU7SUF4RFY7RWY2bERBOztFZTFoRE07O0lBRUU7RWY2aERSOztFZTFoRE07O0lBRUU7RWY2aERSOztFZXBpRE07O0lBRUU7RWZ1aURSOztFZXBpRE07O0lBRUU7RWZ1aURSOztFZTlpRE07O0lBRUU7RWZpakRSOztFZTlpRE07O0lBRUU7RWZpakRSOztFZXhqRE07O0lBRUU7RWYyakRSOztFZXhqRE07O0lBRUU7RWYyakRSOztFZWxrRE07O0lBRUU7RWZxa0RSOztFZWxrRE07O0lBRUU7RWZxa0RSOztFZTVrRE07O0lBRUU7RWYra0RSOztFZTVrRE07O0lBRUU7RWYra0RSO0FBQ0Y7QWExb0RJO0VFVUU7SUFDRTtFZm1vRE47O0VlaG9ESTtJQXBDSjtJQUNBO0Vmd3FEQTs7RWUxcERBO0lBQ0U7SUFDQTtFZjZwREY7O0VlL3BEQTtJQUNFO0lBQ0E7RWZrcURGOztFZXBxREE7SUFDRTtJQUNBO0VmdXFERjs7RWV6cURBO0lBQ0U7SUFDQTtFZjRxREY7O0VlOXFEQTtJQUNFO0lBQ0E7RWZpckRGOztFZW5yREE7SUFDRTtJQUNBO0Vmc3JERjs7RWV2cERJO0lBaERKO0lBQ0E7RWYyc0RBOztFZXRwRFE7SUFoRU47SUFDQTtFZjB0REY7O0VlM3BEUTtJQWhFTjtJQUNBO0VmK3RERjs7RWVocURRO0lBaEVOO0lBQ0E7RWZvdURGOztFZXJxRFE7SUFoRU47SUFDQTtFZnl1REY7O0VlMXFEUTtJQWhFTjtJQUNBO0VmOHVERjs7RWUvcURRO0lBaEVOO0lBQ0E7RWZtdkRGOztFZXByRFE7SUFoRU47SUFDQTtFZnd2REY7O0VlenJEUTtJQWhFTjtJQUNBO0VmNnZERjs7RWU5ckRRO0lBaEVOO0lBQ0E7RWZrd0RGOztFZW5zRFE7SUFoRU47SUFDQTtFZnV3REY7O0VleHNEUTtJQWhFTjtJQUNBO0VmNHdERjs7RWU3c0RRO0lBaEVOO0lBQ0E7RWZpeERGOztFZTFzRFU7SUF4RFY7RWZzd0RBOztFZTlzRFU7SUF4RFY7RWYwd0RBOztFZWx0RFU7SUF4RFY7RWY4d0RBOztFZXR0RFU7SUF4RFY7RWZreERBOztFZTF0RFU7SUF4RFY7RWZzeERBOztFZTl0RFU7SUF4RFY7RWYweERBOztFZWx1RFU7SUF4RFY7RWY4eERBOztFZXR1RFU7SUF4RFY7RWZreURBOztFZTF1RFU7SUF4RFY7RWZzeURBOztFZTl1RFU7SUF4RFY7RWYweURBOztFZWx2RFU7SUF4RFY7RWY4eURBOztFZXR2RFU7SUF4RFY7RWZrekRBOztFZS91RE07O0lBRUU7RWZrdkRSOztFZS91RE07O0lBRUU7RWZrdkRSOztFZXp2RE07O0lBRUU7RWY0dkRSOztFZXp2RE07O0lBRUU7RWY0dkRSOztFZW53RE07O0lBRUU7RWZzd0RSOztFZW53RE07O0lBRUU7RWZzd0RSOztFZTd3RE07O0lBRUU7RWZneERSOztFZTd3RE07O0lBRUU7RWZneERSOztFZXZ4RE07O0lBRUU7RWYweERSOztFZXZ4RE07O0lBRUU7RWYweERSOztFZWp5RE07O0lBRUU7RWZveURSOztFZWp5RE07O0lBRUU7RWZveURSO0FBQ0Y7QWdCMTVEQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBLG1CWHVXTztFV3RXUCxjWENTO0VXQVQsbUJYa3FCNEI7RVdqcUI1QixxQlhQUztBTGs2RFg7QWdCcDVERTtFQUNFO0VBQ0E7RUFDQSx3Qlh5ZTBCO0VXeGUxQjtBaEJzNURKO0FnQm41REU7RUFDRTtBaEJxNURKO0FnQmw1REU7RUFDRTtBaEJvNURKO0FnQmg1REU7RUFDRTtBaEJrNURKOztBZ0J6NERBO0VBQ0U7QWhCNDRERjs7QWdCbDRERTtFQUNFO0FoQnE0REo7O0FnQnQzREU7RUFDRTtBaEJ5M0RKO0FnQnQzREk7RUFDRTtBaEJ3M0ROOztBZ0JqM0RFO0VBQ0U7QWhCbzNESjtBZ0JqM0RFO0VBQ0U7QWhCbTNESjs7QWdCMTJERTtFQUNFO0VBQ0E7QWhCNjJESjs7QWdCcjJEQTtFQUNFO0VBQ0E7QWhCdzJERjs7QWdCaDJERTtFQUNFO0VBQ0E7QWhCbTJESjs7QWlCLzlERTtFQU1FO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUEsV0FiUTtFQWNSO0FqQjQ5REo7O0FpQjMrREU7RUFNRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBLFdBYlE7RUFjUjtBakJ3K0RKOztBaUJ2L0RFO0VBTUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQSxXQWJRO0VBY1I7QWpCby9ESjs7QWlCbmdFRTtFQU1FO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUEsV0FiUTtFQWNSO0FqQmdnRUo7O0FpQi9nRUU7RUFNRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBLFdBYlE7RUFjUjtBakI0Z0VKOztBaUIzaEVFO0VBTUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQSxXQWJRO0VBY1I7QWpCd2hFSjs7QWlCdmlFRTtFQU1FO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUEsV0FiUTtFQWNSO0FqQm9pRUo7O0FpQm5qRUU7RUFNRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBLFdBYlE7RUFjUjtBakJnakVKOztBZ0I1NkRJO0VBQ0U7RUFDQTtBaEIrNkROOztBYTEvREk7RUd5RUE7SUFDRTtJQUNBO0VoQnE3REo7QUFDRjtBYWpnRUk7RUd5RUE7SUFDRTtJQUNBO0VoQjI3REo7QUFDRjtBYXZnRUk7RUd5RUE7SUFDRTtJQUNBO0VoQmk4REo7QUFDRjtBYTdnRUk7RUd5RUE7SUFDRTtJQUNBO0VoQnU4REo7QUFDRjtBYW5oRUk7RUd5RUE7SUFDRTtJQUNBO0VoQjY4REo7QUFDRjtBa0JqbUVBO0VBQ0UscUJid3pCc0M7QUwyeUN4Qzs7QWtCMWxFQTtFQUNFO0VBQ0E7RUFDQTtFZG9SSSxrQkFMSTtFYzNRUixnQmJna0I0QjtBTDJoRDlCOztBa0J2bEVBO0VBQ0U7RUFDQTtFZDBRSSxrQkFMSTtBSnMxRFY7O0FrQnZsRUE7RUFDRTtFQUNBO0Vkb1FJLG1CQUxJO0FKNDFEVjs7QW1CeG5FQTtFQUNFLG1CZGd6QnNDO0VEaGhCbEMsa0JBTEk7RWV2UlIsY2RLUztBTG9uRVg7O0FvQjluRUE7RUFDRTtFQUNBO0VBQ0E7RWhCOFJJLGVBTEk7RWdCdFJSLGdCZnFrQjRCO0VlcGtCNUIsZ0JmMGtCNEI7RWV6a0I1QixjZktTO0VlSlQsc0JmTFM7RWVNVDtFQUNBO0VBQ0E7RWRHRTtFZUhFLHdFRE1KO0FwQjRuRUY7QXFCOW5FTTtFRGhCTjtJQ2lCUTtFckJpb0VOO0FBQ0Y7QW9CL25FRTtFQUNFO0FwQmlvRUo7QW9CL25FSTtFQUNFO0FwQmlvRU47QW9CNW5FRTtFQUNFLGNmakJPO0Vla0JQLHNCZjNCTztFZTRCUCxxQmY4ekJvQztFZTd6QnBDO0VBS0Usa0RmdXNCMEI7QUxtN0NoQztBb0JubkVFO0VBRUU7QXBCb25FSjtBb0JobkVFO0VBQ0UsY2YxQ087RWU0Q1A7QXBCaW5FSjtBb0J6bUVFO0VBRUUseUJmMURPO0VlNkRQO0FwQndtRUo7QW9CcG1FRTtFQUNFO0VBQ0E7RUFDQSwwQmYwcEIwQjtFZXpwQjFCLGNmOURPO0VpQmJULHlCakJNUztFZXVFUDtFQUNBO0VBQ0E7RUFDQTtFQUNBLDRCZmdiMEI7RWUvYTFCO0VDdEVFLHFJRHVFRjtBcEJzbUVKO0FxQnpxRU07RUR1REo7SUN0RE07RXJCNHFFTjtBQUNGO0FvQnhtRUU7RUFDRSx5QmYrNUI4QjtBTDJzQ2xDO0FvQnZtRUU7RUFDRTtFQUNBO0VBQ0EsMEJmdW9CMEI7RWV0b0IxQixjZmpGTztFaUJiVCx5QmpCTVM7RWUwRlA7RUFDQTtFQUNBO0VBQ0E7RUFDQSw0QmY2WjBCO0VlNVoxQjtFQ3pGRSxxSUQwRkY7QXBCeW1FSjtBcUIvckVNO0VEMEVKO0lDekVNO0VyQmtzRU47QUFDRjtBb0IzbUVFO0VBQ0UseUJmNDRCOEI7QUxpdUNsQzs7QW9CcG1FQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsZ0JmeWQ0QjtFZXhkNUIsY2Y1R1M7RWU2R1Q7RUFDQTtFQUNBO0FwQnVtRUY7QW9Ccm1FRTtFQUVFO0VBQ0E7QXBCc21FSjs7QW9CM2xFQTtFQUNFLHNDZmd1QnNDO0VlL3RCdEM7RWhCbUpJLG1CQUxJO0VFN1FOO0FOK3RFSjtBb0I1bEVFO0VBQ0U7RUFDQTtFQUNBLHlCZjJsQjBCO0FMbWdEOUI7QW9CM2xFRTtFQUNFO0VBQ0E7RUFDQSx5QmZxbEIwQjtBTHdnRDlCOztBb0J6bEVBO0VBQ0Usb0NmOHNCc0M7RWU3c0J0QztFaEJnSUksa0JBTEk7RUU3UU47QU5ndkVKO0FvQjFsRUU7RUFDRTtFQUNBO0VBQ0EsdUJmNGtCMEI7QUxnaEQ5QjtBb0J6bEVFO0VBQ0U7RUFDQTtFQUNBLHVCZnNrQjBCO0FMcWhEOUI7O0FvQm5sRUU7RUFDRSx1Q2ZxckJvQztBTGk2Q3hDO0FvQm5sRUU7RUFDRSxzQ2ZrckJvQztBTG02Q3hDO0FvQmxsRUU7RUFDRSxvQ2YrcUJvQztBTHE2Q3hDOztBb0Iva0VBO0VBQ0UsV2Y2cUJzQztFZTVxQnRDO0VBQ0EsaUJmNGhCNEI7QUxzakQ5QjtBb0JobEVFO0VBQ0U7QXBCa2xFSjtBb0Iva0VFO0VBQ0U7RWQvTEE7QU5peEVKO0FvQjlrRUU7RUFDRTtFZHBNQTtBTnF4RUo7O0F1Qm55RUE7RUFDRTtFQUNBO0VBQ0E7RUFFQTtFbkIyUkksZUFMSTtFbUJuUlIsZ0JsQmtrQjRCO0VrQmprQjVCLGdCbEJ1a0I0QjtFa0J0a0I1QixjbEJFUztFa0JEVCxzQmxCUlM7RWtCU1Q7RUFDQTtFQUNBLHlDbEJnN0JrQztFa0IvNkJsQywwQmxCZzdCa0M7RWtCLzZCbEM7RWpCRkU7RWVIRSx3RUVRSjtFQUNBO0F2Qm15RUY7QXFCeHlFTTtFRWZOO0lGZ0JRO0VyQjJ5RU47QUFDRjtBdUJ0eUVFO0VBQ0UscUJsQnMwQm9DO0VrQnIwQnBDO0VBS0Usa0RsQmk3QjRCO0FMbTNDbEM7QXVCaHlFRTtFQUVFLHNCbEJnc0IwQjtFa0IvckIxQjtBdkJpeUVKO0F1Qjl4RUU7RUFFRSx5QmxCcENPO0FMbTBFWDtBdUIxeEVFO0VBQ0U7RUFDQTtBdkI0eEVKOztBdUJ4eEVBO0VBQ0Usb0JsQnlyQjRCO0VrQnhyQjVCLHVCbEJ3ckI0QjtFa0J2ckI1QixvQmxCd3JCNEI7RUQvY3hCLG1CQUxJO0VFN1FOO0FOczBFSjs7QXVCeHhFQTtFQUNFLG1CbEJxckI0QjtFa0JwckI1QixzQmxCb3JCNEI7RWtCbnJCNUIsa0JsQm9yQjRCO0VEbmR4QixrQkFMSTtFRTdRTjtBTjgwRUo7O0F3QjcxRUE7RUFDRTtFQUNBLGtCbkJxM0J3QztFbUJwM0J4QyxtQm5CcTNCd0M7RW1CcDNCeEMsdUJuQnEzQndDO0FMMitDMUM7QXdCOTFFRTtFQUNFO0VBQ0E7QXhCZzJFSjs7QXdCNTFFQTtFQUNFLFVuQnkyQndDO0VtQngyQnhDLFduQncyQndDO0VtQnYyQnhDO0VBQ0E7RUFDQSxzQm5CYlM7RW1CY1Q7RUFDQTtFQUNBO0VBQ0EscUNuQjQyQndDO0VtQjMyQnhDO0VBQ0E7QXhCKzFFRjtBd0I1MUVFO0VsQlhFO0FOMDJFSjtBd0IzMUVFO0VBRUUsa0JuQm0yQnNDO0FMeS9DMUM7QXdCejFFRTtFQUNFLHVCbkIwMUJzQztBTGlnRDFDO0F3QngxRUU7RUFDRSxxQm5Cc3pCb0M7RW1CcnpCcEM7RUFDQSxrRG5CbXNCNEI7QUx1cERoQztBd0J2MUVFO0VBQ0UseUJuQlpNO0VtQmFOLHFCbkJiTTtBTHMyRVY7QXdCdjFFSTtFQUlJO0F4QnMxRVI7QXdCbDFFSTtFQUlJO0F4QmkxRVI7QXdCNTBFRTtFQUNFLHlCbkJqQ007RW1Ca0NOLHFCbkJsQ007RW1CdUNKO0F4QjAwRU47QXdCdDBFRTtFQUNFO0VBQ0E7RUFDQSxZbkJrMEJ1QztBTHNnRDNDO0F3QmowRUk7RUFDRSxZbkIwekJxQztBTHlnRDNDOztBd0JyekVBO0VBQ0UsbUJuQnF6QmdDO0FMbWdEbEM7QXdCdHpFRTtFQUNFLFVuQml6QjhCO0VtQmh6QjlCO0VBQ0E7RUFDQTtFbEI5RkE7RWVIRSxpREdtR0Y7QXhCd3pFSjtBcUJ2NUVNO0VHeUZKO0lIeEZNO0VyQjA1RU47QUFDRjtBd0IzekVJO0VBQ0U7QXhCNnpFTjtBd0IxekVJO0VBQ0UsaUNuQmd6QjRCO0VtQjN5QjFCO0F4Qnd6RVI7O0F3Qmx6RUE7RUFDRTtFQUNBLGtCbkJteEJnQztBTGtpRGxDOztBd0JsekVBO0VBQ0U7RUFDQTtFQUNBO0F4QnF6RUY7QXdCanpFSTs7O0VBQ0U7RUFDQTtFQUNBLGFuQnFvQndCO0FMZ3JEOUI7O0F5Qm44RUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F6QnM4RUY7QXlCcDhFRTtFQUNFO0F6QnM4RUo7QXlCbDhFSTtFQUEwQixrRXBCODlCYTtBTHUrQzNDO0F5QnA4RUk7RUFBMEIsa0VwQjY5QmE7QUwwK0MzQztBeUJwOEVFO0VBQ0U7QXpCczhFSjtBeUJuOEVFO0VBQ0UsV3BCKzhCdUM7RW9COThCdkMsWXBCODhCdUM7RW9CNzhCdkM7RUh6QkYseUJqQmtDUTtFb0JQTixTcEI4OEJ1QztFQzE5QnZDO0VlSEUsNEdJa0JGO0VBQ0E7QXpCbzhFSjtBcUJuOUVNO0VJTUo7SUpMTTtFckJzOUVOO0FBQ0Y7QXlCdjhFSTtFSGpDRix5QmpCOCtCeUM7QUw2L0MzQztBeUJyOEVFO0VBQ0UsV3BCdzdCOEI7RW9CdjdCOUIsY3BCdzdCOEI7RW9CdjdCOUI7RUFDQSxlcEJ1N0I4QjtFb0J0N0I5Qix5QnBCcENPO0VvQnFDUDtFbkI3QkE7QU5xK0VKO0F5Qm44RUU7RUFDRSxXcEJvN0J1QztFb0JuN0J2QyxZcEJtN0J1QztFaUJ0K0J6Qyx5QmpCa0NRO0VvQm1CTixTcEJvN0J1QztFQzE5QnZDO0VlSEUsNEdJNENGO0VBQ0E7QXpCbzhFSjtBcUI3K0VNO0VJaUNKO0lKaENNO0VyQmcvRU47QUFDRjtBeUJ2OEVJO0VIM0RGLHlCakI4K0J5QztBTHVoRDNDO0F5QnI4RUU7RUFDRSxXcEI4NUI4QjtFb0I3NUI5QixjcEI4NUI4QjtFb0I3NUI5QjtFQUNBLGVwQjY1QjhCO0VvQjU1QjlCLHlCcEI5RE87RW9CK0RQO0VuQnZEQTtBTisvRUo7QXlCbjhFRTtFQUNFO0F6QnE4RUo7QXlCbjhFSTtFQUNFLHlCcEJ0RUs7QUwyZ0ZYO0F5Qmw4RUk7RUFDRSx5QnBCMUVLO0FMOGdGWDs7QTBCM2hGQTtFQUNFO0ExQjhoRkY7QTBCNWhGRTs7RUFFRSwwQnJCeS9COEI7RXFCeC9COUIsaUJyQnkvQjhCO0FMcWlEbEM7QTBCM2hGRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUxERSxnRUtFRjtBMUI2aEZKO0FxQjNoRk07RUtYSjtJTFlNO0VyQjhoRk47QUFDRjtBMEI5aEZFO0VBQ0U7QTFCZ2lGSjtBMEI5aEZJO0VBQ0U7QTFCZ2lGTjtBMEI3aEZJO0VBRUUscUJyQm0rQjRCO0VxQmwrQjVCLHdCckJtK0I0QjtBTDJqRGxDO0EwQjNoRkk7RUFDRSxxQnJCODlCNEI7RXFCNzlCNUIsd0JyQjg5QjRCO0FMK2pEbEM7QTBCemhGRTtFQUNFLHFCckJ3OUI4QjtFcUJ2OUI5Qix3QnJCdzlCOEI7QUxta0RsQztBMEJyaEZJOzs7RUFDRSxhckJrOUI0QjtFcUJqOUI1Qiw4RHJCazlCNEI7QUx1a0RsQztBMEJwaEZJO0VBQ0UsYXJCMjhCNEI7RXFCMThCNUIsOERyQjI4QjRCO0FMMmtEbEM7O0EyQjVrRkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzQitrRkY7QTJCN2tGRTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtBM0Ira0ZKO0EyQjNrRkU7O0VBRUU7QTNCNmtGSjtBMkJ2a0ZFO0VBQ0U7RUFDQTtBM0J5a0ZKO0EyQnZrRkk7RUFDRTtBM0J5a0ZOOztBMkI5akZBO0VBQ0U7RUFDQTtFQUNBO0V2QnNQSSxlQUxJO0V1Qi9PUixnQnRCOGhCNEI7RXNCN2hCNUIsZ0J0Qm1pQjRCO0VzQmxpQjVCLGN0QmxDUztFc0JtQ1Q7RUFDQTtFQUNBLHlCdEI1Q1M7RXNCNkNUO0VyQnBDRTtBTnNtRko7O0EyQnhqRkE7Ozs7Ozs7RUFJRTtFdkJnT0ksa0JBTEk7RUU3UU47QU5rbkZKOztBMkIzakZBOzs7Ozs7O0VBSUU7RXZCdU5JLG1CQUxJO0VFN1FOO0FOOG5GSjs7QTJCOWpGQTs7RUFFRTtBM0Jpa0ZGOztBMkJwakZJOztFckIvREE7RUFDQTtBTnduRko7QTJCbmpGSTs7RXJCdEVBO0VBQ0E7QU42bkZKO0EyQjdpRkU7RUFDRTtFckJwRUE7RUFDQTtBTm9uRko7O0E0QjdvRkU7RUFDRTtFQUNBO0VBQ0EsbUJ2Qnl4Qm9DO0VEaGhCbEMsa0JBTEk7RXdCalFOLGN2QjAvQnFCO0FMcXBEekI7O0E0QjVvRkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFeEI0UEUsbUJBTEk7RXdCcFBOLFdBdkJjO0VBd0JkLHdDQXZCaUI7RXRCSGpCO0FOeXFGSjs7QTRCMW9GSTs7OztFQUVFO0E1QitvRk47O0E0QjdyRkk7RUFvREUscUJ2Qis5Qm1CO0V1QjU5QmpCLG9DdkIreUJnQztFdUI5eUJoQztFQUNBO0VBQ0E7RUFDQTtBNUIyb0ZSO0E0QnhvRk07RUFDRSxxQnZCbzlCaUI7RXVCbjlCakIsaURBL0NhO0E1QnlyRnJCOztBNEIxc0ZJO0VBeUVJLG9DdkI2eEJnQztFdUI1eEJoQztBNUJxb0ZSOztBNEIvc0ZJO0VBaUZFLHFCdkJrOEJtQjtBTGdzRHpCO0E0Qi9uRlE7RUFFRSx1QnZCNDJCOEI7RXVCMzJCOUI7RUFDQTtFQUNBO0E1QmdvRlY7QTRCNW5GTTtFQUNFLHFCdkJxN0JpQjtFdUJwN0JqQixpREE5RWE7QTVCNHNGckI7O0E0Qjd0Rkk7RUFzR0UscUJ2QjY2Qm1CO0FMOHNEekI7QTRCem5GTTtFQUNFLHlCdkIwNkJpQjtBTGl0RHpCO0E0QnhuRk07RUFDRSxpREE1RmE7QTVCc3RGckI7QTRCdm5GTTtFQUNFLGN2Qms2QmlCO0FMdXREekI7O0E0QnBuRkk7RUFDRTtBNUJ1bkZOOztBNEI5dUZJOzs7RUErSEk7QTVCcW5GUjtBNEJqbkZNOzs7RUFDRTtBNUJxbkZSOztBNEJ0dUZFO0VBQ0U7RUFDQTtFQUNBLG1CdkJ5eEJvQztFRGhoQmxDLGtCQUxJO0V3QmpRTixjdkIwL0JxQjtBTDh1RHpCOztBNEJydUZFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RXhCNFBFLG1CQUxJO0V3QnBQTixXQXZCYztFQXdCZCx3Q0F2QmlCO0V0QkhqQjtBTmt3Rko7O0E0Qm51Rkk7Ozs7RUFFRTtBNUJ3dUZOOztBNEJ0eEZJO0VBb0RFLHFCdkIrOUJtQjtFdUI1OUJqQixvQ3ZCK3lCZ0M7RXVCOXlCaEM7RUFDQTtFQUNBO0VBQ0E7QTVCb3VGUjtBNEJqdUZNO0VBQ0UscUJ2Qm85QmlCO0V1Qm45QmpCLGlEQS9DYTtBNUJreEZyQjs7QTRCbnlGSTtFQXlFSSxvQ3ZCNnhCZ0M7RXVCNXhCaEM7QTVCOHRGUjs7QTRCeHlGSTtFQWlGRSxxQnZCazhCbUI7QUx5eER6QjtBNEJ4dEZRO0VBRUUsdUJ2QjQyQjhCO0V1QjMyQjlCO0VBQ0E7RUFDQTtBNUJ5dEZWO0E0QnJ0Rk07RUFDRSxxQnZCcTdCaUI7RXVCcDdCakIsaURBOUVhO0E1QnF5RnJCOztBNEJ0ekZJO0VBc0dFLHFCdkI2NkJtQjtBTHV5RHpCO0E0Qmx0Rk07RUFDRSx5QnZCMDZCaUI7QUwweUR6QjtBNEJqdEZNO0VBQ0UsaURBNUZhO0E1Qit5RnJCO0E0Qmh0Rk07RUFDRSxjdkJrNkJpQjtBTGd6RHpCOztBNEI3c0ZJO0VBQ0U7QTVCZ3RGTjs7QTRCdjBGSTs7O0VBaUlJO0E1QjRzRlI7QTRCMXNGTTs7O0VBQ0U7QTVCOHNGUjs7QTZCcDFGQTs7RUFDRTtFQUVBLGdCeEJ3a0I0QjtFd0J2a0I1QixnQnhCNmtCNEI7RXdCNWtCNUIsY3hCUVM7RXdCUFQ7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUM4R0E7RTFCc0tJLGVBTEk7RUU3UU47RWVIRSxxSVFHSjtBN0J3MUZGO0FxQnYxRk07RVFoQk47O0lSaUJRO0VyQjIxRk47QUFDRjtBNkI1MUZFO0VBQ0UsY3hCTE87QUxtMkZYO0E2QjExRkU7O0VBRUU7RUFDQSxrRHhCb3RCNEI7QUx3b0VoQztBNkI5MEZFO0VBR0U7RUFDQSxheEIwdUIwQjtBTG9tRTlCOztBNkJsMEZFO0VDdkNBLFdBWFE7RVJMUix5QmpCNEVhO0V5QjFEYixxQnpCMERhO0FMbXpGZjtBOEIxMkZFO0VBQ0UsV0FkWTtFUlJkLHlCUU1tQjtFQWtCakIscUJBakJhO0E5QjYzRmpCO0E4QnoyRkU7RUFFRSxXQXJCWTtFUlJkLHlCUU1tQjtFQXlCakIscUJBeEJhO0VBNkJYO0E5QnMyRk47QThCbDJGRTtFQUtFLFdBbENhO0VBbUNiLHlCQXJDa0I7RUF3Q2xCLHFCQXZDYztBOUJxNEZsQjtBOEI1MUZJO0VBS0k7QTlCMDFGUjtBOEJyMUZFO0VBRUUsV0FqRGU7RUFrRGYseUJ6QllXO0V5QlRYLHFCekJTVztBTDIwRmY7O0E2QmgyRkU7RUN2Q0EsV0FYUTtFUkxSLHlCakI0RWE7RXlCMURiLHFCekIwRGE7QUxpMUZmO0E4Qng0RkU7RUFDRSxXQWRZO0VSUmQseUJRTW1CO0VBa0JqQixxQkFqQmE7QTlCMjVGakI7QThCdjRGRTtFQUVFLFdBckJZO0VSUmQseUJRTW1CO0VBeUJqQixxQkF4QmE7RUE2Qlg7QTlCbzRGTjtBOEJoNEZFO0VBS0UsV0FsQ2E7RUFtQ2IseUJBckNrQjtFQXdDbEIscUJBdkNjO0E5Qm02RmxCO0E4QjEzRkk7RUFLSTtBOUJ3M0ZSO0E4Qm4zRkU7RUFFRSxXQWpEZTtFQWtEZix5QnpCWVc7RXlCVFgscUJ6QlNXO0FMeTJGZjs7QTZCOTNGRTtFQ3ZDQSxXQVhRO0VSTFIseUJqQjRFYTtFeUIxRGIscUJ6QjBEYTtBTCsyRmY7QThCdDZGRTtFQUNFLFdBZFk7RVJSZCx5QlFNbUI7RUFrQmpCLHFCQWpCYTtBOUJ5N0ZqQjtBOEJyNkZFO0VBRUUsV0FyQlk7RVJSZCx5QlFNbUI7RUF5QmpCLHFCQXhCYTtFQTZCWDtBOUJrNkZOO0E4Qjk1RkU7RUFLRSxXQWxDYTtFQW1DYix5QkFyQ2tCO0VBd0NsQixxQkF2Q2M7QTlCaThGbEI7QThCeDVGSTtFQUtJO0E5QnM1RlI7QThCajVGRTtFQUVFLFdBakRlO0VBa0RmLHlCekJZVztFeUJUWCxxQnpCU1c7QUx1NEZmOztBNkI1NUZFO0VDdkNBLFdBWFE7RVJMUix5QmpCNEVhO0V5QjFEYixxQnpCMERhO0FMNjRGZjtBOEJwOEZFO0VBQ0UsV0FkWTtFUlJkLHlCUU1tQjtFQWtCakIscUJBakJhO0E5QnU5RmpCO0E4Qm44RkU7RUFFRSxXQXJCWTtFUlJkLHlCUU1tQjtFQXlCakIscUJBeEJhO0VBNkJYO0E5Qmc4Rk47QThCNTdGRTtFQUtFLFdBbENhO0VBbUNiLHlCQXJDa0I7RUF3Q2xCLHFCQXZDYztBOUIrOUZsQjtBOEJ0N0ZJO0VBS0k7QTlCbzdGUjtBOEIvNkZFO0VBRUUsV0FqRGU7RUFrRGYseUJ6QllXO0V5QlRYLHFCekJTVztBTHE2RmY7O0E2QjE3RkU7RUN2Q0EsV0FYUTtFUkxSLHlCakI0RWE7RXlCMURiLHFCekIwRGE7QUwyNkZmO0E4QmwrRkU7RUFDRSxXQWRZO0VSUmQseUJRTW1CO0VBa0JqQixxQkFqQmE7QTlCcS9GakI7QThCaitGRTtFQUVFLFdBckJZO0VSUmQseUJRTW1CO0VBeUJqQixxQkF4QmE7RUE2Qlg7QTlCODlGTjtBOEIxOUZFO0VBS0UsV0FsQ2E7RUFtQ2IseUJBckNrQjtFQXdDbEIscUJBdkNjO0E5QjYvRmxCO0E4QnA5Rkk7RUFLSTtBOUJrOUZSO0E4Qjc4RkU7RUFFRSxXQWpEZTtFQWtEZix5QnpCWVc7RXlCVFgscUJ6QlNXO0FMbThGZjs7QTZCeDlGRTtFQ3ZDQSxXQVhRO0VSTFIseUJqQjRFYTtFeUIxRGIscUJ6QjBEYTtBTHk4RmY7QThCaGdHRTtFQUNFLFdBZFk7RVJSZCx5QlFNbUI7RUFrQmpCLHFCQWpCYTtBOUJtaEdqQjtBOEIvL0ZFO0VBRUUsV0FyQlk7RVJSZCx5QlFNbUI7RUF5QmpCLHFCQXhCYTtFQTZCWDtBOUI0L0ZOO0E4QngvRkU7RUFLRSxXQWxDYTtFQW1DYix5QkFyQ2tCO0VBd0NsQixxQkF2Q2M7QTlCMmhHbEI7QThCbC9GSTtFQUtJO0E5QmcvRlI7QThCMytGRTtFQUVFLFdBakRlO0VBa0RmLHlCekJZVztFeUJUWCxxQnpCU1c7QUxpK0ZmOztBNkJ0L0ZFO0VDdkNBLFdBWFE7RVJMUix5QmpCNEVhO0V5QjFEYixxQnpCMERhO0FMdStGZjtBOEI5aEdFO0VBQ0UsV0FkWTtFUlJkLHlCUU1tQjtFQWtCakIscUJBakJhO0E5QmlqR2pCO0E4QjdoR0U7RUFFRSxXQXJCWTtFUlJkLHlCUU1tQjtFQXlCakIscUJBeEJhO0VBNkJYO0E5QjBoR047QThCdGhHRTtFQUtFLFdBbENhO0VBbUNiLHlCQXJDa0I7RUF3Q2xCLHFCQXZDYztBOUJ5akdsQjtBOEJoaEdJO0VBS0k7QTlCOGdHUjtBOEJ6Z0dFO0VBRUUsV0FqRGU7RUFrRGYseUJ6QllXO0V5QlRYLHFCekJTVztBTCsvRmY7O0E2QnBoR0U7RUN2Q0EsV0FYUTtFUkxSLHlCakI0RWE7RXlCMURiLHFCekIwRGE7QUxxZ0dmO0E4QjVqR0U7RUFDRSxXQWRZO0VSUmQseUJRTW1CO0VBa0JqQixxQkFqQmE7QTlCK2tHakI7QThCM2pHRTtFQUVFLFdBckJZO0VSUmQseUJRTW1CO0VBeUJqQixxQkF4QmE7RUE2Qlg7QTlCd2pHTjtBOEJwakdFO0VBS0UsV0FsQ2E7RUFtQ2IseUJBckNrQjtFQXdDbEIscUJBdkNjO0E5QnVsR2xCO0E4QjlpR0k7RUFLSTtBOUI0aUdSO0E4QnZpR0U7RUFFRSxXQWpEZTtFQWtEZix5QnpCWVc7RXlCVFgscUJ6QlNXO0FMNmhHZjs7QTZCNWlHRTtFQ21CQSxjekJKYTtFeUJLYixxQnpCTGE7QUxraUdmO0E4QjNoR0U7RUFDRSxXQVRZO0VBVVoseUJ6QlRXO0V5QlVYLHFCekJWVztBTHVpR2Y7QThCMWhHRTtFQUVFO0E5QjJoR0o7QThCeGhHRTtFQUtFLFdBckJhO0VBc0JiLHlCekJ4Qlc7RXlCeUJYLHFCekJ6Qlc7QUwraUdmO0E4QnBoR0k7RUFLSTtBOUJraEdSO0E4QjdnR0U7RUFFRSxjekJ2Q1c7RXlCd0NYO0E5QjhnR0o7O0E2QnJrR0U7RUNtQkEsY3pCSmE7RXlCS2IscUJ6QkxhO0FMMmpHZjtBOEJwakdFO0VBQ0UsV0FUWTtFQVVaLHlCekJUVztFeUJVWCxxQnpCVlc7QUxna0dmO0E4Qm5qR0U7RUFFRTtBOUJvakdKO0E4QmpqR0U7RUFLRSxXQXJCYTtFQXNCYix5QnpCeEJXO0V5QnlCWCxxQnpCekJXO0FMd2tHZjtBOEI3aUdJO0VBS0k7QTlCMmlHUjtBOEJ0aUdFO0VBRUUsY3pCdkNXO0V5QndDWDtBOUJ1aUdKOztBNkI5bEdFO0VDbUJBLGN6QkphO0V5QktiLHFCekJMYTtBTG9sR2Y7QThCN2tHRTtFQUNFLFdBVFk7RUFVWix5QnpCVFc7RXlCVVgscUJ6QlZXO0FMeWxHZjtBOEI1a0dFO0VBRUU7QTlCNmtHSjtBOEIxa0dFO0VBS0UsV0FyQmE7RUFzQmIseUJ6QnhCVztFeUJ5QlgscUJ6QnpCVztBTGltR2Y7QThCdGtHSTtFQUtJO0E5Qm9rR1I7QThCL2pHRTtFQUVFLGN6QnZDVztFeUJ3Q1g7QTlCZ2tHSjs7QTZCdm5HRTtFQ21CQSxjekJKYTtFeUJLYixxQnpCTGE7QUw2bUdmO0E4QnRtR0U7RUFDRSxXQVRZO0VBVVoseUJ6QlRXO0V5QlVYLHFCekJWVztBTGtuR2Y7QThCcm1HRTtFQUVFO0E5QnNtR0o7QThCbm1HRTtFQUtFLFdBckJhO0VBc0JiLHlCekJ4Qlc7RXlCeUJYLHFCekJ6Qlc7QUwwbkdmO0E4Qi9sR0k7RUFLSTtBOUI2bEdSO0E4QnhsR0U7RUFFRSxjekJ2Q1c7RXlCd0NYO0E5QnlsR0o7O0E2QmhwR0U7RUNtQkEsY3pCSmE7RXlCS2IscUJ6QkxhO0FMc29HZjtBOEIvbkdFO0VBQ0UsV0FUWTtFQVVaLHlCekJUVztFeUJVWCxxQnpCVlc7QUwyb0dmO0E4QjluR0U7RUFFRTtBOUIrbkdKO0E4QjVuR0U7RUFLRSxXQXJCYTtFQXNCYix5QnpCeEJXO0V5QnlCWCxxQnpCekJXO0FMbXBHZjtBOEJ4bkdJO0VBS0k7QTlCc25HUjtBOEJqbkdFO0VBRUUsY3pCdkNXO0V5QndDWDtBOUJrbkdKOztBNkJ6cUdFO0VDbUJBLGN6QkphO0V5QktiLHFCekJMYTtBTCtwR2Y7QThCeHBHRTtFQUNFLFdBVFk7RUFVWix5QnpCVFc7RXlCVVgscUJ6QlZXO0FMb3FHZjtBOEJ2cEdFO0VBRUU7QTlCd3BHSjtBOEJycEdFO0VBS0UsV0FyQmE7RUFzQmIseUJ6QnhCVztFeUJ5QlgscUJ6QnpCVztBTDRxR2Y7QThCanBHSTtFQUtJO0E5QitvR1I7QThCMW9HRTtFQUVFLGN6QnZDVztFeUJ3Q1g7QTlCMm9HSjs7QTZCbHNHRTtFQ21CQSxjekJKYTtFeUJLYixxQnpCTGE7QUx3ckdmO0E4QmpyR0U7RUFDRSxXQVRZO0VBVVoseUJ6QlRXO0V5QlVYLHFCekJWVztBTDZyR2Y7QThCaHJHRTtFQUVFO0E5QmlyR0o7QThCOXFHRTtFQUtFLFdBckJhO0VBc0JiLHlCekJ4Qlc7RXlCeUJYLHFCekJ6Qlc7QUxxc0dmO0E4QjFxR0k7RUFLSTtBOUJ3cUdSO0E4Qm5xR0U7RUFFRSxjekJ2Q1c7RXlCd0NYO0E5Qm9xR0o7O0E2QjN0R0U7RUNtQkEsY3pCSmE7RXlCS2IscUJ6QkxhO0FMaXRHZjtBOEIxc0dFO0VBQ0UsV0FUWTtFQVVaLHlCekJUVztFeUJVWCxxQnpCVlc7QUxzdEdmO0E4QnpzR0U7RUFFRTtBOUIwc0dKO0E4QnZzR0U7RUFLRSxXQXJCYTtFQXNCYix5QnpCeEJXO0V5QnlCWCxxQnpCekJXO0FMOHRHZjtBOEJuc0dJO0VBS0k7QTlCaXNHUjtBOEI1ckdFO0VBRUUsY3pCdkNXO0V5QndDWDtBOUI2ckdKOztBNkJ4dUdBO0VBQ0UsZ0J4QmlnQjRCO0V3QmhnQjVCLGN4QnpDUTtFd0IwQ1IsMEJ4QjZXd0M7QUw4M0YxQztBNkJ6dUdFO0VBQ0UsY3hCNFdzQztBTCszRjFDO0E2Qm51R0U7RUFFRSxjeEIvRU87QUxtekdYOztBNkJ6dEdBOztFQ3VCRTtFMUJzS0ksa0JBTEk7RUU3UU47QU5xekdKOztBNkI1dEdBOztFQ21CRTtFMUJzS0ksbUJBTEk7RUU3UU47QU40ekdKOztBK0IvMEdBO0VWZ0JNLGdDVWZKO0EvQmsxR0Y7QXFCL3pHTTtFVXBCTjtJVnFCUTtFckJrMEdOO0FBQ0Y7QStCcjFHRTtFQUNFO0EvQnUxR0o7O0ErQmoxR0U7RUFDRTtBL0JvMUdKOztBK0JoMUdBO0VBQ0U7RUFDQTtFVkRJLDZCVUVKO0EvQm0xR0Y7QXFCajFHTTtFVUxOO0lWTVE7RXJCbzFHTjtBQUNGO0ErQnQxR0U7RUFDRTtFQUNBO0VWTkUsNEJVT0Y7QS9CdzFHSjtBcUIzMUdNO0VVQUo7SVZDTTtFckI4MUdOO0FBQ0Y7O0FnQ24zR0E7Ozs7RUFJRTtBaENzM0dGOztBZ0NuM0dBO0VBQ0U7QWhDczNHRjtBaUNqMkdJO0VBQ0U7RUFDQSxvQjVCcWdCd0I7RTRCcGdCeEIsdUI1Qm1nQndCO0U0QmxnQnhCO0VBaENKO0VBQ0E7RUFDQTtFQUNBO0FqQ280R0Y7QWlDLzBHSTtFQUNFO0FqQ2kxR047O0FnQzUzR0E7RUFDRTtFQUNBLGEzQnloQ2tDO0UyQnhoQ2xDO0VBQ0EsZ0IzQittQ2tDO0UyQjltQ2xDO0VBQ0E7RTVCK1FJLGVBTEk7RTRCeFFSLGMzQlBTO0UyQlFUO0VBQ0E7RUFDQSxzQjNCbkJTO0UyQm9CVDtFQUNBO0UxQlZFO0FOMDRHSjtBZ0M1M0dFO0VBQ0U7RUFDQTtFQUNBLG9CM0JrbUNnQztBTDR4RXBDOztBZ0NsM0dJO0VBQ0U7QWhDcTNHTjtBZ0NuM0dNO0VBQ0U7RUFDQTtBaENxM0dSOztBZ0NqM0dJO0VBQ0U7QWhDbzNHTjtBZ0NsM0dNO0VBQ0U7RUFDQTtBaENvM0dSOztBYW4zR0k7RW1CZkE7SUFDRTtFaENzNEdKO0VnQ3A0R0k7SUFDRTtJQUNBO0VoQ3M0R047O0VnQ2w0R0U7SUFDRTtFaENxNEdKO0VnQ240R0k7SUFDRTtJQUNBO0VoQ3E0R047QUFDRjtBYXI0R0k7RW1CZkE7SUFDRTtFaEN1NUdKO0VnQ3I1R0k7SUFDRTtJQUNBO0VoQ3U1R047O0VnQ241R0U7SUFDRTtFaENzNUdKO0VnQ3A1R0k7SUFDRTtJQUNBO0VoQ3M1R047QUFDRjtBYXQ1R0k7RW1CZkE7SUFDRTtFaEN3NkdKO0VnQ3Q2R0k7SUFDRTtJQUNBO0VoQ3c2R047O0VnQ3A2R0U7SUFDRTtFaEN1NkdKO0VnQ3I2R0k7SUFDRTtJQUNBO0VoQ3U2R047QUFDRjtBYXY2R0k7RW1CZkE7SUFDRTtFaEN5N0dKO0VnQ3Y3R0k7SUFDRTtJQUNBO0VoQ3k3R047O0VnQ3I3R0U7SUFDRTtFaEN3N0dKO0VnQ3Q3R0k7SUFDRTtJQUNBO0VoQ3c3R047QUFDRjtBYXg3R0k7RW1CZkE7SUFDRTtFaEMwOEdKO0VnQ3g4R0k7SUFDRTtJQUNBO0VoQzA4R047O0VnQ3Q4R0U7SUFDRTtFaEN5OEdKO0VnQ3Y4R0k7SUFDRTtJQUNBO0VoQ3k4R047QUFDRjtBZ0NoOEdFO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsdUIzQjBqQ2dDO0FMdzRFcEM7QWlDaC9HSTtFQUNFO0VBQ0Esb0I1QnFnQndCO0U0QnBnQnhCLHVCNUJtZ0J3QjtFNEJsZ0J4QjtFQXpCSjtFQUNBO0VBQ0E7RUFDQTtBakM0Z0hGO0FpQzk5R0k7RUFDRTtBakNnK0dOOztBZ0N0OEdFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxxQjNCNGlDZ0M7QUw2NUVwQztBaUNyZ0hJO0VBQ0U7RUFDQSxvQjVCcWdCd0I7RTRCcGdCeEIsdUI1Qm1nQndCO0U0QmxnQnhCO0VBbEJKO0VBQ0E7RUFDQTtFQUNBO0FqQzBoSEY7QWlDbi9HSTtFQUNFO0FqQ3EvR047QWdDajlHSTtFQUNFO0FoQ205R047O0FnQzc4R0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHNCM0IyaENnQztBTHE3RXBDO0FpQzdoSEk7RUFDRTtFQUNBLG9CNUJxZ0J3QjtFNEJwZ0J4Qix1QjVCbWdCd0I7RTRCbGdCeEI7QWpDK2hITjtBaUNwaEhNO0VBQ0U7QWpDc2hIUjtBaUNuaEhNO0VBQ0U7RUFDQSxxQjVCa2ZzQjtFNEJqZnRCLHVCNUJnZnNCO0U0Qi9ldEI7RUE5Qk47RUFDQTtFQUNBO0FqQ29qSEY7QWlDbmhISTtFQUNFO0FqQ3FoSE47QWdDaCtHSTtFQUNFO0FoQ2srR047O0FnQzM5R0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBaEM4OUdGOztBZ0N4OUdBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxnQjNCd2M0QjtFMkJ2YzVCLGMzQnZIUztFMkJ3SFQ7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEMyOUdGO0FnQzc4R0U7RUFFRSxjM0JzL0JnQztFaUIvb0NsQyx5QmpCTVM7QUxrbUhYO0FnQzE4R0U7RUFFRSxXM0I1Sk87RTJCNkpQO0VWaktGLHlCakJrQ1E7QUwya0hWO0FnQ3g4R0U7RUFFRSxjM0I5Sk87RTJCK0pQO0VBQ0E7QWhDeThHSjs7QWdDbjhHQTtFQUNFO0FoQ3M4R0Y7O0FnQ2w4R0E7RUFDRTtFQUNBLG9CM0JxK0JrQztFMkJwK0JsQztFNUIwR0ksbUJBTEk7RTRCbkdSLGMzQi9LUztFMkJnTFQ7QWhDcThHRjs7QWdDajhHQTtFQUNFO0VBQ0E7RUFDQSxjM0JwTFM7QUx3bkhYOztBZ0NoOEdBO0VBQ0UsYzNCL0xTO0UyQmdNVCx5QjNCM0xTO0UyQjRMVCxpQzNCODdCa0M7QUxxZ0ZwQztBZ0NoOEdFO0VBQ0UsYzNCck1PO0FMdW9IWDtBZ0NoOEdJO0VBRUUsVzNCNU1LO0VpQkpULDJDakJzcUNrQztBTDQrRXBDO0FnQzk3R0k7RUFFRSxXM0JsTks7RWlCSlQseUJqQmtDUTtBTG9uSFY7QWdDNTdHSTtFQUVFLGMzQm5OSztBTGdwSFg7QWdDejdHRTtFQUNFLGlDM0JxNkJnQztBTHNoRnBDO0FnQ3g3R0U7RUFDRSxjM0I5Tk87QUx3cEhYO0FnQ3Y3R0U7RUFDRSxjM0JoT087QUx5cEhYOztBa0NycUhBOztFQUVFO0VBQ0E7RUFDQTtBbEN3cUhGO0FrQ3RxSEU7Ozs7OztFQUNFO0VBQ0E7QWxDNnFISjtBa0N4cUhFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBTUU7QWxDc3NISjs7QWtDanNIQTtFQUNFO0VBQ0E7RUFDQTtBbENvc0hGO0FrQ2xzSEU7RUFDRTtBbENvc0hKOztBa0M5ckhFOztFQUVFO0FsQ2lzSEo7QWtDN3JIRTs7OztFNUJSRTtFQUNBO0FOMnNISjtBa0MzckhFOzs7Ozs7O0U1QkhFO0VBQ0E7QU51c0hKOztBa0NsckhBO0VBQ0U7RUFDQTtBbENxckhGO0FrQ25ySEU7RUFHRTtBbENtckhKO0FrQ2hySEU7RUFDRTtBbENrckhKOztBa0M5cUhBO0VBQ0U7RUFDQTtBbENpckhGOztBa0M5cUhBO0VBQ0U7RUFDQTtBbENpckhGOztBa0M3cEhBO0VBQ0U7RUFDQTtFQUNBO0FsQ2dxSEY7QWtDOXBIRTs7O0VBRUU7QWxDaXFISjtBa0M5cEhFOztFQUVFO0FsQ2dxSEo7QWtDNXBIRTs7OztFNUJ2RkU7RUFDQTtBTnl2SEo7QWtDOXBIRTs7OztFNUIxR0U7RUFDQTtBTjh3SEo7O0FtQ3R5SEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuQ3l5SEY7O0FtQ3R5SEE7RUFDRTtFQUNBO0VBR0EsYzlCb0JRO0U4Qm5CUjtFZEhJLHVHY0lKO0FuQ3V5SEY7QXFCdnlITTtFY1BOO0lkUVE7RXJCMHlITjtBQUNGO0FtQzF5SEU7RUFFRSxjOUJ1YXNDO0FMbzRHMUM7QW1DdHlIRTtFQUNFLGM5QmhCTztFOEJpQlA7RUFDQTtBbkN3eUhKOztBbUNoeUhBO0VBQ0U7QW5DbXlIRjtBbUNqeUhFO0VBQ0U7RUFDQTtFQUNBO0U3QmxCQTtFQUNBO0FOc3pISjtBbUNseUhJO0VBRUUscUM5Qm1oQzhCO0U4QmpoQzlCO0FuQ2t5SE47QW1DL3hISTtFQUNFLGM5QjNDSztFOEI0Q0w7RUFDQTtBbkNpeUhOO0FtQzd4SEU7O0VBRUUsYzlCbERPO0U4Qm1EUCxzQjlCMURPO0U4QjJEUCxrQzlCc2dDZ0M7QUx5eEZwQztBbUM1eEhFO0VBRUU7RTdCNUNBO0VBQ0E7QU4wMEhKOztBbUNueEhFO0VBQ0U7RUFDQTtFN0JuRUE7QU4wMUhKO0FtQ254SEU7O0VBRUUsVzlCcEZPO0VpQkpULHlCakJrQ1E7QUw0MEhWOztBbUMzd0hFOztFQUVFO0VBQ0E7QW5DOHdISjs7QW1DendIRTs7RUFFRTtFQUNBO0VBQ0E7QW5DNHdISjs7QW1DdHdIRTs7RUFDRTtBbkMwd0hKOztBbUNod0hFO0VBQ0U7QW5DbXdISjtBbUNqd0hFO0VBQ0U7QW5DbXdISjs7QW9DMzNIQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxtQi9COGpDa0M7RStCNWpDbEMsc0IvQjRqQ2tDO0FMaTBGcEM7QW9DdDNIRTs7Ozs7OztFQUNFO0VBQ0E7RUFDQTtFQUNBO0FwQzgzSEo7QW9DMTJIQTtFQUNFLHNCL0JxaUNrQztFK0JwaUNsQyx5Qi9Cb2lDa0M7RStCbmlDbEMsa0IvQm9pQ2tDO0VEenpCOUIsa0JBTEk7RWdDcE9SO0VBQ0E7QXBDNDJIRjtBb0MvMUhBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcENpMkhGO0FvQy8xSEU7RUFDRTtFQUNBO0FwQ2kySEo7QW9DOTFIRTtFQUNFO0FwQ2cySEo7O0FvQ3YxSEE7RUFDRSxtQi9CeTlCa0M7RStCeDlCbEMsc0IvQnc5QmtDO0FMazRGcEM7O0FvQzkwSEE7RUFDRTtFQUNBO0VBR0E7QXBDKzBIRjs7QW9DMzBIQTtFQUNFO0VoQzZLSSxrQkFMSTtFZ0N0S1I7RUFDQTtFQUNBO0U5QnpHRTtFZUhFLHdDZThHSjtBcEM4MEhGO0FxQng3SE07RWVtR047SWZsR1E7RXJCMjdITjtBQUNGO0FvQ2oxSEU7RUFDRTtBcENtMUhKO0FvQ2gxSEU7RUFDRTtFQUNBO0VBQ0E7QXBDazFISjs7QW9DNTBIQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwQyswSEY7O0FvQzUwSEE7RUFDRTtFQUNBO0FwQyswSEY7O0FhejZISTtFdUJzR0E7SUFFSTtJQUNBO0VwQ3MwSE47RW9DcDBITTtJQUNFO0VwQ3MwSFI7RW9DcDBIUTtJQUNFO0VwQ3MwSFY7RW9DbjBIUTtJQUNFLHFCL0JxNkJ3QjtJK0JwNkJ4QixvQi9CbzZCd0I7RUxpNkZsQztFb0NqMEhNO0lBQ0U7RXBDbTBIUjtFb0NoMEhNO0lBQ0U7SUFDQTtFcENrMEhSO0VvQy96SE07SUFDRTtFcENpMEhSO0VvQzl6SE07SUFDRTtFcENnMEhSO0VvQzd6SE07SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lmaE1KLGdCZWlNSTtJQUNBO0VwQyt6SFI7RW9DN3pITTs7SUFFRTtJQUNBO0lBQ0E7RXBDK3pIUjtFb0M1ekhNO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RXBDOHpIUjtBQUNGO0FhLzlISTtFdUJzR0E7SUFFSTtJQUNBO0VwQzIzSE47RW9DejNITTtJQUNFO0VwQzIzSFI7RW9DejNIUTtJQUNFO0VwQzIzSFY7RW9DeDNIUTtJQUNFLHFCL0JxNkJ3QjtJK0JwNkJ4QixvQi9CbzZCd0I7RUxzOUZsQztFb0N0M0hNO0lBQ0U7RXBDdzNIUjtFb0NyM0hNO0lBQ0U7SUFDQTtFcEN1M0hSO0VvQ3AzSE07SUFDRTtFcENzM0hSO0VvQ24zSE07SUFDRTtFcENxM0hSO0VvQ2wzSE07SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lmaE1KLGdCZWlNSTtJQUNBO0VwQ28zSFI7RW9DbDNITTs7SUFFRTtJQUNBO0lBQ0E7RXBDbzNIUjtFb0NqM0hNO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RXBDbTNIUjtBQUNGO0FhcGhJSTtFdUJzR0E7SUFFSTtJQUNBO0VwQ2c3SE47RW9DOTZITTtJQUNFO0VwQ2c3SFI7RW9DOTZIUTtJQUNFO0VwQ2c3SFY7RW9DNzZIUTtJQUNFLHFCL0JxNkJ3QjtJK0JwNkJ4QixvQi9CbzZCd0I7RUwyZ0dsQztFb0MzNkhNO0lBQ0U7RXBDNjZIUjtFb0MxNkhNO0lBQ0U7SUFDQTtFcEM0NkhSO0VvQ3o2SE07SUFDRTtFcEMyNkhSO0VvQ3g2SE07SUFDRTtFcEMwNkhSO0VvQ3Y2SE07SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lmaE1KLGdCZWlNSTtJQUNBO0VwQ3k2SFI7RW9DdjZITTs7SUFFRTtJQUNBO0lBQ0E7RXBDeTZIUjtFb0N0NkhNO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RXBDdzZIUjtBQUNGO0FhemtJSTtFdUJzR0E7SUFFSTtJQUNBO0VwQ3ErSE47RW9DbitITTtJQUNFO0VwQ3ErSFI7RW9DbitIUTtJQUNFO0VwQ3ErSFY7RW9DbCtIUTtJQUNFLHFCL0JxNkJ3QjtJK0JwNkJ4QixvQi9CbzZCd0I7RUxna0dsQztFb0NoK0hNO0lBQ0U7RXBDaytIUjtFb0MvOUhNO0lBQ0U7SUFDQTtFcENpK0hSO0VvQzk5SE07SUFDRTtFcENnK0hSO0VvQzc5SE07SUFDRTtFcEMrOUhSO0VvQzU5SE07SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lmaE1KLGdCZWlNSTtJQUNBO0VwQzg5SFI7RW9DNTlITTs7SUFFRTtJQUNBO0lBQ0E7RXBDODlIUjtFb0MzOUhNO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RXBDNjlIUjtBQUNGO0FhOW5JSTtFdUJzR0E7SUFFSTtJQUNBO0VwQzBoSU47RW9DeGhJTTtJQUNFO0VwQzBoSVI7RW9DeGhJUTtJQUNFO0VwQzBoSVY7RW9DdmhJUTtJQUNFLHFCL0JxNkJ3QjtJK0JwNkJ4QixvQi9CbzZCd0I7RUxxbkdsQztFb0NyaElNO0lBQ0U7RXBDdWhJUjtFb0NwaElNO0lBQ0U7SUFDQTtFcENzaElSO0VvQ25oSU07SUFDRTtFcENxaElSO0VvQ2xoSU07SUFDRTtFcENvaElSO0VvQ2poSU07SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lmaE1KLGdCZWlNSTtJQUNBO0VwQ21oSVI7RW9DamhJTTs7SUFFRTtJQUNBO0lBQ0E7RXBDbWhJUjtFb0NoaElNO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RXBDa2hJUjtBQUNGO0FvQzdrSUk7RUFFSTtFQUNBO0FwQzhrSVI7QW9DNWtJUTtFQUNFO0FwQzhrSVY7QW9DNWtJVTtFQUNFO0FwQzhrSVo7QW9DM2tJVTtFQUNFLHFCL0JxNkJ3QjtFK0JwNkJ4QixvQi9CbzZCd0I7QUx5cUdwQztBb0N6a0lRO0VBQ0U7QXBDMmtJVjtBb0N4a0lRO0VBQ0U7RUFDQTtBcEMwa0lWO0FvQ3ZrSVE7RUFDRTtBcEN5a0lWO0FvQ3RrSVE7RUFDRTtBcEN3a0lWO0FvQ3JrSVE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VmaE1KLGdCZWlNSTtFQUNBO0FwQ3VrSVY7QW9DcmtJUTs7RUFFRTtFQUNBO0VBQ0E7QXBDdWtJVjtBb0Nwa0lRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXBDc2tJVjs7QW9DeGpJRTtFQUNFLHlCL0JvNEJnQztBTHVyR3BDO0FvQ3pqSUk7RUFFRSx5Qi9CZzRCOEI7QUwwckdwQztBb0NyaklJO0VBQ0UsMEIvQnczQjhCO0FMK3JHcEM7QW9DcmpJTTtFQUVFLHlCL0JxM0I0QjtBTGlzR3BDO0FvQ25qSU07RUFDRSx5Qi9CbTNCNEI7QUxrc0dwQztBb0NqaklJOztFQUVFLHlCL0I0MkI4QjtBTHVzR3BDO0FvQy9pSUU7RUFDRSwwQi9CcTJCZ0M7RStCcDJCaEMsZ0MvQnkyQmdDO0FMd3NHcEM7QW9DOWlJRTtFQUNFO0FwQ2dqSUo7QW9DN2lJRTtFQUNFLDBCL0I0MUJnQztBTG10R3BDO0FvQzdpSUk7OztFQUdFLHlCL0J5MUI4QjtBTHN0R3BDOztBb0N4aUlFO0VBQ0UsVy9CelJPO0FMbzBJWDtBb0N6aUlJO0VBRUUsVy9CN1JLO0FMdTBJWDtBb0NyaUlJO0VBQ0UsZ0MvQjh6QjhCO0FMeXVHcEM7QW9DcmlJTTtFQUVFLGdDL0IyekI0QjtBTDJ1R3BDO0FvQ25pSU07RUFDRSxnQy9CeXpCNEI7QUw0dUdwQztBb0NqaUlJOztFQUVFLFcvQmpUSztBTG8xSVg7QW9DL2hJRTtFQUNFLGdDL0IyeUJnQztFK0IxeUJoQyxzQy9CK3lCZ0M7QUxrdkdwQztBb0M5aElFO0VBQ0U7QXBDZ2lJSjtBb0M3aElFO0VBQ0UsZ0MvQmt5QmdDO0FMNnZHcEM7QW9DOWhJSTs7O0VBR0UsVy9CblVLO0FMbTJJWDs7QXFDdjJJQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQSxzQmhDSFM7RWdDSVQ7RUFDQTtFL0JNRTtBTm8ySUo7QXFDdDJJRTtFQUNFO0VBQ0E7QXJDdzJJSjtBcUNyMklFO0VBQ0U7RUFDQTtBckN1MklKO0FxQ3IySUk7RUFDRTtFL0JDRjtFQUNBO0FOdTJJSjtBcUNyMklJO0VBQ0U7RS9CVUY7RUFDQTtBTjgxSUo7QXFDbDJJRTs7RUFFRTtBckNvMklKOztBcUNoMklBO0VBR0U7RUFDQTtBckNpMklGOztBcUM3MUlBO0VBQ0UscUJoQ2lyQ2tDO0FMK3FHcEM7O0FxQzcxSUE7RUFDRTtFQUNBO0FyQ2cySUY7O0FxQzcxSUE7RUFDRTtBckNnMklGOztBcUN4MUlFO0VBQ0UsaUJoQzhTSztBTDZpSVQ7O0FxQ24xSUE7RUFDRTtFQUNBO0VBRUEscUNoQzJwQ2tDO0VnQzFwQ2xDO0FyQ3ExSUY7QXFDbjFJRTtFL0JwRUU7QU4wNUlKOztBcUNqMUlBO0VBQ0U7RUFFQSxxQ2hDZ3BDa0M7RWdDL29DbEM7QXJDbTFJRjtBcUNqMUlFO0UvQi9FRTtBTm02SUo7O0FxQzEwSUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBckM2MElGOztBcUNuMElBO0VBQ0U7RUFDQTtBckNzMElGOztBcUNsMElBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGFoQ2dQTztFQ25XTDtBTnk3SUo7O0FxQ2wwSUE7OztFQUdFO0FyQ3EwSUY7O0FxQ2wwSUE7O0UvQnBISTtFQUNBO0FOMjdJSjs7QXFDbjBJQTs7RS9CM0dJO0VBQ0E7QU5tN0lKOztBcUM1eklFO0VBQ0Usc0JoQ2tsQ2dDO0FMNnVHcEM7QWFuNklJO0V3QmdHSjtJQVFJO0lBQ0E7RXJDK3pJRjtFcUM1eklFO0lBRUU7SUFDQTtFckM2eklKO0VxQzN6SUk7SUFDRTtJQUNBO0VyQzZ6SU47RXFDeHpJTTtJL0JwSko7SUFDQTtFTis4SUY7RXFDenpJUTs7SUFHRTtFckMweklWO0VxQ3h6SVE7O0lBR0U7RXJDeXpJVjtFcUNyeklNO0kvQnJKSjtJQUNBO0VONjhJRjtFcUN0eklROztJQUdFO0VyQ3V6SVY7RXFDcnpJUTs7SUFHRTtFckNzeklWO0FBQ0Y7O0FzQ3BnSkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VsQzRSSSxlQUxJO0VrQ3JSUixjakNNUztFaUNMVDtFQUNBLHNCakNMUztFaUNNVDtFaENLRTtFZ0NIRjtFakJBSSwrSmlCQ0o7QXRDdWdKRjtBcUJwZ0pNO0VpQmhCTjtJakJpQlE7RXJCdWdKTjtBQUNGO0FzQzFnSkU7RUFDRSxjakN5dkNzQztFaUN4dkN0Qyx5QmpDdXZDc0M7RWlDdHZDdEM7QXRDNGdKSjtBc0MxZ0pJO0VBQ0U7RUFDQSwwQmpDNHZDb0M7QUxneEcxQztBc0N2Z0pFO0VBQ0U7RUFDQSxjakNpdkNzQztFaUNodkN0QyxlakNndkNzQztFaUMvdUN0QztFQUNBO0VBQ0E7RUFDQTtFQUNBLHdCakMydUNzQztFZ0Jsd0NwQyxzQ2lCd0JGO0F0Q3lnSko7QXFCN2hKTTtFaUJXSjtJakJWTTtFckJnaUpOO0FBQ0Y7QXNDM2dKRTtFQUNFO0F0QzZnSko7QXNDMWdKRTtFQUNFO0VBQ0EscUJqQ2l6Qm9DO0VpQ2h6QnBDO0VBQ0Esa0RqQzhyQjRCO0FMODBIaEM7O0FzQ3hnSkE7RUFDRTtBdEMyZ0pGOztBc0N4Z0pBO0VBQ0Usc0JqQ3BEUztFaUNxRFQ7QXRDMmdKRjtBc0N6Z0pFO0VoQ25DRTtFQUNBO0FOK2lKSjtBc0MxZ0pJO0VoQ3RDQTtFQUNBO0FObWpKSjtBc0N6Z0pFO0VBQ0U7QXRDMmdKSjtBc0N2Z0pFO0VoQ2xDRTtFQUNBO0FONGlKSjtBc0N2Z0pNO0VoQ3RDRjtFQUNBO0FOZ2pKSjtBc0N0Z0pJO0VoQzNDQTtFQUNBO0FOb2pKSjs7QXNDcGdKQTtFQUNFO0F0Q3VnSkY7O0FzQzkvSUU7RUFDRTtBdENpZ0pKO0FzQzkvSUU7RUFDRTtFQUNBO0VoQ3hGQTtBTnlsSko7QXNDOS9JSTtFQUFnQjtBdENpZ0pwQjtBc0NoZ0pJO0VBQWU7QXRDbWdKbkI7QXNDamdKSTtFaEM5RkE7QU5rbUpKOztBdUNybkpBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsbUJsQ3cvQ2tDO0VrQ3QvQ2xDO0F2Q3VuSkY7O0F1Q2huSkU7RUFDRSxvQmxDNitDZ0M7QUxzb0dwQztBdUNqbkpJO0VBQ0U7RUFDQSxxQmxDeStDOEI7RWtDeCtDOUIsY2xDTEs7RWtDTUw7QXZDbW5KTjtBdUMvbUpFO0VBQ0UsY2xDWE87QUw0bkpYOztBd0Mxb0pBO0VBQ0U7RWhDR0E7RUFDQTtBUjJvSkY7O0F3QzNvSkE7RUFDRTtFQUNBO0VBQ0EsY25DOEJRO0VtQzdCUjtFQUNBLHNCbkNGUztFbUNHVDtFbkJLSSxxSW1CSko7QXhDOG9KRjtBcUJ0b0pNO0VtQmZOO0luQmdCUTtFckJ5b0pOO0FBQ0Y7QXdDanBKRTtFQUNFO0VBQ0EsY25DK2FzQztFbUM3YXRDLHlCbkNSTztFbUNTUCxxQm5DUk87QUwwcEpYO0F3Qy9vSkU7RUFDRTtFQUNBLGNuQ3Vhc0M7RW1DdGF0Qyx5Qm5DZk87RW1DZ0JQLFVuQzRxQ2dDO0VtQzNxQ2hDLGtEbkNzdEI0QjtBTDI3SGhDOztBd0M1b0pFO0VBQ0UsaUJuQytwQ2dDO0FMZy9HcEM7QXdDNW9KRTtFQUNFO0VBQ0EsV25DOUJPO0VpQkpULHlCakJrQ1E7RW1DRU4scUJuQ0ZNO0FMZ3BKVjtBd0Mzb0pFO0VBQ0UsY25DOUJPO0VtQytCUDtFQUNBLHNCbkN0Q087RW1DdUNQLHFCbkNwQ087QUxpckpYOztBeUN4ckpFO0VBQ0U7QXpDMnJKSjs7QXlDcHJKUTtFbkNxQ0o7RUFDQTtBTm1wSko7QXlDbnJKUTtFbkNpQko7RUFDQTtBTnFxSko7O0F5Q3JzSkU7RUFDRTtFckNnU0Usa0JBTEk7QUo4NklWO0F5Q2xzSlE7RW5DcUNKO0VBQ0E7QU5ncUpKO0F5Q2hzSlE7RW5DaUJKO0VBQ0E7QU5rckpKOztBeUNsdEpFO0VBQ0U7RXJDZ1NFLG1CQUxJO0FKMjdJVjtBeUMvc0pRO0VuQ3FDSjtFQUNBO0FONnFKSjtBeUM3c0pRO0VuQ2lCSjtFQUNBO0FOK3JKSjs7QTBDOXRKQTtFQUNFO0VBQ0E7RXRDOFJJLGlCQUxJO0VzQ3ZSUixnQnJDdWtCNEI7RXFDdGtCNUI7RUFDQSxXckNIUztFcUNJVDtFQUNBO0VBQ0E7RXBDS0U7QU42dEpKO0EwQzd0SkU7RUFDRTtBMUMrdEpKOztBMEMxdEpBO0VBQ0U7RUFDQTtBMUM2dEpGOztBMkNwdkpBO0VBQ0U7RUFDQTtFQUNBLG1CdENrNkM4QjtFc0NqNkM5QjtFckNXRTtBTjZ1Sko7O0EyQ252SkE7RUFFRTtBM0NxdkpGOztBMkNqdkpBO0VBQ0UsZ0J0QzRqQjRCO0FMd3JJOUI7O0EyQzV1SkE7RUFDRSxtQnRDbTVDOEI7QUw0MUdoQztBMkM1dUpFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0M4dUpKOztBMkMvdEpFO0VDbERBLGNEOENjO0VyQjVDZCx5QnFCMENtQjtFQzFDbkIscUJEMkNlO0EzQzB1SmpCO0E0Q254SkU7RUFDRTtBNUNxeEpKOztBMkN4dUpFO0VDbERBLGNEOENjO0VyQjVDZCx5QnFCMENtQjtFQzFDbkIscUJEMkNlO0EzQ212SmpCO0E0QzV4SkU7RUFDRTtBNUM4eEpKOztBMkNqdkpFO0VDbERBLGNEOENjO0VyQjVDZCx5QnFCMENtQjtFQzFDbkIscUJEMkNlO0EzQzR2SmpCO0E0Q3J5SkU7RUFDRTtBNUN1eUpKOztBMkMxdkpFO0VDbERBLGNEZ0RnQjtFckI5Q2hCLHlCcUIwQ21CO0VDMUNuQixxQkQyQ2U7QTNDcXdKakI7QTRDOXlKRTtFQUNFO0E1Q2d6Sko7O0EyQ253SkU7RUNsREEsY0RnRGdCO0VyQjlDaEIseUJxQjBDbUI7RUMxQ25CLHFCRDJDZTtBM0M4d0pqQjtBNEN2ekpFO0VBQ0U7QTVDeXpKSjs7QTJDNXdKRTtFQ2xEQSxjRDhDYztFckI1Q2QseUJxQjBDbUI7RUMxQ25CLHFCRDJDZTtBM0N1eEpqQjtBNENoMEpFO0VBQ0U7QTVDazBKSjs7QTJDcnhKRTtFQ2xEQSxjRGdEZ0I7RXJCOUNoQix5QnFCMENtQjtFQzFDbkIscUJEMkNlO0EzQ2d5SmpCO0E0Q3owSkU7RUFDRTtBNUMyMEpKOztBMkM5eEpFO0VDbERBLGNEOENjO0VyQjVDZCx5QnFCMENtQjtFQzFDbkIscUJEMkNlO0EzQ3l5SmpCO0E0Q2wxSkU7RUFDRTtBNUNvMUpKOztBNkN2MUpFO0VBQ0U7SUFBSywyQnhDazdDMkI7RUx5NkdsQztBQUNGO0E2Q3YxSkE7RUFDRTtFQUNBLFl4QzI2Q2tDO0V3QzE2Q2xDO0V6Q3dSSSxrQkFMSTtFeUNqUlIseUJ4Q0xTO0VDU1A7QU5zMUpKOztBNkNyMUpBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxXeENqQlM7RXdDa0JUO0VBQ0E7RUFDQSx5QnhDVVE7RWdCdEJKLDJCd0JhSjtBN0N3MUpGO0FxQmoySk07RXdCQU47SXhCQ1E7RXJCbzJKTjtBQUNGOztBNkMxMUpBO0V2QllFO0V1QlZBO0E3QzYxSkY7O0E2Q3oxSkU7RUFDRTtBN0M0MUpKO0E2Q3oxSk07RUFKSjtJQUtNO0U3QzQxSk47QUFDRjs7QThDcDRKQTtFQUNFO0VBQ0E7RUFHQTtFQUNBO0V4Q1NFO0FONjNKSjs7QThDbDRKQTtFQUNFO0VBQ0E7QTlDcTRKRjtBOENuNEpFO0VBRUU7RUFDQTtBOUNvNEpKOztBOEMxM0pBO0VBQ0U7RUFDQSxjekNsQlM7RXlDbUJUO0E5QzYzSkY7QThDMTNKRTtFQUVFO0VBQ0EsY3pDekJPO0V5QzBCUDtFQUNBLHlCekNqQ087QUw0NUpYO0E4Q3gzSkU7RUFDRSxjekM3Qk87RXlDOEJQLHlCekNyQ087QUwrNUpYOztBOENqM0pBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsY3pDM0NTO0V5QzRDVDtFQUNBLHNCekN0RFM7RXlDdURUO0E5Q28zSkY7QThDbDNKRTtFeENyQ0U7RUFDQTtBTjA1Sko7QThDbDNKRTtFeEMzQkU7RUFDQTtBTmc1Sko7QThDbDNKRTtFQUVFLGN6QzdETztFeUM4RFA7RUFDQSxzQnpDckVPO0FMdzdKWDtBOEMvMkpFO0VBQ0U7RUFDQSxXekMzRU87RXlDNEVQLHlCekM5Q007RXlDK0NOLHFCekMvQ007QUxnNkpWO0E4QzkySkU7RUFDRTtBOUNnM0pKO0E4QzkySkk7RUFDRTtFQUNBLHFCekN3YXdCO0FMdzhJOUI7O0E4Q2wySkk7RUFDRTtBOUNxMkpOO0E4Q2wySlE7RXhDckNKO0VBWkE7QU51NUpKO0E4Q2oySlE7RXhDdERKO0VBWUE7QU4rNEpKO0E4Q2gySlE7RUFDRTtBOUNrMkpWO0E4Qy8xSlE7RUFDRSxxQnpDdVlvQjtFeUN0WXBCO0E5Q2kySlY7QThDLzFKVTtFQUNFO0VBQ0Esc0J6Q2tZa0I7QUwrOUk5Qjs7QWFyNkpJO0VpQzRDQTtJQUNFO0U5QzYzSko7RThDMTNKTTtJeENyQ0o7SUFaQTtFTis2SkY7RThDejNKTTtJeEN0REo7SUFZQTtFTnU2SkY7RThDeDNKTTtJQUNFO0U5QzAzSlI7RThDdjNKTTtJQUNFLHFCekN1WW9CO0l5Q3RZcEI7RTlDeTNKUjtFOEN2M0pRO0lBQ0U7SUFDQSxzQnpDa1lrQjtFTHUvSTVCO0FBQ0Y7QWE5N0pJO0VpQzRDQTtJQUNFO0U5Q3E1Sko7RThDbDVKTTtJeENyQ0o7SUFaQTtFTnU4SkY7RThDajVKTTtJeEN0REo7SUFZQTtFTis3SkY7RThDaDVKTTtJQUNFO0U5Q2s1SlI7RThDLzRKTTtJQUNFLHFCekN1WW9CO0l5Q3RZcEI7RTlDaTVKUjtFOEMvNEpRO0lBQ0U7SUFDQSxzQnpDa1lrQjtFTCtnSjVCO0FBQ0Y7QWF0OUpJO0VpQzRDQTtJQUNFO0U5QzY2Sko7RThDMTZKTTtJeENyQ0o7SUFaQTtFTis5SkY7RThDejZKTTtJeEN0REo7SUFZQTtFTnU5SkY7RThDeDZKTTtJQUNFO0U5QzA2SlI7RThDdjZKTTtJQUNFLHFCekN1WW9CO0l5Q3RZcEI7RTlDeTZKUjtFOEN2NkpRO0lBQ0U7SUFDQSxzQnpDa1lrQjtFTHVpSjVCO0FBQ0Y7QWE5K0pJO0VpQzRDQTtJQUNFO0U5Q3E4Sko7RThDbDhKTTtJeENyQ0o7SUFaQTtFTnUvSkY7RThDajhKTTtJeEN0REo7SUFZQTtFTisrSkY7RThDaDhKTTtJQUNFO0U5Q2s4SlI7RThDLzdKTTtJQUNFLHFCekN1WW9CO0l5Q3RZcEI7RTlDaThKUjtFOEMvN0pRO0lBQ0U7SUFDQSxzQnpDa1lrQjtFTCtqSjVCO0FBQ0Y7QWF0Z0tJO0VpQzRDQTtJQUNFO0U5QzY5Sko7RThDMTlKTTtJeENyQ0o7SUFaQTtFTitnS0Y7RThDejlKTTtJeEN0REo7SUFZQTtFTnVnS0Y7RThDeDlKTTtJQUNFO0U5QzA5SlI7RThDdjlKTTtJQUNFLHFCekN1WW9CO0l5Q3RZcEI7RTlDeTlKUjtFOEN2OUpRO0lBQ0U7SUFDQSxzQnpDa1lrQjtFTHVsSjVCO0FBQ0Y7QThDNThKQTtFeEM5SEk7QU42a0tKO0E4QzU4SkU7RUFDRTtBOUM4OEpKO0E4QzU4Skk7RUFDRTtBOUM4OEpOOztBK0NsbUtFO0VBQ0UsY0RpS3lCO0VDaEt6Qix5QkQrSnNCO0E5Q3M4SjFCO0ErQ2xtS007RUFFRSxjRDJKcUI7RUMxSnJCO0EvQ21tS1I7QStDaG1LTTtFQUNFLFcxQ1JHO0UwQ1NILHlCRHFKcUI7RUNwSnJCLHFCRG9KcUI7QTlDODhKN0I7O0ErQ2huS0U7RUFDRSxjRGlLeUI7RUNoS3pCLHlCRCtKc0I7QTlDbzlKMUI7QStDaG5LTTtFQUVFLGNEMkpxQjtFQzFKckI7QS9DaW5LUjtBK0M5bUtNO0VBQ0UsVzFDUkc7RTBDU0gseUJEcUpxQjtFQ3BKckIscUJEb0pxQjtBOUM0OUo3Qjs7QStDOW5LRTtFQUNFLGNEaUt5QjtFQ2hLekIseUJEK0pzQjtBOUNrK0oxQjtBK0M5bktNO0VBRUUsY0QySnFCO0VDMUpyQjtBL0MrbktSO0ErQzVuS007RUFDRSxXMUNSRztFMENTSCx5QkRxSnFCO0VDcEpyQixxQkRvSnFCO0E5QzArSjdCOztBK0M1b0tFO0VBQ0UsY0RtSzJCO0VDbEszQix5QkQrSnNCO0E5Q2cvSjFCO0ErQzVvS007RUFFRSxjRDZKdUI7RUM1SnZCO0EvQzZvS1I7QStDMW9LTTtFQUNFLFcxQ1JHO0UwQ1NILHlCRHVKdUI7RUN0SnZCLHFCRHNKdUI7QTlDcy9KL0I7O0ErQzFwS0U7RUFDRSxjRG1LMkI7RUNsSzNCLHlCRCtKc0I7QTlDOC9KMUI7QStDMXBLTTtFQUVFLGNENkp1QjtFQzVKdkI7QS9DMnBLUjtBK0N4cEtNO0VBQ0UsVzFDUkc7RTBDU0gseUJEdUp1QjtFQ3RKdkIscUJEc0p1QjtBOUNvZ0svQjs7QStDeHFLRTtFQUNFLGNEaUt5QjtFQ2hLekIseUJEK0pzQjtBOUM0Z0sxQjtBK0N4cUtNO0VBRUUsY0QySnFCO0VDMUpyQjtBL0N5cUtSO0ErQ3RxS007RUFDRSxXMUNSRztFMENTSCx5QkRxSnFCO0VDcEpyQixxQkRvSnFCO0E5Q29oSzdCOztBK0N0cktFO0VBQ0UsY0RtSzJCO0VDbEszQix5QkQrSnNCO0E5QzBoSzFCO0ErQ3RyS007RUFFRSxjRDZKdUI7RUM1SnZCO0EvQ3VyS1I7QStDcHJLTTtFQUNFLFcxQ1JHO0UwQ1NILHlCRHVKdUI7RUN0SnZCLHFCRHNKdUI7QTlDZ2lLL0I7O0ErQ3BzS0U7RUFDRSxjRGlLeUI7RUNoS3pCLHlCRCtKc0I7QTlDd2lLMUI7QStDcHNLTTtFQUVFLGNEMkpxQjtFQzFKckI7QS9DcXNLUjtBK0Nsc0tNO0VBQ0UsVzFDUkc7RTBDU0gseUJEcUpxQjtFQ3BKckIscUJEb0pxQjtBOUNnaks3Qjs7QWdEanRLQTtFQUNFO0VBQ0EsVTNDcWpEMkI7RTJDcGpEM0IsVzNDb2pEMkI7RTJDbmpEM0I7RUFDQSxXM0NRUztFMkNQVDtFQUNBO0UxQ09FO0UwQ0xGLFkzQ3FqRDJCO0FMK3BIN0I7QWdEanRLRTtFQUNFO0VBQ0E7RUFDQSxhM0NnakR5QjtBTG1xSDdCO0FnRGh0S0U7RUFDRTtFQUNBLGtEM0N3dEI0QjtFMkN2dEI1QixVM0MyaUR5QjtBTHVxSDdCO0FnRC9zS0U7RUFFRTtFQUNBO0VBQ0EsYTNDcWlEeUI7QUwycUg3Qjs7QWdENXNLQTtFQUNFLGtEM0NpaUQyQjtBTDhxSDdCOztBaURydktBO0VBQ0UsWTVDdzFDa0M7RTRDdjFDbEM7RTdDbVNJLG1CQUxJO0U2QzNSUjtFQUNBLDJDNUN3MUNrQztFNEN2MUNsQztFQUNBO0VBQ0EsNkM1Q2doQjRCO0VDdGdCMUI7QU44dUtKO0FpRHJ2S0U7RUFDRTtBakR1dktKO0FpRHB2S0U7RUFDRTtBakRzdktKOztBaURsdktBO0VBQ0U7RUFDQTtFQUNBO0FqRHF2S0Y7QWlEbnZLRTtFQUNFLHNCNUNrZWtCO0FMbXhKdEI7O0FpRGp2S0E7RUFDRTtFQUNBO0VBQ0E7RUFDQSxjNUNyQlM7RTRDc0JULDJDNUNrMENrQztFNENqMENsQztFQUNBO0UzQ1ZFO0VBQ0E7QU4rdktKO0FpRG52S0U7RUFDRTtFQUNBLG9CNUMreUNnQztBTHM4SHBDOztBaURqdktBO0VBQ0UsZ0I1QzB5Q2tDO0U0Q3p5Q2xDO0FqRG92S0Y7O0FrRDl4S0E7RUFDRTtFQUNBO0VBQ0E7RUFDQSxhN0NzaUNrQztFNkNyaUNsQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7QWxEK3hLRjs7QWtEeHhLQTtFQUNFO0VBQ0E7RUFDQSxjN0NpMkNrQztFNkMvMUNsQztBbEQweEtGO0FrRHZ4S0U7RTdCbEJJLG1DNkJtQkY7RUFDQSw4QjdDdTNDZ0M7QUxrNkhwQztBcUJ6eUtNO0U2QmNKO0k3QmJNO0VyQjR5S047QUFDRjtBa0Q1eEtFO0VBQ0UsZTdDcTNDZ0M7QUx5NkhwQztBa0QxeEtFO0VBQ0Usc0I3Q2szQ2dDO0FMMDZIcEM7O0FrRHh4S0E7RUFDRTtBbEQyeEtGO0FrRHp4S0U7RUFDRTtFQUNBO0FsRDJ4S0o7QWtEeHhLRTtFQUNFO0FsRDB4S0o7O0FrRHR4S0E7RUFDRTtFQUNBO0VBQ0E7QWxEeXhLRjs7QWtEcnhLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQSxzQjdDcEVTO0U2Q3FFVDtFQUNBO0U1QzNERTtFNEMrREY7QWxEb3hLRjs7QWtEaHhLQTtFQ3BGRTtFQUNBO0VBQ0E7RUFDQSxhOUMyaUNrQztFOEMxaUNsQztFQUNBO0VBQ0Esc0I5Q1VTO0FMODFLWDtBbURyMktFO0VBQVM7QW5EdzJLWDtBbUR2MktFO0VBQVMsWTlDaTRDeUI7QUx5K0hwQzs7QWtEMXhLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esa0I3Q216Q2tDO0U2Q2x6Q2xDO0U1Q3RFRTtFQUNBO0FObzJLSjtBa0Q1eEtFO0VBQ0U7RUFDQTtBbEQ4eEtKOztBa0R6eEtBO0VBQ0U7RUFDQSxnQjdDdWU0QjtBTHF6SjlCOztBa0R2eEtBO0VBQ0U7RUFHQTtFQUNBLGE3QzhQTztBTDBoS1Q7O0FrRHB4S0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFNUN6RkU7RUFDQTtBTmkzS0o7QWtEbnhLRTtFQUNFO0FsRHF4S0o7O0FhaDJLSTtFcUNrRkY7SUFDRSxnQjdDcXdDZ0M7STZDcHdDaEM7RWxEa3hLRjs7RWtEL3dLQTtJQUNFO0VsRGt4S0Y7O0VrRC93S0E7SUFDRTtFbERreEtGOztFa0Qzd0tBO0lBQVksZ0I3Q292Q3NCO0VMMmhJbEM7QUFDRjtBYW4zS0k7RXFDdUdGOztJQUVFLGdCN0NndkNnQztFTCtoSWxDO0FBQ0Y7QWF6M0tJO0VxQzhHRjtJQUFZLGlCN0M0dUNzQjtFTG1pSWxDO0FBQ0Y7QWtEdndLSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FsRHl3S047QWtEdndLTTtFQUNFO0VBQ0E7RTVDM0tKO0FOcTdLSjtBa0R0d0tNO0U1Qy9LRjtBTnc3S0o7QWtEcndLTTtFQUNFO0FsRHV3S1I7QWtEcHdLTTtFNUN2TEY7QU44N0tKOztBYXI0S0k7RXFDMEdBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RWxEK3hLSjtFa0Q3eEtJO0lBQ0U7SUFDQTtJNUMzS0o7RU4yOEtGO0VrRDV4S0k7STVDL0tGO0VOODhLRjtFa0QzeEtJO0lBQ0U7RWxENnhLTjtFa0QxeEtJO0k1Q3ZMRjtFTm85S0Y7QUFDRjtBYTU1S0k7RXFDMEdBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RWxEcXpLSjtFa0RuektJO0lBQ0U7SUFDQTtJNUMzS0o7RU5pK0tGO0VrRGx6S0k7STVDL0tGO0VObytLRjtFa0RqektJO0lBQ0U7RWxEbXpLTjtFa0RoektJO0k1Q3ZMRjtFTjArS0Y7QUFDRjtBYWw3S0k7RXFDMEdBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RWxEMjBLSjtFa0R6MEtJO0lBQ0U7SUFDQTtJNUMzS0o7RU51L0tGO0VrRHgwS0k7STVDL0tGO0VOMC9LRjtFa0R2MEtJO0lBQ0U7RWxEeTBLTjtFa0R0MEtJO0k1Q3ZMRjtFTmdnTEY7QUFDRjtBYXg4S0k7RXFDMEdBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RWxEaTJLSjtFa0QvMUtJO0lBQ0U7SUFDQTtJNUMzS0o7RU42Z0xGO0VrRDkxS0k7STVDL0tGO0VOZ2hMRjtFa0Q3MUtJO0lBQ0U7RWxEKzFLTjtFa0Q1MUtJO0k1Q3ZMRjtFTnNoTEY7QUFDRjtBYTk5S0k7RXFDMEdBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RWxEdTNLSjtFa0RyM0tJO0lBQ0U7SUFDQTtJNUMzS0o7RU5taUxGO0VrRHAzS0k7STVDL0tGO0VOc2lMRjtFa0RuM0tJO0lBQ0U7RWxEcTNLTjtFa0RsM0tJO0k1Q3ZMRjtFTjRpTEY7QUFDRjtBb0QvakxBO0VBQ0U7RUFDQSxhL0NnakNrQztFK0MvaUNsQztFQUNBLFMvQ2t5Q2tDO0VnRHR5Q2xDLHNDaERra0I0QjtFZ0Roa0I1QjtFQUNBLGdCaEQya0I0QjtFZ0Qxa0I1QixnQmhEZ2xCNEI7RWdEL2tCNUI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWpEc1JJLG1CQUxJO0VnRHJSUjtFQUNBO0FwRDJrTEY7QW9EemtMRTtFQUFTLFkvQ3N4Q3lCO0FMc3pJcEM7QW9EMWtMRTtFQUNFO0VBQ0E7RUFDQSxhL0NzeENnQztFK0NyeENoQyxjL0NzeENnQztBTHN6SXBDO0FvRDFrTEk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBcEQ0a0xOOztBb0R2a0xBO0VBQ0U7QXBEMGtMRjtBb0R4a0xFO0VBQ0U7QXBEMGtMSjtBb0R4a0xJO0VBQ0U7RUFDQTtFQUNBLHNCL0N0Qks7QUxnbUxYOztBb0Rya0xBO0VBQ0U7QXBEd2tMRjtBb0R0a0xFO0VBQ0U7RUFDQSxhL0N3dkNnQztFK0N2dkNoQyxjL0NzdkNnQztBTGsxSXBDO0FvRHRrTEk7RUFDRTtFQUNBO0VBQ0Esd0IvQ3RDSztBTDhtTFg7O0FvRG5rTEE7RUFDRTtBcERza0xGO0FvRHBrTEU7RUFDRTtBcERza0xKO0FvRHBrTEk7RUFDRTtFQUNBO0VBQ0EseUIvQ3BESztBTDBuTFg7O0FvRGprTEE7RUFDRTtBcERva0xGO0FvRGxrTEU7RUFDRTtFQUNBLGEvQzB0Q2dDO0UrQ3p0Q2hDLGMvQ3d0Q2dDO0FMNDJJcEM7QW9EbGtMSTtFQUNFO0VBQ0E7RUFDQSx1Qi9DcEVLO0FMd29MWDs7QW9EL2lMQTtFQUNFLGdCL0NvckNrQztFK0NuckNsQztFQUNBLFcvQ3RHUztFK0N1R1Q7RUFDQSxzQi9DOUZTO0VDQ1A7QU5ncExKOztBc0RucUxBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsYWpEOGlDa0M7RWlEN2lDbEM7RUFDQSxnQmpEd3pDa0M7RWdEN3pDbEMsc0NoRGtrQjRCO0VnRGhrQjVCO0VBQ0EsZ0JoRDJrQjRCO0VnRDFrQjVCLGdCaERnbEI0QjtFZ0Qva0I1QjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFakRzUkksbUJBTEk7RWtEcFJSO0VBQ0Esc0JqRExTO0VpRE1UO0VBQ0E7RWhESUU7QU42cUxKO0FzRDdxTEU7RUFDRTtFQUNBO0VBQ0EsV2pEd3pDZ0M7RWlEdnpDaEMsY2pEd3pDZ0M7QUx1M0lwQztBc0Q3cUxJO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEQ4cUxOOztBc0R4cUxFO0VBQ0U7QXREMnFMSjtBc0R6cUxJO0VBQ0U7RUFDQTtFQUNBLHFDakR1eUM4QjtBTG80SXBDO0FzRHhxTEk7RUFDRSxXakRzZHdCO0VpRHJkeEI7RUFDQSxzQmpEekNLO0FMbXRMWDs7QXNEcHFMRTtFQUNFO0VBQ0EsYWpEc3hDZ0M7RWlEcnhDaEMsWWpEb3hDZ0M7QUxtNUlwQztBc0RycUxJO0VBQ0U7RUFDQTtFQUNBLHVDakRteEM4QjtBTG81SXBDO0FzRHBxTEk7RUFDRSxTakRrY3dCO0VpRGpjeEI7RUFDQSx3QmpEN0RLO0FMbXVMWDs7QXNEaHFMRTtFQUNFO0F0RG1xTEo7QXNEanFMSTtFQUNFO0VBQ0E7RUFDQSx3Q2pEaXdDOEI7QUxrNklwQztBc0RocUxJO0VBQ0UsUWpEZ2J3QjtFaUQvYXhCO0VBQ0EseUJqRC9FSztBTGl2TFg7QXNEN3BMRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsV2pENnVDZ0M7RWlENXVDaEM7RUFDQTtFQUNBO0F0RCtwTEo7O0FzRDFwTEU7RUFDRTtFQUNBLGFqRG91Q2dDO0VpRG51Q2hDLFlqRGt1Q2dDO0FMMjdJcEM7QXNEM3BMSTtFQUNFO0VBQ0E7RUFDQSxzQ2pEaXVDOEI7QUw0N0lwQztBc0QxcExJO0VBQ0UsVWpEZ1p3QjtFaUQvWXhCO0VBQ0EsdUJqRC9HSztBTDJ3TFg7O0FzRHZvTEE7RUFDRTtFQUNBO0VsRHVKSSxlQUxJO0VrRC9JUix5QmpEb3JDa0M7RWlEbnJDbEM7RWhEdEhFO0VBQ0E7QU5nd0xKO0FzRHhvTEU7RUFDRTtBdEQwb0xKOztBc0R0b0xBO0VBQ0U7RUFDQSxjakQzSVM7QUxveExYOztBdUR4eExBO0VBQ0U7QXZEMnhMRjs7QXVEeHhMQTtFQUNFO0F2RDJ4TEY7O0F1RHh4TEE7RUFDRTtFQUNBO0VBQ0E7QXZEMnhMRjtBd0RqekxFO0VBQ0U7RUFDQTtFQUNBO0F4RG16TEo7O0F1RDV4TEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWxDbEJJLHNDa0NtQko7QXZEK3hMRjtBcUI5eUxNO0VrQ1FOO0lsQ1BRO0VyQml6TE47QUFDRjs7QXVEanlMQTs7O0VBR0U7QXZEb3lMRjs7QXVEanlMQTtBQUNBOztFQUVFO0F2RG95TEY7O0F1RGp5TEE7O0VBRUU7QXZEb3lMRjs7QXVEanlMQTtBQVFFO0VBQ0U7RUFDQTtFQUNBO0F2RDZ4TEo7QXVEMXhMRTs7O0VBR0U7RUFDQTtBdkQ0eExKO0F1RHp4TEU7O0VBRUU7RUFDQTtFbEMvREUsMkJrQ2dFRjtBdkQyeExKO0FxQnYxTE07RWtDd0RKOztJbEN2RE07RXJCMjFMTjtBQUNGOztBdUR4eExBOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0EsVWxEczZDbUM7RWtEcjZDbkM7RUFDQSxXbEQ3RlM7RWtEOEZUO0VBQ0E7RUFDQTtFQUNBLFlsRGk2Q21DO0VnQjEvQy9CLDhCa0MwRko7QXZEMHhMRjtBcUJoM0xNO0VrQ3FFTjs7SWxDcEVRO0VyQm8zTE47QUFDRjtBdUQ3eExFOzs7RUFFRSxXbER2R087RWtEd0dQO0VBQ0E7RUFDQSxZbER5NUNpQztBTHU0SXJDOztBdUQ3eExBO0VBQ0U7QXZEZ3lMRjs7QXVEN3hMQTtFQUNFO0F2RGd5TEY7O0F1RDN4TEE7O0VBRUU7RUFDQSxXbEQwNUNtQztFa0R6NUNuQyxZbER5NUNtQztFa0R4NUNuQztFQUNBO0VBQ0E7QXZEOHhMRjs7QXVEM3hMQTs7Ozs7OztHQUFBO0FBUUE7RUFDRTtBdkQ4eExGOztBdUQ1eExBO0VBQ0U7QXZEK3hMRjs7QXVEdnhMQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQSxpQmxEazJDbUM7RWtEajJDbkM7RUFDQSxnQmxEZzJDbUM7RWtELzFDbkM7QXZEeXhMRjtBdUR2eExFO0VBQ0U7RUFDQTtFQUNBLFdsRCsxQ2lDO0VrRDkxQ2pDLFdsRCsxQ2lDO0VrRDkxQ2pDO0VBQ0EsaUJsRCsxQ2lDO0VrRDkxQ2pDLGdCbEQ4MUNpQztFa0Q3MUNqQztFQUNBO0VBQ0Esc0JsRDlLTztFa0QrS1A7RUFDQTtFQUVBO0VBQ0E7RUFDQSxZbERzMUNpQztFZ0JsZ0QvQiw2QmtDNktGO0F2RHd4TEo7QXFCajhMTTtFa0N3Sko7SWxDdkpNO0VyQm84TE47QUFDRjtBdUQxeExFO0VBQ0UsVWxEbTFDaUM7QUx5OElyQzs7QXVEbnhMQTtFQUNFO0VBQ0E7RUFDQSxlbEQ2MENtQztFa0Q1MENuQztFQUNBLG9CbEQwMENtQztFa0R6MENuQyx1QmxEeTBDbUM7RWtEeDBDbkMsV2xEek1TO0VrRDBNVDtBdkRzeExGOztBdURoeExFOztFQUVFLGdDbEQ0MENpQztBTHU4SXJDO0F1RGh4TEU7RUFDRSxzQmxENU1PO0FMODlMWDtBdUQvd0xFO0VBQ0UsV2xEaE5PO0FMaStMWDs7QXlEOStMQTtFQUNFO0lBQUs7RXpEay9MTDtBQUNGO0F5RC8rTEE7RUFDRTtFQUNBLFdwRGlpRHdCO0VvRGhpRHhCLFlwRGdpRHdCO0VvRC9oRHhCLHdCcERpaUR3QjtFb0RoaUR4QjtFQUNBO0VBRUE7RUFDQTtBekRnL0xGOztBeUQ3K0xBO0VBQ0UsV3BENGhEd0I7RW9EM2hEeEIsWXBEMmhEd0I7RW9EMWhEeEIsbUJwRDRoRHdCO0FMbzlJMUI7O0F5RHgrTEE7RUFDRTtJQUNFO0V6RDIrTEY7RXlEeitMQTtJQUNFO0lBQ0E7RXpEMitMRjtBQUNGO0F5RHYrTEE7RUFDRTtFQUNBLFdwRCsvQ3dCO0VvRDkvQ3hCLFlwRDgvQ3dCO0VvRDcvQ3hCLHdCcEQrL0N3QjtFb0Q5L0N4QjtFQUVBO0VBQ0E7RUFDQTtBekR3K0xGOztBeURyK0xBO0VBQ0UsV3BEMC9Dd0I7RW9Eei9DeEIsWXBEeS9Dd0I7QUwrK0kxQjs7QXlEcCtMRTtFQUNFOztJQUVFO0V6RHUrTEo7QUFDRjtBMER6aU1BO0VBQ0U7RUFDQTtFQUNBLGFyRDRpQ2tDO0VxRDNpQ2xDO0VBQ0E7RUFDQTtFQUVBO0VBQ0Esc0JyRERTO0VxREVUO0VBQ0E7RXJDS0ksc0NxQ0hKO0ExRHlpTUY7QXFCbGlNTTtFcUNwQk47SXJDcUJRO0VyQnFpTU47QUFDRjs7QTBEM2lNQTtFUGRFO0VBQ0E7RUFDQTtFQUNBLGE5Q3lpQ2tDO0U4Q3hpQ2xDO0VBQ0E7RUFDQSxzQjlDVVM7QUxtak1YO0FtRDFqTUU7RUFBUztBbkQ2ak1YO0FtRDVqTUU7RUFBUyxZOUNpNEN5QjtBTDhySnBDOztBMER2ak1BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTFEMGpNRjtBMER4ak1FO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTFEMGpNSjs7QTBEdGpNQTtFQUNFO0VBQ0EsZ0JyRGlqQjRCO0FMd2dMOUI7O0EwRHRqTUE7RUFDRTtFQUNBO0VBQ0E7QTFEeWpNRjs7QTBEdGpNQTtFQUNFO0VBQ0E7RUFDQSxZckRnaURrQztFcUQvaERsQztFQUNBO0ExRHlqTUY7O0EwRHRqTUE7RUFDRTtFQUNBO0VBQ0EsWXJEd2hEa0M7RXFEdmhEbEM7RUFDQTtBMUR5ak1GOztBMER0ak1BO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsWXJEZ2hEa0M7RXFEL2dEbEM7RUFDQTtFQUNBO0ExRHlqTUY7O0EwRHRqTUE7RUFDRTtFQUNBO0VBQ0EsWXJEdWdEa0M7RXFEdGdEbEM7RUFDQTtFQUNBO0ExRHlqTUY7O0EwRHRqTUE7RUFDRTtBMUR5ak1GOztBMkQxb01BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFl0RHd0Q2tDO0FMcTdKcEM7QTJEM29NRTtFQUNFO0VBQ0E7QTNENm9NSjs7QTJEeG9NQTtFQUNFO0EzRDJvTUY7O0EyRHhvTUE7RUFDRTtBM0Qyb01GOztBMkR4b01BO0VBQ0U7QTNEMm9NRjs7QTJEdG9NRTtFQUNFO0EzRHlvTUo7O0EyRHJvTUE7RUFDRTtJQUNFLFl0RDJyQ2dDO0VMNjhKbEM7QUFDRjtBMkRyb01BO0VBQ0U7RUFDQTtFQUNBO0EzRHVvTUY7O0EyRHBvTUE7RUFDRTtJQUNFO0UzRHVvTUY7QUFDRjtBd0R0ck1FO0VBQ0U7RUFDQTtFQUNBO0F4RHdyTUo7O0E0RDVyTUU7RUFDRSxjdkQ4RVc7QUxpbk1mO0E0RDVyTU07RUFFRTtBNUQ2ck1SOztBNERuc01FO0VBQ0UsY3ZEOEVXO0FMd25NZjtBNERuc01NO0VBRUU7QTVEb3NNUjs7QTREMXNNRTtFQUNFLGN2RDhFVztBTCtuTWY7QTREMXNNTTtFQUVFO0E1RDJzTVI7O0E0RGp0TUU7RUFDRSxjdkQ4RVc7QUxzb01mO0E0RGp0TU07RUFFRTtBNURrdE1SOztBNER4dE1FO0VBQ0UsY3ZEOEVXO0FMNm9NZjtBNER4dE1NO0VBRUU7QTVEeXRNUjs7QTREL3RNRTtFQUNFLGN2RDhFVztBTG9wTWY7QTREL3RNTTtFQUVFO0E1RGd1TVI7O0E0RHR1TUU7RUFDRSxjdkQ4RVc7QUwycE1mO0E0RHR1TU07RUFFRTtBNUR1dU1SOztBNEQ3dU1FO0VBQ0UsY3ZEOEVXO0FMa3FNZjtBNEQ3dU1NO0VBRUU7QTVEOHVNUjs7QTZEbnZNQTtFQUNFO0VBQ0E7QTdEc3ZNRjtBNkRwdk1FO0VBQ0U7RUFDQTtFQUNBO0E3RHN2TUo7QTZEbnZNRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdEcXZNSjs7QTZEaHZNRTtFQUNFO0E3RG12TUo7O0E2RHB2TUU7RUFDRTtBN0R1dk1KOztBNkR4dk1FO0VBQ0U7QTdEMnZNSjs7QTZENXZNRTtFQUNFO0E3RCt2TUo7O0E4RHB4TUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGF6RHNpQ2tDO0FMaXZLcEM7O0E4RHB4TUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGF6RDhoQ2tDO0FMeXZLcEM7O0E4RC93TUk7RUFDRTtFQUNBO0VBQ0EsYXpEa2hDOEI7QUxnd0twQzs7QWE3dU1JO0VpRHhDQTtJQUNFO0lBQ0E7SUFDQSxhekRraEM4QjtFTHV3S2xDO0FBQ0Y7QWFydk1JO0VpRHhDQTtJQUNFO0lBQ0E7SUFDQSxhekRraEM4QjtFTDh3S2xDO0FBQ0Y7QWE1dk1JO0VpRHhDQTtJQUNFO0lBQ0E7SUFDQSxhekRraEM4QjtFTHF4S2xDO0FBQ0Y7QWFud01JO0VpRHhDQTtJQUNFO0lBQ0E7SUFDQSxhekRraEM4QjtFTDR4S2xDO0FBQ0Y7QWExd01JO0VpRHhDQTtJQUNFO0lBQ0E7SUFDQSxhekRraEM4QjtFTG15S2xDO0FBQ0Y7QStELzBNQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0EvRGkxTUY7O0ErRDkwTUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBL0RpMU1GOztBZ0V6MU1BOztFQ0lFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakUwMU1GOztBa0VyMk1FO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFU3RHdic0M7RTZEdmJ0QztBbEV3Mk1KOztBbUVoM01BO0VDQUU7RUFDQTtFQUNBO0FwRW8zTUY7O0FxRTEzTUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsYWhFaXBCNEI7QUw0dUw5Qjs7QXNFcDBNUTtFQU9JO0F0RWkwTVo7O0FzRXgwTVE7RUFPSTtBdEVxME1aOztBc0U1ME1RO0VBT0k7QXRFeTBNWjs7QXNFaDFNUTtFQU9JO0F0RTYwTVo7O0FzRXAxTVE7RUFPSTtBdEVpMU1aOztBc0V4MU1RO0VBT0k7QXRFcTFNWjs7QXNFNTFNUTtFQU9JO0F0RXkxTVo7O0FzRWgyTVE7RUFPSTtBdEU2MU1aOztBc0VwMk1RO0VBT0k7QXRFaTJNWjs7QXNFeDJNUTtFQU9JO0F0RXEyTVo7O0FzRTUyTVE7RUFPSTtBdEV5Mk1aOztBc0VoM01RO0VBT0k7QXRFNjJNWjs7QXNFcDNNUTtFQU9JO0F0RWkzTVo7O0FzRXgzTVE7RUFPSTtBdEVxM01aOztBc0U1M01RO0VBT0k7QXRFeTNNWjs7QXNFaDRNUTtFQU9JO0F0RTYzTVo7O0FzRXA0TVE7RUFPSTtBdEVpNE1aOztBc0V4NE1RO0VBT0k7QXRFcTRNWjs7QXNFNTRNUTtFQU9JO0F0RXk0TVo7O0FzRWg1TVE7RUFPSTtBdEU2NE1aOztBc0VwNU1RO0VBT0k7QXRFaTVNWjs7QXNFeDVNUTtFQU9JO0F0RXE1TVo7O0FzRTU1TVE7RUFPSTtBdEV5NU1aOztBc0VoNk1RO0VBT0k7QXRFNjVNWjs7QXNFcDZNUTtFQU9JO0F0RWk2TVo7O0FzRXg2TVE7RUFPSTtBdEVxNk1aOztBc0U1Nk1RO0VBT0k7QXRFeTZNWjs7QXNFaDdNUTtFQU9JO0F0RTY2TVo7O0FzRXA3TVE7RUFPSTtBdEVpN01aOztBc0V4N01RO0VBT0k7QXRFcTdNWjs7QXNFNTdNUTtFQU9JO0F0RXk3TVo7O0FzRWg4TVE7RUFPSTtBdEU2N01aOztBc0VwOE1RO0VBT0k7QXRFaThNWjs7QXNFeDhNUTtFQU9JO0F0RXE4TVo7O0FzRTU4TVE7RUFPSTtBdEV5OE1aOztBc0VoOU1RO0VBT0k7QXRFNjhNWjs7QXNFcDlNUTtFQU9JO0F0RWk5TVo7O0FzRXg5TVE7RUFPSTtBdEVxOU1aOztBc0U1OU1RO0VBT0k7QXRFeTlNWjs7QXNFaCtNUTtFQU9JO0F0RTY5TVo7O0FzRXArTVE7RUFPSTtBdEVpK01aOztBc0V4K01RO0VBT0k7QXRFcStNWjs7QXNFNStNUTtFQU9JO0F0RXkrTVo7O0FzRWgvTVE7RUFPSTtBdEU2K01aOztBc0VwL01RO0VBT0k7QXRFaS9NWjs7QXNFeC9NUTtFQU9JO0F0RXEvTVo7O0FzRTUvTVE7RUFPSTtBdEV5L01aOztBc0VoZ05RO0VBT0k7QXRFNi9NWjs7QXNFcGdOUTtFQU9JO0F0RWlnTlo7O0FzRXhnTlE7RUFPSTtBdEVxZ05aOztBc0U1Z05RO0VBT0k7QXRFeWdOWjs7QXNFaGhOUTtFQU9JO0F0RTZnTlo7O0FzRXBoTlE7RUFPSTtBdEVpaE5aOztBc0V4aE5RO0VBT0k7QXRFcWhOWjs7QXNFNWhOUTtFQU9JO0F0RXloTlo7O0FzRWhpTlE7RUFPSTtBdEU2aE5aOztBc0VwaU5RO0VBT0k7QXRFaWlOWjs7QXNFeGlOUTtFQU9JO0F0RXFpTlo7O0FzRTVpTlE7RUFPSTtBdEV5aU5aOztBc0Voak5RO0VBT0k7QXRFNmlOWjs7QXNFcGpOUTtFQU9JO0F0RWlqTlo7O0FzRXhqTlE7RUFPSTtBdEVxak5aOztBc0U1ak5RO0VBT0k7QXRFeWpOWjs7QXNFaGtOUTtFQU9JO0F0RTZqTlo7O0FzRXBrTlE7RUFPSTtBdEVpa05aOztBc0V4a05RO0VBT0k7QXRFcWtOWjs7QXNFNWtOUTtFQU9JO0F0RXlrTlo7O0FzRWhsTlE7RUFPSTtBdEU2a05aOztBc0VwbE5RO0VBT0k7QXRFaWxOWjs7QXNFeGxOUTtFQU9JO0F0RXFsTlo7O0FzRTVsTlE7RUFPSTtBdEV5bE5aOztBc0VobU5RO0VBT0k7QXRFNmxOWjs7QXNFcG1OUTtFQU9JO0F0RWltTlo7O0FzRXhtTlE7RUFPSTtBdEVxbU5aOztBc0U1bU5RO0VBT0k7QXRFeW1OWjs7QXNFaG5OUTtFQU9JO0F0RTZtTlo7O0FzRXBuTlE7RUFPSTtBdEVpbk5aOztBc0V4bk5RO0VBT0k7QXRFcW5OWjs7QXNFNW5OUTtFQU9JO0F0RXluTlo7O0FzRWhvTlE7RUFPSTtBdEU2bk5aOztBc0Vwb05RO0VBT0k7QXRFaW9OWjs7QXNFeG9OUTtFQU9JO0F0RXFvTlo7O0FzRTVvTlE7RUFPSTtBdEV5b05aOztBc0VocE5RO0VBT0k7QXRFNm9OWjs7QXNFcHBOUTtFQU9JO0F0RWlwTlo7O0FzRXhwTlE7RUFPSTtBdEVxcE5aOztBc0U1cE5RO0VBT0k7QXRFeXBOWjs7QXNFaHFOUTtFQU9JO0F0RTZwTlo7O0FzRXBxTlE7RUFPSTtBdEVpcU5aOztBc0V4cU5RO0VBT0k7QXRFcXFOWjs7QXNFNXFOUTtFQU9JO0F0RXlxTlo7O0FzRWhyTlE7RUFPSTtBdEU2cU5aOztBc0Vwck5RO0VBT0k7QXRFaXJOWjs7QXNFeHJOUTtFQU9JO0F0RXFyTlo7O0FzRTVyTlE7RUFPSTtBdEV5ck5aOztBc0Voc05RO0VBT0k7QXRFNnJOWjs7QXNFcHNOUTtFQU9JO0F0RWlzTlo7O0FzRXhzTlE7RUFPSTtBdEVxc05aOztBc0U1c05RO0VBT0k7QXRFeXNOWjs7QXNFaHROUTtFQU9JO0F0RTZzTlo7O0FzRXB0TlE7RUFPSTtBdEVpdE5aOztBc0V4dE5RO0VBT0k7QXRFcXROWjs7QXNFNXROUTtFQU9JO0F0RXl0Tlo7O0FzRWh1TlE7RUFPSTtBdEU2dE5aOztBc0VwdU5RO0VBT0k7QXRFaXVOWjs7QXNFeHVOUTtFQU9JO0F0RXF1Tlo7O0FzRTV1TlE7RUFPSTtBdEV5dU5aOztBc0Vodk5RO0VBT0k7QXRFNnVOWjs7QXNFcHZOUTtFQU9JO0F0RWl2Tlo7O0FzRXh2TlE7RUFPSTtBdEVxdk5aOztBc0U1dk5RO0VBT0k7QXRFeXZOWjs7QXNFaHdOUTtFQU9JO0F0RTZ2Tlo7O0FzRXB3TlE7RUFPSTtBdEVpd05aOztBc0V4d05RO0VBT0k7QXRFcXdOWjs7QXNFNXdOUTtFQU9JO0F0RXl3Tlo7O0FzRWh4TlE7RUFPSTtBdEU2d05aOztBc0VweE5RO0VBT0k7QXRFaXhOWjs7QXNFeHhOUTtFQU9JO0F0RXF4Tlo7O0FzRTV4TlE7RUFPSTtBdEV5eE5aOztBc0VoeU5RO0VBT0k7QXRFNnhOWjs7QXNFcHlOUTtFQU9JO0F0RWl5Tlo7O0FzRXh5TlE7RUFPSTtBdEVxeU5aOztBc0U1eU5RO0VBT0k7QXRFeXlOWjs7QXNFaHpOUTtFQU9JO0F0RTZ5Tlo7O0FzRXB6TlE7RUFPSTtBdEVpek5aOztBc0V4ek5RO0VBT0k7QXRFcXpOWjs7QXNFNXpOUTtFQU9JO0F0RXl6Tlo7O0FzRWgwTlE7RUFPSTtBdEU2ek5aOztBc0VwME5RO0VBT0k7QXRFaTBOWjs7QXNFeDBOUTtFQU9JO0F0RXEwTlo7O0FzRTUwTlE7RUFPSTtBdEV5ME5aOztBc0VoMU5RO0VBT0k7QXRFNjBOWjs7QXNFcDFOUTtFQU9JO0F0RWkxTlo7O0FzRXgxTlE7RUFPSTtBdEVxMU5aOztBc0U1MU5RO0VBT0k7QXRFeTFOWjs7QXNFaDJOUTtFQU9JO0F0RTYxTlo7O0FzRXAyTlE7RUFPSTtBdEVpMk5aOztBc0V4Mk5RO0VBT0k7QXRFcTJOWjs7QXNFNTJOUTtFQU9JO0F0RXkyTlo7O0FzRWgzTlE7RUFPSTtBdEU2Mk5aOztBc0VwM05RO0VBT0k7QXRFaTNOWjs7QXNFeDNOUTtFQU9JO0F0RXEzTlo7O0FzRTUzTlE7RUFPSTtBdEV5M05aOztBc0VoNE5RO0VBT0k7QXRFNjNOWjs7QXNFcDROUTtFQU9JO0F0RWk0Tlo7O0FzRXg0TlE7RUFPSTtBdEVxNE5aOztBc0U1NE5RO0VBT0k7QXRFeTROWjs7QXNFaDVOUTtFQU9JO0F0RTY0Tlo7O0FzRXA1TlE7RUFPSTtFQUFBO0F0RWs1Tlo7O0FzRXo1TlE7RUFPSTtFQUFBO0F0RXU1Tlo7O0FzRTk1TlE7RUFPSTtFQUFBO0F0RTQ1Tlo7O0FzRW42TlE7RUFPSTtFQUFBO0F0RWk2Tlo7O0FzRXg2TlE7RUFPSTtFQUFBO0F0RXM2Tlo7O0FzRTc2TlE7RUFPSTtFQUFBO0F0RTI2Tlo7O0FzRWw3TlE7RUFPSTtFQUFBO0F0RWc3Tlo7O0FzRXY3TlE7RUFPSTtFQUFBO0F0RXE3Tlo7O0FzRTU3TlE7RUFPSTtFQUFBO0F0RTA3Tlo7O0FzRWo4TlE7RUFPSTtFQUFBO0F0RSs3Tlo7O0FzRXQ4TlE7RUFPSTtFQUFBO0F0RW84Tlo7O0FzRTM4TlE7RUFPSTtFQUFBO0F0RXk4Tlo7O0FzRWg5TlE7RUFPSTtFQUFBO0F0RTg4Tlo7O0FzRXI5TlE7RUFPSTtFQUFBO0F0RW05Tlo7O0FzRTE5TlE7RUFPSTtBdEV1OU5aOztBc0U5OU5RO0VBT0k7QXRFMjlOWjs7QXNFbCtOUTtFQU9JO0F0RSs5Tlo7O0FzRXQrTlE7RUFPSTtBdEVtK05aOztBc0UxK05RO0VBT0k7QXRFdStOWjs7QXNFOStOUTtFQU9JO0F0RTIrTlo7O0FzRWwvTlE7RUFPSTtBdEUrK05aOztBc0V0L05RO0VBT0k7QXRFbS9OWjs7QXNFMS9OUTtFQU9JO0F0RXUvTlo7O0FzRTkvTlE7RUFPSTtBdEUyL05aOztBc0VsZ09RO0VBT0k7QXRFKy9OWjs7QXNFdGdPUTtFQU9JO0F0RW1nT1o7O0FzRTFnT1E7RUFPSTtBdEV1Z09aOztBc0U5Z09RO0VBT0k7QXRFMmdPWjs7QXNFbGhPUTtFQU9JO0F0RStnT1o7O0FzRXRoT1E7RUFPSTtBdEVtaE9aOztBc0UxaE9RO0VBT0k7QXRFdWhPWjs7QXNFOWhPUTtFQU9JO0F0RTJoT1o7O0FzRWxpT1E7RUFPSTtBdEUraE9aOztBc0V0aU9RO0VBT0k7QXRFbWlPWjs7QXNFMWlPUTtFQU9JO0F0RXVpT1o7O0FzRTlpT1E7RUFPSTtBdEUyaU9aOztBc0Vsak9RO0VBT0k7QXRFK2lPWjs7QXNFdGpPUTtFQU9JO0F0RW1qT1o7O0FzRTFqT1E7RUFPSTtBdEV1ak9aOztBc0U5ak9RO0VBT0k7QXRFMmpPWjs7QXNFbGtPUTtFQU9JO0F0RStqT1o7O0FzRXRrT1E7RUFPSTtBdEVta09aOztBc0Uxa09RO0VBT0k7QXRFdWtPWjs7QXNFOWtPUTtFQU9JO0F0RTJrT1o7O0FzRWxsT1E7RUFPSTtBdEUra09aOztBc0V0bE9RO0VBT0k7QXRFbWxPWjs7QXNFMWxPUTtFQU9JO0F0RXVsT1o7O0FzRTlsT1E7RUFPSTtBdEUybE9aOztBc0VsbU9RO0VBT0k7RUFBQTtBdEVnbU9aOztBc0V2bU9RO0VBT0k7RUFBQTtBdEVxbU9aOztBc0U1bU9RO0VBT0k7RUFBQTtBdEUwbU9aOztBc0Vqbk9RO0VBT0k7RUFBQTtBdEUrbU9aOztBc0V0bk9RO0VBT0k7RUFBQTtBdEVvbk9aOztBc0Uzbk9RO0VBT0k7RUFBQTtBdEV5bk9aOztBc0Vob09RO0VBT0k7RUFBQTtBdEU4bk9aOztBc0Vyb09RO0VBT0k7RUFBQTtBdEVtb09aOztBc0Uxb09RO0VBT0k7RUFBQTtBdEV3b09aOztBc0Uvb09RO0VBT0k7RUFBQTtBdEU2b09aOztBc0VwcE9RO0VBT0k7RUFBQTtBdEVrcE9aOztBc0V6cE9RO0VBT0k7RUFBQTtBdEV1cE9aOztBc0U5cE9RO0VBT0k7QXRFMnBPWjs7QXNFbHFPUTtFQU9JO0F0RStwT1o7O0FzRXRxT1E7RUFPSTtBdEVtcU9aOztBc0UxcU9RO0VBT0k7QXRFdXFPWjs7QXNFOXFPUTtFQU9JO0F0RTJxT1o7O0FzRWxyT1E7RUFPSTtBdEUrcU9aOztBc0V0ck9RO0VBT0k7QXRFbXJPWjs7QXNFMXJPUTtFQU9JO0F0RXVyT1o7O0FzRTlyT1E7RUFPSTtBdEUyck9aOztBc0Vsc09RO0VBT0k7QXRFK3JPWjs7QXNFdHNPUTtFQU9JO0F0RW1zT1o7O0FzRTFzT1E7RUFPSTtBdEV1c09aOztBc0U5c09RO0VBT0k7QXRFMnNPWjs7QXNFbHRPUTtFQU9JO0F0RStzT1o7O0FzRXR0T1E7RUFPSTtBdEVtdE9aOztBc0UxdE9RO0VBT0k7QXRFdXRPWjs7QXNFOXRPUTtFQU9JO0F0RTJ0T1o7O0FzRWx1T1E7RUFPSTtBdEUrdE9aOztBc0V0dU9RO0VBT0k7QXRFbXVPWjs7QXNFMXVPUTtFQU9JO0F0RXV1T1o7O0FzRTl1T1E7RUFPSTtBdEUydU9aOztBc0Vsdk9RO0VBT0k7QXRFK3VPWjs7QXNFdHZPUTtFQU9JO0F0RW12T1o7O0FzRTF2T1E7RUFPSTtBdEV1dk9aOztBc0U5dk9RO0VBT0k7QXRFMnZPWjs7QXNFbHdPUTtFQU9JO0F0RSt2T1o7O0FzRXR3T1E7RUFPSTtBdEVtd09aOztBc0Uxd09RO0VBT0k7QXRFdXdPWjs7QXNFOXdPUTtFQU9JO0F0RTJ3T1o7O0FzRWx4T1E7RUFPSTtBdEUrd09aOztBc0V0eE9RO0VBT0k7QXRFbXhPWjs7QXNFMXhPUTtFQU9JO0F0RXV4T1o7O0FzRTl4T1E7RUFPSTtBdEUyeE9aOztBc0VseU9RO0VBT0k7QXRFK3hPWjs7QXNFdHlPUTtFQU9JO0F0RW15T1o7O0FzRTF5T1E7RUFPSTtBdEV1eU9aOztBc0U5eU9RO0VBT0k7QXRFMnlPWjs7QXNFbHpPUTtFQU9JO0F0RSt5T1o7O0FzRXR6T1E7RUFPSTtBdEVtek9aOztBc0Uxek9RO0VBT0k7QXRFdXpPWjs7QXNFOXpPUTtFQU9JO0F0RTJ6T1o7O0FzRWwwT1E7RUFPSTtBdEUrek9aOztBc0V0ME9RO0VBT0k7QXRFbTBPWjs7QXNFMTBPUTtFQU9JO0F0RXUwT1o7O0FzRTkwT1E7RUFPSTtBdEUyME9aOztBc0VsMU9RO0VBT0k7QXRFKzBPWjs7QXNFdDFPUTtFQU9JO0F0RW0xT1o7O0FzRTExT1E7RUFPSTtBdEV1MU9aOztBc0U5MU9RO0VBT0k7QXRFMjFPWjs7QXNFbDJPUTtFQU9JO0F0RSsxT1o7O0FzRXQyT1E7RUFPSTtBdEVtMk9aOztBc0UxMk9RO0VBT0k7QXRFdTJPWjs7QXNFOTJPUTtFQU9JO0F0RTIyT1o7O0FzRWg0T1E7QUFjQTtFQU9JO0VBQUE7QXRFaTNPWjs7QXNFbjJPUTtBQXJCQTtFQUlRO0VBR0o7QXRFdTNPWjs7QXNFOTNPUTtFQUlRO0VBR0o7QXRFNDNPWjs7QXNFbjRPUTtFQUlRO0VBR0o7QXRFaTRPWjs7QXNFeDRPUTtFQUlRO0VBR0o7QXRFczRPWjs7QXNFNzRPUTtFQUlRO0VBR0o7QXRFMjRPWjs7QXNFbDVPUTtFQUlRO0VBR0o7QXRFZzVPWjs7QXNFdjVPUTtFQUlRO0VBR0o7QXRFcTVPWjs7QXNFNTVPUTtFQUlRO0VBR0o7QXRFMDVPWjs7QXNFajZPUTtFQUlRO0VBR0o7QXRFKzVPWjs7QXNFdDZPUTtFQUlRO0VBR0o7QXRFbzZPWjs7QXNFMzZPUTtFQUlRO0VBR0o7QXRFeTZPWjs7QXNFaDdPUTtFQUlRO0VBR0o7QXRFODZPWjs7QXNFcjdPUTtFQUlRO0VBR0o7QXRFbTdPWjs7QXNFMTdPUTtFQUlRO0VBR0o7QXRFdzdPWjs7QXNFLzdPUTtFQUlRO0VBR0o7QXRFNjdPWjs7QXNFOThPUTtFQUNFO0F0RWk5T1Y7O0FzRWw5T1E7RUFDRTtBdEVxOU9WOztBc0V0OU9RO0VBQ0U7QXRFeTlPVjs7QXNFMTlPUTtFQUNFO0F0RTY5T1Y7O0FzRXA5T1E7RUFJUTtFQUdKO0F0RWs5T1o7O0FzRXo5T1E7RUFJUTtFQUdKO0F0RXU5T1o7O0FzRTk5T1E7RUFJUTtFQUdKO0F0RTQ5T1o7O0FzRW4rT1E7RUFJUTtFQUdKO0F0RWkrT1o7O0FzRXgrT1E7RUFJUTtFQUdKO0F0RXMrT1o7O0FzRTcrT1E7RUFJUTtFQUdKO0F0RTIrT1o7O0FzRWwvT1E7RUFJUTtFQUdKO0F0RWcvT1o7O0FzRXYvT1E7RUFJUTtFQUdKO0F0RXEvT1o7O0FzRTUvT1E7RUFJUTtFQUdKO0F0RTAvT1o7O0FzRWpnUFE7RUFJUTtFQUdKO0F0RSsvT1o7O0FzRXRnUFE7RUFJUTtFQUdKO0F0RW9nUFo7O0FzRTNnUFE7RUFJUTtFQUdKO0F0RXlnUFo7O0FzRTFoUFE7RUFDRTtBdEU2aFBWOztBc0U5aFBRO0VBQ0U7QXRFaWlQVjs7QXNFbGlQUTtFQUNFO0F0RXFpUFY7O0FzRXRpUFE7RUFDRTtBdEV5aVBWOztBc0UxaVBRO0VBQ0U7QXRFNmlQVjs7QXNFcGlQUTtFQU9JO0F0RWlpUFo7O0FzRXhpUFE7RUFPSTtBdEVxaVBaOztBc0U1aVBRO0VBT0k7QXRFeWlQWjs7QXNFaGpQUTtFQU9JO0F0RTZpUFo7O0FzRXBqUFE7RUFPSTtBdEVpalBaOztBc0V4alBRO0VBT0k7QXRFcWpQWjs7QXNFNWpQUTtFQU9JO0F0RXlqUFo7O0FzRWhrUFE7RUFPSTtBdEU2alBaOztBc0Vwa1BRO0VBT0k7QXRFaWtQWjs7QXNFeGtQUTtFQU9JO0F0RXFrUFo7O0FzRTVrUFE7RUFPSTtBdEV5a1BaOztBc0VobFBRO0VBT0k7QXRFNmtQWjs7QXNFcGxQUTtFQU9JO0F0RWlsUFo7O0FzRXhsUFE7RUFPSTtFQUFBO0F0RXNsUFo7O0FzRTdsUFE7RUFPSTtFQUFBO0F0RTJsUFo7O0FzRWxtUFE7RUFPSTtFQUFBO0F0RWdtUFo7O0FzRXZtUFE7RUFPSTtFQUFBO0F0RXFtUFo7O0FzRTVtUFE7RUFPSTtBdEV5bVBaOztBc0VoblBRO0VBT0k7QXRFNm1QWjs7QWFwblBJO0V5REFJO0lBT0k7RXRFa25QVjs7RXNFem5QTTtJQU9JO0V0RXNuUFY7O0VzRTduUE07SUFPSTtFdEUwblBWOztFc0Vqb1BNO0lBT0k7RXRFOG5QVjs7RXNFcm9QTTtJQU9JO0V0RWtvUFY7O0VzRXpvUE07SUFPSTtFdEVzb1BWOztFc0U3b1BNO0lBT0k7RXRFMG9QVjs7RXNFanBQTTtJQU9JO0V0RThvUFY7O0VzRXJwUE07SUFPSTtFdEVrcFBWOztFc0V6cFBNO0lBT0k7RXRFc3BQVjs7RXNFN3BQTTtJQU9JO0V0RTBwUFY7O0VzRWpxUE07SUFPSTtFdEU4cFBWOztFc0VycVBNO0lBT0k7RXRFa3FQVjs7RXNFenFQTTtJQU9JO0V0RXNxUFY7O0VzRTdxUE07SUFPSTtFdEUwcVBWOztFc0VqclBNO0lBT0k7RXRFOHFQVjs7RXNFcnJQTTtJQU9JO0V0RWtyUFY7O0VzRXpyUE07SUFPSTtFdEVzclBWOztFc0U3clBNO0lBT0k7RXRFMHJQVjs7RXNFanNQTTtJQU9JO0V0RThyUFY7O0VzRXJzUE07SUFPSTtFdEVrc1BWOztFc0V6c1BNO0lBT0k7RXRFc3NQVjs7RXNFN3NQTTtJQU9JO0V0RTBzUFY7O0VzRWp0UE07SUFPSTtFdEU4c1BWOztFc0VydFBNO0lBT0k7RXRFa3RQVjs7RXNFenRQTTtJQU9JO0V0RXN0UFY7O0VzRTd0UE07SUFPSTtFdEUwdFBWOztFc0VqdVBNO0lBT0k7RXRFOHRQVjs7RXNFcnVQTTtJQU9JO0V0RWt1UFY7O0VzRXp1UE07SUFPSTtFdEVzdVBWOztFc0U3dVBNO0lBT0k7RXRFMHVQVjs7RXNFanZQTTtJQU9JO0V0RTh1UFY7O0VzRXJ2UE07SUFPSTtFdEVrdlBWOztFc0V6dlBNO0lBT0k7RXRFc3ZQVjs7RXNFN3ZQTTtJQU9JO0V0RTB2UFY7O0VzRWp3UE07SUFPSTtFdEU4dlBWOztFc0Vyd1BNO0lBT0k7RXRFa3dQVjs7RXNFendQTTtJQU9JO0V0RXN3UFY7O0VzRTd3UE07SUFPSTtFdEUwd1BWOztFc0VqeFBNO0lBT0k7RXRFOHdQVjs7RXNFcnhQTTtJQU9JO0V0RWt4UFY7O0VzRXp4UE07SUFPSTtFdEVzeFBWOztFc0U3eFBNO0lBT0k7RXRFMHhQVjs7RXNFanlQTTtJQU9JO0V0RTh4UFY7O0VzRXJ5UE07SUFPSTtFdEVreVBWOztFc0V6eVBNO0lBT0k7RXRFc3lQVjs7RXNFN3lQTTtJQU9JO0V0RTB5UFY7O0VzRWp6UE07SUFPSTtFdEU4eVBWOztFc0VyelBNO0lBT0k7RXRFa3pQVjs7RXNFenpQTTtJQU9JO0V0RXN6UFY7O0VzRTd6UE07SUFPSTtFdEUwelBWOztFc0VqMFBNO0lBT0k7RXRFOHpQVjs7RXNFcjBQTTtJQU9JO0V0RWswUFY7O0VzRXowUE07SUFPSTtFdEVzMFBWOztFc0U3MFBNO0lBT0k7RXRFMDBQVjs7RXNFajFQTTtJQU9JO0V0RTgwUFY7O0VzRXIxUE07SUFPSTtFdEVrMVBWOztFc0V6MVBNO0lBT0k7RXRFczFQVjs7RXNFNzFQTTtJQU9JO0V0RTAxUFY7O0VzRWoyUE07SUFPSTtFdEU4MVBWOztFc0VyMlBNO0lBT0k7RXRFazJQVjs7RXNFejJQTTtJQU9JO0V0RXMyUFY7O0VzRTcyUE07SUFPSTtFdEUwMlBWOztFc0VqM1BNO0lBT0k7RXRFODJQVjs7RXNFcjNQTTtJQU9JO0V0RWszUFY7O0VzRXozUE07SUFPSTtFdEVzM1BWOztFc0U3M1BNO0lBT0k7RXRFMDNQVjs7RXNFajRQTTtJQU9JO0V0RTgzUFY7O0VzRXI0UE07SUFPSTtFdEVrNFBWOztFc0V6NFBNO0lBT0k7SUFBQTtFdEV1NFBWOztFc0U5NFBNO0lBT0k7SUFBQTtFdEU0NFBWOztFc0VuNVBNO0lBT0k7SUFBQTtFdEVpNVBWOztFc0V4NVBNO0lBT0k7SUFBQTtFdEVzNVBWOztFc0U3NVBNO0lBT0k7SUFBQTtFdEUyNVBWOztFc0VsNlBNO0lBT0k7SUFBQTtFdEVnNlBWOztFc0V2NlBNO0lBT0k7SUFBQTtFdEVxNlBWOztFc0U1NlBNO0lBT0k7SUFBQTtFdEUwNlBWOztFc0VqN1BNO0lBT0k7SUFBQTtFdEUrNlBWOztFc0V0N1BNO0lBT0k7SUFBQTtFdEVvN1BWOztFc0UzN1BNO0lBT0k7SUFBQTtFdEV5N1BWOztFc0VoOFBNO0lBT0k7SUFBQTtFdEU4N1BWOztFc0VyOFBNO0lBT0k7SUFBQTtFdEVtOFBWOztFc0UxOFBNO0lBT0k7SUFBQTtFdEV3OFBWOztFc0UvOFBNO0lBT0k7RXRFNDhQVjs7RXNFbjlQTTtJQU9JO0V0RWc5UFY7O0VzRXY5UE07SUFPSTtFdEVvOVBWOztFc0UzOVBNO0lBT0k7RXRFdzlQVjs7RXNFLzlQTTtJQU9JO0V0RTQ5UFY7O0VzRW4rUE07SUFPSTtFdEVnK1BWOztFc0V2K1BNO0lBT0k7RXRFbytQVjs7RXNFMytQTTtJQU9JO0V0RXcrUFY7O0VzRS8rUE07SUFPSTtFdEU0K1BWOztFc0VuL1BNO0lBT0k7RXRFZy9QVjs7RXNFdi9QTTtJQU9JO0V0RW8vUFY7O0VzRTMvUE07SUFPSTtFdEV3L1BWOztFc0UvL1BNO0lBT0k7RXRFNC9QVjs7RXNFbmdRTTtJQU9JO0V0RWdnUVY7O0VzRXZnUU07SUFPSTtFdEVvZ1FWOztFc0UzZ1FNO0lBT0k7RXRFd2dRVjs7RXNFL2dRTTtJQU9JO0V0RTRnUVY7O0VzRW5oUU07SUFPSTtFdEVnaFFWOztFc0V2aFFNO0lBT0k7RXRFb2hRVjs7RXNFM2hRTTtJQU9JO0V0RXdoUVY7O0VzRS9oUU07SUFPSTtFdEU0aFFWOztFc0VuaVFNO0lBT0k7RXRFZ2lRVjs7RXNFdmlRTTtJQU9JO0V0RW9pUVY7O0VzRTNpUU07SUFPSTtFdEV3aVFWOztFc0UvaVFNO0lBT0k7RXRFNGlRVjs7RXNFbmpRTTtJQU9JO0V0RWdqUVY7O0VzRXZqUU07SUFPSTtFdEVvalFWOztFc0UzalFNO0lBT0k7RXRFd2pRVjs7RXNFL2pRTTtJQU9JO0V0RTRqUVY7O0VzRW5rUU07SUFPSTtFdEVna1FWOztFc0V2a1FNO0lBT0k7RXRFb2tRVjs7RXNFM2tRTTtJQU9JO0V0RXdrUVY7O0VzRS9rUU07SUFPSTtFdEU0a1FWOztFc0VubFFNO0lBT0k7RXRFZ2xRVjs7RXNFdmxRTTtJQU9JO0lBQUE7RXRFcWxRVjs7RXNFNWxRTTtJQU9JO0lBQUE7RXRFMGxRVjs7RXNFam1RTTtJQU9JO0lBQUE7RXRFK2xRVjs7RXNFdG1RTTtJQU9JO0lBQUE7RXRFb21RVjs7RXNFM21RTTtJQU9JO0lBQUE7RXRFeW1RVjs7RXNFaG5RTTtJQU9JO0lBQUE7RXRFOG1RVjs7RXNFcm5RTTtJQU9JO0lBQUE7RXRFbW5RVjs7RXNFMW5RTTtJQU9JO0lBQUE7RXRFd25RVjs7RXNFL25RTTtJQU9JO0lBQUE7RXRFNm5RVjs7RXNFcG9RTTtJQU9JO0lBQUE7RXRFa29RVjs7RXNFem9RTTtJQU9JO0lBQUE7RXRFdW9RVjs7RXNFOW9RTTtJQU9JO0lBQUE7RXRFNG9RVjs7RXNFbnBRTTtJQU9JO0V0RWdwUVY7O0VzRXZwUU07SUFPSTtFdEVvcFFWOztFc0UzcFFNO0lBT0k7RXRFd3BRVjs7RXNFL3BRTTtJQU9JO0V0RTRwUVY7O0VzRW5xUU07SUFPSTtFdEVncVFWOztFc0V2cVFNO0lBT0k7RXRFb3FRVjs7RXNFM3FRTTtJQU9JO0V0RXdxUVY7O0VzRS9xUU07SUFPSTtFdEU0cVFWOztFc0VuclFNO0lBT0k7RXRFZ3JRVjs7RXNFdnJRTTtJQU9JO0V0RW9yUVY7O0VzRTNyUU07SUFPSTtFdEV3clFWOztFc0UvclFNO0lBT0k7RXRFNHJRVjs7RXNFbnNRTTtJQU9JO0V0RWdzUVY7O0VzRXZzUU07SUFPSTtFdEVvc1FWOztFc0Uzc1FNO0lBT0k7RXRFd3NRVjs7RXNFL3NRTTtJQU9JO0V0RTRzUVY7O0VzRW50UU07SUFPSTtFdEVndFFWOztFc0V2dFFNO0lBT0k7RXRFb3RRVjs7RXNFM3RRTTtJQU9JO0V0RXd0UVY7O0VzRS90UU07SUFPSTtFdEU0dFFWOztFc0VudVFNO0lBT0k7RXRFZ3VRVjs7RXNFdnVRTTtJQU9JO0V0RW91UVY7O0VzRTN1UU07SUFPSTtFdEV3dVFWOztFc0UvdVFNO0lBT0k7RXRFNHVRVjs7RXNFbnZRTTtJQU9JO0V0RWd2UVY7O0VzRXZ2UU07SUFPSTtFdEVvdlFWOztFc0UzdlFNO0lBT0k7RXRFd3ZRVjtBQUNGO0FhaHdRSTtFeURBSTtJQU9JO0V0RTZ2UVY7O0VzRXB3UU07SUFPSTtFdEVpd1FWOztFc0V4d1FNO0lBT0k7RXRFcXdRVjs7RXNFNXdRTTtJQU9JO0V0RXl3UVY7O0VzRWh4UU07SUFPSTtFdEU2d1FWOztFc0VweFFNO0lBT0k7RXRFaXhRVjs7RXNFeHhRTTtJQU9JO0V0RXF4UVY7O0VzRTV4UU07SUFPSTtFdEV5eFFWOztFc0VoeVFNO0lBT0k7RXRFNnhRVjs7RXNFcHlRTTtJQU9JO0V0RWl5UVY7O0VzRXh5UU07SUFPSTtFdEVxeVFWOztFc0U1eVFNO0lBT0k7RXRFeXlRVjs7RXNFaHpRTTtJQU9JO0V0RTZ5UVY7O0VzRXB6UU07SUFPSTtFdEVpelFWOztFc0V4elFNO0lBT0k7RXRFcXpRVjs7RXNFNXpRTTtJQU9JO0V0RXl6UVY7O0VzRWgwUU07SUFPSTtFdEU2elFWOztFc0VwMFFNO0lBT0k7RXRFaTBRVjs7RXNFeDBRTTtJQU9JO0V0RXEwUVY7O0VzRTUwUU07SUFPSTtFdEV5MFFWOztFc0VoMVFNO0lBT0k7RXRFNjBRVjs7RXNFcDFRTTtJQU9JO0V0RWkxUVY7O0VzRXgxUU07SUFPSTtFdEVxMVFWOztFc0U1MVFNO0lBT0k7RXRFeTFRVjs7RXNFaDJRTTtJQU9JO0V0RTYxUVY7O0VzRXAyUU07SUFPSTtFdEVpMlFWOztFc0V4MlFNO0lBT0k7RXRFcTJRVjs7RXNFNTJRTTtJQU9JO0V0RXkyUVY7O0VzRWgzUU07SUFPSTtFdEU2MlFWOztFc0VwM1FNO0lBT0k7RXRFaTNRVjs7RXNFeDNRTTtJQU9JO0V0RXEzUVY7O0VzRTUzUU07SUFPSTtFdEV5M1FWOztFc0VoNFFNO0lBT0k7RXRFNjNRVjs7RXNFcDRRTTtJQU9JO0V0RWk0UVY7O0VzRXg0UU07SUFPSTtFdEVxNFFWOztFc0U1NFFNO0lBT0k7RXRFeTRRVjs7RXNFaDVRTTtJQU9JO0V0RTY0UVY7O0VzRXA1UU07SUFPSTtFdEVpNVFWOztFc0V4NVFNO0lBT0k7RXRFcTVRVjs7RXNFNTVRTTtJQU9JO0V0RXk1UVY7O0VzRWg2UU07SUFPSTtFdEU2NVFWOztFc0VwNlFNO0lBT0k7RXRFaTZRVjs7RXNFeDZRTTtJQU9JO0V0RXE2UVY7O0VzRTU2UU07SUFPSTtFdEV5NlFWOztFc0VoN1FNO0lBT0k7RXRFNjZRVjs7RXNFcDdRTTtJQU9JO0V0RWk3UVY7O0VzRXg3UU07SUFPSTtFdEVxN1FWOztFc0U1N1FNO0lBT0k7RXRFeTdRVjs7RXNFaDhRTTtJQU9JO0V0RTY3UVY7O0VzRXA4UU07SUFPSTtFdEVpOFFWOztFc0V4OFFNO0lBT0k7RXRFcThRVjs7RXNFNThRTTtJQU9JO0V0RXk4UVY7O0VzRWg5UU07SUFPSTtFdEU2OFFWOztFc0VwOVFNO0lBT0k7RXRFaTlRVjs7RXNFeDlRTTtJQU9JO0V0RXE5UVY7O0VzRTU5UU07SUFPSTtFdEV5OVFWOztFc0VoK1FNO0lBT0k7RXRFNjlRVjs7RXNFcCtRTTtJQU9JO0V0RWkrUVY7O0VzRXgrUU07SUFPSTtFdEVxK1FWOztFc0U1K1FNO0lBT0k7RXRFeStRVjs7RXNFaC9RTTtJQU9JO0V0RTYrUVY7O0VzRXAvUU07SUFPSTtFdEVpL1FWOztFc0V4L1FNO0lBT0k7RXRFcS9RVjs7RXNFNS9RTTtJQU9JO0V0RXkvUVY7O0VzRWhnUk07SUFPSTtFdEU2L1FWOztFc0VwZ1JNO0lBT0k7RXRFaWdSVjs7RXNFeGdSTTtJQU9JO0V0RXFnUlY7O0VzRTVnUk07SUFPSTtFdEV5Z1JWOztFc0VoaFJNO0lBT0k7RXRFNmdSVjs7RXNFcGhSTTtJQU9JO0lBQUE7RXRFa2hSVjs7RXNFemhSTTtJQU9JO0lBQUE7RXRFdWhSVjs7RXNFOWhSTTtJQU9JO0lBQUE7RXRFNGhSVjs7RXNFbmlSTTtJQU9JO0lBQUE7RXRFaWlSVjs7RXNFeGlSTTtJQU9JO0lBQUE7RXRFc2lSVjs7RXNFN2lSTTtJQU9JO0lBQUE7RXRFMmlSVjs7RXNFbGpSTTtJQU9JO0lBQUE7RXRFZ2pSVjs7RXNFdmpSTTtJQU9JO0lBQUE7RXRFcWpSVjs7RXNFNWpSTTtJQU9JO0lBQUE7RXRFMGpSVjs7RXNFamtSTTtJQU9JO0lBQUE7RXRFK2pSVjs7RXNFdGtSTTtJQU9JO0lBQUE7RXRFb2tSVjs7RXNFM2tSTTtJQU9JO0lBQUE7RXRFeWtSVjs7RXNFaGxSTTtJQU9JO0lBQUE7RXRFOGtSVjs7RXNFcmxSTTtJQU9JO0lBQUE7RXRFbWxSVjs7RXNFMWxSTTtJQU9JO0V0RXVsUlY7O0VzRTlsUk07SUFPSTtFdEUybFJWOztFc0VsbVJNO0lBT0k7RXRFK2xSVjs7RXNFdG1STTtJQU9JO0V0RW1tUlY7O0VzRTFtUk07SUFPSTtFdEV1bVJWOztFc0U5bVJNO0lBT0k7RXRFMm1SVjs7RXNFbG5STTtJQU9JO0V0RSttUlY7O0VzRXRuUk07SUFPSTtFdEVtblJWOztFc0UxblJNO0lBT0k7RXRFdW5SVjs7RXNFOW5STTtJQU9JO0V0RTJuUlY7O0VzRWxvUk07SUFPSTtFdEUrblJWOztFc0V0b1JNO0lBT0k7RXRFbW9SVjs7RXNFMW9STTtJQU9JO0V0RXVvUlY7O0VzRTlvUk07SUFPSTtFdEUyb1JWOztFc0VscFJNO0lBT0k7RXRFK29SVjs7RXNFdHBSTTtJQU9JO0V0RW1wUlY7O0VzRTFwUk07SUFPSTtFdEV1cFJWOztFc0U5cFJNO0lBT0k7RXRFMnBSVjs7RXNFbHFSTTtJQU9JO0V0RStwUlY7O0VzRXRxUk07SUFPSTtFdEVtcVJWOztFc0UxcVJNO0lBT0k7RXRFdXFSVjs7RXNFOXFSTTtJQU9JO0V0RTJxUlY7O0VzRWxyUk07SUFPSTtFdEUrcVJWOztFc0V0clJNO0lBT0k7RXRFbXJSVjs7RXNFMXJSTTtJQU9JO0V0RXVyUlY7O0VzRTlyUk07SUFPSTtFdEUyclJWOztFc0Vsc1JNO0lBT0k7RXRFK3JSVjs7RXNFdHNSTTtJQU9JO0V0RW1zUlY7O0VzRTFzUk07SUFPSTtFdEV1c1JWOztFc0U5c1JNO0lBT0k7RXRFMnNSVjs7RXNFbHRSTTtJQU9JO0V0RStzUlY7O0VzRXR0Uk07SUFPSTtFdEVtdFJWOztFc0UxdFJNO0lBT0k7RXRFdXRSVjs7RXNFOXRSTTtJQU9JO0V0RTJ0UlY7O0VzRWx1Uk07SUFPSTtJQUFBO0V0RWd1UlY7O0VzRXZ1Uk07SUFPSTtJQUFBO0V0RXF1UlY7O0VzRTV1Uk07SUFPSTtJQUFBO0V0RTB1UlY7O0VzRWp2Uk07SUFPSTtJQUFBO0V0RSt1UlY7O0VzRXR2Uk07SUFPSTtJQUFBO0V0RW92UlY7O0VzRTN2Uk07SUFPSTtJQUFBO0V0RXl2UlY7O0VzRWh3Uk07SUFPSTtJQUFBO0V0RTh2UlY7O0VzRXJ3Uk07SUFPSTtJQUFBO0V0RW13UlY7O0VzRTF3Uk07SUFPSTtJQUFBO0V0RXd3UlY7O0VzRS93Uk07SUFPSTtJQUFBO0V0RTZ3UlY7O0VzRXB4Uk07SUFPSTtJQUFBO0V0RWt4UlY7O0VzRXp4Uk07SUFPSTtJQUFBO0V0RXV4UlY7O0VzRTl4Uk07SUFPSTtFdEUyeFJWOztFc0VseVJNO0lBT0k7RXRFK3hSVjs7RXNFdHlSTTtJQU9JO0V0RW15UlY7O0VzRTF5Uk07SUFPSTtFdEV1eVJWOztFc0U5eVJNO0lBT0k7RXRFMnlSVjs7RXNFbHpSTTtJQU9JO0V0RSt5UlY7O0VzRXR6Uk07SUFPSTtFdEVtelJWOztFc0UxelJNO0lBT0k7RXRFdXpSVjs7RXNFOXpSTTtJQU9JO0V0RTJ6UlY7O0VzRWwwUk07SUFPSTtFdEUrelJWOztFc0V0MFJNO0lBT0k7RXRFbTBSVjs7RXNFMTBSTTtJQU9JO0V0RXUwUlY7O0VzRTkwUk07SUFPSTtFdEUyMFJWOztFc0VsMVJNO0lBT0k7RXRFKzBSVjs7RXNFdDFSTTtJQU9JO0V0RW0xUlY7O0VzRTExUk07SUFPSTtFdEV1MVJWOztFc0U5MVJNO0lBT0k7RXRFMjFSVjs7RXNFbDJSTTtJQU9JO0V0RSsxUlY7O0VzRXQyUk07SUFPSTtFdEVtMlJWOztFc0UxMlJNO0lBT0k7RXRFdTJSVjs7RXNFOTJSTTtJQU9JO0V0RTIyUlY7O0VzRWwzUk07SUFPSTtFdEUrMlJWOztFc0V0M1JNO0lBT0k7RXRFbTNSVjs7RXNFMTNSTTtJQU9JO0V0RXUzUlY7O0VzRTkzUk07SUFPSTtFdEUyM1JWOztFc0VsNFJNO0lBT0k7RXRFKzNSVjs7RXNFdDRSTTtJQU9JO0V0RW00UlY7QUFDRjtBYTM0Ukk7RXlEQUk7SUFPSTtFdEV3NFJWOztFc0UvNFJNO0lBT0k7RXRFNDRSVjs7RXNFbjVSTTtJQU9JO0V0RWc1UlY7O0VzRXY1Uk07SUFPSTtFdEVvNVJWOztFc0UzNVJNO0lBT0k7RXRFdzVSVjs7RXNFLzVSTTtJQU9JO0V0RTQ1UlY7O0VzRW42Uk07SUFPSTtFdEVnNlJWOztFc0V2NlJNO0lBT0k7RXRFbzZSVjs7RXNFMzZSTTtJQU9JO0V0RXc2UlY7O0VzRS82Uk07SUFPSTtFdEU0NlJWOztFc0VuN1JNO0lBT0k7RXRFZzdSVjs7RXNFdjdSTTtJQU9JO0V0RW83UlY7O0VzRTM3Uk07SUFPSTtFdEV3N1JWOztFc0UvN1JNO0lBT0k7RXRFNDdSVjs7RXNFbjhSTTtJQU9JO0V0RWc4UlY7O0VzRXY4Uk07SUFPSTtFdEVvOFJWOztFc0UzOFJNO0lBT0k7RXRFdzhSVjs7RXNFLzhSTTtJQU9JO0V0RTQ4UlY7O0VzRW45Uk07SUFPSTtFdEVnOVJWOztFc0V2OVJNO0lBT0k7RXRFbzlSVjs7RXNFMzlSTTtJQU9JO0V0RXc5UlY7O0VzRS85Uk07SUFPSTtFdEU0OVJWOztFc0VuK1JNO0lBT0k7RXRFZytSVjs7RXNFditSTTtJQU9JO0V0RW8rUlY7O0VzRTMrUk07SUFPSTtFdEV3K1JWOztFc0UvK1JNO0lBT0k7RXRFNCtSVjs7RXNFbi9STTtJQU9JO0V0RWcvUlY7O0VzRXYvUk07SUFPSTtFdEVvL1JWOztFc0UzL1JNO0lBT0k7RXRFdy9SVjs7RXNFLy9STTtJQU9JO0V0RTQvUlY7O0VzRW5nU007SUFPSTtFdEVnZ1NWOztFc0V2Z1NNO0lBT0k7RXRFb2dTVjs7RXNFM2dTTTtJQU9JO0V0RXdnU1Y7O0VzRS9nU007SUFPSTtFdEU0Z1NWOztFc0VuaFNNO0lBT0k7RXRFZ2hTVjs7RXNFdmhTTTtJQU9JO0V0RW9oU1Y7O0VzRTNoU007SUFPSTtFdEV3aFNWOztFc0UvaFNNO0lBT0k7RXRFNGhTVjs7RXNFbmlTTTtJQU9JO0V0RWdpU1Y7O0VzRXZpU007SUFPSTtFdEVvaVNWOztFc0UzaVNNO0lBT0k7RXRFd2lTVjs7RXNFL2lTTTtJQU9JO0V0RTRpU1Y7O0VzRW5qU007SUFPSTtFdEVnalNWOztFc0V2alNNO0lBT0k7RXRFb2pTVjs7RXNFM2pTTTtJQU9JO0V0RXdqU1Y7O0VzRS9qU007SUFPSTtFdEU0alNWOztFc0Vua1NNO0lBT0k7RXRFZ2tTVjs7RXNFdmtTTTtJQU9JO0V0RW9rU1Y7O0VzRTNrU007SUFPSTtFdEV3a1NWOztFc0Uva1NNO0lBT0k7RXRFNGtTVjs7RXNFbmxTTTtJQU9JO0V0RWdsU1Y7O0VzRXZsU007SUFPSTtFdEVvbFNWOztFc0UzbFNNO0lBT0k7RXRFd2xTVjs7RXNFL2xTTTtJQU9JO0V0RTRsU1Y7O0VzRW5tU007SUFPSTtFdEVnbVNWOztFc0V2bVNNO0lBT0k7RXRFb21TVjs7RXNFM21TTTtJQU9JO0V0RXdtU1Y7O0VzRS9tU007SUFPSTtFdEU0bVNWOztFc0VublNNO0lBT0k7RXRFZ25TVjs7RXNFdm5TTTtJQU9JO0V0RW9uU1Y7O0VzRTNuU007SUFPSTtFdEV3blNWOztFc0UvblNNO0lBT0k7RXRFNG5TVjs7RXNFbm9TTTtJQU9JO0V0RWdvU1Y7O0VzRXZvU007SUFPSTtFdEVvb1NWOztFc0Uzb1NNO0lBT0k7RXRFd29TVjs7RXNFL29TTTtJQU9JO0V0RTRvU1Y7O0VzRW5wU007SUFPSTtFdEVncFNWOztFc0V2cFNNO0lBT0k7RXRFb3BTVjs7RXNFM3BTTTtJQU9JO0V0RXdwU1Y7O0VzRS9wU007SUFPSTtJQUFBO0V0RTZwU1Y7O0VzRXBxU007SUFPSTtJQUFBO0V0RWtxU1Y7O0VzRXpxU007SUFPSTtJQUFBO0V0RXVxU1Y7O0VzRTlxU007SUFPSTtJQUFBO0V0RTRxU1Y7O0VzRW5yU007SUFPSTtJQUFBO0V0RWlyU1Y7O0VzRXhyU007SUFPSTtJQUFBO0V0RXNyU1Y7O0VzRTdyU007SUFPSTtJQUFBO0V0RTJyU1Y7O0VzRWxzU007SUFPSTtJQUFBO0V0RWdzU1Y7O0VzRXZzU007SUFPSTtJQUFBO0V0RXFzU1Y7O0VzRTVzU007SUFPSTtJQUFBO0V0RTBzU1Y7O0VzRWp0U007SUFPSTtJQUFBO0V0RStzU1Y7O0VzRXR0U007SUFPSTtJQUFBO0V0RW90U1Y7O0VzRTN0U007SUFPSTtJQUFBO0V0RXl0U1Y7O0VzRWh1U007SUFPSTtJQUFBO0V0RTh0U1Y7O0VzRXJ1U007SUFPSTtFdEVrdVNWOztFc0V6dVNNO0lBT0k7RXRFc3VTVjs7RXNFN3VTTTtJQU9JO0V0RTB1U1Y7O0VzRWp2U007SUFPSTtFdEU4dVNWOztFc0VydlNNO0lBT0k7RXRFa3ZTVjs7RXNFenZTTTtJQU9JO0V0RXN2U1Y7O0VzRTd2U007SUFPSTtFdEUwdlNWOztFc0Vqd1NNO0lBT0k7RXRFOHZTVjs7RXNFcndTTTtJQU9JO0V0RWt3U1Y7O0VzRXp3U007SUFPSTtFdEVzd1NWOztFc0U3d1NNO0lBT0k7RXRFMHdTVjs7RXNFanhTTTtJQU9JO0V0RTh3U1Y7O0VzRXJ4U007SUFPSTtFdEVreFNWOztFc0V6eFNNO0lBT0k7RXRFc3hTVjs7RXNFN3hTTTtJQU9JO0V0RTB4U1Y7O0VzRWp5U007SUFPSTtFdEU4eFNWOztFc0VyeVNNO0lBT0k7RXRFa3lTVjs7RXNFenlTTTtJQU9JO0V0RXN5U1Y7O0VzRTd5U007SUFPSTtFdEUweVNWOztFc0VqelNNO0lBT0k7RXRFOHlTVjs7RXNFcnpTTTtJQU9JO0V0RWt6U1Y7O0VzRXp6U007SUFPSTtFdEVzelNWOztFc0U3elNNO0lBT0k7RXRFMHpTVjs7RXNFajBTTTtJQU9JO0V0RTh6U1Y7O0VzRXIwU007SUFPSTtFdEVrMFNWOztFc0V6MFNNO0lBT0k7RXRFczBTVjs7RXNFNzBTTTtJQU9JO0V0RTAwU1Y7O0VzRWoxU007SUFPSTtFdEU4MFNWOztFc0VyMVNNO0lBT0k7RXRFazFTVjs7RXNFejFTTTtJQU9JO0V0RXMxU1Y7O0VzRTcxU007SUFPSTtFdEUwMVNWOztFc0VqMlNNO0lBT0k7RXRFODFTVjs7RXNFcjJTTTtJQU9JO0V0RWsyU1Y7O0VzRXoyU007SUFPSTtFdEVzMlNWOztFc0U3MlNNO0lBT0k7SUFBQTtFdEUyMlNWOztFc0VsM1NNO0lBT0k7SUFBQTtFdEVnM1NWOztFc0V2M1NNO0lBT0k7SUFBQTtFdEVxM1NWOztFc0U1M1NNO0lBT0k7SUFBQTtFdEUwM1NWOztFc0VqNFNNO0lBT0k7SUFBQTtFdEUrM1NWOztFc0V0NFNNO0lBT0k7SUFBQTtFdEVvNFNWOztFc0UzNFNNO0lBT0k7SUFBQTtFdEV5NFNWOztFc0VoNVNNO0lBT0k7SUFBQTtFdEU4NFNWOztFc0VyNVNNO0lBT0k7SUFBQTtFdEVtNVNWOztFc0UxNVNNO0lBT0k7SUFBQTtFdEV3NVNWOztFc0UvNVNNO0lBT0k7SUFBQTtFdEU2NVNWOztFc0VwNlNNO0lBT0k7SUFBQTtFdEVrNlNWOztFc0V6NlNNO0lBT0k7RXRFczZTVjs7RXNFNzZTTTtJQU9JO0V0RTA2U1Y7O0VzRWo3U007SUFPSTtFdEU4NlNWOztFc0VyN1NNO0lBT0k7RXRFazdTVjs7RXNFejdTTTtJQU9JO0V0RXM3U1Y7O0VzRTc3U007SUFPSTtFdEUwN1NWOztFc0VqOFNNO0lBT0k7RXRFODdTVjs7RXNFcjhTTTtJQU9JO0V0RWs4U1Y7O0VzRXo4U007SUFPSTtFdEVzOFNWOztFc0U3OFNNO0lBT0k7RXRFMDhTVjs7RXNFajlTTTtJQU9JO0V0RTg4U1Y7O0VzRXI5U007SUFPSTtFdEVrOVNWOztFc0V6OVNNO0lBT0k7RXRFczlTVjs7RXNFNzlTTTtJQU9JO0V0RTA5U1Y7O0VzRWorU007SUFPSTtFdEU4OVNWOztFc0VyK1NNO0lBT0k7RXRFaytTVjs7RXNFeitTTTtJQU9JO0V0RXMrU1Y7O0VzRTcrU007SUFPSTtFdEUwK1NWOztFc0VqL1NNO0lBT0k7RXRFOCtTVjs7RXNFci9TTTtJQU9JO0V0RWsvU1Y7O0VzRXovU007SUFPSTtFdEVzL1NWOztFc0U3L1NNO0lBT0k7RXRFMC9TVjs7RXNFamdUTTtJQU9JO0V0RTgvU1Y7O0VzRXJnVE07SUFPSTtFdEVrZ1RWOztFc0V6Z1RNO0lBT0k7RXRFc2dUVjs7RXNFN2dUTTtJQU9JO0V0RTBnVFY7O0VzRWpoVE07SUFPSTtFdEU4Z1RWO0FBQ0Y7QWF0aFRJO0V5REFJO0lBT0k7RXRFbWhUVjs7RXNFMWhUTTtJQU9JO0V0RXVoVFY7O0VzRTloVE07SUFPSTtFdEUyaFRWOztFc0VsaVRNO0lBT0k7RXRFK2hUVjs7RXNFdGlUTTtJQU9JO0V0RW1pVFY7O0VzRTFpVE07SUFPSTtFdEV1aVRWOztFc0U5aVRNO0lBT0k7RXRFMmlUVjs7RXNFbGpUTTtJQU9JO0V0RStpVFY7O0VzRXRqVE07SUFPSTtFdEVtalRWOztFc0UxalRNO0lBT0k7RXRFdWpUVjs7RXNFOWpUTTtJQU9JO0V0RTJqVFY7O0VzRWxrVE07SUFPSTtFdEUralRWOztFc0V0a1RNO0lBT0k7RXRFbWtUVjs7RXNFMWtUTTtJQU9JO0V0RXVrVFY7O0VzRTlrVE07SUFPSTtFdEUya1RWOztFc0VsbFRNO0lBT0k7RXRFK2tUVjs7RXNFdGxUTTtJQU9JO0V0RW1sVFY7O0VzRTFsVE07SUFPSTtFdEV1bFRWOztFc0U5bFRNO0lBT0k7RXRFMmxUVjs7RXNFbG1UTTtJQU9JO0V0RStsVFY7O0VzRXRtVE07SUFPSTtFdEVtbVRWOztFc0UxbVRNO0lBT0k7RXRFdW1UVjs7RXNFOW1UTTtJQU9JO0V0RTJtVFY7O0VzRWxuVE07SUFPSTtFdEUrbVRWOztFc0V0blRNO0lBT0k7RXRFbW5UVjs7RXNFMW5UTTtJQU9JO0V0RXVuVFY7O0VzRTluVE07SUFPSTtFdEUyblRWOztFc0Vsb1RNO0lBT0k7RXRFK25UVjs7RXNFdG9UTTtJQU9JO0V0RW1vVFY7O0VzRTFvVE07SUFPSTtFdEV1b1RWOztFc0U5b1RNO0lBT0k7RXRFMm9UVjs7RXNFbHBUTTtJQU9JO0V0RStvVFY7O0VzRXRwVE07SUFPSTtFdEVtcFRWOztFc0UxcFRNO0lBT0k7RXRFdXBUVjs7RXNFOXBUTTtJQU9JO0V0RTJwVFY7O0VzRWxxVE07SUFPSTtFdEUrcFRWOztFc0V0cVRNO0lBT0k7RXRFbXFUVjs7RXNFMXFUTTtJQU9JO0V0RXVxVFY7O0VzRTlxVE07SUFPSTtFdEUycVRWOztFc0VsclRNO0lBT0k7RXRFK3FUVjs7RXNFdHJUTTtJQU9JO0V0RW1yVFY7O0VzRTFyVE07SUFPSTtFdEV1clRWOztFc0U5clRNO0lBT0k7RXRFMnJUVjs7RXNFbHNUTTtJQU9JO0V0RStyVFY7O0VzRXRzVE07SUFPSTtFdEVtc1RWOztFc0Uxc1RNO0lBT0k7RXRFdXNUVjs7RXNFOXNUTTtJQU9JO0V0RTJzVFY7O0VzRWx0VE07SUFPSTtFdEUrc1RWOztFc0V0dFRNO0lBT0k7RXRFbXRUVjs7RXNFMXRUTTtJQU9JO0V0RXV0VFY7O0VzRTl0VE07SUFPSTtFdEUydFRWOztFc0VsdVRNO0lBT0k7RXRFK3RUVjs7RXNFdHVUTTtJQU9JO0V0RW11VFY7O0VzRTF1VE07SUFPSTtFdEV1dVRWOztFc0U5dVRNO0lBT0k7RXRFMnVUVjs7RXNFbHZUTTtJQU9JO0V0RSt1VFY7O0VzRXR2VE07SUFPSTtFdEVtdlRWOztFc0UxdlRNO0lBT0k7RXRFdXZUVjs7RXNFOXZUTTtJQU9JO0V0RTJ2VFY7O0VzRWx3VE07SUFPSTtFdEUrdlRWOztFc0V0d1RNO0lBT0k7RXRFbXdUVjs7RXNFMXdUTTtJQU9JO0V0RXV3VFY7O0VzRTl3VE07SUFPSTtFdEUyd1RWOztFc0VseFRNO0lBT0k7RXRFK3dUVjs7RXNFdHhUTTtJQU9JO0V0RW14VFY7O0VzRTF4VE07SUFPSTtFdEV1eFRWOztFc0U5eFRNO0lBT0k7RXRFMnhUVjs7RXNFbHlUTTtJQU9JO0V0RSt4VFY7O0VzRXR5VE07SUFPSTtFdEVteVRWOztFc0UxeVRNO0lBT0k7SUFBQTtFdEV3eVRWOztFc0UveVRNO0lBT0k7SUFBQTtFdEU2eVRWOztFc0VwelRNO0lBT0k7SUFBQTtFdEVrelRWOztFc0V6elRNO0lBT0k7SUFBQTtFdEV1elRWOztFc0U5elRNO0lBT0k7SUFBQTtFdEU0elRWOztFc0VuMFRNO0lBT0k7SUFBQTtFdEVpMFRWOztFc0V4MFRNO0lBT0k7SUFBQTtFdEVzMFRWOztFc0U3MFRNO0lBT0k7SUFBQTtFdEUyMFRWOztFc0VsMVRNO0lBT0k7SUFBQTtFdEVnMVRWOztFc0V2MVRNO0lBT0k7SUFBQTtFdEVxMVRWOztFc0U1MVRNO0lBT0k7SUFBQTtFdEUwMVRWOztFc0VqMlRNO0lBT0k7SUFBQTtFdEUrMVRWOztFc0V0MlRNO0lBT0k7SUFBQTtFdEVvMlRWOztFc0UzMlRNO0lBT0k7SUFBQTtFdEV5MlRWOztFc0VoM1RNO0lBT0k7RXRFNjJUVjs7RXNFcDNUTTtJQU9JO0V0RWkzVFY7O0VzRXgzVE07SUFPSTtFdEVxM1RWOztFc0U1M1RNO0lBT0k7RXRFeTNUVjs7RXNFaDRUTTtJQU9JO0V0RTYzVFY7O0VzRXA0VE07SUFPSTtFdEVpNFRWOztFc0V4NFRNO0lBT0k7RXRFcTRUVjs7RXNFNTRUTTtJQU9JO0V0RXk0VFY7O0VzRWg1VE07SUFPSTtFdEU2NFRWOztFc0VwNVRNO0lBT0k7RXRFaTVUVjs7RXNFeDVUTTtJQU9JO0V0RXE1VFY7O0VzRTU1VE07SUFPSTtFdEV5NVRWOztFc0VoNlRNO0lBT0k7RXRFNjVUVjs7RXNFcDZUTTtJQU9JO0V0RWk2VFY7O0VzRXg2VE07SUFPSTtFdEVxNlRWOztFc0U1NlRNO0lBT0k7RXRFeTZUVjs7RXNFaDdUTTtJQU9JO0V0RTY2VFY7O0VzRXA3VE07SUFPSTtFdEVpN1RWOztFc0V4N1RNO0lBT0k7RXRFcTdUVjs7RXNFNTdUTTtJQU9JO0V0RXk3VFY7O0VzRWg4VE07SUFPSTtFdEU2N1RWOztFc0VwOFRNO0lBT0k7RXRFaThUVjs7RXNFeDhUTTtJQU9JO0V0RXE4VFY7O0VzRTU4VE07SUFPSTtFdEV5OFRWOztFc0VoOVRNO0lBT0k7RXRFNjhUVjs7RXNFcDlUTTtJQU9JO0V0RWk5VFY7O0VzRXg5VE07SUFPSTtFdEVxOVRWOztFc0U1OVRNO0lBT0k7RXRFeTlUVjs7RXNFaCtUTTtJQU9JO0V0RTY5VFY7O0VzRXArVE07SUFPSTtFdEVpK1RWOztFc0V4K1RNO0lBT0k7RXRFcStUVjs7RXNFNStUTTtJQU9JO0V0RXkrVFY7O0VzRWgvVE07SUFPSTtFdEU2K1RWOztFc0VwL1RNO0lBT0k7RXRFaS9UVjs7RXNFeC9UTTtJQU9JO0lBQUE7RXRFcy9UVjs7RXNFNy9UTTtJQU9JO0lBQUE7RXRFMi9UVjs7RXNFbGdVTTtJQU9JO0lBQUE7RXRFZ2dVVjs7RXNFdmdVTTtJQU9JO0lBQUE7RXRFcWdVVjs7RXNFNWdVTTtJQU9JO0lBQUE7RXRFMGdVVjs7RXNFamhVTTtJQU9JO0lBQUE7RXRFK2dVVjs7RXNFdGhVTTtJQU9JO0lBQUE7RXRFb2hVVjs7RXNFM2hVTTtJQU9JO0lBQUE7RXRFeWhVVjs7RXNFaGlVTTtJQU9JO0lBQUE7RXRFOGhVVjs7RXNFcmlVTTtJQU9JO0lBQUE7RXRFbWlVVjs7RXNFMWlVTTtJQU9JO0lBQUE7RXRFd2lVVjs7RXNFL2lVTTtJQU9JO0lBQUE7RXRFNmlVVjs7RXNFcGpVTTtJQU9JO0V0RWlqVVY7O0VzRXhqVU07SUFPSTtFdEVxalVWOztFc0U1alVNO0lBT0k7RXRFeWpVVjs7RXNFaGtVTTtJQU9JO0V0RTZqVVY7O0VzRXBrVU07SUFPSTtFdEVpa1VWOztFc0V4a1VNO0lBT0k7RXRFcWtVVjs7RXNFNWtVTTtJQU9JO0V0RXlrVVY7O0VzRWhsVU07SUFPSTtFdEU2a1VWOztFc0VwbFVNO0lBT0k7RXRFaWxVVjs7RXNFeGxVTTtJQU9JO0V0RXFsVVY7O0VzRTVsVU07SUFPSTtFdEV5bFVWOztFc0VobVVNO0lBT0k7RXRFNmxVVjs7RXNFcG1VTTtJQU9JO0V0RWltVVY7O0VzRXhtVU07SUFPSTtFdEVxbVVWOztFc0U1bVVNO0lBT0k7RXRFeW1VVjs7RXNFaG5VTTtJQU9JO0V0RTZtVVY7O0VzRXBuVU07SUFPSTtFdEVpblVWOztFc0V4blVNO0lBT0k7RXRFcW5VVjs7RXNFNW5VTTtJQU9JO0V0RXluVVY7O0VzRWhvVU07SUFPSTtFdEU2blVWOztFc0Vwb1VNO0lBT0k7RXRFaW9VVjs7RXNFeG9VTTtJQU9JO0V0RXFvVVY7O0VzRTVvVU07SUFPSTtFdEV5b1VWOztFc0VocFVNO0lBT0k7RXRFNm9VVjs7RXNFcHBVTTtJQU9JO0V0RWlwVVY7O0VzRXhwVU07SUFPSTtFdEVxcFVWOztFc0U1cFVNO0lBT0k7RXRFeXBVVjtBQUNGO0FhanFVSTtFeURBSTtJQU9JO0V0RThwVVY7O0VzRXJxVU07SUFPSTtFdEVrcVVWOztFc0V6cVVNO0lBT0k7RXRFc3FVVjs7RXNFN3FVTTtJQU9JO0V0RTBxVVY7O0VzRWpyVU07SUFPSTtFdEU4cVVWOztFc0VyclVNO0lBT0k7RXRFa3JVVjs7RXNFenJVTTtJQU9JO0V0RXNyVVY7O0VzRTdyVU07SUFPSTtFdEUwclVWOztFc0Vqc1VNO0lBT0k7RXRFOHJVVjs7RXNFcnNVTTtJQU9JO0V0RWtzVVY7O0VzRXpzVU07SUFPSTtFdEVzc1VWOztFc0U3c1VNO0lBT0k7RXRFMHNVVjs7RXNFanRVTTtJQU9JO0V0RThzVVY7O0VzRXJ0VU07SUFPSTtFdEVrdFVWOztFc0V6dFVNO0lBT0k7RXRFc3RVVjs7RXNFN3RVTTtJQU9JO0V0RTB0VVY7O0VzRWp1VU07SUFPSTtFdEU4dFVWOztFc0VydVVNO0lBT0k7RXRFa3VVVjs7RXNFenVVTTtJQU9JO0V0RXN1VVY7O0VzRTd1VU07SUFPSTtFdEUwdVVWOztFc0VqdlVNO0lBT0k7RXRFOHVVVjs7RXNFcnZVTTtJQU9JO0V0RWt2VVY7O0VzRXp2VU07SUFPSTtFdEVzdlVWOztFc0U3dlVNO0lBT0k7RXRFMHZVVjs7RXNFandVTTtJQU9JO0V0RTh2VVY7O0VzRXJ3VU07SUFPSTtFdEVrd1VWOztFc0V6d1VNO0lBT0k7RXRFc3dVVjs7RXNFN3dVTTtJQU9JO0V0RTB3VVY7O0VzRWp4VU07SUFPSTtFdEU4d1VWOztFc0VyeFVNO0lBT0k7RXRFa3hVVjs7RXNFenhVTTtJQU9JO0V0RXN4VVY7O0VzRTd4VU07SUFPSTtFdEUweFVWOztFc0VqeVVNO0lBT0k7RXRFOHhVVjs7RXNFcnlVTTtJQU9JO0V0RWt5VVY7O0VzRXp5VU07SUFPSTtFdEVzeVVWOztFc0U3eVVNO0lBT0k7RXRFMHlVVjs7RXNFanpVTTtJQU9JO0V0RTh5VVY7O0VzRXJ6VU07SUFPSTtFdEVrelVWOztFc0V6elVNO0lBT0k7RXRFc3pVVjs7RXNFN3pVTTtJQU9JO0V0RTB6VVY7O0VzRWowVU07SUFPSTtFdEU4elVWOztFc0VyMFVNO0lBT0k7RXRFazBVVjs7RXNFejBVTTtJQU9JO0V0RXMwVVY7O0VzRTcwVU07SUFPSTtFdEUwMFVWOztFc0VqMVVNO0lBT0k7RXRFODBVVjs7RXNFcjFVTTtJQU9JO0V0RWsxVVY7O0VzRXoxVU07SUFPSTtFdEVzMVVWOztFc0U3MVVNO0lBT0k7RXRFMDFVVjs7RXNFajJVTTtJQU9JO0V0RTgxVVY7O0VzRXIyVU07SUFPSTtFdEVrMlVWOztFc0V6MlVNO0lBT0k7RXRFczJVVjs7RXNFNzJVTTtJQU9JO0V0RTAyVVY7O0VzRWozVU07SUFPSTtFdEU4MlVWOztFc0VyM1VNO0lBT0k7RXRFazNVVjs7RXNFejNVTTtJQU9JO0V0RXMzVVY7O0VzRTczVU07SUFPSTtFdEUwM1VWOztFc0VqNFVNO0lBT0k7RXRFODNVVjs7RXNFcjRVTTtJQU9JO0V0RWs0VVY7O0VzRXo0VU07SUFPSTtFdEVzNFVWOztFc0U3NFVNO0lBT0k7RXRFMDRVVjs7RXNFajVVTTtJQU9JO0V0RTg0VVY7O0VzRXI1VU07SUFPSTtFdEVrNVVWOztFc0V6NVVNO0lBT0k7RXRFczVVVjs7RXNFNzVVTTtJQU9JO0V0RTA1VVY7O0VzRWo2VU07SUFPSTtFdEU4NVVWOztFc0VyNlVNO0lBT0k7RXRFazZVVjs7RXNFejZVTTtJQU9JO0V0RXM2VVY7O0VzRTc2VU07SUFPSTtFdEUwNlVWOztFc0VqN1VNO0lBT0k7RXRFODZVVjs7RXNFcjdVTTtJQU9JO0lBQUE7RXRFbTdVVjs7RXNFMTdVTTtJQU9JO0lBQUE7RXRFdzdVVjs7RXNFLzdVTTtJQU9JO0lBQUE7RXRFNjdVVjs7RXNFcDhVTTtJQU9JO0lBQUE7RXRFazhVVjs7RXNFejhVTTtJQU9JO0lBQUE7RXRFdThVVjs7RXNFOThVTTtJQU9JO0lBQUE7RXRFNDhVVjs7RXNFbjlVTTtJQU9JO0lBQUE7RXRFaTlVVjs7RXNFeDlVTTtJQU9JO0lBQUE7RXRFczlVVjs7RXNFNzlVTTtJQU9JO0lBQUE7RXRFMjlVVjs7RXNFbCtVTTtJQU9JO0lBQUE7RXRFZytVVjs7RXNFditVTTtJQU9JO0lBQUE7RXRFcStVVjs7RXNFNStVTTtJQU9JO0lBQUE7RXRFMCtVVjs7RXNFai9VTTtJQU9JO0lBQUE7RXRFKytVVjs7RXNFdC9VTTtJQU9JO0lBQUE7RXRFby9VVjs7RXNFMy9VTTtJQU9JO0V0RXcvVVY7O0VzRS8vVU07SUFPSTtFdEU0L1VWOztFc0VuZ1ZNO0lBT0k7RXRFZ2dWVjs7RXNFdmdWTTtJQU9JO0V0RW9nVlY7O0VzRTNnVk07SUFPSTtFdEV3Z1ZWOztFc0UvZ1ZNO0lBT0k7RXRFNGdWVjs7RXNFbmhWTTtJQU9JO0V0RWdoVlY7O0VzRXZoVk07SUFPSTtFdEVvaFZWOztFc0UzaFZNO0lBT0k7RXRFd2hWVjs7RXNFL2hWTTtJQU9JO0V0RTRoVlY7O0VzRW5pVk07SUFPSTtFdEVnaVZWOztFc0V2aVZNO0lBT0k7RXRFb2lWVjs7RXNFM2lWTTtJQU9JO0V0RXdpVlY7O0VzRS9pVk07SUFPSTtFdEU0aVZWOztFc0VualZNO0lBT0k7RXRFZ2pWVjs7RXNFdmpWTTtJQU9JO0V0RW9qVlY7O0VzRTNqVk07SUFPSTtFdEV3alZWOztFc0UvalZNO0lBT0k7RXRFNGpWVjs7RXNFbmtWTTtJQU9JO0V0RWdrVlY7O0VzRXZrVk07SUFPSTtFdEVva1ZWOztFc0Uza1ZNO0lBT0k7RXRFd2tWVjs7RXNFL2tWTTtJQU9JO0V0RTRrVlY7O0VzRW5sVk07SUFPSTtFdEVnbFZWOztFc0V2bFZNO0lBT0k7RXRFb2xWVjs7RXNFM2xWTTtJQU9JO0V0RXdsVlY7O0VzRS9sVk07SUFPSTtFdEU0bFZWOztFc0VubVZNO0lBT0k7RXRFZ21WVjs7RXNFdm1WTTtJQU9JO0V0RW9tVlY7O0VzRTNtVk07SUFPSTtFdEV3bVZWOztFc0UvbVZNO0lBT0k7RXRFNG1WVjs7RXNFbm5WTTtJQU9JO0V0RWduVlY7O0VzRXZuVk07SUFPSTtFdEVvblZWOztFc0UzblZNO0lBT0k7RXRFd25WVjs7RXNFL25WTTtJQU9JO0V0RTRuVlY7O0VzRW5vVk07SUFPSTtJQUFBO0V0RWlvVlY7O0VzRXhvVk07SUFPSTtJQUFBO0V0RXNvVlY7O0VzRTdvVk07SUFPSTtJQUFBO0V0RTJvVlY7O0VzRWxwVk07SUFPSTtJQUFBO0V0RWdwVlY7O0VzRXZwVk07SUFPSTtJQUFBO0V0RXFwVlY7O0VzRTVwVk07SUFPSTtJQUFBO0V0RTBwVlY7O0VzRWpxVk07SUFPSTtJQUFBO0V0RStwVlY7O0VzRXRxVk07SUFPSTtJQUFBO0V0RW9xVlY7O0VzRTNxVk07SUFPSTtJQUFBO0V0RXlxVlY7O0VzRWhyVk07SUFPSTtJQUFBO0V0RThxVlY7O0VzRXJyVk07SUFPSTtJQUFBO0V0RW1yVlY7O0VzRTFyVk07SUFPSTtJQUFBO0V0RXdyVlY7O0VzRS9yVk07SUFPSTtFdEU0clZWOztFc0Vuc1ZNO0lBT0k7RXRFZ3NWVjs7RXNFdnNWTTtJQU9JO0V0RW9zVlY7O0VzRTNzVk07SUFPSTtFdEV3c1ZWOztFc0Uvc1ZNO0lBT0k7RXRFNHNWVjs7RXNFbnRWTTtJQU9JO0V0RWd0VlY7O0VzRXZ0Vk07SUFPSTtFdEVvdFZWOztFc0UzdFZNO0lBT0k7RXRFd3RWVjs7RXNFL3RWTTtJQU9JO0V0RTR0VlY7O0VzRW51Vk07SUFPSTtFdEVndVZWOztFc0V2dVZNO0lBT0k7RXRFb3VWVjs7RXNFM3VWTTtJQU9JO0V0RXd1VlY7O0VzRS91Vk07SUFPSTtFdEU0dVZWOztFc0VudlZNO0lBT0k7RXRFZ3ZWVjs7RXNFdnZWTTtJQU9JO0V0RW92VlY7O0VzRTN2Vk07SUFPSTtFdEV3dlZWOztFc0UvdlZNO0lBT0k7RXRFNHZWVjs7RXNFbndWTTtJQU9JO0V0RWd3VlY7O0VzRXZ3Vk07SUFPSTtFdEVvd1ZWOztFc0Uzd1ZNO0lBT0k7RXRFd3dWVjs7RXNFL3dWTTtJQU9JO0V0RTR3VlY7O0VzRW54Vk07SUFPSTtFdEVneFZWOztFc0V2eFZNO0lBT0k7RXRFb3hWVjs7RXNFM3hWTTtJQU9JO0V0RXd4VlY7O0VzRS94Vk07SUFPSTtFdEU0eFZWOztFc0VueVZNO0lBT0k7RXRFZ3lWVjs7RXNFdnlWTTtJQU9JO0V0RW95VlY7QUFDRjtBdUV4MVZBO0VENENRO0lBT0k7RXRFeXlWVjs7RXNFaHpWTTtJQU9JO0V0RTZ5VlY7O0VzRXB6Vk07SUFPSTtFdEVpelZWOztFc0V4elZNO0lBT0k7RXRFcXpWVjtBQUNGO0F1RXQxVkE7RUR5QlE7SUFPSTtFdEUwelZWOztFc0VqMFZNO0lBT0k7RXRFOHpWVjs7RXNFcjBWTTtJQU9JO0V0RWswVlY7O0VzRXowVk07SUFPSTtFdEVzMFZWOztFc0U3MFZNO0lBT0k7RXRFMDBWVjs7RXNFajFWTTtJQU9JO0V0RTgwVlY7O0VzRXIxVk07SUFPSTtFdEVrMVZWOztFc0V6MVZNO0lBT0k7RXRFczFWVjs7RXNFNzFWTTtJQU9JO0V0RTAxVlY7O0VzRWoyVk07SUFPSTtFdEU4MVZWO0FBQ0Y7QXdFcjZWQTtBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4RXM2Vko7O0F3RXA2VkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4RXU2Vko7QXdFcjZWSTtFQUNJO0F4RXU2VlI7QXdFcDZWSTtFQUNJO0VBQ0E7QXhFczZWUjs7QXdFbjZWQTs7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4RXM2Vko7O0F3RW42VkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhFczZWSjtBd0VwNlZJO0VBRUk7RUFDQTtBeEVxNlZSO0F3RWw2Vkk7RUFDSTtBeEVvNlZSO0F3RWo2Vkk7RUFDSTtBeEVtNlZSOztBd0VoNlZBO0VBQ0k7RUFDQTtFQUNBO0VBV0E7QXhFeTVWSjtBd0VuNlZJO0VBQ0k7QXhFcTZWUjtBd0VuNlZJO0VBQ0k7QXhFcTZWUjtBd0VuNlZJO0VBQ0k7QXhFcTZWUjtBd0VoNlZJO0VBQ0k7QXhFazZWUjtBd0UvNVZJO0VBQ0k7QXhFaTZWUjtBd0U5NVZJO0VBQ0k7QXhFZzZWUjtBd0U3NVZJO0VBQ0k7RUFDQTtFQUNBO0F4RSs1VlI7O0F3RTU1VkE7RUFDSTtBeEUrNVZKOztBQXIvVkE7O0VBQUE7QXlFWkE7O0VBQUE7QUFLQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F6RWtnV0Y7O0F5RXY5VkE7O0VBQUE7QUFPQTs7RUFBQTtBQU1BOztFQUFBO0FDMUVBOztFQUFBO0FBSUE7RUFDRTtBMUUraFdGOztBMEU1aFdBO0VBQ0UseUJEcUJNO0VDcEJOLGNEbUJNO0VDbEJOLDJDRHNEaUI7RUNyRGpCO0VBQ0E7RUFDQTtFQUNBO0ExRStoV0Y7O0EwRTVoV0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExRStoV0Y7O0EwRTVoV0E7RUFDRSx3QkRKZ0I7RUNLaEI7QTFFK2hXRjtBMEU5aFdFO0VBQ0Usc0JEUlM7QXpFd2lXYjs7QTBFNWhXQTtFQUNFO0ExRStoV0Y7O0EwRTVoV0E7RUFDRTtBMUUraFdGOztBMEU1aFdBO0VBQ0UseUJEWk87RUNhUDtBMUUraFdGOztBMEU1aFdBO0VBQ0U7RUFDQSxpQ0QzQlc7QXpFMGpXYjs7QTBFNWhXQTtFQUNFO0ExRStoV0Y7O0EwRTNoV0E7RUFDRTtBMUU4aFdGOztBMkV4bFdBO0VBQ0U7RUFDQTtBM0UybFdGO0EyRTFsV0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGNGaUNNO0F6RTJqV1Y7QTJFM2xXSTtFQUNFO0EzRTZsV047QTJFNWxXTTtFQUNFO0EzRThsV1I7QTJFNWxXTTtFQUNFO0EzRThsV1I7O0E0RTdtV0E7O0VBQUE7QUFHQTs7RUFDRTtFQUNBO0VBQ0E7QTVFaW5XRjs7QTRFOW1XQTs7RUFJRTtFQUNBLGlDSFFXO0VHUFgsNkJIT1c7RUdOWCxjSGNNO0F6RWltV1I7QTRFN21XRTs7RUFDRSxjSFdJO0VHVkosd0NIS21CO0VHSm5CLHFDSEtvQjtBekUybVd4QjtBNEU3bVdFOzs7RUFFRSx3Q0hEbUI7RUdFbkIsbUNISGtCO0VHSWxCO0E1RWduV0o7QTRFN21XRTs7RUFDRTtBNUVnbldKO0E0RTdtV0U7OztFQUVFLHlCSERLO0VHRUwscUJIRks7RUdHTCxjSEVNO0VHRE47QTVFZ25XSjs7QTRFNW1XQTtFQUdFLDZCSHpCVztFRzBCWCxzQkgxQlc7QXpFdW9XYjtBNEUzbVdFO0VBQ0UsY0hyQkk7RUdzQkosaUNIOUJTO0F6RTJvV2I7QTRFMW1XRTtFQUVFLGNIM0JJO0VHNEJKLGlDSHBDUztFR3FDVDtBNUUybVdKO0E0RXhtV0U7RUFDRTtBNUUwbVdKOztBNEV0bVdBO0VBQ0U7RUFDQTtBNUV5bVdGO0E0RXZtV0U7RUFDRSx5QkhwQ0s7RUdxQ0wscUJIckNLO0F6RThvV1Q7QTRFdm1XSTtFQUdFLHlCSDFDRztFRzJDSCxxQkgzQ0c7QXpFa3BXVDs7QTRFam1XQTtFQUNFO0VBQ0E7QTVFb21XRjtBNkU5b1ZJO0VEeGRKO0lBS0k7RTVFcW1XRjtBQUNGOztBNEVsbVdBO0VBQ0U7RUFDQTtFQUNBLGNIeERRO0VHeURSO0E1RXFtV0Y7O0E0RWxtV0E7RUFDRSx5QkhsRU87RUdtRVAscUJIbkVPO0VHb0VQLGNIL0RRO0VHZ0VSO0E1RXFtV0Y7QTRFbm1XRTtFQUNFLHlCSHhFSztFR3lFTCxxQkh6RUs7RUcwRUwsY0hyRU07RUdzRU47QTVFcW1XSjs7QTRFaG1XQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUVtbVdGO0E0RWptV0U7RUFDRTtFQUNBO0E1RW1tV0o7QTRFaG1XRTtFQUNFO0E1RWttV0o7QTRFL2xXRTtFQUNFO0E1RWltV0o7O0E4RTF1V0E7O0VBQUE7QUFJQTtFQUNFO0E5RTR1V0Y7QThFM3VXRTtFQUNFO0E5RTZ1V0o7QThFM3VXRTtFQUNFLGNMa0NNO0VLakNOO0VBQ0E7QTlFNnVXSjtBOEUzdVdFO0VBQ0U7RUFDQSxjTG9CSztFS25CTDtBOUU2dVdKO0E4RTN1V0U7RUFDRSxjTHdCTTtBekVxdFdWO0E4RTN1V0U7RUFDRTtBOUU2dVdKO0E4RTN1V0U7RUFDRTtFQUNBLHNCTExTO0F6RWt2V2I7QThFM3VXRTtFQUNFO0E5RTZ1V0o7QThFM3VXRTtFQUNFO0E5RTZ1V0o7O0ErRTl3V0E7O0VBQUE7QUFHQTtFQUNFO0EvRWl4V0Y7O0ErRTl3V0E7RUFDRSxjTjRCTztBekVxdldUOztBK0U5d1dBOzs7O0VBSUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0VpeFdGO0ErRS93V0U7Ozs7Ozs7Ozs7RUFHRTtFQUNBLDZCTkhTO0F6RTJ4V2I7QStFcnhXRTs7OztFQUNFLGlCTnNCSTtBekVvd1dSOztBK0V0eFdBO0VBQ0U7QS9FeXhXRjs7QStFbnhXRTs7O0VBQ0U7RUFDQTtFQUNBO0EvRXd4V0o7QStFdHhXSTs7O0VBQ0UsZ0NOakJFO0VNa0JGO0VBQ0E7RUFDQTtBL0UweFdOO0ErRXZ4V0k7Ozs7O0VBRUU7RUFDQSw2Qk5qQ087QXpFNnpXYjs7QStFdHhXRTtFQUNFLGlDTnhDUztFTXlDVCw2Qk56Q1M7QXpFazBXYjtBK0V0eFdFO0VBQ0U7RUFDQSw2Qk45Q1M7QXpFczBXYjs7QStFcHhXQTtFQUNFO0EvRXV4V0Y7QStFcnhXRTs7RUFFRTtFQUNBO0EvRXV4V0o7QStFcHhXRTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsY043Q1E7QXpFbTBXWjtBK0VueFdFOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxtQk52RUk7QXpFNDFXUjtBK0VseFdFOztFQUVFO0VBQ0Esc0JOckZTO0VNc0ZUO0VBQ0E7RUFDQTtFQUNBO0EvRW94V0o7QStFanhXRTtFQUNFO0VBQ0E7QS9FbXhXSjtBK0VoeFdFO0VBQ0U7RUFDQTtBL0VreFdKO0ErRS93V0U7RUFDRTtFQUNBO0EvRWl4V0o7QStFL3dXSTs7RUFFRTtFQUNBO0EvRWl4V047QStFOXdXSTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtBL0VneFdOO0ErRTd3V0k7O0VBRUU7RUFDQTtFQUNBO0VBQ0E7QS9FK3dXTjs7QStFMXdXQTtFQUNFO0VBQ0EsbUJOeEhLO0VNeUhMO0EvRTZ3V0Y7QStFMXdXSTtFQUNFO0EvRTR3V047QStFeHdXRTtFQUNFO0EvRTB3V0o7O0ErRXR3V0E7RUFDRTtBL0V5d1dGO0ErRXR3V0k7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9Fd3dXTjtBK0V0d1dNO0VBRUU7RUFDQTtBL0V1d1dSO0ErRXB3V007RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvRXN3V1I7O0ErRWh3V0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBL0Vtd1dGOztBK0UvdldFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvRWt3V0o7O0ErRTl2V0E7RUFDRTtFQUNBLFVOdEtNO0VNdUtOO0VBQ0E7QS9FaXdXRjs7QStFN3ZXRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0EvRWd3V0o7QStFN3ZXRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9FK3ZXSjtBK0U1dldFO0VBQ0UsaUNONU5TO0VNNk5ULDZCTjdOUztBekUyOVdiOztBK0UxdldBOztFQUFBO0FBR0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9FNnZXRjtBK0UzdldFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QS9FNnZXSjtBK0UxdldFO0VBQ0U7RUFDQTtFQUNBO0EvRTR2V0o7QStFenZXRTtFQUNFO0VBQ0E7RUFDQTtBL0UydldKO0ErRXh2V0U7RUFDRTtFQUNBO0VBQ0E7QS9FMHZXSjtBK0V2dldFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0V5dldKO0ErRXR2V0U7RUFDRTtBL0V3dldKO0ErRXJ2V0U7RUFDRTtBL0V1dldKO0ErRXB2V0U7RUFDRTtFQUNBO0VBQ0E7QS9Fc3ZXSjtBK0VudldFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0VxdldKO0ErRWx2V0U7RUFDRTtFQUNBO0VBQ0E7QS9Fb3ZXSjtBK0VqdldFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QS9FbXZXSjtBK0VodldFO0VBQ0U7RUFDQTtFQUNBO0EvRWt2V0o7QStFL3VXRTtFQUNFO0EvRWl2V0o7QStFOXVXRTtFQUNFO0VBQ0E7QS9FZ3ZXSjtBK0U3dVdFO0VBOUZGO0lBK0ZJO0lBQ0E7RS9FZ3ZXRjtFK0U5dVdFO0lBQ0U7RS9FZ3ZXSjtFK0U3dVdFO0lBQ0U7SUFDQTtFL0UrdVdKO0UrRTV1V0U7SUFDRTtFL0U4dVdKO0FBQ0Y7O0ErRTF1V0E7RUFDRTtBL0U2dVdGOztBZ0Z6bFhBOztFQUFBO0FBR0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoRjRsWEY7QTZFdmpXSTtFRzFpQko7SUFPSTtFaEY4bFhGO0FBQ0Y7O0FnRjNsWEE7RUFDRTtFQUNBO0VBQ0E7RUFDQSx5QlBlUTtFT2RSO0VBQ0E7RUFDQTtBaEY4bFhGO0FnRjdsWEU7RUFDRTtFQUNBLGNQYWE7RU9aYjtFQUNBLHFDUHdDWTtBekV1alhoQjtBZ0Y3bFhFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhGK2xYSjtBZ0Y3bFhFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoRitsWEo7O0FnRjNsWEE7RUFDRSx5QlBMUztBekVtbVhYO0FnRjdsWEU7RUFDRSxjUHZCSTtBekVzblhSO0FnRjdsWEU7RUFDRTtBaEYrbFhKOztBZ0YxbFhFO0VBQ0U7QWhGNmxYSjtBZ0YzbFhFO0VBQ0U7QWhGNmxYSjs7QWlGOXBYQTs7RUFBQTtBQUdBO0VBQ0Usc0JSa0JXO0VRakJYO0VBQ0E7RUFDQSxxQ1IyRGM7RVExRGQ7RUFDQTtFQUNBO0FqRmlxWEY7O0FpRjlwWEE7RUFDRSxzQlJRVztFUVBYO0VBQ0E7RUFDQTtBakZpcVhGOztBaUY5cFhBO0VBQ0Usc0JSQ1c7RVFBWDtFQUNBO0FqRmlxWEY7O0FpRjlwWEE7RUFDRTtFQUNBLHNCUk5XO0VRT1g7RUFDQTtBakZpcVhGO0FpRmhxWEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakZrcVhKO0FpRmhxWEU7RUFDRTtFQUNBO0VBQ0E7RUFDQSxtQlJkSTtFUWVKO0FqRmtxWEo7QWlGL3BYRTtFQUNFO0VBQ0E7QWpGaXFYSjs7QWlGN3BYQTtFQUNFO0VBQ0EsY1JkUztBekU4cVhYOztBa0Z4dFhBOztFQUFBO0FBSUE7RUFDRTtBbEYwdFhGOztBa0Z2dFhBO0VBR0U7RUFDQTtFQUNEO0VBQ0EsY1R3Qlk7RVN2Qlo7QWxGd3RYRDs7QW1GdnVYQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkYwdVhGO0FtRnh1WEU7RUFDRTtBbkYwdVhKO0E2RTVzV0k7RU03aUJKO0lBbUJJO0VuRjB1WEY7QUFDRjtBbUZ4dVhFO0VBQ0U7RUFDQTtBbkYwdVhKO0FtRnZ1WEU7O0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLG1CVkpJO0VVS0o7RUFDQTtFQUNBO0VBQ0E7QW5GeXVYSjtBbUZ2dVhJOztFQUNFO0VBQ0E7RUFDQTtBbkYwdVhOO0FtRnR1WEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5Gd3VYSjtBbUZ0dVhJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkZ3dVhOO0FtRnR1WE07RUFDRTtJQUNFO0VuRnd1WFI7RW1GcnVYTTtJQUNFO0VuRnV1WFI7QUFDRjtBbUZwdVhNO0VBQ0U7SUFDRTtFbkZzdVhSO0VtRm51WE07SUFDRTtFbkZxdVhSO0FBQ0Y7QW1GaHVYRTtFQUNFLHNCVjNFUztFVTRFVCwyQ1ZqQ2U7RVVrQ2Y7RUFDQTtFQUNBO0FuRmt1WEo7QW1GL3RYRTs7O0VBRUUsY1ZuRUc7RVVvRUg7QW5Ga3VYSjtBbUYvdFhFO0VBQ0U7RUFDQSxpQ1YxRlM7RVUyRlQ7RUFDQSxjVnBGSTtBekVxelhSO0FtRi90WEk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GaXVYTjtBbUYvdFhNO0VBQ0U7RUFDQTtBbkZpdVhSO0FtRjV0WEU7OztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRit0WEo7O0FtRjN0WEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbkY4dFhGO0FtRjV0WEU7RUFDRTtFQUNBO0FuRjh0WEo7O0FtRjF0WEE7RUFHRTtBbkYydFhGOztBbUZ4dFhBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsbUJWOUlNO0VVK0lOO0VBQ0E7QW5GMnRYRjs7QW1GeHRYQTtFQUNFO0VBQ0E7QW5GMnRYRjtBNkVoMldJO0VNN1hKO0lBS0k7RW5GNHRYRjtBQUNGOztBbUZ6dFhBO0VBQ0U7QW5GNHRYRjs7QW1GenRYQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRjR0WEY7QW1GMXRYRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkY0dFhKO0FtRnp0WEU7RUFDRTtFQUNBO0FuRjJ0WEo7QW1GeHRYRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkYwdFhKO0FtRnh0WEk7RUFFRTtBbkZ5dFhOOztBb0ZoOFhBOztFQUFBO0FBSUE7RUFDRTtFQUNBO0FwRms4WEY7QTZFMzVXSTtFT3ppQko7SUFJSTtFcEZvOFhGO0FBQ0Y7QW9GbjhYRTtFQUNFO0VBQ0E7RUFDQTtBcEZxOFhKO0FvRnA4WEk7RUFDRTtFQUNBO0FwRnM4WE47QW9GcDhYTTtFQUNFO0VBQ0E7QXBGczhYUjtBb0ZyOFhRO0VBQ0U7QXBGdThYVjtBb0ZyOFhVO0VBQ0U7QXBGdThYWjtBb0ZsOFhNO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsY1hLRDtFV0pDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEZvOFhSO0FvRm44WFE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxpQ1gxQkc7RVcyQkg7QXBGcThYVjtBb0ZqOFhNOztFQUVFLHNCWGpDSztFV2tDTDtBcEZtOFhSO0FvRmw4WFE7O0VBQ0UsY1haQztBekVpOVhYO0FvRm44WFE7O0VBQ0U7QXBGczhYVjtBb0ZoOFhFO0VBQ0U7QXBGazhYSjs7QW9GMTdYUTtFQUNFLGNYdENIO0F6RW0rWFA7QW9GNTdYVTtFQUNFLHlCWGpDRDtBekUrOVhYO0FvRjM3WFE7RUFDRSxjWHJDQztBekVrK1hYOztBb0ZwN1hJO0VBQ0UsY1gvQ0s7QXpFcytYWDtBb0Z0N1hNO0VBQ0UsY1hqREc7QXpFeStYWDtBb0ZyN1hRO0VBQ0UsY1g1REg7QXpFbS9YUDtBb0ZuN1hJO0VBQ0UscUJYMURLO0VXMkRMO0FwRnE3WE47O0FxRjloWUE7O0VBQUE7QUFHQTtFQUNFO0FyRmlpWUY7O0FxRjloWUE7RUFDRTtBckZpaVlGOztBc0Z6aVlBOztFQUFBO0FBSUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHNCYk9XO0VhTlg7RUFDQTtFQUNBLG1CYllNO0F6RStoWVI7QXNGMWlZRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLG1CYklJO0VhSEo7RUFDQTtBdEY0aVlKOztBdUZ4a1lBOztFQUFBO0FBS0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsMkJkV1M7RWNWVDtFQUNBO0VBQ0E7QXZGeWtZSjtBdUZ4a1lJO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsY2RXRTtFY1ZGO0VBQ0E7QXZGMGtZTjtBdUZ4a1lJO0VBQ0U7QXZGMGtZTjtBdUZ4a1lJO0VBQ0U7QXZGMGtZTjs7QXVGdGtZQTtFQUNFO0F2RnlrWUY7O0F3RnptWUE7O0VBQUE7QUFHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhGNG1ZRjtBd0YzbVlFO0VBR0U7RUFDQSw2QmZTUztBekVrbVliOztBd0Z2bVlBO0VBRUU7RUFDQTtFQUNBLDJDZjRDaUI7RWUzQ2pCO0VBQ0E7RUFDQTtBeEZ5bVlGO0F3RnhtWUU7RUFDRTtFQUNBO0F4RjBtWUo7QTZFeGxYSTtFVzVoQko7SUFhSTtFeEYybVlGO0FBQ0Y7QXdGMW1ZRTtFQUNFLHlCZkNHO0F6RTJtWVA7QXdGMW1ZRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F4RjRtWUo7QXdGM21ZSTtFQUNFO0F4RjZtWU47QXdGMW1ZRTtFQUNFLGNmUFM7RWVRVDtBeEY0bVlKOztBeUYxcFlBOztFQUFBO0FBSUE7RUFDRSxxQmhCK0JPO0VnQjlCUDtBekY0cFlGO0F5RjNwWUU7RUFDRTtBekY2cFlKOztBeUZ6cFlBO0VBQ0U7QXpGNHBZRjs7QXlGenBZQTtFQUNFLGNoQndCUTtBekVvb1lWOztBMEY3cVlBO0VBQ0U7RUFDQSwyQ2pCK0RpQjtFaUI5RGpCO0VBQ0E7QTFGZ3JZRjs7QTBGN3FZQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0ExRmdyWUY7O0EwRjdxWUE7RUFDRSwyQ2pCa0RpQjtFaUJqRGpCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGNqQmlCSztFaUJoQkw7RUFDQTtFQUNBO0ExRmdyWUY7QTBGOXFZRTtFQUNFO0VBQ0E7QTFGZ3JZSjtBMEY3cVlFO0VBQ0Usd0JqQlZjO0VpQldkO0ExRitxWUo7O0EwRjNxWUE7RUFDRTtFQUNBO0VBQ0E7RUFDQSx5QmpCVlM7RWlCV1Q7QTFGOHFZRjtBMEY1cVlFO0VBQ0U7QTFGOHFZSjtBMEYzcVlFO0VBQ0U7RUFDQTtFQUNBO0ExRjZxWUo7QTBGM3FZSTtFQUNFO0ExRjZxWU47QTBGenFZRTtFQUNFO0ExRjJxWUo7QTBGenFZSTtFQUNFO0ExRjJxWU47QTBGeHFZSTtFQUNFO0ExRjBxWU47QTBGdnFZSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0ExRnlxWU47QTZFdHNYSTtFYXZlQTtJQU9JO0lBQ0E7RTFGMHFZTjtBQUNGO0EwRnRxWUU7RUFDRTtFQUNBO0VBQ0EseUJqQnRETztFaUJ1RFA7QTFGd3FZSjtBMEZ0cVlJO0VBQ0U7QTFGd3FZTjtBNkVydFhJO0VhOWNBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UxRnNxWUo7RTBGbnFZRTtJQUNFO0UxRnFxWUo7QUFDRjs7QTBGanFZQTtFQUNFLHlCakJqRk07RWlCa0ZOLHFCakI1RU87RWlCNkVQO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUZvcVlGO0E2RTd1WEk7RWEvYko7SUFXSTtJQUNBO0UxRnFxWUY7QUFDRjs7QTBGbHFZQTtFQUNFLG1DakJ2R29CO0F6RTR3WXRCOztBMEZscVlBO0VBQ0U7QTFGcXFZRjs7QTBGbHFZQTs7RUFFRTtFQUNBO0ExRnFxWUY7O0E2RWp3WEk7RWFqYUo7SUFFSTtFMUZxcVlGO0FBQ0Y7O0EwRmxxWUE7RUFDRSx5QmpCckhNO0VpQnNITixxQmpCaEhPO0VpQmlIUDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExRnFxWUY7O0EwRmxxWUE7RUFDRSxtQ2pCcklvQjtBekUweVl0Qjs7QTBGbHFZQTtFQUNFO0VBQ0E7RUFDQTtBMUZxcVlGO0EwRm5xWUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBMUZxcVlKOztBMEZqcVlBOztFQUVFO0VBQ0E7RUFDQSx5QmpCakpTO0VpQmtKVDtFQUNBO0VBQ0E7RUFDQTtBMUZvcVlGO0EwRmxxWUU7OztFQUVFO0ExRnFxWUo7QTBGbHFZRTs7OztFQUVFLGNqQnBKTztFaUJxSlA7RUFDQSwyQ2pCL0hlO0VpQmdJZjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExRnNxWUo7QTBGbnFZRTs7O0VBQ0UsMkNqQnhJZTtFaUJ5SWYsY2pCL0pRO0VpQmdLUjtFQUNBO0VBQ0E7RUFDQTtBMUZ1cVlKO0EwRnBxWUU7OztFQUNFLDJDakJqSmU7RWlCa0pmLGNqQnJLTztFaUJzS1A7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExRndxWUo7QTBGcnFZRTs7O0VBQ0UsMkNqQjVKZTtFaUI2SmYsY2pCaExPO0VpQmlMUDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExRnlxWUo7QTBGdnFZSTs7O0VBQ0Usd0JqQmxOWTtFaUJtTlo7QTFGMnFZTjtBMEZ2cVlFOztFQUNFLGNqQmpNTztFaUJrTVA7QTFGMHFZSjtBMEZ2cVlFOztFQUNFO0VBQ0EsbUJqQnZOSTtFaUJ3Tko7QTFGMHFZSjtBMEZ2cVlFOztFQUNFO0VBQ0E7QTFGMHFZSjtBMEZ4cVlJOztFQUNFO0ExRjJxWU47QTBGdnFZRTs7RUFDRTtBMUYwcVlKO0EwRnZxWUU7O0VBQ0U7RUFDQTtFQUVBO0VBQ0EsaUNqQjNNYTtFaUI0TWI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsY2pCcE9PO0F6RTY0WVg7QTBGdHFZRTs7RUFDRTtFQUNBO0ExRnlxWUo7QTBGdHFZRTs7RUFDRTtFQUNBO0VBQ0EsMkNqQjVOZTtFaUI2TmYsY2pCcFBPO0VpQnFQUDtBMUZ5cVlKO0EwRnRxWUU7O0VBQ0U7RUFDQSx5QmpCalFJO0VpQmtRSjtFQUNBO0ExRnlxWUo7QTBGdnFZSTs7RUFDRTtFQUNBO0VBQ0E7QTFGMHFZTjtBMEZ2cVlJOztFQUNFO0VBQ0E7QTFGMHFZTjtBMEZ2cVlJOztFQUNFO0VBQ0E7QTFGMHFZTjtBMEZ2cVlJOztFQUNFO0VBQ0E7RUFDQTtBMUYwcVlOO0EwRnhxWU07O0VBQ0U7RUFDQSwyQ2pCOVBXO0VpQitQWCxjakJ0Ukc7RWlCdVJIO0VBQ0E7RUFDQTtFQUNBO0ExRjJxWVI7QTBGenFZUTs7RUFDRTtFQUNBO0VBQ0EseUJqQjNSQztFaUI0UkQ7RUFDQTtFQUNBO0ExRjRxWVY7QTBGdnFZSTs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBMUYwcVlOO0EwRnZxWUk7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTFGMHFZTjtBMEZ2cVlJOztFQUNFO0VBQ0E7RUFDQTtFQUNBO0ExRjBxWU47QTBGdnFZSTs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBMUYwcVlOO0EwRnZxWUk7O0VBQ0U7RUFDQTtFQUNBO0ExRjBxWU47QTBGdnFZSTs7RUFDRTtBMUYwcVlOO0EwRnZxWUk7O0VBQ0U7QTFGMHFZTjtBMEZ0cVlFOztFQUNFO0ExRnlxWUo7QTBGdHFZRTs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBMUZ5cVlKO0EwRnZxWUk7O0VBQ0U7RUFDQTtBMUYwcVlOO0EwRnZxWUk7O0VBQ0U7RUFDQTtBMUYwcVlOO0EwRnZxWUk7O0VBQ0UsMkNqQmhWYTtFaUJpVmI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGNqQnpXSztFaUIwV0w7QTFGMHFZTjtBMEZ2cVlJOztFQUNFO0ExRjBxWU47QTBGeHFZTTs7RUFDRSxjakJqWUE7QXpFNGlaUjtBMEZ4cVlNOztFQUNFO0ExRjJxWVI7QTBGdHFZRTs7RUFDRTtFQUNBO0VBQ0E7QTFGeXFZSjtBMEZ2cVlJOztFQUNFO0ExRjBxWU47QTBGdnFZSTs7RUFDRTtFQUNBO0VBQ0EsY2pCellNO0VpQjBZTjtFQUNBO0ExRjBxWU47QTBGdnFZSTs7RUFDRTtFQUNBO0ExRjBxWU47QTBGdnFZSTs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBMUYwcVlOO0EwRnZxWUk7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExRjBxWU47QTBGeHFZTTs7RUFDRSxjakJ4Wkk7QXpFbWtaWjtBMEZ4cVlNOztFQUNFLGNqQjNaSTtBekVza1paO0EwRnhxWU07O0VBQ0UsY2pCOVpGO0F6RXlrWk47QTBGeHFZTTs7RUFDRSxjakJqYUE7QXpFNGtaUjtBMEZ4cVlNOztFQUNFLGNqQnBhSTtBekUra1paO0EwRnZxWUk7O0VBQ0U7RUFDQTtFQUNBO0ExRjBxWU47QTBGdHFZRTs7RUFDRTtFQUNBO0VBQ0E7QTFGeXFZSjtBMEZ0cVlFOztFQUNFO0VBQ0E7RUFDQTtFQUNBLHlCakJqZEc7RWlCa2RILGNqQjFjTztFaUIyY1A7RUFDQTtFQUNBO0VBQ0E7QTFGeXFZSjtBMEZ0cVlFOztFQUNFLHlCakI5Y087RWlCK2NQO0VBQ0E7RUFDQTtFQUNBLGNqQmxlSTtFaUJtZUo7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExRnlxWUo7QTBGdHFZRTs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBMUZ5cVlKO0EwRnRxWUU7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTFGeXFZSjtBMEZ0cVlFOztFQUNFO0VBQ0E7RUFDQTtFQUNBO0ExRnlxWUo7QTBGdHFZRTs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExRnlxWUo7QTBGdnFZSTs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBMUYwcVlOO0EwRnZxWUk7O0VBQ0Usd0JqQnRoQlk7QXpFZ3NabEI7QTBGdnFZSTs7RUFDRSxjakJuZ0JLO0F6RTZxWlg7QTBGdHFZRTs7RUFDRTtFQUNBO0VBQ0E7QTFGeXFZSjtBMEZ2cVlJOztFQUNFO0VBQ0E7QTFGMHFZTjtBMEZ2cVlJOztFQUNFO0VBQ0E7RUFDQTtBMUYwcVlOO0EwRnZxWUk7O0VBQ0U7QTFGMHFZTjs7QTBGcnFZQTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUEseUJqQmpqQks7RWlCa2pCTDtFQUNBO0VBQ0E7RUFFQTtBMUZzcVlGOztBMEZqcVlJO0VBQ0UsYWpCeGpCTztBekU0dFpiO0EwRmhxWUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxtQmpCemtCTztBekUydVpYOztBMEY5cFlBO0VBQ0UsNEJqQnRsQm9CO0VpQnVsQnBCO0VBQ0E7RUFDQTtBMUZpcVlGOztBMEY5cFlBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTFGaXFZRjtBMEYvcFlFO0VBQ0UsY2pCbGxCTTtFaUJtbEJOO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUZpcVlKO0EwRjlwWUU7RUFDRTtFQUNBO0VBQ0E7QTFGZ3FZSjtBMEY3cFlFO0VBQ0U7RUFDQTtFQUNBO0ExRitwWUo7O0EwRjNwWUE7RUFDRTtFQUNBLG1DakIzbkJvQjtBekV5eFp0Qjs7QTBGM3BZQTtFQUNFO0VBQ0EsbUNqQmhvQm9CO0F6RTh4WnRCOztBMEYzcFlBO0VBQ0U7QTFGOHBZRjtBMEY1cFlFO0VBQ0U7RUFDQTtFQUNBO0ExRjhwWUo7QTBGNXBZSTtFQUNFO0ExRjhwWU47O0EwRnpwWUE7RUFDRTtBMUY0cFlGOztBMEZ6cFlBO0VBQ0U7QTFGNHBZRjs7QTBGenBZQTtFQUNFO0VBQ0E7QTFGNHBZRjs7QTBGenBZQTs7RUFFRTtBMUY0cFlGOztBMEZ4cFlFO0VBQ0U7QTFGMnBZSjtBMEZ4cFlFO0VBQ0U7RUFDQTtBMUYwcFlKO0EwRnZwWUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBMUZ5cFlKO0EwRnRwWUU7RUFDRTtBMUZ3cFlKO0EwRnJwWUU7RUFDRTtBMUZ1cFlKO0EwRm5wWUk7RUFDRTtBMUZxcFlOO0EwRmxwWUk7O0VBRUU7QTFGb3BZTjtBMEYvb1lJO0VBQ0U7QTFGaXBZTjtBMEY5b1lJO0VBQ0U7QTFGZ3BZTjtBMEY3b1lJOztFQUVFO0ExRitvWU47QTBGNW9ZSTtFQUNFO0VBQ0E7QTFGOG9ZTjtBMEZ6b1lJO0VBQ0U7QTFGMm9ZTjtBMEZ4b1lJO0VBQ0U7RUFDQTtBMUYwb1lOO0EwRnJvWUk7RUFDRTtFQUNBO0ExRnVvWU47QTBGcG9ZSTtFQUNFO0VBQ0Esd0JqQi91Qlk7RWlCZ3ZCWjtFQUNBO0VBQ0E7QTFGc29ZTjtBMEZub1lJO0VBQ0U7RUFDQTtFQUNBO0ExRnFvWU47QTBGbG9ZSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFGb29ZTjtBMEYvbllJO0VBQ0U7RUFDQTtFQUNBO0ExRmlvWU47QTBGNW5ZSTtFQUNFO0ExRjhuWU47QTBGM25ZSTtFQUNFO0VBQ0E7RUFDQTtBMUY2bllOO0EwRjNuWU07RUFDRTtBMUY2bllSO0EwRjFuWU07RUFDRTtFQUNBO0ExRjRuWVI7QTBGem5ZTTtFQUNFO0ExRjJuWVI7QTBGcm5ZSTtFQUNFO0ExRnVuWU47QTBGcG5ZSTtFQUNFO0VBQ0E7RUFDQTtBMUZzbllOO0EwRnBuWU07RUFDRTtBMUZzbllSO0EwRm5uWU07RUFDRTtFQUNBO0ExRnFuWVI7QTBGbG5ZTTtFQUNFO0ExRm9uWVI7QTBGOW1ZSTtFQUNFO0ExRmduWU47QTBGOW1ZTTtFQUNFO0ExRmduWVI7QTBGMW1ZSTtFQUNFO0ExRjRtWU47QTBGMW1ZTTtFQUNFO0ExRjRtWVI7QTBGem1ZTTtFQUNFO0ExRjJtWVI7QTBGeG1ZTTtFQUNFO0ExRjBtWVI7O0EwRm5tWUE7RUFFRTs7SUFFRTtFMUZxbVlGOztFMEZsbVlBO0lBQ0U7RTFGcW1ZRjs7RTBGbG1ZQTs7SUFFRTtFMUZxbVlGOztFMEZsbVlBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RTFGcW1ZRjtFMEZubVlFOztJQUVFO0UxRnFtWUo7RTBGbG1ZRTtJQUNFO0UxRm9tWUo7O0UwRmhtWUE7SUFDRTtFMUZtbVlGOztFMEZobVlBO0lBQ0U7RTFGbW1ZRjs7RTBGaG1ZQTtJQUNFO0UxRm1tWUY7O0UwRmhtWUE7SUFDRTtFMUZtbVlGOztFMEZobVlBO0lBQ0U7SUFDQTtFMUZtbVlGOztFMEZobVlBO0lBQ0U7RTFGbW1ZRjs7RTBGaG1ZQTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0UxRm1tWUY7O0UwRmhtWUE7SUFDRTtJQUNBO0UxRm1tWUY7O0UwRmhtWUE7SUFDRTtJQUNBO0UxRm1tWUY7O0UwRi9sWUU7SUFDRTtFMUZrbVlKO0UwRi9sWUU7SUFDRTtJQUNBO0lBQ0E7RTFGaW1ZSjtFMEY5bFlFO0lBQ0U7RTFGZ21ZSjtFMEY3bFlFO0lBQ0U7RTFGK2xZSjtFMEY3bFlJOztJQUVFO0UxRitsWU47RTBGM2xZRTtJQUNFLHlCakJ4N0JFO0lpQnk3QkY7RTFGNmxZSjtFMEYzbFlJO0lBQ0UseUJqQnQ3QkM7SWlCdTdCRCxjakIvNkJFO0lpQmc3QkY7RTFGNmxZTjtFMEZ6bFlFO0lBQ0U7SUFDQTtFMUYybFlKO0UwRnhsWUU7SUFDRTtFMUYwbFlKO0UwRnZsWUU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFMUZ5bFlKO0UwRnRsWUU7SUFDRTtJQUNBO0UxRndsWUo7RTBGcmxZRTtJQUNFO0lBQ0E7RTFGdWxZSjtFMEZybFlJO0lBQ0U7SUFDQTtFMUZ1bFlOO0UwRm5sWUU7SUFDRTtFMUZxbFlKO0UwRmpsWUk7SUFDRTtJQUNBO0UxRm1sWU47RTBGL2tZRTtJQUNFO0lBQ0E7RTFGaWxZSjtFMEYva1lJO0lBQ0U7RTFGaWxZTjtFMEY5a1lJO0lBQ0U7SUFDQSxjakIxK0JHO0V6RTBqYVQ7RTBGM2tZSTtJQUNFO0lBQ0E7RTFGNmtZTjtFMEYxa1lJOztJQUVFO0lBQ0E7RTFGNGtZTjtFMEZ6a1lJO0lBQ0U7SUFDQTtFMUYya1lOO0UwRnhrWUk7SUFDRTtFMUYwa1lOO0UwRnJrWUk7SUFDRTtJQUNBO0UxRnVrWU47RTBGcGtZSTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0UxRnNrWU47RTBGbGtZRTtJQUNFO0lBQ0E7RTFGb2tZSjtFMEZoa1lJO0lBQ0U7SUFDQTtJQUNBO0UxRmtrWU47RTBGL2pZSTtJQUNFO0UxRmlrWU47RTBGOWpZSTtJQUNFO0lBQ0E7RTFGZ2tZTjtFMEYzallFO0lBQ0U7SUFDQTtFMUY2allKOztFMEZ6allBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFMUY0allGO0UwRjFqWUU7O0lBRUU7RTFGNGpZSjtFMEZ6allFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UxRjJqWUo7RTBGeGpZRTtJQUNFO0lBQ0E7RTFGMGpZSjtFMEZ4allJO0lBQ0U7RTFGMGpZTjtFMEZ0allFO0lBQ0U7SUFDQTtFMUZ3allKO0UwRnJqWUU7SUFDRTtJQUNBO0UxRnVqWUo7RTBGcmpZSTtJQUNFO0UxRnVqWU47RTBGbGpZSTtJQUNFO0UxRm9qWU47RTBGaGpZRTtJQUNFO0lBQ0E7SUFDQSxjakJ4bUNJO0lpQnltQ0oseUJqQnBuQ0k7SWlCcW5DSjtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UxRmtqWUo7RTBGL2lZRTtJQUNFO0UxRmlqWUo7RTBGOWlZRTtJQUNFO0UxRmdqWUo7RTBGN2lZRTtJQUNFO0UxRitpWUo7RTBGM2lZSTtJQUNFO0UxRjZpWU47RTBGMWlZSTtJQUVFO0UxRjJpWU47RTBGdGlZSTtJQUNFO0UxRndpWU47RTBGcmlZSTtJQUNFO0UxRnVpWU47RTBGbGlZSTtJQUNFO0UxRm9pWU47RTBGamlZSTtJQUNFO0lBQ0E7SUFDQTtFMUZtaVlOO0UwRmppWU07SUFDRTtFMUZtaVlSO0UwRmhpWU07SUFDRTtJQUNBO0lBQ0E7SUFDQSwyQ2pCL29DUztJaUJncENUO0lBQ0E7RTFGa2lZUjtFMEZoaVlRO0lBQ0U7RTFGa2lZVjtFMEYvaFlRO0lBQ0U7RTFGaWlZVjtFMEY3aFlNO0lBQ0UsY2pCcHJDQztJaUJxckNEO0lBQ0E7RTFGK2hZUjtFMEY1aFlNO0lBQ0U7RTFGOGhZUjtFMEYxaFlJO0lBQ0U7RTFGNGhZTjtFMEZ6aFlJO0lBQ0U7SUFDQTtFMUYyaFlOO0UwRnRoWUk7SUFDRTtFMUZ3aFlOO0UwRm5oWUk7SUFDRTtFMUZxaFlOO0UwRmxoWUk7SUFDRTtJQUNBO0lBQ0E7RTFGb2hZTjtFMEZqaFlJO0lBQ0U7SUFDQSx3QmpCOXVDVTtJaUIrdUNWO0lBQ0E7RTFGbWhZTjtFMEZoaFlJO0lBQ0U7SUFDQTtFMUZraFlOO0UwRi9nWUk7SUFDRTtFMUZpaFlOO0UwRi9nWU07SUFDRTtFMUZpaFlSO0UwRjdnWUk7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UxRitnWU47RTBGMWdZSTtJQUNFO0UxRjRnWU47RTBGemdZSTtJQUNFO0UxRjJnWU47RTBGdmdZRTtJQUNFO0lBQ0E7SUFDQTtFMUZ5Z1lKO0UwRnJnWUk7SUFDRTtFMUZ1Z1lOO0UwRmxnWUk7SUFDRTtJQUNBO0UxRm9nWU47RTBGamdZSTtJQUNFO0lBQ0E7RTFGbWdZTjtFMEZoZ1lJO0lBQ0U7RTFGa2dZTjtFMEY3L1hJO0lBQ0U7SUFDQTtFMUYrL1hOO0UwRjUvWEk7SUFDRTtJQUNBO0UxRjgvWE47RTBGMy9YSTtJQUNFO0lBQ0E7SUFDQTtFMUY2L1hOO0UwRjEvWEk7SUFDRTtFMUY0L1hOO0UwRngvWEU7SUFDRTtFMUYwL1hKO0UwRnQvWEk7SUFDRTtFMUZ3L1hOO0UwRnIvWEk7SUFDRTtFMUZ1L1hOO0UwRmwvWEk7SUFDRTtFMUZvL1hOO0UwRmovWEk7SUFDRTtJQUNBO0UxRm0vWE47RTBGaC9YSTtJQUNFO0lBQ0E7RTFGay9YTjtFMEY3K1hJO0lBQ0U7RTFGKytYTjtFMEY1K1hJO0lBQ0U7RTFGOCtYTjtFMEYzK1hJO0lBQ0U7SUFDQTtFMUY2K1hOOztFMEZ4K1hBO0lBQ0U7SUFDQTtJQUNBO0UxRjIrWEY7RTBGeitYRTtJQUNFO0UxRjIrWEo7RTBGeCtYRTtJQUNFO0UxRjArWEo7RTBGditYRTtJQUNFO0UxRnkrWEo7RTBGditYSTtJQUNFO0lBQ0E7SUFDQTtFMUZ5K1hOO0UwRnIrWEU7SUFDRTtFMUZ1K1hKO0FBQ0Y7QTJGMTRhQTtFQUNFO0VBQ0E7RUFDQTtBM0Y0NGFGOztBMkZ6NGFBO0VBQ0U7RUFDQTtFQUNBO0EzRjQ0YUY7O0EyRno0YUE7RUFDRTtFQUNBO0EzRjQ0YUY7O0EyRnY0YUU7RUFDRTtBM0YwNGFKOztBMkZyNGFBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0Z3NGFGO0EyRnQ0YUU7RUFDRTtFQUNBO0EzRnc0YUo7O0EyRnA0YUE7RUFDRSx5QmxCVE07RWtCVU47RUFDQTtBM0Z1NGFGOztBNEZoN2FBO0VBQ0k7QTVGbTdhSjs7QTZGajdhQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E3Rm83YUo7QTZGbDdhSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdGbzdhUjs7QTZGLzZhQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0ZrN2FKOztBNkY1NmFJOztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdGZzdhUjtBNkY5NmFROztFQUNJO0VBQ0E7RUFDQTtBN0ZpN2FaOztBNkYzNmFBO0VBQ0k7QTdGODZhSjtBNkY1NmFJO0VBQ0k7RUFDQTtFQUNBLGNwQlpFO0VvQmFGO0VBQ0E7QTdGODZhUjtBNkYzNmFJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RjY2YVI7QTZGMzZhUTtFQUNJLGNwQmJBO0F6RTA3YVo7QTZGMTZhUTtFQUNJLGNwQmhCQTtBekU0N2FaO0E2Rno2YVE7RUFDSSxjcEJuQk47QXpFODdhTjtBNkZ4NmFRO0VBQ0ksY3BCdEJKO0F6RWc4YVI7QTZGdjZhUTtFQUNJLGNwQnpCQTtBekVrOGFaO0E2RnI2YUk7RUFDSTtFQUNBO0VBQ0E7QTdGdTZhUjtBNkZwNmFJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RnM2YVI7QTZGcDZhUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0ZzNmFaO0E2Rmw2YUk7RUFDSTtFQUNBO0VBQ0E7QTdGbzZhUjtBNkZqNmFJO0VBQ0ksY3BCeEVHO0VvQnlFSDtBN0ZtNmFSOztBNkY5NWFBO0VBQ0k7RUFDQTtBN0ZpNmFKO0E2Ri81YUk7RUFDSTtFQUNBLDJDcEJqRVc7RW9Ca0VYO0VBQ0EsY3BCM0ZFO0F6RTQvYVY7QTZGNzVhSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdGKzVhUjs7QTZGMTVhQTs7RUFFSSwyQ3BCbkZlO0VvQm9GZjtFQUNBLGNwQjFHTTtFb0IyR047QTdGNjVhSjs7QTZGejVhQTtFQUNJLDJDcEIzRmU7RW9CNEZmO0VBQ0Esc0JwQnhJUztFb0J5SVQ7RUFDQTtBN0Y0NWFKOztBNkZwNWFJOzs7Ozs7RUFFSTtBN0YyNWFSO0E2Rng1YUk7OztFQUNJO0E3RjQ1YVI7QTZGejVhSTs7O0VBQ0k7QTdGNjVhUjs7QTZGeDVhQTs7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RjI1YUo7O0E2RnY1YUE7RUFDSTtFQUNBLFVwQmhKSTtFb0JpSko7RUFDQTtBN0YwNWFKOztBNkZ0NWFBO0VBQ0k7RUFDQTtBN0Z5NWFKOztBNkZwNWFJO0VBQ0kseUJwQmpMRztFb0JrTEgsY3BCdEtFO0VvQnVLRjtBN0Z1NWFSO0E2RnA1YUk7RUFDSTtBN0ZzNWFSOztBNkZqNWFBO0VBQ0k7RUFDQTtFQUNBO0E3Rm81YUo7QTZFdGthSTtFZ0JqVko7SUFNUTtJQUNBO0U3RnE1YU47RTZGbjVhTTtJQUNJO0lBQ0E7RTdGcTVhVjtBQUNGOztBNkY5NGFJOztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSwyQnBCL05LO0VvQmdPTDtFQUNBO0VBQ0E7QTdGazVhUjtBNkZoNWFROztFQUNJO0VBQ0E7RUFDQTtFQUNBLGNwQmhPSjtFb0JpT0k7RUFDQTtBN0ZtNWFaO0E2Rmg1YVE7O0VBQ0k7QTdGbTVhWjtBNkZoNWFROztFQUNJO0E3Rm01YVo7O0E2Rjc0YUE7RUFDSSxjcEJuT007QXpFbW5iVjs7QTZGNTRhSTtFQUNJO0E3Ris0YVI7O0E2RjM0YUE7RUFDSTtBN0Y4NGFKOztBNkYxNGFBO0VBQ0k7RUFDQTtFQUNBO0VBQ0EsY3BCeFBNO0VvQnlQTjtBN0Y2NGFKOztBNkZ6NGFBO0VBQ0k7RUFDQTtFQUNBO0E3RjQ0YUo7QTZGMTRhSTtFQUNJO0E3RjQ0YVI7QTZGejRhSTtFQUNJO0VBQ0E7RUFDQTtBN0YyNGFSO0E2Rng0YUk7RUFDSTtFQUNBO0VBQ0EsY3BCL1FFO0VvQmdSRjtBN0YwNGFSO0E2RnY0YUk7RUFDSTtFQUNBLGNwQmhSRztFb0JpUkg7QTdGeTRhUjtBNkZ0NGFJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQSx5QnBCelJHO0VvQjBSSDtFQUNBO0VBQ0E7QTdGdzRhUjs7QThGbHRiQTtFQUNFLDJDckJnRWlCO0VxQi9EakI7RUFDQSxjckJzQ1E7RXFCckNSO0VBQ0E7QTlGcXRiRjs7QThGbHRiQTtFQUNFO0E5RnF0YkY7O0E4Rmx0YkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBOUZxdGJGOztBOEZqdGJFO0VBQ0U7RUFDQTtBOUZvdGJKO0E4Rmp0YkU7RUFDRTtBOUZtdGJKO0E4Rmh0YkU7RUFDRTtBOUZrdGJKO0E4Ri9zYkU7RUFDRSxjckJPTTtBekUwc2JWO0E4RjlzYkU7RUFDRTtBOUZndGJKO0E4RjlzYkk7RUFDRTtFQUNBO0VBQ0E7QTlGZ3RiTjtBOEY1c2JFO0VBQ0U7RUFDQTtBOUY4c2JKOztBOEYxc2JBO0VBQ0U7RUFDQTtFQUNBO0E5RjZzYkY7QThGM3NiRTs7RUFFRSx5QnJCNUJPO0VxQjZCUCxjckJqQk07RXFCa0JOO0E5RjZzYko7QThGMXNiRTtFQUNFO0E5RjRzYko7QThGenNiRTtFQUNFO0E5RjJzYko7QThGeHNiRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E5RjBzYko7QThGdnNiRTtFQUNFO0E5RnlzYko7O0E4RnJzYkE7O0VBRUU7QTlGd3NiRjs7QThGcnNiQTtFQUNFO0E5RndzYkY7O0E4RnJzYkE7RUFDRTtBOUZ3c2JGOztBOEZwc2JFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUZ1c2JKO0E4RnJzYkk7RUFDRTtBOUZ1c2JOOztBOEZsc2JBO0VBQ0U7QTlGcXNiRjs7QThGbHNiQTtFQUNFO0E5RnFzYkY7QThGbnNiRTtFQUNFO0E5RnFzYko7O0E4RmpzYkE7RUFDRTtFQUNBLHNCckJ4R1c7RXFCeUdYO0VBQ0E7QTlGb3NiRjtBOEZsc2JFO0VBQ0UsaUNyQjdHUztFcUI4R1Q7QTlGb3NiSjtBOEZqc2JFO0VBQ0U7QTlGbXNiSjs7QThGL3JiQTtFQUNFO0VBQ0E7QTlGa3NiRjs7QThGL3JiQTtFQUNFO0E5RmtzYkY7O0E4Ri9yYkE7RUFDRTtBOUZrc2JGOztBOEYvcmJBO0VBQ0U7QTlGa3NiRjs7QThGOXJiRTtFQUNFO0VBQ0E7RUFDQTtBOUZpc2JKO0E4Ri9yYkk7RUFDRTtFQUNBO0E5RmlzYk47QThGL3JiTTtFQUNFO0E5RmlzYlI7QThGNXJiRTtFQUNFO0E5RjhyYko7QThGM3JiRTtFQUNFO0E5RjZyYko7O0E4RnhyYkE7RUFDRTtBOUYycmJGO0E4RnpyYkU7RUFDRTtFQUNBO0VBQ0E7QTlGMnJiSjs7QThGdnJiQTtFQUNFO0VBQ0E7QTlGMHJiRjs7QThGdnJiQTtFQUNFO0E5RjByYkY7O0E4RnZyYkE7O0VBRUU7QTlGMHJiRjs7QThGdnJiQTtFQUNFO0E5RjByYkY7O0E4RmxyYkE7RUFDRTtFQUNBO0E5RnFyYkY7QThGbnJiRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E5RnFyYko7QThGbHJiRTtFQUNFO0VBQ0E7QTlGb3JiSjtBOEZocmJFOztFQUdFO0VBQ0E7RUFDQTtFQUNBO0E5RmlyYko7QThGOXFiRTs7RUFHRTtFQUNBO0VBQ0E7RUFDQTtBOUYrcWJKO0E4RjVxYkU7O0VBR0U7QTlGNnFiSjtBOEYxcWJFOztFQUdFO0E5RjJxYko7QThGeHFiRTs7RUFHRTtBOUZ5cWJKO0E4RnRxYkU7O0VBR0U7QTlGdXFiSjtBOEZwcWJFOztFQUdFO0E5RnFxYko7QThGbHFiRTs7RUFHRTtBOUZtcWJKO0E4RmhxYkU7O0VBR0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUZpcWJKO0E4RjlwYkU7O0VBR0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUYrcGJKOztBOEYxcGJBO0VBQ0U7RUFDQTtBOUY2cGJGO0E4RjNwYkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBOUY2cGJKO0E4RjFwYkU7RUFDRTtFQUNBO0E5RjRwYko7QThGeHBiRTs7RUFHRTtFQUNBO0VBQ0E7RUFDQTtBOUZ5cGJKO0E4RnRwYkU7O0VBR0U7RUFDQTtFQUNBO0VBQ0E7QTlGdXBiSjtBOEZwcGJFOztFQUdFO0E5RnFwYko7QThGbHBiRTs7RUFHRTtBOUZtcGJKO0E4RmhwYkU7O0VBR0U7QTlGaXBiSjtBOEY5b2JFOztFQUdFO0E5RitvYko7QThGNW9iRTs7RUFHRTtBOUY2b2JKO0E4RjFvYkU7O0VBR0U7QTlGMm9iSjtBOEZ4b2JFOztFQUdFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlGeW9iSjtBOEZ0b2JFOztFQUdFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlGdW9iSjs7QStGcGhjQTs7RUFBQTtBQUlBO0VBQ0U7RUFDQTtBL0ZzaGNGO0E2RS8rYUk7RWtCemlCSjtJQUtJO0UvRnVoY0Y7QUFDRjtBK0ZyaGNFO0VBQ0UsMkN0Qm9EZTtFc0JuRGY7RUFDQTtBL0Z1aGNKO0ErRnBoY0U7RUFDRTtFQUNBO0VBQ0E7RUFDQSxjdEJzQk07QXpFZ2djVjtBK0ZuaGNFOztFQUVFO0EvRnFoY0o7QTZFbmdiSTtFa0JwaEJGOztJQUtJO0UvRnVoY0o7QUFDRjtBK0ZuaGNJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxjdEJJSTtBekVpaGNWO0ErRm5oY007RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsOEN0Qm1CTztFc0JsQlA7QS9GcWhjUjtBK0ZoaGNFOzs7Ozs7Ozs7RUFTRTtFQUNBO0VBQ0E7QS9Ga2hjSjtBK0ZoaGNJOzs7Ozs7Ozs7RUFDRTtBL0YwaGNOO0ErRnZoY0k7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQUVFO0VBQ0E7RUFDQSxjdEIvQkk7QXpFd2tjVjtBK0Z0aWNJOzs7Ozs7Ozs7RUFDRTtFQUNBO0EvRmdqY047QStGN2ljSTs7Ozs7Ozs7O0VBQ0U7RUFDQTtFQUNBLGN0QjFDSTtBekVpbWNWO0ErRnJqY007Ozs7Ozs7OztFQUNFO0EvRitqY1I7QStGNWpjTTs7Ozs7Ozs7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLDhDdEIvQk87RXNCZ0NQO0EvRnNrY1I7QStGbGtjSTs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBRUU7QS9Gb2xjTjtBK0ZqbGNJOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QS9GMm1jTjtBK0Z4bWNJOzs7Ozs7Ozs7RUFDRTtBL0ZrbmNOO0ErRi9tY0k7Ozs7Ozs7OztFQUNFO0VBQ0E7QS9GeW5jTjtBK0Z0bmNJOzs7Ozs7Ozs7RUFDRSxZdEI1RUU7RXNCNkVGO0EvRmdvY047QStGN25jSTs7Ozs7Ozs7O0VBQ0U7RUFDQTtBL0Z1b2NOO0ErRmxvY0k7RUFDRTtFQUNBLHNCdEJwSE87RXNCcUhQO0VBQ0E7RUFDQTtBL0Zvb2NOO0ErRmxvY007RUFDRTtFQUNBO0EvRm9vY1I7QStGOW5jSTtFQUNFO0EvRmdvY047QStGM25jSTtFQUNFO0EvRjZuY047QStGM25jTTtFQUNFO0VBQ0E7QS9GNm5jUjs7QStGcG5jRTs7RUFDRTtFQUNBLGN0QmpJTTtFc0JrSU47QS9Gd25jSjs7QStGcG5jQTtFQUNFO0EvRnVuY0Y7QStGcm5jRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUVBO0VBRUE7RUFDQTtFQUNBO0EvRm9uY0o7QStGaG5jSTtFQUNFO0VBQ0E7QS9Ga25jTjs7QWdHMXpjQTs7RUFBQTtBQUlBO0VBQ0U7RUFDQTtBaEc0emNGOztBZ0d6emNBO0VBQ0U7RUFDQTtBaEc0emNGO0FnRzF6Y0U7RUFDRTtBaEc0emNKOztBZ0d4emNBO0VBQ0U7SUFDRTtFaEcyemNGO0FBQ0Y7QWdHdnpjQTtFQUNFO0FoR3l6Y0Y7O0FnR3R6Y0E7RUFDRTtBaEd5emNGOztBZ0d0emNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEd5emNGO0FnR3Z6Y0U7RUFDRTtBaEd5emNKO0FnR3R6Y0U7RUFDRSx3QnZCdEJjO0V1QnVCZDtFQUNBO0FoR3d6Y0o7QWdHdHpjSTtFQUNFO0FoR3d6Y047QWdHcHpjRTtFQUNFO0FoR3N6Y0o7QTZFaDBiSTtFbUJ2ZkY7SUFJSTtJQUNBO0VoR3V6Y0o7QUFDRjtBZ0dwemNFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWhHc3pjSjtBNkU1MGJJO0VtQjllRjtJQU9JO0VoR3V6Y0o7QUFDRjtBZ0dyemNJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxjdkJsQ0k7RXVCbUNKO0FoR3V6Y047QWdHcHpjSTtFQUNFO0VBQ0EsY3ZCeENJO0F6RTgxY1Y7QWdHbHpjRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FoR296Y0o7QWdHbHpjSTs7RUFFRTtFQUNBO0VBQ0E7QWhHb3pjTjtBZ0doemNFO0VBQ0U7RUFDQSxjdkIvRE07RXVCZ0VOO0VBQ0E7QWhHa3pjSjtBZ0cveWNFO0VBQ0U7RUFDQTtBaEdpemNKO0E2RW4zYkk7RW1CaGNGO0lBS0k7SUFDQTtFaEdremNKO0FBQ0Y7QWdHaHpjSTs7RUFFRTtBaEdremNOO0FnRzl5Y0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBaEdnemNKO0FnRzd5Y0U7O0VBRUU7RUFDQTtFQUNBLGN2QjNGTTtBekUwNGNWO0E2RXo0Ykk7RW1CMWFGOztJQU9JO0VoR2l6Y0o7QUFDRjtBZ0c5eWNFOztFQUVFO0VBQ0E7QWhHZ3pjSjtBZ0c3eWNFOztFQUVFO0VBQ0Esc0J2QmpJUztFdUJrSVQ7QWhHK3ljSjtBZ0c1eWNFOztFQUVFO0VBQ0E7RUFDQTtBaEc4eWNKO0E2RWg2Ykk7RW1CbFpGOztJQU9JO0VoR2d6Y0o7QUFDRjtBZ0c1eWNJO0VBQ0UsY3ZCNUhJO0V1QjZISjtFQUNBO0FoRzh5Y047QWdHM3ljSTtFQUNFO0VBQ0E7QWhHNnljTjtBZ0d6eWNFO0VBQ0U7RUFDQTtFQUNBO0FoRzJ5Y0o7QWdHdnljSTtFQUNFO0VBQ0E7QWhHeXljTjtBNkV4N2JJO0VtQm5YQTtJQUtJO0VoRzB5Y047QUFDRjtBZ0d2eWNJOztFQUVFO0FoR3l5Y047QWdHdnljTTs7RUFDRTtFQUNBLGN2QjdKRTtFdUI4SkY7QWhHMHljUjtBZ0d0eWNJO0VBQ0U7QWhHd3ljTjtBZ0d0eWNNO0VBQ0U7RUFDQTtBaEd3eWNSO0E2RTk4Ykk7RW1CNVZFO0lBS0k7RWhHeXljUjtBQUNGO0FnR3J5Y0k7RUFDRSxjdkJyTEM7RXVCc0xEO0FoR3V5Y047QWdHcHljSTtFQUNFLDJDdkJoS2E7RXVCaUtiO0VBQ0Esc0J2QjdNTztFdUI4TVA7QWhHc3ljTjtBZ0dweWNNO0VBQ0U7QWhHc3ljUjtBZ0dweWNRO0VBQ0U7QWhHc3ljVjs7QWdHN3hjRTs7RUFDRTtFQUNBO0FoR2l5Y0o7QWdHL3hjSTs7RUFDRSxjdkI1TUk7RXVCNk1KO0VBQ0E7QWhHa3ljTjtBZ0cveGNJOztFQUNFLHNCdkJ4T087RXVCeU9QO0VBQ0E7RUFDQSxxQ3ZCL0xVO0F6RWkrY2hCO0FnR2h5Y007O0VBQ0U7RUFDQTtBaEdteWNSO0FnRy94Y0k7O0VBQ0U7RUFDQTtFQUNBO0VBQ0Esc0J2QnZQTztBekV5aGRiO0FnR2h5Y007O0VBQ0U7QWhHbXljUjtBZ0doeWNNOztFQUNFO0FoR215Y1I7QWdHOXhjRTs7RUFDRTtFQUNBO0FoR2l5Y0o7QTZFL2djSTtFbUJwUkY7O0lBS0k7RWhHbXljSjtBQUNGO0FnR2h5Y0U7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxjdkIzUE07RXVCNFBOO0FoR215Y0o7QWdHanljSTs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsOEN2QjdPUztFdUI4T1Q7QWhHb3ljTjtBZ0doeWNFOztFQUNFO0VBQ0E7QWhHbXljSjtBZ0doeWNFOztFQUNFO0FoR215Y0o7QWdHaHljRTs7RUFDRTtFQUNBO0VBQ0Esc0J2QjNTUztBekU4a2RiOztBZ0cveGNBO0VBQ0U7QWhHa3ljRjtBNkUzamNJO0VtQnhPSjtJQUlJO0VoR215Y0Y7QUFDRjs7QWdHaHljQTs7RUFFRTtBaEdteWNGOztBZ0c5eGNFO0VBQ0U7QWhHaXljSjs7QWdHNXhjQTtFQUNFO0VBQ0E7QWhHK3hjRjs7QWdHNXhjQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEcreGNGOztBZ0c1eGNBO0VBQ0U7RUFDQTtFQUNBO0FoRyt4Y0Y7O0FnRzV4Y0E7RUFDRTtFQUNBO0FoRyt4Y0Y7O0FnRzV4Y0E7RUFDRTtFQUNBO0FoRyt4Y0Y7O0FnRzV4Y0E7RUFDRTtBaEcreGNGOztBaUc5cGRBOztFQUFBO0FBTUk7O0VBQ0k7QWpHK3BkUjtBaUc1cGRJOztFQUNJO0VBQ0E7QWpHK3BkUjtBaUc1cGRJOztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakcrcGRSO0FpRzFwZEk7Ozs7Ozs7Ozs7RUFFSTtBakdvcWRSO0E2RW5wY0k7RW9CbmhCQTs7Ozs7Ozs7OztJQUtRO0VqRzhxZFY7QUFDRjs7QWlHeHFkSTs7OztFQUVJO0FqRzZxZFI7QTZFeHFjSTtFb0J2Z0JBOzs7O0lBS1E7RWpHaXJkVjtBQUNGOztBaUcxcWRJOzs7RUFDSTtBakcrcWRSOztBaUcxcWRJO0VBQ0k7QWpHNnFkUjtBaUczcWRRO0VBQ0k7RUFDQTtBakc2cWRaOztBa0czdWRBO0VBQ0U7QWxHOHVkRjs7QWtHM3VkQTtFQUNFO0FsRzh1ZEY7O0FrRzN1ZEE7RUFDRSxjekJpQ1M7RXlCaENUO0FsRzh1ZEY7QWtHN3VkRTtFQUNFO0VBQ0E7RUFDQTtBbEcrdWRKOztBa0czdWRBO0VBQ0U7RUFDQTtBbEc4dWRGOztBa0czdWRBO0VBQ0U7QWxHOHVkRjs7QW1HdHdkQTs7RUFBQTtBQUtDO0VBQ0c7RUFDQTtFQUNGLHlCMUJ1Qk87QXpFZ3ZkVDtBNkVsdWNJO0VzQnhpQkg7SUFLSztFbkd5d2RKO0FBQ0Y7QW1HeHdkSTtFQUNFO0VBQ0EsYzFCMkJJO0UwQjFCSjtBbkcwd2ROO0FtR3p3ZE07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkcyd2RSO0FtR3p3ZE07RUFDRTtFQUNBO0VBQ0E7RUFDQSxtQjFCRUM7RTBCREQ7QW5HMndkUjtBNkU1dmNJO0VzQnBoQkU7SUFPSTtJQUNBO0lBQ0E7RW5HNndkUjtBQUNGO0FtRzV3ZFE7RUFDRSxzQjFCZkc7QXpFNnhkYjtBbUczd2RNO0VBQ0U7RUFDQTtFQUNBLGMxQkZFO0UwQkdGO0VBQ0EsbUIxQmRDO0UwQmVEO0VBQ0E7RUFDQTtBbkc2d2RSO0E2RWh4Y0k7RXNCcmdCRTtJQVVJO0VuRyt3ZFI7QUFDRjtBNkVyeGNJO0VzQnZmQTtJQUVJO0VuRzh3ZE47RW1HN3dkTTtJQUNFO0VuRyt3ZFI7QUFDRjtBbUczd2RNO0VBQ0U7QW5HNndkUjtBbUd6d2RFO0VBQ0U7RUFDQTtFQUNBO0FuRzJ3ZEo7QW1HendkRTtFQUNFO0FuRzJ3ZEo7QW1HendkRTtFQUNFO0FuRzJ3ZEo7O0FvR3gxZEE7RUFDRTtFQUNBLDJDM0IrRGlCO0UyQjlEakI7QXBHMjFkRjtBb0d6MWRFO0VBQ0U7RUFDQTtFQUNBO0FwRzIxZEo7O0FvR3YxZEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBcEcwMWRGOztBb0d2MWRBO0VBQ0U7RUFDQTtBcEcwMWRGOztBb0d2MWRBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXBHMDFkRjs7QW9HdjFkQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGMzQk1RO0UyQkxSO0FwRzAxZEY7O0FvR3YxZEE7RUFDRTtFQUNBO0FwRzAxZEY7QW9HeDFkRTtFQUNFO0VBQ0E7RUFDQTtBcEcwMWRKO0E2RTMxY0k7RXVCbGdCRjtJQU1JO0VwRzIxZEo7QUFDRjtBb0d4MWRFO0VBQ0U7QXBHMDFkSjtBb0d2MWRFO0VBQ0U7QXBHeTFkSjtBb0d0MWRFO0VBQ0U7RUFDQTtBcEd3MWRKOztBb0dwMWRBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsYzNCOUJRO0F6RXEzZFY7O0FvR3AxZEE7RUFJRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwR28xZEY7QW9HbDFkRTtFQUNFO0FwR28xZEo7QW9HajFkRTtFQUNFO0VBQ0E7QXBHbTFkSjtBb0dqMWRJO0VBQ0U7RUFDQTtFQUNBO0FwR20xZE47QW9HLzBkRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FwR2kxZEo7QW9HLzBkSTtFQUNFO0FwR2kxZE47QW9HOTBkSTtFQUNFO0FwR2cxZE47QW9HNzBkSTtFQUNFO0FwRyswZE47QW9HNzBkTTtFQUNFO0VBQ0E7QXBHKzBkUjtBb0c3MGRRO0VBQ0U7QXBHKzBkVjtBb0czMGRNOztFQUVFO0FwRzYwZFI7QW9HeDBkRTtFQUNFO0VBQ0E7RUFDQTtBcEcwMGRKO0FvR3gwZEk7RUFDRSx5QjNCNUZLO0UyQjZGTDtFQUNBO0FwRzAwZE47QW9HdjBkSTtFQUNFO0FwR3kwZE47QW9HcjBkRTtFQUNFO0VBQ0E7QXBHdTBkSjtBb0dyMGRJO0VBQ0U7QXBHdTBkTjtBb0duMGRFO0VBQ0U7RUFDQTtFQUNBLGMzQnZITTtFMkJ3SE47RUFDQTtBcEdxMGRKO0FvR24wZEk7RUFDRTtBcEdxMGROO0FvR2owZEU7RUFDRTtFQUNBO0VBQ0EsYzNCbklNO0UyQm9JTjtFQUNBO0VBQ0E7RUFDQTtBcEdtMGRKO0FvR2gwZEU7RUFDRTtFQUNBO0FwR2swZEo7QW9HaDBkSTtFQUNFO0VBQ0E7RUFDQSxjM0JqSkk7RTJCa0pKO0VBQ0E7RUFDQTtBcEdrMGROO0FvR2gwZE07RUFDRTtFQUNBO0VBQ0E7QXBHazBkUjtBb0cvemRNO0VBQ0UsYzNCektBO0F6RTArZFI7QW9HN3pkSTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGMzQmhMRTtFMkJpTEY7RUFDQTtBcEcremROO0FvRzd6ZE07RUFDRTtFQUNBO0FwRyt6ZFI7QW9HMXpkRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEc0emRKO0FvR3p6ZEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBHMnpkSjtBb0d6emRJO0VBQ0UsYzNCckxNO0F6RWcvZFo7QW9HeHpkSTtFQUNFLGMzQnhMTTtBekVrL2RaO0FvR3Z6ZEk7RUFDRSxjM0IzTEE7QXpFby9kTjtBb0d0emRJO0VBQ0UsYzNCOUxFO0F6RXMvZFI7QW9HcnpkSTtFQUNFLGMzQmpNTTtBekV3L2RaO0FvR256ZEU7RUFDRTtFQUNBO0VBQ0E7QXBHcXpkSjtBb0dsemRFO0VBQ0U7QXBHb3pkSjs7QW9HaHpkQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEdtemRGOztBb0doemRBO0VBQ0U7RUFDQTtBcEdtemRGOztBb0doemRBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxjM0J0UEs7QXpFeWllUDs7QW9HaHpkQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwR216ZEY7QW9HanpkRTtFQUNFLGMzQjVRSTtFMkI2UUo7RUFDQTtBcEdtemRKO0FvR2h6ZEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwR2t6ZEo7O0FvRzl5ZEE7RUFDRTtBcEdpemRGOztBb0c5eWRBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxjM0J0UlM7QXpFdWtlWDtBb0cveWRFO0VBQ0UsYzNCaFNHO0F6RWlsZVA7O0FvRzd5ZEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwR2d6ZEY7QW9HOXlkRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FwR2d6ZEo7QW9HOXlkSTtFQUNFLGMzQjlTTTtBekU4bGVaO0FvRzV5ZEU7RUFDRTtFQUNBLGMzQmpUTztFMkJrVFA7QXBHOHlkSjtBb0c1eWRJO0VBQ0UsYzNCNVRDO0F6RTBtZVA7O0FvR3p5ZEE7RUFDRTtFQUNBLG1CM0I1VFM7RTJCNlRUO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxjM0JsVk07RTJCbVZOO0FwRzR5ZEY7QW9HMXlkRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEc0eWRKO0FvR3p5ZEU7RUFDRSx5QjNCelZHO0F6RW9vZVA7QW9HeHlkRTtFQUNFO0FwRzB5ZEo7O0FvR3R5ZEE7RUFDRTtJQUNFO0VwR3l5ZEY7O0VvR3R5ZEE7O0lBRUU7RXBHeXlkRjtBQUNGO0FvR3R5ZEE7RUFDRTtJQUNFO0VwR3d5ZEY7QUFDRjtBb0dyeWRBO0VBRUU7O0lBRUU7RXBHc3lkRjtBQUNGO0FxR3BzZUE7RUFDRSxjNUIyQ1E7QXpFMnBlVjs7QXFHbHNlRTtFQUNFO0FyR3FzZUo7O0FxRy9yZUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJHa3NlSjtBcUdoc2VJO0VBQ0U7QXJHa3NlTjtBcUcvcmVJO0VBQ0U7QXJHaXNlTjs7QXFHenJlRTs7RUFDRTtFQUNBO0VBQ0E7QXJHNnJlSjtBcUczcmVJOztFQUNFO0VBQ0E7RUFDQTtBckc4cmVOOztBc0c3dWVBO0VBQ0U7RUFFQSwyQzdCOERpQjtFNkI3RGpCO0F0Ryt1ZUY7QXNHN3VlRTtFQUNFLDJDN0IwRGU7RTZCekRmO0VBQ0E7QXRHK3VlSjtBc0c1dWVFO0VBQ0UsMkM3Qm9EZTtFNkJuRGY7RUFDQTtBdEc4dWVKO0FzRzN1ZUU7O0VBRUUsYzdCcUJNO0U2QnBCTjtFQUNBO0VBQ0EsMkM3QjBDZTtFNkJ6Q2Y7QXRHNnVlSjtBc0cxdWVFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXRHNHVlSjtBNkU5dGRJO0V5QmxoQkY7SUFPSTtFdEc2dWVKO0FBQ0Y7QXNHM3VlSTs7RUFFRSxjN0JFSTtFNkJESjtFQUNBLDJDN0J3QmE7QXpFcXRlbkI7QXNHMXVlSTtFQUNFO0VBQ0E7QXRHNHVlTjtBc0cxdWVNO0VBQ0UsYzdCSEc7QXpFK3VlWDtBc0d4dWVJO0VBQ0U7RUFDQTtBdEcwdWVOO0FzR3h1ZU07RUFDRSxjN0JqQkU7RTZCa0JGO0VBQ0EsMkM3QktXO0F6RXF1ZW5CO0FzR3J1ZUU7RUFDRTtFQUNBO0VBQ0EsMkM3QkhlO0U2QklmO0VBQ0E7RUFDQSxjN0JuQ0s7QXpFMHdlVDtBc0dwdWVFOztFQUVFO0VBQ0EscUI3QnZDUztBekU2d2ViO0FzR251ZUU7RUFDRTtFQUNBLDJDN0JqQmU7RTZCa0JmLGM3QjFDTTtFNkIyQ047RUFDQTtBdEdxdWVKO0FzR251ZUk7RUFDRTtBdEdxdWVOO0FzR2p1ZUU7RUFDRSxjN0J6REs7RTZCMERMO0F0R211ZUo7QXNHaHVlRTtFQUNFO0VBQ0E7RUFDQSwyQzdCbkNlO0U2Qm9DZixjN0I1RE07RTZCNkROO0VBQ0E7QXRHa3VlSjtBc0cvdGVFO0VBQ0U7QXRHaXVlSjtBc0c5dGVFOztFQUVFLDJDN0IvQ2U7RTZCZ0RmLGM3Qm5FTztFNkJvRVA7QXRHZ3VlSjtBc0c3dGVFOzs7RUFHRSwyQzdCdkRlO0U2QndEZixjN0JoRk07RTZCaUZOO0VBQ0E7RUFDQTtBdEcrdGVKO0FzRzV0ZUU7RUFDRTtFQUNBO0VBQ0EsMkM3QmpFZTtFNkJrRWY7RUFDQSxjN0JoR0s7QXpFOHplVDtBc0czdGVFO0VBQ0U7RUFDQTtBdEc2dGVKO0FzRzN0ZUk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRHNnRlTjtBc0cxdGVJO0VBQ0U7RUFDQTtFQUNBO0F0RzR0ZU47QXNHeHRlSTtFQUNFO0VBQ0E7RUFDQTtBdEcwdGVOO0FzR3J0ZUk7RUFDRTtBdEd1dGVOO0FzR250ZUU7RUFDRSxjN0IzSE87QXpFZzFlWDtBc0dsdGVFO0VBQ0UsYzdCL0hPO0F6RW0xZVg7QXNHaHRlSTtFQURGO0lBRUk7RXRHbXRlSjtBQUNGO0FzRy9zZUk7RUFDRSx5QjdCMUlLO0U2QjJJTCxxQjdCM0lLO0F6RTQxZVg7QXNHOXNlSTtFQUNFLHlCN0J6Skc7RTZCMEpILHFCN0IxSkc7RTZCMkpILGM3QnRKSTtFNkJ1Sko7QXRHZ3RlTjtBc0c1c2VFO0VBQ0U7RUFDQTtBdEc4c2VKO0FzRzNzZUU7RUFDRTtFQUNBO0VBQ0E7QXRHNnNlSjtBc0cxc2VFO0VBQ0U7RUFDQTtFQUNBO0F0RzRzZUo7QTZFajNkSTtFeUI5VkY7SUFPSTtJQUNBO0V0RzRzZUo7QUFDRjtBc0d6c2VFO0VBQ0U7QXRHMnNlSjtBc0d4c2VFO0VBQ0UsYzdCcExNO0F6RTgzZVY7QXNHdnNlRTtFQUNFO0F0R3lzZUo7QXNHdnNlSTtFQUNFO0VBQ0E7QXRHeXNlTjtBc0dyc2VFO0VBQ0U7RUFDQTtFQUNBLGM3QnRNTTtBekU2NGVWO0FzR3BzZUU7RUFDRTtFQUNBO0VBQ0EsYzdCdk1PO0U2QndNUDtFQUNBO0F0R3NzZUo7QXNHbnNlRTtFQUNFLGM3QjdNTztBekVrNWVYO0FzR2xzZUU7RUFDRSx5QjdCak5PO0U2QmtOUCxjN0JsT0k7QXpFczZlUjtBc0dqc2VFO0VBQ0U7RUFDQTtFQUNBLDJDN0JyTWU7RTZCc01mO0VBQ0E7QXRHbXNlSjtBc0doc2VFO0VBQ0U7RUFDQTtFQUNBO0F0R2tzZUo7QXNHL3JlRTtFQUNFO0VBQ0Esc0I3QjdQUztFNkI4UFQ7QXRHaXNlSjtBc0c5cmVFO0VBQ0U7QXRHZ3NlSjs7QXNHNXJlQTtFQUNFO0F0RytyZUY7O0FzRzVyZUE7RUFDRTtBdEcrcmVGOztBc0c1cmVBO0VBQ0U7QXRHK3JlRjs7QXNHMXJlSTtFQUNFO0F0RzZyZU47O0F1R3YrZUU7RUFDRTtFQUNBO0VBQ0E7QXZHMCtlSjs7QXdHOStlQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F4R2kvZUY7QXdHaC9lRTtFQUNFO0F4R2svZUo7QXdHaC9lRTtFQUNFO0VBQ0E7QXhHay9lSjtBd0doL2VFO0VBQ0U7QXhHay9lSjtBd0doL2VFO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHlCL0JRSTtBekV5K2VSO0E2RTE5ZEk7RTJCOWhCRjtJQVNJO0V4R20vZUo7QUFDRjtBd0dqL2VFO0VBQ0UsYy9CY087QXpFcStlWDtBd0dsL2VJO0VBQ0U7RUFDQSxzQi9CVE87QXpFNi9lYjtBd0dsL2VJO0VBQ0UsYy9CYVM7QXpFdStlZjtBd0doL2VJO0VBQ0UsYy9CS0k7RStCSko7RUFDQTtFQUNBO0F4R2svZU47QXdHLytlRTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGMvQlRVO0F6RTAvZWQ7QXdHaC9lSTtFQUNFLHNCL0I3Qk87QXpFK2dmYjtBd0cvK2VFO0VBQ0U7QXhHaS9lSjtBd0c5K2VJO0VBQ0E7RUFDQTtFQUNBLHNCL0J2Q1M7QXpFdWhmYjtBd0c5K2VJO0VBQ0U7QXhHZy9lTjtBd0c5K2VJO0VBQ0U7QXhHZy9lTjtBd0c3K2VFO0VBQ0U7RUFDQTtBeEcrK2VKO0F3RzcrZUU7RUFDRTtFQUNBLGMvQmxDTztBekVpaGZYO0F3RzUrZUU7RUFDRSxjL0JwQ007QXpFa2hmVjtBd0czK2VFO0VBQ0UsYy9CeENNO0F6RXFoZlY7QXdHMytlRTtFQUNFO0VBQ0Esc0IvQmxFUztBekUraWZiO0F3RzErZUU7RUFDRTtFQUNBO0VBQ0E7QXhHNCtlSjtBNkU3aGVJO0UyQmxkRjtJQUtJO0V4RzgrZUo7QUFDRjtBd0c1K2VFO0VBQ0U7RUFDQTtBeEc4K2VKO0F3RzMrZUk7RUFDRSxjL0I3REk7QXpFMGlmVjtBd0cxK2VNO0VBQ0Usc0IvQnZGSztFK0J3Rkw7QXhHNCtlUjtBd0d4K2VFO0VBQ0UsYy9CdkVNO0F6RWlqZlY7QXdHeCtlRTtFQUNFO0VBQ0E7QXhHMCtlSjtBd0d2K2VFO0VBQ0U7QXhHeStlSjtBd0dyK2VJO0VBQ0U7RUFDQTtFQUNBO0F4R3UrZU47QXdHcitlSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhHdStlTjtBd0dyK2VJO0VBQ0UsaUMvQnpITztFK0IwSFAsNkIvQjFITztBekVpbWZiO0F3R3ArZUU7O0VBRUU7QXhHcytlSjtBd0dyK2VJOztFQUNFO0VBQ0E7RUFDQTtFQUNBO0F4R3crZU47QXdHdCtlSTs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4R3krZU47QXdHditlSTs7RUFDRSxpQy9CakpPO0UrQmtKUCw2Qi9CbEpPO0F6RTRuZmI7QXdHdCtlSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhHdytlTjtBd0d0K2VJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhHdytlTjtBd0d0K2VJO0VBQ0UsaUMvQnZLTztFK0J3S1AsNkIvQnhLTztBekVncGZiO0F3R3YrZU07RUFDRTtFQUNBO0VBQ0E7RUFDQTtBeEd5K2VSOztBd0duK2VBO0VBQ0U7QXhHcytlRjs7QXdHbitlQTtFQUNFO0F4R3MrZUY7O0F5R3ByZkE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxtQ2hDbUJnQjtFZ0NsQmhCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBekd1cmZGOztBeUducmZBO0VBQ0UsY2hDMEJRO0F6RTRwZlY7O0F5R25yZkE7RUFDRTtFQUNBO0VBQ0E7QXpHc3JmRjs7QXlHbnJmQTtFQUNFO0F6R3NyZkY7O0F5R2xyZkU7RUFERjtJQUVJO0lBQ0E7RXpHc3JmRjtBQUNGOztBMEdydGZJO0VBQ0ksc0JqQ29CSztBekVvc2ZiO0EwR3R0Zkk7RUFDSTtFQUNBO0ExR3d0ZlI7QTBHdHRmSTtFQUNJO0ExR3d0ZlI7QTBHdHRmSTs7RUFDSSxjakNrQkE7RWlDakJBO0ExR3l0ZlI7O0EyR3R1ZkE7RUFDSTtFQUNBO0VBQ0EsY2xDc0NNO0VrQ3JDTjtBM0d5dWZKO0EyR3Z1Zkk7RUFDSTtFQUNBLGNsQ29DRTtBekVxc2ZWO0EyR3J1ZlE7RUFDSTtBM0d1dWZaO0EyR3B1ZlE7RUFDSTtBM0dzdWZaO0EyR251ZlE7RUFDSTtJQUNJO0lBQ0E7RTNHcXVmZDtFMkdsdWZVO0lBQ0k7RTNHb3VmZDtBQUNGO0EyR2h1Zkk7RUFDSTtFQUNBO0VBQ0E7QTNHa3VmUjtBNkV4dGVJO0U4QjdnQkE7SUFNUTtFM0dtdWZWO0FBQ0Y7QTZFN3RlSTtFOEI3Z0JBO0lBVVE7RTNHb3VmVjtBQUNGO0EyR2x1ZlE7RUFDSTtBM0dvdWZaO0EyR2x1Zlk7RUFDSTtBM0dvdWZoQjtBMkdsdWZnQjtFQUNJO0VBQ0E7QTNHb3VmcEI7QTZFNXVlSTtFOEIxZlk7SUFLUTtFM0dxdWZ0QjtBQUNGO0EyR2x1ZmdCO0VBQ0k7QTNHb3VmcEI7QTJHbHVmb0I7RUFDSTtBM0dvdWZ4QjtBMkdodWZnQjtFQUNJO0VBQ0E7RUFDQTtBM0drdWZwQjtBMkdodWZvQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsY2xDaENiO0F6RWt3Zlg7QTJHaHVmd0I7RUFDSSxjbEMxQ3JCO0F6RTR3ZlA7QTJHOXRmb0I7RUFDSTtFQUNBO0VBQ0EseUJsQzFDYjtFa0MyQ2E7QTNHZ3VmeEI7QTJHOXRmd0I7RUFDSTtBM0dndWY1QjtBMkc3dGZ3QjtFQUNJO0VBQ0E7RUFDQTtBM0crdGY1QjtBMkc1dGZ3QjtFQUNJLHlCbEMvRHJCO0F6RTZ4ZlA7QTJHMXRmb0I7RUFDSTtFQUNBO0EzRzR0ZnhCO0EyRzF0ZndCOztFQUVJO0EzRzR0ZjVCO0EyR3Z0ZmdCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTNHeXRmcEI7QTJHdHRmZ0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsY2xDdkZSO0F6RSt5Zlo7QTJHbnRmUTtFQUNJO0VBQ0E7RUFDQTtBM0dxdGZaO0E2RWx6ZUk7RThCdGFJO0lBTVE7RTNHc3RmZDtBQUNGO0EyR3B0Zlk7O0VBRUk7QTNHc3RmaEI7QTJHbnRmWTtFQUNJO0VBQ0E7RUFDQSxjbEMxR0w7QXpFK3pmWDtBMkdsdGZZO0VBQ0k7QTNHb3RmaEI7QTJHanRmWTtFQUNJO0VBQ0E7QTNHbXRmaEI7QTJHaHRmWTtFQUNJO0VBQ0E7RUFDQTtFQUNBLG1DbENqSkU7RWtDa0pGO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0drdGZoQjtBMkcvc2ZZO0VBQ0k7RUFDQTtBM0dpdGZoQjtBMkcvc2ZnQjtFQUNJLGNsQ3hJVDtFa0N5SVM7QTNHaXRmcEI7QTJHOXNmZ0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNHZ3RmcEI7QTJHM3NmUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0EzRzZzZlo7QTJHM3NmWTtFQUNJO0EzRzZzZmhCO0EyRzNzZmdCO0VBQ0k7QTNHNnNmcEI7QTJHenNmWTtFQUNJO0EzRzJzZmhCO0EyR3RzZlk7RUFDSSxjbENqTE47QXpFeTNmVjtBMkduc2ZJO0VBQ0k7QTNHcXNmUjtBMkduc2ZRO0VBQ0k7QTNHcXNmWjtBMkdqc2ZJO0VBQ0k7QTNHbXNmUjtBMkdoc2ZJO0VBQ0kseUJsQzVNRztFa0M2TUg7QTNHa3NmUjtBMkcvcmZJO0VBQ0k7RUFDQTtBM0dpc2ZSO0EyRy9yZlE7RUFDSTtFQUNBLGNsQzFNRjtBekUyNGZWO0EyRzlyZlE7RUFDSTtBM0dnc2ZaO0EyRzVyZkk7RUFDSTtFQUNBLGNsQ2xORztFa0NtTkg7RUFDQTtFQUNBO0EzRzhyZlI7QTJHM3JmSTtFQUNJO0VBQ0E7RUFDQTtBM0c2cmZSO0EyRzNyZlE7RUFDSTtFQUNBO0VBQ0E7QTNHNnJmWjtBMkcxcmZRO0VBQ0k7QTNHNHJmWjtBMkd4cmZZO0VBQ0k7QTNHMHJmaEI7QTJHdHJmUTtFQUNJO0EzR3dyZlo7QTJHdHJmWTtFQUNJO0EzR3dyZmhCO0EyR3ByZlE7RUFDSTtBM0dzcmZaO0EyR3ByZlk7RUFDSTtBM0dzcmZoQjtBMkdscmZRO0VBQ0k7QTNHb3JmWjtBMkdscmZZO0VBQ0k7QTNHb3JmaEI7QTJHL3FmSTtFQUNJO0VBQ0E7RUFDQTtBM0dpcmZSO0EyRzlxZkk7RUFDSTtFQUNBO0VBQ0E7QTNHZ3JmUjtBMkc3cWZJO0VBQ0k7RUFDQTtFQUNBO0EzRytxZlI7QTJHN3FmUTtFQUNJO0VBQ0E7RUFDQSxjbEMxUkQ7QXpFeThmWDtBMkc1cWZRO0VBQ0k7RUFDQTtBM0c4cWZaO0EyRzNxZlE7RUFDSSxjbENuU0Q7QXpFZzlmWDtBMkcxcWZRO0VBQ0k7QTNHNHFmWjtBMkd4cWZJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0cwcWZSO0E2RTM5ZUk7RThCcE5BO0lBUVE7SUFDQTtFM0cycWZWO0FBQ0Y7QTJHenFmUTtFQUNJO0EzRzJxZlo7QTJHeHFmUTtFQUNJO0EzRzBxZlo7QTJHdnFmUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0d5cWZaO0E2RS8rZUk7RThCaE1JO0lBU1E7RTNHMHFmZDtBQUNGO0EyR3hxZlk7RUFDSTtFQUNBO0VBQ0E7QTNHMHFmaEI7QTJHeHFmZ0I7RUFDSTtFQUNBLGNsQ2xWVDtFa0NtVlM7QTNHMHFmcEI7QTJHdnFmZ0I7RUFDSTtFQUNBLGNsQ3hWVDtFa0N5VlM7QTNHeXFmcEI7QTJHcnFmWTtFQUNJO0VBQ0E7RUFDQTtBM0d1cWZoQjtBMkdwcWZZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0dzcWZoQjtBMkdscWZRO0VBQ0ksY2xDblhEO0F6RXVoZ0JYO0EyR2pxZlE7RUFDSTtFQUNBO0VBQ0E7QTNHbXFmWjtBMkdqcWZZO0VBQ0ksY2xDallOO0VrQ2tZTTtFQUNBO0EzR21xZmhCO0EyR2hxZlk7RUFDSTtFQUNBO0VBQ0E7QTNHa3FmaEI7QTJHL3BmWTtFQUNJO0VBQ0E7QTNHaXFmaEI7QTJHOXBmWTtFQUNJO0EzR2dxZmhCO0EyRzdwZlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNHK3BmaEI7QTJHNXBmWTs7RUFFSTtFQUNBO0VBQ0E7RUFDQSxjbENuYU47RWtDb2FNO0VBQ0E7QTNHOHBmaEI7QTJHM3BmWTtFQUNJLHlCbENwYUw7RWtDcWFLLHFCbENyYUw7QXpFa2tnQlg7QTJHMXBmWTtFQUNJLHlCbENuYlA7RWtDb2JPLHFCbENwYlA7RWtDcWJPLGNsQ2hiTjtFa0NpYk07QTNHNHBmaEI7QTJHdnBmSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0EzR3lwZlI7QTJHdnBmUTs7RUFFSTtFQUNBO0VBQ0E7RUFDQTtBM0d5cGZaO0EyR3ZwZlk7O0VBQ0ksY2xDL2JMO0F6RXlsZ0JYO0EyR3RwZlE7RUFDSTtFQUNBO0EzR3dwZlo7QTJHcnBmUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzR3VwZlo7QTZFMW1mSTtFOEJ2REk7SUFhUTtJQUNBO0lBQ0E7RTNHd3BmZDtBQUNGO0EyR3RwZlk7RUFDSTtFQUNBLGNsQzVkTDtFa0M2ZEs7RUFDQTtBM0d3cGZoQjtBMkd0cGZnQjtFQUNJO0EzR3dwZnBCO0E2RTFuZkk7RThCL0JZO0lBSVE7RTNHeXBmdEI7QUFDRjtBMkdycGZZO0VBQ0k7RUFDQSxjbEMzZUw7RWtDNGVLO0VBQ0E7QTNHdXBmaEI7QTZFcm9mSTtFOEJ0QlE7SUFPUTtFM0d3cGZsQjtBQUNGO0EyR3BwZlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzR3NwZlo7QTZFcHBmSTtFOEJWSTtJQVdRO0lBQ0E7SUFDQTtFM0d1cGZkO0FBQ0Y7QTJHcHBmUTtFQUNJO0VBQ0EsY2xDeGdCRDtFa0N5Z0JDO0VBQ0E7QTNHc3BmWjtBNkVqcWZJO0U4Qk9JO0lBT1E7RTNHdXBmZDtBQUNGO0EyR3BwZlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBM0dzcGZaO0EyR3BwZlk7RUFDSSxjbEN4aEJMO0VrQ3loQks7RUFDQTtFQUNBO0EzR3NwZmhCO0EyR25wZlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzR3FwZmhCO0EyR2pwZlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0dtcGZaO0EyR2pwZlk7RUFDSTtBM0dtcGZoQjtBMkdocGZZO0VBQ0k7QTNHa3BmaEI7QTJHL29mWTtFQUNJO0EzR2lwZmhCO0EyRzdvZlE7RUFDSTtBM0crb2ZaO0EyRzVvZlE7RUFDSTtFQUNBO0VBQ0E7QTNHOG9mWjtBMkczb2ZRO0VBQ0k7RUFDQTtBM0c2b2ZaO0E2RWh1Zkk7RThCaUZJO0lBS1E7SUFDQTtFM0c4b2ZkO0FBQ0Y7QTJHM29mUTtFQUNJO0EzRzZvZlo7QTZFenVmSTtFOEI4RlE7SUFFUTtFM0c2b2ZsQjtBQUNGO0EyRzFvZlk7RUFDSTtFQUNBO0EzRzRvZmhCO0EyRzFvZmdCOztFQUVJO0EzRzRvZnBCO0EyR3pvZmdCO0VBQ0k7QTNHMm9mcEI7QTJHeG9mZ0I7RUFDSTtBM0cwb2ZwQjtBMkdwb2ZJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0dzb2ZSO0EyR3BvZlE7RUFDSSxjbENyb0JEO0F6RTJ3Z0JYO0EyR2xvZkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzR29vZlI7QTJHam9mSTtFQUNJO0EzR21vZlI7QTJHaG9mSTtFQUNJO0EzR2tvZlI7QTJHL25mSTtFQUNJO0EzR2lvZlI7QTJHOW5mSTtFQUNJO0EzR2dvZlI7QTJHN25mSTtFQUNJO0EzRytuZlI7QTJHNW5mSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0EzRzhuZlI7QTJHM25mSTtFQUNJO0EzRzZuZlI7QTJHMW5mSTtFQUNJO0EzRzRuZlI7QTJHem5mSTtFQUNJO0VBQ0E7RUFDQTtBM0cybmZSO0EyR3huZkk7RUFDSTtFQUNBLGNsQzVyQkc7RWtDNnJCSDtBM0cwbmZSO0EyR3ZuZkk7RUFDSTtFQUNBLGNsQ2xzQkc7RWtDbXNCSDtBM0d5bmZSO0EyR3RuZkk7RUFDSTtFQUNBO0VBQ0E7QTNHd25mUjtBMkdybmZJO0VBQ0k7QTNHdW5mUjtBMkdwbmZJO0VBQ0k7RUFDQTtFQUNBO0EzR3NuZlI7QTJHcG5mUTs7RUFFSTtFQUNBO0VBQ0E7QTNHc25mWjtBMkdubmZRO0VBQ0k7RUFDQTtBM0dxbmZaO0EyR2xuZlE7RUFDSTtBM0dvbmZaO0EyRzVtZkk7RUFDSTtBM0c4bWZSO0EyRzVtZlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzRzhtZlo7QTJHM21mUTtFQUNJO0VBQ0E7QTNHNm1mWjtBMkd6bWZJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNHMm1mUjtBMkd6bWZRO0VBQ0k7QTNHMm1mWjtBMkd4bWZRO0VBQ0k7QTNHMG1mWjtBMkd2bWZRO0VBQ0k7QTNHeW1mWjtBMkdybWZJO0VBQ0k7QTNHdW1mUjtBMkdwbWZJO0VBQ0k7QTNHc21mUjtBMkdubWZJO0VBQ0k7RUFDQTtFQUNBO0EzR3FtZlI7QTJHam1mUTtFQUNJO0EzR21tZlo7QTJHN2xmWTtFQUNJO0EzRytsZmhCO0EyRzNsZlE7RUFDSTtBM0c2bGZaO0EyRzNsZlk7RUFDSTtFQUNBO0EzRzZsZmhCO0EyRzNsZmdCOztFQUVJO0EzRzZsZnBCO0EyRzFsZmdCO0VBQ0k7QTNHNGxmcEI7QTJHemxmZ0I7RUFDSTtBM0cybGZwQjtBMkdybGZJO0VBQ0k7RUFDQTtBM0d1bGZSO0EyR3BsZkk7RUFDSTtBM0dzbGZSO0EyR25sZkk7RUFDSTtJQUNJO0lBQ0E7RTNHcWxmVjtFMkdsbGZNO0lBQ0k7RTNHb2xmVjtFMkdqbGZNO0lBQ0k7RTNHbWxmVjtFMkdobGZNO0lBQ0k7RTNHa2xmVjtFMkcva2ZNO0lBQ0k7RTNHaWxmVjtBQUNGOztBMkc3a2ZBO0VBQ0k7QTNHZ2xmSjtBMkc5a2ZJO0VBQ0k7QTNHZ2xmUjtBMkc3a2ZJO0VBQ0k7QTNHK2tmUjtBMkcxa2ZZO0VBQ0k7QTNHNGtmaEI7QTJHemtmWTtFQUNJLGNsQy8zQkw7QXpFMDhnQlg7QTJHeGtmWTtFQUNJLGNsQ240Qkw7RWtDbzRCSztFQUNBO0VBQ0E7QTNHMGtmaEI7QTJHdmtmWTtFQUNJO0VBQ0EseUJsQzM0Qkw7RWtDNDRCSyxxQmxDNTRCTDtBekVxOWdCWDtBMkd0a2ZZO0VBQ0kseUJsQzE1QlA7RWtDMjVCTyxxQmxDMzVCUDtFa0M0NUJPLGNsQ3Y1Qk47RWtDdzVCTTtBM0d3a2ZoQjtBMkdya2ZZO0VBQ0k7QTNHdWtmaEI7QTJHcGtmWTtFQUNJO0EzR3NrZmhCO0EyR25rZlk7RUFDSTtFQUNBO0VBQ0EsY2xDbjZCTjtBekV3K2dCVjtBMkdsa2ZZO0VBQ0k7RUFDQTtBM0dva2ZoQjtBMkdsa2ZnQjtFQUNJO0VBQ0E7RUFDQTtBM0dva2ZwQjtBMkdqa2ZnQjtFQUNJO0VBQ0E7RUFDQTtFQUNBLGNsQ3A3QlY7QXpFdS9nQlY7QTJHaGtmZ0I7RUFDSTtFQUNBLGNsQ3Y3QlQ7QXpFeS9nQlg7QTJHaGtmb0I7RUFDSSxjbENsOEJYO0VrQ204Qlc7RUFDQTtBM0dra2Z4QjtBMkc3amZZO0VBQ0k7RUFDQTtBM0cramZoQjtBMkc1amZZO0VBQ0k7RUFDQTtBM0c4amZoQjtBMkc1amZnQjtFQUNJLGNsQ2g5QlY7QXpFOGdoQlY7QTJHM2pmZ0I7RUFDSSxjbENwOUJWO0VrQ3E5QlU7RUFDQTtFQUNBO0EzRzZqZnBCO0EyRzFqZmdCO0VBQ0k7QTNHNGpmcEI7QTJHempmZ0I7RUFDSSxjbEMxOUJUO0VrQzI5QlM7QTNHMmpmcEI7QTJHeGpmZ0I7RUFDSSxjbENwK0JWO0VrQ3ErQlU7RUFDQTtBM0cwamZwQjtBMkd0amZZO0VBQ0k7QTNHd2pmaEI7QTJHdGpmZ0I7RUFDSTtBM0d3amZwQjtBMkdwamZZO0VBQ0ksY2xDOStCTDtFa0MrK0JLO0VBQ0E7QTNHc2pmaEI7QTJHbmpmWTtFQUNJO0EzR3FqZmhCO0EyR25qZmdCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQSxjbENoZ0NWO0F6RXFqaEJWO0EyR25qZm9CO0VBQ0ksY2xDOS9CYjtBekVtamhCWDtBMkdoamZZO0VBQ0ksbUNsQzNoQ0U7RWtDNGhDRjtFQUNBO0EzR2tqZmhCO0EyRy9pZlk7OztFQUVJO0EzR2tqZmhCO0EyRy9pZlk7RUFDSSxjbENwaENOO0F6RXFraEJWO0EyRzdpZlE7RUFDSTtBM0craWZaO0EyRzdpZlk7RUFDSTtBM0craWZoQjs7QTJHemlmQTtFQUNJO0VBQ0E7RUFDQTtBM0c0aWZKO0EyRzFpZkk7RUFDSSx3QmxDMWpDVTtBekVzbWhCbEI7QTJHemlmSTtFQUNJLHlCbENqakNDO0VrQ2tqQ0QscUJsQ2xqQ0M7RWtDbWpDRCxjbEM5aUNFO0VrQytpQ0Y7QTNHMmlmUjtBNkV0bGdCSTtFOEI4aUJBO0lBRVE7RTNHMGlmVjtBQUNGO0EyR3RpZmdCO0VBQ0k7QTNHd2lmcEI7QTJHcmlmZ0I7RUFDSTtBM0d1aWZwQjtBMkdwaWZnQjs7RUFFSTtBM0dzaWZwQjtBMkduaWZnQjtFQUNJLGNsQ3ZrQ1Y7QXpFNG1oQlY7QTJHamlmWTtFQUNJLHlCbEN2a0NMO0F6RTBtaEJYO0EyR2hpZlk7RUFDSTtBM0draWZoQjtBMkcvaGZZO0VBQ0ksY2xDL2tDTDtBekVnbmhCWDtBMkc5aGZZO0VBQ0k7QTNHZ2lmaEI7QTJHN2hmWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzRytoZmhCO0EyRzVoZlk7RUFDSTtFQUNBO0EzRzhoZmhCO0EyRzNoZlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzRzZoZmhCO0EyRzFoZlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EseUJsQzVuQ0w7QXpFd3BoQlg7QTJHemhmWTtFQUNJO0VBQ0E7QTNHMmhmaEI7QTJHeGhmWTtFQUNJO0VBQ0EsY2xDM29DTjtFa0M0b0NNO0VBQ0E7QTNHMGhmaEI7QTJHdmhmWTtFQUNJO0VBQ0E7QTNHeWhmaEI7QTJHcmhmZ0I7RUFDSTtFQUNBLGNsQ3JwQ1Y7QXpFNHFoQlY7QTJHamhmSTtFQUNJO0EzR21oZlI7QTJHaGhmSTtFQUNJO0EzR2toZlI7O0EyRzlnZkE7RUFDSTtBM0dpaGZKOztBMkc5Z2ZBO0VBQ0k7RUFDQTtBM0dpaGZKOztBMkc5Z2ZBO0VBQ0k7QTNHaWhmSjs7QTJHN2dmQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0dnaGZKOztBMkc3Z2ZBO0VBQ0k7QTNHZ2hmSjs7QTRHeHZoQkE7QUFDQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVHMnZoQkY7O0E0R3h2aEJBO0VBQ0U7RUFDQTtFQUNBO0E1RzJ2aEJGO0E0R3p2aEJFO0VBQ0U7RUFDQTtBNUcydmhCSjtBNEd4dmhCRTtFQUNFO0E1RzB2aEJKOztBNEd0dmhCQTtFQUNFO0E1R3l2aEJGOztBNEd0dmhCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUd5dmhCRjtBNEd2dmhCRTtFQUNFO0VBQ0E7QTVHeXZoQko7O0E0R3J2aEJBO0VBQ0U7RUFDQTtFQUNBO0E1R3d2aEJGOztBNEdydmhCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E1R3d2aEJGOztBNEdydmhCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVHd3ZoQkY7O0E0R3J2aEJBO0VBQ0U7RUFDQTtFQUNBO0E1R3d2aEJGOztBNEdydmhCQTtFQUNFO0VBQ0E7RUFDQTtBNUd3dmhCRjs7QTRHcnZoQkE7RUFDRTtFQUNBO0E1R3d2aEJGOztBNEdwdmhCQTtFQUNFO0E1R3V2aEJGO0E0R3B2aEJJO0VBQ0U7RUFDQTtBNUdzdmhCTjs7QTRHanZoQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1R292aEJGO0E0R2x2aEJFO0VBQ0U7QTVHb3ZoQko7O0E0R2h2aEJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTVHbXZoQkY7O0E0R2h2aEJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUdtdmhCRjtBNEdqdmhCRTtFQUNFO0VBQ0E7QTVHbXZoQko7QTRHaHZoQkU7RUFDRTtBNUdrdmhCSjtBNEdodmhCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVHa3ZoQk47QTRHL3VoQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBNUdpdmhCTjtBNEc5dWhCSTtFQUNFO0VBQ0E7RUFDQTtBNUdndmhCTjtBNEc5dWhCTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUdndmhCUjs7QTRHMXVoQkE7RUFDRTtFQUNBO0E1RzZ1aEJGO0E0RzF1aEJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTVHNHVoQk47QTRHenVoQkk7RUFDRTtFQUNBO0VBQ0E7QTVHMnVoQk47QTRHdnVoQkU7RUFDRTtFQUNBO0E1R3l1aEJKO0E0R3Z1aEJJO0VBQ0U7RUFDQTtBNUd5dWhCTjtBNEd0dWhCSTtFQUNFO0E1R3d1aEJOOztBNEdudWhCQTtFQUNFO0E1R3N1aEJGO0E0R3B1aEJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVHc3VoQko7QTRHcHVoQkk7RUFDRTtFQUNBO0E1R3N1aEJOOztBNEdqdWhCQTtFQUNFO0VBQ0E7QTVHb3VoQkY7QTRHbHVoQkU7RUFDRTtFQUNBO0VBQ0E7QTVHb3VoQko7QTRHbHVoQkk7RUFDRTtFQUNBO0E1R291aEJOO0E0R2p1aEJJO0VBQ0U7RUFDQTtBNUdtdWhCTjs7QTRHOXRoQkE7QUFDQTtFQUNFO0lBQ0U7RTVHaXVoQkY7O0U0Rzl0aEJBO0lBQ0U7RTVHaXVoQkY7O0U0Rzl0aEJBO0lBQ0U7RTVHaXVoQkY7O0U0Rzl0aEJBO0lBQ0U7RTVHaXVoQkY7O0U0Rzd0aEJBO0lBQ0U7SUFDQTtJQUNBO0U1R2d1aEJGOztFNEc3dGhCQTtJQUNFO0lBQ0E7RTVHZ3VoQkY7O0U0Rzd0aEJBOzs7SUFHRTtJQUNBO0U1R2d1aEJGOztFNEc1dGhCRTtJQUNFO0U1Ryt0aEJKO0FBQ0Y7QTRHM3RoQkE7RUFHTTtJQUNFO0U1RzJ0aEJOO0U0R3h0aEJJO0lBQ0U7RTVHMHRoQk47RTRHdHRoQk07SUFDRTtFNUd3dGhCUjs7RTRHanRoQkU7SUFDRTtFNUdvdGhCSjs7RTRHaHRoQkE7SUFDRTtJQUNBO0U1R210aEJGO0FBQ0Y7QTZHbmdpQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3R3FnaUJGO0E2R3BnaUJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0dzZ2lCSjtBNkdwZ2lCRTtFQUNFO0VBQ0E7QTdHc2dpQko7QTZHcGdpQkU7RUFLRTtBN0drZ2lCSjtBNkd0Z2lCSTtFQUNFO0VBQ0E7QTdHd2dpQk47QTZHcGdpQkU7RUFDRTtFQUNBO0VBQ0E7QTdHc2dpQko7O0E2R2xnaUJBO0VBRUk7SUFDRTtFN0dvZ2lCSjtFNkdsZ2lCRTtJQUNFO0U3R29naUJKO0FBQ0Y7QThHMWlpQkE7O0VBQUE7QUFHQTtFQUNFO0E5RzRpaUJGO0E4RzFpaUJFO0VBQ0UsaUNyQ3lEYTtFcUN4RGI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHdCckNVYztFcUNUZDtBOUc0aWlCSjtBOEcxaWlCSTtFQUNFLHdCckNNWTtFcUNMWjtFQUNBO0E5RzRpaUJOO0E4R3hpaUJNO0VBQ0U7RUFDQTtFQUNBO0E5RzBpaUJSO0E4R3JpaUJFO0VBQ0U7RUFDQTtBOUd1aWlCSjtBOEdwaWlCRTtFQUNFO0VBQ0E7RUFDQTtBOUdzaWlCSjs7QStHN2tpQkE7O0VBQUE7QUFHQTtFQUNFO0EvR2dsaUJGO0ErRy9raUJFO0VBQ0UsaUN0QzBEYTtFc0N6RGI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHdCdENXYztFc0NWZDtBL0dpbGlCSjtBK0dobGlCSTtFQUNFLHdCdENRWTtFc0NQWjtBL0drbGlCTjtBK0c5a2lCRTtFQUNFO0VBQ0E7QS9HZ2xpQko7QStHN2tpQkU7RUFDRTtFQUNBO0VBQ0E7QS9HK2tpQko7QStHNWtpQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9HOGtpQko7QStHNWtpQkU7RUFDRTtBL0c4a2lCSjs7QWdIdG5pQkE7O0VBQUE7QUFHQTtFQUNFO0FoSHluaUJGO0FnSHhuaUJFO0VBQ0UsaUN2QzBEYTtFdUN6RGI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHdCdkNXYztFdUNWZDtBaEgwbmlCSjtBZ0h6bmlCSTtFQUNFLHdCdkNRWTtFdUNQWjtBaEgybmlCTjtBZ0h2bmlCRTtFQUNFO0VBQ0E7QWhIeW5pQko7QWdIdG5pQkU7RUFDRTtFQUNBO0VBQ0E7QWhId25pQko7QWdIcm5pQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhIdW5pQko7QWdIcm5pQkU7RUFDRTtBaEh1bmlCSjs7QWlIL3BpQkE7O0VBQUE7QUFNQTtFQUNFO0VBQ0E7QWpIK3BpQkY7QTZFMW5oQkk7RW9DdmlCSjtJQUlJO0lBQ0E7SUFDQTtFakhpcWlCRjtBQUNGO0FpSGhxaUJFO0VBQ0U7QWpIa3FpQko7QTZFcG9oQkk7RW9DL2hCRjtJQUdJO0VqSG9xaUJKO0FBQ0Y7QWlIbHFpQkU7RUFDRTtBakhvcWlCSjtBNkU1b2hCSTtFb0N6aEJGO0lBR0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWpIc3FpQko7QUFDRjtBaUhwcWlCRTtFQUNFO0VBQ0E7RUFDQTtBakhzcWlCSjtBaUhycWlCSTtFQUNFO0FqSHVxaUJOO0E2RS9waEJJO0VvQ3pnQkE7SUFHSTtJQUNBO0VqSHlxaUJOO0FBQ0Y7QWlIeHFpQk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGN4Q2RDO0V3Q2VEO0VBQ0E7RUFDQTtFQUNBO0FqSDBxaUJSO0E2RW5yaEJJO0VvQ25nQkU7SUFjSTtFakg0cWlCUjtBQUNGO0FpSDNxaUJRO0VBQ0U7QWpINnFpQlY7QWlIM3FpQlE7RUFLRTtBakh5cWlCVjtBaUg3cWlCVTtFQUNFLGF4QzNCSDtFd0M0Qkc7QWpIK3FpQlo7QWlIM3FpQlE7RUFDRTtFQUNBO0FqSDZxaUJWO0FpSDVxaUJVO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsaUN4Q3hEQztFd0N5REQ7QWpIOHFpQlo7QTZFaHRoQkk7RW9DemVJO0lBZUk7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFakg4cWlCVjtBQUNGO0FpSDFxaUJNOztFQUVFLHNCeEMzRUs7QXpFdXZpQmI7QWlIMXFpQlU7O0VBQ0UscUJ4QzlFQztBekUydmlCYjtBaUh4cWlCVTs7RUFDRTtBakgycWlCWjtBNkV4dWhCSTtFb0M5Ykk7SUFFSTtJQUNBO0lBQ0E7RWpId3FpQlY7QUFDRjs7QWtINXhpQkE7O0VBQUE7QUFJRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FsSDh4aUJKO0FrSDd4aUJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEgreGlCTjtBa0g3eGlCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEgreGlCTjtBa0g1eGlCRTtFQUNFO0VBQ0EsY3pDV007QXpFbXhpQlY7QWtINXhpQkU7RUFDRTtFQUNBO0VBQ0Esc0J6Q2JTO0V5Q2NUO0VBQ0E7QWxIOHhpQko7O0FtSGwwaUJFO0VBQ0U7RUFDQSxzQjFDbUJTO0F6RWt6aUJiO0FtSG4waUJFO0VBQ0Usd0IxQ2lCYztBekVvemlCbEI7O0FvSDMwaUJBOztFQUFBO0F2QzZpQkk7RXVDMWlCSjtJQUVJO0VwSDgwaUJGO0FBQ0Y7QW9INTBpQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwSDgwaUJKO0FvSDMwaUJFO0VBQ0UsYzNDMkJNO0UyQzFCTjtFQUNBO0VBQ0E7QXBINjBpQko7QW9IMTBpQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBcEg0MGlCSjtBb0gxMGlCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBINDBpQk47QW9IdjBpQkU7Ozs7RUFJRTtBcEh5MGlCSjs7QXFIcDNpQkE7RUFDRTtFQUNBO0VBQ0EsMkM1QzhEaUI7QXpFeXppQm5CO0FxSHQzaUJFO0VBQ0U7RUFDQTtBckh3M2lCSjtBcUh0M2lCRTtFQUNFO0VBQ0E7RUFDQTtBckh3M2lCSjtBcUh0M2lCRTtFQUNFO0VBQ0E7RUFDQTtBckh3M2lCSjtBcUhyM2lCRTtFQUNFO0FySHUzaUJKO0FxSHAzaUJFO0VBQ0U7QXJIczNpQko7QXFIbjNpQkU7RUFDRTtFQUNBO0VBQ0E7QXJIcTNpQko7O0FBMTBpQkE7RUFDRTtBQTYwaUJGLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL2FwcC5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9ib290c3RyYXAuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Jvb3Quc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3JlYm9vdC5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy92ZW5kb3IvX3Jmcy5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdHlwZS5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2xpc3RzLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19pbWFnZXMuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19pbWFnZS5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY29udGFpbmVycy5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NvbnRhaW5lci5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdGFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGFibGUtdmFyaWFudHMuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2xhYmVscy5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZm9ybS10ZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mb3JtLWNvbnRyb2wuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190cmFuc2l0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JhZGllbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mb3JtLXNlbGVjdC5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZm9ybS1jaGVjay5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZm9ybS1yYW5nZS5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZmxvYXRpbmctbGFiZWxzLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19pbnB1dC1ncm91cC5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2Zvcm1zLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnV0dG9ucy5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdHJhbnNpdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Ryb3Bkb3duLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2FyZXQuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2J1dHRvbi1ncm91cC5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbmF2LnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19uYXZiYXIuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2NhcmQuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2FjY29yZGlvbi5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnJlYWRjcnVtYi5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcGFnaW5hdGlvbi5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2JhZGdlLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19hbGVydC5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2FsZXJ0LnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wcm9ncmVzcy5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbGlzdC1ncm91cC5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2xpc3QtZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Nsb3NlLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190b2FzdHMuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX21vZGFsLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFja2Ryb3Auc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Rvb2x0aXAuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19yZXNldC10ZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wb3BvdmVyLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jYXJvdXNlbC5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NsZWFyZml4LnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19zcGlubmVycy5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fb2ZmY2FudmFzLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wbGFjZWhvbGRlcnMuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fY29sb3JlZC1saW5rcy5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19yYXRpby5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19wb3NpdGlvbi5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19zdGFja3Muc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fdmlzdWFsbHktaGlkZGVuLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdmlzdWFsbHktaGlkZGVuLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3N0cmV0Y2hlZC1saW5rLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3RleHQtdHJ1bmNhdGlvbi5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtdHJ1bmNhdGUuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fdnIuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL191dGlsaXRpZXMuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19hcGkuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9ub2RlX21vZHVsZXMvc2xpY2stY2Fyb3VzZWwvc2xpY2svc2xpY2suc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL2Fic3RyYWN0L192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL2Jhc2UvX2hlbHBlci5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL2Fzc2V0cy9zdHlsZXMvY29tcG9uZW50cy9fYnJlYWRjcnVtYi5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL2Fzc2V0cy9zdHlsZXMvY29tcG9uZW50cy9fYnV0dG9ucy5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL25vZGVfbW9kdWxlcy9pbmNsdWRlLW1lZGlhL2Rpc3QvX2luY2x1ZGUtbWVkaWEuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL2NvbXBvbmVudHMvX2NoZWNrYm94LnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vYXNzZXRzL3N0eWxlcy9jb21wb25lbnRzL19mb3Jtcy5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL2Fzc2V0cy9zdHlsZXMvY29tcG9uZW50cy9fc3RlcGJhci5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL2Fzc2V0cy9zdHlsZXMvY29tcG9uZW50cy9fdGl0bGVzLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vYXNzZXRzL3N0eWxlcy9jb21wb25lbnRzL19saW5rcy5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL2Fzc2V0cy9zdHlsZXMvY29tcG9uZW50cy9fbW9kYWwuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL2NvbXBvbmVudHMvX3RhYnMuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL2NvbXBvbmVudHMvX3BhZ2Uuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL2NvbXBvbmVudHMvX2JhZGdlLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vYXNzZXRzL3N0eWxlcy9jb21wb25lbnRzL19zbGlkZXIuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL2NvbXBvbmVudHMvX3NlbGVjdC5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL2Fzc2V0cy9zdHlsZXMvY29tcG9uZW50cy9fdGFibGUuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL2NvbXBvbmVudHMvX3NlYXJjaC1iYXIuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL2NvbXBvbmVudHMvX21hcC5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL2Fzc2V0cy9zdHlsZXMvY29tcG9uZW50cy9fZmxhc2gtbWVzc2FnZXMuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL3BhcnRpYWxzL19jb21tb24taXRlbXMuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL3BhZ2VzL19hZG1pbi5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL2Fzc2V0cy9zdHlsZXMvcGFnZXMvX2RldGFpbC5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL2Fzc2V0cy9zdHlsZXMvcGFnZXMvX3NpZ251cC5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL2Fzc2V0cy9zdHlsZXMvcGFnZXMvX3Byb2R1Y2VyLWZvcm0uc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL3BhZ2VzL19jZWxsYXJtYW4td2luZWdyb3dlci1saXN0LnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vYXNzZXRzL3N0eWxlcy9wYWdlcy9fc2VsZWN0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vYXNzZXRzL3N0eWxlcy9wYWdlcy9fY2VsbGFybWFuLW9yZGVyaW50ZW5kLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vYXNzZXRzL3N0eWxlcy9wYWdlcy9fd2luZWdyb3dlci1hY2NvdW50LnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vYXNzZXRzL3N0eWxlcy9wYWdlcy9fb3JkZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vYXNzZXRzL3N0eWxlcy9wYWdlcy9fYmlsbHMuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL3BhZ2VzL193aW5lZ3Jvd2VyLWZvcm0uc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL3BhZ2VzL19jZWxsYXJtYW4tdmluZXlhcmQtZGV0YWlsLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vYXNzZXRzL3N0eWxlcy9wYWdlcy9fbWFpbnRlbmFuY2Uuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL3BhZ2VzL19wcm9kdWN0LWRldGFpbC5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL2Fzc2V0cy9zdHlsZXMvcGFnZXMvX3NwaXJpdC1wYW5hY2hlLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vYXNzZXRzL3N0eWxlcy9wYXJ0aWFscy9fZm9vdGVyLnNjc3MiLCJ3ZWJwYWNrOi8vd2VhcmV3aW5lLy4vYXNzZXRzL3N0eWxlcy9wYXJ0aWFscy9fbG9naW4uc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL3BhcnRpYWxzL19wYXNzb3dyZC1mb3Jnb3Quc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL3BhcnRpYWxzL19wYXNzd29yZC1mb3Jnb3QtZm9ybS5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL2Fzc2V0cy9zdHlsZXMvcGFydGlhbHMvX25hdmJhci5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL2Fzc2V0cy9zdHlsZXMvcGFydGlhbHMvX3Byb2ZpbC1pbmZvcy5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL2Fzc2V0cy9zdHlsZXMvcGFydGlhbHMvX21vcmUtcHJvZHVjdHMuc2NzcyIsIndlYnBhY2s6Ly93ZWFyZXdpbmUvLi9hc3NldHMvc3R5bGVzL3BhcnRpYWxzL19zaW5nbGUtYXJ0aWNsZS5zY3NzIiwid2VicGFjazovL3dlYXJld2luZS8uL2Fzc2V0cy9zdHlsZXMvcGFydGlhbHMvX3Rlcm1zLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBMaWJzXG4gKi9cblxuLy8gSW1wb3J0IGJvb3RzdHJhcCBtb2R1bGUgc3R5bGVzXG5AaW1wb3J0IFwifmJvb3RzdHJhcC9zY3NzL2Jvb3RzdHJhcFwiO1xuXG4vLyBJbXBvcnQgY3VzdG9tIGxpYnJhaXJpZXMgc3R5bGVzXG5AaW1wb3J0ICd+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+ICoge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuQGVhY2ggJGtleSwgJHJhdGlvIGluICRhc3BlY3QtcmF0aW9zIHtcbiAgLnJhdGlvLSN7JGtleX0ge1xuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fWFzcGVjdC1yYXRpbzogI3skcmF0aW99O1xuICB9XG59XG4iLCIvLyBTaG9ydGhhbmRcblxuLmZpeGVkLXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLmZpeGVkLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLy8gUmVzcG9uc2l2ZSBzdGlja3kgdG9wXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuc3RpY2t5I3skaW5maXh9LXRvcCB7XG4gICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgdG9wOiAwO1xuICAgICAgei1pbmRleDogJHppbmRleC1zdGlja3k7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzY3NzLWRvY3Mtc3RhcnQgc3RhY2tzXG4uaHN0YWNrIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbn1cblxuLnZzdGFjayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBzdGFja3NcbiIsIi8vXG4vLyBWaXN1YWxseSBoaWRkZW5cbi8vXG5cbi52aXN1YWxseS1oaWRkZW4sXG4udmlzdWFsbHktaGlkZGVuLWZvY3VzYWJsZTpub3QoOmZvY3VzKTpub3QoOmZvY3VzLXdpdGhpbikge1xuICBAaW5jbHVkZSB2aXN1YWxseS1oaWRkZW4oKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBIaWRlIGNvbnRlbnQgdmlzdWFsbHkgd2hpbGUga2VlcGluZyBpdCBhY2Nlc3NpYmxlIHRvIGFzc2lzdGl2ZSB0ZWNobm9sb2dpZXNcbi8vXG4vLyBTZWU6IGh0dHBzOi8vd3d3LmExMXlwcm9qZWN0LmNvbS9wb3N0cy8yMDEzLTAxLTExLWhvdy10by1oaWRlLWNvbnRlbnQvXG4vLyBTZWU6IGh0dHBzOi8va2l0dHlnaXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cblxuQG1peGluIHZpc3VhbGx5LWhpZGRlbigpIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHggIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxcHggIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBtYXJnaW46IC0xcHggIWltcG9ydGFudDsgLy8gRml4IGZvciBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI1Njg2XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKSAhaW1wb3J0YW50O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xufVxuXG4vLyBVc2UgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQsIG9yIG9uZSBvZiBpdHMgY2hpbGQgZWxlbWVudHMgaXMgZm9jdXNlZFxuLy8gKGkuZS4gd2hlbiBmb2N1cyBpcyB3aXRoaW4gdGhlIGVsZW1lbnQvY29udGFpbmVyIHRoYXQgdGhlIGNsYXNzIHdhcyBhcHBsaWVkIHRvKVxuLy9cbi8vIFVzZWZ1bCBmb3IgXCJTa2lwIHRvIG1haW4gY29udGVudFwiIGxpbmtzOyBzZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcblxuQG1peGluIHZpc3VhbGx5LWhpZGRlbi1mb2N1c2FibGUoKSB7XG4gICY6bm90KDpmb2N1cyk6bm90KDpmb2N1cy13aXRoaW4pIHtcbiAgICBAaW5jbHVkZSB2aXN1YWxseS1oaWRkZW4oKTtcbiAgfVxufVxuIiwiLy9cbi8vIFN0cmV0Y2hlZCBsaW5rXG4vL1xuXG4uc3RyZXRjaGVkLWxpbmsge1xuICAmOjojeyRzdHJldGNoZWQtbGluay1wc2V1ZG8tZWxlbWVudH0ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogJHN0cmV0Y2hlZC1saW5rLXotaW5kZXg7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuIiwiLy9cbi8vIFRleHQgdHJ1bmNhdGlvblxuLy9cblxuLnRleHQtdHJ1bmNhdGUge1xuICBAaW5jbHVkZSB0ZXh0LXRydW5jYXRlKCk7XG59XG4iLCIvLyBUZXh0IHRydW5jYXRlXG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXG5cbkBtaXhpbiB0ZXh0LXRydW5jYXRlKCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIi52ciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgd2lkdGg6IDFweDtcbiAgbWluLWhlaWdodDogMWVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIG9wYWNpdHk6ICRoci1vcGFjaXR5O1xufVxuIiwiLy8gVXRpbGl0eSBnZW5lcmF0b3Jcbi8vIFVzZWQgdG8gZ2VuZXJhdGUgdXRpbGl0aWVzICYgcHJpbnQgdXRpbGl0aWVzXG5AbWl4aW4gZ2VuZXJhdGUtdXRpbGl0eSgkdXRpbGl0eSwgJGluZml4LCAkaXMtcmZzLW1lZGlhLXF1ZXJ5OiBmYWxzZSkge1xuICAkdmFsdWVzOiBtYXAtZ2V0KCR1dGlsaXR5LCB2YWx1ZXMpO1xuXG4gIC8vIElmIHRoZSB2YWx1ZXMgYXJlIGEgbGlzdCBvciBzdHJpbmcsIGNvbnZlcnQgaXQgaW50byBhIG1hcFxuICBAaWYgdHlwZS1vZigkdmFsdWVzKSA9PSBcInN0cmluZ1wiIG9yIHR5cGUtb2YobnRoKCR2YWx1ZXMsIDEpKSAhPSBcImxpc3RcIiB7XG4gICAgJHZhbHVlczogemlwKCR2YWx1ZXMsICR2YWx1ZXMpO1xuICB9XG5cbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICR2YWx1ZXMge1xuICAgICRwcm9wZXJ0aWVzOiBtYXAtZ2V0KCR1dGlsaXR5LCBwcm9wZXJ0eSk7XG5cbiAgICAvLyBNdWx0aXBsZSBwcm9wZXJ0aWVzIGFyZSBwb3NzaWJsZSwgZm9yIGV4YW1wbGUgd2l0aCB2ZXJ0aWNhbCBvciBob3Jpem9udGFsIG1hcmdpbnMgb3IgcGFkZGluZ3NcbiAgICBAaWYgdHlwZS1vZigkcHJvcGVydGllcykgPT0gXCJzdHJpbmdcIiB7XG4gICAgICAkcHJvcGVydGllczogYXBwZW5kKCgpLCAkcHJvcGVydGllcyk7XG4gICAgfVxuXG4gICAgLy8gVXNlIGN1c3RvbSBjbGFzcyBpZiBwcmVzZW50XG4gICAgJHByb3BlcnR5LWNsYXNzOiBpZihtYXAtaGFzLWtleSgkdXRpbGl0eSwgY2xhc3MpLCBtYXAtZ2V0KCR1dGlsaXR5LCBjbGFzcyksIG50aCgkcHJvcGVydGllcywgMSkpO1xuICAgICRwcm9wZXJ0eS1jbGFzczogaWYoJHByb3BlcnR5LWNsYXNzID09IG51bGwsIFwiXCIsICRwcm9wZXJ0eS1jbGFzcyk7XG5cbiAgICAvLyBTdGF0ZSBwYXJhbXMgdG8gZ2VuZXJhdGUgcHNldWRvLWNsYXNzZXNcbiAgICAkc3RhdGU6IGlmKG1hcC1oYXMta2V5KCR1dGlsaXR5LCBzdGF0ZSksIG1hcC1nZXQoJHV0aWxpdHksIHN0YXRlKSwgKCkpO1xuXG4gICAgJGluZml4OiBpZigkcHJvcGVydHktY2xhc3MgPT0gXCJcIiBhbmQgc3RyLXNsaWNlKCRpbmZpeCwgMSwgMSkgPT0gXCItXCIsIHN0ci1zbGljZSgkaW5maXgsIDIpLCAkaW5maXgpO1xuXG4gICAgLy8gRG9uJ3QgcHJlZml4IGlmIHZhbHVlIGtleSBpcyBudWxsIChlZy4gd2l0aCBzaGFkb3cgY2xhc3MpXG4gICAgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyOiBpZigka2V5LCBpZigkcHJvcGVydHktY2xhc3MgPT0gXCJcIiBhbmQgJGluZml4ID09IFwiXCIsIFwiXCIsIFwiLVwiKSArICRrZXksIFwiXCIpO1xuXG4gICAgQGlmIG1hcC1nZXQoJHV0aWxpdHksIHJmcykge1xuICAgICAgLy8gSW5zaWRlIHRoZSBtZWRpYSBxdWVyeVxuICAgICAgQGlmICRpcy1yZnMtbWVkaWEtcXVlcnkge1xuICAgICAgICAkdmFsOiByZnMtdmFsdWUoJHZhbHVlKTtcblxuICAgICAgICAvLyBEbyBub3QgcmVuZGVyIGFueXRoaW5nIGlmIGZsdWlkIGFuZCBub24gZmx1aWQgdmFsdWVzIGFyZSB0aGUgc2FtZVxuICAgICAgICAkdmFsdWU6IGlmKCR2YWwgPT0gcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZSksIG51bGwsICR2YWwpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAkdmFsdWU6IHJmcy1mbHVpZC12YWx1ZSgkdmFsdWUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICRpcy1jc3MtdmFyOiBtYXAtZ2V0KCR1dGlsaXR5LCBjc3MtdmFyKTtcbiAgICAkaXMtbG9jYWwtdmFyczogbWFwLWdldCgkdXRpbGl0eSwgbG9jYWwtdmFycyk7XG4gICAgJGlzLXJ0bDogbWFwLWdldCgkdXRpbGl0eSwgcnRsKTtcblxuICAgIEBpZiAkdmFsdWUgIT0gbnVsbCB7XG4gICAgICBAaWYgJGlzLXJ0bCA9PSBmYWxzZSB7XG4gICAgICAgIC8qIHJ0bDpiZWdpbjpyZW1vdmUgKi9cbiAgICAgIH1cblxuICAgICAgQGlmICRpcy1jc3MtdmFyIHtcbiAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfSB7XG4gICAgICAgICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9I3skcHJvcGVydHktY2xhc3N9OiAjeyR2YWx1ZX07XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkcHNldWRvIGluICRzdGF0ZSB7XG4gICAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfS0jeyRwc2V1ZG99OiN7JHBzZXVkb30ge1xuICAgICAgICAgICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9I3skcHJvcGVydHktY2xhc3N9OiAjeyR2YWx1ZX07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfSB7XG4gICAgICAgICAgQGVhY2ggJHByb3BlcnR5IGluICRwcm9wZXJ0aWVzIHtcbiAgICAgICAgICAgIEBpZiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgIEBlYWNoICRsb2NhbC12YXIsICR2YWx1ZSBpbiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9I3skbG9jYWwtdmFyfTogI3skdmFsdWV9O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAjeyRwcm9wZXJ0eX06ICR2YWx1ZSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRwc2V1ZG8gaW4gJHN0YXRlIHtcbiAgICAgICAgICAuI3skcHJvcGVydHktY2xhc3MgKyAkaW5maXggKyAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXJ9LSN7JHBzZXVkb306I3skcHNldWRvfSB7XG4gICAgICAgICAgICBAZWFjaCAkcHJvcGVydHkgaW4gJHByb3BlcnRpZXMge1xuICAgICAgICAgICAgICAjeyRwcm9wZXJ0eX06ICR2YWx1ZSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaWYgJGlzLXJ0bCA9PSBmYWxzZSB7XG4gICAgICAgIC8qIHJ0bDplbmQ6cmVtb3ZlICovXG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBMb29wIG92ZXIgZWFjaCBicmVha3BvaW50XG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuXG4gIC8vIEdlbmVyYXRlIG1lZGlhIHF1ZXJ5IGlmIG5lZWRlZFxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAvLyBMb29wIG92ZXIgZWFjaCB1dGlsaXR5IHByb3BlcnR5XG4gICAgQGVhY2ggJGtleSwgJHV0aWxpdHkgaW4gJHV0aWxpdGllcyB7XG4gICAgICAvLyBUaGUgdXRpbGl0eSBjYW4gYmUgZGlzYWJsZWQgd2l0aCBgZmFsc2VgLCB0aHVzIGNoZWNrIGlmIHRoZSB1dGlsaXR5IGlzIGEgbWFwIGZpcnN0XG4gICAgICAvLyBPbmx5IHByb2NlZWQgaWYgcmVzcG9uc2l2ZSBtZWRpYSBxdWVyaWVzIGFyZSBlbmFibGVkIG9yIGlmIGl0J3MgdGhlIGJhc2UgbWVkaWEgcXVlcnlcbiAgICAgIEBpZiB0eXBlLW9mKCR1dGlsaXR5KSA9PSBcIm1hcFwiIGFuZCAobWFwLWdldCgkdXRpbGl0eSwgcmVzcG9uc2l2ZSkgb3IgJGluZml4ID09IFwiXCIpIHtcbiAgICAgICAgQGluY2x1ZGUgZ2VuZXJhdGUtdXRpbGl0eSgkdXRpbGl0eSwgJGluZml4KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gUkZTIHJlc2NhbGluZ1xuQG1lZGlhIChtaW4td2lkdGg6ICRyZnMtbXEtdmFsdWUpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIEBpZiAobWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQpIDwgJHJmcy1icmVha3BvaW50KSB7XG4gICAgICAvLyBMb29wIG92ZXIgZWFjaCB1dGlsaXR5IHByb3BlcnR5XG4gICAgICBAZWFjaCAka2V5LCAkdXRpbGl0eSBpbiAkdXRpbGl0aWVzIHtcbiAgICAgICAgLy8gVGhlIHV0aWxpdHkgY2FuIGJlIGRpc2FibGVkIHdpdGggYGZhbHNlYCwgdGh1cyBjaGVjayBpZiB0aGUgdXRpbGl0eSBpcyBhIG1hcCBmaXJzdFxuICAgICAgICAvLyBPbmx5IHByb2NlZWQgaWYgcmVzcG9uc2l2ZSBtZWRpYSBxdWVyaWVzIGFyZSBlbmFibGVkIG9yIGlmIGl0J3MgdGhlIGJhc2UgbWVkaWEgcXVlcnlcbiAgICAgICAgQGlmIHR5cGUtb2YoJHV0aWxpdHkpID09IFwibWFwXCIgYW5kIG1hcC1nZXQoJHV0aWxpdHksIHJmcykgYW5kIChtYXAtZ2V0KCR1dGlsaXR5LCByZXNwb25zaXZlKSBvciAkaW5maXggPT0gXCJcIikge1xuICAgICAgICAgIEBpbmNsdWRlIGdlbmVyYXRlLXV0aWxpdHkoJHV0aWxpdHksICRpbmZpeCwgdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBQcmludCB1dGlsaXRpZXNcbkBtZWRpYSBwcmludCB7XG4gIEBlYWNoICRrZXksICR1dGlsaXR5IGluICR1dGlsaXRpZXMge1xuICAgIC8vIFRoZSB1dGlsaXR5IGNhbiBiZSBkaXNhYmxlZCB3aXRoIGBmYWxzZWAsIHRodXMgY2hlY2sgaWYgdGhlIHV0aWxpdHkgaXMgYSBtYXAgZmlyc3RcbiAgICAvLyBUaGVuIGNoZWNrIGlmIHRoZSB1dGlsaXR5IG5lZWRzIHByaW50IHN0eWxlc1xuICAgIEBpZiB0eXBlLW9mKCR1dGlsaXR5KSA9PSBcIm1hcFwiIGFuZCBtYXAtZ2V0KCR1dGlsaXR5LCBwcmludCkgPT0gdHJ1ZSB7XG4gICAgICBAaW5jbHVkZSBnZW5lcmF0ZS11dGlsaXR5KCR1dGlsaXR5LCBcIi1wcmludFwiKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qIFNsaWRlciAqL1xuXG4uc2xpY2stc2xpZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLnNsaWNrLWxpc3Qge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuXG4gICAgJi5kcmFnZ2luZyB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgY3Vyc29yOiBoYW5kO1xuICAgIH1cbn1cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi5zbGljay10cmFjayB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcblxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG59XG4uc2xpY2stc2xpZGUge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgJi5zbGljay1sb2FkaW5nIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgICYuZHJhZ2dpbmcgaW1nIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuXG4gICAgLnNsaWNrLWluaXRpYWxpemVkICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cblxuICAgIC5zbGljay12ZXJ0aWNhbCAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgfVxufVxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbiIsIi8qKlxuICogQ29sb3JzIHZhcmlhYmxlc1xuICovXG5cbi8vIERlZmluZSB0aGVtZXMgY29sb3JzXG46cm9vdCB7XG4gIC8vIERlZmF1bHQgVGhlbWUgQ29sb3JzXG4gIC0tYmctY29sb3I6ICM5MzAwMDA7XG4gIC0tdGV4dC1Db2xvcjogIzZlMTgwMjtcbiAgLS1kYXJrZXItY29sb3ItNTogIzdhMDAwMDtcbiAgLS1saWdodGVyLWNvbG9yLTU6ICNhZDAwMDA7XG4gIC0tbGlnaHRlci1jb2xvci03MDogI2ZmZjlmOTtcblxuICAvLyBjZWxsYXJtYW5UaGVtZSBjb2xvcnNcbiAgLS1jZWxsYXJtYW5UaGVtZS1iZy1jb2xvcjogIzkwNGQxNDtcbiAgLS1jZWxsYXJtYW5UaGVtZS10ZXh0LWNvbG9yOiAjOTA0ZDE0O1xuICAtLWNlbGxhcm1hblRoZW1lLWRhcmtlci1jb2xvci01OiAjN2E0MTExO1xuICAtLWNlbGxhcm1hblRoZW1lLWxpZ2h0ZXItY29sb3ItNTogI2E2NTkxNztcbiAgLS1jZWxsYXJtYW5UaGVtZS1saWdodGVyLWNvbG9yLTcwOiAjZmZmZmZmO1xufVxuXG4vLyBEZWZpbmUgY29sb3JzIGluIHNjc3MgdmFyaWFibGVzXG4kbWFpbi1jb2xvcjogdmFyKC0tYmctY29sb3IpO1xuJG1haW4tdGV4dC1jb2xvcjogdmFyKC0tdGV4dC1Db2xvcik7XG4kbWFpbi1kYXJrZXItY29sb3ItNTogdmFyKC0tZGFya2VyLWNvbG9yLTUpO1xuJG1haW4tbGlnaHRlci1jb2xvci01OiB2YXIoLS1saWdodGVyLWNvbG9yLTUpO1xuJG1haW4tbGlnaHRlci1jb2xvci03MDogdmFyKC0tbGlnaHRlci1jb2xvci03MCk7XG5cbi8vIE5ldXRyYWwgY29sb3JzIChuYW1lIHNvdXJjZSA6IGh0dHBzOi8vYXBwbGVjb2xvcnMuY29tL2NvbG9yLylcbiRibGFjazogIzAwMDAwMDtcbiR3aGl0ZTogI2ZmZmZmZjtcbiRwYW1wYXM6ICNGN0YzRjE7XG4kc2Vhc2hlbGw6ICNmMWYxZjE7XG4kZ2FsbGVyeTogI2VjZWNlYztcbiRhbHRvOiAjZDhkOGQ4O1xuJGp1bWJvOiAjZTVlNWU1O1xuJHNpbHZlcjogI2MzYzNjMztcbiRzaWx2ZXItY2hhbGljZTogI2FiYWJhYjtcbiRkdXN0eS1ncmF5OiAjOTc5Nzk3O1xuJGdyYXk6ICM5MDkwOTA7XG4kcXVpY2tzaWx2ZXI6ICM5YjliOWI7XG4kYm91bGRlcjogIzc4Nzg3ODtcbiRkaW0tZ3JleTogIzczNzM3MztcbiRkb3ZlLWdyYXk6ICM2NjY2NjY7XG4kdHVuZG9yYTogIzQ0NDQ0NDtcblxuJGNvbnRlc3NhOiAjYzA3NDYwO1xuJG1hbmRhcmluLXJlZDogIzllMWExYTtcblxuJHZhbGlkOiBncmVlbjtcbiR3YXJuaW5nOiBvcmFuZ2U7XG4kYWxlcnQ6IHJlZDtcblxuLy9Qcm9kdWN0IGNvbG9yc1xuJHRvcC1zYWxlczogIzg2NWNhYztcbiRmYXZvdXJpdGU6ICNkNDJiMjU7XG4kbmV3OiAjNDM2NDAwO1xuJHByb21vOiAjZmZhMjAwO1xuJHRvcC1tYXJnZTogI2U2N2UyMjtcblxuXG4vKipcbiAqIEZvbnRzIHZhcmlhYmxlc1xuICovXG4kcm9ib3RvLXJlZ3VsYXI6ICdSb2JvdG8nLCBzYW5zLXNlcmlmO1xuJHJvYm90by1jb25kZW5zZWQ6ICdSb2JvdG8gQ29uZGVuc2VkJywgc2Fucy1zZXJpZjtcbiRiZWJhcy1yZWd1bGFyOiAnQmViYXMgTmV1ZScsIHNhbnMtc2VyaWY7XG4kZm9udC1hd2Vzb21lOiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIiwgc2Fucy1zZXJpZjtcbi8qKlxuICogQW5pbWF0aW9ucyB2YXJpYWJsZXNcbiAqL1xuJGFuaW1UaW1lOiAwLjNzO1xuJGFuaW1TdHlsZTogZWFzZS1pbi1vdXQ7XG5cbi8qKlxuICogQnJlYWtwb2ludHMgdmFyaWFibGVzXG4gKi9cbiRicmVha3BvaW50czogKFxuICAnbW9iaWxlJzogMzYwcHgsXG4gICdtb2JpbGUtbGFyZ2UnOiA1NzZweCxcbiAgJ3RhYmxldCc6IDc2OHB4LFxuICAndGFibGV0LW1lZGl1bSc6ODAwcHgsXG4gICd0YWJsZXQtbGFyZ2UnOiA5OTJweCxcbiAgJ2Rlc2t0b3AnOiAxMjAwcHhcbik7IiwiLyoqXG4gKiBCYXNpYyBzdHlsZXNcbiAqL1xuXG5odG1sIHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG5ib2R5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICBjb2xvcjogJGJsYWNrO1xuICBmb250LWZhbWlseTogJHJvYm90by1jb25kZW5zZWQ7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbWFyZ2luOiAwO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5tYWluLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1pbi1oZWlnaHQ6IDg1JTtcbiAgbWF4LXdpZHRoOiAxMDgwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG5he1xuICBjb2xvcjogJG1haW4tdGV4dC1jb2xvcjtcbiAgdHJhbnNpdGlvbjogY29sb3IgJGFuaW1UaW1lICRhbmltU3R5bGU7XG4gICY6aG92ZXJ7XG4gICAgY29sb3I6ICRtYWluLWNvbG9yO1xuICB9XG59XG5cbnN0cm9uZ3tcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICB3aWR0aDogNXB4O1xufVxuXG46Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBhbXBhcztcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRtYWluLWNvbG9yO1xufVxuXG4uY3Vyc29yLXBvaW50ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cblxuLmJvZHlfbWFpbnRlbmFuY2Uge1xuICBoZWlnaHQ6IDg2dmg7XG59XG4iLCIubmF2YmFyLWJyZWFkY3J1bWIge1xuICBwYWRkaW5nLXRvcDogMnJlbTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRkdXN0eS1ncmF5O1xuICB1bCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgY29sb3I6ICRib3VsZGVyO1xuICAgIGxpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgfVxuICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBCdXR0b25zXG4gKi9cbi5idG4ge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBwYWRkaW5nOiAwLjM3NXJlbSAxLjc1cmVtO1xuICB0cmFuc2l0aW9uOiBhbGwgJGFuaW1UaW1lICRhbmltU3R5bGU7XG59XG5cbi5idG4tcHJpbWFyeSxcbi5yb3cgLmJ0bi1wcmltYXJ5IHtcbiAgQGV4dGVuZCAuYnRuO1xuXG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XG4gIGJvcmRlci1jb2xvcjogJG1haW4tY29sb3I7XG4gIGNvbG9yOiAkd2hpdGU7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFpbi1saWdodGVyLWNvbG9yLTU7XG4gICAgYm9yZGVyLWNvbG9yOiAkbWFpbi1saWdodGVyLWNvbG9yLTcwO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRtYWluLWxpZ2h0ZXItY29sb3ItNTtcbiAgICBib3JkZXItY29sb3I6ICRtYWluLWRhcmtlci1jb2xvci01O1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gJG1haW4tZGFya2VyLWNvbG9yLTU7XG4gIH1cblxuICAmOmFjdGl2ZTpmb2N1cyB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSAkbWFpbi1kYXJrZXItY29sb3ItNTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQsXG4gICYuYnRuLWRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2lsdmVyO1xuICAgIGJvcmRlci1jb2xvcjogJHNpbHZlcjtcbiAgICBjb2xvcjogJGJvdWxkZXI7XG4gICAgY3Vyc29yOiBpbml0aWFsO1xuICB9XG59XG5cbi5idG5fX291dGxpbmUge1xuICBAZXh0ZW5kIC5idG47XG5cbiAgYm9yZGVyLWNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgY29sb3I6ICRtYWluLWNvbG9yO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtICRtYWluLWNvbG9yO1xuICB9XG5cbiAgJjphY3RpdmU6Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gJG1haW4tY29sb3I7XG4gIH1cbn1cblxuLmJ0bi1kZWxldGUge1xuICBtaW4td2lkdGg6IDEyOHB4O1xuICBtYXJnaW46IDlweCAwICFpbXBvcnRhbnQ7XG5cbiAgJi0tZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzaWx2ZXI7XG4gICAgYm9yZGVyLWNvbG9yOiAkc2lsdmVyO1xuXG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSxcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzaWx2ZXI7XG4gICAgICBib3JkZXItY29sb3I6ICRzaWx2ZXI7XG4gICAgICA7XG4gICAgfVxuICB9XG59XG5cbi5idG4tcmlnaHQge1xuICB3aWR0aDogNDclICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMCAwIDAgMTBweCAhaW1wb3J0YW50O1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPHRhYmxldC1sYXJnZVwiKSB7XG4gICAgd2lkdGg6IDgwJSAhaW1wb3J0YW50O1xuICB9XG59XG5cbmJ1dHRvbjpkaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzaWx2ZXIgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAkc2lsdmVyICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAkYm91bGRlcjtcbiAgY3Vyc29yOiBpbml0aWFsO1xufVxuXG4udG9nZ2xlLXZpc2liaWxpdHktLWhpZGRlbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzaWx2ZXI7XG4gIGJvcmRlci1jb2xvcjogJHNpbHZlcjtcbiAgY29sb3I6ICRib3VsZGVyO1xuICBvcGFjaXR5OiAwLjc7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNpbHZlcjtcbiAgICBib3JkZXItY29sb3I6ICRzaWx2ZXI7XG4gICAgY29sb3I6ICRib3VsZGVyO1xuICAgIG9wYWNpdHk6IDAuODtcbiAgfVxufVxuXG4vLyBTdHlsZXMgcG91ciBsZXMgYm91dG9ucyBkJ2FjdGlvbiBjb21wYWN0cyAobW9kaWZpZXIsIHN1cHByaW1lciwgbWFzcXVlcilcbi5idG4tYWN0aW9uIHtcbiAgbWluLXdpZHRoOiA0MHB4O1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG5cbiAgaSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOTUpO1xuICB9XG59IiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLyAgICAgXyAgICAgICAgICAgIF8gICAgICAgICAgIF8gICAgICAgICAgICAgICAgICAgICAgICAgICBfIF9cbi8vICAgIChfKSAgICAgICAgICB8IHwgICAgICAgICB8IHwgICAgICAgICAgICAgICAgICAgICAgICAgfCAoXylcbi8vICAgICBfIF8gX18gICBfX198IHxfICAgXyAgX198IHwgX19fICAgXyBfXyBfX18gICBfX18gIF9ffCB8XyAgX18gX1xuLy8gICAgfCB8ICdfIFxcIC8gX198IHwgfCB8IHwvIF9gIHwvIF8gXFwgfCAnXyBgIF8gXFwgLyBfIFxcLyBfYCB8IHwvIF9gIHxcbi8vICAgIHwgfCB8IHwgfCAoX198IHwgfF98IHwgKF98IHwgIF9fLyB8IHwgfCB8IHwgfCAgX18vIChffCB8IHwgKF98IHxcbi8vICAgIHxffF98IHxffFxcX19ffF98XFxfXyxffFxcX18sX3xcXF9fX3wgfF98IHxffCB8X3xcXF9fX3xcXF9fLF98X3xcXF9fLF98XG4vL1xuLy8gICAgICBTaW1wbGUsIGVsZWdhbnQgYW5kIG1haW50YWluYWJsZSBtZWRpYSBxdWVyaWVzIGluIFNhc3Ncbi8vICAgICAgICAgICAgICAgICAgICAgICAgdjEuNC45XG4vL1xuLy8gICAgICAgIGh0dHBzOi8vZWR1YXJkb2JvdWNhcy5naXRodWIuaW8vaW5jbHVkZS1tZWRpYVxuLy9cbi8vICAgICAgICAgQXV0aG9yczogRWR1YXJkbyBCb3VjYXMgKEBlZHVhcmRvYm91Y2FzKVxuLy8gICAgICAgICAgICAgICAgICBLaXR0eSBHaXJhdWRlbCAoQGtpdHR5Z2lyYXVkZWwpXG4vL1xuLy8gICAgICBUaGlzIHByb2plY3QgaXMgbGljZW5zZWQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBNSVQgbGljZW5zZVxuLy8vL1xuLy8vIGluY2x1ZGUtbWVkaWEgbGlicmFyeSBwdWJsaWMgY29uZmlndXJhdGlvblxuLy8vIEBhdXRob3IgRWR1YXJkbyBCb3VjYXNcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vL1xuXG5cbi8vL1xuLy8vIENyZWF0ZXMgYSBsaXN0IG9mIGdsb2JhbCBicmVha3BvaW50c1xuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIENyZWF0ZXMgYSBzaW5nbGUgYnJlYWtwb2ludCB3aXRoIHRoZSBsYWJlbCBgcGhvbmVgXG4vLy8gICRicmVha3BvaW50czogKCdwaG9uZSc6IDMyMHB4KTtcbi8vL1xuJGJyZWFrcG9pbnRzOiAoXG4gICdwaG9uZSc6IDMyMHB4LFxuICAndGFibGV0JzogNzY4cHgsXG4gICdkZXNrdG9wJzogMTAyNHB4XG4pICFkZWZhdWx0O1xuXG5cbi8vL1xuLy8vIENyZWF0ZXMgYSBsaXN0IG9mIHN0YXRpYyBleHByZXNzaW9ucyBvciBtZWRpYSB0eXBlc1xuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIENyZWF0ZXMgYSBzaW5nbGUgbWVkaWEgdHlwZSAoc2NyZWVuKVxuLy8vICAkbWVkaWEtZXhwcmVzc2lvbnM6ICgnc2NyZWVuJzogJ3NjcmVlbicpO1xuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIENyZWF0ZXMgYSBzdGF0aWMgZXhwcmVzc2lvbiB3aXRoIGxvZ2ljYWwgZGlzanVuY3Rpb24gKE9SIG9wZXJhdG9yKVxuLy8vICAkbWVkaWEtZXhwcmVzc2lvbnM6IChcbi8vLyAgICAncmV0aW5hMngnOiAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSdcbi8vLyAgKTtcbi8vL1xuJG1lZGlhLWV4cHJlc3Npb25zOiAoXG4gICdzY3JlZW4nOiAnc2NyZWVuJyxcbiAgJ3ByaW50JzogJ3ByaW50JyxcbiAgJ2hhbmRoZWxkJzogJ2hhbmRoZWxkJyxcbiAgJ2xhbmRzY2FwZSc6ICcob3JpZW50YXRpb246IGxhbmRzY2FwZSknLFxuICAncG9ydHJhaXQnOiAnKG9yaWVudGF0aW9uOiBwb3J0cmFpdCknLFxuICAncmV0aW5hMngnOiAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSwgKG1pbi1yZXNvbHV0aW9uOiAyZHBweCknLFxuICAncmV0aW5hM3gnOiAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMyksIChtaW4tcmVzb2x1dGlvbjogMzUwZHBpKSwgKG1pbi1yZXNvbHV0aW9uOiAzZHBweCknXG4pICFkZWZhdWx0O1xuXG5cbi8vL1xuLy8vIERlZmluZXMgYSBudW1iZXIgdG8gYmUgYWRkZWQgb3Igc3VidHJhY3RlZCBmcm9tIGVhY2ggdW5pdCB3aGVuIGRlY2xhcmluZyBicmVha3BvaW50cyB3aXRoIGV4Y2x1c2l2ZSBpbnRlcnZhbHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBJbnRlcnZhbCBmb3IgcGl4ZWxzIGlzIGRlZmluZWQgYXMgYDFgIGJ5IGRlZmF1bHRcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz4xMjhweCcpIHt9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogMTI5cHgpIHt9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gSW50ZXJ2YWwgZm9yIGVtcyBpcyBkZWZpbmVkIGFzIGAwLjAxYCBieSBkZWZhdWx0XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+MjBlbScpIHt9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogMjAuMDFlbSkge31cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBJbnRlcnZhbCBmb3IgcmVtcyBpcyBkZWZpbmVkIGFzIGAwLjFgIGJ5IGRlZmF1bHQsIHRvIGJlIHVzZWQgd2l0aCBgZm9udC1zaXplOiA2Mi41JTtgXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+Mi4wcmVtJykge31cbi8vL1xuLy8vICAvKiBHZW5lcmF0ZXM6ICovXG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiAyLjFyZW0pIHt9XG4vLy9cbiR1bml0LWludGVydmFsczogKFxuICAncHgnOiAxLFxuICAnZW0nOiAwLjAxLFxuICAncmVtJzogMC4xLFxuICAnJzogMFxuKSAhZGVmYXVsdDtcblxuLy8vXG4vLy8gRGVmaW5lcyB3aGV0aGVyIHN1cHBvcnQgZm9yIG1lZGlhIHF1ZXJpZXMgaXMgYXZhaWxhYmxlLCB1c2VmdWwgZm9yIGNyZWF0aW5nIHNlcGFyYXRlIHN0eWxlc2hlZXRzXG4vLy8gZm9yIGJyb3dzZXJzIHRoYXQgZG9uJ3Qgc3VwcG9ydCBtZWRpYSBxdWVyaWVzLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIERpc2FibGVzIHN1cHBvcnQgZm9yIG1lZGlhIHF1ZXJpZXNcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cbi8vLyAgLmZvbyB7XG4vLy8gICAgY29sb3I6IHRvbWF0bztcbi8vLyAgfVxuLy8vXG4kaW0tbWVkaWEtc3VwcG9ydDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vXG4vLy8gU2VsZWN0cyB3aGljaCBicmVha3BvaW50IHRvIGVtdWxhdGUgd2hlbiBzdXBwb3J0IGZvciBtZWRpYSBxdWVyaWVzIGlzIGRpc2FibGVkLiBNZWRpYSBxdWVyaWVzIHRoYXQgc3RhcnQgYXQgb3Jcbi8vLyBpbnRlcmNlcHQgdGhlIGJyZWFrcG9pbnQgd2lsbCBiZSBkaXNwbGF5ZWQsIGFueSBvdGhlcnMgd2lsbCBiZSBpZ25vcmVkLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFRoaXMgbWVkaWEgcXVlcnkgd2lsbCBzaG93IGJlY2F1c2UgaXQgaW50ZXJjZXB0cyB0aGUgc3RhdGljIGJyZWFrcG9pbnRcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnO1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cbi8vLyAgLmZvbyB7XG4vLy8gICAgY29sb3I6IHRvbWF0bztcbi8vLyAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFRoaXMgbWVkaWEgcXVlcnkgd2lsbCBOT1Qgc2hvdyBiZWNhdXNlIGl0IGRvZXMgbm90IGludGVyY2VwdCB0aGUgZGVza3RvcCBicmVha3BvaW50XG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcbi8vLyAgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICd0YWJsZXQnO1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgY29sb3I6IHRvbWF0bztcbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vICAvKiBObyBvdXRwdXQgKi9cbi8vL1xuJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICdkZXNrdG9wJyAhZGVmYXVsdDtcblxuLy8vXG4vLy8gU2VsZWN0cyB3aGljaCBtZWRpYSBleHByZXNzaW9ucyBhcmUgYWxsb3dlZCBpbiBhbiBleHByZXNzaW9uIGZvciBpdCB0byBiZSB1c2VkIHdoZW4gbWVkaWEgcXVlcmllc1xuLy8vIGFyZSBub3Qgc3VwcG9ydGVkLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFRoaXMgbWVkaWEgcXVlcnkgd2lsbCBzaG93IGJlY2F1c2UgaXQgaW50ZXJjZXB0cyB0aGUgc3RhdGljIGJyZWFrcG9pbnQgYW5kIGNvbnRhaW5zIG9ubHkgYWNjZXB0ZWQgbWVkaWEgZXhwcmVzc2lvbnNcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnO1xuLy8vICAkaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnM6ICgnc2NyZWVuJyk7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcsICdzY3JlZW4nKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gICAvKiBHZW5lcmF0ZXM6ICovXG4vLy8gICAuZm9vIHtcbi8vLyAgICAgY29sb3I6IHRvbWF0bztcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBUaGlzIG1lZGlhIHF1ZXJ5IHdpbGwgTk9UIHNob3cgYmVjYXVzZSBpdCBpbnRlcmNlcHRzIHRoZSBzdGF0aWMgYnJlYWtwb2ludCBidXQgY29udGFpbnMgYSBtZWRpYSBleHByZXNzaW9uIHRoYXQgaXMgbm90IGFjY2VwdGVkXG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcbi8vLyAgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICdkZXNrdG9wJztcbi8vLyAgJGltLW5vLW1lZGlhLWV4cHJlc3Npb25zOiAoJ3NjcmVlbicpO1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnLCAncmV0aW5hMngnKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gIC8qIE5vIG91dHB1dCAqL1xuLy8vXG4kaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnM6ICgnc2NyZWVuJywgJ3BvcnRyYWl0JywgJ2xhbmRzY2FwZScpICFkZWZhdWx0O1xuXG4vLy8vXG4vLy8gQ3Jvc3MtZW5naW5lIGxvZ2dpbmcgZW5naW5lXG4vLy8gQGF1dGhvciBLaXR0eSBHaXJhdWRlbFxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vL1xuXG5cbi8vL1xuLy8vIExvZyBhIG1lc3NhZ2UgZWl0aGVyIHdpdGggYEBlcnJvcmAgaWYgc3VwcG9ydGVkXG4vLy8gZWxzZSB3aXRoIGBAd2FybmAsIHVzaW5nIGBmZWF0dXJlLWV4aXN0cygnYXQtZXJyb3InKWBcbi8vLyB0byBkZXRlY3Qgc3VwcG9ydC5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbWVzc2FnZSAtIE1lc3NhZ2UgdG8gbG9nXG4vLy9cbkBmdW5jdGlvbiBpbS1sb2coJG1lc3NhZ2UpIHtcbiAgQGlmIGZlYXR1cmUtZXhpc3RzKCdhdC1lcnJvcicpIHtcbiAgICBAZXJyb3IgJG1lc3NhZ2U7XG4gIH0gQGVsc2Uge1xuICAgIEB3YXJuICRtZXNzYWdlO1xuICAgICRfOiBub29wKCk7XG4gIH1cblxuICBAcmV0dXJuICRtZXNzYWdlO1xufVxuXG5cbi8vL1xuLy8vIFdyYXBwZXIgbWl4aW4gZm9yIHRoZSBsb2cgZnVuY3Rpb24gc28gaXQgY2FuIGJlIHVzZWQgd2l0aCBhIG1vcmUgZnJpZW5kbHlcbi8vLyBBUEkgdGhhbiBgQGlmIGltLWxvZygnLi4nKSB7fWAgb3IgYCRfOiBpbS1sb2coJy4uJylgLiBCYXNpY2FsbHksIHVzZSB0aGUgZnVuY3Rpb25cbi8vLyB3aXRoaW4gZnVuY3Rpb25zIGJlY2F1c2UgaXQgaXMgbm90IHBvc3NpYmxlIHRvIGluY2x1ZGUgYSBtaXhpbiBpbiBhIGZ1bmN0aW9uXG4vLy8gYW5kIHVzZSB0aGUgbWl4aW4gZXZlcnl3aGVyZSBlbHNlIGJlY2F1c2UgaXQncyBtdWNoIG1vcmUgZWxlZ2FudC5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbWVzc2FnZSAtIE1lc3NhZ2UgdG8gbG9nXG4vLy9cbkBtaXhpbiBsb2coJG1lc3NhZ2UpIHtcbiAgQGlmIGltLWxvZygkbWVzc2FnZSkge31cbn1cblxuXG4vLy9cbi8vLyBGdW5jdGlvbiB3aXRoIG5vIGBAcmV0dXJuYCBjYWxsZWQgbmV4dCB0byBgQHdhcm5gIGluIFNhc3MgMy4zXG4vLy8gdG8gdHJpZ2dlciBhIGNvbXBpbGluZyBlcnJvciBhbmQgc3RvcCB0aGUgcHJvY2Vzcy5cbi8vL1xuQGZ1bmN0aW9uIG5vb3AoKSB7fVxuXG4vLy9cbi8vLyBEZXRlcm1pbmVzIHdoZXRoZXIgYSBsaXN0IG9mIGNvbmRpdGlvbnMgaXMgaW50ZXJjZXB0ZWQgYnkgdGhlIHN0YXRpYyBicmVha3BvaW50LlxuLy8vXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAgICRjb25kaXRpb25zICAtIE1lZGlhIHF1ZXJ5IGNvbmRpdGlvbnNcbi8vL1xuLy8vIEByZXR1cm4ge0Jvb2xlYW59IC0gUmV0dXJucyB0cnVlIGlmIHRoZSBjb25kaXRpb25zIGFyZSBpbnRlcmNlcHRlZCBieSB0aGUgc3RhdGljIGJyZWFrcG9pbnRcbi8vL1xuQGZ1bmN0aW9uIGltLWludGVyY2VwdHMtc3RhdGljLWJyZWFrcG9pbnQoJGNvbmRpdGlvbnMuLi4pIHtcbiAgJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludCk7XG5cbiAgQGlmIG5vdCAkbm8tbWVkaWEtYnJlYWtwb2ludC12YWx1ZSB7XG4gICAgQGlmIGltLWxvZygnYCN7JGltLW5vLW1lZGlhLWJyZWFrcG9pbnR9YCBpcyBub3QgYSB2YWxpZCBicmVha3BvaW50LicpIHt9XG4gIH1cblxuICBAZWFjaCAkY29uZGl0aW9uIGluICRjb25kaXRpb25zIHtcbiAgICBAaWYgbm90IG1hcC1oYXMta2V5KCRtZWRpYS1leHByZXNzaW9ucywgJGNvbmRpdGlvbikge1xuICAgICAgJG9wZXJhdG9yOiBnZXQtZXhwcmVzc2lvbi1vcGVyYXRvcigkY29uZGl0aW9uKTtcbiAgICAgICRwcmVmaXg6IGdldC1leHByZXNzaW9uLXByZWZpeCgkb3BlcmF0b3IpO1xuICAgICAgJHZhbHVlOiBnZXQtZXhwcmVzc2lvbi12YWx1ZSgkY29uZGl0aW9uLCAkb3BlcmF0b3IpO1xuXG4gICAgICBAaWYgKCRwcmVmaXggPT0gJ21heCcgYW5kICR2YWx1ZSA8PSAkbm8tbWVkaWEtYnJlYWtwb2ludC12YWx1ZSkgb3JcbiAgICAgICAgICAoJHByZWZpeCA9PSAnbWluJyBhbmQgJHZhbHVlID4gJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWUpIHtcbiAgICAgICAgQHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9IEBlbHNlIGlmIG5vdCBpbmRleCgkaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnMsICRjb25kaXRpb24pIHtcbiAgICAgIEByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiB0cnVlO1xufVxuXG4vLy8vXG4vLy8gUGFyc2luZyBlbmdpbmVcbi8vLyBAYXV0aG9yIEtpdHR5IEdpcmF1ZGVsXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8vXG5cblxuLy8vXG4vLy8gR2V0IG9wZXJhdG9yIG9mIGFuIGV4cHJlc3Npb25cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCBvcGVyYXRvciBmcm9tXG4vLy9cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gQW55IG9mIGA+PWAsIGA+YCwgYDw9YCwgYDxgLCBg4omlYCwgYOKJpGBcbi8vL1xuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLW9wZXJhdG9yKCRleHByZXNzaW9uKSB7XG4gIEBlYWNoICRvcGVyYXRvciBpbiAoJz49JywgJz4nLCAnPD0nLCAnPCcsICfiiaUnLCAn4omkJykge1xuICAgIEBpZiBzdHItaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xuICAgICAgQHJldHVybiAkb3BlcmF0b3I7XG4gICAgfVxuICB9XG5cbiAgLy8gSXQgaXMgbm90IHBvc3NpYmxlIHRvIGluY2x1ZGUgYSBtaXhpbiBpbnNpZGUgYSBmdW5jdGlvbiwgc28gd2UgaGF2ZSB0b1xuICAvLyByZWx5IG9uIHRoZSBgaW0tbG9nKC4uKWAgZnVuY3Rpb24gcmF0aGVyIHRoYW4gdGhlIGBsb2coLi4pYCBtaXhpbi4gQmVjYXVzZVxuICAvLyBmdW5jdGlvbnMgY2Fubm90IGJlIGNhbGxlZCBhbnl3aGVyZSBpbiBTYXNzLCB3ZSBuZWVkIHRvIGhhY2sgdGhlIGNhbGwgaW5cbiAgLy8gYSBkdW1teSB2YXJpYWJsZSwgc3VjaCBhcyBgJF9gLiBJZiBhbnlib2R5IGV2ZXIgcmFpc2UgYSBzY29waW5nIGlzc3VlIHdpdGhcbiAgLy8gU2FzcyAzLjMsIGNoYW5nZSB0aGlzIGxpbmUgaW4gYEBpZiBpbS1sb2coLi4pIHt9YCBpbnN0ZWFkLlxuICAkXzogaW0tbG9nKCdObyBvcGVyYXRvciBmb3VuZCBpbiBgI3skZXhwcmVzc2lvbn1gLicpO1xufVxuXG5cbi8vL1xuLy8vIEdldCBkaW1lbnNpb24gb2YgYW4gZXhwcmVzc2lvbiwgYmFzZWQgb24gYSBmb3VuZCBvcGVyYXRvclxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRleHByZXNzaW9uIC0gRXhwcmVzc2lvbiB0byBleHRyYWN0IGRpbWVuc2lvbiBmcm9tXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRvcGVyYXRvciAtIE9wZXJhdG9yIGZyb20gYCRleHByZXNzaW9uYFxuLy8vXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIGB3aWR0aGAgb3IgYGhlaWdodGAgKG9yIHBvdGVudGlhbGx5IGFueXRoaW5nIGVsc2UpXG4vLy9cbkBmdW5jdGlvbiBnZXQtZXhwcmVzc2lvbi1kaW1lbnNpb24oJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xuICAkb3BlcmF0b3ItaW5kZXg6IHN0ci1pbmRleCgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcbiAgJHBhcnNlZC1kaW1lbnNpb246IHN0ci1zbGljZSgkZXhwcmVzc2lvbiwgMCwgJG9wZXJhdG9yLWluZGV4IC0gMSk7XG4gICRkaW1lbnNpb246ICd3aWR0aCc7XG5cbiAgQGlmIHN0ci1sZW5ndGgoJHBhcnNlZC1kaW1lbnNpb24pID4gMCB7XG4gICAgJGRpbWVuc2lvbjogJHBhcnNlZC1kaW1lbnNpb247XG4gIH1cblxuICBAcmV0dXJuICRkaW1lbnNpb247XG59XG5cblxuLy8vXG4vLy8gR2V0IGRpbWVuc2lvbiBwcmVmaXggYmFzZWQgb24gYW4gb3BlcmF0b3Jcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkb3BlcmF0b3IgLSBPcGVyYXRvclxuLy8vXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIGBtaW5gIG9yIGBtYXhgXG4vLy9cbkBmdW5jdGlvbiBnZXQtZXhwcmVzc2lvbi1wcmVmaXgoJG9wZXJhdG9yKSB7XG4gIEByZXR1cm4gaWYoaW5kZXgoKCc8JywgJzw9JywgJ+KJpCcpLCAkb3BlcmF0b3IpLCAnbWF4JywgJ21pbicpO1xufVxuXG5cbi8vL1xuLy8vIEdldCB2YWx1ZSBvZiBhbiBleHByZXNzaW9uLCBiYXNlZCBvbiBhIGZvdW5kIG9wZXJhdG9yXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGV4cHJlc3Npb24gLSBFeHByZXNzaW9uIHRvIGV4dHJhY3QgdmFsdWUgZnJvbVxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkb3BlcmF0b3IgLSBPcGVyYXRvciBmcm9tIGAkZXhwcmVzc2lvbmBcbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn0gLSBBIG51bWVyaWMgdmFsdWVcbi8vL1xuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLXZhbHVlKCRleHByZXNzaW9uLCAkb3BlcmF0b3IpIHtcbiAgJG9wZXJhdG9yLWluZGV4OiBzdHItaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XG4gICR2YWx1ZTogc3RyLXNsaWNlKCRleHByZXNzaW9uLCAkb3BlcmF0b3ItaW5kZXggKyBzdHItbGVuZ3RoKCRvcGVyYXRvcikpO1xuXG4gIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICR2YWx1ZSkge1xuICAgICR2YWx1ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICR2YWx1ZSk7XG4gIH0gQGVsc2Uge1xuICAgICR2YWx1ZTogdG8tbnVtYmVyKCR2YWx1ZSk7XG4gIH1cblxuICAkaW50ZXJ2YWw6IG1hcC1nZXQoJHVuaXQtaW50ZXJ2YWxzLCB1bml0KCR2YWx1ZSkpO1xuXG4gIEBpZiBub3QgJGludGVydmFsIHtcbiAgICAvLyBJdCBpcyBub3QgcG9zc2libGUgdG8gaW5jbHVkZSBhIG1peGluIGluc2lkZSBhIGZ1bmN0aW9uLCBzbyB3ZSBoYXZlIHRvXG4gICAgLy8gcmVseSBvbiB0aGUgYGltLWxvZyguLilgIGZ1bmN0aW9uIHJhdGhlciB0aGFuIHRoZSBgbG9nKC4uKWAgbWl4aW4uIEJlY2F1c2VcbiAgICAvLyBmdW5jdGlvbnMgY2Fubm90IGJlIGNhbGxlZCBhbnl3aGVyZSBpbiBTYXNzLCB3ZSBuZWVkIHRvIGhhY2sgdGhlIGNhbGwgaW5cbiAgICAvLyBhIGR1bW15IHZhcmlhYmxlLCBzdWNoIGFzIGAkX2AuIElmIGFueWJvZHkgZXZlciByYWlzZSBhIHNjb3BpbmcgaXNzdWUgd2l0aFxuICAgIC8vIFNhc3MgMy4zLCBjaGFuZ2UgdGhpcyBsaW5lIGluIGBAaWYgaW0tbG9nKC4uKSB7fWAgaW5zdGVhZC5cbiAgICAkXzogaW0tbG9nKCdVbmtub3duIHVuaXQgYCN7dW5pdCgkdmFsdWUpfWAuJyk7XG4gIH1cblxuICBAaWYgJG9wZXJhdG9yID09ICc+JyB7XG4gICAgJHZhbHVlOiAkdmFsdWUgKyAkaW50ZXJ2YWw7XG4gIH0gQGVsc2UgaWYgJG9wZXJhdG9yID09ICc8JyB7XG4gICAgJHZhbHVlOiAkdmFsdWUgLSAkaW50ZXJ2YWw7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuXG4vLy9cbi8vLyBQYXJzZSBhbiBleHByZXNzaW9uIHRvIHJldHVybiBhIHZhbGlkIG1lZGlhLXF1ZXJ5IGV4cHJlc3Npb25cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gcGFyc2Vcbi8vL1xuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBWYWxpZCBtZWRpYSBxdWVyeVxuLy8vXG5AZnVuY3Rpb24gcGFyc2UtZXhwcmVzc2lvbigkZXhwcmVzc2lvbikge1xuICAvLyBJZiBpdCBpcyBwYXJ0IG9mICRtZWRpYS1leHByZXNzaW9ucywgaXQgaGFzIG5vIG9wZXJhdG9yXG4gIC8vIHRoZW4gdGhlcmUgaXMgbm8gbmVlZCB0byBnbyBhbnkgZnVydGhlciwganVzdCByZXR1cm4gdGhlIHZhbHVlXG4gIEBpZiBtYXAtaGFzLWtleSgkbWVkaWEtZXhwcmVzc2lvbnMsICRleHByZXNzaW9uKSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRtZWRpYS1leHByZXNzaW9ucywgJGV4cHJlc3Npb24pO1xuICB9XG5cbiAgJG9wZXJhdG9yOiBnZXQtZXhwcmVzc2lvbi1vcGVyYXRvcigkZXhwcmVzc2lvbik7XG4gICRkaW1lbnNpb246IGdldC1leHByZXNzaW9uLWRpbWVuc2lvbigkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcbiAgJHByZWZpeDogZ2V0LWV4cHJlc3Npb24tcHJlZml4KCRvcGVyYXRvcik7XG4gICR2YWx1ZTogZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XG5cbiAgQHJldHVybiAnKCN7JHByZWZpeH0tI3skZGltZW5zaW9ufTogI3skdmFsdWV9KSc7XG59XG5cbi8vL1xuLy8vIFNsaWNlIGAkbGlzdGAgYmV0d2VlbiBgJHN0YXJ0YCBhbmQgYCRlbmRgIGluZGV4ZXNcbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtMaXN0fSAkbGlzdCAtIExpc3QgdG8gc2xpY2Vcbi8vLyBAcGFyYW0ge051bWJlcn0gJHN0YXJ0IFsxXSAtIFN0YXJ0IGluZGV4XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRlbmQgW2xlbmd0aCgkbGlzdCldIC0gRW5kIGluZGV4XG4vLy9cbi8vLyBAcmV0dXJuIHtMaXN0fSBTbGljZWQgbGlzdFxuLy8vXG5AZnVuY3Rpb24gc2xpY2UoJGxpc3QsICRzdGFydDogMSwgJGVuZDogbGVuZ3RoKCRsaXN0KSkge1xuICBAaWYgbGVuZ3RoKCRsaXN0KSA8IDEgb3IgJHN0YXJ0ID4gJGVuZCB7XG4gICAgQHJldHVybiAoKTtcbiAgfVxuXG4gICRyZXN1bHQ6ICgpO1xuXG4gIEBmb3IgJGkgZnJvbSAkc3RhcnQgdGhyb3VnaCAkZW5kIHtcbiAgICAkcmVzdWx0OiBhcHBlbmQoJHJlc3VsdCwgbnRoKCRsaXN0LCAkaSkpO1xuICB9XG5cbiAgQHJldHVybiAkcmVzdWx0O1xufVxuXG4vLy8vXG4vLy8gU3RyaW5nIHRvIG51bWJlciBjb252ZXJ0ZXJcbi8vLyBAYXV0aG9yIEtpdHR5IEdpcmF1ZGVsXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8vXG5cblxuLy8vXG4vLy8gQ2FzdHMgYSBzdHJpbmcgaW50byBhIG51bWJlclxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmcgfCBOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGJlIHBhcnNlZFxuLy8vXG4vLy8gQHJldHVybiB7TnVtYmVyfVxuLy8vXG5AZnVuY3Rpb24gdG8tbnVtYmVyKCR2YWx1ZSkge1xuICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInIHtcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfSBAZWxzZSBpZiB0eXBlLW9mKCR2YWx1ZSkgIT0gJ3N0cmluZycge1xuICAgICRfOiBpbS1sb2coJ1ZhbHVlIGZvciBgdG8tbnVtYmVyYCBzaG91bGQgYmUgYSBudW1iZXIgb3IgYSBzdHJpbmcuJyk7XG4gIH1cblxuICAkZmlyc3QtY2hhcmFjdGVyOiBzdHItc2xpY2UoJHZhbHVlLCAxLCAxKTtcbiAgJHJlc3VsdDogMDtcbiAgJGRpZ2l0czogMDtcbiAgJG1pbnVzOiAoJGZpcnN0LWNoYXJhY3RlciA9PSAnLScpO1xuICAkbnVtYmVyczogKCcwJzogMCwgJzEnOiAxLCAnMic6IDIsICczJzogMywgJzQnOiA0LCAnNSc6IDUsICc2JzogNiwgJzcnOiA3LCAnOCc6IDgsICc5JzogOSk7XG5cbiAgLy8gUmVtb3ZlICsvLSBzaWduIGlmIHByZXNlbnQgYXQgZmlyc3QgY2hhcmFjdGVyXG4gIEBpZiAoJGZpcnN0LWNoYXJhY3RlciA9PSAnKycgb3IgJGZpcnN0LWNoYXJhY3RlciA9PSAnLScpIHtcbiAgICAkdmFsdWU6IHN0ci1zbGljZSgkdmFsdWUsIDIpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCBzdHItbGVuZ3RoKCR2YWx1ZSkge1xuICAgICRjaGFyYWN0ZXI6IHN0ci1zbGljZSgkdmFsdWUsICRpLCAkaSk7XG5cbiAgICBAaWYgbm90IChpbmRleChtYXAta2V5cygkbnVtYmVycyksICRjaGFyYWN0ZXIpIG9yICRjaGFyYWN0ZXIgPT0gJy4nKSB7XG4gICAgICBAcmV0dXJuIHRvLWxlbmd0aChpZigkbWludXMsIC0kcmVzdWx0LCAkcmVzdWx0KSwgc3RyLXNsaWNlKCR2YWx1ZSwgJGkpKVxuICAgIH1cblxuICAgIEBpZiAkY2hhcmFjdGVyID09ICcuJyB7XG4gICAgICAkZGlnaXRzOiAxO1xuICAgIH0gQGVsc2UgaWYgJGRpZ2l0cyA9PSAwIHtcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArIG1hcC1nZXQoJG51bWJlcnMsICRjaGFyYWN0ZXIpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJGRpZ2l0czogJGRpZ2l0cyAqIDEwO1xuICAgICAgJHJlc3VsdDogJHJlc3VsdCArIG1hcC1nZXQoJG51bWJlcnMsICRjaGFyYWN0ZXIpIC8gJGRpZ2l0cztcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuIGlmKCRtaW51cywgLSRyZXN1bHQsICRyZXN1bHQpO1xufVxuXG5cbi8vL1xuLy8vIEFkZCBgJHVuaXRgIHRvIGAkdmFsdWVgXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHZhbHVlIC0gVmFsdWUgdG8gYWRkIHVuaXQgdG9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHVuaXQgLSBTdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhlIHVuaXRcbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn0gLSBgJHZhbHVlYCBleHByZXNzZWQgaW4gYCR1bml0YFxuLy8vXG5AZnVuY3Rpb24gdG8tbGVuZ3RoKCR2YWx1ZSwgJHVuaXQpIHtcbiAgJHVuaXRzOiAoJ3B4JzogMXB4LCAnY20nOiAxY20sICdtbSc6IDFtbSwgJyUnOiAxJSwgJ2NoJzogMWNoLCAncGMnOiAxcGMsICdpbic6IDFpbiwgJ2VtJzogMWVtLCAncmVtJzogMXJlbSwgJ3B0JzogMXB0LCAnZXgnOiAxZXgsICd2dyc6IDF2dywgJ3ZoJzogMXZoLCAndm1pbic6IDF2bWluLCAndm1heCc6IDF2bWF4KTtcblxuICBAaWYgbm90IGluZGV4KG1hcC1rZXlzKCR1bml0cyksICR1bml0KSB7XG4gICAgJF86IGltLWxvZygnSW52YWxpZCB1bml0IGAjeyR1bml0fWAuJyk7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZSAqIG1hcC1nZXQoJHVuaXRzLCAkdW5pdCk7XG59XG5cbi8vL1xuLy8vIFRoaXMgbWl4aW4gYWltcyBhdCByZWRlZmluaW5nIHRoZSBjb25maWd1cmF0aW9uIGp1c3QgZm9yIHRoZSBzY29wZSBvZlxuLy8vIHRoZSBjYWxsLiBJdCBpcyBoZWxwZnVsIHdoZW4gaGF2aW5nIGEgY29tcG9uZW50IG5lZWRpbmcgYW4gZXh0ZW5kZWRcbi8vLyBjb25maWd1cmF0aW9uIHN1Y2ggYXMgY3VzdG9tIGJyZWFrcG9pbnRzIChyZWZlcnJlZCB0byBhcyB0d2Vha3BvaW50cylcbi8vLyBmb3IgaW5zdGFuY2UuXG4vLy9cbi8vLyBAYXV0aG9yIEtpdHR5IEdpcmF1ZGVsXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJHR3ZWFrcG9pbnRzIFsoKV0gLSBNYXAgb2YgdHdlYWtwb2ludHMgdG8gYmUgbWVyZ2VkIHdpdGggYCRicmVha3BvaW50c2Bcbi8vLyBAcGFyYW0ge01hcH0gJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zIFsoKV0gLSBNYXAgb2YgdHdlYWtlZCBtZWRpYSBleHByZXNzaW9ucyB0byBiZSBtZXJnZWQgd2l0aCBgJG1lZGlhLWV4cHJlc3Npb25gXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gRXh0ZW5kIHRoZSBnbG9iYWwgYnJlYWtwb2ludHMgd2l0aCBhIHR3ZWFrcG9pbnRcbi8vLyAgQGluY2x1ZGUgbWVkaWEtY29udGV4dCgoJ2N1c3RvbSc6IDY3OHB4KSkge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgQGluY2x1ZGUgbWVkaWEoJz5waG9uZScsICc8PWN1c3RvbScpIHtcbi8vLyAgICAgICAvLyAuLi5cbi8vLyAgICAgIH1cbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBFeHRlbmQgdGhlIGdsb2JhbCBtZWRpYSBleHByZXNzaW9ucyB3aXRoIGEgY3VzdG9tIG9uZVxuLy8vICBAaW5jbHVkZSBtZWRpYS1jb250ZXh0KCR0d2Vhay1tZWRpYS1leHByZXNzaW9uczogKCdhbGwnOiAnYWxsJykpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIEBpbmNsdWRlIG1lZGlhKCdhbGwnLCAnPnBob25lJykge1xuLy8vICAgICAgIC8vIC4uLlxuLy8vICAgICAgfVxuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEV4dGVuZCBib3RoIGNvbmZpZ3VyYXRpb24gbWFwc1xuLy8vICBAaW5jbHVkZSBtZWRpYS1jb250ZXh0KCgnY3VzdG9tJzogNjc4cHgpLCAoJ2FsbCc6ICdhbGwnKSkge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgQGluY2x1ZGUgbWVkaWEoJ2FsbCcsICc+cGhvbmUnLCAnPD1jdXN0b20nKSB7XG4vLy8gICAgICAgLy8gLi4uXG4vLy8gICAgICB9XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbkBtaXhpbiBtZWRpYS1jb250ZXh0KCR0d2Vha3BvaW50czogKCksICR0d2Vhay1tZWRpYS1leHByZXNzaW9uczogKCkpIHtcbiAgLy8gU2F2ZSBnbG9iYWwgY29uZmlndXJhdGlvblxuICAkZ2xvYmFsLWJyZWFrcG9pbnRzOiAkYnJlYWtwb2ludHM7XG4gICRnbG9iYWwtbWVkaWEtZXhwcmVzc2lvbnM6ICRtZWRpYS1leHByZXNzaW9ucztcblxuICAvLyBVcGRhdGUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cbiAgJGJyZWFrcG9pbnRzOiBtYXAtbWVyZ2UoJGJyZWFrcG9pbnRzLCAkdHdlYWtwb2ludHMpICFnbG9iYWw7XG4gICRtZWRpYS1leHByZXNzaW9uczogbWFwLW1lcmdlKCRtZWRpYS1leHByZXNzaW9ucywgJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zKSAhZ2xvYmFsO1xuXG4gIEBjb250ZW50O1xuXG4gIC8vIFJlc3RvcmUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cbiAgJGJyZWFrcG9pbnRzOiAkZ2xvYmFsLWJyZWFrcG9pbnRzICFnbG9iYWw7XG4gICRtZWRpYS1leHByZXNzaW9uczogJGdsb2JhbC1tZWRpYS1leHByZXNzaW9ucyAhZ2xvYmFsO1xufVxuXG4vLy8vXG4vLy8gaW5jbHVkZS1tZWRpYSBwdWJsaWMgZXhwb3NlZCBBUElcbi8vLyBAYXV0aG9yIEVkdWFyZG8gQm91Y2FzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLy9cblxuXG4vLy9cbi8vLyBHZW5lcmF0ZXMgYSBtZWRpYSBxdWVyeSBiYXNlZCBvbiBhIGxpc3Qgb2YgY29uZGl0aW9uc1xuLy8vXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAgICRjb25kaXRpb25zICAtIE1lZGlhIHF1ZXJ5IGNvbmRpdGlvbnNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIGEgc2luZ2xlIHNldCBicmVha3BvaW50XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+cGhvbmUnKSB7IH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIHR3byBzZXQgYnJlYWtwb2ludHNcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz5waG9uZScsICc8PXRhYmxldCcpIHsgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggY3VzdG9tIHZhbHVlc1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj0zNThweCcsICc8ODUwcHgnKSB7IH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIHNldCBicmVha3BvaW50cyB3aXRoIGN1c3RvbSB2YWx1ZXNcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz5kZXNrdG9wJywgJzw9MTM1MHB4JykgeyB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBhIHN0YXRpYyBleHByZXNzaW9uXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCdyZXRpbmEyeCcpIHsgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIE1peGluZyBldmVyeXRoaW5nXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PTM1MHB4JywgJzx0YWJsZXQnLCAncmV0aW5hM3gnKSB7IH1cbi8vL1xuQG1peGluIG1lZGlhKCRjb25kaXRpb25zLi4uKSB7XG4gIEBpZiAoJGltLW1lZGlhLXN1cHBvcnQgYW5kIGxlbmd0aCgkY29uZGl0aW9ucykgPT0gMCkgb3JcbiAgICAgIChub3QgJGltLW1lZGlhLXN1cHBvcnQgYW5kIGltLWludGVyY2VwdHMtc3RhdGljLWJyZWFrcG9pbnQoJGNvbmRpdGlvbnMuLi4pKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH0gQGVsc2UgaWYgKCRpbS1tZWRpYS1zdXBwb3J0IGFuZCBsZW5ndGgoJGNvbmRpdGlvbnMpID4gMCkge1xuICAgIEBtZWRpYSAje3VucXVvdGUocGFyc2UtZXhwcmVzc2lvbihudGgoJGNvbmRpdGlvbnMsIDEpKSl9IHtcbiAgICAgIC8vIFJlY3Vyc2l2ZSBjYWxsXG4gICAgICBAaW5jbHVkZSBtZWRpYShzbGljZSgkY29uZGl0aW9ucywgMikuLi4pIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAqIENoZWNrYm94ZXNcbiAqL1xuXG4uY2hlY2tib3gge1xuICBkaXNwbGF5OiBmbGV4O1xuICBpbnB1dCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICBsYWJlbCB7XG4gICAgY29sb3I6ICR0dW5kb3JhO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbiAgaSB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgY29sb3I6ICRzaWx2ZXI7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICB9XG4gIGEge1xuICAgIGNvbG9yOiAkdHVuZG9yYTtcbiAgfVxuICAuY2hlY2tib3hfX2NoZWNrZWQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgfiAuY2hlY2tib3hfX2NoZWNrZWQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjb2xvcjogJG1haW4tY29sb3I7XG4gIH1cbiAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgfiAuY2hlY2tib3hfX3VuY2hlY2tlZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuY2hlY2tib3hfX2xhYmVsLXRleHQge1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIH1cbn1cbiIsIi8qKlxuICogRm9ybXMgZmllbGRzXG4gKi9cbmxhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLnN1Yi1sYWJlbCB7XG4gIGNvbG9yOiAkc2lsdmVyO1xufVxuXG5pbnB1dFt0eXBlPVwiZW1haWxcIl0sXG5pbnB1dFt0eXBlPVwidGVsXCJdIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuaW5wdXRbdHlwZT1cInVybFwiXSxcbnRleHRhcmVhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgYm9yZGVyOiAxcHggc29saWQgJHNpbHZlcjtcbiAgcGFkZGluZzogNXB4IDEwcHg7XG4gIHRyYW5zaXRpb246IGFsbCAkYW5pbVRpbWUgJGFuaW1TdHlsZTtcblxuICAmOmZvY3VzLFxuICAmOmhvdmVyLFxuICAmOmFjdGl2ZSB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMC4xcmVtICRtYWluLWRhcmtlci1jb2xvci01IGluc2V0O1xuICAgIGJvcmRlci1jb2xvcjogJG1haW4tY29sb3I7XG4gIH1cblxuICAmLmVycm9yIHtcbiAgICBib3JkZXItY29sb3I6ICRhbGVydDtcbiAgfVxufVxuXG50ZXh0YXJlYSB7XG4gIHJlc2l6ZTogbm9uZTtcbn1cblxuaW5wdXQsXG50ZXh0YXJlYSxcbnNlbGVjdCB7XG4gICYuZm9ybS1jb250cm9sIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkc2lsdmVyICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbjogYWxsICRhbmltVGltZSAkYW5pbVN0eWxlO1xuICAgIHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW0gIWltcG9ydGFudDtcblxuICAgICY6LXdlYmtpdC1hdXRvZmlsbCB7XG4gICAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogJGJsYWNrO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgMTAwMHB4ICRtYWluLWxpZ2h0ZXItY29sb3ItNzAgaW5zZXQ7XG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAwIDEwMDBweCAkbWFpbi1saWdodGVyLWNvbG9yLTcwIGluc2V0O1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciA1MDAwcyBlYXNlLWluLW91dCAwcztcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMXJlbSAkbWFpbi1kYXJrZXItY29sb3ItNSBpbnNldDtcbiAgICAgIGJvcmRlci1jb2xvcjogJG1haW4tY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5mb3JtLWNoZWNrLWlucHV0IHtcbiAgJjpjaGVja2VkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRtYWluLWNvbG9yO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSAkbWFpbi1saWdodGVyLWNvbG9yLTcwO1xuICAgIGJvcmRlci1jb2xvcjogJG1haW4tY29sb3I7XG4gIH1cbn1cblxuLmN1c3RvbS1jaGVja2JveCB7XG4gIG1pbi13aWR0aDogMzVweDtcblxuICBbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQsXG4gIFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IC05OTk5cHg7XG4gIH1cblxuICBbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQrbGFiZWwsXG4gIFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKStsYWJlbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctbGVmdDogMjhweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGNvbG9yOiAkZG92ZS1ncmF5O1xuICB9XG5cbiAgW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkK2xhYmVsOmJlZm9yZSxcbiAgW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpK2xhYmVsOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxOHB4O1xuICAgIGhlaWdodDogMThweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkc2lsdmVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDIlO1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgfVxuXG4gIFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCtsYWJlbDphZnRlcixcbiAgW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpK2xhYmVsOmFmdGVyIHtcbiAgICBjb250ZW50OiAn4pyUJztcbiAgICBjb2xvcjogJG1haW4tY29sb3I7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMHB4O1xuICAgIGxlZnQ6IDRweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgJGFuaW1UaW1lICRhbmltU3R5bGU7XG4gIH1cblxuICBbdHlwZT1cImNoZWNrYm94XCJdOm5vdCg6Y2hlY2tlZCkrbGFiZWw6YWZ0ZXIge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuXG4gIFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCtsYWJlbDphZnRlciB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG5cbiAgJi5jaGVja2JveC1ib3R0b20ge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuXG4gICAgW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkK2xhYmVsLFxuICAgIFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKStsYWJlbCB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDM4cHg7XG4gICAgfVxuXG4gICAgW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkK2xhYmVsOmJlZm9yZSxcbiAgICBbdHlwZT1cImNoZWNrYm94XCJdOm5vdCg6Y2hlY2tlZCkrbGFiZWw6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHRvcDogaW5oZXJpdDtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB9XG5cbiAgICBbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQrbGFiZWw6YWZ0ZXIsXG4gICAgW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpK2xhYmVsOmFmdGVyIHtcbiAgICAgIGJvdHRvbTogLTFweDtcbiAgICAgIHRvcDogaW5oZXJpdDtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB9XG4gIH1cbn1cblxuLnVwbG9hZC16b25lIHtcbiAgcGFkZGluZzogMTBweDtcbiAgYmFja2dyb3VuZDogJGFsdG87XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cbiAgJi51cGxvYWRlZCB7XG4gICAgLnVwbG9hZC1jb250ZW50IHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICB9XG5cbiAgcCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cbiN1cGxvYWQtY292ZXIge1xuICBwYWRkaW5nOiAzMHB4IDEwcHg7XG5cbiAgI3VwbG9hZC1saXN0IHtcbiAgICBkaXYge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgd2lkdGg6IDExMHB4O1xuICAgICAgaGVpZ2h0OiAzOHB4O1xuICAgICAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICRncmF5O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAkYW5pbVRpbWUgJGFuaW1TdHlsZTtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICYuc2VsZWN0ZWQge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDRweCAkbWFpbi1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgaW1nIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB3aWR0aDogMTEwcHg7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4jdXBsb2FkLXByb2ZpbC1waWN0dXJlIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHdpZHRoOiAyMDBweDtcbiAgaGVpZ2h0OiAyMDBweDtcbiAgbGluZS1oZWlnaHQ6IDE4cHg7XG59XG5cbi5wcm9kdWN0X3BpY3R1cmUge1xuICBpbnB1dFt0eXBlPVwiZmlsZVwiXSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgb3BhY2l0eTogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHotaW5kZXg6IC0xO1xuICB9XG59XG5cbi5pbnB1dC1lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGNvbG9yOiAkYWxlcnQ7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbWFyZ2luLXRvcDogMTBweDtcbn1cblxuLnJhZGlvLXRhc3Rpbmcge1xuICBsYWJlbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01cHg7XG4gICAgYm90dG9tOiA1cHg7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2Q1ZDVkNTtcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IGNvbnRlbnQtYm94O1xuICAgIHBhZGRpbmc6IDJweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgbWFyZ2luOiAwIDE1cHg7XG4gIH1cblxuICBpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgfVxufVxuXG4vKipcbiAqIFRlY2huaWNhbCBTaGVldCBVcGxvYWRcbiAqL1xuLnRlY2huaWNhbC1zaGVldC11cGxvYWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBnYXA6IDAuNzVyZW0gMS41cmVtO1xuICBwYWRkaW5nOiAxLjFyZW0gMS4yNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U1ZTdlYjtcbiAgYm9yZGVyLXJhZGl1czogMC42MjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgMC41cmVtIDEuNXJlbSByZ2JhKDE1LCAyMywgNDIsIDAuMDYpO1xuXG4gICZfX2xlZnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDAuNzVyZW07XG4gICAgbWluLXdpZHRoOiAyMDBweDtcbiAgfVxuXG4gICZfX2ljb24ge1xuICAgIHdpZHRoOiAzMnB4O1xuICAgIGhlaWdodDogMzJweDtcbiAgICBvYmplY3QtZml0OiBjb250YWluO1xuICB9XG5cbiAgJl9fdGV4dHMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDAuMTI1cmVtO1xuICB9XG5cbiAgJl9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMC45NXJlbTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGNvbG9yOiAjMTExODI3O1xuICB9XG5cbiAgJl9fc3VidGl0bGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDAuMzc1cmVtO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgY29sb3I6ICM2YjcyODA7XG4gIH1cblxuICAmX19yaWdodCB7XG4gICAgZmxleDogMSAxIDIyMHB4O1xuICB9XG5cbiAgJl9fd2lkZ2V0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gICZfX2Zvcm0tcm93IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAudmljaC1maWxlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMC43NXJlbSAxLjI1cmVtO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLnRlY2huaWNhbC1zaGVldC11cGxvYWRfX2lucHV0IHtcbiAgICBmbGV4OiAxIDEgMjQwcHg7XG4gICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgcGFkZGluZzogMC4zNXJlbSAwLjY1cmVtO1xuICB9XG5cbiAgLnZpY2gtZmlsZSA+IGRpdiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMC41cmVtO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC50ZWNobmljYWwtc2hlZXQtdXBsb2FkX19kZWxldGUtY2hlY2tib3gge1xuICAgIHdpZHRoOiAxNnB4O1xuICAgIGhlaWdodDogMTZweDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgLnZpY2gtZmlsZSAuZm9ybS1jb250cm9sIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAudmljaC1maWxlIC5mb3JtLXRleHQge1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBnYXA6IDFyZW07XG5cbiAgICAmX19sZWZ0IHtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIH1cblxuICAgIC52aWNoLWZpbGUge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIH1cblxuICAgIC50ZWNobmljYWwtc2hlZXQtdXBsb2FkX19pbnB1dCB7XG4gICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgIH1cbiAgfVxufVxuXG4udGVjaG5pY2FsLXNoZWV0LWRpc3BsYXkge1xuICBwYWRkaW5nOiAwLjVyZW0gMDtcbn0iLCIvKipcbiAqIFN0ZXAgYmFyXG4gKi9cbi5zdGVwYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiAzMCU7XG4gIGhlaWdodDogNDBweDtcbiAgbWFyZ2luOiBhdXRvIGF1dG8gMSUgYXV0bztcbiAgQGluY2x1ZGUgbWVkaWEoXCI8bW9iaWxlLWxhcmdlXCIpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uc3RlcGJhcl9fc3RlcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleDogMCAwIDI1JTtcbiAgbWFyZ2luOiAwIDFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdhbGxlcnk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgc3BhbiB7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgY29sb3I6ICRzaWx2ZXItY2hhbGljZTtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgZm9udC1mYW1pbHk6ICRiZWJhcy1yZWd1bGFyO1xuICB9XG4gICY6YWZ0ZXIsICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogLTIwcHg7XG4gICAgYm90dG9tOiAwO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItbGVmdDogMjBweCBzb2xpZCAkZ2FsbGVyeTtcbiAgICBib3JkZXItdG9wOiAyMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206IDIwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgei1pbmRleDogMjtcbiAgfVxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgICBib3JkZXItbGVmdDogMjBweCBzb2xpZCAkd2hpdGU7XG4gICAgei1pbmRleDogMDtcbiAgfVxufVxuXG4uc3RlcGJhcl9fc3RlcC1hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29udGVzc2E7XG4gIHNwYW4ge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgYm9yZGVyLWxlZnQ6IDIwcHggc29saWQgJGNvbnRlc3NhO1xuICB9XG59XG5cbi5zdGVwYmFyX19zdGVwLWZpcnN0IHtcbiAgc3BhbiB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgJjpiZWZvcmUge1xuICAgIGJvcmRlci1sZWZ0OiBpbml0aWFsO1xuICB9XG59XG4iLCIvKipcbiAqIFRpdGxlIHN0eWxlc1xuICovXG5oMXtcbiAgY29sb3I6ICRtYWluLWNvbG9yO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDQ4cHg7XG4gIGZvbnQtZmFtaWx5OiAkYmViYXMtcmVndWxhcjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbmgze1xuICBjb2xvcjogJG1haW4tY29sb3I7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMjFweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5oNHtcbiAgY29sb3I6ICRtYWluLWNvbG9yO1xuICBmb250LXNpemU6IDE2cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5wYWdlLXRpdGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb2xvcjogJG1haW4tY29sb3I7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMjFweDtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGR1c3R5LWdyYXk7XG4gIH1cbiAgPiBzcGFuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMCAzMHB4O1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICB6LWluZGV4OiAyO1xuICB9XG5cbiAgaW1nIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gIH1cbn1cblxuLndpbmVncm93ZXJfX3RpdGxle1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgY29sb3I6ICRkaW0tZ3JleTtcbn1cbiIsIi8qKlxuICogTGlua3NcbiAqL1xuXG4ubGluayB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmxpbmtfX2xvZ291dHtcblx0QGV4dGVuZCAubGluaztcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMTBweDtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0Y29sb3I6ICRkdXN0eS1ncmF5O1xuXHRmb250LXNpemU6IDEycHg7XG59XG4iLCIubW9kYWwge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMjAlO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDM1JTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXgtaGVpZ2h0OiA2MCU7XG4gIG1hcmdpbjogYXV0bztcbiAgei1pbmRleDogMTA1NTtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICB3aWR0aDogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPG1vYmlsZS1sYXJnZVwiKSB7XG4gICAgd2lkdGg6IDkwJTtcbiAgfVxuXG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubW9kYWwtY29udGVudCxcbiAgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYm94LXNoYWRvdzogMnB4IDJweCA0cHggMCByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgYm9yZGVyOiBub25lO1xuXG4gICAgLm1vZGFsX19zZXBhcmF0b3Ige1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRkdXN0eS1ncmF5O1xuICAgICAgbWFyZ2luOiAxcmVtIGF1dG87XG4gICAgICB3aWR0aDogNTAlO1xuICAgIH1cbiAgfVxuXG4gIC5tb2RhbF9fbG9hZGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQ6IGJsYWNrO1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICBvcGFjaXR5OiAwLjc7XG4gICAgei1pbmRleDogNTtcblxuICAgIC5tb2RhbF9fbG9hZGVyLWFuaW1hdGlvbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgICBib3JkZXI6IDE2cHggc29saWQgI2YzZjNmMztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGJvcmRlci10b3A6IDE2cHggc29saWQgJGNvbnRlc3NhO1xuICAgICAgd2lkdGg6IDEyMHB4O1xuICAgICAgaGVpZ2h0OiAxMjBweDtcbiAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBzcGluIDJzIGxpbmVhciBpbmZpbml0ZTtcbiAgICAgIC8qIFNhZmFyaSAqL1xuICAgICAgYW5pbWF0aW9uOiBzcGluIDJzIGxpbmVhciBpbmZpbml0ZTtcblxuICAgICAgQC13ZWJraXQta2V5ZnJhbWVzIHNwaW4ge1xuICAgICAgICAwJSB7XG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIDEwMCUge1xuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAa2V5ZnJhbWVzIHNwaW4ge1xuICAgICAgICAwJSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgIH1cblxuICAgICAgICAxMDAlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaDIgLm1vZGFsLWRpYWxvZ3VlIGgyIHtcbiAgICBjb2xvcjogJG1haW4tY29sb3I7XG4gICAgZm9udC1mYW1pbHk6ICRyb2JvdG8tY29uZGVuc2VkO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICBwLFxuICBsYWJlbCB7XG4gICAgY29sb3I6ICRncmF5O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxuXG4gIGEge1xuICAgIHdpZHRoOiA2MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICYubW9kYWwtY2xvc2Uge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIG1hcmdpbjogMC41cmVtIGF1dG87XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICBpbWcge1xuICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMTAwKTtcbiAgICAgICAgaGVpZ2h0OiAxNHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jbG9zZSxcbiAgLmNsb3NlLWJ1dHRvbi1tb2RhbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTBweDtcbiAgICByaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuLnlvdXNpZ24tbW9kYWwge1xuICB3aWR0aDogODAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRvcDogNSU7XG4gIG1heC1oZWlnaHQ6IDgwJTtcblxuICBpZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG4ubW9kYWwteGwge1xuICBAZXh0ZW5kIC5tb2RhbDtcblxuICB3aWR0aDogOTAlO1xufVxuXG4uY292ZXIge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogJGJsYWNrO1xuICBvcGFjaXR5OiAwLjc7XG4gIHotaW5kZXg6IDIwO1xufVxuXG4uZGVsaXZlcnktdGFibGUge1xuICB3aWR0aDogNjAlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPHRhYmxldC1sYXJnZVwiKSB7XG4gICAgd2lkdGg6IDI3MHB4O1xuICB9XG59XG5cbiNzdWJzY3JpcHRpb24tbW9kYWwtZWRpdC5tb2RhbCB7XG4gIG1heC1oZWlnaHQ6IDgwJTtcbn1cblxuLmNoYW5nZS1tb2RhbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMTAwMDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICBib3JkZXI6IDJweCBzb2xpZCAkbWFpbi1jb2xvcjtcblxuICAubW9kYWwtY29udGVudCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgICBtYXJnaW46IDUlIGF1dG87XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjODg4O1xuICAgIHdpZHRoOiA4MCU7XG4gICAgbWF4LXdpZHRoOiAxMDAwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxNTtcbiAgfVxuXG4gIC5tb2RhbC1iYWNrZHJvcCB7XG4gICAgb3BhY2l0eTogLjU7XG4gICAgei1pbmRleDogMDtcbiAgfVxuXG4gIC5jbG9zZS1idXR0b24tbW9kYWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMjBweDtcbiAgICB0b3A6IDIwcHg7XG4gICAgY29sb3I6ICNhYWE7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogIzAwMDtcbiAgICB9XG4gIH1cbn0iLCIvKipcbiAqIFRhYnNcbiAqL1xuXG4udGFicyB7XG4gIHBhZGRpbmc6IDI0cHggMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmF5O1xuICBAaW5jbHVkZSBtZWRpYShcIjxtb2JpbGUtbGFyZ2VcIikge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgbGkge1xuICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgbWFyZ2luOiBhdXRvO1xuXG4gICAgICAmLmludGVudHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbnRlc3NhICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxJTtcbiAgICAgICAgYXtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAmOmFmdGVye1xuICAgICAgICAgICAgd2lkdGg6IDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBhe1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAkZ3JheTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsICRhbmltVGltZSAkYW5pbVN0eWxlO1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgaGVpZ2h0OiA1cHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XG4gICAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggJGFuaW1UaW1lICRhbmltU3R5bGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUgYSxcbiAgICAgIGE6aG92ZXIge1xuICAgICAgICBjb2xvcjogJG1haW4tY29sb3I7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAmLmNvbnRlc3NhIHtcbiAgICAgICAgICBjb2xvcjogJGNvbnRlc3NhO1xuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5ib3JkZXItbm9uZSB7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG59XG5cbi50YWJzLCAudGFicy1zZWxlY3Qge1xuICAmLmNvbnRlc3NhIHtcbiAgICB1bCB7XG4gICAgICBsaSB7XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkZ3JheTtcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb250ZXNzYTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5hY3RpdmUgYSwgYTpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICRjb250ZXNzYTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4udGFicy1zZWxlY3Qge1xuICAmLmNvbnRlc3NhIHtcbiAgICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICAgIGNvbG9yOiAkY29udGVzc2E7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICRjb250ZXNzYTtcbiAgICAgIH1cbiAgICAgIC5uYXZiYXItY29sbGFwc2Uge1xuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogJGdyYXk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb250ZXNzYTtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMXJlbSAkY29udGVzc2EgaW5zZXQ7XG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAqIFBhZ2UgY29udGVudFxuICovXG4ucGFnZS1oZWFkZXIge1xuICBwYWRkaW5nOiAwIDM1cHg7XG59XG5cbi5wYWdlLWNvbnRlbnQge1xuICBwYWRkaW5nOiAzNXB4IDM1cHggMTI1cHggMzVweDtcbn1cbiIsIi8qKlxuICogQ3VzdG9tIG5vdGlmIGJhZGdlXG4gKi9cblxuLmJhZGdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgdG9wOiAtMjBweDtcbiAgcmlnaHQ6IC0xMHB4O1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMjBweDtcbiAgZm9udC1zaXplOiA5cHg7XG4gIGhlaWdodDogMjBweDtcbiAgY29sb3I6ICRtYWluLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAkbWFpbi1jb2xvcjtcbiAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiA0cHg7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICB6LWluZGV4OiAxO1xuICB9XG59XG4iLCIvKipcbiAqIFNsaWRlcnNcbiAqL1xuXG4uc2xpY2stc2xpZGVyIHtcbiAgLnNsaWNrLWFycm93e1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICB3aWR0aDogMjZweDtcbiAgICBoZWlnaHQ6IDI2cHg7XG4gICAgYm9yZGVyLXJhZGl1czogMjZweDtcbiAgICBiYWNrZ3JvdW5kOiAkbWFpbi1jb2xvcjtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHotaW5kZXg6IDEwO1xuICAgIGkge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgfVxuICAgICYuc2xpY2stcHJldiB7XG4gICAgICBsZWZ0OiAtMTNweDtcbiAgICB9XG4gICAgJi5zbGljay1uZXh0IHtcbiAgICAgIHJpZ2h0OiAtMTNweDtcbiAgICB9XG4gIH1cbn1cbiN3ZWxjb21lLXNsaWRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4iLCIvKipcbiAqIFNlbGVjdFxuICovXG4uc2VsZWN0LW5hdmJhciB7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRzaWx2ZXI7XG4gIHBhZGRpbmc6IDVweCAxMHB4O1xuICB0cmFuc2l0aW9uOiBhbGwgJGFuaW1UaW1lICRhbmltU3R5bGU7XG4gICY6Zm9jdXMsXG4gICY6aG92ZXIsXG4gICY6YWN0aXZle1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMXJlbSAkbWFpbi1kYXJrZXItY29sb3ItNSBpbnNldDtcbiAgICBib3JkZXItY29sb3I6ICRtYWluLWNvbG9yO1xuICB9XG59XG5cbi50YWJzLXNlbGVjdCB7XG4gIEBleHRlbmQgLnNlbGVjdC1uYXZiYXI7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtZmFtaWx5OiAkcm9ib3RvLWNvbmRlbnNlZDtcbiAgY29sb3I6ICRtYWluLWNvbG9yO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBhe1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuICB9XG4gIEBpbmNsdWRlIG1lZGlhKFwiPG1vYmlsZS1sYXJnZVwiKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLm5hdi1pdGVte1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhbHRvO1xuICB9XG4gIC5uYXZiYXItdG9nZ2xlcntcbiAgICBjb2xvcjogIzkzOTM5MztcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDI1cHg7XG4gICAgJjpmb2N1c3tcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuICB9XG4gIG9wdGlvbjpub3QoOmNoZWNrZWQpIHtcbiAgICBjb2xvcjogJGR1c3R5LWdyYXk7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgfVxufVxuIiwiLyoqXG4gKiBUYWJsZXNcbiAqL1xuXG4udGFibGUtYm9yZGVyZWQge1xuICBib3JkZXItY29sb3I6ICRzaWx2ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxufVxuXG4uYm9yZGVyLXRvcC1ncmF5IHtcbiAgYm9yZGVyLXRvcDogMXBjIHNvbGlkICRncmF5O1xufVxuXG4udGFibGUtY2VsbC10ZXh0IHtcbiAgY29sb3I6ICRib3VsZGVyO1xufVxuIiwiLnNlYXJjaC1jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC1mYW1pbHk6ICRyb2JvdG8tY29uZGVuc2VkO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIHBhZGRpbmc6IDAgMzVweCAwIDA7XG59XG5cbmltZy5pbmZvcm1hdGlvbiB7XG4gIHdpZHRoOiAyOHB4O1xuICBoZWlnaHQ6IDM0cHg7XG4gIG1hcmdpbi1yaWdodDogNnB4O1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnNlYXJjaC10ZXh0IHtcbiAgZm9udC1mYW1pbHk6ICRyb2JvdG8tY29uZGVuc2VkO1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXN0cmV0Y2g6IGNvbmRlbnNlZDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICBjb2xvcjogJGdyYXk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbi10b3A6IDJweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICYtLWluZm9ybWF0aW9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgfVxuXG4gICYtLW9wZW4ge1xuICAgIGNvbG9yOiAkbWFpbi10ZXh0LWNvbG9yO1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgfVxufVxuXG4uc2VhcmNoLWJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWFyZ2luOiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vhc2hlbGw7XG4gIGhlaWdodDogNjVweDtcblxuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgJl9faW5mb3JtYXRpb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG5cbiAgICAuY2xvc2UtaGVscCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gICZfX3NlYXJjaCB7XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgIC5jbG9zZS1tZW51IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJi5oZWxwLW9wZW5lZCB7XG4gICAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkICR3aGl0ZTtcbiAgICB9XG5cbiAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgbWFyZ2luOiAxNXB4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8bW9iaWxlLWxhcmdlXCIpIHtcbiAgICAgICAgbWFyZ2luOiAxMHB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19hZHZhbmNlZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNlYXNoZWxsO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICAmLnNlYXJjaC1vcGVuZWQge1xuICAgICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAkd2hpdGU7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI8bW9iaWxlLWxhcmdlXCIpIHtcbiAgICAmX19hZHZhbmNlZCB7XG4gICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDBweDtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgIHRleHQtb3ZlcmZsb3c6IGluaXRpYWw7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgfVxuXG4gICAgJl9faW5mb3JtYXRpb24ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgIH1cbiAgfVxufVxuXG4jYnV0dG9uLXNlYXJjaCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgYm9yZGVyLWNvbG9yOiAkc2lsdmVyO1xuICBib3JkZXItbGVmdDogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgcGFkZGluZzogMCAxMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IDM1cHg7XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI8bW9iaWxlLWxhcmdlXCIpIHtcbiAgICBoZWlnaHQ6IDM1cHg7XG4gICAgcGFkZGluZzogMCA4cHg7XG4gIH1cbn1cblxuI2J1dHRvbi1zZWFyY2g6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICRtYWluLWRhcmtlci1jb2xvci01O1xufVxuXG4uaW5wdXQtZ3JvdXAge1xuICBtYXJnaW46IDE1cHg7XG59XG5cbiNidXR0b24tc2VhcmNoLFxuI3Byb2R1Y3Rfc2VhcmNoX3NlYXJjaEJhciB7XG4gIGhlaWdodDogMzVweDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xufVxuXG4jcHJvZHVjdF9zZWFyY2hfc2VhcmNoQmFyIHtcbiAgQGluY2x1ZGUgbWVkaWEoXCI8bW9iaWxlLWxhcmdlXCIpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uYWRtaW4tc2VhcmNoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICBib3JkZXItY29sb3I6ICRzaWx2ZXI7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBwYWRkaW5nOiAwIDEwcHg7XG4gIGhlaWdodDogMzhweDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xufVxuXG4uYWRtaW4tc2VhcmNoOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAkbWFpbi1kYXJrZXItY29sb3ItNTtcbn1cblxuLmF2YW5jZWQtc2VhcmNoIHtcbiAgd2lkdGg6IDI4cHg7XG4gIGhlaWdodDogMjhweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICYtLWNsb3NlIHtcbiAgICB3aWR0aDogMThweDtcbiAgICBoZWlnaHQ6IDE4cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICB9XG59XG5cbi5hZHZhbmNlZC1zZWFyY2gtbWVudSxcbi5oZWxwLXNlYXJjaC1tZW51IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vhc2hlbGw7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IGF1dG87XG4gIHotaW5kZXg6IDE7XG4gIHBhZGRpbmc6IDAgMTElO1xuXG4gICYuYWR2YW5jZWQtcGFuZWwtb3BlbmVkLFxuICAmLmhlbHAtcGFuZWwtb3BlbmVkIHtcbiAgICBib3JkZXItdG9wOiA0cHggc29saWQgJHdoaXRlO1xuICB9XG5cbiAgcCxcbiAgc3BhbiB7XG4gICAgY29sb3I6ICRkaW0tZ3JleTtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC1mYW1pbHk6ICRyb2JvdG8tY29uZGVuc2VkO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICBoMSB7XG4gICAgZm9udC1mYW1pbHk6ICRyb2JvdG8tY29uZGVuc2VkO1xuICAgIGNvbG9yOiAkZG92ZS1ncmF5O1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICB9XG5cbiAgaDIge1xuICAgIGZvbnQtZmFtaWx5OiAkcm9ib3RvLWNvbmRlbnNlZDtcbiAgICBjb2xvcjogJGNvbnRlc3NhO1xuICAgIGxpbmUtaGVpZ2h0OiAwLjk2O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG5cbiAgaDMge1xuICAgIGZvbnQtZmFtaWx5OiAkcm9ib3RvLWNvbmRlbnNlZDtcbiAgICBjb2xvcjogJGNvbnRlc3NhO1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC1zaXplOiAxLjYyNXJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBtYXJnaW4tdG9wOiAxM3B4O1xuXG4gICAgc3BhbiB7XG4gICAgICBjb2xvcjogJG1haW4tdGV4dC1jb2xvcjtcbiAgICAgIGZvbnQtc2l6ZTogMS42MjVyZW07XG4gICAgfVxuICB9XG5cbiAgLmNvbnRlc3NhIHtcbiAgICBjb2xvcjogJGNvbnRlc3NhO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG5cbiAgLndoaXRlLXNlY3Rpb24ge1xuICAgIHBhZGRpbmc6IDJlbSAxLjVlbTtcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICB9XG5cbiAgLmJsb2NrIHtcbiAgICBib3JkZXItbGVmdDogJGNvbnRlc3NhIDNweCBzb2xpZDtcbiAgICBwYWRkaW5nLWxlZnQ6IDFlbTtcblxuICAgICYtLWdyYXkge1xuICAgICAgYm9yZGVyLWxlZnQ6ICRhbHRvIDNweCBzb2xpZDtcbiAgICB9XG4gIH1cblxuICAuZGlzY291bnQge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC5zZWN0aW9uIC5wbHVzIHtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDg1cHg7XG4gICAgLy9tYXJnaW46IDIlIDE0JTtcbiAgICBtYXJnaW46IDZweCA0NnB4IDBweCAxMDVweDtcbiAgICBmb250LWZhbWlseTogJHJvYm90by1yZWd1bGFyO1xuICAgIGZvbnQtc2l6ZTogNzJweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXN0cmV0Y2g6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICAgIGNvbG9yOiAkY29udGVzc2E7XG4gIH1cblxuICAuc2VjdGlvbi1wbHVzIHtcbiAgICB6LWluZGV4OiAxO1xuICAgIG1hcmdpbjogMjBweCAwIDVweDtcbiAgfVxuXG4gIC5kaXNjb3VudCB7XG4gICAgbWFyZ2luLWxlZnQ6IDE5cHg7XG4gICAgd2lkdGg6IDYzJTtcbiAgICBmb250LWZhbWlseTogJHJvYm90by1jb25kZW5zZWQ7XG4gICAgY29sb3I6ICRkaW0tZ3JleTtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cblxuICAuanVtYm8ge1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkanVtYm87XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBmb250LXNpemU6IDE2cHg7XG5cbiAgICBpbWcucF9uZWdvY2llIHtcbiAgICAgIHdpZHRoOiAxMTBweDtcbiAgICAgIGhlaWdodDogMTg3cHg7XG4gICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgIH1cblxuICAgIGltZy50YWJsZS1wcmljZXMge1xuICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgIH1cblxuICAgIC5ibG9jLWJvdHRsZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogMjQwcHg7XG4gICAgfVxuXG4gICAgLmJvdHRsZS10YWJsZS1wcmljZXMge1xuICAgICAgYWxpZ24taXRlbXM6IHVuc2FmZSBjZW50ZXI7XG4gICAgICBtYXJnaW4tbGVmdDogLTEwNHB4O1xuICAgICAgbWFyZ2luLXRvcDogLTEycHg7XG5cbiAgICAgIC5mcmVlLXNoaXBwaW5nIHtcbiAgICAgICAgd2lkdGg6IDY3JTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRyb2JvdG8tY29uZGVuc2VkO1xuICAgICAgICBjb2xvcjogJGRpbS1ncmV5O1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgIG1hcmdpbi10b3A6IDQ4cHg7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgICAgIC5yZWN0YW5nbGUge1xuICAgICAgICAgIHdpZHRoOiA1NHB4O1xuICAgICAgICAgIGhlaWdodDogM3B4O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb250ZXNzYTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTQwcHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGltZy5ib3R0bGUge1xuICAgICAgd2lkdGg6IDQ4cHg7XG4gICAgICBoZWlnaHQ6IDE3NHB4O1xuICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxOHB4O1xuICAgIH1cblxuICAgIGltZy5wYW5hY2hhZ2Uge1xuICAgICAgbWFyZ2luLWxlZnQ6IDgzcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDI3cHg7XG4gICAgICB3aWR0aDogMTQxcHg7XG4gICAgICBoZWlnaHQ6IDExOHB4O1xuICAgIH1cblxuICAgIGltZy5jaHJvbm8ge1xuICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDI5cHg7XG4gICAgICB3aWR0aDogMTQxcHg7XG4gICAgICBoZWlnaHQ6IDExOHB4O1xuICAgIH1cblxuICAgIGltZy5yZWNvIHtcbiAgICAgIHdpZHRoOiA3MXB4O1xuICAgICAgaGVpZ2h0OiA4NHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDI1cHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDExcHg7XG4gICAgfVxuXG4gICAgLmludGVudGlvbiB7XG4gICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLmludGVudGlvbi10aW1lIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI5cHg7XG4gICAgfVxuXG4gICAgLmludGVudGlvbi10aW1lIHA6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICAgIH1cbiAgfVxuXG4gIC5qdW1ib34uanVtYm8ge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cblxuICAud2luZS1pbWFnZSB7XG4gICAgd2lkdGg6IDE1NnB4O1xuICAgIGhlaWdodDogMTQ5cHg7XG4gICAgYm9yZGVyOiBzb2xpZCAycHggJGNvbnRlc3NhO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICYtLWdyYXkge1xuICAgICAgYm9yZGVyOiAycHggc29saWQgJGdyYXk7XG4gICAgICBtYXJnaW4tbGVmdDogMTdweDtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBmb250LWZhbWlseTogJHJvYm90by1jb25kZW5zZWQ7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICAgIGNvbG9yOiAkY29udGVzc2E7XG4gICAgICBtYXJnaW46IDRweCA0cHggMDtcbiAgICB9XG5cbiAgICAuZmxhZyB7XG4gICAgICBtYXJnaW4tdG9wOiAxOXB4O1xuXG4gICAgICBwIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIH1cblxuICAgICAgLmZsYWdfX3RleHQge1xuICAgICAgICBtYXJnaW46IDJweCAxNXB4IDAgMnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC53aW5lLWRlc2NyaXB0aW9uIHtcbiAgICB3aWR0aDogMTY3cHg7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmLS1ncmF5IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxN3B4O1xuICAgIH1cblxuICAgIHAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgY29sb3I6ICRkb3ZlLWdyYXk7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIHAuZnctYm9sZCB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICAgIH1cblxuICAgIC51c3VhbC1wcmljZSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAuZGVzY3JpcHRpb25fX3RvcC10ZXh0IHtcbiAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAmLS10b3Atc2FsZXMge1xuICAgICAgICBjb2xvcjogJHRvcC1zYWxlcztcbiAgICAgIH1cblxuICAgICAgJi0tZmF2b3VyaXRlIHtcbiAgICAgICAgY29sb3I6ICRmYXZvdXJpdGU7XG4gICAgICB9XG5cbiAgICAgICYtLW5ldyB7XG4gICAgICAgIGNvbG9yOiAkbmV3O1xuICAgICAgfVxuXG4gICAgICAmLS1wcm9tbyB7XG4gICAgICAgIGNvbG9yOiAkcHJvbW87XG4gICAgICB9XG5cbiAgICAgICYtLXRvcC1tYXJnZSB7XG4gICAgICAgIGNvbG9yOiAkdG9wLW1hcmdlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5hbm5vdGF0aW9uIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogLTIycHg7XG4gICAgICByaWdodDogMTdweDtcbiAgICB9XG4gIH1cblxuICAuZXhhbXBsZSB7XG4gICAgd2lkdGg6IDI5OXB4O1xuICAgIG1hcmdpbjogNzlweCBhdXRvIDA7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuXG4gIC5yZWFkLW1vcmUge1xuICAgIG1hcmdpbjogNjhweCBhdXRvIDA7XG4gICAgcGFkZGluZzogOHB4IDE3cHg7XG4gICAgYm9yZGVyLXJhZGl1czogMC45MzhyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFsdG87XG4gICAgY29sb3I6ICRkaW0tZ3JleTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLmJ1dHRvbi1zZWxlY3Rpb24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb250ZXNzYTtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgcGFkZGluZzogOHB4IDE3cHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBib3JkZXItcmFkaXVzOiAwLjkzOHJlbTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgd2lkdGg6IDE3N3B4O1xuICAgIG1hcmdpbjogMjZweCBhdXRvIDQwcHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAucHJldi1hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogY2FsYyg1MCUgLSAzMHB4KTtcbiAgICBsZWZ0OiBjYWxjKDAlIC0gNTBweCk7XG4gICAgei1pbmRleDogMTA7XG4gIH1cblxuICAubmV4dC1hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogY2FsYyg1MCUgLSAzMHB4KTtcbiAgICByaWdodDogY2FsYygwJSAtIDIxcHgpO1xuICAgIHotaW5kZXg6IDEwO1xuICB9XG5cbiAgLnNsaWNrLWFycm93IHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAudGltZS1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW46IDQwcHggMCAwIDZweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgcCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIH1cblxuICAgIC50aW1lLWNvbnRhaW5lcl9fdGltZSB7XG4gICAgICBjb2xvcjogJG1haW4tdGV4dC1jb2xvcjtcbiAgICB9XG5cbiAgICAudGltZS1jb250YWluZXJfX3RleHQge1xuICAgICAgY29sb3I6ICRjb250ZXNzYTtcbiAgICB9XG4gIH1cblxuICAuZG91YmxlLXByb2R1Y3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIC5wcm9kdWN0IHtcbiAgICAgIHdpZHRoOiAxMzhweDtcbiAgICAgIG1hcmdpbjogMCAycHggMDtcbiAgICB9XG5cbiAgICAud2luZS1pbWFnZSB7XG4gICAgICB3aWR0aDogMTM4cHg7XG4gICAgICBoZWlnaHQ6IDEyM3B4O1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIC53aW5lLWRlc2NyaXB0aW9uIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4ucHJvZ3Jlc3MtYmFyLFxuLm1vYmlsZS1wcm9ncmVzcy1iYXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDE3NnB4O1xuICBoZWlnaHQ6IDVweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWFyZ2luOiAxNXB4IGF1dG8gOXB4IGF1dG87XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGFsdG87XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJGNvbnRlc3NhLCAkY29udGVzc2EpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDAgMTAwJTtcblxuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLXNpemUgLjRzIGVhc2UtaW4tb3V0O1xufVxuXG4uaGVscC1zZWFyY2gtbWVudSB7XG4gIHN2ZyB7XG4gICAgcGF0aCB7XG4gICAgICBmaWxsOiAkZHVzdHktZ3JheVxuICAgIH1cbiAgfVxuXG4gIC5iYWRnZSB7XG4gICAgdG9wOiAtMTVweDtcbiAgICByaWdodDogLTEwcHg7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogMzBweDtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIGJhY2tncm91bmQ6ICRzZWFzaGVsbDtcbiAgfVxufVxuXG4uZmluZC1hLXdpbmUge1xuICBjb2xvcjogJG1haW4tZGFya2VyLWNvbG9yLTU7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDI0cHg7XG4gIG1hcmdpbi10b3A6IDExcHg7XG59XG5cbi5mb3JtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiAxNDBweDtcbiAgbWFyZ2luLXRvcDogMTdweDtcbiAgaGVpZ2h0OiAzNXB4O1xuXG4gIC5mb3JtX19pbnB1dCB7XG4gICAgY29sb3I6ICRib3VsZGVyO1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIHdpZHRoOiAxNjdweDtcbiAgfVxuXG4gIC5pbnB1dF9fcmFkaW8ge1xuICAgIGhlaWdodDogMTlweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDAgNXB4O1xuICB9XG5cbiAgLmlucHV0X19yYWRpbz5pbnB1dCB7XG4gICAgaGVpZ2h0OiAxOXB4O1xuICAgIHdpZHRoOiAxOXB4O1xuICAgIG1hcmdpbjogMCA1cHg7XG4gIH1cbn1cblxuLmZvcm0tc2VsZWN0OmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4xcmVtICRtYWluLWRhcmtlci1jb2xvci01IGluc2V0O1xuICBib3JkZXItY29sb3I6ICRtYWluLWRhcmtlci1jb2xvci01O1xufVxuXG4uZm9ybS1pbnB1dDpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMXJlbSAkbWFpbi1kYXJrZXItY29sb3ItNSBpbnNldDtcbiAgYm9yZGVyLWNvbG9yOiAkbWFpbi1kYXJrZXItY29sb3ItNTtcbn1cblxuLndpbmUtZm9ybSB7XG4gIG1heC13aWR0aDogMTI4MHB4O1xuXG4gIC5mb3JtX19yYWRpbyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcblxuICAgIGxhYmVsIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cbn1cblxuI2ZpbmQtd2luZSB7XG4gIG1hcmdpbi10b3A6IDM1cHg7XG59XG5cbi5wYW5lbC1tYXJnaW4ge1xuICBwYWRkaW5nOiAzcmVtO1xufVxuXG5pbWcuYXJyb3cge1xuICBvYmplY3QtZml0OiBjb250YWluO1xuICBtYXJnaW4tcmlnaHQ6IDE0cHg7XG59XG5cbi5tb2JpbGUtc2xpZGVyLFxuLm1vYmlsZS1uYXZpZ2F0aW9uIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmhlbHAtc2xpZGVyIHtcbiAgLnJlYWQtbW9yZSB7XG4gICAgbWFyZ2luOiBhdXRvIGF1dG8gMTZweFxuICB9XG5cbiAgLndoaXRlLXNlY3Rpb24ge1xuICAgIGhlaWdodDogMjU2cHg7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC5zY3JvbGxhYmxlIHtcbiAgICB3aWR0aDogMjkycHg7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgYm9yZGVyLXJpZ2h0OiBzb2xpZCAxcHggJGR1c3R5LWdyYXk7XG4gIH1cblxuICAucGFkZGluZyB7XG4gICAgcGFkZGluZzogMTJweCAwIDM4cHggMDtcbiAgfVxuXG4gICNkZXNrdG9wLXNsaWRlLTEgLnBhZGRpbmcge1xuICAgIHBhZGRpbmctbGVmdDogMTRweDtcbiAgfVxuXG4gICNkZXNrdG9wLXNsaWRlLTIge1xuICAgIC5wYWRkaW5nPmRpdjpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgfVxuXG4gICAgLndpbmUtaW1hZ2UsXG4gICAgLndpbmUtZGVzY3JpcHRpb24ge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG5cbiAgI2Rlc2t0b3Atc2xpZGUtMyB7XG4gICAgLnRhYmxlLWJvcmRlcmVkIHtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICB9XG5cbiAgICB0aCB7XG4gICAgICBwYWRkaW5nOiA1cHg7XG4gICAgfVxuXG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgIH1cblxuICAgIGRpdi5wYWRkaW5nPmRpdjpmaXJzdC1jaGlsZCB7XG4gICAgICBoZWlnaHQ6IDE1OXB4O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG4gIH1cblxuICAjZGVza3RvcC1zbGlkZS00IHtcbiAgICAucHJvZHVjdCB7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgfVxuXG4gICAgLnRpbWUtY29udGFpbmVyIHAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICB9XG4gIH1cblxuICAjZGVza3RvcC1zbGlkZS01IHtcbiAgICBpbWcge1xuICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgbWFyZ2luLXRvcDogMnB4O1xuICAgIH1cblxuICAgIGgxIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gICAgICBjb2xvcjogJG1haW4tdGV4dC1jb2xvcjtcbiAgICAgIG1hcmdpbi10b3A6IDRweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cblxuICAgIC5wYWRkaW5nIHAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICB9XG5cbiAgICAuZGlzY292ZXIge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgbWFyZ2luOiA0cHggYXV0bztcbiAgICB9XG4gIH1cblxuICAjZGVza3RvcC1zbGlkZS03IHtcbiAgICAuY2hyb25vIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTIwcHg7XG4gICAgICBtYXJnaW4tbGVmdDogMTJweDtcbiAgICB9XG4gIH1cblxuICAjZGVza3RvcC1zbGlkZS0xNSB7XG4gICAgLmJsb2NrIHtcbiAgICAgIG1hcmdpbjogYXV0byAxMHB4O1xuICAgIH1cblxuICAgIC5leGFtcGxlIHtcbiAgICAgIG1hcmdpbjogMCAwIDAgYXV0bztcbiAgICAgIHdpZHRoOiA1NCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgIHAge1xuICAgICAgICBtYXJnaW46IGF1dG8gMzBweCA1MXB4O1xuICAgICAgfVxuXG4gICAgICBpbWcge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGhlaWdodDogMjU2cHg7XG4gICAgICB9XG5cbiAgICAgIC5kLWZsZXggZGl2IHtcbiAgICAgICAgbWFyZ2luLXRvcDogNzlweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAjZGVza3RvcC1zbGlkZS0xNSB7XG4gICAgLmJsb2NrIHtcbiAgICAgIG1hcmdpbjogYXV0byAxMHB4O1xuICAgIH1cblxuICAgIC5leGFtcGxlIHtcbiAgICAgIG1hcmdpbjogMCAwIDAgYXV0bztcbiAgICAgIHdpZHRoOiA1NCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgIHAge1xuICAgICAgICBtYXJnaW46IGF1dG8gMzBweCA1MXB4O1xuICAgICAgfVxuXG4gICAgICBpbWcge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGhlaWdodDogMjU2cHg7XG4gICAgICB9XG5cbiAgICAgIC5kLWZsZXggZGl2IHtcbiAgICAgICAgbWFyZ2luLXRvcDogNzlweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAjZGVza3RvcC1zbGlkZS0xNyB7XG4gICAgLmV4YW1wbGUge1xuICAgICAgbWFyZ2luOiBhdXRvIGF1dG8gMDtcblxuICAgICAgLnJlYWQtbW9yZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgI2Rlc2t0b3Atc2xpZGUtMTgge1xuICAgIC5leGFtcGxlIHtcbiAgICAgIG1hcmdpbjogNnB4IGF1dG8gMDtcblxuICAgICAgcCB7XG4gICAgICAgIG1hcmdpbjogYXV0byA2cHg7XG4gICAgICB9XG5cbiAgICAgIC5yZWFkLW1vcmUge1xuICAgICAgICBtYXJnaW46IC00NHB4IGF1dG87XG4gICAgICB9XG5cbiAgICAgIGltZyB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG5AbWVkaWEgKG1heC13aWR0aDogODAwcHgpIHtcblxuICAuYWR2YW5jZWQtc2VhcmNoLW1lbnUsXG4gIC5oZWxwLXNlYXJjaC1tZW51IHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLnNlYXJjaC1jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAjd2luZWdyb3dlcixcbiAgI3dpbmVncm93ZXItcmFkaW8ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuZm9ybSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBoZWlnaHQ6IDE2NHB4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgLmZvcm1fX2lucHV0LFxuICAgIC5pbnB1dF9fcmFkaW8ge1xuICAgICAgbWFyZ2luOiA4cHggYXV0byAwO1xuICAgIH1cblxuICAgIC5mb3JtX19yYWRpbyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLmFkdmFuY2VkLXNlYXJjaC1tZW51IHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cblxuICAud2luZS1mb3JtIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAjY29sb3Ige1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gICNmaW5kLXdpbmUge1xuICAgIG1hcmdpbjogMTVweCBhdXRvO1xuICB9XG5cbiAgLm1vYmlsZS1zbGlkZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMzU5cHg7XG4gIH1cblxuICAjZGVza3RvcC1oZWxwLW1lbnUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuc2xpY2stc2xpZGVyIC5zbGljay1hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAxMDtcbiAgICBtYXJnaW4tdG9wOiAyNHB4O1xuICB9XG5cbiAgLm1vYmlsZS1uZXh0LWFycm93IHtcbiAgICByaWdodDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDM1cHg7XG4gIH1cblxuICAubW9iaWxlLXByZXYtYXJyb3cge1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDEycHg7XG4gIH1cblxuICAuaGVscC1zZWFyY2gtbWVudSB7XG4gICAgaDEge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgZm9udC1zaXplOiAwLjkzOHJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgZm9udC1zaXplOiAwLjkzOHJlbTtcbiAgICB9XG5cbiAgICAubmF2aWdhdGlvbiB7XG4gICAgICBtYXJnaW46IDIwcHggYXV0byAwO1xuXG4gICAgICBwLFxuICAgICAgc3BhbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnJlYWQtbW9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICBtYXJnaW46IDAgYXV0byAyNHB4O1xuXG4gICAgICAmLS1ncmV5IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNpbHZlcjtcbiAgICAgICAgY29sb3I6ICR0dW5kb3JhO1xuICAgICAgICBtYXJnaW4tdG9wOiAtNDJweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2xpZGUtbnVtYmVyIHtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG5cbiAgICAud2F3LXByaWNlIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICB9XG5cbiAgICAuZGlzY291bnQge1xuICAgICAgbWFyZ2luOiAxOHB4IDA7XG4gICAgICBmb250LXNpemU6IDAuOTM4cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gICAgfVxuXG4gICAgLnByaW5jaXBsZSB7XG4gICAgICBtYXJnaW46IDQ2cHggYXV0byAyNHB4IGF1dG87XG4gICAgICB3aWR0aDogMjcycHg7XG4gICAgfVxuXG4gICAgLnNlY3Rpb24ge1xuICAgICAgbWFyZ2luOiAyN3B4IGF1dG8gMTJweDtcbiAgICAgIHdpZHRoOiAyNTZweDtcblxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICBoZWlnaHQ6IDE3MXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zZWN0aW9uLXBsdXMge1xuICAgICAgbWFyZ2luOiAyMHB4IGF1dG8gNXB4O1xuICAgIH1cblxuICAgICNzbGlkZTMge1xuICAgICAgaW1nIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjRweDtcbiAgICAgICAgd2lkdGg6IDI2MnB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5ibG9jLWJvdHRsZSB7XG4gICAgICB3aWR0aDogMjI3cHg7XG4gICAgICBtYXJnaW46IDdweCBhdXRvIDMwcHg7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMjVweDtcbiAgICAgIH1cblxuICAgICAgLmZyZWUtc2hpcHBpbmcge1xuICAgICAgICBtYXJnaW46IDQycHggMCAyN3B4IDA7XG4gICAgICAgIGNvbG9yOiAkZGltLWdyZXk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgI3NsaWRlNSB7XG4gICAgICBpbWcge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEzLjdweDtcbiAgICAgICAgd2lkdGg6IDExMi4zcHg7XG4gICAgICB9XG5cbiAgICAgIC5ibG9jayxcbiAgICAgIC5pbnRlbnRpb24ge1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIHdpZHRoOiAyOTZweDtcbiAgICAgIH1cblxuICAgICAgLmJsb2NrIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzlweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgfVxuXG4gICAgICBidXR0b24ge1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgICNzbGlkZTYge1xuICAgICAgLmJsb2NrIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNDFweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjZweDtcbiAgICAgIH1cblxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiBhdXRvIDExcHggYXV0byAwO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5pbnRlbnRpb24tdGltZSB7XG4gICAgICB3aWR0aDogMjg5cHg7XG4gICAgICBtYXJnaW46IDAgYXV0byAyNnB4O1xuICAgIH1cblxuICAgICNzbGlkZTcge1xuICAgICAgaW1nIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyM3B4O1xuICAgICAgICB3aWR0aDogNzFweDtcbiAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICAgIH1cblxuICAgICAgLmQtZmxleCBwOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBtYXJnaW4tdG9wOiA0MnB4O1xuICAgICAgfVxuXG4gICAgICAuYmxvY2sge1xuICAgICAgICBtYXJnaW4tdG9wOiAxMnB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMnB4O1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLnRhc3Rpbmcge1xuICAgICAgd2lkdGg6IDI4OXB4O1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIC5tb2JpbGUtc2xpZGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDM1OXB4O1xuICAgIG1hcmdpbi10b3A6IDQzcHg7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjhzIGVhc2U7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgLjhzIGVhc2U7XG4gICAgLW1zLXRyYW5zaXRpb246IGFsbCAuOHMgZWFzZTtcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgLjhzIGVhc2U7XG4gICAgdHJhbnNpdGlvbjogYWxsIC44cyBlYXNlO1xuXG4gICAgc3BhbixcbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgfVxuXG4gICAgLndoaXRlLXNlY3Rpb24ge1xuICAgICAgd2lkdGg6IDI5MnB4ICFpbXBvcnRhbnQ7XG4gICAgICBoZWlnaHQ6IDQwN3B4O1xuICAgICAgcGFkZGluZzogMjJweCAyMXB4IDAgMTlweDtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC44cyBlYXNlO1xuICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgLjhzIGVhc2U7XG4gICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIC44cyBlYXNlO1xuICAgICAgLW8tdHJhbnNpdGlvbjogYWxsIC44cyBlYXNlO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIC44cyBlYXNlO1xuICAgIH1cblxuICAgIC53aW5lLWltYWdlIHtcbiAgICAgIGhlaWdodDogMTQ1cHg7XG4gICAgICBtYXJnaW46IDAgNnB4IDA7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2Nyb2xsYWJsZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgfVxuXG4gICAgLmV4YW1wbGUge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDIycHggYXV0byAzNXB4O1xuXG4gICAgICBwIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDM7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLi1yZWFkLW1vcmUge1xuICAgICAgJi0tZ3JleSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmV4YW1wbGUtcmVhZC1tb3JlIHtcbiAgICAgIG1hcmdpbjogMCBhdXRvIDI0cHg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgY29sb3I6ICR0dW5kb3JhO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdhbGxlcnk7XG4gICAgICBwYWRkaW5nOiA4cHggMTdweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuOTM4cmVtO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICB9XG5cbiAgICAucHJvZHVjdCB7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG5cbiAgICAud2luZS1kZXNjcmlwdGlvbiB7XG4gICAgICBtYXJnaW46IDEwcHggYXV0byAwO1xuICAgIH1cblxuICAgIC5kb3VibGUtcHJvZHVjdCB7XG4gICAgICBtYXJnaW46IDAgLTEzcHggMCAtMTdweDtcbiAgICB9XG5cbiAgICAjZXhhbXBsZS1zbGlkZS0xIHtcbiAgICAgIC53aGl0ZS1zZWN0aW9uIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDE5cHg7XG4gICAgICB9XG5cbiAgICAgIC5leGFtcGxlIHtcbiAgICAgICAgLy9tYXJnaW4tdG9wOiAxN3B4OyBMYSBzY3JvbGxiYXIgZ8OobmUgbGUgbWFyZ2luLiBGYXVkcmFpdCB2b2lyIHNpIG9uIHBldXQgcGVybWV0dHJlIHVuIHNjcm9sbCBtb2JpbGUgc2FucyBsYSBzY3JvbGxiYXJcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAjZXhhbXBsZS1zbGlkZS0yIHtcbiAgICAgIC53aGl0ZS1zZWN0aW9uIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDE5cHg7XG4gICAgICB9XG5cbiAgICAgIC5leGFtcGxlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTdweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAjZXhhbXBsZS1zbGlkZS0zIHtcbiAgICAgIC53aGl0ZS1zZWN0aW9uIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDE0cHg7XG4gICAgICB9XG5cbiAgICAgIC50YWJsZS1ib3JkZXJlZCB7XG4gICAgICAgIGJvcmRlcjogc29saWQgMXB4ICRqdW1ibztcbiAgICAgICAgaGVpZ2h0OiAxNTZweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICB0aGVhZCB7XG4gICAgICAgICAgYm9yZGVyOiBzb2xpZCAxcHggJGp1bWJvO1xuICAgICAgICB9XG5cbiAgICAgICAgdGQge1xuICAgICAgICAgIHdpZHRoOiAxMjVweDtcbiAgICAgICAgICBoZWlnaHQ6IDMzcHg7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBmb250LWZhbWlseTogJHJvYm90by1jb25kZW5zZWQ7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjg0NXJlbTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuXG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODQ1cmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRoIHtcbiAgICAgICAgICBjb2xvcjogJGRpbS1ncmV5O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC51c3VhbC1wcmljZSB7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmV4YW1wbGUge1xuICAgICAgICBtYXJnaW46IDE4cHggYXV0byAxNHB4O1xuICAgICAgfVxuXG4gICAgICBkaXYud2hpdGUtc2VjdGlvbj5kaXY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBoZWlnaHQ6IDE3M3B4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgfVxuICAgIH1cblxuICAgICNleGFtcGxlLXNsaWRlLTQge1xuICAgICAgLmV4YW1wbGUge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgICNleGFtcGxlLXNsaWRlLTUge1xuICAgICAgLndoaXRlLXNlY3Rpb24ge1xuICAgICAgICBwYWRkaW5nLXRvcDogMTRweDtcbiAgICAgIH1cblxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDI1N3B4O1xuICAgICAgICBoZWlnaHQ6IDE0MXB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICB9XG5cbiAgICAgIGgxIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjM3NXJlbTtcbiAgICAgICAgY29sb3I6ICRtYWluLXRleHQtY29sb3I7XG4gICAgICAgIG1hcmdpbi10b3A6IDRweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIH1cblxuICAgICAgcCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICAuZXhhbXBsZSB7XG4gICAgICAgIG1hcmdpbjogMTBweCBhdXRvIDRweDtcblxuICAgICAgICBwIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgZm9udC1zaXplOiAwLjY4OHJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgICNleGFtcGxlLXNsaWRlLTYge1xuICAgICAgLmFubm90YXRpb24ge1xuICAgICAgICByaWdodDogMjlweDtcbiAgICAgIH1cblxuICAgICAgLmV4YW1wbGUge1xuICAgICAgICBtYXJnaW46IDQ0cHggYXV0byAxN3B4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jaHJvbm8ge1xuICAgICAgYm94LXNoYWRvdzogM3B4IDNweCA0cHggMCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICAgICAgbWFyZ2luOiAtMzBweCAwIDAgLTlweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAjZXhhbXBsZS1zbGlkZS03IHtcbiAgICAgIC5leGFtcGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTlweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAjZXhhbXBsZS1zbGlkZS04IHtcbiAgICAgIC53aGl0ZS1zZWN0aW9uIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDlweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTdweDtcbiAgICAgIH1cblxuICAgICAgaW1nIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgfVxuXG4gICAgICAuZXhhbXBsZSB7XG4gICAgICAgIG1hcmdpbjogMThweCBhdXRvIDE3cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgI2V4YW1wbGUtc2xpZGUtMTUge1xuICAgICAgLndoaXRlLXNlY3Rpb24ge1xuICAgICAgICBwYWRkaW5nLXRvcDogNDhweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxM3B4O1xuICAgICAgfVxuXG4gICAgICBpbWcge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0yMXB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAxOHB4O1xuICAgICAgfVxuXG4gICAgICAuZC1mbGV4IHAge1xuICAgICAgICBtYXJnaW46IDIwcHggMCAwIDE1cHg7XG4gICAgICAgIHdpZHRoOiAxMTlweDtcbiAgICAgICAgaGVpZ2h0OiAxOTNweDtcbiAgICAgIH1cblxuICAgICAgYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTYzcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgI2V4YW1wbGUtc2xpZGUtMTYgLmV4YW1wbGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgICB9XG5cbiAgICAjZXhhbXBsZS1zbGlkZS0xNyB7XG4gICAgICAuYmxvY2t+LmJsb2NrIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgIH1cblxuICAgICAgLmV4YW1wbGUge1xuICAgICAgICBtYXJnaW46IDE1cHggMCAxNXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgICNleGFtcGxlLXNsaWRlLTE4IHtcbiAgICAgIC53aGl0ZS1zZWN0aW9uIHtcbiAgICAgICAgcGFkZGluZzogMjVweCAxN3B4IDAgMTNweDtcbiAgICAgIH1cblxuICAgICAgaW1nIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDQ3cHg7XG4gICAgICB9XG5cbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IC00MnB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgI2V4YW1wbGUtc2xpZGUtMTkge1xuICAgICAgLndoaXRlLXNlY3Rpb24ge1xuICAgICAgICBwYWRkaW5nOiA4OXB4IDE1cHggMCAxNXB4O1xuICAgICAgfVxuXG4gICAgICBoMyBkaXYge1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgfVxuXG4gICAgICAuYnV0dG9uLXNlbGVjdGlvbiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubW9iaWxlLW5hdmlnYXRpb24ge1xuICAgIGhlaWdodDogMTAwcHg7XG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAuY29uY3JldGUtZXhhbXBsZSB7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgfVxuXG4gICAgYnV0dG9uIHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICB9XG5cbiAgICAubmF2aWdhdGlvbi1uZXh0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcblxuICAgICAgLm1vYmlsZS1uZXh0LWFycm93IHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTQwcHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubmF2aWdhdGlvbi1uZXh0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgIH1cbiAgfVxufSIsIiN3aW5lZ3Jvd2VyX19tYXAge1xuICBoZWlnaHQ6IDQwMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDoxO1xufVxuXG4jY2VsbGFybWFuX19tYXAge1xuICBoZWlnaHQ6IDE2OXB4O1xuICB3aWR0aDogMTY5cHg7XG4gIHotaW5kZXg6MTtcbn1cblxuI21vZGFsX19tYXAge1xuICB3aWR0aDogMTAwdmg7XG4gIGhlaWdodDogMTAwdmg7XG59XG5cblxuI3dpbmVncm93ZXJfX21hcCwgI2NlbGxhcm1hbl9fbWFwIHtcbiAgYSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cblxuLnZpbmV5YXJkX19sb2NhbGl6YXRpb25fX2lucHV0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHotaW5kZXg6IDI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm90dG9tOiAyOGVtO1xuICBsZWZ0OiAwLjZlbTtcblxuICAuZm9ybS1jb250cm9sIHtcbiAgICB3aWR0aDogMzUlO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxufVxuXG4uYXV0b2NvbXBsZXRlLXN1Z2dlc3Rpb25zIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICBvcGFjaXR5OiAuODtcbiAgY3Vyc29yOiBwb2ludGVyO1xufSIsIi5jbG9zZS1hbGVydHtcbiAgICBmbG9hdDogcmlnaHQ7XG59XG4iLCIvLyBTdHlsZXMgY29tbXVucyBwb3VyIGxlcyBwcm9kdWl0cyBldCBsZXMgc3Bpcml0dWV1eFxuXG4vLyBTdHlsZXMgcG91ciBsZXMgw6lsw6ltZW50cyBkZSBwcm9kdWl0XG4ucHJvZHVjdC1pdGVtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDE1MHB4O1xuICAgIGhlaWdodDogMTUwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIGltZyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIHdpZHRoOiAxNTBweDtcbiAgICB9XG59XG5cbi8vIEZhaXJlIGRpc3BhcmFpdHJlIGwnaW5wdXQgc2FucyBmYWlyZSBkZSBkaXNwbGF5Om5vbmUgKHBvdXIgbGUgZm9ybSlcbi5jdXN0b20tZmlsZS1pbnB1dCB7XG4gICAgd2lkdGg6IDAuMXB4O1xuICAgIGhlaWdodDogMC4xcHg7XG4gICAgb3BhY2l0eTogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAtMTtcbn1cblxuLy8gU3R5bGVzIHBvdXIgbGVzIGZpZ3VyZXMgZCdpbWFnZXNcbi5wcm9kdWN0LWluZm9zLFxuLnNwaXJpdC1pbmZvcyB7XG4gICAgZmlndXJlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTY3cHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWNlbGxhcm1hblRoZW1lLWJnLWNvbG9yKTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBoZWlnaHQ6IDE2N3B4O1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxNjNweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gU3R5bGVzIHBvdXIgbGVzIGRlc2NyaXB0aW9uc1xuLmRlc2NyaXB0aW9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuZGVzY3JpcHRpb25fX3RleHQge1xuICAgICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgICBjb2xvcjogJGJvdWxkZXI7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIC5kZXNjcmlwdGlvbl9fdG9wLXRleHQge1xuICAgICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgJi0tdG9wLXNhbGVzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdG9wLXNhbGVzO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tZmF2b3VyaXRlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkZmF2b3VyaXRlO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tbmV3IHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmV3O1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tcHJvbW8ge1xuICAgICAgICAgICAgY29sb3I6ICRwcm9tbztcbiAgICAgICAgfVxuXG4gICAgICAgICYtLXRvcC1tYXJnZSB7XG4gICAgICAgICAgICBjb2xvcjogJHRvcC1tYXJnZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5kZXNjcmlwdGlvbl9fYW5ub3RhdGlvbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtMjZweDtcbiAgICAgICAgcmlnaHQ6IDE3cHg7XG4gICAgfVxuXG4gICAgLmRlc2NyaXB0aW9uX19zdGF0ZSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1iZy1jb2xvcik7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAmLS13YXJuaW5nIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZmY2YjM1O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjNjZDtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmVhYTc7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiA0cHggOHB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLndhd1ByaWNlIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gICAgICAgIG1hcmdpbi1yaWdodDogM3B4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC5kZXNjcmlwdGlvbl9fdGV4dC1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkY29udGVzc2E7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbn1cblxuLy8gU3R5bGVzIHBvdXIgbGVzIHNlY3Rpb25zIGRlIHN1cHByZXNzaW9uXG4uZGVsZXRlLXNlY3Rpb24ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tdG9wOiAxNXB4O1xuXG4gICAgcCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRyb2JvdG8tY29uZGVuc2VkO1xuICAgICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICAgIGNvbG9yOiAkYm91bGRlcjtcbiAgICB9XG5cbiAgICAvLyBTdHlsZXMgcG91ciBsZXMgYWN0aW9ucyBkZSBwcm9kdWl0IChtb2RpZmllciwgc3VwcHJpbWVyLCBtYXNxdWVyKVxuICAgICYucHJvZHVjdC1hY3Rpb25zIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogOHB4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgfVxufVxuXG4vLyBTdHlsZXMgcG91ciBsZXMgcHJpeFxuaW5wdXQucHJvZHVjdC1wcmljZSxcbmlucHV0LnNwaXJpdC1wcmljZSB7XG4gICAgZm9udC1mYW1pbHk6ICRyb2JvdG8tY29uZGVuc2VkO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBjb2xvcjogJHR1bmRvcmE7XG4gICAgYm9yZGVyOiBub25lO1xufVxuXG4vLyBTdHlsZXMgcG91ciBsZSBmcmFuY28gZGUgcG9ydFxuLmZyZWUtc2hpcHBpbmcge1xuICAgIGZvbnQtZmFtaWx5OiAkcm9ib3RvLWNvbmRlbnNlZDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgY29sb3I6ICRtYWluLWNvbG9yO1xuICAgIG1hcmdpbi10b3A6IDAuNHJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjRyZW07XG59XG5cbi8vIFN0eWxlcyBwb3VyIGxlcyBmb3JtdWxhaXJlc1xuLndpbmVncm93ZXItcHJvZHVjdCxcbi5kaXN0aWxsZXItc3Bpcml0LFxuI3NwaXJpdC1mb3JtIHtcblxuICAgIC5mb3JtLWNvbnRyb2wsXG4gICAgLmZvcm0tc2VsZWN0IHtcbiAgICAgICAgbWFyZ2luOiAxMHB4IGF1dG8gMTBweCBhdXRvO1xuICAgIH1cblxuICAgIGxhYmVsIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAuY2hlY2tib3gge1xuICAgICAgICBtYXJnaW46IDFyZW0gMCAxcmVtO1xuICAgIH1cbn1cblxuLy8gU3R5bGVzIHBvdXIgbGVzIHpvbmVzIGQndXBsb2FkIGQnaW1hZ2VcbiN1cGxvYWQtcHJvZHVjdC1waWN0dXJlLFxuI3VwbG9hZC1zcGlyaXQtcGljdHVyZSB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgd2lkdGg6IDE5NXB4O1xuICAgIGhlaWdodDogMTk1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgYm9yZGVyLXJhZGl1czogMTdweDtcbn1cblxuLy8gU3R5bGVzIHBvdXIgbGVzIGVycmV1cnNcbi5pbnB1dC1lcnJvciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBjb2xvcjogJGFsZXJ0O1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuXG4vLyBTdHlsZXMgcG91ciBsZXMgc2xpZGVyc1xuLnNsaWNrLXNsaWRlIGltZyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtYXJnaW46IGF1dG87XG59XG5cbi8vIFN0eWxlcyBwb3VyIGxlcyB0YWJsZWF1eCBkZSBwcml4XG4jdGFibGUtcHJpY2VzIHtcbiAgICB0aCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWFzaGVsbDtcbiAgICAgICAgY29sb3I6ICR0dW5kb3JhO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG5cbiAgICB0ZCB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxufVxuXG4vLyBTdHlsZXMgcG91ciBsZXMgYm91dG9ucyBkZSBzb3VtaXNzaW9uXG4uc3VibWl0LWJ1dHRvbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIjxtb2JpbGUtbGFyZ2VcIikge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIC5idG4ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBTdHlsZXMgcG91ciBsZXMgc2xpZGVycyBkZSBzcGlyaXR1ZXV4XG4jc3Bpcml0LXNsaWRlcixcbiNwcm9kdWN0LXNsaWRlciB7XG4gICAgLnNsaWNrLWFycm93IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgd2lkdGg6IDI2cHg7XG4gICAgICAgIGhlaWdodDogMjZweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMjZweDtcbiAgICAgICAgYmFja2dyb3VuZDogJG1haW4tY29sb3I7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICB6LWluZGV4OiAxMDtcblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zbGljay1wcmV2IHtcbiAgICAgICAgICAgIGxlZnQ6IC0xM3B4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zbGljay1uZXh0IHtcbiAgICAgICAgICAgIHJpZ2h0OiAtMTNweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gU3R5bGVzIHNww6ljaWZpcXVlcyBwb3VyIGxlIGNvbXB0ZSB2aXRpY3VsdGV1clxuI2JvdHRsZS1zdGVwcy1hcnJheSB7XG4gICAgY29sb3I6ICR0dW5kb3JhO1xufVxuXG4ud2luZWdyb3dlci1wcm9kdWN0IHtcbiAgICAucHJvZHVjdC1mcmFuY2hpc2VkIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi5zcGlyaXQtZnJhbmNoaXNlZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLy8gU3R5bGVzIGNvbW11bnMgcG91ciBsZXMgZGVzY3JpcHRpb25zIGRlIHByb2R1aXRzXG4ucHJvZHVjdF9fZGVzY3JpcHRpb24ge1xuICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgaGVpZ2h0OiBpbml0aWFsO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBjb2xvcjogJGJvdWxkZXI7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLy8gU3R5bGVzIGNvbW11bnMgcG91ciBsZXMgY2FycsOpcyBkZSBwcm9kdWl0c1xuLnNxdWFyZV9fcHJvZHVjdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAuc3F1YXJlX19pbWFnZSB7XG4gICAgICAgIGJvcmRlcjogNHB4IHNvbGlkICRjb250ZXNzYTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAucHJvZHVjdF9fbmFtZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGNvbG9yOiAkYm91bGRlcjtcbiAgICAgICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgIH1cblxuICAgIC5wcm9kdWN0X19wcmljZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgY29sb3I6ICRjb250ZXNzYTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuXG4gICAgLnByb2R1Y3RfX3N0YXRlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbnRlc3NhO1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxufSIsIi5hZG1pbiB7XG4gIGZvbnQtZmFtaWx5OiAkcm9ib3RvLWNvbmRlbnNlZDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBjb2xvcjogJGJvdWxkZXI7XG4gIG1heC13aWR0aDogMTE0MHB4O1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuI3dpbmVncm93ZXJfX21hcF9fcHJldmlldyB7XG4gIGhlaWdodDogMTMwcHg7XG59XG5cbi5yZWNvbW1lbmRhdGlvblBvcnRyYWl0IHtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgaGVpZ2h0OiAzMXB4O1xuICB3aWR0aDogMzFweDtcbn1cblxuLmFkbWluIHtcbiAgLmFkbWluX19hY3Rpb24taWNvbiB7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gIH1cblxuICAuYWRtaW5fX2FjdGlvbiB7XG4gICAgd2lkdGg6IDEwMHB4O1xuICB9XG5cbiAgLmFkbWluX19jYXRlZ29yeSB7XG4gICAgd2lkdGg6IDE3MHB4O1xuICB9XG5cbiAgLmFkbWluX190aXRsZSB7XG4gICAgY29sb3I6ICRib3VsZGVyO1xuICB9XG5cbiAgLmFkbWluX19wcmljZSB7XG4gICAgd2lkdGg6IDkwcHg7XG5cbiAgICAucHJpY2VfX2NlbGxhcm1hbiB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICAgIG1hcmdpbi1yaWdodDogM3B4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAuYnRuIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBoZWlnaHQ6IDM3cHg7XG4gIH1cbn1cblxuLmFkbWluLWZvcm0ge1xuICBtYXJnaW46IDFyZW0gYXV0bztcbiAgcGFkZGluZzogMjBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgJGR1c3R5LWdyYXk7XG5cbiAgLmZvcm0tY29udHJvbCxcbiAgLmZvcm0tc2VsZWN0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vhc2hlbGw7XG4gICAgY29sb3I6ICR0dW5kb3JhO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxuXG4gIC5mb3JtLXNlbGVjdCB7XG4gICAgaGVpZ2h0OiAzNnB4O1xuICB9XG5cbiAgLmFkbWluX19idXR0b24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAuYnRuIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1hcmdpbjogMjBweCBhdXRvIDA7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICB9XG5cbiAgI29wZW4tcmVjb21tZW5kYXRpb25Qcm9maWxQaWN0dXJlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4jcHJvZHVjdF92YWxpZGF0ZWQsXG4jYWRtaW5fcHJvZHVjdF92YWxpZGF0ZWQge1xuICBtYXJnaW4tbGVmdDogNHB4O1xufVxuXG4jYWRtaW5fcHJvZHVjdF9kZXNjcmlwdGlvbiB7XG4gIGhlaWdodDogMjUwcHg7XG59XG5cbiN1c2VyX2ZpbHRlcl9zZWFyY2hCYXIge1xuICBtYXgtd2lkdGg6IDIwMHB4O1xufVxuXG4ucHJvZHVjdC1kZXNjcmlwdGlvbiB7XG4gIGZpZ3VyZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxODdweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjOTMwMDAwO1xuXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4uaW1nLWhvbWUge1xuICB3aWR0aDogMjUlO1xufVxuXG4ucGFnaW5hdGlvbiBsaTpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICB0YWJsZSB0Ym9keSB0ciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ucGFnaW5hdGlvbj5saSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcblxuICAmLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XG4gICAgY29sb3I6IHdoaXRlO1xuICB9XG5cbiAgYSB7XG4gICAgcGFkZGluZzogNnB4IDEycHg7XG4gIH1cbn1cblxuLnNlYXJjaC1idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xufVxuXG4uc2VhcmNoLXNlY3Rpb24ge1xuICBtYXJnaW4tdG9wOiAyLjdyZW07XG59XG5cbmxhYmVsLmJ0bi5idG4tcHJpbWFyeS50ZXh0LWNlbnRlci5tdC0yIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5hcnRpY2xlIC5yb3cge1xuICBhbGlnbi1pdGVtczogc3RhcnQ7XG59XG5cbiNteVNlYXJjaFVzZXJzIHtcbiAgdHIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLXRhYmxlLWJnKTtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgOTk5OXB4IHZhcigtLWJzLXRhYmxlLWFjY2VudC1iZyk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIC0tYnMtdGFibGUtYWNjZW50LWJnOiB2YXIoLS1icy10YWJsZS1ob3Zlci1iZyk7XG4gICAgICBjb2xvcjogdmFyKC0tYnMtdGFibGUtaG92ZXItY29sb3IpO1xuXG4gICAgICB0ZCB7XG4gICAgICAgIGJveC1zaGFkb3c6IHVuc2V0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIDpub3QoY2FwdGlvbikge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxuXG4gIC5hZG1pbl9fYWN0aW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5cblxuLmFjdGlvbi1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gIC50YWJzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICB9XG59XG5cbi5uYXYtdGFicyAubmF2LWxpbmsge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cblxuLm5hdi10YWJzIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLm5hdi10YWJzIC5uYXYtbGluazpob3Zlcixcbi5uYXYtdGFicyAubmF2LWxpbms6Zm9jdXMge1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi5uYXZiYXJQIHVsIGxpIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLy8gLnRhYnMgdWwgbGkge1xuLy8gICBwYWRkaW5nOiAwIDBweDtcbi8vIH1cblxuLy8gU3R5bGVzIHNww6ljaWZpcXVlcyBwb3VyIGxlIHRhYmxlYXUgZGVzIHByb2R1aXRzXG4jdGFibGVQcm9kdWN0cyB7XG4gIG1pbi13aWR0aDogMTAwJTtcbiAgd2lkdGg6IG1heC1jb250ZW50O1xuXG4gIHRoIHtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIHBhZGRpbmc6IDhweCAxMnB4O1xuICB9XG5cbiAgdGQge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgcGFkZGluZzogOHB4IDEycHg7XG4gIH1cblxuICAvLyBDb2xvbm5lcyBhdmVjIGxhcmdldXJzIG9wdGltaXPDqWVzXG4gIHRoOm50aC1jaGlsZCgxKSxcbiAgdGQ6bnRoLWNoaWxkKDEpIHtcbiAgICAvLyBQcm9kdWl0XG4gICAgbWF4LXdpZHRoOiAxMjBweDtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG5cbiAgdGg6bnRoLWNoaWxkKDIpLFxuICB0ZDpudGgtY2hpbGQoMikge1xuICAgIC8vIFZpZ25lcm9uXG4gICAgbWF4LXdpZHRoOiAxMjBweDtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG5cbiAgdGg6bnRoLWNoaWxkKDMpLFxuICB0ZDpudGgtY2hpbGQoMykge1xuICAgIC8vIFN0YXR1dCB2aWduZXJvblxuICAgIG1heC13aWR0aDogODBweDtcbiAgfVxuXG4gIHRoOm50aC1jaGlsZCg0KSxcbiAgdGQ6bnRoLWNoaWxkKDQpIHtcbiAgICAvLyBTdGF0dXQgdmlnbm9ibGVcbiAgICBtYXgtd2lkdGg6IDgwcHg7XG4gIH1cblxuICB0aDpudGgtY2hpbGQoNSksXG4gIHRkOm50aC1jaGlsZCg1KSB7XG4gICAgLy8gUHJpeFxuICAgIG1pbi13aWR0aDogODBweDtcbiAgfVxuXG4gIHRoOm50aC1jaGlsZCg2KSxcbiAgdGQ6bnRoLWNoaWxkKDYpIHtcbiAgICAvLyBCb3V0ZWlsbGVzIHZlbmR1ZXNcbiAgICBtYXgtd2lkdGg6IDgwcHg7XG4gIH1cblxuICB0aDpudGgtY2hpbGQoNyksXG4gIHRkOm50aC1jaGlsZCg3KSB7XG4gICAgLy8gUXVhbnRpdMOpIGRpc3BvbmlibGVcbiAgICBtYXgtd2lkdGg6IDgwcHg7XG4gIH1cblxuICB0aDpudGgtY2hpbGQoOCksXG4gIHRkOm50aC1jaGlsZCg4KSB7XG4gICAgLy8gQ2F0w6lnb3JpZVxuICAgIG1pbi13aWR0aDogODBweDtcbiAgfVxuXG4gIHRoOm50aC1jaGlsZCg5KSxcbiAgdGQ6bnRoLWNoaWxkKDkpIHtcbiAgICAvLyBFdGF0XG4gICAgbWluLXdpZHRoOiAxMDBweDtcbiAgICBtYXgtd2lkdGg6IDE1MHB4O1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIH1cblxuICB0aDpudGgtY2hpbGQoMTApLFxuICB0ZDpudGgtY2hpbGQoMTApIHtcbiAgICAvLyBBY3Rpb25zXG4gICAgbWluLXdpZHRoOiAxMjBweDtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHJpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIHotaW5kZXg6IDEwO1xuICB9XG59XG5cbi8vIFN0eWxlcyBzcMOpY2lmaXF1ZXMgcG91ciBsZSB0YWJsZWF1IGRlcyBzcGlyaXR1ZXV4XG4jdGFibGVTcGlyaXRzIHtcbiAgbWluLXdpZHRoOiAxMDAlO1xuICB3aWR0aDogbWF4LWNvbnRlbnQ7XG5cbiAgdGgge1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgcGFkZGluZzogOHB4IDEycHg7XG4gIH1cblxuICB0ZCB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBwYWRkaW5nOiA4cHggMTJweDtcbiAgfVxuXG4gIC8vIENvbG9ubmVzIGF2ZWMgbGFyZ2V1cnMgb3B0aW1pc8OpZXNcbiAgdGg6bnRoLWNoaWxkKDEpLFxuICB0ZDpudGgtY2hpbGQoMSkge1xuICAgIC8vIFNwaXJpdHVldXhcbiAgICBtYXgtd2lkdGg6IDEyMHB4O1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIH1cblxuICB0aDpudGgtY2hpbGQoMiksXG4gIHRkOm50aC1jaGlsZCgyKSB7XG4gICAgLy8gRGlzdGlsbGF0ZXVyXG4gICAgbWF4LXdpZHRoOiAxMjBweDtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG5cbiAgdGg6bnRoLWNoaWxkKDMpLFxuICB0ZDpudGgtY2hpbGQoMykge1xuICAgIC8vIFN0YXR1dCBkaXN0aWxsYXRldXJcbiAgICBtYXgtd2lkdGg6IDgwcHg7XG4gIH1cblxuICB0aDpudGgtY2hpbGQoNCksXG4gIHRkOm50aC1jaGlsZCg0KSB7XG4gICAgLy8gU3RhdHV0IGRpc3RpbGxlcmllXG4gICAgbWF4LXdpZHRoOiA4MHB4O1xuICB9XG5cbiAgdGg6bnRoLWNoaWxkKDUpLFxuICB0ZDpudGgtY2hpbGQoNSkge1xuICAgIC8vIFByaXhcbiAgICBtaW4td2lkdGg6IDgwcHg7XG4gIH1cblxuICB0aDpudGgtY2hpbGQoNiksXG4gIHRkOm50aC1jaGlsZCg2KSB7XG4gICAgLy8gQm91dGVpbGxlcyB2ZW5kdWVzXG4gICAgbWF4LXdpZHRoOiA4MHB4O1xuICB9XG5cbiAgdGg6bnRoLWNoaWxkKDcpLFxuICB0ZDpudGgtY2hpbGQoNykge1xuICAgIC8vIFF1YW50aXTDqSBkaXNwb25pYmxlXG4gICAgbWF4LXdpZHRoOiA4MHB4O1xuICB9XG5cbiAgdGg6bnRoLWNoaWxkKDgpLFxuICB0ZDpudGgtY2hpbGQoOCkge1xuICAgIC8vIENhdMOpZ29yaWVcbiAgICBtaW4td2lkdGg6IDgwcHg7XG4gIH1cblxuICB0aDpudGgtY2hpbGQoOSksXG4gIHRkOm50aC1jaGlsZCg5KSB7XG4gICAgLy8gRXRhdFxuICAgIG1pbi13aWR0aDogMTAwcHg7XG4gICAgbWF4LXdpZHRoOiAxNTBweDtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG5cbiAgdGg6bnRoLWNoaWxkKDEwKSxcbiAgdGQ6bnRoLWNoaWxkKDEwKSB7XG4gICAgLy8gQWN0aW9uc1xuICAgIG1pbi13aWR0aDogMTIwcHg7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICByaWdodDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICB6LWluZGV4OiAxMDtcbiAgfVxufVxuIiwiLyoqXG4gKiBTb21lIHNww6ljaWZpY3Mgc3R5bGVzIG9mIGRldGFpbCBwYWdlXG4gKi9cblxuLmRldGFpbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPG1vYmlsZS1sYXJnZVwiKSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuXG4gIGgxIHtcbiAgICBmb250LWZhbWlseTogJHJvYm90by1jb25kZW5zZWQ7XG4gICAgZm9udC1zaXplOiAyMXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDEuM3JlbTtcbiAgfVxuXG4gIHAge1xuICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90byBDb25kZW5zZWRcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAkdHVuZG9yYTtcbiAgfVxuXG4gIC5kZXRhaWxfX2xlZnQsXG4gIC5kZXRhaWxfX3JpZ2h0IHtcbiAgICBmbGV4OiAwIDAgMzUlO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8dGFibGV0XCIpIHtcbiAgICAgIGZsZXg6IDAgMCA0NSU7XG4gICAgfVxuICB9XG5cbiAgLmRldGFpbC1mb3JtIHtcbiAgICAuZm9ybS1zZWxlY3Qge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgY29sb3I6ICR0dW5kb3JhO1xuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcXGYxMDdcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICBwYWRkaW5nOiAwLjM3NXJlbSAwO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtYXdlc29tZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZGV0YWlsLWZvcm0sXG4gIC5sb2NhdGlvbi1mb3JtLFxuICAucGFzc3dvcmQtZm9ybSxcbiAgLnN1YnNjcmlwdGlvbi1mb3JtLFxuICAuYmFuay1mb3JtLFxuICAuY29udHJhY3QtZm9ybSxcbiAgLmNlbGxhcm1hbi12YWxpZGF0aW9uLFxuICAud2luZWdyb3dlci12YWxpZGF0aW9uLFxuICAuZGlzdGlsbGVyLXZhbGlkYXRpb24ge1xuICAgIG1hcmdpbjogMXJlbSBhdXRvO1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGR1c3R5LWdyYXk7XG5cbiAgICBsYWJlbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC5mb3JtLWNvbnRyb2wsXG4gICAgLmZvcm0tc2VsZWN0IHtcbiAgICAgIG1hcmdpbjogMTBweCBhdXRvIDEwcHggYXV0bztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7XG4gICAgICBjb2xvcjogJHR1bmRvcmE7XG4gICAgfVxuXG4gICAgLmZvcm0tc2VsZWN0IHtcbiAgICAgIHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW0gIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRzaWx2ZXI7XG4gICAgfVxuXG4gICAgLmxvY2F0aW9uLWZvcm1fX3NlbGVjdC13cmFwcGVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGNvbG9yOiAkdHVuZG9yYTtcblxuICAgICAgc2VsZWN0IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICB9XG5cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlxcZjEwN1wiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgIHBhZGRpbmc6IDAuMzc1cmVtIDA7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1hd2Vzb21lO1xuICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5sb2NhdGlvbi1mb3JtX19lZGl0LFxuICAgIC5sb2NhdGlvbi1mb3JtX19sb2NhdGlvbi1jb250YWluZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuYnRuIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgIH1cblxuICAgIC5sb2NhdGlvbi1mb3JtX19pbmZvIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgIH1cblxuICAgIC5sb2NhdGlvbi1mb3JtX19zZXBhcmF0b3Ige1xuICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQ7XG4gICAgfVxuXG4gICAgLnRleHQtZ3JlZW4ge1xuICAgICAgY29sb3I6ICR2YWxpZDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAudGV4dC1yZWQge1xuICAgICAgY29sb3I6ICRhbGVydCAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5zdWJzY3JpcHRpb24tZm9ybSB7XG4gICAgLnN1YnNjcmlwdGlvbi1mb3JtX19wcmljZSB7XG4gICAgICBtYXJnaW46IC0xMCUgMDtcbiAgICAgIGNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtZmFtaWx5OiAnQmViYXMgTmV1ZScsIHNhbnMtc2VyaWY7XG5cbiAgICAgIC5zdWJzY3JpcHRpb24tZm9ybV9fcHJpY2VfX2V1cm9zIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgZm9udC1zaXplOiA3MnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5iYW5rLWZvcm0ge1xuICAgIC5iYW5rLWZvcm1fX2hpZGRlbiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC5wYXNzd29yZC1mb3JtIHtcbiAgICAucGFzc3dvcmQtZm9ybS1oaWRkZW4ge1xuICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgY29sb3I6ICM4ZDhkOGQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cblxuLmRlbGl2ZXJ5X3NjaGVkdWxlLFxuLmRlbGl2ZXJ5LXRpbWVzbG90cy1kaXNwbGF5IHtcbiAgc3BhbiB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGNvbG9yOiAkdHVuZG9yYTtcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuICB9XG59XG5cbi5jb250ZXh0dWFsLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAuY29udGV4dHVhbC1pY29uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHBhZGRpbmctdG9wOiAxN3B4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcblxuICAgIGNvbG9yOiB2YXIoLS1jZWxsYXJtYW5UaGVtZS1iZy1jb2xvcik7XG5cbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHRyYW5zaXRpb246IC4ycyBlYXNlLWluIGFsbDtcbiAgfVxuXG4gICYuYWN0aXZlIHtcbiAgICAuY29udGV4dHVhbC1pY29uIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICAgIH1cbiAgfVxufSIsIi8qKlxuICogU29tZSBzcMOpY2lmaWNzIHN0eWxlcyBvZiBzaWdudXAgcGFnZVxuICovXG5cbi5tYXAtbW9kYWwge1xuICBtYXgtaGVpZ2h0OiAxMzBweDtcbiAgd2lkdGg6IDEwMCVcbn1cblxuLmljb24tbGVmdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcblxuICBpbWcge1xuICAgIG1heC13aWR0aDogMTY1cHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDg1NXB4KSB7XG4gIC5pY29uLWxlZnQge1xuICAgIHBvc2l0aW9uOiBpbmhlcml0O1xuICB9XG59XG5cblxuLnNlbGVjdC1pY29uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBsaXN0Ym94O1xufVxuXG4uZ2xhc3Mtd2luZXMge1xuICB3aWR0aDogMTAwcHg7XG59XG5cbi5zaWdudXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB3aWR0aDogODAlO1xuICBtYXJnaW46IGF1dG87XG4gIHBhZGRpbmctdG9wOiA1JTtcblxuICBoMSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIH1cblxuICAuc2lnbnVwX19pbmZvIHtcbiAgICBjb2xvcjogJG1haW4tdGV4dC1jb2xvcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuXG4gICAgaDIge1xuICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIH1cbiAgfVxuXG4gIC5zaWdudXBfX2xvZ28ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIjxtb2JpbGUtbGFyZ2VcIikge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIG1hcmdpbjogMS41ZW0gYXV0bztcbiAgICB9XG4gIH1cblxuICAuc2lnbnVwX19yb2xlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgd2lkdGg6IDM1JTtcbiAgICBtYXJnaW46IGF1dG87XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIjxtb2JpbGUtbGFyZ2VcIikge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBtYXJnaW46IDVweDtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRzaWx2ZXI7XG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICBjb2xvcjogJHR1bmRvcmE7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgIGNvbG9yOiAkdHVuZG9yYTtcbiAgICB9XG4gIH1cblxuICAuc2F2ZS1idG4ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMSU7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcblxuICAgIGJ1dHRvbixcbiAgICBhIHtcbiAgICAgIHBhZGRpbmc6IDAuMzc1cmVtIDNyZW07XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB9XG4gIH1cblxuICAucmVxdWlyZWQtaW5mbyB7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIGNvbG9yOiAkYm91bGRlcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICB9XG5cbiAgLmRldGFpbC1mb3JtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8bW9iaWxlLWxhcmdlXCIpIHtcbiAgICAgIC8qIEZvciBtb2JpbGUgcGhvbmVzOiAqL1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG5cbiAgICAuZGV0YWlsLWZvcm1fX2xlZnQsXG4gICAgLmRldGFpbC1mb3JtX19yaWdodCB7XG4gICAgICBmbGV4OiAwIDAgMzAlO1xuICAgIH1cbiAgfVxuXG4gIC5kZXRhaWwtZm9ybV9fZXJyb3JzIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGNvbG9yOiAjOTMwMDAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIH1cblxuICAuY29udHJhY3Qtc3VtbWFyeSxcbiAgLmRlYml0LXN1bW1hcnkge1xuICAgIG1hcmdpbjogMiUgYXV0bztcbiAgICB3aWR0aDogODAlO1xuICAgIGNvbG9yOiAkdHVuZG9yYTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPG1vYmlsZS1sYXJnZVwiKSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuY29udHJhY3Qtc3VtbWFyeV9fdGl0bGUsXG4gIC5kZWJpdC1zdW1tYXJ5X190aXRsZSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG5cbiAgLmNvbnRyYWN0LXN1bW1hcnlfX3RpdGxlLXdhcm5pbmcsXG4gIC5kZWJpdC1zdW1tYXJ5X190aXRsZS13YXJuaW5nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzZW07XG4gICAgY29sb3I6ICRtYWluLWNvbG9yO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC5zdWJzY3JpcHRpb24sXG4gIC5kZWJpdCB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXJnaW46IDIlIGF1dG87XG4gICAgcGFkZGluZzogMCA1MHB4O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8bW9iaWxlLWxhcmdlXCIpIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG5cbiAgLmRlYml0IHtcbiAgICBwIHtcbiAgICAgIGNvbG9yOiAkdHVuZG9yYTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB9XG5cbiAgICAuc2F2ZS1idG4ge1xuICAgICAgbWFyZ2luOiBhdXRvIDAgMSU7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cbiAgfVxuXG4gIC5kZWJpdC1mb3JtIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG5cbiAgLmFjY291bnQge1xuICAgIC5hY2NvdW50X19mbGV4IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPG1vYmlsZS1sYXJnZVwiKSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmFjY291bnRfX2ZsZXhfX2xlZnQsXG4gICAgLmFjY291bnRfX2ZsZXhfX3JpZ2h0IHtcbiAgICAgIGZsZXg6IDAgMCA0NSU7XG5cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDMlO1xuICAgICAgICBjb2xvcjogJHR1bmRvcmE7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYWNjb3VudF9fZmxleF9fcmlnaHQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICBpbnB1dCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPG1vYmlsZS1sYXJnZVwiKSB7XG4gICAgICAgICAgcG9zaXRpb246IGluaGVyaXQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYWNjb3VudF9fcnVsZXMge1xuICAgICAgY29sb3I6ICRncmF5O1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgIH1cblxuICAgIC5hY2NvdW50X19lcnJvcnMge1xuICAgICAgZm9udC1mYW1pbHk6ICRyb2JvdG8tY29uZGVuc2VkO1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgY29sb3I6ICRtYWluLWNvbG9yO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICB1bCB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5zaWdudXAsXG4ubW9kYWwtY29udGVudCB7XG4gIC5zdWJzY3JpcHRpb24ge1xuICAgIGZsZXg6IDAgMCA1MCU7IC8vVE9ETyDDqXZpdGVyIGRlIHLDqXV0aWxpc2VyXG4gICAgbWFyZ2luOiAyJSBhdXRvO1xuXG4gICAgcCB7XG4gICAgICBjb2xvcjogJHR1bmRvcmE7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgfVxuXG4gICAgLnN1YnNjcmlwdGlvbl9fcHJpY2Uge1xuICAgICAgY29sb3I6ICRtYWluLWNvbG9yO1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZm9udC1mYW1pbHk6ICRiZWJhcy1yZWd1bGFyO1xuXG4gICAgICAuc3Vic2NyaXB0aW9uX19wcmljZV9fZXVyb3Mge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBmb250LXNpemU6IDcycHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnN1YnNjcmlwdGlvbl9fZGViaXQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBtYXJnaW4tdG9wOiAxMCU7XG4gICAgICBjb2xvcjogJG1haW4tY29sb3I7XG5cbiAgICAgIHNwYW4ge1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICB9XG5cbiAgICAgIC5zdWJzY3JpcHRpb25fX2RlYml0X19kYXRlIHtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5wcmljaW5nIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1hcmdpbjogYXV0bztcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPG1vYmlsZS1sYXJnZVwiKSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLXNlbGVjdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGNvbG9yOiAkdHVuZG9yYTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlxcZjEwN1wiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICBwYWRkaW5nOiAwLjM3NXJlbSAwO1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LWF3ZXNvbWU7XG4gICAgICBmb250LXdlaWdodDogOTAwO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIG1hcmdpbjogMCBhdXRvIDEycHggYXV0bztcbiAgICBmb250LXNpemU6IDE0cHg7XG4gIH1cblxuICAuY2hlY2tib3gge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cblxuICAubW9kYWwtbGluayB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgfVxufVxuXG4jcHJvZHVjdF9zaWduX3VwX2ltYWdlVXJsIHtcbiAgbWFyZ2luLWxlZnQ6IDc2cHg7XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI8bW9iaWxlLWxhcmdlXCIpIHtcbiAgICBtYXJnaW4tbGVmdDogMjcwcHg7XG4gIH1cbn1cblxuI3N0ZXAxX2NvbXBhbnlMb2NhdGlvbl9jb21tZXJjaWFsTmFtZSxcbiNzdGVwMV9jb21wYW55TG9jYXRpb25fbmFtZSB7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuLy8gU3R5bGVzIHBvdXIgbGUgZm9ybXVsYWlyZSBkZSBkaXN0aWxsZXJpZVxuI2FkZC1kaXN0aWxsZXJ5IHtcbiAgLnJvdyB7XG4gICAgYWxpZ24taXRlbXM6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8gU3R5bGVzIHBvdXIgbGVzIGNhdMOpZ29yaWVzIGRlIHNwaXJpdHVldXhcbi5zcGlyaXQtdHlwZS1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4td2lkdGg6IDgwcHg7XG59XG5cbi5zcGlyaXQtdHlwZS1sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiA4cHggMTJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgYm9yZGVyOiAycHggc29saWQgI2RlZTJlNjtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuXG4uc3Bpcml0LXR5cGUtaXRlbSBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCsuc3Bpcml0LXR5cGUtbGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmO1xuICBib3JkZXItY29sb3I6ICMwMDdiZmY7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLnNwaXJpdC10eXBlLWxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcbiAgYm9yZGVyLWNvbG9yOiAjYWRiNWJkO1xufVxuXG4uc3Bpcml0LXR5cGUtaXRlbSBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCsuc3Bpcml0LXR5cGUtbGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA1NmIzO1xuICBib3JkZXItY29sb3I6ICMwMDU2YjM7XG59XG5cbi5zcGlyaXQtdHlwZS1pdGVtIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn0iLCIvKipcbiAqIFN0eWxlcyBjb21tdW5zIHBvdXIgbGVzIGZvcm11bGFpcmVzIGRlIHByb2R1Y3RldXJzICh2aWduZXJvbnMgZXQgZGlzdGlsbGF0ZXVycylcbiAqL1xuXG4jYWRkLXZpbmV5YXJkLFxuI2FkZC1kaXN0aWxsZXJ5IHtcbiAgICAudXBsb2FkLWNvbnRlbnQge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgIHRleHRhcmVhIHtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA0MXB4KTsgLy8gMzFweCA9IGxhYmVsIGhlaWdodFxuICAgICAgICBtaW4taGVpZ2h0OiAxODBweDtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwiZmlsZVwiXSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJmaWxlXCJdK2xhYmVsIHt9XG5cbiAgICAudmluZXlhcmRfX3NhdmUtYnV0dG9ucyAuYnRuLFxuICAgIC5kaXN0aWxsZXJ5X19zYXZlLWJ1dHRvbnMgLmJ0biB7XG4gICAgICAgIG1pbi13aWR0aDogMjAlO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPG1vYmlsZS1sYXJnZVwiKSB7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmFydGljbGUge1xuXG4gICAgLnZpbmV5YXJkX19zYXZlLWJ1dHRvbnMgLmJ0bixcbiAgICAuZGlzdGlsbGVyeV9fc2F2ZS1idXR0b25zIC5idG4ge1xuICAgICAgICB3aWR0aDogMzAlO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPG1vYmlsZS1sYXJnZVwiKSB7XG4gICAgICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4jc2luZ2xlLWFydGljbGUtd2luZS1jb2xvcnMsXG4jc2luZ2xlLWFydGljbGUtd2luZS1sYWJlbHMsXG4jc2luZ2xlLWFydGljbGUtc3Bpcml0LXR5cGVzIHtcbiAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuLnRleHQtZGFuZ2VyIHtcbiAgICB1bCB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIjbGlzdF9fd2luZWdyb3dlcnN7XG4gIHdpZHRoOiA5NiU7XG59XG5cbi5zcXVhcmVfX3ZpbmV5YXJke1xuICBtYXJnaW4tYm90dG9tOiAzZW07XG59XG5cbi53aW5lZ3Jvd2VyX19mb3JtLCAjY2VsbGFybWFuX3dpbmVncm93ZXJfc2VhcmNoX3ZpbmV5YXJkUmVnaW9ue1xuICBjb2xvcjogJGRpbS1ncmV5O1xuICBmb250LXNpemU6IDE0cHg7XG4gICYgaW5wdXR7XG4gICAgcGFkZGluZzogMCAxNXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICB9XG59XG5cbi53aW5lZ3Jvd2VyX19sYWJlbHtcbiAgcGFkZGluZy10b3A6IDhweDtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLndpbmVncm93ZXJfX3ZpbmV5YXJkOmhvdmVye1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cblxuXG5cblxuIiwiLyoqXG4gKiBTb21lIHNww6ljaWZpY3Mgc3R5bGVzIG9mIHNlbGVjdGlvbiBwYWdlXG4gKi9cblxuLnNlbGVjdGlvbiB7XG5cdCN3ZWxjb21lIHtcbiAgICBtaW4td2lkdGg6IDU0LjV2dztcbiAgICBtYXJnaW4tbGVmdDogLTM1cHg7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHBhbXBhcztcbiAgICBAaW5jbHVkZSBtZWRpYShcIjx0YWJsZXRcIikge1xuICAgICAgd2lkdGg6IDEwMi41dnc7XG4gICAgfVxuICAgIC53ZWxjb21lLXRpdGxlIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGNvbG9yOiAkYm91bGRlcjtcbiAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZHVzdHktZ3JheTtcbiAgICAgIH1cbiAgICAgID4gc3BhbiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICRwYW1wYXM7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPG1vYmlsZS1sYXJnZVwiKSB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICB9XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgYXtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY29sb3I6ICRib3VsZGVyO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICRwYW1wYXM7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtIDogdXBwZXJjYXNlO1xuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjx0YWJsZXQtbGFyZ2VcIikge1xuICAgICAgICAgIHBhZGRpbmc6IDAgOHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC53ZWxjb21lLXRpdGxlLW1vYmlsZSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYShcIjx0YWJsZXQtbGFyZ2VcIikge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgd2lkdGg6IDA7XG4gICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5zbGljay1zbGlkZXIge1xuICAgICAgLnNsaWNrLWFycm93e1xuICAgICAgICB0b3A6IDg1cHg7XG4gICAgICB9XG4gICAgfVxuXHR9XG4gIC5zZXBhcmF0b3J7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRkdXN0eS1ncmF5O1xuICAgIG1hcmdpbjogMnJlbSBhdXRvO1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLmhpZGV7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC5zaG93IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIuY29udGFpbmVyIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LWZhbWlseTogJHJvYm90by1jb25kZW5zZWQ7XG4gIG1heC13aWR0aDogMTAwJTtcblxuICAuc2VwYXJhdG9yIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGR1c3R5LWdyYXk7XG4gICAgbWFyZ2luOiAycmVtIGF1dG87XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuXG4uaW50ZW5kT3JkZXIge1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBjb2xvcjogdmFyKC0tY2VsbGFybWFuVGhlbWUtdGV4dC1jb2xvcik7XG4gIHdpZHRoOiAzNSU7XG59XG5cbi5jZWxsYXJtYW4tcGFnZS10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDE4cHg7XG4gIG1hcmdpbi10b3A6IDI4cHg7XG59XG5cbi5saW5lIHtcbiAgd2lkdGg6IDMwJTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogMTJweCAyMHB4IDExcHggMDtcbiAgYm9yZGVyOiBzb2xpZCAxcHggJGR1c3R5LWdyYXk7XG59XG5cbiNmaWx0ZXIge1xuICB3aWR0aDogMTg5cHg7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGNvbG9yOiAkYm91bGRlcjtcbiAgbWFyZ2luLWxlZnQ6IDVweDtcbn1cblxuLnJvdyB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAucm93X19maWx0ZXIge1xuICAgIGRpc3BsYXk6IGluaGVyaXQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogNTUlO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8dGFibGV0XCIpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC5yb3dfX2hlbHAge1xuICAgIHdpZHRoOiAyMDBweDtcbiAgfVxuXG4gIC5yb3dfX2xpbmUge1xuICAgIG1hcmdpbjogYXV0bztcbiAgfVxuXG4gIC5yb3dfX2J1dHRvbiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbjogMjBweCBhdXRvIDMxcHggYXV0bztcbiAgfVxufVxuXG4ucm93IGEge1xuICBtYXJnaW46IDAgN3B4IDAgMCAhaW1wb3J0YW50O1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBjb2xvcjogJGJvdWxkZXI7XG59XG5cbi5zcXVhcmUge1xuICAvL2Rpc3BsYXk6IGdyaWQ7XG4gIC8vZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmciAxZnI7XG4gIC8vbWFyZ2luOiAyOHB4IGF1dG8gMDtcbiAgZ3JpZC1jb2x1bW4tZ2FwOiAyMHB4O1xuICBncmlkLXJvdy1nYXA6IDQwcHg7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMjhweCAwIDI4cHggMDtcblxuICAmLS1lbXB0eSB7XG4gICAgaGVpZ2h0OiAxNTlweDtcbiAgfVxuXG4gIC5zcXVhcmVfX3Byb2R1Y3Qge1xuICAgIG1heC13aWR0aDogMjAwcHg7XG4gICAgbWFyZ2luOiAwcHggYXV0bztcblxuICAgICYtLWVtcHR5IHtcbiAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRnYWxsZXJ5O1xuICAgICAgaGVpZ2h0OiAxNjdweDtcbiAgICB9XG4gIH1cblxuICAuc3F1YXJlX19pbWFnZSB7XG4gICAgYm9yZGVyOiA0cHggc29saWQgJGNvbnRlc3NhO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDE3NnB4O1xuXG4gICAgJi0tZm9jdXMge1xuICAgICAgYm9yZGVyOiA1cHggc29saWQgJGNvbnRlc3NhO1xuICAgIH1cblxuICAgICYtLWdyYXkge1xuICAgICAgYm9yZGVyOiAycHggc29saWQgJGdyYXk7XG4gICAgfVxuXG4gICAgJi5hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbnRlc3NhICFpbXBvcnRhbnQ7XG5cbiAgICAgIC5mbGFnIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAkY29udGVzc2EgIWltcG9ydGFudDtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRjb250ZXNzYSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC50aW1lLWNvbnRhaW5lciAudGltZS1jb250YWluZXJfX3RleHQsXG4gICAgICAubnVtYmVyLW9mLWJvdHRsZSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAucHJvZHVjdF9fZGVzY3JpcHRpb24ge1xuICAgIHBhZGRpbmctdG9wOiAxNXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDEzMHB4O1xuXG4gICAgJi0tZm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbnRlc3NhO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIGhlaWdodDogMTI1cHg7XG4gICAgfVxuXG4gICAgJi0tcGFuYWNoZSB7XG4gICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgfVxuICB9XG5cbiAgLnByb2R1Y3RfX2ltYWdlIHtcbiAgICBoZWlnaHQ6IDE2N3B4O1xuICAgIG1heC13aWR0aDogMTAwJTtcblxuICAgICYtLWZvY3VzIHtcbiAgICAgIG1heC13aWR0aDogMTU3cHg7XG4gICAgfVxuICB9XG5cbiAgLnByb2R1Y3RfX25hbWUge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBjb2xvcjogJGJvdWxkZXI7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICYtLWZvY3VzIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cbiAgfVxuXG4gIC5wcm9kdWN0X19wcmljZSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGNvbG9yOiAkYm91bGRlcjtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW46IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICB9XG5cbiAgLnByb2R1Y3RfX3NlbGVjdGlvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgIC5zZWxlY3Rpb25fX3ByaWNlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgY29sb3I6ICRib3VsZGVyO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuXG4gICAgICAmLS13YXdQcmljZSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xuICAgICAgfVxuXG4gICAgICAmLS1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnByb2R1Y3RfX3RleHQtZm9jdXMge1xuICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICYtLXdhd1ByaWNlIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAucHJvZHVjdF9fc3RhdGUge1xuICAgIGNvbG9yOiB2YXIoLS1iZy1jb2xvcik7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAucHJvZHVjdF9fdG9wLXRleHQge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIG1hcmdpbjogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAmLS10b3Atc2FsZXMge1xuICAgICAgY29sb3I6ICR0b3Atc2FsZXM7XG4gICAgfVxuXG4gICAgJi0tZmF2b3VyaXRlIHtcbiAgICAgIGNvbG9yOiAkZmF2b3VyaXRlO1xuICAgIH1cblxuICAgICYtLW5ldyB7XG4gICAgICBjb2xvcjogJG5ldztcbiAgICB9XG5cbiAgICAmLS1wcm9tbyB7XG4gICAgICBjb2xvcjogJHByb21vO1xuICAgIH1cblxuICAgICYtLXRvcC1tYXJnZSB7XG4gICAgICBjb2xvcjogJHRvcC1tYXJnZTtcbiAgICB9XG4gIH1cblxuICAucHJvZHVjdF9fYW5ub3RhdGlvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTE0cHg7XG4gICAgcmlnaHQ6IDE3cHg7XG4gIH1cblxuICBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuLmZpcnN0IHtcbiAgaGVpZ2h0OiA1NHB4O1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAzNnB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiB2YXIoLS1jZWxsYXJtYW5UaGVtZS1iZy1jb2xvcik7XG4gIHotaW5kZXg6IDI7XG59XG5cbi5yb3ctZmlyc3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTEyMHB4O1xufVxuXG4uZmlyc3QtZGVzY3JpcHRpb24ge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXN0cmV0Y2g6IGNvbmRlbnNlZDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogJGdyYXk7XG59XG5cbi5idXR0b24tY2VsbGFybWFuIHtcbiAgd2lkdGg6IDE2N3B4O1xuICBoZWlnaHQ6IDMxcHg7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcblxuICAmLS1yZWQge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY2VsbGFybWFuVGhlbWUtYmctY29sb3IpO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxuXG4gICYtLXRyYW5zcGFyZW50IHtcbiAgICBjb2xvcjogdmFyKC0tY2VsbGFybWFuVGhlbWUtYmctY29sb3IpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jZWxsYXJtYW5UaGVtZS1iZy1jb2xvcik7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggdmFyKC0tY2VsbGFybWFuVGhlbWUtYmctY29sb3IpO1xuICB9XG59XG5cbi5zZWxlY3Rpb24ge1xuICBtYXJnaW46IDBweCBhdXRvIDMxcHggYXV0bztcbn1cblxuLm51bWJlci1vZi1ib3R0bGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogMTZweDtcbiAgbWFyZ2luOiA1cHggMCAwIDRweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAkY29udGVzc2E7XG5cbiAgJi0tZ3JheSB7XG4gICAgY29sb3I6ICRncmF5O1xuICB9XG59XG5cbi50aW1lLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBtYXJnaW46IDQ2cHggMCAwIDRweDtcbiAgZGlzcGxheTogZmxleDtcblxuICAudGltZS1jb250YWluZXJfX3RpbWUge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1Db2xvcik7XG5cbiAgICAmLS1ncmF5IHtcbiAgICAgIGNvbG9yOiAkZG92ZS1ncmF5O1xuICAgIH1cbiAgfVxuXG4gIC50aW1lLWNvbnRhaW5lcl9fdGV4dCB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGNvbG9yOiAkY29udGVzc2E7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICAmLS1ncmF5IHtcbiAgICAgIGNvbG9yOiAkZ3JheTtcbiAgICB9XG4gIH1cbn1cblxuLmZsYWcge1xuICBoZWlnaHQ6IDIycHg7XG4gIGJhY2tncm91bmQ6ICRjb250ZXNzYTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIG1hcmdpbi10b3A6IDI0cHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIHBhZGRpbmc6IDAgMnB4O1xuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiAxMXB4IHNvbGlkICR3aGl0ZTtcbiAgICBib3JkZXItdG9wOiAxMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206IDExcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmLS1ncmF5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheTtcbiAgfVxuXG4gIC5mbGFnX190ZXh0IHtcbiAgICBtYXJnaW46IDAgMTVweCAwIDJweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICNsaW5lLWxlZnQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAubGluZSxcbiAgLmludGVuZE9yZGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogODAwcHgpIHtcbiAgI3NxdWFyZTQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDUyMHB4KSB7XG5cbiAgI3NxdWFyZTMsXG4gICNzcXVhcmU0IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59IiwiI2JvdHRsZS1zdGVwcy1hcnJheSB7XG4gIGNvbG9yOiAkdHVuZG9yYTtcbn1cblxuLndpbmVncm93ZXItcHJvZHVjdCB7XG4gIC5wcm9kdWN0LWZyYW5jaGlzZWQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLy8gQmFkZ2UgZGUgZHJhZnRcbi5kZXNjcmlwdGlvbl9fc3RhdGUge1xuICAuYmFkZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IGF1dG87XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiAjZmZjMTA3O1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIFxuICAgICY6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIFxuICAgIGkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtO1xuICAgIH1cbiAgfVxufVxuXG4vLyBCb3V0b24gZHJhZnQgZGFucyBsZXMgYWN0aW9uc1xuLnByb2R1Y3QtYWN0aW9ucyxcbi5zcGlyaXQtYWN0aW9ucyB7XG4gIC5idG4td2FybmluZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzEwNztcbiAgICBib3JkZXItY29sb3I6ICNmZmMxMDc7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZjYTJjO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjZmZjNzIwO1xuICAgICAgY29sb3I6ICMwMDA7XG4gICAgfVxuICB9XG59IiwiLm9yZGVyLWNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogNzVyZW07XG4gIC8vd2lkdGg6IDc1cmVtO1xuICBmb250LWZhbWlseTogJHJvYm90by1jb25kZW5zZWQ7XG4gIG1hcmdpbjogYXV0bztcblxuICBoMSB7XG4gICAgZm9udC1mYW1pbHk6ICRyb2JvdG8tY29uZGVuc2VkO1xuICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgIG1hcmdpbi10b3A6IDEuM3JlbTtcbiAgfVxuXG4gIGgyIHtcbiAgICBmb250LWZhbWlseTogJHJvYm90by1jb25kZW5zZWQ7XG4gICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgbWFyZ2luOiA0MC41cmVtIDEzLjVyZW0gNC4ycmVtO1xuICB9XG5cbiAgcCxcbiAgYSB7XG4gICAgY29sb3I6ICRib3VsZGVyO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1mYW1pbHk6ICRyb2JvdG8tY29uZGVuc2VkO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cblxuICAudGFibGUtaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gICAgbWFyZ2luLXRvcDogMi4zcmVtO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8bW9iaWxlLWxhcmdlXCIpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIHAsXG4gICAgc3BhbiB7XG4gICAgICBjb2xvcjogJGJvdWxkZXI7XG4gICAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICAgIGZvbnQtZmFtaWx5OiAkcm9ib3RvLWNvbmRlbnNlZDtcbiAgICB9XG5cbiAgICAudGFibGUtaGVhZGVyX19jb21tYW5kIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgJi0tc3RhdGUge1xuICAgICAgICBjb2xvcjogJGNvbnRlc3NhO1xuICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZS1oZWFkZXJfX3Byb2R1Y3Qge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAkYm91bGRlcjtcbiAgICAgICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkcm9ib3RvLWNvbmRlbnNlZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICB0aCB7XG4gICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1mYW1pbHk6ICRyb2JvdG8tY29uZGVuc2VkO1xuICAgIG1hcmdpbjogMC4ycmVtIDAgMCAxLjNyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogJHNpbHZlcjtcbiAgfVxuXG4gIC50YWJsZS1pbnRlbmRzLW9yZGVyLFxuICAudGFibGUtb3JkZXI+Om5vdChjYXB0aW9uKT4qIHtcbiAgICBib3JkZXItd2lkdGg6IDAuMDZyZW0gMDtcbiAgICBib3JkZXItY29sb3I6ICRkdXN0eS1ncmF5O1xuICB9XG5cbiAgLndpbmUtbmFtZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgZm9udC1mYW1pbHk6ICRyb2JvdG8tY29uZGVuc2VkO1xuICAgIGNvbG9yOiAkYm91bGRlcjtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICB3aWR0aDogNTAlO1xuXG4gICAgYSB7XG4gICAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICB9XG4gIH1cblxuICAucHJpY2Uge1xuICAgIGNvbG9yOiAkc2lsdmVyO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICB9XG5cbiAgLnF1YW50aXR5IHtcbiAgICBib3JkZXI6IHNvbGlkIDAuMDZyZW0gJHNpbHZlcjtcbiAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICBmb250LWZhbWlseTogJHJvYm90by1jb25kZW5zZWQ7XG4gICAgY29sb3I6ICRib3VsZGVyO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIHdpZHRoOiA0LjRyZW07XG4gIH1cblxuICAucXVhbnRpdHk6Zm9jdXMtdmlzaWJsZSB7XG4gICAgb3V0bGluZTogJHNpbHZlciBhdXRvIDAuMDZyZW07XG4gIH1cblxuICAud2F3LXByaWNlLFxuICAudGFibGUtaW50ZW5kcy1vcmRlcj50ZCB7XG4gICAgZm9udC1mYW1pbHk6ICRyb2JvdG8tY29uZGVuc2VkO1xuICAgIGNvbG9yOiAkY29udGVzc2E7XG4gICAgZm9udC1zaXplOiAwLjlyZW07XG4gIH1cblxuICAuYWRkcmVzcyxcbiAgLndhdy1wcmljZSxcbiAgLnRhYmxlLW9yZGVyPnRkIHtcbiAgICBmb250LWZhbWlseTogJHJvYm90by1jb25kZW5zZWQ7XG4gICAgY29sb3I6ICRib3VsZGVyO1xuICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICB0cjpsYXN0LWNoaWxkPnRkPjpub3QoLnRhYmxlLWNlbGwtdGV4dCk+KiB7XG4gICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1mYW1pbHk6ICRyb2JvdG8tY29uZGVuc2VkO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6ICRzaWx2ZXI7XG4gIH1cblxuICB0cjpsYXN0LWNoaWxkPnRkPi5vcmRlci1hY3Rpb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XG5cbiAgICAub3JkZXItcmVzZXQtYnV0dG9uIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxJTtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBwYWRkaW5nOiAxLjc1cmVtO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgfVxuXG4gICAgLm9yZGVyLWNoYW5nZS1idXR0b24ge1xuICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cblxuXG4gICAgLm9yZGVyLXZhbGlkYXRlLWJ1dHRvbiB7XG4gICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuICB9XG5cbiAgLnRhYmxlLW9yZGVyIHtcbiAgICB0cjpsYXN0LWNoaWxkPnRkIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyZW07XG4gICAgfVxuICB9XG5cbiAgLnRhYmxlLWludGVuZHMtb3JkZXIgdHI6bGFzdC1jaGlsZD50ZD5zdHJvbmcge1xuICAgIGNvbG9yOiAkY29udGVzc2E7XG4gIH1cblxuICAudGFibGUtaW50ZW5kcy1vcmRlciB0cjpsYXN0LWNoaWxkPi5jb250ZXNzYSB7XG4gICAgY29sb3I6ICRjb250ZXNzYTtcbiAgfVxuXG4gIC50YWJsZS1iaWxscyB7XG4gICAgQG1lZGlhKG1heC13aWR0aDogNjAwcHgpIHtcbiAgICAgIHdpZHRoOiA0NXJlbTtcbiAgICB9XG4gIH1cblxuICAudGFibGUtaW50ZW5kcy1vcmRlciB7XG4gICAgLmJ0biB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29udGVzc2E7XG4gICAgICBib3JkZXItY29sb3I6ICRjb250ZXNzYTtcbiAgICB9XG5cbiAgICAuYnRuLWRpc2FibGVkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzaWx2ZXI7XG4gICAgICBib3JkZXItY29sb3I6ICRzaWx2ZXI7XG4gICAgICBjb2xvcjogJGJvdWxkZXI7XG4gICAgICBjdXJzb3I6IGluaXRpYWw7XG4gICAgfVxuICB9XG5cbiAgLmRlbGl2ZXJ5IHtcbiAgICBtYXJnaW46IDAgMC41cmVtIDAgMDtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuXG4gIC5kZWxpdmVyeTEge1xuICAgIG1hcmdpbjogMCAwLjVyZW0gMCAwO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLmZvcm0tc2VsZWN0LWFkZHJlc3Mge1xuICAgIGZsb2F0OiByaWdodDsgLy9sZWZ0IGVuIG1vYmlsZVxuICAgIHdpZHRoOiA4MiU7XG4gICAgbWFyZ2luLXRvcDogMC42cmVtO1xuXG4gICAgLy9tYXJnaW46IDA7IC8vRW4gbW9iaWxlXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8dGFibGV0LWxhcmdlXCIpIHtcbiAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC5oaXN0b3J5IHtcbiAgICBtYXJnaW4tdG9wOiA0LjVyZW07XG4gIH1cblxuICB0cjpsYXN0LWNoaWxkPnRkPnN0cm9uZyB7XG4gICAgY29sb3I6ICR0dW5kb3JhO1xuICB9XG5cbiAgLnRhYmxlLWZvb3Rlci1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAuYnRuLW1peCB7XG4gICAgICB3aWR0aDogaW5pdGlhbDtcbiAgICAgIGhlaWdodDogaW5pdGlhbDtcbiAgICB9XG4gIH1cblxuICBzcGFuLnRhYmxlLWZvb3RlciB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjb2xvcjogJGJvdWxkZXI7XG4gIH1cblxuICBwLnRhYmxlLWZvb3RlciB7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBjb2xvcjogJGNvbnRlc3NhO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgfVxuXG4gIC5jb250ZXNzYSB7XG4gICAgY29sb3I6ICRjb250ZXNzYTtcbiAgfVxuXG4gIC5idG4tY29udGVzc2Ege1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb250ZXNzYTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG5cbiAgLmJ0bi1taXgge1xuICAgIHdpZHRoOiAxMC40NHJlbTtcbiAgICBoZWlnaHQ6IDEuOXJlbTtcbiAgICBmb250LWZhbWlseTogJHJvYm90by1jb25kZW5zZWQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiAwLjlyZW07XG4gIH1cblxuICAub3JkZXItc2VwYXJhdG9yIHtcbiAgICBib3JkZXItdG9wOiAwLjA2cmVtIHNvbGlkICRkdXN0eS1ncmF5O1xuICAgIG1hcmdpbjogMnJlbSBhdXRvO1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cblxuICAubW9yZS1wcm9kdWN0cy10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgY29sb3I6ICRtYWluLWNvbG9yO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cblxuICAucHktNCB7XG4gICAgbWFyZ2luOiBhdXRvO1xuICB9XG59XG5cbi50YWJsZS1iaWxsLW51bWJlciB7XG4gIHdpZHRoOiAyMGVtO1xufVxuXG4uYmlsbF9fZG93bmxvYWQge1xuICB3aWR0aDogMmVtO1xufVxuXG4uYmlsbF9fZG93bmxvYWQ6aG92ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbiNiaWxscyB7XG4gIC5vcmRlci1jb250YWluZXIge1xuICAgIHRyIHtcbiAgICAgIGhlaWdodDogM2VtO1xuICAgIH1cbiAgfVxufSIsIiNiaWxscyB7XG4gIC5zZXBhcmF0b3Ige1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZHVzdHktZ3JheTtcbiAgICBtYXJnaW46IDJyZW0gYXV0bztcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG4iLCIud2luZWdyb3dlci1mb3JtIHtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvcHVibGljL2ltYWdlcy93aW5lZ3Jvd2VyLWZvcm0vcS0xLXZpc3VlbC5wbmcnKTtcbiAgLnJvdyB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIH1cbiAgaDN7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5xdWVzdGlvbm5haXJlLXdyYXBwZXIge1xuICAgIHBhZGRpbmc6IDMwcHggMCAxMjVweCAwO1xuICB9XG4gIC5xdWVzdGlvbm5haXJlXG4gIHtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgYm94LXNoYWRvdzogMnB4IDJweCA0cHggMCByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgd2lkdGg6IDU3NnB4O1xuICAgIHBhZGRpbmc6IDE3cHggMjZweCAxNnB4IDI3cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNzBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8dGFibGV0LW1lZGl1bVwiKSB7XG4gICAgICB3aWR0aDogNDc2cHg7XG4gICAgfVxuICB9XG4gIC5kZXNjcmlwdGlvbi1mb3JtIHtcbiAgICBjb2xvcjogJGRpbS1ncmV5O1xuICAgIGgyIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgY29sb3I6ICRtYWluLWNvbG9yO1xuICAgIH1cbiAgICAudHh0V2VsY29tZSB7XG4gICAgICBjb2xvcjogJG1hbmRhcmluLXJlZDtcbiAgICB9XG4gIH1cbiAgLmZvcm0tcXVlc3Rpb25uYWlyZSB7XG4gICAgbGFiZWx7XG4gICAgICBjb2xvcjogJHR1bmRvcmE7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBsZWZ0OiAxNXB4O1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICB9XG4gIH1cbiAgLnN0ZXAge1xuICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBwYWRkaW5nOiAxMHB4IDEwcHggMCAwO1xuICAgIGNvbG9yOiAkcXVpY2tzaWx2ZXI7XG4gICAgc3BhbiB7XG4gICAgICBjb2xvcjogJG1haW4tY29sb3I7XG4gICAgfVxuICB9XG4gIC5zdGVwLWltZyB7XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgfVxuICAubGluay1kb3dubG9hZCB7XG4gICAgYSB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogJG1haW4tY29sb3I7XG4gICAgfVxuICAgIHNwYW57XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gICAgYTpob3ZlcntcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgfVxuICAuZXRhcGUtc3VpdmFudGUge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBwYWRkaW5nOiA2cHggNDBweCAhaW1wb3J0YW50O1xuICB9XG4gIC5tZW50aW9ucyB7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGNvbG9yOiAkZGltLWdyZXk7XG4gIH1cbi8vc3RlcCAyXG4gIC52aW50YWdlIHtcbiAgICBjb2xvcjogJHR1bmRvcmFcbiAgfVxuLy9zdGVwIDNcbiAgLnR4dFR1bmRvcmEge1xuICAgIGNvbG9yOiAkdHVuZG9yYTtcbiAgfVxuICAuc3VidGl0dGxlIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgY29sb3I6ICRtYWluLWNvbG9yO1xuICB9XG4vL3N0ZXAgNFxuICAuYm9yZGVyLXVuZGVybGluZXtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NkY2RjZDtcbiAgICB3aWR0aDogMjg5cHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8dGFibGV0LW1lZGl1bVwiKSB7XG4gICAgICB3aWR0aDogMjE1cHg7XG4gICAgfVxuICB9XG4gICNzdGVwLTR7XG4gICAgcGFkZGluZzogNnB4IDYwcHg7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICB9XG4gIC5jdXZlIHtcbiAgICBwIHtcbiAgICAgIGNvbG9yOiAkdHVuZG9yYTtcbiAgICB9XG4gICAgJl9fY3V2ZWUge1xuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBsYWJlbCB7XG4gICAgY29sb3I6ICR0dW5kb3JhO1xuICB9XG4gIC5zYXZlIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgcGFkZGluZzogNnB4IDkwcHg7XG4gIH1cbi8vIHN0ZXAgN1xuICAjc2l0ZSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICB9XG4vLyByYWRpb1R5cGUgYW5kIGNoZWNrYm94VHlwZVxuICAjd2luZWdyb3dlcl9mb3JtX3N0ZXAzX3NhbXBsZSB7XG4gICAgbGFiZWwge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbGVmdDogLTVweDtcbiAgICAgIGJvdHRvbTogMnB4O1xuICAgIH1cbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2Q1ZDVkNTtcbiAgICAgIGJhY2tncm91bmQtY2xpcDogY29udGVudC1ib3g7XG4gICAgICBwYWRkaW5nOiAycHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBtYXJnaW46IDAgMTVweDtcbiAgICB9XG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XG4gICAgICBib3JkZXItY29sb3I6ICRtYWluLWNvbG9yO1xuICAgIH1cbiAgfVxuICAjd2luZWdyb3dlcl9mb3JtX3N0ZXA1X2ludGVybmV0LCAjd2luZWdyb3dlcl9mb3JtX3N0ZXA1X2Rpc3RyaWJ1dGlvbixcbiAgI3dpbmVncm93ZXJfZm9ybV9zdGVwNV9lX2NvbW1lcmNlLCAjd2luZWdyb3dlcl9mb3JtX3N0ZXA1X2NoYWlucyB7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHggIWltcG9ydGFudDtcbiAgICBsYWJlbCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBsZWZ0OiAtNXB4O1xuICAgICAgYm90dG9tOiA1cHg7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2Q1ZDVkNTtcbiAgICAgIGJhY2tncm91bmQtY2xpcDogY29udGVudC1ib3g7XG4gICAgICBwYWRkaW5nOiAycHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBtYXJnaW46IDAgMTVweDtcbiAgICB9XG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XG4gICAgICBib3JkZXItY29sb3I6ICRtYWluLWNvbG9yO1xuICAgIH1cbiAgfVxuICAjd2luZWdyb3dlcl9mb3JtX3N0ZXA1X3dpbmVfY29uY2VybmVkXzEsICN3aW5lZ3Jvd2VyX2Zvcm1fc3RlcDVfd2luZV9jb25jZXJuZWRfMiB7XG4gICAgbGFiZWwge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbGVmdDogNDBweDtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBib3R0b206IDI1cHg7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICB3aWR0aDogMTdweDtcbiAgICAgIGhlaWdodDogMTdweDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjOWM5Yzk7XG4gICAgICBwYWRkaW5nOiAycHg7XG4gICAgICBtYXJnaW46IDAgMTVweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICB9XG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XG4gICAgICBib3JkZXItY29sb3I6ICRtYWluLWNvbG9yO1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAn4pyUJztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBib3R0b206IDVweDtcbiAgICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5zdWJtaXQtYnV0dG9ucyBkaXY6Zmlyc3QtY2hpbGR7XG4gIG1hcmdpbjogMCAxMHB4IDAgYXV0bztcbn1cblxuLnN1Ym1pdC1idXR0b25zIGRpdjpudGgtY2hpbGQoMm4pe1xuICBtYXJnaW46IGF1dG8gYXV0byBhdXRvIDEwcHg7ICBcbn1cbiIsIi52aW5leWFyZF9fc2FtcGxlLWJ0bntcbiAgbWFyZ2luOiBhdXRvO1xuICBwYWRkaW5nOiAwLjhyZW0gMnJlbTtcbiAgYm9yZGVyLXJhZGl1czogMzJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tdGV4dC1jb2xvcjtcbiAgY29sb3I6IHdoaXRlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiBpbml0aWFsO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgd2lkdGg6OS42cmVtO1xufVxuXG5cbi52aW5leWFyZHtcbiAgY29sb3I6ICRib3VsZGVyO1xufVxuXG4udmluZXlhcmRfX3NlcGFyYXRvcntcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRkdXN0eS1ncmF5O1xuICBtYXJnaW46IDFyZW0gYXV0bztcbiAgd2lkdGg6IDUwJTtcbn1cblxuLndpbmUtbGFiZWxle1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbi5zcXVhcmVfX3dpbmVncm93ZXJ7XG4gIEBtZWRpYShtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyIDFmcjtcbiAgfVxufVxuIiwiLm1haW50ZW5hbmNlX2NvbnRhaW5lcntcbiAgICBhe1xuICAgICAgICBjb2xvcjogJG1haW4tY29sb3I7XG4gICAgfVxuICAgIC5tYWludGVuYW5jZV9pbWcge1xuICAgICAgICBtYXJnaW46IDIwcHg7XG4gICAgICAgIG1heC13aWR0aDogMzUwcHg7XG4gICAgfVxuICAgIC5lcnJvci1hY3Rpb25ze1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cbiAgICBhLmJ0bi5idG4tcHJpbWFyeS5idG4tbGcge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgfVxufVxuXG4iLCIucHJvZHVjdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGNvbG9yOiAkYm91bGRlcjtcbiAgICBmb250LXNpemU6IDE0cHg7XG5cbiAgICBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICAgICAgY29sb3I6ICR0dW5kb3JhO1xuICAgIH1cblxuICAgIC5yZWNvbW1lbmRhdGUtY2lyY2xlIHtcbiAgICAgICAgLnJvdW5kZWQtY2lyY2xlIHtcbiAgICAgICAgICAgIG1hcmdpbjogMTBweCBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRleHQtZGFuZ2VyIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhKG1heC13aWR0aDogODAwcHgpIGFuZCAobWluLXdpZHRoOiA1NzBweCkge1xuICAgICAgICAgICAgLnJvdW5kZWQtY2lyY2xlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDEwcHggYXV0bztcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDYwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50ZXh0LWRhbmdlciB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wcm9kdWN0X19mbGV4IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPG1vYmlsZS1sYXJnZVwiKSB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8dGFibGV0LWxhcmdlXCIpIHtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLnByb2R1Y3RfX2Rpc3BsYXkge1xuICAgICAgICAgICAgZmxleDogMDtcblxuICAgICAgICAgICAgLnByb2R1Y3RfX2Rpc3BsYXlfX2ltYWdlLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgLnByb2R1Y3RfX2Rpc3BsYXlfX2ltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHNpbHZlcjtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDM1MHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPG1vYmlsZS1sYXJnZVwiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5wcm9kdWN0X19kaXNwbGF5X19pbWFnZS1hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDRweCBzb2xpZCAkY29udGVzc2E7XG5cbiAgICAgICAgICAgICAgICAgICAgJi0tZ3JheSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDRweCBzb2xpZCAkZ3JheTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5wcm9kdWN0X19kaXNwbGF5X19pbmZvIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDE1JTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcblxuICAgICAgICAgICAgICAgICAgICAubnVtYmVyLW9mLWJvdHRsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDAgMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBpbml0aWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb250ZXNzYTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJi0tZ3JheSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRncmF5O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmZsYWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbnRlc3NhO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAuZmxhZ19fdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDE3cHggc29saWQgI2ZmZmZmZjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxN3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDE3cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYtLWdyYXkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnRpbWUtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBpbml0aWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMCAxcmVtO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAudGltZS1jb250YWluZXJfX3RpbWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAudGltZS1jb250YWluZXJfX3RleHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5wcm9kdWN0X19kaXNwbGF5X19maWx0ZXIge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogLTEuMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogNXB4O1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGRvdmUtZ3JheTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdF9faW5mb3Mge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBmbGV4OiAwIDAgNTAlO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjx0YWJsZXQtbGFyZ2VcIikge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9kdWN0X19pbmZvc19fdmluZXlhcmQsXG4gICAgICAgICAgICAucHJvZHVjdF9faW5mb3NfX3JlZ2lvbiB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9kdWN0X19pbmZvc19fbmFtZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29udGVzc2E7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9kdWN0X19pbmZvc19feWVhciB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHJvZHVjdF9faW5mb3NfX2Rlc2NyaXB0aW9uLXRpdGxlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHJvZHVjdF9faW5mb3NfX3NhbXBsZS1idG4ge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjhyZW0gMnJlbTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzMnB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtYWluLXRleHQtY29sb3I7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByb2R1Y3RfX2luZm9zX19yZWNvbW1lbmRhdGlvbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDEycHggMDtcblxuICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbnRlc3NhO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogcmdiKDAgMCAwIC8gMjQlKSAwIDFweCA0cHg7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0NnB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQ2cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnByb2R1Y3RfX3Jldmlld3Mge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcblxuICAgICAgICAgICAgLnByb2R1Y3RfX3N0YXJzIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG5cbiAgICAgICAgICAgICAgICAuc3RhcnNfX2F1dGhvciB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnByb2R1Y3RfX3Jldmlld3MtbGlua3Mge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRib3VsZGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnByb2R1Y3RfX3JhdGluZyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucHJvZHVjdF9fcmF0aW5nIC5wcm9kdWN0X19zdGFycyB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA2cHg7XG4gICAgfVxuXG4gICAgLnByb2R1Y3RfX3Jldmlld3MtZm9ybSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWFzaGVsbDtcbiAgICAgICAgcGFkZGluZzogMTVweCAzNHB4IDI4cHggMzRweDtcbiAgICB9XG5cbiAgICAucHJvZHVjdF9fcmV2aWV3cy1hdXRob3Ige1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgY29sb3I6ICR0dW5kb3JhO1xuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0byAxMXB4IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucHJvZHVjdF9fc29sZC1vdXQge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAkY29udGVzc2E7XG4gICAgICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuXG4gICAgLnByb2R1Y3RfX2ZpbHRlciB7XG4gICAgICAgIGZsZXg6IDAgMCA3MCU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAjZWM1NTY5O1xuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYucHJvZHVjdF9fZmlsdGVyLWZhdm9yaXRlIHtcbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2Q0MmIyNTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYucHJvZHVjdF9fZmlsdGVyLW5ldyB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICM0MzY0MDA7XG5cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzQzNjQwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYucHJvZHVjdF9fZmlsdGVyLWRpc2NvdW50IHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2ZmYTIwMDtcblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZhMjAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5wcm9kdWN0X19maWx0ZXItdG9wIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzg2NWNhYztcblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjODY1Y2FjO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnByb2R1Y3RfX3NlcGFyYXRvciB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZHVzdHktZ3JheTtcbiAgICAgICAgbWFyZ2luOiAycmVtIGF1dG87XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgfVxuXG4gICAgLnByb2R1Y3RfX3NtYWxsLXNlcGFyYXRvciB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZHVzdHktZ3JheTtcbiAgICAgICAgbWFyZ2luOiAwLjNyZW0gYXV0bztcbiAgICAgICAgd2lkdGg6IDI1JTtcbiAgICB9XG5cbiAgICAucHJvZHVjdF9faW50ZW5kcy1pbmZvcyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBjb2xvcjogJGNvbnRlc3NhO1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDIxcHg7XG4gICAgICAgIH1cblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29udGVzc2E7XG4gICAgICAgIH1cblxuICAgICAgICAuZm9udC1zaXplLTE0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wcm9kdWN0X19pbnRlbmRzIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTkyLCAxMTYsIDk2LCAwLjEpO1xuICAgICAgICBtYXJnaW46IDAuNXJlbSAwO1xuICAgICAgICBwYWRkaW5nOiAxcmVtIDA7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8bW9iaWxlLWxhcmdlXCIpIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHggMTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICNwcmljaW5nLWxldmVsIHtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9kdWN0X19pbnRlbmRzLWZsZXgge1xuICAgICAgICAgICAgZmxleDogMCAwIDMzJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9kdWN0X19pbnRlbmRzX19iYW5uZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgICAgICB3aWR0aDogMTUwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjdyZW07XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMXJlbTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8bW9iaWxlLWxhcmdlXCIpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IC0xcmVtIGF1dG8gYXV0byBhdXRvO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHJvZHVjdF9faW50ZW5kc19fYmlnLXByaWNlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuXG4gICAgICAgICAgICAgICAgLnByb2R1Y3RfX2ludGVuZHNfX2JpZy1wcmljZS1udW1iZXIge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDgycHg7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29udGVzc2E7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5wcm9kdWN0X19pbnRlbmRzX19iaWctcHJpY2UtZXVyb3Mge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDQ4cHg7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29udGVzc2E7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTAuOHJlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAzMHB4IHNvbGlkIHJnYmEoMTkyLCAxMTYsIDk2LCAwLjEpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiA3NXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogNzVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9kdWN0X19pbnRlbmRzLWNvbnRlc3NhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29udGVzc2E7XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdF9faW50ZW5kc19fb3JkZXIge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIC5wcm9kdWN0X19pbnRlbmRzX19vcmRlci10aXRsZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRib3VsZGVyO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByb2R1Y3RfX2ludGVuZHNfX29yZGVyLWlucHV0LWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9kdWN0X19pbnRlbmRzX19vcmRlci1sYWJlbCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByb2R1Y3RfX2ludGVuZHNfX29yZGVyLWJvdHRsZXMge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNDJweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByb2R1Y3RfX2ludGVuZHNfX29yZGVyLWV1cm9zIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbnB1dCxcbiAgICAgICAgICAgIC5wcm9kdWN0X19pbnRlbmRzX19vcmRlci1ldXJvcyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4ycmVtO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA3cmVtO1xuICAgICAgICAgICAgICAgIGhlaWdodDogM3JlbTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJvdWxkZXI7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29udGVzc2E7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29udGVzc2E7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5idG4tZGlzYWJsZWQge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzaWx2ZXI7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkc2lsdmVyO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYm91bGRlcjtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IGluaXRpYWw7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucHJvZHVjdC1pbnRlbmQge1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE5MywgMTkzLCAxOTMsIDAuMSk7XG5cbiAgICAgICAgaDIsXG4gICAgICAgIGgyLnRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuXG4gICAgICAgICAgICAudGV4dC1yZWQge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29udGVzc2E7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJpZy1wcmljZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICAgICAgcGFkZGluZzogMS41cmVtIDJyZW07XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgICAgICAgICAgYm94LXNoYWRvdzogcmdiKDAgMCAwIC8gMjQlKSAwIDNweCA4cHg7XG4gICAgICAgICAgICAvKndpZHRoOiAxNTBweDsqL1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjxtb2JpbGUtbGFyZ2VcIikge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuNnJlbSAwLjhyZW07XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJpZy1wcmljZS1udW1iZXIge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogODJweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbnRlc3NhO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgICAgICAgICAgICAgJi5pbnRlbmQtYmxvY2sge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDcwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8bW9iaWxlLWxhcmdlXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJpZy1wcmljZS1ldXJvcyB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA0OHB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29udGVzc2E7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjxtb2JpbGUtbGFyZ2VcIikge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmJveC1pbmRlbmQge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogcmdiKDAgMCAwIC8gMjQlKSAwIDNweCA4cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjVyZW0gMnJlbTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgICAgIC8qd2lkdGg6IDE1MHB4OyovXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8bW9iaWxlLWxhcmdlXCIpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjZyZW0gMC44cmVtO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgICAgICAgICAvKndpZHRoOiAxMDBweDsqL1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm9wZXJhdG9yIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogOTBweDtcbiAgICAgICAgICAgIGNvbG9yOiAkY29udGVzc2E7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPG1vYmlsZS1sYXJnZVwiKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnByb2R1Y3RfX2ludGVuZHNfX29yZGVyIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgICAgICAgICAudGV4dC1yZWQge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29udGVzc2E7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4ycmVtO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4cmVtO1xuICAgICAgICAgICAgICAgIGhlaWdodDogM3JlbTtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzc4Nzg3ODtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzcmVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc2FtcGxlLWJ0biB7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjJyZW0gMnJlbTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogaW5pdGlhbDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuOTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi1wcmltYXJ5IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFpbi10ZXh0LWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtZ3JheSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E3YTdhNyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmJ0bi1kaXNhYmxlZCB7XG4gICAgICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAud3ctYm9yZGVyLWJvdHRvbSB7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzk3OTc5NztcbiAgICAgICAgICAgIG1hcmdpbjogMC40cmVtIGF1dG8gMnJlbTtcbiAgICAgICAgICAgIHdpZHRoOiA0MCU7XG4gICAgICAgIH1cblxuICAgICAgICAudGltZS1saW5lLXRleHQge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAzMnB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjxtb2JpbGUtbGFyZ2VcIikge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjdyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucGFuYWNoZS1pdGVtIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8bW9iaWxlLWxhcmdlXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjdyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnNlbGVjdGVkIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBkb3R0ZWQgJGNvbnRlc3NhICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDZweDtcblxuICAgICAgICAgICAgICAgIHAsXG4gICAgICAgICAgICAgICAgaW5wdXQuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb250ZXNzYSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHAuZmxhZ19fdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaW5wdXQuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbnRlc3NhICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLlRhcmlmLUNhdmlzdGUtMTAge1xuICAgICAgICB3aWR0aDogNjk4cHg7XG4gICAgICAgIGhlaWdodDogMjJweDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTFweCAycHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgZm9udC1zdHJldGNoOiBjb25kZW5zZWQ7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb2xvcjogIzczNzM3MztcblxuICAgICAgICAudGV4dC1zdHlsZS0xIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29udGVzc2E7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYmxvYyB7XG4gICAgICAgIHdpZHRoOiA2OThweDtcbiAgICAgICAgaGVpZ2h0OiA0NDNweDtcbiAgICAgICAgbWFyZ2luOiAxMXB4IDJweCAxN3B4IDA7XG4gICAgICAgIHBhZGRpbmc6IDMycHggMjBweCAyOXB4IDVweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxOTMsIDE5MywgMTkzLCAwLjEpO1xuICAgIH1cblxuICAgIC50ZXh0LXJlZCB7XG4gICAgICAgIGNvbG9yOiAkY29udGVzc2EgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuYmctcmVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbnRlc3NhICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmJnLXdoaXRlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5iZy1ncnktMTkzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxOTMsIDE5MywgMTkzLCAwLjEpICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmJvcmRlci1ncmV5IHtcbiAgICAgICAgYm9yZGVyOiBzb2xpZCAxcHggI2Q5ZDlkOTtcbiAgICB9XG5cbiAgICAucmVjLTU2eDExIHtcbiAgICAgICAgd2lkdGg6IDU2cHg7XG4gICAgICAgIGhlaWdodDogMTFweDtcbiAgICAgICAgbWFyZ2luOiA5cHggMnB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1LjVweDtcbiAgICB9XG5cbiAgICAucmVjLTU2eDExLWJvcmRlcmVkIHtcbiAgICAgICAgYm9yZGVyOiBzb2xpZCAxcHggI2Q5ZDlkOSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC50ZXh0LWJvbGQge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5iaWctcHJpY2Uge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgfVxuXG4gICAgLmJpZy1wcmljZS1udW1iZXIge1xuICAgICAgICBmb250LXNpemU6IDgycHg7XG4gICAgICAgIGNvbG9yOiAkY29udGVzc2E7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cblxuICAgIC5iaWctcHJpY2UtZXVyb3Mge1xuICAgICAgICBmb250LXNpemU6IDQ4cHg7XG4gICAgICAgIGNvbG9yOiAkY29udGVzc2E7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cblxuICAgIC5ib3gtaW5kZW5kIHtcbiAgICAgICAgYm94LXNoYWRvdzogcmdiKDAgMCAwIC8gMjQlKSAwIDNweCA4cHg7XG4gICAgICAgIHBhZGRpbmc6IDEuNXJlbSAycmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgIH1cblxuICAgIC5pbmxpbmUtYmxvY2sge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAucHJvZHVjdC1pbnRlbmQge1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gICAgICAgIGgyLFxuICAgICAgICBoMi50aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5vcGVyYXRvciB7XG4gICAgICAgICAgICBmb250LXNpemU6IDkwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAucHJpY2Uge1xuICAgICAgICAgICAgLy8gRW1wdHkgY2xhc3MgYXMgaW4gcHJvZHVjdGlvblxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnByb2R1Y3RfX2ludGVuZHNfX29yZGVyIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4ycmVtO1xuICAgICAgICAgICAgd2lkdGg6IDhyZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDNyZW07XG4gICAgICAgICAgICBjb2xvcjogIzc4Nzg3ODtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDNyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zYW1wbGUtYnRuIHtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAxLjJyZW0gMnJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBpbml0aWFsO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogMC45O1xuICAgICAgICB9XG5cbiAgICAgICAgJi1wcmltYXJ5IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtYWluLXRleHQtY29sb3IgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtZ3JheSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTdhN2E3ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYnRuLWRpc2FibGVkIHtcbiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5iYXNlbGluZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xMnB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnd3LWJvcmRlci1ib3R0b20ge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzk3OTc5NztcbiAgICAgICAgbWFyZ2luOiAwLjRyZW0gYXV0byAycmVtO1xuICAgICAgICB3aWR0aDogNDAlO1xuICAgIH1cblxuICAgIC5zcXVhcmUge1xuICAgICAgICAucHJvZHVjdF9fZGVzY3JpcHRpb24uaGlkZGVuIHtcbiAgICAgICAgICAgIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAjcHJvZHVjdC1wYW5hY2hlIHtcbiAgICAgICAgLnNxdWFyZSB7XG4gICAgICAgICAgICAuc3F1YXJlX19pbWFnZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wYW5hY2hlLWl0ZW0ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAmLnNlbGVjdGVkIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBkb3R0ZWQgJGNvbnRlc3NhICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDZweDtcblxuICAgICAgICAgICAgICAgIHAsXG4gICAgICAgICAgICAgICAgaW5wdXQuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb250ZXNzYSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHAuZmxhZ19fdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaW5wdXQuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbnRlc3NhICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnRpbWUtbGluZS10ZXh0IHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDMycHg7XG4gICAgfVxuXG4gICAgLnNxdWFyZV9fcHJvZHVjdCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6NzY3cHgpIHtcbiAgICAgICAgLmJveC1pbmRlbmQge1xuICAgICAgICAgICAgcGFkZGluZzogMC42cmVtIDAuOHJlbTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9kdWN0LWludGVuZCAub3BlcmF0b3Ige1xuICAgICAgICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmJpZy1wcmljZS1udW1iZXIuaW50ZW5kLWJsb2NrIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5iaWctcHJpY2UtbnVtYmVyLnByaWNlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5iaWctcHJpY2UtZXVyb3MuY2VudHMge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubW9kYWwge1xuICAgIGJveC1zaGFkb3c6IDAgMCAyMHB4IDRweCAkc2lsdmVyLWNoYWxpY2U7XG5cbiAgICAmLS1oaWRkZW4ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYtLXZpc2libGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgICYucHJvZHVjdC1tb2RhbCB7XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb250ZXNzYTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29udGVzc2E7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBpbml0aWFsO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAuNXJlbSAwO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb250ZXNzYTtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRjb250ZXNzYTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJ0bi1kaXNhYmxlZCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNpbHZlcjtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRzaWx2ZXI7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRib3VsZGVyO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogaW5pdGlhbDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudmFsaWRhdGUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9kdWN0LW1vZGFsX19mb3JtLWFkZHJlc3Mge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiA2cHggMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHR1bmRvcmE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9kdWN0LW1vZGFsX190YWJsZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgICAgIC5wcm9kdWN0LW1vZGFsX190YWJsZS1mbGV4IHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucHJvZHVjdC1tb2RhbF9fdGFibGUtcm93IHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAtMXB4IDAgMCAtMXB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkc2lsdmVyO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHR1bmRvcmE7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnByb2R1Y3QtbW9kYWxfX3RhYmxlLXByaWNlIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29udGVzc2E7XG5cbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGR1c3R5LWdyYXk7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByb2R1Y3QtbW9kYWxfX3dpbmUtbm9uZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9kdWN0LW1vZGFsX193aW5lIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRib3VsZGVyO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5wcm9kdWN0LW1vZGFsX193aW5lX190aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYm91bGRlcjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5wcm9kdWN0LW1vZGFsX193aW5lX19pbmZvIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucHJvZHVjdC1tb2RhbF9fd2luZS1mb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29udGVzc2E7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5wcm9kdWN0LW1vZGFsX193aW5lLXRvdGFsIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRib3VsZGVyO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9kdWN0LW1vZGFsX193aW5lLW51bWJlciB7XG4gICAgICAgICAgICAgICAgZmxleDogMCAwIDI1JTtcblxuICAgICAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHJvZHVjdC1tb2RhbF9fbGluayB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb250ZXNzYTtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogaW5pdGlhbDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByb2R1Y3QtbW9kYWxfX2FkanVzdCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgICAgIC5wcm9kdWN0LW1vZGFsX19hZGp1c3RfX3BhcmFncmFwaCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAzcHggc29saWQgJGNvbnRlc3NhO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJvdWxkZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbnRlc3NhO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHJvZHVjdC1tb2RhbF9fc2FtcGxlLWJ0biB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tdGV4dC1jb2xvcjtcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICNib3R0bGVzLXRvdGFsLXByaWNlLFxuICAgICAgICAgICAgI2JvdHRsZXMtdGV4dC1hZnRlciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgI2JvdHRsZXMtdG90YWwtcHJpY2Uge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYm91bGRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICNpbnRlbmQtc2VsZWN0LWFkZHJlc3Mge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNzYW1wbGUtbW9kYWwge1xuICAgIHRvcDogMTAlO1xuICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICBtYXgtaGVpZ2h0OiA4MCU7XG5cbiAgICBoMiB7XG4gICAgICAgIGNvbG9yOiAkbWFpbi10ZXh0LWNvbG9yO1xuICAgIH1cblxuICAgIC5idG4tZGlzYWJsZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2lsdmVyO1xuICAgICAgICBib3JkZXItY29sb3I6ICRzaWx2ZXI7XG4gICAgICAgIGNvbG9yOiAkYm91bGRlcjtcbiAgICAgICAgY3Vyc29yOiBpbml0aWFsO1xuICAgIH1cblxuICAgIC5zYW1wbGUtc3F1YXJlIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8bW9iaWxlLWxhcmdlXCIpIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zcXVhcmVfX3Byb2R1Y3Qge1xuICAgICAgICAgICAgJi5zYW1wbGUtc3F1YXJlX19wcm9kdWN0LWVtcHR5IHtcbiAgICAgICAgICAgICAgICAuc3F1YXJlX19pbWFnZSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2EyYTJhMjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuZmxhZyB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNhMmEyYTI7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLm51bWJlci1vZi1ib3R0bGUsXG4gICAgICAgICAgICAgICAgLnRpbWUtY29udGFpbmVyX190ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNhMmEyYTJcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAudGltZS1jb250YWluZXJfX3RpbWUge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJvdWxkZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZmxhZyB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbnRlc3NhO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZmxhZ19fdGV4dCB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubnVtYmVyLW9mLWJvdHRsZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb250ZXNzYTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNxdWFyZV9faW1hZ2Uge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogNHB4IHNvbGlkICRjb250ZXNzYTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDExcHggMjNweDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIC4xNSk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc3F1YXJlX19wcm9kdWN0X19jaGVja2JveC1pbnB1dCB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zcXVhcmVfX3Byb2R1Y3RfX2NoZWNrYm94LWNvbnRyb2wge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTJweDtcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkc2lsdmVyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc3F1YXJlX19wcm9kdWN0X19jaGVja2JveC1pbnB1dDpjaGVja2VkKy5zcXVhcmVfX3Byb2R1Y3RfX2NoZWNrYm94LWNvbnRyb2w6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICAgICAgd2lkdGg6IDc1JTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDc1JTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbnRlc3NhO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc3F1YXJlX19wcm9kdWN0X19jaGVja2JveC1sYWJlbCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwLjVyZW0gMCAwIDA7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc3F1YXJlX19wcm9kdWN0LXVuYXZhaWxhYmxlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gICAgICAgICAgICAgICAgY29sb3I6ICRib3VsZGVyO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByb2R1Y3RfX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogNXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogaW5pdGlhbDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByb2R1Y3RfX3Jldmlldy1udW1iZXIge1xuICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMXB4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHR1bmRvcmE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnRhYmxlLXJvd2xvbCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRkdXN0eS1ncmF5O1xuICAgIH1cblxuICAgICNzYW1wbGUtbW9kYWwtc2Vjb25kIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi5zcXVhcmVfX3Byb2R1Y3Q6aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmJ0bi1yZXZpZXcge1xuICAgIG1hcmdpbjogMTJweCBhdXRvIDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5yZXZpZXctc3RhcnMge1xuICAgIG1hcmdpbi1sZWZ0OiA1MHB4O1xufVxuXG4vLyBGYWlyZSBkaXNwYXJhaXRyZSBsJ2lucHV0IHNhbnMgZmFpcmUgZGUgZGlzcGxheTpub25lIChwb3VyIGxlIGZvcm0pXG4uY3VzdG9tLWZpbGUtaW5wdXQge1xuICAgIHdpZHRoOiAwLjFweDtcbiAgICBoZWlnaHQ6IDAuMXB4O1xuICAgIG9wYWNpdHk6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogLTE7XG59XG5cbiNjb3B5RW1haWxCdG4ge1xuICAgIGZvbnQtc2l6ZTogMC44NzVlbTtcbn0iLCIvKiBSw6ljYXBpdHVsYXRpZiBtb2Rlcm5lIHBvdXIgbGUgcGFuYWNoYWdlIGRlIHNwaXJpdHVldXggKi9cbi5wYW5hY2hlLXN1bW1hcnktbW9kZXJuIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgYm94LXNoYWRvdzogMCA2cHggMzBweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlcjogMnB4IHNvbGlkICNmOGY5ZmE7XG59XG5cbi5zdW1tYXJ5LWhlYWRlciB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNmOGY5ZmEsICNlOWVjZWYpO1xuICBwYWRkaW5nOiAyMHB4IDI0cHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGVlMmU2O1xuXG4gIGg0IHtcbiAgICBjb2xvcjogIzMzMztcbiAgICBmb250LXdlaWdodDogNjAwO1xuICB9XG5cbiAgaSB7XG4gICAgY29sb3I6ICNkYzM1NDU7XG4gIH1cbn1cblxuLnN1bW1hcnktY29udGVudCB7XG4gIHBhZGRpbmc6IDI0cHg7XG59XG5cbi5zdW1tYXJ5LXN0YXQge1xuICBiYWNrZ3JvdW5kOiAjZjhmOWZhO1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICBwYWRkaW5nOiAyMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlOWVjZWY7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG5cbiAgJjpob3ZlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xuICAgIGJveC1zaGFkb3c6IDAgNHB4IDE1cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICB9XG59XG5cbi5zdGF0LWljb24ge1xuICBmb250LXNpemU6IDI0cHg7XG4gIGNvbG9yOiAjNjY2O1xuICBtYXJnaW4tYm90dG9tOiA4cHg7XG59XG5cbi5zdGF0LW51bWJlciB7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICMzMzM7XG4gIG1hcmdpbi1ib3R0b206IDRweDtcbn1cblxuLnN0YXQtbGFiZWwge1xuICBmb250LXNpemU6IDEycHg7XG4gIGNvbG9yOiAjNjY2O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5wcm9ncmVzcy1zZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogI2Y4ZjlmYTtcbiAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgcGFkZGluZzogMTZweDtcbn1cblxuLnByb2dyZXNzIHtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xufVxuXG4ucHJvZ3Jlc3MtYmFyIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjZGMzNTQ1LCAjMjhhNzQ1KTtcbiAgdHJhbnNpdGlvbjogd2lkdGggMC40cyBlYXNlO1xufVxuXG4vLyBDYXJ0ZXMgc3Bpcml0dWV1eCBjb21wYWN0ZXMgKGxheW91dCBob3Jpem9udGFsKVxuLnBhbmFjaGUtaXRlbS1jb21wYWN0IHtcbiAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcblxuICAmLnNlbGVjdGVkIHtcbiAgICAuc3Bpcml0LWNhcmQtY29tcGFjdCB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZjhmZGY5O1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMjhhNzQ1O1xuICAgIH1cbiAgfVxufVxuXG4uc3Bpcml0LWNhcmQtY29tcGFjdCB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlOWVjZWY7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgcGFkZGluZzogMC43NXJlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcblxuICAmOmhvdmVyIHtcbiAgICBib3gtc2hhZG93OiAwIDJweCA4cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICB9XG59XG5cbi5zcGlyaXQtcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAxcmVtO1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi5zcGlyaXQtYmFzaWMtaW5mbyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMC41cmVtO1xuICBmbGV4OiAxIDEgMjAwcHg7XG4gIG1pbi13aWR0aDogMjAwcHg7XG5cbiAgLnNwaXJpdC1pbWFnZS1zbWFsbCB7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gIH1cblxuICAuc3Bpcml0LXRleHQge1xuICAgIGZsZXg6IDE7XG4gICAgXG4gICAgLnNwaXJpdC1uYW1lLWNvbXBhY3Qge1xuICAgICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgY29sb3I6ICMyYzNlNTA7XG4gICAgICBtYXJnaW46IDAgMCAwLjJyZW0gMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgfVxuXG4gICAgLmRpc3RpbGxlcnktY29tcGFjdCB7XG4gICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC4zcmVtO1xuICAgIH1cblxuICAgIC5zcGlyaXQtYmFkZ2VzLWlubGluZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZ2FwOiAwLjI1cmVtO1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAuYmFkZ2UtbWluaSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNlOWVjZWY7XG4gICAgICAgIGNvbG9yOiAjNDk1MDU3O1xuICAgICAgICBmb250LXNpemU6IDAuNnJlbTtcbiAgICAgICAgcGFkZGluZzogMC4xcmVtIDAuM3JlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uc3Bpcml0LXByaWNpbmctY29tcGFjdCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZmxleDogMCAwIGF1dG87XG4gIFxuICAubWFpbi1wcmljZS1jb21wYWN0IHtcbiAgICBzbWFsbCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogMC42NXJlbTtcbiAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC4xcmVtO1xuICAgIH1cblxuICAgIHN0cm9uZyB7XG4gICAgICBjb2xvcjogIzI4YTc0NTtcbiAgICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB9XG4gIH1cblxuICAuc3RvY2stY29tcGFjdCB7XG4gICAgbWFyZ2luLXRvcDogMC4ycmVtO1xuICAgIGZvbnQtc2l6ZTogMC43cmVtO1xuXG4gICAgLm51bWJlci1vZi1ib3R0bGUge1xuICAgICAgY29sb3I6ICMyOGE3NDU7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgIH1cblxuICAgIC5zdG9jay1sYWJlbCB7XG4gICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICB9XG4gIH1cbn1cblxuLnNwaXJpdC1xdWFudGl0eS1jb21wYWN0IHtcbiAgZmxleDogMCAwIGF1dG87XG5cbiAgLnF1YW50aXR5LWlucHV0LWNvbXBhY3Qge1xuICAgIHdpZHRoOiA2MHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTllY2VmO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBwYWRkaW5nOiAwLjNyZW0gMC4ycmVtO1xuICAgIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICMyOGE3NDU7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAwLjFyZW0gcmdiYSg0MCwgMTY3LCA2OSwgMC4yNSk7XG4gICAgfVxuICB9XG59XG5cbi5zcGlyaXQtbmV4dC1sZXZlbC1jb21wYWN0IHtcbiAgZmxleDogMCAwIGF1dG87XG4gIG1pbi13aWR0aDogMTIwcHg7XG5cbiAgLm5leHQtY29tcGFjdCB7XG4gICAgZm9udC1zaXplOiAwLjY1cmVtO1xuICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG5cbiAgICAubmV4dC1sZXZlbC1pbnRlbmQtYm90dGxlcyB7XG4gICAgICBjb2xvcjogIzAwN2JmZjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxuXG4gICAgLm5leHQtbGV2ZWwtaW50ZW5kLXByaWNlIHtcbiAgICAgIGNvbG9yOiAjMjhhNzQ1O1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB9XG4gIH1cbn1cblxuLyogUmVzcG9uc2l2ZSAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5zdW1tYXJ5LWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDE2cHg7XG4gIH1cbiAgXG4gIC5zdW1tYXJ5LWhlYWRlciB7XG4gICAgcGFkZGluZzogMTZweDtcbiAgfVxuICBcbiAgLnN0YXQtbnVtYmVyIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gIH1cbiAgXG4gIC5zdGF0LWljb24ge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgfVxuXG4gIC8vIExheW91dCBjb21wYWN0IHJlc3BvbnNpdmVcbiAgLnNwaXJpdC1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiAwLjVyZW07XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIH1cblxuICAuc3Bpcml0LWJhc2ljLWluZm8ge1xuICAgIG1pbi13aWR0aDogYXV0bztcbiAgICBmbGV4OiBub25lO1xuICB9XG5cbiAgLnNwaXJpdC1wcmljaW5nLWNvbXBhY3QsXG4gIC5zcGlyaXQtcXVhbnRpdHktY29tcGFjdCxcbiAgLnNwaXJpdC1uZXh0LWxldmVsLWNvbXBhY3Qge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtaW4td2lkdGg6IGF1dG87XG4gIH1cblxuICAuc3Bpcml0LW5leHQtbGV2ZWwtY29tcGFjdCB7XG4gICAgLm5leHQtY29tcGFjdCB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuc3Bpcml0LWJhc2ljLWluZm8ge1xuICAgIC5zcGlyaXQtdGV4dCB7XG4gICAgICAuc3Bpcml0LW5hbWUtY29tcGFjdCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgICAgfVxuXG4gICAgICAuZGlzdGlsbGVyeS1jb21wYWN0IHtcbiAgICAgICAgZm9udC1zaXplOiAwLjdyZW07XG4gICAgICB9XG5cbiAgICAgIC5zcGlyaXQtYmFkZ2VzLWlubGluZSB7XG4gICAgICAgIC5iYWRnZS1taW5pIHtcbiAgICAgICAgICBmb250LXNpemU6IDAuNTVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc3Bpcml0LXByaWNpbmctY29tcGFjdCB7XG4gICAgLm1haW4tcHJpY2UtY29tcGFjdCBzdHJvbmcge1xuICAgICAgZm9udC1zaXplOiAwLjhyZW07XG4gICAgfVxuICB9XG5cbiAgLnF1YW50aXR5LWlucHV0LWNvbXBhY3Qge1xuICAgIHdpZHRoOiA1MHB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbn0iLCIuZm9vdGVyLWNvbnRhaW5lciB7XG4gIHBhZGRpbmc6IDI1cHg7XG4gIG1hcmdpbi10b3A6IGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZWJkNztcbiAgd2lkdGg6IDEwMCU7XG4gIGEge1xuICAgIG1hcmdpbjogMXJlbTtcbiAgICBjb2xvcjogdmFyKC0tYmctY29sb3IpO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LWZhbWlseTogJ1JvYm90byBDb25kZW5zZWQnLCBzYW5zLXNlcmlmO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuICBpbWcge1xuICAgIG1hcmdpbjogMXJlbTtcbiAgICB3aWR0aDogMTUycHg7XG4gIH1cbiAgLmxlbW9ud2F5LWNyZWRlbnRpYWxze1xuICAgIGF7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBmb250LXNpemU6IDlweDtcbiAgICB9XG4gICAgZm9udC1zaXplOiA5cHg7XG4gIH1cbiAgLndlYXJld2luZS12ZXJzaW9ue1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGNvbG9yOiBncmF5O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA4MDBweCkge1xuICAuZm9vdGVyLWNvbnRhaW5lciB7XG4gICAgZGl2e1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICB9XG4gICAgYSB7XG4gICAgICBtYXJnaW46IDAuNXJlbTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxuICogU29tZSBzcMOpY2lmaWNzIHN0eWxlcyBvZiBsb2dpbiBjb21wb25lbnRcbiAqL1xuI2xvZ2luQ29tcG9uZW50IHtcbiAgbWF4LXdpZHRoOiA1MDBweDtcblxuICBwIHtcbiAgICBmb250LWZhbWlseTogJHJvYm90by1yZWd1bGFyO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gICAgY29sb3I6ICRtYWluLXRleHQtY29sb3I7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgYSB7XG4gICAgICBjb2xvcjogJG1haW4tdGV4dC1jb2xvcjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgIH1cblxuICAgICYucGFzc3dvcmQge1xuICAgICAgYSB7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGJ1dHRvblt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IGF1dG8gYXV0byAxMHB4O1xuICB9XG5cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDMwMHB4O1xuICAgIG1hcmdpbjogM3JlbSBhdXRvIDNyZW0gYXV0bztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufSIsIi8qKlxuICogU29tZSBzcMOpY2lmaWNzIHN0eWxlcyBvZiBwYXNzd29yZCBmb3Jnb3RcbiAqL1xuI3Bhc3N3b3JkRm9yZ290Q29tcG9uZW50e1xuICBtYXgtd2lkdGg6IDUwMHB4O1xuICBwe1xuICAgIGZvbnQtZmFtaWx5OiAkcm9ib3RvLXJlZ3VsYXI7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICBjb2xvcjogJG1haW4tdGV4dC1jb2xvcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYXtcbiAgICAgIGNvbG9yOiAkbWFpbi10ZXh0LWNvbG9yO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuICB9XG5cbiAgYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl17XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiBhdXRvIGF1dG87XG4gIH1cblxuICBpbWd7XG4gICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgICBtYXJnaW46IDNyZW0gYXV0byAzcmVtIGF1dG87XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICBocntcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwuMjApO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogM3JlbSBhdXRvO1xuICB9XG4gIGEgaXtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgfVxufVxuIiwiLyoqXG4gKiBTb21lIHNww6ljaWZpY3Mgc3R5bGVzIG9mIHBhc3N3b3JkIGZvcmdvdCBmb3JtXG4gKi9cbiNwYXNzd29yZEZvcmdvdEZvcm1Db21wb25lbnR7XG4gIG1heC13aWR0aDogNTUwcHg7XG4gIHB7XG4gICAgZm9udC1mYW1pbHk6JHJvYm90by1yZWd1bGFyO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gICAgY29sb3I6ICRtYWluLXRleHQtY29sb3I7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGF7XG4gICAgICBjb2xvcjogJG1haW4tdGV4dC1jb2xvcjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgfVxuXG4gIGJ1dHRvblt0eXBlPVwic3VibWl0XCJde1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogYXV0byBhdXRvO1xuICB9XG5cbiAgaW1ne1xuICAgIG1heC13aWR0aDogMzAwcHg7XG4gICAgbWFyZ2luOiAzcmVtIGF1dG8gM3JlbSBhdXRvO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgaHJ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsLjIwKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDNyZW0gYXV0bztcbiAgfVxuICBhIGl7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gIH1cbn1cbiIsIi8qKlxuICogU29tZSBzcMOpY2lmaWNzIHN0eWxlcyBvZiBuYXZiYXJcbiAqL1xuXG5cblxubmF2Lndhdy1uYXZiYXIge1xuICBoZWlnaHQ6IDEyMHB4O1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIEBpbmNsdWRlIG1lZGlhKFwiPHRhYmxldC1tZWRpdW1cIikge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAjbG9nby1kZXNrdG9wIHtcbiAgICBoZWlnaHQ6IDExMHB4O1xuICAgIEBpbmNsdWRlIG1lZGlhKFwiPHRhYmxldC1tZWRpdW1cIikge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgI2xvZ28tbW9iaWxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIEBpbmNsdWRlIG1lZGlhKFwiPHRhYmxldC1tZWRpdW1cIikge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgIHdpZHRoOiAyMzBweDtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIH1cbiAgfVxuICB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaSB7XG4gICAgICBtYXgtd2lkdGg6IDkwcHg7XG4gICAgICBAaW5jbHVkZSBtZWRpYShcIjxtb2JpbGUtbGFyZ2VcIikge1xuICAgICAgICBtYXJnaW4tbGVmdDogMC40ZW0gIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjRlbSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgYSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgY29sb3I6ICRzaWx2ZXI7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAkYW5pbVRpbWUgJGFuaW1TdHlsZTtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8dGFibGV0LW1lZGl1bVwiKSB7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmJhZGdlIHtcbiAgICAgICAgICB0b3A6IC0xMHB4O1xuICAgICAgICB9XG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgcGF0aCB7XG4gICAgICAgICAgICBmaWxsOiAkc2lsdmVyO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsICRhbmltVGltZSAkYW5pbVN0eWxlO1xuICAgICAgICAgIH1cbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgIH1cbiAgICAgICAgLm5hdi10ZXh0IHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgIGhlaWdodDogNXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCAkYW5pbVRpbWUgJGFuaW1TdHlsZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjx0YWJsZXQtbWVkaXVtXCIpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAkYW5pbVRpbWUgJGFuaW1TdHlsZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgYS5hY3RpdmUsXG4gICAgICBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRtYWluLWNvbG9yO1xuICAgICAgICBzdmcge1xuICAgICAgICAgIHBhdGh7XG4gICAgICAgICAgICBmaWxsOiAkbWFpbi1jb2xvcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubmF2LXRleHQge1xuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBhOmhvdmVyIHtcbiAgICAgICAgLm5hdi10ZXh0IHtcbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjx0YWJsZXQtbWVkaXVtXCIpIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxuICogUHJvZmlsIGluZm9zIHBhcnRcbiAqL1xuLnByb2ZpbGUtaW5mb3Mge1xuICBmaWd1cmUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTY5cHg7XG4gICAgaGVpZ2h0OiAxNjlweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGltZyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB3aWR0aDogMTU1cHg7XG4gICAgICBoZWlnaHQ6IDE1NXB4O1xuICAgICAgYm9yZGVyOiAycHggc29saWQgJHdoaXRlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICB6LWluZGV4OiAyO1xuICAgIH1cbiAgfVxuICBwe1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgY29sb3I6ICRib3VsZGVyO1xuICB9XG4gIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIH1cbn1cbiIsIiNtb3JlX3Byb2R1Y3RzIHtcbiAgLm1vcmUtcHJvZHVjdHMtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICBjb2xvcjogJG1haW4tY29sb3I7XG4gIH1cbiAgJiBhIHtcbiAgICBjb2xvcjogJG1haW4tdGV4dC1jb2xvcjtcbiAgfVxufVxuIiwiLyoqXG4gKiBTaW5nbGUgYXJ0aWNsZSBwYXJ0XG4gKi9cbi5zaW5nbGUtYXJ0aWNsZSB7XG4gIEBpbmNsdWRlIG1lZGlhKFwiPG1vYmlsZS1sYXJnZVwiKSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlXG4gIH1cblxuICBoMyB7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIG1hcmdpbjogMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC5zaW5nbGUtYXJ0aWNsZS1zdWJ0aXRsZSB7XG4gICAgY29sb3I6ICR0dW5kb3JhO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgPmZpZ3VyZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogMjUwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIGltZyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgfVxuICB9XG5cbiAgLy8gU3R5bGVzIHBvdXIgbGVzIGRlc2NyaXB0aW9ucyBkZSBwcsOpdmlzdWFsaXNhdGlvblxuICAjc2luZ2xlLWFydGljbGUtZGVzY3JpcHRpb24taGlzdG9yeSxcbiAgI3NpbmdsZS1hcnRpY2xlLWRlc2NyaXB0aW9uLFxuICAjc2luZ2xlLWFydGljbGUtZGVzY3JpcHRpb24td2luZXMsXG4gICNzaW5nbGUtYXJ0aWNsZS1kZXNjcmlwdGlvbi1zcGlyaXRzIHtcbiAgICB3aGl0ZS1zcGFjZTogcHJlLWxpbmU7XG4gIH1cbn0iLCIudGVybXMge1xuICBtYXJnaW46IDJyZW07XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC1mYW1pbHk6ICRyb2JvdG8tY29uZGVuc2VkO1xuICBoMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgIGNvbG9yOiBibGFjaztcbiAgfVxuICBoMyB7XG4gICAgY29sb3I6IGJsYWNrO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgdGhlYWQsIHRib2R5LCB0ciwgdGQsIHRoIHtcbiAgICBib3JkZXItd2lkdGg6IDFweDtcbiAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgfVxuXG4gIHRhYmxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG5cbiAgdHIgPiB0aCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjRmMTtcbiAgfVxuXG4gIC50ZXJtc19fYm9yZGVyLWRpdiB7XG4gICAgbWFyZ2luOiAxcmVtO1xuICAgIHBhZGRpbmc6IDFyZW0gMXJlbSAxcmVtIDJyZW07XG4gICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCB2YXIoLS1iZy1jb2xvcik7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==*/