/*!****************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** 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/base.scss ***!
  \****************************************************************************************************************************************************************************************************************************************************************************/
@import url(https://fonts.googleapis.com/css?family=Roboto:400,100,100italic,300,300italic,400italic,500,500italic,700,700italic,900italic,900);
/*!********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** 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/base.scss (1) ***!
  \********************************************************************************************************************************************************************************************************************************************************************************/
@import url(https://fonts.googleapis.com/css?family=Roboto:400,100,100italic,300,300italic,400italic,500,500italic,700,700italic,900italic,900);
/*!********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** 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/base.scss (2) ***!
  \********************************************************************************************************************************************************************************************************************************************************************************/
@import url(https://fonts.googleapis.com/css2?family=League+Spartan:wght@300;400;500;700;900&family=Open+Sans:ital,wght@0,300;0,500;0,700;1,300;1,500;1,700&display=swap);
/*!********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** 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/base.scss (3) ***!
  \********************************************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
/*!
 * Bootstrap  v5.2.3 (https://getbootstrap.com/)
 * Copyright 2011-2022 The Bootstrap Authors
 * Copyright 2011-2022 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-black: #000;
  --bs-white: #fff;
  --bs-gray: #6c757d;
  --bs-gray-dark: #343a40;
  --bs-gray-100: #f8f9fa;
  --bs-gray-200: #e9ecef;
  --bs-gray-300: #dee2e6;
  --bs-gray-400: #ced4da;
  --bs-gray-500: #adb5bd;
  --bs-gray-600: #6c757d;
  --bs-gray-700: #495057;
  --bs-gray-800: #343a40;
  --bs-gray-900: #212529;
  --bs-primary: #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", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
  --bs-body-font-family: 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;
  --bs-border-width: 1px;
  --bs-border-style: solid;
  --bs-border-color: #dee2e6;
  --bs-border-color-translucent: rgba(0, 0, 0, 0.175);
  --bs-border-radius: 0.375rem;
  --bs-border-radius-sm: 0.25rem;
  --bs-border-radius-lg: 0.5rem;
  --bs-border-radius-xl: 1rem;
  --bs-border-radius-2xl: 2rem;
  --bs-border-radius-pill: 50rem;
  --bs-link-color: #0d6efd;
  --bs-link-hover-color: #0a58ca;
  --bs-code-color: #d63384;
  --bs-highlight-bg: #fff3cd;
}

*,
*::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;
  border: 0;
  border-top: 1px solid;
  opacity: 0.25;
}

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

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] {
  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.1875em;
  background-color: var(--bs-highlight-bg);
}

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

a {
  color: var(--bs-link-color);
  text-decoration: underline;
}
a:hover {
  color: var(--bs-link-hover-color);
}

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

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

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

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

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

figure {
  margin: 0 0 1rem;
}

img,
svg {
  vertical-align: middle;
}

table {
  caption-side: bottom;
  border-collapse: collapse;
}

caption {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  color: #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]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator {
  display: none !important;
}

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

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

textarea {
  resize: vertical;
}

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

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

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

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

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

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

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

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

output {
  display: inline-block;
}

iframe {
  border: 0;
}

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

progress {
  vertical-align: baseline;
}

[hidden] {
  display: none !important;
}

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

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

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

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

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

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

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

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

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

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

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

.blockquote {
  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 var(--bs-border-color);
  border-radius: 0.375rem;
  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 {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  width: 100%;
  padding-right: calc(var(--bs-gutter-x) * 0.5);
  padding-left: calc(var(--bs-gutter-x) * 0.5);
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 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-color: var(--bs-body-color);
  --bs-table-bg: transparent;
  --bs-table-border-color: var(--bs-border-color);
  --bs-table-accent-bg: transparent;
  --bs-table-striped-color: var(--bs-body-color);
  --bs-table-striped-bg: rgba(0, 0, 0, 0.05);
  --bs-table-active-color: var(--bs-body-color);
  --bs-table-active-bg: rgba(0, 0, 0, 0.1);
  --bs-table-hover-color: var(--bs-body-color);
  --bs-table-hover-bg: rgba(0, 0, 0, 0.075);
  width: 100%;
  margin-bottom: 1rem;
  color: var(--bs-table-color);
  vertical-align: top;
  border-color: var(--bs-table-border-color);
}
.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-group-divider {
  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-striped-columns > :not(caption) > tr > :nth-child(even) {
  --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-color: #000;
  --bs-table-bg: #cfe2ff;
  --bs-table-border-color: #bacbe6;
  --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: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-secondary {
  --bs-table-color: #000;
  --bs-table-bg: #e2e3e5;
  --bs-table-border-color: #cbccce;
  --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: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-success {
  --bs-table-color: #000;
  --bs-table-bg: #d1e7dd;
  --bs-table-border-color: #bcd0c7;
  --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: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-info {
  --bs-table-color: #000;
  --bs-table-bg: #cff4fc;
  --bs-table-border-color: #badce3;
  --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: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-warning {
  --bs-table-color: #000;
  --bs-table-bg: #fff3cd;
  --bs-table-border-color: #e6dbb9;
  --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: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-danger {
  --bs-table-color: #000;
  --bs-table-bg: #f8d7da;
  --bs-table-border-color: #dfc2c4;
  --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: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-light {
  --bs-table-color: #000;
  --bs-table-bg: #f8f9fa;
  --bs-table-border-color: #dfe0e1;
  --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: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-dark {
  --bs-table-color: #fff;
  --bs-table-bg: #212529;
  --bs-table-border-color: #373b3e;
  --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: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

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

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

.col-form-label {
  padding-top: calc(0.375rem + 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.375rem;
  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 {
  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-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:focus {
  outline: 0;
}
.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {
  padding-right: 0;
  padding-left: 0;
}

.form-control-sm {
  min-height: calc(1.5em + 0.5rem + 2px);
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  border-radius: 0.25rem;
}
.form-control-sm::file-selector-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.5rem;
}
.form-control-lg::file-selector-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: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem;
}
.form-control-color:not(:disabled):not([readonly]) {
  cursor: pointer;
}
.form-control-color::-moz-color-swatch {
  border: 0 !important;
  border-radius: 0.375rem;
}
.form-control-color::-webkit-color-swatch {
  border-radius: 0.375rem;
}
.form-control-color.form-control-sm {
  height: calc(1.5em + 0.5rem + 2px);
}
.form-control-color.form-control-lg {
  height: calc(1.5em + 1rem + 2px);
}

.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 5 6 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.375rem;
  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.25rem;
}

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

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

.form-check-reverse {
  padding-right: 1.5em;
  padding-left: 0;
  text-align: right;
}
.form-check-reverse .form-check-input {
  float: right;
  margin-right: -1.5em;
  margin-left: 0;
}

.form-check-input {
  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;
  print-color-adjust: exact;
}
.form-check-input[type=checkbox] {
  border-radius: 0.25em;
}
.form-check-input[type=radio] {
  border-radius: 50%;
}
.form-check-input:active {
  filter: brightness(90%);
}
.form-check-input:focus {
  border-color: #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 10 3 3 6-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 {
  cursor: default;
  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-switch.form-check-reverse {
  padding-right: 2.5em;
  padding-left: 0;
}
.form-switch.form-check-reverse .form-check-input {
  margin-right: -2.5em;
  margin-left: 0;
}

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

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

.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-control-plaintext,
.form-floating > .form-select {
  height: calc(3.5rem + 2px);
  line-height: 1.25;
}
.form-floating > label {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 1rem 0.75rem;
  overflow: hidden;
  text-align: start;
  text-overflow: ellipsis;
  white-space: nowrap;
  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,
.form-floating > .form-control-plaintext {
  padding: 1rem 0.75rem;
}
.form-floating > .form-control::placeholder,
.form-floating > .form-control-plaintext::placeholder {
  color: transparent;
}
.form-floating > .form-control:focus, .form-floating > .form-control:not(:placeholder-shown),
.form-floating > .form-control-plaintext:focus,
.form-floating > .form-control-plaintext:not(:placeholder-shown) {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}
.form-floating > .form-control:-webkit-autofill,
.form-floating > .form-control-plaintext:-webkit-autofill {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}
.form-floating > .form-select {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}
.form-floating > .form-control:focus ~ label,
.form-floating > .form-control:not(:placeholder-shown) ~ label,
.form-floating > .form-control-plaintext ~ 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);
}
.form-floating > .form-control-plaintext ~ label {
  border-width: 1px 0;
}

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

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

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

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

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

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

.valid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 0.875em;
  color: #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.375rem;
}

.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.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z%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 5 6 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.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z%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-control-color:valid, .form-control-color.is-valid {
  width: calc(3rem + calc(1.5em + 0.75rem));
}

.was-validated .form-check-input:valid, .form-check-input.is-valid {
  border-color: #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:not(:focus):valid, .input-group > .form-control:not(:focus).is-valid,
.was-validated .input-group > .form-select:not(:focus):valid,
.input-group > .form-select:not(:focus).is-valid,
.was-validated .input-group > .form-floating:not(:focus-within):valid,
.input-group > .form-floating:not(:focus-within).is-valid {
  z-index: 3;
}

.invalid-feedback {
  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.375rem;
}

.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 5 6 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-control-color:invalid, .form-control-color.is-invalid {
  width: calc(3rem + calc(1.5em + 0.75rem));
}

.was-validated .form-check-input:invalid, .form-check-input.is-invalid {
  border-color: #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:not(:focus):invalid, .input-group > .form-control:not(:focus).is-invalid,
.was-validated .input-group > .form-select:not(:focus):invalid,
.input-group > .form-select:not(:focus).is-invalid,
.was-validated .input-group > .form-floating:not(:focus-within):invalid,
.input-group > .form-floating:not(:focus-within).is-invalid {
  z-index: 4;
}

.btn {
  --bs-btn-padding-x: 0.75rem;
  --bs-btn-padding-y: 0.375rem;
  --bs-btn-font-family: ;
  --bs-btn-font-size: 1rem;
  --bs-btn-font-weight: 400;
  --bs-btn-line-height: 1.5;
  --bs-btn-color: #212529;
  --bs-btn-bg: transparent;
  --bs-btn-border-width: 1px;
  --bs-btn-border-color: transparent;
  --bs-btn-border-radius: 0.375rem;
  --bs-btn-hover-border-color: transparent;
  --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
  --bs-btn-disabled-opacity: 0.65;
  --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);
  display: inline-block;
  padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
  font-family: var(--bs-btn-font-family);
  font-size: var(--bs-btn-font-size);
  font-weight: var(--bs-btn-font-weight);
  line-height: var(--bs-btn-line-height);
  color: var(--bs-btn-color);
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  cursor: pointer;
  user-select: none;
  border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);
  border-radius: var(--bs-btn-border-radius);
  background-color: var(--bs-btn-bg);
  transition: 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 {
    transition: none;
  }
}
.btn:hover {
  color: var(--bs-btn-hover-color);
  background-color: var(--bs-btn-hover-bg);
  border-color: var(--bs-btn-hover-border-color);
}
.btn-check + .btn:hover {
  color: var(--bs-btn-color);
  background-color: var(--bs-btn-bg);
  border-color: var(--bs-btn-border-color);
}
.btn:focus-visible {
  color: var(--bs-btn-hover-color);
  background-color: var(--bs-btn-hover-bg);
  border-color: var(--bs-btn-hover-border-color);
  outline: 0;
  box-shadow: var(--bs-btn-focus-box-shadow);
}
.btn-check:focus-visible + .btn {
  border-color: var(--bs-btn-hover-border-color);
  outline: 0;
  box-shadow: var(--bs-btn-focus-box-shadow);
}
.btn-check:checked + .btn, :not(.btn-check) + .btn:active, .btn:first-child:active, .btn.active, .btn.show {
  color: var(--bs-btn-active-color);
  background-color: var(--bs-btn-active-bg);
  border-color: var(--bs-btn-active-border-color);
}
.btn-check:checked + .btn:focus-visible, :not(.btn-check) + .btn:active:focus-visible, .btn:first-child:active:focus-visible, .btn.active:focus-visible, .btn.show:focus-visible {
  box-shadow: var(--bs-btn-focus-box-shadow);
}
.btn:disabled, .btn.disabled, fieldset:disabled .btn {
  color: var(--bs-btn-disabled-color);
  pointer-events: none;
  background-color: var(--bs-btn-disabled-bg);
  border-color: var(--bs-btn-disabled-border-color);
  opacity: var(--bs-btn-disabled-opacity);
}

.btn-primary {
  --bs-btn-color: #fff;
  --bs-btn-bg: #0d6efd;
  --bs-btn-border-color: #0d6efd;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #0b5ed7;
  --bs-btn-hover-border-color: #0a58ca;
  --bs-btn-focus-shadow-rgb: 49, 132, 253;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #0a58ca;
  --bs-btn-active-border-color: #0a53be;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #0d6efd;
  --bs-btn-disabled-border-color: #0d6efd;
}

.btn-secondary {
  --bs-btn-color: #fff;
  --bs-btn-bg: #6c757d;
  --bs-btn-border-color: #6c757d;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #5c636a;
  --bs-btn-hover-border-color: #565e64;
  --bs-btn-focus-shadow-rgb: 130, 138, 145;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #565e64;
  --bs-btn-active-border-color: #51585e;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #6c757d;
  --bs-btn-disabled-border-color: #6c757d;
}

.btn-success {
  --bs-btn-color: #fff;
  --bs-btn-bg: #198754;
  --bs-btn-border-color: #198754;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #157347;
  --bs-btn-hover-border-color: #146c43;
  --bs-btn-focus-shadow-rgb: 60, 153, 110;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #146c43;
  --bs-btn-active-border-color: #13653f;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #198754;
  --bs-btn-disabled-border-color: #198754;
}

.btn-info {
  --bs-btn-color: #000;
  --bs-btn-bg: #0dcaf0;
  --bs-btn-border-color: #0dcaf0;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: #31d2f2;
  --bs-btn-hover-border-color: #25cff2;
  --bs-btn-focus-shadow-rgb: 11, 172, 204;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #3dd5f3;
  --bs-btn-active-border-color: #25cff2;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #000;
  --bs-btn-disabled-bg: #0dcaf0;
  --bs-btn-disabled-border-color: #0dcaf0;
}

.btn-warning {
  --bs-btn-color: #000;
  --bs-btn-bg: #ffc107;
  --bs-btn-border-color: #ffc107;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: #ffca2c;
  --bs-btn-hover-border-color: #ffc720;
  --bs-btn-focus-shadow-rgb: 217, 164, 6;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #ffcd39;
  --bs-btn-active-border-color: #ffc720;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #000;
  --bs-btn-disabled-bg: #ffc107;
  --bs-btn-disabled-border-color: #ffc107;
}

.btn-danger {
  --bs-btn-color: #fff;
  --bs-btn-bg: #dc3545;
  --bs-btn-border-color: #dc3545;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #bb2d3b;
  --bs-btn-hover-border-color: #b02a37;
  --bs-btn-focus-shadow-rgb: 225, 83, 97;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #b02a37;
  --bs-btn-active-border-color: #a52834;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #dc3545;
  --bs-btn-disabled-border-color: #dc3545;
}

.btn-light {
  --bs-btn-color: #000;
  --bs-btn-bg: #f8f9fa;
  --bs-btn-border-color: #f8f9fa;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: #d3d4d5;
  --bs-btn-hover-border-color: #c6c7c8;
  --bs-btn-focus-shadow-rgb: 211, 212, 213;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #c6c7c8;
  --bs-btn-active-border-color: #babbbc;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #000;
  --bs-btn-disabled-bg: #f8f9fa;
  --bs-btn-disabled-border-color: #f8f9fa;
}

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

.btn-outline-primary {
  --bs-btn-color: #0d6efd;
  --bs-btn-border-color: #0d6efd;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #0d6efd;
  --bs-btn-hover-border-color: #0d6efd;
  --bs-btn-focus-shadow-rgb: 13, 110, 253;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #0d6efd;
  --bs-btn-active-border-color: #0d6efd;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #0d6efd;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #0d6efd;
  --bs-gradient: none;
}

.btn-outline-secondary {
  --bs-btn-color: #6c757d;
  --bs-btn-border-color: #6c757d;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #6c757d;
  --bs-btn-hover-border-color: #6c757d;
  --bs-btn-focus-shadow-rgb: 108, 117, 125;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #6c757d;
  --bs-btn-active-border-color: #6c757d;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #6c757d;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #6c757d;
  --bs-gradient: none;
}

.btn-outline-success {
  --bs-btn-color: #198754;
  --bs-btn-border-color: #198754;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #198754;
  --bs-btn-hover-border-color: #198754;
  --bs-btn-focus-shadow-rgb: 25, 135, 84;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #198754;
  --bs-btn-active-border-color: #198754;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #198754;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #198754;
  --bs-gradient: none;
}

.btn-outline-info {
  --bs-btn-color: #0dcaf0;
  --bs-btn-border-color: #0dcaf0;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: #0dcaf0;
  --bs-btn-hover-border-color: #0dcaf0;
  --bs-btn-focus-shadow-rgb: 13, 202, 240;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #0dcaf0;
  --bs-btn-active-border-color: #0dcaf0;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #0dcaf0;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #0dcaf0;
  --bs-gradient: none;
}

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

.btn-outline-danger {
  --bs-btn-color: #dc3545;
  --bs-btn-border-color: #dc3545;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #dc3545;
  --bs-btn-hover-border-color: #dc3545;
  --bs-btn-focus-shadow-rgb: 220, 53, 69;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #dc3545;
  --bs-btn-active-border-color: #dc3545;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #dc3545;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #dc3545;
  --bs-gradient: none;
}

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

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

.btn-link {
  --bs-btn-font-weight: 400;
  --bs-btn-color: var(--bs-link-color);
  --bs-btn-bg: transparent;
  --bs-btn-border-color: transparent;
  --bs-btn-hover-color: var(--bs-link-hover-color);
  --bs-btn-hover-border-color: transparent;
  --bs-btn-active-color: var(--bs-link-hover-color);
  --bs-btn-active-border-color: transparent;
  --bs-btn-disabled-color: #6c757d;
  --bs-btn-disabled-border-color: transparent;
  --bs-btn-box-shadow: none;
  --bs-btn-focus-shadow-rgb: 49, 132, 253;
  text-decoration: underline;
}
.btn-link:focus-visible {
  color: var(--bs-btn-color);
}
.btn-link:hover {
  color: var(--bs-btn-hover-color);
}

.btn-lg, .btn-group-lg > .btn {
  --bs-btn-padding-y: 0.5rem;
  --bs-btn-padding-x: 1rem;
  --bs-btn-font-size: 1.25rem;
  --bs-btn-border-radius: 0.5rem;
}

.btn-sm, .btn-group-sm > .btn {
  --bs-btn-padding-y: 0.25rem;
  --bs-btn-padding-x: 0.5rem;
  --bs-btn-font-size: 0.875rem;
  --bs-btn-border-radius: 0.25rem;
}

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

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

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

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

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

.dropdown-menu {
  --bs-dropdown-zindex: 1000;
  --bs-dropdown-min-width: 10rem;
  --bs-dropdown-padding-x: 0;
  --bs-dropdown-padding-y: 0.5rem;
  --bs-dropdown-spacer: 0.125rem;
  --bs-dropdown-font-size: 1rem;
  --bs-dropdown-color: #212529;
  --bs-dropdown-bg: #fff;
  --bs-dropdown-border-color: var(--bs-border-color-translucent);
  --bs-dropdown-border-radius: 0.375rem;
  --bs-dropdown-border-width: 1px;
  --bs-dropdown-inner-border-radius: calc(0.375rem - 1px);
  --bs-dropdown-divider-bg: var(--bs-border-color-translucent);
  --bs-dropdown-divider-margin-y: 0.5rem;
  --bs-dropdown-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  --bs-dropdown-link-color: #212529;
  --bs-dropdown-link-hover-color: #1e2125;
  --bs-dropdown-link-hover-bg: #e9ecef;
  --bs-dropdown-link-active-color: #fff;
  --bs-dropdown-link-active-bg: #0d6efd;
  --bs-dropdown-link-disabled-color: #adb5bd;
  --bs-dropdown-item-padding-x: 1rem;
  --bs-dropdown-item-padding-y: 0.25rem;
  --bs-dropdown-header-color: #6c757d;
  --bs-dropdown-header-padding-x: 1rem;
  --bs-dropdown-header-padding-y: 0.5rem;
  position: absolute;
  z-index: var(--bs-dropdown-zindex);
  display: none;
  min-width: var(--bs-dropdown-min-width);
  padding: var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);
  margin: 0;
  font-size: var(--bs-dropdown-font-size);
  color: var(--bs-dropdown-color);
  text-align: left;
  list-style: none;
  background-color: var(--bs-dropdown-bg);
  background-clip: padding-box;
  border: var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);
  border-radius: var(--bs-dropdown-border-radius);
}
.dropdown-menu[data-bs-popper] {
  top: 100%;
  left: 0;
  margin-top: var(--bs-dropdown-spacer);
}

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

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

@media (min-width: 576px) {
  .dropdown-menu-sm-start {
    --bs-position: start;
  }
  .dropdown-menu-sm-start[data-bs-popper] {
    right: auto;
    left: 0;
  }
  .dropdown-menu-sm-end {
    --bs-position: end;
  }
  .dropdown-menu-sm-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
@media (min-width: 768px) {
  .dropdown-menu-md-start {
    --bs-position: start;
  }
  .dropdown-menu-md-start[data-bs-popper] {
    right: auto;
    left: 0;
  }
  .dropdown-menu-md-end {
    --bs-position: end;
  }
  .dropdown-menu-md-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
@media (min-width: 992px) {
  .dropdown-menu-lg-start {
    --bs-position: start;
  }
  .dropdown-menu-lg-start[data-bs-popper] {
    right: auto;
    left: 0;
  }
  .dropdown-menu-lg-end {
    --bs-position: end;
  }
  .dropdown-menu-lg-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
@media (min-width: 1200px) {
  .dropdown-menu-xl-start {
    --bs-position: start;
  }
  .dropdown-menu-xl-start[data-bs-popper] {
    right: auto;
    left: 0;
  }
  .dropdown-menu-xl-end {
    --bs-position: end;
  }
  .dropdown-menu-xl-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
@media (min-width: 1400px) {
  .dropdown-menu-xxl-start {
    --bs-position: start;
  }
  .dropdown-menu-xxl-start[data-bs-popper] {
    right: auto;
    left: 0;
  }
  .dropdown-menu-xxl-end {
    --bs-position: end;
  }
  .dropdown-menu-xxl-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
.dropup .dropdown-menu[data-bs-popper] {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: var(--bs-dropdown-spacer);
}
.dropup .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0;
  border-right: 0.3em solid transparent;
  border-bottom: 0.3em solid;
  border-left: 0.3em solid transparent;
}
.dropup .dropdown-toggle:empty::after {
  margin-left: 0;
}

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

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

.dropdown-divider {
  height: 0;
  margin: var(--bs-dropdown-divider-margin-y) 0;
  overflow: hidden;
  border-top: 1px solid var(--bs-dropdown-divider-bg);
  opacity: 1;
}

.dropdown-item {
  display: block;
  width: 100%;
  padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);
  clear: both;
  font-weight: 400;
  color: var(--bs-dropdown-link-color);
  text-align: inherit;
  text-decoration: none;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
}
.dropdown-item:hover, .dropdown-item:focus {
  color: var(--bs-dropdown-link-hover-color);
  background-color: var(--bs-dropdown-link-hover-bg);
}
.dropdown-item.active, .dropdown-item:active {
  color: var(--bs-dropdown-link-active-color);
  text-decoration: none;
  background-color: var(--bs-dropdown-link-active-bg);
}
.dropdown-item.disabled, .dropdown-item:disabled {
  color: var(--bs-dropdown-link-disabled-color);
  pointer-events: none;
  background-color: transparent;
}

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

.dropdown-header {
  display: block;
  padding: var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);
  margin-bottom: 0;
  font-size: 0.875rem;
  color: var(--bs-dropdown-header-color);
  white-space: nowrap;
}

.dropdown-item-text {
  display: block;
  padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);
  color: var(--bs-dropdown-link-color);
}

.dropdown-menu-dark {
  --bs-dropdown-color: #dee2e6;
  --bs-dropdown-bg: #343a40;
  --bs-dropdown-border-color: var(--bs-border-color-translucent);
  --bs-dropdown-box-shadow: ;
  --bs-dropdown-link-color: #dee2e6;
  --bs-dropdown-link-hover-color: #fff;
  --bs-dropdown-divider-bg: var(--bs-border-color-translucent);
  --bs-dropdown-link-hover-bg: rgba(255, 255, 255, 0.15);
  --bs-dropdown-link-active-color: #fff;
  --bs-dropdown-link-active-bg: #0d6efd;
  --bs-dropdown-link-disabled-color: #adb5bd;
  --bs-dropdown-header-color: #adb5bd;
}

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

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

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

.dropdown-toggle-split {
  padding-right: 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 {
  padding-right: 0.375rem;
  padding-left: 0.375rem;
}

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

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

.nav {
  --bs-nav-link-padding-x: 1rem;
  --bs-nav-link-padding-y: 0.5rem;
  --bs-nav-link-font-weight: ;
  --bs-nav-link-color: var(--bs-link-color);
  --bs-nav-link-hover-color: var(--bs-link-hover-color);
  --bs-nav-link-disabled-color: #6c757d;
  display: flex;
  flex-wrap: wrap;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.nav-link {
  display: block;
  padding: var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);
  font-size: var(--bs-nav-link-font-size);
  font-weight: var(--bs-nav-link-font-weight);
  color: var(--bs-nav-link-color);
  text-decoration: none;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .nav-link {
    transition: none;
  }
}
.nav-link:hover, .nav-link:focus {
  color: var(--bs-nav-link-hover-color);
}
.nav-link.disabled {
  color: var(--bs-nav-link-disabled-color);
  pointer-events: none;
  cursor: default;
}

.nav-tabs {
  --bs-nav-tabs-border-width: 1px;
  --bs-nav-tabs-border-color: #dee2e6;
  --bs-nav-tabs-border-radius: 0.375rem;
  --bs-nav-tabs-link-hover-border-color: #e9ecef #e9ecef #dee2e6;
  --bs-nav-tabs-link-active-color: #495057;
  --bs-nav-tabs-link-active-bg: #fff;
  --bs-nav-tabs-link-active-border-color: #dee2e6 #dee2e6 #fff;
  border-bottom: var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color);
}
.nav-tabs .nav-link {
  margin-bottom: calc(-1 * var(--bs-nav-tabs-border-width));
  background: none;
  border: var(--bs-nav-tabs-border-width) solid transparent;
  border-top-left-radius: var(--bs-nav-tabs-border-radius);
  border-top-right-radius: var(--bs-nav-tabs-border-radius);
}
.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
  isolation: isolate;
  border-color: var(--bs-nav-tabs-link-hover-border-color);
}
.nav-tabs .nav-link.disabled, .nav-tabs .nav-link:disabled {
  color: var(--bs-nav-link-disabled-color);
  background-color: transparent;
  border-color: transparent;
}
.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: var(--bs-nav-tabs-link-active-color);
  background-color: var(--bs-nav-tabs-link-active-bg);
  border-color: var(--bs-nav-tabs-link-active-border-color);
}
.nav-tabs .dropdown-menu {
  margin-top: calc(-1 * var(--bs-nav-tabs-border-width));
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.nav-pills {
  --bs-nav-pills-border-radius: 0.375rem;
  --bs-nav-pills-link-active-color: #fff;
  --bs-nav-pills-link-active-bg: #0d6efd;
}
.nav-pills .nav-link {
  background: none;
  border: 0;
  border-radius: var(--bs-nav-pills-border-radius);
}
.nav-pills .nav-link:disabled {
  color: var(--bs-nav-link-disabled-color);
  background-color: transparent;
  border-color: transparent;
}
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  color: var(--bs-nav-pills-link-active-color);
  background-color: var(--bs-nav-pills-link-active-bg);
}

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

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

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

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

.navbar {
  --bs-navbar-padding-x: 0;
  --bs-navbar-padding-y: 0.5rem;
  --bs-navbar-color: rgba(0, 0, 0, 0.55);
  --bs-navbar-hover-color: rgba(0, 0, 0, 0.7);
  --bs-navbar-disabled-color: rgba(0, 0, 0, 0.3);
  --bs-navbar-active-color: rgba(0, 0, 0, 0.9);
  --bs-navbar-brand-padding-y: 0.3125rem;
  --bs-navbar-brand-margin-end: 1rem;
  --bs-navbar-brand-font-size: 1.25rem;
  --bs-navbar-brand-color: rgba(0, 0, 0, 0.9);
  --bs-navbar-brand-hover-color: rgba(0, 0, 0, 0.9);
  --bs-navbar-nav-link-padding-x: 0.5rem;
  --bs-navbar-toggler-padding-y: 0.25rem;
  --bs-navbar-toggler-padding-x: 0.75rem;
  --bs-navbar-toggler-font-size: 1.25rem;
  --bs-navbar-toggler-icon-bg: 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");
  --bs-navbar-toggler-border-color: rgba(0, 0, 0, 0.1);
  --bs-navbar-toggler-border-radius: 0.375rem;
  --bs-navbar-toggler-focus-width: 0.25rem;
  --bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: var(--bs-navbar-padding-y) var(--bs-navbar-padding-x);
}
.navbar > .container,
.navbar > .container-fluid,
.navbar > .container-sm,
.navbar > .container-md,
.navbar > .container-lg,
.navbar > .container-xl,
.navbar > .container-xxl {
  display: flex;
  flex-wrap: inherit;
  align-items: center;
  justify-content: space-between;
}
.navbar-brand {
  padding-top: var(--bs-navbar-brand-padding-y);
  padding-bottom: var(--bs-navbar-brand-padding-y);
  margin-right: var(--bs-navbar-brand-margin-end);
  font-size: var(--bs-navbar-brand-font-size);
  color: var(--bs-navbar-brand-color);
  text-decoration: none;
  white-space: nowrap;
}
.navbar-brand:hover, .navbar-brand:focus {
  color: var(--bs-navbar-brand-hover-color);
}

.navbar-nav {
  --bs-nav-link-padding-x: 0;
  --bs-nav-link-padding-y: 0.5rem;
  --bs-nav-link-font-weight: ;
  --bs-nav-link-color: var(--bs-navbar-color);
  --bs-nav-link-hover-color: var(--bs-navbar-hover-color);
  --bs-nav-link-disabled-color: var(--bs-navbar-disabled-color);
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}
.navbar-nav .show > .nav-link,
.navbar-nav .nav-link.active {
  color: var(--bs-navbar-active-color);
}
.navbar-nav .dropdown-menu {
  position: static;
}

.navbar-text {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  color: var(--bs-navbar-color);
}
.navbar-text a,
.navbar-text a:hover,
.navbar-text a:focus {
  color: var(--bs-navbar-active-color);
}

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

.navbar-toggler {
  padding: var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);
  font-size: var(--bs-navbar-toggler-font-size);
  line-height: 1;
  color: var(--bs-navbar-color);
  background-color: transparent;
  border: var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);
  border-radius: var(--bs-navbar-toggler-border-radius);
  transition: var(--bs-navbar-toggler-transition);
}
@media (prefers-reduced-motion: reduce) {
  .navbar-toggler {
    transition: none;
  }
}
.navbar-toggler:hover {
  text-decoration: none;
}
.navbar-toggler:focus {
  text-decoration: none;
  outline: 0;
  box-shadow: 0 0 0 var(--bs-navbar-toggler-focus-width);
}

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

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

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

.navbar-dark {
  --bs-navbar-color: rgba(255, 255, 255, 0.55);
  --bs-navbar-hover-color: rgba(255, 255, 255, 0.75);
  --bs-navbar-disabled-color: rgba(255, 255, 255, 0.25);
  --bs-navbar-active-color: #fff;
  --bs-navbar-brand-color: #fff;
  --bs-navbar-brand-hover-color: #fff;
  --bs-navbar-toggler-border-color: rgba(255, 255, 255, 0.1);
  --bs-navbar-toggler-icon-bg: 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");
}

.card {
  --bs-card-spacer-y: 1rem;
  --bs-card-spacer-x: 1rem;
  --bs-card-title-spacer-y: 0.5rem;
  --bs-card-border-width: 1px;
  --bs-card-border-color: var(--bs-border-color-translucent);
  --bs-card-border-radius: 0.375rem;
  --bs-card-box-shadow: ;
  --bs-card-inner-border-radius: calc(0.375rem - 1px);
  --bs-card-cap-padding-y: 0.5rem;
  --bs-card-cap-padding-x: 1rem;
  --bs-card-cap-bg: rgba(0, 0, 0, 0.03);
  --bs-card-cap-color: ;
  --bs-card-height: ;
  --bs-card-color: ;
  --bs-card-bg: #fff;
  --bs-card-img-overlay-padding: 1rem;
  --bs-card-group-margin: 0.75rem;
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  height: var(--bs-card-height);
  word-wrap: break-word;
  background-color: var(--bs-card-bg);
  background-clip: border-box;
  border: var(--bs-card-border-width) solid var(--bs-card-border-color);
  border-radius: var(--bs-card-border-radius);
}
.card > hr {
  margin-right: 0;
  margin-left: 0;
}
.card > .list-group {
  border-top: inherit;
  border-bottom: inherit;
}
.card > .list-group:first-child {
  border-top-width: 0;
  border-top-left-radius: var(--bs-card-inner-border-radius);
  border-top-right-radius: var(--bs-card-inner-border-radius);
}
.card > .list-group:last-child {
  border-bottom-width: 0;
  border-bottom-right-radius: var(--bs-card-inner-border-radius);
  border-bottom-left-radius: var(--bs-card-inner-border-radius);
}
.card > .card-header + .list-group,
.card > .list-group + .card-footer {
  border-top: 0;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.accordion {
  --bs-accordion-color: #212529;
  --bs-accordion-bg: #fff;
  --bs-accordion-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;
  --bs-accordion-border-color: var(--bs-border-color);
  --bs-accordion-border-width: 1px;
  --bs-accordion-border-radius: 0.375rem;
  --bs-accordion-inner-border-radius: calc(0.375rem - 1px);
  --bs-accordion-btn-padding-x: 1.25rem;
  --bs-accordion-btn-padding-y: 1rem;
  --bs-accordion-btn-color: #212529;
  --bs-accordion-btn-bg: var(--bs-accordion-bg);
  --bs-accordion-btn-icon: 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");
  --bs-accordion-btn-icon-width: 1.25rem;
  --bs-accordion-btn-icon-transform: rotate(-180deg);
  --bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;
  --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns=%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");
  --bs-accordion-btn-focus-border-color: #86b7fe;
  --bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
  --bs-accordion-body-padding-x: 1.25rem;
  --bs-accordion-body-padding-y: 1rem;
  --bs-accordion-active-color: #0c63e4;
  --bs-accordion-active-bg: #e7f1ff;
}

.accordion-button {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  padding: var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);
  font-size: 1rem;
  color: var(--bs-accordion-btn-color);
  text-align: left;
  background-color: var(--bs-accordion-btn-bg);
  border: 0;
  border-radius: 0;
  overflow-anchor: none;
  transition: var(--bs-accordion-transition);
}
@media (prefers-reduced-motion: reduce) {
  .accordion-button {
    transition: none;
  }
}
.accordion-button:not(.collapsed) {
  color: var(--bs-accordion-active-color);
  background-color: var(--bs-accordion-active-bg);
  box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color);
}
.accordion-button:not(.collapsed)::after {
  background-image: var(--bs-accordion-btn-active-icon);
  transform: var(--bs-accordion-btn-icon-transform);
}
.accordion-button::after {
  flex-shrink: 0;
  width: var(--bs-accordion-btn-icon-width);
  height: var(--bs-accordion-btn-icon-width);
  margin-left: auto;
  content: "";
  background-image: var(--bs-accordion-btn-icon);
  background-repeat: no-repeat;
  background-size: var(--bs-accordion-btn-icon-width);
  transition: var(--bs-accordion-btn-icon-transition);
}
@media (prefers-reduced-motion: reduce) {
  .accordion-button::after {
    transition: none;
  }
}
.accordion-button:hover {
  z-index: 2;
}
.accordion-button:focus {
  z-index: 3;
  border-color: var(--bs-accordion-btn-focus-border-color);
  outline: 0;
  box-shadow: var(--bs-accordion-btn-focus-box-shadow);
}

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

.accordion-item {
  color: var(--bs-accordion-color);
  background-color: var(--bs-accordion-bg);
  border: var(--bs-accordion-border-width) solid var(--bs-accordion-border-color);
}
.accordion-item:first-of-type {
  border-top-left-radius: var(--bs-accordion-border-radius);
  border-top-right-radius: var(--bs-accordion-border-radius);
}
.accordion-item:first-of-type .accordion-button {
  border-top-left-radius: var(--bs-accordion-inner-border-radius);
  border-top-right-radius: var(--bs-accordion-inner-border-radius);
}
.accordion-item:not(:first-of-type) {
  border-top: 0;
}
.accordion-item:last-of-type {
  border-bottom-right-radius: var(--bs-accordion-border-radius);
  border-bottom-left-radius: var(--bs-accordion-border-radius);
}
.accordion-item:last-of-type .accordion-button.collapsed {
  border-bottom-right-radius: var(--bs-accordion-inner-border-radius);
  border-bottom-left-radius: var(--bs-accordion-inner-border-radius);
}
.accordion-item:last-of-type .accordion-collapse {
  border-bottom-right-radius: var(--bs-accordion-border-radius);
  border-bottom-left-radius: var(--bs-accordion-border-radius);
}

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

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

.breadcrumb {
  --bs-breadcrumb-padding-x: 0;
  --bs-breadcrumb-padding-y: 0;
  --bs-breadcrumb-margin-bottom: 1rem;
  --bs-breadcrumb-bg: ;
  --bs-breadcrumb-border-radius: ;
  --bs-breadcrumb-divider-color: #6c757d;
  --bs-breadcrumb-item-padding-x: 0.5rem;
  --bs-breadcrumb-item-active-color: #6c757d;
  display: flex;
  flex-wrap: wrap;
  padding: var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);
  margin-bottom: var(--bs-breadcrumb-margin-bottom);
  font-size: var(--bs-breadcrumb-font-size);
  list-style: none;
  background-color: var(--bs-breadcrumb-bg);
  border-radius: var(--bs-breadcrumb-border-radius);
}

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

.pagination {
  --bs-pagination-padding-x: 0.75rem;
  --bs-pagination-padding-y: 0.375rem;
  --bs-pagination-font-size: 1rem;
  --bs-pagination-color: var(--bs-link-color);
  --bs-pagination-bg: #fff;
  --bs-pagination-border-width: 1px;
  --bs-pagination-border-color: #dee2e6;
  --bs-pagination-border-radius: 0.375rem;
  --bs-pagination-hover-color: var(--bs-link-hover-color);
  --bs-pagination-hover-bg: #e9ecef;
  --bs-pagination-hover-border-color: #dee2e6;
  --bs-pagination-focus-color: var(--bs-link-hover-color);
  --bs-pagination-focus-bg: #e9ecef;
  --bs-pagination-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
  --bs-pagination-active-color: #fff;
  --bs-pagination-active-bg: #0d6efd;
  --bs-pagination-active-border-color: #0d6efd;
  --bs-pagination-disabled-color: #6c757d;
  --bs-pagination-disabled-bg: #fff;
  --bs-pagination-disabled-border-color: #dee2e6;
  display: flex;
  padding-left: 0;
  list-style: none;
}

.page-link {
  position: relative;
  display: block;
  padding: var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);
  font-size: var(--bs-pagination-font-size);
  color: var(--bs-pagination-color);
  text-decoration: none;
  background-color: var(--bs-pagination-bg);
  border: var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .page-link {
    transition: none;
  }
}
.page-link:hover {
  z-index: 2;
  color: var(--bs-pagination-hover-color);
  background-color: var(--bs-pagination-hover-bg);
  border-color: var(--bs-pagination-hover-border-color);
}
.page-link:focus {
  z-index: 3;
  color: var(--bs-pagination-focus-color);
  background-color: var(--bs-pagination-focus-bg);
  outline: 0;
  box-shadow: var(--bs-pagination-focus-box-shadow);
}
.page-link.active, .active > .page-link {
  z-index: 3;
  color: var(--bs-pagination-active-color);
  background-color: var(--bs-pagination-active-bg);
  border-color: var(--bs-pagination-active-border-color);
}
.page-link.disabled, .disabled > .page-link {
  color: var(--bs-pagination-disabled-color);
  pointer-events: none;
  background-color: var(--bs-pagination-disabled-bg);
  border-color: var(--bs-pagination-disabled-border-color);
}

.page-item:not(:first-child) .page-link {
  margin-left: -1px;
}
.page-item:first-child .page-link {
  border-top-left-radius: var(--bs-pagination-border-radius);
  border-bottom-left-radius: var(--bs-pagination-border-radius);
}
.page-item:last-child .page-link {
  border-top-right-radius: var(--bs-pagination-border-radius);
  border-bottom-right-radius: var(--bs-pagination-border-radius);
}

.pagination-lg {
  --bs-pagination-padding-x: 1.5rem;
  --bs-pagination-padding-y: 0.75rem;
  --bs-pagination-font-size: 1.25rem;
  --bs-pagination-border-radius: 0.5rem;
}

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

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

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

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

.alert-heading {
  color: inherit;
}

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

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

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

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

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

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

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

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

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

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

@keyframes progress-bar-stripes {
  0% {
    background-position-x: 1rem;
  }
}
.progress {
  --bs-progress-height: 1rem;
  --bs-progress-font-size: 0.75rem;
  --bs-progress-bg: #e9ecef;
  --bs-progress-border-radius: 0.375rem;
  --bs-progress-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.075);
  --bs-progress-bar-color: #fff;
  --bs-progress-bar-bg: #0d6efd;
  --bs-progress-bar-transition: width 0.6s ease;
  display: flex;
  height: var(--bs-progress-height);
  overflow: hidden;
  font-size: var(--bs-progress-font-size);
  background-color: var(--bs-progress-bg);
  border-radius: var(--bs-progress-border-radius);
}

.progress-bar {
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  color: var(--bs-progress-bar-color);
  text-align: center;
  white-space: nowrap;
  background-color: var(--bs-progress-bar-bg);
  transition: var(--bs-progress-bar-transition);
}
@media (prefers-reduced-motion: reduce) {
  .progress-bar {
    transition: none;
  }
}

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

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

.list-group {
  --bs-list-group-color: #212529;
  --bs-list-group-bg: #fff;
  --bs-list-group-border-color: rgba(0, 0, 0, 0.125);
  --bs-list-group-border-width: 1px;
  --bs-list-group-border-radius: 0.375rem;
  --bs-list-group-item-padding-x: 1rem;
  --bs-list-group-item-padding-y: 0.5rem;
  --bs-list-group-action-color: #495057;
  --bs-list-group-action-hover-color: #495057;
  --bs-list-group-action-hover-bg: #f8f9fa;
  --bs-list-group-action-active-color: #212529;
  --bs-list-group-action-active-bg: #e9ecef;
  --bs-list-group-disabled-color: #6c757d;
  --bs-list-group-disabled-bg: #fff;
  --bs-list-group-active-color: #fff;
  --bs-list-group-active-bg: #0d6efd;
  --bs-list-group-active-border-color: #0d6efd;
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  border-radius: var(--bs-list-group-border-radius);
}

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

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

.list-group-item {
  position: relative;
  display: block;
  padding: var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);
  color: var(--bs-list-group-color);
  text-decoration: none;
  background-color: var(--bs-list-group-bg);
  border: var(--bs-list-group-border-width) solid var(--bs-list-group-border-color);
}
.list-group-item:first-child {
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
}
.list-group-item:last-child {
  border-bottom-right-radius: inherit;
  border-bottom-left-radius: inherit;
}
.list-group-item.disabled, .list-group-item:disabled {
  color: var(--bs-list-group-disabled-color);
  pointer-events: none;
  background-color: var(--bs-list-group-disabled-bg);
}
.list-group-item.active {
  z-index: 2;
  color: var(--bs-list-group-active-color);
  background-color: var(--bs-list-group-active-bg);
  border-color: var(--bs-list-group-active-border-color);
}
.list-group-item + .list-group-item {
  border-top-width: 0;
}
.list-group-item + .list-group-item.active {
  margin-top: calc(-1 * var(--bs-list-group-border-width));
  border-top-width: var(--bs-list-group-border-width);
}

.list-group-horizontal {
  flex-direction: row;
}
.list-group-horizontal > .list-group-item:first-child:not(:last-child) {
  border-bottom-left-radius: var(--bs-list-group-border-radius);
  border-top-right-radius: 0;
}
.list-group-horizontal > .list-group-item:last-child:not(:first-child) {
  border-top-right-radius: var(--bs-list-group-border-radius);
  border-bottom-left-radius: 0;
}
.list-group-horizontal > .list-group-item.active {
  margin-top: 0;
}
.list-group-horizontal > .list-group-item + .list-group-item {
  border-top-width: var(--bs-list-group-border-width);
  border-left-width: 0;
}
.list-group-horizontal > .list-group-item + .list-group-item.active {
  margin-left: calc(-1 * var(--bs-list-group-border-width));
  border-left-width: var(--bs-list-group-border-width);
}

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

.list-group-item-primary {
  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 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z%27/%3e%3c/svg%3e") center/1em auto no-repeat;
  border: 0;
  border-radius: 0.375rem;
  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 {
  --bs-toast-zindex: 1090;
  --bs-toast-padding-x: 0.75rem;
  --bs-toast-padding-y: 0.5rem;
  --bs-toast-spacing: 1.5rem;
  --bs-toast-max-width: 350px;
  --bs-toast-font-size: 0.875rem;
  --bs-toast-color: ;
  --bs-toast-bg: rgba(255, 255, 255, 0.85);
  --bs-toast-border-width: 1px;
  --bs-toast-border-color: var(--bs-border-color-translucent);
  --bs-toast-border-radius: 0.375rem;
  --bs-toast-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  --bs-toast-header-color: #6c757d;
  --bs-toast-header-bg: rgba(255, 255, 255, 0.85);
  --bs-toast-header-border-color: rgba(0, 0, 0, 0.05);
  width: var(--bs-toast-max-width);
  max-width: 100%;
  font-size: var(--bs-toast-font-size);
  color: var(--bs-toast-color);
  pointer-events: auto;
  background-color: var(--bs-toast-bg);
  background-clip: padding-box;
  border: var(--bs-toast-border-width) solid var(--bs-toast-border-color);
  box-shadow: var(--bs-toast-box-shadow);
  border-radius: var(--bs-toast-border-radius);
}
.toast.showing {
  opacity: 0;
}
.toast:not(.show) {
  display: none;
}

.toast-container {
  --bs-toast-zindex: 1090;
  position: absolute;
  z-index: var(--bs-toast-zindex);
  width: max-content;
  max-width: 100%;
  pointer-events: none;
}
.toast-container > :not(:last-child) {
  margin-bottom: var(--bs-toast-spacing);
}

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

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

.modal {
  --bs-modal-zindex: 1055;
  --bs-modal-width: 500px;
  --bs-modal-padding: 1rem;
  --bs-modal-margin: 0.5rem;
  --bs-modal-color: ;
  --bs-modal-bg: #fff;
  --bs-modal-border-color: var(--bs-border-color-translucent);
  --bs-modal-border-width: 1px;
  --bs-modal-border-radius: 0.5rem;
  --bs-modal-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
  --bs-modal-inner-border-radius: calc(0.5rem - 1px);
  --bs-modal-header-padding-x: 1rem;
  --bs-modal-header-padding-y: 1rem;
  --bs-modal-header-padding: 1rem 1rem;
  --bs-modal-header-border-color: var(--bs-border-color);
  --bs-modal-header-border-width: 1px;
  --bs-modal-title-line-height: 1.5;
  --bs-modal-footer-gap: 0.5rem;
  --bs-modal-footer-bg: ;
  --bs-modal-footer-border-color: var(--bs-border-color);
  --bs-modal-footer-border-width: 1px;
  position: fixed;
  top: 0;
  left: 0;
  z-index: var(--bs-modal-zindex);
  display: none;
  width: 100%;
  height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  outline: 0;
}

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

.modal-dialog-scrollable {
  height: calc(100% - var(--bs-modal-margin) * 2);
}
.modal-dialog-scrollable .modal-content {
  max-height: 100%;
  overflow: hidden;
}
.modal-dialog-scrollable .modal-body {
  overflow-y: auto;
}

.modal-dialog-centered {
  display: flex;
  align-items: center;
  min-height: calc(100% - var(--bs-modal-margin) * 2);
}

.modal-content {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  color: var(--bs-modal-color);
  pointer-events: auto;
  background-color: var(--bs-modal-bg);
  background-clip: padding-box;
  border: var(--bs-modal-border-width) solid var(--bs-modal-border-color);
  border-radius: var(--bs-modal-border-radius);
  outline: 0;
}

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

.modal-header {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: space-between;
  padding: var(--bs-modal-header-padding);
  border-bottom: var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);
  border-top-left-radius: var(--bs-modal-inner-border-radius);
  border-top-right-radius: var(--bs-modal-inner-border-radius);
}
.modal-header .btn-close {
  padding: calc(var(--bs-modal-header-padding-y) * 0.5) calc(var(--bs-modal-header-padding-x) * 0.5);
  margin: calc(-0.5 * var(--bs-modal-header-padding-y)) calc(-0.5 * var(--bs-modal-header-padding-x)) calc(-0.5 * var(--bs-modal-header-padding-y)) auto;
}

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

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

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

@media (min-width: 576px) {
  .modal {
    --bs-modal-margin: 1.75rem;
    --bs-modal-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  }
  .modal-dialog {
    max-width: var(--bs-modal-width);
    margin-right: auto;
    margin-left: auto;
  }
  .modal-sm {
    --bs-modal-width: 300px;
  }
}
@media (min-width: 992px) {
  .modal-lg,
  .modal-xl {
    --bs-modal-width: 800px;
  }
}
@media (min-width: 1200px) {
  .modal-xl {
    --bs-modal-width: 1140px;
  }
}
.modal-fullscreen {
  width: 100vw;
  max-width: none;
  height: 100%;
  margin: 0;
}
.modal-fullscreen .modal-content {
  height: 100%;
  border: 0;
  border-radius: 0;
}
.modal-fullscreen .modal-header,
.modal-fullscreen .modal-footer {
  border-radius: 0;
}
.modal-fullscreen .modal-body {
  overflow-y: auto;
}

@media (max-width: 575.98px) {
  .modal-fullscreen-sm-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-sm-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-sm-down .modal-header,
  .modal-fullscreen-sm-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-sm-down .modal-body {
    overflow-y: auto;
  }
}
@media (max-width: 767.98px) {
  .modal-fullscreen-md-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-md-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-md-down .modal-header,
  .modal-fullscreen-md-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-md-down .modal-body {
    overflow-y: auto;
  }
}
@media (max-width: 991.98px) {
  .modal-fullscreen-lg-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-lg-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-lg-down .modal-header,
  .modal-fullscreen-lg-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-lg-down .modal-body {
    overflow-y: auto;
  }
}
@media (max-width: 1199.98px) {
  .modal-fullscreen-xl-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-xl-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-xl-down .modal-header,
  .modal-fullscreen-xl-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-xl-down .modal-body {
    overflow-y: auto;
  }
}
@media (max-width: 1399.98px) {
  .modal-fullscreen-xxl-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-xxl-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-xxl-down .modal-header,
  .modal-fullscreen-xxl-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-xxl-down .modal-body {
    overflow-y: auto;
  }
}
.tooltip {
  --bs-tooltip-zindex: 1080;
  --bs-tooltip-max-width: 200px;
  --bs-tooltip-padding-x: 0.5rem;
  --bs-tooltip-padding-y: 0.25rem;
  --bs-tooltip-margin: ;
  --bs-tooltip-font-size: 0.875rem;
  --bs-tooltip-color: #fff;
  --bs-tooltip-bg: #000;
  --bs-tooltip-border-radius: 0.375rem;
  --bs-tooltip-opacity: 0.9;
  --bs-tooltip-arrow-width: 0.8rem;
  --bs-tooltip-arrow-height: 0.4rem;
  z-index: var(--bs-tooltip-zindex);
  display: block;
  padding: var(--bs-tooltip-arrow-height);
  margin: var(--bs-tooltip-margin);
  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;
  white-space: normal;
  word-spacing: normal;
  line-break: auto;
  font-size: var(--bs-tooltip-font-size);
  word-wrap: break-word;
  opacity: 0;
}
.tooltip.show {
  opacity: var(--bs-tooltip-opacity);
}
.tooltip .tooltip-arrow {
  display: block;
  width: var(--bs-tooltip-arrow-width);
  height: var(--bs-tooltip-arrow-height);
}
.tooltip .tooltip-arrow::before {
  position: absolute;
  content: "";
  border-color: transparent;
  border-style: solid;
}

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

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

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

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

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

.popover {
  --bs-popover-zindex: 1070;
  --bs-popover-max-width: 276px;
  --bs-popover-font-size: 0.875rem;
  --bs-popover-bg: #fff;
  --bs-popover-border-width: 1px;
  --bs-popover-border-color: var(--bs-border-color-translucent);
  --bs-popover-border-radius: 0.5rem;
  --bs-popover-inner-border-radius: calc(0.5rem - 1px);
  --bs-popover-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  --bs-popover-header-padding-x: 1rem;
  --bs-popover-header-padding-y: 0.5rem;
  --bs-popover-header-font-size: 1rem;
  --bs-popover-header-color: ;
  --bs-popover-header-bg: #f0f0f0;
  --bs-popover-body-padding-x: 1rem;
  --bs-popover-body-padding-y: 1rem;
  --bs-popover-body-color: #212529;
  --bs-popover-arrow-width: 1rem;
  --bs-popover-arrow-height: 0.5rem;
  --bs-popover-arrow-border: var(--bs-popover-border-color);
  z-index: var(--bs-popover-zindex);
  display: block;
  max-width: var(--bs-popover-max-width);
  font-family: 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;
  white-space: normal;
  word-spacing: normal;
  line-break: auto;
  font-size: var(--bs-popover-font-size);
  word-wrap: break-word;
  background-color: var(--bs-popover-bg);
  background-clip: padding-box;
  border: var(--bs-popover-border-width) solid var(--bs-popover-border-color);
  border-radius: var(--bs-popover-border-radius);
}
.popover .popover-arrow {
  display: block;
  width: var(--bs-popover-arrow-width);
  height: var(--bs-popover-arrow-height);
}
.popover .popover-arrow::before, .popover .popover-arrow::after {
  position: absolute;
  display: block;
  content: "";
  border-color: transparent;
  border-style: solid;
  border-width: 0;
}

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

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

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

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

/* rtl:end:ignore */
.popover-header {
  padding: var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);
  margin-bottom: 0;
  font-size: var(--bs-popover-header-font-size);
  color: var(--bs-popover-header-color);
  background-color: var(--bs-popover-header-bg);
  border-bottom: var(--bs-popover-border-width) solid var(--bs-popover-border-color);
  border-top-left-radius: var(--bs-popover-inner-border-radius);
  border-top-right-radius: var(--bs-popover-inner-border-radius);
}
.popover-header:empty {
  display: none;
}

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

.carousel {
  position: relative;
}

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

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

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

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

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

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

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

.carousel-control-prev,
.carousel-control-next {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 15%;
  padding: 0;
  color: #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;
}

.spinner-grow,
.spinner-border {
  display: inline-block;
  width: var(--bs-spinner-width);
  height: var(--bs-spinner-height);
  vertical-align: var(--bs-spinner-vertical-align);
  border-radius: 50%;
  animation: var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name);
}

@keyframes spinner-border {
  to {
    transform: rotate(360deg) /* rtl:ignore */;
  }
}
.spinner-border {
  --bs-spinner-width: 2rem;
  --bs-spinner-height: 2rem;
  --bs-spinner-vertical-align: -0.125em;
  --bs-spinner-border-width: 0.25em;
  --bs-spinner-animation-speed: 0.75s;
  --bs-spinner-animation-name: spinner-border;
  border: var(--bs-spinner-border-width) solid currentcolor;
  border-right-color: transparent;
}

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

@keyframes spinner-grow {
  0% {
    transform: scale(0);
  }
  50% {
    opacity: 1;
    transform: none;
  }
}
.spinner-grow {
  --bs-spinner-width: 2rem;
  --bs-spinner-height: 2rem;
  --bs-spinner-vertical-align: -0.125em;
  --bs-spinner-animation-speed: 0.75s;
  --bs-spinner-animation-name: spinner-grow;
  background-color: currentcolor;
  opacity: 0;
}

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

@media (prefers-reduced-motion: reduce) {
  .spinner-border,
  .spinner-grow {
    --bs-spinner-animation-speed: 1.5s;
  }
}
.offcanvas, .offcanvas-xxl, .offcanvas-xl, .offcanvas-lg, .offcanvas-md, .offcanvas-sm {
  --bs-offcanvas-zindex: 1045;
  --bs-offcanvas-width: 400px;
  --bs-offcanvas-height: 30vh;
  --bs-offcanvas-padding-x: 1rem;
  --bs-offcanvas-padding-y: 1rem;
  --bs-offcanvas-color: ;
  --bs-offcanvas-bg: #fff;
  --bs-offcanvas-border-width: 1px;
  --bs-offcanvas-border-color: var(--bs-border-color-translucent);
  --bs-offcanvas-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
}

@media (max-width: 575.98px) {
  .offcanvas-sm {
    position: fixed;
    bottom: 0;
    z-index: var(--bs-offcanvas-zindex);
    display: flex;
    flex-direction: column;
    max-width: 100%;
    color: var(--bs-offcanvas-color);
    visibility: hidden;
    background-color: var(--bs-offcanvas-bg);
    background-clip: padding-box;
    outline: 0;
    transition: transform 0.3s ease-in-out;
  }
}
@media (max-width: 575.98px) and (prefers-reduced-motion: reduce) {
  .offcanvas-sm {
    transition: none;
  }
}
@media (max-width: 575.98px) {
  .offcanvas-sm.offcanvas-start {
    top: 0;
    left: 0;
    width: var(--bs-offcanvas-width);
    border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(-100%);
  }
  .offcanvas-sm.offcanvas-end {
    top: 0;
    right: 0;
    width: var(--bs-offcanvas-width);
    border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(100%);
  }
  .offcanvas-sm.offcanvas-top {
    top: 0;
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(-100%);
  }
  .offcanvas-sm.offcanvas-bottom {
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(100%);
  }
  .offcanvas-sm.showing, .offcanvas-sm.show:not(.hiding) {
    transform: none;
  }
  .offcanvas-sm.showing, .offcanvas-sm.hiding, .offcanvas-sm.show {
    visibility: visible;
  }
}
@media (min-width: 576px) {
  .offcanvas-sm {
    --bs-offcanvas-height: auto;
    --bs-offcanvas-border-width: 0;
    background-color: transparent !important;
  }
  .offcanvas-sm .offcanvas-header {
    display: none;
  }
  .offcanvas-sm .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
    background-color: transparent !important;
  }
}

@media (max-width: 767.98px) {
  .offcanvas-md {
    position: fixed;
    bottom: 0;
    z-index: var(--bs-offcanvas-zindex);
    display: flex;
    flex-direction: column;
    max-width: 100%;
    color: var(--bs-offcanvas-color);
    visibility: hidden;
    background-color: var(--bs-offcanvas-bg);
    background-clip: padding-box;
    outline: 0;
    transition: transform 0.3s ease-in-out;
  }
}
@media (max-width: 767.98px) and (prefers-reduced-motion: reduce) {
  .offcanvas-md {
    transition: none;
  }
}
@media (max-width: 767.98px) {
  .offcanvas-md.offcanvas-start {
    top: 0;
    left: 0;
    width: var(--bs-offcanvas-width);
    border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(-100%);
  }
  .offcanvas-md.offcanvas-end {
    top: 0;
    right: 0;
    width: var(--bs-offcanvas-width);
    border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(100%);
  }
  .offcanvas-md.offcanvas-top {
    top: 0;
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(-100%);
  }
  .offcanvas-md.offcanvas-bottom {
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(100%);
  }
  .offcanvas-md.showing, .offcanvas-md.show:not(.hiding) {
    transform: none;
  }
  .offcanvas-md.showing, .offcanvas-md.hiding, .offcanvas-md.show {
    visibility: visible;
  }
}
@media (min-width: 768px) {
  .offcanvas-md {
    --bs-offcanvas-height: auto;
    --bs-offcanvas-border-width: 0;
    background-color: transparent !important;
  }
  .offcanvas-md .offcanvas-header {
    display: none;
  }
  .offcanvas-md .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
    background-color: transparent !important;
  }
}

@media (max-width: 991.98px) {
  .offcanvas-lg {
    position: fixed;
    bottom: 0;
    z-index: var(--bs-offcanvas-zindex);
    display: flex;
    flex-direction: column;
    max-width: 100%;
    color: var(--bs-offcanvas-color);
    visibility: hidden;
    background-color: var(--bs-offcanvas-bg);
    background-clip: padding-box;
    outline: 0;
    transition: transform 0.3s ease-in-out;
  }
}
@media (max-width: 991.98px) and (prefers-reduced-motion: reduce) {
  .offcanvas-lg {
    transition: none;
  }
}
@media (max-width: 991.98px) {
  .offcanvas-lg.offcanvas-start {
    top: 0;
    left: 0;
    width: var(--bs-offcanvas-width);
    border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(-100%);
  }
  .offcanvas-lg.offcanvas-end {
    top: 0;
    right: 0;
    width: var(--bs-offcanvas-width);
    border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(100%);
  }
  .offcanvas-lg.offcanvas-top {
    top: 0;
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(-100%);
  }
  .offcanvas-lg.offcanvas-bottom {
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(100%);
  }
  .offcanvas-lg.showing, .offcanvas-lg.show:not(.hiding) {
    transform: none;
  }
  .offcanvas-lg.showing, .offcanvas-lg.hiding, .offcanvas-lg.show {
    visibility: visible;
  }
}
@media (min-width: 992px) {
  .offcanvas-lg {
    --bs-offcanvas-height: auto;
    --bs-offcanvas-border-width: 0;
    background-color: transparent !important;
  }
  .offcanvas-lg .offcanvas-header {
    display: none;
  }
  .offcanvas-lg .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
    background-color: transparent !important;
  }
}

@media (max-width: 1199.98px) {
  .offcanvas-xl {
    position: fixed;
    bottom: 0;
    z-index: var(--bs-offcanvas-zindex);
    display: flex;
    flex-direction: column;
    max-width: 100%;
    color: var(--bs-offcanvas-color);
    visibility: hidden;
    background-color: var(--bs-offcanvas-bg);
    background-clip: padding-box;
    outline: 0;
    transition: transform 0.3s ease-in-out;
  }
}
@media (max-width: 1199.98px) and (prefers-reduced-motion: reduce) {
  .offcanvas-xl {
    transition: none;
  }
}
@media (max-width: 1199.98px) {
  .offcanvas-xl.offcanvas-start {
    top: 0;
    left: 0;
    width: var(--bs-offcanvas-width);
    border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(-100%);
  }
  .offcanvas-xl.offcanvas-end {
    top: 0;
    right: 0;
    width: var(--bs-offcanvas-width);
    border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(100%);
  }
  .offcanvas-xl.offcanvas-top {
    top: 0;
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(-100%);
  }
  .offcanvas-xl.offcanvas-bottom {
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(100%);
  }
  .offcanvas-xl.showing, .offcanvas-xl.show:not(.hiding) {
    transform: none;
  }
  .offcanvas-xl.showing, .offcanvas-xl.hiding, .offcanvas-xl.show {
    visibility: visible;
  }
}
@media (min-width: 1200px) {
  .offcanvas-xl {
    --bs-offcanvas-height: auto;
    --bs-offcanvas-border-width: 0;
    background-color: transparent !important;
  }
  .offcanvas-xl .offcanvas-header {
    display: none;
  }
  .offcanvas-xl .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
    background-color: transparent !important;
  }
}

@media (max-width: 1399.98px) {
  .offcanvas-xxl {
    position: fixed;
    bottom: 0;
    z-index: var(--bs-offcanvas-zindex);
    display: flex;
    flex-direction: column;
    max-width: 100%;
    color: var(--bs-offcanvas-color);
    visibility: hidden;
    background-color: var(--bs-offcanvas-bg);
    background-clip: padding-box;
    outline: 0;
    transition: transform 0.3s ease-in-out;
  }
}
@media (max-width: 1399.98px) and (prefers-reduced-motion: reduce) {
  .offcanvas-xxl {
    transition: none;
  }
}
@media (max-width: 1399.98px) {
  .offcanvas-xxl.offcanvas-start {
    top: 0;
    left: 0;
    width: var(--bs-offcanvas-width);
    border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(-100%);
  }
  .offcanvas-xxl.offcanvas-end {
    top: 0;
    right: 0;
    width: var(--bs-offcanvas-width);
    border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(100%);
  }
  .offcanvas-xxl.offcanvas-top {
    top: 0;
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(-100%);
  }
  .offcanvas-xxl.offcanvas-bottom {
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(100%);
  }
  .offcanvas-xxl.showing, .offcanvas-xxl.show:not(.hiding) {
    transform: none;
  }
  .offcanvas-xxl.showing, .offcanvas-xxl.hiding, .offcanvas-xxl.show {
    visibility: visible;
  }
}
@media (min-width: 1400px) {
  .offcanvas-xxl {
    --bs-offcanvas-height: auto;
    --bs-offcanvas-border-width: 0;
    background-color: transparent !important;
  }
  .offcanvas-xxl .offcanvas-header {
    display: none;
  }
  .offcanvas-xxl .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
    background-color: transparent !important;
  }
}

.offcanvas {
  position: fixed;
  bottom: 0;
  z-index: var(--bs-offcanvas-zindex);
  display: flex;
  flex-direction: column;
  max-width: 100%;
  color: var(--bs-offcanvas-color);
  visibility: hidden;
  background-color: var(--bs-offcanvas-bg);
  background-clip: padding-box;
  outline: 0;
  transition: transform 0.3s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .offcanvas {
    transition: none;
  }
}
.offcanvas.offcanvas-start {
  top: 0;
  left: 0;
  width: var(--bs-offcanvas-width);
  border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
  transform: translateX(-100%);
}
.offcanvas.offcanvas-end {
  top: 0;
  right: 0;
  width: var(--bs-offcanvas-width);
  border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
  transform: translateX(100%);
}
.offcanvas.offcanvas-top {
  top: 0;
  right: 0;
  left: 0;
  height: var(--bs-offcanvas-height);
  max-height: 100%;
  border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
  transform: translateY(-100%);
}
.offcanvas.offcanvas-bottom {
  right: 0;
  left: 0;
  height: var(--bs-offcanvas-height);
  max-height: 100%;
  border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
  transform: translateY(100%);
}
.offcanvas.showing, .offcanvas.show:not(.hiding) {
  transform: none;
}
.offcanvas.showing, .offcanvas.hiding, .offcanvas.show {
  visibility: visible;
}

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

.offcanvas-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);
}
.offcanvas-header .btn-close {
  padding: calc(var(--bs-offcanvas-padding-y) * 0.5) calc(var(--bs-offcanvas-padding-x) * 0.5);
  margin-top: calc(-0.5 * var(--bs-offcanvas-padding-y));
  margin-right: calc(-0.5 * var(--bs-offcanvas-padding-x));
  margin-bottom: calc(-0.5 * var(--bs-offcanvas-padding-y));
}

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

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

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

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

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

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

.placeholder-glow .placeholder {
  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: "";
}

.text-bg-primary {
  color: #fff !important;
  background-color: RGBA(13, 110, 253, var(--bs-bg-opacity, 1)) !important;
}

.text-bg-secondary {
  color: #fff !important;
  background-color: RGBA(108, 117, 125, var(--bs-bg-opacity, 1)) !important;
}

.text-bg-success {
  color: #fff !important;
  background-color: RGBA(25, 135, 84, var(--bs-bg-opacity, 1)) !important;
}

.text-bg-info {
  color: #000 !important;
  background-color: RGBA(13, 202, 240, var(--bs-bg-opacity, 1)) !important;
}

.text-bg-warning {
  color: #000 !important;
  background-color: RGBA(255, 193, 7, var(--bs-bg-opacity, 1)) !important;
}

.text-bg-danger {
  color: #fff !important;
  background-color: RGBA(220, 53, 69, var(--bs-bg-opacity, 1)) !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.visually-hidden,
.visually-hidden-focusable:not(:focus):not(:focus-within) {
  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: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

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

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

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

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

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

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

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

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

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

.border-primary {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-primary-rgb), var(--bs-border-opacity)) !important;
}

.border-secondary {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-secondary-rgb), var(--bs-border-opacity)) !important;
}

.border-success {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-success-rgb), var(--bs-border-opacity)) !important;
}

.border-info {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-info-rgb), var(--bs-border-opacity)) !important;
}

.border-warning {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-warning-rgb), var(--bs-border-opacity)) !important;
}

.border-danger {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-danger-rgb), var(--bs-border-opacity)) !important;
}

.border-light {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-light-rgb), var(--bs-border-opacity)) !important;
}

.border-dark {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-dark-rgb), var(--bs-border-opacity)) !important;
}

.border-white {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-white-rgb), var(--bs-border-opacity)) !important;
}

.border-1 {
  --bs-border-width: 1px;
}

.border-2 {
  --bs-border-width: 2px;
}

.border-3 {
  --bs-border-width: 3px;
}

.border-4 {
  --bs-border-width: 4px;
}

.border-5 {
  --bs-border-width: 5px;
}

.border-opacity-10 {
  --bs-border-opacity: 0.1;
}

.border-opacity-25 {
  --bs-border-opacity: 0.25;
}

.border-opacity-50 {
  --bs-border-opacity: 0.5;
}

.border-opacity-75 {
  --bs-border-opacity: 0.75;
}

.border-opacity-100 {
  --bs-border-opacity: 1;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.p-2 {
  padding: 0.5rem !important;
}

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

.p-4 {
  padding: 1.5rem !important;
}

.p-5 {
  padding: 3rem !important;
}

.px-0 {
  padding-right: 0 !important;
  padding-left: 0 !important;
}

.px-1 {
  padding-right: 0.25rem !important;
  padding-left: 0.25rem !important;
}

.px-2 {
  padding-right: 0.5rem !important;
  padding-left: 0.5rem !important;
}

.px-3 {
  padding-right: 1rem !important;
  padding-left: 1rem !important;
}

.px-4 {
  padding-right: 1.5rem !important;
  padding-left: 1.5rem !important;
}

.px-5 {
  padding-right: 3rem !important;
  padding-left: 3rem !important;
}

.py-0 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.py-1 {
  padding-top: 0.25rem !important;
  padding-bottom: 0.25rem !important;
}

.py-2 {
  padding-top: 0.5rem !important;
  padding-bottom: 0.5rem !important;
}

.py-3 {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}

.py-4 {
  padding-top: 1.5rem !important;
  padding-bottom: 1.5rem !important;
}

.py-5 {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}

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

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

.pt-2 {
  padding-top: 0.5rem !important;
}

.pt-3 {
  padding-top: 1rem !important;
}

.pt-4 {
  padding-top: 1.5rem !important;
}

.pt-5 {
  padding-top: 3rem !important;
}

.pe-0 {
  padding-right: 0 !important;
}

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

.pe-2 {
  padding-right: 0.5rem !important;
}

.pe-3 {
  padding-right: 1rem !important;
}

.pe-4 {
  padding-right: 1.5rem !important;
}

.pe-5 {
  padding-right: 3rem !important;
}

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

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

.pb-2 {
  padding-bottom: 0.5rem !important;
}

.pb-3 {
  padding-bottom: 1rem !important;
}

.pb-4 {
  padding-bottom: 1.5rem !important;
}

.pb-5 {
  padding-bottom: 3rem !important;
}

.ps-0 {
  padding-left: 0 !important;
}

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

.ps-2 {
  padding-left: 0.5rem !important;
}

.ps-3 {
  padding-left: 1rem !important;
}

.ps-4 {
  padding-left: 1.5rem !important;
}

.ps-5 {
  padding-left: 3rem !important;
}

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

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

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

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

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

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

.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-semibold {
  font-weight: 600 !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: var(--bs-border-radius) !important;
}

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

.rounded-1 {
  border-radius: var(--bs-border-radius-sm) !important;
}

.rounded-2 {
  border-radius: var(--bs-border-radius) !important;
}

.rounded-3 {
  border-radius: var(--bs-border-radius-lg) !important;
}

.rounded-4 {
  border-radius: var(--bs-border-radius-xl) !important;
}

.rounded-5 {
  border-radius: var(--bs-border-radius-2xl) !important;
}

.rounded-circle {
  border-radius: 50% !important;
}

.rounded-pill {
  border-radius: var(--bs-border-radius-pill) !important;
}

.rounded-top {
  border-top-left-radius: var(--bs-border-radius) !important;
  border-top-right-radius: var(--bs-border-radius) !important;
}

.rounded-end {
  border-top-right-radius: var(--bs-border-radius) !important;
  border-bottom-right-radius: var(--bs-border-radius) !important;
}

.rounded-bottom {
  border-bottom-right-radius: var(--bs-border-radius) !important;
  border-bottom-left-radius: var(--bs-border-radius) !important;
}

.rounded-start {
  border-bottom-left-radius: var(--bs-border-radius) !important;
  border-top-left-radius: var(--bs-border-radius) !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;
  }
  .justify-content-sm-start {
    justify-content: flex-start !important;
  }
  .justify-content-sm-end {
    justify-content: flex-end !important;
  }
  .justify-content-sm-center {
    justify-content: center !important;
  }
  .justify-content-sm-between {
    justify-content: space-between !important;
  }
  .justify-content-sm-around {
    justify-content: space-around !important;
  }
  .justify-content-sm-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-sm-start {
    align-items: flex-start !important;
  }
  .align-items-sm-end {
    align-items: flex-end !important;
  }
  .align-items-sm-center {
    align-items: center !important;
  }
  .align-items-sm-baseline {
    align-items: baseline !important;
  }
  .align-items-sm-stretch {
    align-items: stretch !important;
  }
  .align-content-sm-start {
    align-content: flex-start !important;
  }
  .align-content-sm-end {
    align-content: flex-end !important;
  }
  .align-content-sm-center {
    align-content: center !important;
  }
  .align-content-sm-between {
    align-content: space-between !important;
  }
  .align-content-sm-around {
    align-content: space-around !important;
  }
  .align-content-sm-stretch {
    align-content: stretch !important;
  }
  .align-self-sm-auto {
    align-self: auto !important;
  }
  .align-self-sm-start {
    align-self: flex-start !important;
  }
  .align-self-sm-end {
    align-self: flex-end !important;
  }
  .align-self-sm-center {
    align-self: center !important;
  }
  .align-self-sm-baseline {
    align-self: baseline !important;
  }
  .align-self-sm-stretch {
    align-self: stretch !important;
  }
  .order-sm-first {
    order: -1 !important;
  }
  .order-sm-0 {
    order: 0 !important;
  }
  .order-sm-1 {
    order: 1 !important;
  }
  .order-sm-2 {
    order: 2 !important;
  }
  .order-sm-3 {
    order: 3 !important;
  }
  .order-sm-4 {
    order: 4 !important;
  }
  .order-sm-5 {
    order: 5 !important;
  }
  .order-sm-last {
    order: 6 !important;
  }
  .m-sm-0 {
    margin: 0 !important;
  }
  .m-sm-1 {
    margin: 0.25rem !important;
  }
  .m-sm-2 {
    margin: 0.5rem !important;
  }
  .m-sm-3 {
    margin: 1rem !important;
  }
  .m-sm-4 {
    margin: 1.5rem !important;
  }
  .m-sm-5 {
    margin: 3rem !important;
  }
  .m-sm-auto {
    margin: auto !important;
  }
  .mx-sm-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-sm-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-sm-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-sm-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-sm-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-sm-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-sm-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-sm-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-sm-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-sm-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-sm-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-sm-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-sm-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-sm-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-sm-0 {
    margin-top: 0 !important;
  }
  .mt-sm-1 {
    margin-top: 0.25rem !important;
  }
  .mt-sm-2 {
    margin-top: 0.5rem !important;
  }
  .mt-sm-3 {
    margin-top: 1rem !important;
  }
  .mt-sm-4 {
    margin-top: 1.5rem !important;
  }
  .mt-sm-5 {
    margin-top: 3rem !important;
  }
  .mt-sm-auto {
    margin-top: auto !important;
  }
  .me-sm-0 {
    margin-right: 0 !important;
  }
  .me-sm-1 {
    margin-right: 0.25rem !important;
  }
  .me-sm-2 {
    margin-right: 0.5rem !important;
  }
  .me-sm-3 {
    margin-right: 1rem !important;
  }
  .me-sm-4 {
    margin-right: 1.5rem !important;
  }
  .me-sm-5 {
    margin-right: 3rem !important;
  }
  .me-sm-auto {
    margin-right: auto !important;
  }
  .mb-sm-0 {
    margin-bottom: 0 !important;
  }
  .mb-sm-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-sm-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-sm-3 {
    margin-bottom: 1rem !important;
  }
  .mb-sm-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-sm-5 {
    margin-bottom: 3rem !important;
  }
  .mb-sm-auto {
    margin-bottom: auto !important;
  }
  .ms-sm-0 {
    margin-left: 0 !important;
  }
  .ms-sm-1 {
    margin-left: 0.25rem !important;
  }
  .ms-sm-2 {
    margin-left: 0.5rem !important;
  }
  .ms-sm-3 {
    margin-left: 1rem !important;
  }
  .ms-sm-4 {
    margin-left: 1.5rem !important;
  }
  .ms-sm-5 {
    margin-left: 3rem !important;
  }
  .ms-sm-auto {
    margin-left: auto !important;
  }
  .p-sm-0 {
    padding: 0 !important;
  }
  .p-sm-1 {
    padding: 0.25rem !important;
  }
  .p-sm-2 {
    padding: 0.5rem !important;
  }
  .p-sm-3 {
    padding: 1rem !important;
  }
  .p-sm-4 {
    padding: 1.5rem !important;
  }
  .p-sm-5 {
    padding: 3rem !important;
  }
  .px-sm-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-sm-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-sm-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-sm-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-sm-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-sm-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-sm-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-sm-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-sm-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-sm-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-sm-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-sm-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-sm-0 {
    padding-top: 0 !important;
  }
  .pt-sm-1 {
    padding-top: 0.25rem !important;
  }
  .pt-sm-2 {
    padding-top: 0.5rem !important;
  }
  .pt-sm-3 {
    padding-top: 1rem !important;
  }
  .pt-sm-4 {
    padding-top: 1.5rem !important;
  }
  .pt-sm-5 {
    padding-top: 3rem !important;
  }
  .pe-sm-0 {
    padding-right: 0 !important;
  }
  .pe-sm-1 {
    padding-right: 0.25rem !important;
  }
  .pe-sm-2 {
    padding-right: 0.5rem !important;
  }
  .pe-sm-3 {
    padding-right: 1rem !important;
  }
  .pe-sm-4 {
    padding-right: 1.5rem !important;
  }
  .pe-sm-5 {
    padding-right: 3rem !important;
  }
  .pb-sm-0 {
    padding-bottom: 0 !important;
  }
  .pb-sm-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-sm-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-sm-3 {
    padding-bottom: 1rem !important;
  }
  .pb-sm-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-sm-5 {
    padding-bottom: 3rem !important;
  }
  .ps-sm-0 {
    padding-left: 0 !important;
  }
  .ps-sm-1 {
    padding-left: 0.25rem !important;
  }
  .ps-sm-2 {
    padding-left: 0.5rem !important;
  }
  .ps-sm-3 {
    padding-left: 1rem !important;
  }
  .ps-sm-4 {
    padding-left: 1.5rem !important;
  }
  .ps-sm-5 {
    padding-left: 3rem !important;
  }
  .gap-sm-0 {
    gap: 0 !important;
  }
  .gap-sm-1 {
    gap: 0.25rem !important;
  }
  .gap-sm-2 {
    gap: 0.5rem !important;
  }
  .gap-sm-3 {
    gap: 1rem !important;
  }
  .gap-sm-4 {
    gap: 1.5rem !important;
  }
  .gap-sm-5 {
    gap: 3rem !important;
  }
  .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;
  }
  .justify-content-md-start {
    justify-content: flex-start !important;
  }
  .justify-content-md-end {
    justify-content: flex-end !important;
  }
  .justify-content-md-center {
    justify-content: center !important;
  }
  .justify-content-md-between {
    justify-content: space-between !important;
  }
  .justify-content-md-around {
    justify-content: space-around !important;
  }
  .justify-content-md-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-md-start {
    align-items: flex-start !important;
  }
  .align-items-md-end {
    align-items: flex-end !important;
  }
  .align-items-md-center {
    align-items: center !important;
  }
  .align-items-md-baseline {
    align-items: baseline !important;
  }
  .align-items-md-stretch {
    align-items: stretch !important;
  }
  .align-content-md-start {
    align-content: flex-start !important;
  }
  .align-content-md-end {
    align-content: flex-end !important;
  }
  .align-content-md-center {
    align-content: center !important;
  }
  .align-content-md-between {
    align-content: space-between !important;
  }
  .align-content-md-around {
    align-content: space-around !important;
  }
  .align-content-md-stretch {
    align-content: stretch !important;
  }
  .align-self-md-auto {
    align-self: auto !important;
  }
  .align-self-md-start {
    align-self: flex-start !important;
  }
  .align-self-md-end {
    align-self: flex-end !important;
  }
  .align-self-md-center {
    align-self: center !important;
  }
  .align-self-md-baseline {
    align-self: baseline !important;
  }
  .align-self-md-stretch {
    align-self: stretch !important;
  }
  .order-md-first {
    order: -1 !important;
  }
  .order-md-0 {
    order: 0 !important;
  }
  .order-md-1 {
    order: 1 !important;
  }
  .order-md-2 {
    order: 2 !important;
  }
  .order-md-3 {
    order: 3 !important;
  }
  .order-md-4 {
    order: 4 !important;
  }
  .order-md-5 {
    order: 5 !important;
  }
  .order-md-last {
    order: 6 !important;
  }
  .m-md-0 {
    margin: 0 !important;
  }
  .m-md-1 {
    margin: 0.25rem !important;
  }
  .m-md-2 {
    margin: 0.5rem !important;
  }
  .m-md-3 {
    margin: 1rem !important;
  }
  .m-md-4 {
    margin: 1.5rem !important;
  }
  .m-md-5 {
    margin: 3rem !important;
  }
  .m-md-auto {
    margin: auto !important;
  }
  .mx-md-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-md-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-md-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-md-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-md-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-md-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-md-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-md-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-md-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-md-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-md-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-md-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-md-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-md-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-md-0 {
    margin-top: 0 !important;
  }
  .mt-md-1 {
    margin-top: 0.25rem !important;
  }
  .mt-md-2 {
    margin-top: 0.5rem !important;
  }
  .mt-md-3 {
    margin-top: 1rem !important;
  }
  .mt-md-4 {
    margin-top: 1.5rem !important;
  }
  .mt-md-5 {
    margin-top: 3rem !important;
  }
  .mt-md-auto {
    margin-top: auto !important;
  }
  .me-md-0 {
    margin-right: 0 !important;
  }
  .me-md-1 {
    margin-right: 0.25rem !important;
  }
  .me-md-2 {
    margin-right: 0.5rem !important;
  }
  .me-md-3 {
    margin-right: 1rem !important;
  }
  .me-md-4 {
    margin-right: 1.5rem !important;
  }
  .me-md-5 {
    margin-right: 3rem !important;
  }
  .me-md-auto {
    margin-right: auto !important;
  }
  .mb-md-0 {
    margin-bottom: 0 !important;
  }
  .mb-md-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-md-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-md-3 {
    margin-bottom: 1rem !important;
  }
  .mb-md-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-md-5 {
    margin-bottom: 3rem !important;
  }
  .mb-md-auto {
    margin-bottom: auto !important;
  }
  .ms-md-0 {
    margin-left: 0 !important;
  }
  .ms-md-1 {
    margin-left: 0.25rem !important;
  }
  .ms-md-2 {
    margin-left: 0.5rem !important;
  }
  .ms-md-3 {
    margin-left: 1rem !important;
  }
  .ms-md-4 {
    margin-left: 1.5rem !important;
  }
  .ms-md-5 {
    margin-left: 3rem !important;
  }
  .ms-md-auto {
    margin-left: auto !important;
  }
  .p-md-0 {
    padding: 0 !important;
  }
  .p-md-1 {
    padding: 0.25rem !important;
  }
  .p-md-2 {
    padding: 0.5rem !important;
  }
  .p-md-3 {
    padding: 1rem !important;
  }
  .p-md-4 {
    padding: 1.5rem !important;
  }
  .p-md-5 {
    padding: 3rem !important;
  }
  .px-md-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-md-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-md-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-md-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-md-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-md-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-md-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-md-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-md-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-md-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-md-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-md-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-md-0 {
    padding-top: 0 !important;
  }
  .pt-md-1 {
    padding-top: 0.25rem !important;
  }
  .pt-md-2 {
    padding-top: 0.5rem !important;
  }
  .pt-md-3 {
    padding-top: 1rem !important;
  }
  .pt-md-4 {
    padding-top: 1.5rem !important;
  }
  .pt-md-5 {
    padding-top: 3rem !important;
  }
  .pe-md-0 {
    padding-right: 0 !important;
  }
  .pe-md-1 {
    padding-right: 0.25rem !important;
  }
  .pe-md-2 {
    padding-right: 0.5rem !important;
  }
  .pe-md-3 {
    padding-right: 1rem !important;
  }
  .pe-md-4 {
    padding-right: 1.5rem !important;
  }
  .pe-md-5 {
    padding-right: 3rem !important;
  }
  .pb-md-0 {
    padding-bottom: 0 !important;
  }
  .pb-md-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-md-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-md-3 {
    padding-bottom: 1rem !important;
  }
  .pb-md-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-md-5 {
    padding-bottom: 3rem !important;
  }
  .ps-md-0 {
    padding-left: 0 !important;
  }
  .ps-md-1 {
    padding-left: 0.25rem !important;
  }
  .ps-md-2 {
    padding-left: 0.5rem !important;
  }
  .ps-md-3 {
    padding-left: 1rem !important;
  }
  .ps-md-4 {
    padding-left: 1.5rem !important;
  }
  .ps-md-5 {
    padding-left: 3rem !important;
  }
  .gap-md-0 {
    gap: 0 !important;
  }
  .gap-md-1 {
    gap: 0.25rem !important;
  }
  .gap-md-2 {
    gap: 0.5rem !important;
  }
  .gap-md-3 {
    gap: 1rem !important;
  }
  .gap-md-4 {
    gap: 1.5rem !important;
  }
  .gap-md-5 {
    gap: 3rem !important;
  }
  .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;
  }
  .justify-content-lg-start {
    justify-content: flex-start !important;
  }
  .justify-content-lg-end {
    justify-content: flex-end !important;
  }
  .justify-content-lg-center {
    justify-content: center !important;
  }
  .justify-content-lg-between {
    justify-content: space-between !important;
  }
  .justify-content-lg-around {
    justify-content: space-around !important;
  }
  .justify-content-lg-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-lg-start {
    align-items: flex-start !important;
  }
  .align-items-lg-end {
    align-items: flex-end !important;
  }
  .align-items-lg-center {
    align-items: center !important;
  }
  .align-items-lg-baseline {
    align-items: baseline !important;
  }
  .align-items-lg-stretch {
    align-items: stretch !important;
  }
  .align-content-lg-start {
    align-content: flex-start !important;
  }
  .align-content-lg-end {
    align-content: flex-end !important;
  }
  .align-content-lg-center {
    align-content: center !important;
  }
  .align-content-lg-between {
    align-content: space-between !important;
  }
  .align-content-lg-around {
    align-content: space-around !important;
  }
  .align-content-lg-stretch {
    align-content: stretch !important;
  }
  .align-self-lg-auto {
    align-self: auto !important;
  }
  .align-self-lg-start {
    align-self: flex-start !important;
  }
  .align-self-lg-end {
    align-self: flex-end !important;
  }
  .align-self-lg-center {
    align-self: center !important;
  }
  .align-self-lg-baseline {
    align-self: baseline !important;
  }
  .align-self-lg-stretch {
    align-self: stretch !important;
  }
  .order-lg-first {
    order: -1 !important;
  }
  .order-lg-0 {
    order: 0 !important;
  }
  .order-lg-1 {
    order: 1 !important;
  }
  .order-lg-2 {
    order: 2 !important;
  }
  .order-lg-3 {
    order: 3 !important;
  }
  .order-lg-4 {
    order: 4 !important;
  }
  .order-lg-5 {
    order: 5 !important;
  }
  .order-lg-last {
    order: 6 !important;
  }
  .m-lg-0 {
    margin: 0 !important;
  }
  .m-lg-1 {
    margin: 0.25rem !important;
  }
  .m-lg-2 {
    margin: 0.5rem !important;
  }
  .m-lg-3 {
    margin: 1rem !important;
  }
  .m-lg-4 {
    margin: 1.5rem !important;
  }
  .m-lg-5 {
    margin: 3rem !important;
  }
  .m-lg-auto {
    margin: auto !important;
  }
  .mx-lg-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-lg-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-lg-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-lg-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-lg-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-lg-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-lg-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-lg-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-lg-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-lg-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-lg-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-lg-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-lg-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-lg-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-lg-0 {
    margin-top: 0 !important;
  }
  .mt-lg-1 {
    margin-top: 0.25rem !important;
  }
  .mt-lg-2 {
    margin-top: 0.5rem !important;
  }
  .mt-lg-3 {
    margin-top: 1rem !important;
  }
  .mt-lg-4 {
    margin-top: 1.5rem !important;
  }
  .mt-lg-5 {
    margin-top: 3rem !important;
  }
  .mt-lg-auto {
    margin-top: auto !important;
  }
  .me-lg-0 {
    margin-right: 0 !important;
  }
  .me-lg-1 {
    margin-right: 0.25rem !important;
  }
  .me-lg-2 {
    margin-right: 0.5rem !important;
  }
  .me-lg-3 {
    margin-right: 1rem !important;
  }
  .me-lg-4 {
    margin-right: 1.5rem !important;
  }
  .me-lg-5 {
    margin-right: 3rem !important;
  }
  .me-lg-auto {
    margin-right: auto !important;
  }
  .mb-lg-0 {
    margin-bottom: 0 !important;
  }
  .mb-lg-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-lg-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-lg-3 {
    margin-bottom: 1rem !important;
  }
  .mb-lg-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-lg-5 {
    margin-bottom: 3rem !important;
  }
  .mb-lg-auto {
    margin-bottom: auto !important;
  }
  .ms-lg-0 {
    margin-left: 0 !important;
  }
  .ms-lg-1 {
    margin-left: 0.25rem !important;
  }
  .ms-lg-2 {
    margin-left: 0.5rem !important;
  }
  .ms-lg-3 {
    margin-left: 1rem !important;
  }
  .ms-lg-4 {
    margin-left: 1.5rem !important;
  }
  .ms-lg-5 {
    margin-left: 3rem !important;
  }
  .ms-lg-auto {
    margin-left: auto !important;
  }
  .p-lg-0 {
    padding: 0 !important;
  }
  .p-lg-1 {
    padding: 0.25rem !important;
  }
  .p-lg-2 {
    padding: 0.5rem !important;
  }
  .p-lg-3 {
    padding: 1rem !important;
  }
  .p-lg-4 {
    padding: 1.5rem !important;
  }
  .p-lg-5 {
    padding: 3rem !important;
  }
  .px-lg-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-lg-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-lg-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-lg-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-lg-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-lg-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-lg-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-lg-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-lg-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-lg-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-lg-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-lg-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-lg-0 {
    padding-top: 0 !important;
  }
  .pt-lg-1 {
    padding-top: 0.25rem !important;
  }
  .pt-lg-2 {
    padding-top: 0.5rem !important;
  }
  .pt-lg-3 {
    padding-top: 1rem !important;
  }
  .pt-lg-4 {
    padding-top: 1.5rem !important;
  }
  .pt-lg-5 {
    padding-top: 3rem !important;
  }
  .pe-lg-0 {
    padding-right: 0 !important;
  }
  .pe-lg-1 {
    padding-right: 0.25rem !important;
  }
  .pe-lg-2 {
    padding-right: 0.5rem !important;
  }
  .pe-lg-3 {
    padding-right: 1rem !important;
  }
  .pe-lg-4 {
    padding-right: 1.5rem !important;
  }
  .pe-lg-5 {
    padding-right: 3rem !important;
  }
  .pb-lg-0 {
    padding-bottom: 0 !important;
  }
  .pb-lg-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-lg-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-lg-3 {
    padding-bottom: 1rem !important;
  }
  .pb-lg-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-lg-5 {
    padding-bottom: 3rem !important;
  }
  .ps-lg-0 {
    padding-left: 0 !important;
  }
  .ps-lg-1 {
    padding-left: 0.25rem !important;
  }
  .ps-lg-2 {
    padding-left: 0.5rem !important;
  }
  .ps-lg-3 {
    padding-left: 1rem !important;
  }
  .ps-lg-4 {
    padding-left: 1.5rem !important;
  }
  .ps-lg-5 {
    padding-left: 3rem !important;
  }
  .gap-lg-0 {
    gap: 0 !important;
  }
  .gap-lg-1 {
    gap: 0.25rem !important;
  }
  .gap-lg-2 {
    gap: 0.5rem !important;
  }
  .gap-lg-3 {
    gap: 1rem !important;
  }
  .gap-lg-4 {
    gap: 1.5rem !important;
  }
  .gap-lg-5 {
    gap: 3rem !important;
  }
  .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;
  }
  .justify-content-xl-start {
    justify-content: flex-start !important;
  }
  .justify-content-xl-end {
    justify-content: flex-end !important;
  }
  .justify-content-xl-center {
    justify-content: center !important;
  }
  .justify-content-xl-between {
    justify-content: space-between !important;
  }
  .justify-content-xl-around {
    justify-content: space-around !important;
  }
  .justify-content-xl-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-xl-start {
    align-items: flex-start !important;
  }
  .align-items-xl-end {
    align-items: flex-end !important;
  }
  .align-items-xl-center {
    align-items: center !important;
  }
  .align-items-xl-baseline {
    align-items: baseline !important;
  }
  .align-items-xl-stretch {
    align-items: stretch !important;
  }
  .align-content-xl-start {
    align-content: flex-start !important;
  }
  .align-content-xl-end {
    align-content: flex-end !important;
  }
  .align-content-xl-center {
    align-content: center !important;
  }
  .align-content-xl-between {
    align-content: space-between !important;
  }
  .align-content-xl-around {
    align-content: space-around !important;
  }
  .align-content-xl-stretch {
    align-content: stretch !important;
  }
  .align-self-xl-auto {
    align-self: auto !important;
  }
  .align-self-xl-start {
    align-self: flex-start !important;
  }
  .align-self-xl-end {
    align-self: flex-end !important;
  }
  .align-self-xl-center {
    align-self: center !important;
  }
  .align-self-xl-baseline {
    align-self: baseline !important;
  }
  .align-self-xl-stretch {
    align-self: stretch !important;
  }
  .order-xl-first {
    order: -1 !important;
  }
  .order-xl-0 {
    order: 0 !important;
  }
  .order-xl-1 {
    order: 1 !important;
  }
  .order-xl-2 {
    order: 2 !important;
  }
  .order-xl-3 {
    order: 3 !important;
  }
  .order-xl-4 {
    order: 4 !important;
  }
  .order-xl-5 {
    order: 5 !important;
  }
  .order-xl-last {
    order: 6 !important;
  }
  .m-xl-0 {
    margin: 0 !important;
  }
  .m-xl-1 {
    margin: 0.25rem !important;
  }
  .m-xl-2 {
    margin: 0.5rem !important;
  }
  .m-xl-3 {
    margin: 1rem !important;
  }
  .m-xl-4 {
    margin: 1.5rem !important;
  }
  .m-xl-5 {
    margin: 3rem !important;
  }
  .m-xl-auto {
    margin: auto !important;
  }
  .mx-xl-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-xl-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-xl-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-xl-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-xl-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-xl-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-xl-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-xl-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-xl-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-xl-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-xl-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-xl-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-xl-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-xl-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-xl-0 {
    margin-top: 0 !important;
  }
  .mt-xl-1 {
    margin-top: 0.25rem !important;
  }
  .mt-xl-2 {
    margin-top: 0.5rem !important;
  }
  .mt-xl-3 {
    margin-top: 1rem !important;
  }
  .mt-xl-4 {
    margin-top: 1.5rem !important;
  }
  .mt-xl-5 {
    margin-top: 3rem !important;
  }
  .mt-xl-auto {
    margin-top: auto !important;
  }
  .me-xl-0 {
    margin-right: 0 !important;
  }
  .me-xl-1 {
    margin-right: 0.25rem !important;
  }
  .me-xl-2 {
    margin-right: 0.5rem !important;
  }
  .me-xl-3 {
    margin-right: 1rem !important;
  }
  .me-xl-4 {
    margin-right: 1.5rem !important;
  }
  .me-xl-5 {
    margin-right: 3rem !important;
  }
  .me-xl-auto {
    margin-right: auto !important;
  }
  .mb-xl-0 {
    margin-bottom: 0 !important;
  }
  .mb-xl-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-xl-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-xl-3 {
    margin-bottom: 1rem !important;
  }
  .mb-xl-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-xl-5 {
    margin-bottom: 3rem !important;
  }
  .mb-xl-auto {
    margin-bottom: auto !important;
  }
  .ms-xl-0 {
    margin-left: 0 !important;
  }
  .ms-xl-1 {
    margin-left: 0.25rem !important;
  }
  .ms-xl-2 {
    margin-left: 0.5rem !important;
  }
  .ms-xl-3 {
    margin-left: 1rem !important;
  }
  .ms-xl-4 {
    margin-left: 1.5rem !important;
  }
  .ms-xl-5 {
    margin-left: 3rem !important;
  }
  .ms-xl-auto {
    margin-left: auto !important;
  }
  .p-xl-0 {
    padding: 0 !important;
  }
  .p-xl-1 {
    padding: 0.25rem !important;
  }
  .p-xl-2 {
    padding: 0.5rem !important;
  }
  .p-xl-3 {
    padding: 1rem !important;
  }
  .p-xl-4 {
    padding: 1.5rem !important;
  }
  .p-xl-5 {
    padding: 3rem !important;
  }
  .px-xl-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-xl-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-xl-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-xl-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-xl-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-xl-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-xl-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-xl-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-xl-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-xl-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-xl-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-xl-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-xl-0 {
    padding-top: 0 !important;
  }
  .pt-xl-1 {
    padding-top: 0.25rem !important;
  }
  .pt-xl-2 {
    padding-top: 0.5rem !important;
  }
  .pt-xl-3 {
    padding-top: 1rem !important;
  }
  .pt-xl-4 {
    padding-top: 1.5rem !important;
  }
  .pt-xl-5 {
    padding-top: 3rem !important;
  }
  .pe-xl-0 {
    padding-right: 0 !important;
  }
  .pe-xl-1 {
    padding-right: 0.25rem !important;
  }
  .pe-xl-2 {
    padding-right: 0.5rem !important;
  }
  .pe-xl-3 {
    padding-right: 1rem !important;
  }
  .pe-xl-4 {
    padding-right: 1.5rem !important;
  }
  .pe-xl-5 {
    padding-right: 3rem !important;
  }
  .pb-xl-0 {
    padding-bottom: 0 !important;
  }
  .pb-xl-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-xl-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-xl-3 {
    padding-bottom: 1rem !important;
  }
  .pb-xl-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-xl-5 {
    padding-bottom: 3rem !important;
  }
  .ps-xl-0 {
    padding-left: 0 !important;
  }
  .ps-xl-1 {
    padding-left: 0.25rem !important;
  }
  .ps-xl-2 {
    padding-left: 0.5rem !important;
  }
  .ps-xl-3 {
    padding-left: 1rem !important;
  }
  .ps-xl-4 {
    padding-left: 1.5rem !important;
  }
  .ps-xl-5 {
    padding-left: 3rem !important;
  }
  .gap-xl-0 {
    gap: 0 !important;
  }
  .gap-xl-1 {
    gap: 0.25rem !important;
  }
  .gap-xl-2 {
    gap: 0.5rem !important;
  }
  .gap-xl-3 {
    gap: 1rem !important;
  }
  .gap-xl-4 {
    gap: 1.5rem !important;
  }
  .gap-xl-5 {
    gap: 3rem !important;
  }
  .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;
  }
  .justify-content-xxl-start {
    justify-content: flex-start !important;
  }
  .justify-content-xxl-end {
    justify-content: flex-end !important;
  }
  .justify-content-xxl-center {
    justify-content: center !important;
  }
  .justify-content-xxl-between {
    justify-content: space-between !important;
  }
  .justify-content-xxl-around {
    justify-content: space-around !important;
  }
  .justify-content-xxl-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-xxl-start {
    align-items: flex-start !important;
  }
  .align-items-xxl-end {
    align-items: flex-end !important;
  }
  .align-items-xxl-center {
    align-items: center !important;
  }
  .align-items-xxl-baseline {
    align-items: baseline !important;
  }
  .align-items-xxl-stretch {
    align-items: stretch !important;
  }
  .align-content-xxl-start {
    align-content: flex-start !important;
  }
  .align-content-xxl-end {
    align-content: flex-end !important;
  }
  .align-content-xxl-center {
    align-content: center !important;
  }
  .align-content-xxl-between {
    align-content: space-between !important;
  }
  .align-content-xxl-around {
    align-content: space-around !important;
  }
  .align-content-xxl-stretch {
    align-content: stretch !important;
  }
  .align-self-xxl-auto {
    align-self: auto !important;
  }
  .align-self-xxl-start {
    align-self: flex-start !important;
  }
  .align-self-xxl-end {
    align-self: flex-end !important;
  }
  .align-self-xxl-center {
    align-self: center !important;
  }
  .align-self-xxl-baseline {
    align-self: baseline !important;
  }
  .align-self-xxl-stretch {
    align-self: stretch !important;
  }
  .order-xxl-first {
    order: -1 !important;
  }
  .order-xxl-0 {
    order: 0 !important;
  }
  .order-xxl-1 {
    order: 1 !important;
  }
  .order-xxl-2 {
    order: 2 !important;
  }
  .order-xxl-3 {
    order: 3 !important;
  }
  .order-xxl-4 {
    order: 4 !important;
  }
  .order-xxl-5 {
    order: 5 !important;
  }
  .order-xxl-last {
    order: 6 !important;
  }
  .m-xxl-0 {
    margin: 0 !important;
  }
  .m-xxl-1 {
    margin: 0.25rem !important;
  }
  .m-xxl-2 {
    margin: 0.5rem !important;
  }
  .m-xxl-3 {
    margin: 1rem !important;
  }
  .m-xxl-4 {
    margin: 1.5rem !important;
  }
  .m-xxl-5 {
    margin: 3rem !important;
  }
  .m-xxl-auto {
    margin: auto !important;
  }
  .mx-xxl-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-xxl-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-xxl-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-xxl-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-xxl-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-xxl-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-xxl-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-xxl-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-xxl-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-xxl-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-xxl-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-xxl-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-xxl-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-xxl-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-xxl-0 {
    margin-top: 0 !important;
  }
  .mt-xxl-1 {
    margin-top: 0.25rem !important;
  }
  .mt-xxl-2 {
    margin-top: 0.5rem !important;
  }
  .mt-xxl-3 {
    margin-top: 1rem !important;
  }
  .mt-xxl-4 {
    margin-top: 1.5rem !important;
  }
  .mt-xxl-5 {
    margin-top: 3rem !important;
  }
  .mt-xxl-auto {
    margin-top: auto !important;
  }
  .me-xxl-0 {
    margin-right: 0 !important;
  }
  .me-xxl-1 {
    margin-right: 0.25rem !important;
  }
  .me-xxl-2 {
    margin-right: 0.5rem !important;
  }
  .me-xxl-3 {
    margin-right: 1rem !important;
  }
  .me-xxl-4 {
    margin-right: 1.5rem !important;
  }
  .me-xxl-5 {
    margin-right: 3rem !important;
  }
  .me-xxl-auto {
    margin-right: auto !important;
  }
  .mb-xxl-0 {
    margin-bottom: 0 !important;
  }
  .mb-xxl-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-xxl-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-xxl-3 {
    margin-bottom: 1rem !important;
  }
  .mb-xxl-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-xxl-5 {
    margin-bottom: 3rem !important;
  }
  .mb-xxl-auto {
    margin-bottom: auto !important;
  }
  .ms-xxl-0 {
    margin-left: 0 !important;
  }
  .ms-xxl-1 {
    margin-left: 0.25rem !important;
  }
  .ms-xxl-2 {
    margin-left: 0.5rem !important;
  }
  .ms-xxl-3 {
    margin-left: 1rem !important;
  }
  .ms-xxl-4 {
    margin-left: 1.5rem !important;
  }
  .ms-xxl-5 {
    margin-left: 3rem !important;
  }
  .ms-xxl-auto {
    margin-left: auto !important;
  }
  .p-xxl-0 {
    padding: 0 !important;
  }
  .p-xxl-1 {
    padding: 0.25rem !important;
  }
  .p-xxl-2 {
    padding: 0.5rem !important;
  }
  .p-xxl-3 {
    padding: 1rem !important;
  }
  .p-xxl-4 {
    padding: 1.5rem !important;
  }
  .p-xxl-5 {
    padding: 3rem !important;
  }
  .px-xxl-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-xxl-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-xxl-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-xxl-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-xxl-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-xxl-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-xxl-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-xxl-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-xxl-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-xxl-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-xxl-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-xxl-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-xxl-0 {
    padding-top: 0 !important;
  }
  .pt-xxl-1 {
    padding-top: 0.25rem !important;
  }
  .pt-xxl-2 {
    padding-top: 0.5rem !important;
  }
  .pt-xxl-3 {
    padding-top: 1rem !important;
  }
  .pt-xxl-4 {
    padding-top: 1.5rem !important;
  }
  .pt-xxl-5 {
    padding-top: 3rem !important;
  }
  .pe-xxl-0 {
    padding-right: 0 !important;
  }
  .pe-xxl-1 {
    padding-right: 0.25rem !important;
  }
  .pe-xxl-2 {
    padding-right: 0.5rem !important;
  }
  .pe-xxl-3 {
    padding-right: 1rem !important;
  }
  .pe-xxl-4 {
    padding-right: 1.5rem !important;
  }
  .pe-xxl-5 {
    padding-right: 3rem !important;
  }
  .pb-xxl-0 {
    padding-bottom: 0 !important;
  }
  .pb-xxl-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-xxl-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-xxl-3 {
    padding-bottom: 1rem !important;
  }
  .pb-xxl-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-xxl-5 {
    padding-bottom: 3rem !important;
  }
  .ps-xxl-0 {
    padding-left: 0 !important;
  }
  .ps-xxl-1 {
    padding-left: 0.25rem !important;
  }
  .ps-xxl-2 {
    padding-left: 0.5rem !important;
  }
  .ps-xxl-3 {
    padding-left: 1rem !important;
  }
  .ps-xxl-4 {
    padding-left: 1.5rem !important;
  }
  .ps-xxl-5 {
    padding-left: 3rem !important;
  }
  .gap-xxl-0 {
    gap: 0 !important;
  }
  .gap-xxl-1 {
    gap: 0.25rem !important;
  }
  .gap-xxl-2 {
    gap: 0.5rem !important;
  }
  .gap-xxl-3 {
    gap: 1rem !important;
  }
  .gap-xxl-4 {
    gap: 1.5rem !important;
  }
  .gap-xxl-5 {
    gap: 3rem !important;
  }
  .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;
  }
}
/*------------ COLORS ------------ */
/*------------ BTN-BORDER ------------ */
/*------------ BTN-SPACING-BOTTOM ------------ */
/*------------ GRADIENT ANGLE ------------ */
/*------------ BTN SIZES ------------ */
.webf-agenda.fwd .top-container .tb-alldays {
  border-collapse: collapse;
  width: 100%;
  table-layout: fixed;
}
.webf-agenda.fwd .top-container .tb-alldays .td-coldayname {
  background-color: #e3e3e3;
}
.webf-agenda.fwd .top-container .tb-alldays .td-coldayname .dayname {
  text-align: center;
  padding: 4px;
  font-size: 12px;
}
.webf-agenda.fwd .top-container .tb-alldays .td-coldayname .dayname .daylink {
  cursor: pointer;
}
.webf-agenda.fwd .top-container .tb-alldays .td-coldayname .dayname .daylink:hover {
  text-decoration: underline;
}
.webf-agenda.fwd .top-container .tb-alldays .td-padding {
  width: 45px;
  background-color: #e3e3e3;
}
.webf-agenda.fwd .top-container .tb-alldays .td-scrollbar-padding {
  width: 14px;
  background-color: #e3e3e3;
}
.webf-agenda.fwd .top-container .tb-alldays .alldays {
  position: relative;
  min-height: 14px;
}

.webf-agenda.fwd {
  width: 100%;
  border: 1px solid #ccc;
  background: #fff;
  font-family: arial, Helvetica, sans-serif;
}
.webf-agenda.fwd .header {
  height: 26px;
  line-height: 26px;
  padding: 10px;
  background-image: -owg-linear-gradient(white, #dbe2ee);
  background-image: -webkit-linear-gradient(white, #dbe2ee);
  background-image: -moz-linear-gradient(white, #dbe2ee);
  background-image: -o-linear-gradient(white, #dbe2ee);
  background-image: linear-gradient(white, #dbe2ee);
}
.webf-agenda.fwd .header .webf-buttons-group {
  margin: 0 2px;
}
.webf-agenda.fwd .header .left {
  float: left;
  height: 26px;
}
.webf-agenda.fwd .header .right {
  float: right;
  height: 100%;
  line-height: 26px;
}
.webf-agenda.fwd .header .center {
  text-align: center;
  font-size: 18px;
  overflow: hidden;
  -ms-text-overflow: ellipsis;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.webf-agenda.fwd .days {
  padding: 10px 0 5px;
  background: #e5e5e5;
}
.webf-agenda.fwd .days .tb-days {
  table-layout: fixed;
  width: 100%;
  text-align: center;
}
.webf-agenda.fwd .days .tb-days .td-day a.link-days {
  color: #555;
}
.webf-agenda.fwd .days .tb-days .td-day a.link-days.disabled {
  cursor: default;
}
.webf-agenda.fwd .days .tb-days .td-day a.link-days.disabled:hover {
  text-decoration: none;
}
.webf-agenda.fwd .days .tb-days .td-hours {
  width: 45px;
}
.webf-agenda.fwd .users {
  padding: 2px 0;
  background: #e5e5e5;
}
.webf-agenda.fwd .users .td-hours {
  width: 45px;
}
.webf-agenda.fwd .users .tb-users {
  table-layout: fixed;
  width: 100%;
  text-align: center;
}
.webf-agenda.fwd .users .tb-users td .user {
  padding: 0 3px;
  white-space: nowrap;
  overflow: hidden;
}
.webf-agenda.fwd .grid {
  background-color: #FFFFFF;
  position: relative;
  width: 100%;
  overflow: auto;
}
.webf-agenda.fwd .grid .tb-grid {
  width: 100%;
  table-layout: fixed;
}
.webf-agenda.fwd .grid .tb-grid .td-hours {
  width: 45px;
  background: #e5e5e5;
}
.webf-agenda.fwd .grid .tb-grid .td-hours span.hour {
  display: block;
  float: right;
  margin: 0 5px 0 0;
  font-size: 13px;
}
.webf-agenda.fwd .grid .tb-grid .td-hours .border-bottom {
  position: relative;
  bottom: 1px;
  left: 0;
  width: 100%;
  height: 1px;
  background: #ccc;
  font-size: 0;
}
.webf-agenda.fwd .grid .tb-grid .timeslot {
  border-bottom: 1px dotted #ddd;
}
.webf-agenda.fwd .grid .tb-grid .timeslot.hour {
  border-bottom: 1px solid #ccc;
}
.webf-agenda.fwd .grid .tb-grid .td-day-month {
  border: 1px solid #ccc;
}
.webf-agenda.fwd .grid .tb-grid .td-day-month.drop {
  background: #f2f5ff;
}
.webf-agenda.fwd .grid .tb-grid .td-day-month .cell-day .num-day {
  background-color: #e2e9ff;
  background: #f5f5f5;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 16px;
  line-height: 16px;
  text-align: right;
  overflow: hidden;
  color: #aaa;
  font-size: 11px;
}
.webf-agenda.fwd .grid .tb-grid .td-day-month .cell-day .num-day a {
  color: #aaa;
}
.webf-agenda.fwd .grid .tb-grid .td-day-month .cell-day .num-day a.disabled {
  cursor: default;
}
.webf-agenda.fwd .grid .tb-grid .td-day-month .cell-day .num-day a.disabled:hover {
  text-decoration: none;
}
.webf-agenda.fwd .grid .tb-grid .td-day-month .cell-day .num-day span {
  display: block;
  padding-right: 4px;
}
.webf-agenda.fwd .grid .tb-grid .td-day-month .cell-day .num-day.current {
  color: #444;
  font-weight: bold;
}
.webf-agenda.fwd .grid .tb-grid .td-day-month .cell-day .num-day.current a {
  color: #444;
}
.webf-agenda.fwd .grid .tb-grid .td-day-month .cell-day .events {
  overflow-y: auto;
  overflow-x: hidden;
  position: relative;
  top: 18px;
  left: 0;
}
.webf-agenda.fwd .grid .tb-grid .td-day-month .cell-day .events .event {
  color: #fff;
  cursor: pointer;
}
.webf-agenda.fwd .grid .tb-grid .td-day-month .cell-day .events .event .title {
  margin: 0 2px 2px 2px;
  border: 1px solid #1B62C0;
  height: 15px;
  min-height: 15px;
  line-height: 15px;
  background: #2B72D0;
  font-size: 10px;
  text-align: left;
  white-space: nowrap;
  overflow: hidden;
  text-indent: 3px;
}
.webf-agenda.fwd .grid .tb-grid .td-day-month .first-row {
  border-top: 0;
}
.webf-agenda.fwd .grid .tb-grid .td-day-month .last-row {
  border-bottom: 0;
}
.webf-agenda.fwd .grid .tb-grid .td-day-month .first-col {
  border-left: 0;
}
.webf-agenda.fwd .grid .tb-grid .td-day-month .last-col {
  border-right: 0;
}
.webf-agenda.fwd .grid .tb-grid .td-day-month .cell-day {
  position: relative;
}
.webf-agenda.fwd .grid .agenda {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.webf-agenda.fwd .grid .agenda .tb-agenda {
  width: 100%;
  height: 100%;
  table-layout: fixed;
}
.webf-agenda.fwd .grid .agenda .tb-agenda .td-hours {
  width: 45px;
}
.webf-agenda.fwd .grid .agenda .tb-agenda .td-col-day {
  border-right: 1px solid #808080;
  height: 100%;
}
.webf-agenda.fwd .grid .agenda .tb-agenda .td-col-day:last-child {
  border-right: 0;
}
.webf-agenda.fwd .grid .agenda .tb-agenda .td-col-day .col-day-full {
  position: relative;
  height: 100%;
}
.webf-agenda.fwd .grid .agenda .tb-agenda .td-col-day .col-day-full .tb-users {
  width: 100%;
  height: 100%;
  table-layout: fixed;
}
.webf-agenda.fwd .grid .agenda .tb-agenda .td-col-day .col-day-full .tb-users td {
  border-right: 1px dashed #D3D3D3;
}
.webf-agenda.fwd .grid .agenda .tb-agenda .td-col-day .col-day-full .tb-users td .col-user {
  position: relative;
}
.webf-agenda.fwd .grid .agenda .tb-agenda .td-col-day .col-day-full .tb-users:last-child {
  border: 0;
}
.webf-agenda.fwd .grid .agenda .tb-agenda .td-col-day .col-day-full .event {
  width: 100%;
  background: #68A1E5;
  color: #fff;
  position: absolute;
  left: 0;
  cursor: pointer;
  overflow: hidden;
}
.webf-agenda.fwd .grid .agenda .tb-agenda .td-col-day .col-day-full .event.temporary {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=60);
  opacity: 0.6;
}
.webf-agenda.fwd .grid .agenda .tb-agenda .td-col-day .col-day-full .event .title {
  border: 1px solid #1B62C0;
  min-height: 15px;
  line-height: 15px;
  font-size: 10px;
  text-align: center;
  background: #2B72D0;
}
.webf-agenda.fwd .grid .agenda .tb-agenda .td-col-day .col-day-full .event .title.draggable {
  cursor: move;
}
.webf-agenda.fwd .grid .agenda .tb-agenda .td-col-day .col-day-full .event .content {
  text-align: center;
  overflow: hidden;
  padding: 3px 3px 0;
  font-size: 13px;
  line-height: 15px;
  height: 100%;
}
.webf-agenda.fwd .grid .agenda .tb-agenda .td-col-day .col-day-full .event .handle-resizable {
  width: 100%;
  position: absolute;
  bottom: -2px;
  left: 0;
  text-align: center;
  font-size: 9px;
  height: 10px;
  line-height: 8px;
  background: none;
  cursor: s-resize;
}
.webf-agenda.fwd .grid .agenda .tb-agenda .tb-agenda-days {
  width: 100%;
  table-layout: fixed;
}

.webf-agenda-dragging-event .title {
  color: #fff;
  cursor: pointer;
  margin: 0 2px 2px 2px;
  border: 1px solid #1B62C0;
  height: 15px;
  min-height: 15px;
  line-height: 15px;
  background: #2B72D0;
  font-size: 10px;
  text-align: left;
  white-space: nowrap;
  overflow: hidden;
  text-indent: 3px;
}
.webf-agenda-dragging-event .webf-scrollbar {
  right: 2px;
  width: 6px;
}
.webf-agenda-dragging-event .webf-scrollbar a.rail {
  border: 0;
  width: 4px;
  background: none;
}
.webf-agenda-dragging-event .webf-scrollbar a.handler {
  width: 4px;
  background: #555;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
}

.webf-agenda-user {
  position: relative;
}

.webf-agenda-tooltip-user .triangle {
  width: 0;
  height: 0;
  border: 6px solid transparent;
  border-top: 0;
  border-bottom: 6px solid #ccc;
  position: relative;
  top: -6px;
  margin: auto;
  z-index: 10001;
}
.webf-agenda-tooltip-user .triangle .inner-triangle {
  position: absolute;
  width: 0;
  height: 0;
  border: 6px solid transparent;
  border-top: 0;
  border-bottom: 6px solid #fff;
  top: 1px;
  left: -6px;
}
.webf-agenda-tooltip-user .triangle .content {
  border: 1px solid #ccc;
  background: #fff;
  color: #333;
  padding: 5px 10px;
  position: relative;
  top: -6px;
  z-index: 10000;
  box-shadow: 2px 2px 5px #ddd;
}

.webf-input-button .webf-label-input-file {
  cursor: pointer;
  margin-top: 0;
  margin-bottom: 0;
}
.webf-input-button input[type=file] {
  display: none;
}

.webf-alert-wrapper .webf-alert {
  position: fixed;
  z-index: 100000;
  top: 0;
  margin: 0 10px;
  width: 360px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  border-radius: 4px;
  -webkit-box-shadow: 0px 2px 8px 0px #888888;
  -moz-box-shadow: 0px 2px 8px 0px #888888;
  box-shadow: 0px 2px 8px 0px #888888;
  background-color: #fff;
  border-width: 1px;
  border-style: solid;
}
.webf-alert-wrapper .webf-alert.center {
  justify-self: center;
  left: 50%;
  margin-left: -180px;
}
.webf-alert-wrapper .webf-alert.left {
  left: 0;
}
.webf-alert-wrapper .webf-alert.right {
  right: 0;
}
@media only screen and (max-width: 395px) {
  .webf-alert-wrapper .webf-alert.center, .webf-alert-wrapper .webf-alert.left, .webf-alert-wrapper .webf-alert.right {
    width: auto;
    margin: 0 10px;
    right: 0;
    left: 0;
  }
}
.webf-alert-wrapper .webf-alert .message {
  padding: 15px 30px 15px 15px;
}
.webf-alert-wrapper .webf-alert .message .webf-button {
  line-height: 0;
  position: relative;
  padding: 4px;
  font-size: 0;
  float: right;
  right: -21px;
}
.webf-alert-wrapper .webf-alert .message .webf-button > i.fas {
  vertical-align: middle;
  font-size: 0.75rem;
}
.webf-alert-wrapper .webf-alert.webf-alert-default {
  border-color: #e6e6e6;
  color: white;
  text-shadow: rgba(0, 0, 0, 0.35) 1px 1px 2px;
  background-color: white;
}
.webf-alert-wrapper .webf-alert.webf-alert-primary {
  border-color: #2550d2;
  color: white;
  text-shadow: rgba(0, 0, 0, 0.35) 1px 1px 2px;
  background-color: #5477e1;
}
.webf-alert-wrapper .webf-alert.webf-alert-secondary {
  border-color: #cdd7e8;
  color: white;
  text-shadow: rgba(0, 0, 0, 0.35) 1px 1px 2px;
  background-color: #f7f9fb;
}
.webf-alert-wrapper .webf-alert.webf-alert-custom {
  border-color: #e6e6e6;
  color: white;
  text-shadow: rgba(0, 0, 0, 0.35) 1px 1px 2px;
  background-color: white;
}
.webf-alert-wrapper .webf-alert.webf-alert-light {
  border-color: #cdd7e8;
  color: white;
  text-shadow: rgba(0, 0, 0, 0.35) 1px 1px 2px;
  background-color: #f7f9fb;
}
.webf-alert-wrapper .webf-alert.webf-alert-dark {
  border-color: #3c3c3c;
  color: white;
  text-shadow: rgba(0, 0, 0, 0.35) 1px 1px 2px;
  background-color: #5a5a5a;
}
.webf-alert-wrapper .webf-alert.webf-alert-action {
  border-color: #da2064;
  color: white;
  text-shadow: rgba(0, 0, 0, 0.35) 1px 1px 2px;
  background-color: #e55288;
}
.webf-alert-wrapper .webf-alert.webf-alert-info {
  border-color: #23a9d9;
  color: white;
  text-shadow: rgba(0, 0, 0, 0.35) 1px 1px 2px;
  background-color: #56bee3;
}
.webf-alert-wrapper .webf-alert.webf-alert-success {
  border-color: #49a54e;
  color: white;
  text-shadow: rgba(0, 0, 0, 0.35) 1px 1px 2px;
  background-color: #6dbe71;
}
.webf-alert-wrapper .webf-alert.webf-alert-warning {
  border-color: #f4a31c;
  color: white;
  text-shadow: rgba(0, 0, 0, 0.35) 1px 1px 2px;
  background-color: #f6bb57;
}
.webf-alert-wrapper .webf-alert.webf-alert-danger {
  border-color: #e82827;
  color: white;
  text-shadow: rgba(0, 0, 0, 0.35) 1px 1px 2px;
  background-color: #ee5f5e;
}
.webf-alert-wrapper .webf-alert.webf-alert-lightgrey {
  border-color: gainsboro;
  color: white;
  text-shadow: rgba(0, 0, 0, 0.35) 1px 1px 2px;
  background-color: #fafafa;
}
.webf-list-autocomplete {
  width: auto;
}
.webf-list-autocomplete li.webf-list-item-more {
  height: 12px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.webf-list-autocomplete li.webf-list-item-more > a {
  display: block;
  border: 1px solid transparent;
  text-align: center;
  height: 10px;
  line-height: 10px;
  font-size: 9px;
  cursor: pointer;
}
.webf-list-autocomplete li.webf-list-item-more > a:hover {
  background: #f3f3f3;
  border: 1px solid #ddd;
}
.webf-list-autocomplete li.webf-list-item.webf-list-item-option.enabled.webf-noresult {
  height: auto;
  font-style: italic;
  color: grey;
  text-align: center;
  padding: 5px 10px;
}
.webf-list-autocomplete li.webf-list-item.webf-list-item-option.enabled.webf-noresult:hover a, .webf-list-autocomplete li.webf-list-item.webf-list-item-option.enabled.webf-noresult.webf-focus a {
  border-color: transparent;
  background: none;
}
.webf-list-autocomplete li.webf-list-item.webf-list-item-option.enabled.webf-noresult:hover a:hover, .webf-list-autocomplete li.webf-list-item.webf-list-item-option.enabled.webf-noresult.webf-focus a:hover {
  text-decoration: underline;
}

.webf-md-text .wrapper-webf-aucocomplete {
  height: 28px;
}
.webf-md-text.outlined .wrapper-webf-aucocomplete {
  height: 14px;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  padding: 0;
  border: 0;
}

.hidden {
  display: none !important;
}

.webf-separator {
  background: #ddd;
  margin: 20px 0;
  height: 1px;
  font-size: 0;
}
.webf-separator.secondary {
  margin: 12px 0;
  background: #eaeaea;
}

.webf-box {
  background-color: white;
  color: #555;
  -webkit-border-radius: 0.5rem;
  -moz-border-radius: 0.5rem;
  -ms-border-radius: 0.5rem;
  -o-border-radius: 0.5rem;
  border-radius: 0.5rem;
  border: 1px solid #bbbbbb;
  box-shadow: 0 0.25rem 1rem rgba(0, 0, 0, 0.1) !important;
  margin-bottom: 0.5rem;
}
.webf-box.fold .box-header {
  border-radius: 0.5rem;
}
.webf-box.fold .box-header.drop {
  cursor: pointer;
}
.webf-box.fold .box-body {
  display: none;
}
.webf-box .box-header,
.webf-box .box-body,
.webf-box .box-footer {
  padding: 0.6rem 1rem;
}
.webf-box .box-header {
  background-color: white;
  color: #555;
  border-radius: 0.5rem 0.5rem 0 0;
  font-size: 1rem;
  font-family: arial, sans-serif;
  border-bottom: 1px solid #dee2e6;
}
.webf-box .box-header > .wrapper {
  min-height: 25px;
  display: flex;
  align-items: center;
  font-size: 1.05rem;
}
.webf-box .box-header > .wrapper > h3, .webf-box .box-header > .wrapper > .h3 {
  font-size: inherit;
  line-height: inherit;
  font-weight: normal;
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin: 0;
}
.webf-box .box-header > .webf-button {
  float: right;
  margin-left: 5px;
  padding-top: 2px;
  padding-bottom: 2px;
}
.webf-box > .box-body {
  font-size: 0.8rem;
  line-height: 1.3rem;
}
.webf-box > .box-footer {
  border-top: 1px solid #e4e4e4;
}
.webf-box.default {
  border-top-color: white;
}
.webf-box.default.plain {
  border-top-color: #d6d6d6;
}
.webf-box.default.plain > .box-header {
  background-color: white;
  color: #555;
}
.webf-box.default.plain > .box-header > .wrapper > h3 > a, .webf-box.default.plain > .box-header > .wrapper > .h3 > a {
  background-color: white;
  color: #555;
}
.webf-box.default.plain > .box-header .webf-button {
  border-color: transparent;
  background-color: white;
  color: #555;
}
.webf-box.default.plain > .box-header .webf-button:hover, .webf-box.default.plain > .box-header .webf-button:focus, .webf-box.default.plain > .box-header .webf-button:active, .webf-box.default.plain > .box-header .webf-button.webf-active {
  background-color: #e6e6e6;
}
.webf-box.default.plain > .box-header .webf-button:active, .webf-box.default.plain > .box-header .webf-button.webf-active {
  -webkit-box-shadow: inset 0px 0px 5px 1px #cccccc;
  -moz-box-shadow: inset 0px 0px 5px 1px #cccccc;
  box-shadow: inset 0px 0px 5px 1px #cccccc;
}
.webf-box.primary {
  border-top-color: #4b70df;
}
.webf-box.primary.plain {
  border-top-color: #2146b8;
}
.webf-box.primary.plain > .box-header {
  background-color: #4b70df;
  color: white;
}
.webf-box.primary.plain > .box-header > .wrapper > h3 > a, .webf-box.primary.plain > .box-header > .wrapper > .h3 > a {
  background-color: #4b70df;
  color: white;
}
.webf-box.primary.plain > .box-header .webf-button {
  border-color: transparent;
  background-color: #4b70df;
  color: white;
}
.webf-box.primary.plain > .box-header .webf-button:hover, .webf-box.primary.plain > .box-header .webf-button:focus, .webf-box.primary.plain > .box-header .webf-button:active, .webf-box.primary.plain > .box-header .webf-button.webf-active {
  background-color: #2550d2;
}
.webf-box.primary.plain > .box-header .webf-button:active, .webf-box.primary.plain > .box-header .webf-button.webf-active {
  -webkit-box-shadow: inset 0px 0px 5px 1px #1e40a6;
  -moz-box-shadow: inset 0px 0px 5px 1px #1e40a6;
  box-shadow: inset 0px 0px 5px 1px #1e40a6;
}
.webf-box.secondary {
  border-top-color: #f0f3f8;
}
.webf-box.secondary.plain {
  border-top-color: #b8c6de;
}
.webf-box.secondary.plain > .box-header {
  background-color: #f0f3f8;
  color: #555;
}
.webf-box.secondary.plain > .box-header > .wrapper > h3 > a, .webf-box.secondary.plain > .box-header > .wrapper > .h3 > a {
  background-color: #f0f3f8;
  color: #555;
}
.webf-box.secondary.plain > .box-header .webf-button {
  border-color: transparent;
  background-color: #f0f3f8;
  color: #555;
}
.webf-box.secondary.plain > .box-header .webf-button:hover, .webf-box.secondary.plain > .box-header .webf-button:focus, .webf-box.secondary.plain > .box-header .webf-button:active, .webf-box.secondary.plain > .box-header .webf-button.webf-active {
  background-color: #cdd7e8;
}
.webf-box.secondary.plain > .box-header .webf-button:active, .webf-box.secondary.plain > .box-header .webf-button.webf-active {
  -webkit-box-shadow: inset 0px 0px 5px 1px #aabbd8;
  -moz-box-shadow: inset 0px 0px 5px 1px #aabbd8;
  box-shadow: inset 0px 0px 5px 1px #aabbd8;
}
.webf-box.custom {
  border-top-color: #fff;
}
.webf-box.custom.plain {
  border-top-color: #d6d6d6;
}
.webf-box.custom.plain > .box-header {
  background-color: #fff;
  color: #555;
}
.webf-box.custom.plain > .box-header > .wrapper > h3 > a, .webf-box.custom.plain > .box-header > .wrapper > .h3 > a {
  background-color: #fff;
  color: #555;
}
.webf-box.custom.plain > .box-header .webf-button {
  border-color: transparent;
  background-color: #fff;
  color: #555;
}
.webf-box.custom.plain > .box-header .webf-button:hover, .webf-box.custom.plain > .box-header .webf-button:focus, .webf-box.custom.plain > .box-header .webf-button:active, .webf-box.custom.plain > .box-header .webf-button.webf-active {
  background-color: #e6e6e6;
}
.webf-box.custom.plain > .box-header .webf-button:active, .webf-box.custom.plain > .box-header .webf-button.webf-active {
  -webkit-box-shadow: inset 0px 0px 5px 1px #cccccc;
  -moz-box-shadow: inset 0px 0px 5px 1px #cccccc;
  box-shadow: inset 0px 0px 5px 1px #cccccc;
}
.webf-box.light {
  border-top-color: #f0f3f8;
}
.webf-box.light.plain {
  border-top-color: #b8c6de;
}
.webf-box.light.plain > .box-header {
  background-color: #f0f3f8;
  color: #555;
}
.webf-box.light.plain > .box-header > .wrapper > h3 > a, .webf-box.light.plain > .box-header > .wrapper > .h3 > a {
  background-color: #f0f3f8;
  color: #555;
}
.webf-box.light.plain > .box-header .webf-button {
  border-color: transparent;
  background-color: #f0f3f8;
  color: #555;
}
.webf-box.light.plain > .box-header .webf-button:hover, .webf-box.light.plain > .box-header .webf-button:focus, .webf-box.light.plain > .box-header .webf-button:active, .webf-box.light.plain > .box-header .webf-button.webf-active {
  background-color: #cdd7e8;
}
.webf-box.light.plain > .box-header .webf-button:active, .webf-box.light.plain > .box-header .webf-button.webf-active {
  -webkit-box-shadow: inset 0px 0px 5px 1px #aabbd8;
  -moz-box-shadow: inset 0px 0px 5px 1px #aabbd8;
  box-shadow: inset 0px 0px 5px 1px #aabbd8;
}
.webf-box.dark {
  border-top-color: #555;
}
.webf-box.dark.plain {
  border-top-color: #2c2c2c;
}
.webf-box.dark.plain > .box-header {
  background-color: #555;
  color: white;
}
.webf-box.dark.plain > .box-header > .wrapper > h3 > a, .webf-box.dark.plain > .box-header > .wrapper > .h3 > a {
  background-color: #555;
  color: white;
}
.webf-box.dark.plain > .box-header .webf-button {
  border-color: transparent;
  background-color: #555;
  color: white;
}
.webf-box.dark.plain > .box-header .webf-button:hover, .webf-box.dark.plain > .box-header .webf-button:focus, .webf-box.dark.plain > .box-header .webf-button:active, .webf-box.dark.plain > .box-header .webf-button.webf-active {
  background-color: #3c3c3c;
}
.webf-box.dark.plain > .box-header .webf-button:active, .webf-box.dark.plain > .box-header .webf-button.webf-active {
  -webkit-box-shadow: inset 0px 0px 5px 1px #222222;
  -moz-box-shadow: inset 0px 0px 5px 1px #222222;
  box-shadow: inset 0px 0px 5px 1px #222222;
}
.webf-box.action {
  border-top-color: #e44982;
}
.webf-box.action.plain {
  border-top-color: #bf1c58;
}
.webf-box.action.plain > .box-header {
  background-color: #e44982;
  color: white;
}
.webf-box.action.plain > .box-header > .wrapper > h3 > a, .webf-box.action.plain > .box-header > .wrapper > .h3 > a {
  background-color: #e44982;
  color: white;
}
.webf-box.action.plain > .box-header .webf-button {
  border-color: transparent;
  background-color: #e44982;
  color: white;
}
.webf-box.action.plain > .box-header .webf-button:hover, .webf-box.action.plain > .box-header .webf-button:focus, .webf-box.action.plain > .box-header .webf-button:active, .webf-box.action.plain > .box-header .webf-button.webf-active {
  background-color: #da2064;
}
.webf-box.action.plain > .box-header .webf-button:active, .webf-box.action.plain > .box-header .webf-button.webf-active {
  -webkit-box-shadow: inset 0px 0px 5px 1px #ad1a50;
  -moz-box-shadow: inset 0px 0px 5px 1px #ad1a50;
  box-shadow: inset 0px 0px 5px 1px #ad1a50;
}
.webf-box.info {
  border-top-color: #4dbbe2;
}
.webf-box.info.plain {
  border-top-color: #1f95be;
}
.webf-box.info.plain > .box-header {
  background-color: #4dbbe2;
  color: white;
}
.webf-box.info.plain > .box-header > .wrapper > h3 > a, .webf-box.info.plain > .box-header > .wrapper > .h3 > a {
  background-color: #4dbbe2;
  color: white;
}
.webf-box.info.plain > .box-header .webf-button {
  border-color: transparent;
  background-color: #4dbbe2;
  color: white;
}
.webf-box.info.plain > .box-header .webf-button:hover, .webf-box.info.plain > .box-header .webf-button:focus, .webf-box.info.plain > .box-header .webf-button:active, .webf-box.info.plain > .box-header .webf-button.webf-active {
  background-color: #23a9d9;
}
.webf-box.info.plain > .box-header .webf-button:active, .webf-box.info.plain > .box-header .webf-button.webf-active {
  -webkit-box-shadow: inset 0px 0px 5px 1px #1c87ad;
  -moz-box-shadow: inset 0px 0px 5px 1px #1c87ad;
  box-shadow: inset 0px 0px 5px 1px #1c87ad;
}
.webf-box.success {
  border-top-color: #66BB6A;
}
.webf-box.success.plain {
  border-top-color: #409044;
}
.webf-box.success.plain > .box-header {
  background-color: #66BB6A;
  color: white;
}
.webf-box.success.plain > .box-header > .wrapper > h3 > a, .webf-box.success.plain > .box-header > .wrapper > .h3 > a {
  background-color: #66BB6A;
  color: white;
}
.webf-box.success.plain > .box-header .webf-button {
  border-color: transparent;
  background-color: #66BB6A;
  color: white;
}
.webf-box.success.plain > .box-header .webf-button:hover, .webf-box.success.plain > .box-header .webf-button:focus, .webf-box.success.plain > .box-header .webf-button:active, .webf-box.success.plain > .box-header .webf-button.webf-active {
  background-color: #49a54e;
}
.webf-box.success.plain > .box-header .webf-button:active, .webf-box.success.plain > .box-header .webf-button.webf-active {
  -webkit-box-shadow: inset 0px 0px 5px 1px #3a813d;
  -moz-box-shadow: inset 0px 0px 5px 1px #3a813d;
  box-shadow: inset 0px 0px 5px 1px #3a813d;
}
.webf-box.warning {
  border-top-color: #f6b74d;
}
.webf-box.warning.plain {
  border-top-color: #e6940c;
}
.webf-box.warning.plain > .box-header {
  background-color: #f6b74d;
  color: white;
}
.webf-box.warning.plain > .box-header > .wrapper > h3 > a, .webf-box.warning.plain > .box-header > .wrapper > .h3 > a {
  background-color: #f6b74d;
  color: white;
}
.webf-box.warning.plain > .box-header .webf-button {
  border-color: transparent;
  background-color: #f6b74d;
  color: white;
}
.webf-box.warning.plain > .box-header .webf-button:hover, .webf-box.warning.plain > .box-header .webf-button:focus, .webf-box.warning.plain > .box-header .webf-button:active, .webf-box.warning.plain > .box-header .webf-button.webf-active {
  background-color: #f4a31c;
}
.webf-box.warning.plain > .box-header .webf-button:active, .webf-box.warning.plain > .box-header .webf-button.webf-active {
  -webkit-box-shadow: inset 0px 0px 5px 1px #d2880b;
  -moz-box-shadow: inset 0px 0px 5px 1px #d2880b;
  box-shadow: inset 0px 0px 5px 1px #d2880b;
}
.webf-box.danger {
  border-top-color: #ed5655;
}
.webf-box.danger.plain {
  border-top-color: #d91817;
}
.webf-box.danger.plain > .box-header {
  background-color: #ed5655;
  color: white;
}
.webf-box.danger.plain > .box-header > .wrapper > h3 > a, .webf-box.danger.plain > .box-header > .wrapper > .h3 > a {
  background-color: #ed5655;
  color: white;
}
.webf-box.danger.plain > .box-header .webf-button {
  border-color: transparent;
  background-color: #ed5655;
  color: white;
}
.webf-box.danger.plain > .box-header .webf-button:hover, .webf-box.danger.plain > .box-header .webf-button:focus, .webf-box.danger.plain > .box-header .webf-button:active, .webf-box.danger.plain > .box-header .webf-button.webf-active {
  background-color: #e82827;
}
.webf-box.danger.plain > .box-header .webf-button:active, .webf-box.danger.plain > .box-header .webf-button.webf-active {
  -webkit-box-shadow: inset 0px 0px 5px 1px #c71615;
  -moz-box-shadow: inset 0px 0px 5px 1px #c71615;
  box-shadow: inset 0px 0px 5px 1px #c71615;
}
.webf-box.lightgrey {
  border-top-color: #f5f5f5;
}
.webf-box.lightgrey.plain {
  border-top-color: #cccccc;
}
.webf-box.lightgrey.plain > .box-header {
  background-color: #f5f5f5;
  color: #555;
}
.webf-box.lightgrey.plain > .box-header > .wrapper > h3 > a, .webf-box.lightgrey.plain > .box-header > .wrapper > .h3 > a {
  background-color: #f5f5f5;
  color: #555;
}
.webf-box.lightgrey.plain > .box-header .webf-button {
  border-color: transparent;
  background-color: #f5f5f5;
  color: #555;
}
.webf-box.lightgrey.plain > .box-header .webf-button:hover, .webf-box.lightgrey.plain > .box-header .webf-button:focus, .webf-box.lightgrey.plain > .box-header .webf-button:active, .webf-box.lightgrey.plain > .box-header .webf-button.webf-active {
  background-color: gainsboro;
}
.webf-box.lightgrey.plain > .box-header .webf-button:active, .webf-box.lightgrey.plain > .box-header .webf-button.webf-active {
  -webkit-box-shadow: inset 0px 0px 5px 1px #c2c2c2;
  -moz-box-shadow: inset 0px 0px 5px 1px #c2c2c2;
  box-shadow: inset 0px 0px 5px 1px #c2c2c2;
}
.webf-box.small {
  box-shadow: 0 0.25rem 0.25rem rgba(0, 0, 0, 0.05) !important;
}
.webf-box.small .box-header {
  padding: 0.2rem 1rem;
}
.webf-box.small .box-header > .wrapper {
  font-size: 0.8rem;
  min-height: 19px;
}
.webf-box.small .box-header > .wrapper > h3 > a, .webf-box.small .box-header > .wrapper > .h3 > a {
  color: #555;
}
.webf-box.small .box-header > .webf-button {
  margin-left: 1px;
  padding: 1px 6px;
  font-size: 12px;
}
.webf-box.xsmall {
  box-shadow: 0 0.2rem 0.2rem rgba(0, 0, 0, 0.04) !important;
}
.webf-box.xsmall .box-header {
  padding: 0.1rem 1rem;
}
.webf-box.xsmall .box-header > .wrapper {
  font-size: 0.7rem;
  min-height: 17px;
}
.webf-box.xsmall .box-header > .wrapper > h3 > a, .webf-box.xsmall .box-header > .wrapper > .h3 > a {
  color: #555;
}
.webf-box.xsmall .box-header > .webf-button {
  margin-left: 1px;
  padding: 0 5px;
  font-size: 10px;
}

.webf-button {
  background-image: none;
  background-color: white;
  border-color: #d5d5d5;
  border-style: solid;
  border-width: 1px;
  -webkit-border-radius: 0.25rem;
  -moz-border-radius: 0.25rem;
  -ms-border-radius: 0.25rem;
  -o-border-radius: 0.25rem;
  border-radius: 0.25rem;
  box-shadow: none;
  color: inherit;
  cursor: pointer;
  display: inline-block;
  font-family: inherit;
  font-weight: normal;
  line-height: 1.5;
  margin-bottom: 0;
  text-align: center;
  text-decoration: none;
  outline: 0;
  vertical-align: middle;
  transition: color 300ms ease-in-out, background-position 300ms ease-in-out, background-color 230ms ease-in-out, border-color 230ms ease-in-out, box-shadow 100ms ease-in-out;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.webf-button:focus {
  color: inherit;
  outline: 0;
}
.webf-button:hover {
  color: inherit;
  text-decoration: inherit;
  background-color: rgba(85, 85, 85, 0.07);
}
.webf-button:active, .webf-button.webf-active, .webf-button.webf-state-active {
  color: inherit;
  background-color: rgba(85, 85, 85, 0.14);
}
.webf-button.webf-button-default, .webf-button.webf-button-default.webf-normal, .webf-button.default, .webf-button.default.webf-normal {
  background-color: white;
  color: #555;
  border-color: white;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}
.webf-button.webf-button-default:not(.muted):not(.disabled):hover, .webf-button.webf-button-default:not(.muted):not(.disabled):active, .webf-button.webf-button-default:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-default:not(.muted):not(.disabled).webf-state-active, .webf-button.default:not(.muted):not(.disabled):hover, .webf-button.default:not(.muted):not(.disabled):active, .webf-button.default:not(.muted):not(.disabled).webf-active, .webf-button.default:not(.muted):not(.disabled).webf-state-active {
  color: #555;
  border-color: #e6e6e6;
  background-color: #e6e6e6;
}
.webf-button.webf-button-default:not(.muted):not(.disabled):active, .webf-button.webf-button-default:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-default:not(.muted):not(.disabled).webf-state-active, .webf-button.default:not(.muted):not(.disabled):active, .webf-button.default:not(.muted):not(.disabled).webf-active, .webf-button.default:not(.muted):not(.disabled).webf-state-active {
  background-color: #cccccc;
  border-color: #cccccc;
}
.webf-button.webf-button-default.webf-button-colored-shadow, .webf-button.webf-button-default.colored-shadow, .webf-button.default.webf-button-colored-shadow, .webf-button.default.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(255, 255, 255, 0.15), 0 0.7rem 1rem -0.5rem rgba(255, 255, 255, 0.4);
}
.webf-button.webf-button-default.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-default.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-default.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-default.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-default.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-default.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.default.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.default.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.default.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.default.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.default.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.default.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(255, 255, 255, 0.15), 0 0.7rem 3rem -0.5rem rgba(255, 255, 255, 0.4);
}
.webf-button.webf-button-default:not(.disabled):visited, .webf-button.webf-button-default:not(.disabled):focus, .webf-button.default:not(.disabled):visited, .webf-button.default:not(.disabled):focus {
  box-shadow: none;
  color: #555;
}
.webf-button.webf-button-default .webf-button-caret.webf-button-caret-down, .webf-button.default .webf-button-caret.webf-button-caret-down {
  border-top-color: #555;
}
.webf-button.webf-button-default .webf-button-caret.webf-button-caret-left, .webf-button.default .webf-button-caret.webf-button-caret-left {
  border-right-color: #555;
}
.webf-button.webf-button-default .webf-button-caret.webf-button-caret-right, .webf-button.default .webf-button-caret.webf-button-caret-right {
  border-left-color: #555;
}
.webf-button.webf-button-default .webf-button-caret.webf-button-caret-up, .webf-button.default .webf-button-caret.webf-button-caret-up {
  border-bottom-color: #555;
}
.webf-button.webf-button-text-default, .webf-button.text-default {
  border-color: transparent;
  color: white;
}
.webf-button.webf-button-text-default:not(.muted):not(.disabled):hover, .webf-button.webf-button-text-default:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-text-default:not(.muted):not(.disabled).webf-state-active, .webf-button.text-default:not(.muted):not(.disabled):hover, .webf-button.text-default:not(.muted):not(.disabled).webf-active, .webf-button.text-default:not(.muted):not(.disabled).webf-state-active {
  color: #e6e6e6;
  background-color: rgba(255, 255, 255, 0.07);
}
.webf-button.webf-button-text-default:not(.muted):not(.disabled):active, .webf-button.webf-button-text-default:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-text-default:not(.muted):not(.disabled).webf-state-active, .webf-button.text-default:not(.muted):not(.disabled):active, .webf-button.text-default:not(.muted):not(.disabled).webf-active, .webf-button.text-default:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(255, 255, 255, 0.14);
}
.webf-button.webf-button-text-default .webf-button-caret.webf-button-caret-down, .webf-button.text-default .webf-button-caret.webf-button-caret-down {
  border-top-color: white;
}
.webf-button.webf-button-text-default .webf-button-caret.webf-button-caret-left, .webf-button.text-default .webf-button-caret.webf-button-caret-left {
  border-right-color: white;
}
.webf-button.webf-button-text-default .webf-button-caret.webf-button-caret-right, .webf-button.text-default .webf-button-caret.webf-button-caret-right {
  border-left-color: white;
}
.webf-button.webf-button-text-default .webf-button-caret.webf-button-caret-up, .webf-button.text-default .webf-button-caret.webf-button-caret-up {
  border-bottom-color: white;
}
.webf-button.webf-button-outline-default, .webf-button.outline-default {
  color: white;
  border-color: white;
}
.webf-button.webf-button-outline-default:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-default:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-default:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-default:not(.muted):not(.disabled):hover, .webf-button.outline-default:not(.muted):not(.disabled).webf-active, .webf-button.outline-default:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(255, 255, 255, 0.07);
  color: #e6e6e6;
}
.webf-button.webf-button-outline-default:not(.muted):not(.disabled):active, .webf-button.webf-button-outline-default:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-default:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-default:not(.muted):not(.disabled):active, .webf-button.outline-default:not(.muted):not(.disabled).webf-active, .webf-button.outline-default:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(255, 255, 255, 0.14);
}
.webf-button.webf-button-outline-default.webf-button-colored-shadow, .webf-button.webf-button-outline-default.colored-shadow, .webf-button.outline-default.webf-button-colored-shadow, .webf-button.outline-default.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(255, 255, 255, 0.15), 0 0.7rem 1rem -0.5rem rgba(255, 255, 255, 0.4);
}
.webf-button.webf-button-outline-default.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-default.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-default.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-outline-default.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-default.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-default.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-default.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.outline-default.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.outline-default.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-default.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.outline-default.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.outline-default.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(255, 255, 255, 0.15), 0 0.7rem 3rem -0.5rem rgba(255, 255, 255, 0.4);
}
.webf-button.webf-button-outline-default .webf-button-caret.webf-button-caret-down, .webf-button.outline-default .webf-button-caret.webf-button-caret-down {
  border-top-color: white;
}
.webf-button.webf-button-outline-default .webf-button-caret.webf-button-caret-left, .webf-button.outline-default .webf-button-caret.webf-button-caret-left {
  border-right-color: white;
}
.webf-button.webf-button-outline-default .webf-button-caret.webf-button-caret-right, .webf-button.outline-default .webf-button-caret.webf-button-caret-right {
  border-left-color: white;
}
.webf-button.webf-button-outline-default .webf-button-caret.webf-button-caret-up, .webf-button.outline-default .webf-button-caret.webf-button-caret-up {
  border-bottom-color: white;
}
.webf-button.webf-button-gradient-default, .webf-button.gradient-default {
  background: white linear-gradient(60deg, #d9d9d9 0%, white 50%, #eee 100%);
  background-position: 100% 0;
  background-size: 200%;
  border: none;
  color: #555;
  padding: -moz-calc( 0.3rem + 1px ) calc( 1rem + 1px );
  padding: -webkit-calc( 0.3rem + 1px ) calc( 1rem + 1px );
  padding: calc( 0.3rem + 1px ) calc( 1rem + 1px );
}
.webf-button.webf-button-gradient-default:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-default:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-default:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-default:not(.muted):not(.disabled):hover, .webf-button.gradient-default:not(.muted):not(.disabled).webf-active, .webf-button.gradient-default:not(.muted):not(.disabled).webf-state-active {
  background-position: 0 0%;
}
.webf-button.webf-button-gradient-default.webf-button-colored-shadow, .webf-button.webf-button-gradient-default.colored-shadow, .webf-button.gradient-default.webf-button-colored-shadow, .webf-button.gradient-default.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(255, 255, 255, 0.15), 0 0.7rem 1rem -0.5rem rgba(255, 255, 255, 0.4);
}
.webf-button.webf-button-gradient-default.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-default.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-default.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-gradient-default.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-default.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-default.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-default.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.gradient-default.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.gradient-default.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-default.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.gradient-default.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.gradient-default.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(255, 255, 255, 0.15), 0 0.7rem 3rem -0.5rem rgba(255, 255, 255, 0.4);
}
.webf-button.webf-button-primary, .webf-button.webf-button-primary.webf-normal, .webf-button.primary, .webf-button.primary.webf-normal {
  background-color: #4b70df;
  color: white;
  border-color: #4b70df;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}
.webf-button.webf-button-primary:not(.muted):not(.disabled):hover, .webf-button.webf-button-primary:not(.muted):not(.disabled):active, .webf-button.webf-button-primary:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-primary:not(.muted):not(.disabled).webf-state-active, .webf-button.primary:not(.muted):not(.disabled):hover, .webf-button.primary:not(.muted):not(.disabled):active, .webf-button.primary:not(.muted):not(.disabled).webf-active, .webf-button.primary:not(.muted):not(.disabled).webf-state-active {
  color: white;
  border-color: #2550d2;
  background-color: #2550d2;
}
.webf-button.webf-button-primary:not(.muted):not(.disabled):active, .webf-button.webf-button-primary:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-primary:not(.muted):not(.disabled).webf-state-active, .webf-button.primary:not(.muted):not(.disabled):active, .webf-button.primary:not(.muted):not(.disabled).webf-active, .webf-button.primary:not(.muted):not(.disabled).webf-state-active {
  background-color: #1e40a6;
  border-color: #1e40a6;
}
.webf-button.webf-button-primary.webf-button-colored-shadow, .webf-button.webf-button-primary.colored-shadow, .webf-button.primary.webf-button-colored-shadow, .webf-button.primary.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(75, 112, 223, 0.15), 0 0.7rem 1rem -0.5rem rgba(75, 112, 223, 0.4);
}
.webf-button.webf-button-primary.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-primary.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-primary.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-primary.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-primary.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-primary.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.primary.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.primary.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.primary.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.primary.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.primary.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.primary.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(75, 112, 223, 0.15), 0 0.7rem 3rem -0.5rem rgba(75, 112, 223, 0.4);
}
.webf-button.webf-button-primary:not(.disabled):visited, .webf-button.webf-button-primary:not(.disabled):focus, .webf-button.primary:not(.disabled):visited, .webf-button.primary:not(.disabled):focus {
  box-shadow: none;
  color: white;
}
.webf-button.webf-button-primary .webf-button-caret.webf-button-caret-down, .webf-button.primary .webf-button-caret.webf-button-caret-down {
  border-top-color: white;
}
.webf-button.webf-button-primary .webf-button-caret.webf-button-caret-left, .webf-button.primary .webf-button-caret.webf-button-caret-left {
  border-right-color: white;
}
.webf-button.webf-button-primary .webf-button-caret.webf-button-caret-right, .webf-button.primary .webf-button-caret.webf-button-caret-right {
  border-left-color: white;
}
.webf-button.webf-button-primary .webf-button-caret.webf-button-caret-up, .webf-button.primary .webf-button-caret.webf-button-caret-up {
  border-bottom-color: white;
}
.webf-button.webf-button-text-primary, .webf-button.text-primary {
  border-color: transparent;
  color: #4b70df;
}
.webf-button.webf-button-text-primary:not(.muted):not(.disabled):hover, .webf-button.webf-button-text-primary:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-text-primary:not(.muted):not(.disabled).webf-state-active, .webf-button.text-primary:not(.muted):not(.disabled):hover, .webf-button.text-primary:not(.muted):not(.disabled).webf-active, .webf-button.text-primary:not(.muted):not(.disabled).webf-state-active {
  color: #2550d2;
  background-color: rgba(75, 112, 223, 0.07);
}
.webf-button.webf-button-text-primary:not(.muted):not(.disabled):active, .webf-button.webf-button-text-primary:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-text-primary:not(.muted):not(.disabled).webf-state-active, .webf-button.text-primary:not(.muted):not(.disabled):active, .webf-button.text-primary:not(.muted):not(.disabled).webf-active, .webf-button.text-primary:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(75, 112, 223, 0.14);
}
.webf-button.webf-button-text-primary .webf-button-caret.webf-button-caret-down, .webf-button.text-primary .webf-button-caret.webf-button-caret-down {
  border-top-color: #4b70df;
}
.webf-button.webf-button-text-primary .webf-button-caret.webf-button-caret-left, .webf-button.text-primary .webf-button-caret.webf-button-caret-left {
  border-right-color: #4b70df;
}
.webf-button.webf-button-text-primary .webf-button-caret.webf-button-caret-right, .webf-button.text-primary .webf-button-caret.webf-button-caret-right {
  border-left-color: #4b70df;
}
.webf-button.webf-button-text-primary .webf-button-caret.webf-button-caret-up, .webf-button.text-primary .webf-button-caret.webf-button-caret-up {
  border-bottom-color: #4b70df;
}
.webf-button.webf-button-outline-primary, .webf-button.outline-primary {
  color: #4b70df;
  border-color: #4b70df;
}
.webf-button.webf-button-outline-primary:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-primary:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-primary:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-primary:not(.muted):not(.disabled):hover, .webf-button.outline-primary:not(.muted):not(.disabled).webf-active, .webf-button.outline-primary:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(75, 112, 223, 0.07);
  color: #2550d2;
}
.webf-button.webf-button-outline-primary:not(.muted):not(.disabled):active, .webf-button.webf-button-outline-primary:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-primary:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-primary:not(.muted):not(.disabled):active, .webf-button.outline-primary:not(.muted):not(.disabled).webf-active, .webf-button.outline-primary:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(75, 112, 223, 0.14);
}
.webf-button.webf-button-outline-primary.webf-button-colored-shadow, .webf-button.webf-button-outline-primary.colored-shadow, .webf-button.outline-primary.webf-button-colored-shadow, .webf-button.outline-primary.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(75, 112, 223, 0.15), 0 0.7rem 1rem -0.5rem rgba(75, 112, 223, 0.4);
}
.webf-button.webf-button-outline-primary.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-primary.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-primary.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-outline-primary.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-primary.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-primary.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-primary.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.outline-primary.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.outline-primary.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-primary.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.outline-primary.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.outline-primary.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(75, 112, 223, 0.15), 0 0.7rem 3rem -0.5rem rgba(75, 112, 223, 0.4);
}
.webf-button.webf-button-outline-primary .webf-button-caret.webf-button-caret-down, .webf-button.outline-primary .webf-button-caret.webf-button-caret-down {
  border-top-color: #4b70df;
}
.webf-button.webf-button-outline-primary .webf-button-caret.webf-button-caret-left, .webf-button.outline-primary .webf-button-caret.webf-button-caret-left {
  border-right-color: #4b70df;
}
.webf-button.webf-button-outline-primary .webf-button-caret.webf-button-caret-right, .webf-button.outline-primary .webf-button-caret.webf-button-caret-right {
  border-left-color: #4b70df;
}
.webf-button.webf-button-outline-primary .webf-button-caret.webf-button-caret-up, .webf-button.outline-primary .webf-button-caret.webf-button-caret-up {
  border-bottom-color: #4b70df;
}
.webf-button.webf-button-gradient-primary, .webf-button.gradient-primary {
  background: #4b70df linear-gradient(60deg, #2148bc 0%, #4b70df 50%, #859dde 100%);
  background-position: 100% 0;
  background-size: 200%;
  border: none;
  color: white;
  padding: -moz-calc( 0.3rem + 1px ) calc( 1rem + 1px );
  padding: -webkit-calc( 0.3rem + 1px ) calc( 1rem + 1px );
  padding: calc( 0.3rem + 1px ) calc( 1rem + 1px );
}
.webf-button.webf-button-gradient-primary:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-primary:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-primary:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-primary:not(.muted):not(.disabled):hover, .webf-button.gradient-primary:not(.muted):not(.disabled).webf-active, .webf-button.gradient-primary:not(.muted):not(.disabled).webf-state-active {
  background-position: 0 0%;
}
.webf-button.webf-button-gradient-primary.webf-button-colored-shadow, .webf-button.webf-button-gradient-primary.colored-shadow, .webf-button.gradient-primary.webf-button-colored-shadow, .webf-button.gradient-primary.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(75, 112, 223, 0.15), 0 0.7rem 1rem -0.5rem rgba(75, 112, 223, 0.4);
}
.webf-button.webf-button-gradient-primary.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-primary.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-primary.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-gradient-primary.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-primary.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-primary.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-primary.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.gradient-primary.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.gradient-primary.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-primary.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.gradient-primary.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.gradient-primary.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(75, 112, 223, 0.15), 0 0.7rem 3rem -0.5rem rgba(75, 112, 223, 0.4);
}
.webf-button.webf-button-secondary, .webf-button.webf-button-secondary.webf-normal, .webf-button.secondary, .webf-button.secondary.webf-normal {
  background-color: #f0f3f8;
  color: #555;
  border-color: #f0f3f8;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}
.webf-button.webf-button-secondary:not(.muted):not(.disabled):hover, .webf-button.webf-button-secondary:not(.muted):not(.disabled):active, .webf-button.webf-button-secondary:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-secondary:not(.muted):not(.disabled).webf-state-active, .webf-button.secondary:not(.muted):not(.disabled):hover, .webf-button.secondary:not(.muted):not(.disabled):active, .webf-button.secondary:not(.muted):not(.disabled).webf-active, .webf-button.secondary:not(.muted):not(.disabled).webf-state-active {
  color: #555;
  border-color: #cdd7e8;
  background-color: #cdd7e8;
}
.webf-button.webf-button-secondary:not(.muted):not(.disabled):active, .webf-button.webf-button-secondary:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-secondary:not(.muted):not(.disabled).webf-state-active, .webf-button.secondary:not(.muted):not(.disabled):active, .webf-button.secondary:not(.muted):not(.disabled).webf-active, .webf-button.secondary:not(.muted):not(.disabled).webf-state-active {
  background-color: #aabbd8;
  border-color: #aabbd8;
}
.webf-button.webf-button-secondary.webf-button-colored-shadow, .webf-button.webf-button-secondary.colored-shadow, .webf-button.secondary.webf-button-colored-shadow, .webf-button.secondary.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(240, 243, 248, 0.15), 0 0.7rem 1rem -0.5rem rgba(240, 243, 248, 0.4);
}
.webf-button.webf-button-secondary.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-secondary.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-secondary.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-secondary.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-secondary.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-secondary.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.secondary.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.secondary.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.secondary.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.secondary.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.secondary.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.secondary.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(240, 243, 248, 0.15), 0 0.7rem 3rem -0.5rem rgba(240, 243, 248, 0.4);
}
.webf-button.webf-button-secondary:not(.disabled):visited, .webf-button.webf-button-secondary:not(.disabled):focus, .webf-button.secondary:not(.disabled):visited, .webf-button.secondary:not(.disabled):focus {
  box-shadow: none;
  color: #555;
}
.webf-button.webf-button-secondary .webf-button-caret.webf-button-caret-down, .webf-button.secondary .webf-button-caret.webf-button-caret-down {
  border-top-color: #555;
}
.webf-button.webf-button-secondary .webf-button-caret.webf-button-caret-left, .webf-button.secondary .webf-button-caret.webf-button-caret-left {
  border-right-color: #555;
}
.webf-button.webf-button-secondary .webf-button-caret.webf-button-caret-right, .webf-button.secondary .webf-button-caret.webf-button-caret-right {
  border-left-color: #555;
}
.webf-button.webf-button-secondary .webf-button-caret.webf-button-caret-up, .webf-button.secondary .webf-button-caret.webf-button-caret-up {
  border-bottom-color: #555;
}
.webf-button.webf-button-text-secondary, .webf-button.text-secondary {
  border-color: transparent;
  color: #f0f3f8;
}
.webf-button.webf-button-text-secondary:not(.muted):not(.disabled):hover, .webf-button.webf-button-text-secondary:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-text-secondary:not(.muted):not(.disabled).webf-state-active, .webf-button.text-secondary:not(.muted):not(.disabled):hover, .webf-button.text-secondary:not(.muted):not(.disabled).webf-active, .webf-button.text-secondary:not(.muted):not(.disabled).webf-state-active {
  color: #cdd7e8;
  background-color: rgba(240, 243, 248, 0.07);
}
.webf-button.webf-button-text-secondary:not(.muted):not(.disabled):active, .webf-button.webf-button-text-secondary:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-text-secondary:not(.muted):not(.disabled).webf-state-active, .webf-button.text-secondary:not(.muted):not(.disabled):active, .webf-button.text-secondary:not(.muted):not(.disabled).webf-active, .webf-button.text-secondary:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(240, 243, 248, 0.14);
}
.webf-button.webf-button-text-secondary .webf-button-caret.webf-button-caret-down, .webf-button.text-secondary .webf-button-caret.webf-button-caret-down {
  border-top-color: #f0f3f8;
}
.webf-button.webf-button-text-secondary .webf-button-caret.webf-button-caret-left, .webf-button.text-secondary .webf-button-caret.webf-button-caret-left {
  border-right-color: #f0f3f8;
}
.webf-button.webf-button-text-secondary .webf-button-caret.webf-button-caret-right, .webf-button.text-secondary .webf-button-caret.webf-button-caret-right {
  border-left-color: #f0f3f8;
}
.webf-button.webf-button-text-secondary .webf-button-caret.webf-button-caret-up, .webf-button.text-secondary .webf-button-caret.webf-button-caret-up {
  border-bottom-color: #f0f3f8;
}
.webf-button.webf-button-outline-secondary, .webf-button.outline-secondary {
  color: #f0f3f8;
  border-color: #f0f3f8;
}
.webf-button.webf-button-outline-secondary:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-secondary:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-secondary:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-secondary:not(.muted):not(.disabled):hover, .webf-button.outline-secondary:not(.muted):not(.disabled).webf-active, .webf-button.outline-secondary:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(240, 243, 248, 0.07);
  color: #cdd7e8;
}
.webf-button.webf-button-outline-secondary:not(.muted):not(.disabled):active, .webf-button.webf-button-outline-secondary:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-secondary:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-secondary:not(.muted):not(.disabled):active, .webf-button.outline-secondary:not(.muted):not(.disabled).webf-active, .webf-button.outline-secondary:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(240, 243, 248, 0.14);
}
.webf-button.webf-button-outline-secondary.webf-button-colored-shadow, .webf-button.webf-button-outline-secondary.colored-shadow, .webf-button.outline-secondary.webf-button-colored-shadow, .webf-button.outline-secondary.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(240, 243, 248, 0.15), 0 0.7rem 1rem -0.5rem rgba(240, 243, 248, 0.4);
}
.webf-button.webf-button-outline-secondary.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-secondary.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-secondary.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-outline-secondary.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-secondary.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-secondary.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-secondary.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.outline-secondary.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.outline-secondary.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-secondary.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.outline-secondary.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.outline-secondary.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(240, 243, 248, 0.15), 0 0.7rem 3rem -0.5rem rgba(240, 243, 248, 0.4);
}
.webf-button.webf-button-outline-secondary .webf-button-caret.webf-button-caret-down, .webf-button.outline-secondary .webf-button-caret.webf-button-caret-down {
  border-top-color: #f0f3f8;
}
.webf-button.webf-button-outline-secondary .webf-button-caret.webf-button-caret-left, .webf-button.outline-secondary .webf-button-caret.webf-button-caret-left {
  border-right-color: #f0f3f8;
}
.webf-button.webf-button-outline-secondary .webf-button-caret.webf-button-caret-right, .webf-button.outline-secondary .webf-button-caret.webf-button-caret-right {
  border-left-color: #f0f3f8;
}
.webf-button.webf-button-outline-secondary .webf-button-caret.webf-button-caret-up, .webf-button.outline-secondary .webf-button-caret.webf-button-caret-up {
  border-bottom-color: #f0f3f8;
}
.webf-button.webf-button-gradient-secondary, .webf-button.gradient-secondary {
  background: #f0f3f8 linear-gradient(60deg, #bcc9e0 0%, #f0f3f8 50%, #f0f3f8 100%);
  background-position: 100% 0;
  background-size: 200%;
  border: none;
  color: #555;
  padding: -moz-calc( 0.3rem + 1px ) calc( 1rem + 1px );
  padding: -webkit-calc( 0.3rem + 1px ) calc( 1rem + 1px );
  padding: calc( 0.3rem + 1px ) calc( 1rem + 1px );
}
.webf-button.webf-button-gradient-secondary:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-secondary:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-secondary:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-secondary:not(.muted):not(.disabled):hover, .webf-button.gradient-secondary:not(.muted):not(.disabled).webf-active, .webf-button.gradient-secondary:not(.muted):not(.disabled).webf-state-active {
  background-position: 0 0%;
}
.webf-button.webf-button-gradient-secondary.webf-button-colored-shadow, .webf-button.webf-button-gradient-secondary.colored-shadow, .webf-button.gradient-secondary.webf-button-colored-shadow, .webf-button.gradient-secondary.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(240, 243, 248, 0.15), 0 0.7rem 1rem -0.5rem rgba(240, 243, 248, 0.4);
}
.webf-button.webf-button-gradient-secondary.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-secondary.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-secondary.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-gradient-secondary.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-secondary.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-secondary.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-secondary.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.gradient-secondary.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.gradient-secondary.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-secondary.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.gradient-secondary.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.gradient-secondary.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(240, 243, 248, 0.15), 0 0.7rem 3rem -0.5rem rgba(240, 243, 248, 0.4);
}
.webf-button.webf-button-custom, .webf-button.webf-button-custom.webf-normal, .webf-button.custom, .webf-button.custom.webf-normal {
  background-color: #fff;
  color: #555;
  border-color: #fff;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}
.webf-button.webf-button-custom:not(.muted):not(.disabled):hover, .webf-button.webf-button-custom:not(.muted):not(.disabled):active, .webf-button.webf-button-custom:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-custom:not(.muted):not(.disabled).webf-state-active, .webf-button.custom:not(.muted):not(.disabled):hover, .webf-button.custom:not(.muted):not(.disabled):active, .webf-button.custom:not(.muted):not(.disabled).webf-active, .webf-button.custom:not(.muted):not(.disabled).webf-state-active {
  color: #555;
  border-color: #e6e6e6;
  background-color: #e6e6e6;
}
.webf-button.webf-button-custom:not(.muted):not(.disabled):active, .webf-button.webf-button-custom:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-custom:not(.muted):not(.disabled).webf-state-active, .webf-button.custom:not(.muted):not(.disabled):active, .webf-button.custom:not(.muted):not(.disabled).webf-active, .webf-button.custom:not(.muted):not(.disabled).webf-state-active {
  background-color: #cccccc;
  border-color: #cccccc;
}
.webf-button.webf-button-custom.webf-button-colored-shadow, .webf-button.webf-button-custom.colored-shadow, .webf-button.custom.webf-button-colored-shadow, .webf-button.custom.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(255, 255, 255, 0.15), 0 0.7rem 1rem -0.5rem rgba(255, 255, 255, 0.4);
}
.webf-button.webf-button-custom.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-custom.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-custom.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-custom.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-custom.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-custom.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.custom.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.custom.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.custom.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.custom.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.custom.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.custom.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(255, 255, 255, 0.15), 0 0.7rem 3rem -0.5rem rgba(255, 255, 255, 0.4);
}
.webf-button.webf-button-custom:not(.disabled):visited, .webf-button.webf-button-custom:not(.disabled):focus, .webf-button.custom:not(.disabled):visited, .webf-button.custom:not(.disabled):focus {
  box-shadow: none;
  color: #555;
}
.webf-button.webf-button-custom .webf-button-caret.webf-button-caret-down, .webf-button.custom .webf-button-caret.webf-button-caret-down {
  border-top-color: #555;
}
.webf-button.webf-button-custom .webf-button-caret.webf-button-caret-left, .webf-button.custom .webf-button-caret.webf-button-caret-left {
  border-right-color: #555;
}
.webf-button.webf-button-custom .webf-button-caret.webf-button-caret-right, .webf-button.custom .webf-button-caret.webf-button-caret-right {
  border-left-color: #555;
}
.webf-button.webf-button-custom .webf-button-caret.webf-button-caret-up, .webf-button.custom .webf-button-caret.webf-button-caret-up {
  border-bottom-color: #555;
}
.webf-button.webf-button-text-custom, .webf-button.text-custom {
  border-color: transparent;
  color: #fff;
}
.webf-button.webf-button-text-custom:not(.muted):not(.disabled):hover, .webf-button.webf-button-text-custom:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-text-custom:not(.muted):not(.disabled).webf-state-active, .webf-button.text-custom:not(.muted):not(.disabled):hover, .webf-button.text-custom:not(.muted):not(.disabled).webf-active, .webf-button.text-custom:not(.muted):not(.disabled).webf-state-active {
  color: #e6e6e6;
  background-color: rgba(255, 255, 255, 0.07);
}
.webf-button.webf-button-text-custom:not(.muted):not(.disabled):active, .webf-button.webf-button-text-custom:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-text-custom:not(.muted):not(.disabled).webf-state-active, .webf-button.text-custom:not(.muted):not(.disabled):active, .webf-button.text-custom:not(.muted):not(.disabled).webf-active, .webf-button.text-custom:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(255, 255, 255, 0.14);
}
.webf-button.webf-button-text-custom .webf-button-caret.webf-button-caret-down, .webf-button.text-custom .webf-button-caret.webf-button-caret-down {
  border-top-color: #fff;
}
.webf-button.webf-button-text-custom .webf-button-caret.webf-button-caret-left, .webf-button.text-custom .webf-button-caret.webf-button-caret-left {
  border-right-color: #fff;
}
.webf-button.webf-button-text-custom .webf-button-caret.webf-button-caret-right, .webf-button.text-custom .webf-button-caret.webf-button-caret-right {
  border-left-color: #fff;
}
.webf-button.webf-button-text-custom .webf-button-caret.webf-button-caret-up, .webf-button.text-custom .webf-button-caret.webf-button-caret-up {
  border-bottom-color: #fff;
}
.webf-button.webf-button-outline-custom, .webf-button.outline-custom {
  color: #fff;
  border-color: #fff;
}
.webf-button.webf-button-outline-custom:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-custom:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-custom:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-custom:not(.muted):not(.disabled):hover, .webf-button.outline-custom:not(.muted):not(.disabled).webf-active, .webf-button.outline-custom:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(255, 255, 255, 0.07);
  color: #e6e6e6;
}
.webf-button.webf-button-outline-custom:not(.muted):not(.disabled):active, .webf-button.webf-button-outline-custom:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-custom:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-custom:not(.muted):not(.disabled):active, .webf-button.outline-custom:not(.muted):not(.disabled).webf-active, .webf-button.outline-custom:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(255, 255, 255, 0.14);
}
.webf-button.webf-button-outline-custom.webf-button-colored-shadow, .webf-button.webf-button-outline-custom.colored-shadow, .webf-button.outline-custom.webf-button-colored-shadow, .webf-button.outline-custom.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(255, 255, 255, 0.15), 0 0.7rem 1rem -0.5rem rgba(255, 255, 255, 0.4);
}
.webf-button.webf-button-outline-custom.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-custom.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-custom.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-outline-custom.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-custom.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-custom.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-custom.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.outline-custom.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.outline-custom.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-custom.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.outline-custom.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.outline-custom.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(255, 255, 255, 0.15), 0 0.7rem 3rem -0.5rem rgba(255, 255, 255, 0.4);
}
.webf-button.webf-button-outline-custom .webf-button-caret.webf-button-caret-down, .webf-button.outline-custom .webf-button-caret.webf-button-caret-down {
  border-top-color: #fff;
}
.webf-button.webf-button-outline-custom .webf-button-caret.webf-button-caret-left, .webf-button.outline-custom .webf-button-caret.webf-button-caret-left {
  border-right-color: #fff;
}
.webf-button.webf-button-outline-custom .webf-button-caret.webf-button-caret-right, .webf-button.outline-custom .webf-button-caret.webf-button-caret-right {
  border-left-color: #fff;
}
.webf-button.webf-button-outline-custom .webf-button-caret.webf-button-caret-up, .webf-button.outline-custom .webf-button-caret.webf-button-caret-up {
  border-bottom-color: #fff;
}
.webf-button.webf-button-gradient-custom, .webf-button.gradient-custom {
  background: #fff linear-gradient(60deg, #d9d9d9 0%, #fff 50%, #fff 100%);
  background-position: 100% 0;
  background-size: 200%;
  border: none;
  color: #555;
  padding: -moz-calc( 0.3rem + 1px ) calc( 1rem + 1px );
  padding: -webkit-calc( 0.3rem + 1px ) calc( 1rem + 1px );
  padding: calc( 0.3rem + 1px ) calc( 1rem + 1px );
}
.webf-button.webf-button-gradient-custom:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-custom:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-custom:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-custom:not(.muted):not(.disabled):hover, .webf-button.gradient-custom:not(.muted):not(.disabled).webf-active, .webf-button.gradient-custom:not(.muted):not(.disabled).webf-state-active {
  background-position: 0 0%;
}
.webf-button.webf-button-gradient-custom.webf-button-colored-shadow, .webf-button.webf-button-gradient-custom.colored-shadow, .webf-button.gradient-custom.webf-button-colored-shadow, .webf-button.gradient-custom.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(255, 255, 255, 0.15), 0 0.7rem 1rem -0.5rem rgba(255, 255, 255, 0.4);
}
.webf-button.webf-button-gradient-custom.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-custom.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-custom.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-gradient-custom.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-custom.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-custom.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-custom.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.gradient-custom.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.gradient-custom.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-custom.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.gradient-custom.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.gradient-custom.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(255, 255, 255, 0.15), 0 0.7rem 3rem -0.5rem rgba(255, 255, 255, 0.4);
}
.webf-button.webf-button-light, .webf-button.webf-button-light.webf-normal, .webf-button.light, .webf-button.light.webf-normal {
  background-color: #f0f3f8;
  color: #555;
  border-color: #f0f3f8;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}
.webf-button.webf-button-light:not(.muted):not(.disabled):hover, .webf-button.webf-button-light:not(.muted):not(.disabled):active, .webf-button.webf-button-light:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-light:not(.muted):not(.disabled).webf-state-active, .webf-button.light:not(.muted):not(.disabled):hover, .webf-button.light:not(.muted):not(.disabled):active, .webf-button.light:not(.muted):not(.disabled).webf-active, .webf-button.light:not(.muted):not(.disabled).webf-state-active {
  color: #555;
  border-color: #e6ebf3;
  background-color: #e6ebf3;
}
.webf-button.webf-button-light:not(.muted):not(.disabled):active, .webf-button.webf-button-light:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-light:not(.muted):not(.disabled).webf-state-active, .webf-button.light:not(.muted):not(.disabled):active, .webf-button.light:not(.muted):not(.disabled).webf-active, .webf-button.light:not(.muted):not(.disabled).webf-state-active {
  background-color: #c3cfe3;
  border-color: #c3cfe3;
}
.webf-button.webf-button-light.webf-button-colored-shadow, .webf-button.webf-button-light.colored-shadow, .webf-button.light.webf-button-colored-shadow, .webf-button.light.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(240, 243, 248, 0.15), 0 0.7rem 1rem -0.5rem rgba(240, 243, 248, 0.4);
}
.webf-button.webf-button-light.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-light.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-light.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-light.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-light.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-light.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.light.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.light.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.light.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.light.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.light.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.light.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(240, 243, 248, 0.15), 0 0.7rem 3rem -0.5rem rgba(240, 243, 248, 0.4);
}
.webf-button.webf-button-light:not(.disabled):visited, .webf-button.webf-button-light:not(.disabled):focus, .webf-button.light:not(.disabled):visited, .webf-button.light:not(.disabled):focus {
  box-shadow: none;
  color: #555;
}
.webf-button.webf-button-light .webf-button-caret.webf-button-caret-down, .webf-button.light .webf-button-caret.webf-button-caret-down {
  border-top-color: #555;
}
.webf-button.webf-button-light .webf-button-caret.webf-button-caret-left, .webf-button.light .webf-button-caret.webf-button-caret-left {
  border-right-color: #555;
}
.webf-button.webf-button-light .webf-button-caret.webf-button-caret-right, .webf-button.light .webf-button-caret.webf-button-caret-right {
  border-left-color: #555;
}
.webf-button.webf-button-light .webf-button-caret.webf-button-caret-up, .webf-button.light .webf-button-caret.webf-button-caret-up {
  border-bottom-color: #555;
}
.webf-button.webf-button-text-light, .webf-button.text-light {
  border-color: transparent;
  color: #f0f3f8;
}
.webf-button.webf-button-text-light:not(.muted):not(.disabled):hover, .webf-button.webf-button-text-light:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-text-light:not(.muted):not(.disabled).webf-state-active, .webf-button.text-light:not(.muted):not(.disabled):hover, .webf-button.text-light:not(.muted):not(.disabled).webf-active, .webf-button.text-light:not(.muted):not(.disabled).webf-state-active {
  color: #cdd7e8;
  background-color: rgba(240, 243, 248, 0.07);
}
.webf-button.webf-button-text-light:not(.muted):not(.disabled):active, .webf-button.webf-button-text-light:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-text-light:not(.muted):not(.disabled).webf-state-active, .webf-button.text-light:not(.muted):not(.disabled):active, .webf-button.text-light:not(.muted):not(.disabled).webf-active, .webf-button.text-light:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(240, 243, 248, 0.14);
}
.webf-button.webf-button-text-light .webf-button-caret.webf-button-caret-down, .webf-button.text-light .webf-button-caret.webf-button-caret-down {
  border-top-color: #f0f3f8;
}
.webf-button.webf-button-text-light .webf-button-caret.webf-button-caret-left, .webf-button.text-light .webf-button-caret.webf-button-caret-left {
  border-right-color: #f0f3f8;
}
.webf-button.webf-button-text-light .webf-button-caret.webf-button-caret-right, .webf-button.text-light .webf-button-caret.webf-button-caret-right {
  border-left-color: #f0f3f8;
}
.webf-button.webf-button-text-light .webf-button-caret.webf-button-caret-up, .webf-button.text-light .webf-button-caret.webf-button-caret-up {
  border-bottom-color: #f0f3f8;
}
.webf-button.webf-button-outline-light, .webf-button.outline-light {
  color: #f0f3f8;
  border-color: #f0f3f8;
}
.webf-button.webf-button-outline-light:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-light:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-light:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-light:not(.muted):not(.disabled):hover, .webf-button.outline-light:not(.muted):not(.disabled).webf-active, .webf-button.outline-light:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(240, 243, 248, 0.07);
  color: #cdd7e8;
}
.webf-button.webf-button-outline-light:not(.muted):not(.disabled):active, .webf-button.webf-button-outline-light:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-light:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-light:not(.muted):not(.disabled):active, .webf-button.outline-light:not(.muted):not(.disabled).webf-active, .webf-button.outline-light:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(240, 243, 248, 0.14);
}
.webf-button.webf-button-outline-light.webf-button-colored-shadow, .webf-button.webf-button-outline-light.colored-shadow, .webf-button.outline-light.webf-button-colored-shadow, .webf-button.outline-light.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(240, 243, 248, 0.15), 0 0.7rem 1rem -0.5rem rgba(240, 243, 248, 0.4);
}
.webf-button.webf-button-outline-light.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-light.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-light.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-outline-light.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-light.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-light.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-light.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.outline-light.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.outline-light.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-light.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.outline-light.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.outline-light.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(240, 243, 248, 0.15), 0 0.7rem 3rem -0.5rem rgba(240, 243, 248, 0.4);
}
.webf-button.webf-button-outline-light .webf-button-caret.webf-button-caret-down, .webf-button.outline-light .webf-button-caret.webf-button-caret-down {
  border-top-color: #f0f3f8;
}
.webf-button.webf-button-outline-light .webf-button-caret.webf-button-caret-left, .webf-button.outline-light .webf-button-caret.webf-button-caret-left {
  border-right-color: #f0f3f8;
}
.webf-button.webf-button-outline-light .webf-button-caret.webf-button-caret-right, .webf-button.outline-light .webf-button-caret.webf-button-caret-right {
  border-left-color: #f0f3f8;
}
.webf-button.webf-button-outline-light .webf-button-caret.webf-button-caret-up, .webf-button.outline-light .webf-button-caret.webf-button-caret-up {
  border-bottom-color: #f0f3f8;
}
.webf-button.webf-button-gradient-light, .webf-button.gradient-light {
  background: #f0f3f8 linear-gradient(60deg, #d4ddeb 0%, #f0f3f8 50%, #fff 100%);
  background-position: 100% 0;
  background-size: 200%;
  border: none;
  color: #555;
  padding: -moz-calc( 0.3rem + 1px ) calc( 1rem + 1px );
  padding: -webkit-calc( 0.3rem + 1px ) calc( 1rem + 1px );
  padding: calc( 0.3rem + 1px ) calc( 1rem + 1px );
}
.webf-button.webf-button-gradient-light:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-light:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-light:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-light:not(.muted):not(.disabled):hover, .webf-button.gradient-light:not(.muted):not(.disabled).webf-active, .webf-button.gradient-light:not(.muted):not(.disabled).webf-state-active {
  background-position: 0 0%;
}
.webf-button.webf-button-gradient-light.webf-button-colored-shadow, .webf-button.webf-button-gradient-light.colored-shadow, .webf-button.gradient-light.webf-button-colored-shadow, .webf-button.gradient-light.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(240, 243, 248, 0.15), 0 0.7rem 1rem -0.5rem rgba(240, 243, 248, 0.4);
}
.webf-button.webf-button-gradient-light.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-light.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-light.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-gradient-light.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-light.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-light.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-light.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.gradient-light.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.gradient-light.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-light.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.gradient-light.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.gradient-light.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(240, 243, 248, 0.15), 0 0.7rem 3rem -0.5rem rgba(240, 243, 248, 0.4);
}
.webf-button.webf-button-dark, .webf-button.webf-button-dark.webf-normal, .webf-button.dark, .webf-button.dark.webf-normal {
  background-color: #555;
  color: white;
  border-color: #555;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}
.webf-button.webf-button-dark:not(.muted):not(.disabled):hover, .webf-button.webf-button-dark:not(.muted):not(.disabled):active, .webf-button.webf-button-dark:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-dark:not(.muted):not(.disabled).webf-state-active, .webf-button.dark:not(.muted):not(.disabled):hover, .webf-button.dark:not(.muted):not(.disabled):active, .webf-button.dark:not(.muted):not(.disabled).webf-active, .webf-button.dark:not(.muted):not(.disabled).webf-state-active {
  color: white;
  border-color: #3c3c3c;
  background-color: #3c3c3c;
}
.webf-button.webf-button-dark:not(.muted):not(.disabled):active, .webf-button.webf-button-dark:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-dark:not(.muted):not(.disabled).webf-state-active, .webf-button.dark:not(.muted):not(.disabled):active, .webf-button.dark:not(.muted):not(.disabled).webf-active, .webf-button.dark:not(.muted):not(.disabled).webf-state-active {
  background-color: #222222;
  border-color: #222222;
}
.webf-button.webf-button-dark.webf-button-colored-shadow, .webf-button.webf-button-dark.colored-shadow, .webf-button.dark.webf-button-colored-shadow, .webf-button.dark.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(85, 85, 85, 0.15), 0 0.7rem 1rem -0.5rem rgba(85, 85, 85, 0.4);
}
.webf-button.webf-button-dark.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-dark.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-dark.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-dark.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-dark.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-dark.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.dark.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.dark.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.dark.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.dark.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.dark.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.dark.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(85, 85, 85, 0.15), 0 0.7rem 3rem -0.5rem rgba(85, 85, 85, 0.4);
}
.webf-button.webf-button-dark:not(.disabled):visited, .webf-button.webf-button-dark:not(.disabled):focus, .webf-button.dark:not(.disabled):visited, .webf-button.dark:not(.disabled):focus {
  box-shadow: none;
  color: white;
}
.webf-button.webf-button-dark .webf-button-caret.webf-button-caret-down, .webf-button.dark .webf-button-caret.webf-button-caret-down {
  border-top-color: white;
}
.webf-button.webf-button-dark .webf-button-caret.webf-button-caret-left, .webf-button.dark .webf-button-caret.webf-button-caret-left {
  border-right-color: white;
}
.webf-button.webf-button-dark .webf-button-caret.webf-button-caret-right, .webf-button.dark .webf-button-caret.webf-button-caret-right {
  border-left-color: white;
}
.webf-button.webf-button-dark .webf-button-caret.webf-button-caret-up, .webf-button.dark .webf-button-caret.webf-button-caret-up {
  border-bottom-color: white;
}
.webf-button.webf-button-text-dark, .webf-button.text-dark {
  border-color: transparent;
  color: #555;
}
.webf-button.webf-button-text-dark:not(.muted):not(.disabled):hover, .webf-button.webf-button-text-dark:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-text-dark:not(.muted):not(.disabled).webf-state-active, .webf-button.text-dark:not(.muted):not(.disabled):hover, .webf-button.text-dark:not(.muted):not(.disabled).webf-active, .webf-button.text-dark:not(.muted):not(.disabled).webf-state-active {
  color: #3c3c3c;
  background-color: rgba(85, 85, 85, 0.07);
}
.webf-button.webf-button-text-dark:not(.muted):not(.disabled):active, .webf-button.webf-button-text-dark:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-text-dark:not(.muted):not(.disabled).webf-state-active, .webf-button.text-dark:not(.muted):not(.disabled):active, .webf-button.text-dark:not(.muted):not(.disabled).webf-active, .webf-button.text-dark:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(85, 85, 85, 0.14);
}
.webf-button.webf-button-text-dark .webf-button-caret.webf-button-caret-down, .webf-button.text-dark .webf-button-caret.webf-button-caret-down {
  border-top-color: #555;
}
.webf-button.webf-button-text-dark .webf-button-caret.webf-button-caret-left, .webf-button.text-dark .webf-button-caret.webf-button-caret-left {
  border-right-color: #555;
}
.webf-button.webf-button-text-dark .webf-button-caret.webf-button-caret-right, .webf-button.text-dark .webf-button-caret.webf-button-caret-right {
  border-left-color: #555;
}
.webf-button.webf-button-text-dark .webf-button-caret.webf-button-caret-up, .webf-button.text-dark .webf-button-caret.webf-button-caret-up {
  border-bottom-color: #555;
}
.webf-button.webf-button-outline-dark, .webf-button.outline-dark {
  color: #555;
  border-color: #555;
}
.webf-button.webf-button-outline-dark:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-dark:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-dark:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-dark:not(.muted):not(.disabled):hover, .webf-button.outline-dark:not(.muted):not(.disabled).webf-active, .webf-button.outline-dark:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(85, 85, 85, 0.07);
  color: #3c3c3c;
}
.webf-button.webf-button-outline-dark:not(.muted):not(.disabled):active, .webf-button.webf-button-outline-dark:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-dark:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-dark:not(.muted):not(.disabled):active, .webf-button.outline-dark:not(.muted):not(.disabled).webf-active, .webf-button.outline-dark:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(85, 85, 85, 0.14);
}
.webf-button.webf-button-outline-dark.webf-button-colored-shadow, .webf-button.webf-button-outline-dark.colored-shadow, .webf-button.outline-dark.webf-button-colored-shadow, .webf-button.outline-dark.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(85, 85, 85, 0.15), 0 0.7rem 1rem -0.5rem rgba(85, 85, 85, 0.4);
}
.webf-button.webf-button-outline-dark.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-dark.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-dark.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-outline-dark.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-dark.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-dark.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-dark.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.outline-dark.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.outline-dark.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-dark.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.outline-dark.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.outline-dark.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(85, 85, 85, 0.15), 0 0.7rem 3rem -0.5rem rgba(85, 85, 85, 0.4);
}
.webf-button.webf-button-outline-dark .webf-button-caret.webf-button-caret-down, .webf-button.outline-dark .webf-button-caret.webf-button-caret-down {
  border-top-color: #555;
}
.webf-button.webf-button-outline-dark .webf-button-caret.webf-button-caret-left, .webf-button.outline-dark .webf-button-caret.webf-button-caret-left {
  border-right-color: #555;
}
.webf-button.webf-button-outline-dark .webf-button-caret.webf-button-caret-right, .webf-button.outline-dark .webf-button-caret.webf-button-caret-right {
  border-left-color: #555;
}
.webf-button.webf-button-outline-dark .webf-button-caret.webf-button-caret-up, .webf-button.outline-dark .webf-button-caret.webf-button-caret-up {
  border-bottom-color: #555;
}
.webf-button.webf-button-gradient-dark, .webf-button.gradient-dark {
  background: #555 linear-gradient(60deg, #2f2f2f 0%, #555 50%, #929292 100%);
  background-position: 100% 0;
  background-size: 200%;
  border: none;
  color: white;
  padding: -moz-calc( 0.3rem + 1px ) calc( 1rem + 1px );
  padding: -webkit-calc( 0.3rem + 1px ) calc( 1rem + 1px );
  padding: calc( 0.3rem + 1px ) calc( 1rem + 1px );
}
.webf-button.webf-button-gradient-dark:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-dark:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-dark:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-dark:not(.muted):not(.disabled):hover, .webf-button.gradient-dark:not(.muted):not(.disabled).webf-active, .webf-button.gradient-dark:not(.muted):not(.disabled).webf-state-active {
  background-position: 0 0%;
}
.webf-button.webf-button-gradient-dark.webf-button-colored-shadow, .webf-button.webf-button-gradient-dark.colored-shadow, .webf-button.gradient-dark.webf-button-colored-shadow, .webf-button.gradient-dark.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(85, 85, 85, 0.15), 0 0.7rem 1rem -0.5rem rgba(85, 85, 85, 0.4);
}
.webf-button.webf-button-gradient-dark.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-dark.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-dark.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-gradient-dark.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-dark.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-dark.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-dark.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.gradient-dark.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.gradient-dark.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-dark.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.gradient-dark.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.gradient-dark.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(85, 85, 85, 0.15), 0 0.7rem 3rem -0.5rem rgba(85, 85, 85, 0.4);
}
.webf-button.webf-button-action, .webf-button.webf-button-action.webf-normal, .webf-button.action, .webf-button.action.webf-normal {
  background-color: #e44982;
  color: white;
  border-color: #e44982;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}
.webf-button.webf-button-action:not(.muted):not(.disabled):hover, .webf-button.webf-button-action:not(.muted):not(.disabled):active, .webf-button.webf-button-action:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-action:not(.muted):not(.disabled).webf-state-active, .webf-button.action:not(.muted):not(.disabled):hover, .webf-button.action:not(.muted):not(.disabled):active, .webf-button.action:not(.muted):not(.disabled).webf-active, .webf-button.action:not(.muted):not(.disabled).webf-state-active {
  color: white;
  border-color: #da2064;
  background-color: #da2064;
}
.webf-button.webf-button-action:not(.muted):not(.disabled):active, .webf-button.webf-button-action:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-action:not(.muted):not(.disabled).webf-state-active, .webf-button.action:not(.muted):not(.disabled):active, .webf-button.action:not(.muted):not(.disabled).webf-active, .webf-button.action:not(.muted):not(.disabled).webf-state-active {
  background-color: #ad1a50;
  border-color: #ad1a50;
}
.webf-button.webf-button-action.webf-button-colored-shadow, .webf-button.webf-button-action.colored-shadow, .webf-button.action.webf-button-colored-shadow, .webf-button.action.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(228, 73, 130, 0.15), 0 0.7rem 1rem -0.5rem rgba(228, 73, 130, 0.4);
}
.webf-button.webf-button-action.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-action.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-action.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-action.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-action.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-action.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.action.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.action.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.action.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.action.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.action.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.action.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(228, 73, 130, 0.15), 0 0.7rem 3rem -0.5rem rgba(228, 73, 130, 0.4);
}
.webf-button.webf-button-action:not(.disabled):visited, .webf-button.webf-button-action:not(.disabled):focus, .webf-button.action:not(.disabled):visited, .webf-button.action:not(.disabled):focus {
  box-shadow: none;
  color: white;
}
.webf-button.webf-button-action .webf-button-caret.webf-button-caret-down, .webf-button.action .webf-button-caret.webf-button-caret-down {
  border-top-color: white;
}
.webf-button.webf-button-action .webf-button-caret.webf-button-caret-left, .webf-button.action .webf-button-caret.webf-button-caret-left {
  border-right-color: white;
}
.webf-button.webf-button-action .webf-button-caret.webf-button-caret-right, .webf-button.action .webf-button-caret.webf-button-caret-right {
  border-left-color: white;
}
.webf-button.webf-button-action .webf-button-caret.webf-button-caret-up, .webf-button.action .webf-button-caret.webf-button-caret-up {
  border-bottom-color: white;
}
.webf-button.webf-button-text-action, .webf-button.text-action {
  border-color: transparent;
  color: #e44982;
}
.webf-button.webf-button-text-action:not(.muted):not(.disabled):hover, .webf-button.webf-button-text-action:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-text-action:not(.muted):not(.disabled).webf-state-active, .webf-button.text-action:not(.muted):not(.disabled):hover, .webf-button.text-action:not(.muted):not(.disabled).webf-active, .webf-button.text-action:not(.muted):not(.disabled).webf-state-active {
  color: #da2064;
  background-color: rgba(228, 73, 130, 0.07);
}
.webf-button.webf-button-text-action:not(.muted):not(.disabled):active, .webf-button.webf-button-text-action:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-text-action:not(.muted):not(.disabled).webf-state-active, .webf-button.text-action:not(.muted):not(.disabled):active, .webf-button.text-action:not(.muted):not(.disabled).webf-active, .webf-button.text-action:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(228, 73, 130, 0.14);
}
.webf-button.webf-button-text-action .webf-button-caret.webf-button-caret-down, .webf-button.text-action .webf-button-caret.webf-button-caret-down {
  border-top-color: #e44982;
}
.webf-button.webf-button-text-action .webf-button-caret.webf-button-caret-left, .webf-button.text-action .webf-button-caret.webf-button-caret-left {
  border-right-color: #e44982;
}
.webf-button.webf-button-text-action .webf-button-caret.webf-button-caret-right, .webf-button.text-action .webf-button-caret.webf-button-caret-right {
  border-left-color: #e44982;
}
.webf-button.webf-button-text-action .webf-button-caret.webf-button-caret-up, .webf-button.text-action .webf-button-caret.webf-button-caret-up {
  border-bottom-color: #e44982;
}
.webf-button.webf-button-outline-action, .webf-button.outline-action {
  color: #e44982;
  border-color: #e44982;
}
.webf-button.webf-button-outline-action:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-action:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-action:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-action:not(.muted):not(.disabled):hover, .webf-button.outline-action:not(.muted):not(.disabled).webf-active, .webf-button.outline-action:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(228, 73, 130, 0.07);
  color: #da2064;
}
.webf-button.webf-button-outline-action:not(.muted):not(.disabled):active, .webf-button.webf-button-outline-action:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-action:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-action:not(.muted):not(.disabled):active, .webf-button.outline-action:not(.muted):not(.disabled).webf-active, .webf-button.outline-action:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(228, 73, 130, 0.14);
}
.webf-button.webf-button-outline-action.webf-button-colored-shadow, .webf-button.webf-button-outline-action.colored-shadow, .webf-button.outline-action.webf-button-colored-shadow, .webf-button.outline-action.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(228, 73, 130, 0.15), 0 0.7rem 1rem -0.5rem rgba(228, 73, 130, 0.4);
}
.webf-button.webf-button-outline-action.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-action.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-action.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-outline-action.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-action.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-action.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-action.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.outline-action.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.outline-action.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-action.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.outline-action.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.outline-action.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(228, 73, 130, 0.15), 0 0.7rem 3rem -0.5rem rgba(228, 73, 130, 0.4);
}
.webf-button.webf-button-outline-action .webf-button-caret.webf-button-caret-down, .webf-button.outline-action .webf-button-caret.webf-button-caret-down {
  border-top-color: #e44982;
}
.webf-button.webf-button-outline-action .webf-button-caret.webf-button-caret-left, .webf-button.outline-action .webf-button-caret.webf-button-caret-left {
  border-right-color: #e44982;
}
.webf-button.webf-button-outline-action .webf-button-caret.webf-button-caret-right, .webf-button.outline-action .webf-button-caret.webf-button-caret-right {
  border-left-color: #e44982;
}
.webf-button.webf-button-outline-action .webf-button-caret.webf-button-caret-up, .webf-button.outline-action .webf-button-caret.webf-button-caret-up {
  border-bottom-color: #e44982;
}
.webf-button.webf-button-gradient-action, .webf-button.gradient-action {
  background: #e44982 linear-gradient(60deg, #c31d5a 0%, #e44982 50%, #eea1e1 100%);
  background-position: 100% 0;
  background-size: 200%;
  border: none;
  color: white;
  padding: -moz-calc( 0.3rem + 1px ) calc( 1rem + 1px );
  padding: -webkit-calc( 0.3rem + 1px ) calc( 1rem + 1px );
  padding: calc( 0.3rem + 1px ) calc( 1rem + 1px );
}
.webf-button.webf-button-gradient-action:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-action:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-action:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-action:not(.muted):not(.disabled):hover, .webf-button.gradient-action:not(.muted):not(.disabled).webf-active, .webf-button.gradient-action:not(.muted):not(.disabled).webf-state-active {
  background-position: 0 0%;
}
.webf-button.webf-button-gradient-action.webf-button-colored-shadow, .webf-button.webf-button-gradient-action.colored-shadow, .webf-button.gradient-action.webf-button-colored-shadow, .webf-button.gradient-action.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(228, 73, 130, 0.15), 0 0.7rem 1rem -0.5rem rgba(228, 73, 130, 0.4);
}
.webf-button.webf-button-gradient-action.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-action.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-action.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-gradient-action.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-action.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-action.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-action.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.gradient-action.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.gradient-action.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-action.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.gradient-action.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.gradient-action.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(228, 73, 130, 0.15), 0 0.7rem 3rem -0.5rem rgba(228, 73, 130, 0.4);
}
.webf-button.webf-button-info, .webf-button.webf-button-info.webf-normal, .webf-button.info, .webf-button.info.webf-normal {
  background-color: #4dbbe2;
  color: white;
  border-color: #4dbbe2;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}
.webf-button.webf-button-info:not(.muted):not(.disabled):hover, .webf-button.webf-button-info:not(.muted):not(.disabled):active, .webf-button.webf-button-info:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-info:not(.muted):not(.disabled).webf-state-active, .webf-button.info:not(.muted):not(.disabled):hover, .webf-button.info:not(.muted):not(.disabled):active, .webf-button.info:not(.muted):not(.disabled).webf-active, .webf-button.info:not(.muted):not(.disabled).webf-state-active {
  color: white;
  border-color: #23a9d9;
  background-color: #23a9d9;
}
.webf-button.webf-button-info:not(.muted):not(.disabled):active, .webf-button.webf-button-info:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-info:not(.muted):not(.disabled).webf-state-active, .webf-button.info:not(.muted):not(.disabled):active, .webf-button.info:not(.muted):not(.disabled).webf-active, .webf-button.info:not(.muted):not(.disabled).webf-state-active {
  background-color: #1c87ad;
  border-color: #1c87ad;
}
.webf-button.webf-button-info.webf-button-colored-shadow, .webf-button.webf-button-info.colored-shadow, .webf-button.info.webf-button-colored-shadow, .webf-button.info.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(77, 187, 226, 0.15), 0 0.7rem 1rem -0.5rem rgba(77, 187, 226, 0.4);
}
.webf-button.webf-button-info.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-info.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-info.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-info.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-info.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-info.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.info.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.info.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.info.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.info.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.info.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.info.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(77, 187, 226, 0.15), 0 0.7rem 3rem -0.5rem rgba(77, 187, 226, 0.4);
}
.webf-button.webf-button-info:not(.disabled):visited, .webf-button.webf-button-info:not(.disabled):focus, .webf-button.info:not(.disabled):visited, .webf-button.info:not(.disabled):focus {
  box-shadow: none;
  color: white;
}
.webf-button.webf-button-info .webf-button-caret.webf-button-caret-down, .webf-button.info .webf-button-caret.webf-button-caret-down {
  border-top-color: white;
}
.webf-button.webf-button-info .webf-button-caret.webf-button-caret-left, .webf-button.info .webf-button-caret.webf-button-caret-left {
  border-right-color: white;
}
.webf-button.webf-button-info .webf-button-caret.webf-button-caret-right, .webf-button.info .webf-button-caret.webf-button-caret-right {
  border-left-color: white;
}
.webf-button.webf-button-info .webf-button-caret.webf-button-caret-up, .webf-button.info .webf-button-caret.webf-button-caret-up {
  border-bottom-color: white;
}
.webf-button.webf-button-text-info, .webf-button.text-info {
  border-color: transparent;
  color: #4dbbe2;
}
.webf-button.webf-button-text-info:not(.muted):not(.disabled):hover, .webf-button.webf-button-text-info:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-text-info:not(.muted):not(.disabled).webf-state-active, .webf-button.text-info:not(.muted):not(.disabled):hover, .webf-button.text-info:not(.muted):not(.disabled).webf-active, .webf-button.text-info:not(.muted):not(.disabled).webf-state-active {
  color: #23a9d9;
  background-color: rgba(77, 187, 226, 0.07);
}
.webf-button.webf-button-text-info:not(.muted):not(.disabled):active, .webf-button.webf-button-text-info:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-text-info:not(.muted):not(.disabled).webf-state-active, .webf-button.text-info:not(.muted):not(.disabled):active, .webf-button.text-info:not(.muted):not(.disabled).webf-active, .webf-button.text-info:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(77, 187, 226, 0.14);
}
.webf-button.webf-button-text-info .webf-button-caret.webf-button-caret-down, .webf-button.text-info .webf-button-caret.webf-button-caret-down {
  border-top-color: #4dbbe2;
}
.webf-button.webf-button-text-info .webf-button-caret.webf-button-caret-left, .webf-button.text-info .webf-button-caret.webf-button-caret-left {
  border-right-color: #4dbbe2;
}
.webf-button.webf-button-text-info .webf-button-caret.webf-button-caret-right, .webf-button.text-info .webf-button-caret.webf-button-caret-right {
  border-left-color: #4dbbe2;
}
.webf-button.webf-button-text-info .webf-button-caret.webf-button-caret-up, .webf-button.text-info .webf-button-caret.webf-button-caret-up {
  border-bottom-color: #4dbbe2;
}
.webf-button.webf-button-outline-info, .webf-button.outline-info {
  color: #4dbbe2;
  border-color: #4dbbe2;
}
.webf-button.webf-button-outline-info:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-info:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-info:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-info:not(.muted):not(.disabled):hover, .webf-button.outline-info:not(.muted):not(.disabled).webf-active, .webf-button.outline-info:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(77, 187, 226, 0.07);
  color: #23a9d9;
}
.webf-button.webf-button-outline-info:not(.muted):not(.disabled):active, .webf-button.webf-button-outline-info:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-info:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-info:not(.muted):not(.disabled):active, .webf-button.outline-info:not(.muted):not(.disabled).webf-active, .webf-button.outline-info:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(77, 187, 226, 0.14);
}
.webf-button.webf-button-outline-info.webf-button-colored-shadow, .webf-button.webf-button-outline-info.colored-shadow, .webf-button.outline-info.webf-button-colored-shadow, .webf-button.outline-info.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(77, 187, 226, 0.15), 0 0.7rem 1rem -0.5rem rgba(77, 187, 226, 0.4);
}
.webf-button.webf-button-outline-info.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-info.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-info.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-outline-info.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-info.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-info.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-info.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.outline-info.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.outline-info.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-info.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.outline-info.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.outline-info.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(77, 187, 226, 0.15), 0 0.7rem 3rem -0.5rem rgba(77, 187, 226, 0.4);
}
.webf-button.webf-button-outline-info .webf-button-caret.webf-button-caret-down, .webf-button.outline-info .webf-button-caret.webf-button-caret-down {
  border-top-color: #4dbbe2;
}
.webf-button.webf-button-outline-info .webf-button-caret.webf-button-caret-left, .webf-button.outline-info .webf-button-caret.webf-button-caret-left {
  border-right-color: #4dbbe2;
}
.webf-button.webf-button-outline-info .webf-button-caret.webf-button-caret-right, .webf-button.outline-info .webf-button-caret.webf-button-caret-right {
  border-left-color: #4dbbe2;
}
.webf-button.webf-button-outline-info .webf-button-caret.webf-button-caret-up, .webf-button.outline-info .webf-button-caret.webf-button-caret-up {
  border-bottom-color: #4dbbe2;
}
.webf-button.webf-button-gradient-info, .webf-button.gradient-info {
  background: #4dbbe2 linear-gradient(60deg, #2098c3 0%, #4dbbe2 50%, #99d8f8 100%);
  background-position: 100% 0;
  background-size: 200%;
  border: none;
  color: white;
  padding: -moz-calc( 0.3rem + 1px ) calc( 1rem + 1px );
  padding: -webkit-calc( 0.3rem + 1px ) calc( 1rem + 1px );
  padding: calc( 0.3rem + 1px ) calc( 1rem + 1px );
}
.webf-button.webf-button-gradient-info:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-info:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-info:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-info:not(.muted):not(.disabled):hover, .webf-button.gradient-info:not(.muted):not(.disabled).webf-active, .webf-button.gradient-info:not(.muted):not(.disabled).webf-state-active {
  background-position: 0 0%;
}
.webf-button.webf-button-gradient-info.webf-button-colored-shadow, .webf-button.webf-button-gradient-info.colored-shadow, .webf-button.gradient-info.webf-button-colored-shadow, .webf-button.gradient-info.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(77, 187, 226, 0.15), 0 0.7rem 1rem -0.5rem rgba(77, 187, 226, 0.4);
}
.webf-button.webf-button-gradient-info.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-info.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-info.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-gradient-info.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-info.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-info.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-info.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.gradient-info.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.gradient-info.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-info.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.gradient-info.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.gradient-info.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(77, 187, 226, 0.15), 0 0.7rem 3rem -0.5rem rgba(77, 187, 226, 0.4);
}
.webf-button.webf-button-success, .webf-button.webf-button-success.webf-normal, .webf-button.success, .webf-button.success.webf-normal {
  background-color: #66BB6A;
  color: white;
  border-color: #66BB6A;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}
.webf-button.webf-button-success:not(.muted):not(.disabled):hover, .webf-button.webf-button-success:not(.muted):not(.disabled):active, .webf-button.webf-button-success:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-success:not(.muted):not(.disabled).webf-state-active, .webf-button.success:not(.muted):not(.disabled):hover, .webf-button.success:not(.muted):not(.disabled):active, .webf-button.success:not(.muted):not(.disabled).webf-active, .webf-button.success:not(.muted):not(.disabled).webf-state-active {
  color: white;
  border-color: #49a54e;
  background-color: #49a54e;
}
.webf-button.webf-button-success:not(.muted):not(.disabled):active, .webf-button.webf-button-success:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-success:not(.muted):not(.disabled).webf-state-active, .webf-button.success:not(.muted):not(.disabled):active, .webf-button.success:not(.muted):not(.disabled).webf-active, .webf-button.success:not(.muted):not(.disabled).webf-state-active {
  background-color: #3a813d;
  border-color: #3a813d;
}
.webf-button.webf-button-success.webf-button-colored-shadow, .webf-button.webf-button-success.colored-shadow, .webf-button.success.webf-button-colored-shadow, .webf-button.success.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(102, 187, 106, 0.15), 0 0.7rem 1rem -0.5rem rgba(102, 187, 106, 0.4);
}
.webf-button.webf-button-success.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-success.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-success.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-success.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-success.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-success.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.success.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.success.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.success.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.success.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.success.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.success.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(102, 187, 106, 0.15), 0 0.7rem 3rem -0.5rem rgba(102, 187, 106, 0.4);
}
.webf-button.webf-button-success:not(.disabled):visited, .webf-button.webf-button-success:not(.disabled):focus, .webf-button.success:not(.disabled):visited, .webf-button.success:not(.disabled):focus {
  box-shadow: none;
  color: white;
}
.webf-button.webf-button-success .webf-button-caret.webf-button-caret-down, .webf-button.success .webf-button-caret.webf-button-caret-down {
  border-top-color: white;
}
.webf-button.webf-button-success .webf-button-caret.webf-button-caret-left, .webf-button.success .webf-button-caret.webf-button-caret-left {
  border-right-color: white;
}
.webf-button.webf-button-success .webf-button-caret.webf-button-caret-right, .webf-button.success .webf-button-caret.webf-button-caret-right {
  border-left-color: white;
}
.webf-button.webf-button-success .webf-button-caret.webf-button-caret-up, .webf-button.success .webf-button-caret.webf-button-caret-up {
  border-bottom-color: white;
}
.webf-button.webf-button-text-success, .webf-button.text-success {
  border-color: transparent;
  color: #66BB6A;
}
.webf-button.webf-button-text-success:not(.muted):not(.disabled):hover, .webf-button.webf-button-text-success:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-text-success:not(.muted):not(.disabled).webf-state-active, .webf-button.text-success:not(.muted):not(.disabled):hover, .webf-button.text-success:not(.muted):not(.disabled).webf-active, .webf-button.text-success:not(.muted):not(.disabled).webf-state-active {
  color: #49a54e;
  background-color: rgba(102, 187, 106, 0.07);
}
.webf-button.webf-button-text-success:not(.muted):not(.disabled):active, .webf-button.webf-button-text-success:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-text-success:not(.muted):not(.disabled).webf-state-active, .webf-button.text-success:not(.muted):not(.disabled):active, .webf-button.text-success:not(.muted):not(.disabled).webf-active, .webf-button.text-success:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(102, 187, 106, 0.14);
}
.webf-button.webf-button-text-success .webf-button-caret.webf-button-caret-down, .webf-button.text-success .webf-button-caret.webf-button-caret-down {
  border-top-color: #66BB6A;
}
.webf-button.webf-button-text-success .webf-button-caret.webf-button-caret-left, .webf-button.text-success .webf-button-caret.webf-button-caret-left {
  border-right-color: #66BB6A;
}
.webf-button.webf-button-text-success .webf-button-caret.webf-button-caret-right, .webf-button.text-success .webf-button-caret.webf-button-caret-right {
  border-left-color: #66BB6A;
}
.webf-button.webf-button-text-success .webf-button-caret.webf-button-caret-up, .webf-button.text-success .webf-button-caret.webf-button-caret-up {
  border-bottom-color: #66BB6A;
}
.webf-button.webf-button-outline-success, .webf-button.outline-success {
  color: #66BB6A;
  border-color: #66BB6A;
}
.webf-button.webf-button-outline-success:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-success:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-success:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-success:not(.muted):not(.disabled):hover, .webf-button.outline-success:not(.muted):not(.disabled).webf-active, .webf-button.outline-success:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(102, 187, 106, 0.07);
  color: #49a54e;
}
.webf-button.webf-button-outline-success:not(.muted):not(.disabled):active, .webf-button.webf-button-outline-success:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-success:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-success:not(.muted):not(.disabled):active, .webf-button.outline-success:not(.muted):not(.disabled).webf-active, .webf-button.outline-success:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(102, 187, 106, 0.14);
}
.webf-button.webf-button-outline-success.webf-button-colored-shadow, .webf-button.webf-button-outline-success.colored-shadow, .webf-button.outline-success.webf-button-colored-shadow, .webf-button.outline-success.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(102, 187, 106, 0.15), 0 0.7rem 1rem -0.5rem rgba(102, 187, 106, 0.4);
}
.webf-button.webf-button-outline-success.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-success.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-success.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-outline-success.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-success.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-success.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-success.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.outline-success.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.outline-success.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-success.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.outline-success.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.outline-success.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(102, 187, 106, 0.15), 0 0.7rem 3rem -0.5rem rgba(102, 187, 106, 0.4);
}
.webf-button.webf-button-outline-success .webf-button-caret.webf-button-caret-down, .webf-button.outline-success .webf-button-caret.webf-button-caret-down {
  border-top-color: #66BB6A;
}
.webf-button.webf-button-outline-success .webf-button-caret.webf-button-caret-left, .webf-button.outline-success .webf-button-caret.webf-button-caret-left {
  border-right-color: #66BB6A;
}
.webf-button.webf-button-outline-success .webf-button-caret.webf-button-caret-right, .webf-button.outline-success .webf-button-caret.webf-button-caret-right {
  border-left-color: #66BB6A;
}
.webf-button.webf-button-outline-success .webf-button-caret.webf-button-caret-up, .webf-button.outline-success .webf-button-caret.webf-button-caret-up {
  border-bottom-color: #66BB6A;
}
.webf-button.webf-button-gradient-success, .webf-button.gradient-success {
  background: #66BB6A linear-gradient(60deg, #419345 0%, #66BB6A 50%, #aedcbc 100%);
  background-position: 100% 0;
  background-size: 200%;
  border: none;
  color: white;
  padding: -moz-calc( 0.3rem + 1px ) calc( 1rem + 1px );
  padding: -webkit-calc( 0.3rem + 1px ) calc( 1rem + 1px );
  padding: calc( 0.3rem + 1px ) calc( 1rem + 1px );
}
.webf-button.webf-button-gradient-success:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-success:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-success:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-success:not(.muted):not(.disabled):hover, .webf-button.gradient-success:not(.muted):not(.disabled).webf-active, .webf-button.gradient-success:not(.muted):not(.disabled).webf-state-active {
  background-position: 0 0%;
}
.webf-button.webf-button-gradient-success.webf-button-colored-shadow, .webf-button.webf-button-gradient-success.colored-shadow, .webf-button.gradient-success.webf-button-colored-shadow, .webf-button.gradient-success.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(102, 187, 106, 0.15), 0 0.7rem 1rem -0.5rem rgba(102, 187, 106, 0.4);
}
.webf-button.webf-button-gradient-success.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-success.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-success.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-gradient-success.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-success.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-success.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-success.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.gradient-success.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.gradient-success.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-success.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.gradient-success.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.gradient-success.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(102, 187, 106, 0.15), 0 0.7rem 3rem -0.5rem rgba(102, 187, 106, 0.4);
}
.webf-button.webf-button-warning, .webf-button.webf-button-warning.webf-normal, .webf-button.warning, .webf-button.warning.webf-normal {
  background-color: #f6b74d;
  color: white;
  border-color: #f6b74d;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}
.webf-button.webf-button-warning:not(.muted):not(.disabled):hover, .webf-button.webf-button-warning:not(.muted):not(.disabled):active, .webf-button.webf-button-warning:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-warning:not(.muted):not(.disabled).webf-state-active, .webf-button.warning:not(.muted):not(.disabled):hover, .webf-button.warning:not(.muted):not(.disabled):active, .webf-button.warning:not(.muted):not(.disabled).webf-active, .webf-button.warning:not(.muted):not(.disabled).webf-state-active {
  color: white;
  border-color: #f4a31c;
  background-color: #f4a31c;
}
.webf-button.webf-button-warning:not(.muted):not(.disabled):active, .webf-button.webf-button-warning:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-warning:not(.muted):not(.disabled).webf-state-active, .webf-button.warning:not(.muted):not(.disabled):active, .webf-button.warning:not(.muted):not(.disabled).webf-active, .webf-button.warning:not(.muted):not(.disabled).webf-state-active {
  background-color: #d2880b;
  border-color: #d2880b;
}
.webf-button.webf-button-warning.webf-button-colored-shadow, .webf-button.webf-button-warning.colored-shadow, .webf-button.warning.webf-button-colored-shadow, .webf-button.warning.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(246, 183, 77, 0.15), 0 0.7rem 1rem -0.5rem rgba(246, 183, 77, 0.4);
}
.webf-button.webf-button-warning.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-warning.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-warning.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-warning.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-warning.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-warning.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.warning.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.warning.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.warning.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.warning.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.warning.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.warning.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(246, 183, 77, 0.15), 0 0.7rem 3rem -0.5rem rgba(246, 183, 77, 0.4);
}
.webf-button.webf-button-warning:not(.disabled):visited, .webf-button.webf-button-warning:not(.disabled):focus, .webf-button.warning:not(.disabled):visited, .webf-button.warning:not(.disabled):focus {
  box-shadow: none;
  color: white;
}
.webf-button.webf-button-warning .webf-button-caret.webf-button-caret-down, .webf-button.warning .webf-button-caret.webf-button-caret-down {
  border-top-color: white;
}
.webf-button.webf-button-warning .webf-button-caret.webf-button-caret-left, .webf-button.warning .webf-button-caret.webf-button-caret-left {
  border-right-color: white;
}
.webf-button.webf-button-warning .webf-button-caret.webf-button-caret-right, .webf-button.warning .webf-button-caret.webf-button-caret-right {
  border-left-color: white;
}
.webf-button.webf-button-warning .webf-button-caret.webf-button-caret-up, .webf-button.warning .webf-button-caret.webf-button-caret-up {
  border-bottom-color: white;
}
.webf-button.webf-button-text-warning, .webf-button.text-warning {
  border-color: transparent;
  color: #f6b74d;
}
.webf-button.webf-button-text-warning:not(.muted):not(.disabled):hover, .webf-button.webf-button-text-warning:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-text-warning:not(.muted):not(.disabled).webf-state-active, .webf-button.text-warning:not(.muted):not(.disabled):hover, .webf-button.text-warning:not(.muted):not(.disabled).webf-active, .webf-button.text-warning:not(.muted):not(.disabled).webf-state-active {
  color: #f4a31c;
  background-color: rgba(246, 183, 77, 0.07);
}
.webf-button.webf-button-text-warning:not(.muted):not(.disabled):active, .webf-button.webf-button-text-warning:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-text-warning:not(.muted):not(.disabled).webf-state-active, .webf-button.text-warning:not(.muted):not(.disabled):active, .webf-button.text-warning:not(.muted):not(.disabled).webf-active, .webf-button.text-warning:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(246, 183, 77, 0.14);
}
.webf-button.webf-button-text-warning .webf-button-caret.webf-button-caret-down, .webf-button.text-warning .webf-button-caret.webf-button-caret-down {
  border-top-color: #f6b74d;
}
.webf-button.webf-button-text-warning .webf-button-caret.webf-button-caret-left, .webf-button.text-warning .webf-button-caret.webf-button-caret-left {
  border-right-color: #f6b74d;
}
.webf-button.webf-button-text-warning .webf-button-caret.webf-button-caret-right, .webf-button.text-warning .webf-button-caret.webf-button-caret-right {
  border-left-color: #f6b74d;
}
.webf-button.webf-button-text-warning .webf-button-caret.webf-button-caret-up, .webf-button.text-warning .webf-button-caret.webf-button-caret-up {
  border-bottom-color: #f6b74d;
}
.webf-button.webf-button-outline-warning, .webf-button.outline-warning {
  color: #f6b74d;
  border-color: #f6b74d;
}
.webf-button.webf-button-outline-warning:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-warning:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-warning:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-warning:not(.muted):not(.disabled):hover, .webf-button.outline-warning:not(.muted):not(.disabled).webf-active, .webf-button.outline-warning:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(246, 183, 77, 0.07);
  color: #f4a31c;
}
.webf-button.webf-button-outline-warning:not(.muted):not(.disabled):active, .webf-button.webf-button-outline-warning:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-warning:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-warning:not(.muted):not(.disabled):active, .webf-button.outline-warning:not(.muted):not(.disabled).webf-active, .webf-button.outline-warning:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(246, 183, 77, 0.14);
}
.webf-button.webf-button-outline-warning.webf-button-colored-shadow, .webf-button.webf-button-outline-warning.colored-shadow, .webf-button.outline-warning.webf-button-colored-shadow, .webf-button.outline-warning.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(246, 183, 77, 0.15), 0 0.7rem 1rem -0.5rem rgba(246, 183, 77, 0.4);
}
.webf-button.webf-button-outline-warning.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-warning.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-warning.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-outline-warning.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-warning.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-warning.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-warning.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.outline-warning.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.outline-warning.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-warning.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.outline-warning.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.outline-warning.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(246, 183, 77, 0.15), 0 0.7rem 3rem -0.5rem rgba(246, 183, 77, 0.4);
}
.webf-button.webf-button-outline-warning .webf-button-caret.webf-button-caret-down, .webf-button.outline-warning .webf-button-caret.webf-button-caret-down {
  border-top-color: #f6b74d;
}
.webf-button.webf-button-outline-warning .webf-button-caret.webf-button-caret-left, .webf-button.outline-warning .webf-button-caret.webf-button-caret-left {
  border-right-color: #f6b74d;
}
.webf-button.webf-button-outline-warning .webf-button-caret.webf-button-caret-right, .webf-button.outline-warning .webf-button-caret.webf-button-caret-right {
  border-left-color: #f6b74d;
}
.webf-button.webf-button-outline-warning .webf-button-caret.webf-button-caret-up, .webf-button.outline-warning .webf-button-caret.webf-button-caret-up {
  border-bottom-color: #f6b74d;
}
.webf-button.webf-button-gradient-warning, .webf-button.gradient-warning {
  background: #f6b74d linear-gradient(60deg, #eb980c 0%, #f6b74d 50%, #f6df5f 100%);
  background-position: 100% 0;
  background-size: 200%;
  border: none;
  color: white;
  padding: -moz-calc( 0.3rem + 1px ) calc( 1rem + 1px );
  padding: -webkit-calc( 0.3rem + 1px ) calc( 1rem + 1px );
  padding: calc( 0.3rem + 1px ) calc( 1rem + 1px );
}
.webf-button.webf-button-gradient-warning:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-warning:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-warning:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-warning:not(.muted):not(.disabled):hover, .webf-button.gradient-warning:not(.muted):not(.disabled).webf-active, .webf-button.gradient-warning:not(.muted):not(.disabled).webf-state-active {
  background-position: 0 0%;
}
.webf-button.webf-button-gradient-warning.webf-button-colored-shadow, .webf-button.webf-button-gradient-warning.colored-shadow, .webf-button.gradient-warning.webf-button-colored-shadow, .webf-button.gradient-warning.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(246, 183, 77, 0.15), 0 0.7rem 1rem -0.5rem rgba(246, 183, 77, 0.4);
}
.webf-button.webf-button-gradient-warning.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-warning.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-warning.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-gradient-warning.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-warning.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-warning.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-warning.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.gradient-warning.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.gradient-warning.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-warning.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.gradient-warning.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.gradient-warning.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(246, 183, 77, 0.15), 0 0.7rem 3rem -0.5rem rgba(246, 183, 77, 0.4);
}
.webf-button.webf-button-danger, .webf-button.webf-button-danger.webf-normal, .webf-button.danger, .webf-button.danger.webf-normal {
  background-color: #ed5655;
  color: white;
  border-color: #ed5655;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}
.webf-button.webf-button-danger:not(.muted):not(.disabled):hover, .webf-button.webf-button-danger:not(.muted):not(.disabled):active, .webf-button.webf-button-danger:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-danger:not(.muted):not(.disabled).webf-state-active, .webf-button.danger:not(.muted):not(.disabled):hover, .webf-button.danger:not(.muted):not(.disabled):active, .webf-button.danger:not(.muted):not(.disabled).webf-active, .webf-button.danger:not(.muted):not(.disabled).webf-state-active {
  color: white;
  border-color: #e82827;
  background-color: #e82827;
}
.webf-button.webf-button-danger:not(.muted):not(.disabled):active, .webf-button.webf-button-danger:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-danger:not(.muted):not(.disabled).webf-state-active, .webf-button.danger:not(.muted):not(.disabled):active, .webf-button.danger:not(.muted):not(.disabled).webf-active, .webf-button.danger:not(.muted):not(.disabled).webf-state-active {
  background-color: #c71615;
  border-color: #c71615;
}
.webf-button.webf-button-danger.webf-button-colored-shadow, .webf-button.webf-button-danger.colored-shadow, .webf-button.danger.webf-button-colored-shadow, .webf-button.danger.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(237, 86, 85, 0.15), 0 0.7rem 1rem -0.5rem rgba(237, 86, 85, 0.4);
}
.webf-button.webf-button-danger.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-danger.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-danger.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-danger.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-danger.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-danger.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.danger.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.danger.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.danger.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.danger.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.danger.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.danger.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(237, 86, 85, 0.15), 0 0.7rem 3rem -0.5rem rgba(237, 86, 85, 0.4);
}
.webf-button.webf-button-danger:not(.disabled):visited, .webf-button.webf-button-danger:not(.disabled):focus, .webf-button.danger:not(.disabled):visited, .webf-button.danger:not(.disabled):focus {
  box-shadow: none;
  color: white;
}
.webf-button.webf-button-danger .webf-button-caret.webf-button-caret-down, .webf-button.danger .webf-button-caret.webf-button-caret-down {
  border-top-color: white;
}
.webf-button.webf-button-danger .webf-button-caret.webf-button-caret-left, .webf-button.danger .webf-button-caret.webf-button-caret-left {
  border-right-color: white;
}
.webf-button.webf-button-danger .webf-button-caret.webf-button-caret-right, .webf-button.danger .webf-button-caret.webf-button-caret-right {
  border-left-color: white;
}
.webf-button.webf-button-danger .webf-button-caret.webf-button-caret-up, .webf-button.danger .webf-button-caret.webf-button-caret-up {
  border-bottom-color: white;
}
.webf-button.webf-button-text-danger, .webf-button.text-danger {
  border-color: transparent;
  color: #ed5655;
}
.webf-button.webf-button-text-danger:not(.muted):not(.disabled):hover, .webf-button.webf-button-text-danger:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-text-danger:not(.muted):not(.disabled).webf-state-active, .webf-button.text-danger:not(.muted):not(.disabled):hover, .webf-button.text-danger:not(.muted):not(.disabled).webf-active, .webf-button.text-danger:not(.muted):not(.disabled).webf-state-active {
  color: #e82827;
  background-color: rgba(237, 86, 85, 0.07);
}
.webf-button.webf-button-text-danger:not(.muted):not(.disabled):active, .webf-button.webf-button-text-danger:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-text-danger:not(.muted):not(.disabled).webf-state-active, .webf-button.text-danger:not(.muted):not(.disabled):active, .webf-button.text-danger:not(.muted):not(.disabled).webf-active, .webf-button.text-danger:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(237, 86, 85, 0.14);
}
.webf-button.webf-button-text-danger .webf-button-caret.webf-button-caret-down, .webf-button.text-danger .webf-button-caret.webf-button-caret-down {
  border-top-color: #ed5655;
}
.webf-button.webf-button-text-danger .webf-button-caret.webf-button-caret-left, .webf-button.text-danger .webf-button-caret.webf-button-caret-left {
  border-right-color: #ed5655;
}
.webf-button.webf-button-text-danger .webf-button-caret.webf-button-caret-right, .webf-button.text-danger .webf-button-caret.webf-button-caret-right {
  border-left-color: #ed5655;
}
.webf-button.webf-button-text-danger .webf-button-caret.webf-button-caret-up, .webf-button.text-danger .webf-button-caret.webf-button-caret-up {
  border-bottom-color: #ed5655;
}
.webf-button.webf-button-outline-danger, .webf-button.outline-danger {
  color: #ed5655;
  border-color: #ed5655;
}
.webf-button.webf-button-outline-danger:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-danger:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-danger:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-danger:not(.muted):not(.disabled):hover, .webf-button.outline-danger:not(.muted):not(.disabled).webf-active, .webf-button.outline-danger:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(237, 86, 85, 0.07);
  color: #e82827;
}
.webf-button.webf-button-outline-danger:not(.muted):not(.disabled):active, .webf-button.webf-button-outline-danger:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-danger:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-danger:not(.muted):not(.disabled):active, .webf-button.outline-danger:not(.muted):not(.disabled).webf-active, .webf-button.outline-danger:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(237, 86, 85, 0.14);
}
.webf-button.webf-button-outline-danger.webf-button-colored-shadow, .webf-button.webf-button-outline-danger.colored-shadow, .webf-button.outline-danger.webf-button-colored-shadow, .webf-button.outline-danger.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(237, 86, 85, 0.15), 0 0.7rem 1rem -0.5rem rgba(237, 86, 85, 0.4);
}
.webf-button.webf-button-outline-danger.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-danger.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-danger.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-outline-danger.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-danger.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-danger.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-danger.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.outline-danger.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.outline-danger.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-danger.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.outline-danger.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.outline-danger.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(237, 86, 85, 0.15), 0 0.7rem 3rem -0.5rem rgba(237, 86, 85, 0.4);
}
.webf-button.webf-button-outline-danger .webf-button-caret.webf-button-caret-down, .webf-button.outline-danger .webf-button-caret.webf-button-caret-down {
  border-top-color: #ed5655;
}
.webf-button.webf-button-outline-danger .webf-button-caret.webf-button-caret-left, .webf-button.outline-danger .webf-button-caret.webf-button-caret-left {
  border-right-color: #ed5655;
}
.webf-button.webf-button-outline-danger .webf-button-caret.webf-button-caret-right, .webf-button.outline-danger .webf-button-caret.webf-button-caret-right {
  border-left-color: #ed5655;
}
.webf-button.webf-button-outline-danger .webf-button-caret.webf-button-caret-up, .webf-button.outline-danger .webf-button-caret.webf-button-caret-up {
  border-bottom-color: #ed5655;
}
.webf-button.webf-button-gradient-danger, .webf-button.gradient-danger {
  background: #ed5655 linear-gradient(60deg, #de1918 0%, #ed5655 50%, #ed7f66 100%);
  background-position: 100% 0;
  background-size: 200%;
  border: none;
  color: white;
  padding: -moz-calc( 0.3rem + 1px ) calc( 1rem + 1px );
  padding: -webkit-calc( 0.3rem + 1px ) calc( 1rem + 1px );
  padding: calc( 0.3rem + 1px ) calc( 1rem + 1px );
}
.webf-button.webf-button-gradient-danger:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-danger:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-danger:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-danger:not(.muted):not(.disabled):hover, .webf-button.gradient-danger:not(.muted):not(.disabled).webf-active, .webf-button.gradient-danger:not(.muted):not(.disabled).webf-state-active {
  background-position: 0 0%;
}
.webf-button.webf-button-gradient-danger.webf-button-colored-shadow, .webf-button.webf-button-gradient-danger.colored-shadow, .webf-button.gradient-danger.webf-button-colored-shadow, .webf-button.gradient-danger.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(237, 86, 85, 0.15), 0 0.7rem 1rem -0.5rem rgba(237, 86, 85, 0.4);
}
.webf-button.webf-button-gradient-danger.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-danger.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-danger.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-gradient-danger.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-danger.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-danger.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-danger.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.gradient-danger.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.gradient-danger.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-danger.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.gradient-danger.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.gradient-danger.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(237, 86, 85, 0.15), 0 0.7rem 3rem -0.5rem rgba(237, 86, 85, 0.4);
}
.webf-button.webf-button-lightgrey, .webf-button.webf-button-lightgrey.webf-normal, .webf-button.lightgrey, .webf-button.lightgrey.webf-normal {
  background-color: #f5f5f5;
  color: #555;
  border-color: #f5f5f5;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}
.webf-button.webf-button-lightgrey:not(.muted):not(.disabled):hover, .webf-button.webf-button-lightgrey:not(.muted):not(.disabled):active, .webf-button.webf-button-lightgrey:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-lightgrey:not(.muted):not(.disabled).webf-state-active, .webf-button.lightgrey:not(.muted):not(.disabled):hover, .webf-button.lightgrey:not(.muted):not(.disabled):active, .webf-button.lightgrey:not(.muted):not(.disabled).webf-active, .webf-button.lightgrey:not(.muted):not(.disabled).webf-state-active {
  color: #555;
  border-color: gainsboro;
  background-color: gainsboro;
}
.webf-button.webf-button-lightgrey:not(.muted):not(.disabled):active, .webf-button.webf-button-lightgrey:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-lightgrey:not(.muted):not(.disabled).webf-state-active, .webf-button.lightgrey:not(.muted):not(.disabled):active, .webf-button.lightgrey:not(.muted):not(.disabled).webf-active, .webf-button.lightgrey:not(.muted):not(.disabled).webf-state-active {
  background-color: #c2c2c2;
  border-color: #c2c2c2;
}
.webf-button.webf-button-lightgrey.webf-button-colored-shadow, .webf-button.webf-button-lightgrey.colored-shadow, .webf-button.lightgrey.webf-button-colored-shadow, .webf-button.lightgrey.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(245, 245, 245, 0.15), 0 0.7rem 1rem -0.5rem rgba(245, 245, 245, 0.4);
}
.webf-button.webf-button-lightgrey.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-lightgrey.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-lightgrey.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-lightgrey.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-lightgrey.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-lightgrey.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.lightgrey.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.lightgrey.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.lightgrey.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.lightgrey.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.lightgrey.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.lightgrey.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(245, 245, 245, 0.15), 0 0.7rem 3rem -0.5rem rgba(245, 245, 245, 0.4);
}
.webf-button.webf-button-lightgrey:not(.disabled):visited, .webf-button.webf-button-lightgrey:not(.disabled):focus, .webf-button.lightgrey:not(.disabled):visited, .webf-button.lightgrey:not(.disabled):focus {
  box-shadow: none;
  color: #555;
}
.webf-button.webf-button-lightgrey .webf-button-caret.webf-button-caret-down, .webf-button.lightgrey .webf-button-caret.webf-button-caret-down {
  border-top-color: #555;
}
.webf-button.webf-button-lightgrey .webf-button-caret.webf-button-caret-left, .webf-button.lightgrey .webf-button-caret.webf-button-caret-left {
  border-right-color: #555;
}
.webf-button.webf-button-lightgrey .webf-button-caret.webf-button-caret-right, .webf-button.lightgrey .webf-button-caret.webf-button-caret-right {
  border-left-color: #555;
}
.webf-button.webf-button-lightgrey .webf-button-caret.webf-button-caret-up, .webf-button.lightgrey .webf-button-caret.webf-button-caret-up {
  border-bottom-color: #555;
}
.webf-button.webf-button-text-lightgrey, .webf-button.text-lightgrey {
  border-color: transparent;
  color: #f5f5f5;
}
.webf-button.webf-button-text-lightgrey:not(.muted):not(.disabled):hover, .webf-button.webf-button-text-lightgrey:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-text-lightgrey:not(.muted):not(.disabled).webf-state-active, .webf-button.text-lightgrey:not(.muted):not(.disabled):hover, .webf-button.text-lightgrey:not(.muted):not(.disabled).webf-active, .webf-button.text-lightgrey:not(.muted):not(.disabled).webf-state-active {
  color: gainsboro;
  background-color: rgba(245, 245, 245, 0.07);
}
.webf-button.webf-button-text-lightgrey:not(.muted):not(.disabled):active, .webf-button.webf-button-text-lightgrey:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-text-lightgrey:not(.muted):not(.disabled).webf-state-active, .webf-button.text-lightgrey:not(.muted):not(.disabled):active, .webf-button.text-lightgrey:not(.muted):not(.disabled).webf-active, .webf-button.text-lightgrey:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(245, 245, 245, 0.14);
}
.webf-button.webf-button-text-lightgrey .webf-button-caret.webf-button-caret-down, .webf-button.text-lightgrey .webf-button-caret.webf-button-caret-down {
  border-top-color: #f5f5f5;
}
.webf-button.webf-button-text-lightgrey .webf-button-caret.webf-button-caret-left, .webf-button.text-lightgrey .webf-button-caret.webf-button-caret-left {
  border-right-color: #f5f5f5;
}
.webf-button.webf-button-text-lightgrey .webf-button-caret.webf-button-caret-right, .webf-button.text-lightgrey .webf-button-caret.webf-button-caret-right {
  border-left-color: #f5f5f5;
}
.webf-button.webf-button-text-lightgrey .webf-button-caret.webf-button-caret-up, .webf-button.text-lightgrey .webf-button-caret.webf-button-caret-up {
  border-bottom-color: #f5f5f5;
}
.webf-button.webf-button-outline-lightgrey, .webf-button.outline-lightgrey {
  color: #f5f5f5;
  border-color: #f5f5f5;
}
.webf-button.webf-button-outline-lightgrey:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-lightgrey:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-lightgrey:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-lightgrey:not(.muted):not(.disabled):hover, .webf-button.outline-lightgrey:not(.muted):not(.disabled).webf-active, .webf-button.outline-lightgrey:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(245, 245, 245, 0.07);
  color: gainsboro;
}
.webf-button.webf-button-outline-lightgrey:not(.muted):not(.disabled):active, .webf-button.webf-button-outline-lightgrey:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-lightgrey:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-lightgrey:not(.muted):not(.disabled):active, .webf-button.outline-lightgrey:not(.muted):not(.disabled).webf-active, .webf-button.outline-lightgrey:not(.muted):not(.disabled).webf-state-active {
  background-color: rgba(245, 245, 245, 0.14);
}
.webf-button.webf-button-outline-lightgrey.webf-button-colored-shadow, .webf-button.webf-button-outline-lightgrey.colored-shadow, .webf-button.outline-lightgrey.webf-button-colored-shadow, .webf-button.outline-lightgrey.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(245, 245, 245, 0.15), 0 0.7rem 1rem -0.5rem rgba(245, 245, 245, 0.4);
}
.webf-button.webf-button-outline-lightgrey.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-lightgrey.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-lightgrey.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-outline-lightgrey.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-outline-lightgrey.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-outline-lightgrey.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-lightgrey.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.outline-lightgrey.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.outline-lightgrey.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.outline-lightgrey.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.outline-lightgrey.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.outline-lightgrey.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(245, 245, 245, 0.15), 0 0.7rem 3rem -0.5rem rgba(245, 245, 245, 0.4);
}
.webf-button.webf-button-outline-lightgrey .webf-button-caret.webf-button-caret-down, .webf-button.outline-lightgrey .webf-button-caret.webf-button-caret-down {
  border-top-color: #f5f5f5;
}
.webf-button.webf-button-outline-lightgrey .webf-button-caret.webf-button-caret-left, .webf-button.outline-lightgrey .webf-button-caret.webf-button-caret-left {
  border-right-color: #f5f5f5;
}
.webf-button.webf-button-outline-lightgrey .webf-button-caret.webf-button-caret-right, .webf-button.outline-lightgrey .webf-button-caret.webf-button-caret-right {
  border-left-color: #f5f5f5;
}
.webf-button.webf-button-outline-lightgrey .webf-button-caret.webf-button-caret-up, .webf-button.outline-lightgrey .webf-button-caret.webf-button-caret-up {
  border-bottom-color: #f5f5f5;
}
.webf-button.webf-button-gradient-lightgrey, .webf-button.gradient-lightgrey {
  background: #f5f5f5 linear-gradient(60deg, #cfcfcf 0%, #f5f5f5 50%, #fafafa 100%);
  background-position: 100% 0;
  background-size: 200%;
  border: none;
  color: #555;
  padding: -moz-calc( 0.3rem + 1px ) calc( 1rem + 1px );
  padding: -webkit-calc( 0.3rem + 1px ) calc( 1rem + 1px );
  padding: calc( 0.3rem + 1px ) calc( 1rem + 1px );
}
.webf-button.webf-button-gradient-lightgrey:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-lightgrey:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-lightgrey:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-lightgrey:not(.muted):not(.disabled):hover, .webf-button.gradient-lightgrey:not(.muted):not(.disabled).webf-active, .webf-button.gradient-lightgrey:not(.muted):not(.disabled).webf-state-active {
  background-position: 0 0%;
}
.webf-button.webf-button-gradient-lightgrey.webf-button-colored-shadow, .webf-button.webf-button-gradient-lightgrey.colored-shadow, .webf-button.gradient-lightgrey.webf-button-colored-shadow, .webf-button.gradient-lightgrey.colored-shadow {
  box-shadow: 0 0.4rem 2rem 0 rgba(245, 245, 245, 0.15), 0 0.7rem 1rem -0.5rem rgba(245, 245, 245, 0.4);
}
.webf-button.webf-button-gradient-lightgrey.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-lightgrey.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-lightgrey.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.webf-button-gradient-lightgrey.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-gradient-lightgrey.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-gradient-lightgrey.colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-lightgrey.webf-button-colored-shadow:not(.muted):not(.disabled):hover, .webf-button.gradient-lightgrey.webf-button-colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.gradient-lightgrey.webf-button-colored-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.gradient-lightgrey.colored-shadow:not(.muted):not(.disabled):hover, .webf-button.gradient-lightgrey.colored-shadow:not(.muted):not(.disabled).webf-active, .webf-button.gradient-lightgrey.colored-shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0 0.4rem 3rem 0 rgba(245, 245, 245, 0.15), 0 0.7rem 3rem -0.5rem rgba(245, 245, 245, 0.4);
}
.webf-button.webf-button-shadow, .webf-button.shadow {
  box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 3px 1px -2px rgba(0, 0, 0, 0.12);
}
.webf-button.webf-button-shadow:not(.muted):not(.disabled):hover, .webf-button.webf-button-shadow:not(.muted):not(.disabled).webf-active, .webf-button.webf-button-shadow:not(.muted):not(.disabled).webf-state-active, .webf-button.shadow:not(.muted):not(.disabled):hover, .webf-button.shadow:not(.muted):not(.disabled).webf-active, .webf-button.shadow:not(.muted):not(.disabled).webf-state-active {
  box-shadow: 0px 1px 10px 0px rgba(0, 0, 0, 0.2), 0px 2px 8px 0px rgba(0, 0, 0, 0.14), 0px 3px 5px -2px rgba(0, 0, 0, 0.12);
}
.webf-button.muted, .webf-button.muted:hover, .webf-button.muted:active, .webf-button.muted:visited {
  opacity: 0.5;
  cursor: not-allowed;
}
.webf-button.disabled, .webf-button.disabled:hover, .webf-button.disabled:active, .webf-button.disabled:visited {
  background-image: -owg-none;
  background-image: -webkit-none;
  background-image: -moz-none;
  background-image: -o-none;
  background-image: none;
  background-color: white;
  border-color: #d5d5d5;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  color: #bbbbbb;
  cursor: not-allowed;
}
.webf-button.disabled .webf-button-caret.webf-button-caret-down, .webf-button.disabled:hover .webf-button-caret.webf-button-caret-down, .webf-button.disabled:active .webf-button-caret.webf-button-caret-down, .webf-button.disabled:visited .webf-button-caret.webf-button-caret-down {
  border-top-color: #bbbbbb;
}
.webf-button.disabled .webf-button-caret.webf-button-caret-left, .webf-button.disabled:hover .webf-button-caret.webf-button-caret-left, .webf-button.disabled:active .webf-button-caret.webf-button-caret-left, .webf-button.disabled:visited .webf-button-caret.webf-button-caret-left {
  border-right-color: #bbbbbb;
}
.webf-button.disabled .webf-button-caret.webf-button-caret-right, .webf-button.disabled:hover .webf-button-caret.webf-button-caret-right, .webf-button.disabled:active .webf-button-caret.webf-button-caret-right, .webf-button.disabled:visited .webf-button-caret.webf-button-caret-right {
  border-left-color: #bbbbbb;
}
.webf-button.disabled .webf-button-caret.webf-button-caret-up, .webf-button.disabled:hover .webf-button-caret.webf-button-caret-up, .webf-button.disabled:active .webf-button-caret.webf-button-caret-up, .webf-button.disabled:visited .webf-button-caret.webf-button-caret-up {
  border-bottom-color: #bbbbbb;
}
.webf-button.webf-button-square, .webf-button.webf-button-square:hover, .webf-button.webf-button-square:active, .webf-button.square, .webf-button.square:hover, .webf-button.square:active {
  border-radius: 0 !important;
}
.webf-button.webf-button-pill, .webf-button.webf-button-pill:hover, .webf-button.webf-button-pill:active, .webf-button.pill, .webf-button.pill:hover, .webf-button.pill:active {
  border-radius: 100rem !important;
}
.webf-button.webf-button-block, .webf-button.block {
  -webkit-border-radius: 0.25rem;
  -moz-border-radius: 0.25rem;
  -ms-border-radius: 0.25rem;
  -o-border-radius: 0.25rem;
  border-radius: 0.25rem;
  display: block;
  width: 100%;
}
.webf-button.webf-button-load, .webf-button.load {
  overflow: hidden;
  position: relative;
  z-index: 0;
}
.webf-button.webf-button-load .webf-button-maintext, .webf-button.load .webf-button-maintext {
  transition: 0.3s color;
}
.webf-button.webf-button-load .webf-button-icon-loader, .webf-button.load .webf-button-icon-loader {
  left: 50%;
  margin-left: -0.5em;
  margin-top: -0.5em;
  opacity: 0;
  position: absolute;
  text-align: center;
  top: 50%;
  transition: 0.3s color;
  z-index: 1;
}
.webf-button.webf-button-load .webf-button-progressbar, .webf-button.load .webf-button-progressbar {
  background: rgba(0, 0, 0, 0.2);
  content: " ";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 0%;
  z-index: -1;
}
.webf-button.webf-button-load.webf-button-load.webf-button-loading .webf-button-maintext, .webf-button.webf-button-load.load.loading .webf-button-maintext, .webf-button.load.webf-button-load.webf-button-loading .webf-button-maintext, .webf-button.load.load.loading .webf-button-maintext {
  color: transparent;
}
.webf-button.webf-button-load.webf-button-load.webf-button-loading .webf-button-icon-loader, .webf-button.webf-button-load.load.loading .webf-button-icon-loader, .webf-button.load.webf-button-load.webf-button-loading .webf-button-icon-loader, .webf-button.load.load.loading .webf-button-icon-loader {
  opacity: 1;
}

.webf-button, .webf-button {
  -webkit-border-radius: 0.225rem;
  -moz-border-radius: 0.225rem;
  -ms-border-radius: 0.225rem;
  -o-border-radius: 0.225rem;
  border-radius: 0.225rem;
  font-size: 0.9rem;
  padding: 0.27rem 0.9rem;
}
.webf-button .webf-button-icon, .webf-button .webf-button-icon {
  font-size: 1em;
  vertical-align: middle;
}
.webf-button .webf-button-icon.webf-icon-left, .webf-button .webf-button-icon.webf-icon-left {
  margin-right: 0.3rem;
}
.webf-button .webf-button-icon.webf-icon-right, .webf-button .webf-button-icon.webf-icon-right {
  margin-left: 0.3rem;
}
.webf-button .webf-button-caret, .webf-button .webf-button-caret {
  border: 0.315rem solid transparent;
  display: inline-block;
  height: 0;
  margin-left: 0.3rem;
  position: relative;
  vertical-align: baseline;
  width: 0;
}
.webf-button .webf-button-caret.webf-button-caret-down, .webf-button .webf-button-caret.webf-button-caret-down {
  top: 0.1575rem;
}
.webf-button .webf-button-caret.webf-button-caret-left, .webf-button .webf-button-caret.webf-button-caret-left {
  right: 0.1575rem;
}
.webf-button .webf-button-caret.webf-button-caret-right, .webf-button .webf-button-caret.webf-button-caret-right {
  left: 0.1575rem;
}
.webf-button .webf-button-caret.webf-button-caret-up, .webf-button .webf-button-caret.webf-button-caret-up {
  bottom: 0.1575rem;
}
.webf-button.webf-button-icon-only, .webf-button.icon-only, .webf-button.webf-button-icon-only, .webf-button.icon-only {
  height: 2.7rem;
  text-align: center;
  width: 2.7rem;
  padding: 0;
}
.webf-button.webf-button-icon-only .webf-button-icon, .webf-button.icon-only .webf-button-icon, .webf-button.webf-button-icon-only .webf-button-icon, .webf-button.icon-only .webf-button-icon {
  font-size: 1.17rem;
  line-height: 2.7rem;
  vertical-align: top;
}

.webf-button-xsmall, .webf-button.xsmall {
  -webkit-border-radius: 0.15rem;
  -moz-border-radius: 0.15rem;
  -ms-border-radius: 0.15rem;
  -o-border-radius: 0.15rem;
  border-radius: 0.15rem;
  font-size: 0.6rem;
  padding: 0.18rem 0.6rem;
}
.webf-button-xsmall .webf-button-icon, .webf-button.xsmall .webf-button-icon {
  font-size: 1em;
  vertical-align: middle;
}
.webf-button-xsmall .webf-button-icon.webf-icon-left, .webf-button.xsmall .webf-button-icon.webf-icon-left {
  margin-right: 0.2rem;
}
.webf-button-xsmall .webf-button-icon.webf-icon-right, .webf-button.xsmall .webf-button-icon.webf-icon-right {
  margin-left: 0.2rem;
}
.webf-button-xsmall .webf-button-caret, .webf-button.xsmall .webf-button-caret {
  border: 0.21rem solid transparent;
  display: inline-block;
  height: 0;
  margin-left: 0.2rem;
  position: relative;
  vertical-align: baseline;
  width: 0;
}
.webf-button-xsmall .webf-button-caret.webf-button-caret-down, .webf-button.xsmall .webf-button-caret.webf-button-caret-down {
  top: 0.105rem;
}
.webf-button-xsmall .webf-button-caret.webf-button-caret-left, .webf-button.xsmall .webf-button-caret.webf-button-caret-left {
  right: 0.105rem;
}
.webf-button-xsmall .webf-button-caret.webf-button-caret-right, .webf-button.xsmall .webf-button-caret.webf-button-caret-right {
  left: 0.105rem;
}
.webf-button-xsmall .webf-button-caret.webf-button-caret-up, .webf-button.xsmall .webf-button-caret.webf-button-caret-up {
  bottom: 0.105rem;
}
.webf-button-xsmall.webf-button-icon-only, .webf-button-xsmall.icon-only, .webf-button.xsmall.webf-button-icon-only, .webf-button.xsmall.icon-only {
  height: 1.8rem;
  text-align: center;
  width: 1.8rem;
  padding: 0;
}
.webf-button-xsmall.webf-button-icon-only .webf-button-icon, .webf-button-xsmall.icon-only .webf-button-icon, .webf-button.xsmall.webf-button-icon-only .webf-button-icon, .webf-button.xsmall.icon-only .webf-button-icon {
  font-size: 0.78rem;
  line-height: 1.8rem;
  vertical-align: top;
}

.webf-button-small, .webf-button.small {
  -webkit-border-radius: 0.1875rem;
  -moz-border-radius: 0.1875rem;
  -ms-border-radius: 0.1875rem;
  -o-border-radius: 0.1875rem;
  border-radius: 0.1875rem;
  font-size: 0.75rem;
  padding: 0.225rem 0.75rem;
}
.webf-button-small .webf-button-icon, .webf-button.small .webf-button-icon {
  font-size: 1em;
  vertical-align: middle;
}
.webf-button-small .webf-button-icon.webf-icon-left, .webf-button.small .webf-button-icon.webf-icon-left {
  margin-right: 0.25rem;
}
.webf-button-small .webf-button-icon.webf-icon-right, .webf-button.small .webf-button-icon.webf-icon-right {
  margin-left: 0.25rem;
}
.webf-button-small .webf-button-caret, .webf-button.small .webf-button-caret {
  border: 0.2625rem solid transparent;
  display: inline-block;
  height: 0;
  margin-left: 0.25rem;
  position: relative;
  vertical-align: baseline;
  width: 0;
}
.webf-button-small .webf-button-caret.webf-button-caret-down, .webf-button.small .webf-button-caret.webf-button-caret-down {
  top: 0.13125rem;
}
.webf-button-small .webf-button-caret.webf-button-caret-left, .webf-button.small .webf-button-caret.webf-button-caret-left {
  right: 0.13125rem;
}
.webf-button-small .webf-button-caret.webf-button-caret-right, .webf-button.small .webf-button-caret.webf-button-caret-right {
  left: 0.13125rem;
}
.webf-button-small .webf-button-caret.webf-button-caret-up, .webf-button.small .webf-button-caret.webf-button-caret-up {
  bottom: 0.13125rem;
}
.webf-button-small.webf-button-icon-only, .webf-button-small.icon-only, .webf-button.small.webf-button-icon-only, .webf-button.small.icon-only {
  height: 2.25rem;
  text-align: center;
  width: 2.25rem;
  padding: 0;
}
.webf-button-small.webf-button-icon-only .webf-button-icon, .webf-button-small.icon-only .webf-button-icon, .webf-button.small.webf-button-icon-only .webf-button-icon, .webf-button.small.icon-only .webf-button-icon {
  font-size: 0.975rem;
  line-height: 2.25rem;
  vertical-align: top;
}

.webf-button-large, .webf-button.large {
  -webkit-border-radius: 0.2625rem;
  -moz-border-radius: 0.2625rem;
  -ms-border-radius: 0.2625rem;
  -o-border-radius: 0.2625rem;
  border-radius: 0.2625rem;
  font-size: 1.05rem;
  padding: 0.315rem 1.05rem;
}
.webf-button-large .webf-button-icon, .webf-button.large .webf-button-icon {
  font-size: 1em;
  vertical-align: middle;
}
.webf-button-large .webf-button-icon.webf-icon-left, .webf-button.large .webf-button-icon.webf-icon-left {
  margin-right: 0.35rem;
}
.webf-button-large .webf-button-icon.webf-icon-right, .webf-button.large .webf-button-icon.webf-icon-right {
  margin-left: 0.35rem;
}
.webf-button-large .webf-button-caret, .webf-button.large .webf-button-caret {
  border: 0.3675rem solid transparent;
  display: inline-block;
  height: 0;
  margin-left: 0.35rem;
  position: relative;
  vertical-align: baseline;
  width: 0;
}
.webf-button-large .webf-button-caret.webf-button-caret-down, .webf-button.large .webf-button-caret.webf-button-caret-down {
  top: 0.18375rem;
}
.webf-button-large .webf-button-caret.webf-button-caret-left, .webf-button.large .webf-button-caret.webf-button-caret-left {
  right: 0.18375rem;
}
.webf-button-large .webf-button-caret.webf-button-caret-right, .webf-button.large .webf-button-caret.webf-button-caret-right {
  left: 0.18375rem;
}
.webf-button-large .webf-button-caret.webf-button-caret-up, .webf-button.large .webf-button-caret.webf-button-caret-up {
  bottom: 0.18375rem;
}
.webf-button-large.webf-button-icon-only, .webf-button-large.icon-only, .webf-button.large.webf-button-icon-only, .webf-button.large.icon-only {
  height: 3.15rem;
  text-align: center;
  width: 3.15rem;
  padding: 0;
}
.webf-button-large.webf-button-icon-only .webf-button-icon, .webf-button-large.icon-only .webf-button-icon, .webf-button.large.webf-button-icon-only .webf-button-icon, .webf-button.large.icon-only .webf-button-icon {
  font-size: 1.365rem;
  line-height: 3.15rem;
  vertical-align: top;
}

.webf-button-xlarge, .webf-button.xlarge {
  -webkit-border-radius: 0.3rem;
  -moz-border-radius: 0.3rem;
  -ms-border-radius: 0.3rem;
  -o-border-radius: 0.3rem;
  border-radius: 0.3rem;
  font-size: 1.2rem;
  padding: 0.36rem 1.2rem;
}
.webf-button-xlarge .webf-button-icon, .webf-button.xlarge .webf-button-icon {
  font-size: 1em;
  vertical-align: middle;
}
.webf-button-xlarge .webf-button-icon.webf-icon-left, .webf-button.xlarge .webf-button-icon.webf-icon-left {
  margin-right: 0.4rem;
}
.webf-button-xlarge .webf-button-icon.webf-icon-right, .webf-button.xlarge .webf-button-icon.webf-icon-right {
  margin-left: 0.4rem;
}
.webf-button-xlarge .webf-button-caret, .webf-button.xlarge .webf-button-caret {
  border: 0.42rem solid transparent;
  display: inline-block;
  height: 0;
  margin-left: 0.4rem;
  position: relative;
  vertical-align: baseline;
  width: 0;
}
.webf-button-xlarge .webf-button-caret.webf-button-caret-down, .webf-button.xlarge .webf-button-caret.webf-button-caret-down {
  top: 0.21rem;
}
.webf-button-xlarge .webf-button-caret.webf-button-caret-left, .webf-button.xlarge .webf-button-caret.webf-button-caret-left {
  right: 0.21rem;
}
.webf-button-xlarge .webf-button-caret.webf-button-caret-right, .webf-button.xlarge .webf-button-caret.webf-button-caret-right {
  left: 0.21rem;
}
.webf-button-xlarge .webf-button-caret.webf-button-caret-up, .webf-button.xlarge .webf-button-caret.webf-button-caret-up {
  bottom: 0.21rem;
}
.webf-button-xlarge.webf-button-icon-only, .webf-button-xlarge.icon-only, .webf-button.xlarge.webf-button-icon-only, .webf-button.xlarge.icon-only {
  height: 3.6rem;
  text-align: center;
  width: 3.6rem;
  padding: 0;
}
.webf-button-xlarge.webf-button-icon-only .webf-button-icon, .webf-button-xlarge.icon-only .webf-button-icon, .webf-button.xlarge.webf-button-icon-only .webf-button-icon, .webf-button.xlarge.icon-only .webf-button-icon {
  font-size: 1.56rem;
  line-height: 3.6rem;
  vertical-align: top;
}

.webf-buttons-group {
  display: inline-block;
  vertical-align: middle;
}
.webf-buttons-group .webf-buttons-group, .webf-buttons-group .webf-button {
  float: left;
}
.webf-buttons-group .webf-buttons-group:not(:first-child), .webf-buttons-group .webf-buttons-group:not(:first-child) .webf-button, .webf-buttons-group .webf-button:not(:first-child), .webf-buttons-group .webf-button:not(:first-child) .webf-button {
  margin-left: -1px;
  -moz-border-radius-topleft: 0;
  -webkit-border-top-left-radius: 0;
  border-top-left-radius: 0;
  -moz-border-radius-bottomleft: 0;
  -webkit-border-bottom-left-radius: 0;
  border-bottom-left-radius: 0;
}
.webf-buttons-group .webf-buttons-group:not(:last-child), .webf-buttons-group .webf-buttons-group:not(:last-child) .webf-button, .webf-buttons-group .webf-button:not(:last-child), .webf-buttons-group .webf-button:not(:last-child) .webf-button {
  -moz-border-radius-topright: 0;
  -webkit-border-top-right-radius: 0;
  border-top-right-radius: 0;
  -moz-border-radius-bottomright: 0;
  -webkit-border-bottom-right-radius: 0;
  border-bottom-right-radius: 0;
}
.webf-buttons-group .webf-buttons-group:not(:first-child):not(:last-child), .webf-buttons-group .webf-buttons-group:not(:first-child):not(:last-child) .webf-button, .webf-buttons-group .webf-button:not(:first-child):not(:last-child), .webf-buttons-group .webf-button:not(:first-child):not(:last-child) .webf-button {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  -o-border-radius: 0;
  border-radius: 0;
}

.webf-button-toggle.webf-button-active .d-inactive {
  display: none;
}
.webf-button-toggle.webf-button-active .d-active {
  display: inline-block;
}
.webf-button-toggle input[type=checkbox], .webf-button-toggle input[type=radio] {
  clip: rect(0, 0, 0, 0);
  opacity: 0;
  position: absolute;
  pointer-events: none;
}
.webf-button-toggle .d-inactive {
  display: inline-block;
}
.webf-button-toggle .d-active {
  display: none;
}

.webf-wrapper-carousel {
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
}
.webf-wrapper-carousel .webf-viewport-carousel {
  position: relative;
  background: #fff;
  width: 100%;
}
.webf-wrapper-carousel .webf-viewport-carousel .webf-carousel li.webf-slide {
  list-style-type: none;
  position: relative;
  margin: 0;
}
.webf-wrapper-carousel .webf-viewport-carousel .webf-carousel li.webf-slide img {
  display: block;
  max-width: 100%;
}
.webf-wrapper-carousel a.webf-carousel-nav {
  cursor: pointer;
  outline: none;
  display: block;
  height: 32px;
  margin-top: -16px;
  position: absolute;
  top: 50%;
  width: 32px;
  z-index: 9999;
  background-color: transparent;
  background-repeat: no-repeat;
  background-image: url(/build/images/controls.fdcd37c5.png);
  display: block;
  text-decoration: none;
}
.webf-wrapper-carousel a.webf-carousel-nav.webf-prev {
  left: 10px;
  background-position: 0 -32px;
}
.webf-wrapper-carousel a.webf-carousel-nav.webf-prev:hover {
  background-position: 0 0;
}
.webf-wrapper-carousel a.webf-carousel-nav.webf-next {
  right: 10px;
  background-position: -43px -32px;
}
.webf-wrapper-carousel a.webf-carousel-nav.webf-next:hover {
  background-position: -43px 0;
}

.webf-checkboxwrapper.classic {
  box-sizing: border-box;
  border: 1px solid gray;
  color: #999;
  display: inline-block;
  vertical-align: text-bottom;
  width: 1rem;
  height: 1rem;
  cursor: pointer;
  background-color: #fff;
}
.webf-checkboxwrapper.classic.mousedown {
  background-color: #f1f1f1;
  -webkit-box-shadow: inset 0px 0px 3px 0 #ccc;
  -moz-box-shadow: inset 0px 0px 3px 0 #ccc;
  box-shadow: inset 0px 0px 3px 0 #ccc;
}
.webf-checkboxwrapper.classic a.checkbox {
  background-position: center center;
  background-repeat: no-repeat;
  display: block;
  width: 100%;
  height: 100%;
  min-height: 1px;
  margin: 0;
}
.webf-checkboxwrapper.classic.checked a.checkbox {
  background-image: url(/build/images/checkmark.d6cf82b1.png);
}
.webf-checkboxwrapper.classic.disabled {
  border-color: #ddd;
}
.webf-checkboxwrapper.classic.disabled.checked a.checkbox {
  background-image: url(/build/images/checkmark-disable.ddee4bc5.png);
}

.webf-checkboxwrapper.switch {
  box-sizing: border-box;
  display: inline-block;
  vertical-align: text-bottom;
  width: 2rem;
  height: 1rem;
  cursor: pointer;
  background-color: transparent;
}
.webf-checkboxwrapper.switch a.checkbox {
  position: relative;
  border-radius: 1rem;
  display: block;
  width: 100%;
  height: 100%;
  background-color: white;
  border: 1px solid darkgray;
  transition: background-color 200ms, border-color 200ms;
}
.webf-checkboxwrapper.switch a.checkbox:before {
  content: "";
  position: absolute;
  top: calc(0.25rem / 2 - 1px);
  left: 0.125rem;
  right: auto;
  width: 0.75rem;
  height: 0.75rem;
  background-color: darkgray;
  border-radius: 50%;
  transition: left 200ms, background-color 200ms;
}
.webf-checkboxwrapper.switch.checked a.checkbox {
  border-color: #4b70df;
  background-color: #4b70df;
}
.webf-checkboxwrapper.switch.checked a.checkbox:before {
  content: "";
  position: absolute;
  left: calc(2rem - 0.75rem - 0.25rem / 2 - 2px);
  width: 0.75rem;
  height: 0.75rem;
  background-color: white;
  border-radius: 50%;
}
.webf-checkboxwrapper.switch.disabled {
  border-color: #ddd;
}
.webf-checkboxwrapper.checkmark a.checkbox {
  display: inline-flex;
  width: 1rem;
  height: 1rem;
  font-size: 1rem;
  align-items: center;
  justify-content: center;
  color: transparent;
}
.webf-checkboxwrapper.checkmark.checked a.checkbox {
  color: #4b70df;
}
.webf-checkboxwrapper.checkmark.disabled.checked a.checkbox {
  color: #eee;
}

.webf-checkboxwrapper {
  box-sizing: border-box;
  display: inline-block;
  vertical-align: text-bottom;
  cursor: pointer;
  line-height: 1rem;
  height: 1rem;
  flex-shrink: 0;
}
.webf-checkboxwrapper .checkbox {
  min-height: auto;
  margin: 0;
  padding: 0;
}

.webf-cookie-consent {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  text-align: center;
  background-color: #555555;
  color: white;
  font-size: 14px;
  line-height: 18px;
  font-family: Arial, sans-serif;
  padding: 5px 0;
  z-index: 100000000;
}
.webf-cookie-consent .message {
  margin: 5px 40px 10px;
}
.webf-cookie-consent .close-button {
  position: absolute;
  top: 8px;
  right: 8px;
  font-size: 0.6em;
}
.webf-cookie-consent .buttons .cookie-accept, .webf-cookie-consent .buttons .cookie-decline {
  margin: 0 5px;
}

.webf-dialog.webf-confirm {
  position: fixed;
  left: 0 !important;
  top: 0 !important;
  width: 100%;
  height: 60vh;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (max-width: 992px) {
  .webf-dialog.webf-confirm {
    height: 100vh;
  }
}
.webf-dialog.webf-confirm .webf-box-confirm {
  width: 500px;
  max-width: 90%;
}
.webf-dialog.webf-confirm .webf-box-confirm .box-body {
  text-align: center;
  font-size: 1.15rem;
  padding: 1.5rem 1rem;
  line-height: normal;
}
.webf-dialog.webf-confirm.confirm-opening .webf-box-confirm {
  animation-duration: 300ms;
}
@media (max-width: 992px) {
  .webf-dialog.webf-confirm.confirm-opening .webf-box-confirm {
    animation-name: scalein;
  }
}
@media (min-width: 993px) {
  .webf-dialog.webf-confirm.confirm-opening .webf-box-confirm {
    animation-name: slidein;
  }
}
.webf-dialog.webf-confirm.confirm-closing .webf-box-confirm {
  animation-duration: 150ms;
}
@media (max-width: 992px) {
  .webf-dialog.webf-confirm.confirm-closing .webf-box-confirm {
    animation-name: scaleout;
  }
}
@media (min-width: 993px) {
  .webf-dialog.webf-confirm.confirm-closing .webf-box-confirm {
    animation-name: slideout;
  }
}

@keyframes scalein {
  from {
    transform: scale(0);
  }
  to {
    transform: scale(1);
  }
}
@keyframes slidein {
  from {
    opacity: 0;
    margin-bottom: 30%;
  }
  to {
    opacity: 1;
    margin-bottom: 0;
  }
}
@keyframes scaleout {
  from {
    transform: scale(1);
  }
  to {
    transform: scale(0);
  }
}
@keyframes slideout {
  from {
    opacity: 1;
    margin-bottom: 0;
  }
  to {
    opacity: 0;
    margin-bottom: 30%;
  }
}
.webf-datagrid {
  width: 100%;
  border: 1px solid #bbbbbb;
  position: relative;
  font-size: 13px;
  font-family: Arial, sans-serif;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.webf-datagrid * {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.webf-datagrid .header {
  overflow: hidden;
  background-image: -owg-linear-gradient(white, #dbe2ee);
  background-image: -webkit-linear-gradient(white, #dbe2ee);
  background-image: -moz-linear-gradient(white, #dbe2ee);
  background-image: -o-linear-gradient(white, #dbe2ee);
  background-image: linear-gradient(white, #dbe2ee);
  color: #444;
  text-align: center;
  padding: 7px;
  min-height: 28px;
  white-space: nowrap;
}
.webf-datagrid .header.hidden {
  display: none;
}
.webf-datagrid > .toolbar {
  font-size: 0;
  background-color: #ededed;
  border-bottom: 1px solid #bbbbbb;
  color: #444;
  padding: 7px;
}
.webf-datagrid > .toolbar.hidden {
  display: none;
}
.webf-datagrid > .toolbar > .component {
  font-size: 13px;
  display: inline-block;
  vertical-align: top;
  margin-right: 8px;
}
.webf-datagrid > .toolbar > .component .webf-button {
  font-size: 13px;
  vertical-align: top;
  height: 27px;
}
.webf-datagrid > .toolbar > .component.search {
  font-size: 0;
}
.webf-datagrid > .toolbar > .component.search input[type=text] {
  font-size: 13px;
  border: 1px solid #bbbbbb;
  padding: 3px 5px;
  height: 27px;
  width: 180px;
}
.webf-datagrid > .toolbar > .component select.selectColumns {
  display: none;
  width: 200px;
}
.webf-datagrid .columns .column, .webf-datagrid .columns .last-column {
  position: relative;
}
.webf-datagrid .columns .column .resizer, .webf-datagrid .columns .last-column .resizer {
  position: absolute;
  top: 0;
  left: 0;
  background: none;
  width: 7px;
  cursor: col-resize;
  height: 100%;
  margin-left: -4px;
}
.webf-datagrid .columns .last-column {
  border-right: 0;
}
.webf-datagrid .columns, .webf-datagrid .footer {
  overflow: hidden;
}
.webf-datagrid .columns > table, .webf-datagrid .footer > table {
  background-image: -owg-linear-gradient(#fdfdfd, #e6e6e6);
  background-image: -webkit-linear-gradient(#fdfdfd, #e6e6e6);
  background-image: -moz-linear-gradient(#fdfdfd, #e6e6e6);
  background-image: -o-linear-gradient(#fdfdfd, #e6e6e6);
  background-image: linear-gradient(#fdfdfd, #e6e6e6);
  border-bottom: 1px solid #bbbbbb;
  table-layout: fixed;
  width: 100%;
  height: 100%;
  vertical-align: top;
  border-collapse: collapse;
  border-spacing: 0;
}
.webf-datagrid .columns > table tr:last-child, .webf-datagrid .footer > table tr:last-child {
  border-right: 0;
}
.webf-datagrid .columns > table tr td, .webf-datagrid .footer > table tr td {
  border-right: 1px solid #bbbbbb;
}
.webf-datagrid .columns > table tr td > .col-wrapper > .column-name, .webf-datagrid .footer > table tr td > .col-wrapper > .column-name {
  display: block;
  padding: 5px;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
.webf-datagrid .columns > table tr td > .col-wrapper > .sort, .webf-datagrid .footer > table tr td > .col-wrapper > .sort {
  float: right;
  line-height: 28px;
  margin: 0 5px;
}
.webf-datagrid .columns.column-hidden, .webf-datagrid .footer.column-hidden {
  display: none;
}
.webf-datagrid .columns .last-column, .webf-datagrid .footer .last-column {
  border-right: 0;
}
.webf-datagrid .footer > table {
  background: none;
  border-top: 1px solid #bbbbbb;
  border-bottom: 0;
}
.webf-datagrid .footer > table tr td {
  background: #eef5eb;
}
.webf-datagrid .hscroll-grid {
  width: 100%;
  height: 0px;
  overflow-x: scroll;
  overflow-y: hidden;
}
.webf-datagrid .hscroll-grid > div {
  height: 0.1px;
}
.webf-datagrid .grid {
  background: #fff;
  overflow: auto;
  height: 336px;
}
.webf-datagrid .grid.has-empty-records {
  overflow-y: hidden;
}
.webf-datagrid .grid > table {
  border-collapse: collapse;
  table-layout: fixed;
  width: 100%;
}
.webf-datagrid .grid > table tr.grid-size td {
  height: 0;
  border: 0;
}
.webf-datagrid .grid > table tr.record:nth-child(odd) {
  background-color: #e9eef9;
}
.webf-datagrid .grid > table tr.record.selected {
  background-color: #b9c7ec;
}
.webf-datagrid .grid > table tr.record td {
  border-right: 1px solid transparent;
}
.webf-datagrid .grid > table tr.record td.editable {
  line-height: normal;
  font-size: 0;
}
.webf-datagrid .grid > table tr.record td.editable input, .webf-datagrid .grid > table tr.record td.editable textarea, .webf-datagrid .grid > table tr.record td.editable select {
  outline: none;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  min-height: auto;
}
.webf-datagrid .grid > table tr.record td.editable.editing input, .webf-datagrid .grid > table tr.record td.editable.editing textarea, .webf-datagrid .grid > table tr.record td.editable.editing select {
  border-color: #4b70df !important;
  border-radius: 3px;
  box-shadow: 0 0 0 1px rgb(255, 255, 255);
}
.webf-datagrid .grid > table tr.record td.editable > textarea {
  color: inherit;
  font-family: inherit;
  border: 2px solid transparent;
  padding: 3px 5px 2px;
  resize: none;
  width: 100%;
  height: 30px;
  line-height: 21px;
  font-size: 13px;
  background-color: transparent;
}
.webf-datagrid .grid > table tr.record td.editable > textarea:focus, .webf-datagrid .grid > table tr.record td.editable > textarea:active {
  background-color: white;
}
.webf-datagrid .grid > table tr.record td.editable label.select {
  display: inline-flex;
  margin: 0;
  padding: 0;
  height: 30px;
  border: 0;
  width: 100%;
  position: relative;
  color: inherit;
  align-items: center;
}
.webf-datagrid .grid > table tr.record td.editable label.select select {
  display: block;
  font-size: 13px;
  width: 100%;
  height: 100%;
  padding: 0 24px 0 10px;
  background-color: transparent;
  border: 2px solid transparent;
  color: inherit;
  overflow: hidden;
  position: relative;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.webf-datagrid .grid > table tr.record td.editable label.select select:focus, .webf-datagrid .grid > table tr.record td.editable label.select select:active {
  background-color: white;
}
.webf-datagrid .grid > table tr.record td.editable.editing label.select:after {
  content: "\f107";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 1rem;
  color: inherit;
  padding: 8px 16px;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1;
  text-align: center;
  width: 10%;
  height: 100%;
  pointer-events: none;
  box-sizing: border-box;
}
.webf-datagrid .grid > table tr.record td.editable.cell-checkbox .webf-datagrid-checkbox-container {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  min-height: 30px;
  height: 100%;
  width: 100%;
  text-align: center;
  margin-bottom: 0;
  cursor: pointer;
  font-size: 22px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.webf-datagrid .grid > table tr.record td.editable.cell-checkbox .webf-datagrid-checkbox-container input {
  position: absolute;
  opacity: 0;
}
.webf-datagrid .grid > table tr.record td.editable.cell-checkbox .webf-datagrid-checkbox-container .checkmark {
  position: relative;
  top: 0;
  left: 0;
  height: 22px;
  width: 22px;
  transition-duration: 0.2s;
}
.webf-datagrid .grid > table tr.record td.editable.cell-checkbox .webf-datagrid-checkbox-container input ~ .checkmark {
  background-color: #fff;
  border: 1px solid #bbbbbb;
  border-radius: 15%;
}
.webf-datagrid .grid > table tr.record td.editable.cell-checkbox .webf-datagrid-checkbox-container input:focus ~ .checkmark,
.webf-datagrid .grid > table tr.record td.editable.cell-checkbox .webf-datagrid-checkbox-container input:hover ~ .checkmark {
  border-color: #4b70df;
}
.webf-datagrid .grid > table tr.record td.editable.cell-checkbox .webf-datagrid-checkbox-container input:checked ~ .checkmark {
  background-color: #4b70df;
  border: 0;
}
.webf-datagrid .grid > table tr.record td.editable.cell-checkbox .webf-datagrid-checkbox-container input:checked:focus ~ .checkmark,
.webf-datagrid .grid > table tr.record td.editable.cell-checkbox .webf-datagrid-checkbox-container input:checked:hover ~ .checkmark {
  background-color: #2550d2;
}
.webf-datagrid .grid > table tr.record td.editable.cell-checkbox .webf-datagrid-checkbox-container .checkmark:after {
  content: "";
  position: absolute;
  display: none;
}
.webf-datagrid .grid > table tr.record td.editable.cell-checkbox .webf-datagrid-checkbox-container input:checked ~ .checkmark:after {
  display: block;
}
.webf-datagrid .grid > table tr.record td.editable.cell-checkbox .webf-datagrid-checkbox-container .checkmark:after {
  left: 7px;
  top: 4px;
  width: 5px;
  height: 8px;
  border: solid white;
  border-width: 0 3px 3px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
.webf-datagrid .grid > table tr.record td.editable > .webf-datagrid-date, .webf-datagrid .grid > table tr.record td.editable > .webf-datagrid-datetime, .webf-datagrid .grid > table tr.record td.editable > .webf-datagrid-datepicker, .webf-datagrid .grid > table tr.record td.editable > .webf-datagrid-datetimepicker {
  display: flex;
  align-items: center;
  height: 30px;
}
.webf-datagrid .grid > table tr.record td.editable > .webf-datagrid-date input[type=text],
.webf-datagrid .grid > table tr.record td.editable > .webf-datagrid-date input[type=date],
.webf-datagrid .grid > table tr.record td.editable > .webf-datagrid-date input[type=datetime-local], .webf-datagrid .grid > table tr.record td.editable > .webf-datagrid-datetime input[type=text],
.webf-datagrid .grid > table tr.record td.editable > .webf-datagrid-datetime input[type=date],
.webf-datagrid .grid > table tr.record td.editable > .webf-datagrid-datetime input[type=datetime-local], .webf-datagrid .grid > table tr.record td.editable > .webf-datagrid-datepicker input[type=text],
.webf-datagrid .grid > table tr.record td.editable > .webf-datagrid-datepicker input[type=date],
.webf-datagrid .grid > table tr.record td.editable > .webf-datagrid-datepicker input[type=datetime-local], .webf-datagrid .grid > table tr.record td.editable > .webf-datagrid-datetimepicker input[type=text],
.webf-datagrid .grid > table tr.record td.editable > .webf-datagrid-datetimepicker input[type=date],
.webf-datagrid .grid > table tr.record td.editable > .webf-datagrid-datetimepicker input[type=datetime-local] {
  width: 100%;
  font-size: 0.8rem;
  padding: 3px 5px;
  color: #555;
  border: 1px solid #bbbbbb;
  font-family: Arial, sans-serif;
}
.webf-datagrid .grid > table tr.record td > .webf-datagrid-readonly {
  padding: 3px 5px 2px;
  border: 2px solid transparent;
  line-height: 21px;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
.webf-datagrid .grid > table tr.record td.last-column {
  border-right: 0;
}
.webf-datagrid .grid > table tr.record td.last-column > div {
  width: 7px;
  margin-left: -7px;
  padding: 0;
}
.webf-datagrid .grid > table tr.record.row-hidden {
  display: none;
}
.webf-datagrid .grid:focus {
  outline: none;
}

.webf-dialog.webf-dialog-datetimepicker {
  position: fixed;
  top: 0 !important;
  left: 0 !important;
  width: 100%;
  height: 100vh;
  display: flex;
  align-items: flex-start;
  margin-top: 5%;
  justify-content: center;
}
.webf-dialog.webf-dialog-datetimepicker .webf-datetimepicker {
  width: 480px;
  max-width: 90%;
  -webkit-box-shadow: 1px 2px 8px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 1px 2px 8px rgba(0, 0, 0, 0.2);
  box-shadow: 1px 2px 8px rgba(0, 0, 0, 0.2);
}
.webf-dialog.webf-dialog-datetimepicker .webf-datetimepicker .toolbar {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}
.webf-dialog.webf-dialog-datetimepicker .webf-datetimepicker .toolbar .webf-button {
  font-size: 1rem;
  height: 2rem;
  line-height: 2rem;
  padding: 0 1rem;
}
.webf-dialog.webf-dialog-datetimepicker .webf-datetimepicker .toolbar .title .webf-dropdown > .webf-select {
  height: 2rem;
  line-height: 2rem;
  padding: 0 0.5rem;
}
.webf-dialog.webf-dialog-datetimepicker .webf-datetimepicker .toolbar .title .webf-dropdown > .webf-select > .select {
  font-size: 0.8rem;
}
.webf-dialog.webf-dialog-datetimepicker .webf-datetimepicker .toolbar .title .webf-dropdown > .webf-select > .select > .handle-down {
  padding-top: 0;
  padding-bottom: 0;
  line-height: 2rem;
}
.webf-dialog.webf-dialog-datetimepicker .webf-datetimepicker .toolbar .title .webf-dropdown:first-child {
  width: 130px;
}
.webf-dialog.webf-dialog-datetimepicker .webf-datetimepicker .toolbar .title .webf-dropdown:last-child {
  width: 85px;
}
.webf-dialog.webf-dialog-datetimepicker .webf-datetimepicker .webf-datetimepicker-calendar .webf-tb-week-days, .webf-dialog.webf-dialog-datetimepicker .webf-datetimepicker .webf-datetimepicker-calendar .webf-tb-datepicker {
  width: 100%;
}
.webf-dialog.webf-dialog-datetimepicker .webf-datetimepicker .webf-datetimepicker-calendar .webf-tb-week-days th, .webf-dialog.webf-dialog-datetimepicker .webf-datetimepicker .webf-datetimepicker-calendar .webf-tb-datepicker th {
  height: 39px;
  line-height: 39px;
}
.webf-dialog.webf-dialog-datetimepicker .webf-datetimepicker .webf-datetimepicker-calendar .webf-tb-week-days td, .webf-dialog.webf-dialog-datetimepicker .webf-datetimepicker .webf-datetimepicker-calendar .webf-tb-datepicker td {
  background: none;
}
.webf-dialog.webf-dialog-datetimepicker .webf-datetimepicker .webf-datetimepicker-calendar .webf-tb-week-days td > a, .webf-dialog.webf-dialog-datetimepicker .webf-datetimepicker .webf-datetimepicker-calendar .webf-tb-datepicker td > a {
  display: block;
  margin: auto;
  font-size: 0.9rem;
  text-decoration: none;
  text-align: center;
  padding: 0;
  width: 39px;
  height: 39px;
  line-height: 39px;
  cursor: pointer;
}

.webf-dropdown-datetimepicker.webf-datetimepicker {
  min-width: 250px;
  position: absolute;
  -webkit-box-shadow: 1px 2px 8px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 1px 2px 8px rgba(0, 0, 0, 0.2);
  box-shadow: 1px 2px 8px rgba(0, 0, 0, 0.2);
}

.webf-datetimepicker {
  border: 1px solid #ccc;
  background: #fff;
  width: 250px;
  color: #333;
  font-family: Arial, helvetica, sans-serif;
}
.webf-datetimepicker .toolbar {
  display: flex;
  position: relative;
  height: auto;
  padding: 4px 3px;
  align-items: flex-start;
}
.webf-datetimepicker .toolbar .title {
  text-align: center;
  font-weight: bold;
  width: 100%;
  display: flex;
  justify-content: center;
}
.webf-datetimepicker .toolbar .title > span {
  height: 27px;
  line-height: 27px;
}
.webf-datetimepicker .toolbar .title .webf-dropdown {
  display: inline-block;
  text-align: left;
  margin: 0;
}
.webf-datetimepicker .toolbar .title .webf-dropdown > .webf-select {
  padding: 4px 8px;
  background-image: none;
  border-color: #d5d5d5;
}
.webf-datetimepicker .toolbar .title .webf-dropdown > .webf-select.open {
  box-shadow: none;
}
.webf-datetimepicker .toolbar .title .webf-dropdown:first-child {
  width: 110px;
}
.webf-datetimepicker .toolbar .title .webf-dropdown:first-child > .webf-select {
  border-right: 0;
}
.webf-datetimepicker .toolbar .title .webf-dropdown:last-child {
  width: 65px;
}
.webf-datetimepicker .toolbar .title .webf-dropdown:last-child > .webf-select {
  border-left: 0;
}
.webf-datetimepicker .toolbar .title .webf-select-drop .webf-list-item > a,
.webf-datetimepicker .toolbar .title .webf-select-drop .webf-list-item > label {
  font-size: 0.8rem;
}
.webf-datetimepicker .toolbar .webf-button {
  height: 27px;
}
.webf-datetimepicker .week-days {
  margin: 0 5px;
}
.webf-datetimepicker .webf-tb-week-days, .webf-datetimepicker .webf-tb-datepicker {
  width: 240px;
  border-collapse: collapse;
  table-layout: fixed;
}
.webf-datetimepicker .webf-tb-week-days th, .webf-datetimepicker .webf-tb-week-days td, .webf-datetimepicker .webf-tb-datepicker th, .webf-datetimepicker .webf-tb-datepicker td {
  width: 25px;
  height: 25px;
  line-height: 25px;
}
.webf-datetimepicker .webf-tb-week-days td, .webf-datetimepicker .webf-tb-datepicker td {
  height: auto;
}
.webf-datetimepicker .webf-tb-week-days th, .webf-datetimepicker .webf-tb-datepicker th {
  font-weight: bold;
  text-align: center;
  font-size: 0.9em;
}
.webf-datetimepicker .webf-tb-week-days td, .webf-datetimepicker .webf-tb-datepicker td {
  background: none;
  padding: 1px;
}
.webf-datetimepicker .webf-tb-week-days td a, .webf-datetimepicker .webf-tb-datepicker td a {
  display: block;
  height: 100%;
  text-decoration: none;
  color: #666;
  text-align: center;
  font-size: 12px;
  line-height: 31px;
  padding: 0;
  cursor: pointer;
  border: 1px solid transparent;
}
.webf-datetimepicker .webf-tb-week-days td.other-month a, .webf-datetimepicker .webf-tb-datepicker td.other-month a {
  color: #bbb;
}
.webf-datetimepicker .webf-tb-week-days td.today a, .webf-datetimepicker .webf-tb-datepicker td.today a {
  background-color: #e3e8fa;
  color: #4b70df;
  border-radius: 50%;
}
.webf-datetimepicker .webf-tb-week-days td.current-date a, .webf-datetimepicker .webf-tb-datepicker td.current-date a {
  background-color: #4b70df;
  color: white;
  font-weight: bold;
  border-radius: 50%;
}
.webf-datetimepicker .webf-tb-week-days td.cur-month.sunday:not(.disabled):not(.today):not(.current-date), .webf-datetimepicker .webf-tb-datepicker td.cur-month.sunday:not(.disabled):not(.today):not(.current-date) {
  color: #ff4d4d;
}
.webf-datetimepicker .webf-tb-week-days td:not(.disabled):not(.today):not(.current-date):not(.start):not(.end) a:hover, .webf-datetimepicker .webf-tb-datepicker td:not(.disabled):not(.today):not(.current-date):not(.start):not(.end) a:hover {
  border-color: #4b70df;
  background-color: #f8fafe;
  color: #4b70df;
}
.webf-datetimepicker .webf-tb-week-days td:not(.disabled):not(.today):not(.current-date).start a:hover, .webf-datetimepicker .webf-tb-week-days td:not(.disabled):not(.today):not(.current-date).end a:hover, .webf-datetimepicker .webf-tb-datepicker td:not(.disabled):not(.today):not(.current-date).start a:hover, .webf-datetimepicker .webf-tb-datepicker td:not(.disabled):not(.today):not(.current-date).end a:hover {
  border-color: #4b70df;
  background-color: #7692e7;
  color: white;
}
.webf-datetimepicker .webf-tb-week-days td.hidden-day, .webf-datetimepicker .webf-tb-datepicker td.hidden-day {
  visibility: hidden;
}
.webf-datetimepicker .webf-tb-week-days td.disabled a, .webf-datetimepicker .webf-tb-datepicker td.disabled a {
  cursor: default;
  background-color: #fff;
  color: silver;
}
.webf-datetimepicker .webf-tb-week-days td.selected a, .webf-datetimepicker .webf-tb-datepicker td.selected a {
  background-color: #cdd7f6;
  border-color: #cdd7f6;
  color: #4b70df;
}
.webf-datetimepicker .webf-tb-week-days td.start a, .webf-datetimepicker .webf-tb-week-days td.end a, .webf-datetimepicker .webf-tb-datepicker td.start a, .webf-datetimepicker .webf-tb-datepicker td.end a {
  background-color: #4b70df;
  border-color: black;
  color: white;
}
.webf-datetimepicker .webf-datetimepicker-calendar {
  width: 100%;
  overflow: hidden;
}
.webf-datetimepicker .webf-datetimepicker-calendar > ul.ul-calendars {
  width: 200%;
  overflow: hidden;
  height: 100%;
  left: 0;
  position: relative;
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.webf-datetimepicker .webf-datetimepicker-calendar > ul.ul-calendars > li {
  float: left;
  width: 50%;
}
.webf-datetimepicker .timepicker {
  padding: 0 0.5rem;
  color: #555;
}
.webf-datetimepicker .timepicker .timepicker-slider {
  padding: 5px 0 5px 10px;
}
.webf-datetimepicker .timepicker .timepicker-slider .hours, .webf-datetimepicker .timepicker .timepicker-slider .minutes, .webf-datetimepicker .timepicker .timepicker-slider .seconds {
  margin: 0 0 1rem 0;
  font-size: 0.9rem;
}
.webf-datetimepicker .timepicker .timepicker-slider label {
  display: block;
  float: left;
}
.webf-datetimepicker .timepicker .timepicker-slider .webf-slider {
  margin: 0 6px 0 75px;
  top: 5px;
}
.webf-datetimepicker .timepicker .time {
  margin: 5px 0;
}
.webf-datetimepicker .timepicker .time .text {
  font-size: 18px;
  text-align: right;
  padding-right: 5px;
  font-weight: bold;
}
.webf-datetimepicker .timepicker .timepicker-spinner label {
  display: block;
  float: left;
  height: 20px;
  line-height: 20px;
  margin-left: 7px;
}
.webf-datetimepicker .timepicker .timepicker-spinner .spinners {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 10px 5px 0;
}
.webf-datetimepicker .timepicker .timepicker-spinner .spinners .webf-input-text {
  text-align: center;
}
.webf-datetimepicker .timepicker .timepicker-spinner .spinners .webf-spinner {
  float: left;
}
.webf-datetimepicker .timepicker .timepicker-spinner .spinners .webf-spinner .webf-input-spinner {
  padding-left: 0;
  padding-right: 0;
  border: 1px solid #bbbbbb;
  border-right: 0;
  color: #555;
}
.webf-datetimepicker .timepicker .timepicker-spinner .spinners .webf-spinner .webf-spin-btn {
  color: #555;
}
.webf-datetimepicker .timepicker .timepicker-spinner .spinners .webf-spinner .webf-spin-btn.up {
  border-bottom: 0;
}
.webf-datetimepicker .timepicker .timepicker-spinner .spinners .webf-spinner .webf-spin-btn.down {
  border-top: 0;
}
.webf-datetimepicker .timepicker .timepicker-spinner .spinners .time-separator {
  display: inline-block;
  float: left;
  height: 20px;
  margin: 0 5px;
}
.webf-datetimepicker .timepicker .timepicker-select {
  overflow: hidden;
  *zoom: 1;
}
.webf-datetimepicker .timepicker .timepicker-select label {
  display: block;
  float: left;
  height: 20px;
  line-height: 20px;
  margin: 3px 0 0 7px;
}
.webf-datetimepicker .timepicker .timepicker-select .selects {
  float: right;
  margin: 5px 5px 5px 0;
}
.webf-datetimepicker .timepicker .timepicker-select select {
  float: left;
  width: 44px;
}
.webf-datetimepicker .timepicker .timepicker-select .time-separator {
  display: inline-block;
  float: left;
  height: 20px;
  margin: 0 5px;
}
.webf-datetimepicker .buttons {
  float: right;
  padding: 7px 5px;
}
.webf-datetimepicker .buttons .webf-button {
  float: left;
  margin-left: 0.6rem;
}

.webf-overlay-dialog {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.webf-dialog {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 500px;
  outline: 0;
}
.webf-dialog.dialog-responsive {
  width: 728px;
  top: auto;
  left: auto;
  right: auto;
}
@media screen and (max-width: 768px) {
  .webf-dialog.dialog-responsive {
    left: 20px !important;
    right: 20px !important;
    width: auto !important;
  }
}
.webf-dialog > .webf-box {
  margin: 0;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  border: 0;
}
.webf-dialog > .webf-box .webf-dialog-submit {
  visibility: hidden;
  position: absolute;
  top: -9999px;
  left: -9999px;
}
.webf-dialog > .webf-box .box-header {
  display: flex;
  justify-content: space-between;
}
.webf-dialog > .webf-box .box-header.draggable {
  cursor: move;
}
.webf-dialog > .webf-box .box-header .wrap-buttons .webf-button {
  margin-left: 5px;
  padding-left: 5px;
  padding-right: 5px;
}
.webf-dialog > .webf-box .box-header .wrap-buttons .webf-button i.webf {
  font-size: 11px;
}
.webf-dialog > .webf-box .box-footer {
  overflow: hidden;
  *zoom: 1;
}
.webf-dialog > .webf-box .box-footer .wrapper {
  float: right;
}
.webf-dialog > .webf-box .box-footer .wrapper .webf-button {
  float: left;
  margin-left: 5px;
}
.webf-dialog.maximized {
  position: fixed !important;
  width: 100% !important;
  height: 100% !important;
  top: 0 !important;
  left: 0 !important;
}
.webf-dialog.maximized .webf-box {
  height: 100%;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  -o-border-radius: 0;
  border-radius: 0;
}
.webf-dialog.maximized .webf-box .box-body {
  overflow: auto;
}
.webf-dialog.maximized .webf-box .box-header {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  -o-border-radius: 0;
  border-radius: 0;
}
.webf-dialog.maximized .webf-box .box-footer {
  box-sizing: border-box;
  position: absolute;
  width: 100%;
  bottom: 0;
}

.webf-draggable {
  transition-duration: 250ms;
  transition-property: opacity;
}
.webf-draggable.dragging {
  opacity: 0.3;
}

.webf-droppable.hover {
  border-style: dashed;
  border-color: black;
}

.webf-draghandler {
  pointer-events: none;
  display: flex;
  align-items: center;
  z-index: 1000000;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #e8f0fe;
  box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.3);
  color: #1967d2;
  border-radius: 5px;
  padding: 0 10px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 14px;
  font-weight: bold;
  transition-property: width, height;
  transition-duration: 200ms;
}
.webf-draghandler > span {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.webf-draghandler.positionning {
  transition-property: width, height, top, left, transform;
}
.webf-draghandler.positionning.fast {
  transition-duration: 100ms;
  transition-property: top, left;
}
.webf-draghandler.positionning.fast:not(:last-child) {
  box-shadow: none;
}
.webf-draghandler.dragging {
  width: 200px !important;
  height: 42px !important;
}

.webf-dropdown {
  display: inline-block;
  position: relative;
  width: 100%;
  overflow-x: unset;
  margin-bottom: 0;
}
.webf-dropdown .webf-dropdown-menu {
  display: none;
  position: absolute;
  left: 0;
  right: auto;
  top: 100%;
  z-index: 1000;
  border: 1px solid #bbbbbb;
  background-color: #fff;
  -webkit-box-shadow: rgba(0, 0, 0, 0.175) 0 3px 3px;
  -moz-box-shadow: rgba(0, 0, 0, 0.175) 0 3px 3px;
  box-shadow: rgba(0, 0, 0, 0.175) 0 3px 3px;
}
.webf-dropdown.alignmenu-up .webf-dropdown-menu {
  bottom: 100%;
  top: auto;
}
.webf-dropdown.alignmenu-right .webf-dropdown-menu {
  right: 0;
  left: auto;
}
.webf-dropdown.open {
  overflow-x: visible;
  margin-bottom: 0;
}
.webf-dropdown.open .webf-dropdown-menu {
  display: block;
}

.webf-buttons-group .webf-dropdown {
  display: inline-block;
}
.webf-buttons-group .webf-dropdown .webf-dropdown-menu {
  left: -1px;
}
.webf-buttons-group .webf-dropdown.alignmenu-right .webf-dropdown-menu {
  left: auto;
}

.webf-dropdown-slider {
  position: absolute;
  background: none;
  border: 0;
  float: none;
  margin: 0;
  padding: 0;
  overflow: hidden;
}

#ged.grid .elements {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(25%, 1fr));
}
@media screen and (max-width: 991px) {
  #ged.grid .elements {
    grid-template-columns: repeat(auto-fill, minmax(33%, 1fr));
  }
}
@media screen and (max-width: 767px) {
  #ged.grid .elements {
    grid-template-columns: repeat(auto-fill, minmax(50%, 1fr));
  }
}
#ged.grid .elements .element {
  position: relative;
  height: 12rem;
  border: 1px solid #add8e6;
  margin: 0.25rem;
  min-width: 0;
}
#ged.grid .elements .element .preview {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 8rem;
  font-size: 3rem;
  color: #64b5f6;
}
#ged.grid .elements .element .preview img {
  max-width: 100%;
  max-height: 100%;
}
#ged.grid .elements .element .wrap-infos {
  display: flex;
  flex-flow: wrap;
  flex: 1 1 100%;
  min-width: 0;
}
#ged.grid .elements .element .wrap-infos .name-element {
  flex: 1 1 100%;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  margin-top: 0.5rem;
}
#ged.grid .elements .element .wrap-infos .name-element .name {
  font-weight: bold;
  font-size: 0.85rem;
  margin: 0 0.25rem;
  padding: 0 4px;
  border: 1px solid transparent;
  overflow: hidden;
}
#ged.grid .elements .element .wrap-infos .filesize {
  position: absolute;
  bottom: 0.5rem;
  right: 2.3rem;
  font-size: 0.7rem;
  font-style: italic;
  text-align: right;
}
#ged.grid .elements .element .wrap-infos .date-creation {
  position: absolute;
  bottom: 0.5rem;
  left: 0.5rem;
  font-size: 0.7rem;
}
#ged.grid .elements .element .actions {
  position: absolute;
  bottom: 0;
  right: 0;
  color: #999;
}
#ged.grid .elements .element .actions .ellipsis {
  margin-right: 0;
  padding: 0 1rem;
  font-size: 1.6rem;
  cursor: pointer;
}

#ged.list .elements {
  display: flex;
  flex-flow: row wrap;
}
#ged.list .elements .element {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  width: 100%;
  height: 4rem;
}
#ged.list .elements .element .preview {
  padding-left: 1rem;
  flex: 1 1 6rem;
  align-content: center;
  justify-content: center;
  font-size: 2.5rem;
  text-align: center;
  color: #64b5f6;
}
#ged.list .elements .element .preview img {
  display: block;
  margin: auto;
  max-width: 95%;
  max-height: 3.8rem;
}
#ged.list .elements .element .wrap-infos {
  display: flex;
  flex-flow: wrap;
  flex: 1 1 100%;
  min-width: 0;
  margin-left: 0.3rem;
}
#ged.list .elements .element .wrap-infos .name-element {
  flex: 1 1 100%;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
#ged.list .elements .element .wrap-infos .name-element .name {
  font-size: 0.8rem;
  font-weight: bold;
  padding-left: 4px;
  border: 1px solid transparent;
}
#ged.list .elements .element .wrap-infos .filesize {
  flex: 1 1 20px;
  padding-left: 4px;
  font-size: 0.7rem;
  font-style: italic;
}
#ged.list .elements .element .wrap-infos .date-creation {
  flex: 1 1 20px;
  font-size: 0.7rem;
  margin-right: 0.5rem;
  margin-left: 0.5rem;
  text-align: right;
}
#ged.list .elements .element .actions {
  color: #999;
}
#ged.list .elements .element .actions .ellipsis {
  font-size: 1.6rem;
  margin-right: 0.5rem;
  padding: 0.5rem 1rem;
  cursor: pointer;
}

nav.ged {
  display: flex;
  flex-flow: row nowrap;
  line-height: 2.5rem;
  justify-content: flex-start;
}
nav.ged ol.breadcrumb {
  height: 2.5rem;
  line-height: 2.5rem;
  padding-top: 0;
  padding-bottom: 0;
  margin-bottom: 0;
}
nav.ged ol.breadcrumb li {
  color: #eee;
}
nav.ged ol.breadcrumb li::before {
  color: #ddd;
}
nav.ged ol.breadcrumb li a {
  font-weight: bold;
  color: #eee;
}
nav.ged ol.breadcrumb li a.home {
  font-size: 1.2rem;
}
nav.ged ol.breadcrumb li a:hover {
  color: #fff;
}
nav.ged .buttons-navbar {
  display: flex;
  font-size: 1.3rem;
  color: #fff;
}
nav.ged .buttons-navbar .btn-display,
nav.ged .buttons-navbar .btn-actions {
  padding: 0 0.8rem;
  margin: 0 0.2rem;
  cursor: pointer;
}
nav.ged .buttons-navbar .btn-display.active {
  background-color: #1b93f3;
}

#ged {
  /* Webf Scrollbar */
}
#ged .wrap-elements .webf-scrollbox-container {
  width: 100%;
}
#ged .wrap-elements .webf-scrollbox-wrapper:hover .webf-scrollbar, #ged .wrap-elements .webf-scrollbox-wrapper.dragging .webf-scrollbar {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
  opacity: 0.8;
}
@media screen and (max-width: 767px) {
  #ged .wrap-elements .webf-scrollbox-wrapper:hover .webf-scrollbar, #ged .wrap-elements .webf-scrollbox-wrapper.dragging .webf-scrollbar {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
    opacity: 0;
  }
}
#ged .wrap-elements .webf-scrollbox-wrapper .webf-scrollbar.y {
  width: 5px;
  background: transparent;
}
#ged .wrap-elements .webf-scrollbox-wrapper .webf-scrollbar.y .handler {
  background: #2373d9;
}

#ged.thumbnails .elements {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(25%, 1fr));
}
@media screen and (max-width: 991px) {
  #ged.thumbnails .elements {
    grid-template-columns: repeat(auto-fill, minmax(33%, 1fr));
  }
}
@media screen and (max-width: 767px) {
  #ged.thumbnails .elements {
    grid-template-columns: repeat(auto-fill, minmax(50%, 1fr));
  }
}
#ged.thumbnails .elements .element {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  height: 3rem;
  border: 1px solid #add8e6;
  margin: 0.5rem 0.3rem;
  min-width: 0;
}
#ged.thumbnails .elements .element .preview {
  display: flex;
  align-items: center;
  flex: 1 1 20px;
  justify-content: center;
  color: #64b5f6;
  padding: 3px;
  font-size: 2rem;
}
#ged.thumbnails .elements .element .preview img {
  max-width: 100%;
  max-height: 100%;
}
#ged.thumbnails .elements .element .wrap-infos {
  flex: 1 1 50%;
  flex-flow: nowrap;
  min-width: 0;
}
#ged.thumbnails .elements .element .wrap-infos .name-element {
  flex: 1 1 100%;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
#ged.thumbnails .elements .element .wrap-infos .name-element .name {
  font-weight: bold;
  font-size: 0.85rem;
  margin: 0 0.25rem;
  padding: 0 4px;
  border: 1px solid transparent;
  overflow: hidden;
}
#ged.thumbnails .elements .element .wrap-infos .filesize {
  display: none;
}
#ged.thumbnails .elements .element .wrap-infos .date-creation {
  display: none;
}
#ged.thumbnails .elements .element .actions {
  width: 2rem;
}
#ged.thumbnails .elements .element .actions .ellipsis {
  font-size: 1rem;
  margin-right: 0.5rem;
  padding: 0.5rem 1rem;
  cursor: pointer;
}

.webf-filemanager {
  width: 100%;
}
.webf-filemanager .btn-new {
  width: 100%;
}
.webf-filemanager .wrap-elements {
  overflow-y: auto;
  height: calc(100vh - 3.5rem - 2.5rem);
}
.webf-filemanager .wrap-elements .elements .element {
  background: #fff;
}
.webf-filemanager .wrap-elements .elements .element .name-element {
  color: #5b636a;
}
.webf-filemanager .wrap-elements .elements .element .filesize {
  color: #808080;
}
.webf-filemanager .wrap-elements .elements .element .date-creation {
  color: #5F5F5F;
}
.webf-filemanager .wrap-elements .elements .element:hover {
  background-color: #f9f9f9;
}
.webf-filemanager .wrap-elements .elements .element.selected {
  background-color: #ECECEC;
}
.webf-filemanager .wrap-elements .elements .element.selected .filesize {
  color: #333;
}
.webf-filemanager .wrap-elements .elements .element.selected .date-creation {
  color: #212121;
}
.webf-filemanager .wrap-elements .elements .element.selected .wrap-infos .name-element .name {
  color: #333;
}
.webf-filemanager .wrap-elements .elements .element.selected .wrap-infos .name-element .name.editable {
  border-color: #f5f5f5;
  background-color: #fff;
  outline: none;
  color: #333;
}
.webf-filemanager .wrap-elements .elements .element.selected .wrap-infos .name-element .name::selection {
  background: #a8d1ff;
}
.webf-filemanager .wrap-elements .elements .element.selected .wrap-infos .name-element .name::-moz-selection {
  background: #a8d1ff;
}
.webf-filemanager .wrap-elements .elements .element.selected .actions {
  color: #777;
}

.webf-agenda {
  width: 100%;
  border: 1px solid #ccc;
  background: #fff;
  font-family: arial, Helvetica, sans-serif;
}
.webf-agenda table {
  border-collapse: collapse;
}
.webf-agenda table tr {
  vertical-align: top;
}
.webf-agenda * {
  box-sizing: content-box;
}
.webf-agenda.agenda-day .days {
  display: none;
}
.webf-agenda .webf-scrollbox-wrapper .webf-scrollbar.y {
  width: 8px;
}
.webf-agenda .webf-scrollbox-wrapper .webf-scrollbar.y, .webf-agenda .webf-scrollbox-wrapper .webf-scrollbar.y:hover {
  opacity: 1;
  background: none;
}
.webf-agenda .webf-scrollbox-wrapper .webf-scrollbar.y .handler {
  width: 80%;
  background: #555;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
}
.webf-agenda .webf-scrollbox-wrapper .webf-scrollbar.y .handler:hover {
  background: #000;
}

.webf-agenda > .toolbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 5px;
  background-color: #e8eff3;
}
.webf-agenda > .toolbar > .buttons {
  flex-shrink: 0;
}
@media (max-width: 768px) {
  .webf-agenda > .toolbar > .buttons .webf-button {
    border-radius: 0.1875rem;
    font-size: 0.75rem;
    padding: 0.225rem 0.75rem;
  }
}
.webf-agenda > .toolbar > .title {
  text-align: center;
  font-size: 16px;
  margin-top: 5px;
  width: 100%;
}
@media (max-width: 991px) {
  .webf-agenda > .toolbar > .title {
    display: none;
  }
}
.webf-agenda > .toolbar > .views {
  flex-shrink: 0;
}
.webf-agenda > .toolbar > .views .webf-button {
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  box-shadow: none;
}
.webf-agenda > .toolbar > .views .webf-button.mouseover, .webf-agenda > .toolbar > .views .webf-button.focus {
  border-color: #CCCCCC;
}
.webf-agenda > .toolbar > .views .webf-button.selected {
  background: #ccc;
  background: #4b70df;
  color: #fff;
  filter: none;
  border-color: #aaa;
  box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15);
}
.webf-agenda > .toolbar > .views .webf-button.prev-week, .webf-agenda > .toolbar > .views .webf-button.next-week {
  padding-left: 14px;
  padding-right: 14px;
}
.webf-agenda > .toolbar > .views .webf-button.prev-week {
  padding-left: 9px;
  padding-right: 9px;
}
.webf-agenda > .toolbar > .views .webf-button.next-week {
  padding-left: 9px;
  padding-right: 9px;
}
.webf-agenda > .toolbar > .views .webf-button.today {
  font-size: 14px;
}
.webf-agenda > .toolbar > .views .webf-button.datepicker > span {
  margin-left: 0.6rem;
}
@media (max-width: 768px) {
  .webf-agenda > .toolbar > .views .webf-button.datepicker > span {
    display: none;
  }
}

.webf-agenda .days {
  padding: 10px 0 5px;
  background: #e8eff3;
}
.webf-agenda .days .tb-days {
  table-layout: fixed;
  width: 100%;
  text-align: center;
}
.webf-agenda .days .tb-days .td-day a.link-days {
  color: #555;
  font-size: 12px;
}
.webf-agenda .days .tb-days .td-day a.link-days.disabled {
  cursor: default;
}
.webf-agenda .days .tb-days .td-day a.link-days.disabled:hover {
  text-decoration: none;
}

.webf-agenda .days .tb-days .td-hours,
.webf-agenda .users .tb-users .td-hours {
  width: 45px;
}

.webf-agenda .users {
  padding: 2px 0;
  background: #e8eff3;
}

.webf-agenda .users .tb-users {
  table-layout: fixed;
  width: 100%;
  text-align: center;
}

.webf-agenda .users .tb-users td .user {
  padding: 0 3px;
  white-space: nowrap;
  overflow: hidden;
  /*   text-overflow: ellipsis; */
}

.webf-agenda .allday {
  min-height: 24px;
  /*   height: 24px; */
  border: 0;
  border-top: 1px solid #ccc;
  background: #ccc;
  border-bottom: 3px double #808080;
  position: relative;
}

.webf-agenda .allday .tb-grid {
  width: 100%;
  height: 24px;
}
.webf-agenda .allday .td-first {
  width: 45px;
  background-color: #e8eff3;
}
.webf-agenda .allday .td-col-days {
  background-color: #fff;
  display: block;
  height: 24px; /* à déterminer en js */
  position: relative;
}
.webf-agenda .allday .td-col-days .tb-days {
  width: 100%;
  table-layout: fixed;
  height: 100%;
}
.webf-agenda .allday .td-col-days .tb-days .td-col-allday {
  border-right: 1px solid #808080;
}
.webf-agenda .allday .td-col-days .tb-days .td-col-allday.hover {
  background: black;
  opacity: 0.07;
  filter: alpha(opacity=5);
}
.webf-agenda .allday .td-col-days .tb-days .td-col-allday:last-child {
  border-right: 0;
}
.webf-agenda .allday .td-col-days .tb-events {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  table-layout: fixed;
}
.webf-agenda .allday .td-col-days .tb-events .event {
  border: 1px solid #5F94D2;
  background-color: #68A1E5;
  color: #fff;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  height: 12px;
  line-height: 12px;
  padding: 1px 2px;
  font-size: 11px;
  margin: 1px 2px 1px 1px;
  cursor: default;
}
.webf-agenda .grid {
  background-color: #FFFFFF;
  position: relative;
  width: 100%;
  overflow: auto;
}
.webf-agenda .grid .tb-grid {
  width: 100%;
  table-layout: fixed;
}
.webf-agenda .grid .tb-grid .td-hours {
  width: 45px;
  background: #e8eff3;
  /*   border-bottom: 1px solid #aaa; */ /* crée un décalage sur chrome! */
}
.webf-agenda .grid .tb-grid .td-hours span.hour {
  display: block;
  float: right;
  margin: 0 5px 0 0;
  font-size: 13px;
}
.webf-agenda .grid .tb-grid .td-hours .border-bottom {
  position: relative;
  bottom: 1px;
  left: 0;
  width: 100%;
  height: 1px;
  background: #ccc;
  font-size: 0;
}
.webf-agenda .grid .tb-grid .timeslot {
  /*   height: 20px; */
  border-bottom: 1px dotted #ddd;
}
.webf-agenda .grid .tb-grid .timeslot.hour {
  border-bottom: 1px solid #ccc;
}
.webf-agenda .grid .agenda {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.webf-agenda .grid .agenda .tb-agenda {
  width: 100%;
  height: 100%;
  table-layout: fixed;
}
.webf-agenda .grid .agenda .tb-agenda .td-hours {
  width: 45px;
}
.webf-agenda .grid .agenda .tb-agenda .td-col-day {
  border-right: 1px solid #808080;
  height: 100%;
}
.webf-agenda .grid .agenda .tb-agenda .td-col-day:last-child {
  border-right: 0;
}
.webf-agenda .grid .agenda .tb-agenda .td-col-day .col-day-full {
  position: relative;
  height: 100%;
}
.webf-agenda .grid .agenda .tb-agenda .td-col-day .col-day-full .hour-marker {
  position: absolute;
  width: 100%;
  background-color: red;
  height: 1px;
  top: 0;
  left: 0;
  display: none;
  z-index: 2;
}
.webf-agenda .grid .agenda .tb-agenda .td-col-day .col-day-full .tb-users {
  width: 100%;
  height: 100%;
  table-layout: fixed;
}
.webf-agenda .grid .agenda .tb-agenda .td-col-day .col-day-full .tb-users td {
  border-right: 1px dashed #D3D3D3;
}
.webf-agenda .grid .agenda .tb-agenda .td-col-day .col-day-full .tb-users td .col-user {
  position: relative;
}
.webf-agenda .grid .agenda .tb-agenda .td-col-day .col-day-full .tb-users td:last-child {
  border: 0;
}
.webf-agenda .grid .agenda .tb-agenda .td-col-day .col-day-full .event {
  box-sizing: border-box;
  width: 100%;
  background: #68A1E5;
  color: #fff;
  position: absolute;
  left: 0;
  cursor: default;
  overflow: hidden;
  z-index: 1;
  border-bottom: 1px solid #5f94d2;
}
.webf-agenda .grid .agenda .tb-agenda .td-col-day .col-day-full .event .title {
  /*   border: 1px solid #1B62C0; */
  /*   height: 15px; */
  min-height: 15px;
  line-height: 15px;
  font-size: 10px;
  /*   text-align: center; */
  text-align: left;
  background: #2B72D0;
  /*   white-space: nowrap; */
  /*   overflow: hidden; */
  text-indent: 2px;
}
.webf-agenda .grid .agenda .tb-agenda .td-col-day .col-day-full .event .title {
  /*   cursor: move; */
}
.webf-agenda .grid .agenda .tb-agenda .tb-agenda-days {
  width: 100%;
  table-layout: fixed;
}
.webf-agenda .grid .agenda .tb-agenda .td-col-day .col-day-full .event .content {
  /*   text-align: center; */
  text-align: left;
  overflow: hidden;
  padding: 3px 1px 0;
  font-size: 11px;
  line-height: 13px;
  height: 100%;
  border: 1px solid #5f94d2;
  border-top: 0;
  word-wrap: break-word;
  width: 100%;
}
.webf-agenda .grid .agenda .tb-agenda .td-col-day .col-day-full .event .handle-resizable {
  width: 100%;
  position: absolute;
  bottom: -2px;
  left: 0;
  text-align: center;
  font-size: 9px;
  height: 10px;
  line-height: 8px;
  background: none;
  cursor: s-resize;
}
.webf-agenda .allday .tb-grid .td-col-days .tb-events .event.temporary,
.webf-agenda .grid .agenda .tb-agenda .td-col-day .col-day-full .event.temporary {
  opacity: 0.6 !important;
  filter: alpha(opacity=60);
}
.webf-agenda .tb-grid .td-day-month {
  border: 1px solid #ccc;
}
.webf-agenda .tb-grid .td-day-month.drop {
  background: #f2f5ff;
}
.webf-agenda .tb-grid .td-day-month.drop .cell-day .num-day {
  background-color: #e2e9ff;
}
.webf-agenda .tb-grid .td-day-month.first-row {
  border-top: 0;
}
.webf-agenda .tb-grid .td-day-month.last-row {
  border-bottom: 0;
}
.webf-agenda .tb-grid .td-day-month.first-col {
  border-left: 0;
}
.webf-agenda .tb-grid .td-day-month.last-col {
  border-right: 0;
}
.webf-agenda .tb-grid .td-day-month .cell-day {
  position: relative;
}
.webf-agenda .tb-grid .td-day-month .cell-day .num-day {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 16px;
  line-height: 16px;
  text-align: right;
  overflow: hidden;
  background: #f5f5f5;
  color: #aaa;
  font-size: 11px;
}
.webf-agenda .tb-grid .td-day-month .cell-day .num-day a {
  color: #aaa;
}
.webf-agenda .tb-grid .td-day-month .cell-day .num-day a.disabled {
  cursor: default;
}
.webf-agenda .tb-grid .td-day-month .cell-day .num-day a.disabled:hover {
  text-decoration: none;
}
.webf-agenda .tb-grid .td-day-month .cell-day .num-day span {
  display: block;
  padding-right: 4px;
}
.webf-agenda .tb-grid .td-day-month .cell-day .num-day.current {
  color: #444;
  font-weight: bold;
}
.webf-agenda .tb-grid .td-day-month .cell-day .num-day.current a {
  color: #444;
}
.webf-agenda .tb-grid .td-day-month .cell-day .events {
  overflow-y: auto;
  overflow-x: hidden;
  position: relative;
  top: 18px;
  left: 0;
}
.webf-agenda .tb-grid .td-day-month .cell-day .events .event {
  color: #fff;
  /*   cursor: pointer; */
}
.webf-agenda .tb-grid .td-day-month .cell-day .events .event .title {
  margin: 0 2px 2px 2px;
  border: 1px solid #1B62C0;
  height: 15px;
  min-height: 15px;
  line-height: 15px;
  background: #2B72D0;
  font-size: 10px;
  text-align: left;
  white-space: nowrap;
  overflow: hidden;
  text-indent: 3px;
}
.webf-agenda .webf-agenda .webf-scrollbox-wrapper .webf-scrollbar.y {
  width: 8px;
}
.webf-agenda .webf-agenda .webf-scrollbox-wrapper .webf-scrollbar.y, .webf-agenda .webf-agenda .webf-scrollbox-wrapper .webf-scrollbar.y:hover {
  opacity: 1;
  background: none;
}
.webf-agenda .webf-agenda .webf-scrollbox-wrapper .webf-scrollbar.y .handler {
  width: 80%;
  background: #555;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
}
.webf-agenda .webf-agenda .webf-scrollbox-wrapper .webf-scrollbar.y .handler:hover {
  background: #000;
}
@media (max-width: 768px) {
  .webf-agenda .webf-agenda .webf-scrollbox-wrapper .webf-scrollbar.y {
    display: none;
  }
}
.webf-agenda .webf-agenda-user {
  position: relative;
}
.webf-agenda .webf-agenda-tooltip-user .triangle {
  width: 0;
  height: 0;
  border: 6px solid transparent;
  border-top: 0;
  border-bottom: 6px solid #ccc;
  position: relative;
  top: -6px;
  margin: auto;
  z-index: 10001;
}
.webf-agenda .webf-agenda-tooltip-user .triangle .inner-triangle {
  position: absolute;
  width: 0;
  height: 0;
  border: 6px solid transparent;
  border-top: 0;
  border-bottom: 6px solid #fff;
  top: 1px;
  left: -6px;
}
.webf-agenda .webf-agenda-tooltip-user .content {
  border: 1px solid #ccc;
  background: #fff;
  color: #333;
  padding: 5px 10px;
  position: relative;
  top: -6px;
  z-index: 10000;
  box-shadow: 2px 2px 5px #ddd;
}

.webf-agenda-dragging-event .title {
  margin: 0 2px 2px 2px;
  border: 1px solid #1B62C0;
  height: 15px;
  min-height: 15px;
  line-height: 15px;
  background: #2B72D0;
  font-size: 10px;
  text-align: left;
  white-space: nowrap;
  overflow: hidden;
  text-indent: 3px;
  color: #fff;
}

.webf-image-crop {
  background: none;
  display: block;
  line-height: 0;
  position: relative;
  cursor: crosshair;
}
.webf-image-crop .outer-selection {
  position: absolute;
  background: #000;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=30);
  opacity: 0.3;
}
.webf-image-crop .outer-selection.nw {
  top: 0px;
  left: 0px;
}
.webf-image-crop .outer-selection.n {
  top: 0px;
}
.webf-image-crop .outer-selection.ne {
  top: 0px;
  right: 0px;
}
.webf-image-crop .outer-selection.e {
  right: 0px;
}
.webf-image-crop .outer-selection.se {
  bottom: 0px;
  right: 0px;
}
.webf-image-crop .outer-selection.s {
  bottom: 0px;
}
.webf-image-crop .outer-selection.sw {
  bottom: 0px;
  left: 0px;
}
.webf-image-crop .outer-selection.w {
  left: 0px;
}
.webf-image-crop .selection-border {
  position: absolute;
  background-color: transparent;
  background-image: url(data:image/gif;base64,R0lGODlhCAAIAJEAAKqqqv///wAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQJCgAAACwAAAAACAAIAAACDZQFCadrzVRMB9FZ5SwAIfkECQoAAAAsAAAAAAgACAAAAg+ELqCYaudeW9ChyOyltQAAIfkECQoAAAAsAAAAAAgACAAAAg8EhGKXm+rQYtC0WGl9oAAAIfkECQoAAAAsAAAAAAgACAAAAg+EhWKQernaYmjCWLF7qAAAIfkECQoAAAAsAAAAAAgACAAAAg2EISmna81UTAfRWeUsACH5BAkKAAAALAAAAAAIAAgAAAIPFA6imGrnXlvQocjspbUAACH5BAkKAAAALAAAAAAIAAgAAAIPlIBgl5vq0GLQtFhpfaIAACH5BAUKAAAALAAAAAAIAAgAAAIPlIFgknq52mJowlixe6gAADs=);
  background-position: 0 0;
  background-repeat: repeat;
  font-size: 0;
  display: none;
}
.webf-image-crop .selection-border.n, .webf-image-crop .selection-border.s {
  height: 1px;
}
.webf-image-crop .selection-border.e, .webf-image-crop .selection-border.w {
  width: 1px;
}
.webf-image-crop .selected-area {
  position: absolute;
  cursor: move;
  display: none;
  background: #fff;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
}
.webf-image-crop .handle {
  position: absolute;
  background-color: #333;
  border: 1px solid #eee;
  font-size: 1px;
  height: 8px;
  width: 8px;
  margin: -4px;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=60);
  opacity: 0.6;
  display: none;
}
.webf-image-crop .handle.nw {
  cursor: nw-resize;
}
.webf-image-crop .handle.n {
  cursor: n-resize;
}
.webf-image-crop .handle.ne {
  cursor: ne-resize;
}
.webf-image-crop .handle.e {
  cursor: e-resize;
}
.webf-image-crop .handle.se {
  cursor: se-resize;
}
.webf-image-crop .handle.s {
  cursor: s-resize;
}
.webf-image-crop .handle.sw {
  cursor: sw-resize;
}
.webf-image-crop .handle.w {
  cursor: w-resize;
}

.webf-lightbox {
  position: fixed;
  overflow: hidden;
  width: 0;
  height: 0;
  left: 0;
  top: 0;
  z-index: 10000;
  background: rgba(0, 0, 0, 0.7);
  opacity: 0;
  transition: opacity 0.3s ease;
}
.webf-lightbox.closing {
  width: 100%;
  height: 100%;
  opacity: 0;
}
.webf-lightbox.open {
  opacity: 1;
  width: 100%;
  height: 100%;
}
.webf-lightbox .webf-lightbox-nav {
  position: absolute;
  top: 50%;
  width: 3rem;
  height: 3rem;
  margin-top: -1.5rem;
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 0.4;
  background-color: rgba(0, 0, 0, 0.6);
  color: white;
  text-decoration: none;
}
@media (max-width: 991px) {
  .webf-lightbox .webf-lightbox-nav {
    width: 2.25rem;
    height: 2.25rem;
  }
}
.webf-lightbox .webf-lightbox-nav:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 2.4rem;
}
@media (max-width: 991px) {
  .webf-lightbox .webf-lightbox-nav:after {
    font-size: 1.8rem;
  }
}
.webf-lightbox .webf-lightbox-nav.prev {
  left: 2rem;
}
@media (max-width: 991px) {
  .webf-lightbox .webf-lightbox-nav.prev {
    left: 0.4rem;
  }
}
.webf-lightbox .webf-lightbox-nav.prev:after {
  content: "\f053";
}
.webf-lightbox .webf-lightbox-nav.next {
  right: 2rem;
}
@media (max-width: 991px) {
  .webf-lightbox .webf-lightbox-nav.next {
    right: 0.4rem;
  }
}
.webf-lightbox .webf-lightbox-nav.next:after {
  content: "\f054";
}
.webf-lightbox .webf-lightbox-buttons {
  position: absolute;
  width: 100%;
  background: none;
  top: 0;
  padding-right: 8px;
}
.webf-lightbox .webf-lightbox-buttons .webf-lightbox-button {
  margin: 5px 2px;
  float: right;
  display: inline-block;
  width: 40px;
  height: 40px;
  line-height: 40px;
  font-size: 20px;
  color: #fff;
  border-radius: 40px;
  font-weight: bold;
  background-color: black;
  text-align: center;
  cursor: pointer;
  text-decoration: none;
  transition: background-color 0.3s;
}
.webf-lightbox .webf-lightbox-buttons .webf-lightbox-button:hover {
  background: #555;
}
.webf-lightbox .webf-lightbox-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.webf-lightbox .webf-lightbox-wrapper .webf-lightbox-container {
  display: flex;
  align-items: center;
  overflow-y: hidden;
  height: 100%;
  max-height: 100%;
  width: calc(var(--n) * 100%);
  transform: translate(calc(var(--i, 0) / var(--n, 0) * -100% + var(--tx, 0px)));
}
.webf-lightbox .webf-lightbox-wrapper .webf-lightbox-container.smooth {
  transition: transform calc(var(--f, 1) * var(--dt, 500ms)) ease-out;
}
.webf-lightbox .webf-lightbox-wrapper .webf-lightbox-container .item-container {
  height: 95%;
  margin: 0 calc(2.5% / var(--n));
  width: calc(95% / var(--n));
  display: flex;
  align-items: center;
  justify-content: center;
}
.webf-lightbox .webf-lightbox-wrapper .webf-lightbox-container .item-container img {
  max-width: 100%;
  max-height: 100%;
  pointer-events: none;
}
.webf-lightbox .webf-lightbox-wrapper .webf-lightbox-container .item-container iframe {
  width: calc(90% / var(--n));
}
.webf-lightbox .webf-lightbox-wrapper .webf-lightbox-caption {
  font-size: 1rem;
  color: white;
  text-align: center;
  background: black;
  font-family: helvetica, arial, sans-serif;
  font-weight: bold;
  opacity: 1;
  line-height: 18px;
}
.webf-lightbox .webf-lightbox-wrapper .webf-lightbox-caption > .text {
  padding: 0.8rem;
}
.webf-lightbox .webf-lightbox-loading {
  background: url(/build/images/loading.82991312.gif) center center no-repeat;
  width: 32px;
  height: 32px;
  margin: -16px 0 0 -16px;
  position: absolute;
  top: 50%;
  left: 50%;
}
.webf-lightbox iframe {
  width: 530px;
  height: 95%;
  max-height: 100%;
  position: absolute;
  border: 0;
}
.webf-lightbox:not(.open) iframe {
  display: none;
}

.webf-lightbox-img-preloaded,
.webf-lightbox-iframe-preloaded {
  position: absolute !important;
  top: -99999px !important;
  left: -99999px !important;
}

.webf-list-entities {
  background: white;
}
.webf-list-entities .webf-head-entities {
  display: flex;
  padding-right: 1rem;
  align-items: flex-end;
}
.webf-list-entities .webf-head-entities .webf-head {
  color: #b5b5c3;
  padding: 0.4rem 0;
  font-size: 0.75rem;
  text-transform: uppercase;
  font-weight: 600;
  letter-spacing: 0.1rem;
}
.webf-list-entities .webf-head-entities .webf-head.--toggle-details {
  flex-shrink: 0;
  width: 2.5rem;
  padding: 0 1rem;
}
@media (max-width: 767px) {
  .webf-list-entities .webf-head-entities .webf-head.--toggle-details {
    width: 1rem;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
}
.webf-list-entities .webf-head-entities .webf-head.--h5 {
  width: 100%;
  padding-right: 1rem;
}
.webf-list-entities .webf-head-entities .webf-head.--date-entree {
  width: 200px;
  flex-shrink: 0;
}
.webf-list-entities .webf-head-entities .webf-head.--buttons {
  width: 125px;
  flex-shrink: 0;
  text-align: right;
}
.webf-list-entities > .webf-head-entities ~ .webf-entity, .webf-list-entities > .webf-entity:first-child {
  border-top: 1px solid #E3E7EA;
}
.webf-list-entities > .webf-head-entities ~ .webf-entity ~ .webf-entity {
  border-top: 0;
}
.webf-list-entities > .webf-entity {
  padding: 0;
  font-size: 0.8rem;
  color: #555;
  font-family: Arial, sans-serif;
  border-bottom: 1px solid #E3E7EA;
}
.webf-list-entities > .webf-entity > .webf-header {
  overflow: initial;
  display: flex;
  align-items: center;
  min-height: 40px;
  padding: 0.5rem 1rem;
  transition: color 250ms, background-color 300ms;
}
@media (max-width: 767px) {
  .webf-list-entities > .webf-entity > .webf-header {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
}
.webf-list-entities > .webf-entity > .webf-header > .toggle-details {
  width: 2.5rem;
  text-align: center;
  flex-shrink: 0;
  cursor: pointer;
  padding: 0 1rem;
  font-size: 1rem;
  color: #4b70df;
  transition: 300ms transform;
}
@media (max-width: 767px) {
  .webf-list-entities > .webf-entity > .webf-header > .toggle-details {
    width: auto;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
}
.webf-list-entities > .webf-entity > .webf-header > .toggle-details.unfolding {
  transform: rotate(90deg) !important;
}
.webf-list-entities > .webf-entity > .webf-header > .toggle-details.folding {
  transform: rotate(0deg) !important;
}
.webf-list-entities > .webf-entity > .webf-header > h5, .webf-list-entities > .webf-entity > .webf-header > .h5, .webf-list-entities > .webf-entity > .webf-header > a {
  line-height: inherit;
  color: #555;
  width: 100%;
  padding-right: 1rem;
  font-size: 0.8rem;
  font-weight: normal;
  overflow: hidden;
  text-overflow: ellipsis;
  margin: 0 auto;
}
.webf-list-entities > .webf-entity > .webf-header > h5 > a, .webf-list-entities > .webf-entity > .webf-header > .h5 > a {
  text-decoration: none;
  color: #555;
}
.webf-list-entities > .webf-entity > .webf-header > h5 > a:hover, .webf-list-entities > .webf-entity > .webf-header > .h5 > a:hover {
  color: black;
}
.webf-list-entities > .webf-entity > .webf-header:hover {
  background-color: #f9fafc;
}
.webf-list-entities > .webf-entity > .webf-header > a {
  text-decoration: none;
}
.webf-list-entities > .webf-entity > .webf-header > a:hover {
  color: black;
}
.webf-list-entities > .webf-entity > .webf-header > .--date-entree {
  width: 200px;
  flex-shrink: 0;
}
.webf-list-entities > .webf-entity > .webf-header > .webf-buttons-group {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  width: 125px;
  padding-left: 1rem;
  opacity: 0.5;
  flex-shrink: 0;
  transition: 300ms opacity;
}
@media (max-width: 767px) {
  .webf-list-entities > .webf-entity > .webf-header > .webf-buttons-group {
    width: 35px;
  }
}
.webf-list-entities > .webf-entity > .webf-header > .webf-buttons-group .webf-button {
  padding: 0.3rem 0.6rem;
  min-width: 35px;
  background-color: #fff;
  border-color: transparent;
  font-size: 0.8rem;
}
.webf-list-entities > .webf-entity > .webf-header > .webf-buttons-group .webf-button:hover {
  background-color: #e6e6e6;
}
@media screen and (max-width: 768px) {
  .webf-list-entities > .webf-entity > .webf-header > .webf-buttons-group {
    opacity: 1;
  }
  .webf-list-entities > .webf-entity > .webf-header > .webf-buttons-group > .webf-button {
    border-color: #bbbbbb;
  }
}
.webf-list-entities > .webf-entity > .webf-body {
  display: none;
  padding: 0.5rem 1rem;
  border-top: 1px solid #E3E7EA;
}
.webf-list-entities > .webf-entity > .webf-body > .webf-details {
  margin-top: -0.5rem;
  margin-bottom: -0.5rem;
  margin-left: 2rem;
  padding: 1rem 0 1rem 1.5rem;
  background: linear-gradient(90deg, transparent 0%, #EAEDF1 8px, transparent 8px, transparent 100%);
}
@media (max-width: 767px) {
  .webf-list-entities > .webf-entity > .webf-body {
    padding: 0.5rem 0;
  }
  .webf-list-entities > .webf-entity > .webf-body:first-child {
    border-top: 0;
  }
  .webf-list-entities > .webf-entity > .webf-body > .webf-details {
    padding: 0;
    margin-left: 0;
    background: none;
  }
  .webf-list-entities > .webf-entity > .webf-body.padding-body {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
  .webf-list-entities > .webf-entity > .webf-body > .webf-header, .webf-list-entities > .webf-entity > .webf-body > .webf-details > .webf-header {
    padding-left: 0;
    padding-right: 0.5rem;
  }
}
.webf-list-entities > .webf-entity.unfolded > .webf-header > .toggle-details {
  transform: rotate(90deg);
}
.webf-list-entities > .webf-entity.unfolded > .webf-body {
  display: block;
}
.webf-list-entities > .webf-entity.hidden-buttons > .webf-buttons-group {
  visibility: hidden;
}
.webf-list-entities > .webf-entity:hover > .webf-header > .webf-buttons-group {
  visibility: visible;
  opacity: 0.75;
}
.webf-list-entities > .webf-entity:hover > .webf-header > .webf-buttons-group .webf-button {
  border-color: #E3E7EA;
}
.webf-list-entities > .webf-entity:hover > .webf-header > .webf-buttons-group:hover {
  opacity: 1;
}
.webf-list-entities > .webf-entity.success {
  border-bottom: 1px solid #93cd7c;
}
.webf-list-entities > .webf-entity.success > .webf-header {
  background-color: #dff0d8;
  border-color: #d0e9c6;
  color: #00733e;
}
.webf-list-entities > .webf-entity.success > .webf-header:hover {
  background-color: #d0e9c6;
}
.webf-list-entities > .webf-entity.success > .webf-header > .toggle-details {
  color: #00733e;
}
.webf-list-entities > .webf-entity.success > .webf-header > .webf-buttons-group .webf-button {
  background-color: #d0e9c6;
  border-color: #a2d48f;
  color: #00733e;
}
.webf-list-entities > .webf-entity.success > .webf-header > .webf-buttons-group .webf-button:hover {
  background-color: #b2dba1;
}
.webf-list-entities > .webf-entity.success > .webf-header > .webf-buttons-group .webf-button:active, .webf-list-entities > .webf-entity.success > .webf-header > .webf-buttons-group .webf-button.webf-active, .webf-list-entities > .webf-entity.success > .webf-header > .webf-buttons-group .webf-button.webf-state-active {
  -webkit-box-shadow: inset 0px 0px 5px 2px #75be57;
  -moz-box-shadow: inset 0px 0px 5px 2px #75be57;
  box-shadow: inset 0px 0px 5px 2px #75be57;
}
.webf-list-entities > .webf-entity.danger {
  border-bottom: 1px solid #ce8383;
}
.webf-list-entities > .webf-entity.danger > .webf-header {
  background-color: #f2dede;
  border-color: #ebcccc;
  color: #a94442;
}
.webf-list-entities > .webf-entity.danger > .webf-header:hover {
  background-color: #ebcccc;
}
.webf-list-entities > .webf-entity.danger > .webf-header > .toggle-details {
  color: #a94442;
}
.webf-list-entities > .webf-entity.danger > .webf-header > .webf-buttons-group .webf-button {
  background-color: #ebcccc;
  border-color: #d59595;
  color: #a94442;
}
.webf-list-entities > .webf-entity.danger > .webf-header > .webf-buttons-group .webf-button:hover {
  background-color: #dca7a7;
}
.webf-list-entities > .webf-entity.danger > .webf-header > .webf-buttons-group .webf-button:active, .webf-list-entities > .webf-entity.danger > .webf-header > .webf-buttons-group .webf-button.webf-active, .webf-list-entities > .webf-entity.danger > .webf-header > .webf-buttons-group .webf-button.webf-state-active {
  -webkit-box-shadow: inset 0px 0px 5px 2px #c05e5e;
  -moz-box-shadow: inset 0px 0px 5px 2px #c05e5e;
  box-shadow: inset 0px 0px 5px 2px #c05e5e;
}
.webf-list-entities > .webf-entity.warning {
  border-bottom: 1px solid #f0db70;
}
.webf-list-entities > .webf-entity.warning > .webf-header {
  background-color: #fcf8e3;
  border-color: #faf2cc;
  color: #8a6d3b;
}
.webf-list-entities > .webf-entity.warning > .webf-header:hover {
  background-color: #faf2cc;
}
.webf-list-entities > .webf-entity.warning > .webf-header > .toggle-details {
  color: #8a6d3b;
}
.webf-list-entities > .webf-entity.warning > .webf-header > .webf-buttons-group .webf-button {
  background-color: #faf2cc;
  border-color: #f3e086;
  color: #8a6d3b;
}
.webf-list-entities > .webf-entity.warning > .webf-header > .webf-buttons-group .webf-button:hover {
  background-color: #f5e79e;
}
.webf-list-entities > .webf-entity.warning > .webf-header > .webf-buttons-group .webf-button:active, .webf-list-entities > .webf-entity.warning > .webf-header > .webf-buttons-group .webf-button.webf-active, .webf-list-entities > .webf-entity.warning > .webf-header > .webf-buttons-group .webf-button.webf-state-active {
  -webkit-box-shadow: inset 0px 0px 5px 2px #ebd042;
  -moz-box-shadow: inset 0px 0px 5px 2px #ebd042;
  box-shadow: inset 0px 0px 5px 2px #ebd042;
}
.webf-list-entities > .webf-entity.unfoldable > .webf-header {
  padding-left: 0;
  cursor: pointer;
}

.webf-list {
  list-style-type: none;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  display: inline-block;
  margin: 0;
  padding: 0;
  border: 1px solid #bbbbbb;
  background: #fff;
  overflow-y: auto;
  outline: none;
}
.webf-list .webf-list-item > a, .webf-list .webf-list-item > label {
  text-align: left;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
  white-space: nowrap;
  height: 27px;
  line-height: 20px;
  font-size: 0.8rem;
  padding: 3px 10px;
  border: 1px solid transparent;
  color: #555;
  text-decoration: none;
  cursor: pointer;
  margin-bottom: 0;
}
.webf-list .webf-list-item > a:hover, .webf-list .webf-list-item > label:hover {
  text-decoration: none;
}
.webf-list .webf-list-item:hover > a, .webf-list .webf-list-item.webf-focus > a, .webf-list .webf-list-item.webf-active > a {
  border-color: transparent;
  color: white;
  background-image: none;
  background-color: #4b70df;
}
.webf-list .webf-list-item.disabled > a, .webf-list .webf-list-item.disabled > label {
  color: #a2a2a2;
  background: none;
  border-color: transparent;
  cursor: default;
}
.webf-list .webf-list-item.webf-list-item-option.enabled:hover > a {
  border: 1px solid transparent;
  color: #555;
  background: none;
}
.webf-list .webf-list-item.webf-list-item-option.enabled.webf-focus > a, .webf-list .webf-list-item.webf-list-item-option.enabled.webf-focus > label {
  border-color: transparent;
  color: #555;
  background-image: none;
  background-color: whitesmoke;
}
.webf-list .webf-list-item.webf-list-item-option.enabled.webf-active > a, .webf-list .webf-list-item.webf-list-item-option.enabled.webf-active > label {
  border-color: transparent;
  color: white;
  background-image: none;
  background-color: #4b70df;
}
.webf-list .webf-list-item.webf-list-item-option.group > a {
  padding-left: 12px;
}
.webf-list .webf-list-item.webf-list-item-option strong {
  font-weight: bold;
  text-decoration: underline;
}
.webf-list .webf-list-item.webf-list-item-group > label {
  font-weight: normal;
  border-color: transparent;
  margin-bottom: 0;
  color: #4a5056;
  height: auto;
  padding: 0 0.3rem;
  background: #ededed;
  font-size: 0.65rem;
}
.webf-list .webf-list-item.webf-list-item-group:hover > label, .webf-list .webf-list-item.webf-list-item-group.webf-focus > label {
  background: #e8e8e8 !important;
  color: #41464b !important;
}
.webf-list .webf-list-item.webf-list-item-separator {
  background-color: #ddd;
  margin: 4px 0;
  height: 1px;
  font-size: 0;
}
.webf-list .webf-list-item .webf-list-item-icon {
  float: left;
  width: 20px;
  min-height: 1px;
}

.webf-md-text {
  line-height: 24px;
}
.webf-md-text, .webf-md-text.filled {
  height: 52px;
  position: relative;
  padding: 0;
  margin-bottom: 8px;
  background-color: #f5f5f5;
}
.webf-md-text .wrapper, .webf-md-text.filled .wrapper {
  height: 0;
}
.webf-md-text > label,
.webf-md-text .wrapper > label, .webf-md-text.filled > label,
.webf-md-text.filled .wrapper > label {
  font-family: Roboto, sans-serif;
  display: inline-block;
  width: 100%;
  text-align: left !important;
  position: relative;
  line-height: 16px;
  font-size: 16px;
  color: #9e9e9e;
  font-weight: 400;
  margin: 0;
  padding: 0 0 0 12px;
  transform: translateY(18px);
  height: 21px;
  overflow-y: hidden;
  word-break: break-all;
  transform-origin: left bottom;
  transition-duration: 0.3s;
  transition-property: transform, font-size, scale, padding-top, padding-left, padding-bottom, padding-right, border;
}
.webf-md-text input[type=text], .webf-md-text input[type=email], .webf-md-text input[type=date], .webf-md-text input[type=password], .webf-md-text input[type=number], .webf-md-text.filled input[type=text], .webf-md-text.filled input[type=email], .webf-md-text.filled input[type=date], .webf-md-text.filled input[type=password], .webf-md-text.filled input[type=number] {
  display: block;
  position: relative;
  width: 100%;
  background: transparent;
  line-height: 16px;
  padding: 8px 0 8px 9px;
  border: none;
  -webkit-appearance: none;
  outline: none;
  font-family: Roboto, sans-serif;
  font-size: 16px;
  height: 43px;
  transform: translateY(-18px);
  box-shadow: none;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
}
.webf-md-text.with-icons, .webf-md-text.with-left-icon, .webf-md-text.with-right-icon, .webf-md-text.filled.with-icons, .webf-md-text.filled.with-left-icon, .webf-md-text.filled.with-right-icon {
  display: flex;
}
.webf-md-text.with-icons .wrapper, .webf-md-text.with-left-icon .wrapper, .webf-md-text.with-right-icon .wrapper, .webf-md-text.filled.with-icons .wrapper, .webf-md-text.filled.with-left-icon .wrapper, .webf-md-text.filled.with-right-icon .wrapper {
  width: 100%;
}
.webf-md-text.with-icons .icon, .webf-md-text.with-left-icon .icon, .webf-md-text.with-right-icon .icon, .webf-md-text.filled.with-icons .icon, .webf-md-text.filled.with-left-icon .icon, .webf-md-text.filled.with-right-icon .icon {
  position: relative;
  height: 100%;
  padding: 10px 8px;
  background-color: transparent;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.webf-md-text.with-icons .icon > span, .webf-md-text.with-left-icon .icon > span, .webf-md-text.with-right-icon .icon > span, .webf-md-text.filled.with-icons .icon > span, .webf-md-text.filled.with-left-icon .icon > span, .webf-md-text.filled.with-right-icon .icon > span {
  white-space: nowrap;
  min-width: 20px;
  text-align: center;
}
.webf-md-text.with-icons .icon > i, .webf-md-text.with-left-icon .icon > i, .webf-md-text.with-right-icon .icon > i, .webf-md-text.filled.with-icons .icon > i, .webf-md-text.filled.with-left-icon .icon > i, .webf-md-text.filled.with-right-icon .icon > i {
  width: 20px;
}
.webf-md-text.with-icons .wrapper > label, .webf-md-text.with-left-icon .wrapper > label, .webf-md-text.filled.with-icons .wrapper > label, .webf-md-text.filled.with-left-icon .wrapper > label {
  padding-left: 0;
}
.webf-md-text.with-icons .wrapper textarea, .webf-md-text.with-icons .wrapper input[type=text], .webf-md-text.with-icons .wrapper input[type=email], .webf-md-text.with-icons .wrapper input[type=date], .webf-md-text.with-icons .wrapper input[type=password], .webf-md-text.with-icons .wrapper input[type=number], .webf-md-text.with-left-icon .wrapper textarea, .webf-md-text.with-left-icon .wrapper input[type=text], .webf-md-text.with-left-icon .wrapper input[type=email], .webf-md-text.with-left-icon .wrapper input[type=date], .webf-md-text.with-left-icon .wrapper input[type=password], .webf-md-text.with-left-icon .wrapper input[type=number], .webf-md-text.filled.with-icons .wrapper textarea, .webf-md-text.filled.with-icons .wrapper input[type=text], .webf-md-text.filled.with-icons .wrapper input[type=email], .webf-md-text.filled.with-icons .wrapper input[type=date], .webf-md-text.filled.with-icons .wrapper input[type=password], .webf-md-text.filled.with-icons .wrapper input[type=number], .webf-md-text.filled.with-left-icon .wrapper textarea, .webf-md-text.filled.with-left-icon .wrapper input[type=text], .webf-md-text.filled.with-left-icon .wrapper input[type=email], .webf-md-text.filled.with-left-icon .wrapper input[type=date], .webf-md-text.filled.with-left-icon .wrapper input[type=password], .webf-md-text.filled.with-left-icon .wrapper input[type=number] {
  padding-left: 0;
}
.webf-md-text::after, .webf-md-text::before, .webf-md-text.filled::after, .webf-md-text.filled::before {
  content: "";
  height: 2px;
  background-color: #d9d9d9;
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
}
.webf-md-text::after, .webf-md-text.filled::after {
  background-color: #4b70df;
  transform: scaleX(0);
  transition-property: transform;
  transition-duration: 0.3s;
}
.webf-md-text.is-focused > label,
.webf-md-text.is-focused .wrapper > label, .webf-md-text.filled.is-focused > label,
.webf-md-text.filled.is-focused .wrapper > label {
  transform: translateY(0) scale(80%);
  color: #4b70df;
}
.webf-md-text.is-focused::after, .webf-md-text.filled.is-focused::after {
  transform: scaleX(100%);
}
.webf-md-text.has-label > label,
.webf-md-text.has-label .wrapper > label, .webf-md-text.filled.has-label > label,
.webf-md-text.filled.has-label .wrapper > label {
  width: auto;
  transform: translateY(3px) scale(80%);
}
.webf-md-text.has-label input[type=text], .webf-md-text.has-label input[type=email], .webf-md-text.has-label input[type=date], .webf-md-text.has-label input[type=password], .webf-md-text.has-label input[type=number], .webf-md-text.filled.has-label input[type=text], .webf-md-text.filled.has-label input[type=email], .webf-md-text.filled.has-label input[type=date], .webf-md-text.filled.has-label input[type=password], .webf-md-text.filled.has-label input[type=number] {
  height: 20px;
  transform: translateY(0px);
  padding: 10px 0 17px 9px;
  top: -4px;
}
.webf-md-text.outlined {
  height: 40px;
  background-color: white;
  border: 2px solid #d9d9d9;
  border-radius: 4px;
  margin-bottom: 12px;
  transition-duration: 0.3s;
}
.webf-md-text.outlined .wrapper {
  height: 0;
}
.webf-md-text.outlined > label,
.webf-md-text.outlined > .wrapper > label {
  transform: translate(0, 10px);
}
.webf-md-text.outlined input[type=text], .webf-md-text.outlined input[type=email], .webf-md-text.outlined input[type=date], .webf-md-text.outlined input[type=password], .webf-md-text.outlined input[type=number] {
  height: 36px;
  transform: translate(0, -28px);
  box-shadow: none;
  -webkit-box-shadow: none;
}
.webf-md-text.outlined.with-icons .wrapper > label, .webf-md-text.outlined.with-left-icon .wrapper > label {
  padding-left: 0;
}
.webf-md-text.outlined.with-icons .wrapper textarea, .webf-md-text.outlined.with-icons .wrapper input[type=text], .webf-md-text.outlined.with-icons .wrapper input[type=email], .webf-md-text.outlined.with-icons .wrapper input[type=date], .webf-md-text.outlined.with-icons .wrapper input[type=password], .webf-md-text.outlined.with-icons .wrapper input[type=number], .webf-md-text.outlined.with-left-icon .wrapper textarea, .webf-md-text.outlined.with-left-icon .wrapper input[type=text], .webf-md-text.outlined.with-left-icon .wrapper input[type=email], .webf-md-text.outlined.with-left-icon .wrapper input[type=date], .webf-md-text.outlined.with-left-icon .wrapper input[type=password], .webf-md-text.outlined.with-left-icon .wrapper input[type=number] {
  padding-left: 0;
}
.webf-md-text.outlined::after, .webf-md-text.outlined::before {
  height: 0;
}
.webf-md-text.outlined.is-focused {
  border-color: #4b70df;
}
.webf-md-text.outlined.has-label > label,
.webf-md-text.outlined.has-label .wrapper > label {
  transform: translateY(-12px) scale(80%);
  display: inline-block;
  background-color: white;
  padding: 0 4px 0 4px;
  margin: 0 0 0 6px;
  height: 17px;
  overflow-y: hidden;
  word-break: break-all;
  text-overflow: ellipsis;
  width: auto;
}
.webf-md-text.outlined.has-label input[type=text], .webf-md-text.outlined.has-label input[type=email], .webf-md-text.outlined.has-label input[type=date], .webf-md-text.outlined.has-label input[type=password], .webf-md-text.outlined.has-label input[type=number] {
  height: 29px;
  transform: translateY(-13px);
  padding: 1px 0 7px 9px;
}
.webf-md-text.outlined.with-icons.has-label > label,
.webf-md-text.outlined.with-icons.has-label .wrapper > label, .webf-md-text.outlined.with-left-icon.has-label > label,
.webf-md-text.outlined.with-left-icon.has-label .wrapper > label {
  transform: translate(-36px, -11px) scale(80%);
}
.webf-md-text.has-error {
  border-color: red;
}
.webf-md-text.has-error:before, .webf-md-text.has-error:after {
  color: red;
  border-color: red;
  background-color: red;
}
.webf-md-text.has-error > label,
.webf-md-text.has-error .wrapper > label {
  color: red;
}
.webf-md-text.has-error.is-focused {
  border-color: red;
}
.webf-md-text.has-error.with-icons .icon, .webf-md-text.has-error.with-left-icon .icon, .webf-md-text.has-error.with-right-icon .icon {
  color: red;
}
.webf-md-text.has-error, .webf-md-text.has-error.filled {
  background-color: #fff0f0;
}
.webf-md-text.has-error.outlined {
  background-color: white;
}

.webf-md-textarea {
  position: relative;
  height: auto;
  background: #f5f5f5;
  margin-bottom: 10px;
  padding-bottom: 21.5px;
}
.webf-md-textarea > label,
.webf-md-textarea .wrapper > label, .webf-md-textarea.filled > label,
.webf-md-textarea.filled .wrapper > label {
  display: block;
  text-align: left !important;
  width: 100%;
  position: absolute;
  margin: 0;
  padding: 12px 12px;
  transform-origin: left center;
  transition-duration: 0.3s;
  transition-property: transform, font-size, scale, padding-top, padding-left, padding-bottom, padding-right, border;
  line-height: 16px;
  font-size: 16px;
  color: #9e9e9e;
  cursor: text;
}
.webf-md-textarea textarea, .webf-md-textarea.filled textarea {
  border: none;
  -webkit-appearance: none;
  outline: none;
  font-family: Roboto, sans-serif;
  font-size: 16px;
  background: transparent;
  position: relative;
  line-height: 20px;
  height: auto;
  width: 100%;
  border: 0;
  display: block;
  padding: 0 8px 5px 9px;
  top: 21.5px;
  box-shadow: none;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
}
.webf-md-textarea::after, .webf-md-textarea::before, .webf-md-textarea.filled::after, .webf-md-textarea.filled::before {
  content: "";
  height: 2px;
  background-color: #d9d9d9;
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
}
.webf-md-textarea.has-label > label,
.webf-md-textarea.has-label .wrapper > label, .webf-md-textarea.filled.has-label > label,
.webf-md-textarea.filled.has-label .wrapper > label {
  position: absolute;
  margin: 0;
  padding: 4px 12px;
  transform: translate(0, 0) scale(80%);
  transform-origin: left center;
  display: block;
  width: auto;
}
.webf-md-textarea.has-label textarea, .webf-md-textarea.filled.has-label textarea {
  height: calc(100% - 25px);
}
.webf-md-textarea.is-focused > label,
.webf-md-textarea.is-focused .wrapper > label, .webf-md-textarea.filled.is-focused > label,
.webf-md-textarea.filled.is-focused .wrapper > label {
  color: #4b70df;
}
.webf-md-textarea.is-focused::after, .webf-md-textarea.filled.is-focused::after {
  transform: scaleX(100%);
}
.webf-md-textarea.outlined {
  background-color: white;
  border: 2px solid #d9d9d9;
  border-radius: 4px;
  margin-bottom: 12px;
  padding-bottom: 12px;
}
.webf-md-textarea.outlined > label,
.webf-md-textarea.outlined .wrapper > label {
  transform: translate(0, 0);
  padding: 6px 12px 12px;
}
.webf-md-textarea.outlined textarea {
  top: 12px;
}
.webf-md-textarea.outlined::after, .webf-md-textarea.outlined::before {
  height: 0;
}
.webf-md-textarea.outlined.has-label > label,
.webf-md-textarea.outlined.has-label .wrapper > label {
  transform: translate(0, -12px) scale(80%);
  display: inline-block;
  background-color: white;
  padding: 3px 4px 0 4px;
  margin: 0 0 0 6px;
  height: 21px;
  overflow-y: hidden;
  word-break: break-all;
  text-overflow: ellipsis;
}

.webf-md-text.has-error, .webf-md-textarea.has-error {
  border-color: red;
}
.webf-md-text.has-error:before, .webf-md-text.has-error:after, .webf-md-textarea.has-error:before, .webf-md-textarea.has-error:after {
  color: red;
  border-color: red;
  background-color: red;
}
.webf-md-text.has-error > label,
.webf-md-text.has-error .wrapper > label, .webf-md-textarea.has-error > label,
.webf-md-textarea.has-error .wrapper > label {
  color: red;
}
.webf-md-text.has-error.is-focused, .webf-md-textarea.has-error.is-focused {
  border-color: red;
}
.webf-md-text.has-error.with-icons .icon, .webf-md-text.has-error.with-left-icon .icon, .webf-md-text.has-error.with-right-icon .icon, .webf-md-textarea.has-error.with-icons .icon, .webf-md-textarea.has-error.with-left-icon .icon, .webf-md-textarea.has-error.with-right-icon .icon {
  color: red;
}
.webf-md-text.has-error, .webf-md-text.has-error.filled, .webf-md-textarea.has-error, .webf-md-textarea.has-error.filled {
  background-color: #fff0f0;
}
.webf-md-text.has-error.outlined, .webf-md-textarea.has-error.outlined {
  background-color: white;
}
.webf-md-text.is-valid, .webf-md-textarea.is-valid {
  border-color: green;
}
.webf-md-text.is-valid:before, .webf-md-text.is-valid:after, .webf-md-textarea.is-valid:before, .webf-md-textarea.is-valid:after {
  color: green;
  border-color: green;
  background-color: green;
}
.webf-md-text.is-valid > label,
.webf-md-text.is-valid .wrapper > label, .webf-md-textarea.is-valid > label,
.webf-md-textarea.is-valid .wrapper > label {
  color: green;
}
.webf-md-text.is-valid.is-focused, .webf-md-textarea.is-valid.is-focused {
  border-color: green;
}
.webf-md-text.is-valid.with-icons .icon, .webf-md-text.is-valid.with-left-icon .icon, .webf-md-text.is-valid.with-right-icon .icon, .webf-md-textarea.is-valid.with-icons .icon, .webf-md-textarea.is-valid.with-left-icon .icon, .webf-md-textarea.is-valid.with-right-icon .icon {
  color: green;
}
.webf-md-text.is-valid, .webf-md-text.is-valid.filled, .webf-md-textarea.is-valid, .webf-md-textarea.is-valid.filled {
  background-color: #e6ffe6;
}
.webf-md-text.is-valid.outlined, .webf-md-textarea.is-valid.outlined {
  background-color: white;
}

.webf-md-list {
  font-family: Roboto, sans-serif;
  list-style-type: none;
  box-sizing: border-box;
  display: inline-block;
  margin: 0;
  padding: 0;
  border: none;
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.2), 0 1px 1px 0 rgba(0, 0, 0, 0.14), 0 2px 1px -1px rgba(0, 0, 0, 0.12);
  background: #fff;
  overflow-y: auto;
  outline: none;
}
.webf-md-list .webf-list-item > a, .webf-md-list .webf-list-item > label {
  text-align: left;
  box-sizing: border-box;
  display: block;
  white-space: nowrap;
  font-size: 1rem;
  padding: 8px 10px;
  border: 1px solid transparent;
  color: black;
  text-decoration: none;
  cursor: pointer;
  margin-bottom: 0;
  height: 38px;
}
.webf-md-list .webf-list-item > a:hover, .webf-md-list .webf-list-item > label:hover {
  text-decoration: none;
}
.webf-md-list .webf-list-item:hover > a, .webf-md-list .webf-list-item.webf-focus > a {
  border-color: transparent;
  color: #4b70df;
  background-image: none;
  background-color: #f7f7f7;
}
.webf-md-list .webf-list-item.webf-active > a {
  border-color: transparent;
  color: #4b70df;
  background-image: none;
  background-color: #f2f2f2;
}
.webf-md-list .webf-list-item.disabled > a, .webf-md-list .webf-list-item.disabled > label {
  color: #a2a2a2;
  background: none;
  border-color: transparent;
  cursor: default;
}
.webf-md-list .webf-list-item.webf-list-item-option.enabled:hover > a {
  border: 1px solid transparent;
  color: black;
  background: none;
}
.webf-md-list .webf-list-item.webf-list-item-option.enabled.webf-focus > a, .webf-md-list .webf-list-item.webf-list-item-option.enabled.webf-focus > label {
  border-color: transparent;
  color: #4b70df;
  background-image: none;
  background-color: #f7f7f7;
}
.webf-md-list .webf-list-item.webf-list-item-option.enabled.webf-active > a, .webf-md-list .webf-list-item.webf-list-item-option.enabled.webf-active > label {
  border-color: transparent;
  color: #4b70df;
  background-image: none;
  background-color: #f2f2f2;
}
.webf-md-list .webf-list-item.webf-list-item-option.group > a {
  padding-left: 12px;
}
.webf-md-list .webf-list-item.webf-list-item-option strong {
  font-weight: bold;
  text-decoration: underline;
}
.webf-md-list .webf-list-item.webf-list-item-group > label {
  font-weight: normal;
  border-color: transparent;
  margin-bottom: 0;
  color: #4a5056;
  height: auto;
  padding: 0 0.3rem;
  background: #ededed;
  font-size: 0.65rem;
}
.webf-md-list .webf-list-item.webf-list-item-group:hover > label, .webf-md-list .webf-list-item.webf-list-item-group.webf-focus > label {
  background: #f7f7f7 !important;
  color: #41464b !important;
}
.webf-md-list .webf-list-item.webf-list-item-separator {
  background-color: #ddd;
  margin: 4px 0;
  height: 1px;
  font-size: 0;
}
.webf-md-list .webf-list-item .webf-list-item-icon {
  float: left;
  width: 20px;
  min-height: 20px;
  margin-right: 8px;
}

.webf-navigation-frame-selection {
  pointer-events: none;
  position: absolute;
  top: 200px;
  left: 200px;
  width: 300px;
  height: 120px;
  background-color: rgba(0, 0, 0, 0.08);
  box-shadow: 0 0 2px 0 gray;
}

.webf-progressbar {
  text-align: left;
  overflow: hidden;
  height: 2em;
  border: 1px solid #bbbbbb;
  background: #fff;
  position: relative;
}
.webf-progressbar .inner-progress {
  position: absolute;
  top: 0px;
  left: 0px;
  height: 100%;
  font-size: 0px;
  background-image: -owg-linear-gradient(to bottom, #6e8ce5 10%, #315bda 60%);
  background-image: -webkit-linear-gradient(to bottom, #6e8ce5 10%, #315bda 60%);
  background-image: -moz-linear-gradient(to bottom, #6e8ce5 10%, #315bda 60%);
  background-image: -o-linear-gradient(to bottom, #6e8ce5 10%, #315bda 60%);
  background-image: linear-gradient(to bottom, #6e8ce5 10%, #315bda 60%);
}

.webf-radiowrapper {
  box-sizing: border-box;
  border: 1px solid #999;
  color: #999;
  display: inline-block;
  vertical-align: text-bottom;
  width: 16px;
  height: 16px;
  line-height: 16px;
  cursor: pointer;
  background-color: #fff;
  text-align: center;
  font-size: 0;
  border-radius: 8px;
}
.webf-radiowrapper.mousedown {
  background-color: #f1f1f1;
  -webkit-box-shadow: inset 0px 0px 3px 0 #ccc;
  -moz-box-shadow: inset 0px 0px 3px 0 #ccc;
  box-shadow: inset 0px 0px 3px 0 #ccc;
}
.webf-radiowrapper a.radio {
  background-position: center center;
  background-repeat: no-repeat;
  display: block;
  width: 100%;
  height: 100%;
  min-height: 1px;
}
.webf-radiowrapper.checked a.radio {
  background-image: url(/build/images/checked.1b9fab1e.png);
}
.webf-radiowrapper.disabled {
  border-color: #ddd;
}
.webf-radiowrapper.disabled.checked a.radio {
  background-image: url(/build/images/checked-disabled.47bc86a9.png);
}

.webf-resizable {
  position: relative;
}
.webf-resizable .resize-handler {
  position: absolute;
  border: 0;
  padding: 0;
  font-size: 0;
}
.webf-resizable .resize-handler.corner {
  width: 12px;
  height: 12px;
}
.webf-resizable .resize-handler.corner.nw {
  top: -6px;
  left: -6px;
  cursor: nwse-resize;
}
.webf-resizable .resize-handler.corner.ne {
  top: -6px;
  right: -6px;
  cursor: nesw-resize;
}
.webf-resizable .resize-handler.corner.se {
  bottom: -6px;
  right: -6px;
  cursor: nwse-resize;
}
.webf-resizable .resize-handler.corner.sw {
  bottom: -6px;
  left: -6px;
  cursor: nesw-resize;
}
.webf-resizable .resize-handler.border.horizontal {
  height: 12px;
  cursor: row-resize;
}
.webf-resizable .resize-handler.border.horizontal.n, .webf-resizable .resize-handler.border.horizontal.s {
  left: -6px;
  right: -6px;
}
.webf-resizable .resize-handler.border.horizontal.n {
  top: -6px;
}
.webf-resizable .resize-handler.border.horizontal.s {
  bottom: -6px;
}
.webf-resizable .resize-handler.border.vertical {
  width: 12px;
  cursor: col-resize;
}
.webf-resizable .resize-handler.border.vertical.w, .webf-resizable .resize-handler.border.vertical.e {
  top: -6px;
  bottom: -6px;
}
.webf-resizable .resize-handler.border.vertical.w {
  left: -6px;
}
.webf-resizable .resize-handler.border.vertical.e {
  right: -6px;
}

.webf-richtexteditor-color-selector {
  padding: 10px;
  background: #fff;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
  border: 1px solid #ccc;
}
.webf-richtexteditor-color-selector .palette {
  margin: 5px 0;
}
.webf-richtexteditor-color-selector .palette:not(:last-child) {
  padding-bottom: 5px;
  border-bottom: 1px solid #ddd;
}
.webf-richtexteditor-color-selector .palette table {
  width: auto;
}
.webf-richtexteditor-color-selector .palette table td a.cell {
  margin: 1px;
  border: 1px solid #fff;
  width: 16px;
  height: 16px;
  background-color: #000;
  cursor: pointer;
  display: block;
}
.webf-richtexteditor-color-selector .palette table td a.cell:hover {
  border-color: #000;
}

.webf-richtexteditor-image #btn_upload_image {
  height: auto;
}

.webf-richtexteditor-table-selector {
  background: #fff;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
  border: 1px solid silver;
  width: 250px;
}
.webf-richtexteditor-table-selector table {
  width: 100%;
  border-collapse: collapse;
}
.webf-richtexteditor-table-selector table td {
  border: 1px solid #999;
  width: 25px;
  height: 25px;
  background-color: #fff;
  cursor: pointer;
}
.webf-richtexteditor-table-selector table td.hover {
  background-color: #eaeaea;
}

.dialog-table-properties {
  width: 800px;
}
.dialog-table-properties form {
  max-height: 280px;
  overflow-x: hidden;
  overflow-y: auto;
}
.dialog-table-properties form .form-group {
  margin-top: 2px;
  margin-bottom: 2px;
}
.dialog-table-properties form .form-group input {
  text-align: right;
}
.dialog-table-properties .apercu {
  padding-top: 10px;
  max-height: 250px;
  overflow-x: auto;
  overflow-y: auto;
}
.dialog-table-properties .apercu table {
  border: 1px solid #555;
  border-collapse: collapse;
  width: 1px;
  table-layout: fixed;
}
.dialog-table-properties .apercu table td {
  border: 1px solid #555;
  height: 20px;
}

.webf-richtexteditor {
  border: 1px solid #bbbbbb;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  display: inline-block;
  font-family: "Trebuchet MS", "Helvetica Neue", Helvetica, Tahoma, sans-serif;
  font-size: 12pt;
  line-height: 22px;
  color: #555;
  background-color: white;
  outline: none;
  min-height: 40px;
}
.webf-richtexteditor .webf-richtexteditor-toolbar {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background-color: #f0f3f8;
}
.webf-richtexteditor .webf-richtexteditor-toolbar .wrap-controls {
  padding: 5px;
}
.webf-richtexteditor .webf-richtexteditor-toolbar .wrap-controls .controls {
  line-height: 11px;
}
.webf-richtexteditor .webf-richtexteditor-toolbar .wrap-controls .controls .pipe {
  margin: auto 3px;
  display: inline-block;
}
.webf-richtexteditor .webf-richtexteditor-toolbar .wrap-controls .controls .webf-dropdown {
  display: inline-block;
  width: auto;
}
.webf-richtexteditor .webf-richtexteditor-toolbar .wrap-controls .controls .webf-button {
  position: relative;
  margin-bottom: 3px;
}
.webf-richtexteditor .webf-richtexteditor-toolbar .wrap-controls .controls .webf-button label {
  display: inline-block;
  margin: 0 8px 0 0;
  text-align: left;
}
.webf-richtexteditor .webf-richtexteditor-toolbar .wrap-controls .controls .webf-button.heading label {
  min-width: 100px;
}
.webf-richtexteditor .webf-richtexteditor-toolbar .wrap-controls .controls .webf-button.fontname label {
  min-width: 150px;
}
.webf-richtexteditor .webf-richtexteditor-toolbar .wrap-controls .controls .webf-button.fontsize label {
  min-width: 50px;
}
.webf-richtexteditor .webf-richtexteditor-toolbar .wrap-controls .controls .webf-button .btn-tooltip {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  outline: none;
  cursor: pointer;
}
.webf-richtexteditor .webf-richtexteditor-toolbar .wrap-controls .controls .webf-button .webf-select-button {
  width: auto;
  position: relative;
}
.webf-richtexteditor .webf-richtexteditor-toolbar .wrap-controls .controls .webf-button .webf-select-button label {
  margin-right: 8px;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  display: block;
  width: 80px;
  text-align: left;
  cursor: pointer;
}
.webf-richtexteditor .webf-richtexteditor-toolbar .wrap-controls .controls .webf-button .webf-select-button.fontname label {
  width: 110px;
}
.webf-richtexteditor .webf-richtexteditor-toolbar .wrap-controls .controls .webf-button .webf-select-button.forecolor label {
  text-shadow: 1px 1px 1px #aaa;
  width: 15px;
}
.webf-richtexteditor .webf-richtexteditor-toolbar .wrap-controls .controls .webf-button .webf-select-button > i.webf {
  position: absolute;
  top: 6px;
  right: 6px;
}
.webf-richtexteditor .webf-richtexteditor-toolbar .wrap-controls .controls .webf-richtexteditor-list {
  max-height: 190px;
  overflow-y: auto;
}
.webf-richtexteditor .webf-richtexteditor-toolbar .wrap-controls .controls .webf-richtexteditor-list.webf-richtexteditor-fontsizepx li > a {
  width: 50px;
}
.webf-richtexteditor .webf-content {
  outline: none;
  padding: 5px 10px;
  min-height: 55px;
}
.webf-richtexteditor .webf-content.fixed-height {
  overflow-y: auto;
}
.webf-richtexteditor .webf-content .webf-table {
  border: 1px solid #ddd;
  border-collapse: collapse;
}
.webf-richtexteditor .webf-content .webf-table td {
  border: 1px solid #ddd;
  height: 24px;
  width: 100px;
}
.webf-richtexteditor .webf-content ol, .webf-richtexteditor .webf-content ul {
  margin: 0 0 16px 0;
  padding: 0 0 0 30px;
}
.webf-richtexteditor .webf-content ul {
  list-style-type: disc;
}
.webf-richtexteditor .webf-content img {
  max-width: 100%;
}

.webf-richtexteditor-tooltip .text {
  color: #eee;
  font-size: 13px;
  font-family: helvetica, arial, sans-serif;
  font-weight: bold;
  background: #333;
  padding: 3px 10px;
}
.webf-richtexteditor-tooltip .triangle {
  width: 7px;
  height: 5px;
  margin: auto;
  background: transparent url(/build/images/triangle-inverse.91aaa3bb.png);
}

.webf-richtexteditor-dialog .webf-checkboxwrapper {
  margin-top: 8px;
}

.webf-scrollbox-wrapper {
  height: 100%;
  width: 100%;
  overflow: hidden;
  position: relative;
}
.webf-scrollbox-wrapper > .webf-scrollbox-container {
  overflow: hidden;
  position: absolute;
}
.webf-scrollbox-wrapper > .webf-scrollbar {
  position: absolute;
  -webkit-border-radius: 7px;
  -moz-border-radius: 7px;
  -ms-border-radius: 7px;
  -o-border-radius: 7px;
  border-radius: 7px;
  -webkit-transition-property: opacity;
  -moz-transition-property: opacity;
  -o-transition-property: opacity;
  transition-property: opacity;
  -webkit-transition-duration: 0.2s;
  -moz-transition-duration: 0.2s;
  -o-transition-duration: 0.2s;
  transition-duration: 0.2s;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
}
.webf-scrollbox-wrapper > .webf-scrollbar.x, .webf-scrollbox-wrapper > .webf-scrollbar.y {
  background-color: #eee;
}
.webf-scrollbox-wrapper > .webf-scrollbar.x .handler, .webf-scrollbox-wrapper > .webf-scrollbar.y .handler {
  position: absolute;
  top: 0;
  left: 0;
  background-color: #bbbbbb;
  -webkit-border-radius: 7px;
  -moz-border-radius: 7px;
  -ms-border-radius: 7px;
  -o-border-radius: 7px;
  border-radius: 7px;
}
.webf-scrollbox-wrapper > .webf-scrollbar.x .handler:hover, .webf-scrollbox-wrapper > .webf-scrollbar.y .handler:hover {
  background-color: #959595;
}
.webf-scrollbox-wrapper > .webf-scrollbar.x:hover, .webf-scrollbox-wrapper > .webf-scrollbar.y:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}
.webf-scrollbox-wrapper > .webf-scrollbar.x.webf-invisible, .webf-scrollbox-wrapper > .webf-scrollbar.y.webf-invisible {
  visibility: hidden;
}
.webf-scrollbox-wrapper > .webf-scrollbar.x {
  bottom: 0;
  left: 0;
  height: 14px;
  width: 100%;
}
.webf-scrollbox-wrapper > .webf-scrollbar.x .handler {
  height: 100%;
}
.webf-scrollbox-wrapper > .webf-scrollbar.y {
  top: 0;
  right: 0;
  width: 14px;
  height: 100%;
}
.webf-scrollbox-wrapper > .webf-scrollbar.y .handler {
  width: 100%;
}
.webf-scrollbox-wrapper:hover .webf-scrollbar, .webf-scrollbox-wrapper.dragging .webf-scrollbar {
  display: block;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=40);
  opacity: 0.4;
}
.webf-scrollbox-wrapper.dragging-x .webf-scrollbar.x .handler {
  background-color: #959595;
}
.webf-scrollbox-wrapper.dragging-y .webf-scrollbar.y .handler {
  background-color: #959595;
}

.webf-select {
  display: inline-block;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  cursor: pointer;
  padding: 3px 0 3px 8px;
  border: 1px solid gainsboro;
  background-color: #fff;
  background-image: -owg-linear-gradient(#ffffff 0%, #eeeeee 100%);
  background-image: -webkit-linear-gradient(#ffffff 0%, #eeeeee 100%);
  background-image: -moz-linear-gradient(#ffffff 0%, #eeeeee 100%);
  background-image: -o-linear-gradient(#ffffff 0%, #eeeeee 100%);
  background-image: linear-gradient(#ffffff 0%, #eeeeee 100%);
  line-height: 17px;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  vertical-align: middle;
  width: 100%;
}
.webf-select.open {
  background-image: -owg-linear-gradient(#eeeeee 0%, #ffffff 100%);
  background-image: -webkit-linear-gradient(#eeeeee 0%, #ffffff 100%);
  background-image: -moz-linear-gradient(#eeeeee 0%, #ffffff 100%);
  background-image: -o-linear-gradient(#eeeeee 0%, #ffffff 100%);
  background-image: linear-gradient(#eeeeee 0%, #ffffff 100%);
  -webkit-box-shadow: rgba(0, 0, 0, 0.175) 0 3px 3px;
  -moz-box-shadow: rgba(0, 0, 0, 0.175) 0 3px 3px;
  box-shadow: rgba(0, 0, 0, 0.175) 0 3px 3px;
}
.webf-select .select {
  color: #555;
  font-size: 0.8rem;
}
.webf-select .select .selected-area {
  text-decoration: none;
  display: block;
  margin-right: 4px;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  color: inherit;
}
.webf-select .select .handle-down {
  display: inline-block;
  vertical-align: middle;
  padding: 2px 5px;
  font-size: 13px;
  float: right;
}

.webf-dropdown .webf-dropdown-menu.webf-select-drop {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid gainsboro;
  border-top: 0;
  background-color: #fff;
  width: 100%;
  margin-top: -1px;
  -webkit-box-shadow: rgba(0, 0, 0, 0.175) 0 3px 3px;
  -moz-box-shadow: rgba(0, 0, 0, 0.175) 0 3px 3px;
  box-shadow: rgba(0, 0, 0, 0.175) 0 3px 3px;
}
.webf-dropdown .webf-dropdown-menu.webf-select-drop.multiple {
  display: inline-block;
  border-top: 1px solid #bbbbbb;
}
.webf-dropdown .webf-dropdown-menu.webf-select-drop.checkable > .webf-list.options {
  padding: 0;
  margin: 0;
}
.webf-dropdown .webf-dropdown-menu.webf-select-drop.checkable > .webf-list.options li.webf-list-item-option {
  position: relative;
}
.webf-dropdown .webf-dropdown-menu.webf-select-drop.checkable > .webf-list.options li.webf-list-item-option.selected > a, .webf-dropdown .webf-dropdown-menu.webf-select-drop.checkable > .webf-list.options li.webf-list-item-option.selected > label {
  color: #4b70df;
}
.webf-dropdown .webf-dropdown-menu.webf-select-drop.checkable > .webf-list.options li.webf-list-item-option.selected .webf-checkboxwrapper.checked a.checkbox {
  color: #7692e7;
}
.webf-dropdown .webf-dropdown-menu.webf-select-drop.checkable > .webf-list.options li.webf-list-item-option > a, .webf-dropdown .webf-dropdown-menu.webf-select-drop.checkable > .webf-list.options li.webf-list-item-option > label {
  display: block;
  padding-left: 28px !important;
  border: 0;
}
.webf-dropdown .webf-dropdown-menu.webf-select-drop.checkable > .webf-list.options li.webf-list-item-option.enabled > a:hover,
.webf-dropdown .webf-dropdown-menu.webf-select-drop.checkable > .webf-list.options li.webf-list-item-option.enabled > label:hover {
  color: #4b70df;
}
.webf-dropdown .webf-dropdown-menu.webf-select-drop.checkable > .webf-list.options li.webf-list-item-option .webf-checkboxwrapper {
  position: absolute;
  top: 5px;
  left: 6px;
}
.webf-dropdown .webf-dropdown-menu.webf-select-drop.checkable > .webf-list.options li.webf-list-item-option .webf-checkboxwrapper.checked a.checkbox {
  color: #aaa;
}
.webf-dropdown .webf-dropdown-menu.webf-select-drop.checkable > .webf-list.options li.webf-list-item-option:hover .webf-checkboxwrapper.checked a.checkbox {
  color: #7692e7;
}
.webf-dropdown .webf-dropdown-menu.webf-select-drop > .filter {
  padding: 6px 8px;
  position: relative;
}
.webf-dropdown .webf-dropdown-menu.webf-select-drop > .filter label {
  display: block;
  position: relative;
  margin: 0;
}
.webf-dropdown .webf-dropdown-menu.webf-select-drop > .filter label .search {
  line-height: initial;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  font-family: Roboto, "Lucida Grande", verdana, sans-serif;
  font-size: 14px;
  color: #555555;
  background-color: #fff;
  border: 1px solid gainsboro;
  padding: 8px 30px 8px 4px;
  width: 100%;
  outline: none;
}
.webf-dropdown .webf-dropdown-menu.webf-select-drop > .filter label .icon-search {
  position: absolute;
  color: #a0aabb;
  top: 8px;
  right: 10px;
  font-size: 16px;
}
.webf-dropdown .webf-dropdown-menu.webf-select-drop > ul.options {
  position: relative;
  max-height: 220px;
  overflow-x: hidden;
  overflow-y: auto;
  width: 100%;
  border: 0;
  padding-left: 0;
  padding-right: 0;
  margin: 0;
}
.webf-dropdown .webf-dropdown-menu.webf-select-drop .webf-item-hidden {
  display: none;
}

.webf-select-drop {
  max-height: 270px;
  overflow-y: auto;
}
.webf-select-drop.multiple {
  overflow-x: auto;
  border: 1px solid #BBB;
  line-height: 0;
}
.webf-select-drop.multiple .webf-list {
  border: 0;
}
.webf-select-drop.multiple > ul {
  min-width: 100%;
  width: auto;
}
.webf-select-drop .webf-checkboxwrapper .checkbox {
  padding: 0;
  min-height: auto;
}

.webf-dropdown.webf-md-select.open, .webf-dropdown.webf-md-select.filled.open {
  margin-bottom: 0;
}
.webf-dropdown.webf-md-select .webf-select-drop, .webf-dropdown.webf-md-select.filled .webf-select-drop {
  margin-top: -8px;
}
.webf-dropdown.webf-md-select.outlined .webf-select-drop {
  margin-top: -12px;
}
.webf-dropdown.webf-md-select .webf-md-text input[type=text] {
  cursor: default;
}
.webf-dropdown.webf-md-select .webf-md-list {
  display: block;
  box-shadow: none;
}
.webf-dropdown.webf-md-select .webf-md-list .webf-list-item.webf-active.webf-focus > a {
  border-color: transparent;
  color: #4b70df;
  background-image: none;
  background-color: #e6e6e6;
}

.webf-slider {
  background: #ddd;
  border: 1px solid #ddd;
  position: relative;
  border-radius: 0.55rem;
}
.webf-slider > a.handler {
  display: flex;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  position: absolute;
  width: 1.8rem;
  height: 1.8rem;
  background: transparent;
  border: 2px solid transparent;
  outline: none;
  border-radius: 50%;
  cursor: pointer;
}
.webf-slider > a.handler .inner-handler {
  border-radius: 50%;
  width: 1.2rem;
  height: 1.2rem;
  background-color: #565a5f;
}
.webf-slider > a.handler:hover .inner-handler {
  background: #4b70df;
}
.webf-slider > a.handler.webf-slider-focus {
  border-color: #4b70df;
}
.webf-slider.horizontal {
  height: 0.55rem;
}
.webf-slider.horizontal > a.handler {
  top: -0.625rem;
  left: 0;
  margin-top: -1px;
  margin-left: -0.9rem;
  margin-right: -0.9rem;
}
.webf-slider.vertical {
  width: 0.55rem;
  height: 150px;
}
.webf-slider.vertical > a.handler {
  left: -0.625rem;
  bottom: 0;
  margin-left: -1px;
  margin-top: -0.9rem;
  margin-bottom: -0.9rem;
}

.webf-sortable-ghost {
  visibility: hidden !important;
}

.webf-sortable-clone {
  position: fixed !important;
  z-index: 100000 !important;
  pointer-events: none !important;
  margin: 0 !important;
}

.list-sortable .webf-entity {
  background-color: #fff;
}

.list-sortable.webf-sortable-droppable {
  min-height: 50px;
  border: 1px solid #4b70df;
  background-color: #b7c6f2;
}

.webf-spinner {
  display: table;
}
.webf-spinner .webf-input-spinner {
  display: table-cell;
  height: 100%;
  padding: 4px 12px;
  width: 100%;
}
.webf-spinner .webf-spinner-buttons {
  display: table-cell;
  width: 1%;
  height: 100%;
  padding: 0 16px;
  position: relative;
  background-color: #eee;
  border: 1px solid #c0c0c0;
}
.webf-spinner .webf-spinner-buttons .webf-spin-btn {
  display: block;
  text-align: center;
  text-decoration: none;
  color: #333;
  align-items: center;
  justify-content: center;
}
.webf-spinner .webf-spinner-buttons .webf-spin-btn.up, .webf-spinner .webf-spinner-buttons .webf-spin-btn.down {
  position: absolute;
  left: 0;
  display: flex;
  cursor: pointer;
}
.webf-spinner .webf-spinner-buttons .webf-spin-btn.up i.webf, .webf-spinner .webf-spinner-buttons .webf-spin-btn.down i.webf {
  margin: auto;
}
.webf-spinner .webf-spinner-buttons .webf-spin-btn.up:hover, .webf-spinner .webf-spinner-buttons .webf-spin-btn.down:hover {
  background-color: #dfdfdf;
}
.webf-spinner .webf-spinner-buttons .webf-spin-btn.up {
  top: 0;
  bottom: 50%;
  width: 100%;
  border-bottom: 1px solid #d0d0d0;
}
.webf-spinner .webf-spinner-buttons .webf-spin-btn.up i.webf {
  vertical-align: top;
}
.webf-spinner .webf-spinner-buttons .webf-spin-btn.down {
  top: 50%;
  bottom: 0;
  width: 100%;
  border-top: 1px solid #dadada;
}
.webf-spinner .webf-spinner-buttons .webf-spin-btn.down i.webf {
  vertical-align: top;
}
.webf-spinner .webf-spinner-buttons.left {
  border-right: 0;
}
.webf-spinner .webf-spinner-buttons.right {
  border-left: 0;
}
.webf-spinner .webf-spinner-buttons.alone .webf-spin-btn.up, .webf-spinner .webf-spinner-buttons.alone .webf-spin-btn.down {
  top: 0;
  bottom: 0;
  border-top: 0;
  border-bottom: 0;
}

.webf-stickybar {
  display: none;
  position: fixed;
  width: 100%;
  height: 40px;
  line-height: 40px;
  left: 0;
  bottom: 0;
  background: #f8f8f8;
  text-align: center;
  font-size: 0;
  box-shadow: 0px -1px 5px rgba(0, 0, 0, 0.3);
}
.webf-stickybar.visible {
  display: block;
}
.webf-stickybar .webf-sticky-button {
  font-size: 13px;
  margin: 0 3px;
}

@inport "compass";
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style {
  display: block;
  overflow: hidden;
  *zoom: 1;
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-default {
  background-color: white;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-default > li.webf-tab {
  border: 1px solid white;
  border-bottom-width: 0;
  background-color: white;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-default > li.webf-tab > a {
  background-color: white;
  color: #555;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-default > li.webf-tab.webf-tab-active > a {
  background-color: white;
  color: white;
  text-shadow: none;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-primary {
  background-color: #4b70df;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-primary > li.webf-tab {
  border: 1px solid #4b70df;
  border-bottom-width: 0;
  background-color: white;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-primary > li.webf-tab > a {
  background-color: #4b70df;
  color: white;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-primary > li.webf-tab.webf-tab-active > a {
  background-color: white;
  color: #4b70df;
  text-shadow: none;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-secondary {
  background-color: #f0f3f8;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-secondary > li.webf-tab {
  border: 1px solid #f0f3f8;
  border-bottom-width: 0;
  background-color: white;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-secondary > li.webf-tab > a {
  background-color: #f0f3f8;
  color: #555;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-secondary > li.webf-tab.webf-tab-active > a {
  background-color: white;
  color: #f0f3f8;
  text-shadow: none;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-custom {
  background-color: #fff;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-custom > li.webf-tab {
  border: 1px solid #fff;
  border-bottom-width: 0;
  background-color: white;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-custom > li.webf-tab > a {
  background-color: #fff;
  color: #555;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-custom > li.webf-tab.webf-tab-active > a {
  background-color: white;
  color: #fff;
  text-shadow: none;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-light {
  background-color: #f0f3f8;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-light > li.webf-tab {
  border: 1px solid #f0f3f8;
  border-bottom-width: 0;
  background-color: white;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-light > li.webf-tab > a {
  background-color: #f0f3f8;
  color: #555;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-light > li.webf-tab.webf-tab-active > a {
  background-color: white;
  color: #f0f3f8;
  text-shadow: none;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-dark {
  background-color: #555;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-dark > li.webf-tab {
  border: 1px solid #555;
  border-bottom-width: 0;
  background-color: white;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-dark > li.webf-tab > a {
  background-color: #555;
  color: white;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-dark > li.webf-tab.webf-tab-active > a {
  background-color: white;
  color: #555;
  text-shadow: none;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-action {
  background-color: #e44982;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-action > li.webf-tab {
  border: 1px solid #e44982;
  border-bottom-width: 0;
  background-color: white;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-action > li.webf-tab > a {
  background-color: #e44982;
  color: white;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-action > li.webf-tab.webf-tab-active > a {
  background-color: white;
  color: #e44982;
  text-shadow: none;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-info {
  background-color: #4dbbe2;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-info > li.webf-tab {
  border: 1px solid #4dbbe2;
  border-bottom-width: 0;
  background-color: white;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-info > li.webf-tab > a {
  background-color: #4dbbe2;
  color: white;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-info > li.webf-tab.webf-tab-active > a {
  background-color: white;
  color: #4dbbe2;
  text-shadow: none;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-success {
  background-color: #66BB6A;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-success > li.webf-tab {
  border: 1px solid #66BB6A;
  border-bottom-width: 0;
  background-color: white;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-success > li.webf-tab > a {
  background-color: #66BB6A;
  color: white;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-success > li.webf-tab.webf-tab-active > a {
  background-color: white;
  color: #66BB6A;
  text-shadow: none;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-warning {
  background-color: #f6b74d;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-warning > li.webf-tab {
  border: 1px solid #f6b74d;
  border-bottom-width: 0;
  background-color: white;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-warning > li.webf-tab > a {
  background-color: #f6b74d;
  color: white;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-warning > li.webf-tab.webf-tab-active > a {
  background-color: white;
  color: #f6b74d;
  text-shadow: none;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-danger {
  background-color: #ed5655;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-danger > li.webf-tab {
  border: 1px solid #ed5655;
  border-bottom-width: 0;
  background-color: white;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-danger > li.webf-tab > a {
  background-color: #ed5655;
  color: white;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-danger > li.webf-tab.webf-tab-active > a {
  background-color: white;
  color: #ed5655;
  text-shadow: none;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-lightgrey {
  background-color: #f5f5f5;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-lightgrey > li.webf-tab {
  border: 1px solid #f5f5f5;
  border-bottom-width: 0;
  background-color: white;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-lightgrey > li.webf-tab > a {
  background-color: #f5f5f5;
  color: #555;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style.webf-tabs-lightgrey > li.webf-tab.webf-tab-active > a {
  background-color: white;
  color: #3c3c3c;
  text-shadow: none;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style > li.webf-tab {
  float: left;
  background-color: white;
  font-size: 14px;
  font-weight: bold;
}
.webf-tabs-wrapper.webf-horizontal > .webf-tabs.webf-style > li.webf-tab > a {
  text-decoration: none;
  display: inline-block;
  padding: 7px 10px;
}
.webf-tabs-wrapper.webf-horizontal > .webf-panels > .webf-panel.webf-style {
  padding: 10px;
  border-width: 1px;
  border-style: solid;
  border-top: 0;
  background-color: white;
}
.webf-tabs-wrapper.webf-horizontal > .webf-panels > .webf-panel.webf-style.webf-panel-default {
  border-color: white;
}
.webf-tabs-wrapper.webf-horizontal > .webf-panels > .webf-panel.webf-style.webf-panel-primary {
  border-color: #4b70df;
}
.webf-tabs-wrapper.webf-horizontal > .webf-panels > .webf-panel.webf-style.webf-panel-secondary {
  border-color: #f0f3f8;
}
.webf-tabs-wrapper.webf-horizontal > .webf-panels > .webf-panel.webf-style.webf-panel-custom {
  border-color: #fff;
}
.webf-tabs-wrapper.webf-horizontal > .webf-panels > .webf-panel.webf-style.webf-panel-light {
  border-color: #f0f3f8;
}
.webf-tabs-wrapper.webf-horizontal > .webf-panels > .webf-panel.webf-style.webf-panel-dark {
  border-color: #555;
}
.webf-tabs-wrapper.webf-horizontal > .webf-panels > .webf-panel.webf-style.webf-panel-action {
  border-color: #e44982;
}
.webf-tabs-wrapper.webf-horizontal > .webf-panels > .webf-panel.webf-style.webf-panel-info {
  border-color: #4dbbe2;
}
.webf-tabs-wrapper.webf-horizontal > .webf-panels > .webf-panel.webf-style.webf-panel-success {
  border-color: #66BB6A;
}
.webf-tabs-wrapper.webf-horizontal > .webf-panels > .webf-panel.webf-style.webf-panel-warning {
  border-color: #f6b74d;
}
.webf-tabs-wrapper.webf-horizontal > .webf-panels > .webf-panel.webf-style.webf-panel-danger {
  border-color: #ed5655;
}
.webf-tabs-wrapper.webf-horizontal > .webf-panels > .webf-panel.webf-style.webf-panel-lightgrey {
  border-color: #f5f5f5;
}
.webf-tabs-wrapper.webf-vertical {
  display: flex;
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style {
  display: block;
  overflow: hidden;
  *zoom: 1;
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-default > li.webf-tab {
  border: 1px solid white;
  border-right: 0;
  background-color: white;
  text-align: right;
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-default > li.webf-tab > a {
  display: block;
  background-color: white;
  color: #555;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-default > li.webf-tab.webf-tab-active > a {
  background-color: white;
  color: white;
  text-shadow: none;
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-primary > li.webf-tab {
  border: 1px solid #4b70df;
  border-right: 0;
  background-color: white;
  text-align: right;
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-primary > li.webf-tab > a {
  display: block;
  background-color: #4b70df;
  color: white;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-primary > li.webf-tab.webf-tab-active > a {
  background-color: white;
  color: #4b70df;
  text-shadow: none;
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-secondary > li.webf-tab {
  border: 1px solid #f0f3f8;
  border-right: 0;
  background-color: white;
  text-align: right;
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-secondary > li.webf-tab > a {
  display: block;
  background-color: #f0f3f8;
  color: #555;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-secondary > li.webf-tab.webf-tab-active > a {
  background-color: white;
  color: #f0f3f8;
  text-shadow: none;
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-custom > li.webf-tab {
  border: 1px solid #fff;
  border-right: 0;
  background-color: white;
  text-align: right;
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-custom > li.webf-tab > a {
  display: block;
  background-color: #fff;
  color: #555;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-custom > li.webf-tab.webf-tab-active > a {
  background-color: white;
  color: #fff;
  text-shadow: none;
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-light > li.webf-tab {
  border: 1px solid #f0f3f8;
  border-right: 0;
  background-color: white;
  text-align: right;
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-light > li.webf-tab > a {
  display: block;
  background-color: #f0f3f8;
  color: #555;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-light > li.webf-tab.webf-tab-active > a {
  background-color: white;
  color: #f0f3f8;
  text-shadow: none;
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-dark > li.webf-tab {
  border: 1px solid #555;
  border-right: 0;
  background-color: white;
  text-align: right;
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-dark > li.webf-tab > a {
  display: block;
  background-color: #555;
  color: white;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-dark > li.webf-tab.webf-tab-active > a {
  background-color: white;
  color: #555;
  text-shadow: none;
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-action > li.webf-tab {
  border: 1px solid #e44982;
  border-right: 0;
  background-color: white;
  text-align: right;
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-action > li.webf-tab > a {
  display: block;
  background-color: #e44982;
  color: white;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-action > li.webf-tab.webf-tab-active > a {
  background-color: white;
  color: #e44982;
  text-shadow: none;
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-info > li.webf-tab {
  border: 1px solid #4dbbe2;
  border-right: 0;
  background-color: white;
  text-align: right;
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-info > li.webf-tab > a {
  display: block;
  background-color: #4dbbe2;
  color: white;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-info > li.webf-tab.webf-tab-active > a {
  background-color: white;
  color: #4dbbe2;
  text-shadow: none;
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-success > li.webf-tab {
  border: 1px solid #66BB6A;
  border-right: 0;
  background-color: white;
  text-align: right;
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-success > li.webf-tab > a {
  display: block;
  background-color: #66BB6A;
  color: white;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-success > li.webf-tab.webf-tab-active > a {
  background-color: white;
  color: #66BB6A;
  text-shadow: none;
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-warning > li.webf-tab {
  border: 1px solid #f6b74d;
  border-right: 0;
  background-color: white;
  text-align: right;
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-warning > li.webf-tab > a {
  display: block;
  background-color: #f6b74d;
  color: white;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-warning > li.webf-tab.webf-tab-active > a {
  background-color: white;
  color: #f6b74d;
  text-shadow: none;
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-danger > li.webf-tab {
  border: 1px solid #ed5655;
  border-right: 0;
  background-color: white;
  text-align: right;
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-danger > li.webf-tab > a {
  display: block;
  background-color: #ed5655;
  color: white;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-danger > li.webf-tab.webf-tab-active > a {
  background-color: white;
  color: #ed5655;
  text-shadow: none;
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-lightgrey > li.webf-tab {
  border: 1px solid #f5f5f5;
  border-right: 0;
  background-color: white;
  text-align: right;
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-lightgrey > li.webf-tab > a {
  display: block;
  background-color: #f5f5f5;
  color: #555;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style.webf-tabs-lightgrey > li.webf-tab.webf-tab-active > a {
  background-color: white;
  color: #3c3c3c;
  text-shadow: none;
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style > li.webf-tab {
  background-color: white;
  font-size: 14px;
  font-weight: bold;
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style > li.webf-tab > a {
  text-decoration: none;
  display: inline-block;
  padding: 7px 10px;
}
.webf-tabs-wrapper.webf-vertical > .webf-tabs.webf-style {
  flex: 1;
}
.webf-tabs-wrapper.webf-vertical > .webf-panels {
  flex: 4;
}
.webf-tabs-wrapper.webf-vertical > .webf-panels > .webf-panel.webf-style {
  padding: 10px;
  border: 0;
  background-color: white;
}
.webf-tabs-wrapper .webf-tab-accordion {
  display: none;
  background-color: white;
  font-size: 14px;
  font-weight: bold;
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-default {
  border: 1px solid white;
  background-color: white;
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-default > a {
  background-color: white;
  color: #555;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-default.webf-tab-active > a {
  background-color: white;
  color: white;
  text-shadow: none;
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-primary {
  border: 1px solid #4b70df;
  background-color: white;
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-primary > a {
  background-color: #4b70df;
  color: white;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-primary.webf-tab-active > a {
  background-color: white;
  color: #4b70df;
  text-shadow: none;
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-secondary {
  border: 1px solid #f0f3f8;
  background-color: white;
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-secondary > a {
  background-color: #f0f3f8;
  color: #555;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-secondary.webf-tab-active > a {
  background-color: white;
  color: #f0f3f8;
  text-shadow: none;
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-custom {
  border: 1px solid #fff;
  background-color: white;
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-custom > a {
  background-color: #fff;
  color: #555;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-custom.webf-tab-active > a {
  background-color: white;
  color: #fff;
  text-shadow: none;
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-light {
  border: 1px solid #f0f3f8;
  background-color: white;
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-light > a {
  background-color: #f0f3f8;
  color: #555;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-light.webf-tab-active > a {
  background-color: white;
  color: #f0f3f8;
  text-shadow: none;
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-dark {
  border: 1px solid #555;
  background-color: white;
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-dark > a {
  background-color: #555;
  color: white;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-dark.webf-tab-active > a {
  background-color: white;
  color: #555;
  text-shadow: none;
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-action {
  border: 1px solid #e44982;
  background-color: white;
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-action > a {
  background-color: #e44982;
  color: white;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-action.webf-tab-active > a {
  background-color: white;
  color: #e44982;
  text-shadow: none;
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-info {
  border: 1px solid #4dbbe2;
  background-color: white;
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-info > a {
  background-color: #4dbbe2;
  color: white;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-info.webf-tab-active > a {
  background-color: white;
  color: #4dbbe2;
  text-shadow: none;
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-success {
  border: 1px solid #66BB6A;
  background-color: white;
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-success > a {
  background-color: #66BB6A;
  color: white;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-success.webf-tab-active > a {
  background-color: white;
  color: #66BB6A;
  text-shadow: none;
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-warning {
  border: 1px solid #f6b74d;
  background-color: white;
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-warning > a {
  background-color: #f6b74d;
  color: white;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-warning.webf-tab-active > a {
  background-color: white;
  color: #f6b74d;
  text-shadow: none;
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-danger {
  border: 1px solid #ed5655;
  background-color: white;
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-danger > a {
  background-color: #ed5655;
  color: white;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-danger.webf-tab-active > a {
  background-color: white;
  color: #ed5655;
  text-shadow: none;
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-lightgrey {
  border: 1px solid #f5f5f5;
  background-color: white;
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-lightgrey > a {
  background-color: #f5f5f5;
  color: #555;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
}
.webf-tabs-wrapper .webf-tab-accordion.webf-tab-lightgrey.webf-tab-active > a {
  background-color: white;
  color: #3c3c3c;
  text-shadow: none;
}
.webf-tabs-wrapper .webf-tab-accordion > a {
  text-decoration: none;
  display: block;
  padding: 7px 12px;
}
.webf-tabs-wrapper .webf-tab-accordion:not(:first-of-type) {
  border-top: 0;
}
.webf-tabs-wrapper .webf-tab-accordion:not(:last-of-type) {
  border-bottom: 0;
}
.webf-tabs-wrapper .webf-tab-accordion:not(:first-of-type):not(:last-of-type) {
  border-top: 0;
  border-bottom: 0;
}

.webf-tagsinput {
  display: inline-block;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  color: #555;
  background-color: #fff;
  border: 1px solid #bbbbbb;
  padding: 3px 6px;
  line-height: 22px;
  font-size: 13px;
  width: 100%;
  max-width: 100%;
  vertical-align: middle;
  cursor: text;
  outline: none;
  -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1) inset;
  -moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1) inset;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1) inset;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
  border-radius: 2px;
}
.webf-tagsinput > .webf-tag {
  background-color: #4b70df;
  margin: 0 4px 0 0;
  color: white;
  display: inline-block;
  padding: 5px;
  font-size: 11.5px;
  line-height: 10px;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
}
.webf-tagsinput > .webf-tag:focus {
  background-color: #2146b8;
  outline: none;
}
.webf-tagsinput > .webf-tag .remove {
  margin-left: 7px;
  cursor: pointer;
  font-size: 10px;
}
.webf-tagsinput input.webf-tagsinput-text {
  border: none;
  box-shadow: none;
  outline: none;
  font-size: 13px;
  background-color: transparent;
  margin: 0;
  padding: 2px 0;
  max-width: inherit;
}
.webf-tagsinput input.webf-tagsinput-text.empty {
  width: 100%;
}

.wrapper-webf-textarea {
  display: inline-block;
  line-height: 1px;
}

.webf-textarea {
  border: 0 none white !important;
  overflow: hidden;
  padding: 0 !important;
  outline: none !important;
  background-color: transparent !important;
  resize: none !important;
  box-shadow: none !important;
}

.webf-simple-line {
  height: auto !important;
}

.webf-textarea-mirror {
  min-height: auto !important;
}

.webf-timepicker {
  border: 1px solid #bbbbbb;
  background-color: #fff;
  -webkit-box-shadow: rgba(0, 0, 0, 0.175) 2px 3px 3px;
  -moz-box-shadow: rgba(0, 0, 0, 0.175) 2px 3px 3px;
  box-shadow: rgba(0, 0, 0, 0.175) 2px 3px 3px;
}
.webf-timepicker * {
  box-sizing: border-box;
}
.webf-timepicker table {
  padding: 3px 5px;
}
.webf-timepicker table tr td {
  height: 30px;
  padding: 0 4px;
  text-align: center;
}
.webf-timepicker table tr td input[type=text] {
  display: inline-block;
  color: #555555;
  font-size: 13px;
  height: 26px;
  line-height: 18px;
  margin: 0;
  text-align: center;
  width: 35px;
}
.webf-timepicker table tr td a {
  display: inline-block;
  font-size: 19px;
  color: black;
  width: 35px;
  padding: 7px 0;
  border: 1px solid transparent;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  border-radius: 4px;
}
.webf-timepicker table tr td a:hover {
  background: #eee;
  border-color: #bbbbbb;
}
.webf-timepicker table tr td a.up {
  cursor: n-resize;
}
.webf-timepicker table tr td a.down {
  cursor: s-resize;
}
.webf-timepicker table tr td.td-seconds, .webf-timepicker table tr td.time-separator.minutes-seconds, .webf-timepicker table tr td.td-meridian, .webf-timepicker table tr td.time-separator.meridian {
  display: none;
}
.webf-timepicker.show-seconds table tr td.td-seconds,
.webf-timepicker.show-seconds table tr td.time-separator.minutes-seconds {
  display: table-cell;
}
.webf-timepicker.show-meridian table tr td.td-meridian,
.webf-timepicker.show-meridian table tr td.time-separator.meridian {
  display: table-cell;
}

.webf-dialog.webf-dialog-timepicker {
  width: auto;
}
.webf-dialog.webf-dialog-timepicker .webf-timepicker {
  border: 0;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}
.webf-dialog.webf-dialog-timepicker .webf-timepicker table tr td {
  padding: 0 8px;
}
.webf-dialog.webf-dialog-timepicker .webf-timepicker table tr td input[type=text] {
  width: 40px;
}

.webf-toast-overlay {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background-color: #333;
  opacity: 0.3;
  -webkit-transition: 200ms;
  -moz-transition: 200ms;
  -o-transition: 200ms;
  transition: 200ms;
}
.webf-toast-overlay.webf-enter {
  -webkit-transition: none;
  -moz-transition: none;
  -o-transition: none;
  transition: none;
  opacity: 0;
}
.webf-toast-overlay.webf-leave {
  opacity: 0;
}

.webf-toast {
  position: absolute;
  padding: 5px 10px;
  color: #ddd;
  background-color: #333;
  -webkit-box-shadow: 1px 1px 2px 0px rgb(50, 50, 50);
  -moz-box-shadow: 1px 1px 2px 0px rgb(50, 50, 50);
  box-shadow: 1px 1px 2px 0px rgb(50, 50, 50);
  -webkit-transition: 200ms;
  -moz-transition: 200ms;
  -o-transition: 200ms;
  transition: 200ms;
}
.webf-toast.dismissible {
  padding-right: 15px;
}
.webf-toast.webf-enter {
  -webkit-transition: none;
  -moz-transition: none;
  -o-transition: none;
  transition: none;
  -webkit-transform: translateY(calc(100% + 10px));
  -moz-transform: translateY(calc(100% + 10px));
  -ms-transform: translateY(calc(100% + 10px));
  -o-transform: translateY(calc(100% + 10px));
  transform: translateY(calc(100% + 10px));
}
.webf-toast.webf-leave {
  -webkit-transform: translateX(calc(-100% - 12px));
  -moz-transform: translateX(calc(-100% - 12px));
  -ms-transform: translateX(calc(-100% - 12px));
  -o-transform: translateX(calc(-100% - 12px));
  transform: translateX(calc(-100% - 12px));
}
.webf-toast button {
  float: right;
  position: relative;
  left: 10px;
}

.webf-tooltip {
  position: relative;
  display: inline-block;
}
.webf-tooltip > .tooltiptext, .webf-tooltip > label > .tooltiptext {
  visibility: hidden;
  opacity: 0;
  font-family: Arial, sans-serif;
  font-size: 0.7rem;
  line-height: 1rem;
  background-color: #333;
  color: #fff;
  text-align: center;
  padding: 0.25rem 0.5rem;
  border-radius: 0.2rem;
  position: absolute;
  z-index: 10000;
  width: auto;
  bottom: calc(100% + 5px);
  left: 50%;
  margin: auto;
  transition-property: opacity;
  transition-duration: 500ms;
  transition-delay: 600ms;
}
.webf-tooltip > .tooltiptext > .triangle, .webf-tooltip > label > .tooltiptext > .triangle {
  content: " ";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: #333 transparent transparent transparent;
}
.webf-tooltip > .tooltiptext.hidden-tooltip, .webf-tooltip > label > .tooltiptext.hidden-tooltip {
  top: -9999px;
  left: -9999px;
}
.webf-tooltip:hover > .tooltiptext, .webf-tooltip:hover > label > .tooltiptext {
  left: 50%;
  top: auto;
  display: block;
  visibility: visible;
  opacity: 1;
}
.webf-tooltip.webf-tooltip-bottom > .tooltiptext, .webf-tooltip.webf-tooltip-bottom > label > .tooltiptext {
  bottom: auto;
  top: calc(100% + 5px);
}
.webf-tooltip.webf-tooltip-bottom > .tooltiptext > .triangle, .webf-tooltip.webf-tooltip-bottom > label > .tooltiptext > .triangle {
  right: auto;
  top: -10px;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: transparent transparent #333 transparent;
}
.webf-tooltip.webf-tooltip-top-right > .tooltiptext, .webf-tooltip.webf-tooltip-top-right > label > .tooltiptext {
  left: 0 !important;
  right: auto;
}
.webf-tooltip.webf-tooltip-top-right > .tooltiptext > .triangle, .webf-tooltip.webf-tooltip-top-right > label > .tooltiptext > .triangle {
  right: auto;
}
.webf-tooltip.webf-tooltip-top-left > .tooltiptext, .webf-tooltip.webf-tooltip-top-left > label > .tooltiptext {
  left: auto;
  right: 0;
}
.webf-tooltip.webf-tooltip-top-left > .tooltiptext > .triangle, .webf-tooltip.webf-tooltip-top-left > label > .tooltiptext > .triangle {
  left: auto;
}
.webf-tooltip.webf-tooltip-bottom-right > .tooltiptext, .webf-tooltip.webf-tooltip-bottom-right > label > .tooltiptext {
  left: 0 !important;
  right: auto;
  bottom: auto;
  top: calc(100% + 5px);
}
.webf-tooltip.webf-tooltip-bottom-right > .tooltiptext > .triangle, .webf-tooltip.webf-tooltip-bottom-right > label > .tooltiptext > .triangle {
  right: auto;
  top: -10px;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: transparent transparent #333 transparent;
}
.webf-tooltip.webf-tooltip-bottom-left > .tooltiptext, .webf-tooltip.webf-tooltip-bottom-left > label > .tooltiptext {
  left: auto;
  right: 0;
  bottom: auto;
  top: calc(100% + 5px);
}
.webf-tooltip.webf-tooltip-bottom-left > .tooltiptext > .triangle, .webf-tooltip.webf-tooltip-bottom-left > label > .tooltiptext > .triangle {
  left: auto;
  top: -10px;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: transparent transparent #333 transparent;
}
.webf-tooltip.webf-tooltip-left > .tooltiptext, .webf-tooltip.webf-tooltip-left > label > .tooltiptext {
  left: auto;
  right: calc(100% + 5px);
  top: 0;
  bottom: auto;
}
.webf-tooltip.webf-tooltip-left > .tooltiptext > .triangle, .webf-tooltip.webf-tooltip-left > label > .tooltiptext > .triangle {
  left: calc(100% + 5px);
  right: auto;
  top: 50%;
  margin-top: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: transparent transparent transparent #333;
}
.webf-tooltip.webf-tooltip-right > .tooltiptext, .webf-tooltip.webf-tooltip-right > label > .tooltiptext {
  left: calc(100% + 5px);
  top: 0;
  bottom: auto;
}
.webf-tooltip.webf-tooltip-right > .tooltiptext > .triangle, .webf-tooltip.webf-tooltip-right > label > .tooltiptext > .triangle {
  right: auto;
  top: 50%;
  left: -5px;
  margin-top: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: transparent #333 transparent transparent;
}
.webf-tooltip.webf-tooltip-right-top > .tooltiptext, .webf-tooltip.webf-tooltip-right-top > label > .tooltiptext {
  right: auto;
  left: calc(100% + 5px);
  bottom: 0;
  top: auto;
}
.webf-tooltip.webf-tooltip-right-top > .tooltiptext > .triangle, .webf-tooltip.webf-tooltip-right-top > label > .tooltiptext > .triangle {
  right: auto;
  top: auto;
  left: -5px;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: transparent #333 transparent transparent;
}
.webf-tooltip.webf-tooltip-left-bottom > .tooltiptext, .webf-tooltip.webf-tooltip-left-bottom > label > .tooltiptext {
  left: auto;
  right: calc(100% + 5px);
  top: 0;
  bottom: auto;
}
.webf-tooltip.webf-tooltip-left-bottom > .tooltiptext > .triangle, .webf-tooltip.webf-tooltip-left-bottom > label > .tooltiptext > .triangle {
  left: auto;
  right: -5px;
  margin-right: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: transparent transparent transparent #333;
}
.webf-tooltip.webf-tooltip-left-top > .tooltiptext, .webf-tooltip.webf-tooltip-left-top > label > .tooltiptext {
  left: auto;
  right: calc(100% + 5px);
  bottom: 0;
  top: auto;
}
.webf-tooltip.webf-tooltip-left-top > .tooltiptext > .triangle, .webf-tooltip.webf-tooltip-left-top > label > .tooltiptext > .triangle {
  left: auto;
  top: auto;
  right: -5px;
  margin-right: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: transparent transparent transparent #333;
}
.webf-tooltip.webf-tooltip-right-bottom > .tooltiptext, .webf-tooltip.webf-tooltip-right-bottom > label > .tooltiptext {
  right: auto;
  left: calc(100% + 5px);
  top: 0;
  bottom: auto;
}
.webf-tooltip.webf-tooltip-right-bottom > .tooltiptext > .triangle, .webf-tooltip.webf-tooltip-right-bottom > label > .tooltiptext > .triangle {
  right: auto;
  left: -5px;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: transparent #333 transparent transparent;
}

.webf-tree {
  height: 200px;
  overflow: auto;
  font-family: "Muli", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 0.8rem;
  color: #8f8f8f;
  outline: none;
}
.webf-tree .root {
  padding-left: 0;
}
.webf-tree .root .group {
  transition: height 0.25s linear;
}
.webf-tree .root .group .item {
  display: flex;
  align-items: center;
  list-style-type: none;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  padding: 0.28rem 0 0.28rem 0.6rem;
  border: 2px solid transparent;
  border-radius: 0 3rem 3rem 0;
  cursor: pointer;
}
.webf-tree .root .group .item.leaf i.fas.node {
  padding-left: 1.5rem;
}
.webf-tree .root .group .item + .group {
  display: none;
  overflow: hidden;
}
.webf-tree .root .group .item + .group.open {
  display: block;
}
.webf-tree .root .group .item.preselected {
  border: 2px solid #b7d0fc;
}
.webf-tree .root .group .item.active {
  background-color: #e8f0fe;
}
.webf-tree .root .group .item:not(.active):hover {
  background-color: #f5f5f5;
}
.webf-tree .root .group .item .indent {
  min-width: 1.35rem;
}
.webf-tree .root .group .item i.fas.webf-tree-caret {
  transition: transform 0.25s linear;
  padding: 0 0.5rem;
  font-size: 1.2rem;
}
.webf-tree .root .group .item i.fas.node {
  padding: 0 0.5rem 0 0;
  font-size: 1.3rem;
}
.webf-tree .root .group .item > span {
  overflow: hidden;
  text-overflow: ellipsis;
}
.webf-tree .root .group .item.open i.fa-caret-right {
  transform: rotate(90deg);
}
.webf-tree.webf-scrollbox .webf-scrollbox-container {
  width: calc(100% - 12px);
}
.webf-tree.webf-scrollbox .webf-scrollbar.y {
  opacity: 1;
  width: 10px;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  -o-border-radius: 0;
  border-radius: 0;
  background-color: white;
  margin-right: 1px;
}
.webf-tree.webf-scrollbox .webf-scrollbar.y .handler {
  background-color: rgba(0, 0, 0, 0.15);
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  -o-border-radius: 0;
  border-radius: 0;
}
.webf-tree.webf-scrollbox .webf-scrollbar.y .handler:hover {
  background-color: rgba(0, 0, 0, 0.3);
}

.webf-tree-tooltip {
  background-color: rgba(95, 95, 95, 0.85);
  padding: 4px 10px;
  color: white;
  font-size: 11px;
  border-radius: 4px;
}

.webf-user-agenda {
  width: 100%;
  border: 1px solid #ccc;
  background: #fff;
  font-family: arial, Helvetica, sans-serif;
}
.webf-user-agenda table {
  border-collapse: collapse;
}
.webf-user-agenda table tr {
  vertical-align: top;
}
.webf-user-agenda * {
  box-sizing: content-box;
}
.webf-user-agenda .wrap-toolbar .sm .title {
  text-align: center;
  padding: 0.4rem 1rem;
}
.webf-user-agenda .wrap-toolbar .sm .title.today {
  color: #4b70df;
}
@media (min-width: 992px) {
  .webf-user-agenda .wrap-toolbar .sm {
    display: none;
  }
}
.webf-user-agenda .wrap-toolbar .toolbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 5px;
  background-color: #e8eff3;
}
.webf-user-agenda .wrap-toolbar .toolbar .buttons {
  flex-shrink: 0;
}
@media (max-width: 768px) {
  .webf-user-agenda .wrap-toolbar .toolbar .buttons .webf-button {
    font-size: 0.75rem;
    padding: 0.225rem 0.75rem;
  }
}
.webf-user-agenda .wrap-toolbar .toolbar .views {
  flex-shrink: 0;
}
.webf-user-agenda .wrap-toolbar .toolbar .views .webf-button {
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  box-shadow: none;
}
.webf-user-agenda .wrap-toolbar .toolbar .views .webf-button.mouseover, .webf-user-agenda .wrap-toolbar .toolbar .views .webf-button.focus {
  border-color: #CCCCCC;
}
.webf-user-agenda .wrap-toolbar .toolbar .views .webf-button.selected {
  background: #ccc;
  background: #4b70df;
  color: #fff;
  filter: none;
  border-color: #aaa;
  box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15);
}
.webf-user-agenda .wrap-toolbar .toolbar .views .webf-button.prev-week, .webf-user-agenda .wrap-toolbar .toolbar .views .webf-button.next-week {
  padding-left: 14px;
  padding-right: 14px;
}
.webf-user-agenda .wrap-toolbar .toolbar .views .webf-button.prev-week {
  padding-left: 9px;
  padding-right: 9px;
}
.webf-user-agenda .wrap-toolbar .toolbar .views .webf-button.next-week {
  padding-left: 9px;
  padding-right: 9px;
}
.webf-user-agenda .wrap-toolbar .toolbar .views .webf-button.today {
  font-size: 14px;
}
.webf-user-agenda .wrap-toolbar .toolbar .views .webf-button.datepicker > span {
  margin-left: 0.6rem;
}
@media (max-width: 768px) {
  .webf-user-agenda .wrap-toolbar .toolbar .views .webf-button.datepicker > span {
    display: none;
  }
}
.webf-user-agenda .wrap-toolbar .toolbar .lg .title {
  width: 100%;
  text-align: center;
  font-size: 16px;
}
.webf-user-agenda .wrap-toolbar .toolbar .lg .title.today {
  color: #4b70df;
}
@media (max-width: 991px) {
  .webf-user-agenda .wrap-toolbar .toolbar .lg .title {
    display: none;
  }
}
.webf-user-agenda .days {
  padding: 3px 0 0;
  background: #e8eff3;
}
.webf-user-agenda .days .tb-days {
  table-layout: fixed;
  width: 100%;
  text-align: center;
}
.webf-user-agenda .days .tb-days .td-day a.link-days {
  color: #555;
  font-size: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  text-decoration: none;
}
.webf-user-agenda .days .tb-days .td-day a.link-days:hover {
  cursor: pointer;
}
.webf-user-agenda .days .tb-days .td-day a.link-days:hover .nameWeekDay, .webf-user-agenda .days .tb-days .td-day a.link-days:hover .numMonthDay {
  color: #4b70df;
}
.webf-user-agenda .days .tb-days .td-day a.link-days .nameWeekDay {
  color: #999;
}
.webf-user-agenda .days .tb-days .td-day a.link-days .numMonthDay {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  padding: 5px;
  font-size: 20px;
  color: black;
  display: flex;
  align-items: center;
  justify-content: center;
}
.webf-user-agenda .days .tb-days .td-day a.link-days.today .numMonthDay {
  color: white;
  background-color: #4b70df;
}
.webf-user-agenda .days .tb-days .td-day a.link-days a.link-days.disabled {
  cursor: default;
}
.webf-user-agenda .days .tb-days .td-day a.link-days a.link-days.disabled:hover {
  text-decoration: none;
}
.webf-user-agenda .days .tb-days .td-hours {
  width: 26px;
}
.webf-user-agenda .users {
  padding: 2px 0;
  background: #e8eff3;
}
.webf-user-agenda .users .tb-users {
  table-layout: fixed;
  width: 100%;
  text-align: center;
}
.webf-user-agenda .users .tb-users .td-hours {
  width: 26px;
}
.webf-user-agenda .users .tb-users td .user {
  padding: 0 3px;
  white-space: nowrap;
  overflow: hidden;
}
.webf-user-agenda .users .tb-users td .user label {
  margin: 0;
  font-size: 14px;
}
.webf-user-agenda .allday {
  /*   height: 24px; */
  border: 0;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  background: #fff;
  position: relative;
}
.webf-user-agenda .allday .tb-grid {
  width: 100%;
  height: 100%;
  min-height: 24px;
  table-layout: fixed;
}
.webf-user-agenda .allday .tb-grid tr:last-child {
  height: 18px;
}
.webf-user-agenda .allday .tb-grid .td-first {
  width: 26px;
  background-color: #e8eff3;
  border-right: 1px solid #ccc;
}
.webf-user-agenda .allday .tb-grid .td-col-days {
  background-color: #fff;
  position: relative;
}
.webf-user-agenda .allday .tb-grid .td-col-days .tb-days {
  width: 100%;
  table-layout: fixed;
  height: 100%;
}
.webf-user-agenda .allday .tb-grid .td-col-days .tb-days .td-col-allday {
  border-right: 1px solid #ccc;
}
.webf-user-agenda .allday .tb-grid .td-col-days .tb-days .td-col-allday:first-child {
  border-left: 1px solid #ccc;
  border-left: 0;
}
.webf-user-agenda .allday .tb-grid .td-col-days .tb-days .td-col-allday:last-child {
  border-right: 0;
}
.webf-user-agenda .allday .tb-grid .td-col-days .tb-days .td-col-padding-allday {
  border-right: 1px solid #ccc;
  height: 100%;
}
.webf-user-agenda .allday .tb-grid .td-col-days .tb-days .td-col-padding-allday:first-child {
  border-left: 1px solid #ccc;
  border-left: 0;
}
.webf-user-agenda .allday .tb-grid .td-col-days .tb-days .td-col-padding-allday:last-child {
  border-right: 0;
}
.webf-user-agenda .allday .tb-grid .td-col-days .annotation {
  color: #fff;
  height: 24px;
  white-space: nowrap;
  text-overflow: ellipsis;
  box-sizing: border-box;
  margin: 2px 2px;
  border-radius: 3px;
  padding: 2px 4px;
  border: 1px solid #2550d2;
  background: #4b70df;
  cursor: pointer;
  font-size: 12px;
  line-height: 18px;
  overflow: hidden;
}
.webf-user-agenda .grid {
  background-color: #FFFFFF;
  position: relative;
  width: 100%;
  overflow: auto;
}
.webf-user-agenda .grid .tb-grid {
  width: 100%;
  table-layout: fixed;
}
.webf-user-agenda .grid .tb-grid .td-hours {
  width: 26px;
  background: #e8eff3;
  border-right: 1px solid #ccc;
}
.webf-user-agenda .grid .tb-grid .td-hours span.hour {
  display: block;
  float: right;
  margin: -10px 3px 0 0;
  font-size: 11px;
}
.webf-user-agenda .grid .tb-grid .td-hours .webf-border-bottom {
  position: relative;
  bottom: 1px;
  left: 0;
  width: 100%;
  height: 1px;
  font-size: 0;
}
.webf-user-agenda .grid .tb-grid .timeslot {
  /*   height: 20px; */
  border-bottom: 1px dotted #ddd;
}
.webf-user-agenda .grid .tb-grid .timeslot.hour {
  border-bottom: 1px solid #ccc;
}
.webf-user-agenda .grid .tb-grid .td-day-month {
  border: 1px solid #ccc;
}
.webf-user-agenda .grid .tb-grid .td-day-month.drop {
  background: #f2f5ff;
}
.webf-user-agenda .grid .tb-grid .td-day-month.drop .cell-day .num-day {
  background-color: #e2e9ff;
}
.webf-user-agenda .grid .tb-grid .td-day-month.first-row {
  border-top: 0;
}
.webf-user-agenda .grid .tb-grid .td-day-month.last-row {
  border-bottom: 0;
}
.webf-user-agenda .grid .tb-grid .td-day-month.first-col {
  border-left: 0;
}
.webf-user-agenda .grid .tb-grid .td-day-month.last-col {
  border-right: 0;
}
.webf-user-agenda .grid .tb-grid .td-day-month .cell-day {
  position: relative;
}
.webf-user-agenda .grid .tb-grid .td-day-month .cell-day .num-day {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 16px;
  line-height: 16px;
  text-align: right;
  overflow: hidden;
  background: #f5f5f5;
  color: #aaa;
  font-size: 11px;
}
.webf-user-agenda .grid .tb-grid .td-day-month .cell-day .num-day a {
  color: #aaa;
}
.webf-user-agenda .grid .tb-grid .td-day-month .cell-day .num-day a.disabled {
  cursor: default;
}
.webf-user-agenda .grid .tb-grid .td-day-month .cell-day .num-day a.disabled:hover {
  text-decoration: none;
}
.webf-user-agenda .grid .tb-grid .td-day-month .cell-day .num-day span {
  display: block;
  padding-right: 4px;
}
.webf-user-agenda .grid .tb-grid .td-day-month .cell-day .num-day.current {
  color: #444;
  font-weight: bold;
}
.webf-user-agenda .grid .tb-grid .td-day-month .cell-day .num-day.current a {
  color: #444;
}
.webf-user-agenda .grid .tb-grid .td-day-month .cell-day .events {
  overflow-y: auto;
  overflow-x: hidden;
  position: relative;
  top: 18px;
  left: 0;
}
.webf-user-agenda .grid .tb-grid .td-day-month .cell-day .events .event {
  color: #fff;
  cursor: pointer;
}
.webf-user-agenda .grid .tb-grid .td-day-month .cell-day .events .event .title {
  margin: 0 2px 2px 2px;
  border: 1px solid #1B62C0;
  height: 15px;
  min-height: 15px;
  line-height: 15px;
  background: #2B72D0;
  font-size: 10px;
  text-align: left;
  white-space: nowrap;
  overflow: hidden;
  text-indent: 3px;
}
.webf-user-agenda .grid .agenda {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.webf-user-agenda .grid .agenda .tb-agenda {
  width: 100%;
  height: 100%;
  table-layout: fixed;
}
.webf-user-agenda .grid .agenda .tb-agenda .td-hours {
  width: 26px;
}
.webf-user-agenda .grid .agenda .tb-agenda .td-col-day {
  border-right: 1px solid #ccc;
  height: 100%;
}
.webf-user-agenda .grid .agenda .tb-agenda .td-col-day:last-child {
  border-right: 0;
}
.webf-user-agenda .grid .agenda .tb-agenda .td-col-day .col-day-full {
  position: relative;
  height: 100%;
}
.webf-user-agenda .grid .agenda .tb-agenda .td-col-day .col-day-full .hour-marker {
  position: absolute;
  width: 100%;
  background-color: red;
  height: 1px;
  top: 0;
  left: 0;
  display: none;
  z-index: 2;
}
.webf-user-agenda .grid .agenda .tb-agenda .td-col-day .col-day-full .tb-users {
  width: 100%;
  height: 100%;
  table-layout: fixed;
}
.webf-user-agenda .grid .agenda .tb-agenda .td-col-day .col-day-full .tb-users td {
  border-right: 1px dashed #D3D3D3;
}
.webf-user-agenda .grid .agenda .tb-agenda .td-col-day .col-day-full .tb-users td .col-user {
  position: relative;
}
.webf-user-agenda .grid .agenda .tb-agenda .td-col-day .col-day-full .tb-users td:last-child {
  border: 0;
}
.webf-user-agenda .grid .agenda .tb-agenda .td-col-day .col-day-full .event {
  width: 100%;
  background: #68A1E5;
  color: #fff;
  position: absolute;
  left: 0;
  cursor: pointer;
  overflow: hidden;
  z-index: 1;
}
.webf-user-agenda .grid .agenda .tb-agenda .td-col-day .col-day-full .event.temporary {
  opacity: 0.6;
  filter: alpha(opacity=60);
}
.webf-user-agenda .grid .agenda .tb-agenda .td-col-day .col-day-full .event .title {
  border: 1px solid #1B62C0;
  min-height: 15px;
  line-height: 15px;
  font-size: 10px;
  text-align: center;
  background: #2B72D0;
}
.webf-user-agenda .grid .agenda .tb-agenda .td-col-day .col-day-full .event .title.draggable {
  cursor: move;
}
.webf-user-agenda .grid .agenda .tb-agenda .td-col-day .col-day-full .event .content {
  text-align: center;
  overflow: hidden;
  padding: 3px 3px 0;
  font-size: 13px;
  line-height: 15px;
  height: 100%;
  width: 100%;
  box-sizing: border-box;
}
.webf-user-agenda .grid .agenda .tb-agenda .td-col-day .col-day-full .event .handle-resizable {
  width: 100%;
  position: absolute;
  bottom: -2px;
  left: 0;
  text-align: center;
  font-size: 9px;
  height: 10px;
  line-height: 8px;
  background: none;
  cursor: s-resize;
  opacity: 0;
}
.webf-user-agenda .grid .agenda .tb-agenda .tb-agenda-days {
  width: 100%;
  table-layout: fixed;
}
.webf-user-agenda .webf-scrollbox-wrapper .webf-scrollbar.y {
  width: 8px;
}
.webf-user-agenda .webf-scrollbox-wrapper .webf-scrollbar.y, .webf-user-agenda .webf-scrollbox-wrapper .webf-scrollbar.y:hover {
  opacity: 1;
  background: none;
}
.webf-user-agenda .webf-scrollbox-wrapper .webf-scrollbar.y .handler {
  width: 80%;
  background: #555;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
}
.webf-user-agenda .webf-scrollbox-wrapper .webf-scrollbar.y .handler:hover {
  background: #000;
}
@media (max-width: 768px) {
  .webf-user-agenda .webf-scrollbox-wrapper .webf-scrollbar.y {
    display: none;
  }
}

.webf-user-agenda-dragging-event .title {
  color: #fff;
  cursor: pointer;
  margin: 0 2px 2px 2px;
  border: 1px solid #1B62C0;
  height: 15px;
  min-height: 15px;
  line-height: 15px;
  background: #2B72D0;
  font-size: 10px;
  text-align: left;
  white-space: nowrap;
  overflow: hidden;
  text-indent: 3px;
}

.webf-user-agenda-user {
  position: relative;
}

.webf-user-agenda-tooltip-user .triangle {
  width: 0;
  height: 0;
  border: 6px solid transparent;
  border-top: 0;
  border-bottom: 6px solid #ccc;
  position: relative;
  top: -6px;
  margin: auto;
  z-index: 10001;
}
.webf-user-agenda-tooltip-user .triangle .inner-triangle {
  position: absolute;
  width: 0;
  height: 0;
  border: 6px solid transparent;
  border-top: 0;
  border-bottom: 6px solid #fff;
  top: 1px;
  left: -6px;
}
.webf-user-agenda-tooltip-user .content {
  width: auto;
  border: 1px solid #ccc;
  background: #fff;
  color: #333;
  padding: 5px 10px;
  position: relative;
  top: -6px;
  z-index: 10000;
  box-shadow: 2px 2px 5px #ddd;
}

* {
  padding: 0;
  margin: 0;
}

html,
body {
  height: 100%;
  min-width: 320px;
  min-height: 480px;
}

body {
  background-color: white;
}

html,
body,
.webf-box > .box-body {
  font-size: 16px !important;
  line-height: 24px !important;
  font-family: "Open Sans", sans-serif;
}

@media (min-width: 768px) {
  .content {
    background-color: #FCFCFC;
    border: 4px solid #FAFAFA;
    border-radius: 3px;
  }
}
::-webkit-input-placeholder {
  color: black;
  opacity: 0.54;
  font-size: 15px;
}

:-moz-placeholder {
  /* Firefox 18- */
  color: black;
  opacity: 0.54;
  font-size: 15px;
}

::-moz-placeholder {
  /* Firefox 19+ */
  color: black;
  opacity: 0.54;
  font-size: 15px;
}

:-ms-input-placeholder {
  color: black;
  opacity: 0.54;
  font-size: 15px;
}

.form-control::-webkit-input-placeholder {
  color: black;
  opacity: 0.54;
  font-size: 15px;
}
.form-control:-moz-placeholder {
  /* Firefox 18- */
  color: black;
  opacity: 0.54;
  font-size: 15px;
}
.form-control::-moz-placeholder {
  /* Firefox 19+ */
  color: black;
  opacity: 0.54;
  font-size: 15px;
}
.form-control:-ms-input-placeholder {
  color: black;
  opacity: 0.54;
  font-size: 15px;
}

h1, .h1 {
  font-family: "League Spartan", sans-serif;
  font-weight: bold;
  font-size: 49px;
}

h2, .h2 {
  font-family: "League Spartan", sans-serif;
  font-weight: bold;
  font-size: 31px;
}

h3, .h3 {
  font-family: "League Spartan", sans-serif;
  font-weight: bold;
  font-size: 20px;
}

h4, .h4 {
  font-family: "League Spartan", sans-serif;
  font-weight: bold;
  font-size: 18px;
}

.rouge-fonce {
  color: #C1131E;
}

a.vert-clair {
  border: none;
  border-radius: 8px;
  background-color: #D6EE8F;
  color: black;
  font-weight: bold;
  padding: 7px 8px 4px;
  font-family: "League Spartan", sans-serif;
}
a.vert-clair:hover, a.vert-clair:active, a.vert-clair:focus {
  background-color: #ADDC1F;
  color: black;
}

a.orange {
  border: none;
  border-radius: 8px;
  background-color: #FE7D19;
  color: black;
  font-weight: bold;
  padding: 7px 8px 4px;
  font-family: "League Spartan", sans-serif;
}
a.orange:hover, a.orange:active, a.orange:focus {
  background-color: #CC6414;
  color: black;
}

button.vert,
a.vert,
input[type=submit].vert {
  border: none;
  border-radius: 8px;
  background-color: #ADDC1F;
  color: black;
  font-weight: bold;
  padding: 7px 8px 4px;
  font-family: "League Spartan", sans-serif;
}
button.vert:hover, button.vert:active, button.vert:focus,
a.vert:hover,
a.vert:active,
a.vert:focus,
input[type=submit].vert:hover,
input[type=submit].vert:active,
input[type=submit].vert:focus {
  background-color: #84A818;
  color: black;
}

button.red,
a.red {
  border: none;
  border-radius: 15px;
  background-color: #C1131E;
  color: white;
  font-weight: 700;
  padding: 4px 18px 1px;
  font-family: "League Spartan", sans-serif;
}
button.red:hover, button.red:active, button.red:focus,
a.red:hover,
a.red:active,
a.red:focus {
  color: white;
  background-color: #8F0E17;
}

a.red {
  padding: 7px 18px 5px;
}

ul {
  list-style-type: "- ";
}

img {
  border: 0;
}

a,
span.link {
  color: #C1131E;
  text-decoration: none;
  cursor: pointer;
  outline: none;
}

a:hover,
a:focus,
a:active,
a:focus,
span.link:hover {
  color: #8F0E17;
  text-decoration: none;
  cursor: pointer;
  outline: none;
}

a.en-savoir-plus {
  color: #C1131E;
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
}
a.en-savoir-plus i {
  background-color: #C1131E;
  color: white;
  border-radius: 12px;
  padding: 5px;
  font-size: 13px;
  font-weight: bold;
  margin-right: 5px;
  width: 22px;
  height: 22px;
  line-height: 12px;
}
a.en-savoir-plus:hover {
  color: #8F0E17;
}
a.en-savoir-plus:hover i {
  background-color: #8F0E17;
}

table {
  border-collapse: collapse;
  width: 100%;
}
table tr {
  vertical-align: top;
}

select.form-control {
  height: 25px !important;
}

textarea {
  outline: none;
  resize: none;
  word-wrap: break-word;
}

label {
  font-weight: bold;
}

input {
  outline: 0;
  outline: none;
}
input[readonly] {
  cursor: not-allowed;
}

textarea[readonly] {
  cursor: not-allowed;
}

input[type=text]:not(.form-control),
input[type=email]:not(.form-control),
input[type=password]:not(.form-control),
select:not(.form-select) {
  border-radius: 5px !important;
  width: 100% !important;
  padding: 8px 8px !important;
  border: 1px solid #979797 !important;
}

input[type=checkbox],
input[type=radio] {
  accent-color: #C1131E;
}

.fil-ariane {
  color: #979797;
  display: none;
}
.fil-ariane a {
  color: #979797;
}
.fil-ariane a:hover {
  text-decoration: underline;
}

.preview-actualite {
  background: white;
  border-radius: 8px;
  box-shadow: 1px 1px 5px 1px rgba(0, 0, 0, 0.5);
  color: black;
  padding: 15px;
}
.preview-actualite .wrapper-image-actualite-une {
  height: 100%;
  min-height: 110px;
  width: 100%;
  background-image: url(/build/images/photo_home_tmp.5cbfd5b3.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 8px;
}
.preview-actualite h3, .preview-actualite .h3 {
  color: black;
  font-size: 25px;
  text-transform: none;
  margin-bottom: 5px;
}
.preview-actualite .date-publication {
  display: none;
  font-size: 14px;
  font-weight: 700;
  margin-bottom: 5px;
}
.preview-actualite .extrait {
  margin-bottom: 5px;
}

.badge {
  border-radius: 15px;
  padding: 6px 10px 5px;
  font-size: 16px;
  font-weight: 700;
  font-family: "League Spartan", sans-serif;
}
.badge img {
  width: 13px;
  margin-top: -3px;
}
.badge.badge-rouge {
  background-color: #C1131E;
  color: white;
}
.badge.badge-vert {
  background-color: #ADDC1F;
  color: black;
}

.titre-bulle-gauche {
  padding-left: 40px;
}
.titre-bulle-gauche.bulle-orange {
  background-image: url(/build/images/rond_orange.ab6130b1.svg);
  background-repeat: no-repeat;
}
.titre-bulle-gauche.bulle-rouge {
  background-image: url(/build/images/rond_rouge.7f8d6371.svg);
  background-repeat: no-repeat;
}
.titre-bulle-gauche.bulle-verte {
  background-image: url(/build/images/rond_vert.92786b9f.svg);
  background-repeat: no-repeat;
}

.toast-header {
  background-color: #FE7D19;
}

.montantcell {
  text-align: right;
  font-family: fixed;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5jc3MiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsZ0JBQWdCO0FDQ2Q7Ozs7O0VBQUE7QUNERjtFQVFJO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUdGO0VBQ0E7RUFDQTtFQUNBO0VBTUE7RUFDQTtFQUNBO0VBT0E7RUM0UEkseUJBTEk7RURyUFI7RUFDQTtFQUNBO0VBSUE7RUFJQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFFQTtFQUVBO0FGTUY7O0FJOURBOzs7RUFHRTtBSmlFRjs7QUlsREk7RUFOSjtJQU9NO0VKc0RKO0FBQ0Y7O0FJekNBO0VBQ0U7RUFDQTtFRG1QSSxtQ0FMSTtFQzVPUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSjRDRjs7QUluQ0E7RUFDRTtFQUNBLGNDaWpCNEI7RURoakI1QjtFQUNBO0VBQ0EsYUN1akI0QjtBTGpoQjlCOztBSTVCQTtFQUNFO0VBQ0EscUJDd2Y0QjtFRHJmNUIsZ0JDd2Y0QjtFRHZmNUIsZ0JDd2Y0QjtBTDNkOUI7O0FJekJBO0VENk1RO0FIaExSO0FHY0k7RUMzQ0o7SURvTlE7RUhuTE47QUFDRjs7QUk3QkE7RUR3TVE7QUh2S1I7QUdLSTtFQ3RDSjtJRCtNUTtFSDFLTjtBQUNGOztBSWpDQTtFRG1NUTtBSDlKUjtBR0pJO0VDakNKO0lEME1RO0VIaktOO0FBQ0Y7O0FJckNBO0VEOExRO0FIckpSO0FHYkk7RUM1Qko7SURxTVE7RUh4Sk47QUFDRjs7QUl6Q0E7RURxTE0sa0JBTEk7QUhuSVY7O0FJeENBO0VEZ0xNLGVBTEk7QUgvSFY7O0FJakNBO0VBQ0U7RUFDQSxtQkNtUzBCO0FML1A1Qjs7QUkxQkE7RUFDRTtFQUNBO0VBQ0E7QUo2QkY7O0FJdkJBO0VBQ0U7RUFDQTtFQUNBO0FKMEJGOztBSXBCQTs7RUFFRTtBSnVCRjs7QUlwQkE7OztFQUdFO0VBQ0E7QUp1QkY7O0FJcEJBOzs7O0VBSUU7QUp1QkY7O0FJcEJBO0VBQ0UsZ0JDNlg0QjtBTHRXOUI7O0FJbEJBO0VBQ0U7RUFDQTtBSnFCRjs7QUlmQTtFQUNFO0FKa0JGOztBSVZBOztFQUVFLG1CQ3NXNEI7QUx6VjlCOztBSUxBO0VEbUZNLGtCQUxJO0FIckVWOztBSUZBO0VBQ0UsaUJDK2E0QjtFRDlhNUI7QUpLRjs7QUlJQTs7RUFFRTtFRCtESSxpQkFMSTtFQ3hEUjtFQUNBO0FKREY7O0FJSUE7RUFBTTtBSkFOOztBSUNBO0VBQU07QUpHTjs7QUlFQTtFQUNFO0VBQ0EsMEJDcUt3QztBTHBLMUM7QUlDRTtFQUNFO0FKQ0o7O0FJVUU7RUFFRTtFQUNBO0FKUko7O0FJZUE7Ozs7RUFJRSxxQ0NrUjRCO0VGN1B4QixjQUxJO0FIM0JWOztBSW1CQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VEU0ksa0JBTEk7QUhuQlY7QUlvQkU7RURJSSxrQkFMSTtFQ0dOO0VBQ0E7QUpsQko7O0FJc0JBO0VESE0sa0JBTEk7RUNVUjtFQUNBO0FKbkJGO0FJc0JFO0VBQ0U7QUpwQko7O0FJd0JBO0VBQ0U7RURmSSxrQkFMSTtFQ3NCUix3QkN1eUNrQztFRHR5Q2xDLHNDQ3V5Q2tDO0VDM2tEaEM7QU5nUko7QUl1QkU7RUFDRTtFRHRCRSxjQUxJO0FIT1Y7O0FJK0JBO0VBQ0U7QUo1QkY7O0FJa0NBOztFQUVFO0FKL0JGOztBSXVDQTtFQUNFO0VBQ0E7QUpwQ0Y7O0FJdUNBO0VBQ0UsbUJDc1Q0QjtFRHJUNUIsc0JDcVQ0QjtFRHBUNUIsY0NqVlM7RURrVlQ7QUpwQ0Y7O0FJMkNBO0VBRUU7RUFDQTtBSnpDRjs7QUk0Q0E7Ozs7OztFQU1FO0VBQ0E7RUFDQTtBSnpDRjs7QUlpREE7RUFDRTtBSjlDRjs7QUlvREE7RUFFRTtBSmxERjs7QUkwREE7RUFDRTtBSnZERjs7QUk0REE7Ozs7O0VBS0U7RUFDQTtFRHJISSxrQkFMSTtFQzRIUjtBSnpERjs7QUk2REE7O0VBRUU7QUoxREY7O0FJK0RBO0VBQ0U7QUo1REY7O0FJK0RBO0VBR0U7QUo5REY7QUlpRUU7RUFDRTtBSi9ESjs7QUlzRUE7RUFDRTtBSm5FRjs7QUkyRUE7Ozs7RUFJRTtBSnhFRjtBSTJFSTs7OztFQUNFO0FKdEVOOztBSTZFQTtFQUNFO0VBQ0E7QUoxRUY7O0FJK0VBO0VBQ0U7QUo1RUY7O0FJc0ZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QUpuRkY7O0FJMkZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EscUJDOEk0QjtFRnhWdEI7RUM2TU47QUp6RkY7QUd0Ukk7RUN3V0o7SUQvTFE7RUhpSE47QUFDRjtBSXNGRTtFQUNFO0FKcEZKOztBSTJGQTs7Ozs7OztFQU9FO0FKeEZGOztBSTJGQTtFQUNFO0FKeEZGOztBSWlHQTtFQUNFO0VBQ0E7QUo5RkY7O0FJc0dBOzs7Ozs7O0NBQUE7QUFXQTtFQUNFO0FKdEdGOztBSTJHQTtFQUNFO0FKeEdGOztBSStHQTtFQUNFO0VBQ0E7QUo1R0Y7O0FJaUhBO0VBQ0U7QUo5R0Y7O0FJbUhBO0VBQ0U7QUpoSEY7O0FJdUhBO0VBQ0U7RUFDQTtBSnBIRjs7QUk0SEE7RUFDRTtBSnpIRjs7QUlpSUE7RUFDRTtBSjlIRjs7QU90Y0E7RUp5UU0sa0JBTEk7RUlsUVIsZ0JGd2tCNEI7QUwvSDlCOztBT3BjRTtFSnNRTTtFSWxRSixnQkZ5akJrQjtFRXhqQmxCLGdCRndpQjBCO0FMbkc5QjtBR3RXSTtFSXBHRjtJSjZRTTtFSGlNTjtBQUNGOztBTy9jRTtFSnNRTTtFSWxRSixnQkZ5akJrQjtFRXhqQmxCLGdCRndpQjBCO0FMeEY5QjtBR2pYSTtFSXBHRjtJSjZRTTtFSDRNTjtBQUNGOztBTzFkRTtFSnNRTTtFSWxRSixnQkZ5akJrQjtFRXhqQmxCLGdCRndpQjBCO0FMN0U5QjtBRzVYSTtFSXBHRjtJSjZRTTtFSHVOTjtBQUNGOztBT3JlRTtFSnNRTTtFSWxRSixnQkZ5akJrQjtFRXhqQmxCLGdCRndpQjBCO0FMbEU5QjtBR3ZZSTtFSXBHRjtJSjZRTTtFSGtPTjtBQUNGOztBT2hmRTtFSnNRTTtFSWxRSixnQkZ5akJrQjtFRXhqQmxCLGdCRndpQjBCO0FMdkQ5QjtBR2xaSTtFSXBHRjtJSjZRTTtFSDZPTjtBQUNGOztBTzNmRTtFSnNRTTtFSWxRSixnQkZ5akJrQjtFRXhqQmxCLGdCRndpQjBCO0FMNUM5QjtBRzdaSTtFSXBHRjtJSjZRTTtFSHdQTjtBQUNGOztBTzllQTtFQ3ZERTtFQUNBO0FSeWlCRjs7QU85ZUE7RUM1REU7RUFDQTtBUjhpQkY7O0FPaGZBO0VBQ0U7QVBtZkY7QU9qZkU7RUFDRSxvQkZna0IwQjtBTDdFOUI7O0FPemVBO0VKb05NLGtCQUxJO0VJN01SO0FQNGVGOztBT3hlQTtFQUNFLG1CRjZSTztFRmhGSCxrQkFMSTtBSG9TVjtBT3plRTtFQUNFO0FQMmVKOztBT3ZlQTtFQUNFO0VBQ0EsbUJGbVJPO0VGaEZILGtCQUxJO0VJNUxSLGNGdEZTO0FMZ2tCWDtBT3hlRTtFQUNFO0FQMGVKOztBUzFrQkE7RUNJRTtFQUdBO0FWd2tCRjs7QVN6a0JBO0VBQ0UsZ0JKNDhDa0M7RUkzOENsQyxzQkpQUztFSVFUO0VIR0U7RUlSRjtFQUdBO0FWaWxCRjs7QVNua0JBO0VBRUU7QVRxa0JGOztBU2xrQkE7RUFDRTtFQUNBO0FUcWtCRjs7QVNsa0JBO0VOK1BNLGtCQUxJO0VNeFBSLGNKMUJTO0FMK2xCWDs7QVd2bUJFOzs7Ozs7O0VDSEE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVpvbkJGOztBYTlqQkk7RUY1Q0U7SUFDRSxnQk42YWU7RUxpTXJCO0FBQ0Y7QWFwa0JJO0VGNUNFO0lBQ0UsZ0JONmFlO0VMc01yQjtBQUNGO0FhemtCSTtFRjVDRTtJQUNFLGdCTjZhZTtFTDJNckI7QUFDRjtBYTlrQkk7RUY1Q0U7SUFDRSxpQk42YWU7RUxnTnJCO0FBQ0Y7QWFubEJJO0VGNUNFO0lBQ0UsaUJONmFlO0VMcU5yQjtBQUNGO0FjbHBCRTtFQ0FBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0Fmb3BCRjtBY3hwQkk7RUNhRjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWY4b0JGOztBZS9sQk07RUFDRTtBZmttQlI7O0FlL2xCTTtFQXBDSjtFQUNBO0FmdW9CRjs7QWV6bkJFO0VBQ0U7RUFDQTtBZjRuQko7O0FlOW5CRTtFQUNFO0VBQ0E7QWZpb0JKOztBZW5vQkU7RUFDRTtFQUNBO0Fmc29CSjs7QWV4b0JFO0VBQ0U7RUFDQTtBZjJvQko7O0FlN29CRTtFQUNFO0VBQ0E7QWZncEJKOztBZWxwQkU7RUFDRTtFQUNBO0FmcXBCSjs7QWV0bkJNO0VBaERKO0VBQ0E7QWYwcUJGOztBZXJuQlU7RUFoRU47RUFDQTtBZnlyQko7O0FlMW5CVTtFQWhFTjtFQUNBO0FmOHJCSjs7QWUvbkJVO0VBaEVOO0VBQ0E7QWZtc0JKOztBZXBvQlU7RUFoRU47RUFDQTtBZndzQko7O0Flem9CVTtFQWhFTjtFQUNBO0FmNnNCSjs7QWU5b0JVO0VBaEVOO0VBQ0E7QWZrdEJKOztBZW5wQlU7RUFoRU47RUFDQTtBZnV0Qko7O0FleHBCVTtFQWhFTjtFQUNBO0FmNHRCSjs7QWU3cEJVO0VBaEVOO0VBQ0E7QWZpdUJKOztBZWxxQlU7RUFoRU47RUFDQTtBZnN1Qko7O0FldnFCVTtFQWhFTjtFQUNBO0FmMnVCSjs7QWU1cUJVO0VBaEVOO0VBQ0E7QWZndkJKOztBZXpxQlk7RUF4RFY7QWZxdUJGOztBZTdxQlk7RUF4RFY7QWZ5dUJGOztBZWpyQlk7RUF4RFY7QWY2dUJGOztBZXJyQlk7RUF4RFY7QWZpdkJGOztBZXpyQlk7RUF4RFY7QWZxdkJGOztBZTdyQlk7RUF4RFY7QWZ5dkJGOztBZWpzQlk7RUF4RFY7QWY2dkJGOztBZXJzQlk7RUF4RFY7QWZpd0JGOztBZXpzQlk7RUF4RFY7QWZxd0JGOztBZTdzQlk7RUF4RFY7QWZ5d0JGOztBZWp0Qlk7RUF4RFY7QWY2d0JGOztBZTFzQlE7O0VBRUU7QWY2c0JWOztBZTFzQlE7O0VBRUU7QWY2c0JWOztBZXB0QlE7O0VBRUU7QWZ1dEJWOztBZXB0QlE7O0VBRUU7QWZ1dEJWOztBZTl0QlE7O0VBRUU7QWZpdUJWOztBZTl0QlE7O0VBRUU7QWZpdUJWOztBZXh1QlE7O0VBRUU7QWYydUJWOztBZXh1QlE7O0VBRUU7QWYydUJWOztBZWx2QlE7O0VBRUU7QWZxdkJWOztBZWx2QlE7O0VBRUU7QWZxdkJWOztBZTV2QlE7O0VBRUU7QWYrdkJWOztBZTV2QlE7O0VBRUU7QWYrdkJWOztBYXp6Qkk7RUVVRTtJQUNFO0VmbXpCTjtFZWh6Qkk7SUFwQ0o7SUFDQTtFZnUxQkE7RWV6MEJBO0lBQ0U7SUFDQTtFZjIwQkY7RWU3MEJBO0lBQ0U7SUFDQTtFZiswQkY7RWVqMUJBO0lBQ0U7SUFDQTtFZm0xQkY7RWVyMUJBO0lBQ0U7SUFDQTtFZnUxQkY7RWV6MUJBO0lBQ0U7SUFDQTtFZjIxQkY7RWU3MUJBO0lBQ0U7SUFDQTtFZisxQkY7RWVoMEJJO0lBaERKO0lBQ0E7RWZtM0JBO0VlOXpCUTtJQWhFTjtJQUNBO0VmaTRCRjtFZWwwQlE7SUFoRU47SUFDQTtFZnE0QkY7RWV0MEJRO0lBaEVOO0lBQ0E7RWZ5NEJGO0VlMTBCUTtJQWhFTjtJQUNBO0VmNjRCRjtFZTkwQlE7SUFoRU47SUFDQTtFZmk1QkY7RWVsMUJRO0lBaEVOO0lBQ0E7RWZxNUJGO0VldDFCUTtJQWhFTjtJQUNBO0VmeTVCRjtFZTExQlE7SUFoRU47SUFDQTtFZjY1QkY7RWU5MUJRO0lBaEVOO0lBQ0E7RWZpNkJGO0VlbDJCUTtJQWhFTjtJQUNBO0VmcTZCRjtFZXQyQlE7SUFoRU47SUFDQTtFZnk2QkY7RWUxMkJRO0lBaEVOO0lBQ0E7RWY2NkJGO0VldDJCVTtJQXhEVjtFZmk2QkE7RWV6MkJVO0lBeERWO0VmbzZCQTtFZTUyQlU7SUF4RFY7RWZ1NkJBO0VlLzJCVTtJQXhEVjtFZjA2QkE7RWVsM0JVO0lBeERWO0VmNjZCQTtFZXIzQlU7SUF4RFY7RWZnN0JBO0VleDNCVTtJQXhEVjtFZm03QkE7RWUzM0JVO0lBeERWO0VmczdCQTtFZTkzQlU7SUF4RFY7RWZ5N0JBO0VlajRCVTtJQXhEVjtFZjQ3QkE7RWVwNEJVO0lBeERWO0VmKzdCQTtFZXY0QlU7SUF4RFY7RWZrOEJBO0VlLzNCTTs7SUFFRTtFZmk0QlI7RWU5M0JNOztJQUVFO0VmZzRCUjtFZXY0Qk07O0lBRUU7RWZ5NEJSO0VldDRCTTs7SUFFRTtFZnc0QlI7RWUvNEJNOztJQUVFO0VmaTVCUjtFZTk0Qk07O0lBRUU7RWZnNUJSO0VldjVCTTs7SUFFRTtFZnk1QlI7RWV0NUJNOztJQUVFO0VmdzVCUjtFZS81Qk07O0lBRUU7RWZpNkJSO0VlOTVCTTs7SUFFRTtFZmc2QlI7RWV2NkJNOztJQUVFO0VmeTZCUjtFZXQ2Qk07O0lBRUU7RWZ3NkJSO0FBQ0Y7QWFuK0JJO0VFVUU7SUFDRTtFZjQ5Qk47RWV6OUJJO0lBcENKO0lBQ0E7RWZnZ0NBO0VlbC9CQTtJQUNFO0lBQ0E7RWZvL0JGO0VldC9CQTtJQUNFO0lBQ0E7RWZ3L0JGO0VlMS9CQTtJQUNFO0lBQ0E7RWY0L0JGO0VlOS9CQTtJQUNFO0lBQ0E7RWZnZ0NGO0VlbGdDQTtJQUNFO0lBQ0E7RWZvZ0NGO0VldGdDQTtJQUNFO0lBQ0E7RWZ3Z0NGO0VleitCSTtJQWhESjtJQUNBO0VmNGhDQTtFZXYrQlE7SUFoRU47SUFDQTtFZjBpQ0Y7RWUzK0JRO0lBaEVOO0lBQ0E7RWY4aUNGO0VlLytCUTtJQWhFTjtJQUNBO0Vma2pDRjtFZW4vQlE7SUFoRU47SUFDQTtFZnNqQ0Y7RWV2L0JRO0lBaEVOO0lBQ0E7RWYwakNGO0VlMy9CUTtJQWhFTjtJQUNBO0VmOGpDRjtFZS8vQlE7SUFoRU47SUFDQTtFZmtrQ0Y7RWVuZ0NRO0lBaEVOO0lBQ0E7RWZza0NGO0VldmdDUTtJQWhFTjtJQUNBO0VmMGtDRjtFZTNnQ1E7SUFoRU47SUFDQTtFZjhrQ0Y7RWUvZ0NRO0lBaEVOO0lBQ0E7RWZrbENGO0VlbmhDUTtJQWhFTjtJQUNBO0Vmc2xDRjtFZS9nQ1U7SUF4RFY7RWYwa0NBO0VlbGhDVTtJQXhEVjtFZjZrQ0E7RWVyaENVO0lBeERWO0VmZ2xDQTtFZXhoQ1U7SUF4RFY7RWZtbENBO0VlM2hDVTtJQXhEVjtFZnNsQ0E7RWU5aENVO0lBeERWO0VmeWxDQTtFZWppQ1U7SUF4RFY7RWY0bENBO0VlcGlDVTtJQXhEVjtFZitsQ0E7RWV2aUNVO0lBeERWO0Vma21DQTtFZTFpQ1U7SUF4RFY7RWZxbUNBO0VlN2lDVTtJQXhEVjtFZndtQ0E7RWVoakNVO0lBeERWO0VmMm1DQTtFZXhpQ007O0lBRUU7RWYwaUNSO0VldmlDTTs7SUFFRTtFZnlpQ1I7RWVoakNNOztJQUVFO0Vma2pDUjtFZS9pQ007O0lBRUU7RWZpakNSO0VleGpDTTs7SUFFRTtFZjBqQ1I7RWV2akNNOztJQUVFO0VmeWpDUjtFZWhrQ007O0lBRUU7RWZra0NSO0VlL2pDTTs7SUFFRTtFZmlrQ1I7RWV4a0NNOztJQUVFO0VmMGtDUjtFZXZrQ007O0lBRUU7RWZ5a0NSO0VlaGxDTTs7SUFFRTtFZmtsQ1I7RWUva0NNOztJQUVFO0VmaWxDUjtBQUNGO0FhNW9DSTtFRVVFO0lBQ0U7RWZxb0NOO0VlbG9DSTtJQXBDSjtJQUNBO0VmeXFDQTtFZTNwQ0E7SUFDRTtJQUNBO0VmNnBDRjtFZS9wQ0E7SUFDRTtJQUNBO0VmaXFDRjtFZW5xQ0E7SUFDRTtJQUNBO0VmcXFDRjtFZXZxQ0E7SUFDRTtJQUNBO0VmeXFDRjtFZTNxQ0E7SUFDRTtJQUNBO0VmNnFDRjtFZS9xQ0E7SUFDRTtJQUNBO0VmaXJDRjtFZWxwQ0k7SUFoREo7SUFDQTtFZnFzQ0E7RWVocENRO0lBaEVOO0lBQ0E7RWZtdENGO0VlcHBDUTtJQWhFTjtJQUNBO0VmdXRDRjtFZXhwQ1E7SUFoRU47SUFDQTtFZjJ0Q0Y7RWU1cENRO0lBaEVOO0lBQ0E7RWYrdENGO0VlaHFDUTtJQWhFTjtJQUNBO0VmbXVDRjtFZXBxQ1E7SUFoRU47SUFDQTtFZnV1Q0Y7RWV4cUNRO0lBaEVOO0lBQ0E7RWYydUNGO0VlNXFDUTtJQWhFTjtJQUNBO0VmK3VDRjtFZWhyQ1E7SUFoRU47SUFDQTtFZm12Q0Y7RWVwckNRO0lBaEVOO0lBQ0E7RWZ1dkNGO0VleHJDUTtJQWhFTjtJQUNBO0VmMnZDRjtFZTVyQ1E7SUFoRU47SUFDQTtFZit2Q0Y7RWV4ckNVO0lBeERWO0VmbXZDQTtFZTNyQ1U7SUF4RFY7RWZzdkNBO0VlOXJDVTtJQXhEVjtFZnl2Q0E7RWVqc0NVO0lBeERWO0VmNHZDQTtFZXBzQ1U7SUF4RFY7RWYrdkNBO0VldnNDVTtJQXhEVjtFZmt3Q0E7RWUxc0NVO0lBeERWO0VmcXdDQTtFZTdzQ1U7SUF4RFY7RWZ3d0NBO0VlaHRDVTtJQXhEVjtFZjJ3Q0E7RWVudENVO0lBeERWO0VmOHdDQTtFZXR0Q1U7SUF4RFY7RWZpeENBO0VlenRDVTtJQXhEVjtFZm94Q0E7RWVqdENNOztJQUVFO0VmbXRDUjtFZWh0Q007O0lBRUU7RWZrdENSO0VlenRDTTs7SUFFRTtFZjJ0Q1I7RWV4dENNOztJQUVFO0VmMHRDUjtFZWp1Q007O0lBRUU7RWZtdUNSO0VlaHVDTTs7SUFFRTtFZmt1Q1I7RWV6dUNNOztJQUVFO0VmMnVDUjtFZXh1Q007O0lBRUU7RWYwdUNSO0VlanZDTTs7SUFFRTtFZm12Q1I7RWVodkNNOztJQUVFO0Vma3ZDUjtFZXp2Q007O0lBRUU7RWYydkNSO0VleHZDTTs7SUFFRTtFZjB2Q1I7QUFDRjtBYXJ6Q0k7RUVVRTtJQUNFO0VmOHlDTjtFZTN5Q0k7SUFwQ0o7SUFDQTtFZmsxQ0E7RWVwMENBO0lBQ0U7SUFDQTtFZnMwQ0Y7RWV4MENBO0lBQ0U7SUFDQTtFZjAwQ0Y7RWU1MENBO0lBQ0U7SUFDQTtFZjgwQ0Y7RWVoMUNBO0lBQ0U7SUFDQTtFZmsxQ0Y7RWVwMUNBO0lBQ0U7SUFDQTtFZnMxQ0Y7RWV4MUNBO0lBQ0U7SUFDQTtFZjAxQ0Y7RWUzekNJO0lBaERKO0lBQ0E7RWY4MkNBO0VlenpDUTtJQWhFTjtJQUNBO0VmNDNDRjtFZTd6Q1E7SUFoRU47SUFDQTtFZmc0Q0Y7RWVqMENRO0lBaEVOO0lBQ0E7RWZvNENGO0VlcjBDUTtJQWhFTjtJQUNBO0VmdzRDRjtFZXowQ1E7SUFoRU47SUFDQTtFZjQ0Q0Y7RWU3MENRO0lBaEVOO0lBQ0E7RWZnNUNGO0VlajFDUTtJQWhFTjtJQUNBO0VmbzVDRjtFZXIxQ1E7SUFoRU47SUFDQTtFZnc1Q0Y7RWV6MUNRO0lBaEVOO0lBQ0E7RWY0NUNGO0VlNzFDUTtJQWhFTjtJQUNBO0VmZzZDRjtFZWoyQ1E7SUFoRU47SUFDQTtFZm82Q0Y7RWVyMkNRO0lBaEVOO0lBQ0E7RWZ3NkNGO0VlajJDVTtJQXhEVjtFZjQ1Q0E7RWVwMkNVO0lBeERWO0VmKzVDQTtFZXYyQ1U7SUF4RFY7RWZrNkNBO0VlMTJDVTtJQXhEVjtFZnE2Q0E7RWU3MkNVO0lBeERWO0VmdzZDQTtFZWgzQ1U7SUF4RFY7RWYyNkNBO0VlbjNDVTtJQXhEVjtFZjg2Q0E7RWV0M0NVO0lBeERWO0VmaTdDQTtFZXozQ1U7SUF4RFY7RWZvN0NBO0VlNTNDVTtJQXhEVjtFZnU3Q0E7RWUvM0NVO0lBeERWO0VmMDdDQTtFZWw0Q1U7SUF4RFY7RWY2N0NBO0VlMTNDTTs7SUFFRTtFZjQzQ1I7RWV6M0NNOztJQUVFO0VmMjNDUjtFZWw0Q007O0lBRUU7RWZvNENSO0VlajRDTTs7SUFFRTtFZm00Q1I7RWUxNENNOztJQUVFO0VmNDRDUjtFZXo0Q007O0lBRUU7RWYyNENSO0VlbDVDTTs7SUFFRTtFZm81Q1I7RWVqNUNNOztJQUVFO0VmbTVDUjtFZTE1Q007O0lBRUU7RWY0NUNSO0VlejVDTTs7SUFFRTtFZjI1Q1I7RWVsNkNNOztJQUVFO0VmbzZDUjtFZWo2Q007O0lBRUU7RWZtNkNSO0FBQ0Y7QWE5OUNJO0VFVUU7SUFDRTtFZnU5Q047RWVwOUNJO0lBcENKO0lBQ0E7RWYyL0NBO0VlNytDQTtJQUNFO0lBQ0E7RWYrK0NGO0Vlai9DQTtJQUNFO0lBQ0E7RWZtL0NGO0Vlci9DQTtJQUNFO0lBQ0E7RWZ1L0NGO0Vlei9DQTtJQUNFO0lBQ0E7RWYyL0NGO0VlNy9DQTtJQUNFO0lBQ0E7RWYrL0NGO0VlamdEQTtJQUNFO0lBQ0E7RWZtZ0RGO0VlcCtDSTtJQWhESjtJQUNBO0VmdWhEQTtFZWwrQ1E7SUFoRU47SUFDQTtFZnFpREY7RWV0K0NRO0lBaEVOO0lBQ0E7RWZ5aURGO0VlMStDUTtJQWhFTjtJQUNBO0VmNmlERjtFZTkrQ1E7SUFoRU47SUFDQTtFZmlqREY7RWVsL0NRO0lBaEVOO0lBQ0E7RWZxakRGO0VldC9DUTtJQWhFTjtJQUNBO0VmeWpERjtFZTEvQ1E7SUFoRU47SUFDQTtFZjZqREY7RWU5L0NRO0lBaEVOO0lBQ0E7RWZpa0RGO0VlbGdEUTtJQWhFTjtJQUNBO0VmcWtERjtFZXRnRFE7SUFoRU47SUFDQTtFZnlrREY7RWUxZ0RRO0lBaEVOO0lBQ0E7RWY2a0RGO0VlOWdEUTtJQWhFTjtJQUNBO0VmaWxERjtFZTFnRFU7SUF4RFY7RWZxa0RBO0VlN2dEVTtJQXhEVjtFZndrREE7RWVoaERVO0lBeERWO0VmMmtEQTtFZW5oRFU7SUF4RFY7RWY4a0RBO0VldGhEVTtJQXhEVjtFZmlsREE7RWV6aERVO0lBeERWO0Vmb2xEQTtFZTVoRFU7SUF4RFY7RWZ1bERBO0VlL2hEVTtJQXhEVjtFZjBsREE7RWVsaURVO0lBeERWO0VmNmxEQTtFZXJpRFU7SUF4RFY7RWZnbURBO0VleGlEVTtJQXhEVjtFZm1tREE7RWUzaURVO0lBeERWO0Vmc21EQTtFZW5pRE07O0lBRUU7RWZxaURSO0VlbGlETTs7SUFFRTtFZm9pRFI7RWUzaURNOztJQUVFO0VmNmlEUjtFZTFpRE07O0lBRUU7RWY0aURSO0VlbmpETTs7SUFFRTtFZnFqRFI7RWVsakRNOztJQUVFO0Vmb2pEUjtFZTNqRE07O0lBRUU7RWY2akRSO0VlMWpETTs7SUFFRTtFZjRqRFI7RWVua0RNOztJQUVFO0VmcWtEUjtFZWxrRE07O0lBRUU7RWZva0RSO0VlM2tETTs7SUFFRTtFZjZrRFI7RWUxa0RNOztJQUVFO0VmNGtEUjtBQUNGO0FnQmxzREE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0EsbUJYb1dPO0VXbldQO0VBQ0EsbUJYcW9CNEI7RVdwb0I1QjtBaEJtc0RGO0FnQjVyREU7RUFDRTtFQUNBO0VBQ0Esd0JYaWMwQjtFV2hjMUI7QWhCOHJESjtBZ0IzckRFO0VBQ0U7QWhCNnJESjtBZ0IxckRFO0VBQ0U7QWhCNHJESjs7QWdCeHJEQTtFQUNFO0FoQjJyREY7O0FnQnByREE7RUFDRTtBaEJ1ckRGOztBZ0I3cURFO0VBQ0U7QWhCZ3JESjs7QWdCanFERTtFQUNFO0FoQm9xREo7QWdCanFESTtFQUNFO0FoQm1xRE47O0FnQjVwREU7RUFDRTtBaEIrcERKO0FnQjVwREU7RUFDRTtBaEI4cERKOztBZ0JwcERFO0VBQ0U7RUFDQTtBaEJ1cERKOztBZ0JqcERFO0VBQ0U7RUFDQTtBaEJvcERKOztBZ0I1b0RBO0VBQ0U7RUFDQTtBaEIrb0RGOztBZ0J2b0RFO0VBQ0U7RUFDQTtBaEIwb0RKOztBaUIvd0RFO0VBT0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBakIyd0RKOztBaUI3eERFO0VBT0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBakJ5eERKOztBaUIzeURFO0VBT0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBakJ1eURKOztBaUJ6ekRFO0VBT0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBakJxekRKOztBaUJ2MERFO0VBT0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBakJtMERKOztBaUJyMURFO0VBT0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBakJpMURKOztBaUJuMkRFO0VBT0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBakIrMURKOztBaUJqM0RFO0VBT0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBakI2MkRKOztBZ0JudURJO0VBQ0U7RUFDQTtBaEJzdUROOztBYTF6REk7RUdrRkE7SUFDRTtJQUNBO0VoQjR1REo7QUFDRjtBYWowREk7RUdrRkE7SUFDRTtJQUNBO0VoQmt2REo7QUFDRjtBYXYwREk7RUdrRkE7SUFDRTtJQUNBO0VoQnd2REo7QUFDRjtBYTcwREk7RUdrRkE7SUFDRTtJQUNBO0VoQjh2REo7QUFDRjtBYW4xREk7RUdrRkE7SUFDRTtJQUNBO0VoQm93REo7QUFDRjtBa0JqNkRBO0VBQ0UscUJiOHhCc0M7QUxxb0N4Qzs7QWtCMTVEQTtFQUNFO0VBQ0E7RUFDQTtFZm9SSSxrQkFMSTtFZTNRUixnQmIraEI0QjtBTDQzQzlCOztBa0J2NURBO0VBQ0U7RUFDQTtFZjBRSSxrQkFMSTtBSHNwRFY7O0FrQnY1REE7RUFDRTtFQUNBO0Vmb1FJLG1CQUxJO0FINHBEVjs7QW1CeDdEQTtFQUNFLG1CZHN4QnNDO0VGdGZsQyxrQkFMSTtFZ0J2UlIsY2RLUztBTG83RFg7O0FvQjk3REE7RUFDRTtFQUNBO0VBQ0E7RWpCOFJJLGVBTEk7RWlCdFJSLGdCZm1pQjRCO0VlbGlCNUIsZ0JmeWlCNEI7RWV4aUI1QixjZktTO0VlSlQsc0JmTFM7RWVNVDtFQUNBO0VBQ0E7RWRHRTtFZUhFLHdFRE1KO0FwQjQ3REY7QXFCOTdETTtFRGhCTjtJQ2lCUTtFckJpOEROO0FBQ0Y7QW9CLzdERTtFQUNFO0FwQmk4REo7QW9CLzdESTtFQUNFO0FwQmk4RE47QW9CNTdERTtFQUNFLGNmakJPO0Vla0JQLHNCZjNCTztFZTRCUCxxQmZxeUJvQztFZXB5QnBDO0VBS0Usa0RmNnFCMEI7QUw2d0NoQztBb0JuN0RFO0VBRUU7QXBCbzdESjtBb0JoN0RFO0VBQ0UsY2YxQ087RWU0Q1A7QXBCaTdESjtBb0J6NkRFO0VBRUUseUJmMURPO0VlNkRQO0FwQnc2REo7QW9CcDZERTtFQUNFO0VBQ0E7RUFDQSwwQmZnb0IwQjtFZS9uQjFCLGNmOURPO0VpQmJULHlCakJNUztFZXVFUDtFQUNBO0VBQ0E7RUFDQTtFQUNBLDRCZjBZMEI7RWV6WTFCO0VDdEVFLHFJRHVFRjtBcEJzNkRKO0FxQnorRE07RUR1REo7SUN0RE07RXJCNCtETjtBQUNGO0FvQng2REU7RUFDRSx5QmZzNEI4QjtBTG9pQ2xDOztBb0JqNkRBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxnQmYyYzRCO0VlMWM1QixjZnpGUztFZTBGVDtFQUNBO0VBQ0E7QXBCbzZERjtBb0JsNkRFO0VBQ0U7QXBCbzZESjtBb0JqNkRFO0VBRUU7RUFDQTtBcEJrNkRKOztBb0J2NURBO0VBQ0Usc0Nmc3RCc0M7RWVydEJ0QztFakJrS0ksbUJBTEk7RUc3UU47QU40Z0VKO0FvQng1REU7RUFDRTtFQUNBO0VBQ0EseUJmZ2xCMEI7QUwwMEM5Qjs7QW9CdDVEQTtFQUNFLG9DZjBzQnNDO0VlenNCdEM7RWpCcUpJLGtCQUxJO0VHN1FOO0FOd2hFSjtBb0J2NURFO0VBQ0U7RUFDQTtFQUNBLHVCZnVrQjBCO0FMazFDOUI7O0FvQmo1REU7RUFDRSx1Q2Z1ckJvQztBTDZ0Q3hDO0FvQmo1REU7RUFDRSxzQ2ZvckJvQztBTCt0Q3hDO0FvQmg1REU7RUFDRSxvQ2ZpckJvQztBTGl1Q3hDOztBb0I3NERBO0VBQ0UsV2YrcUJzQztFZTlxQnRDLG1DZndxQnNDO0VldnFCdEMsaUJmNmhCNEI7QUxtM0M5QjtBb0I5NERFO0VBQ0U7QXBCZzVESjtBb0I3NERFO0VBQ0U7RWRwS0E7QU5vakVKO0FvQjU0REU7RWR4S0U7QU51akVKO0FvQjM0REU7RUFBb0Isa0NmeXBCa0I7QUxxdkN4QztBb0I3NERFO0VBQW9CLGdDZnlwQmtCO0FMdXZDeEM7O0F1QjNrRUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFcEI0UkksZUFMSTtFb0JwUlIsZ0JsQmlpQjRCO0VrQmhpQjVCLGdCbEJ1aUI0QjtFa0J0aUI1QixjbEJHUztFa0JGVCxzQmxCUFM7RWtCUVQ7RUFDQTtFQUNBLHlDbEJ3NUJrQztFa0J2NUJsQywwQmxCdzVCa0M7RWtCdjVCbEM7RWpCREU7RWVIRSx3RUVPSjtFQUNBO0F2QjRrRUY7QXFCaGxFTTtFRWZOO0lGZ0JRO0VyQm1sRU47QUFDRjtBdUIva0VFO0VBQ0UscUJsQjh5Qm9DO0VrQjd5QnBDO0VBS0Usa0RsQnk1QjRCO0FMb3JDbEM7QXVCemtFRTtFQUVFLHNCbEJ1cUIwQjtFa0J0cUIxQjtBdkIwa0VKO0F1QnZrRUU7RUFFRSx5QmxCbkNPO0FMMm1FWDtBdUJua0VFO0VBQ0U7RUFDQTtBdkJxa0VKOztBdUJqa0VBO0VBQ0Usb0JsQmdxQjRCO0VrQi9wQjVCLHVCbEIrcEI0QjtFa0I5cEI1QixvQmxCK3BCNEI7RUZyYnhCLG1CQUxJO0VHN1FOO0FOOG1FSjs7QXVCamtFQTtFQUNFLG1CbEI0cEI0QjtFa0IzcEI1QixzQmxCMnBCNEI7RWtCMXBCNUIsa0JsQjJwQjRCO0VGemJ4QixrQkFMSTtFRzdRTjtBTnNuRUo7O0F3QnJvRUE7RUFDRTtFQUNBLGtCbkI0MUJ3QztFbUIzMUJ4QyxtQm5CNDFCd0M7RW1CMzFCeEMsdUJuQjQxQndDO0FMNHlDMUM7QXdCdG9FRTtFQUNFO0VBQ0E7QXhCd29FSjs7QXdCcG9FQTtFQUNFLG9CbkJrMUJ3QztFbUJqMUJ4QztFQUNBO0F4QnVvRUY7QXdCcm9FRTtFQUNFO0VBQ0E7RUFDQTtBeEJ1b0VKOztBd0Jub0VBO0VBQ0UsVW5CbzBCd0M7RW1CbjBCeEMsV25CbTBCd0M7RW1CbDBCeEM7RUFDQTtFQUNBLHNCbkJ6QlM7RW1CMEJUO0VBQ0E7RUFDQTtFQUNBLHFDbkJ1MEJ3QztFbUJ0MEJ4QztFQUNBO0F4QnNvRUY7QXdCbm9FRTtFbEJ2QkU7QU42cEVKO0F3QmxvRUU7RUFFRSxrQm5COHpCc0M7QUxxMEMxQztBd0Job0VFO0VBQ0UsdUJuQnF6QnNDO0FMNjBDMUM7QXdCL25FRTtFQUNFLHFCbkJpeEJvQztFbUJoeEJwQztFQUNBLGtEbkI2cEI0QjtBTG8rQ2hDO0F3QjluRUU7RUFDRSx5Qm5CeEJNO0VtQnlCTixxQm5CekJNO0FMeXBFVjtBd0I5bkVJO0VBSUk7QXhCNm5FUjtBd0J6bkVJO0VBSUk7QXhCd25FUjtBd0JubkVFO0VBQ0UseUJuQjdDTTtFbUI4Q04scUJuQjlDTTtFbUJtREo7QXhCaW5FTjtBd0I3bUVFO0VBQ0U7RUFDQTtFQUNBLFluQjZ4QnVDO0FMazFDM0M7QXdCeG1FSTtFQUNFO0VBQ0EsWW5Cb3hCcUM7QUxzMUMzQzs7QXdCNWxFQTtFQUNFLG1CbkIrd0JnQztBTGcxQ2xDO0F3QjdsRUU7RUFDRSxVbkIyd0I4QjtFbUIxd0I5QjtFQUNBO0VBQ0E7RWxCM0dBO0VlSEUsaURHZ0hGO0F4QitsRUo7QXFCM3NFTTtFR3NHSjtJSHJHTTtFckI4c0VOO0FBQ0Y7QXdCbG1FSTtFQUNFO0F4Qm9tRU47QXdCam1FSTtFQUNFLGlDbkIwd0I0QjtFbUJyd0IxQjtBeEIrbEVSO0F3QjFsRUU7RUFDRSxvQm5CcXZCOEI7RW1CcHZCOUI7QXhCNGxFSjtBd0IxbEVJO0VBQ0U7RUFDQTtBeEI0bEVOOztBd0J2bEVBO0VBQ0U7RUFDQSxrQm5CbXVCZ0M7QUx1M0NsQzs7QXdCdmxFQTtFQUNFO0VBQ0E7RUFDQTtBeEIwbEVGO0F3QnRsRUk7RUFDRTtFQUNBO0VBQ0EsYW5Cb2xCd0I7QUxvZ0Q5Qjs7QXlCN3ZFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpCZ3dFRjtBeUI5dkVFO0VBQ0U7QXpCZ3dFSjtBeUI1dkVJO0VBQTBCLGtFcEJxOEJhO0FMMHpDM0M7QXlCOXZFSTtFQUEwQixrRXBCbzhCYTtBTDZ6QzNDO0F5Qjl2RUU7RUFDRTtBekJnd0VKO0F5Qjd2RUU7RUFDRSxXcEJzN0J1QztFb0JyN0J2QyxZcEJxN0J1QztFb0JwN0J2QztFSHpCRix5QmpCa0NRO0VvQlBOLFNwQnE3QnVDO0VDajhCdkM7RWVIRSw0R0lrQkY7RUFDQTtBekI4dkVKO0FxQjd3RU07RUlNSjtJSkxNO0VyQmd4RU47QUFDRjtBeUJqd0VJO0VIakNGLHlCakJxOUJ5QztBTGcxQzNDO0F5Qi92RUU7RUFDRSxXcEIrNUI4QjtFb0I5NUI5QixjcEIrNUI4QjtFb0I5NUI5QjtFQUNBLGVwQjg1QjhCO0VvQjc1QjlCLHlCcEJwQ087RW9CcUNQO0VuQjdCQTtBTit4RUo7QXlCN3ZFRTtFQUNFLFdwQjI1QnVDO0VvQjE1QnZDLFlwQjA1QnVDO0VpQjc4QnpDLHlCakJrQ1E7RW9CbUJOLFNwQjI1QnVDO0VDajhCdkM7RWVIRSw0R0k0Q0Y7RUFDQTtBekI4dkVKO0FxQnZ5RU07RUlpQ0o7SUpoQ007RXJCMHlFTjtBQUNGO0F5Qmp3RUk7RUgzREYseUJqQnE5QnlDO0FMMDJDM0M7QXlCL3ZFRTtFQUNFLFdwQnE0QjhCO0VvQnA0QjlCLGNwQnE0QjhCO0VvQnA0QjlCO0VBQ0EsZXBCbzRCOEI7RW9CbjRCOUIseUJwQjlETztFb0IrRFA7RW5CdkRBO0FOeXpFSjtBeUI3dkVFO0VBQ0U7QXpCK3ZFSjtBeUI3dkVJO0VBQ0UseUJwQnRFSztBTHEwRVg7QXlCNXZFSTtFQUNFLHlCcEIxRUs7QUx3MEVYOztBMEJyMUVBO0VBQ0U7QTFCdzFFRjtBMEJ0MUVFOzs7RUFHRSwwQnJCKzlCOEI7RXFCOTlCOUIsaUJyQis5QjhCO0FMeTNDbEM7QTBCcjFFRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VMUEUsZ0VLUUY7QTFCdTFFSjtBcUIzMUVNO0VLVko7SUxXTTtFckI4MUVOO0FBQ0Y7QTBCejFFRTs7RUFFRTtBMUIyMUVKO0EwQnoxRUk7O0VBQ0U7QTFCNDFFTjtBMEJ6MUVJOzs7RUFFRSxxQnJCbzhCNEI7RXFCbjhCNUIsd0JyQm84QjRCO0FMdzVDbEM7QTBCejFFSTs7RUFDRSxxQnJCKzdCNEI7RXFCOTdCNUIsd0JyQis3QjRCO0FMNjVDbEM7QTBCeDFFRTtFQUNFLHFCckJ5N0I4QjtFcUJ4N0I5Qix3QnJCeTdCOEI7QUxpNkNsQztBMEJuMUVJOzs7O0VBQ0UsYXJCazdCNEI7RXFCajdCNUIsOERyQms3QjRCO0FMczZDbEM7QTBCbjFFSTtFQUNFLGFyQjI2QjRCO0VxQjE2QjVCLDhEckIyNkI0QjtBTDA2Q2xDO0EwQmgxRUk7RUFDRTtBMUJrMUVOOztBMkJyNUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0J3NUVGO0EyQnQ1RUU7OztFQUdFO0VBQ0E7RUFDQTtFQUNBO0EzQnc1RUo7QTJCcDVFRTs7O0VBR0U7QTNCczVFSjtBMkJoNUVFO0VBQ0U7RUFDQTtBM0JrNUVKO0EyQmg1RUk7RUFDRTtBM0JrNUVOOztBMkJ2NEVBO0VBQ0U7RUFDQTtFQUNBO0V4Qm9QSSxlQUxJO0V3QjdPUixnQnRCMGY0QjtFc0J6ZjVCLGdCdEJnZ0I0QjtFc0IvZjVCLGN0QnBDUztFc0JxQ1Q7RUFDQTtFQUNBLHlCdEI5Q1M7RXNCK0NUO0VyQnRDRTtBTmk3RUo7O0EyQmo0RUE7Ozs7RUFJRTtFeEI4Tkksa0JBTEk7RUc3UU47QU4wN0VKOztBMkJqNEVBOzs7O0VBSUU7RXhCcU5JLG1CQUxJO0VHN1FOO0FObThFSjs7QTJCajRFQTs7RUFFRTtBM0JvNEVGOztBMkJ2M0VJOzs7O0VyQmpFQTtFQUNBO0FOKzdFSjtBMkJ0M0VJOzs7O0VyQjFFQTtFQUNBO0FOczhFSjtBMkJoM0VFO0VBQ0U7RXJCMUVBO0VBQ0E7QU42N0VKO0EyQmgzRUU7O0VyQjlFRTtFQUNBO0FOazhFSjs7QTRCMzlFRTtFQUNFO0VBQ0E7RUFDQSxtQnZCK3ZCb0M7RUZ0ZmxDLGtCQUxJO0V5QmpRTixjdkJpK0JxQjtBTDQvQ3pCOztBNEIxOUVFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RXpCNFBFLG1CQUxJO0V5QnBQTixXQXZCYztFQXdCZCx3Q0F2QmlCO0V0QkhqQjtBTnUvRUo7O0E0Qng5RUk7Ozs7RUFFRTtBNUI2OUVOOztBNEIzZ0ZJO0VBb0RFLHFCdkJzOEJtQjtFdUJuOEJqQixvQ3ZCc3hCZ0M7RXVCcnhCaEM7RUFDQTtFQUNBO0VBQ0E7QTVCeTlFUjtBNEJ0OUVNO0VBQ0UscUJ2QjI3QmlCO0V1QjE3QmpCLGlEQS9DYTtBNUJ1Z0ZyQjs7QTRCeGhGSTtFQXlFSSxvQ3ZCb3dCZ0M7RXVCbndCaEM7QTVCbTlFUjs7QTRCN2hGSTtFQWlGRSxxQnZCeTZCbUI7QUx1aUR6QjtBNEI3OEVRO0VBRUUsdUJ2Qm0xQjhCO0V1QmwxQjlCO0VBQ0E7RUFDQTtBNUI4OEVWO0E0QjE4RU07RUFDRSxxQnZCNDVCaUI7RXVCMzVCakIsaURBOUVhO0E1QjBoRnJCOztBNEIzaUZJO0VBdUdJO0E1Qnc4RVI7O0E0Qi9pRkk7RUE4R0UscUJ2QjQ0Qm1CO0FMeWpEekI7QTRCbjhFTTtFQUNFLHlCdkJ5NEJpQjtBTDRqRHpCO0E0Qmw4RU07RUFDRSxpREFwR2E7QTVCd2lGckI7QTRCajhFTTtFQUNFLGN2Qmk0QmlCO0FMa2tEekI7O0E0Qjk3RUk7RUFDRTtBNUJpOEVOOztBNEJoa0ZJOzs7OztFQXlJTTtBNUIrN0VWOztBNEJyakZFO0VBQ0U7RUFDQTtFQUNBLG1CdkIrdkJvQztFRnRmbEMsa0JBTEk7RXlCalFOLGN2QmkrQnFCO0FMc2xEekI7O0E0QnBqRkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFekI0UEUsbUJBTEk7RXlCcFBOLFdBdkJjO0VBd0JkLHdDQXZCaUI7RXRCSGpCO0FOaWxGSjs7QTRCbGpGSTs7OztFQUVFO0E1QnVqRk47O0E0QnJtRkk7RUFvREUscUJ2QnM4Qm1CO0V1Qm44QmpCLG9DdkJzeEJnQztFdUJyeEJoQztFQUNBO0VBQ0E7RUFDQTtBNUJtakZSO0E0QmhqRk07RUFDRSxxQnZCMjdCaUI7RXVCMTdCakIsaURBL0NhO0E1QmltRnJCOztBNEJsbkZJO0VBeUVJLG9DdkJvd0JnQztFdUJud0JoQztBNUI2aUZSOztBNEJ2bkZJO0VBaUZFLHFCdkJ5NkJtQjtBTGlvRHpCO0E0QnZpRlE7RUFFRSx1QnZCbTFCOEI7RXVCbDFCOUI7RUFDQTtFQUNBO0E1QndpRlY7QTRCcGlGTTtFQUNFLHFCdkI0NUJpQjtFdUIzNUJqQixpREE5RWE7QTVCb25GckI7O0E0QnJvRkk7RUF1R0k7QTVCa2lGUjs7QTRCem9GSTtFQThHRSxxQnZCNDRCbUI7QUxtcER6QjtBNEI3aEZNO0VBQ0UseUJ2Qnk0QmlCO0FMc3BEekI7QTRCNWhGTTtFQUNFLGlEQXBHYTtBNUJrb0ZyQjtBNEIzaEZNO0VBQ0UsY3ZCaTRCaUI7QUw0cER6Qjs7QTRCeGhGSTtFQUNFO0E1QjJoRk47O0E0QjFwRkk7Ozs7O0VBMklNO0E1QnVoRlY7O0E2QnBxRkE7RUFFRTtFQUNBO0VBQ0E7RTFCNlJJLHdCQUxJO0UwQnRSUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0UxQjRRSSxrQ0FMSTtFMEJyUVI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0V2QmpCRTtFZ0JmRixrQ09rQ3FCO0VSdEJqQixxSVF3Qko7QTdCa3FGRjtBcUJ0ckZNO0VRaEJOO0lSaUJRO0VyQnlyRk47QUFDRjtBNkJycUZFO0VBQ0U7RUFFQTtFQUNBO0E3QnNxRko7QTZCbnFGRTtFQUVFO0VBQ0E7RUFDQTtBN0JvcUZKO0E2QmpxRkU7RUFDRTtFUHJERix3Q09zRHVCO0VBQ3JCO0VBQ0E7RUFLRTtBN0IrcEZOO0E2QjNwRkU7RUFDRTtFQUNBO0VBS0U7QTdCeXBGTjtBNkJycEZFO0VBS0U7RUFDQTtFQUdBO0E3QmlwRko7QTZCOW9GSTtFQUtJO0E3QjRvRlI7QTZCdm9GRTtFQUdFO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7QTdCc29GSjs7QTZCMW5GRTtFQ3RHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5Qm91RkY7O0E2QjNvRkU7RUN0R0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUJxdkZGOztBNkI1cEZFO0VDdEdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlCc3dGRjs7QTZCN3FGRTtFQ3RHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5QnV4RkY7O0E2QjlyRkU7RUN0R0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUJ3eUZGOztBNkIvc0ZFO0VDdEdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlCeXpGRjs7QTZCaHVGRTtFQ3RHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5QjAwRkY7O0E2Qmp2RkU7RUN0R0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUIyMUZGOztBNkJ4dUZFO0VDdkdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlCbTFGRjs7QTZCenZGRTtFQ3ZHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5Qm8yRkY7O0E2QjF3RkU7RUN2R0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUJxM0ZGOztBNkIzeEZFO0VDdkdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlCczRGRjs7QTZCNXlGRTtFQ3ZHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5QnU1RkY7O0E2Qjd6RkU7RUN2R0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUJ3NkZGOztBNkI5MEZFO0VDdkdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlCeTdGRjs7QTZCLzFGRTtFQ3ZHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5QjA4RkY7O0E2QnAyRkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQSwwQnhCMk93QztBTDJuRjFDO0E2QjUxRkU7RUFDRTtBN0I4MUZKO0E2QjMxRkU7RUFDRTtBN0I2MUZKOztBNkJsMUZBO0VDeElFO0VBQ0E7RTNCb09JLDJCQUxJO0UyQjdOUjtBOUI4OUZGOztBNkJyMUZBO0VDNUlFO0VBQ0E7RTNCb09JLDRCQUxJO0UyQjdOUjtBOUJxK0ZGOztBK0J4aUdBO0VWZ0JNLGdDVWZKO0EvQjJpR0Y7QXFCeGhHTTtFVXBCTjtJVnFCUTtFckIyaEdOO0FBQ0Y7QStCOWlHRTtFQUNFO0EvQmdqR0o7O0ErQjFpR0U7RUFDRTtBL0I2aUdKOztBK0J6aUdBO0VBQ0U7RUFDQTtFVkRJLDZCVUVKO0EvQjRpR0Y7QXFCMWlHTTtFVUxOO0lWTVE7RXJCNmlHTjtBQUNGO0ErQi9pR0U7RUFDRTtFQUNBO0VWTkUsNEJVT0Y7QS9CaWpHSjtBcUJwakdNO0VVQUo7SVZDTTtFckJ1akdOO0FBQ0Y7O0FnQzVrR0E7Ozs7OztFQU1FO0FoQytrR0Y7O0FnQzVrR0E7RUFDRTtBaEMra0dGO0FpQzVqR0k7RUFDRTtFQUNBLG9CNUJtZXdCO0U0QmxleEIsdUI1Qmlld0I7RTRCaGV4QjtFQWhDSjtFQUNBO0VBQ0E7RUFDQTtBakMrbEdGO0FpQzFpR0k7RUFDRTtBakM0aUdOOztBZ0NybEdBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFN0I2UUksNkJBTEk7RTZCdFFSO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTdCZ1BJLHVDQUxJO0U2QnpPUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTFCekNFO0FOK25HSjtBZ0NsbEdFO0VBQ0U7RUFDQTtFQUNBO0FoQ29sR0o7O0FnQzVqR0k7RUFDRTtBaEMrakdOO0FnQzdqR007RUFDRTtFQUNBO0FoQytqR1I7O0FnQzNqR0k7RUFDRTtBaEM4akdOO0FnQzVqR007RUFDRTtFQUNBO0FoQzhqR1I7O0FheG1HSTtFbUI0QkE7SUFDRTtFaENnbEdKO0VnQzlrR0k7SUFDRTtJQUNBO0VoQ2dsR047RWdDNWtHRTtJQUNFO0VoQzhrR0o7RWdDNWtHSTtJQUNFO0lBQ0E7RWhDOGtHTjtBQUNGO0Fhem5HSTtFbUI0QkE7SUFDRTtFaENnbUdKO0VnQzlsR0k7SUFDRTtJQUNBO0VoQ2dtR047RWdDNWxHRTtJQUNFO0VoQzhsR0o7RWdDNWxHSTtJQUNFO0lBQ0E7RWhDOGxHTjtBQUNGO0Fhem9HSTtFbUI0QkE7SUFDRTtFaENnbkdKO0VnQzltR0k7SUFDRTtJQUNBO0VoQ2duR047RWdDNW1HRTtJQUNFO0VoQzhtR0o7RWdDNW1HSTtJQUNFO0lBQ0E7RWhDOG1HTjtBQUNGO0FhenBHSTtFbUI0QkE7SUFDRTtFaENnb0dKO0VnQzluR0k7SUFDRTtJQUNBO0VoQ2dvR047RWdDNW5HRTtJQUNFO0VoQzhuR0o7RWdDNW5HSTtJQUNFO0lBQ0E7RWhDOG5HTjtBQUNGO0FhenFHSTtFbUI0QkE7SUFDRTtFaENncEdKO0VnQzlvR0k7SUFDRTtJQUNBO0VoQ2dwR047RWdDNW9HRTtJQUNFO0VoQzhvR0o7RWdDNW9HSTtJQUNFO0lBQ0E7RWhDOG9HTjtBQUNGO0FnQ3JvR0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBaEN1b0dKO0FpQ2h1R0k7RUFDRTtFQUNBLG9CNUJtZXdCO0U0QmxleEIsdUI1Qmlld0I7RTRCaGV4QjtFQXpCSjtFQUNBO0VBQ0E7RUFDQTtBakM0dkdGO0FpQzlzR0k7RUFDRTtBakNndEdOOztBZ0Mzb0dFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEM4b0dKO0FpQ3J2R0k7RUFDRTtFQUNBLG9CNUJtZXdCO0U0QmxleEIsdUI1Qmlld0I7RTRCaGV4QjtFQWxCSjtFQUNBO0VBQ0E7RUFDQTtBakMwd0dGO0FpQ251R0k7RUFDRTtBakNxdUdOO0FnQ3RwR0k7RUFDRTtBaEN3cEdOOztBZ0NscEdFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaENxcEdKO0FpQzd3R0k7RUFDRTtFQUNBLG9CNUJtZXdCO0U0QmxleEIsdUI1Qmlld0I7RTRCaGV4QjtBakMrd0dOO0FpQ3B3R007RUFDRTtBakNzd0dSO0FpQ253R007RUFDRTtFQUNBLHFCNUJnZHNCO0U0Qi9jdEIsdUI1Qjhjc0I7RTRCN2N0QjtFQTlCTjtFQUNBO0VBQ0E7QWpDb3lHRjtBaUNud0dJO0VBQ0U7QWpDcXdHTjtBZ0NycUdJO0VBQ0U7QWhDdXFHTjs7QWdDaHFHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhDbXFHRjs7QWdDN3BHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsZ0IzQjBYNEI7RTJCelg1QjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhDZ3FHRjtBZ0M5cEdFO0VBRUU7RVZ6TEYsa0RVMkx1QjtBaEM4cEd6QjtBZ0MzcEdFO0VBRUU7RUFDQTtFVmpNRixtRFVrTXVCO0FoQzRwR3pCO0FnQ3pwR0U7RUFFRTtFQUNBO0VBQ0E7QWhDMHBHSjs7QWdDcHBHQTtFQUNFO0FoQ3VwR0Y7O0FnQ25wR0E7RUFDRTtFQUNBO0VBQ0E7RTdCMEVJLG1CQUxJO0U2Qm5FUjtFQUNBO0FoQ3NwR0Y7O0FnQ2xwR0E7RUFDRTtFQUNBO0VBQ0E7QWhDcXBHRjs7QWdDanBHQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaENtcEdGOztBa0N4NEdBOztFQUVFO0VBQ0E7RUFDQTtBbEMyNEdGO0FrQ3o0R0U7O0VBQ0U7RUFDQTtBbEM0NEdKO0FrQ3Y0R0U7Ozs7Ozs7Ozs7OztFQU1FO0FsQys0R0o7O0FrQzE0R0E7RUFDRTtFQUNBO0VBQ0E7QWxDNjRHRjtBa0MzNEdFO0VBQ0U7QWxDNjRHSjs7QWtDejRHQTtFNUJoQkk7QU42NUdKO0FrQ3o0R0U7O0VBRUU7QWxDMjRHSjtBa0N2NEdFOzs7RTVCVkU7RUFDQTtBTnM1R0o7QWtDbjRHRTs7O0U1Qk5FO0VBQ0E7QU44NEdKOztBa0N0M0dBO0VBQ0U7RUFDQTtBbEN5M0dGO0FrQ3YzR0U7RUFHRTtBbEN1M0dKO0FrQ3AzR0U7RUFDRTtBbENzM0dKOztBa0NsM0dBO0VBQ0U7RUFDQTtBbENxM0dGOztBa0NsM0dBO0VBQ0U7RUFDQTtBbENxM0dGOztBa0NqMkdBO0VBQ0U7RUFDQTtFQUNBO0FsQ28yR0Y7QWtDbDJHRTs7RUFFRTtBbENvMkdKO0FrQ2oyR0U7O0VBRUU7QWxDbTJHSjtBa0MvMUdFOztFNUIxRkU7RUFDQTtBTjY3R0o7QWtDLzFHRTs7RTVCN0dFO0VBQ0E7QU5nOUdKOztBbUN4K0dBO0VBRUU7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkN1K0dGOztBbUNwK0dBO0VBQ0U7RUFDQTtFaEM0UUksdUNBTEk7RWdDclFSO0VBQ0E7RUFDQTtFZGJJLHVHY2NKO0FuQ3UrR0Y7QXFCai9HTTtFY0dOO0lkRlE7RXJCby9HTjtBQUNGO0FtQzErR0U7RUFFRTtBbkMyK0dKO0FtQ3QrR0U7RUFDRTtFQUNBO0VBQ0E7QW5DdytHSjs7QW1DaCtHQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7QW5DZytHRjtBbUM5OUdFO0VBQ0U7RUFDQTtFQUNBO0U3QnRDQTtFQUNBO0FOdWdISjtBbUMvOUdJO0VBR0U7RUFDQTtBbkMrOUdOO0FtQzU5R0k7RUFFRTtFQUNBO0VBQ0E7QW5DNjlHTjtBbUN6OUdFOztFQUVFO0VBQ0E7RUFDQTtBbkMyOUdKO0FtQ3g5R0U7RUFFRTtFN0JqRUE7RUFDQTtBTjJoSEo7O0FtQ2g5R0E7RUFFRTtFQUNBO0VBQ0E7QW5DazlHRjtBbUMvOEdFO0VBQ0U7RUFDQTtFN0I5RkE7QU5nakhKO0FtQy84R0k7RUFDRTtFQUNBO0VBQ0E7QW5DaTlHTjtBbUM3OEdFOztFQUVFO0ViekhGLG9EYTBIdUI7QW5DKzhHekI7O0FtQ3I4R0U7O0VBRUU7RUFDQTtBbkN3OEdKOztBbUNuOEdFOztFQUVFO0VBQ0E7RUFDQTtBbkNzOEdKOztBbUNoOEdFOztFQUNFO0FuQ284R0o7O0FtQzE3R0U7RUFDRTtBbkM2N0dKO0FtQzM3R0U7RUFDRTtBbkM2N0dKOztBb0NqbUhBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcENpbUhGO0FvQzNsSEU7Ozs7Ozs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBcENtbUhKO0FvQy9rSEE7RUFDRTtFQUNBO0VBQ0E7RWpDa09JLDJDQUxJO0VpQzNOUjtFQUNBO0VBQ0E7QXBDaWxIRjtBb0Mva0hFO0VBRUU7QXBDZ2xISjs7QW9DdGtIQTtFQUVFO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBDcWtIRjtBb0Nua0hFOztFQUVFO0FwQ3FrSEo7QW9DbGtIRTtFQUNFO0FwQ29rSEo7O0FvQzNqSEE7RUFDRSxtQi9CNDZCa0M7RStCMzZCbEMsc0IvQjI2QmtDO0UrQjE2QmxDO0FwQzhqSEY7QW9DNWpIRTs7O0VBR0U7QXBDOGpISjs7QW9DampIQTtFQUNFO0VBQ0E7RUFHQTtBcENrakhGOztBb0M5aUhBO0VBQ0U7RWpDaUpJLDZDQUxJO0VpQzFJUjtFQUNBO0VBQ0E7RUFDQTtFOUJ0SUU7RWVIRSwrQ2UySUo7QXBDaWpIRjtBcUJ4ckhNO0VlK0hOO0lmOUhRO0VyQjJySE47QUFDRjtBb0NwakhFO0VBQ0U7QXBDc2pISjtBb0NuakhFO0VBQ0U7RUFDQTtFQUNBO0FwQ3FqSEo7O0FvQy9pSEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwQ2tqSEY7O0FvQy9pSEE7RUFDRTtFQUNBO0FwQ2tqSEY7O0FhMXFISTtFdUJvSUE7SUFFSTtJQUNBO0VwQ3lpSE47RW9DdmlITTtJQUNFO0VwQ3lpSFI7RW9DdmlIUTtJQUNFO0VwQ3lpSFY7RW9DdGlIUTtJQUNFO0lBQ0E7RXBDd2lIVjtFb0NwaUhNO0lBQ0U7RXBDc2lIUjtFb0NuaUhNO0lBQ0U7SUFDQTtFcENxaUhSO0VvQ2xpSE07SUFDRTtFcENvaUhSO0VvQ2ppSE07SUFFRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SWY1TkosZ0JlOE5JO0VwQ2lpSFI7RW9DOWhIUTtJQUNFO0VwQ2dpSFY7RW9DN2hIUTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VwQytoSFY7QUFDRjtBYTF0SEk7RXVCb0lBO0lBRUk7SUFDQTtFcEN3bEhOO0VvQ3RsSE07SUFDRTtFcEN3bEhSO0VvQ3RsSFE7SUFDRTtFcEN3bEhWO0VvQ3JsSFE7SUFDRTtJQUNBO0VwQ3VsSFY7RW9DbmxITTtJQUNFO0VwQ3FsSFI7RW9DbGxITTtJQUNFO0lBQ0E7RXBDb2xIUjtFb0NqbEhNO0lBQ0U7RXBDbWxIUjtFb0NobEhNO0lBRUU7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lmNU5KLGdCZThOSTtFcENnbEhSO0VvQzdrSFE7SUFDRTtFcEMra0hWO0VvQzVrSFE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFcEM4a0hWO0FBQ0Y7QWF6d0hJO0V1Qm9JQTtJQUVJO0lBQ0E7RXBDdW9ITjtFb0Nyb0hNO0lBQ0U7RXBDdW9IUjtFb0Nyb0hRO0lBQ0U7RXBDdW9IVjtFb0Nwb0hRO0lBQ0U7SUFDQTtFcENzb0hWO0VvQ2xvSE07SUFDRTtFcENvb0hSO0VvQ2pvSE07SUFDRTtJQUNBO0VwQ21vSFI7RW9DaG9ITTtJQUNFO0VwQ2tvSFI7RW9DL25ITTtJQUVFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJZjVOSixnQmU4Tkk7RXBDK25IUjtFb0M1bkhRO0lBQ0U7RXBDOG5IVjtFb0MzbkhRO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RXBDNm5IVjtBQUNGO0FheHpISTtFdUJvSUE7SUFFSTtJQUNBO0VwQ3NySE47RW9DcHJITTtJQUNFO0VwQ3NySFI7RW9DcHJIUTtJQUNFO0VwQ3NySFY7RW9DbnJIUTtJQUNFO0lBQ0E7RXBDcXJIVjtFb0NqckhNO0lBQ0U7RXBDbXJIUjtFb0NockhNO0lBQ0U7SUFDQTtFcENrckhSO0VvQy9xSE07SUFDRTtFcENpckhSO0VvQzlxSE07SUFFRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SWY1TkosZ0JlOE5JO0VwQzhxSFI7RW9DM3FIUTtJQUNFO0VwQzZxSFY7RW9DMXFIUTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VwQzRxSFY7QUFDRjtBYXYySEk7RXVCb0lBO0lBRUk7SUFDQTtFcENxdUhOO0VvQ251SE07SUFDRTtFcENxdUhSO0VvQ251SFE7SUFDRTtFcENxdUhWO0VvQ2x1SFE7SUFDRTtJQUNBO0VwQ291SFY7RW9DaHVITTtJQUNFO0VwQ2t1SFI7RW9DL3RITTtJQUNFO0lBQ0E7RXBDaXVIUjtFb0M5dEhNO0lBQ0U7RXBDZ3VIUjtFb0M3dEhNO0lBRUU7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lmNU5KLGdCZThOSTtFcEM2dEhSO0VvQzF0SFE7SUFDRTtFcEM0dEhWO0VvQ3p0SFE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFcEMydEhWO0FBQ0Y7QW9DbHhISTtFQUVJO0VBQ0E7QXBDbXhIUjtBb0NqeEhRO0VBQ0U7QXBDbXhIVjtBb0NqeEhVO0VBQ0U7QXBDbXhIWjtBb0NoeEhVO0VBQ0U7RUFDQTtBcENreEhaO0FvQzl3SFE7RUFDRTtBcENneEhWO0FvQzd3SFE7RUFDRTtFQUNBO0FwQyt3SFY7QW9DNXdIUTtFQUNFO0FwQzh3SFY7QW9DM3dIUTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFZjVOSixnQmU4Tkk7QXBDMndIVjtBb0N4d0hVO0VBQ0U7QXBDMHdIWjtBb0N2d0hVO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXBDeXdIWjs7QW9DeHZIQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBDMHZIRjs7QXFDemdJQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RS9CZEU7QU53aElKO0FxQ3RnSUU7RUFDRTtFQUNBO0FyQ3dnSUo7QXFDcmdJRTtFQUNFO0VBQ0E7QXJDdWdJSjtBcUNyZ0lJO0VBQ0U7RS9CbkJGO0VBQ0E7QU4yaElKO0FxQ3JnSUk7RUFDRTtFL0JWRjtFQUNBO0FOa2hJSjtBcUNsZ0lFOztFQUVFO0FyQ29nSUo7O0FxQ2hnSUE7RUFHRTtFQUNBO0VBQ0E7QXJDaWdJRjs7QXFDOS9IQTtFQUNFO0FyQ2lnSUY7O0FxQzkvSEE7RUFDRTtFQUNBO0FyQ2lnSUY7O0FxQzkvSEE7RUFDRTtBckNpZ0lGOztBcUN6L0hFO0VBQ0U7QXJDNC9ISjs7QXFDcC9IQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJDdS9IRjtBcUNyL0hFO0UvQnhGRTtBTmdsSUo7O0FxQ24vSEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBckNzL0hGO0FxQ3AvSEU7RS9CbkdFO0FOMGxJSjs7QXFDNytIQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FyQ2cvSEY7QXFDOStIRTtFQUNFO0VBQ0E7QXJDZy9ISjs7QXFDNStIQTtFQUNFO0VBQ0E7QXJDKytIRjs7QXFDMytIQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFL0JySUU7QU5vbklKOztBcUMzK0hBOzs7RUFHRTtBckM4K0hGOztBcUMzK0hBOztFL0J0SUk7RUFDQTtBTnNuSUo7O0FxQzUrSEE7O0UvQjdISTtFQUNBO0FOOG1JSjs7QXFDcitIRTtFQUNFO0FyQ3crSEo7QWE5bElJO0V3QmtISjtJQVFJO0lBQ0E7RXJDdytIRjtFcUNyK0hFO0lBRUU7SUFDQTtFckNzK0hKO0VxQ3ArSEk7SUFDRTtJQUNBO0VyQ3MrSE47RXFDaitITTtJL0J0S0o7SUFDQTtFTjBvSUY7RXFDbCtIUTs7SUFHRTtFckNtK0hWO0VxQ2orSFE7O0lBR0U7RXJDaytIVjtFcUM5OUhNO0kvQnZLSjtJQUNBO0VOd29JRjtFcUMvOUhROztJQUdFO0VyQ2crSFY7RXFDOTlIUTs7SUFHRTtFckMrOUhWO0FBQ0Y7O0FzQy9ySUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdENpc0lGOztBc0M3cklBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFbkNpUUksZUFMSTtFbUMxUFI7RUFDQTtFQUNBO0VBQ0E7RWhDdEJFO0VnQ3dCRjtFakIzQkksMENpQjRCSjtBdENnc0lGO0FxQnh0SU07RWlCV047SWpCVlE7RXJCMnRJTjtBQUNGO0FzQ25zSUU7RUFDRTtFQUNBO0VBQ0E7QXRDcXNJSjtBc0Nuc0lJO0VBQ0U7RUFDQTtBdENxc0lOO0FzQ2hzSUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VqQmxERSxtRGlCbURGO0F0Q2tzSUo7QXFCanZJTTtFaUJzQ0o7SWpCckNNO0VyQm92SU47QUFDRjtBc0Nwc0lFO0VBQ0U7QXRDc3NJSjtBc0Nuc0lFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXRDcXNJSjs7QXNDanNJQTtFQUNFO0F0Q29zSUY7O0FzQ2pzSUE7RUFDRTtFQUNBO0VBQ0E7QXRDb3NJRjtBc0Nsc0lFO0VoQy9ERTtFQUNBO0FOb3dJSjtBc0Nuc0lJO0VoQ2xFQTtFQUNBO0FOd3dJSjtBc0Nsc0lFO0VBQ0U7QXRDb3NJSjtBc0Noc0lFO0VoQzlERTtFQUNBO0FOaXdJSjtBc0Noc0lNO0VoQ2xFRjtFQUNBO0FOcXdJSjtBc0MvcklJO0VoQ3ZFQTtFQUNBO0FOeXdJSjs7QXNDN3JJQTtFQUNFO0F0Q2dzSUY7O0FzQ3ZySUU7RUFDRTtBdEMwcklKO0FzQ3ZySUU7RUFDRTtFQUNBO0VoQ3BIQTtBTjh5SUo7QXNDdnJJSTtFQUFnQjtBdEMwcklwQjtBc0N6cklJO0VBQWU7QXRDNHJJbkI7QXNDenJJTTtFaEMzSEY7QU51eklKOztBdUMxMElBO0VBRUU7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VwQ3FSSSx5Q0FMSTtFb0M5UVI7RUFDQTtFakNBRTtBTjAwSUo7O0F1Q3AwSUU7RUFDRTtBdkN1MElKO0F1Q3IwSUk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBdkN1MElOO0F1Q24wSUU7RUFDRTtBdkNxMElKOztBd0MxMklBO0VBRUU7RUFDQTtFckNrU0ksK0JBTEk7RXFDM1JSO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFaENwQkE7RUFDQTtBUiszSUY7O0F3Q3gySUE7RUFDRTtFQUNBO0VBQ0E7RXJDc1FJLHlDQUxJO0VxQy9QUjtFQUNBO0VBQ0E7RUFDQTtFbkJwQkkscUltQnFCSjtBeEMyMklGO0FxQjUzSU07RW1CUU47SW5CUFE7RXJCKzNJTjtBQUNGO0F3QzkySUU7RUFDRTtFQUNBO0VBRUE7RUFDQTtBeEMrMklKO0F3QzUySUU7RUFDRTtFQUNBO0VBQ0E7RUFDQSxVbkNnb0NnQztFbUMvbkNoQztBeEM4MklKO0F3QzMySUU7RUFFRTtFQUNBO0VsQnRERixnRGtCdUR1QjtFQUNyQjtBeEM0MklKO0F3Q3oySUU7RUFFRTtFQUNBO0VBQ0E7RUFDQTtBeEMwMklKOztBd0NyMklFO0VBQ0UsaUJuQ21tQ2dDO0FMcXdHcEM7QXdDbjJJTTtFbEM5QkY7RUFDQTtBTm80SUo7QXdDajJJTTtFbENsREY7RUFDQTtBTnM1SUo7O0F3Q3AxSUE7RUNsR0U7RUFDQTtFdENnU0ksa0NBTEk7RXNDelJSO0F6QzA3SUY7O0F3Q3YxSUE7RUN0R0U7RUFDQTtFdENnU0ksbUNBTEk7RXNDelJSO0F6Q2k4SUY7O0EwQ244SUE7RUFFRTtFQUNBO0V2QzZSSSw0QkFMSTtFdUN0UlI7RUFDQTtFQUNBO0VBR0E7RUFDQTtFdkNxUkksb0NBTEk7RXVDOVFSO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFcENKRTtBTnc4SUo7QTBDLzdJRTtFQUNFO0ExQ2k4SUo7O0EwQzU3SUE7RUFDRTtFQUNBO0ExQys3SUY7O0EyQy85SUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VyQ0ZFO0FOaytJSjs7QTJDMzlJQTtFQUVFO0EzQzY5SUY7O0EyQ3o5SUE7RUFDRSxnQnRDOGdCNEI7QUw4OEg5Qjs7QTJDcDlJQTtFQUNFLG1CdEM0M0M4QjtBTDJsR2hDO0EyQ3A5SUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzQ3M5SUo7O0EyQ3Q4SUU7RUNoRUE7RUFDQTtFQUNBO0E1QzBnSkY7QTRDcGdKRTtFQUNFO0E1Q3NnSko7O0EyQy84SUU7RUNoRUE7RUFDQTtFQUNBO0E1Q21oSkY7QTRDN2dKRTtFQUNFO0E1QytnSko7O0EyQ3g5SUU7RUNoRUE7RUFDQTtFQUNBO0E1QzRoSkY7QTRDdGhKRTtFQUNFO0E1Q3doSko7O0EyQ2orSUU7RUNoRUE7RUFDQTtFQUNBO0E1Q3FpSkY7QTRDL2hKRTtFQUNFO0E1Q2lpSko7O0EyQzErSUU7RUNoRUE7RUFDQTtFQUNBO0E1QzhpSkY7QTRDeGlKRTtFQUNFO0E1QzBpSko7O0EyQ24vSUU7RUNoRUE7RUFDQTtFQUNBO0E1Q3VqSkY7QTRDampKRTtFQUNFO0E1Q21qSko7O0EyQzUvSUU7RUNoRUE7RUFDQTtFQUNBO0E1Q2drSkY7QTRDMWpKRTtFQUNFO0E1QzRqSko7O0EyQ3JnSkU7RUNoRUE7RUFDQTtFQUNBO0E1Q3lrSkY7QTRDbmtKRTtFQUNFO0E1Q3FrSko7O0E2QzVrSkU7RUFDRTtJQUFLLDJCeEN3NkMyQjtFTHdxR2xDO0FBQ0Y7QTZDNWtKQTtFQUVFO0UxQ3lSSSxnQ0FMSTtFMENsUlI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0UxQzZRSSx1Q0FMSTtFMEN0UVI7RXZDUEU7QU5tbEpKOztBNkN2a0pBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFeEJ2QkksNkN3QndCSjtBN0Mwa0pGO0FxQjlsSk07RXdCV047SXhCVlE7RXJCaW1KTjtBQUNGOztBNkM1a0pBO0V2QkNFO0V1QkNBO0E3QytrSkY7O0E2QzNrSkU7RUFDRTtBN0M4a0pKO0E2QzNrSk07RUFKSjtJQUtNO0U3QzhrSk47QUFDRjs7QThDam9KQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBR0E7RUFDQTtFeENYRTtBTjJvSko7O0E4QzVuSkE7RUFDRTtFQUNBO0E5QytuSkY7QThDN25KRTtFQUVFO0VBQ0E7QTlDOG5KSjs7QThDcm5KQTtFQUNFO0VBQ0E7RUFDQTtBOUN3bkpGO0E4Q3JuSkU7RUFFRTtFQUNBO0VBQ0E7RUFDQTtBOUNzbkpKO0E4Q25uSkU7RUFDRTtFQUNBO0E5Q3FuSko7O0E4QzdtSkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUNnbkpGO0E4QzltSkU7RXhDdkRFO0VBQ0E7QU53cUpKO0E4QzltSkU7RXhDN0NFO0VBQ0E7QU44cEpKO0E4QzltSkU7RUFFRTtFQUNBO0VBQ0E7QTlDK21KSjtBOEMzbUpFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTlDNm1KSjtBOEN6bUpFO0VBQ0U7QTlDMm1KSjtBOEN6bUpJO0VBQ0U7RUFDQTtBOUMybUpOOztBOEM5bEpJO0VBQ0U7QTlDaW1KTjtBOEM5bEpRO0V4Q3ZESjtFQVpBO0FOcXFKSjtBOEM3bEpRO0V4Q3hFSjtFQVlBO0FONnBKSjtBOEM1bEpRO0VBQ0U7QTlDOGxKVjtBOEMzbEpRO0VBQ0U7RUFDQTtBOUM2bEpWO0E4QzNsSlU7RUFDRTtFQUNBO0E5QzZsSlo7O0FhbnJKSTtFaUM4REE7SUFDRTtFOUN5bkpKO0U4Q3RuSk07SXhDdkRKO0lBWkE7RU42ckpGO0U4Q3JuSk07SXhDeEVKO0lBWUE7RU5xckpGO0U4Q3BuSk07SUFDRTtFOUNzbkpSO0U4Q25uSk07SUFDRTtJQUNBO0U5Q3FuSlI7RThDbm5KUTtJQUNFO0lBQ0E7RTlDcW5KVjtBQUNGO0FhNXNKSTtFaUM4REE7SUFDRTtFOUNpcEpKO0U4QzlvSk07SXhDdkRKO0lBWkE7RU5xdEpGO0U4QzdvSk07SXhDeEVKO0lBWUE7RU42c0pGO0U4QzVvSk07SUFDRTtFOUM4b0pSO0U4QzNvSk07SUFDRTtJQUNBO0U5QzZvSlI7RThDM29KUTtJQUNFO0lBQ0E7RTlDNm9KVjtBQUNGO0FhcHVKSTtFaUM4REE7SUFDRTtFOUN5cUpKO0U4Q3RxSk07SXhDdkRKO0lBWkE7RU42dUpGO0U4Q3JxSk07SXhDeEVKO0lBWUE7RU5xdUpGO0U4Q3BxSk07SUFDRTtFOUNzcUpSO0U4Q25xSk07SUFDRTtJQUNBO0U5Q3FxSlI7RThDbnFKUTtJQUNFO0lBQ0E7RTlDcXFKVjtBQUNGO0FhNXZKSTtFaUM4REE7SUFDRTtFOUNpc0pKO0U4QzlySk07SXhDdkRKO0lBWkE7RU5xd0pGO0U4QzdySk07SXhDeEVKO0lBWUE7RU42dkpGO0U4QzVySk07SUFDRTtFOUM4ckpSO0U4QzNySk07SUFDRTtJQUNBO0U5QzZySlI7RThDM3JKUTtJQUNFO0lBQ0E7RTlDNnJKVjtBQUNGO0FhcHhKSTtFaUM4REE7SUFDRTtFOUN5dEpKO0U4Q3R0Sk07SXhDdkRKO0lBWkE7RU42eEpGO0U4Q3J0Sk07SXhDeEVKO0lBWUE7RU5xeEpGO0U4Q3B0Sk07SUFDRTtFOUNzdEpSO0U4Q250Sk07SUFDRTtJQUNBO0U5Q3F0SlI7RThDbnRKUTtJQUNFO0lBQ0E7RTlDcXRKVjtBQUNGO0E4Q3hzSkE7RXhDaEpJO0FOMjFKSjtBOEN4c0pFO0VBQ0U7QTlDMHNKSjtBOEN4c0pJO0VBQ0U7QTlDMHNKTjs7QStDaDNKRTtFQUNFLGNEbUx5QjtFQ2xMekIseUJEaUxzQjtBOUNrc0oxQjtBK0NoM0pNO0VBRUUsY0Q2S3FCO0VDNUtyQjtBL0NpM0pSO0ErQzkySk07RUFDRSxXMUNSRztFMENTSCx5QkR1S3FCO0VDdEtyQixxQkRzS3FCO0E5QzBzSjdCOztBK0M5M0pFO0VBQ0UsY0RtTHlCO0VDbEx6Qix5QkRpTHNCO0E5Q2d0SjFCO0ErQzkzSk07RUFFRSxjRDZLcUI7RUM1S3JCO0EvQyszSlI7QStDNTNKTTtFQUNFLFcxQ1JHO0UwQ1NILHlCRHVLcUI7RUN0S3JCLHFCRHNLcUI7QTlDd3RKN0I7O0ErQzU0SkU7RUFDRSxjRG1MeUI7RUNsTHpCLHlCRGlMc0I7QTlDOHRKMUI7QStDNTRKTTtFQUVFLGNENktxQjtFQzVLckI7QS9DNjRKUjtBK0MxNEpNO0VBQ0UsVzFDUkc7RTBDU0gseUJEdUtxQjtFQ3RLckIscUJEc0txQjtBOUNzdUo3Qjs7QStDMTVKRTtFQUNFLGNEcUwyQjtFQ3BMM0IseUJEaUxzQjtBOUM0dUoxQjtBK0MxNUpNO0VBRUUsY0QrS3VCO0VDOUt2QjtBL0MyNUpSO0ErQ3g1Sk07RUFDRSxXMUNSRztFMENTSCx5QkR5S3VCO0VDeEt2QixxQkR3S3VCO0E5Q2t2Si9COztBK0N4NkpFO0VBQ0UsY0RxTDJCO0VDcEwzQix5QkRpTHNCO0E5QzB2SjFCO0ErQ3g2Sk07RUFFRSxjRCtLdUI7RUM5S3ZCO0EvQ3k2SlI7QStDdDZKTTtFQUNFLFcxQ1JHO0UwQ1NILHlCRHlLdUI7RUN4S3ZCLHFCRHdLdUI7QTlDZ3dKL0I7O0ErQ3Q3SkU7RUFDRSxjRG1MeUI7RUNsTHpCLHlCRGlMc0I7QTlDd3dKMUI7QStDdDdKTTtFQUVFLGNENktxQjtFQzVLckI7QS9DdTdKUjtBK0NwN0pNO0VBQ0UsVzFDUkc7RTBDU0gseUJEdUtxQjtFQ3RLckIscUJEc0txQjtBOUNneEo3Qjs7QStDcDhKRTtFQUNFLGNEcUwyQjtFQ3BMM0IseUJEaUxzQjtBOUNzeEoxQjtBK0NwOEpNO0VBRUUsY0QrS3VCO0VDOUt2QjtBL0NxOEpSO0ErQ2w4Sk07RUFDRSxXMUNSRztFMENTSCx5QkR5S3VCO0VDeEt2QixxQkR3S3VCO0E5QzR4Si9COztBK0NsOUpFO0VBQ0UsY0RtTHlCO0VDbEx6Qix5QkRpTHNCO0E5Q295SjFCO0ErQ2w5Sk07RUFFRSxjRDZLcUI7RUM1S3JCO0EvQ205SlI7QStDaDlKTTtFQUNFLFcxQ1JHO0UwQ1NILHlCRHVLcUI7RUN0S3JCLHFCRHNLcUI7QTlDNHlKN0I7O0FnRC85SkE7RUFDRTtFQUNBLFUzQzZpRDJCO0UyQzVpRDNCLFczQzRpRDJCO0UyQzNpRDNCO0VBQ0EsVzNDUVM7RTJDUFQ7RUFDQTtFMUNPRTtFMENMRixZM0M2aUQyQjtBTHE3RzdCO0FnRC85SkU7RUFDRTtFQUNBO0VBQ0EsYTNDd2lEeUI7QUx5N0c3QjtBZ0Q5OUpFO0VBQ0U7RUFDQSxrRDNDOHJCNEI7RTJDN3JCNUIsVTNDbWlEeUI7QUw2N0c3QjtBZ0Q3OUpFO0VBRUU7RUFDQTtFQUNBLGEzQzZoRHlCO0FMaThHN0I7O0FnRDE5SkE7RUFDRSxrRDNDeWhEMkI7QUxvOEc3Qjs7QWlEbmdLQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTlDK1JJLDhCQUxJO0U4Q3hSUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0U5Q2lSSSxvQ0FMSTtFOEMxUVI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0UzQ1JFO0FONGdLSjtBaURqZ0tFO0VBQ0U7QWpEbWdLSjtBaURoZ0tFO0VBQ0U7QWpEa2dLSjs7QWlEOS9KQTtFQUNFO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakRnZ0tGO0FpRDkvSkU7RUFDRTtBakRnZ0tKOztBaUQ1L0pBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTNDaENFO0VBQ0E7QU5naUtKO0FpRDkvSkU7RUFDRTtFQUNBO0FqRGdnS0o7O0FpRDUvSkE7RUFDRTtFQUNBO0FqRCsvSkY7O0FrRDdqS0E7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtBbEQyaktGOztBa0RwaktBO0VBQ0U7RUFDQTtFQUNBO0VBRUE7QWxEc2pLRjtBa0RuaktFO0U3QjVDSSxtQzZCNkNGO0VBQ0EsOEI3Q20xQ2dDO0FMa3VIcEM7QXFCL2xLTTtFNkJ3Q0o7STdCdkNNO0VyQmttS047QUFDRjtBa0R4aktFO0VBQ0UsZTdDaTFDZ0M7QUx5dUhwQztBa0R0aktFO0VBQ0Usc0I3QzgwQ2dDO0FMMHVIcEM7O0FrRHBqS0E7RUFDRTtBbER1aktGO0FrRHJqS0U7RUFDRTtFQUNBO0FsRHVqS0o7QWtEcGpLRTtFQUNFO0FsRHNqS0o7O0FrRGxqS0E7RUFDRTtFQUNBO0VBQ0E7QWxEcWpLRjs7QWtEampLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFNUNyRkU7RTRDeUZGO0FsRGlqS0Y7O0FrRDdpS0E7RUFFRTtFQUNBO0VBQ0E7RUNsSEE7RUFDQTtFQUNBO0VBQ0Esa0NEa0gwQjtFQ2pIMUI7RUFDQTtFQUNBLHVDRCtHNEQ7QWxEbWpLOUQ7QW1EL3BLRTtFQUFTO0FuRGtxS1g7QW1EanFLRTtFQUFTLG1DRDJHaUY7QWxEeWpLNUY7O0FrRHBqS0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTVDdEdFO0VBQ0E7QU44cEtKO0FrRHRqS0U7RUFDRTtFQUNBO0FsRHdqS0o7O0FrRG5qS0E7RUFDRTtFQUNBO0FsRHNqS0Y7O0FrRGpqS0E7RUFDRTtFQUdBO0VBQ0E7QWxEa2pLRjs7QWtEOWlLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTVDMUhFO0VBQ0E7QU40cUtKO0FrRDdpS0U7RUFDRTtBbEQraUtKOztBYTNwS0k7RXFDa0hGO0lBQ0U7SUFDQTtFbEQ2aUtGO0VrRHppS0E7SUFDRTtJQUNBO0lBQ0E7RWxEMmlLRjtFa0R4aUtBO0lBQ0U7RWxEMGlLRjtBQUNGO0FhMXFLSTtFcUNvSUY7O0lBRUU7RWxEeWlLRjtBQUNGO0FhaHJLSTtFcUMySUY7SUFDRTtFbER3aUtGO0FBQ0Y7QWtEL2hLSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FsRGlpS047QWtEL2hLTTtFQUNFO0VBQ0E7RTVDMU1KO0FONHVLSjtBa0Q5aEtNOztFNUM5TUY7QU5ndktKO0FrRDdoS007RUFDRTtBbEQraEtSOztBYTFyS0k7RXFDeUlBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RWxEcWpLSjtFa0RuaktJO0lBQ0U7SUFDQTtJNUMxTUo7RU5nd0tGO0VrRGxqS0k7O0k1QzlNRjtFTm93S0Y7RWtEampLSTtJQUNFO0VsRG1qS047QUFDRjtBYS9zS0k7RXFDeUlBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RWxEeWtLSjtFa0R2a0tJO0lBQ0U7SUFDQTtJNUMxTUo7RU5veEtGO0VrRHRrS0k7O0k1QzlNRjtFTnd4S0Y7RWtEcmtLSTtJQUNFO0VsRHVrS047QUFDRjtBYW51S0k7RXFDeUlBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RWxENmxLSjtFa0QzbEtJO0lBQ0U7SUFDQTtJNUMxTUo7RU53eUtGO0VrRDFsS0k7O0k1QzlNRjtFTjR5S0Y7RWtEemxLSTtJQUNFO0VsRDJsS047QUFDRjtBYXZ2S0k7RXFDeUlBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RWxEaW5LSjtFa0QvbUtJO0lBQ0U7SUFDQTtJNUMxTUo7RU40ektGO0VrRDltS0k7O0k1QzlNRjtFTmcwS0Y7RWtEN21LSTtJQUNFO0VsRCttS047QUFDRjtBYTN3S0k7RXFDeUlBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RWxEcW9LSjtFa0Rub0tJO0lBQ0U7SUFDQTtJNUMxTUo7RU5nMUtGO0VrRGxvS0k7O0k1QzlNRjtFTm8xS0Y7RWtEam9LSTtJQUNFO0VsRG1vS047QUFDRjtBb0QxMktBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFakQ4UkksZ0NBTEk7RWlEdlJSO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VDbkJBLHNDaERnaUI0QjtFZ0Q5aEI1QjtFQUNBLGdCaER5aUI0QjtFZ0R4aUI1QixnQmhEK2lCNEI7RWdEOWlCNUI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWxEc1JJLHNDQUxJO0VpRHJRUjtFQUNBO0FwRGszS0Y7QW9EaDNLRTtFQUFTO0FwRG0zS1g7QW9EajNLRTtFQUNFO0VBQ0E7RUFDQTtBcERtM0tKO0FvRGozS0k7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBcERtM0tOOztBb0Q5MktBO0VBQ0U7QXBEaTNLRjtBb0QvMktFO0VBQ0U7RUFDQTtFQUNBO0FwRGkzS0o7O0FvRDcyS0E7QUFDQTtFQUNFO0VBQ0E7RUFDQTtBcERnM0tGO0FvRDkyS0U7RUFDRTtFQUNBO0VBQ0E7QXBEZzNLSjs7QW9ENTJLQTtBQUVBO0VBQ0U7QXBEODJLRjtBb0Q1MktFO0VBQ0U7RUFDQTtFQUNBO0FwRDgyS0o7O0FvRDEyS0E7QUFDQTtFQUNFO0VBQ0E7RUFDQTtBcEQ2MktGO0FvRDMyS0U7RUFDRTtFQUNBO0VBQ0E7QXBENjJLSjs7QW9EejJLQTtBQWtCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTlDbEdFO0FOODdLSjs7QXNEajlLQTtFQUVFO0VBQ0E7RW5Ea1NJLGdDQUxJO0VtRDNSUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VuRHlSSSxtQ0FMSTtFbURsUlI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFRHpCQSxzQ2hEZ2lCNEI7RWdEOWhCNUI7RUFDQSxnQmhEeWlCNEI7RWdEeGlCNUIsZ0JoRCtpQjRCO0VnRDlpQjVCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VsRHNSSSxzQ0FMSTtFbURoUVI7RUFDQTtFQUNBO0VBQ0E7RWhEaEJFO0FONCtLSjtBc0R4OUtFO0VBQ0U7RUFDQTtFQUNBO0F0RDA5S0o7QXNEeDlLSTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdER5OUtOOztBc0RuOUtFO0VBQ0U7QXREczlLSjtBc0RwOUtJO0VBRUU7QXREcTlLTjtBc0RsOUtJO0VBQ0U7RUFDQTtBdERvOUtOO0FzRGo5S0k7RUFDRTtFQUNBO0F0RG05S047O0FzRDk4S0E7QUFFRTtFQUNFO0VBQ0E7RUFDQTtBdERnOUtKO0FzRDk4S0k7RUFFRTtBdEQrOEtOO0FzRDU4S0k7RUFDRTtFQUNBO0F0RDg4S047QXNEMzhLSTtFQUNFO0VBQ0E7QXRENjhLTjs7QXNEeDhLQTtBQUdFO0VBQ0U7QXREeThLSjtBc0R2OEtJO0VBRUU7QXREdzhLTjtBc0RyOEtJO0VBQ0U7RUFDQTtBdER1OEtOO0FzRHA4S0k7RUFDRTtFQUNBO0F0RHM4S047QXNEajhLRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXREbThLSjs7QXNELzdLQTtBQUVFO0VBQ0U7RUFDQTtFQUNBO0F0RGk4S0o7QXNELzdLSTtFQUVFO0F0RGc4S047QXNENzdLSTtFQUNFO0VBQ0E7QXREKzdLTjtBc0Q1N0tJO0VBQ0U7RUFDQTtBdEQ4N0tOOztBc0R6N0tBO0FBa0JBO0VBQ0U7RUFDQTtFbkRpSEksNkNBTEk7RW1EMUdSO0VBQ0E7RUFDQTtFaEQ1SkU7RUFDQTtBTndrTEo7QXNEMTZLRTtFQUNFO0F0RDQ2S0o7O0FzRHg2S0E7RUFDRTtFQUNBO0F0RDI2S0Y7O0F1RGhtTEE7RUFDRTtBdkRtbUxGOztBdURobUxBO0VBQ0U7QXZEbW1MRjs7QXVEaG1MQTtFQUNFO0VBQ0E7RUFDQTtBdkRtbUxGO0F3RHpuTEU7RUFDRTtFQUNBO0VBQ0E7QXhEMm5MSjs7QXVEcG1MQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFbENsQkksc0NrQ21CSjtBdkR1bUxGO0FxQnRuTE07RWtDUU47SWxDUFE7RXJCeW5MTjtBQUNGOztBdUR6bUxBOzs7RUFHRTtBdkQ0bUxGOztBdUR6bUxBOztFQUVFO0F2RDRtTEY7O0F1RHptTEE7O0VBRUU7QXZENG1MRjs7QXVEbm1MRTtFQUNFO0VBQ0E7RUFDQTtBdkRzbUxKO0F1RG5tTEU7OztFQUdFO0VBQ0E7QXZEcW1MSjtBdURsbUxFOztFQUVFO0VBQ0E7RWxDNURFLDJCa0M2REY7QXZEb21MSjtBcUI3cExNO0VrQ3FESjs7SWxDcERNO0VyQmlxTE47QUFDRjs7QXVEam1MQTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBLFVsRCs1Q21DO0VrRDk1Q25DO0VBQ0EsV2xEMUZTO0VrRDJGVDtFQUNBO0VBQ0E7RUFDQSxZbEQwNUNtQztFZ0JoL0MvQiw4QmtDdUZKO0F2RG1tTEY7QXFCdHJMTTtFa0NrRU47O0lsQ2pFUTtFckIwckxOO0FBQ0Y7QXVEdG1MRTs7O0VBRUUsV2xEcEdPO0VrRHFHUDtFQUNBO0VBQ0EsWWxEazVDaUM7QUx1dElyQzs7QXVEdG1MQTtFQUNFO0F2RHltTEY7O0F1RHRtTEE7RUFDRTtBdkR5bUxGOztBdURwbUxBOztFQUVFO0VBQ0EsV2xEbTVDbUM7RWtEbDVDbkMsWWxEazVDbUM7RWtEajVDbkM7RUFDQTtFQUNBO0F2RHVtTEY7O0F1RHBtTEE7Ozs7Ozs7R0FBQTtBQVFBO0VBQ0U7QXZEdW1MRjs7QXVEcm1MQTtFQUNFO0F2RHdtTEY7O0F1RGhtTEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUEsaUJsRDIxQ21DO0VrRDExQ25DO0VBQ0EsZ0JsRHkxQ21DO0VrRHgxQ25DO0F2RGttTEY7QXVEaG1MRTtFQUNFO0VBQ0E7RUFDQSxXbER3MUNpQztFa0R2MUNqQyxXbER3MUNpQztFa0R2MUNqQztFQUNBLGlCbER3MUNpQztFa0R2MUNqQyxnQmxEdTFDaUM7RWtEdDFDakM7RUFDQTtFQUNBLHNCbEQzS087RWtENEtQO0VBQ0E7RUFFQTtFQUNBO0VBQ0EsWWxEKzBDaUM7RWdCeC9DL0IsNkJrQzBLRjtBdkRpbUxKO0FxQnZ3TE07RWtDcUpKO0lsQ3BKTTtFckIwd0xOO0FBQ0Y7QXVEbm1MRTtFQUNFLFVsRDQwQ2lDO0FMeXhJckM7O0F1RDVsTEE7RUFDRTtFQUNBO0VBQ0EsZWxEczBDbUM7RWtEcjBDbkM7RUFDQSxvQmxEbTBDbUM7RWtEbDBDbkMsdUJsRGswQ21DO0VrRGowQ25DLFdsRHRNUztFa0R1TVQ7QXZEK2xMRjs7QXVEemxMRTs7RUFFRSxnQ2xEdTBDaUM7QUxxeElyQztBdUR6bExFO0VBQ0Usc0JsRHpNTztBTG95TFg7QXVEeGxMRTtFQUNFLFdsRDdNTztBTHV5TFg7O0F5RHJ6TEE7O0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0F6RHV6TEY7O0F5RG56TEE7RUFDRTtJQUFLO0V6RHV6TEw7QUFDRjtBeURwekxBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtBekRtekxGOztBeURoekxBO0VBRUU7RUFDQTtFQUNBO0F6RGt6TEY7O0F5RHp5TEE7RUFDRTtJQUNFO0V6RDR5TEY7RXlEMXlMQTtJQUNFO0lBQ0E7RXpENHlMRjtBQUNGO0F5RHh5TEE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtBekR1eUxGOztBeURweUxBO0VBQ0U7RUFDQTtBekR1eUxGOztBeURueUxFO0VBQ0U7O0lBRUU7RXpEc3lMSjtBQUNGO0EwRHQzTEE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUR1M0xGOztBYXh6TEk7RTZDOUNGO0lBRUk7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJckMxQkEsc0NxQzRCQTtFMUR3MkxKO0FBQ0Y7QXFCajRMTTtFcUNVSjtJckNUTTtFckJvNExOO0FBQ0Y7QWE5MExJO0U2QzlCRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTFEKzJMTjtFMEQ1MkxJO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFMUQ4MkxOO0UwRDMyTEk7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFMUQ2MkxOO0UwRDEyTEk7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTFENDJMTjtFMER6MkxJO0lBRUU7RTFEMDJMTjtFMER2MkxJO0lBR0U7RTFEdTJMTjtBQUNGO0FhbDRMSTtFNkNqQ0Y7SUFpRU07SUFDQTtJQUNBO0UxRHMyTE47RTBEcDJMTTtJQUNFO0UxRHMyTFI7RTBEbjJMTTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBRUE7RTFEbzJMUjtBQUNGOztBYXQ0TEk7RTZDOUNGO0lBRUk7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJckMxQkEsc0NxQzRCQTtFMURzN0xKO0FBQ0Y7QXFCLzhMTTtFcUNVSjtJckNUTTtFckJrOUxOO0FBQ0Y7QWE1NUxJO0U2QzlCRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTFENjdMTjtFMEQxN0xJO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFMUQ0N0xOO0UwRHo3TEk7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFMUQyN0xOO0UwRHg3TEk7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTFEMDdMTjtFMER2N0xJO0lBRUU7RTFEdzdMTjtFMERyN0xJO0lBR0U7RTFEcTdMTjtBQUNGO0FhaDlMSTtFNkNqQ0Y7SUFpRU07SUFDQTtJQUNBO0UxRG83TE47RTBEbDdMTTtJQUNFO0UxRG83TFI7RTBEajdMTTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBRUE7RTFEazdMUjtBQUNGOztBYXA5TEk7RTZDOUNGO0lBRUk7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJckMxQkEsc0NxQzRCQTtFMURvZ01KO0FBQ0Y7QXFCN2hNTTtFcUNVSjtJckNUTTtFckJnaU1OO0FBQ0Y7QWExK0xJO0U2QzlCRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTFEMmdNTjtFMER4Z01JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFMUQwZ01OO0UwRHZnTUk7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFMUR5Z01OO0UwRHRnTUk7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTFEd2dNTjtFMERyZ01JO0lBRUU7RTFEc2dNTjtFMERuZ01JO0lBR0U7RTFEbWdNTjtBQUNGO0FhOWhNSTtFNkNqQ0Y7SUFpRU07SUFDQTtJQUNBO0UxRGtnTU47RTBEaGdNTTtJQUNFO0UxRGtnTVI7RTBELy9MTTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBRUE7RTFEZ2dNUjtBQUNGOztBYWxpTUk7RTZDOUNGO0lBRUk7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJckMxQkEsc0NxQzRCQTtFMURrbE1KO0FBQ0Y7QXFCM21NTTtFcUNVSjtJckNUTTtFckI4bU1OO0FBQ0Y7QWF4ak1JO0U2QzlCRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTFEeWxNTjtFMER0bE1JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFMUR3bE1OO0UwRHJsTUk7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFMUR1bE1OO0UwRHBsTUk7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTFEc2xNTjtFMERubE1JO0lBRUU7RTFEb2xNTjtFMERqbE1JO0lBR0U7RTFEaWxNTjtBQUNGO0FhNW1NSTtFNkNqQ0Y7SUFpRU07SUFDQTtJQUNBO0UxRGdsTU47RTBEOWtNTTtJQUNFO0UxRGdsTVI7RTBEN2tNTTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBRUE7RTFEOGtNUjtBQUNGOztBYWhuTUk7RTZDOUNGO0lBRUk7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJckMxQkEsc0NxQzRCQTtFMURncU1KO0FBQ0Y7QXFCenJNTTtFcUNVSjtJckNUTTtFckI0ck1OO0FBQ0Y7QWF0b01JO0U2QzlCRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTFEdXFNTjtFMERwcU1JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFMURzcU1OO0UwRG5xTUk7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFMURxcU1OO0UwRGxxTUk7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTFEb3FNTjtFMERqcU1JO0lBRUU7RTFEa3FNTjtFMEQvcE1JO0lBR0U7RTFEK3BNTjtBQUNGO0FhMXJNSTtFNkNqQ0Y7SUFpRU07SUFDQTtJQUNBO0UxRDhwTU47RTBENXBNTTtJQUNFO0UxRDhwTVI7RTBEM3BNTTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBRUE7RTFENHBNUjtBQUNGOztBMEQ1dU1FO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFckMxQkEsc0NxQzRCQTtBMUQ2dU1OO0FxQnJ3TU07RXFDVUo7SXJDVE07RXJCd3dNTjtBQUNGO0EwRGh2TU07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExRGt2TVI7QTBEL3VNTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFEaXZNUjtBMEQ5dU1NO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFEZ3ZNUjtBMEQ3dU1NO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExRCt1TVI7QTBENXVNTTtFQUVFO0ExRDZ1TVI7QTBEMXVNTTtFQUdFO0ExRDB1TVI7O0EwRC9zTUE7RVBsSEU7RUFDQTtFQUNBO0VBQ0EsYTlDZ2hDa0M7RThDL2dDbEM7RUFDQTtFQUNBLHNCOUNVUztBTDJ6TVg7QW1EbDBNRTtFQUFTO0FuRHEwTVg7QW1EcDBNRTtFQUFTLFk5Q28zQ3lCO0FMbTlKcEM7O0EwRDN0TUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBMUQ4dE1GO0EwRDV0TUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBMUQ4dE1KOztBMEQxdE1BO0VBQ0U7RUFDQSxnQnJENGE0QjtBTGl6TDlCOztBMEQxdE1BO0VBQ0U7RUFDQTtFQUNBO0ExRDZ0TUY7O0EyRDMyTUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsWXREcXNDa0M7QUx5cUtwQztBMkQ1Mk1FO0VBQ0U7RUFDQTtBM0Q4Mk1KOztBMkR6Mk1BO0VBQ0U7QTNENDJNRjs7QTJEejJNQTtFQUNFO0EzRDQyTUY7O0EyRHoyTUE7RUFDRTtBM0Q0Mk1GOztBMkR2Mk1FO0VBQ0U7QTNEMDJNSjs7QTJEdDJNQTtFQUNFO0lBQ0UsWXREd3FDZ0M7RUxpc0tsQztBQUNGO0EyRHQyTUE7RUFDRTtFQUNBO0VBQ0E7QTNEdzJNRjs7QTJEcjJNQTtFQUNFO0lBQ0U7RTNEdzJNRjtBQUNGO0F3RHY1TUU7RUFDRTtFQUNBO0VBQ0E7QXhEeTVNSjs7QTREejVNRTtFQUNFO0VBQ0E7QTVENDVNSjs7QTREOTVNRTtFQUNFO0VBQ0E7QTVEaTZNSjs7QTREbjZNRTtFQUNFO0VBQ0E7QTVEczZNSjs7QTREeDZNRTtFQUNFO0VBQ0E7QTVEMjZNSjs7QTRENzZNRTtFQUNFO0VBQ0E7QTVEZzdNSjs7QTREbDdNRTtFQUNFO0VBQ0E7QTVEcTdNSjs7QTREdjdNRTtFQUNFO0VBQ0E7QTVEMDdNSjs7QTRENTdNRTtFQUNFO0VBQ0E7QTVEKzdNSjs7QTZEcjhNRTtFQUNFO0E3RHc4TUo7QTZEcjhNTTtFQUVFO0E3RHM4TVI7O0E2RDU4TUU7RUFDRTtBN0QrOE1KO0E2RDU4TU07RUFFRTtBN0Q2OE1SOztBNkRuOU1FO0VBQ0U7QTdEczlNSjtBNkRuOU1NO0VBRUU7QTdEbzlNUjs7QTZEMTlNRTtFQUNFO0E3RDY5TUo7QTZEMTlNTTtFQUVFO0E3RDI5TVI7O0E2RGorTUU7RUFDRTtBN0RvK01KO0E2RGorTU07RUFFRTtBN0RrK01SOztBNkR4K01FO0VBQ0U7QTdEMitNSjtBNkR4K01NO0VBRUU7QTdEeStNUjs7QTZELytNRTtFQUNFO0E3RGsvTUo7QTZELytNTTtFQUVFO0E3RGcvTVI7O0E2RHQvTUU7RUFDRTtBN0R5L01KO0E2RHQvTU07RUFFRTtBN0R1L01SOztBOEQ1L01BO0VBQ0U7RUFDQTtBOUQrL01GO0E4RDcvTUU7RUFDRTtFQUNBO0VBQ0E7QTlEKy9NSjtBOEQ1L01FO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUQ4L01KOztBOER6L01FO0VBQ0U7QTlENC9NSjs7QThENy9NRTtFQUNFO0E5RGdnTko7O0E4RGpnTkU7RUFDRTtBOURvZ05KOztBOERyZ05FO0VBQ0U7QTlEd2dOSjs7QStEN2hOQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsYTFENmdDa0M7QUxtaExwQzs7QStEN2hOQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsYTFEcWdDa0M7QUwyaExwQzs7QStEeGhOSTtFQUNFO0VBQ0E7RUFDQSxhMUR5L0I4QjtBTGtpTHBDOztBK0R4aE5JO0VBQ0U7RUFDQTtFQUNBLGExRG0vQjhCO0FMd2lMcEM7O0FhNS9NSTtFa0R4Q0E7SUFDRTtJQUNBO0lBQ0EsYTFEeS9COEI7RUwraUxsQztFK0RyaU5FO0lBQ0U7SUFDQTtJQUNBLGExRG0vQjhCO0VMb2pMbEM7QUFDRjtBYXpnTkk7RWtEeENBO0lBQ0U7SUFDQTtJQUNBLGExRHkvQjhCO0VMMmpMbEM7RStEampORTtJQUNFO0lBQ0E7SUFDQSxhMURtL0I4QjtFTGdrTGxDO0FBQ0Y7QWFyaE5JO0VrRHhDQTtJQUNFO0lBQ0E7SUFDQSxhMUR5L0I4QjtFTHVrTGxDO0UrRDdqTkU7SUFDRTtJQUNBO0lBQ0EsYTFEbS9COEI7RUw0a0xsQztBQUNGO0FhamlOSTtFa0R4Q0E7SUFDRTtJQUNBO0lBQ0EsYTFEeS9COEI7RUxtbExsQztFK0R6a05FO0lBQ0U7SUFDQTtJQUNBLGExRG0vQjhCO0VMd2xMbEM7QUFDRjtBYTdpTkk7RWtEeENBO0lBQ0U7SUFDQTtJQUNBLGExRHkvQjhCO0VMK2xMbEM7RStEcmxORTtJQUNFO0lBQ0E7SUFDQSxhMURtL0I4QjtFTG9tTGxDO0FBQ0Y7QWdFdm5OQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FoRXluTkY7O0FnRXRuTkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBaEV5bk5GOztBaUVqb05BOztFQ0lFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEVrb05GOztBbUU3b05FO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFU5RG9ac0M7RThEblp0QztBbkVncE5KOztBb0V4cE5BO0VDQUU7RUFDQTtFQUNBO0FyRTRwTkY7O0FzRWxxTkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsYWpFeW5CNEI7QUw0aU05Qjs7QXVFem1OUTtFQU9JO0F2RXNtTlo7O0F1RTdtTlE7RUFPSTtBdkUwbU5aOztBdUVqbk5RO0VBT0k7QXZFOG1OWjs7QXVFcm5OUTtFQU9JO0F2RWtuTlo7O0F1RXpuTlE7RUFPSTtBdkVzbk5aOztBdUU3bk5RO0VBT0k7QXZFMG5OWjs7QXVFam9OUTtFQU9JO0F2RThuTlo7O0F1RXJvTlE7RUFPSTtBdkVrb05aOztBdUV6b05RO0VBT0k7QXZFc29OWjs7QXVFN29OUTtFQU9JO0F2RTBvTlo7O0F1RWpwTlE7RUFPSTtBdkU4b05aOztBdUVycE5RO0VBT0k7QXZFa3BOWjs7QXVFenBOUTtFQU9JO0F2RXNwTlo7O0F1RTdwTlE7RUFPSTtBdkUwcE5aOztBdUVqcU5RO0VBT0k7QXZFOHBOWjs7QXVFcnFOUTtFQU9JO0F2RWtxTlo7O0F1RXpxTlE7RUFPSTtBdkVzcU5aOztBdUU3cU5RO0VBT0k7QXZFMHFOWjs7QXVFanJOUTtFQU9JO0F2RThxTlo7O0F1RXJyTlE7RUFPSTtBdkVrck5aOztBdUV6ck5RO0VBT0k7QXZFc3JOWjs7QXVFN3JOUTtFQU9JO0F2RTByTlo7O0F1RWpzTlE7RUFPSTtBdkU4ck5aOztBdUVyc05RO0VBT0k7QXZFa3NOWjs7QXVFenNOUTtFQU9JO0F2RXNzTlo7O0F1RTdzTlE7RUFPSTtBdkUwc05aOztBdUVqdE5RO0VBT0k7QXZFOHNOWjs7QXVFcnROUTtFQU9JO0F2RWt0Tlo7O0F1RXp0TlE7RUFPSTtBdkVzdE5aOztBdUU3dE5RO0VBT0k7QXZFMHROWjs7QXVFanVOUTtFQU9JO0F2RTh0Tlo7O0F1RXJ1TlE7RUFPSTtBdkVrdU5aOztBdUV6dU5RO0VBT0k7QXZFc3VOWjs7QXVFN3VOUTtFQU9JO0F2RTB1Tlo7O0F1RWp2TlE7RUFPSTtBdkU4dU5aOztBdUVydk5RO0VBT0k7QXZFa3ZOWjs7QXVFenZOUTtFQU9JO0F2RXN2Tlo7O0F1RTd2TlE7RUFPSTtBdkUwdk5aOztBdUVqd05RO0VBT0k7QXZFOHZOWjs7QXVFcndOUTtFQU9JO0F2RWt3Tlo7O0F1RXp3TlE7RUFPSTtBdkVzd05aOztBdUU3d05RO0VBT0k7QXZFMHdOWjs7QXVFanhOUTtFQU9JO0F2RTh3Tlo7O0F1RXJ4TlE7RUFPSTtBdkVreE5aOztBdUV6eE5RO0VBT0k7QXZFc3hOWjs7QXVFN3hOUTtFQU9JO0F2RTB4Tlo7O0F1RWp5TlE7RUFPSTtBdkU4eE5aOztBdUVyeU5RO0VBT0k7QXZFa3lOWjs7QXVFenlOUTtFQU9JO0F2RXN5Tlo7O0F1RTd5TlE7RUFPSTtBdkUweU5aOztBdUVqek5RO0VBT0k7QXZFOHlOWjs7QXVFcnpOUTtFQU9JO0F2RWt6Tlo7O0F1RXp6TlE7RUFPSTtBdkVzek5aOztBdUU3ek5RO0VBT0k7QXZFMHpOWjs7QXVFajBOUTtFQU9JO0F2RTh6Tlo7O0F1RXIwTlE7RUFPSTtBdkVrME5aOztBdUV6ME5RO0VBT0k7QXZFczBOWjs7QXVFNzBOUTtFQU9JO0F2RTAwTlo7O0F1RWoxTlE7RUFPSTtBdkU4ME5aOztBdUVyMU5RO0VBT0k7QXZFazFOWjs7QXVFejFOUTtFQU9JO0F2RXMxTlo7O0F1RTcxTlE7RUFPSTtBdkUwMU5aOztBdUVqMk5RO0VBSVE7RUFHSjtBdkUrMU5aOztBdUV0Mk5RO0VBSVE7RUFHSjtBdkVvMk5aOztBdUUzMk5RO0VBSVE7RUFHSjtBdkV5Mk5aOztBdUVoM05RO0VBSVE7RUFHSjtBdkU4Mk5aOztBdUVyM05RO0VBSVE7RUFHSjtBdkVtM05aOztBdUUxM05RO0VBSVE7RUFHSjtBdkV3M05aOztBdUUvM05RO0VBSVE7RUFHSjtBdkU2M05aOztBdUVwNE5RO0VBSVE7RUFHSjtBdkVrNE5aOztBdUV6NE5RO0VBSVE7RUFHSjtBdkV1NE5aOztBdUV4NU5RO0VBQ0U7QXZFMjVOVjs7QXVFNTVOUTtFQUNFO0F2RSs1TlY7O0F1RWg2TlE7RUFDRTtBdkVtNk5WOztBdUVwNk5RO0VBQ0U7QXZFdTZOVjs7QXVFeDZOUTtFQUNFO0F2RTI2TlY7O0F1RTU2TlE7RUFDRTtBdkUrNk5WOztBdUVoN05RO0VBQ0U7QXZFbTdOVjs7QXVFcDdOUTtFQUNFO0F2RXU3TlY7O0F1RXg3TlE7RUFDRTtBdkUyN05WOztBdUU1N05RO0VBQ0U7QXZFKzdOVjs7QXVFdDdOUTtFQU9JO0F2RW03Tlo7O0F1RTE3TlE7RUFPSTtBdkV1N05aOztBdUU5N05RO0VBT0k7QXZFMjdOWjs7QXVFbDhOUTtFQU9JO0F2RSs3Tlo7O0F1RXQ4TlE7RUFPSTtBdkVtOE5aOztBdUUxOE5RO0VBT0k7QXZFdThOWjs7QXVFOThOUTtFQU9JO0F2RTI4Tlo7O0F1RWw5TlE7RUFPSTtBdkUrOE5aOztBdUV0OU5RO0VBT0k7QXZFbTlOWjs7QXVFMTlOUTtFQU9JO0F2RXU5Tlo7O0F1RTk5TlE7RUFPSTtBdkUyOU5aOztBdUVsK05RO0VBT0k7QXZFKzlOWjs7QXVFdCtOUTtFQU9JO0F2RW0rTlo7O0F1RTErTlE7RUFPSTtBdkV1K05aOztBdUU5K05RO0VBT0k7QXZFMitOWjs7QXVFbC9OUTtFQU9JO0F2RSsrTlo7O0F1RXQvTlE7RUFPSTtBdkVtL05aOztBdUUxL05RO0VBT0k7QXZFdS9OWjs7QXVFOS9OUTtFQU9JO0F2RTIvTlo7O0F1RWxnT1E7RUFPSTtBdkUrL05aOztBdUV0Z09RO0VBT0k7QXZFbWdPWjs7QXVFMWdPUTtFQU9JO0F2RXVnT1o7O0F1RTlnT1E7RUFPSTtBdkUyZ09aOztBdUVsaE9RO0VBT0k7QXZFK2dPWjs7QXVFdGhPUTtFQU9JO0F2RW1oT1o7O0F1RTFoT1E7RUFPSTtBdkV1aE9aOztBdUU5aE9RO0VBT0k7QXZFMmhPWjs7QXVFbGlPUTtFQU9JO0F2RStoT1o7O0F1RXRpT1E7RUFPSTtBdkVtaU9aOztBdUUxaU9RO0VBT0k7QXZFdWlPWjs7QXVFOWlPUTtFQU9JO0F2RTJpT1o7O0F1RWxqT1E7RUFPSTtBdkUraU9aOztBdUV0ak9RO0VBT0k7QXZFbWpPWjs7QXVFMWpPUTtFQU9JO0F2RXVqT1o7O0F1RTlqT1E7RUFPSTtBdkUyak9aOztBdUVsa09RO0VBT0k7QXZFK2pPWjs7QXVFdGtPUTtFQU9JO0F2RW1rT1o7O0F1RTFrT1E7RUFPSTtBdkV1a09aOztBdUU5a09RO0VBT0k7QXZFMmtPWjs7QXVFbGxPUTtFQU9JO0F2RStrT1o7O0F1RXRsT1E7RUFPSTtBdkVtbE9aOztBdUUxbE9RO0VBT0k7QXZFdWxPWjs7QXVFOWxPUTtFQU9JO0F2RTJsT1o7O0F1RWxtT1E7RUFPSTtBdkUrbE9aOztBdUV0bU9RO0VBT0k7QXZFbW1PWjs7QXVFMW1PUTtFQU9JO0F2RXVtT1o7O0F1RTltT1E7RUFPSTtBdkUybU9aOztBdUVsbk9RO0VBT0k7QXZFK21PWjs7QXVFdG5PUTtFQU9JO0F2RW1uT1o7O0F1RTFuT1E7RUFPSTtBdkV1bk9aOztBdUU5bk9RO0VBT0k7QXZFMm5PWjs7QXVFbG9PUTtFQU9JO0F2RStuT1o7O0F1RXRvT1E7RUFPSTtBdkVtb09aOztBdUUxb09RO0VBT0k7QXZFdW9PWjs7QXVFOW9PUTtFQU9JO0F2RTJvT1o7O0F1RWxwT1E7RUFPSTtBdkUrb09aOztBdUV0cE9RO0VBT0k7QXZFbXBPWjs7QXVFMXBPUTtFQU9JO0F2RXVwT1o7O0F1RTlwT1E7RUFPSTtBdkUycE9aOztBdUVscU9RO0VBT0k7QXZFK3BPWjs7QXVFdHFPUTtFQU9JO0F2RW1xT1o7O0F1RTFxT1E7RUFPSTtBdkV1cU9aOztBdUU5cU9RO0VBT0k7QXZFMnFPWjs7QXVFbHJPUTtFQU9JO0F2RStxT1o7O0F1RXRyT1E7RUFPSTtBdkVtck9aOztBdUUxck9RO0VBT0k7QXZFdXJPWjs7QXVFOXJPUTtFQU9JO0VBQUE7QXZFNHJPWjs7QXVFbnNPUTtFQU9JO0VBQUE7QXZFaXNPWjs7QXVFeHNPUTtFQU9JO0VBQUE7QXZFc3NPWjs7QXVFN3NPUTtFQU9JO0VBQUE7QXZFMnNPWjs7QXVFbHRPUTtFQU9JO0VBQUE7QXZFZ3RPWjs7QXVFdnRPUTtFQU9JO0VBQUE7QXZFcXRPWjs7QXVFNXRPUTtFQU9JO0VBQUE7QXZFMHRPWjs7QXVFanVPUTtFQU9JO0VBQUE7QXZFK3RPWjs7QXVFdHVPUTtFQU9JO0VBQUE7QXZFb3VPWjs7QXVFM3VPUTtFQU9JO0VBQUE7QXZFeXVPWjs7QXVFaHZPUTtFQU9JO0VBQUE7QXZFOHVPWjs7QXVFcnZPUTtFQU9JO0VBQUE7QXZFbXZPWjs7QXVFMXZPUTtFQU9JO0VBQUE7QXZFd3ZPWjs7QXVFL3ZPUTtFQU9JO0VBQUE7QXZFNnZPWjs7QXVFcHdPUTtFQU9JO0F2RWl3T1o7O0F1RXh3T1E7RUFPSTtBdkVxd09aOztBdUU1d09RO0VBT0k7QXZFeXdPWjs7QXVFaHhPUTtFQU9JO0F2RTZ3T1o7O0F1RXB4T1E7RUFPSTtBdkVpeE9aOztBdUV4eE9RO0VBT0k7QXZFcXhPWjs7QXVFNXhPUTtFQU9JO0F2RXl4T1o7O0F1RWh5T1E7RUFPSTtBdkU2eE9aOztBdUVweU9RO0VBT0k7QXZFaXlPWjs7QXVFeHlPUTtFQU9JO0F2RXF5T1o7O0F1RTV5T1E7RUFPSTtBdkV5eU9aOztBdUVoek9RO0VBT0k7QXZFNnlPWjs7QXVFcHpPUTtFQU9JO0F2RWl6T1o7O0F1RXh6T1E7RUFPSTtBdkVxek9aOztBdUU1ek9RO0VBT0k7QXZFeXpPWjs7QXVFaDBPUTtFQU9JO0F2RTZ6T1o7O0F1RXAwT1E7RUFPSTtBdkVpME9aOztBdUV4ME9RO0VBT0k7QXZFcTBPWjs7QXVFNTBPUTtFQU9JO0F2RXkwT1o7O0F1RWgxT1E7RUFPSTtBdkU2ME9aOztBdUVwMU9RO0VBT0k7QXZFaTFPWjs7QXVFeDFPUTtFQU9JO0F2RXExT1o7O0F1RTUxT1E7RUFPSTtBdkV5MU9aOztBdUVoMk9RO0VBT0k7QXZFNjFPWjs7QXVFcDJPUTtFQU9JO0F2RWkyT1o7O0F1RXgyT1E7RUFPSTtBdkVxMk9aOztBdUU1Mk9RO0VBT0k7QXZFeTJPWjs7QXVFaDNPUTtFQU9JO0F2RTYyT1o7O0F1RXAzT1E7RUFPSTtBdkVpM09aOztBdUV4M09RO0VBT0k7QXZFcTNPWjs7QXVFNTNPUTtFQU9JO0F2RXkzT1o7O0F1RWg0T1E7RUFPSTtBdkU2M09aOztBdUVwNE9RO0VBT0k7QXZFaTRPWjs7QXVFeDRPUTtFQU9JO0F2RXE0T1o7O0F1RTU0T1E7RUFPSTtFQUFBO0F2RTA0T1o7O0F1RWo1T1E7RUFPSTtFQUFBO0F2RSs0T1o7O0F1RXQ1T1E7RUFPSTtFQUFBO0F2RW81T1o7O0F1RTM1T1E7RUFPSTtFQUFBO0F2RXk1T1o7O0F1RWg2T1E7RUFPSTtFQUFBO0F2RTg1T1o7O0F1RXI2T1E7RUFPSTtFQUFBO0F2RW02T1o7O0F1RTE2T1E7RUFPSTtFQUFBO0F2RXc2T1o7O0F1RS82T1E7RUFPSTtFQUFBO0F2RTY2T1o7O0F1RXA3T1E7RUFPSTtFQUFBO0F2RWs3T1o7O0F1RXo3T1E7RUFPSTtFQUFBO0F2RXU3T1o7O0F1RTk3T1E7RUFPSTtFQUFBO0F2RTQ3T1o7O0F1RW44T1E7RUFPSTtFQUFBO0F2RWk4T1o7O0F1RXg4T1E7RUFPSTtBdkVxOE9aOztBdUU1OE9RO0VBT0k7QXZFeThPWjs7QXVFaDlPUTtFQU9JO0F2RTY4T1o7O0F1RXA5T1E7RUFPSTtBdkVpOU9aOztBdUV4OU9RO0VBT0k7QXZFcTlPWjs7QXVFNTlPUTtFQU9JO0F2RXk5T1o7O0F1RWgrT1E7RUFPSTtBdkU2OU9aOztBdUVwK09RO0VBT0k7QXZFaStPWjs7QXVFeCtPUTtFQU9JO0F2RXErT1o7O0F1RTUrT1E7RUFPSTtBdkV5K09aOztBdUVoL09RO0VBT0k7QXZFNitPWjs7QXVFcC9PUTtFQU9JO0F2RWkvT1o7O0F1RXgvT1E7RUFPSTtBdkVxL09aOztBdUU1L09RO0VBT0k7QXZFeS9PWjs7QXVFaGdQUTtFQU9JO0F2RTYvT1o7O0F1RXBnUFE7RUFPSTtBdkVpZ1BaOztBdUV4Z1BRO0VBT0k7QXZFcWdQWjs7QXVFNWdQUTtFQU9JO0F2RXlnUFo7O0F1RWhoUFE7RUFPSTtBdkU2Z1BaOztBdUVwaFBRO0VBT0k7QXZFaWhQWjs7QXVFeGhQUTtFQU9JO0F2RXFoUFo7O0F1RTVoUFE7RUFPSTtBdkV5aFBaOztBdUVoaVBRO0VBT0k7QXZFNmhQWjs7QXVFcGlQUTtFQU9JO0F2RWlpUFo7O0F1RXhpUFE7RUFPSTtBdkVxaVBaOztBdUU1aVBRO0VBT0k7QXZFeWlQWjs7QXVFaGpQUTtFQU9JO0F2RTZpUFo7O0F1RXBqUFE7RUFPSTtBdkVpalBaOztBdUV4alBRO0VBT0k7QXZFcWpQWjs7QXVFNWpQUTtFQU9JO0F2RXlqUFo7O0F1RWhrUFE7RUFPSTtBdkU2alBaOztBdUVwa1BRO0VBT0k7QXZFaWtQWjs7QXVFeGtQUTtFQU9JO0F2RXFrUFo7O0F1RTVrUFE7RUFPSTtBdkV5a1BaOztBdUVobFBRO0VBT0k7QXZFNmtQWjs7QXVFcGxQUTtFQU9JO0F2RWlsUFo7O0F1RXhsUFE7RUFPSTtBdkVxbFBaOztBdUU1bFBRO0VBT0k7QXZFeWxQWjs7QXVFaG1QUTtFQU9JO0F2RTZsUFo7O0F1RXBtUFE7RUFPSTtBdkVpbVBaOztBdUV4bVBRO0VBT0k7QXZFcW1QWjs7QXVFNW1QUTtFQU9JO0F2RXltUFo7O0F1RWhuUFE7RUFPSTtBdkU2bVBaOztBdUVwblBRO0VBT0k7QXZFaW5QWjs7QXVFeG5QUTtFQU9JO0F2RXFuUFo7O0F1RTVuUFE7RUFPSTtBdkV5blBaOztBdUVob1BRO0VBT0k7QXZFNm5QWjs7QXVFcG9QUTtFQU9JO0F2RWlvUFo7O0F1RXhvUFE7RUFPSTtBdkVxb1BaOztBdUU1b1BRO0VBT0k7QXZFeW9QWjs7QXVFaHBQUTtFQU9JO0F2RTZvUFo7O0F1RXBwUFE7RUFPSTtBdkVpcFBaOztBdUV4cFBRO0VBT0k7QXZFcXBQWjs7QXVFNXBQUTtFQU9JO0F2RXlwUFo7O0F1RWhxUFE7RUFPSTtBdkU2cFBaOztBdUVwcVBRO0VBT0k7QXZFaXFQWjs7QXVFeHFQUTtFQU9JO0F2RXFxUFo7O0F1RTVxUFE7RUFPSTtBdkV5cVBaOztBdUVoclBRO0VBT0k7QXZFNnFQWjs7QXVFcHJQUTtFQU9JO0F2RWlyUFo7O0F1RXRzUFE7QUFjQTtFQU9JO0VBQUE7QXZFdXJQWjs7QXVFcHFQUTtBQTFCQTtFQUlRO0VBR0o7QXZFNnJQWjs7QXVFcHNQUTtFQUlRO0VBR0o7QXZFa3NQWjs7QXVFenNQUTtFQUlRO0VBR0o7QXZFdXNQWjs7QXVFOXNQUTtFQUlRO0VBR0o7QXZFNHNQWjs7QXVFbnRQUTtFQUlRO0VBR0o7QXZFaXRQWjs7QXVFeHRQUTtFQUlRO0VBR0o7QXZFc3RQWjs7QXVFN3RQUTtFQUlRO0VBR0o7QXZFMnRQWjs7QXVFbHVQUTtFQUlRO0VBR0o7QXZFZ3VQWjs7QXVFdnVQUTtFQUlRO0VBR0o7QXZFcXVQWjs7QXVFNXVQUTtFQUlRO0VBR0o7QXZFMHVQWjs7QXVFanZQUTtFQUlRO0VBR0o7QXZFK3VQWjs7QXVFdHZQUTtFQUlRO0VBR0o7QXZFb3ZQWjs7QXVFM3ZQUTtFQUlRO0VBR0o7QXZFeXZQWjs7QXVFaHdQUTtFQUlRO0VBR0o7QXZFOHZQWjs7QXVFcndQUTtFQUlRO0VBR0o7QXZFbXdQWjs7QXVFcHhQUTtFQUNFO0F2RXV4UFY7O0F1RXh4UFE7RUFDRTtBdkUyeFBWOztBdUU1eFBRO0VBQ0U7QXZFK3hQVjs7QXVFaHlQUTtFQUNFO0F2RW15UFY7O0F1RTF4UFE7RUFJUTtFQUdKO0F2RXd4UFo7O0F1RS94UFE7RUFJUTtFQUdKO0F2RTZ4UFo7O0F1RXB5UFE7RUFJUTtFQUdKO0F2RWt5UFo7O0F1RXp5UFE7RUFJUTtFQUdKO0F2RXV5UFo7O0F1RTl5UFE7RUFJUTtFQUdKO0F2RTR5UFo7O0F1RW56UFE7RUFJUTtFQUdKO0F2RWl6UFo7O0F1RXh6UFE7RUFJUTtFQUdKO0F2RXN6UFo7O0F1RTd6UFE7RUFJUTtFQUdKO0F2RTJ6UFo7O0F1RWwwUFE7RUFJUTtFQUdKO0F2RWcwUFo7O0F1RXYwUFE7RUFJUTtFQUdKO0F2RXEwUFo7O0F1RTUwUFE7RUFJUTtFQUdKO0F2RTAwUFo7O0F1RWoxUFE7RUFJUTtFQUdKO0F2RSswUFo7O0F1RWgyUFE7RUFDRTtBdkVtMlBWOztBdUVwMlBRO0VBQ0U7QXZFdTJQVjs7QXVFeDJQUTtFQUNFO0F2RTIyUFY7O0F1RTUyUFE7RUFDRTtBdkUrMlBWOztBdUVoM1BRO0VBQ0U7QXZFbTNQVjs7QXVFMTJQUTtFQU9JO0F2RXUyUFo7O0F1RTkyUFE7RUFPSTtBdkUyMlBaOztBdUVsM1BRO0VBT0k7QXZFKzJQWjs7QXVFdDNQUTtFQU9JO0F2RW0zUFo7O0F1RTEzUFE7RUFPSTtBdkV1M1BaOztBdUU5M1BRO0VBT0k7QXZFMjNQWjs7QXVFbDRQUTtFQU9JO0F2RSszUFo7O0F1RXQ0UFE7RUFPSTtBdkVtNFBaOztBdUUxNFBRO0VBT0k7QXZFdTRQWjs7QXVFOTRQUTtFQU9JO0F2RTI0UFo7O0F1RWw1UFE7RUFPSTtBdkUrNFBaOztBdUV0NVBRO0VBT0k7QXZFbTVQWjs7QXVFMTVQUTtFQU9JO0F2RXU1UFo7O0F1RTk1UFE7RUFPSTtBdkUyNVBaOztBdUVsNlBRO0VBT0k7QXZFKzVQWjs7QXVFdDZQUTtFQU9JO0VBQUE7QXZFbzZQWjs7QXVFMzZQUTtFQU9JO0VBQUE7QXZFeTZQWjs7QXVFaDdQUTtFQU9JO0VBQUE7QXZFODZQWjs7QXVFcjdQUTtFQU9JO0VBQUE7QXZFbTdQWjs7QXVFMTdQUTtFQU9JO0F2RXU3UFo7O0F1RTk3UFE7RUFPSTtBdkUyN1BaOztBYXI4UEk7RTBER0k7SUFPSTtFdkVnOFBWO0V1RXY4UE07SUFPSTtFdkVtOFBWO0V1RTE4UE07SUFPSTtFdkVzOFBWO0V1RTc4UE07SUFPSTtFdkV5OFBWO0V1RWg5UE07SUFPSTtFdkU0OFBWO0V1RW45UE07SUFPSTtFdkUrOFBWO0V1RXQ5UE07SUFPSTtFdkVrOVBWO0V1RXo5UE07SUFPSTtFdkVxOVBWO0V1RTU5UE07SUFPSTtFdkV3OVBWO0V1RS85UE07SUFPSTtFdkUyOVBWO0V1RWwrUE07SUFPSTtFdkU4OVBWO0V1RXIrUE07SUFPSTtFdkVpK1BWO0V1RXgrUE07SUFPSTtFdkVvK1BWO0V1RTMrUE07SUFPSTtFdkV1K1BWO0V1RTkrUE07SUFPSTtFdkUwK1BWO0V1RWovUE07SUFPSTtFdkU2K1BWO0V1RXAvUE07SUFPSTtFdkVnL1BWO0V1RXYvUE07SUFPSTtFdkVtL1BWO0V1RTEvUE07SUFPSTtFdkVzL1BWO0V1RTcvUE07SUFPSTtFdkV5L1BWO0V1RWhnUU07SUFPSTtFdkU0L1BWO0V1RW5nUU07SUFPSTtFdkUrL1BWO0V1RXRnUU07SUFPSTtFdkVrZ1FWO0V1RXpnUU07SUFPSTtFdkVxZ1FWO0V1RTVnUU07SUFPSTtFdkV3Z1FWO0V1RS9nUU07SUFPSTtFdkUyZ1FWO0V1RWxoUU07SUFPSTtFdkU4Z1FWO0V1RXJoUU07SUFPSTtFdkVpaFFWO0V1RXhoUU07SUFPSTtFdkVvaFFWO0V1RTNoUU07SUFPSTtFdkV1aFFWO0V1RTloUU07SUFPSTtFdkUwaFFWO0V1RWppUU07SUFPSTtFdkU2aFFWO0V1RXBpUU07SUFPSTtFdkVnaVFWO0V1RXZpUU07SUFPSTtFdkVtaVFWO0V1RTFpUU07SUFPSTtFdkVzaVFWO0V1RTdpUU07SUFPSTtFdkV5aVFWO0V1RWhqUU07SUFPSTtFdkU0aVFWO0V1RW5qUU07SUFPSTtFdkUraVFWO0V1RXRqUU07SUFPSTtFdkVralFWO0V1RXpqUU07SUFPSTtFdkVxalFWO0V1RTVqUU07SUFPSTtFdkV3alFWO0V1RS9qUU07SUFPSTtFdkUyalFWO0V1RWxrUU07SUFPSTtFdkU4alFWO0V1RXJrUU07SUFPSTtFdkVpa1FWO0V1RXhrUU07SUFPSTtFdkVva1FWO0V1RTNrUU07SUFPSTtFdkV1a1FWO0V1RTlrUU07SUFPSTtFdkUwa1FWO0V1RWpsUU07SUFPSTtFdkU2a1FWO0V1RXBsUU07SUFPSTtFdkVnbFFWO0V1RXZsUU07SUFPSTtFdkVtbFFWO0V1RTFsUU07SUFPSTtFdkVzbFFWO0V1RTdsUU07SUFPSTtFdkV5bFFWO0V1RWhtUU07SUFPSTtFdkU0bFFWO0V1RW5tUU07SUFPSTtFdkUrbFFWO0V1RXRtUU07SUFPSTtFdkVrbVFWO0V1RXptUU07SUFPSTtFdkVxbVFWO0V1RTVtUU07SUFPSTtFdkV3bVFWO0V1RS9tUU07SUFPSTtFdkUybVFWO0V1RWxuUU07SUFPSTtFdkU4bVFWO0V1RXJuUU07SUFPSTtFdkVpblFWO0V1RXhuUU07SUFPSTtFdkVvblFWO0V1RTNuUU07SUFPSTtFdkV1blFWO0V1RTluUU07SUFPSTtFdkUwblFWO0V1RWpvUU07SUFPSTtJQUFBO0V2RThuUVY7RXVFcm9RTTtJQU9JO0lBQUE7RXZFa29RVjtFdUV6b1FNO0lBT0k7SUFBQTtFdkVzb1FWO0V1RTdvUU07SUFPSTtJQUFBO0V2RTBvUVY7RXVFanBRTTtJQU9JO0lBQUE7RXZFOG9RVjtFdUVycFFNO0lBT0k7SUFBQTtFdkVrcFFWO0V1RXpwUU07SUFPSTtJQUFBO0V2RXNwUVY7RXVFN3BRTTtJQU9JO0lBQUE7RXZFMHBRVjtFdUVqcVFNO0lBT0k7SUFBQTtFdkU4cFFWO0V1RXJxUU07SUFPSTtJQUFBO0V2RWtxUVY7RXVFenFRTTtJQU9JO0lBQUE7RXZFc3FRVjtFdUU3cVFNO0lBT0k7SUFBQTtFdkUwcVFWO0V1RWpyUU07SUFPSTtJQUFBO0V2RThxUVY7RXVFcnJRTTtJQU9JO0lBQUE7RXZFa3JRVjtFdUV6clFNO0lBT0k7RXZFcXJRVjtFdUU1clFNO0lBT0k7RXZFd3JRVjtFdUUvclFNO0lBT0k7RXZFMnJRVjtFdUVsc1FNO0lBT0k7RXZFOHJRVjtFdUVyc1FNO0lBT0k7RXZFaXNRVjtFdUV4c1FNO0lBT0k7RXZFb3NRVjtFdUUzc1FNO0lBT0k7RXZFdXNRVjtFdUU5c1FNO0lBT0k7RXZFMHNRVjtFdUVqdFFNO0lBT0k7RXZFNnNRVjtFdUVwdFFNO0lBT0k7RXZFZ3RRVjtFdUV2dFFNO0lBT0k7RXZFbXRRVjtFdUUxdFFNO0lBT0k7RXZFc3RRVjtFdUU3dFFNO0lBT0k7RXZFeXRRVjtFdUVodVFNO0lBT0k7RXZFNHRRVjtFdUVudVFNO0lBT0k7RXZFK3RRVjtFdUV0dVFNO0lBT0k7RXZFa3VRVjtFdUV6dVFNO0lBT0k7RXZFcXVRVjtFdUU1dVFNO0lBT0k7RXZFd3VRVjtFdUUvdVFNO0lBT0k7RXZFMnVRVjtFdUVsdlFNO0lBT0k7RXZFOHVRVjtFdUVydlFNO0lBT0k7RXZFaXZRVjtFdUV4dlFNO0lBT0k7RXZFb3ZRVjtFdUUzdlFNO0lBT0k7RXZFdXZRVjtFdUU5dlFNO0lBT0k7RXZFMHZRVjtFdUVqd1FNO0lBT0k7RXZFNnZRVjtFdUVwd1FNO0lBT0k7RXZFZ3dRVjtFdUV2d1FNO0lBT0k7RXZFbXdRVjtFdUUxd1FNO0lBT0k7RXZFc3dRVjtFdUU3d1FNO0lBT0k7RXZFeXdRVjtFdUVoeFFNO0lBT0k7RXZFNHdRVjtFdUVueFFNO0lBT0k7RXZFK3dRVjtFdUV0eFFNO0lBT0k7RXZFa3hRVjtFdUV6eFFNO0lBT0k7RXZFcXhRVjtFdUU1eFFNO0lBT0k7RXZFd3hRVjtFdUUveFFNO0lBT0k7SUFBQTtFdkU0eFFWO0V1RW55UU07SUFPSTtJQUFBO0V2RWd5UVY7RXVFdnlRTTtJQU9JO0lBQUE7RXZFb3lRVjtFdUUzeVFNO0lBT0k7SUFBQTtFdkV3eVFWO0V1RS95UU07SUFPSTtJQUFBO0V2RTR5UVY7RXVFbnpRTTtJQU9JO0lBQUE7RXZFZ3pRVjtFdUV2elFNO0lBT0k7SUFBQTtFdkVvelFWO0V1RTN6UU07SUFPSTtJQUFBO0V2RXd6UVY7RXVFL3pRTTtJQU9JO0lBQUE7RXZFNHpRVjtFdUVuMFFNO0lBT0k7SUFBQTtFdkVnMFFWO0V1RXYwUU07SUFPSTtJQUFBO0V2RW8wUVY7RXVFMzBRTTtJQU9JO0lBQUE7RXZFdzBRVjtFdUUvMFFNO0lBT0k7RXZFMjBRVjtFdUVsMVFNO0lBT0k7RXZFODBRVjtFdUVyMVFNO0lBT0k7RXZFaTFRVjtFdUV4MVFNO0lBT0k7RXZFbzFRVjtFdUUzMVFNO0lBT0k7RXZFdTFRVjtFdUU5MVFNO0lBT0k7RXZFMDFRVjtFdUVqMlFNO0lBT0k7RXZFNjFRVjtFdUVwMlFNO0lBT0k7RXZFZzJRVjtFdUV2MlFNO0lBT0k7RXZFbTJRVjtFdUUxMlFNO0lBT0k7RXZFczJRVjtFdUU3MlFNO0lBT0k7RXZFeTJRVjtFdUVoM1FNO0lBT0k7RXZFNDJRVjtFdUVuM1FNO0lBT0k7RXZFKzJRVjtFdUV0M1FNO0lBT0k7RXZFazNRVjtFdUV6M1FNO0lBT0k7RXZFcTNRVjtFdUU1M1FNO0lBT0k7RXZFdzNRVjtFdUUvM1FNO0lBT0k7RXZFMjNRVjtFdUVsNFFNO0lBT0k7RXZFODNRVjtFdUVyNFFNO0lBT0k7RXZFaTRRVjtFdUV4NFFNO0lBT0k7RXZFbzRRVjtFdUUzNFFNO0lBT0k7RXZFdTRRVjtFdUU5NFFNO0lBT0k7RXZFMDRRVjtFdUVqNVFNO0lBT0k7RXZFNjRRVjtFdUVwNVFNO0lBT0k7RXZFZzVRVjtFdUV2NVFNO0lBT0k7RXZFbTVRVjtFdUUxNVFNO0lBT0k7RXZFczVRVjtFdUU3NVFNO0lBT0k7RXZFeTVRVjtFdUVoNlFNO0lBT0k7RXZFNDVRVjtFdUVuNlFNO0lBT0k7RXZFKzVRVjtFdUV0NlFNO0lBT0k7RXZFazZRVjtFdUV6NlFNO0lBT0k7RXZFcTZRVjtFdUU1NlFNO0lBT0k7RXZFdzZRVjtFdUUvNlFNO0lBT0k7RXZFMjZRVjtBQUNGO0FhdDdRSTtFMERHSTtJQU9JO0V2RWc3UVY7RXVFdjdRTTtJQU9JO0V2RW03UVY7RXVFMTdRTTtJQU9JO0V2RXM3UVY7RXVFNzdRTTtJQU9JO0V2RXk3UVY7RXVFaDhRTTtJQU9JO0V2RTQ3UVY7RXVFbjhRTTtJQU9JO0V2RSs3UVY7RXVFdDhRTTtJQU9JO0V2RWs4UVY7RXVFejhRTTtJQU9JO0V2RXE4UVY7RXVFNThRTTtJQU9JO0V2RXc4UVY7RXVFLzhRTTtJQU9JO0V2RTI4UVY7RXVFbDlRTTtJQU9JO0V2RTg4UVY7RXVFcjlRTTtJQU9JO0V2RWk5UVY7RXVFeDlRTTtJQU9JO0V2RW85UVY7RXVFMzlRTTtJQU9JO0V2RXU5UVY7RXVFOTlRTTtJQU9JO0V2RTA5UVY7RXVFaitRTTtJQU9JO0V2RTY5UVY7RXVFcCtRTTtJQU9JO0V2RWcrUVY7RXVFditRTTtJQU9JO0V2RW0rUVY7RXVFMStRTTtJQU9JO0V2RXMrUVY7RXVFNytRTTtJQU9JO0V2RXkrUVY7RXVFaC9RTTtJQU9JO0V2RTQrUVY7RXVFbi9RTTtJQU9JO0V2RSsrUVY7RXVFdC9RTTtJQU9JO0V2RWsvUVY7RXVFei9RTTtJQU9JO0V2RXEvUVY7RXVFNS9RTTtJQU9JO0V2RXcvUVY7RXVFLy9RTTtJQU9JO0V2RTIvUVY7RXVFbGdSTTtJQU9JO0V2RTgvUVY7RXVFcmdSTTtJQU9JO0V2RWlnUlY7RXVFeGdSTTtJQU9JO0V2RW9nUlY7RXVFM2dSTTtJQU9JO0V2RXVnUlY7RXVFOWdSTTtJQU9JO0V2RTBnUlY7RXVFamhSTTtJQU9JO0V2RTZnUlY7RXVFcGhSTTtJQU9JO0V2RWdoUlY7RXVFdmhSTTtJQU9JO0V2RW1oUlY7RXVFMWhSTTtJQU9JO0V2RXNoUlY7RXVFN2hSTTtJQU9JO0V2RXloUlY7RXVFaGlSTTtJQU9JO0V2RTRoUlY7RXVFbmlSTTtJQU9JO0V2RStoUlY7RXVFdGlSTTtJQU9JO0V2RWtpUlY7RXVFemlSTTtJQU9JO0V2RXFpUlY7RXVFNWlSTTtJQU9JO0V2RXdpUlY7RXVFL2lSTTtJQU9JO0V2RTJpUlY7RXVFbGpSTTtJQU9JO0V2RThpUlY7RXVFcmpSTTtJQU9JO0V2RWlqUlY7RXVFeGpSTTtJQU9JO0V2RW9qUlY7RXVFM2pSTTtJQU9JO0V2RXVqUlY7RXVFOWpSTTtJQU9JO0V2RTBqUlY7RXVFamtSTTtJQU9JO0V2RTZqUlY7RXVFcGtSTTtJQU9JO0V2RWdrUlY7RXVFdmtSTTtJQU9JO0V2RW1rUlY7RXVFMWtSTTtJQU9JO0V2RXNrUlY7RXVFN2tSTTtJQU9JO0V2RXlrUlY7RXVFaGxSTTtJQU9JO0V2RTRrUlY7RXVFbmxSTTtJQU9JO0V2RStrUlY7RXVFdGxSTTtJQU9JO0V2RWtsUlY7RXVFemxSTTtJQU9JO0V2RXFsUlY7RXVFNWxSTTtJQU9JO0V2RXdsUlY7RXVFL2xSTTtJQU9JO0V2RTJsUlY7RXVFbG1STTtJQU9JO0V2RThsUlY7RXVFcm1STTtJQU9JO0V2RWltUlY7RXVFeG1STTtJQU9JO0V2RW9tUlY7RXVFM21STTtJQU9JO0V2RXVtUlY7RXVFOW1STTtJQU9JO0V2RTBtUlY7RXVFam5STTtJQU9JO0lBQUE7RXZFOG1SVjtFdUVyblJNO0lBT0k7SUFBQTtFdkVrblJWO0V1RXpuUk07SUFPSTtJQUFBO0V2RXNuUlY7RXVFN25STTtJQU9JO0lBQUE7RXZFMG5SVjtFdUVqb1JNO0lBT0k7SUFBQTtFdkU4blJWO0V1RXJvUk07SUFPSTtJQUFBO0V2RWtvUlY7RXVFem9STTtJQU9JO0lBQUE7RXZFc29SVjtFdUU3b1JNO0lBT0k7SUFBQTtFdkUwb1JWO0V1RWpwUk07SUFPSTtJQUFBO0V2RThvUlY7RXVFcnBSTTtJQU9JO0lBQUE7RXZFa3BSVjtFdUV6cFJNO0lBT0k7SUFBQTtFdkVzcFJWO0V1RTdwUk07SUFPSTtJQUFBO0V2RTBwUlY7RXVFanFSTTtJQU9JO0lBQUE7RXZFOHBSVjtFdUVycVJNO0lBT0k7SUFBQTtFdkVrcVJWO0V1RXpxUk07SUFPSTtFdkVxcVJWO0V1RTVxUk07SUFPSTtFdkV3cVJWO0V1RS9xUk07SUFPSTtFdkUycVJWO0V1RWxyUk07SUFPSTtFdkU4cVJWO0V1RXJyUk07SUFPSTtFdkVpclJWO0V1RXhyUk07SUFPSTtFdkVvclJWO0V1RTNyUk07SUFPSTtFdkV1clJWO0V1RTlyUk07SUFPSTtFdkUwclJWO0V1RWpzUk07SUFPSTtFdkU2clJWO0V1RXBzUk07SUFPSTtFdkVnc1JWO0V1RXZzUk07SUFPSTtFdkVtc1JWO0V1RTFzUk07SUFPSTtFdkVzc1JWO0V1RTdzUk07SUFPSTtFdkV5c1JWO0V1RWh0Uk07SUFPSTtFdkU0c1JWO0V1RW50Uk07SUFPSTtFdkUrc1JWO0V1RXR0Uk07SUFPSTtFdkVrdFJWO0V1RXp0Uk07SUFPSTtFdkVxdFJWO0V1RTV0Uk07SUFPSTtFdkV3dFJWO0V1RS90Uk07SUFPSTtFdkUydFJWO0V1RWx1Uk07SUFPSTtFdkU4dFJWO0V1RXJ1Uk07SUFPSTtFdkVpdVJWO0V1RXh1Uk07SUFPSTtFdkVvdVJWO0V1RTN1Uk07SUFPSTtFdkV1dVJWO0V1RTl1Uk07SUFPSTtFdkUwdVJWO0V1RWp2Uk07SUFPSTtFdkU2dVJWO0V1RXB2Uk07SUFPSTtFdkVndlJWO0V1RXZ2Uk07SUFPSTtFdkVtdlJWO0V1RTF2Uk07SUFPSTtFdkVzdlJWO0V1RTd2Uk07SUFPSTtFdkV5dlJWO0V1RWh3Uk07SUFPSTtFdkU0dlJWO0V1RW53Uk07SUFPSTtFdkUrdlJWO0V1RXR3Uk07SUFPSTtFdkVrd1JWO0V1RXp3Uk07SUFPSTtFdkVxd1JWO0V1RTV3Uk07SUFPSTtFdkV3d1JWO0V1RS93Uk07SUFPSTtJQUFBO0V2RTR3UlY7RXVFbnhSTTtJQU9JO0lBQUE7RXZFZ3hSVjtFdUV2eFJNO0lBT0k7SUFBQTtFdkVveFJWO0V1RTN4Uk07SUFPSTtJQUFBO0V2RXd4UlY7RXVFL3hSTTtJQU9JO0lBQUE7RXZFNHhSVjtFdUVueVJNO0lBT0k7SUFBQTtFdkVneVJWO0V1RXZ5Uk07SUFPSTtJQUFBO0V2RW95UlY7RXVFM3lSTTtJQU9JO0lBQUE7RXZFd3lSVjtFdUUveVJNO0lBT0k7SUFBQTtFdkU0eVJWO0V1RW56Uk07SUFPSTtJQUFBO0V2RWd6UlY7RXVFdnpSTTtJQU9JO0lBQUE7RXZFb3pSVjtFdUUzelJNO0lBT0k7SUFBQTtFdkV3elJWO0V1RS96Uk07SUFPSTtFdkUyelJWO0V1RWwwUk07SUFPSTtFdkU4elJWO0V1RXIwUk07SUFPSTtFdkVpMFJWO0V1RXgwUk07SUFPSTtFdkVvMFJWO0V1RTMwUk07SUFPSTtFdkV1MFJWO0V1RTkwUk07SUFPSTtFdkUwMFJWO0V1RWoxUk07SUFPSTtFdkU2MFJWO0V1RXAxUk07SUFPSTtFdkVnMVJWO0V1RXYxUk07SUFPSTtFdkVtMVJWO0V1RTExUk07SUFPSTtFdkVzMVJWO0V1RTcxUk07SUFPSTtFdkV5MVJWO0V1RWgyUk07SUFPSTtFdkU0MVJWO0V1RW4yUk07SUFPSTtFdkUrMVJWO0V1RXQyUk07SUFPSTtFdkVrMlJWO0V1RXoyUk07SUFPSTtFdkVxMlJWO0V1RTUyUk07SUFPSTtFdkV3MlJWO0V1RS8yUk07SUFPSTtFdkUyMlJWO0V1RWwzUk07SUFPSTtFdkU4MlJWO0V1RXIzUk07SUFPSTtFdkVpM1JWO0V1RXgzUk07SUFPSTtFdkVvM1JWO0V1RTMzUk07SUFPSTtFdkV1M1JWO0V1RTkzUk07SUFPSTtFdkUwM1JWO0V1RWo0Uk07SUFPSTtFdkU2M1JWO0V1RXA0Uk07SUFPSTtFdkVnNFJWO0V1RXY0Uk07SUFPSTtFdkVtNFJWO0V1RTE0Uk07SUFPSTtFdkVzNFJWO0V1RTc0Uk07SUFPSTtFdkV5NFJWO0V1RWg1Uk07SUFPSTtFdkU0NFJWO0V1RW41Uk07SUFPSTtFdkUrNFJWO0V1RXQ1Uk07SUFPSTtFdkVrNVJWO0V1RXo1Uk07SUFPSTtFdkVxNVJWO0V1RTU1Uk07SUFPSTtFdkV3NVJWO0V1RS81Uk07SUFPSTtFdkUyNVJWO0FBQ0Y7QWF0NlJJO0UwREdJO0lBT0k7RXZFZzZSVjtFdUV2NlJNO0lBT0k7RXZFbTZSVjtFdUUxNlJNO0lBT0k7RXZFczZSVjtFdUU3NlJNO0lBT0k7RXZFeTZSVjtFdUVoN1JNO0lBT0k7RXZFNDZSVjtFdUVuN1JNO0lBT0k7RXZFKzZSVjtFdUV0N1JNO0lBT0k7RXZFazdSVjtFdUV6N1JNO0lBT0k7RXZFcTdSVjtFdUU1N1JNO0lBT0k7RXZFdzdSVjtFdUUvN1JNO0lBT0k7RXZFMjdSVjtFdUVsOFJNO0lBT0k7RXZFODdSVjtFdUVyOFJNO0lBT0k7RXZFaThSVjtFdUV4OFJNO0lBT0k7RXZFbzhSVjtFdUUzOFJNO0lBT0k7RXZFdThSVjtFdUU5OFJNO0lBT0k7RXZFMDhSVjtFdUVqOVJNO0lBT0k7RXZFNjhSVjtFdUVwOVJNO0lBT0k7RXZFZzlSVjtFdUV2OVJNO0lBT0k7RXZFbTlSVjtFdUUxOVJNO0lBT0k7RXZFczlSVjtFdUU3OVJNO0lBT0k7RXZFeTlSVjtFdUVoK1JNO0lBT0k7RXZFNDlSVjtFdUVuK1JNO0lBT0k7RXZFKzlSVjtFdUV0K1JNO0lBT0k7RXZFaytSVjtFdUV6K1JNO0lBT0k7RXZFcStSVjtFdUU1K1JNO0lBT0k7RXZFdytSVjtFdUUvK1JNO0lBT0k7RXZFMitSVjtFdUVsL1JNO0lBT0k7RXZFOCtSVjtFdUVyL1JNO0lBT0k7RXZFaS9SVjtFdUV4L1JNO0lBT0k7RXZFby9SVjtFdUUzL1JNO0lBT0k7RXZFdS9SVjtFdUU5L1JNO0lBT0k7RXZFMC9SVjtFdUVqZ1NNO0lBT0k7RXZFNi9SVjtFdUVwZ1NNO0lBT0k7RXZFZ2dTVjtFdUV2Z1NNO0lBT0k7RXZFbWdTVjtFdUUxZ1NNO0lBT0k7RXZFc2dTVjtFdUU3Z1NNO0lBT0k7RXZFeWdTVjtFdUVoaFNNO0lBT0k7RXZFNGdTVjtFdUVuaFNNO0lBT0k7RXZFK2dTVjtFdUV0aFNNO0lBT0k7RXZFa2hTVjtFdUV6aFNNO0lBT0k7RXZFcWhTVjtFdUU1aFNNO0lBT0k7RXZFd2hTVjtFdUUvaFNNO0lBT0k7RXZFMmhTVjtFdUVsaVNNO0lBT0k7RXZFOGhTVjtFdUVyaVNNO0lBT0k7RXZFaWlTVjtFdUV4aVNNO0lBT0k7RXZFb2lTVjtFdUUzaVNNO0lBT0k7RXZFdWlTVjtFdUU5aVNNO0lBT0k7RXZFMGlTVjtFdUVqalNNO0lBT0k7RXZFNmlTVjtFdUVwalNNO0lBT0k7RXZFZ2pTVjtFdUV2alNNO0lBT0k7RXZFbWpTVjtFdUUxalNNO0lBT0k7RXZFc2pTVjtFdUU3alNNO0lBT0k7RXZFeWpTVjtFdUVoa1NNO0lBT0k7RXZFNGpTVjtFdUVua1NNO0lBT0k7RXZFK2pTVjtFdUV0a1NNO0lBT0k7RXZFa2tTVjtFdUV6a1NNO0lBT0k7RXZFcWtTVjtFdUU1a1NNO0lBT0k7RXZFd2tTVjtFdUUva1NNO0lBT0k7RXZFMmtTVjtFdUVsbFNNO0lBT0k7RXZFOGtTVjtFdUVybFNNO0lBT0k7RXZFaWxTVjtFdUV4bFNNO0lBT0k7RXZFb2xTVjtFdUUzbFNNO0lBT0k7RXZFdWxTVjtFdUU5bFNNO0lBT0k7RXZFMGxTVjtFdUVqbVNNO0lBT0k7SUFBQTtFdkU4bFNWO0V1RXJtU007SUFPSTtJQUFBO0V2RWttU1Y7RXVFem1TTTtJQU9JO0lBQUE7RXZFc21TVjtFdUU3bVNNO0lBT0k7SUFBQTtFdkUwbVNWO0V1RWpuU007SUFPSTtJQUFBO0V2RThtU1Y7RXVFcm5TTTtJQU9JO0lBQUE7RXZFa25TVjtFdUV6blNNO0lBT0k7SUFBQTtFdkVzblNWO0V1RTduU007SUFPSTtJQUFBO0V2RTBuU1Y7RXVFam9TTTtJQU9JO0lBQUE7RXZFOG5TVjtFdUVyb1NNO0lBT0k7SUFBQTtFdkVrb1NWO0V1RXpvU007SUFPSTtJQUFBO0V2RXNvU1Y7RXVFN29TTTtJQU9JO0lBQUE7RXZFMG9TVjtFdUVqcFNNO0lBT0k7SUFBQTtFdkU4b1NWO0V1RXJwU007SUFPSTtJQUFBO0V2RWtwU1Y7RXVFenBTTTtJQU9JO0V2RXFwU1Y7RXVFNXBTTTtJQU9JO0V2RXdwU1Y7RXVFL3BTTTtJQU9JO0V2RTJwU1Y7RXVFbHFTTTtJQU9JO0V2RThwU1Y7RXVFcnFTTTtJQU9JO0V2RWlxU1Y7RXVFeHFTTTtJQU9JO0V2RW9xU1Y7RXVFM3FTTTtJQU9JO0V2RXVxU1Y7RXVFOXFTTTtJQU9JO0V2RTBxU1Y7RXVFanJTTTtJQU9JO0V2RTZxU1Y7RXVFcHJTTTtJQU9JO0V2RWdyU1Y7RXVFdnJTTTtJQU9JO0V2RW1yU1Y7RXVFMXJTTTtJQU9JO0V2RXNyU1Y7RXVFN3JTTTtJQU9JO0V2RXlyU1Y7RXVFaHNTTTtJQU9JO0V2RTRyU1Y7RXVFbnNTTTtJQU9JO0V2RStyU1Y7RXVFdHNTTTtJQU9JO0V2RWtzU1Y7RXVFenNTTTtJQU9JO0V2RXFzU1Y7RXVFNXNTTTtJQU9JO0V2RXdzU1Y7RXVFL3NTTTtJQU9JO0V2RTJzU1Y7RXVFbHRTTTtJQU9JO0V2RThzU1Y7RXVFcnRTTTtJQU9JO0V2RWl0U1Y7RXVFeHRTTTtJQU9JO0V2RW90U1Y7RXVFM3RTTTtJQU9JO0V2RXV0U1Y7RXVFOXRTTTtJQU9JO0V2RTB0U1Y7RXVFanVTTTtJQU9JO0V2RTZ0U1Y7RXVFcHVTTTtJQU9JO0V2RWd1U1Y7RXVFdnVTTTtJQU9JO0V2RW11U1Y7RXVFMXVTTTtJQU9JO0V2RXN1U1Y7RXVFN3VTTTtJQU9JO0V2RXl1U1Y7RXVFaHZTTTtJQU9JO0V2RTR1U1Y7RXVFbnZTTTtJQU9JO0V2RSt1U1Y7RXVFdHZTTTtJQU9JO0V2RWt2U1Y7RXVFenZTTTtJQU9JO0V2RXF2U1Y7RXVFNXZTTTtJQU9JO0V2RXd2U1Y7RXVFL3ZTTTtJQU9JO0lBQUE7RXZFNHZTVjtFdUVud1NNO0lBT0k7SUFBQTtFdkVnd1NWO0V1RXZ3U007SUFPSTtJQUFBO0V2RW93U1Y7RXVFM3dTTTtJQU9JO0lBQUE7RXZFd3dTVjtFdUUvd1NNO0lBT0k7SUFBQTtFdkU0d1NWO0V1RW54U007SUFPSTtJQUFBO0V2RWd4U1Y7RXVFdnhTTTtJQU9JO0lBQUE7RXZFb3hTVjtFdUUzeFNNO0lBT0k7SUFBQTtFdkV3eFNWO0V1RS94U007SUFPSTtJQUFBO0V2RTR4U1Y7RXVFbnlTTTtJQU9JO0lBQUE7RXZFZ3lTVjtFdUV2eVNNO0lBT0k7SUFBQTtFdkVveVNWO0V1RTN5U007SUFPSTtJQUFBO0V2RXd5U1Y7RXVFL3lTTTtJQU9JO0V2RTJ5U1Y7RXVFbHpTTTtJQU9JO0V2RTh5U1Y7RXVFcnpTTTtJQU9JO0V2RWl6U1Y7RXVFeHpTTTtJQU9JO0V2RW96U1Y7RXVFM3pTTTtJQU9JO0V2RXV6U1Y7RXVFOXpTTTtJQU9JO0V2RTB6U1Y7RXVFajBTTTtJQU9JO0V2RTZ6U1Y7RXVFcDBTTTtJQU9JO0V2RWcwU1Y7RXVFdjBTTTtJQU9JO0V2RW0wU1Y7RXVFMTBTTTtJQU9JO0V2RXMwU1Y7RXVFNzBTTTtJQU9JO0V2RXkwU1Y7RXVFaDFTTTtJQU9JO0V2RTQwU1Y7RXVFbjFTTTtJQU9JO0V2RSswU1Y7RXVFdDFTTTtJQU9JO0V2RWsxU1Y7RXVFejFTTTtJQU9JO0V2RXExU1Y7RXVFNTFTTTtJQU9JO0V2RXcxU1Y7RXVFLzFTTTtJQU9JO0V2RTIxU1Y7RXVFbDJTTTtJQU9JO0V2RTgxU1Y7RXVFcjJTTTtJQU9JO0V2RWkyU1Y7RXVFeDJTTTtJQU9JO0V2RW8yU1Y7RXVFMzJTTTtJQU9JO0V2RXUyU1Y7RXVFOTJTTTtJQU9JO0V2RTAyU1Y7RXVFajNTTTtJQU9JO0V2RTYyU1Y7RXVFcDNTTTtJQU9JO0V2RWczU1Y7RXVFdjNTTTtJQU9JO0V2RW0zU1Y7RXVFMTNTTTtJQU9JO0V2RXMzU1Y7RXVFNzNTTTtJQU9JO0V2RXkzU1Y7RXVFaDRTTTtJQU9JO0V2RTQzU1Y7RXVFbjRTTTtJQU9JO0V2RSszU1Y7RXVFdDRTTTtJQU9JO0V2RWs0U1Y7RXVFejRTTTtJQU9JO0V2RXE0U1Y7RXVFNTRTTTtJQU9JO0V2RXc0U1Y7RXVFLzRTTTtJQU9JO0V2RTI0U1Y7QUFDRjtBYXQ1U0k7RTBER0k7SUFPSTtFdkVnNVNWO0V1RXY1U007SUFPSTtFdkVtNVNWO0V1RTE1U007SUFPSTtFdkVzNVNWO0V1RTc1U007SUFPSTtFdkV5NVNWO0V1RWg2U007SUFPSTtFdkU0NVNWO0V1RW42U007SUFPSTtFdkUrNVNWO0V1RXQ2U007SUFPSTtFdkVrNlNWO0V1RXo2U007SUFPSTtFdkVxNlNWO0V1RTU2U007SUFPSTtFdkV3NlNWO0V1RS82U007SUFPSTtFdkUyNlNWO0V1RWw3U007SUFPSTtFdkU4NlNWO0V1RXI3U007SUFPSTtFdkVpN1NWO0V1RXg3U007SUFPSTtFdkVvN1NWO0V1RTM3U007SUFPSTtFdkV1N1NWO0V1RTk3U007SUFPSTtFdkUwN1NWO0V1RWo4U007SUFPSTtFdkU2N1NWO0V1RXA4U007SUFPSTtFdkVnOFNWO0V1RXY4U007SUFPSTtFdkVtOFNWO0V1RTE4U007SUFPSTtFdkVzOFNWO0V1RTc4U007SUFPSTtFdkV5OFNWO0V1RWg5U007SUFPSTtFdkU0OFNWO0V1RW45U007SUFPSTtFdkUrOFNWO0V1RXQ5U007SUFPSTtFdkVrOVNWO0V1RXo5U007SUFPSTtFdkVxOVNWO0V1RTU5U007SUFPSTtFdkV3OVNWO0V1RS85U007SUFPSTtFdkUyOVNWO0V1RWwrU007SUFPSTtFdkU4OVNWO0V1RXIrU007SUFPSTtFdkVpK1NWO0V1RXgrU007SUFPSTtFdkVvK1NWO0V1RTMrU007SUFPSTtFdkV1K1NWO0V1RTkrU007SUFPSTtFdkUwK1NWO0V1RWovU007SUFPSTtFdkU2K1NWO0V1RXAvU007SUFPSTtFdkVnL1NWO0V1RXYvU007SUFPSTtFdkVtL1NWO0V1RTEvU007SUFPSTtFdkVzL1NWO0V1RTcvU007SUFPSTtFdkV5L1NWO0V1RWhnVE07SUFPSTtFdkU0L1NWO0V1RW5nVE07SUFPSTtFdkUrL1NWO0V1RXRnVE07SUFPSTtFdkVrZ1RWO0V1RXpnVE07SUFPSTtFdkVxZ1RWO0V1RTVnVE07SUFPSTtFdkV3Z1RWO0V1RS9nVE07SUFPSTtFdkUyZ1RWO0V1RWxoVE07SUFPSTtFdkU4Z1RWO0V1RXJoVE07SUFPSTtFdkVpaFRWO0V1RXhoVE07SUFPSTtFdkVvaFRWO0V1RTNoVE07SUFPSTtFdkV1aFRWO0V1RTloVE07SUFPSTtFdkUwaFRWO0V1RWppVE07SUFPSTtFdkU2aFRWO0V1RXBpVE07SUFPSTtFdkVnaVRWO0V1RXZpVE07SUFPSTtFdkVtaVRWO0V1RTFpVE07SUFPSTtFdkVzaVRWO0V1RTdpVE07SUFPSTtFdkV5aVRWO0V1RWhqVE07SUFPSTtFdkU0aVRWO0V1RW5qVE07SUFPSTtFdkUraVRWO0V1RXRqVE07SUFPSTtFdkVralRWO0V1RXpqVE07SUFPSTtFdkVxalRWO0V1RTVqVE07SUFPSTtFdkV3alRWO0V1RS9qVE07SUFPSTtFdkUyalRWO0V1RWxrVE07SUFPSTtFdkU4alRWO0V1RXJrVE07SUFPSTtFdkVpa1RWO0V1RXhrVE07SUFPSTtFdkVva1RWO0V1RTNrVE07SUFPSTtFdkV1a1RWO0V1RTlrVE07SUFPSTtFdkUwa1RWO0V1RWpsVE07SUFPSTtJQUFBO0V2RThrVFY7RXVFcmxUTTtJQU9JO0lBQUE7RXZFa2xUVjtFdUV6bFRNO0lBT0k7SUFBQTtFdkVzbFRWO0V1RTdsVE07SUFPSTtJQUFBO0V2RTBsVFY7RXVFam1UTTtJQU9JO0lBQUE7RXZFOGxUVjtFdUVybVRNO0lBT0k7SUFBQTtFdkVrbVRWO0V1RXptVE07SUFPSTtJQUFBO0V2RXNtVFY7RXVFN21UTTtJQU9JO0lBQUE7RXZFMG1UVjtFdUVqblRNO0lBT0k7SUFBQTtFdkU4bVRWO0V1RXJuVE07SUFPSTtJQUFBO0V2RWtuVFY7RXVFem5UTTtJQU9JO0lBQUE7RXZFc25UVjtFdUU3blRNO0lBT0k7SUFBQTtFdkUwblRWO0V1RWpvVE07SUFPSTtJQUFBO0V2RThuVFY7RXVFcm9UTTtJQU9JO0lBQUE7RXZFa29UVjtFdUV6b1RNO0lBT0k7RXZFcW9UVjtFdUU1b1RNO0lBT0k7RXZFd29UVjtFdUUvb1RNO0lBT0k7RXZFMm9UVjtFdUVscFRNO0lBT0k7RXZFOG9UVjtFdUVycFRNO0lBT0k7RXZFaXBUVjtFdUV4cFRNO0lBT0k7RXZFb3BUVjtFdUUzcFRNO0lBT0k7RXZFdXBUVjtFdUU5cFRNO0lBT0k7RXZFMHBUVjtFdUVqcVRNO0lBT0k7RXZFNnBUVjtFdUVwcVRNO0lBT0k7RXZFZ3FUVjtFdUV2cVRNO0lBT0k7RXZFbXFUVjtFdUUxcVRNO0lBT0k7RXZFc3FUVjtFdUU3cVRNO0lBT0k7RXZFeXFUVjtFdUVoclRNO0lBT0k7RXZFNHFUVjtFdUVuclRNO0lBT0k7RXZFK3FUVjtFdUV0clRNO0lBT0k7RXZFa3JUVjtFdUV6clRNO0lBT0k7RXZFcXJUVjtFdUU1clRNO0lBT0k7RXZFd3JUVjtFdUUvclRNO0lBT0k7RXZFMnJUVjtFdUVsc1RNO0lBT0k7RXZFOHJUVjtFdUVyc1RNO0lBT0k7RXZFaXNUVjtFdUV4c1RNO0lBT0k7RXZFb3NUVjtFdUUzc1RNO0lBT0k7RXZFdXNUVjtFdUU5c1RNO0lBT0k7RXZFMHNUVjtFdUVqdFRNO0lBT0k7RXZFNnNUVjtFdUVwdFRNO0lBT0k7RXZFZ3RUVjtFdUV2dFRNO0lBT0k7RXZFbXRUVjtFdUUxdFRNO0lBT0k7RXZFc3RUVjtFdUU3dFRNO0lBT0k7RXZFeXRUVjtFdUVodVRNO0lBT0k7RXZFNHRUVjtFdUVudVRNO0lBT0k7RXZFK3RUVjtFdUV0dVRNO0lBT0k7RXZFa3VUVjtFdUV6dVRNO0lBT0k7RXZFcXVUVjtFdUU1dVRNO0lBT0k7RXZFd3VUVjtFdUUvdVRNO0lBT0k7SUFBQTtFdkU0dVRWO0V1RW52VE07SUFPSTtJQUFBO0V2RWd2VFY7RXVFdnZUTTtJQU9JO0lBQUE7RXZFb3ZUVjtFdUUzdlRNO0lBT0k7SUFBQTtFdkV3dlRWO0V1RS92VE07SUFPSTtJQUFBO0V2RTR2VFY7RXVFbndUTTtJQU9JO0lBQUE7RXZFZ3dUVjtFdUV2d1RNO0lBT0k7SUFBQTtFdkVvd1RWO0V1RTN3VE07SUFPSTtJQUFBO0V2RXd3VFY7RXVFL3dUTTtJQU9JO0lBQUE7RXZFNHdUVjtFdUVueFRNO0lBT0k7SUFBQTtFdkVneFRWO0V1RXZ4VE07SUFPSTtJQUFBO0V2RW94VFY7RXVFM3hUTTtJQU9JO0lBQUE7RXZFd3hUVjtFdUUveFRNO0lBT0k7RXZFMnhUVjtFdUVseVRNO0lBT0k7RXZFOHhUVjtFdUVyeVRNO0lBT0k7RXZFaXlUVjtFdUV4eVRNO0lBT0k7RXZFb3lUVjtFdUUzeVRNO0lBT0k7RXZFdXlUVjtFdUU5eVRNO0lBT0k7RXZFMHlUVjtFdUVqelRNO0lBT0k7RXZFNnlUVjtFdUVwelRNO0lBT0k7RXZFZ3pUVjtFdUV2elRNO0lBT0k7RXZFbXpUVjtFdUUxelRNO0lBT0k7RXZFc3pUVjtFdUU3elRNO0lBT0k7RXZFeXpUVjtFdUVoMFRNO0lBT0k7RXZFNHpUVjtFdUVuMFRNO0lBT0k7RXZFK3pUVjtFdUV0MFRNO0lBT0k7RXZFazBUVjtFdUV6MFRNO0lBT0k7RXZFcTBUVjtFdUU1MFRNO0lBT0k7RXZFdzBUVjtFdUUvMFRNO0lBT0k7RXZFMjBUVjtFdUVsMVRNO0lBT0k7RXZFODBUVjtFdUVyMVRNO0lBT0k7RXZFaTFUVjtFdUV4MVRNO0lBT0k7RXZFbzFUVjtFdUUzMVRNO0lBT0k7RXZFdTFUVjtFdUU5MVRNO0lBT0k7RXZFMDFUVjtFdUVqMlRNO0lBT0k7RXZFNjFUVjtFdUVwMlRNO0lBT0k7RXZFZzJUVjtFdUV2MlRNO0lBT0k7RXZFbTJUVjtFdUUxMlRNO0lBT0k7RXZFczJUVjtFdUU3MlRNO0lBT0k7RXZFeTJUVjtFdUVoM1RNO0lBT0k7RXZFNDJUVjtFdUVuM1RNO0lBT0k7RXZFKzJUVjtFdUV0M1RNO0lBT0k7RXZFazNUVjtFdUV6M1RNO0lBT0k7RXZFcTNUVjtFdUU1M1RNO0lBT0k7RXZFdzNUVjtFdUUvM1RNO0lBT0k7RXZFMjNUVjtBQUNGO0FhdDRUSTtFMERHSTtJQU9JO0V2RWc0VFY7RXVFdjRUTTtJQU9JO0V2RW00VFY7RXVFMTRUTTtJQU9JO0V2RXM0VFY7RXVFNzRUTTtJQU9JO0V2RXk0VFY7RXVFaDVUTTtJQU9JO0V2RTQ0VFY7RXVFbjVUTTtJQU9JO0V2RSs0VFY7RXVFdDVUTTtJQU9JO0V2RWs1VFY7RXVFejVUTTtJQU9JO0V2RXE1VFY7RXVFNTVUTTtJQU9JO0V2RXc1VFY7RXVFLzVUTTtJQU9JO0V2RTI1VFY7RXVFbDZUTTtJQU9JO0V2RTg1VFY7RXVFcjZUTTtJQU9JO0V2RWk2VFY7RXVFeDZUTTtJQU9JO0V2RW82VFY7RXVFMzZUTTtJQU9JO0V2RXU2VFY7RXVFOTZUTTtJQU9JO0V2RTA2VFY7RXVFajdUTTtJQU9JO0V2RTY2VFY7RXVFcDdUTTtJQU9JO0V2RWc3VFY7RXVFdjdUTTtJQU9JO0V2RW03VFY7RXVFMTdUTTtJQU9JO0V2RXM3VFY7RXVFNzdUTTtJQU9JO0V2RXk3VFY7RXVFaDhUTTtJQU9JO0V2RTQ3VFY7RXVFbjhUTTtJQU9JO0V2RSs3VFY7RXVFdDhUTTtJQU9JO0V2RWs4VFY7RXVFejhUTTtJQU9JO0V2RXE4VFY7RXVFNThUTTtJQU9JO0V2RXc4VFY7RXVFLzhUTTtJQU9JO0V2RTI4VFY7RXVFbDlUTTtJQU9JO0V2RTg4VFY7RXVFcjlUTTtJQU9JO0V2RWk5VFY7RXVFeDlUTTtJQU9JO0V2RW85VFY7RXVFMzlUTTtJQU9JO0V2RXU5VFY7RXVFOTlUTTtJQU9JO0V2RTA5VFY7RXVFaitUTTtJQU9JO0V2RTY5VFY7RXVFcCtUTTtJQU9JO0V2RWcrVFY7RXVFditUTTtJQU9JO0V2RW0rVFY7RXVFMStUTTtJQU9JO0V2RXMrVFY7RXVFNytUTTtJQU9JO0V2RXkrVFY7RXVFaC9UTTtJQU9JO0V2RTQrVFY7RXVFbi9UTTtJQU9JO0V2RSsrVFY7RXVFdC9UTTtJQU9JO0V2RWsvVFY7RXVFei9UTTtJQU9JO0V2RXEvVFY7RXVFNS9UTTtJQU9JO0V2RXcvVFY7RXVFLy9UTTtJQU9JO0V2RTIvVFY7RXVFbGdVTTtJQU9JO0V2RTgvVFY7RXVFcmdVTTtJQU9JO0V2RWlnVVY7RXVFeGdVTTtJQU9JO0V2RW9nVVY7RXVFM2dVTTtJQU9JO0V2RXVnVVY7RXVFOWdVTTtJQU9JO0V2RTBnVVY7RXVFamhVTTtJQU9JO0V2RTZnVVY7RXVFcGhVTTtJQU9JO0V2RWdoVVY7RXVFdmhVTTtJQU9JO0V2RW1oVVY7RXVFMWhVTTtJQU9JO0V2RXNoVVY7RXVFN2hVTTtJQU9JO0V2RXloVVY7RXVFaGlVTTtJQU9JO0V2RTRoVVY7RXVFbmlVTTtJQU9JO0V2RStoVVY7RXVFdGlVTTtJQU9JO0V2RWtpVVY7RXVFemlVTTtJQU9JO0V2RXFpVVY7RXVFNWlVTTtJQU9JO0V2RXdpVVY7RXVFL2lVTTtJQU9JO0V2RTJpVVY7RXVFbGpVTTtJQU9JO0V2RThpVVY7RXVFcmpVTTtJQU9JO0V2RWlqVVY7RXVFeGpVTTtJQU9JO0V2RW9qVVY7RXVFM2pVTTtJQU9JO0V2RXVqVVY7RXVFOWpVTTtJQU9JO0V2RTBqVVY7RXVFamtVTTtJQU9JO0lBQUE7RXZFOGpVVjtFdUVya1VNO0lBT0k7SUFBQTtFdkVra1VWO0V1RXprVU07SUFPSTtJQUFBO0V2RXNrVVY7RXVFN2tVTTtJQU9JO0lBQUE7RXZFMGtVVjtFdUVqbFVNO0lBT0k7SUFBQTtFdkU4a1VWO0V1RXJsVU07SUFPSTtJQUFBO0V2RWtsVVY7RXVFemxVTTtJQU9JO0lBQUE7RXZFc2xVVjtFdUU3bFVNO0lBT0k7SUFBQTtFdkUwbFVWO0V1RWptVU07SUFPSTtJQUFBO0V2RThsVVY7RXVFcm1VTTtJQU9JO0lBQUE7RXZFa21VVjtFdUV6bVVNO0lBT0k7SUFBQTtFdkVzbVVWO0V1RTdtVU07SUFPSTtJQUFBO0V2RTBtVVY7RXVFam5VTTtJQU9JO0lBQUE7RXZFOG1VVjtFdUVyblVNO0lBT0k7SUFBQTtFdkVrblVWO0V1RXpuVU07SUFPSTtFdkVxblVWO0V1RTVuVU07SUFPSTtFdkV3blVWO0V1RS9uVU07SUFPSTtFdkUyblVWO0V1RWxvVU07SUFPSTtFdkU4blVWO0V1RXJvVU07SUFPSTtFdkVpb1VWO0V1RXhvVU07SUFPSTtFdkVvb1VWO0V1RTNvVU07SUFPSTtFdkV1b1VWO0V1RTlvVU07SUFPSTtFdkUwb1VWO0V1RWpwVU07SUFPSTtFdkU2b1VWO0V1RXBwVU07SUFPSTtFdkVncFVWO0V1RXZwVU07SUFPSTtFdkVtcFVWO0V1RTFwVU07SUFPSTtFdkVzcFVWO0V1RTdwVU07SUFPSTtFdkV5cFVWO0V1RWhxVU07SUFPSTtFdkU0cFVWO0V1RW5xVU07SUFPSTtFdkUrcFVWO0V1RXRxVU07SUFPSTtFdkVrcVVWO0V1RXpxVU07SUFPSTtFdkVxcVVWO0V1RTVxVU07SUFPSTtFdkV3cVVWO0V1RS9xVU07SUFPSTtFdkUycVVWO0V1RWxyVU07SUFPSTtFdkU4cVVWO0V1RXJyVU07SUFPSTtFdkVpclVWO0V1RXhyVU07SUFPSTtFdkVvclVWO0V1RTNyVU07SUFPSTtFdkV1clVWO0V1RTlyVU07SUFPSTtFdkUwclVWO0V1RWpzVU07SUFPSTtFdkU2clVWO0V1RXBzVU07SUFPSTtFdkVnc1VWO0V1RXZzVU07SUFPSTtFdkVtc1VWO0V1RTFzVU07SUFPSTtFdkVzc1VWO0V1RTdzVU07SUFPSTtFdkV5c1VWO0V1RWh0VU07SUFPSTtFdkU0c1VWO0V1RW50VU07SUFPSTtFdkUrc1VWO0V1RXR0VU07SUFPSTtFdkVrdFVWO0V1RXp0VU07SUFPSTtFdkVxdFVWO0V1RTV0VU07SUFPSTtFdkV3dFVWO0V1RS90VU07SUFPSTtJQUFBO0V2RTR0VVY7RXVFbnVVTTtJQU9JO0lBQUE7RXZFZ3VVVjtFdUV2dVVNO0lBT0k7SUFBQTtFdkVvdVVWO0V1RTN1VU07SUFPSTtJQUFBO0V2RXd1VVY7RXVFL3VVTTtJQU9JO0lBQUE7RXZFNHVVVjtFdUVudlVNO0lBT0k7SUFBQTtFdkVndlVWO0V1RXZ2VU07SUFPSTtJQUFBO0V2RW92VVY7RXVFM3ZVTTtJQU9JO0lBQUE7RXZFd3ZVVjtFdUUvdlVNO0lBT0k7SUFBQTtFdkU0dlVWO0V1RW53VU07SUFPSTtJQUFBO0V2RWd3VVY7RXVFdndVTTtJQU9JO0lBQUE7RXZFb3dVVjtFdUUzd1VNO0lBT0k7SUFBQTtFdkV3d1VWO0V1RS93VU07SUFPSTtFdkUyd1VWO0V1RWx4VU07SUFPSTtFdkU4d1VWO0V1RXJ4VU07SUFPSTtFdkVpeFVWO0V1RXh4VU07SUFPSTtFdkVveFVWO0V1RTN4VU07SUFPSTtFdkV1eFVWO0V1RTl4VU07SUFPSTtFdkUweFVWO0V1RWp5VU07SUFPSTtFdkU2eFVWO0V1RXB5VU07SUFPSTtFdkVneVVWO0V1RXZ5VU07SUFPSTtFdkVteVVWO0V1RTF5VU07SUFPSTtFdkVzeVVWO0V1RTd5VU07SUFPSTtFdkV5eVVWO0V1RWh6VU07SUFPSTtFdkU0eVVWO0V1RW56VU07SUFPSTtFdkUreVVWO0V1RXR6VU07SUFPSTtFdkVrelVWO0V1RXp6VU07SUFPSTtFdkVxelVWO0V1RTV6VU07SUFPSTtFdkV3elVWO0V1RS96VU07SUFPSTtFdkUyelVWO0V1RWwwVU07SUFPSTtFdkU4elVWO0V1RXIwVU07SUFPSTtFdkVpMFVWO0V1RXgwVU07SUFPSTtFdkVvMFVWO0V1RTMwVU07SUFPSTtFdkV1MFVWO0V1RTkwVU07SUFPSTtFdkUwMFVWO0V1RWoxVU07SUFPSTtFdkU2MFVWO0V1RXAxVU07SUFPSTtFdkVnMVVWO0V1RXYxVU07SUFPSTtFdkVtMVVWO0V1RTExVU07SUFPSTtFdkVzMVVWO0V1RTcxVU07SUFPSTtFdkV5MVVWO0V1RWgyVU07SUFPSTtFdkU0MVVWO0V1RW4yVU07SUFPSTtFdkUrMVVWO0V1RXQyVU07SUFPSTtFdkVrMlVWO0V1RXoyVU07SUFPSTtFdkVxMlVWO0V1RTUyVU07SUFPSTtFdkV3MlVWO0V1RS8yVU07SUFPSTtFdkUyMlVWO0FBQ0Y7QXdFbDZVQTtFRCtDUTtJQU9JO0V2RWczVVY7RXVFdjNVTTtJQU9JO0V2RW0zVVY7RXVFMTNVTTtJQU9JO0V2RXMzVVY7RXVFNzNVTTtJQU9JO0V2RXkzVVY7QUFDRjtBd0U3NVVBO0VENEJRO0lBT0k7RXZFODNVVjtFdUVyNFVNO0lBT0k7RXZFaTRVVjtFdUV4NFVNO0lBT0k7RXZFbzRVVjtFdUUzNFVNO0lBT0k7RXZFdTRVVjtFdUU5NFVNO0lBT0k7RXZFMDRVVjtFdUVqNVVNO0lBT0k7RXZFNjRVVjtFdUVwNVVNO0lBT0k7RXZFZzVVVjtFdUV2NVVNO0lBT0k7RXZFbTVVVjtFdUUxNVVNO0lBT0k7RXZFczVVVjtFdUU3NVVNO0lBT0k7RXZFeTVVVjtBQUNGO0F5RWwrVUE7QUFvSUE7QUFLQTtBQUtBO0FBR0E7QUM1SUk7RUFDRTtFQUNBO0VBQ0E7QTFFbytVTjtBMEVsK1VNO0VBQ0U7QTFFbytVUjtBMEVsK1VRO0VBQ0U7RUFDQTtFQUNBO0ExRW8rVVY7QTBFbCtVVTtFQUNFO0ExRW8rVVo7QTBFbCtVWTtFQUNFO0ExRW8rVWQ7QTBFOTlVTTtFQUNFLFdBNUJRO0VBNkJSO0ExRWcrVVI7QTBFNzlVTTtFQUNFO0VBQ0E7QTFFKzlVUjtBMEU1OVVNO0VBQ0U7RUFDQTtBMUU4OVVSOztBMkVwZ1ZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTNFdWdWRjtBMkVyZ1ZFO0VBQ0U7RUFDQTtFQUNBO0VDeUQwRTtFQUNBO0VBQ0E7RUFDQTtFQUVBLGlEQVRuRTtBNUV1OVVYO0EyRXpnVkk7RUFDRTtBM0UyZ1ZOO0EyRXhnVkk7RUFDRTtFQUNBO0EzRTBnVk47QTJFdmdWSTtFQUNFO0VBQ0E7RUFDQTtBM0V5Z1ZOO0EyRXRnVkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNFd2dWTjtBMkVqZ1ZFO0VBQ0U7RUFDQTtBM0VtZ1ZKO0EyRWpnVkk7RUFDRTtFQUNBO0VBQ0E7QTNFbWdWTjtBMkVoZ1ZRO0VBQ0U7QTNFa2dWVjtBMkVoZ1ZVO0VBQ0U7QTNFa2dWWjtBMkVoZ1ZZO0VBQ0U7QTNFa2dWZDtBMkU1L1VNO0VBQ0U7QTNFOC9VUjtBMkV2L1VFO0VBQ0U7RUFDQTtBM0V5L1VKO0EyRXYvVUk7RUFDRTtBM0V5L1VOO0EyRXQvVUk7RUFDRTtFQUNBO0VBQ0E7QTNFdy9VTjtBMkV0L1VNO0VBQ0U7RUFDQTtFQUNBO0EzRXcvVVI7QTJFLytVRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0EzRWkvVUo7QTJFLytVSTtFQUNFO0VBQ0E7QTNFaS9VTjtBMkUvK1VNO0VBQ0U7RUFDQTtBM0VpL1VSO0EyRS8rVVE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBM0VpL1VWO0EyRTkrVVE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0VnL1VWO0EyRTUrVU07RUFDRTtBM0U4K1VSO0EyRTUrVVE7RUFDRTtBM0U4K1VWO0EyRTErVU07RUFDRTtBM0U0K1VSO0EyRTErVVE7RUFDRTtBM0U0K1VWO0EyRXgrVVU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNFMCtVWjtBMkV4K1VZO0VBQ0U7QTNFMCtVZDtBMkV4K1VjO0VBQ0U7QTNFMCtVaEI7QTJFeCtVZ0I7RUFDRTtBM0UwK1VsQjtBMkVyK1VZO0VBQ0U7RUFDQTtBM0V1K1VkO0EyRXArVVk7RUFDRTtFQUNBO0EzRXMrVWQ7QTJFcCtVYztFQUNFO0EzRXMrVWhCO0EyRWorVVU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzRW0rVVo7QTJFaitVWTtFQUNFO0VBQ0E7QTNFbStVZDtBMkVqK1VjO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0VtK1VoQjtBMkU3OVVRO0VBQ0U7QTNFKzlVVjtBMkU1OVVRO0VBQ0U7QTNFODlVVjtBMkUzOVVRO0VBQ0U7QTNFNjlVVjtBMkUxOVVRO0VBQ0U7QTNFNDlVVjtBMkV6OVVRO0VBQ0U7QTNFMjlVVjtBMkVyOVVJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0V1OVVOO0EyRXI5VU07RUFDRTtFQUNBO0VBQ0E7QTNFdTlVUjtBMkVyOVVRO0VBQ0U7QTNFdTlVVjtBMkVwOVVRO0VBQ0U7RUFDQTtBM0VzOVVWO0EyRXA5VVU7RUFDRTtBM0VzOVVaO0EyRW45VVU7RUFDRTtFQUNBO0EzRXE5VVo7QTJFbjlVWTtFQUNFO0VBQ0E7RUFDQTtBM0VxOVVkO0EyRW45VWM7RUFDRTtBM0VxOVVoQjtBMkVuOVVnQjtFQUNFO0EzRXE5VWxCO0EyRWo5VWM7RUFDRTtBM0VtOVVoQjtBMkV4OFVZO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNFMDhVZDtBMkV4OFVjO0VFcFNWO0VBRUYsWUZtUytCO0EzRTI4VWpDO0EyRXg4VWM7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNFMDhVaEI7QTJFeDhVZ0I7RUFDRTtBM0UwOFVsQjtBMkV0OFVjO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzRXc4VWhCO0EyRXI4VWM7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0V1OFVoQjtBMkVqOFVRO0VBQ0U7RUFDQTtBM0VtOFVWOztBMkUzN1VFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNFODdVSjtBMkUzN1VFO0VBQ0U7RUFDQTtBM0U2N1VKO0EyRTM3VUk7RUFDRTtFQUNBO0VBQ0E7QTNFNjdVTjtBMkUxN1VJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0U0N1VOOztBMkV2N1VBO0VBQ0U7QTNFMDdVRjs7QTJFdjdVQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0UwN1VGO0EyRXg3VUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzRTA3VUo7QTJFdjdVRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNFeTdVSjs7QThFLzFWRTtFQUNFO0VBQ0E7RUFDQTtBOUVrMlZKO0E4RS8xVkU7RUFDRTtBOUVpMlZKOztBK0VuMlZFO0VBQ0U7RUFDQTtFQUNBO0VBRUE7RUFDQSxZQVRTO0VDVzRDO0VBRUcsdUJERmpDO0VDR2tDLHNCREhsQztFQ0ltQyxxQkRKbkM7RUNLc0Msa0JETHRDO0VDQThCLDJDQytCN0M7RUQ3QmdELHdDQzZCaEQ7RUQxQnFELG1DQzBCckQ7RUY3QlI7RUFDQTtFQUNBO0EvRTAyVko7QStFeDJWSTtFQUNFO0VBQ0E7RUFDQTtBL0UwMlZOO0ErRXYyVkk7RUFDRTtBL0V5MlZOO0ErRXQyVkk7RUFDRTtBL0V3MlZOO0ErRXIyVkk7RUFDRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0UvRXUyVk47QUFDRjtBK0VwMlZJO0VBQ0U7QS9FczJWTjtBK0VwMlZNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvRXMyVlI7QStFcDJWUTtFQUNFO0VBQ0E7QS9FczJWVjtBK0VoMlZNO0VHM0RKO0VBQ0E7RUNnREEsNENBTmM7RUR4Q2Q7QWxGODVWRjtBK0V0MlZNO0VHM0RKO0VBQ0E7RUNnREEsNENBTmM7RUR4Q2Q7QWxGbzZWRjtBK0U1MlZNO0VHM0RKO0VBQ0E7RUNnREEsNENBTmM7RUR4Q2Q7QWxGMDZWRjtBK0VsM1ZNO0VHM0RKO0VBQ0E7RUNnREEsNENBTmM7RUR4Q2Q7QWxGZzdWRjtBK0V4M1ZNO0VHM0RKO0VBQ0E7RUNnREEsNENBTmM7RUR4Q2Q7QWxGczdWRjtBK0U5M1ZNO0VHM0RKO0VBQ0E7RUNnREEsNENBTmM7RUR4Q2Q7QWxGNDdWRjtBK0VwNFZNO0VHM0RKO0VBQ0E7RUNnREEsNENBTmM7RUR4Q2Q7QWxGazhWRjtBK0UxNFZNO0VHM0RKO0VBQ0E7RUNnREEsNENBTmM7RUR4Q2Q7QWxGdzhWRjtBK0VoNVZNO0VHM0RKO0VBQ0E7RUNnREEsNENBTmM7RUR4Q2Q7QWxGODhWRjtBK0V0NVZNO0VHM0RKO0VBQ0E7RUNnREEsNENBTmM7RUR4Q2Q7QWxGbzlWRjtBK0U1NVZNO0VHM0RKO0VBQ0E7RUNnREEsNENBTmM7RUR4Q2Q7QWxGMDlWRjtBK0VsNlZNO0VHM0RKO0VBQ0E7RUNnREEsNENBTmM7RUR4Q2Q7QWxGZytWRjtBb0ZwK1ZBO0VBQ0U7QXBGcytWRjtBb0ZwK1ZFO0VBQ0U7RUpRcUQsOEJLRGxEO0VMR3FELDJCS0hyRDtFTE0wRCxzQktOMUQ7QXJGaytWUDtBb0Z0K1ZJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBGdytWTjtBb0Z0K1ZNO0VBQ0U7RUFDQTtBcEZ3K1ZSO0FvRmorVk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwRm0rVlI7QW9GaCtWVTtFQUNFO0VBQ0E7QXBGaytWWjtBb0ZoK1ZZO0VBQ0U7QXBGaytWZDs7QW9GeDlWRTtFQUNFO0FwRjI5Vko7QW9GdjlWSTtFQUNFO0FwRnk5Vk47O0FzRmpoV0E7O0VBRUU7RUFDQTtBdEZvaFdGOztBc0ZqaFdBO0VBQ0U7QXRGb2hXRjs7QXNGamhXQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F0Rm9oV0Y7QXNGbGhXRTtFQUNFO0VBQ0E7QXRGb2hXSjs7QXVGbmlXQTtFQUNFLHVCZERjO0VjRWQsV2RDbUI7RU9Rb0MsNkJPUmhDO0VQVW1DLDBCT1ZuQztFUFdvQyx5Qk9YcEM7RVBZcUMsd0JPWnJDO0VQYXdDLHFCT2J4QztFQUN2QjtFQUNBO0VBQ0E7QXZGMGlXRjtBdUZ2aVdJO0VBQ0U7QXZGeWlXTjtBdUZ2aVdNO0VBQ0U7QXZGeWlXUjtBdUZyaVdJO0VBQ0U7QXZGdWlXTjtBdUZuaVdFOzs7RUFHRTtBdkZxaVdKO0F1RmxpV0U7RUFDRSx1QmQ3Qlk7RWM4QlosV2QzQmlCO0VjNEJqQjtFQUNBO0VBRUE7RUFDQTtBdkZtaVdKO0F1RmppV0k7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBdkZtaVdOO0F1RmppV007RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2Rm1pV1I7QXVGL2hXSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F2RmlpV047QXVGN2hXRTtFQUNFO0VBQ0E7QXZGK2hXSjtBdUY1aFdFO0VBQ0U7QXZGOGhXSjtBdUYxaFdJO0VDekVGLHVCRDBFYztBdkY0aFdoQjtBd0ZwbVdFO0VBQ0U7QXhGc21XSjtBd0ZubVdFO0VBQ0UsdUJEbUVZO0VDbEVaLFdEbUVjO0F2RmtpV2xCO0F3Rm5tV0k7RUFDRSx1QkQrRFU7RUM5RFYsV0QrRFk7QXZGc2lXbEI7QXdGbG1XSTtFQUNFO0VBQ0EsdUJEeURVO0VDeERWLFdEeURZO0F2RjJpV2xCO0F3RmxtV007RUFDRTtBeEZvbVdSO0F3RmptV007RVJibUQsaURDK0I3QztFRDdCZ0QsOENDNkJoRDtFRDFCcUQseUNDMEJyRDtBakZvbFdaO0F1RnJqV0k7RUN6RUYseUJEMEVjO0F2RnVqV2hCO0F3Ri9uV0U7RUFDRTtBeEZpb1dKO0F3RjluV0U7RUFDRSx5QkRtRVk7RUNsRVosWURtRWM7QXZGNmpXbEI7QXdGOW5XSTtFQUNFLHlCRCtEVTtFQzlEVixZRCtEWTtBdkZpa1dsQjtBd0Y3bldJO0VBQ0U7RUFDQSx5QkR5RFU7RUN4RFYsWUR5RFk7QXZGc2tXbEI7QXdGN25XTTtFQUNFO0F4RituV1I7QXdGNW5XTTtFUmJtRCxpREMrQjdDO0VEN0JnRCw4Q0M2QmhEO0VEMUJxRCx5Q0MwQnJEO0FqRittV1o7QXVGaGxXSTtFQ3pFRix5QkQwRWM7QXZGa2xXaEI7QXdGMXBXRTtFQUNFO0F4RjRwV0o7QXdGenBXRTtFQUNFLHlCRG1FWTtFQ2xFWixXRG1FYztBdkZ3bFdsQjtBd0Z6cFdJO0VBQ0UseUJEK0RVO0VDOURWLFdEK0RZO0F2RjRsV2xCO0F3RnhwV0k7RUFDRTtFQUNBLHlCRHlEVTtFQ3hEVixXRHlEWTtBdkZpbVdsQjtBd0Z4cFdNO0VBQ0U7QXhGMHBXUjtBd0Z2cFdNO0VSYm1ELGlEQytCN0M7RUQ3QmdELDhDQzZCaEQ7RUQxQnFELHlDQzBCckQ7QWpGMG9XWjtBdUYzbVdJO0VDekVGLHNCRDBFYztBdkY2bVdoQjtBd0ZycldFO0VBQ0U7QXhGdXJXSjtBd0ZwcldFO0VBQ0Usc0JEbUVZO0VDbEVaLFdEbUVjO0F2Rm1uV2xCO0F3RnByV0k7RUFDRSxzQkQrRFU7RUM5RFYsV0QrRFk7QXZGdW5XbEI7QXdGbnJXSTtFQUNFO0VBQ0Esc0JEeURVO0VDeERWLFdEeURZO0F2RjRuV2xCO0F3Rm5yV007RUFDRTtBeEZxcldSO0F3RmxyV007RVJibUQsaURDK0I3QztFRDdCZ0QsOENDNkJoRDtFRDFCcUQseUNDMEJyRDtBakZxcVdaO0F1RnRvV0k7RUN6RUYseUJEMEVjO0F2RndvV2hCO0F3Rmh0V0U7RUFDRTtBeEZrdFdKO0F3Ri9zV0U7RUFDRSx5QkRtRVk7RUNsRVosV0RtRWM7QXZGOG9XbEI7QXdGL3NXSTtFQUNFLHlCRCtEVTtFQzlEVixXRCtEWTtBdkZrcFdsQjtBd0Y5c1dJO0VBQ0U7RUFDQSx5QkR5RFU7RUN4RFYsV0R5RFk7QXZGdXBXbEI7QXdGOXNXTTtFQUNFO0F4Rmd0V1I7QXdGN3NXTTtFUmJtRCxpREMrQjdDO0VEN0JnRCw4Q0M2QmhEO0VEMUJxRCx5Q0MwQnJEO0FqRmdzV1o7QXVGanFXSTtFQ3pFRixzQkQwRWM7QXZGbXFXaEI7QXdGM3VXRTtFQUNFO0F4RjZ1V0o7QXdGMXVXRTtFQUNFLHNCRG1FWTtFQ2xFWixZRG1FYztBdkZ5cVdsQjtBd0YxdVdJO0VBQ0Usc0JEK0RVO0VDOURWLFlEK0RZO0F2RjZxV2xCO0F3Rnp1V0k7RUFDRTtFQUNBLHNCRHlEVTtFQ3hEVixZRHlEWTtBdkZrcldsQjtBd0Z6dVdNO0VBQ0U7QXhGMnVXUjtBd0Z4dVdNO0VSYm1ELGlEQytCN0M7RUQ3QmdELDhDQzZCaEQ7RUQxQnFELHlDQzBCckQ7QWpGMnRXWjtBdUY1cldJO0VDekVGLHlCRDBFYztBdkY4cldoQjtBd0Z0d1dFO0VBQ0U7QXhGd3dXSjtBd0Zyd1dFO0VBQ0UseUJEbUVZO0VDbEVaLFlEbUVjO0F2Rm9zV2xCO0F3RnJ3V0k7RUFDRSx5QkQrRFU7RUM5RFYsWUQrRFk7QXZGd3NXbEI7QXdGcHdXSTtFQUNFO0VBQ0EseUJEeURVO0VDeERWLFlEeURZO0F2RjZzV2xCO0F3RnB3V007RUFDRTtBeEZzd1dSO0F3Rm53V007RVJibUQsaURDK0I3QztFRDdCZ0QsOENDNkJoRDtFRDFCcUQseUNDMEJyRDtBakZzdldaO0F1RnZ0V0k7RUN6RUYseUJEMEVjO0F2Rnl0V2hCO0F3Rmp5V0U7RUFDRTtBeEZteVdKO0F3Rmh5V0U7RUFDRSx5QkRtRVk7RUNsRVosWURtRWM7QXZGK3RXbEI7QXdGaHlXSTtFQUNFLHlCRCtEVTtFQzlEVixZRCtEWTtBdkZtdVdsQjtBd0YveFdJO0VBQ0U7RUFDQSx5QkR5RFU7RUN4RFYsWUR5RFk7QXZGd3VXbEI7QXdGL3hXTTtFQUNFO0F4Rml5V1I7QXdGOXhXTTtFUmJtRCxpREMrQjdDO0VEN0JnRCw4Q0M2QmhEO0VEMUJxRCx5Q0MwQnJEO0FqRml4V1o7QXVGbHZXSTtFQ3pFRix5QkQwRWM7QXZGb3ZXaEI7QXdGNXpXRTtFQUNFO0F4Rjh6V0o7QXdGM3pXRTtFQUNFLHlCRG1FWTtFQ2xFWixZRG1FYztBdkYwdldsQjtBd0YzeldJO0VBQ0UseUJEK0RVO0VDOURWLFlEK0RZO0F2Rjh2V2xCO0F3RjF6V0k7RUFDRTtFQUNBLHlCRHlEVTtFQ3hEVixZRHlEWTtBdkZtd1dsQjtBd0YxeldNO0VBQ0U7QXhGNHpXUjtBd0Z6eldNO0VSYm1ELGlEQytCN0M7RUQ3QmdELDhDQzZCaEQ7RUQxQnFELHlDQzBCckQ7QWpGNHlXWjtBdUY3d1dJO0VDekVGLHlCRDBFYztBdkYrd1doQjtBd0Z2MVdFO0VBQ0U7QXhGeTFXSjtBd0Z0MVdFO0VBQ0UseUJEbUVZO0VDbEVaLFlEbUVjO0F2RnF4V2xCO0F3RnQxV0k7RUFDRSx5QkQrRFU7RUM5RFYsWUQrRFk7QXZGeXhXbEI7QXdGcjFXSTtFQUNFO0VBQ0EseUJEeURVO0VDeERWLFlEeURZO0F2Rjh4V2xCO0F3RnIxV007RUFDRTtBeEZ1MVdSO0F3RnAxV007RVJibUQsaURDK0I3QztFRDdCZ0QsOENDNkJoRDtFRDFCcUQseUNDMEJyRDtBakZ1MFdaO0F1Rnh5V0k7RUN6RUYseUJEMEVjO0F2RjB5V2hCO0F3RmwzV0U7RUFDRTtBeEZvM1dKO0F3RmozV0U7RUFDRSx5QkRtRVk7RUNsRVosWURtRWM7QXZGZ3pXbEI7QXdGajNXSTtFQUNFLHlCRCtEVTtFQzlEVixZRCtEWTtBdkZveldsQjtBd0ZoM1dJO0VBQ0U7RUFDQSx5QkR5RFU7RUN4RFYsWUR5RFk7QXZGeXpXbEI7QXdGaDNXTTtFQUNFO0F4RmszV1I7QXdGLzJXTTtFUmJtRCxpREMrQjdDO0VEN0JnRCw4Q0M2QmhEO0VEMUJxRCx5Q0MwQnJEO0FqRmsyV1o7QXVGbjBXSTtFQ3pFRix5QkQwRWM7QXZGcTBXaEI7QXdGNzRXRTtFQUNFO0F4Ris0V0o7QXdGNTRXRTtFQUNFLHlCRG1FWTtFQ2xFWixXRG1FYztBdkYyMFdsQjtBd0Y1NFdJO0VBQ0UseUJEK0RVO0VDOURWLFdEK0RZO0F2RiswV2xCO0F3RjM0V0k7RUFDRTtFQUNBLHlCRHlEVTtFQ3hEVixXRHlEWTtBdkZvMVdsQjtBd0YzNFdNO0VBQ0U7QXhGNjRXUjtBd0YxNFdNO0VSYm1ELGlEQytCN0M7RUQ3QmdELDhDQzZCaEQ7RUQxQnFELHlDQzBCckQ7QWpGNjNXWjtBdUZwMVdFO0VBQ0U7QXZGczFXSjtBdUZwMVdJO0VBQ0U7QXZGczFXTjtBdUZwMVdNO0VBQ0U7RUFDQTtBdkZzMVdSO0F1Rm4xV1U7RUFDRTtBdkZxMVdaO0F1RmgxV007RUFDRTtFQUNBO0VBQ0E7QXZGazFXUjtBdUY1MFdFO0VBQ0U7QXZGODBXSjtBdUY1MFdJO0VBQ0U7QXZGODBXTjtBdUY1MFdNO0VBQ0U7RUFDQTtBdkY4MFdSO0F1RjMwV1U7RUFDRTtBdkY2MFdaO0F1RngwV007RUFDRTtFQUNBO0VBQ0E7QXZGMDBXUjs7QXlGMzhXQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsaUJoQjhIaUI7RU94SHNDLDhCUHlIckM7RU92SHdDLDJCUHVIeEM7RU90SHlDLDBCUHNIekM7RU9ySDBDLHlCUHFIMUM7RU9wSDZDLHNCUG9IN0M7RWdCN0hsQjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGdCaEIwSGtCO0VnQnpIbEI7RUFDQTtFQUNBO0VBQ0E7RUFDQSw0S0FDRTtFVFRxRCx5QlVGOUM7RVZJaUQsc0JVSmpEO0VWS2tELHFCVUxsRDtFVk9zRCxpQlVQdEQ7QTFGZytXWDtBeUY5OFdFO0VBQ0U7RUFDQTtBekZnOVdKO0F5Rjc4V0U7RUFDRTtFQUNBO0VBQ0E7QXpGKzhXSjtBeUY1OFdFO0VBQ0U7RUFDQTtBekY4OFdKO0F5Rm44V007RUFDRSx1QkFSSTtFQVNKLFdBTlE7RUFPUixtQkFWSTtFVGpDNkMsd0JDK0I3QztFRDdCZ0QscUJDNkJoRDtFRDFCcUQsZ0JDMEJyRDtBakZvOVdaO0F5Rm44V1E7RUFDRSxXQWJNO0VBY04scUJBZkU7RUFnQkYseUJBaEJFO0F6RnE5V1o7QXlGbDhXUTtFQUNFO0VBQ0E7QXpGbzhXVjtBeUZoOFdNO0VBQ0U7QXpGazhXUjtBeUZoOFdVO0VBQ0U7QXpGazhXWjtBeUY1N1dRO0VBQ0U7RUFDQSxXQXBDTTtBekZrK1doQjtBeUZ6N1dRO0VBQTJCLHNCQXpDbkI7QXpGcStXaEI7QXlGMzdXUTtFQUEyQix3QkExQ25CO0F6RncrV2hCO0F5Rjc3V1E7RUFBNEIsdUJBM0NwQjtBekYyK1doQjtBeUYvN1dRO0VBQXlCLHlCQTVDakI7QXpGOCtXaEI7QXlGOTdXSTtFQUNFO0VBQ0EsWUFyRE07QXpGcS9XWjtBeUY5N1dRO0VBQ0U7RUFDQTtBekZnOFdWO0F5Rjc3V1E7RUFDRTtBekYrN1dWO0F5RjM3V1E7RUFBMkIsdUJBakV2QjtBekYrL1daO0F5Rjc3V1E7RUFBMkIseUJBbEV2QjtBekZrZ1haO0F5Ri83V1E7RUFBNEIsd0JBbkV4QjtBekZxZ1haO0F5Rmo4V1E7RUFBeUIsMEJBcEVyQjtBekZ3Z1haO0F5Rmg4V0k7RUFDRSxZQXpFTTtFQTBFTixtQkExRU07QXpGNGdYWjtBeUZoOFdRO0VBQ0U7RUFDQTtBekZrOFdWO0F5Ri83V1E7RUFDRTtBekZpOFdWO0F5Rjk3V007RUFDRTtBekZnOFdSO0F5Rjk3V1U7RUFDRTtBekZnOFdaO0F5RjM3V1E7RUFBMkIsdUJBOUZ2QjtBekY0aFhaO0F5Rjc3V1E7RUFBMkIseUJBL0Z2QjtBekYraFhaO0F5Ri83V1E7RUFBNEIsd0JBaEd4QjtBekZraVhaO0F5Rmo4V1E7RUFBeUIsMEJBakdyQjtBekZxaVhaO0F5Rmg4V0k7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFdBeEdVO0VBeUdWO0VBQ0E7RUFDQTtBekZpOFdOO0F5Ri83V1E7RUFDRTtBekZpOFdWO0F5Rjk3V007RUFDRTtBekZnOFdSO0F5Rjk3V1U7RUFDRTtBekZnOFdaO0F5RmpqWE07RUFDRSx5QkFSSTtFQVNKLFlBTlE7RUFPUixxQkFWSTtFVGpDNkMsd0JDK0I3QztFRDdCZ0QscUJDNkJoRDtFRDFCcUQsZ0JDMEJyRDtBakZra1haO0F5RmpqWFE7RUFDRSxZQWJNO0VBY04scUJBZkU7RUFnQkYseUJBaEJFO0F6Rm1rWFo7QXlGaGpYUTtFQUNFO0VBQ0E7QXpGa2pYVjtBeUY5aVhNO0VBQ0U7QXpGZ2pYUjtBeUY5aVhVO0VBQ0U7QXpGZ2pYWjtBeUYxaVhRO0VBQ0U7RUFDQSxZQXBDTTtBekZnbFhoQjtBeUZ2aVhRO0VBQTJCLHVCQXpDbkI7QXpGbWxYaEI7QXlGemlYUTtFQUEyQix5QkExQ25CO0F6RnNsWGhCO0F5RjNpWFE7RUFBNEIsd0JBM0NwQjtBekZ5bFhoQjtBeUY3aVhRO0VBQXlCLDBCQTVDakI7QXpGNGxYaEI7QXlGNWlYSTtFQUNFO0VBQ0EsY0FyRE07QXpGbW1YWjtBeUY1aVhRO0VBQ0U7RUFDQTtBekY4aVhWO0F5RjNpWFE7RUFDRTtBekY2aVhWO0F5RnppWFE7RUFBMkIseUJBakV2QjtBekY2bVhaO0F5RjNpWFE7RUFBMkIsMkJBbEV2QjtBekZnblhaO0F5RjdpWFE7RUFBNEIsMEJBbkV4QjtBekZtblhaO0F5Ri9pWFE7RUFBeUIsNEJBcEVyQjtBekZzblhaO0F5RjlpWEk7RUFDRSxjQXpFTTtFQTBFTixxQkExRU07QXpGMG5YWjtBeUY5aVhRO0VBQ0U7RUFDQTtBekZnalhWO0F5RjdpWFE7RUFDRTtBekYraVhWO0F5RjVpWE07RUFDRTtBekY4aVhSO0F5RjVpWFU7RUFDRTtBekY4aVhaO0F5RnppWFE7RUFBMkIseUJBOUZ2QjtBekYwb1haO0F5RjNpWFE7RUFBMkIsMkJBL0Z2QjtBekY2b1haO0F5RjdpWFE7RUFBNEIsMEJBaEd4QjtBekZncFhaO0F5Ri9pWFE7RUFBeUIsNEJBakdyQjtBekZtcFhaO0F5RjlpWEk7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFlBeEdVO0VBeUdWO0VBQ0E7RUFDQTtBekYraVhOO0F5RjdpWFE7RUFDRTtBekYraVhWO0F5RjVpWE07RUFDRTtBekY4aVhSO0F5RjVpWFU7RUFDRTtBekY4aVhaO0F5Ri9wWE07RUFDRSx5QkFSSTtFQVNKLFdBTlE7RUFPUixxQkFWSTtFVGpDNkMsd0JDK0I3QztFRDdCZ0QscUJDNkJoRDtFRDFCcUQsZ0JDMEJyRDtBakZnclhaO0F5Ri9wWFE7RUFDRSxXQWJNO0VBY04scUJBZkU7RUFnQkYseUJBaEJFO0F6RmlyWFo7QXlGOXBYUTtFQUNFO0VBQ0E7QXpGZ3FYVjtBeUY1cFhNO0VBQ0U7QXpGOHBYUjtBeUY1cFhVO0VBQ0U7QXpGOHBYWjtBeUZ4cFhRO0VBQ0U7RUFDQSxXQXBDTTtBekY4clhoQjtBeUZycFhRO0VBQTJCLHNCQXpDbkI7QXpGaXNYaEI7QXlGdnBYUTtFQUEyQix3QkExQ25CO0F6Rm9zWGhCO0F5RnpwWFE7RUFBNEIsdUJBM0NwQjtBekZ1c1hoQjtBeUYzcFhRO0VBQXlCLHlCQTVDakI7QXpGMHNYaEI7QXlGMXBYSTtFQUNFO0VBQ0EsY0FyRE07QXpGaXRYWjtBeUYxcFhRO0VBQ0U7RUFDQTtBekY0cFhWO0F5RnpwWFE7RUFDRTtBekYycFhWO0F5RnZwWFE7RUFBMkIseUJBakV2QjtBekYydFhaO0F5RnpwWFE7RUFBMkIsMkJBbEV2QjtBekY4dFhaO0F5RjNwWFE7RUFBNEIsMEJBbkV4QjtBekZpdVhaO0F5RjdwWFE7RUFBeUIsNEJBcEVyQjtBekZvdVhaO0F5RjVwWEk7RUFDRSxjQXpFTTtFQTBFTixxQkExRU07QXpGd3VYWjtBeUY1cFhRO0VBQ0U7RUFDQTtBekY4cFhWO0F5RjNwWFE7RUFDRTtBekY2cFhWO0F5RjFwWE07RUFDRTtBekY0cFhSO0F5RjFwWFU7RUFDRTtBekY0cFhaO0F5RnZwWFE7RUFBMkIseUJBOUZ2QjtBekZ3dlhaO0F5RnpwWFE7RUFBMkIsMkJBL0Z2QjtBekYydlhaO0F5RjNwWFE7RUFBNEIsMEJBaEd4QjtBekY4dlhaO0F5RjdwWFE7RUFBeUIsNEJBakdyQjtBekZpd1haO0F5RjVwWEk7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFdBeEdVO0VBeUdWO0VBQ0E7RUFDQTtBekY2cFhOO0F5RjNwWFE7RUFDRTtBekY2cFhWO0F5RjFwWE07RUFDRTtBekY0cFhSO0F5RjFwWFU7RUFDRTtBekY0cFhaO0F5Rjd3WE07RUFDRSxzQkFSSTtFQVNKLFdBTlE7RUFPUixrQkFWSTtFVGpDNkMsd0JDK0I3QztFRDdCZ0QscUJDNkJoRDtFRDFCcUQsZ0JDMEJyRDtBakY4eFhaO0F5Rjd3WFE7RUFDRSxXQWJNO0VBY04scUJBZkU7RUFnQkYseUJBaEJFO0F6Rit4WFo7QXlGNXdYUTtFQUNFO0VBQ0E7QXpGOHdYVjtBeUYxd1hNO0VBQ0U7QXpGNHdYUjtBeUYxd1hVO0VBQ0U7QXpGNHdYWjtBeUZ0d1hRO0VBQ0U7RUFDQSxXQXBDTTtBekY0eVhoQjtBeUZud1hRO0VBQTJCLHNCQXpDbkI7QXpGK3lYaEI7QXlGcndYUTtFQUEyQix3QkExQ25CO0F6Rmt6WGhCO0F5RnZ3WFE7RUFBNEIsdUJBM0NwQjtBekZxelhoQjtBeUZ6d1hRO0VBQXlCLHlCQTVDakI7QXpGd3pYaEI7QXlGeHdYSTtFQUNFO0VBQ0EsV0FyRE07QXpGK3pYWjtBeUZ4d1hRO0VBQ0U7RUFDQTtBekYwd1hWO0F5RnZ3WFE7RUFDRTtBekZ5d1hWO0F5RnJ3WFE7RUFBMkIsc0JBakV2QjtBekZ5MFhaO0F5RnZ3WFE7RUFBMkIsd0JBbEV2QjtBekY0MFhaO0F5Rnp3WFE7RUFBNEIsdUJBbkV4QjtBekYrMFhaO0F5RjN3WFE7RUFBeUIseUJBcEVyQjtBekZrMVhaO0F5RjF3WEk7RUFDRSxXQXpFTTtFQTBFTixrQkExRU07QXpGczFYWjtBeUYxd1hRO0VBQ0U7RUFDQTtBekY0d1hWO0F5Rnp3WFE7RUFDRTtBekYyd1hWO0F5Rnh3WE07RUFDRTtBekYwd1hSO0F5Rnh3WFU7RUFDRTtBekYwd1haO0F5RnJ3WFE7RUFBMkIsc0JBOUZ2QjtBekZzMlhaO0F5RnZ3WFE7RUFBMkIsd0JBL0Z2QjtBekZ5MlhaO0F5Rnp3WFE7RUFBNEIsdUJBaEd4QjtBekY0MlhaO0F5RjN3WFE7RUFBeUIseUJBakdyQjtBekYrMlhaO0F5RjF3WEk7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFdBeEdVO0VBeUdWO0VBQ0E7RUFDQTtBekYyd1hOO0F5Rnp3WFE7RUFDRTtBekYyd1hWO0F5Rnh3WE07RUFDRTtBekYwd1hSO0F5Rnh3WFU7RUFDRTtBekYwd1haO0F5RjMzWE07RUFDRSx5QkFSSTtFQVNKLFdBTlE7RUFPUixxQkFWSTtFVGpDNkMsd0JDK0I3QztFRDdCZ0QscUJDNkJoRDtFRDFCcUQsZ0JDMEJyRDtBakY0NFhaO0F5RjMzWFE7RUFDRSxXQWJNO0VBY04scUJBZkU7RUFnQkYseUJBaEJFO0F6RjY0WFo7QXlGMTNYUTtFQUNFO0VBQ0E7QXpGNDNYVjtBeUZ4M1hNO0VBQ0U7QXpGMDNYUjtBeUZ4M1hVO0VBQ0U7QXpGMDNYWjtBeUZwM1hRO0VBQ0U7RUFDQSxXQXBDTTtBekYwNVhoQjtBeUZqM1hRO0VBQTJCLHNCQXpDbkI7QXpGNjVYaEI7QXlGbjNYUTtFQUEyQix3QkExQ25CO0F6Rmc2WGhCO0F5RnIzWFE7RUFBNEIsdUJBM0NwQjtBekZtNlhoQjtBeUZ2M1hRO0VBQXlCLHlCQTVDakI7QXpGczZYaEI7QXlGdDNYSTtFQUNFO0VBQ0EsY0FyRE07QXpGNjZYWjtBeUZ0M1hRO0VBQ0U7RUFDQTtBekZ3M1hWO0F5RnIzWFE7RUFDRTtBekZ1M1hWO0F5Rm4zWFE7RUFBMkIseUJBakV2QjtBekZ1N1haO0F5RnIzWFE7RUFBMkIsMkJBbEV2QjtBekYwN1haO0F5RnYzWFE7RUFBNEIsMEJBbkV4QjtBekY2N1haO0F5RnozWFE7RUFBeUIsNEJBcEVyQjtBekZnOFhaO0F5RngzWEk7RUFDRSxjQXpFTTtFQTBFTixxQkExRU07QXpGbzhYWjtBeUZ4M1hRO0VBQ0U7RUFDQTtBekYwM1hWO0F5RnYzWFE7RUFDRTtBekZ5M1hWO0F5RnQzWE07RUFDRTtBekZ3M1hSO0F5RnQzWFU7RUFDRTtBekZ3M1haO0F5Rm4zWFE7RUFBMkIseUJBOUZ2QjtBekZvOVhaO0F5RnIzWFE7RUFBMkIsMkJBL0Z2QjtBekZ1OVhaO0F5RnYzWFE7RUFBNEIsMEJBaEd4QjtBekYwOVhaO0F5RnozWFE7RUFBeUIsNEJBakdyQjtBekY2OVhaO0F5RngzWEk7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFdBeEdVO0VBeUdWO0VBQ0E7RUFDQTtBekZ5M1hOO0F5RnYzWFE7RUFDRTtBekZ5M1hWO0F5RnQzWE07RUFDRTtBekZ3M1hSO0F5RnQzWFU7RUFDRTtBekZ3M1haO0F5RnorWE07RUFDRSxzQkFSSTtFQVNKLFlBTlE7RUFPUixrQkFWSTtFVGpDNkMsd0JDK0I3QztFRDdCZ0QscUJDNkJoRDtFRDFCcUQsZ0JDMEJyRDtBakYwL1haO0F5RnorWFE7RUFDRSxZQWJNO0VBY04scUJBZkU7RUFnQkYseUJBaEJFO0F6RjIvWFo7QXlGeCtYUTtFQUNFO0VBQ0E7QXpGMCtYVjtBeUZ0K1hNO0VBQ0U7QXpGdytYUjtBeUZ0K1hVO0VBQ0U7QXpGdytYWjtBeUZsK1hRO0VBQ0U7RUFDQSxZQXBDTTtBekZ3Z1loQjtBeUYvOVhRO0VBQTJCLHVCQXpDbkI7QXpGMmdZaEI7QXlGaitYUTtFQUEyQix5QkExQ25CO0F6RjhnWWhCO0F5Rm4rWFE7RUFBNEIsd0JBM0NwQjtBekZpaFloQjtBeUZyK1hRO0VBQXlCLDBCQTVDakI7QXpGb2hZaEI7QXlGcCtYSTtFQUNFO0VBQ0EsV0FyRE07QXpGMmhZWjtBeUZwK1hRO0VBQ0U7RUFDQTtBekZzK1hWO0F5Rm4rWFE7RUFDRTtBekZxK1hWO0F5RmorWFE7RUFBMkIsc0JBakV2QjtBekZxaVlaO0F5Rm4rWFE7RUFBMkIsd0JBbEV2QjtBekZ3aVlaO0F5RnIrWFE7RUFBNEIsdUJBbkV4QjtBekYyaVlaO0F5RnYrWFE7RUFBeUIseUJBcEVyQjtBekY4aVlaO0F5RnQrWEk7RUFDRSxXQXpFTTtFQTBFTixrQkExRU07QXpGa2pZWjtBeUZ0K1hRO0VBQ0U7RUFDQTtBekZ3K1hWO0F5RnIrWFE7RUFDRTtBekZ1K1hWO0F5RnArWE07RUFDRTtBekZzK1hSO0F5RnArWFU7RUFDRTtBekZzK1haO0F5RmorWFE7RUFBMkIsc0JBOUZ2QjtBekZra1laO0F5Rm4rWFE7RUFBMkIsd0JBL0Z2QjtBekZxa1laO0F5RnIrWFE7RUFBNEIsdUJBaEd4QjtBekZ3a1laO0F5RnYrWFE7RUFBeUIseUJBakdyQjtBekYya1laO0F5RnQrWEk7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFlBeEdVO0VBeUdWO0VBQ0E7RUFDQTtBekZ1K1hOO0F5RnIrWFE7RUFDRTtBekZ1K1hWO0F5RnArWE07RUFDRTtBekZzK1hSO0F5RnArWFU7RUFDRTtBekZzK1haO0F5RnZsWU07RUFDRSx5QkFSSTtFQVNKLFlBTlE7RUFPUixxQkFWSTtFVGpDNkMsd0JDK0I3QztFRDdCZ0QscUJDNkJoRDtFRDFCcUQsZ0JDMEJyRDtBakZ3bVlaO0F5RnZsWVE7RUFDRSxZQWJNO0VBY04scUJBZkU7RUFnQkYseUJBaEJFO0F6RnltWVo7QXlGdGxZUTtFQUNFO0VBQ0E7QXpGd2xZVjtBeUZwbFlNO0VBQ0U7QXpGc2xZUjtBeUZwbFlVO0VBQ0U7QXpGc2xZWjtBeUZobFlRO0VBQ0U7RUFDQSxZQXBDTTtBekZzblloQjtBeUY3a1lRO0VBQTJCLHVCQXpDbkI7QXpGeW5ZaEI7QXlGL2tZUTtFQUEyQix5QkExQ25CO0F6RjRuWWhCO0F5RmpsWVE7RUFBNEIsd0JBM0NwQjtBekYrblloQjtBeUZubFlRO0VBQXlCLDBCQTVDakI7QXpGa29ZaEI7QXlGbGxZSTtFQUNFO0VBQ0EsY0FyRE07QXpGeW9ZWjtBeUZsbFlRO0VBQ0U7RUFDQTtBekZvbFlWO0F5RmpsWVE7RUFDRTtBekZtbFlWO0F5Ri9rWVE7RUFBMkIseUJBakV2QjtBekZtcFlaO0F5RmpsWVE7RUFBMkIsMkJBbEV2QjtBekZzcFlaO0F5Rm5sWVE7RUFBNEIsMEJBbkV4QjtBekZ5cFlaO0F5RnJsWVE7RUFBeUIsNEJBcEVyQjtBekY0cFlaO0F5RnBsWUk7RUFDRSxjQXpFTTtFQTBFTixxQkExRU07QXpGZ3FZWjtBeUZwbFlRO0VBQ0U7RUFDQTtBekZzbFlWO0F5Rm5sWVE7RUFDRTtBekZxbFlWO0F5RmxsWU07RUFDRTtBekZvbFlSO0F5RmxsWVU7RUFDRTtBekZvbFlaO0F5Ri9rWVE7RUFBMkIseUJBOUZ2QjtBekZncllaO0F5RmpsWVE7RUFBMkIsMkJBL0Z2QjtBekZtcllaO0F5Rm5sWVE7RUFBNEIsMEJBaEd4QjtBekZzcllaO0F5RnJsWVE7RUFBeUIsNEJBakdyQjtBekZ5cllaO0F5RnBsWUk7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFlBeEdVO0VBeUdWO0VBQ0E7RUFDQTtBekZxbFlOO0F5Rm5sWVE7RUFDRTtBekZxbFlWO0F5RmxsWU07RUFDRTtBekZvbFlSO0F5RmxsWVU7RUFDRTtBekZvbFlaO0F5RnJzWU07RUFDRSx5QkFSSTtFQVNKLFlBTlE7RUFPUixxQkFWSTtFVGpDNkMsd0JDK0I3QztFRDdCZ0QscUJDNkJoRDtFRDFCcUQsZ0JDMEJyRDtBakZzdFlaO0F5RnJzWVE7RUFDRSxZQWJNO0VBY04scUJBZkU7RUFnQkYseUJBaEJFO0F6RnV0WVo7QXlGcHNZUTtFQUNFO0VBQ0E7QXpGc3NZVjtBeUZsc1lNO0VBQ0U7QXpGb3NZUjtBeUZsc1lVO0VBQ0U7QXpGb3NZWjtBeUY5cllRO0VBQ0U7RUFDQSxZQXBDTTtBekZvdVloQjtBeUYzcllRO0VBQTJCLHVCQXpDbkI7QXpGdXVZaEI7QXlGN3JZUTtFQUEyQix5QkExQ25CO0F6RjB1WWhCO0F5Ri9yWVE7RUFBNEIsd0JBM0NwQjtBekY2dVloQjtBeUZqc1lRO0VBQXlCLDBCQTVDakI7QXpGZ3ZZaEI7QXlGaHNZSTtFQUNFO0VBQ0EsY0FyRE07QXpGdXZZWjtBeUZoc1lRO0VBQ0U7RUFDQTtBekZrc1lWO0F5Ri9yWVE7RUFDRTtBekZpc1lWO0F5RjdyWVE7RUFBMkIseUJBakV2QjtBekZpd1laO0F5Ri9yWVE7RUFBMkIsMkJBbEV2QjtBekZvd1laO0F5RmpzWVE7RUFBNEIsMEJBbkV4QjtBekZ1d1laO0F5Rm5zWVE7RUFBeUIsNEJBcEVyQjtBekYwd1laO0F5RmxzWUk7RUFDRSxjQXpFTTtFQTBFTixxQkExRU07QXpGOHdZWjtBeUZsc1lRO0VBQ0U7RUFDQTtBekZvc1lWO0F5RmpzWVE7RUFDRTtBekZtc1lWO0F5RmhzWU07RUFDRTtBekZrc1lSO0F5RmhzWVU7RUFDRTtBekZrc1laO0F5RjdyWVE7RUFBMkIseUJBOUZ2QjtBekY4eFlaO0F5Ri9yWVE7RUFBMkIsMkJBL0Z2QjtBekZpeVlaO0F5RmpzWVE7RUFBNEIsMEJBaEd4QjtBekZveVlaO0F5Rm5zWVE7RUFBeUIsNEJBakdyQjtBekZ1eVlaO0F5RmxzWUk7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFlBeEdVO0VBeUdWO0VBQ0E7RUFDQTtBekZtc1lOO0F5RmpzWVE7RUFDRTtBekZtc1lWO0F5RmhzWU07RUFDRTtBekZrc1lSO0F5RmhzWVU7RUFDRTtBekZrc1laO0F5Rm56WU07RUFDRSx5QkFSSTtFQVNKLFlBTlE7RUFPUixxQkFWSTtFVGpDNkMsd0JDK0I3QztFRDdCZ0QscUJDNkJoRDtFRDFCcUQsZ0JDMEJyRDtBakZvMFlaO0F5Rm56WVE7RUFDRSxZQWJNO0VBY04scUJBZkU7RUFnQkYseUJBaEJFO0F6RnEwWVo7QXlGbHpZUTtFQUNFO0VBQ0E7QXpGb3pZVjtBeUZoellNO0VBQ0U7QXpGa3pZUjtBeUZoellVO0VBQ0U7QXpGa3pZWjtBeUY1eVlRO0VBQ0U7RUFDQSxZQXBDTTtBekZrMVloQjtBeUZ6eVlRO0VBQTJCLHVCQXpDbkI7QXpGcTFZaEI7QXlGM3lZUTtFQUEyQix5QkExQ25CO0F6RncxWWhCO0F5Rjd5WVE7RUFBNEIsd0JBM0NwQjtBekYyMVloQjtBeUYveVlRO0VBQXlCLDBCQTVDakI7QXpGODFZaEI7QXlGOXlZSTtFQUNFO0VBQ0EsY0FyRE07QXpGcTJZWjtBeUY5eVlRO0VBQ0U7RUFDQTtBekZnellWO0F5Rjd5WVE7RUFDRTtBekYreVlWO0F5RjN5WVE7RUFBMkIseUJBakV2QjtBekYrMllaO0F5Rjd5WVE7RUFBMkIsMkJBbEV2QjtBekZrM1laO0F5Ri95WVE7RUFBNEIsMEJBbkV4QjtBekZxM1laO0F5Rmp6WVE7RUFBeUIsNEJBcEVyQjtBekZ3M1laO0F5Rmh6WUk7RUFDRSxjQXpFTTtFQTBFTixxQkExRU07QXpGNDNZWjtBeUZoellRO0VBQ0U7RUFDQTtBekZrellWO0F5Ri95WVE7RUFDRTtBekZpellWO0F5Rjl5WU07RUFDRTtBekZnellSO0F5Rjl5WVU7RUFDRTtBekZnellaO0F5RjN5WVE7RUFBMkIseUJBOUZ2QjtBekY0NFlaO0F5Rjd5WVE7RUFBMkIsMkJBL0Z2QjtBekYrNFlaO0F5Ri95WVE7RUFBNEIsMEJBaEd4QjtBekZrNVlaO0F5Rmp6WVE7RUFBeUIsNEJBakdyQjtBekZxNVlaO0F5Rmh6WUk7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFlBeEdVO0VBeUdWO0VBQ0E7RUFDQTtBekZpellOO0F5Ri95WVE7RUFDRTtBekZpellWO0F5Rjl5WU07RUFDRTtBekZnellSO0F5Rjl5WVU7RUFDRTtBekZnellaO0F5Rmo2WU07RUFDRSx5QkFSSTtFQVNKLFlBTlE7RUFPUixxQkFWSTtFVGpDNkMsd0JDK0I3QztFRDdCZ0QscUJDNkJoRDtFRDFCcUQsZ0JDMEJyRDtBakZrN1laO0F5Rmo2WVE7RUFDRSxZQWJNO0VBY04scUJBZkU7RUFnQkYseUJBaEJFO0F6Rm03WVo7QXlGaDZZUTtFQUNFO0VBQ0E7QXpGazZZVjtBeUY5NVlNO0VBQ0U7QXpGZzZZUjtBeUY5NVlVO0VBQ0U7QXpGZzZZWjtBeUYxNVlRO0VBQ0U7RUFDQSxZQXBDTTtBekZnOFloQjtBeUZ2NVlRO0VBQTJCLHVCQXpDbkI7QXpGbThZaEI7QXlGejVZUTtFQUEyQix5QkExQ25CO0F6RnM4WWhCO0F5RjM1WVE7RUFBNEIsd0JBM0NwQjtBekZ5OFloQjtBeUY3NVlRO0VBQXlCLDBCQTVDakI7QXpGNDhZaEI7QXlGNTVZSTtFQUNFO0VBQ0EsY0FyRE07QXpGbTlZWjtBeUY1NVlRO0VBQ0U7RUFDQTtBekY4NVlWO0F5RjM1WVE7RUFDRTtBekY2NVlWO0F5Rno1WVE7RUFBMkIseUJBakV2QjtBekY2OVlaO0F5RjM1WVE7RUFBMkIsMkJBbEV2QjtBekZnK1laO0F5Rjc1WVE7RUFBNEIsMEJBbkV4QjtBekZtK1laO0F5Ri81WVE7RUFBeUIsNEJBcEVyQjtBekZzK1laO0F5Rjk1WUk7RUFDRSxjQXpFTTtFQTBFTixxQkExRU07QXpGMCtZWjtBeUY5NVlRO0VBQ0U7RUFDQTtBekZnNllWO0F5Rjc1WVE7RUFDRTtBekYrNVlWO0F5RjU1WU07RUFDRTtBekY4NVlSO0F5RjU1WVU7RUFDRTtBekY4NVlaO0F5Rno1WVE7RUFBMkIseUJBOUZ2QjtBekYwL1laO0F5RjM1WVE7RUFBMkIsMkJBL0Z2QjtBekY2L1laO0F5Rjc1WVE7RUFBNEIsMEJBaEd4QjtBekZnZ1paO0F5Ri81WVE7RUFBeUIsNEJBakdyQjtBekZtZ1paO0F5Rjk1WUk7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFlBeEdVO0VBeUdWO0VBQ0E7RUFDQTtBekYrNVlOO0F5Rjc1WVE7RUFDRTtBekYrNVlWO0F5RjU1WU07RUFDRTtBekY4NVlSO0F5RjU1WVU7RUFDRTtBekY4NVlaO0F5Ri9nWk07RUFDRSx5QkFSSTtFQVNKLFlBTlE7RUFPUixxQkFWSTtFVGpDNkMsd0JDK0I3QztFRDdCZ0QscUJDNkJoRDtFRDFCcUQsZ0JDMEJyRDtBakZnaVpaO0F5Ri9nWlE7RUFDRSxZQWJNO0VBY04scUJBZkU7RUFnQkYseUJBaEJFO0F6RmlpWlo7QXlGOWdaUTtFQUNFO0VBQ0E7QXpGZ2haVjtBeUY1Z1pNO0VBQ0U7QXpGOGdaUjtBeUY1Z1pVO0VBQ0U7QXpGOGdaWjtBeUZ4Z1pRO0VBQ0U7RUFDQSxZQXBDTTtBekY4aVpoQjtBeUZyZ1pRO0VBQTJCLHVCQXpDbkI7QXpGaWpaaEI7QXlGdmdaUTtFQUEyQix5QkExQ25CO0F6Rm9qWmhCO0F5RnpnWlE7RUFBNEIsd0JBM0NwQjtBekZ1alpoQjtBeUYzZ1pRO0VBQXlCLDBCQTVDakI7QXpGMGpaaEI7QXlGMWdaSTtFQUNFO0VBQ0EsY0FyRE07QXpGaWtaWjtBeUYxZ1pRO0VBQ0U7RUFDQTtBekY0Z1pWO0F5RnpnWlE7RUFDRTtBekYyZ1pWO0F5RnZnWlE7RUFBMkIseUJBakV2QjtBekYya1paO0F5RnpnWlE7RUFBMkIsMkJBbEV2QjtBekY4a1paO0F5RjNnWlE7RUFBNEIsMEJBbkV4QjtBekZpbFpaO0F5RjdnWlE7RUFBeUIsNEJBcEVyQjtBekZvbFpaO0F5RjVnWkk7RUFDRSxjQXpFTTtFQTBFTixxQkExRU07QXpGd2xaWjtBeUY1Z1pRO0VBQ0U7RUFDQTtBekY4Z1pWO0F5RjNnWlE7RUFDRTtBekY2Z1pWO0F5RjFnWk07RUFDRTtBekY0Z1pSO0F5RjFnWlU7RUFDRTtBekY0Z1paO0F5RnZnWlE7RUFBMkIseUJBOUZ2QjtBekZ3bVpaO0F5RnpnWlE7RUFBMkIsMkJBL0Z2QjtBekYybVpaO0F5RjNnWlE7RUFBNEIsMEJBaEd4QjtBekY4bVpaO0F5RjdnWlE7RUFBeUIsNEJBakdyQjtBekZpblpaO0F5RjVnWkk7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFlBeEdVO0VBeUdWO0VBQ0E7RUFDQTtBekY2Z1pOO0F5RjNnWlE7RUFDRTtBekY2Z1pWO0F5RjFnWk07RUFDRTtBekY0Z1pSO0F5RjFnWlU7RUFDRTtBekY0Z1paO0F5RjduWk07RUFDRSx5QkFSSTtFQVNKLFdBTlE7RUFPUixxQkFWSTtFVGpDNkMsd0JDK0I3QztFRDdCZ0QscUJDNkJoRDtFRDFCcUQsZ0JDMEJyRDtBakY4b1paO0F5RjduWlE7RUFDRSxXQWJNO0VBY04sdUJBZkU7RUFnQkYsMkJBaEJFO0F6RitvWlo7QXlGNW5aUTtFQUNFO0VBQ0E7QXpGOG5aVjtBeUYxblpNO0VBQ0U7QXpGNG5aUjtBeUYxblpVO0VBQ0U7QXpGNG5aWjtBeUZ0blpRO0VBQ0U7RUFDQSxXQXBDTTtBekY0cFpoQjtBeUZublpRO0VBQTJCLHNCQXpDbkI7QXpGK3BaaEI7QXlGcm5aUTtFQUEyQix3QkExQ25CO0F6RmtxWmhCO0F5RnZuWlE7RUFBNEIsdUJBM0NwQjtBekZxcVpoQjtBeUZ6blpRO0VBQXlCLHlCQTVDakI7QXpGd3FaaEI7QXlGeG5aSTtFQUNFO0VBQ0EsY0FyRE07QXpGK3FaWjtBeUZ4blpRO0VBQ0U7RUFDQTtBekYwblpWO0F5RnZuWlE7RUFDRTtBekZ5blpWO0F5RnJuWlE7RUFBMkIseUJBakV2QjtBekZ5clpaO0F5RnZuWlE7RUFBMkIsMkJBbEV2QjtBekY0clpaO0F5RnpuWlE7RUFBNEIsMEJBbkV4QjtBekYrclpaO0F5RjNuWlE7RUFBeUIsNEJBcEVyQjtBekZrc1paO0F5RjFuWkk7RUFDRSxjQXpFTTtFQTBFTixxQkExRU07QXpGc3NaWjtBeUYxblpRO0VBQ0U7RUFDQTtBekY0blpWO0F5RnpuWlE7RUFDRTtBekYyblpWO0F5RnhuWk07RUFDRTtBekYwblpSO0F5RnhuWlU7RUFDRTtBekYwblpaO0F5RnJuWlE7RUFBMkIseUJBOUZ2QjtBekZzdFpaO0F5RnZuWlE7RUFBMkIsMkJBL0Z2QjtBekZ5dFpaO0F5RnpuWlE7RUFBNEIsMEJBaEd4QjtBekY0dFpaO0F5RjNuWlE7RUFBeUIsNEJBakdyQjtBekYrdFpaO0F5RjFuWkk7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFdBeEdVO0VBeUdWO0VBQ0E7RUFDQTtBekYyblpOO0F5RnpuWlE7RUFDRTtBekYyblpWO0F5RnhuWk07RUFDRTtBekYwblpSO0F5RnhuWlU7RUFDRTtBekYwblpaO0F5Rm5uWkU7RUFDRTtBekZxblpKO0F5Rm5uWk07RUFDRTtBekZxblpSO0F5Ri9tWkk7RUFDRTtFQUNBO0F6RmluWk47QXlGNW1aSTtFYjFIMEU7RUFDQTtFQUNBO0VBQ0E7RUFFQSxzQkFUbkU7RWFnSUwsdUJoQjlMVTtFZ0IrTFY7RVRwTG1ELHdCQytCN0M7RUQ3QmdELHFCQzZCaEQ7RUQxQnFELGdCQzBCckQ7RVF1Sk47RUFDQTtBekZvblpOO0F5RmxuWlE7RUFBMkI7QXpGcW5abkM7QXlGcG5aUTtFQUEyQjtBekZ1blpuQztBeUZ0blpRO0VBQTRCO0F6RnluWnBDO0F5RnhuWlE7RUFBeUI7QXpGMm5aakM7QXlGcm5aSTtFQUNFO0F6RnVuWk47QXlGbG5aSTtFQUNFO0F6Rm9uWk47QXlGaG5aRTtFVDdNdUQsOEJQeUhyQztFT3ZId0MsMkJQdUh4QztFT3RIeUMsMEJQc0h6QztFT3JIMEMseUJQcUgxQztFT3BINkMsc0JQb0g3QztFZ0JzRmhCO0VBQ0E7QXpGc25aSjtBeUZublpFO0VBQ0U7RUFDQTtFQUNBO0F6RnFuWko7QXlGcG5aSTtFQUNFO0F6RnNuWk47QXlGcG5aSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBekZzblpOO0F5RnBuWkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpGc25aTjtBeUZsblpNO0VBQ0U7QXpGb25aUjtBeUZsblpNO0VBQ0U7QXpGb25aUjs7QXlGcG1aRTtFVHRRdUQsK0JTdVE3QjtFVHJRZ0MsNEJTcVFoQztFVHBRaUMsMkJTb1FqQztFVG5Ra0MsMEJTbVFsQztFVGxRcUMsdUJTa1FyQztFQUN4QjtFQUNBO0F6RjJtWko7QXlGMW1aSTtFQUNFO0VBQ0E7QXpGNG1aTjtBeUYzbVpNO0VBQW1CO0F6RjhtWnpCO0F5RjdtWk07RUFBb0I7QXpGZ25aMUI7QXlGOW1aSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F6RmduWk47QXlGL21aTTtFQUEyQjtBekZrblpqQztBeUZqblpNO0VBQTJCO0F6Rm9uWmpDO0F5Rm5uWk07RUFBNEI7QXpGc25abEM7QXlGcm5aTTtFQUF5QjtBekZ3blovQjtBeUZ0blpJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXpGd25aTjtBeUZ2blpNO0VBQ0U7RUFDQTtFQUNBO0F6RnluWlI7O0F5RnhwWkU7RVR0UXVELDhCU3VRN0I7RVRyUWdDLDJCU3FRaEM7RVRwUWlDLDBCU29RakM7RVRuUWtDLHlCU21RbEM7RVRsUXFDLHNCU2tRckM7RUFDeEI7RUFDQTtBekYrcFpKO0F5RjlwWkk7RUFDRTtFQUNBO0F6RmdxWk47QXlGL3BaTTtFQUFtQjtBekZrcVp6QjtBeUZqcVpNO0VBQW9CO0F6Rm9xWjFCO0F5RmxxWkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBekZvcVpOO0F5Rm5xWk07RUFBMkI7QXpGc3FaakM7QXlGcnFaTTtFQUEyQjtBekZ3cVpqQztBeUZ2cVpNO0VBQTRCO0F6RjBxWmxDO0F5RnpxWk07RUFBeUI7QXpGNHFaL0I7QXlGMXFaSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F6RjRxWk47QXlGM3FaTTtFQUNFO0VBQ0E7RUFDQTtBekY2cVpSOztBeUY1c1pFO0VUdFF1RCxnQ1N1UTdCO0VUclFnQyw2QlNxUWhDO0VUcFFpQyw0QlNvUWpDO0VUblFrQywyQlNtUWxDO0VUbFFxQyx3QlNrUXJDO0VBQ3hCO0VBQ0E7QXpGbXRaSjtBeUZsdFpJO0VBQ0U7RUFDQTtBekZvdFpOO0F5Rm50Wk07RUFBbUI7QXpGc3RaekI7QXlGcnRaTTtFQUFvQjtBekZ3dFoxQjtBeUZ0dFpJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpGd3RaTjtBeUZ2dFpNO0VBQTJCO0F6RjB0WmpDO0F5Rnp0Wk07RUFBMkI7QXpGNHRaakM7QXlGM3RaTTtFQUE0QjtBekY4dFpsQztBeUY3dFpNO0VBQXlCO0F6Rmd1Wi9CO0F5Rjl0Wkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBekZndVpOO0F5Ri90Wk07RUFDRTtFQUNBO0VBQ0E7QXpGaXVaUjs7QXlGaHdaRTtFVHRRdUQsZ0NTdVE3QjtFVHJRZ0MsNkJTcVFoQztFVHBRaUMsNEJTb1FqQztFVG5Ra0MsMkJTbVFsQztFVGxRcUMsd0JTa1FyQztFQUN4QjtFQUNBO0F6RnV3Wko7QXlGdHdaSTtFQUNFO0VBQ0E7QXpGd3daTjtBeUZ2d1pNO0VBQW1CO0F6RjB3WnpCO0F5Rnp3Wk07RUFBb0I7QXpGNHdaMUI7QXlGMXdaSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F6RjR3Wk47QXlGM3daTTtFQUEyQjtBekY4d1pqQztBeUY3d1pNO0VBQTJCO0F6Rmd4WmpDO0F5Ri93Wk07RUFBNEI7QXpGa3habEM7QXlGanhaTTtFQUF5QjtBekZveFovQjtBeUZseFpJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXpGb3haTjtBeUZueFpNO0VBQ0U7RUFDQTtFQUNBO0F6RnF4WlI7O0F5RnB6WkU7RVR0UXVELDZCU3VRN0I7RVRyUWdDLDBCU3FRaEM7RVRwUWlDLHlCU29RakM7RVRuUWtDLHdCU21RbEM7RVRsUXFDLHFCU2tRckM7RUFDeEI7RUFDQTtBekYyelpKO0F5RjF6Wkk7RUFDRTtFQUNBO0F6RjR6Wk47QXlGM3paTTtFQUFtQjtBekY4elp6QjtBeUY3elpNO0VBQW9CO0F6RmcwWjFCO0F5Rjl6Wkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBekZnMFpOO0F5Ri96Wk07RUFBMkI7QXpGazBaakM7QXlGajBaTTtFQUEyQjtBekZvMFpqQztBeUZuMFpNO0VBQTRCO0F6RnMwWmxDO0F5RnIwWk07RUFBeUI7QXpGdzBaL0I7QXlGdDBaSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F6RncwWk47QXlGdjBaTTtFQUNFO0VBQ0E7RUFDQTtBekZ5MFpSOztBeUZuMFpBO0VBQ0U7RUFDQTtBekZzMFpGO0F5RnAwWkU7RUFDRTtBekZzMFpKO0F5Rm4wWk07RUFDRTtFVGxUb0QsNkJTbVRwQjtFVHJUaUIsaUNTcVRqQjtFVGhUeUIseUJTZ1R6QjtFVG5Ub0IsZ0NTb1RqQjtFVHRUYyxvQ1NzVGQ7RVRqVHNCLDRCU2lUdEI7QXpGeTBaM0M7QXlGcDBaTTtFVHpUc0QsOEJTMFRuQjtFVDVUZ0Isa0NTNFRoQjtFVHZUd0IsMEJTdVR4QjtFVDFUbUIsaUNTMlRoQjtFVDdUYSxxQ1M2VGI7RVR4VHFCLDZCU3dUckI7QXpGMDBaNUM7QXlGcjBaTTtFVGxVbUQsd0JTbVUxQjtFVGpVNkIscUJTaVU3QjtFVGhVOEIsb0JTZ1U5QjtFVC9UK0IsbUJTK1QvQjtFVDlUa0MsZ0JTOFRsQztBekYyMFovQjs7QXlGbjBaSTtFQUFjO0F6RnUwWmxCO0F5RnQwWkk7RUFBWTtBekZ5MFpoQjtBeUZ2MFpFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXpGeTBaSjtBeUZ2MFpFO0VBQWM7QXpGMDBaaEI7QXlGejBaRTtFQUFZO0F6RjQwWmQ7O0EyRi9xYUE7RUFDRTtFQUNEO0VBQ0E7QTNGa3JhRDtBMkZocmFFO0VBQ0M7RUFDQTtFQUNBO0EzRmtyYUg7QTJGL3FhSztFQUNHO0VBQ0E7RUFDQTtBM0ZpcmFSO0EyRi9xYVE7RUFDRTtFQUNBO0EzRmlyYVY7QTJGM3FhRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNGNnFhSjtBMkYzcWFJO0VBQ0U7RUFDQTtBM0Y2cWFOO0EyRjNxYU07RUFDRTtBM0Y2cWFSO0EyRnpxYUk7RUFDRTtFQUNBO0EzRjJxYU47QTJGenFhTTtFQUNFO0EzRjJxYVI7O0E0Rmp1YUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVGb3VhRjtBNEZsdWFFO0VBQ0U7RVpFcUQsNENDK0I3QztFRDdCZ0QseUNDNkJoRDtFRDFCcUQsb0NDMEJyRDtBakZzc2FaO0E0Rm51YUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUZxdWFKO0E0Rmp1YUk7RUFDRTtBNUZtdWFOO0E0Ri90YUU7RUFDRTtBNUZpdWFKO0E0Ri90YUk7RUFDRTtBNUZpdWFOOztBNkY3dmFBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsV0FYWTtFQVlaLFlBYmE7RUFjYjtFQUNBO0E3Rmd3YUY7QTZGOXZhRTtFQUNFO0VBQ0EsbUJBbkJXO0VBb0JYO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0Znd2FKO0E2Rjl2YUk7RUFDRTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLDBCQS9CUztFQWdDVDtFQUNBO0E3Rit2YU47QTZGMXZhSTtFQUNFLHFCcEI5QlU7RW9CK0JWLHlCcEIvQlU7QXpFMnhhaEI7QTZGMXZhTTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGNBN0NPO0VBOENQLGVBOUNPO0VBK0NQO0VBQ0E7QTdGNHZhUjtBNkZ2dmFFO0VBQ0U7QTdGeXZhSjtBOEYveWFFO0VBQ0U7RUFDQSxXQVJXO0VBU1gsWUFUVztFQVVYLGVBVlc7RUFXWDtFQUNBO0VBQ0E7QTlGaXphSjtBOEY3eWFJO0VBQ0UsY3JCSlU7QXpFbXphaEI7QThGMXlhSTtFQUNFO0E5RjR5YU47O0ErRi96YUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0ZrMGFGO0ErRmgwYUU7RUFDRTtFQUNBO0VBQ0E7QS9GazBhSjs7QWdHajFhQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEdvMWFGO0FnR2wxYUU7RUFDRTtBaEdvMWFKO0FnR2oxYUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBaEdtMWFKO0FnRy8wYUk7RUFDRTtBaEdpMWFOOztBaUc1MmFBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakcrMmFGO0FpRzcyYUU7RUFWRjtJQVdJO0VqR2czYUY7QUFDRjtBaUc5MmFFO0VBQ0U7RUFDQTtBakdnM2FKO0FpRzkyYUk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBakdnM2FOO0FpRzMyYUk7RUFDRTtBakc2MmFOO0FpRzMyYU07RUFIRjtJQUlJO0VqRzgyYU47QUFDRjtBaUc1MmFNO0VBUEY7SUFRSTtFakcrMmFOO0FBQ0Y7QWlHMTJhSTtFQUNFO0FqRzQyYU47QWlHMTJhTTtFQUhGO0lBSUk7RWpHNjJhTjtBQUNGO0FpRzMyYU07RUFQRjtJQVFJO0VqRzgyYU47QUFDRjs7QWlHejJhQTtFQUNFO0lBQ0U7RWpHNDJhRjtFaUd6MmFBO0lBQ0U7RWpHMjJhRjtBQUNGO0FpR3gyYUE7RUFDRTtJQUNFO0lBQ0E7RWpHMDJhRjtFaUd2MmFBO0lBQ0U7SUFDQTtFakd5MmFGO0FBQ0Y7QWlHdDJhQTtFQUNFO0lBQ0U7RWpHdzJhRjtFaUdyMmFBO0lBQ0U7RWpHdTJhRjtBQUNGO0FpR3AyYUE7RUFDRTtJQUNFO0lBQ0E7RWpHczJhRjtFaUduMmFBO0lBQ0U7SUFDQTtFakdxMmFGO0FBQ0Y7QWtHcDhhQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWxCTXVELDhCS0RsRDtFTEdxRCwyQktIckQ7RUxNMEQsc0JLTjFEO0FyRm84YVA7QWtHdDhhRTtFbEJHdUQsOEJLRGxEO0VMR3FELDJCS0hyRDtFTE0wRCxzQktOMUQ7QXJGeThhUDtBa0d2OGFFO0VBQ0U7RXRCcUQwRTtFQUNBO0VBQ0E7RUFDQTtFQUVBLGlEQVRuRTtFc0IvQ1A7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEc2OGFKO0FrRzM4YUk7RUFDRTtBbEc2OGFOO0FrR3o4YUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRzI4YUo7QWtHejhhSTtFQUNFO0FsRzI4YU47QWtHeDhhSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FsRzA4YU47QWtHeDhhTTtFQUNFO0VBQ0E7RUFDQTtBbEcwOGFSO0FrR3Y4YU07RUFDRTtBbEd5OGFSO0FrR3Y4YVE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsR3k4YVY7QWtHcjhhTTtFQUNFO0VBQ0E7QWxHdThhUjtBa0dqOGFJO0VBQ0U7QWxHbThhTjtBa0dqOGFNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEdtOGFSO0FrRy83YUk7RUFDRTtBbEdpOGFOO0FrRzc3YUU7RUFDRTtBbEcrN2FKO0FrRzc3YUk7RXRCMUIwRTtFQUNBO0VBQ0E7RUFDQTtFQUVBLG1EQVRuRTtFc0JnQ0w7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxHazhhTjtBa0cvN2FRO0VBQ0U7QWxHaThhVjtBa0c5N2FRO0VBQ0U7QWxHZzhhVjtBa0c3N2FZO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEcrN2FkO0FrRzU3YVk7RUFDRTtFQUNBO0VBQ0E7QWxHODdhZDtBa0d2N2FJO0VBQ0U7QWxHeTdhTjtBa0d0N2FJO0VBQ0U7QWxHdzdhTjtBa0duN2FJO0VBQ0U7RUFDQTtFQUNBO0FsR3E3YU47QWtHbDdhUTtFQUNFO0FsR283YVY7QWtHOTZhRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FsR2c3YUo7QWtHOTZhSTtFQUNFO0FsR2c3YU47QWtHNTZhRTtFQUNFO0VBQ0E7RUFDQTtBbEc4NmFKO0FrRzU2YUk7RUFDRTtBbEc4NmFOO0FrRzM2YUk7RUFDRTtFQUNBO0VBRUE7QWxHNDZhTjtBa0cxNmFNO0VBQ0U7RUFDQTtBbEc0NmFSO0FrR3g2YVE7RUFDRTtBbEcwNmFWO0FrR3Y2YVE7RUFDRSx5QnpCYmU7QXpFczdhekI7QWtHbDZhUTtFQUNFO0FsR282YVY7QWtHbDZhVTtFQUNFO0VBQ0E7QWxHbzZhWjtBa0dsNmFZO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEdvNmFkO0FrR2g2YWM7RUFDRTtFQUNBO0VBQ0E7QWxHazZhaEI7QWtHMTVhWTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRzQ1YWQ7QWtHMTVhYztFQUNFO0FsRzQ1YWhCO0FrR3g1YVk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxHMDVhZDtBa0d4NWFjO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxHMDVhaEI7QWtHeDVhZ0I7RUFDRTtBbEcwNWFsQjtBa0dwNWFjO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsR3M1YWhCO0FrR2o1YWM7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxHbTVhaEI7QWtHajVhZ0I7RUFDRTtFQUNBO0FsR201YWxCO0FrR2g1YWdCO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsR2s1YWxCO0FrRy80YWdCO0VBQ0U7RUFDQTtFQUNBO0FsR2k1YWxCO0FrRzk0YWdCOztFQUVFLHFCekJsVUY7QXpFa3RiaEI7QWtHNzRhZ0I7RUFDRSx5QnpCdFVGO0V5QnVVRTtBbEcrNGFsQjtBa0c1NGFnQjs7RUFFRTtBbEc4NGFsQjtBa0czNGFnQjtFQUNFO0VBQ0E7RUFDQTtBbEc2NGFsQjtBa0cxNGFnQjtFQUNFO0FsRzQ0YWxCO0FrR3o0YWdCO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFLQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsR3U0YWxCO0FrR2w0YVk7RUFJRTtFQUNBO0VBQ0E7QWxHaTRhZDtBa0cvM2FjOzs7Ozs7Ozs7RUFHRTtFQUNBO0VBQ0E7RUFDQSxXekJqWUs7RXlCa1lMO0VBQ0E7QWxHdTRhaEI7QWtHbDRhVTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEdvNGFaO0FrR2o0YVU7RUFDRTtBbEdtNGFaO0FrR2o0YVk7RUFDRTtFQUNBO0VBQ0E7QWxHbTRhZDtBa0c5M2FRO0VBQ0U7QWxHZzRhVjtBa0czM2FJO0VBQ0U7QWxHNjNhTjs7QW1HcHliQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkd1eWJGO0FtR3J5YkU7RUFDRTtFQUNBO0VuQkRxRCxrREMrQjdDO0VEN0JnRCwrQ0M2QmhEO0VEMUJxRCwwQ0MwQnJEO0FqRjR3Ylo7QW1HdnliSTtFQUNFO0VBQ0E7QW5HeXliTjtBbUd2eWJNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QW5HeXliUjtBbUdweWJVO0VBQ0U7RUFDQTtFQUNBO0FuR3N5Ylo7QW1HcHliWTtFQUNFO0FuR3N5YmQ7QW1HcHliYztFQUNFO0VBQ0E7RUFDQTtBbkdzeWJoQjtBbUdqeWJVO0VBQ0U7QW5HbXliWjtBbUdoeWJVO0VBQ0U7QW5Ha3liWjtBbUczeGJNO0VBQ0U7QW5HNnhiUjtBbUczeGJRO0VBQ0U7RUFDQTtBbkc2eGJWO0FtRzF4YlE7RUFDRTtBbkc0eGJWO0FtRzF4YlU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkc0eGJaOztBbUdueGJFO0VBQ0U7RUFDQTtFbkI3RXFELGtEQytCN0M7RUQ3QmdELCtDQzZCaEQ7RUQxQnFELDBDQzBCckQ7QWpGdTBiWjs7QW1HcHhiQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5HdXhiRjtBbUdyeGJFO0VBQ0U7RUFDRDtFQUVDO0VBQ0E7RUFDQTtBbkdzeGJKO0FtR3B4Ykk7RUFDQztFQUNBO0VBQ0M7RUFDQTtFQUNBO0FuR3N4Yk47QW1HcHhiTTtFQUNFO0VBQ0E7QW5Hc3hiUjtBbUdueGJNO0VBQ0U7RUFDQTtFQUVBO0FuR294YlI7QW1HbHhiUTtFQUNFO0VBQ0E7RUFDQTtBbkdveGJWO0FtR2x4YlU7RUFDRTtBbkdveGJaO0FtR2h4YlE7RUFDRTtBbkdreGJWO0FtR2h4YlU7RUFDRTtBbkdreGJaO0FtRzl3YlE7RUFDRTtBbkdneGJWO0FtRzl3YlU7RUFDRTtBbkdneGJaO0FtRzF3YlE7O0VBRUU7QW5HNHdiVjtBbUd2d2JJO0VBQ0U7QW5HeXdiTjtBbUdyd2JFO0VBQ0M7QW5HdXdiSDtBbUdwd2JFO0VBQ0U7RUFDQTtFQUNBO0FuR3N3Yko7QW1HbndiSTtFQUNFO0VBQ0E7RUFDQTtBbkdxd2JOO0FtR2x3Ykk7RUFDRTtBbkdvd2JOO0FtR2p3Ykk7RUFDRTtFQUNBO0VBQ0E7QW5HbXdiTjtBbUcvdmJJO0VBQ0U7RUFDQTtBbkdpd2JOO0FtRzl2Yk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkdnd2JSO0FtRzd2Yk07RUFDRTtBbkcrdmJSO0FtRzV2Yk07RUFDRTtFQUNBLGMxQjlNUTtFMEIrTVI7QW5HOHZiUjtBbUczdmJNO0VBQ0UseUIxQm5OUTtFMEJvTlI7RUFDQTtFQUNBO0FuRzZ2YlI7QW1HMXZiTTtFQUNFO0FuRzR2YlI7QW1HdnZiVTtFQUVFLHFCMUJqT0k7RTBCa09KO0VBQ0EsYzFCbk9JO0F6RTI5YmhCO0FtR252YlU7RUFDRSxxQjFCek9JO0UwQjBPSjtFQUNBO0FuR3F2Ylo7QW1HaHZiTTtFQUNFO0FuR2t2YlI7QW1HL3ViTTtFQUNFO0VBQ0E7RUFFQTtBbkdndmJSO0FtRzd1Yk07RUFDRTtFQUNBO0VBQ0EsYzFCOVBRO0F6RTYrYmhCO0FtRzN1YlE7RUFDRSx5QjFCblFNO0UwQm9RTjtFQUNBO0FuRzZ1YlY7QW1HdnViRTtFQUNFO0VBQ0E7QW5HeXViSjtBbUd2dWJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkd5dWJOO0FtR3Z1Yk07RUFDRTtFQUNBO0FuR3l1YlI7QW1HcHViRTtFQUNFO0VBQ0EsVzFCMVNpQjtBekVnaGNyQjtBbUdwdWJJO0VBQ0M7QW5Hc3ViTDtBbUdwdWJLO0VBQ0s7RUFDQTtBbkdzdWJWO0FtR251Yks7RUFDRztFQUNBO0FuR3F1YlI7QW1HbHViTTtFQUNFO0VBQ0E7QW5Hb3ViUjtBbUdodWJJO0VBQ0M7QW5Ha3ViTDtBbUdodWJLO0VBQ0c7RUFDQTtFQUNBO0VBQ0E7QW5Ha3ViUjtBbUc3dGJNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkcrdGJSO0FtRzV0Yk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbkc4dGJSO0FtRzV0Yk87RUFDRztBbkc4dGJWO0FtRzN0YlE7RUFDRTtBbkc2dGJWO0FtRzN0YlU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFcxQnJXUztBekVra2NyQjtBbUcxdGJVO0VBQ0UsVzFCeldTO0F6RXFrY3JCO0FtR3p0YlU7RUFBb0I7QW5HNHRiOUI7QW1HM3RiVTtFQUFzQjtBbkc4dGJoQztBbUczdGJRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QW5HNnRiVjtBbUd4dGJJO0VDblhGO0dwRzhrY0EsT3FHamtjRTtBckdra2NKO0FtR3p0Yk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRzJ0YlI7QW1HeHRiTTtFQUNFO0VBQ0E7QW5HMHRiUjtBbUd2dGJNO0VBQ0U7RUFDQTtBbkd5dGJSO0FtR3R0Yk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbkd3dGJSO0FtR250YkU7RUFDRTtFQUNBO0FuR3F0Yko7QW1HbnRiSTtFQUNFO0VBQ0E7QW5HcXRiTjs7QXNHam5jQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRHb25jRjs7QXNHam5jQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEdvbmNGO0FzR2xuY0U7RUFDRSxZQW5Cc0I7RUFvQnRCO0VBQ0E7RUFDQTtBdEdvbmNKO0FzR2xuY0k7RUFORjtJQU9JO0lBQ0E7SUFDQTtFdEdxbmNKO0FBQ0Y7QXNHbG5jRTtFQUNFO0V0QnZCcUQsd0JDK0I3QztFRDdCZ0QscUJDNkJoRDtFRDFCcUQsZ0JDMEJyRDtFcUJOUjtBdEdzbmNKO0FzR3BuY0k7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBdEdzbmNOO0FzR25uY0k7RUFDRTtFQUNBO0F0R3FuY047QXNHbm5jTTtFQUNFO0F0R3FuY1I7QXNHam5jUTtFQUNFO0VBQ0E7RUFDQTtBdEdtbmNWO0FzR2puY1U7RUFDRTtBdEdtbmNaO0FzRzdtY0k7RUZ6REY7R3BHeXFjQSxPcUc1cGNFO0FyRzZwY0o7QXNHOW1jTTtFQUNFO0F0R2duY1I7QXNHOW1jUTtFQUNFO0VBQ0E7QXRHZ25jVjtBc0cxbWNFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEc0bWNKO0FzRzFtY0k7RUFDRTtFdEI3RW1ELHdCc0I4RTVCO0V0QjVFK0IscUJzQjRFL0I7RXRCM0VnQyxvQnNCMkVoQztFdEIxRWlDLG1Cc0IwRWpDO0V0QnpFb0MsZ0JzQnlFcEM7QXRHZ25jN0I7QXNHOW1jTTtFQUNFO0F0R2duY1I7QXNHN21jTTtFdEJwRm1ELHdCc0JxRjFCO0V0Qm5GNkIscUJzQm1GN0I7RXRCbEY4QixvQnNCa0Y5QjtFdEJqRitCLG1Cc0JpRi9CO0V0QmhGa0MsZ0JzQmdGbEM7QXRHbW5jL0I7QXNHaG5jTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F0R2tuY1I7O0F1RzF0Y0E7RUFDRTtFQUNBO0F2RzZ0Y0Y7QXVHM3RjRTtFQUNFO0F2RzZ0Y0o7O0F1R3h0Y0U7RUFDRTtFQUNBO0F2RzJ0Y0o7O0F1R3Z0Y0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkcwdGNGO0F1R3h0Y0U7RUFDRTtFQUNBO0VBQ0E7QXZHMHRjSjtBdUd2dGNFO0VBQ0U7QXZHeXRjSjtBdUd2dGNJO0VBQ0U7RUFDQTtBdkd5dGNOO0F1R3Z0Y007RUFDRTtBdkd5dGNSO0F1R3B0Y0U7RUFFRTtFQUNBO0F2R3F0Y0o7O0F3R2h4Y0E7RUFDRTtFQUNBO0VBQ0E7RUF3QkE7RUFFQTtBeEcydmNGO0F3R254Y0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0V4QkRxRCxrREMrQjdDO0VEN0JnRCwrQ0M2QmhEO0VEMUJxRCwwQ0MwQnJEO0FqRjB2Y1o7QXdHcHhjRTtFQUNFO0VBQ0E7QXhHc3hjSjtBd0dueGNFO0VBQ0U7RUFDQTtBeEdxeGNKO0F3Rzl3Y0U7RUFDRTtFQUVBO0F4Ryt3Y0o7QXdHN3djSTtFQUNFO0F4Ryt3Y047O0F3R3p3Y0U7RUFDRTtBeEc0d2NKO0F3RzF3Y0k7RUFDRTtBeEc0d2NOO0F3R3p3Y0k7RUFDRTtBeEcyd2NOOztBeUdoMGNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpHbTBjRjs7QTBHdDBjSTtFQUNFO0VBQ0E7QTFHeTBjTjtBMEd2MGNNO0VBSkY7SUFLSTtFMUcwMGNOO0FBQ0Y7QTBHeDBjTTtFQVJGO0lBU0k7RTFHMjBjTjtBQUNGO0EwR3owY007RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExRzIwY1I7QTBHejBjUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUcyMGNWO0EwR3owY1U7RUFDRTtFQUNBO0ExRzIwY1o7QTBHdjBjUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0ExR3kwY1Y7QTBHdjBjVTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFHeTBjWjtBMEd2MGNZO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExR3kwY2Q7QTBHcjBjVTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUd1MGNaO0EwR3AwY1U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBMUdzMGNaO0EwR2wwY1E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBMUdvMGNWO0EwR2wwY1U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBMUdvMGNaOztBMkd2NWNJO0VBQ0U7RUFDQTtBM0cwNWNOO0EyR3g1Y007RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzRzA1Y1I7QTJHeDVjUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzRzA1Y1Y7QTJHeDVjVTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0EzRzA1Y1o7QTJHdDVjUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNHdzVjVjtBMkd0NWNVO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTNHdzVjWjtBMkd0NWNZO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTNHdzVjZDtBMkdwNWNVO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTNHczVjWjtBMkduNWNVO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0dxNWNaO0EyR2o1Y1E7RUFDRTtBM0dtNWNWO0EyR2o1Y1U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBM0dtNWNaOztBNEc3OWNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTVHZytjRjtBNEc5OWNFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUdnK2NKO0E0Rzk5Y0k7RUFDRTtBNUdnK2NOO0E0Rzk5Y007RUFDRTtBNUdnK2NSO0E0Rzc5Y007RUFDRTtFQUNBO0E1Rys5Y1I7QTRHNzljUTtFQUNFO0E1Rys5Y1Y7QTRHNTljUTtFQUNFO0E1Rzg5Y1Y7QTRHeDljRTtFQUNFO0VBQ0E7RUFDQTtBNUcwOWNKO0E0R3g5Y0k7O0VBRUU7RUFDQTtFQUNBO0E1RzA5Y047QTRHdDljTTtFQUNFO0E1R3c5Y1I7O0E2R3pnZEE7RUFDRTtBN0c0Z2RGO0E2RzFnZEk7RUFDRTtBN0c0Z2ROO0E2R3ZnZFE7RWhDRko7RUFFRixZZ0NDeUI7QTdHMGdkM0I7QTZHeGdkVTtFQUhGO0loQ0ZKO0lBRUYsVWdDSTJCO0U3RzRnZDNCO0FBQ0Y7QTZHdGdkTTtFQUNFO0VBQ0E7QTdHd2dkUjtBNkd0Z2RRO0VBQ0U7QTdHd2dkVjs7QThHL2hkSTtFQUNFO0VBQ0E7QTlHa2lkTjtBOEdoaWRNO0VBSkY7SUFLSTtFOUdtaWROO0FBQ0Y7QThHamlkTTtFQVJGO0lBU0k7RTlHb2lkTjtBQUNGO0E4R2xpZE07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUdvaWRSO0E4R2xpZFE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUdvaWRWO0E4R2xpZFU7RUFDRTtFQUNBO0E5R29pZFo7QThHaGlkUTtFQUNFO0VBQ0E7RUFDQTtBOUdraWRWO0E4R2hpZFU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBOUdraWRaO0E4R2hpZFk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlHa2lkZDtBOEc5aGRVO0VBQ0U7QTlHZ2lkWjtBOEc3aGRVO0VBQ0U7QTlHK2hkWjtBOEczaGRRO0VBQ0U7QTlHNmhkVjtBOEczaGRVO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTlHNmhkWjs7QStHaG1kQTtFQUNFO0EvR21tZEY7QStHam1kRTtFQUNFO0EvR21tZEo7QStHaG1kRTtFQUNFO0VBQ0E7QS9Ha21kSjtBK0cvbGRNO0VBQ0U7QS9HaW1kUjtBK0cvbGRRO0VBQ0U7QS9HaW1kVjtBK0c5bGRRO0VBQ0U7QS9HZ21kVjtBK0c3bGRRO0VBQ0U7QS9HK2xkVjtBK0c1bGRRO0VBQ0U7QS9HOGxkVjtBK0czbGRRO0VBQ0U7QS9HNmxkVjtBK0czbGRVO0VBQ0U7QS9HNmxkWjtBK0cxbGRVO0VBQ0U7QS9HNGxkWjtBK0d2bGRjO0VBQ0U7QS9HeWxkaEI7QStHdmxkZ0I7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBL0d5bGRsQjtBK0d0bGRnQjtFQUFvQjtBL0d5bGRwQztBK0d4bGRnQjtFQUFvQjtBL0cybGRwQztBK0d0bGRVO0VBQ0U7QS9Hd2xkWjs7QWdIN3BkQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FoSGdxZEY7QWdIOXBkRTtFQUNFO0FoSGdxZEo7QWdIOXBkSTtFQUNFO0FoSGdxZE47QWdINXBkRTtFQUNFO0FoSDhwZEo7QWdIMXBkSTtFQUNFO0FoSDRwZE47QWdIeHBkRTtFQUNFO0FoSDBwZEo7QWdIeHBkSTtFQUNFO0VBQ0E7QWhIMHBkTjtBZ0h2cGRJO0VBQ0U7RUFDQTtFaEN0Qm1ELDBCZ0N1QjVCO0VoQ3JCK0IsdUJnQ3FCL0I7RWhDcEJnQyxzQmdDb0JoQztFaENuQmlDLHFCZ0NtQmpDO0VoQ2xCb0Msa0JnQ2tCcEM7QWhINnBkN0I7QWdIM3BkTTtFQUNFO0FoSDZwZFI7O0FnSHZwZEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHlCdkM4SHNCO0F6RTRoZHhCO0FnSC9vZEU7RUFDRTtBaEhpcGRKO0FnSDlvZE07RUFERjtJQUVJO0lBQ0E7SUFDQTtFaEhpcGROO0FBQ0Y7QWdIN29kRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FoSCtvZEo7QWdIN29kSTtFQU5GO0lBT0k7RWhIZ3BkSjtBQUNGO0FnSDdvZEU7RUFDRTtBaEgrb2RKO0FnSDdvZEk7RUFDRTtFQUNBO0VBQ0E7QWhIK29kTjtBZ0g3b2RNO0VBQ0U7QWhIK29kUjtBZ0g1b2RNO0VBQ0U7RUFDQSxtQnZDckZRO0V1Q3NGUjtFQUNBO0VBQ0E7RUFDQTtBaEg4b2RSO0FnSDNvZE07RUFFRTtFQUNBO0FoSDRvZFI7QWdIem9kTTtFQUNFO0VBQ0E7QWhIMm9kUjtBZ0h4b2RNO0VBQ0U7RUFDQTtBaEgwb2RSO0FnSHZvZE07RUFDRTtBaEh5b2RSO0FnSHJvZFE7RUFDRTtBaEh1b2RWO0FnSHJvZFU7RUFIRjtJQUlJO0VoSHdvZFY7QUFDRjs7QWdIam9kQTtFQUNFO0VBQ0EsbUJ2Q29Dc0I7QXpFZ21keEI7QWdIbG9kRTtFQUNFO0VBQ0E7RUFDQTtBaEhvb2RKO0FnSGpvZEU7RUFDRTtFQUNBO0FoSG1vZEo7QWdIaG9kRTtFQUNFO0FoSGtvZEo7QWdIL25kRTtFQUNFO0FoSGlvZEo7O0FnSDduZEE7O0VBRUU7QWhIZ29kRjs7QWdIN25kQTtFQUNFO0VBQ0EsbUJ2Q09zQjtBekV5bmR4Qjs7QWdIN25kQTtFQUNFO0VBQ0E7RUFDQTtBaEhnb2RGOztBZ0g3bmRBO0VBQ0U7RUFDQTtFQUNBO0VBQ0Y7QWhIZ29kQTs7QWdIMW5kQTtFQUNFO0VBQ0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoSDZuZEY7O0FnSHhuZEk7RUFDRTtFQUNBO0FoSDJuZE47QWdIeG5kSTtFQUNFO0VBQ0EseUJ2Qy9Ca0I7QXpFeXBkeEI7QWdIdm5kSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FoSHluZE47QWdIdG5kSTtFQUNFO0VBQ0E7RUFDQTtBaEh3bmROO0FnSHJuZEk7RUFDRTtBaEh1bmROO0FnSHBuZEk7RUFDRTtFQUNBO0VBQ0E7QWhIc25kTjtBZ0hubmRJO0VBQ0U7QWhIcW5kTjtBZ0hsbmRJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEhvbmROO0FnSGpuZEk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhIbW5kTjtBZ0gvbWRFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWhIaW5kSjtBZ0gvbWRJO0VBQ0U7RUFDQTtBaEhpbmROO0FnSDltZEk7RUFDRTtFQUNBLG1CdkNsR2tCO0V1Q21HbEI7QWhIZ25kTjtBZ0g3bWRJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWhIK21kTjtBZ0g1bWRJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhIOG1kTjtBZ0gzbWRJO0VBQ0U7RUFDQTtBaEg2bWROO0FnSDFtZEk7RUFDRTtBaEg0bWROO0FnSHptZEk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoSDJtZE47QWdIeG1kSTtFQUNFO0VBQ0E7RUFDQTtBaEgwbWROO0FnSHZtZEk7RUFDRTtBaEh5bWROO0FnSHRtZEk7RUFDRTtFQUNBO0FoSHdtZE47QWdIcm1kSTtFQUNFO0FoSHVtZE47QWdIcG1kSTtFQUNFO0VBQ0E7QWhIc21kTjtBZ0hubWRJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEhxbWROO0FnSGxtZEk7RUFDRTtFQUNBO0VBQ0E7QWhIb21kTjtBZ0hqbWRJO0VBQ0U7QWhIbW1kTjtBZ0hobWRJO0VBQ0U7QWhIa21kTjtBZ0gvbGRJO0VBQ0U7QWhIaW1kTjtBZ0gxbGRJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhINGxkTjtBZ0h6bGRJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEgybGROO0FnSHhsZEk7RUFDRTtBaEgwbGROO0FnSHZsZEk7RUFDRTtFQUNBO0FoSHlsZE47QWdIdGxkSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhId2xkTjtBZ0hybGRJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhIdWxkTjtBZ0hubGRFOztFQUVFO0VBQ0E7QWhIcWxkSjtBZ0hsbGRFO0VBQ0U7QWhIb2xkSjtBZ0hqbGRFO0VBQ0U7QWhIbWxkSjtBZ0hobGRFO0VBQ0U7QWhIa2xkSjtBZ0gva2RFO0VBQ0U7QWhIaWxkSjtBZ0g5a2RFO0VBQ0U7QWhIZ2xkSjtBZ0g3a2RFO0VBQ0U7QWhIK2tkSjtBZ0g1a2RFO0VBQ0U7QWhIOGtkSjtBZ0gza2RFO0VBQ0U7QWhINmtkSjtBZ0gxa2RFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEg0a2RKO0FnSHprZEU7RUFDRTtBaEgya2RKO0FnSHhrZEU7RUFDRTtBaEgwa2RKO0FnSHZrZEU7RUFDRTtBaEh5a2RKO0FnSHRrZEU7RUFDRTtFQUNBO0FoSHdrZEo7QWdIcmtkRTtFQUNFO0VBQ0E7QWhIdWtkSjtBZ0hwa2RFO0VBQ0U7QWhIc2tkSjtBZ0hua2RFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEhxa2RKO0FnSGxrZEU7RUFDRTtFQUNBO0FoSG9rZEo7QWdIamtkRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhIbWtkSjtBZ0gvamRJO0VBQ0U7QWhIaWtkTjtBZ0gvamRNO0VBQ0U7RUFDQTtBaEhpa2RSO0FnSDlqZE07RUFDRTtFQUNBO0VoQ3hoQmlELDBCZ0N5aEIxQjtFaEN2aEI2Qix1QmdDdWhCN0I7RWhDdGhCOEIsc0JnQ3NoQjlCO0VoQ3JoQitCLHFCZ0NxaEIvQjtFaENwaEJrQyxrQmdDb2hCbEM7QWhIb2tkL0I7QWdIbGtkUTtFQUNFO0FoSG9rZFY7QWdIaGtkTTtFQWxCRjtJQW1CSTtFaEhta2ROO0FBQ0Y7QWdIL2pkRTtFQUNFO0FoSGlrZEo7QWdIOWpkRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEhna2RKO0FnSDdqZEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoSCtqZEo7QWdINWpkRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhIOGpkSjs7QWdIempkQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEg0amRGOztBaUhscWVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakhxcWVGO0FpSG5xZUU7RUFDRTtFQUNBO0VwQ0ZBO0VBRUYsWW9DQ21CO0FqSHNxZXJCO0FpSHBxZUk7RUFBUTtFQUFVO0FqSHdxZXRCO0FpSHZxZUk7RUFBUTtBakgwcWVaO0FpSHpxZUk7RUFBUTtFQUFVO0FqSDZxZXRCO0FpSDVxZUk7RUFBUTtBakgrcWVaO0FpSDlxZUk7RUFBUTtFQUFhO0FqSGtyZXpCO0FpSGpyZUk7RUFBUTtBakhvcmVaO0FpSG5yZUk7RUFBUTtFQUFhO0FqSHVyZXpCO0FpSHRyZUk7RUFBUTtBakh5cmVaO0FpSHRyZUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakh3cmVKO0FpSHRyZUk7RUFBVztBakh5cmVmO0FpSHhyZUk7RUFBVztBakgycmVmO0FpSHhyZUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFcENoQ0E7RUFFRixVb0MrQm1CO0FqSDJyZXJCO0FpSHhyZUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFcEMzQ0E7RUFFRixZb0MwQ21CO0VBQ2pCO0FqSDJyZUo7QWlIenJlSTtFQUFTO0FqSDRyZWI7QWlIM3JlSTtFQUFTO0FqSDhyZWI7QWlIN3JlSTtFQUFTO0FqSGdzZWI7QWlIL3JlSTtFQUFTO0FqSGtzZWI7QWlIanNlSTtFQUFTO0FqSG9zZWI7QWlIbnNlSTtFQUFTO0FqSHNzZWI7QWlIcnNlSTtFQUFTO0FqSHdzZWI7QWlIdnNlSTtFQUFTO0FqSDBzZWI7O0FrSHZ3ZUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEgwd2VGO0FrSHh3ZUU7RUFDRTtFQUNBO0VBQ0E7QWxIMHdlSjtBa0h2d2VFO0VBQ0U7RUFDQTtFQUNBO0FsSHl3ZUo7QWtIdHdlRTtFQUNFO0VBQ0E7RUFDQSxXQTdCUztFQThCVCxZQTlCUztFQStCVDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxId3dlSjtBa0h0d2VJO0VBZkY7SUFnQkk7SUFDQTtFbEh5d2VKO0FBQ0Y7QWtIdndlSTtFQUNFO0VBQ0E7RUFDQTtBbEh5d2VOO0FrSHZ3ZU07RUFMRjtJQU1JO0VsSDB3ZU47QUFDRjtBa0h2d2VJO0VBQ0U7QWxIeXdlTjtBa0h2d2VNO0VBSEY7SUFJSTtFbEgwd2VOO0FBQ0Y7QWtIeHdlTTtFQUNFO0FsSDB3ZVI7QWtIdHdlSTtFQUNFO0FsSHd3ZU47QWtIdHdlTTtFQUhGO0lBSUk7RWxIeXdlTjtBQUNGO0FrSHZ3ZU07RUFDRTtBbEh5d2VSO0FrSHB3ZUU7RUFDRTtFQUNBO0VBRUE7RUFDQTtFQUNBO0FsSHF3ZUo7QWtIbndlSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEhxd2VOO0FrSG53ZU07RUFDRTtBbEhxd2VSO0FrSC91ZUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsSGl2ZUo7QWtIL3VlSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsSGl2ZU47QWtIL3VlTTtFQUNFO0FsSGl2ZVI7QWtIOXVlTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEhndmVSO0FrSDl1ZVE7RUFDRTtFQUNBO0VBQ0E7QWxIZ3ZlVjtBa0g3dWVRO0VBQ0U7QWxIK3VlVjtBa0gxdWVJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEg0dWVOO0FrSDF1ZU07RUFDRTtBbEg0dWVSO0FrSHZ1ZUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEh5dWVKO0FrSHR1ZUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsSHd1ZUo7QWtIcHVlSTtFQUNFO0FsSHN1ZU47O0FrSGp1ZUE7O0VBRUU7RUFDQTtFQUNBO0FsSG91ZUY7O0FtSDM3ZUE7RUFDRTtBbkg4N2VGO0FtSDU3ZUU7RUFDRTtFQUNBO0VBQ0E7QW5IODdlSjtBbUg1N2VJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuSDg3ZU47QW1INTdlTTtFQUNFO0VBQ0E7RUFDQTtBbkg4N2VSO0FtSDU3ZVE7RUFMRjtJQU1JO0lBQ0E7SUFDQTtFbkgrN2VSO0FBQ0Y7QW1INTdlTTtFQUNFO0VBQ0E7QW5IODdlUjtBbUgzN2VNO0VBQ0U7RUFDQTtBbkg2N2VSO0FtSDE3ZU07RUFDRTtFQUNBO0VBQ0E7QW5INDdlUjtBbUh2N2VFO0VBRUU7QW5IdzdlSjtBbUhyN2VFO0VBQ0U7QW5IdTdlSjtBbUhwN2VFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkhzN2VKO0FtSHA3ZUk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5IczdlTjtBbUhwN2VNO0VBUkY7SUFTSTtJQUNBO0VuSHU3ZU47QUFDRjtBbUhyN2VNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsYzFDdEVRO0UwQ3VFUjtBbkh1N2VSO0FtSHI3ZVE7RUFWRjtJQVdJO0lBQ0E7SUFDQTtFbkh3N2VSO0FBQ0Y7QW1IdDdlUTtFQUNFO0FuSHc3ZVY7QW1IcjdlUTtFQUNFO0FuSHU3ZVY7QW1IbjdlTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkhxN2VSO0FtSGw3ZU07RUFDRTtFQUNBO0FuSG83ZVI7QW1IbDdlUTtFQUNFO0FuSG83ZVY7QW1IaDdlTTtFQUNFO0FuSGs3ZVI7QW1ILzZlTTtFQUNFO0FuSGk3ZVI7QW1ILzZlUTtFQUNFO0FuSGk3ZVY7QW1INzZlTTtFQUNFO0VBQ0E7QW5IKzZlUjtBbUg1NmVNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkg4NmVSO0FtSDU2ZVE7RUFWRjtJQVdJO0VuSCs2ZVI7QUFDRjtBbUg3NmVRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkgrNmVWO0FtSDc2ZVU7RUFDRTtBbkgrNmVaO0FtSDM2ZVE7RUExQkY7SUEyQkk7RW5IODZlUjtFbUg1NmVRO0lBQ0UscUIxQ25LVztFekVpbGZyQjtBQUNGO0FtSHo2ZUk7RUFDRTtFQUNBO0VBQ0E7QW5IMjZlTjtBbUh6NmVNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkgyNmVSO0FtSHg2ZU07RUFiRjtJQWNJO0VuSDI2ZU47RW1IejZlTTtJQUNFO0VuSDI2ZVI7RW1IeDZlTTtJQUNFO0lBQ0E7SUFDQTtFbkgwNmVSO0VtSHY2ZU07SUFDRTtJQUNBO0VuSHk2ZVI7RW1IdDZlTTtJQUVFO0lBQ0E7RW5IdTZlUjtBQUNGO0FtSGw2ZU07RUFDRTtBbkhvNmVSO0FtSGo2ZU07RUFDRTtBbkhtNmVSO0FtSDk1ZU07RUFDRTtBbkhnNmVSO0FtSDM1ZU07RUFDRTtFQUNBO0FuSDY1ZVI7QW1IMzVlUTtFQUNFLHFCMUN6RVk7QXpFcytldEI7QW1IMTVlUTtFQUNFO0FuSDQ1ZVY7QW1IdjVlSTtFQUNFO0FuSHk1ZU47QW1IdjVlTTtFQVNFLHlCMUM3Rm1CO0UwQzhGbkIscUIxQzdGZTtFMEM4RmYsYzFDN0ZRO0F6RTgrZWhCO0FtSDM1ZVE7RUFDRTtBbkg2NWVWO0FtSDE1ZVE7RUFDRSxjMUN4Rk07QXpFby9laEI7QW1IcDVlVTtFQUNFO0VBQ0E7RUFDQSxjMUNuR0k7QXpFeS9laEI7QW1IcDVlWTtFQUNFO0FuSHM1ZWQ7QW1IbjVlWTtFbkNsUTZDLGlEQytCN0M7RUQ3QmdELDhDQzZCaEQ7RUQxQnFELHlDQzBCckQ7QWpGMm5mWjtBbUhoNWVJO0VBQ0U7QW5IazVlTjtBbUhoNWVNO0VBU0UseUIxQzVIa0I7RTBDNkhsQixxQjFDNUhjO0UwQzZIZCxjMUM1SE87QXpFc2dmZjtBbUhwNWVRO0VBQ0U7QW5IczVlVjtBbUhuNWVRO0VBQ0UsYzFDdkhLO0F6RTRnZmY7QW1INzRlVTtFQUNFO0VBQ0E7RUFDQSxjMUNsSUc7QXpFaWhmZjtBbUg3NGVZO0VBQ0U7QW5IKzRlZDtBbUg1NGVZO0VuQ3BTNkMsaURDK0I3QztFRDdCZ0QsOENDNkJoRDtFRDFCcUQseUNDMEJyRDtBakZzcGZaO0FtSHo0ZUk7RUFDRTtBbkgyNGVOO0FtSHo0ZU07RUFTRSx5QjFDM0ptQjtFMEM0Sm5CLHFCMUMzSmU7RTBDNEpmLGMxQzNKUTtBekU4aGZoQjtBbUg3NGVRO0VBQ0U7QW5IKzRlVjtBbUg1NGVRO0VBQ0UsYzFDdEpNO0F6RW9pZmhCO0FtSHQ0ZVU7RUFDRTtFQUNBO0VBQ0EsYzFDaktJO0F6RXlpZmhCO0FtSHQ0ZVk7RUFDRTtBbkh3NGVkO0FtSHI0ZVk7RW5DdFU2QyxpREMrQjdDO0VEN0JnRCw4Q0M2QmhEO0VEMUJxRCx5Q0MwQnJEO0FqRmlyZlo7QW1IajRlTTtFQUNFO0VBQ0E7QW5IbTRlUjs7QW9IL3RmQTtFQUNFO0VwQ1V1RCw4QktEbEQ7RUxHcUQsMkJLSHJEO0VMTTBELHNCS04xRDtFK0JQTDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEhvdWZGO0FvSGp1Zkk7RUFFRTtFcENIbUQsOEJLRGxEO0VMR3FELDJCS0hyRDtFTE0wRCxzQktOMUQ7RStCTUQ7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxXM0NwQmU7RTJDcUJmO0VBQ0E7RUFDQTtBcEhvdWZOO0FvSGx1Zk07RUFDRTtBcEhvdWZSO0FvSC90Zk07RUNsQ0YseUJEbUNtRDtFQ2xDbkQsWTVDRFk7RTRDSVY7RUFDQSx5QjVDTVU7QXpFNHZmaEI7QW9IL3RmTTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0FwSGd1ZlI7QW9IMXRmUTtFQUNFO0VBQ0EsVzNDbERXO0UyQ21EWDtBcEg0dGZWO0FvSHh0ZlU7RUMxRE4seUJENERnRjtFQzNEaEYsVzVDRWlCO0U0Q0NmO0VBQ0EsNEJEdURxQztBcEg0dGYzQztBb0h2dGZVO0VDakVOLHlCRG1FdUQ7RUNsRXZELFk1Q0RZO0U0Q0lWO0VBQ0EseUI1Q01VO0F6RW14ZmhCO0FvSHR0Zk07RUFDRTtBcEh3dGZSO0FvSHJ0Zk07RUFDRTtFQUNBO0FwSHV0ZlI7QW9IbHRmTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBIb3RmUjtBb0gvc2ZRO0VBQ0U7RUFDQTtBcEhpdGZWO0FvSDVzZkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBcEg4c2ZOO0FvSDNzZkk7RUFDRTtFQUNBO0VBQ0E7QXBINnNmTjs7QXNIL3pmQTtFQUNFO0F0SGswZkY7QXNIaDBmRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRIazBmSjtBc0hoMGZJO0VBQ0U7QXRIazBmTjtBc0gvemZJOzs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHlCN0NtSnFCO0U2Q2xKckI7QXRIazBmTjtBc0gvemZJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRIaTBmTjtBc0g5emZJO0VBQ0U7QXRIZzBmTjtBc0g5emZNO0VBQ0U7QXRIZzBmUjtBc0g3emZNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEgremZSO0FzSDd6ZlE7RUFDRTtFQUNBO0VBQ0E7QXRIK3pmVjtBc0g1emZRO0VBQ0U7QXRIOHpmVjtBc0h2emZRO0VBQ0U7QXRIeXpmVjtBc0h0emZRO0VBQ0U7QXRId3pmVjtBc0huemZJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRIcXpmTjtBc0hsemZJO0VBQ0UseUI3Qy9GVTtFNkNnR1Y7RUFDQTtFQUNBLHlCN0NxRXFCO0F6RSt1ZjNCO0FzSGh6Zk07OztFQUVFO0VBQ0EsYzdDekdRO0F6RTQ1ZmhCO0FzSGh6Zk07RUFDRTtBdEhremZSO0FzSDd5Zk07OztFQUVFO0VBQ0E7QXRIZ3pmUjtBc0g3eWZNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXRIK3lmUjtBc0gxeWZFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHlCN0NnQ3VCO0F6RTR3ZjNCO0FzSDF5Zkk7RUFDRTtBdEg0eWZOO0FzSHp5Zkk7O0VBRUU7QXRIMnlmTjtBc0h4eWZJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXRIMHlmTjtBc0hyeWZRO0VBQ0U7QXRIdXlmVjtBc0hweWZRO0VBQ0U7QXRIc3lmVjtBc0hqeWZJO0VBQ0U7QXRIbXlmTjtBc0hoeWZJO0VBQ0UscUI3QzFLVTtBekU0OGZoQjtBc0g5eGZNOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0SGd5ZlI7QXNINXhmTTtFQUNFO0VBQ0E7RUFDQTtBdEg4eGZSO0FzSHh4ZlE7OztFQUVFO0F0SDJ4ZlY7QXNIcnhmRTtFQUNFLGlCN0NuSlU7QXpFMDZmZDtBc0hyeGZJO0VBQ0UsVTdDdEpRO0U2Q3VKUixpQjdDdkpRO0U2Q3dKUixxQjdDeEpRO0F6RSs2ZmQ7QXNIcHhmSTs7RUFFRSxVN0M3SlE7QXpFbTdmZDtBc0hueGZJO0VBQ0UsaUI3Q2pLUTtBekVzN2ZkO0FzSGp4Zk07RUFDRSxVN0N0S007QXpFeTdmZDtBc0gvd2ZJO0VBQ0U7QXRIaXhmTjtBc0g5d2ZJO0VBQ0U7QXRIZ3hmTjs7QXNIM3dmQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRIOHdmRjtBc0gzd2ZJOzs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHlCN0MxRnFCO0U2QzJGckI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEg4d2ZOO0FzSDN3Zkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0SDZ3Zk47QXNIMXdmSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0SDR3Zk47QXNIeHdmTTs7O0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRIMndmUjtBc0h4d2ZNO0VBQ0U7QXRIMHdmUjtBc0hyd2ZNOzs7RUFFRSxjN0MzVFE7QXpFbWtnQmhCO0FzSHJ3Zk07RUFDRTtBdEh1d2ZSO0FzSGx3ZkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0SG93Zko7QXNIbHdmSTs7RUFFRTtFQUNBO0F0SG93Zk47QXNIandmSTtFQUNFO0F0SG13Zk47QXNIaHdmSTtFQUNFO0F0SGt3Zk47QXNIOXZmTTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRIZ3dmUjs7QXNIenZmRTtFQUNFLGlCN0NoVFU7QXpFNGlnQmQ7QXNIMXZmSTtFQUNFLFU3Q25UUTtFNkNvVFIsaUI3Q3BUUTtFNkNxVFIscUI3Q3JUUTtBekVpamdCZDtBc0h6dmZJOzs7RUFFRSxVN0MxVFE7QXpFc2pnQmQ7QXNIenZmSTtFQUNFLGlCN0M5VFE7QXpFeWpnQmQ7QXNIdnZmTTtFQUNFLFU3Q25VTTtBekU0amdCZDtBc0hydmZJO0VBQ0U7QXRIdXZmTjtBc0hwdmZJO0VBQ0U7QXRIc3ZmTjtBc0hsdmZFO0VBQ0UsbUI3Q2hWVTtBekVva2dCZDtBc0hsdmZJO0VBQ0UsWTdDblZRO0U2Q29WUixtQjdDcFZRO0U2Q3FWUix1QjdDclZRO0F6RXlrZ0JkO0FzSGp2Zkk7OztFQUVFLFk3QzFWUTtBekU4a2dCZDtBc0hqdmZJO0VBQ0UsbUI3QzlWUTtBekVpbGdCZDtBc0gvdWZNO0VBQ0UsWTdDbldNO0F6RW9sZ0JkO0FzSDd1Zkk7RUFDRTtBdEgrdWZOO0FzSDV1Zkk7RUFDRTtBdEg4dWZOOztBdUhscWdCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZIb3FnQkY7QXVIanFnQkk7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZIa3FnQk47QXVIaHFnQk07RUFDRTtBdkhrcWdCUjtBdUg3cGdCTTtFRnBDRix5QkVxQ3NEO0VGcEN0RCxjNUNVWTtFNENQVjtFQUNBLHlCRWdDaUM7QXZIa3FnQnZDO0F1SDdwZ0JNO0VGMUNGLHlCRTJDc0Q7RUYxQ3RELGM1Q1VZO0U0Q1BWO0VBQ0EseUJFc0NpQztBdkhrcWdCdkM7QXVIN3BnQk07RUFFRTtFQUNBO0VBQ0E7RUFDQTtBdkg4cGdCUjtBdUh4cGdCUTtFQUNFO0VBQ0E7RUFDQTtBdkgwcGdCVjtBdUh0cGdCVTtFRmxFTix5QkVvRTBEO0VGbkUxRCxjNUNVWTtFNENQVjtFQUNBLHlCRStEcUM7QXZIMHBnQjNDO0F1SHJwZ0JVO0VGekVOLHlCRTJFMEQ7RUYxRTFELGM1Q1VZO0U0Q1BWO0VBQ0EseUJFc0VxQztBdkh5cGdCM0M7QXVIcHBnQk07RUFDRTtBdkhzcGdCUjtBdUhucGdCTTtFQUNFO0VBQ0E7QXZIcXBnQlI7QXVIaHBnQk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2SGtwZ0JSO0F1SDdvZ0JRO0VBQ0U7RUFDQTtBdkgrb2dCVjtBdUgxb2dCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F2SDRvZ0JOO0F1SHpvZ0JJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXZIMm9nQk47O0F3SHh3Z0JBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEgyd2dCRjs7QXlIanhnQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpIb3hnQkY7QXlIbHhnQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0U3Q3NEMEU7RUFDQTtFQUNBO0VBQ0E7RUFFQSxzRUFUbkU7QTVFdXVnQlg7O0EwSG55Z0JBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFdBVE07RUFVTixZQVZNO0VBV04saUJBWE07RUFZTjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExSHN5Z0JEO0EwSHB5Z0JDO0VBQ0c7RTFDUHFELDRDQytCN0M7RUQ3QmdELHlDQzZCaEQ7RUQxQnFELG9DQzBCckQ7QWpGaXhnQlo7QTBIcnlnQkM7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0U7QTFIdXlnQko7QTBIbnlnQkU7RUFDQztBMUhxeWdCSDtBMEhqeWdCQztFQUNDO0ExSG15Z0JGO0EwSGp5Z0JFO0VBQ0M7QTFIbXlnQkg7O0EySDEwZ0JBO0VBQ0U7QTNINjBnQkY7QTJIMzBnQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBM0g2MGdCSjtBMkgzMGdCSTtFQUNFLFdBYmlCO0VBY2pCLFlBYmtCO0EzSDAxZ0J4QjtBMkgzMGdCTTtFQUFPO0VBQWtDO0VBQWtDO0EzSGcxZ0JqRjtBMkgvMGdCTTtFQUFPO0VBQWtDO0VBQW1DO0EzSG8xZ0JsRjtBMkhuMWdCTTtFQUFPO0VBQXFDO0VBQW1DO0EzSHcxZ0JyRjtBMkh2MWdCTTtFQUFPO0VBQXFDO0VBQWtDO0EzSDQxZ0JwRjtBMkh4MWdCTTtFQUNFLFlBdkJnQjtFQXdCaEI7QTNIMDFnQlI7QTJIeDFnQlE7RUFDRTtFQUFrQztBM0gyMWdCNUM7QTJIeDFnQlE7RUFDRTtBM0gwMWdCVjtBMkh2MWdCUTtFQUNFO0EzSHkxZ0JWO0EySHIxZ0JNO0VBQ0UsV0F6Q2U7RUEwQ2Y7QTNIdTFnQlI7QTJIcjFnQlE7RUFDRTtFQUFrQztBM0h3MWdCNUM7QTJIcjFnQlE7RUFDRTtBM0h1MWdCVjtBMkhwMWdCUTtFQUNFO0EzSHMxZ0JWOztBNEg3NGdCQTtFQUNFO0VBQ0E7RUFDQTtFQUVBO0E1SCs0Z0JGO0E0SDc0Z0JFO0VBQ0U7QTVIKzRnQko7QTRINzRnQkk7RUFDRTtFQUNBO0E1SCs0Z0JOO0E0SDU0Z0JJO0VBQ0U7QTVIODRnQk47QTRIMzRnQlE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUg2NGdCVjtBNEgzNGdCVTtFQUNFO0E1SDY0Z0JaOztBNkh6NmdCRTtFQUNFO0E3SDQ2Z0JKOztBOEg1NmdCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E5SCs2Z0JGO0E4SDc2Z0JFO0VBQ0U7RUFDQTtBOUgrNmdCSjtBOEg3NmdCSTtFQUNFO0VBQ0EsV0FkSztFQWVMLFlBZks7RUFnQkw7RUFDQTtBOUgrNmdCTjtBOEg3NmdCTTtFQUNFO0E5SCs2Z0JSOztBOEh6NmdCQTtFQUNFO0E5SDQ2Z0JGO0E4SDE2Z0JFO0VBQ0U7RUFDQTtFQUNBO0E5SDQ2Z0JKO0E4SDE2Z0JJO0VBQ0U7RUFDQTtBOUg0NmdCTjtBOEgxNmdCTTtFQUNFO0E5SDQ2Z0JSO0E4SHY2Z0JFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTlIeTZnQko7QThIdjZnQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBOUh5NmdCTjtBOEh2NmdCTTtFQUNFO0VBQ0E7QTlIeTZnQlI7O0ErSDU5Z0JBO0VBQ0U7RS9DTXVELDhCS0RsRDtFTEdxRCwyQktIckQ7RUxNMEQsc0JLTjFEO0UwQ0hMO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsV3REUm1CO0VzRFNuQjtFQUNBO0VBQ0E7QS9IaStnQkY7QStILzlnQkU7RS9DTHVELDhCS0RsRDtFTEdxRCwyQktIckQ7RUxNMEQsc0JLTjFEO0UwQ1FILHlCdERHYztBekVnK2dCbEI7QStIaitnQkk7RUFDRTtBL0htK2dCTjtBK0hqK2dCTTtFQUNFO0EvSG0rZ0JSO0ErSGorZ0JRO0VBQ0U7RUFDQTtBL0htK2dCVjtBK0g1OWdCUTtFQUNFO0VBQ0E7QS9IODlnQlY7QStIMzlnQlE7RUFDRTtFQUNBO0EvSDY5Z0JWO0ErSDM5Z0JVO0VBQ0U7RUFDQTtFQUNBO0EvSDY5Z0JaO0ErSDE5Z0JVO0VBQ0U7QS9INDlnQlo7QStIejlnQlU7RUFDRTtBL0gyOWdCWjtBK0h4OWdCVTtFQUNFO0EvSDA5Z0JaO0ErSHY5Z0JVO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFbEQ3RFI7RUFFRixVa0Q0RDJCO0VBQ2pCO0VBQ0E7QS9IMDlnQlo7QStIdjlnQlU7RUFDRTtFQUNBO0EvSHk5Z0JaO0ErSHY5Z0JZO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0h5OWdCZDtBK0h0OWdCWTtFQUNFO0EvSHc5Z0JkO0ErSHA5Z0JjO0VBQ0U7RUFDQTtBL0hzOWdCaEI7QStIbDlnQlk7RUFDRTtFQUNBO0VBQ0E7QS9IbzlnQmQ7QStILzhnQlE7RUFDRTtFQUNBO0EvSGk5Z0JWO0ErSDk4Z0JZO0VBQ0U7QS9IZzlnQmQ7QStIeDhnQkU7RUFDRTtFQUNBO0VBQ0E7QS9IMDhnQko7QStIeDhnQkk7RUFDRTtBL0gwOGdCTjtBK0h2OGdCSTtFQUNFO0VBQ0E7QS9IeThnQk47QStIdjhnQk07RUFDRTtFQUNBO0VBQ0E7QS9IeThnQlI7QStIcjhnQkk7RUFDRTtFQUNBO0EvSHU4Z0JOO0ErSHA4Z0JJO0VBQ0U7QS9IczhnQk47QStIbjhnQkk7RUFDRTtBL0hxOGdCTjs7QStILzdnQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9IazhnQko7QStILzdnQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBL0hpOGdCSjs7QStINzdnQkE7RUFDRTtBL0hnOGdCRjs7QWdJNW1oQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBaEkrbWhCRjtBZ0k3bWhCRTtFQUNFO0VBQ0E7QWhJK21oQko7QWdJNW1oQkU7RUFDRTtFaERKcUQsMEJnRFYxQztFaERZNkMsdUJnRFo3QztFaERhOEMsc0JnRGI5QztFaERjK0MscUJnRGQvQztFaERla0Qsa0JnRGZsRDtFQzBDbUM7RUFDRztFQUNFO0VBQ0csNEJBSjNDO0VqRC9CMEMsaUNpRHVEM0M7RWpEckQ4Qyw4QmlEcUQ5QztFakRuRGdELDRCaURtRGhEO0VqRGxEbUQseUJpRGtEbkQ7RXBENURWO0VBRUYsVW1EV21CO0FoSXluaEJyQjtBZ0l2bmhCSTtFQUNFLHNCQXZCSTtBaElncGhCVjtBZ0l2bmhCTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VoRGpCaUQsMEJnRFYxQztFaERZNkMsdUJnRFo3QztFaERhOEMsc0JnRGI5QztFaERjK0MscUJnRGQvQztFaERla0Qsa0JnRGZsRDtBaEl5cGhCZjtBZ0kzbmhCUTtFQUNFO0FoSTZuaEJWO0FnSXpuaEJNO0VuRDlCRjtFQUVGLFltRDZCdUI7QWhJNG5oQnpCO0FnSXpuaEJNO0VBQ0U7QWhJMm5oQlI7QWdJdm5oQkk7RUFDRTtFQUNBO0VBQ0EsWUFoRFU7RUFpRFY7QWhJeW5oQk47QWdJdm5oQk07RUFDRTtBaEl5bmhCUjtBZ0lybmhCSTtFQUNFO0VBQ0E7RUFDQSxXQTNEVTtFQTREVjtBaEl1bmhCTjtBZ0lybmhCTTtFQUNFO0FoSXVuaEJSO0FnSWpuaEJJO0VBQ0U7RW5EaEVGO0VBRUYsWW1EK0RxQjtBaElvbmhCdkI7QWdJN21oQlE7RUFDRTtBaEkrbWhCVjtBZ0l0bWhCUTtFQUNFO0FoSXdtaEJWOztBa0k1cmhCQTtFQUNFO0VsREt1RCw4QktEbEQ7RUxHcUQsMkJLSHJEO0VMTTBELHNCS04xRDtFNkNGTDtFQUNBO0VBQ0E7RUFDQTtFdER1RDRFO0VBQ0E7RUFDQTtFQUNBO0VBRUEsMkRBVG5FO0VzRGpEVDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxJcXNoQkY7QWtJbnNoQkU7RXREOEM0RTtFQUNBO0VBQ0E7RUFDQTtFQUVBLDJEQVRuRTtFSW5EOEMsa0RDK0I3QztFRDdCZ0QsK0NDNkJoRDtFRDFCcUQsMENDMEJyRDtBakZ1cmhCWjtBa0l4c2hCRTtFQUNFLFd6RHZCaUI7RXlEd0JqQjtBbEkwc2hCSjtBa0l4c2hCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsSTBzaEJOO0FrSXZzaEJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEl5c2hCTjs7QWtJbnNoQkU7RWxEdkN1RCw4QktEbEQ7RUxHcUQsMkJLSHJEO0VMTTBELHNCS04xRDtFNkMwQ0g7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFbEQ3Q3FELGtEQytCN0M7RUQ3QmdELCtDQzZCaEQ7RUQxQnFELDBDQzBCckQ7QWpGeXRoQlo7QWtJeHNoQkk7RUFDRTtFQUNBO0FsSTBzaEJOO0FrSXRzaEJNO0VBQ0U7RUFDQTtBbEl3c2hCUjtBa0l0c2hCUTtFQUNFO0FsSXdzaEJWO0FrSXRzaEJVO0VBRUUsY3pEL0RJO0F6RXN3aEJoQjtBa0lwc2hCVTtFQUNFO0FsSXNzaEJaO0FrSW5zaEJVO0VBRUU7RUFDQTtFQUNBO0FsSW9zaEJaO0FrSWhzaEJZOztFQUVFLGN6RGhGRTtBekVreGhCaEI7QWtJOXJoQlU7RUFDRTtFQUNBO0VBQ0E7QWxJZ3NoQlo7QWtJN3JoQmM7RUFDRTtBbEkrcmhCaEI7QWtJeHJoQmM7RUFDRTtBbEkwcmhCaEI7QWtJbHJoQkk7RUFDRTtFQUNBO0FsSW9yaEJOO0FrSWxyaEJNO0VBQ0U7RUFDQTtFQUNBO0FsSW9yaEJSO0FrSWxyaEJRO0VBQ0U7RWxEckgrQyw4QktEbEQ7RUxHcUQsMkJLSHJEO0VMTTBELHNCS04xRDtFNkN3SEc7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbElzcmhCVjtBa0lucmhCUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxJcXJoQlY7QWtJaHJoQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxJa3JoQk47QWtJL3FoQkk7RUFDRTtBbElpcmhCTjs7QWtJNXFoQkE7RUFDRTtFQUNBO0FsSStxaEJGO0FrSTdxaEJFO0VBQ0U7RUFDQTtFQUNBO0FsSStxaEJKO0FrSTdxaEJJO0VBQ0U7QWxJK3FoQk47QWtJNXFoQkk7RUFDRTtFQUNBO0FsSThxaEJOO0FrSTFxaEJFO0VBQ0U7RUFDQTtBbEk0cWhCSjs7QW1JeDJoQkk7RUFDRTtBbkkyMmhCTjtBbUl4MmhCSTtFQUNFO0FuSTAyaEJOO0FtSXIyaEJJO0VBQ0U7QW5JdTJoQk47QW1JbjJoQkU7RUFDRTtBbklxMmhCSjtBbUlsMmhCRTtFQUNFO0VBQ0E7QW5JbzJoQko7QW1JbDJoQkk7RWR4QkEseUJjeUJxRDtFZHhCckQsYzVDVVk7RTRDUFY7RUFDQSx5QmNvQitCO0FuSXUyaEJyQzs7QW9JMzNoQkE7RUFDRSxnQkFQWTtFQVFaO0VBQ0E7RUFDQSxzQkFYYTtBcEl5NGhCZjtBb0k1M2hCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxhQXBCVTtFQXFCVixjQXJCVTtFQXNCVjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwSTgzaEJKO0FvSTUzaEJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0EseUJBNUJTO0FwSTA1aEJmO0FvSTEzaEJNO0VBQ0UsbUIzRHZCUTtBekVtNWhCaEI7QW9JeDNoQkk7RUFDRSxxQjNENUJVO0F6RXM1aEJoQjtBb0l0M2hCRTtFQUNFLGVBOUNXO0FwSXM2aEJmO0FvSXQzaEJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEl3M2hCTjtBb0lwM2hCRTtFQUNFLGNBMURXO0VBMkRYO0FwSXMzaEJKO0FvSXAzaEJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcElzM2hCTjs7QXFJejdoQkE7RUFDRTtBckk0N2hCRjs7QXFJejdoQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBckk0N2hCRjs7QXFJejdoQkE7RUFDRTtBckk0N2hCRjs7QXFJejdoQkE7RUFDRTtFQUNBO0VBQ0E7QXJJNDdoQkY7O0FzSTE4aEJBO0VBQ0U7QXRJNjhoQkY7QXNJMzhoQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBdEk2OGhCSjtBc0kxOGhCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxzQkFsQmdCO0VBbUJoQjtBdEk0OGhCSjtBc0kxOGhCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEk0OGhCTjtBc0kxOGhCTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F0STQ4aEJSO0FzSTE4aEJRO0VBQ0U7QXRJNDhoQlY7QXNJejhoQlE7RUFDRTtBdEkyOGhCVjtBc0l2OGhCTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F0SXk4aEJSO0FzSXY4aEJRO0VBQ0U7QXRJeThoQlY7QXNJcjhoQk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtBdEl1OGhCUjtBc0lyOGhCUTtFQUNFO0F0SXU4aEJWO0FzSWw4aEJJO0VBQ0U7QXRJbzhoQk47QXNJajhoQkk7RUFDRTtBdEltOGhCTjtBc0k5N2hCUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F0SWc4aEJWOztBdUlqaGlCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZJb2hpQkY7QXVJbGhpQkU7RUFDRTtBdklvaGlCSjtBdUlqaGlCRTtFQUNFO0VBQ0E7QXZJbWhpQko7O0F3SXhpaUJBO0FBS0k7RUFDRTtFcENNSjtHcEdraWlCQSxPcUdyaGlCRTtFbUNqQkU7RUFDQTtFQUNBO0F4SXdpaUJOO0F3SXJpaUJRO0VDVk4sdUJEV2tCO0F4SXVpaUJwQjtBeUloamlCRTtFQUNFO0VBQ0E7RUFDQSx1QmhFTFk7QXpFdWppQmhCO0F5SWhqaUJJO0VBQ0UsdUJER2M7RUNGZCxXREdnQjtFckRxQ3BCLHFDQU5jO0FuRmloaUJoQjtBeUkvaWlCSTtFQUNFO0VBQ0EsWURKYztFckRzQ2xCLGlCQU5jO0FuRnNoaUJoQjtBd0l2amlCUTtFQ1ZOLHlCRFdrQjtBeEl5amlCcEI7QXlJbGtpQkU7RUFDRTtFQUNBO0VBQ0EsdUJoRUxZO0F6RXlraUJoQjtBeUlsa2lCSTtFQUNFLHlCREdjO0VDRmQsWURHZ0I7RXJEcUNwQixxQ0FOYztBbkZtaWlCaEI7QXlJamtpQkk7RUFDRTtFQUNBLGNESmM7RXJEc0NsQixpQkFOYztBbkZ3aWlCaEI7QXdJemtpQlE7RUNWTix5QkRXa0I7QXhJMmtpQnBCO0F5SXBsaUJFO0VBQ0U7RUFDQTtFQUNBLHVCaEVMWTtBekUybGlCaEI7QXlJcGxpQkk7RUFDRSx5QkRHYztFQ0ZkLFdER2dCO0VyRHFDcEIscUNBTmM7QW5GcWppQmhCO0F5SW5saUJJO0VBQ0U7RUFDQSxjREpjO0VyRHNDbEIsaUJBTmM7QW5GMGppQmhCO0F3STNsaUJRO0VDVk4sc0JEV2tCO0F4STZsaUJwQjtBeUl0bWlCRTtFQUNFO0VBQ0E7RUFDQSx1QmhFTFk7QXpFNm1pQmhCO0F5SXRtaUJJO0VBQ0Usc0JER2M7RUNGZCxXREdnQjtFckRxQ3BCLHFDQU5jO0FuRnVraUJoQjtBeUlybWlCSTtFQUNFO0VBQ0EsV0RKYztFckRzQ2xCLGlCQU5jO0FuRjRraUJoQjtBd0k3bWlCUTtFQ1ZOLHlCRFdrQjtBeEkrbWlCcEI7QXlJeG5pQkU7RUFDRTtFQUNBO0VBQ0EsdUJoRUxZO0F6RStuaUJoQjtBeUl4bmlCSTtFQUNFLHlCREdjO0VDRmQsV0RHZ0I7RXJEcUNwQixxQ0FOYztBbkZ5bGlCaEI7QXlJdm5pQkk7RUFDRTtFQUNBLGNESmM7RXJEc0NsQixpQkFOYztBbkY4bGlCaEI7QXdJL25pQlE7RUNWTixzQkRXa0I7QXhJaW9pQnBCO0F5STFvaUJFO0VBQ0U7RUFDQTtFQUNBLHVCaEVMWTtBekVpcGlCaEI7QXlJMW9pQkk7RUFDRSxzQkRHYztFQ0ZkLFlER2dCO0VyRHFDcEIscUNBTmM7QW5GMm1pQmhCO0F5SXpvaUJJO0VBQ0U7RUFDQSxXREpjO0VyRHNDbEIsaUJBTmM7QW5GZ25pQmhCO0F3SWpwaUJRO0VDVk4seUJEV2tCO0F4SW1waUJwQjtBeUk1cGlCRTtFQUNFO0VBQ0E7RUFDQSx1QmhFTFk7QXpFbXFpQmhCO0F5STVwaUJJO0VBQ0UseUJER2M7RUNGZCxZREdnQjtFckRxQ3BCLHFDQU5jO0FuRjZuaUJoQjtBeUkzcGlCSTtFQUNFO0VBQ0EsY0RKYztFckRzQ2xCLGlCQU5jO0FuRmtvaUJoQjtBd0lucWlCUTtFQ1ZOLHlCRFdrQjtBeElxcWlCcEI7QXlJOXFpQkU7RUFDRTtFQUNBO0VBQ0EsdUJoRUxZO0F6RXFyaUJoQjtBeUk5cWlCSTtFQUNFLHlCREdjO0VDRmQsWURHZ0I7RXJEcUNwQixxQ0FOYztBbkYrb2lCaEI7QXlJN3FpQkk7RUFDRTtFQUNBLGNESmM7RXJEc0NsQixpQkFOYztBbkZvcGlCaEI7QXdJcnJpQlE7RUNWTix5QkRXa0I7QXhJdXJpQnBCO0F5SWhzaUJFO0VBQ0U7RUFDQTtFQUNBLHVCaEVMWTtBekV1c2lCaEI7QXlJaHNpQkk7RUFDRSx5QkRHYztFQ0ZkLFlER2dCO0VyRHFDcEIscUNBTmM7QW5GaXFpQmhCO0F5SS9yaUJJO0VBQ0U7RUFDQSxjREpjO0VyRHNDbEIsaUJBTmM7QW5Gc3FpQmhCO0F3SXZzaUJRO0VDVk4seUJEV2tCO0F4SXlzaUJwQjtBeUlsdGlCRTtFQUNFO0VBQ0E7RUFDQSx1QmhFTFk7QXpFeXRpQmhCO0F5SWx0aUJJO0VBQ0UseUJER2M7RUNGZCxZREdnQjtFckRxQ3BCLHFDQU5jO0FuRm1yaUJoQjtBeUlqdGlCSTtFQUNFO0VBQ0EsY0RKYztFckRzQ2xCLGlCQU5jO0FuRndyaUJoQjtBd0l6dGlCUTtFQ1ZOLHlCRFdrQjtBeEkydGlCcEI7QXlJcHVpQkU7RUFDRTtFQUNBO0VBQ0EsdUJoRUxZO0F6RTJ1aUJoQjtBeUlwdWlCSTtFQUNFLHlCREdjO0VDRmQsWURHZ0I7RXJEcUNwQixxQ0FOYztBbkZxc2lCaEI7QXlJbnVpQkk7RUFDRTtFQUNBLGNESmM7RXJEc0NsQixpQkFOYztBbkYwc2lCaEI7QXdJM3VpQlE7RUNWTix5QkRXa0I7QXhJNnVpQnBCO0F5SXR2aUJFO0VBQ0U7RUFDQTtFQUNBLHVCaEVMWTtBekU2dmlCaEI7QXlJdHZpQkk7RUFDRSx5QkRHYztFQ0ZkLFdER2dCO0VyRHFDcEIscUNBTmM7QW5GdXRpQmhCO0F5SXJ2aUJJO0VBQ0U7RUFDQTtFdERrQ0osaUJBTmM7QW5GNHRpQmhCO0F3SWp2aUJNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXhJbXZpQlI7QXdJanZpQlE7RUFDRTtFQUNBO0VBQ0E7QXhJbXZpQlY7QXdJN3VpQk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4SSt1aUJSO0F3STV1aUJVO0VBR0UsbUJBRlU7QXhJOHVpQnRCO0F3SS91aUJVO0VBR0UscUJBRlU7QXhJaXZpQnRCO0F3SWx2aUJVO0VBR0UscUJBRlU7QXhJb3ZpQnRCO0F3SXJ2aUJVO0VBR0Usa0JBRlU7QXhJdXZpQnRCO0F3SXh2aUJVO0VBR0UscUJBRlU7QXhJMHZpQnRCO0F3STN2aUJVO0VBR0Usa0JBRlU7QXhJNnZpQnRCO0F3STl2aUJVO0VBR0UscUJBRlU7QXhJZ3dpQnRCO0F3SWp3aUJVO0VBR0UscUJBRlU7QXhJbXdpQnRCO0F3SXB3aUJVO0VBR0UscUJBRlU7QXhJc3dpQnRCO0F3SXZ3aUJVO0VBR0UscUJBRlU7QXhJeXdpQnRCO0F3STF3aUJVO0VBR0UscUJBRlU7QXhJNHdpQnRCO0F3STd3aUJVO0VBR0UscUJBRlU7QXhJK3dpQnRCO0F3SXR3aUJFO0VBQ0U7QXhJd3dpQko7QXdJdHdpQkk7RUFDRTtFcENsREo7R3BHMnppQkEsT3FHOXlpQkU7RW1DdUNFO0VBQ0E7RUFDQTtBeEl5d2lCTjtBeUlsemlCRTtFQUNFO0VBQ0E7RUFDQSx1QmhFekJZO0VnRTBCWjtBeklvemlCSjtBeUlsemlCSTtFQUNFO0VBQ0EsdUJEcUNjO0VDcENkLFdEcUNnQjtFckRuQnBCLHFDQU5jO0FuRnl5aUJoQjtBeUlqemlCSTtFQUNFO0VBQ0EsWUQ4QmM7RXJEbEJsQixpQkFOYztBbkY4eWlCaEI7QXlJbjBpQkU7RUFDRTtFQUNBO0VBQ0EsdUJoRXpCWTtFZ0UwQlo7QXpJcTBpQko7QXlJbjBpQkk7RUFDRTtFQUNBLHlCRHFDYztFQ3BDZCxZRHFDZ0I7RXJEbkJwQixxQ0FOYztBbkYwemlCaEI7QXlJbDBpQkk7RUFDRTtFQUNBLGNEOEJjO0VyRGxCbEIsaUJBTmM7QW5GK3ppQmhCO0F5SXAxaUJFO0VBQ0U7RUFDQTtFQUNBLHVCaEV6Qlk7RWdFMEJaO0F6SXMxaUJKO0F5SXAxaUJJO0VBQ0U7RUFDQSx5QkRxQ2M7RUNwQ2QsV0RxQ2dCO0VyRG5CcEIscUNBTmM7QW5GMjBpQmhCO0F5SW4xaUJJO0VBQ0U7RUFDQSxjRDhCYztFckRsQmxCLGlCQU5jO0FuRmcxaUJoQjtBeUlyMmlCRTtFQUNFO0VBQ0E7RUFDQSx1QmhFekJZO0VnRTBCWjtBekl1MmlCSjtBeUlyMmlCSTtFQUNFO0VBQ0Esc0JEcUNjO0VDcENkLFdEcUNnQjtFckRuQnBCLHFDQU5jO0FuRjQxaUJoQjtBeUlwMmlCSTtFQUNFO0VBQ0EsV0Q4QmM7RXJEbEJsQixpQkFOYztBbkZpMmlCaEI7QXlJdDNpQkU7RUFDRTtFQUNBO0VBQ0EsdUJoRXpCWTtFZ0UwQlo7QXpJdzNpQko7QXlJdDNpQkk7RUFDRTtFQUNBLHlCRHFDYztFQ3BDZCxXRHFDZ0I7RXJEbkJwQixxQ0FOYztBbkY2MmlCaEI7QXlJcjNpQkk7RUFDRTtFQUNBLGNEOEJjO0VyRGxCbEIsaUJBTmM7QW5GazNpQmhCO0F5SXY0aUJFO0VBQ0U7RUFDQTtFQUNBLHVCaEV6Qlk7RWdFMEJaO0F6SXk0aUJKO0F5SXY0aUJJO0VBQ0U7RUFDQSxzQkRxQ2M7RUNwQ2QsWURxQ2dCO0VyRG5CcEIscUNBTmM7QW5GODNpQmhCO0F5SXQ0aUJJO0VBQ0U7RUFDQSxXRDhCYztFckRsQmxCLGlCQU5jO0FuRm00aUJoQjtBeUl4NWlCRTtFQUNFO0VBQ0E7RUFDQSx1QmhFekJZO0VnRTBCWjtBekkwNWlCSjtBeUl4NWlCSTtFQUNFO0VBQ0EseUJEcUNjO0VDcENkLFlEcUNnQjtFckRuQnBCLHFDQU5jO0FuRis0aUJoQjtBeUl2NWlCSTtFQUNFO0VBQ0EsY0Q4QmM7RXJEbEJsQixpQkFOYztBbkZvNWlCaEI7QXlJejZpQkU7RUFDRTtFQUNBO0VBQ0EsdUJoRXpCWTtFZ0UwQlo7QXpJMjZpQko7QXlJejZpQkk7RUFDRTtFQUNBLHlCRHFDYztFQ3BDZCxZRHFDZ0I7RXJEbkJwQixxQ0FOYztBbkZnNmlCaEI7QXlJeDZpQkk7RUFDRTtFQUNBLGNEOEJjO0VyRGxCbEIsaUJBTmM7QW5GcTZpQmhCO0F5STE3aUJFO0VBQ0U7RUFDQTtFQUNBLHVCaEV6Qlk7RWdFMEJaO0F6STQ3aUJKO0F5STE3aUJJO0VBQ0U7RUFDQSx5QkRxQ2M7RUNwQ2QsWURxQ2dCO0VyRG5CcEIscUNBTmM7QW5GaTdpQmhCO0F5SXo3aUJJO0VBQ0U7RUFDQSxjRDhCYztFckRsQmxCLGlCQU5jO0FuRnM3aUJoQjtBeUkzOGlCRTtFQUNFO0VBQ0E7RUFDQSx1QmhFekJZO0VnRTBCWjtBekk2OGlCSjtBeUkzOGlCSTtFQUNFO0VBQ0EseUJEcUNjO0VDcENkLFlEcUNnQjtFckRuQnBCLHFDQU5jO0FuRms4aUJoQjtBeUkxOGlCSTtFQUNFO0VBQ0EsY0Q4QmM7RXJEbEJsQixpQkFOYztBbkZ1OGlCaEI7QXlJNTlpQkU7RUFDRTtFQUNBO0VBQ0EsdUJoRXpCWTtFZ0UwQlo7QXpJODlpQko7QXlJNTlpQkk7RUFDRTtFQUNBLHlCRHFDYztFQ3BDZCxZRHFDZ0I7RXJEbkJwQixxQ0FOYztBbkZtOWlCaEI7QXlJMzlpQkk7RUFDRTtFQUNBLGNEOEJjO0VyRGxCbEIsaUJBTmM7QW5GdzlpQmhCO0F5STcraUJFO0VBQ0U7RUFDQTtFQUNBLHVCaEV6Qlk7RWdFMEJaO0F6SSsraUJKO0F5STcraUJJO0VBQ0U7RUFDQSx5QkRxQ2M7RUNwQ2QsV0RxQ2dCO0VyRG5CcEIscUNBTmM7QW5GbytpQmhCO0F5STUraUJJO0VBQ0U7RUFDQSxjRGtDd0I7RXJEdEI1QixpQkFOYztBbkZ5K2lCaEI7QXdJdDhpQk07RUFDRTtFQUNBO0VBQ0E7QXhJdzhpQlI7QXdJdDhpQlE7RUFDRTtFQUNBO0VBQ0E7QXhJdzhpQlY7QXdJbjhpQkk7RUFDRTtBeElxOGlCTjtBd0lsOGlCSTtFQUNFO0F4SW84aUJOO0F3SWw4aUJNO0VBQ0U7RUFDQTtFQUNBO0F4SW84aUJSO0F3STk3aUJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXhJZzhpQko7QXdJNzdpQk07RUN0RUo7RUFDQSx1QmhFN0NjO0F6RW1qakJoQjtBeUlwZ2pCRTtFQUNFLHVCRG1FYztFQ2xFZCxXRG1FZ0I7RXJEbkVsQixxQ0FOYztBbkY2Z2pCaEI7QXlJbmdqQkU7RUFDRTtFQUNBLFlENERjO0VyRGxFaEIsaUJBTmM7QW5Ga2hqQmhCO0F3STM4aUJNO0VDdEVKO0VBQ0EsdUJoRTdDYztBekVpa2pCaEI7QXlJbGhqQkU7RUFDRSx5QkRtRWM7RUNsRWQsWURtRWdCO0VyRG5FbEIscUNBTmM7QW5GMmhqQmhCO0F5SWpoakJFO0VBQ0U7RUFDQSxjRDREYztFckRsRWhCLGlCQU5jO0FuRmdpakJoQjtBd0l6OWlCTTtFQ3RFSjtFQUNBLHVCaEU3Q2M7QXpFK2tqQmhCO0F5SWhpakJFO0VBQ0UseUJEbUVjO0VDbEVkLFdEbUVnQjtFckRuRWxCLHFDQU5jO0FuRnlpakJoQjtBeUkvaGpCRTtFQUNFO0VBQ0EsY0Q0RGM7RXJEbEVoQixpQkFOYztBbkY4aWpCaEI7QXdJditpQk07RUN0RUo7RUFDQSx1QmhFN0NjO0F6RTZsakJoQjtBeUk5aWpCRTtFQUNFLHNCRG1FYztFQ2xFZCxXRG1FZ0I7RXJEbkVsQixxQ0FOYztBbkZ1ampCaEI7QXlJN2lqQkU7RUFDRTtFQUNBLFdENERjO0VyRGxFaEIsaUJBTmM7QW5GNGpqQmhCO0F3SXIvaUJNO0VDdEVKO0VBQ0EsdUJoRTdDYztBekUybWpCaEI7QXlJNWpqQkU7RUFDRSx5QkRtRWM7RUNsRWQsV0RtRWdCO0VyRG5FbEIscUNBTmM7QW5GcWtqQmhCO0F5STNqakJFO0VBQ0U7RUFDQSxjRDREYztFckRsRWhCLGlCQU5jO0FuRjBrakJoQjtBd0luZ2pCTTtFQ3RFSjtFQUNBLHVCaEU3Q2M7QXpFeW5qQmhCO0F5STFrakJFO0VBQ0Usc0JEbUVjO0VDbEVkLFlEbUVnQjtFckRuRWxCLHFDQU5jO0FuRm1sakJoQjtBeUl6a2pCRTtFQUNFO0VBQ0EsV0Q0RGM7RXJEbEVoQixpQkFOYztBbkZ3bGpCaEI7QXdJamhqQk07RUN0RUo7RUFDQSx1QmhFN0NjO0F6RXVvakJoQjtBeUl4bGpCRTtFQUNFLHlCRG1FYztFQ2xFZCxZRG1FZ0I7RXJEbkVsQixxQ0FOYztBbkZpbWpCaEI7QXlJdmxqQkU7RUFDRTtFQUNBLGNENERjO0VyRGxFaEIsaUJBTmM7QW5Gc21qQmhCO0F3SS9oakJNO0VDdEVKO0VBQ0EsdUJoRTdDYztBekVxcGpCaEI7QXlJdG1qQkU7RUFDRSx5QkRtRWM7RUNsRWQsWURtRWdCO0VyRG5FbEIscUNBTmM7QW5GK21qQmhCO0F5SXJtakJFO0VBQ0U7RUFDQSxjRDREYztFckRsRWhCLGlCQU5jO0FuRm9uakJoQjtBd0k3aWpCTTtFQ3RFSjtFQUNBLHVCaEU3Q2M7QXpFbXFqQmhCO0F5SXBuakJFO0VBQ0UseUJEbUVjO0VDbEVkLFlEbUVnQjtFckRuRWxCLHFDQU5jO0FuRjZuakJoQjtBeUlubmpCRTtFQUNFO0VBQ0EsY0Q0RGM7RXJEbEVoQixpQkFOYztBbkZrb2pCaEI7QXdJM2pqQk07RUN0RUo7RUFDQSx1QmhFN0NjO0F6RWlyakJoQjtBeUlsb2pCRTtFQUNFLHlCRG1FYztFQ2xFZCxZRG1FZ0I7RXJEbkVsQixxQ0FOYztBbkYyb2pCaEI7QXlJam9qQkU7RUFDRTtFQUNBLGNENERjO0VyRGxFaEIsaUJBTmM7QW5GZ3BqQmhCO0F3SXprakJNO0VDdEVKO0VBQ0EsdUJoRTdDYztBekUrcmpCaEI7QXlJaHBqQkU7RUFDRSx5QkRtRWM7RUNsRWQsWURtRWdCO0VyRG5FbEIscUNBTmM7QW5GeXBqQmhCO0F5SS9vakJFO0VBQ0U7RUFDQSxjRDREYztFckRsRWhCLGlCQU5jO0FuRjhwakJoQjtBd0l2bGpCTTtFQ3RFSjtFQUNBLHVCaEU3Q2M7QXpFNnNqQmhCO0F5STlwakJFO0VBQ0UseUJEbUVjO0VDbEVkLFdEbUVnQjtFckRuRWxCLHFDQU5jO0FuRnVxakJoQjtBeUk3cGpCRTtFQUNFO0VBQ0EsY0RnRXdCO0VyRHRFMUIsaUJBTmM7QW5GNHFqQmhCO0F3SXpsakJJO0VBQ0U7RUFDQTtFQUNBO0F4STJsakJOO0F3SXhsakJJO0VBQ0U7QXhJMGxqQk47QXdJdmxqQkk7RUFDRTtBeEl5bGpCTjtBd0l0bGpCSTtFQUNFO0VBQ0E7QXhJd2xqQk47O0EwSXZ1akJBO0VBQ0U7RTFEV3VELDhCS0RsRDtFTEdxRCwyQktIckQ7RUxNMEQsc0JLTjFEO0VxRFJMO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTFERHVELHNEQytCN0M7RUQ3QmdELG1EQzZCaEQ7RUQxQnFELDhDQzBCckQ7RUQvQjZDLDBCMERHaEM7RTFERG1DLHVCMERDbkM7RTFEQW9DO0VBQ0MscUIwRERyQztFMURFd0Msa0IwREZ4QztBMUlrdmpCekI7QTBJaHZqQkU7RUFDRSx5QmpFTlk7RWlFT1o7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0UxRGZxRCwwQjBEZ0I5QjtFMURkaUMsdUIwRGNqQztFMURia0Msc0IwRGFsQztFMURabUMscUIwRFluQztFMURYc0Msa0IwRFd0QztBMUlzdmpCM0I7QTBJcHZqQkk7RUFDRTtFQUNBO0ExSXN2akJOO0EwSW52akJJO0VBQ0U7RUFDQTtFQUNBO0ExSXF2akJOO0EwSWp2akJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUltdmpCSjtBMElqdmpCSTtFQUNFO0ExSW12akJOOztBMkkxeWpCQTtFQUNFO0VBQ0E7QTNJNnlqQkY7O0EySTF5akJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNJNnlqQkY7O0EySTF5akJBO0VBQ0U7QTNJNnlqQkY7O0EySTF5akJBO0VBQ0U7QTNJNnlqQkY7O0E0SS96akJBO0VBS0U7RUFDQTtFNURNdUQsb0RDK0I3QztFRDdCZ0QsaURDNkJoRDtFRDFCcUQsNENDMEJyRDtBakY0eGpCWjtBNEl0MGpCRTtFQUNFO0E1SXcwakJKO0E0SWowakJFO0VBQ0U7QTVJbTBqQko7QTRJaDBqQk07RUFDRTtFQUNBO0VBQ0E7QTVJazBqQlI7QTRJaDBqQlE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1SWswakJWO0E0SS96akJRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0U1RHZCK0MsMEI0RHdCeEI7RTVEdEIyQix1QjREc0IzQjtFNURyQjRCLHNCNERxQjVCO0U1RHBCNkIscUI0RG9CN0I7RTVEbkJnQyxrQjREbUJoQztBNUlxMGpCakM7QTRJbjBqQlU7RUFDRTtFQUNBLHFCbkVuQ1c7QXpFdzJqQnZCO0E0SWwwakJVO0VBQ0U7QTVJbzBqQlo7QTRJajBqQlU7RUFDRTtBNUltMGpCWjtBNEkvempCUTtFQUVFO0E1SWcwakJWO0E0SXZ6akJROztFQUVFO0E1SXl6akJWO0E0SWh6akJROztFQUVFO0E1SWt6akJWOztBNEkzeWpCQTtFQUNFO0E1STh5akJGO0E0STV5akJFO0VBQ0U7RTVEM0VxRCx3QkMrQjdDO0VEN0JnRCxxQkM2QmhEO0VEMUJxRCxnQkMwQnJEO0FqRjYxakJaO0E0STV5akJRO0VBQ0U7QTVJOHlqQlY7QTRJNXlqQlU7RUFDRTtBNUk4eWpCWjs7QTZJOTRqQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFWitLZ0QseUJBTC9CO0VBUWtDLHNCQVBsQztFQVFvQyxvQkFQcEM7RUFRdUMsaUJBckN2QztBaklzd2pCbkI7QTZJbDVqQkU7RVo0S2dELHdCQUwvQjtFQVFrQyxxQkFQbEM7RUFRb0MsbUJBUHBDO0VBUXVDLGdCQXJDdkM7RVkxSWY7QTdJdTVqQko7QTZJcDVqQkU7RUFDRTtBN0lzNWpCSjs7QTZJbDVqQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFN0RadUQsbURDK0I3QztFRDdCZ0QsZ0RDNkJoRDtFRDFCcUQsMkNDMEJyRDtFZ0QySXNDLHlCQUwvQjtFQVFrQyxzQkFQbEM7RUFRb0Msb0JBUHBDO0VBUXVDLGlCQXJDdkM7QWpJOHhqQm5CO0E2SXg1akJFO0VBQ0U7QTdJMDVqQko7QTZJdjVqQkU7RVpzSmdELHdCQUwvQjtFQVFrQyxxQkFQbEM7RUFRb0MsbUJBUHBDO0VBUXVDLGdCQXJDdkM7RWpEMUlzQyxnRDhEMFovQztFOUR4WmtELDZDOER3WmxEO0U5RHZabUQsNEM4RHVabkQ7RTlEdFpvRCwyQzhEc1pwRDtFOURyWnVELHdDOERxWnZEO0E5STRoakJWO0E2STc1akJFO0U3RHpCdUQsaUQ4RDRZL0M7RTlEMVlrRCw4QzhEMFlsRDtFOUR6WW1ELDZDOER5WW5EO0U5RHhZb0QsNEM4RHdZcEQ7RTlEdll1RCx5QzhEdVl2RDtBOUlpampCVjtBNkloNmpCRTtFQUNFO0VBQ0E7RUFDQTtBN0lrNmpCSjs7QStJaDlqQkE7RUFDRTtFQUNBO0EvSW05akJGO0ErSWo5akJFO0VBRUU7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9JaTlqQko7QStJLzhqQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvSWk5akJOO0ErSTk4akJJO0VBQ0U7RUFDQTtBL0lnOWpCTjtBK0k1OGpCRTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9JNjhqQko7QStJdjhqQkk7RUFFRTtFQUNBO0EvSXc4akJOO0ErSXQ4akJNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvSXc4akJSO0ErSWw4akJJO0VBRUU7RUFDQTtBL0ltOGpCTjtBK0lqOGpCTTtFQUNFO0EvSW04akJSO0ErSTc3akJJO0VBRUU7RUFDQTtBL0k4N2pCTjtBK0k1N2pCTTtFQUNFO0EvSTg3akJSO0ErSXg3akJJO0VBRUU7RUFDQTtFQUNBO0VBQ0E7QS9JeTdqQk47QStJdjdqQk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9JeTdqQlI7QStJbjdqQkk7RUFFRTtFQUNBO0VBQ0E7RUFDQTtBL0lvN2pCTjtBK0lsN2pCTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0lvN2pCUjtBK0k5NmpCSTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0EvSSs2akJOO0ErSTc2akJNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9JKzZqQlI7QStJejZqQkk7RUFFRTtFQUNBO0VBQ0E7QS9JMDZqQk47QStJeDZqQk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0kwNmpCUjtBK0lwNmpCSTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0EvSXE2akJOO0ErSW42akJNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9JcTZqQlI7QStJLzVqQkk7RUFFRTtFQUNBO0VBQ0E7RUFDQTtBL0lnNmpCTjtBK0k5NWpCTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0lnNmpCUjtBK0kxNWpCSTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0EvSTI1akJOO0ErSXo1akJNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9JMjVqQlI7QStJcjVqQkk7RUFFRTtFQUNBO0VBQ0E7RUFDQTtBL0lzNWpCTjtBK0lwNWpCTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0lzNWpCUjs7QWdKdG9rQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEp5b2tCRjtBZ0p2b2tCRTtFQUNFO0FoSnlva0JKO0FnSnZva0JJO0VBQ0U7QWhKeW9rQk47QWdKdm9rQk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEp5b2tCUjtBZ0p0b2tCVTtFQUNFO0FoSndva0JaO0FnSnBva0JRO0VBQ0U7RUFDQTtBaEpzb2tCVjtBZ0pwb2tCVTtFQUNFO0FoSnNva0JaO0FnSmxva0JRO0VBQ0U7QWhKb29rQlY7QWdKam9rQlE7RUFDRSx5QkFsRFE7QWhKcXJrQmxCO0FnSmhva0JRO0VBQ0UseUJBckRLO0FoSnVya0JmO0FnSi9ua0JRO0VBQ0U7QWhKaW9rQlY7QWdKN25rQlU7RUFDRTtFQUNBO0VBQ0E7QWhKK25rQlo7QWdKNW5rQlU7RUFDRTtFQUNBO0FoSjhua0JaO0FnSjFua0JRO0VBQ0U7RUFDQTtBaEo0bmtCVjtBZ0p4bmtCVTtFQUNFO0FoSjBua0JaO0FnSmxua0JJO0VBQ0U7QWhKb25rQk47QWdKam5rQkk7RUFDRTtFQUNBO0VoRXBGbUQsd0JnRXFGNUI7RWhFbkYrQixxQmdFbUYvQjtFaEVsRmdDLG9CZ0VrRmhDO0VoRWpGaUMsbUJnRWlGakM7RWhFaEZvQyxnQmdFZ0ZwQztFQUN2QjtFQUNBO0FoSnVua0JOO0FnSnJua0JNO0VBQ0U7RWhFMUZpRCx3QmdFMkYxQjtFaEV6RjZCLHFCZ0V5RjdCO0VoRXhGOEIsb0JnRXdGOUI7RWhFdkYrQixtQmdFdUYvQjtFaEV0RmtDLGdCZ0VzRmxDO0FoSjJua0IvQjtBZ0p6bmtCUTtFQUNFO0FoSjJua0JWOztBZ0pwbmtCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhKdW5rQkY7O0FpSjd1a0JBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWpKZ3ZrQkY7QWlKOXVrQkU7RUFDRTtBakpndmtCSjtBaUo5dWtCSTtFQUNFO0FqSmd2a0JOO0FpSjV1a0JFO0VBQ0U7QWpKOHVrQko7QWlKenVrQk07RUFDRTtFQUNBO0FqSjJ1a0JSO0FpSnp1a0JRO0VBQ0UsY3hFYk07QXpFd3ZrQmhCO0FpSnZ1a0JNO0VBVkY7SUFXSTtFakowdWtCTjtBQUNGO0FpSnZ1a0JJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSx5QnhFd0lrQjtBekVpbWtCeEI7QWlKdnVrQk07RUFDRTtBakp5dWtCUjtBaUp0dWtCVTtFQURGO0lBRUk7SUFDQTtFakp5dWtCVjtBQUNGO0FpSnJ1a0JNO0VBQ0U7QWpKdXVrQlI7QWlKcnVrQlE7RUFDRTtFQUNBO0VBQ0E7QWpKdXVrQlY7QWlKcnVrQlU7RUFDRTtBakp1dWtCWjtBaUpwdWtCVTtFQUNFO0VBQ0EsbUJ4RXRESTtFd0V1REo7RUFDQTtFQUNBO0VBQ0E7QWpKc3VrQlo7QWlKbnVrQlU7RUFFRTtFQUNBO0FqSm91a0JaO0FpSmp1a0JVO0VBQ0U7RUFDQTtBakptdWtCWjtBaUpodWtCVTtFQUNFO0VBQ0E7QWpKa3VrQlo7QWlKL3RrQlU7RUFDRTtBakppdWtCWjtBaUo3dGtCWTtFQUNFO0FqSit0a0JkO0FpSjd0a0JjO0VBSEY7SUFJSTtFakpndWtCZDtBQUNGO0FpSnp0a0JRO0VBQ0U7RUFDQTtFQUNBO0FqSjJ0a0JWO0FpSnp0a0JVO0VBQ0UsY3hFcEdJO0F6RSt6a0JoQjtBaUp4dGtCVTtFQVRGO0lBVUk7RWpKMnRrQlY7QUFDRjtBaUpydGtCRTtFQUNFO0VBQ0EsbUJ4RWtEb0I7QXpFcXFrQnhCO0FpSnJ0a0JJO0VBQ0U7RUFDQTtFQUNBO0FqSnV0a0JOO0FpSnJ0a0JNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpKdXRrQlI7QWlKcnRrQlE7RUFDRTtBakp1dGtCVjtBaUpydGtCVTtFQUNFLGN4RXJJSTtBekU0MWtCaEI7QWlKbnRrQlE7RUFDRTtBakpxdGtCVjtBaUpsdGtCUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakpvdGtCVjtBaUpodGtCVTtFQUNFO0VBQ0EseUJ4RTVKSTtBekU4MmtCaEI7QWlKOXNrQlE7RUFDRTtBakpndGtCVjtBaUo5c2tCVTtFQUNFO0FqSmd0a0JaO0FpSjNza0JNO0VBQ0UsV0F4TE87QWpKcTRrQmY7QWlKeHNrQkU7RUFDRTtFQUNBLG1CeEVkb0I7QXpFd3RrQnhCO0FpSnhza0JJO0VBQ0U7RUFDQTtFQUNBO0FqSjBza0JOO0FpSnhza0JNO0VBQ0UsV0F2TU87QWpKaTVrQmY7QWlKdnNrQk07RUFDRTtFQUNBO0VBQ0E7QWpKeXNrQlI7QWlKdnNrQlE7RUFDRTtFQUNBO0FqSnlza0JWO0FpSm5za0JFO0VBR0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0FqSmtza0JKO0FpSmhza0JJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWpKa3NrQk47QWlKaHNrQk07RUFDRTtBakprc2tCUjtBaUovcmtCTTtFQUNFLFdBN09PO0VBOE9QLHlCeEU3RGdCO0V3RThEaEI7QWpKaXNrQlI7QWlKOXJrQk07RUFDRTtFQUVBO0FqSitya0JSO0FpSjdya0JRO0VBQ0U7RUFDQTtFQUNBO0FqSitya0JWO0FpSjdya0JVO0VBQ0U7QWpKK3JrQlo7QWlKN3JrQlk7RUFDRTtFQUNBO0FqSitya0JkO0FpSjVya0JZO0VBQ0U7QWpKOHJrQmQ7QWlKMXJrQlU7RUFDRTtFQUNBO0FqSjRya0JaO0FpSjFya0JZO0VBQ0U7RUFDQTtBako0cmtCZDtBaUp6cmtCWTtFQUNFO0FqSjJya0JkO0FpSnRya0JRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsbUJ4RXBSTTtFd0VxUk47RUFDQTtFQUNBO0VBQ0E7QWpKd3JrQlY7QWlKbHJrQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBakpvcmtCSjtBaUpscmtCSTtFQUNFO0VBQ0E7QWpKb3JrQk47QWlKbHJrQk07RUFDRSxXQXZUTztFQXdUUCxtQnhFdklnQjtFd0V3SWhCO0FqSm9ya0JSO0FpSmxya0JRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWpKb3JrQlY7QWlKanJrQlE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7QWpKa3JrQlY7QWlKOXFrQk07RUFDRTtFQUNBO0FqSmdya0JSO0FpSjlxa0JRO0VBQ0U7QWpKZ3JrQlY7QWlKNXFrQk07RUFDRTtBako4cWtCUjtBaUo1cWtCUTtFQUNFO0FqSjhxa0JWO0FpSjNxa0JZO0VBQ0U7QWpKNnFrQmQ7QWlKeHFrQlE7RUFDRTtBakowcWtCVjtBaUp2cWtCUTtFQUNFO0FqSnlxa0JWO0FpSnRxa0JRO0VBQ0U7QWpKd3FrQlY7QWlKcnFrQlE7RUFDRTtBakp1cWtCVjtBaUpwcWtCUTtFQUNFO0FqSnNxa0JWO0FpSnBxa0JVO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakpzcWtCWjtBaUpwcWtCWTtFQUNFO0FqSnNxa0JkO0FpSnBxa0JjO0VBQ0U7QWpKc3FrQmhCO0FpSnBxa0JnQjtFQUNFO0FqSnNxa0JsQjtBaUpqcWtCWTtFQUNFO0VBQ0E7QWpKbXFrQmQ7QWlKaHFrQlk7RUFDRTtFQUNBO0FqSmtxa0JkO0FpSmhxa0JjO0VBQ0U7QWpKa3FrQmhCO0FpSjdwa0JVO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakorcGtCWjtBaUo3cGtCWTtFQUNFO0VBQ0E7QWpKK3BrQmQ7QWlKN3BrQmM7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqSitwa0JoQjtBaUp2cGtCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpKeXBrQk47QWlKdnBrQk07RUFDRTtFQUNBO0VBQ0E7QWpKeXBrQlI7QWlKdnBrQlE7RUFDRSxXQXpjSztBakprbWxCZjtBaUp0cGtCUTtFQUVFO0VBQ0E7QWpKdXBrQlY7QWlKcnBrQlU7RUFDRTtBakp1cGtCWjtBaUpwcGtCVTtFQUNFO0VBQ0E7QWpKc3BrQlo7QWlKcHBrQlk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqSnNwa0JkO0FpSm5wa0JZO0VBQ0U7RUFDQTtFQUNBO0FqSnFwa0JkO0FpSm5wa0JjO0VBQ0U7QWpKcXBrQmhCO0FpSm5wa0JnQjtFQUNFO0FqSnFwa0JsQjtBaUpscGtCZ0I7RUFDRTtBakpvcGtCbEI7QWlKL29rQlk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqSmlwa0JkO0FpSi9va0JjO0VBQ0U7RUFDQTtBakppcGtCaEI7QWlKOW9rQmM7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpKZ3BrQmhCO0FpSjlva0JnQjtFQUNFO0FqSmdwa0JsQjtBaUo1b2tCYztFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpKOG9rQmhCO0FpSjNva0JjO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBako2b2tCaEI7QWlKdm9rQlE7RUFDRTtFQUNBO0FqSnlva0JWO0FpSm5va0JFO0VBQ0U7QWpKcW9rQko7QWlKbm9rQkk7RUFDRTtFQUNBO0FqSnFva0JOO0FpSmxva0JJO0VBQ0U7RUFDQTtFakVsakJtRCwwQmlFbWpCNUI7RWpFampCK0IsdUJpRWlqQi9CO0VqRWhqQmdDLHNCaUVnakJoQztFakUvaUJpQyxxQmlFK2lCakM7RWpFOWlCb0Msa0JpRThpQnBDO0FqSndva0I3QjtBaUp0b2tCTTtFQUNFO0FqSndva0JSO0FpSnBva0JJO0VBbEJGO0lBbUJJO0VqSnVva0JKO0FBQ0Y7O0FpSmxva0JFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpKcW9rQko7O0FpSmpva0JBO0VBQ0U7QWpKb29rQkY7O0FpSmhva0JFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqSm1va0JKO0FpSmpva0JJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakptb2tCTjtBaUovbmtCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakppb2tCSjs7QUFqd2xCQTtFQUNFO0VBQ0E7QUFvd2xCRjs7QUFqd2xCQTs7RUFFRTtFQUNBO0VBQ0E7QUFvd2xCRjs7QUFqd2xCQTtFQUNFLHVCa0poQmlCO0FsSm94bEJuQjs7QUFqd2xCQTs7O0VBR0U7RUFDQTtFQUNBO0FBb3dsQkY7O0FBandsQkE7RUFDSTtJQUNJO0lBQ0E7SUFDQTtFQW93bEJOO0FBQ0Y7QUF6dmxCQTtFQUxFO0VBQ0E7RUFDQTtBQWl3bEJGOztBQTF2bEJBO0VBQ0U7RUFWQTtFQUNBO0VBQ0E7QUF3d2xCRjs7QUE1dmxCQTtFQUNFO0VBZkE7RUFDQTtFQUNBO0FBK3dsQkY7O0FBOXZsQkE7RUFuQkU7RUFDQTtFQUNBO0FBcXhsQkY7O0FBL3ZsQkU7RUF4QkE7RUFDQTtFQUNBO0FBMnhsQkY7QUFqd2xCRTtFQUNFO0VBN0JGO0VBQ0E7RUFDQTtBQWl5bEJGO0FBbHdsQkU7RUFDRTtFQWxDRjtFQUNBO0VBQ0E7QUF1eWxCRjtBQW53bEJFO0VBdENBO0VBQ0E7RUFDQTtBQTR5bEJGOztBQW53bEJBO0VBQ0U7RUFDQTtFQUNBO0FBc3dsQkY7O0FBbndsQkE7RUFDRTtFQUNBO0VBQ0E7QUFzd2xCRjs7QUFud2xCQTtFQUNFO0VBQ0E7RUFDQTtBQXN3bEJGOztBQW53bEJBO0VBQ0U7RUFDQTtFQUNBO0FBc3dsQkY7O0FBbndsQkE7RUFDRSxja0p4R007QWxKODJsQlI7O0FBbndsQkE7RUFDRTtFQUNBO0VBQ0EseUJrSm5HYTtFbEpvR2I7RUFDQTtFQUNBO0VBQ0E7QUFzd2xCRjtBQXB3bEJFO0VBR0UseUJrSjlHRztFbEorR0g7QUFvd2xCSjs7QUFod2xCQTtFQUNFO0VBQ0E7RUFDQSx5QmtKMUhPO0VsSjJIUDtFQUNBO0VBQ0E7RUFDQTtBQW13bEJGO0FBandsQkU7RUFHRSx5QmtKbElXO0VsSm1JWDtBQWl3bEJKOztBQTV2bEJBOzs7RUFHRTtFQUNBO0VBQ0EseUJrSjFJSztFbEoySUw7RUFDQTtFQUNBO0VBQ0E7QUErdmxCRjtBQTd2bEJFOzs7Ozs7O0VBR0UseUJrSmxKUztFbEptSlQ7QUFtd2xCSjs7QUEvdmxCQTs7RUFFRTtFQUNBO0VBQ0EseUJrSnJLTTtFbEpzS047RUFDQTtFQUNBO0VBQ0E7QUFrd2xCRjtBQWh3bEJFOzs7O0VBR0U7RUFDQSx5QmtKOUtVO0FsSmk3bEJkOztBQS92bEJBO0VBQ0U7QUFrd2xCRjs7QUE5dmxCQTtFQUNJO0FBaXdsQko7O0FBN3ZsQkE7RUFDRTtBQWd3bEJGOztBQTd2bEJBOztFQUVFLGNrSm5NTTtFbEpvTU47RUFDQTtFQUNBO0FBZ3dsQkY7O0FBN3ZsQkE7Ozs7O0VBS0UsY2tKN01ZO0VsSjhNWjtFQUNBO0VBQ0E7QUFnd2xCRjs7QUE3dmxCQTtFQUNFLGNrSnJOTTtFbEpzTk47RUFDQTtBQWd3bEJGO0FBOXZsQkU7RUFDRSx5QmtKMU5JO0VsSjJOSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFnd2xCSjtBQTd2bEJFO0VBQ0UsY2tKdE9VO0FsSnErbEJkO0FBN3ZsQkk7RUFDRSx5QmtKek9RO0FsSncrbEJkOztBQTF2bEJBO0VBQ0U7RUFDQTtBQTZ2bEJGO0FBM3ZsQkU7RUFDRTtBQTZ2bEJKOztBQXp2bEJBO0VBQ0U7QUE0dmxCRjs7QUF6dmxCQTtFQUNFO0VBQ0E7RUFDQTtBQTR2bEJGOztBQXp2bEJBO0VBQ0U7QUE0dmxCRjs7QUF6dmxCQTtFQUNFO0VBQ0E7QUE0dmxCRjtBQTF2bEJFO0VBQ0U7QUE0dmxCSjs7QUF4dmxCQTtFQUNFO0FBMnZsQkY7O0FBeHZsQkE7Ozs7RUFJRTtFQUNBO0VBQ0E7RUFDQTtBQTJ2bEJGOztBQXh2bEJBOztFQUVFLHFCa0ovUk07QWxKMGhtQlI7O0FBdnZsQkE7RUFDRSxja0p2Ulc7RWxKd1JYO0FBMHZsQkY7QUF6dmxCRTtFQUNFLGNrSjFSUztBbEpxaG1CYjtBQXp2bEJJO0VBQ0U7QUEydmxCTjs7QUF0dmxCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUF5dmxCRjtBQXZ2bEJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUF5dmxCSjtBQXR2bEJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QUF3dmxCSjtBQXJ2bEJFO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUF1dmxCTjtBQXB2bEJFO0VBQ0U7QUFzdmxCSjs7QUFsdmxCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFxdmxCRjtBQW52bEJFO0VBQ0U7RUFDQTtBQXF2bEJKO0FBbHZsQkU7RUFDRSx5QmtKaFdJO0VsSmlXSjtBQW92bEJKO0FBanZsQkU7RUFDRSx5QmtKNVZHO0VsSjZWSDtBQW12bEJKOztBQS91bEJBO0VBQ0U7QUFrdmxCRjtBQWh2bEJFO0VBQ0U7RUFDQTtBQWt2bEJKO0FBL3VsQkU7RUFDRTtFQUNBO0FBaXZsQko7QUE5dWxCRTtFQUNFO0VBQ0E7QUFndmxCSjs7QUE1dWxCQTtFQUNJLHlCa0p6WEs7QWxKd21tQlQ7O0FBNXVsQkE7RUFDSTtFQUNBO0FBK3VsQkosQyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvYmFzZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2Jhbm5lci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcm9vdC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy92ZW5kb3IvX3Jmcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcmVib290LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190eXBlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbGlzdHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2ltYWdlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2ltYWdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jb250YWluZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY29udGFpbmVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2dyaWQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190YWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190YWJsZS12YXJpYW50cy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fbGFiZWxzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mb3JtLXRleHQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2Zvcm0tY29udHJvbC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RyYW5zaXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2Zvcm0tc2VsZWN0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mb3JtLWNoZWNrLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mb3JtLXJhbmdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mbG9hdGluZy1sYWJlbHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2lucHV0LWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZm9ybXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2J1dHRvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190cmFuc2l0aW9ucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZHJvcGRvd24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jYXJldC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnV0dG9uLWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19uYXYuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX25hdmJhci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2FyZC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYWNjb3JkaW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19icmVhZGNydW1iLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wYWdpbmF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcGFnaW5hdGlvbi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYmFkZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2FsZXJ0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYWxlcnQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Byb2dyZXNzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19saXN0LWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbGlzdC1ncm91cC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2xvc2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3RvYXN0cy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbW9kYWwuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19iYWNrZHJvcC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdG9vbHRpcC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3BvcG92ZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Nhcm91c2VsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2xlYXJmaXguc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3NwaW5uZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19vZmZjYW52YXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3BsYWNlaG9sZGVycy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19jb2xvci1iZy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19jb2xvcmVkLWxpbmtzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3JhdGlvLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3Bvc2l0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3N0YWNrcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL192aXN1YWxseS1oaWRkZW4uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL192aXN1YWxseS1oaWRkZW4uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fc3RyZXRjaGVkLWxpbmsuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fdGV4dC10cnVuY2F0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC10cnVuY2F0ZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL192ci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3V0aWxpdGllcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2FwaS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy93ZWJmL3NyYy9zdHlsZXMvc2Fzcy92YXJzL19kZWZhdWx0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3dlYmYvc3JjL3N0eWxlcy9zYXNzL3BsdWdpbnMvYWdlbmRhL3dlZWsuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvd2ViZi9zcmMvc3R5bGVzL3Nhc3MvcGx1Z2lucy9hZ2VuZGEuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29tcGFzcy1taXhpbnMvbGliL2NvbXBhc3MvY3NzMy9faW1hZ2VzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvbXBhc3MtbWl4aW5zL2xpYi9jb21wYXNzL2NzczMvX29wYWNpdHkuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvd2ViZi9zcmMvc3R5bGVzL3Nhc3MvcGx1Z2lucy9hamF4dXBsb2FkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3dlYmYvc3JjL3N0eWxlcy9zYXNzL3BsdWdpbnMvYWxlcnQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29tcGFzcy1taXhpbnMvbGliL2NvbXBhc3MvY3NzMy9fc2hhcmVkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvbXBhc3MtbWl4aW5zL2xpYi9jb21wYXNzL2NzczMvX2JveC1zaGFkb3cuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvd2ViZi9zcmMvc3R5bGVzL3Nhc3MvbWl4aW5zL19hbGVydHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29tcGFzcy1taXhpbnMvbGliL2NvbXBhc3MvY3NzMy9fdGV4dC1zaGFkb3cuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvd2ViZi9zcmMvc3R5bGVzL3Nhc3MvcGx1Z2lucy9hdXRvY29tcGxldGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29tcGFzcy1taXhpbnMvbGliL2NvbXBhc3MvY3NzMy9fYm94LXNpemluZy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy93ZWJmL3NyYy9zdHlsZXMvc2Fzcy9wbHVnaW5zL2Jhc2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvd2ViZi9zcmMvc3R5bGVzL3Nhc3MvcGx1Z2lucy9ib3hlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy93ZWJmL3NyYy9zdHlsZXMvc2Fzcy9taXhpbnMvX2JveGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3dlYmYvc3JjL3N0eWxlcy9zYXNzL3BsdWdpbnMvYnV0dG9ucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb21wYXNzLW1peGlucy9saWIvY29tcGFzcy9jc3MzL191c2VyLWludGVyZmFjZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy93ZWJmL3NyYy9zdHlsZXMvc2Fzcy9wbHVnaW5zL2Nhcm91c2VsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3dlYmYvc3JjL3N0eWxlcy9zYXNzL3BsdWdpbnMvY2hlY2tib3gvY2xhc3NpYy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy93ZWJmL3NyYy9zdHlsZXMvc2Fzcy9wbHVnaW5zL2NoZWNrYm94L3N3aXRjaC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy93ZWJmL3NyYy9zdHlsZXMvc2Fzcy9wbHVnaW5zL2NoZWNrYm94L2NoZWNrbWFyay5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy93ZWJmL3NyYy9zdHlsZXMvc2Fzcy9wbHVnaW5zL2NoZWNrYm94LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3dlYmYvc3JjL3N0eWxlcy9zYXNzL3BsdWdpbnMvY29va2llY29uc2VudC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy93ZWJmL3NyYy9zdHlsZXMvc2Fzcy9wbHVnaW5zL2NvbmZpcm0uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvd2ViZi9zcmMvc3R5bGVzL3Nhc3MvcGx1Z2lucy9kYXRhZ3JpZC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy93ZWJmL3NyYy9zdHlsZXMvc2Fzcy9wbHVnaW5zL2RhdGV0aW1lcGlja2VyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvbXBhc3MtbWl4aW5zL2xpYi9jb21wYXNzL3V0aWxpdGllcy9nZW5lcmFsL19jbGVhcmZpeC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb21wYXNzLW1peGlucy9saWIvY29tcGFzcy91dGlsaXRpZXMvZ2VuZXJhbC9faGFja3Muc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvd2ViZi9zcmMvc3R5bGVzL3Nhc3MvcGx1Z2lucy9kaWFsb2cuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvd2ViZi9zcmMvc3R5bGVzL3Nhc3MvcGx1Z2lucy9kcmFnbmRyb3Auc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvd2ViZi9zcmMvc3R5bGVzL3Nhc3MvcGx1Z2lucy9kcm9wZG93bi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy93ZWJmL3NyYy9zdHlsZXMvc2Fzcy9wbHVnaW5zL2Ryb3Bkb3dubWVudS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy93ZWJmL3NyYy9zdHlsZXMvc2Fzcy9wbHVnaW5zL2ZpbGVtYW5hZ2VyL2dyaWQtbGF5b3V0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3dlYmYvc3JjL3N0eWxlcy9zYXNzL3BsdWdpbnMvZmlsZW1hbmFnZXIvbGlzdC1sYXlvdXQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvd2ViZi9zcmMvc3R5bGVzL3Nhc3MvcGx1Z2lucy9maWxlbWFuYWdlci9uYXYuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvd2ViZi9zcmMvc3R5bGVzL3Nhc3MvcGx1Z2lucy9maWxlbWFuYWdlci9zY3JvbGwuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvd2ViZi9zcmMvc3R5bGVzL3Nhc3MvcGx1Z2lucy9maWxlbWFuYWdlci90aHVtYm5haWxzLWxheW91dC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy93ZWJmL3NyYy9zdHlsZXMvc2Fzcy9wbHVnaW5zL2ZpbGVtYW5hZ2VyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3dlYmYvc3JjL3N0eWxlcy9zYXNzL3BsdWdpbnMvZnVsbGRheWV2ZW50YWdlbmRhLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3dlYmYvc3JjL3N0eWxlcy9zYXNzL3BsdWdpbnMvaW1hZ2Vjcm9wLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3dlYmYvc3JjL3N0eWxlcy9zYXNzL3BsdWdpbnMvbGlnaHRib3guc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvd2ViZi9zcmMvc3R5bGVzL3Nhc3MvcGx1Z2lucy9saXN0LWVudGl0aWVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3dlYmYvc3JjL3N0eWxlcy9zYXNzL3BsdWdpbnMvbGlzdHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvd2ViZi9zcmMvc3R5bGVzL3Nhc3MvbWl4aW5zL19saXN0cy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy93ZWJmL3NyYy9zdHlsZXMvc2Fzcy9wbHVnaW5zL21kLXRleHQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvd2ViZi9zcmMvc3R5bGVzL3Nhc3MvcGx1Z2lucy9tZC1saXN0cy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy93ZWJmL3NyYy9zdHlsZXMvc2Fzcy9wbHVnaW5zL25hdmlnYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvd2ViZi9zcmMvc3R5bGVzL3Nhc3MvcGx1Z2lucy9wcm9ncmVzc2Jhci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy93ZWJmL3NyYy9zdHlsZXMvc2Fzcy9wbHVnaW5zL3JhZGlvLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3dlYmYvc3JjL3N0eWxlcy9zYXNzL3BsdWdpbnMvcmVzaXphYmxlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3dlYmYvc3JjL3N0eWxlcy9zYXNzL3BsdWdpbnMvcmljaHRleHRlZGl0b3IvY29sb3Itc2VsZWN0b3Iuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvd2ViZi9zcmMvc3R5bGVzL3Nhc3MvcGx1Z2lucy9yaWNodGV4dGVkaXRvci9pbWFnZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy93ZWJmL3NyYy9zdHlsZXMvc2Fzcy9wbHVnaW5zL3JpY2h0ZXh0ZWRpdG9yL3RhYmxlLXNlbGVjdG9yLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3dlYmYvc3JjL3N0eWxlcy9zYXNzL3BsdWdpbnMvcmljaHRleHRlZGl0b3Iuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvd2ViZi9zcmMvc3R5bGVzL3Nhc3MvcGx1Z2lucy9zY3JvbGxiYXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29tcGFzcy1taXhpbnMvbGliL2NvbXBhc3MvY3NzMy9fdHJhbnNpdGlvbi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy93ZWJmL3NyYy9zdHlsZXMvc2Fzcy9wbHVnaW5zL3NlbGVjdC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy93ZWJmL3NyYy9zdHlsZXMvc2Fzcy9wbHVnaW5zL21kLXNlbGVjdC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy93ZWJmL3NyYy9zdHlsZXMvc2Fzcy9wbHVnaW5zL3NsaWRlci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy93ZWJmL3NyYy9zdHlsZXMvc2Fzcy9wbHVnaW5zL3NvcnRhYmxlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3dlYmYvc3JjL3N0eWxlcy9zYXNzL3BsdWdpbnMvc3Bpbm5lci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy93ZWJmL3NyYy9zdHlsZXMvc2Fzcy9wbHVnaW5zL3N0aWNreWJ1dHRvbi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy93ZWJmL3NyYy9zdHlsZXMvc2Fzcy9wbHVnaW5zL3RhYnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvd2ViZi9zcmMvc3R5bGVzL3Nhc3MvbWl4aW5zL190YWJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3dlYmYvc3JjL3N0eWxlcy9zYXNzL3BsdWdpbnMvdGFnc2lucHV0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3dlYmYvc3JjL3N0eWxlcy9zYXNzL3BsdWdpbnMvdGV4dGFyZWFhdXRvZ3Jvdy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy93ZWJmL3NyYy9zdHlsZXMvc2Fzcy9wbHVnaW5zL3RpbWVwaWNrZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvd2ViZi9zcmMvc3R5bGVzL3Nhc3MvcGx1Z2lucy90b2FzdC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb21wYXNzLW1peGlucy9saWIvY29tcGFzcy9jc3MzL190cmFuc2Zvcm0uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvd2ViZi9zcmMvc3R5bGVzL3Nhc3MvcGx1Z2lucy90b29sdGlwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3dlYmYvc3JjL3N0eWxlcy9zYXNzL3BsdWdpbnMvdHJlZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy93ZWJmL3NyYy9zdHlsZXMvc2Fzcy9wbHVnaW5zL3VzZXJhZ2VuZGEuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvX3ZhcnMuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IFwiYm9vdHN0cmFwL3Njc3MvYm9vdHN0cmFwXCI7XG5AaW1wb3J0ICcuLi8uLi9ub2RlX21vZHVsZXMvd2ViZi92YXJzLWRlZmF1bHQtdGhlbWUuc2Nzcyc7XG5AaW1wb3J0ICcuLi8uLi9ub2RlX21vZHVsZXMvd2ViZi9wbHVnaW5zLnNjc3MnO1xuQGltcG9ydCAnLi4vdmFycyc7XG5cbioge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG59XG5cbmh0bWwsXG5ib2R5IHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4td2lkdGg6IDMyMHB4O1xuICBtaW4taGVpZ2h0OiA0ODBweDtcbn1cblxuYm9keSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb250ZW50LWJnLWNvbG9yO1xufVxuXG5odG1sLFxuYm9keSxcbi53ZWJmLWJveCA+IC5ib3gtYm9keSB7XG4gIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogMjRweCAhaW1wb3J0YW50O1xuICBmb250LWZhbWlseTogJ09wZW4gU2FucycsIHNhbnMtc2VyaWY7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5jb250ZW50IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZDRkNGQztcbiAgICAgICAgYm9yZGVyOiA0cHggc29saWQgI0ZBRkFGQTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czozcHg7XG4gICAgfVxufVxuXG5cblxuQG1peGluIHBsYWNlaG9sZGVyKCkge1xuICBjb2xvcjogYmxhY2s7XG4gIG9wYWNpdHk6IDAuNTQ7XG4gIGZvbnQtc2l6ZTogMTVweDtcbn1cblxuOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgQGluY2x1ZGUgcGxhY2Vob2xkZXIoKTtcbn1cblxuOi1tb3otcGxhY2Vob2xkZXIge1xuICAvKiBGaXJlZm94IDE4LSAqL1xuICBAaW5jbHVkZSBwbGFjZWhvbGRlcigpO1xufVxuXG46Oi1tb3otcGxhY2Vob2xkZXIge1xuICAvKiBGaXJlZm94IDE5KyAqL1xuICBAaW5jbHVkZSBwbGFjZWhvbGRlcigpO1xufVxuXG46LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgQGluY2x1ZGUgcGxhY2Vob2xkZXIoKTtcbn1cblxuLmZvcm0tY29udHJvbCB7XG4gICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIEBpbmNsdWRlIHBsYWNlaG9sZGVyKCk7XG4gIH1cbiAgXG4gICY6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgLyogRmlyZWZveCAxOC0gKi9cbiAgICBAaW5jbHVkZSBwbGFjZWhvbGRlcigpO1xuICB9XG4gIFxuICAmOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICAvKiBGaXJlZm94IDE5KyAqL1xuICAgIEBpbmNsdWRlIHBsYWNlaG9sZGVyKCk7XG4gIH1cbiAgXG4gICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICBAaW5jbHVkZSBwbGFjZWhvbGRlcigpO1xuICB9XG59XG5cbmgxIHtcbiAgZm9udC1mYW1pbHk6ICdMZWFndWUgU3BhcnRhbicsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDQ5cHg7XG59XG5cbmgyIHtcbiAgZm9udC1mYW1pbHk6ICdMZWFndWUgU3BhcnRhbicsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDMxcHg7XG59XG5cbmgzIHtcbiAgZm9udC1mYW1pbHk6ICdMZWFndWUgU3BhcnRhbicsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDIwcHg7XG59XG5cbmg0IHtcbiAgZm9udC1mYW1pbHk6ICdMZWFndWUgU3BhcnRhbicsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDE4cHg7XG59XG5cbi5yb3VnZS1mb25jZSB7XG4gIGNvbG9yOiAkcm91Z2U7XG59XG5cbmEudmVydC1jbGFpciB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdmVydC1zdWNjZXNzO1xuICBjb2xvcjogYmxhY2s7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBwYWRkaW5nOiA3cHggOHB4IDRweDtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgXG4gICY6aG92ZXIsXG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdmVydDtcbiAgICBjb2xvcjogYmxhY2s7XG4gIH1cbn1cblxuYS5vcmFuZ2Uge1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG9yYW5nZTtcbiAgY29sb3I6IGJsYWNrO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgcGFkZGluZzogN3B4IDhweCA0cHg7XG4gIGZvbnQtZmFtaWx5OiBcIkxlYWd1ZSBTcGFydGFuXCIsIHNhbnMtc2VyaWY7XG4gIFxuICAmOmhvdmVyLFxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYW5nZS1mb25jZTtcbiAgICBjb2xvcjogYmxhY2s7XG4gIH1cbn1cblxuXG5idXR0b24udmVydCxcbmEudmVydCxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0udmVydCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdmVydDtcbiAgY29sb3I6IGJsYWNrO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgcGFkZGluZzogN3B4IDhweCA0cHg7XG4gIGZvbnQtZmFtaWx5OiBcIkxlYWd1ZSBTcGFydGFuXCIsIHNhbnMtc2VyaWY7XG4gIFxuICAmOmhvdmVyLFxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHZlcnQtZm9uY2U7XG4gICAgY29sb3I6IGJsYWNrO1xuICB9XG59XG5cbmJ1dHRvbi5yZWQsXG5hLnJlZCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHJvdWdlO1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHBhZGRpbmc6IDRweCAxOHB4IDFweDtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgXG4gICY6aG92ZXIsXG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHJvdWdlLWZvbmNlO1xuICB9XG59XG5cbmEucmVkIHtcbiAgcGFkZGluZzogN3B4IDE4cHggNXB4O1xufVxuXG5cbnVsIHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IFwiLSBcIjtcbn1cblxuXG5pbWcge1xuICBib3JkZXI6IDA7XG59XG5cbmEsXG5zcGFuLmxpbmsge1xuICBjb2xvcjogJHJvdWdlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuYTpob3ZlcixcbmE6Zm9jdXMsXG5hOmFjdGl2ZSxcbmE6Zm9jdXMsXG5zcGFuLmxpbms6aG92ZXIge1xuICBjb2xvcjogJHJvdWdlLWZvbmNlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuYS5lbi1zYXZvaXItcGx1cyB7XG4gIGNvbG9yOiAkcm91Z2U7XG4gIGZvbnQtZmFtaWx5OiBcIkxlYWd1ZSBTcGFydGFuXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIFxuICBpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcm91Z2U7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gICAgcGFkZGluZzogNXB4O1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICB3aWR0aDogMjJweDtcbiAgICBoZWlnaHQ6IDIycHg7XG4gICAgbGluZS1oZWlnaHQ6IDEycHg7XG4gIH1cbiAgXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkcm91Z2UtZm9uY2U7XG4gICAgXG4gICAgaSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcm91Z2UtZm9uY2U7XG4gICAgfVxuICB9XG59XG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIFxuICB0ciB7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgfVxufVxuXG5zZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgaGVpZ2h0OiAyNXB4ICFpbXBvcnRhbnQ7XG59XG5cbnRleHRhcmVhIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgcmVzaXplOiBub25lO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG5cbmxhYmVsIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbmlucHV0IHtcbiAgb3V0bGluZTogMDtcbiAgb3V0bGluZTogbm9uZTtcbiAgXG4gICZbcmVhZG9ubHldIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICB9XG59XG5cbnRleHRhcmVhW3JlYWRvbmx5XSB7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbmlucHV0W3R5cGU9XCJ0ZXh0XCJdOm5vdCguZm9ybS1jb250cm9sKSxcbmlucHV0W3R5cGU9XCJlbWFpbFwiXTpub3QoLmZvcm0tY29udHJvbCksXG5pbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06bm90KC5mb3JtLWNvbnRyb2wpLFxuc2VsZWN0Om5vdCguZm9ybS1zZWxlY3QpIHtcbiAgYm9yZGVyLXJhZGl1czogNXB4ICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDhweCA4cHggIWltcG9ydGFudDtcbiAgYm9yZGVyOiAxcHggc29saWQgJGdyaXMtZm9uY2UgIWltcG9ydGFudDtcbn1cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgYWNjZW50LWNvbG9yOiAkcm91Z2U7XG59XG5cbi8vIFNww6ljaWZpcXVlIFVJQURcbi5maWwtYXJpYW5lIHtcbiAgY29sb3I6ICRncmlzLWZvbmNlO1xuICBkaXNwbGF5Om5vbmU7XG4gIGEge1xuICAgIGNvbG9yOiAkZ3Jpcy1mb25jZTtcbiAgICBcbiAgICAmOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgfVxufVxuXG4ucHJldmlldy1hY3R1YWxpdGUge1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBib3gtc2hhZG93OiAxcHggMXB4IDVweCAxcHggcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBjb2xvcjogYmxhY2s7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIFxuICAud3JhcHBlci1pbWFnZS1hY3R1YWxpdGUtdW5lIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTEwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi8uLi9wdWJsaWMvaW1hZ2VzL2luZGV4L3Bob3RvX2hvbWVfdG1wLmpwZycpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIH1cbiAgXG4gIGgzIHtcbiAgICBjb2xvcjogYmxhY2s7XG4gICAgZm9udC1zaXplOiAyNXB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgfVxuICBcbiAgLmRhdGUtcHVibGljYXRpb24ge1xuICAgICAgZGlzcGxheTpub25lO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgfVxuICBcbiAgLmV4dHJhaXQge1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgfVxufVxuXG4uYmFkZ2Uge1xuICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICBwYWRkaW5nOiA2cHggMTBweCA1cHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgXG4gIGltZyB7XG4gICAgd2lkdGg6IDEzcHg7XG4gICAgbWFyZ2luLXRvcDogLTNweDtcbiAgfVxuICBcbiAgJi5iYWRnZS1yb3VnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHJvdWdlO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgfVxuICBcbiAgJi5iYWRnZS12ZXJ0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdmVydDtcbiAgICBjb2xvcjogYmxhY2s7XG4gIH1cbn1cblxuLnRpdHJlLWJ1bGxlLWdhdWNoZSB7XG4gIHBhZGRpbmctbGVmdDogNDBweDtcbiAgXG4gICYuYnVsbGUtb3JhbmdlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uLy4uL3B1YmxpYy9pbWFnZXMvcm9uZF9vcmFuZ2Uuc3ZnJyk7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgfVxuICBcbiAgJi5idWxsZS1yb3VnZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi8uLi9wdWJsaWMvaW1hZ2VzL3JvbmRfcm91Z2Uuc3ZnJyk7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgfVxuICBcbiAgJi5idWxsZS12ZXJ0ZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi8uLi9wdWJsaWMvaW1hZ2VzL3JvbmRfdmVydC5zdmcnKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICB9XG59XG5cbi50b2FzdC1oZWFkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmFuZ2U7XG59XG5cbi5tb250YW50Y2VsbCB7XG4gICAgdGV4dC1hbGlnbjpyaWdodDtcbiAgICBmb250LWZhbWlseTogZml4ZWQ7XG59XG4iLCJAbWl4aW4gYnNCYW5uZXIoJGZpbGUpIHtcbiAgLyohXG4gICAqIEJvb3RzdHJhcCAjeyRmaWxlfSB2NS4yLjMgKGh0dHBzOi8vZ2V0Ym9vdHN0cmFwLmNvbS8pXG4gICAqIENvcHlyaWdodCAyMDExLTIwMjIgVGhlIEJvb3RzdHJhcCBBdXRob3JzXG4gICAqIENvcHlyaWdodCAyMDExLTIwMjIgVHdpdHRlciwgSW5jLlxuICAgKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21haW4vTElDRU5TRSlcbiAgICovXG59XG5cbiIsIjpyb290IHtcbiAgLy8gTm90ZTogQ3VzdG9tIHZhcmlhYmxlIHZhbHVlcyBvbmx5IHN1cHBvcnQgU2Fzc1NjcmlwdCBpbnNpZGUgYCN7fWAuXG5cbiAgLy8gQ29sb3JzXG4gIC8vXG4gIC8vIEdlbmVyYXRlIHBhbGV0dGVzIGZvciBmdWxsIGNvbG9ycywgZ3JheXMsIGFuZCB0aGVtZSBjb2xvcnMuXG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJGNvbG9ycyB7XG4gICAgLS0jeyRwcmVmaXh9I3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkZ3JheXMge1xuICAgIC0tI3skcHJlZml4fWdyYXktI3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtcmdiIHtcbiAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn0tcmdiOiAjeyR2YWx1ZX07XG4gIH1cblxuICAtLSN7JHByZWZpeH13aGl0ZS1yZ2I6ICN7dG8tcmdiKCR3aGl0ZSl9O1xuICAtLSN7JHByZWZpeH1ibGFjay1yZ2I6ICN7dG8tcmdiKCRibGFjayl9O1xuICAtLSN7JHByZWZpeH1ib2R5LWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktY29sb3IpfTtcbiAgLS0jeyRwcmVmaXh9Ym9keS1iZy1yZ2I6ICN7dG8tcmdiKCRib2R5LWJnKX07XG5cbiAgLy8gRm9udHNcblxuICAvLyBOb3RlOiBVc2UgYGluc3BlY3RgIGZvciBsaXN0cyBzbyB0aGF0IHF1b3RlZCBpdGVtcyBrZWVwIHRoZSBxdW90ZXMuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8yMzgzI2lzc3VlY29tbWVudC0zMzYzNDkxNzJcbiAgLS0jeyRwcmVmaXh9Zm9udC1zYW5zLXNlcmlmOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYpfTtcbiAgLS0jeyRwcmVmaXh9Zm9udC1tb25vc3BhY2U6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktbW9ub3NwYWNlKX07XG4gIC0tI3skcHJlZml4fWdyYWRpZW50OiAjeyRncmFkaWVudH07XG5cbiAgLy8gUm9vdCBhbmQgYm9keVxuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcm9vdC1ib2R5LXZhcmlhYmxlc1xuICBAaWYgJGZvbnQtc2l6ZS1yb290ICE9IG51bGwge1xuICAgIC0tI3skcHJlZml4fXJvb3QtZm9udC1zaXplOiAjeyRmb250LXNpemUtcm9vdH07XG4gIH1cbiAgLS0jeyRwcmVmaXh9Ym9keS1mb250LWZhbWlseTogI3skZm9udC1mYW1pbHktYmFzZX07XG4gIEBpbmNsdWRlIHJmcygkZm9udC1zaXplLWJhc2UsIC0tI3skcHJlZml4fWJvZHktZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9Ym9keS1mb250LXdlaWdodDogI3skZm9udC13ZWlnaHQtYmFzZX07XG4gIC0tI3skcHJlZml4fWJvZHktbGluZS1oZWlnaHQ6ICN7JGxpbmUtaGVpZ2h0LWJhc2V9O1xuICAtLSN7JHByZWZpeH1ib2R5LWNvbG9yOiAjeyRib2R5LWNvbG9yfTtcbiAgQGlmICRib2R5LXRleHQtYWxpZ24gIT0gbnVsbCB7XG4gICAgLS0jeyRwcmVmaXh9Ym9keS10ZXh0LWFsaWduOiAjeyRib2R5LXRleHQtYWxpZ259O1xuICB9XG4gIC0tI3skcHJlZml4fWJvZHktYmc6ICN7JGJvZHktYmd9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHJvb3QtYm9keS12YXJpYWJsZXNcblxuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcm9vdC1ib3JkZXItdmFyXG4gIC0tI3skcHJlZml4fWJvcmRlci13aWR0aDogI3skYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXN0eWxlOiAjeyRib3JkZXItc3R5bGV9O1xuICAtLSN7JHByZWZpeH1ib3JkZXItY29sb3I6ICN7JGJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJvcmRlci1jb2xvci10cmFuc2x1Y2VudDogI3skYm9yZGVyLWNvbG9yLXRyYW5zbHVjZW50fTtcblxuICAtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzOiAjeyRib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1zbTogI3skYm9yZGVyLXJhZGl1cy1zbX07XG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtbGc6ICN7JGJvcmRlci1yYWRpdXMtbGd9O1xuICAtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXhsOiAjeyRib3JkZXItcmFkaXVzLXhsfTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy0yeGw6ICN7JGJvcmRlci1yYWRpdXMtMnhsfTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1waWxsOiAjeyRib3JkZXItcmFkaXVzLXBpbGx9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHJvb3QtYm9yZGVyLXZhclxuXG4gIC0tI3skcHJlZml4fWxpbmstY29sb3I6ICN7JGxpbmstY29sb3J9O1xuICAtLSN7JHByZWZpeH1saW5rLWhvdmVyLWNvbG9yOiAjeyRsaW5rLWhvdmVyLWNvbG9yfTtcblxuICAtLSN7JHByZWZpeH1jb2RlLWNvbG9yOiAjeyRjb2RlLWNvbG9yfTtcblxuICAtLSN7JHByZWZpeH1oaWdobGlnaHQtYmc6ICN7JG1hcmstYmd9O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktYmxhY2tsaXN0LCBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG5cbi8vIFNDU1MgUkZTIG1peGluXG4vL1xuLy8gQXV0b21hdGVkIHJlc3BvbnNpdmUgdmFsdWVzIGZvciBmb250IHNpemVzLCBwYWRkaW5ncywgbWFyZ2lucyBhbmQgbXVjaCBtb3JlXG4vL1xuLy8gTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvYmxvYi9tYWluL0xJQ0VOU0UpXG5cbi8vIENvbmZpZ3VyYXRpb25cblxuLy8gQmFzZSB2YWx1ZVxuJHJmcy1iYXNlLXZhbHVlOiAxLjI1cmVtICFkZWZhdWx0O1xuJHJmcy11bml0OiByZW0gIWRlZmF1bHQ7XG5cbkBpZiAkcmZzLXVuaXQgIT0gcmVtIGFuZCAkcmZzLXVuaXQgIT0gcHgge1xuICBAZXJyb3IgXCJgI3skcmZzLXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLXVuaXQuIFVzZSBgcHhgIG9yIGByZW1gLlwiO1xufVxuXG4vLyBCcmVha3BvaW50IGF0IHdoZXJlIHZhbHVlcyBzdGFydCBkZWNyZWFzaW5nIGlmIHNjcmVlbiB3aWR0aCBpcyBzbWFsbGVyXG4kcmZzLWJyZWFrcG9pbnQ6IDEyMDBweCAhZGVmYXVsdDtcbiRyZnMtYnJlYWtwb2ludC11bml0OiBweCAhZGVmYXVsdDtcblxuQGlmICRyZnMtYnJlYWtwb2ludC11bml0ICE9IHB4IGFuZCAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSBlbSBhbmQgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gcmVtIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1icmVha3BvaW50LXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC4gVXNlIGBweGAsIGBlbWAgb3IgYHJlbWAuXCI7XG59XG5cbi8vIFJlc2l6ZSB2YWx1ZXMgYmFzZWQgb24gc2NyZWVuIGhlaWdodCBhbmQgd2lkdGhcbiRyZnMtdHdvLWRpbWVuc2lvbmFsOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gRmFjdG9yIG9mIGRlY3JlYXNlXG4kcmZzLWZhY3RvcjogMTAgIWRlZmF1bHQ7XG5cbkBpZiB0eXBlLW9mKCRyZnMtZmFjdG9yKSAhPSBudW1iZXIgb3IgJHJmcy1mYWN0b3IgPD0gMSB7XG4gIEBlcnJvciBcImAjeyRyZnMtZmFjdG9yfWAgaXMgbm90IGEgdmFsaWQgICRyZnMtZmFjdG9yLCBpdCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiAxLlwiO1xufVxuXG4vLyBNb2RlLiBQb3NzaWJpbGl0aWVzOiBcIm1pbi1tZWRpYS1xdWVyeVwiLCBcIm1heC1tZWRpYS1xdWVyeVwiXG4kcmZzLW1vZGU6IG1pbi1tZWRpYS1xdWVyeSAhZGVmYXVsdDtcblxuLy8gR2VuZXJhdGUgZW5hYmxlIG9yIGRpc2FibGUgY2xhc3Nlcy4gUG9zc2liaWxpdGllczogZmFsc2UsIFwiZW5hYmxlXCIgb3IgXCJkaXNhYmxlXCJcbiRyZnMtY2xhc3M6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyAxIHJlbSA9ICRyZnMtcmVtLXZhbHVlIHB4XG4kcmZzLXJlbS12YWx1ZTogMTYgIWRlZmF1bHQ7XG5cbi8vIFNhZmFyaSBpZnJhbWUgcmVzaXplIGJ1ZzogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvcmZzL2lzc3Vlcy8xNFxuJHJmcy1zYWZhcmktaWZyYW1lLXJlc2l6ZS1idWctZml4OiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gRGlzYWJsZSBSRlMgYnkgc2V0dGluZyAkZW5hYmxlLXJmcyB0byBmYWxzZVxuJGVuYWJsZS1yZnM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIENhY2hlICRyZnMtYmFzZS12YWx1ZSB1bml0XG4kcmZzLWJhc2UtdmFsdWUtdW5pdDogdW5pdCgkcmZzLWJhc2UtdmFsdWUpO1xuXG5AZnVuY3Rpb24gZGl2aWRlKCRkaXZpZGVuZCwgJGRpdmlzb3IsICRwcmVjaXNpb246IDEwKSB7XG4gICRzaWduOiBpZigkZGl2aWRlbmQgPiAwIGFuZCAkZGl2aXNvciA+IDAgb3IgJGRpdmlkZW5kIDwgMCBhbmQgJGRpdmlzb3IgPCAwLCAxLCAtMSk7XG4gICRkaXZpZGVuZDogYWJzKCRkaXZpZGVuZCk7XG4gICRkaXZpc29yOiBhYnMoJGRpdmlzb3IpO1xuICBAaWYgJGRpdmlkZW5kID09IDAge1xuICAgIEByZXR1cm4gMDtcbiAgfVxuICBAaWYgJGRpdmlzb3IgPT0gMCB7XG4gICAgQGVycm9yIFwiQ2Fubm90IGRpdmlkZSBieSAwXCI7XG4gIH1cbiAgJHJlbWFpbmRlcjogJGRpdmlkZW5kO1xuICAkcmVzdWx0OiAwO1xuICAkZmFjdG9yOiAxMDtcbiAgQHdoaWxlICgkcmVtYWluZGVyID4gMCBhbmQgJHByZWNpc2lvbiA+PSAwKSB7XG4gICAgJHF1b3RpZW50OiAwO1xuICAgIEB3aGlsZSAoJHJlbWFpbmRlciA+PSAkZGl2aXNvcikge1xuICAgICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAtICRkaXZpc29yO1xuICAgICAgJHF1b3RpZW50OiAkcXVvdGllbnQgKyAxO1xuICAgIH1cbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogMTAgKyAkcXVvdGllbnQ7XG4gICAgJGZhY3RvcjogJGZhY3RvciAqIC4xO1xuICAgICRyZW1haW5kZXI6ICRyZW1haW5kZXIgKiAxMDtcbiAgICAkcHJlY2lzaW9uOiAkcHJlY2lzaW9uIC0gMTtcbiAgICBAaWYgKCRwcmVjaXNpb24gPCAwIGFuZCAkcmVtYWluZGVyID49ICRkaXZpc29yICogNSkge1xuICAgICAgJHJlc3VsdDogJHJlc3VsdCArIDE7XG4gICAgfVxuICB9XG4gICRyZXN1bHQ6ICRyZXN1bHQgKiAkZmFjdG9yICogJHNpZ247XG4gICRkaXZpZGVuZC11bml0OiB1bml0KCRkaXZpZGVuZCk7XG4gICRkaXZpc29yLXVuaXQ6IHVuaXQoJGRpdmlzb3IpO1xuICAkdW5pdC1tYXA6IChcbiAgICBcInB4XCI6IDFweCxcbiAgICBcInJlbVwiOiAxcmVtLFxuICAgIFwiZW1cIjogMWVtLFxuICAgIFwiJVwiOiAxJVxuICApO1xuICBAaWYgKCRkaXZpZGVuZC11bml0ICE9ICRkaXZpc29yLXVuaXQgYW5kIG1hcC1oYXMta2V5KCR1bml0LW1hcCwgJGRpdmlkZW5kLXVuaXQpKSB7XG4gICAgJHJlc3VsdDogJHJlc3VsdCAqIG1hcC1nZXQoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCk7XG4gIH1cbiAgQHJldHVybiAkcmVzdWx0O1xufVxuXG4vLyBSZW1vdmUgcHgtdW5pdCBmcm9tICRyZnMtYmFzZS12YWx1ZSBmb3IgY2FsY3VsYXRpb25zXG5AaWYgJHJmcy1iYXNlLXZhbHVlLXVuaXQgPT0gcHgge1xuICAkcmZzLWJhc2UtdmFsdWU6IGRpdmlkZSgkcmZzLWJhc2UtdmFsdWUsICRyZnMtYmFzZS12YWx1ZSAqIDAgKyAxKTtcbn1cbkBlbHNlIGlmICRyZnMtYmFzZS12YWx1ZS11bml0ID09IHJlbSB7XG4gICRyZnMtYmFzZS12YWx1ZTogZGl2aWRlKCRyZnMtYmFzZS12YWx1ZSwgZGl2aWRlKCRyZnMtYmFzZS12YWx1ZSAqIDAgKyAxLCAkcmZzLXJlbS12YWx1ZSkpO1xufVxuXG4vLyBDYWNoZSAkcmZzLWJyZWFrcG9pbnQgdW5pdCB0byBwcmV2ZW50IG11bHRpcGxlIGNhbGxzXG4kcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZTogdW5pdCgkcmZzLWJyZWFrcG9pbnQpO1xuXG4vLyBSZW1vdmUgdW5pdCBmcm9tICRyZnMtYnJlYWtwb2ludCBmb3IgY2FsY3VsYXRpb25zXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gcHgge1xuICAkcmZzLWJyZWFrcG9pbnQ6IGRpdmlkZSgkcmZzLWJyZWFrcG9pbnQsICRyZnMtYnJlYWtwb2ludCAqIDAgKyAxKTtcbn1cbkBlbHNlIGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IHJlbSBvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcImVtXCIge1xuICAkcmZzLWJyZWFrcG9pbnQ6IGRpdmlkZSgkcmZzLWJyZWFrcG9pbnQsIGRpdmlkZSgkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSwgJHJmcy1yZW0tdmFsdWUpKTtcbn1cblxuLy8gQ2FsY3VsYXRlIHRoZSBtZWRpYSBxdWVyeSB2YWx1ZVxuJHJmcy1tcS12YWx1ZTogaWYoJHJmcy1icmVha3BvaW50LXVuaXQgPT0gcHgsICN7JHJmcy1icmVha3BvaW50fXB4LCAje2RpdmlkZSgkcmZzLWJyZWFrcG9pbnQsICRyZnMtcmVtLXZhbHVlKX0jeyRyZnMtYnJlYWtwb2ludC11bml0fSk7XG4kcmZzLW1xLXByb3BlcnR5LXdpZHRoOiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCBtYXgtd2lkdGgsIG1pbi13aWR0aCk7XG4kcmZzLW1xLXByb3BlcnR5LWhlaWdodDogaWYoJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSwgbWF4LWhlaWdodCwgbWluLWhlaWdodCk7XG5cbi8vIEludGVybmFsIG1peGluIHVzZWQgdG8gZGV0ZXJtaW5lIHdoaWNoIG1lZGlhIHF1ZXJ5IG5lZWRzIHRvIGJlIHVzZWRcbkBtaXhpbiBfcmZzLW1lZGlhLXF1ZXJ5IHtcbiAgQGlmICRyZnMtdHdvLWRpbWVuc2lvbmFsIHtcbiAgICBAaWYgJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSB7XG4gICAgICBAbWVkaWEgKCN7JHJmcy1tcS1wcm9wZXJ0eS13aWR0aH06ICN7JHJmcy1tcS12YWx1ZX0pLCAoI3skcmZzLW1xLXByb3BlcnR5LWhlaWdodH06ICN7JHJmcy1tcS12YWx1ZX0pIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBtZWRpYSAoI3skcmZzLW1xLXByb3BlcnR5LXdpZHRofTogI3skcmZzLW1xLXZhbHVlfSkgYW5kICgjeyRyZnMtbXEtcHJvcGVydHktaGVpZ2h0fTogI3skcmZzLW1xLXZhbHVlfSkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBtZWRpYSAoI3skcmZzLW1xLXByb3BlcnR5LXdpZHRofTogI3skcmZzLW1xLXZhbHVlfSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIEludGVybmFsIG1peGluIHRoYXQgYWRkcyBkaXNhYmxlIGNsYXNzZXMgdG8gdGhlIHNlbGVjdG9yIGlmIG5lZWRlZC5cbkBtaXhpbiBfcmZzLXJ1bGUge1xuICBAaWYgJHJmcy1jbGFzcyA9PSBkaXNhYmxlIGFuZCAkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5IHtcbiAgICAvLyBBZGRpbmcgYW4gZXh0cmEgY2xhc3MgaW5jcmVhc2VzIHNwZWNpZmljaXR5LCB3aGljaCBwcmV2ZW50cyB0aGUgbWVkaWEgcXVlcnkgdG8gb3ZlcnJpZGUgdGhlIHByb3BlcnR5XG4gICAgJixcbiAgICAuZGlzYWJsZS1yZnMgJixcbiAgICAmLmRpc2FibGUtcmZzIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcmZzLWNsYXNzID09IGVuYWJsZSBhbmQgJHJmcy1tb2RlID09IG1pbi1tZWRpYS1xdWVyeSB7XG4gICAgLmVuYWJsZS1yZnMgJixcbiAgICAmLmVuYWJsZS1yZnMge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBJbnRlcm5hbCBtaXhpbiB0aGF0IGFkZHMgZW5hYmxlIGNsYXNzZXMgdG8gdGhlIHNlbGVjdG9yIGlmIG5lZWRlZC5cbkBtaXhpbiBfcmZzLW1lZGlhLXF1ZXJ5LXJ1bGUge1xuXG4gIEBpZiAkcmZzLWNsYXNzID09IGVuYWJsZSB7XG4gICAgQGlmICRyZnMtbW9kZSA9PSBtaW4tbWVkaWEtcXVlcnkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgX3Jmcy1tZWRpYS1xdWVyeSB7XG4gICAgICAuZW5hYmxlLXJmcyAmLFxuICAgICAgJi5lbmFibGUtcmZzIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAaWYgJHJmcy1jbGFzcyA9PSBkaXNhYmxlIGFuZCAkcmZzLW1vZGUgPT0gbWluLW1lZGlhLXF1ZXJ5IHtcbiAgICAgIC5kaXNhYmxlLXJmcyAmLFxuICAgICAgJi5kaXNhYmxlLXJmcyB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBfcmZzLW1lZGlhLXF1ZXJ5IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBIZWxwZXIgZnVuY3Rpb24gdG8gZ2V0IHRoZSBmb3JtYXR0ZWQgbm9uLXJlc3BvbnNpdmUgdmFsdWVcbkBmdW5jdGlvbiByZnMtdmFsdWUoJHZhbHVlcykge1xuICAvLyBDb252ZXJ0IHRvIGxpc3RcbiAgJHZhbHVlczogaWYodHlwZS1vZigkdmFsdWVzKSAhPSBsaXN0LCAoJHZhbHVlcywpLCAkdmFsdWVzKTtcblxuICAkdmFsOiAnJztcblxuICAvLyBMb29wIG92ZXIgZWFjaCB2YWx1ZSBhbmQgY2FsY3VsYXRlIHZhbHVlXG4gIEBlYWNoICR2YWx1ZSBpbiAkdmFsdWVzIHtcbiAgICBAaWYgJHZhbHVlID09IDAge1xuICAgICAgJHZhbDogJHZhbCArICcgMCc7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIENhY2hlICR2YWx1ZSB1bml0XG4gICAgICAkdW5pdDogaWYodHlwZS1vZigkdmFsdWUpID09IFwibnVtYmVyXCIsIHVuaXQoJHZhbHVlKSwgZmFsc2UpO1xuXG4gICAgICBAaWYgJHVuaXQgPT0gcHgge1xuICAgICAgICAvLyBDb252ZXJ0IHRvIHJlbSBpZiBuZWVkZWRcbiAgICAgICAgJHZhbDogJHZhbCArICcgJyArIGlmKCRyZnMtdW5pdCA9PSByZW0sICN7ZGl2aWRlKCR2YWx1ZSwgJHZhbHVlICogMCArICRyZnMtcmVtLXZhbHVlKX1yZW0sICR2YWx1ZSk7XG4gICAgICB9XG4gICAgICBAZWxzZSBpZiAkdW5pdCA9PSByZW0ge1xuICAgICAgICAvLyBDb252ZXJ0IHRvIHB4IGlmIG5lZWRlZFxuICAgICAgICAkdmFsOiAkdmFsICsgJyAnICsgaWYoJHJmcy11bml0ID09IHB4LCAje2RpdmlkZSgkdmFsdWUsICR2YWx1ZSAqIDAgKyAxKSAqICRyZnMtcmVtLXZhbHVlfXB4LCAkdmFsdWUpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAvLyBJZiAkdmFsdWUgaXNuJ3QgYSBudW1iZXIgKGxpa2UgaW5oZXJpdCkgb3IgJHZhbHVlIGhhcyBhIHVuaXQgKG5vdCBweCBvciByZW0sIGxpa2UgMS41ZW0pIG9yICQgaXMgMCwganVzdCBwcmludCB0aGUgdmFsdWVcbiAgICAgICAgJHZhbDogJHZhbCArICcgJyArICR2YWx1ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBSZW1vdmUgZmlyc3Qgc3BhY2VcbiAgQHJldHVybiB1bnF1b3RlKHN0ci1zbGljZSgkdmFsLCAyKSk7XG59XG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byBnZXQgdGhlIHJlc3BvbnNpdmUgdmFsdWUgY2FsY3VsYXRlZCBieSBSRlNcbkBmdW5jdGlvbiByZnMtZmx1aWQtdmFsdWUoJHZhbHVlcykge1xuICAvLyBDb252ZXJ0IHRvIGxpc3RcbiAgJHZhbHVlczogaWYodHlwZS1vZigkdmFsdWVzKSAhPSBsaXN0LCAoJHZhbHVlcywpLCAkdmFsdWVzKTtcblxuICAkdmFsOiAnJztcblxuICAvLyBMb29wIG92ZXIgZWFjaCB2YWx1ZSBhbmQgY2FsY3VsYXRlIHZhbHVlXG4gIEBlYWNoICR2YWx1ZSBpbiAkdmFsdWVzIHtcbiAgICBAaWYgJHZhbHVlID09IDAge1xuICAgICAgJHZhbDogJHZhbCArICcgMCc7XG4gICAgfVxuXG4gICAgQGVsc2Uge1xuICAgICAgLy8gQ2FjaGUgJHZhbHVlIHVuaXRcbiAgICAgICR1bml0OiBpZih0eXBlLW9mKCR2YWx1ZSkgPT0gXCJudW1iZXJcIiwgdW5pdCgkdmFsdWUpLCBmYWxzZSk7XG5cbiAgICAgIC8vIElmICR2YWx1ZSBpc24ndCBhIG51bWJlciAobGlrZSBpbmhlcml0KSBvciAkdmFsdWUgaGFzIGEgdW5pdCAobm90IHB4IG9yIHJlbSwgbGlrZSAxLjVlbSkgb3IgJCBpcyAwLCBqdXN0IHByaW50IHRoZSB2YWx1ZVxuICAgICAgQGlmIG5vdCAkdW5pdCBvciAkdW5pdCAhPSBweCBhbmQgJHVuaXQgIT0gcmVtIHtcbiAgICAgICAgJHZhbDogJHZhbCArICcgJyArICR2YWx1ZTtcbiAgICAgIH1cblxuICAgICAgQGVsc2Uge1xuICAgICAgICAvLyBSZW1vdmUgdW5pdCBmcm9tICR2YWx1ZSBmb3IgY2FsY3VsYXRpb25zXG4gICAgICAgICR2YWx1ZTogZGl2aWRlKCR2YWx1ZSwgJHZhbHVlICogMCArIGlmKCR1bml0ID09IHB4LCAxLCBkaXZpZGUoMSwgJHJmcy1yZW0tdmFsdWUpKSk7XG5cbiAgICAgICAgLy8gT25seSBhZGQgdGhlIG1lZGlhIHF1ZXJ5IGlmIHRoZSB2YWx1ZSBpcyBncmVhdGVyIHRoYW4gdGhlIG1pbmltdW0gdmFsdWVcbiAgICAgICAgQGlmIGFicygkdmFsdWUpIDw9ICRyZnMtYmFzZS12YWx1ZSBvciBub3QgJGVuYWJsZS1yZnMge1xuICAgICAgICAgICR2YWw6ICR2YWwgKyAnICcgKyAgaWYoJHJmcy11bml0ID09IHJlbSwgI3tkaXZpZGUoJHZhbHVlLCAkcmZzLXJlbS12YWx1ZSl9cmVtLCAjeyR2YWx1ZX1weCk7XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIC8vIENhbGN1bGF0ZSB0aGUgbWluaW11bSB2YWx1ZVxuICAgICAgICAgICR2YWx1ZS1taW46ICRyZnMtYmFzZS12YWx1ZSArIGRpdmlkZShhYnMoJHZhbHVlKSAtICRyZnMtYmFzZS12YWx1ZSwgJHJmcy1mYWN0b3IpO1xuXG4gICAgICAgICAgLy8gQ2FsY3VsYXRlIGRpZmZlcmVuY2UgYmV0d2VlbiAkdmFsdWUgYW5kIHRoZSBtaW5pbXVtIHZhbHVlXG4gICAgICAgICAgJHZhbHVlLWRpZmY6IGFicygkdmFsdWUpIC0gJHZhbHVlLW1pbjtcblxuICAgICAgICAgIC8vIEJhc2UgdmFsdWUgZm9ybWF0dGluZ1xuICAgICAgICAgICRtaW4td2lkdGg6IGlmKCRyZnMtdW5pdCA9PSByZW0sICN7ZGl2aWRlKCR2YWx1ZS1taW4sICRyZnMtcmVtLXZhbHVlKX1yZW0sICN7JHZhbHVlLW1pbn1weCk7XG5cbiAgICAgICAgICAvLyBVc2UgbmVnYXRpdmUgdmFsdWUgaWYgbmVlZGVkXG4gICAgICAgICAgJG1pbi13aWR0aDogaWYoJHZhbHVlIDwgMCwgLSRtaW4td2lkdGgsICRtaW4td2lkdGgpO1xuXG4gICAgICAgICAgLy8gVXNlIGB2bWluYCBpZiB0d28tZGltZW5zaW9uYWwgaXMgZW5hYmxlZFxuICAgICAgICAgICR2YXJpYWJsZS11bml0OiBpZigkcmZzLXR3by1kaW1lbnNpb25hbCwgdm1pbiwgdncpO1xuXG4gICAgICAgICAgLy8gQ2FsY3VsYXRlIHRoZSB2YXJpYWJsZSB3aWR0aCBiZXR3ZWVuIDAgYW5kICRyZnMtYnJlYWtwb2ludFxuICAgICAgICAgICR2YXJpYWJsZS13aWR0aDogI3tkaXZpZGUoJHZhbHVlLWRpZmYgKiAxMDAsICRyZnMtYnJlYWtwb2ludCl9I3skdmFyaWFibGUtdW5pdH07XG5cbiAgICAgICAgICAvLyBSZXR1cm4gdGhlIGNhbGN1bGF0ZWQgdmFsdWVcbiAgICAgICAgICAkdmFsOiAkdmFsICsgJyBjYWxjKCcgKyAkbWluLXdpZHRoICsgaWYoJHZhbHVlIDwgMCwgJyAtICcsICcgKyAnKSArICR2YXJpYWJsZS13aWR0aCArICcpJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlbW92ZSBmaXJzdCBzcGFjZVxuICBAcmV0dXJuIHVucXVvdGUoc3RyLXNsaWNlKCR2YWwsIDIpKTtcbn1cblxuLy8gUkZTIG1peGluXG5AbWl4aW4gcmZzKCR2YWx1ZXMsICRwcm9wZXJ0eTogZm9udC1zaXplKSB7XG4gIEBpZiAkdmFsdWVzICE9IG51bGwge1xuICAgICR2YWw6IHJmcy12YWx1ZSgkdmFsdWVzKTtcbiAgICAkZmx1aWRWYWw6IHJmcy1mbHVpZC12YWx1ZSgkdmFsdWVzKTtcblxuICAgIC8vIERvIG5vdCBwcmludCB0aGUgbWVkaWEgcXVlcnkgaWYgcmVzcG9uc2l2ZSAmIG5vbi1yZXNwb25zaXZlIHZhbHVlcyBhcmUgdGhlIHNhbWVcbiAgICBAaWYgJHZhbCA9PSAkZmx1aWRWYWwge1xuICAgICAgI3skcHJvcGVydHl9OiAkdmFsO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBfcmZzLXJ1bGUge1xuICAgICAgICAjeyRwcm9wZXJ0eX06IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksICR2YWwsICRmbHVpZFZhbCk7XG5cbiAgICAgICAgLy8gSW5jbHVkZSBzYWZhcmkgaWZyYW1lIHJlc2l6ZSBmaXggaWYgbmVlZGVkXG4gICAgICAgIG1pbi13aWR0aDogaWYoJHJmcy1zYWZhcmktaWZyYW1lLXJlc2l6ZS1idWctZml4LCAoMCAqIDF2dyksIG51bGwpO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBfcmZzLW1lZGlhLXF1ZXJ5LXJ1bGUge1xuICAgICAgICAjeyRwcm9wZXJ0eX06IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksICRmbHVpZFZhbCwgJHZhbCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFNob3J0aGFuZCBoZWxwZXIgbWl4aW5zXG5AbWl4aW4gZm9udC1zaXplKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlKTtcbn1cblxuQG1peGluIHBhZGRpbmcoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIHBhZGRpbmcpO1xufVxuXG5AbWl4aW4gcGFkZGluZy10b3AoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIHBhZGRpbmctdG9wKTtcbn1cblxuQG1peGluIHBhZGRpbmctcmlnaHQoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIHBhZGRpbmctcmlnaHQpO1xufVxuXG5AbWl4aW4gcGFkZGluZy1ib3R0b20oJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIHBhZGRpbmctYm90dG9tKTtcbn1cblxuQG1peGluIHBhZGRpbmctbGVmdCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1sZWZ0KTtcbn1cblxuQG1peGluIG1hcmdpbigkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luKTtcbn1cblxuQG1peGluIG1hcmdpbi10b3AoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbi10b3ApO1xufVxuXG5AbWl4aW4gbWFyZ2luLXJpZ2h0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tcmlnaHQpO1xufVxuXG5AbWl4aW4gbWFyZ2luLWJvdHRvbSgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luLWJvdHRvbSk7XG59XG5cbkBtaXhpbiBtYXJnaW4tbGVmdCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luLWxlZnQpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGUsIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXhcblxuXG4vLyBSZWJvb3Rcbi8vXG4vLyBOb3JtYWxpemF0aW9uIG9mIEhUTUwgZWxlbWVudHMsIG1hbnVhbGx5IGZvcmtlZCBmcm9tIE5vcm1hbGl6ZS5jc3MgdG8gcmVtb3ZlXG4vLyBzdHlsZXMgdGFyZ2V0aW5nIGlycmVsZXZhbnQgYnJvd3NlcnMgd2hpbGUgYXBwbHlpbmcgbmV3IHN0eWxlcy5cbi8vXG4vLyBOb3JtYWxpemUgaXMgbGljZW5zZWQgTUlULiBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzXG5cblxuLy8gRG9jdW1lbnRcbi8vXG4vLyBDaGFuZ2UgZnJvbSBgYm94LXNpemluZzogY29udGVudC1ib3hgIHNvIHRoYXQgYHdpZHRoYCBpcyBub3QgYWZmZWN0ZWQgYnkgYHBhZGRpbmdgIG9yIGBib3JkZXJgLlxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5cbi8vIFJvb3Rcbi8vXG4vLyBBYmlsaXR5IHRvIHRoZSB2YWx1ZSBvZiB0aGUgcm9vdCBmb250IHNpemVzLCBhZmZlY3RpbmcgdGhlIHZhbHVlIG9mIGByZW1gLlxuLy8gbnVsbCBieSBkZWZhdWx0LCB0aHVzIG5vdGhpbmcgaXMgZ2VuZXJhdGVkLlxuXG46cm9vdCB7XG4gIEBpZiAkZm9udC1zaXplLXJvb3QgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1yb290LWZvbnQtc2l6ZSkpO1xuICB9XG5cbiAgQGlmICRlbmFibGUtc21vb3RoLXNjcm9sbCB7XG4gICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiBuby1wcmVmZXJlbmNlKSB7XG4gICAgICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBCb2R5XG4vL1xuLy8gMS4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuLy8gMi4gQXMgYSBiZXN0IHByYWN0aWNlLCBhcHBseSBhIGRlZmF1bHQgYGJhY2tncm91bmQtY29sb3JgLlxuLy8gMy4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4vLyA0LiBDaGFuZ2UgdGhlIGRlZmF1bHQgdGFwIGhpZ2hsaWdodCB0byBiZSBjb21wbGV0ZWx5IHRyYW5zcGFyZW50IGluIGlPUy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHJlYm9vdC1ib2R5LXJ1bGVzXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyAvLyAxXG4gIGZvbnQtZmFtaWx5OiB2YXIoLS0jeyRwcmVmaXh9Ym9keS1mb250LWZhbWlseSk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1mb250LXNpemUpKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1ib2R5LWZvbnQtd2VpZ2h0KTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogdmFyKC0tI3skcHJlZml4fWJvZHktdGV4dC1hbGlnbik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKTsgLy8gMlxuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDNcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKCRibGFjaywgMCk7IC8vIDRcbn1cbi8vIHNjc3MtZG9jcy1lbmQgcmVib290LWJvZHktcnVsZXNcblxuXG4vLyBDb250ZW50IGdyb3VwaW5nXG4vL1xuLy8gMS4gUmVzZXQgRmlyZWZveCdzIGdyYXkgY29sb3JcblxuaHIge1xuICBtYXJnaW46ICRoci1tYXJnaW4teSAwO1xuICBjb2xvcjogJGhyLWNvbG9yOyAvLyAxXG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogJGhyLWJvcmRlci13aWR0aCBzb2xpZCAkaHItYm9yZGVyLWNvbG9yO1xuICBvcGFjaXR5OiAkaHItb3BhY2l0eTtcbn1cblxuXG4vLyBUeXBvZ3JhcGh5XG4vL1xuLy8gMS4gUmVtb3ZlIHRvcCBtYXJnaW5zIGZyb20gaGVhZGluZ3Ncbi8vICAgIEJ5IGRlZmF1bHQsIGA8aDE+YC1gPGg2PmAgYWxsIHJlY2VpdmUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gV2UgbnVrZSB0aGUgdG9wXG4vLyAgICBtYXJnaW4gZm9yIGVhc2llciBjb250cm9sIHdpdGhpbiB0eXBlIHNjYWxlcyBhcyBpdCBhdm9pZHMgbWFyZ2luIGNvbGxhcHNpbmcuXG5cbiVoZWFkaW5nIHtcbiAgbWFyZ2luLXRvcDogMDsgLy8gMVxuICBtYXJnaW4tYm90dG9tOiAkaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTtcbiAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgZm9udC1zdHlsZTogJGhlYWRpbmdzLWZvbnQtc3R5bGU7XG4gIGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG59XG5cbmgxIHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoMS1mb250LXNpemUpO1xufVxuXG5oMiB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDItZm9udC1zaXplKTtcbn1cblxuaDMge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGgzLWZvbnQtc2l6ZSk7XG59XG5cbmg0IHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoNC1mb250LXNpemUpO1xufVxuXG5oNSB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDUtZm9udC1zaXplKTtcbn1cblxuaDYge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGg2LWZvbnQtc2l6ZSk7XG59XG5cblxuLy8gUmVzZXQgbWFyZ2lucyBvbiBwYXJhZ3JhcGhzXG4vL1xuLy8gU2ltaWxhcmx5LCB0aGUgdG9wIG1hcmdpbiBvbiBgPHA+YHMgZ2V0IHJlc2V0LiBIb3dldmVyLCB3ZSBhbHNvIHJlc2V0IHRoZVxuLy8gYm90dG9tIG1hcmdpbiB0byB1c2UgYHJlbWAgdW5pdHMgaW5zdGVhZCBvZiBgZW1gLlxuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xufVxuXG5cbi8vIEFiYnJldmlhdGlvbnNcbi8vXG4vLyAxLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4vLyAyLiBBZGQgZXhwbGljaXQgY3Vyc29yIHRvIGluZGljYXRlIGNoYW5nZWQgYmVoYXZpb3IuXG4vLyAzLiBQcmV2ZW50IHRoZSB0ZXh0LWRlY29yYXRpb24gdG8gYmUgc2tpcHBlZC5cblxuYWJiclt0aXRsZV0ge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDFcbiAgY3Vyc29yOiBoZWxwOyAvLyAyXG4gIHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogbm9uZTsgLy8gM1xufVxuXG5cbi8vIEFkZHJlc3NcblxuYWRkcmVzcyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cblxuLy8gTGlzdHNcblxub2wsXG51bCB7XG4gIHBhZGRpbmctbGVmdDogMnJlbTtcbn1cblxub2wsXG51bCxcbmRsIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxub2wgb2wsXG51bCB1bCxcbm9sIHVsLFxudWwgb2wge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5kdCB7XG4gIGZvbnQtd2VpZ2h0OiAkZHQtZm9udC13ZWlnaHQ7XG59XG5cbi8vIDEuIFVuZG8gYnJvd3NlciBkZWZhdWx0XG5cbmRkIHtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwOyAvLyAxXG59XG5cblxuLy8gQmxvY2txdW90ZVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuXG4vLyBTdHJvbmdcbi8vXG4vLyBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlcjtcbn1cblxuXG4vLyBTbWFsbFxuLy9cbi8vIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzXG5cbnNtYWxsIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRzbWFsbC1mb250LXNpemUpO1xufVxuXG5cbi8vIE1hcmtcblxubWFyayB7XG4gIHBhZGRpbmc6ICRtYXJrLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1oaWdobGlnaHQtYmcpO1xufVxuXG5cbi8vIFN1YiBhbmQgU3VwXG4vL1xuLy8gUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4vLyBhbGwgYnJvd3NlcnMuXG5cbnN1YixcbnN1cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRzdWItc3VwLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7IGJvdHRvbTogLS4yNWVtOyB9XG5zdXAgeyB0b3A6IC0uNWVtOyB9XG5cblxuLy8gTGlua3NcblxuYSB7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGluay1jb2xvcik7XG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxufVxuXG4vLyBBbmQgdW5kbyB0aGVzZSBzdHlsZXMgZm9yIHBsYWNlaG9sZGVyIGxpbmtzL25hbWVkIGFuY2hvcnMgKHdpdGhvdXQgaHJlZikuXG4vLyBJdCB3b3VsZCBiZSBtb3JlIHN0cmFpZ2h0Zm9yd2FyZCB0byBqdXN0IHVzZSBhW2hyZWZdIGluIHByZXZpb3VzIGJsb2NrLCBidXQgdGhhdFxuLy8gY2F1c2VzIHNwZWNpZmljaXR5IGlzc3VlcyBpbiBtYW55IG90aGVyIHN0eWxlcyB0aGF0IGFyZSB0b28gY29tcGxleCB0byBmaXguXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTQwMlxuXG5hOm5vdChbaHJlZl0pOm5vdChbY2xhc3NdKSB7XG4gICYsXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG5cbi8vIENvZGVcblxucHJlLFxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWNvZGU7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgxZW0pOyAvLyBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG59XG5cbi8vIDEuIFJlbW92ZSBicm93c2VyIGRlZmF1bHQgdG9wIG1hcmdpblxuLy8gMi4gUmVzZXQgYnJvd3NlciBkZWZhdWx0IG9mIGAxZW1gIHRvIHVzZSBgcmVtYHNcbi8vIDMuIERvbid0IGFsbG93IGNvbnRlbnQgdG8gYnJlYWsgb3V0c2lkZVxuXG5wcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMDsgLy8gMVxuICBtYXJnaW4tYm90dG9tOiAxcmVtOyAvLyAyXG4gIG92ZXJmbG93OiBhdXRvOyAvLyAzXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogJHByZS1jb2xvcjtcblxuICAvLyBBY2NvdW50IGZvciBzb21lIGNvZGUgb3V0cHV0cyB0aGF0IHBsYWNlIGNvZGUgdGFncyBpbiBwcmUgdGFnc1xuICBjb2RlIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgd29yZC1icmVhazogbm9ybWFsO1xuICB9XG59XG5cbmNvZGUge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNvZGUtZm9udC1zaXplKTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1jb2RlLWNvbG9yKTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuXG4gIC8vIFN0cmVhbWxpbmUgdGhlIHN0eWxlIHdoZW4gaW5zaWRlIGFuY2hvcnMgdG8gYXZvaWQgYnJva2VuIHVuZGVybGluZSBhbmQgbW9yZVxuICBhID4gJiB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxua2JkIHtcbiAgcGFkZGluZzogJGtiZC1wYWRkaW5nLXkgJGtiZC1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgka2JkLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAka2JkLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAka2JkLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLXNtKTtcblxuICBrYmQge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKDFlbSk7XG4gICAgZm9udC13ZWlnaHQ6ICRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0O1xuICB9XG59XG5cblxuLy8gRmlndXJlc1xuLy9cbi8vIEFwcGx5IGEgY29uc2lzdGVudCBtYXJnaW4gc3RyYXRlZ3kgKG1hdGNoZXMgb3VyIHR5cGUgc3R5bGVzKS5cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuXG4vLyBJbWFnZXMgYW5kIGNvbnRlbnRcblxuaW1nLFxuc3ZnIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuXG4vLyBUYWJsZXNcbi8vXG4vLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzXG5cbnRhYmxlIHtcbiAgY2FwdGlvbi1zaWRlOiBib3R0b207XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG59XG5cbmNhcHRpb24ge1xuICBwYWRkaW5nLXRvcDogJHRhYmxlLWNlbGwtcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJHRhYmxlLWNlbGwtcGFkZGluZy15O1xuICBjb2xvcjogJHRhYmxlLWNhcHRpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi8vIDEuIFJlbW92ZXMgZm9udC13ZWlnaHQgYm9sZCBieSBpbmhlcml0aW5nXG4vLyAyLiBNYXRjaGVzIGRlZmF1bHQgYDx0ZD5gIGFsaWdubWVudCBieSBpbmhlcml0aW5nIGB0ZXh0LWFsaWduYC5cbi8vIDMuIEZpeCBhbGlnbm1lbnQgZm9yIFNhZmFyaVxuXG50aCB7XG4gIGZvbnQtd2VpZ2h0OiAkdGFibGUtdGgtZm9udC13ZWlnaHQ7IC8vIDFcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gMlxuICB0ZXh0LWFsaWduOiAtd2Via2l0LW1hdGNoLXBhcmVudDsgLy8gM1xufVxuXG50aGVhZCxcbnRib2R5LFxudGZvb3QsXG50cixcbnRkLFxudGgge1xuICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMDtcbn1cblxuXG4vLyBGb3Jtc1xuLy9cbi8vIDEuIEFsbG93IGxhYmVscyB0byB1c2UgYG1hcmdpbmAgZm9yIHNwYWNpbmcuXG5cbmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyAxXG59XG5cbi8vIFJlbW92ZSB0aGUgZGVmYXVsdCBgYm9yZGVyLXJhZGl1c2AgdGhhdCBtYWNPUyBDaHJvbWUgYWRkcy5cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0MDkzXG5cbmJ1dHRvbiB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLy8gRXhwbGljaXRseSByZW1vdmUgZm9jdXMgb3V0bGluZSBpbiBDaHJvbWl1bSB3aGVuIGl0IHNob3VsZG4ndCBiZVxuLy8gdmlzaWJsZSAoZS5nLiBhcyByZXN1bHQgb2YgbW91c2UgY2xpY2sgb3IgdG91Y2ggdGFwKS4gSXQgYWxyZWFkeVxuLy8gc2hvdWxkIGJlIGRvaW5nIHRoaXMgYXV0b21hdGljYWxseSwgYnV0IHNlZW1zIHRvIGN1cnJlbnRseSBiZVxuLy8gY29uZnVzZWQgYW5kIGFwcGxpZXMgaXRzIHZlcnkgdmlzaWJsZSB0d28tdG9uZSBvdXRsaW5lIGFueXdheS5cblxuYnV0dG9uOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xuICBvdXRsaW5lOiAwO1xufVxuXG4vLyAxLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmlcblxuaW5wdXQsXG5idXR0b24sXG5zZWxlY3QsXG5vcHRncm91cCxcbnRleHRhcmVhIHtcbiAgbWFyZ2luOiAwOyAvLyAxXG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG4vLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3hcbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuLy8gU2V0IHRoZSBjdXJzb3IgZm9yIG5vbi1gPGJ1dHRvbj5gIGJ1dHRvbnNcbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzMwNTYyXG5bcm9sZT1cImJ1dHRvblwiXSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuc2VsZWN0IHtcbiAgLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB3b3JkLXdyYXAgaW4gU2FmYXJpLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDk5MFxuICB3b3JkLXdyYXA6IG5vcm1hbDtcblxuICAvLyBVbmRvIHRoZSBvcGFjaXR5IGNoYW5nZSBmcm9tIENocm9tZVxuICAmOmRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi8vIFJlbW92ZSB0aGUgZHJvcGRvd24gYXJyb3cgb25seSBmcm9tIHRleHQgdHlwZSBpbnB1dHMgYnVpbHQgd2l0aCBkYXRhbGlzdHMgaW4gQ2hyb21lLlxuLy8gU2VlIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vYS81NDk5NzExOFxuXG5bbGlzdF06bm90KFt0eXBlPVwiZGF0ZVwiXSk6bm90KFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0pOm5vdChbdHlwZT1cIm1vbnRoXCJdKTpub3QoW3R5cGU9XCJ3ZWVrXCJdKTpub3QoW3R5cGU9XCJ0aW1lXCJdKTo6LXdlYmtpdC1jYWxlbmRhci1waWNrZXItaW5kaWNhdG9yIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vLyAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2Bcbi8vICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbi8vIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4vLyAzLiBPcGluaW9uYXRlZDogYWRkIFwiaGFuZFwiIGN1cnNvciB0byBub24tZGlzYWJsZWQgYnV0dG9uIGVsZW1lbnRzLlxuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSwgLy8gMVxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcblxuICBAaWYgJGVuYWJsZS1idXR0b24tcG9pbnRlcnMge1xuICAgICY6bm90KDpkaXNhYmxlZCkge1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyAvLyAzXG4gICAgfVxuICB9XG59XG5cbi8vIFJlbW92ZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgZnJvbSBGaXJlZm94LCBidXQgZG9uJ3QgcmVzdG9yZSB0aGUgb3V0bGluZSBsaWtlIE5vcm1hbGl6ZS5cblxuOjotbW96LWZvY3VzLWlubmVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vLyAxLiBUZXh0YXJlYXMgc2hvdWxkIHJlYWxseSBvbmx5IHJlc2l6ZSB2ZXJ0aWNhbGx5IHNvIHRoZXkgZG9uJ3QgYnJlYWsgdGhlaXIgKGhvcml6b250YWwpIGNvbnRhaW5lcnMuXG5cbnRleHRhcmVhIHtcbiAgcmVzaXplOiB2ZXJ0aWNhbDsgLy8gMVxufVxuXG4vLyAxLiBCcm93c2VycyBzZXQgYSBkZWZhdWx0IGBtaW4td2lkdGg6IG1pbi1jb250ZW50O2Agb24gZmllbGRzZXRzLFxuLy8gICAgdW5saWtlIGUuZy4gYDxkaXY+YHMsIHdoaWNoIGhhdmUgYG1pbi13aWR0aDogMDtgIGJ5IGRlZmF1bHQuXG4vLyAgICBTbyB3ZSByZXNldCB0aGF0IHRvIGVuc3VyZSBmaWVsZHNldHMgYmVoYXZlIG1vcmUgbGlrZSBhIHN0YW5kYXJkIGJsb2NrIGVsZW1lbnQuXG4vLyAgICBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMjM1OVxuLy8gICAgYW5kIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlLyN0aGUtZmllbGRzZXQtYW5kLWxlZ2VuZC1lbGVtZW50c1xuLy8gMi4gUmVzZXQgdGhlIGRlZmF1bHQgb3V0bGluZSBiZWhhdmlvciBvZiBmaWVsZHNldHMgc28gdGhleSBkb24ndCBhZmZlY3QgcGFnZSBsYXlvdXQuXG5cbmZpZWxkc2V0IHtcbiAgbWluLXdpZHRoOiAwOyAvLyAxXG4gIHBhZGRpbmc6IDA7IC8vIDJcbiAgbWFyZ2luOiAwOyAvLyAyXG4gIGJvcmRlcjogMDsgLy8gMlxufVxuXG4vLyAxLiBCeSB1c2luZyBgZmxvYXQ6IGxlZnRgLCB0aGUgbGVnZW5kIHdpbGwgYmVoYXZlIGxpa2UgYSBibG9jayBlbGVtZW50LlxuLy8gICAgVGhpcyB3YXkgdGhlIGJvcmRlciBvZiBhIGZpZWxkc2V0IHdyYXBzIGFyb3VuZCB0aGUgbGVnZW5kIGlmIHByZXNlbnQuXG4vLyAyLiBGaXggd3JhcHBpbmcgYnVnLlxuLy8gICAgU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjk3MTJcblxubGVnZW5kIHtcbiAgZmxvYXQ6IGxlZnQ7IC8vIDFcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRsZWdlbmQtbWFyZ2luLWJvdHRvbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRsZWdlbmQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRsZWdlbmQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuXG4gICsgKiB7XG4gICAgY2xlYXI6IGxlZnQ7IC8vIDJcbiAgfVxufVxuXG4vLyBGaXggaGVpZ2h0IG9mIGlucHV0cyB3aXRoIGEgdHlwZSBvZiBkYXRldGltZS1sb2NhbCwgZGF0ZSwgbW9udGgsIHdlZWssIG9yIHRpbWVcbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE4ODQyXG5cbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWZpZWxkcy13cmFwcGVyLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtdGV4dCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1pbnV0ZSxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWhvdXItZmllbGQsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1kYXktZmllbGQsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1tb250aC1maWVsZCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXllYXItZmllbGQge1xuICBwYWRkaW5nOiAwO1xufVxuXG46Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vIDEuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuLy8gMi4gVGhpcyBvdmVycmlkZXMgdGhlIGV4dHJhIHJvdW5kZWQgY29ybmVycyBvbiBzZWFyY2ggaW5wdXRzIGluIGlPUyBzbyB0aGF0IG91clxuLy8gICAgYC5mb3JtLWNvbnRyb2xgIGNsYXNzIGNhbiBwcm9wZXJseSBzdHlsZSB0aGVtLiBOb3RlIHRoYXQgdGhpcyBjYW5ub3Qgc2ltcGx5XG4vLyAgICBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXG4vLyAgICBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTg2LlxuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvLyAxXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyAyXG59XG5cbi8vIDEuIEEgZmV3IGlucHV0IHR5cGVzIHNob3VsZCBzdGF5IExUUlxuLy8gU2VlIGh0dHBzOi8vcnRsc3R5bGluZy5jb20vcG9zdHMvcnRsLXN0eWxpbmcjZm9ybS1pbnB1dHNcbi8vIDIuIFJUTCBvbmx5IG91dHB1dFxuLy8gU2VlIGh0dHBzOi8vcnRsY3NzLmNvbS9sZWFybi91c2FnZS1ndWlkZS9jb250cm9sLWRpcmVjdGl2ZXMvI3Jhd1xuXG4vKiBydGw6cmF3OlxuW3R5cGU9XCJ0ZWxcIl0sXG5bdHlwZT1cInVybFwiXSxcblt0eXBlPVwiZW1haWxcIl0sXG5bdHlwZT1cIm51bWJlclwiXSB7XG4gIGRpcmVjdGlvbjogbHRyO1xufVxuKi9cblxuLy8gUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuXG46Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vIFJlbW92ZSBwYWRkaW5nIGFyb3VuZCBjb2xvciBwaWNrZXJzIGluIHdlYmtpdCBicm93c2Vyc1xuXG46Oi13ZWJraXQtY29sb3Itc3dhdGNoLXdyYXBwZXIge1xuICBwYWRkaW5nOiAwO1xufVxuXG5cbi8vIDEuIEluaGVyaXQgZm9udCBmYW1pbHkgYW5kIGxpbmUgaGVpZ2h0IGZvciBmaWxlIGlucHV0IGJ1dHRvbnNcbi8vIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG5cbjo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICBmb250OiBpbmhlcml0OyAvLyAxXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAyXG59XG5cbi8vIENvcnJlY3QgZWxlbWVudCBkaXNwbGF5c1xuXG5vdXRwdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8vIFJlbW92ZSBib3JkZXIgZnJvbSBpZnJhbWVcblxuaWZyYW1lIHtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBTdW1tYXJ5XG4vL1xuLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzXG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07IC8vIDFcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5cbi8vIFByb2dyZXNzXG4vL1xuLy8gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cblxuLy8gSGlkZGVuIGF0dHJpYnV0ZVxuLy9cbi8vIEFsd2F5cyBoaWRlIGFuIGVsZW1lbnQgd2l0aCB0aGUgYGhpZGRlbmAgSFRNTCBhdHRyaWJ1dGUuXG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuIiwiLy8gVmFyaWFibGVzXG4vL1xuLy8gVmFyaWFibGVzIHNob3VsZCBmb2xsb3cgdGhlIGAkY29tcG9uZW50LXN0YXRlLXByb3BlcnR5LXNpemVgIGZvcm11bGEgZm9yXG4vLyBjb25zaXN0ZW50IG5hbWluZy4gRXg6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvciBhbmQgJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cy5cblxuLy8gQ29sb3Igc3lzdGVtXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBncmF5LWNvbG9yLXZhcmlhYmxlc1xuJHdoaXRlOiAgICAjZmZmICFkZWZhdWx0O1xuJGdyYXktMTAwOiAjZjhmOWZhICFkZWZhdWx0O1xuJGdyYXktMjAwOiAjZTllY2VmICFkZWZhdWx0O1xuJGdyYXktMzAwOiAjZGVlMmU2ICFkZWZhdWx0O1xuJGdyYXktNDAwOiAjY2VkNGRhICFkZWZhdWx0O1xuJGdyYXktNTAwOiAjYWRiNWJkICFkZWZhdWx0O1xuJGdyYXktNjAwOiAjNmM3NTdkICFkZWZhdWx0O1xuJGdyYXktNzAwOiAjNDk1MDU3ICFkZWZhdWx0O1xuJGdyYXktODAwOiAjMzQzYTQwICFkZWZhdWx0O1xuJGdyYXktOTAwOiAjMjEyNTI5ICFkZWZhdWx0O1xuJGJsYWNrOiAgICAjMDAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBncmF5LWNvbG9yLXZhcmlhYmxlc1xuXG4vLyBmdXN2LWRpc2FibGVcbi8vIHNjc3MtZG9jcy1zdGFydCBncmF5LWNvbG9ycy1tYXBcbiRncmF5czogKFxuICBcIjEwMFwiOiAkZ3JheS0xMDAsXG4gIFwiMjAwXCI6ICRncmF5LTIwMCxcbiAgXCIzMDBcIjogJGdyYXktMzAwLFxuICBcIjQwMFwiOiAkZ3JheS00MDAsXG4gIFwiNTAwXCI6ICRncmF5LTUwMCxcbiAgXCI2MDBcIjogJGdyYXktNjAwLFxuICBcIjcwMFwiOiAkZ3JheS03MDAsXG4gIFwiODAwXCI6ICRncmF5LTgwMCxcbiAgXCI5MDBcIjogJGdyYXktOTAwXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBncmF5LWNvbG9ycy1tYXBcbi8vIGZ1c3YtZW5hYmxlXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjb2xvci12YXJpYWJsZXNcbiRibHVlOiAgICAjMGQ2ZWZkICFkZWZhdWx0O1xuJGluZGlnbzogICM2NjEwZjIgIWRlZmF1bHQ7XG4kcHVycGxlOiAgIzZmNDJjMSAhZGVmYXVsdDtcbiRwaW5rOiAgICAjZDYzMzg0ICFkZWZhdWx0O1xuJHJlZDogICAgICNkYzM1NDUgIWRlZmF1bHQ7XG4kb3JhbmdlOiAgI2ZkN2UxNCAhZGVmYXVsdDtcbiR5ZWxsb3c6ICAjZmZjMTA3ICFkZWZhdWx0O1xuJGdyZWVuOiAgICMxOTg3NTQgIWRlZmF1bHQ7XG4kdGVhbDogICAgIzIwYzk5NyAhZGVmYXVsdDtcbiRjeWFuOiAgICAjMGRjYWYwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjb2xvci12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbG9ycy1tYXBcbiRjb2xvcnM6IChcbiAgXCJibHVlXCI6ICAgICAgICRibHVlLFxuICBcImluZGlnb1wiOiAgICAgJGluZGlnbyxcbiAgXCJwdXJwbGVcIjogICAgICRwdXJwbGUsXG4gIFwicGlua1wiOiAgICAgICAkcGluayxcbiAgXCJyZWRcIjogICAgICAgICRyZWQsXG4gIFwib3JhbmdlXCI6ICAgICAkb3JhbmdlLFxuICBcInllbGxvd1wiOiAgICAgJHllbGxvdyxcbiAgXCJncmVlblwiOiAgICAgICRncmVlbixcbiAgXCJ0ZWFsXCI6ICAgICAgICR0ZWFsLFxuICBcImN5YW5cIjogICAgICAgJGN5YW4sXG4gIFwiYmxhY2tcIjogICAgICAkYmxhY2ssXG4gIFwid2hpdGVcIjogICAgICAkd2hpdGUsXG4gIFwiZ3JheVwiOiAgICAgICAkZ3JheS02MDAsXG4gIFwiZ3JheS1kYXJrXCI6ICAkZ3JheS04MDBcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNvbG9ycy1tYXBcblxuLy8gVGhlIGNvbnRyYXN0IHJhdGlvIHRvIHJlYWNoIGFnYWluc3Qgd2hpdGUsIHRvIGRldGVybWluZSBpZiBjb2xvciBjaGFuZ2VzIGZyb20gXCJsaWdodFwiIHRvIFwiZGFya1wiLiBBY2NlcHRhYmxlIHZhbHVlcyBmb3IgV0NBRyAyLjAgYXJlIDMsIDQuNSBhbmQgNy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvV0NBRzIwLyN2aXN1YWwtYXVkaW8tY29udHJhc3QtY29udHJhc3RcbiRtaW4tY29udHJhc3QtcmF0aW86ICAgNC41ICFkZWZhdWx0O1xuXG4vLyBDdXN0b21pemUgdGhlIGxpZ2h0IGFuZCBkYXJrIHRleHQgY29sb3JzIGZvciB1c2UgaW4gb3VyIGNvbG9yIGNvbnRyYXN0IGZ1bmN0aW9uLlxuJGNvbG9yLWNvbnRyYXN0LWRhcms6ICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGNvbG9yLWNvbnRyYXN0LWxpZ2h0OiAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4vLyBmdXN2LWRpc2FibGVcbiRibHVlLTEwMDogdGludC1jb2xvcigkYmx1ZSwgODAlKSAhZGVmYXVsdDtcbiRibHVlLTIwMDogdGludC1jb2xvcigkYmx1ZSwgNjAlKSAhZGVmYXVsdDtcbiRibHVlLTMwMDogdGludC1jb2xvcigkYmx1ZSwgNDAlKSAhZGVmYXVsdDtcbiRibHVlLTQwMDogdGludC1jb2xvcigkYmx1ZSwgMjAlKSAhZGVmYXVsdDtcbiRibHVlLTUwMDogJGJsdWUgIWRlZmF1bHQ7XG4kYmx1ZS02MDA6IHNoYWRlLWNvbG9yKCRibHVlLCAyMCUpICFkZWZhdWx0O1xuJGJsdWUtNzAwOiBzaGFkZS1jb2xvcigkYmx1ZSwgNDAlKSAhZGVmYXVsdDtcbiRibHVlLTgwMDogc2hhZGUtY29sb3IoJGJsdWUsIDYwJSkgIWRlZmF1bHQ7XG4kYmx1ZS05MDA6IHNoYWRlLWNvbG9yKCRibHVlLCA4MCUpICFkZWZhdWx0O1xuXG4kaW5kaWdvLTEwMDogdGludC1jb2xvcigkaW5kaWdvLCA4MCUpICFkZWZhdWx0O1xuJGluZGlnby0yMDA6IHRpbnQtY29sb3IoJGluZGlnbywgNjAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tMzAwOiB0aW50LWNvbG9yKCRpbmRpZ28sIDQwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTQwMDogdGludC1jb2xvcigkaW5kaWdvLCAyMCUpICFkZWZhdWx0O1xuJGluZGlnby01MDA6ICRpbmRpZ28gIWRlZmF1bHQ7XG4kaW5kaWdvLTYwMDogc2hhZGUtY29sb3IoJGluZGlnbywgMjAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tNzAwOiBzaGFkZS1jb2xvcigkaW5kaWdvLCA0MCUpICFkZWZhdWx0O1xuJGluZGlnby04MDA6IHNoYWRlLWNvbG9yKCRpbmRpZ28sIDYwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTkwMDogc2hhZGUtY29sb3IoJGluZGlnbywgODAlKSAhZGVmYXVsdDtcblxuJHB1cnBsZS0xMDA6IHRpbnQtY29sb3IoJHB1cnBsZSwgODAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtMjAwOiB0aW50LWNvbG9yKCRwdXJwbGUsIDYwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTMwMDogdGludC1jb2xvcigkcHVycGxlLCA0MCUpICFkZWZhdWx0O1xuJHB1cnBsZS00MDA6IHRpbnQtY29sb3IoJHB1cnBsZSwgMjAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtNTAwOiAkcHVycGxlICFkZWZhdWx0O1xuJHB1cnBsZS02MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDIwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTcwMDogc2hhZGUtY29sb3IoJHB1cnBsZSwgNDAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtODAwOiBzaGFkZS1jb2xvcigkcHVycGxlLCA2MCUpICFkZWZhdWx0O1xuJHB1cnBsZS05MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDgwJSkgIWRlZmF1bHQ7XG5cbiRwaW5rLTEwMDogdGludC1jb2xvcigkcGluaywgODAlKSAhZGVmYXVsdDtcbiRwaW5rLTIwMDogdGludC1jb2xvcigkcGluaywgNjAlKSAhZGVmYXVsdDtcbiRwaW5rLTMwMDogdGludC1jb2xvcigkcGluaywgNDAlKSAhZGVmYXVsdDtcbiRwaW5rLTQwMDogdGludC1jb2xvcigkcGluaywgMjAlKSAhZGVmYXVsdDtcbiRwaW5rLTUwMDogJHBpbmsgIWRlZmF1bHQ7XG4kcGluay02MDA6IHNoYWRlLWNvbG9yKCRwaW5rLCAyMCUpICFkZWZhdWx0O1xuJHBpbmstNzAwOiBzaGFkZS1jb2xvcigkcGluaywgNDAlKSAhZGVmYXVsdDtcbiRwaW5rLTgwMDogc2hhZGUtY29sb3IoJHBpbmssIDYwJSkgIWRlZmF1bHQ7XG4kcGluay05MDA6IHNoYWRlLWNvbG9yKCRwaW5rLCA4MCUpICFkZWZhdWx0O1xuXG4kcmVkLTEwMDogdGludC1jb2xvcigkcmVkLCA4MCUpICFkZWZhdWx0O1xuJHJlZC0yMDA6IHRpbnQtY29sb3IoJHJlZCwgNjAlKSAhZGVmYXVsdDtcbiRyZWQtMzAwOiB0aW50LWNvbG9yKCRyZWQsIDQwJSkgIWRlZmF1bHQ7XG4kcmVkLTQwMDogdGludC1jb2xvcigkcmVkLCAyMCUpICFkZWZhdWx0O1xuJHJlZC01MDA6ICRyZWQgIWRlZmF1bHQ7XG4kcmVkLTYwMDogc2hhZGUtY29sb3IoJHJlZCwgMjAlKSAhZGVmYXVsdDtcbiRyZWQtNzAwOiBzaGFkZS1jb2xvcigkcmVkLCA0MCUpICFkZWZhdWx0O1xuJHJlZC04MDA6IHNoYWRlLWNvbG9yKCRyZWQsIDYwJSkgIWRlZmF1bHQ7XG4kcmVkLTkwMDogc2hhZGUtY29sb3IoJHJlZCwgODAlKSAhZGVmYXVsdDtcblxuJG9yYW5nZS0xMDA6IHRpbnQtY29sb3IoJG9yYW5nZSwgODAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtMjAwOiB0aW50LWNvbG9yKCRvcmFuZ2UsIDYwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTMwMDogdGludC1jb2xvcigkb3JhbmdlLCA0MCUpICFkZWZhdWx0O1xuJG9yYW5nZS00MDA6IHRpbnQtY29sb3IoJG9yYW5nZSwgMjAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtNTAwOiAkb3JhbmdlICFkZWZhdWx0O1xuJG9yYW5nZS02MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDIwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTcwMDogc2hhZGUtY29sb3IoJG9yYW5nZSwgNDAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtODAwOiBzaGFkZS1jb2xvcigkb3JhbmdlLCA2MCUpICFkZWZhdWx0O1xuJG9yYW5nZS05MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDgwJSkgIWRlZmF1bHQ7XG5cbiR5ZWxsb3ctMTAwOiB0aW50LWNvbG9yKCR5ZWxsb3csIDgwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTIwMDogdGludC1jb2xvcigkeWVsbG93LCA2MCUpICFkZWZhdWx0O1xuJHllbGxvdy0zMDA6IHRpbnQtY29sb3IoJHllbGxvdywgNDAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctNDAwOiB0aW50LWNvbG9yKCR5ZWxsb3csIDIwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTUwMDogJHllbGxvdyAhZGVmYXVsdDtcbiR5ZWxsb3ctNjAwOiBzaGFkZS1jb2xvcigkeWVsbG93LCAyMCUpICFkZWZhdWx0O1xuJHllbGxvdy03MDA6IHNoYWRlLWNvbG9yKCR5ZWxsb3csIDQwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTgwMDogc2hhZGUtY29sb3IoJHllbGxvdywgNjAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctOTAwOiBzaGFkZS1jb2xvcigkeWVsbG93LCA4MCUpICFkZWZhdWx0O1xuXG4kZ3JlZW4tMTAwOiB0aW50LWNvbG9yKCRncmVlbiwgODAlKSAhZGVmYXVsdDtcbiRncmVlbi0yMDA6IHRpbnQtY29sb3IoJGdyZWVuLCA2MCUpICFkZWZhdWx0O1xuJGdyZWVuLTMwMDogdGludC1jb2xvcigkZ3JlZW4sIDQwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tNDAwOiB0aW50LWNvbG9yKCRncmVlbiwgMjAlKSAhZGVmYXVsdDtcbiRncmVlbi01MDA6ICRncmVlbiAhZGVmYXVsdDtcbiRncmVlbi02MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgMjAlKSAhZGVmYXVsdDtcbiRncmVlbi03MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgNDAlKSAhZGVmYXVsdDtcbiRncmVlbi04MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgNjAlKSAhZGVmYXVsdDtcbiRncmVlbi05MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgODAlKSAhZGVmYXVsdDtcblxuJHRlYWwtMTAwOiB0aW50LWNvbG9yKCR0ZWFsLCA4MCUpICFkZWZhdWx0O1xuJHRlYWwtMjAwOiB0aW50LWNvbG9yKCR0ZWFsLCA2MCUpICFkZWZhdWx0O1xuJHRlYWwtMzAwOiB0aW50LWNvbG9yKCR0ZWFsLCA0MCUpICFkZWZhdWx0O1xuJHRlYWwtNDAwOiB0aW50LWNvbG9yKCR0ZWFsLCAyMCUpICFkZWZhdWx0O1xuJHRlYWwtNTAwOiAkdGVhbCAhZGVmYXVsdDtcbiR0ZWFsLTYwMDogc2hhZGUtY29sb3IoJHRlYWwsIDIwJSkgIWRlZmF1bHQ7XG4kdGVhbC03MDA6IHNoYWRlLWNvbG9yKCR0ZWFsLCA0MCUpICFkZWZhdWx0O1xuJHRlYWwtODAwOiBzaGFkZS1jb2xvcigkdGVhbCwgNjAlKSAhZGVmYXVsdDtcbiR0ZWFsLTkwMDogc2hhZGUtY29sb3IoJHRlYWwsIDgwJSkgIWRlZmF1bHQ7XG5cbiRjeWFuLTEwMDogdGludC1jb2xvcigkY3lhbiwgODAlKSAhZGVmYXVsdDtcbiRjeWFuLTIwMDogdGludC1jb2xvcigkY3lhbiwgNjAlKSAhZGVmYXVsdDtcbiRjeWFuLTMwMDogdGludC1jb2xvcigkY3lhbiwgNDAlKSAhZGVmYXVsdDtcbiRjeWFuLTQwMDogdGludC1jb2xvcigkY3lhbiwgMjAlKSAhZGVmYXVsdDtcbiRjeWFuLTUwMDogJGN5YW4gIWRlZmF1bHQ7XG4kY3lhbi02MDA6IHNoYWRlLWNvbG9yKCRjeWFuLCAyMCUpICFkZWZhdWx0O1xuJGN5YW4tNzAwOiBzaGFkZS1jb2xvcigkY3lhbiwgNDAlKSAhZGVmYXVsdDtcbiRjeWFuLTgwMDogc2hhZGUtY29sb3IoJGN5YW4sIDYwJSkgIWRlZmF1bHQ7XG4kY3lhbi05MDA6IHNoYWRlLWNvbG9yKCRjeWFuLCA4MCUpICFkZWZhdWx0O1xuXG4kYmx1ZXM6IChcbiAgXCJibHVlLTEwMFwiOiAkYmx1ZS0xMDAsXG4gIFwiYmx1ZS0yMDBcIjogJGJsdWUtMjAwLFxuICBcImJsdWUtMzAwXCI6ICRibHVlLTMwMCxcbiAgXCJibHVlLTQwMFwiOiAkYmx1ZS00MDAsXG4gIFwiYmx1ZS01MDBcIjogJGJsdWUtNTAwLFxuICBcImJsdWUtNjAwXCI6ICRibHVlLTYwMCxcbiAgXCJibHVlLTcwMFwiOiAkYmx1ZS03MDAsXG4gIFwiYmx1ZS04MDBcIjogJGJsdWUtODAwLFxuICBcImJsdWUtOTAwXCI6ICRibHVlLTkwMFxuKSAhZGVmYXVsdDtcblxuJGluZGlnb3M6IChcbiAgXCJpbmRpZ28tMTAwXCI6ICRpbmRpZ28tMTAwLFxuICBcImluZGlnby0yMDBcIjogJGluZGlnby0yMDAsXG4gIFwiaW5kaWdvLTMwMFwiOiAkaW5kaWdvLTMwMCxcbiAgXCJpbmRpZ28tNDAwXCI6ICRpbmRpZ28tNDAwLFxuICBcImluZGlnby01MDBcIjogJGluZGlnby01MDAsXG4gIFwiaW5kaWdvLTYwMFwiOiAkaW5kaWdvLTYwMCxcbiAgXCJpbmRpZ28tNzAwXCI6ICRpbmRpZ28tNzAwLFxuICBcImluZGlnby04MDBcIjogJGluZGlnby04MDAsXG4gIFwiaW5kaWdvLTkwMFwiOiAkaW5kaWdvLTkwMFxuKSAhZGVmYXVsdDtcblxuJHB1cnBsZXM6IChcbiAgXCJwdXJwbGUtMTAwXCI6ICRwdXJwbGUtMTAwLFxuICBcInB1cnBsZS0yMDBcIjogJHB1cnBsZS0yMDAsXG4gIFwicHVycGxlLTMwMFwiOiAkcHVycGxlLTMwMCxcbiAgXCJwdXJwbGUtNDAwXCI6ICRwdXJwbGUtNDAwLFxuICBcInB1cnBsZS01MDBcIjogJHB1cnBsZS01MDAsXG4gIFwicHVycGxlLTYwMFwiOiAkcHVycGxlLTYwMCxcbiAgXCJwdXJwbGUtNzAwXCI6ICRwdXJwbGUtNzAwLFxuICBcInB1cnBsZS04MDBcIjogJHB1cnBsZS04MDAsXG4gIFwicHVycGxlLTkwMFwiOiAkcHVycGxlLTkwMFxuKSAhZGVmYXVsdDtcblxuJHBpbmtzOiAoXG4gIFwicGluay0xMDBcIjogJHBpbmstMTAwLFxuICBcInBpbmstMjAwXCI6ICRwaW5rLTIwMCxcbiAgXCJwaW5rLTMwMFwiOiAkcGluay0zMDAsXG4gIFwicGluay00MDBcIjogJHBpbmstNDAwLFxuICBcInBpbmstNTAwXCI6ICRwaW5rLTUwMCxcbiAgXCJwaW5rLTYwMFwiOiAkcGluay02MDAsXG4gIFwicGluay03MDBcIjogJHBpbmstNzAwLFxuICBcInBpbmstODAwXCI6ICRwaW5rLTgwMCxcbiAgXCJwaW5rLTkwMFwiOiAkcGluay05MDBcbikgIWRlZmF1bHQ7XG5cbiRyZWRzOiAoXG4gIFwicmVkLTEwMFwiOiAkcmVkLTEwMCxcbiAgXCJyZWQtMjAwXCI6ICRyZWQtMjAwLFxuICBcInJlZC0zMDBcIjogJHJlZC0zMDAsXG4gIFwicmVkLTQwMFwiOiAkcmVkLTQwMCxcbiAgXCJyZWQtNTAwXCI6ICRyZWQtNTAwLFxuICBcInJlZC02MDBcIjogJHJlZC02MDAsXG4gIFwicmVkLTcwMFwiOiAkcmVkLTcwMCxcbiAgXCJyZWQtODAwXCI6ICRyZWQtODAwLFxuICBcInJlZC05MDBcIjogJHJlZC05MDBcbikgIWRlZmF1bHQ7XG5cbiRvcmFuZ2VzOiAoXG4gIFwib3JhbmdlLTEwMFwiOiAkb3JhbmdlLTEwMCxcbiAgXCJvcmFuZ2UtMjAwXCI6ICRvcmFuZ2UtMjAwLFxuICBcIm9yYW5nZS0zMDBcIjogJG9yYW5nZS0zMDAsXG4gIFwib3JhbmdlLTQwMFwiOiAkb3JhbmdlLTQwMCxcbiAgXCJvcmFuZ2UtNTAwXCI6ICRvcmFuZ2UtNTAwLFxuICBcIm9yYW5nZS02MDBcIjogJG9yYW5nZS02MDAsXG4gIFwib3JhbmdlLTcwMFwiOiAkb3JhbmdlLTcwMCxcbiAgXCJvcmFuZ2UtODAwXCI6ICRvcmFuZ2UtODAwLFxuICBcIm9yYW5nZS05MDBcIjogJG9yYW5nZS05MDBcbikgIWRlZmF1bHQ7XG5cbiR5ZWxsb3dzOiAoXG4gIFwieWVsbG93LTEwMFwiOiAkeWVsbG93LTEwMCxcbiAgXCJ5ZWxsb3ctMjAwXCI6ICR5ZWxsb3ctMjAwLFxuICBcInllbGxvdy0zMDBcIjogJHllbGxvdy0zMDAsXG4gIFwieWVsbG93LTQwMFwiOiAkeWVsbG93LTQwMCxcbiAgXCJ5ZWxsb3ctNTAwXCI6ICR5ZWxsb3ctNTAwLFxuICBcInllbGxvdy02MDBcIjogJHllbGxvdy02MDAsXG4gIFwieWVsbG93LTcwMFwiOiAkeWVsbG93LTcwMCxcbiAgXCJ5ZWxsb3ctODAwXCI6ICR5ZWxsb3ctODAwLFxuICBcInllbGxvdy05MDBcIjogJHllbGxvdy05MDBcbikgIWRlZmF1bHQ7XG5cbiRncmVlbnM6IChcbiAgXCJncmVlbi0xMDBcIjogJGdyZWVuLTEwMCxcbiAgXCJncmVlbi0yMDBcIjogJGdyZWVuLTIwMCxcbiAgXCJncmVlbi0zMDBcIjogJGdyZWVuLTMwMCxcbiAgXCJncmVlbi00MDBcIjogJGdyZWVuLTQwMCxcbiAgXCJncmVlbi01MDBcIjogJGdyZWVuLTUwMCxcbiAgXCJncmVlbi02MDBcIjogJGdyZWVuLTYwMCxcbiAgXCJncmVlbi03MDBcIjogJGdyZWVuLTcwMCxcbiAgXCJncmVlbi04MDBcIjogJGdyZWVuLTgwMCxcbiAgXCJncmVlbi05MDBcIjogJGdyZWVuLTkwMFxuKSAhZGVmYXVsdDtcblxuJHRlYWxzOiAoXG4gIFwidGVhbC0xMDBcIjogJHRlYWwtMTAwLFxuICBcInRlYWwtMjAwXCI6ICR0ZWFsLTIwMCxcbiAgXCJ0ZWFsLTMwMFwiOiAkdGVhbC0zMDAsXG4gIFwidGVhbC00MDBcIjogJHRlYWwtNDAwLFxuICBcInRlYWwtNTAwXCI6ICR0ZWFsLTUwMCxcbiAgXCJ0ZWFsLTYwMFwiOiAkdGVhbC02MDAsXG4gIFwidGVhbC03MDBcIjogJHRlYWwtNzAwLFxuICBcInRlYWwtODAwXCI6ICR0ZWFsLTgwMCxcbiAgXCJ0ZWFsLTkwMFwiOiAkdGVhbC05MDBcbikgIWRlZmF1bHQ7XG5cbiRjeWFuczogKFxuICBcImN5YW4tMTAwXCI6ICRjeWFuLTEwMCxcbiAgXCJjeWFuLTIwMFwiOiAkY3lhbi0yMDAsXG4gIFwiY3lhbi0zMDBcIjogJGN5YW4tMzAwLFxuICBcImN5YW4tNDAwXCI6ICRjeWFuLTQwMCxcbiAgXCJjeWFuLTUwMFwiOiAkY3lhbi01MDAsXG4gIFwiY3lhbi02MDBcIjogJGN5YW4tNjAwLFxuICBcImN5YW4tNzAwXCI6ICRjeWFuLTcwMCxcbiAgXCJjeWFuLTgwMFwiOiAkY3lhbi04MDAsXG4gIFwiY3lhbi05MDBcIjogJGN5YW4tOTAwXG4pICFkZWZhdWx0O1xuLy8gZnVzdi1lbmFibGVcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWNvbG9yLXZhcmlhYmxlc1xuJHByaW1hcnk6ICAgICAgICRibHVlICFkZWZhdWx0O1xuJHNlY29uZGFyeTogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRzdWNjZXNzOiAgICAgICAkZ3JlZW4gIWRlZmF1bHQ7XG4kaW5mbzogICAgICAgICAgJGN5YW4gIWRlZmF1bHQ7XG4kd2FybmluZzogICAgICAgJHllbGxvdyAhZGVmYXVsdDtcbiRkYW5nZXI6ICAgICAgICAkcmVkICFkZWZhdWx0O1xuJGxpZ2h0OiAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRkYXJrOiAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWNvbG9yLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtY29sb3JzLW1hcFxuJHRoZW1lLWNvbG9yczogKFxuICBcInByaW1hcnlcIjogICAgJHByaW1hcnksXG4gIFwic2Vjb25kYXJ5XCI6ICAkc2Vjb25kYXJ5LFxuICBcInN1Y2Nlc3NcIjogICAgJHN1Y2Nlc3MsXG4gIFwiaW5mb1wiOiAgICAgICAkaW5mbyxcbiAgXCJ3YXJuaW5nXCI6ICAgICR3YXJuaW5nLFxuICBcImRhbmdlclwiOiAgICAgJGRhbmdlcixcbiAgXCJsaWdodFwiOiAgICAgICRsaWdodCxcbiAgXCJkYXJrXCI6ICAgICAgICRkYXJrXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1jb2xvcnMtbWFwXG5cbi8vIENoYXJhY3RlcnMgd2hpY2ggYXJlIGVzY2FwZWQgYnkgdGhlIGVzY2FwZS1zdmcgZnVuY3Rpb25cbiRlc2NhcGVkLWNoYXJhY3RlcnM6IChcbiAgKFwiPFwiLCBcIiUzY1wiKSxcbiAgKFwiPlwiLCBcIiUzZVwiKSxcbiAgKFwiI1wiLCBcIiUyM1wiKSxcbiAgKFwiKFwiLCBcIiUyOFwiKSxcbiAgKFwiKVwiLCBcIiUyOVwiKSxcbikgIWRlZmF1bHQ7XG5cbi8vIE9wdGlvbnNcbi8vXG4vLyBRdWlja2x5IG1vZGlmeSBnbG9iYWwgc3R5bGluZyBieSBlbmFibGluZyBvciBkaXNhYmxpbmcgb3B0aW9uYWwgZmVhdHVyZXMuXG5cbiRlbmFibGUtY2FyZXQ6ICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJvdW5kZWQ6ICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1zaGFkb3dzOiAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWdyYWRpZW50czogICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtdHJhbnNpdGlvbnM6ICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJlZHVjZWQtbW90aW9uOiAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1zbW9vdGgtc2Nyb2xsOiAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JpZC1jbGFzc2VzOiAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWNvbnRhaW5lci1jbGFzc2VzOiAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1jc3NncmlkOiAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWJ1dHRvbi1wb2ludGVyczogICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yZnM6ICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtdmFsaWRhdGlvbi1pY29uczogICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLW5lZ2F0aXZlLW1hcmdpbnM6ICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXM6IHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXM6ICB0cnVlICFkZWZhdWx0O1xuXG4vLyBQcmVmaXggZm9yIDpyb290IENTUyB2YXJpYWJsZXNcblxuJHZhcmlhYmxlLXByZWZpeDogICAgICAgICAgICAgYnMtICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMCBmb3IgdGhlIHNob3J0ZXIgYCRwcmVmaXhgXG4kcHJlZml4OiAgICAgICAgICAgICAgICAgICAgICAkdmFyaWFibGUtcHJlZml4ICFkZWZhdWx0O1xuXG4vLyBHcmFkaWVudFxuLy9cbi8vIFRoZSBncmFkaWVudCB3aGljaCBpcyBhZGRlZCB0byBjb21wb25lbnRzIGlmIGAkZW5hYmxlLWdyYWRpZW50c2AgaXMgYHRydWVgXG4vLyBUaGlzIGdyYWRpZW50IGlzIGFsc28gYWRkZWQgdG8gZWxlbWVudHMgd2l0aCBgLmJnLWdyYWRpZW50YFxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHZhcmlhYmxlLWdyYWRpZW50XG4kZ3JhZGllbnQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoJHdoaXRlLCAuMTUpLCByZ2JhKCR3aGl0ZSwgMCkpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB2YXJpYWJsZS1ncmFkaWVudFxuXG4vLyBTcGFjaW5nXG4vL1xuLy8gQ29udHJvbCB0aGUgZGVmYXVsdCBzdHlsaW5nIG9mIG1vc3QgQm9vdHN0cmFwIGVsZW1lbnRzIGJ5IG1vZGlmeWluZyB0aGVzZVxuLy8gdmFyaWFibGVzLiBNb3N0bHkgZm9jdXNlZCBvbiBzcGFjaW5nLlxuLy8gWW91IGNhbiBhZGQgbW9yZSBlbnRyaWVzIHRvIHRoZSAkc3BhY2VycyBtYXAsIHNob3VsZCB5b3UgbmVlZCBtb3JlIHZhcmlhdGlvbi5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwYWNlci12YXJpYWJsZXMtbWFwc1xuJHNwYWNlcjogMXJlbSAhZGVmYXVsdDtcbiRzcGFjZXJzOiAoXG4gIDA6IDAsXG4gIDE6ICRzcGFjZXIgKiAuMjUsXG4gIDI6ICRzcGFjZXIgKiAuNSxcbiAgMzogJHNwYWNlcixcbiAgNDogJHNwYWNlciAqIDEuNSxcbiAgNTogJHNwYWNlciAqIDMsXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBzcGFjZXItdmFyaWFibGVzLW1hcHNcblxuLy8gUG9zaXRpb25cbi8vXG4vLyBEZWZpbmUgdGhlIGVkZ2UgcG9zaXRpb25pbmcgYW5jaG9ycyBvZiB0aGUgcG9zaXRpb24gdXRpbGl0aWVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcG9zaXRpb24tbWFwXG4kcG9zaXRpb24tdmFsdWVzOiAoXG4gIDA6IDAsXG4gIDUwOiA1MCUsXG4gIDEwMDogMTAwJVxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcG9zaXRpb24tbWFwXG5cbi8vIEJvZHlcbi8vXG4vLyBTZXR0aW5ncyBmb3IgdGhlIGA8Ym9keT5gIGVsZW1lbnQuXG5cbiRib2R5LWJnOiAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYm9keS1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGJvZHktdGV4dC1hbGlnbjogICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbi8vIExpbmtzXG4vL1xuLy8gU3R5bGUgYW5jaG9yIGVsZW1lbnRzLlxuXG4kbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkcHJpbWFyeSAhZGVmYXVsdDtcbiRsaW5rLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgICAgICAgIHVuZGVybGluZSAhZGVmYXVsdDtcbiRsaW5rLXNoYWRlLXBlcmNlbnRhZ2U6ICAgICAgICAgICAgICAgICAgIDIwJSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIHNoaWZ0LWNvbG9yKCRsaW5rLWNvbG9yLCAkbGluay1zaGFkZS1wZXJjZW50YWdlKSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRzdHJldGNoZWQtbGluay1wc2V1ZG8tZWxlbWVudDogICAgICAgICAgIGFmdGVyICFkZWZhdWx0O1xuJHN0cmV0Y2hlZC1saW5rLXotaW5kZXg6ICAgICAgICAgICAgICAgICAgMSAhZGVmYXVsdDtcblxuLy8gUGFyYWdyYXBoc1xuLy9cbi8vIFN0eWxlIHAgZWxlbWVudC5cblxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAgIDFyZW0gIWRlZmF1bHQ7XG5cblxuLy8gR3JpZCBicmVha3BvaW50c1xuLy9cbi8vIERlZmluZSB0aGUgbWluaW11bSBkaW1lbnNpb25zIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLFxuLy8gYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcywgZm9yIHVzZSBpbiBtZWRpYSBxdWVyaWVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZ3JpZC1icmVha3BvaW50c1xuJGdyaWQtYnJlYWtwb2ludHM6IChcbiAgeHM6IDAsXG4gIHNtOiA1NzZweCxcbiAgbWQ6IDc2OHB4LFxuICBsZzogOTkycHgsXG4gIHhsOiAxMjAwcHgsXG4gIHh4bDogMTQwMHB4XG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBncmlkLWJyZWFrcG9pbnRzXG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuQGluY2x1ZGUgX2Fzc2VydC1zdGFydHMtYXQtemVybygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcblxuXG4vLyBHcmlkIGNvbnRhaW5lcnNcbi8vXG4vLyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29udGFpbmVyLW1heC13aWR0aHNcbiRjb250YWluZXItbWF4LXdpZHRoczogKFxuICBzbTogNTQwcHgsXG4gIG1kOiA3MjBweCxcbiAgbGc6IDk2MHB4LFxuICB4bDogMTE0MHB4LFxuICB4eGw6IDEzMjBweFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY29udGFpbmVyLW1heC13aWR0aHNcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGNvbnRhaW5lci1tYXgtd2lkdGhzLCBcIiRjb250YWluZXItbWF4LXdpZHRoc1wiKTtcblxuXG4vLyBHcmlkIGNvbHVtbnNcbi8vXG4vLyBTZXQgdGhlIG51bWJlciBvZiBjb2x1bW5zIGFuZCBzcGVjaWZ5IHRoZSB3aWR0aCBvZiB0aGUgZ3V0dGVycy5cblxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XG4kZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kZ3JpZC1yb3ctY29sdW1uczogICAgICAgICAgICA2ICFkZWZhdWx0O1xuXG4vLyBDb250YWluZXIgcGFkZGluZ1xuXG4kY29udGFpbmVyLXBhZGRpbmcteDogJGdyaWQtZ3V0dGVyLXdpZHRoICFkZWZhdWx0O1xuXG5cbi8vIENvbXBvbmVudHNcbi8vXG4vLyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBib3JkZXItdmFyaWFibGVzXG4kYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kYm9yZGVyLXdpZHRoczogKFxuICAxOiAxcHgsXG4gIDI6IDJweCxcbiAgMzogM3B4LFxuICA0OiA0cHgsXG4gIDU6IDVweFxuKSAhZGVmYXVsdDtcblxuJGJvcmRlci1zdHlsZTogICAgICAgICAgICAgICAgc29saWQgIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yLXRyYW5zbHVjZW50OiAgICByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJvcmRlci12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJvcmRlci1yYWRpdXMtdmFyaWFibGVzXG4kYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy14bDogICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtMnhsOiAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXBpbGw6ICAgICAgICAgIDUwcmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBib3JkZXItcmFkaXVzLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm94LXNoYWRvdy12YXJpYWJsZXNcbiRib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LXNtOiAgICAgICAgICAgICAgIDAgLjEyNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctbGc6ICAgICAgICAgICAgICAgMCAxcmVtIDNyZW0gcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctaW5zZXQ6ICAgICAgICAgICAgaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYm94LXNoYWRvdy12YXJpYWJsZXNcblxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICAgICAgJHByaW1hcnkgIWRlZmF1bHQ7XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjYXJldC12YXJpYWJsZXNcbiRjYXJldC13aWR0aDogICAgICAgICAgICAgICAgIC4zZW0gIWRlZmF1bHQ7XG4kY2FyZXQtdmVydGljYWwtYWxpZ246ICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG4kY2FyZXQtc3BhY2luZzogICAgICAgICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNhcmV0LXZhcmlhYmxlc1xuXG4kdHJhbnNpdGlvbi1iYXNlOiAgICAgICAgICAgICBhbGwgLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tZmFkZTogICAgICAgICAgICAgb3BhY2l0eSAuMTVzIGxpbmVhciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1zdGFydCBjb2xsYXBzZS10cmFuc2l0aW9uXG4kdHJhbnNpdGlvbi1jb2xsYXBzZTogICAgICAgICBoZWlnaHQgLjM1cyBlYXNlICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tY29sbGFwc2Utd2lkdGg6ICAgd2lkdGggLjM1cyBlYXNlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjb2xsYXBzZS10cmFuc2l0aW9uXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGFzcGVjdC1yYXRpb3NcbiRhc3BlY3QtcmF0aW9zOiAoXG4gIFwiMXgxXCI6IDEwMCUsXG4gIFwiNHgzXCI6IGNhbGMoMyAvIDQgKiAxMDAlKSxcbiAgXCIxNng5XCI6IGNhbGMoOSAvIDE2ICogMTAwJSksXG4gIFwiMjF4OVwiOiBjYWxjKDkgLyAyMSAqIDEwMCUpXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBhc3BlY3QtcmF0aW9zXG4vLyBzdHlsZWxpbnQtZW5hYmxlIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4vLyBUeXBvZ3JhcGh5XG4vL1xuLy8gRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb250LXZhcmlhYmxlc1xuLy8gc3R5bGVsaW50LWRpc2FibGUgdmFsdWUta2V5d29yZC1jYXNlXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogICAgICBzeXN0ZW0tdWksIC1hcHBsZS1zeXN0ZW0sIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIFwiTm90byBTYW5zXCIsIFwiTGliZXJhdGlvbiBTYW5zXCIsIEFyaWFsLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIiwgXCJOb3RvIENvbG9yIEVtb2ppXCIgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgICAgICBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWVuYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1mb250LXNhbnMtc2VyaWYpICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWNvZGU6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWZvbnQtbW9ub3NwYWNlKSAhZGVmYXVsdDtcblxuLy8gJGZvbnQtc2l6ZS1yb290IGFmZmVjdHMgdGhlIHZhbHVlIG9mIGByZW1gLCB3aGljaCBpcyB1c2VkIGZvciBhcyB3ZWxsIGZvbnQgc2l6ZXMsIHBhZGRpbmdzLCBhbmQgbWFyZ2luc1xuLy8gJGZvbnQtc2l6ZS1iYXNlIGFmZmVjdHMgdGhlIGZvbnQgc2l6ZSBvZiB0aGUgYm9keSB0ZXh0XG4kZm9udC1zaXplLXJvb3Q6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDsgLy8gQXNzdW1lcyB0aGUgYnJvd3NlciBkZWZhdWx0LCB0eXBpY2FsbHkgYDE2cHhgXG4kZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuODc1ICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWxpZ2h0ZXI6ICAgICAgICAgbGlnaHRlciAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1saWdodDogICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ub3JtYWw6ICAgICAgICAgIDQwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1zZW1pYm9sZDogICAgICAgIDYwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkOiAgICAgICAgICAgIDcwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkZXI6ICAgICAgICAgIGJvbGRlciAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWJhc2U6ICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgMS4yNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1sZzogICAgICAgICAgICAgIDIgIWRlZmF1bHQ7XG5cbiRoMS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIuNSAhZGVmYXVsdDtcbiRoMi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIgIWRlZmF1bHQ7XG4kaDMtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjc1ICFkZWZhdWx0O1xuJGg0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9udC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvbnQtc2l6ZXNcbiRmb250LXNpemVzOiAoXG4gIDE6ICRoMS1mb250LXNpemUsXG4gIDI6ICRoMi1mb250LXNpemUsXG4gIDM6ICRoMy1mb250LXNpemUsXG4gIDQ6ICRoNC1mb250LXNpemUsXG4gIDU6ICRoNS1mb250LXNpemUsXG4gIDY6ICRoNi1mb250LXNpemVcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvbnQtc2l6ZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGhlYWRpbmdzLXZhcmlhYmxlc1xuJGhlYWRpbmdzLW1hcmdpbi1ib3R0b206ICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXN0eWxlOiAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgICAgICA1MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgICAgICAxLjIgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBoZWFkaW5ncy12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGRpc3BsYXktaGVhZGluZ3NcbiRkaXNwbGF5LWZvbnQtc2l6ZXM6IChcbiAgMTogNXJlbSxcbiAgMjogNC41cmVtLFxuICAzOiA0cmVtLFxuICA0OiAzLjVyZW0sXG4gIDU6IDNyZW0sXG4gIDY6IDIuNXJlbVxuKSAhZGVmYXVsdDtcblxuJGRpc3BsYXktZm9udC1mYW1pbHk6IG51bGwgIWRlZmF1bHQ7XG4kZGlzcGxheS1mb250LXN0eWxlOiAgbnVsbCAhZGVmYXVsdDtcbiRkaXNwbGF5LWZvbnQtd2VpZ2h0OiAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheS1saW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBkaXNwbGF5LWhlYWRpbmdzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0eXBlLXZhcmlhYmxlc1xuJGxlYWQtZm9udC1zaXplOiAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRsZWFkLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcblxuJHNtYWxsLWZvbnQtc2l6ZTogICAgICAgICAgICAgLjg3NWVtICFkZWZhdWx0O1xuXG4kc3ViLXN1cC1mb250LXNpemU6ICAgICAgICAgICAuNzVlbSAhZGVmYXVsdDtcblxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kaW5pdGlhbGlzbS1mb250LXNpemU6ICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuXG4kYmxvY2txdW90ZS1tYXJnaW4teTogICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWZvb3Rlci1jb2xvcjogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWZvb3Rlci1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG5cbiRoci1tYXJnaW4teTogICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kaHItY29sb3I6ICAgICAgICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLyBmdXN2LWRpc2FibGVcbiRoci1iZy1jb2xvcjogICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wXG4kaHItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMFxuLy8gZnVzdi1lbmFibGVcblxuJGhyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gQWxsb3dzIGZvciBpbmhlcml0ZWQgY29sb3JzXG4kaHItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGhyLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgLjI1ICFkZWZhdWx0O1xuXG4kbGVnZW5kLW1hcmdpbi1ib3R0b206ICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRsZWdlbmQtZm9udC1zaXplOiAgICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRsZWdlbmQtZm9udC13ZWlnaHQ6ICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRkdC1mb250LXdlaWdodDogICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4kbGlzdC1pbmxpbmUtcGFkZGluZzogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG1hcmstcGFkZGluZzogICAgICAgICAgICAgICAgLjE4NzVlbSAhZGVmYXVsdDtcbiRtYXJrLWJnOiAgICAgICAgICAgICAgICAgICAgICR5ZWxsb3ctMTAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0eXBlLXZhcmlhYmxlc1xuXG5cbi8vIFRhYmxlc1xuLy9cbi8vIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRhYmxlLXZhcmlhYmxlc1xuJHRhYmxlLWNlbGwtcGFkZGluZy15OiAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXg6ICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmcteS1zbTogICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmcteC1zbTogICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJHRhYmxlLWNlbGwtdmVydGljYWwtYWxpZ246ICAgdG9wICFkZWZhdWx0O1xuXG4kdGFibGUtY29sb3I6ICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiR0YWJsZS1hY2NlbnQtYmc6ICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4kdGFibGUtdGgtZm9udC13ZWlnaHQ6ICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kdGFibGUtc3RyaXBlZC1jb2xvcjogICAgICAgICAkdGFibGUtY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtc3RyaXBlZC1iZy1mYWN0b3I6ICAgICAuMDUgIWRlZmF1bHQ7XG4kdGFibGUtc3RyaXBlZC1iZzogICAgICAgICAgICByZ2JhKCRibGFjaywgJHRhYmxlLXN0cmlwZWQtYmctZmFjdG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWFjdGl2ZS1iZy1mYWN0b3I6ICAgICAgLjEgIWRlZmF1bHQ7XG4kdGFibGUtYWN0aXZlLWJnOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgJHRhYmxlLWFjdGl2ZS1iZy1mYWN0b3IpICFkZWZhdWx0O1xuXG4kdGFibGUtaG92ZXItY29sb3I6ICAgICAgICAgICAkdGFibGUtY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItYmctZmFjdG9yOiAgICAgICAuMDc1ICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWJnOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssICR0YWJsZS1ob3Zlci1iZy1mYWN0b3IpICFkZWZhdWx0O1xuXG4kdGFibGUtYm9yZGVyLWZhY3RvcjogICAgICAgICAuMSAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLXN0cmlwZWQtb3JkZXI6ICAgICAgICAgb2RkICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtY29sdW1ucy1vcmRlcjogZXZlbiAhZGVmYXVsdDtcblxuJHRhYmxlLWdyb3VwLXNlcGFyYXRvci1jb2xvcjogY3VycmVudGNvbG9yICFkZWZhdWx0O1xuXG4kdGFibGUtY2FwdGlvbi1jb2xvcjogICAgICAgICAkdGV4dC1tdXRlZCAhZGVmYXVsdDtcblxuJHRhYmxlLWJnLXNjYWxlOiAgICAgICAgICAgICAgLTgwJSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGFibGUtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0YWJsZS1sb29wXG4kdGFibGUtdmFyaWFudHM6IChcbiAgXCJwcmltYXJ5XCI6ICAgIHNoaWZ0LWNvbG9yKCRwcmltYXJ5LCAkdGFibGUtYmctc2NhbGUpLFxuICBcInNlY29uZGFyeVwiOiAgc2hpZnQtY29sb3IoJHNlY29uZGFyeSwgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJzdWNjZXNzXCI6ICAgIHNoaWZ0LWNvbG9yKCRzdWNjZXNzLCAkdGFibGUtYmctc2NhbGUpLFxuICBcImluZm9cIjogICAgICAgc2hpZnQtY29sb3IoJGluZm8sICR0YWJsZS1iZy1zY2FsZSksXG4gIFwid2FybmluZ1wiOiAgICBzaGlmdC1jb2xvcigkd2FybmluZywgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJkYW5nZXJcIjogICAgIHNoaWZ0LWNvbG9yKCRkYW5nZXIsICR0YWJsZS1iZy1zY2FsZSksXG4gIFwibGlnaHRcIjogICAgICAkbGlnaHQsXG4gIFwiZGFya1wiOiAgICAgICAkZGFyayxcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRhYmxlLWxvb3BcblxuXG4vLyBCdXR0b25zICsgRm9ybXNcbi8vXG4vLyBTaGFyZWQgdmFyaWFibGVzIHRoYXQgYXJlIHJlYXNzaWduZWQgdG8gYCRpbnB1dC1gIGFuZCBgJGJ0bi1gIHNwZWNpZmljIHZhcmlhYmxlcy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGlucHV0LWJ0bi12YXJpYWJsZXNcbiRpbnB1dC1idG4tcGFkZGluZy15OiAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteDogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtZmFtaWx5OiAgICAgICBudWxsICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemU6ICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodDogICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tZm9jdXMtd2lkdGg6ICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1jb2xvci1vcGFjaXR5OiAuMjUgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWNvbG9yOiAgICAgICAgIHJnYmEoJGNvbXBvbmVudC1hY3RpdmUtYmcsICRpbnB1dC1idG4tZm9jdXMtY29sb3Itb3BhY2l0eSkgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJsdXI6ICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgIDAgMCAkaW5wdXQtYnRuLWZvY3VzLWJsdXIgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1zbTogICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1zbTogICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLXNtOiAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LWxnOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgMXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLWxnOiAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tYm9yZGVyLXdpZHRoOiAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGlucHV0LWJ0bi12YXJpYWJsZXNcblxuXG4vLyBCdXR0b25zXG4vL1xuLy8gRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQsIGFuZCBib3JkZXIgY29sb3IuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tdmFyaWFibGVzXG4kYnRuLXBhZGRpbmcteTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGJ0bi1mb250LWZhbWlseTogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplOiAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodDogICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRidG4td2hpdGUtc3BhY2U6ICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIFNldCB0byBgbm93cmFwYCB0byBwcmV2ZW50IHRleHQgd3JhcHBpbmdcblxuJGJ0bi1wYWRkaW5nLXktc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG5cbiRidG4tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGJ0bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMCByZ2JhKCR3aGl0ZSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRidG4tZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAuNjUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiAgICAgICBpbnNldCAwIDNweCA1cHggcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstY29sb3I6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1jb2xvcikgIWRlZmF1bHQ7XG4kYnRuLWxpbmstaG92ZXItY29sb3I6ICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcikgIWRlZmF1bHQ7XG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbi8vIEFsbG93cyBmb3IgY3VzdG9taXppbmcgYnV0dG9uIHJhZGl1cyBpbmRlcGVuZGVudGx5IGZyb20gZ2xvYmFsIGJvcmRlciByYWRpdXNcbiRidG4tYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcblxuJGJ0bi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kYnRuLWhvdmVyLWJnLXNoYWRlLWFtb3VudDogICAgICAgMTUlICFkZWZhdWx0O1xuJGJ0bi1ob3Zlci1iZy10aW50LWFtb3VudDogICAgICAgIDE1JSAhZGVmYXVsdDtcbiRidG4taG92ZXItYm9yZGVyLXNoYWRlLWFtb3VudDogICAyMCUgIWRlZmF1bHQ7XG4kYnRuLWhvdmVyLWJvcmRlci10aW50LWFtb3VudDogICAgMTAlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYmctc2hhZGUtYW1vdW50OiAgICAgIDIwJSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJnLXRpbnQtYW1vdW50OiAgICAgICAyMCUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3JkZXItc2hhZGUtYW1vdW50OiAgMjUlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm9yZGVyLXRpbnQtYW1vdW50OiAgIDEwJSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYnRuLXZhcmlhYmxlc1xuXG5cbi8vIEZvcm1zXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXRleHQtdmFyaWFibGVzXG4kZm9ybS10ZXh0LW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS10ZXh0LWZvbnQtc3R5bGU6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLXRleHQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICR0ZXh0LW11dGVkICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXRleHQtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWxhYmVsLXZhcmlhYmxlc1xuJGZvcm0tbGFiZWwtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1mb250LXN0eWxlOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tbGFiZWwtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWlucHV0LXZhcmlhYmxlc1xuJGlucHV0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdyYXktNDAwICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgICRib3gtc2hhZG93LWluc2V0ICFkZWZhdWx0O1xuXG4kaW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1mb2N1cy1iZzogICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgdGludC1jb2xvcigkY29tcG9uZW50LWFjdGl2ZS1iZywgNTAlKSAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kaW5wdXQtcGxhaW50ZXh0LWNvbG9yOiAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICogMiAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1pbm5lcjogICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sICRpbnB1dC1wYWRkaW5nLXkgKiAyKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjogICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjVlbSwgJGlucHV0LXBhZGRpbmcteSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI6ICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIC4yNWVtLCAkaW5wdXQtcGFkZGluZy15ICogLjUpICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXkgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtc206ICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1sZzogICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LWxnICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kZm9ybS1jb2xvci13aWR0aDogICAgICAgICAgICAgICAgICAgICAgM3JlbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1pbnB1dC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tY2hlY2stdmFyaWFibGVzXG4kZm9ybS1jaGVjay1pbnB1dC13aWR0aDogICAgICAgICAgICAgICAgICAxZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1taW4taGVpZ2h0OiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLXBhZGRpbmctc3RhcnQ6ICAgICAgICAgICAgICAgICRmb3JtLWNoZWNrLWlucHV0LXdpZHRoICsgLjVlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1sYWJlbC1jb2xvcjogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbGFiZWwtY3Vyc29yOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWFjdGl2ZS1maWx0ZXI6ICAgICAgICAgIGJyaWdodG5lc3MoOTAlKSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtYm9yZGVyOiAgICAgICAgICAgICAgICAgMXB4IHNvbGlkIHJnYmEoJGJsYWNrLCAuMjUpICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgLjI1ZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1yYWRpby1ib3JkZXItcmFkaXVzOiAgICAgICAgICA1MCUgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1mb2N1cy1ib3JkZXI6ICAgICAgICAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWNvbG9yOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1ib3JkZXItY29sb3I6ICAgJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctaW1hZ2U6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDIwIDIwJz48cGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPSczJyBkPSdtNiAxMCAzIDMgNi02Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stcmFkaW8tY2hlY2tlZC1iZy1pbWFnZTogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMicgZmlsbD0nI3skZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWNvbG9yfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1jb2xvcjogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYm9yZGVyLWNvbG9yOiAgICRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWltYWdlOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyMCAyMCc+PHBhdGggZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycgZD0nTTYgMTBoOCcvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtZGlzYWJsZWQtb3BhY2l0eTogICAgICAgIC41ICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbGFiZWwtZGlzYWJsZWQtb3BhY2l0eTogICAgICAgICRmb3JtLWNoZWNrLWlucHV0LWRpc2FibGVkLW9wYWNpdHkgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1idG4tY2hlY2stZGlzYWJsZWQtb3BhY2l0eTogICAgJGJ0bi1kaXNhYmxlZC1vcGFjaXR5ICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbmxpbmUtbWFyZ2luLWVuZDogICAgMXJlbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1jaGVjay12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tc3dpdGNoLXZhcmlhYmxlc1xuJGZvcm0tc3dpdGNoLWNvbG9yOiAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMjUpICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLXdpZHRoOiAgICAgICAgICAgICAgIDJlbSAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC1wYWRkaW5nLXN0YXJ0OiAgICAgICAkZm9ybS1zd2l0Y2gtd2lkdGggKyAuNWVtICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWJnLWltYWdlOiAgICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGZvcm0tc3dpdGNoLWNvbG9yfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC1ib3JkZXItcmFkaXVzOiAgICAgICAkZm9ybS1zd2l0Y2gtd2lkdGggIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtdHJhbnNpdGlvbjogICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbiAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kZm9ybS1zd2l0Y2gtZm9jdXMtY29sb3I6ICAgICAgICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC1mb2N1cy1iZy1pbWFnZTogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPSczJyBmaWxsPScjeyRmb3JtLXN3aXRjaC1mb2N1cy1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLXN3aXRjaC1jaGVja2VkLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLWltYWdlOiAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPSczJyBmaWxsPScjeyRmb3JtLXN3aXRjaC1jaGVja2VkLWNvbG9yfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLXBvc2l0aW9uOiByaWdodCBjZW50ZXIgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tc3dpdGNoLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgaW5wdXQtZ3JvdXAtdmFyaWFibGVzXG4kaW5wdXQtZ3JvdXAtYWRkb24tcGFkZGluZy15OiAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteSAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1wYWRkaW5nLXg6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWZvbnQtd2VpZ2h0OiAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGlucHV0LWdyb3VwLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1zZWxlY3QtdmFyaWFibGVzXG4kZm9ybS1zZWxlY3QtcGFkZGluZy15OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LXBhZGRpbmcteDogICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb250LWZhbWlseTogICAgICAgICAgICRpbnB1dC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb250LXNpemU6ICAgICAgICAgICAgICRpbnB1dC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc6ICAgICAkZm9ybS1zZWxlY3QtcGFkZGluZy14ICogMyAhZGVmYXVsdDsgLy8gRXh0cmEgcGFkZGluZyBmb3IgYmFja2dyb3VuZC1pbWFnZVxuJGZvcm0tc2VsZWN0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGlucHV0LWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWNvbG9yOiAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWRpc2FibGVkLWNvbG9yOiAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1kaXNhYmxlZC1iZzogICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYmctcG9zaXRpb246ICAgICAgICAgICByaWdodCAkZm9ybS1zZWxlY3QtcGFkZGluZy14IGNlbnRlciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1iZy1zaXplOiAgICAgICAgICAgICAgIDE2cHggMTJweCAhZGVmYXVsdDsgLy8gSW4gcGl4ZWxzIGJlY2F1c2UgaW1hZ2UgZGltZW5zaW9uc1xuJGZvcm0tc2VsZWN0LWluZGljYXRvci1jb2xvcjogICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWluZGljYXRvcjogICAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnPjxwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzInIGQ9J20yIDUgNiA2IDYtNicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1lbmQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggKiAyLjUgKyAkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbjogICAgY2VudGVyIHJpZ2h0ICRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemU6ICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtYm9yZGVyLXdpZHRoOiAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJvcmRlci1yYWRpdXM6ICAgICAgICRpbnB1dC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJveC1zaGFkb3c6ICAgICAgICAgICRib3gtc2hhZG93LWluc2V0ICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yOiAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb2N1cy13aWR0aDogICAgICAgICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdzogICAgMCAwIDAgJGZvcm0tc2VsZWN0LWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXktc206ICAgICAgICAkaW5wdXQtcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LXBhZGRpbmcteC1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9udC1zaXplLXNtOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzLXNtOiAgICAkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtcGFkZGluZy14LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb250LXNpemUtbGc6ICAgICAgICAkaW5wdXQtZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJvcmRlci1yYWRpdXMtbGc6ICAgICRpbnB1dC1ib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtdHJhbnNpdGlvbjogICAgICAgICAgJGlucHV0LXRyYW5zaXRpb24gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tc2VsZWN0LXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1yYW5nZS12YXJpYWJsZXNcbiRmb3JtLXJhbmdlLXRyYWNrLXdpZHRoOiAgICAgICAgICAxMDAlICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2staGVpZ2h0OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2stY3Vyc29yOiAgICAgICAgIHBvaW50ZXIgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1iZzogICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1czogIDFyZW0gIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1ib3gtc2hhZG93OiAgICAgJGJveC1zaGFkb3ctaW5zZXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXJhbmdlLXRodW1iLXdpZHRoOiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICRmb3JtLXJhbmdlLXRodW1iLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyOiAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIC4xcmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzogICAgICAgIDAgMCAwIDFweCAkYm9keS1iZywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOiAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0OyAvLyBGb3IgZm9jdXMgYm94IHNoYWRvdyBpc3N1ZSBpbiBFZGdlXG4kZm9ybS1yYW5nZS10aHVtYi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgdGludC1jb2xvcigkY29tcG9uZW50LWFjdGl2ZS1iZywgNzAlKSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXJhbmdlLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1maWxlLXZhcmlhYmxlc1xuJGZvcm0tZmlsZS1idXR0b24tY29sb3I6ICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZpbGUtYnV0dG9uLWJnOiAgICAgICAgICAgICAkaW5wdXQtZ3JvdXAtYWRkb24tYmcgIWRlZmF1bHQ7XG4kZm9ybS1maWxlLWJ1dHRvbi1ob3Zlci1iZzogICAgICAgc2hhZGUtY29sb3IoJGZvcm0tZmlsZS1idXR0b24tYmcsIDUlKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1maWxlLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1mbG9hdGluZy12YXJpYWJsZXNcbiRmb3JtLWZsb2F0aW5nLWhlaWdodDogICAgICAgICAgICBhZGQoMy41cmVtLCAkaW5wdXQtaGVpZ2h0LWJvcmRlcikgIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1saW5lLWhlaWdodDogICAgICAgMS4yNSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteDogICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctcGFkZGluZy15OiAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLXQ6ICAgMS42MjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLWI6ICAgLjYyNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWxhYmVsLW9wYWNpdHk6ICAgICAuNjUgIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1sYWJlbC10cmFuc2Zvcm06ICAgc2NhbGUoLjg1KSB0cmFuc2xhdGVZKC0uNXJlbSkgdHJhbnNsYXRlWCguMTVyZW0pICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctdHJhbnNpdGlvbjogICAgICAgIG9wYWNpdHkgLjFzIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gLjFzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWZsb2F0aW5nLXZhcmlhYmxlc1xuXG4vLyBGb3JtIHZhbGlkYXRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tZmVlZGJhY2stdmFyaWFibGVzXG4kZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wOiAgICAgICAgICAkZm9ybS10ZXh0LW1hcmdpbi10b3AgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1mb250LXNpemU6ICAgICAgICAgICAkZm9ybS10ZXh0LWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWZvbnQtc3R5bGU6ICAgICAgICAgICRmb3JtLXRleHQtZm9udC1zdHlsZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yOiAgICAgICAgICRzdWNjZXNzICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcjogICAgICAgJGRhbmdlciAhZGVmYXVsdDtcblxuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcjogICAgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkOiAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcn0nIGQ9J00yLjMgNi43My42IDQuNTNjLS40LTEuMDQuNDYtMS40IDEuMS0uOGwxLjEgMS40IDMuNC0zLjhjLjYtLjYzIDEuNi0uMjcgMS4yLjdsLTQgNC42Yy0uNDMuNS0uOC40LTEuMS4xeicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcjogICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQ6ICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxMiAxMicgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfSc+PGNpcmNsZSBjeD0nNicgY3k9JzYnIHI9JzQuNScvPjxwYXRoIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIGQ9J001LjggMy42aC40TDYgNi41eicvPjxjaXJjbGUgY3g9JzYnIGN5PSc4LjInIHI9Jy42JyBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nIHN0cm9rZT0nbm9uZScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1mZWVkYmFjay12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXNcbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiAoXG4gIFwidmFsaWRcIjogKFxuICAgIFwiY29sb3JcIjogJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IsXG4gICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWRcbiAgKSxcbiAgXCJpbnZhbGlkXCI6IChcbiAgICBcImNvbG9yXCI6ICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IsXG4gICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZFxuICApXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXZhbGlkYXRpb24tc3RhdGVzXG5cbi8vIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHppbmRleC1zdGFja1xuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtc3RpY2t5OiAgICAgICAgICAgICAgICAgICAgIDEwMjAgIWRlZmF1bHQ7XG4kemluZGV4LWZpeGVkOiAgICAgICAgICAgICAgICAgICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1vZmZjYW52YXMtYmFja2Ryb3A6ICAgICAgICAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtb2ZmY2FudmFzOiAgICAgICAgICAgICAgICAgIDEwNDUgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsLWJhY2tkcm9wOiAgICAgICAgICAgICAxMDUwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbDogICAgICAgICAgICAgICAgICAgICAgMTA1NSAhZGVmYXVsdDtcbiR6aW5kZXgtcG9wb3ZlcjogICAgICAgICAgICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG4kemluZGV4LXRvb2x0aXA6ICAgICAgICAgICAgICAgICAgICAxMDgwICFkZWZhdWx0O1xuJHppbmRleC10b2FzdDogICAgICAgICAgICAgICAgICAgICAgMTA5MCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgemluZGV4LXN0YWNrXG5cblxuLy8gTmF2c1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbmF2LXZhcmlhYmxlc1xuJG5hdi1saW5rLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRuYXYtbGluay1mb250LXdlaWdodDogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbmF2LWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1jb2xvcikgIWRlZmF1bHQ7XG4kbmF2LWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcikgIWRlZmF1bHQ7XG4kbmF2LWxpbmstdHJhbnNpdGlvbjogICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAkZ3JheS0yMDAgJGdyYXktMjAwICRuYXYtdGFicy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I6ICRncmF5LTMwMCAkZ3JheS0zMDAgJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG5hdi12YXJpYWJsZXNcblxuXG4vLyBOYXZiYXJcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdmJhci12YXJpYWJsZXNcbiRuYXZiYXItcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy14OiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZTogICAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuLy8gQ29tcHV0ZSB0aGUgbmF2YmFyLWJyYW5kIHBhZGRpbmcteSBzbyB0aGUgbmF2YmFyLWJyYW5kIHdpbGwgaGF2ZSB0aGUgc2FtZSBoZWlnaHQgYXMgbmF2YmFyLXRleHQgYW5kIG5hdi1saW5rXG4kbmF2LWxpbmstaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSArICRuYXYtbGluay1wYWRkaW5nLXkgKiAyICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1oZWlnaHQ6ICAgICAgICAgICAgICAgJG5hdmJhci1icmFuZC1mb250LXNpemUgKiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtcGFkZGluZy15OiAgICAgICAgICAgICgkbmF2LWxpbmstaGVpZ2h0IC0gJG5hdmJhci1icmFuZC1oZWlnaHQpICogLjUgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLW1hcmdpbi1lbmQ6ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15OiAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplOiAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXM6ICAgICAgJGJ0bi1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWZvY3VzLXdpZHRoOiAgICAgICAgJGJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci10cmFuc2l0aW9uOiAgICAgICAgIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC41NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yOiAgICAgICAgICByZ2JhKCRibGFjaywgLjcpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I6ICAgICAgICAgcmdiYSgkYmxhY2ssIC45KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I6ICAgICAgIHJnYmEoJGJsYWNrLCAuMykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzMCAzMCc+PHBhdGggc3Ryb2tlPScjeyRuYXZiYXItbGlnaHQtY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I6IHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3I6ICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBuYXZiYXItdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItZGFyay12YXJpYWJsZXNcbiRuYXZiYXItZGFyay1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNTUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkd2hpdGUsIC43NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjI1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmc6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDMwIDMwJz48cGF0aCBzdHJva2U9JyN7JG5hdmJhci1kYXJrLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3I6ICByZ2JhKCR3aGl0ZSwgLjEpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWNvbG9yOiAgICAgICAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1icmFuZC1ob3Zlci1jb2xvcjogICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG5hdmJhci1kYXJrLXZhcmlhYmxlc1xuXG5cbi8vIERyb3Bkb3duc1xuLy9cbi8vIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGRyb3Bkb3duLXZhcmlhYmxlc1xuJGRyb3Bkb3duLW1pbi13aWR0aDogICAgICAgICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy14OiAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tc3BhY2VyOiAgICAgICAgICAgICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgIHN1YnRyYWN0KCRkcm9wZG93bi1ib3JkZXItcmFkaXVzLCAkZHJvcGRvd24tYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICAgICRkcm9wZG93bi1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teTogICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm94LXNoYWRvdzogICAgICAgICAgICAgICAkYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgc2hhZGUtY29sb3IoJGRyb3Bkb3duLWxpbmstY29sb3IsIDEwJSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15OiAgICAgICAgICAgJHNwYWNlciAqIC4yNSAhZGVmYXVsdDtcbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDogICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRkcm9wZG93bi1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICRkcm9wZG93bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4vLyBmdXN2LWRpc2FibGVcbiRkcm9wZG93bi1oZWFkZXItcGFkZGluZzogICAgICAgICAgICRkcm9wZG93bi1oZWFkZXItcGFkZGluZy15ICRkcm9wZG93bi1oZWFkZXItcGFkZGluZy14ICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMFxuLy8gZnVzdi1lbmFibGVcbi8vIHNjc3MtZG9jcy1lbmQgZHJvcGRvd24tdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBkcm9wZG93bi1kYXJrLXZhcmlhYmxlc1xuJGRyb3Bkb3duLWRhcmstY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstYm9yZGVyLWNvbG9yOiAgICAgICAgJGRyb3Bkb3duLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWRpdmlkZXItYmc6ICAgICAgICAgICRkcm9wZG93bi1kaXZpZGVyLWJnICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstYm94LXNoYWRvdzogICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstY29sb3I6ICAgICAgICAgICRkcm9wZG93bi1kYXJrLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1ob3Zlci1jb2xvcjogICAgJHdoaXRlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1ob3Zlci1iZzogICAgICAgcmdiYSgkd2hpdGUsIC4xNSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWFjdGl2ZS1jb2xvcjogICAkZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWFjdGl2ZS1iZzogICAgICAkZHJvcGRvd24tbGluay1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWRpc2FibGVkLWNvbG9yOiAkZ3JheS01MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1oZWFkZXItY29sb3I6ICAgICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGRyb3Bkb3duLWRhcmstdmFyaWFibGVzXG5cblxuLy8gUGFnaW5hdGlvblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcGFnaW5hdGlvbi12YXJpYWJsZXNcbiRwYWdpbmF0aW9uLXBhZGRpbmcteTogICAgICAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktc206ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtc206ICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZzogICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZzogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZm9udC1zaXplOiAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1jb2xvcikgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDogICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1tYXJnaW4tc3RhcnQ6ICAgICAgICAgICAoJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoICogLTEpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb2N1cy1jb2xvcjogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcikgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lOiAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcikgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkcGFnaW5hdGlvbi1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjogICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tdHJhbnNpdGlvbjogICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcGFnaW5hdGlvbi12YXJpYWJsZXNcblxuXG4vLyBQbGFjZWhvbGRlcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBsYWNlaG9sZGVyc1xuJHBsYWNlaG9sZGVyLW9wYWNpdHktbWF4OiAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kcGxhY2Vob2xkZXItb3BhY2l0eS1taW46ICAgICAgICAgICAuMiAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcGxhY2Vob2xkZXJzXG5cbi8vIENhcmRzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjYXJkLXZhcmlhYmxlc1xuJGNhcmQtc3BhY2VyLXk6ICAgICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kY2FyZC10aXRsZS1zcGFjZXIteTogICAgICAgICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvci10cmFuc2x1Y2VudCkgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjYXJkLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICAgICBzdWJ0cmFjdCgkY2FyZC1ib3JkZXItcmFkaXVzLCAkY2FyZC1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGNhcmQtY2FwLXBhZGRpbmcteTogICAgICAgICAgICAgICAgJGNhcmQtc3BhY2VyLXkgKiAuNSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICRjYXJkLXNwYWNlci14ICFkZWZhdWx0O1xuJGNhcmQtY2FwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wMykgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtY29sb3I6ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nOiAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGNhcmQtZ3JvdXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgJGdyaWQtZ3V0dGVyLXdpZHRoICogLjUgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNhcmQtdmFyaWFibGVzXG5cbi8vIEFjY29yZGlvblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYWNjb3JkaW9uLXZhcmlhYmxlc1xuJGFjY29yZGlvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDsgLy8gU2FzcyB2YXJpYWJsZSBiZWNhdXNlIG9mICRhY2NvcmRpb24tYnV0dG9uLWljb25cbiRhY2NvcmRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJGFjY29yZGlvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICBzdWJ0cmFjdCgkYWNjb3JkaW9uLWJvcmRlci1yYWRpdXMsICRhY2NvcmRpb24tYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAgICAgJGFjY29yZGlvbi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJvZHktcGFkZGluZy14OiAgICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1idXR0b24tcGFkZGluZy15OiAgICAgICAgICAgICAgJGFjY29yZGlvbi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICRhY2NvcmRpb24tY29sb3IgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1iZzogICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJnKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAgICRidG4tdHJhbnNpdGlvbiwgYm9yZGVyLXJhZGl1cyAuMTVzIGVhc2UgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICB0aW50LWNvbG9yKCRjb21wb25lbnQtYWN0aXZlLWJnLCA5MCUpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgc2hhZGUtY29sb3IoJHByaW1hcnksIDEwJSkgIWRlZmF1bHQ7XG5cbiRhY2NvcmRpb24tYnV0dG9uLWZvY3VzLWJvcmRlci1jb2xvcjogICAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRhY2NvcmRpb24taWNvbi13aWR0aDogICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWljb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAkYWNjb3JkaW9uLWJ1dHRvbi1jb2xvciAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIHRyYW5zZm9ybSAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWljb24tdHJhbnNmb3JtOiAgICAgICAgICAgICAgICByb3RhdGUoLTE4MGRlZykgIWRlZmF1bHQ7XG5cbiRhY2NvcmRpb24tYnV0dG9uLWljb246ICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGFjY29yZGlvbi1pY29uLWNvbG9yfSc+PHBhdGggZmlsbC1ydWxlPSdldmVub2RkJyBkPSdNMS42NDYgNC42NDZhLjUuNSAwIDAgMSAuNzA4IDBMOCAxMC4yOTNsNS42NDYtNS42NDdhLjUuNSAwIDAgMSAuNzA4LjcwOGwtNiA2YS41LjUgMCAwIDEtLjcwOCAwbC02LTZhLjUuNSAwIDAgMSAwLS43MDh6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWljb246ICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skYWNjb3JkaW9uLWljb24tYWN0aXZlLWNvbG9yfSc+PHBhdGggZmlsbC1ydWxlPSdldmVub2RkJyBkPSdNMS42NDYgNC42NDZhLjUuNSAwIDAgMSAuNzA4IDBMOCAxMC4yOTNsNS42NDYtNS42NDdhLjUuNSAwIDAgMSAuNzA4LjcwOGwtNiA2YS41LjUgMCAwIDEtLjcwOCAwbC02LTZhLjUuNSAwIDAgMSAwLS43MDh6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBhY2NvcmRpb24tdmFyaWFibGVzXG5cbi8vIFRvb2x0aXBzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0b29sdGlwLXZhcmlhYmxlc1xuJHRvb2x0aXAtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuJHRvb2x0aXAtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHRvb2x0aXAtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJHRvb2x0aXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kdG9vbHRpcC1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAuOSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICRzcGFjZXIgKiAuMjUgIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXJnaW46ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBUT0RPOiByZW1vdmUgdGhpcyBpbiB2NlxuXG4kdG9vbHRpcC1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAuOHJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC40cmVtICFkZWZhdWx0O1xuLy8gZnVzdi1kaXNhYmxlXG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIEJvb3RzdHJhcCA1LjIuMCBmb3IgQ1NTIHZhcmlhYmxlc1xuLy8gZnVzdi1lbmFibGVcbi8vIHNjc3MtZG9jcy1lbmQgdG9vbHRpcC12YXJpYWJsZXNcblxuLy8gRm9ybSB0b29sdGlwcyBtdXN0IGNvbWUgYWZ0ZXIgcmVndWxhciB0b29sdGlwc1xuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRvb2x0aXAtZmVlZGJhY2stdmFyaWFibGVzXG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteTogICAgICR0b29sdGlwLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14OiAgICAgJHRvb2x0aXAtcGFkZGluZy14ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemU6ICAgICAkdG9vbHRpcC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0OiAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLW9wYWNpdHk6ICAgICAgICR0b29sdGlwLW9wYWNpdHkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXM6ICR0b29sdGlwLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRvb2x0aXAtZmVlZGJhY2stdmFyaWFibGVzXG5cblxuLy8gUG9wb3ZlcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBvcG92ZXItdmFyaWFibGVzXG4kcG9wb3Zlci1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvci10cmFuc2x1Y2VudCkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRwb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgIHN1YnRyYWN0KCRwb3BvdmVyLWJvcmRlci1yYWRpdXMsICRwb3BvdmVyLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAkYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJHBvcG92ZXItaGVhZGVyLWZvbnQtc2l6ZTogICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWJnOiAgICAgICAgICAgICAgICAgc2hhZGUtY29sb3IoJHBvcG92ZXItYmcsIDYlKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICRoZWFkaW5ncy1jb2xvciAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJHBvcG92ZXItYm9keS1jb2xvcjogICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXg6ICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwb3BvdmVyLXZhcmlhYmxlc1xuXG4vLyBmdXN2LWRpc2FibGVcbi8vIERlcHJlY2F0ZWQgaW4gQm9vdHN0cmFwIDUuMi4wIGZvciBDU1MgdmFyaWFibGVzXG4kcG9wb3Zlci1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQpICFkZWZhdWx0O1xuLy8gZnVzdi1lbmFibGVcblxuXG4vLyBUb2FzdHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRvYXN0LXZhcmlhYmxlc1xuJHRvYXN0LW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMzUwcHggIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIC44NzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRvYXN0LWJhY2tncm91bmQtY29sb3I6ICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvci10cmFuc2x1Y2VudCkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiR0b2FzdC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICRib3gtc2hhZG93ICFkZWZhdWx0O1xuJHRvYXN0LXNwYWNpbmc6ICAgICAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cbiR0b2FzdC1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYmFja2dyb3VuZC1jb2xvcjogICAgIHJnYmEoJHdoaXRlLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgcmdiYSgkYmxhY2ssIC4wNSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRvYXN0LXZhcmlhYmxlc1xuXG5cbi8vIEJhZGdlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYmFkZ2UtdmFyaWFibGVzXG4kYmFkZ2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAuNzVlbSAhZGVmYXVsdDtcbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGJhZGdlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjM1ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNjVlbSAhZGVmYXVsdDtcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBiYWRnZS12YXJpYWJsZXNcblxuXG4vLyBNb2RhbHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG1vZGFsLXZhcmlhYmxlc1xuJG1vZGFsLWlubmVyLXBhZGRpbmc6ICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbjogICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC1kaWFsb2ctbWFyZ2luOiAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cDogICAgICAgMS43NXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRtb2RhbC1jb250ZW50LWNvbG9yOiAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aDogICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXM6IHN1YnRyYWN0KCRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMsICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzOiAgICAgICAkYm94LXNoYWRvdy1zbSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXA6ICAgICRib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kbW9kYWwtYmFja2Ryb3AtYmc6ICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgICAgICAgICAuNSAhZGVmYXVsdDtcblxuJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgICAkbW9kYWwtaW5uZXItcGFkZGluZyAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAgICRtb2RhbC1pbm5lci1wYWRkaW5nICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgICAgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7IC8vIEtlZXAgdGhpcyBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcblxuJG1vZGFsLWZvb3Rlci1iZzogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGg6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgICAgICAgNTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICAgICAgICA4MDBweCAhZGVmYXVsdDtcbiRtb2RhbC14bDogICAgICAgICAgICAgICAgICAgICAgICAgIDExNDBweCAhZGVmYXVsdDtcblxuJG1vZGFsLWZhZGUtdHJhbnNmb3JtOiAgICAgICAgICAgICAgdHJhbnNsYXRlKDAsIC01MHB4KSAhZGVmYXVsdDtcbiRtb2RhbC1zaG93LXRyYW5zZm9ybTogICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kbW9kYWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0ICFkZWZhdWx0O1xuJG1vZGFsLXNjYWxlLXRyYW5zZm9ybTogICAgICAgICAgICAgc2NhbGUoMS4wMikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG1vZGFsLXZhcmlhYmxlc1xuXG5cbi8vIEFsZXJ0c1xuLy9cbi8vIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYWxlcnQtdmFyaWFibGVzXG4kYWxlcnQtcGFkZGluZy15OiAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kYWxlcnQtcGFkZGluZy14OiAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kYWxlcnQtbWFyZ2luLWJvdHRvbTogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRhbGVydC1iZy1zY2FsZTogICAgICAgICAgICAgICAgLTgwJSAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItc2NhbGU6ICAgICAgICAgICAgLTcwJSAhZGVmYXVsdDtcbiRhbGVydC1jb2xvci1zY2FsZTogICAgICAgICAgICAgNDAlICFkZWZhdWx0O1xuJGFsZXJ0LWRpc21pc3NpYmxlLXBhZGRpbmctcjogICAkYWxlcnQtcGFkZGluZy14ICogMyAhZGVmYXVsdDsgLy8gM3ggY292ZXJzIHdpZHRoIG9mIHggcGx1cyBkZWZhdWx0IHBhZGRpbmcgb24gZWl0aGVyIHNpZGVcbi8vIHNjc3MtZG9jcy1lbmQgYWxlcnQtdmFyaWFibGVzXG5cblxuLy8gUHJvZ3Jlc3MgYmFyc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcHJvZ3Jlc3MtdmFyaWFibGVzXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHByb2dyZXNzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjc1ICFkZWZhdWx0O1xuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm94LXNoYWRvdzogICAgICAgICAgICAgICAkYm94LXNoYWRvdy1pbnNldCAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICAgICAgICRwcmltYXJ5ICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nOiAgICAgMXMgbGluZWFyIGluZmluaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci10cmFuc2l0aW9uOiAgICAgICAgICAgd2lkdGggLjZzIGVhc2UgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHByb2dyZXNzLXZhcmlhYmxlc1xuXG5cbi8vIExpc3QgZ3JvdXBcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGxpc3QtZ3JvdXAtdmFyaWFibGVzXG4kbGlzdC1ncm91cC1jb2xvcjogICAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItY29sb3I6ICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15OiAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14OiAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1pdGVtLWJnLXNjYWxlOiAgICAgICAgICAtODAlICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtaXRlbS1jb2xvci1zY2FsZTogICAgICAgNDAlICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAgICAkbGlzdC1ncm91cC1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yOiAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yOiAgICAgJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yOiAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc6ICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbGlzdC1ncm91cC12YXJpYWJsZXNcblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aHVtYm5haWwtdmFyaWFibGVzXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1jb2xvcjogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgJGJveC1zaGFkb3ctc20gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRodW1ibmFpbC12YXJpYWJsZXNcblxuXG4vLyBGaWd1cmVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmaWd1cmUtdmFyaWFibGVzXG4kZmlndXJlLWNhcHRpb24tZm9udC1zaXplOiAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGZpZ3VyZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmaWd1cmUtdmFyaWFibGVzXG5cblxuLy8gQnJlYWRjcnVtYnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJyZWFkY3J1bWItdmFyaWFibGVzXG4kYnJlYWRjcnVtYi1mb250LXNpemU6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy15OiAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmcteDogICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmcteDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLW1hcmdpbi1ib3R0b206ICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjogICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlcjogICAgICAgICAgICAgICAgcXVvdGUoXCIvXCIpICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1mbGlwcGVkOiAgICAgICAgJGJyZWFkY3J1bWItZGl2aWRlciAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJyZWFkY3J1bWItdmFyaWFibGVzXG5cbi8vIENhcm91c2VsXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjYXJvdXNlbC12YXJpYWJsZXNcbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgMTUlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eTogICAgIC45ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbjogICAgICAgIG9wYWNpdHkgLjE1cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoOiAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0OiAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodDogMTBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyOiAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLW9wYWNpdHk6ICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtb3BhY2l0eTogIDEgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb246ICAgICAgb3BhY2l0eSAuNnMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24td2lkdGg6ICAgICAgICAgICAgIDcwJSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1wYWRkaW5nLXk6ICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLXNwYWNlcjogICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoOiAgICAgICAgMnJlbSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfSc+PHBhdGggZD0nTTExLjM1NCAxLjY0NmEuNS41IDAgMCAxIDAgLjcwOEw1LjcwNyA4bDUuNjQ3IDUuNjQ2YS41LjUgMCAwIDEtLjcwOC43MDhsLTYtNmEuNS41IDAgMCAxIDAtLjcwOGw2LTZhLjUuNSAwIDAgMSAuNzA4IDB6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfSc+PHBhdGggZD0nTTQuNjQ2IDEuNjQ2YS41LjUgMCAwIDEgLjcwOCAwbDYgNmEuNS41IDAgMCAxIDAgLjcwOGwtNiA2YS41LjUgMCAwIDEtLjcwOC0uNzA4TDEwLjI5MyA4IDQuNjQ2IDIuMzU0YS41LjUgMCAwIDEgMC0uNzA4eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAgIC42cyAhZGVmYXVsdDtcbiRjYXJvdXNlbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZS1pbi1vdXQgIWRlZmF1bHQ7IC8vIERlZmluZSB0cmFuc2Zvcm0gdHJhbnNpdGlvbiBmaXJzdCBpZiB1c2luZyBtdWx0aXBsZSB0cmFuc2l0aW9ucyAoZS5nLiwgYHRyYW5zZm9ybSAycyBlYXNlLCBvcGFjaXR5IC41cyBlYXNlLW91dGApXG4vLyBzY3NzLWRvY3MtZW5kIGNhcm91c2VsLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2Fyb3VzZWwtZGFyay12YXJpYWJsZXNcbiRjYXJvdXNlbC1kYXJrLWluZGljYXRvci1hY3RpdmUtYmc6ICAkYmxhY2sgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtZGFyay1jYXB0aW9uLWNvbG9yOiAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGNhcm91c2VsLWRhcmstY29udHJvbC1pY29uLWZpbHRlcjogIGludmVydCgxKSBncmF5c2NhbGUoMTAwKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY2Fyb3VzZWwtZGFyay12YXJpYWJsZXNcblxuXG4vLyBTcGlubmVyc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc3Bpbm5lci12YXJpYWJsZXNcbiRzcGlubmVyLXdpZHRoOiAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodDogICAgICAgICAgJHNwaW5uZXItd2lkdGggIWRlZmF1bHQ7XG4kc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjogIC0uMTI1ZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGg6ICAgIC4yNWVtICFkZWZhdWx0O1xuJHNwaW5uZXItYW5pbWF0aW9uLXNwZWVkOiAuNzVzICFkZWZhdWx0O1xuXG4kc3Bpbm5lci13aWR0aC1zbTogICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1oZWlnaHQtc206ICAgICAgICRzcGlubmVyLXdpZHRoLXNtICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoLXNtOiAuMmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBzcGlubmVyLXZhcmlhYmxlc1xuXG5cbi8vIENsb3NlXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjbG9zZS12YXJpYWJsZXNcbiRidG4tY2xvc2Utd2lkdGg6ICAgICAgICAgICAgMWVtICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1oZWlnaHQ6ICAgICAgICAgICAkYnRuLWNsb3NlLXdpZHRoICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1wYWRkaW5nLXg6ICAgICAgICAuMjVlbSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtcGFkZGluZy15OiAgICAgICAgJGJ0bi1jbG9zZS1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWNvbG9yOiAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRidG4tY2xvc2UtYmc6ICAgICAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGJ0bi1jbG9zZS1jb2xvcn0nPjxwYXRoIGQ9J00uMjkzLjI5M2ExIDEgMCAwIDEgMS40MTQgMEw4IDYuNTg2IDE0LjI5My4yOTNhMSAxIDAgMSAxIDEuNDE0IDEuNDE0TDkuNDE0IDhsNi4yOTMgNi4yOTNhMSAxIDAgMCAxLTEuNDE0IDEuNDE0TDggOS40MTRsLTYuMjkzIDYuMjkzYTEgMSAwIDAgMS0xLjQxNC0xLjQxNEw2LjU4NiA4IC4yOTMgMS43MDdhMSAxIDAgMCAxIDAtMS40MTR6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1mb2N1cy1zaGFkb3c6ICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLW9wYWNpdHk6ICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1ob3Zlci1vcGFjaXR5OiAgICAuNzUgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWZvY3VzLW9wYWNpdHk6ICAgIDEgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWRpc2FibGVkLW9wYWNpdHk6IC4yNSAhZGVmYXVsdDtcbiRidG4tY2xvc2Utd2hpdGUtZmlsdGVyOiAgICAgaW52ZXJ0KDEpIGdyYXlzY2FsZSgxMDAlKSBicmlnaHRuZXNzKDIwMCUpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjbG9zZS12YXJpYWJsZXNcblxuXG4vLyBPZmZjYW52YXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG9mZmNhbnZhcy12YXJpYWJsZXNcbiRvZmZjYW52YXMtcGFkZGluZy15OiAgICAgICAgICAgICAgICRtb2RhbC1pbm5lci1wYWRkaW5nICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWhvcml6b250YWwtd2lkdGg6ICAgICAgICA0MDBweCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtdmVydGljYWwtaGVpZ2h0OiAgICAgICAgIDMwdmggIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAuM3MgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJvcmRlci13aWR0aDogICAgICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAkbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJnLWNvbG9yOiAgICAgICAgICAgICAgICAkbW9kYWwtY29udGVudC1iZyAhZGVmYXVsdDtcbiRvZmZjYW52YXMtY29sb3I6ICAgICAgICAgICAgICAgICAgICRtb2RhbC1jb250ZW50LWNvbG9yICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cyAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYmFja2Ryb3AtYmc6ICAgICAgICAgICAgICRtb2RhbC1iYWNrZHJvcC1iZyAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYmFja2Ryb3Atb3BhY2l0eTogICAgICAgICRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBvZmZjYW52YXMtdmFyaWFibGVzXG5cbi8vIENvZGVcblxuJGNvZGUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICRwaW5rICFkZWZhdWx0O1xuXG4ka2JkLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAuMTg3NXJlbSAhZGVmYXVsdDtcbiRrYmQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4ka2JkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAkY29kZS1mb250LXNpemUgIWRlZmF1bHQ7XG4ka2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4ka2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kbmVzdGVkLWtiZC1mb250LXdlaWdodDogICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMCwgcmVtb3ZpbmcgaW4gdjZcblxuJHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuLy8gU2luZ2xlIHNpZGUgYm9yZGVyLXJhZGl1c1xuXG4vLyBIZWxwZXIgZnVuY3Rpb24gdG8gcmVwbGFjZSBuZWdhdGl2ZSB2YWx1ZXMgd2l0aCAwXG5AZnVuY3Rpb24gdmFsaWQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgJHJldHVybjogKCk7XG4gIEBlYWNoICR2YWx1ZSBpbiAkcmFkaXVzIHtcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09IG51bWJlciB7XG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgbWF4KCR2YWx1ZSwgMCkpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJHJldHVybjogYXBwZW5kKCRyZXR1cm4sICR2YWx1ZSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJHJldHVybjtcbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJvcmRlci1yYWRpdXMtbWl4aW5zXG5AbWl4aW4gYm9yZGVyLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cywgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM6IGZhbHNlKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxuICBAZWxzZSBpZiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cyAhPSBmYWxzZSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItZW5kLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItc3RhcnQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3Atc3RhcnQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1lbmQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tZW5kLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXN0YXJ0LXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgYm9yZGVyLXJhZGl1cy1taXhpbnNcbiIsIi8vXG4vLyBIZWFkaW5nc1xuLy9cbi5oMSB7XG4gIEBleHRlbmQgaDE7XG59XG5cbi5oMiB7XG4gIEBleHRlbmQgaDI7XG59XG5cbi5oMyB7XG4gIEBleHRlbmQgaDM7XG59XG5cbi5oNCB7XG4gIEBleHRlbmQgaDQ7XG59XG5cbi5oNSB7XG4gIEBleHRlbmQgaDU7XG59XG5cbi5oNiB7XG4gIEBleHRlbmQgaDY7XG59XG5cblxuLmxlYWQge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGxlYWQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRsZWFkLWZvbnQtd2VpZ2h0O1xufVxuXG4vLyBUeXBlIGRpc3BsYXkgY2xhc3Nlc1xuQGVhY2ggJGRpc3BsYXksICRmb250LXNpemUgaW4gJGRpc3BsYXktZm9udC1zaXplcyB7XG4gIC5kaXNwbGF5LSN7JGRpc3BsYXl9IHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZSk7XG4gICAgZm9udC1mYW1pbHk6ICRkaXNwbGF5LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc3R5bGU6ICRkaXNwbGF5LWZvbnQtc3R5bGU7XG4gICAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5LWZvbnQtd2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbiAgfVxufVxuXG4vL1xuLy8gRW1waGFzaXNcbi8vXG4uc21hbGwge1xuICBAZXh0ZW5kIHNtYWxsO1xufVxuXG4ubWFyayB7XG4gIEBleHRlbmQgbWFyaztcbn1cblxuLy9cbi8vIExpc3RzXG4vL1xuXG4ubGlzdC11bnN0eWxlZCB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbn1cblxuLy8gSW5saW5lIHR1cm5zIGxpc3QgaXRlbXMgaW50byBpbmxpbmUtYmxvY2tcbi5saXN0LWlubGluZSB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbn1cbi5saXN0LWlubGluZS1pdGVtIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkbGlzdC1pbmxpbmUtcGFkZGluZztcbiAgfVxufVxuXG5cbi8vXG4vLyBNaXNjXG4vL1xuXG4vLyBCdWlsZHMgb24gYGFiYnJgXG4uaW5pdGlhbGlzbSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5pdGlhbGlzbS1mb250LXNpemUpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4vLyBCbG9ja3F1b3Rlc1xuLmJsb2NrcXVvdGUge1xuICBtYXJnaW4tYm90dG9tOiAkYmxvY2txdW90ZS1tYXJnaW4teTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLWZvbnQtc2l6ZSk7XG5cbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4uYmxvY2txdW90ZS1mb290ZXIge1xuICBtYXJnaW4tdG9wOiAtJGJsb2NrcXVvdGUtbWFyZ2luLXk7XG4gIG1hcmdpbi1ib3R0b206ICRibG9ja3F1b3RlLW1hcmdpbi15O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJsb2NrcXVvdGUtZm9vdGVyLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkYmxvY2txdW90ZS1mb290ZXItY29sb3I7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcMjAxNFxcMDBBMFwiOyAvLyBlbSBkYXNoLCBuYnNwXG4gIH1cbn1cbiIsIi8vIExpc3RzXG5cbi8vIFVuc3R5bGVkIGtlZXBzIGxpc3QgaXRlbXMgYmxvY2sgbGV2ZWwsIGp1c3QgcmVtb3ZlcyBkZWZhdWx0IGJyb3dzZXIgcGFkZGluZyBhbmQgbGlzdC1zdHlsZVxuQG1peGluIGxpc3QtdW5zdHlsZWQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4iLCIvLyBSZXNwb25zaXZlIGltYWdlcyAoZW5zdXJlIGltYWdlcyBkb24ndCBzY2FsZSBiZXlvbmQgdGhlaXIgcGFyZW50cylcbi8vXG4vLyBUaGlzIGlzIHB1cnBvc2VmdWxseSBvcHQtaW4gdmlhIGFuIGV4cGxpY2l0IGNsYXNzIHJhdGhlciB0aGFuIGJlaW5nIHRoZSBkZWZhdWx0IGZvciBhbGwgYDxpbWc+YHMuXG4vLyBXZSBwcmV2aW91c2x5IHRyaWVkIHRoZSBcImltYWdlcyBhcmUgcmVzcG9uc2l2ZSBieSBkZWZhdWx0XCIgYXBwcm9hY2ggaW4gQm9vdHN0cmFwIHYyLFxuLy8gYW5kIGFiYW5kb25lZCBpdCBpbiBCb290c3RyYXAgdjMgYmVjYXVzZSBpdCBicmVha3MgbG90cyBvZiB0aGlyZC1wYXJ0eSB3aWRnZXRzIChpbmNsdWRpbmcgR29vZ2xlIE1hcHMpXG4vLyB3aGljaCB3ZXJlbid0IGV4cGVjdGluZyB0aGUgaW1hZ2VzIHdpdGhpbiB0aGVtc2VsdmVzIHRvIGJlIGludm9sdW50YXJpbHkgcmVzaXplZC5cbi8vIFNlZSBhbHNvIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTgxNzhcbi5pbWctZmx1aWQge1xuICBAaW5jbHVkZSBpbWctZmx1aWQoKTtcbn1cblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG4uaW1nLXRodW1ibmFpbCB7XG4gIHBhZGRpbmc6ICR0aHVtYm5haWwtcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1ibmFpbC1iZztcbiAgYm9yZGVyOiAkdGh1bWJuYWlsLWJvcmRlci13aWR0aCBzb2xpZCAkdGh1bWJuYWlsLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdGh1bWJuYWlsLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCR0aHVtYm5haWwtYm94LXNoYWRvdyk7XG5cbiAgLy8gS2VlcCB0aGVtIGF0IG1vc3QgMTAwJSB3aWRlXG4gIEBpbmNsdWRlIGltZy1mbHVpZCgpO1xufVxuXG4vL1xuLy8gRmlndXJlc1xuLy9cblxuLmZpZ3VyZSB7XG4gIC8vIEVuc3VyZXMgdGhlIGNhcHRpb24ncyB0ZXh0IGFsaWducyB3aXRoIHRoZSBpbWFnZS5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uZmlndXJlLWltZyB7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXIgKiAuNTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5maWd1cmUtY2FwdGlvbiB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZmlndXJlLWNhcHRpb24tZm9udC1zaXplKTtcbiAgY29sb3I6ICRmaWd1cmUtY2FwdGlvbi1jb2xvcjtcbn1cbiIsIi8vIEltYWdlIE1peGluc1xuLy8gLSBSZXNwb25zaXZlIGltYWdlXG4vLyAtIFJldGluYSBpbWFnZVxuXG5cbi8vIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vXG4vLyBLZWVwIGltYWdlcyBmcm9tIHNjYWxpbmcgYmV5b25kIHRoZSB3aWR0aCBvZiB0aGVpciBwYXJlbnRzLlxuXG5AbWl4aW4gaW1nLWZsdWlkIHtcbiAgLy8gUGFydCAxOiBTZXQgYSBtYXhpbXVtIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnRcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAvLyBQYXJ0IDI6IE92ZXJyaWRlIHRoZSBoZWlnaHQgdG8gYXV0bywgb3RoZXJ3aXNlIGltYWdlcyB3aWxsIGJlIHN0cmV0Y2hlZFxuICAvLyB3aGVuIHNldHRpbmcgYSB3aWR0aCBhbmQgaGVpZ2h0IGF0dHJpYnV0ZSBvbiB0aGUgaW1nIGVsZW1lbnQuXG4gIGhlaWdodDogYXV0bztcbn1cbiIsIi8vIENvbnRhaW5lciB3aWR0aHNcbi8vXG4vLyBTZXQgdGhlIGNvbnRhaW5lciB3aWR0aCwgYW5kIG92ZXJyaWRlIGl0IGZvciBmaXhlZCBuYXZiYXJzIGluIG1lZGlhIHF1ZXJpZXMuXG5cbkBpZiAkZW5hYmxlLWNvbnRhaW5lci1jbGFzc2VzIHtcbiAgLy8gU2luZ2xlIGNvbnRhaW5lciBjbGFzcyB3aXRoIGJyZWFrcG9pbnQgbWF4LXdpZHRoc1xuICAuY29udGFpbmVyLFxuICAvLyAxMDAlIHdpZGUgY29udGFpbmVyIGF0IGFsbCBicmVha3BvaW50c1xuICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lcigpO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSBjb250YWluZXJzIHRoYXQgYXJlIDEwMCUgd2lkZSB1bnRpbCBhIGJyZWFrcG9pbnRcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgLmNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICBAZXh0ZW5kIC5jb250YWluZXItZmx1aWQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAgICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgICB9XG5cbiAgICAgIC8vIEV4dGVuZCBlYWNoIGJyZWFrcG9pbnQgd2hpY2ggaXMgc21hbGxlciBvciBlcXVhbCB0byB0aGUgY3VycmVudCBicmVha3BvaW50XG4gICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IHRydWU7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkd2lkdGggaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgICAgICBAaWYgKCRleHRlbmQtYnJlYWtwb2ludCkge1xuICAgICAgICAgIC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRncmlkLWJyZWFrcG9pbnRzKX0ge1xuICAgICAgICAgICAgQGV4dGVuZCAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gT25jZSB0aGUgY3VycmVudCBicmVha3BvaW50IGlzIHJlYWNoZWQsIHN0b3AgZXh0ZW5kaW5nXG4gICAgICAgICAgQGlmICgkYnJlYWtwb2ludCA9PSAkbmFtZSkge1xuICAgICAgICAgICAgJGV4dGVuZC1icmVha3BvaW50OiBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIENvbnRhaW5lciBtaXhpbnNcblxuQG1peGluIG1ha2UtY29udGFpbmVyKCRndXR0ZXI6ICRjb250YWluZXItcGFkZGluZy14KSB7XG4gIC0tI3skcHJlZml4fWd1dHRlci14OiAjeyRndXR0ZXJ9O1xuICAtLSN7JHByZWZpeH1ndXR0ZXIteTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tI3skcHJlZml4fWd1dHRlci14KSAqIC41KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkgKiAuNSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG4iLCIvLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxuLy9cbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcbi8vXG4vLyAgICAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KVxuLy9cbi8vIFRoZSBtYXAgZGVmaW5lZCBpbiB0aGUgYCRncmlkLWJyZWFrcG9pbnRzYCBnbG9iYWwgdmFyaWFibGUgaXMgdXNlZCBhcyB0aGUgYCRicmVha3BvaW50c2AgYXJndW1lbnQgYnkgZGVmYXVsdC5cblxuLy8gTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgJGJyZWFrcG9pbnQtbmFtZXM6ICh4cyBzbSBtZCBsZyB4bCB4eGwpKVxuLy8gICAgbWRcbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAaWYgbm90ICRuIHtcbiAgICBAZXJyb3IgXCJicmVha3BvaW50IGAjeyRuYW1lfWAgbm90IGZvdW5kIGluIGAjeyRicmVha3BvaW50c31gXCI7XG4gIH1cbiAgQHJldHVybiBpZigkbiA8IGxlbmd0aCgkYnJlYWtwb2ludC1uYW1lcyksIG50aCgkYnJlYWtwb2ludC1uYW1lcywgJG4gKyAxKSwgbnVsbCk7XG59XG5cbi8vIE1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIHNtYWxsZXN0IChmaXJzdCkgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1pbihzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICA1NzZweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1pbiAhPSAwLCAkbWluLCBudWxsKTtcbn1cblxuLy8gTWF4aW11bSBicmVha3BvaW50IHdpZHRoLlxuLy8gVGhlIG1heGltdW0gdmFsdWUgaXMgcmVkdWNlZCBieSAwLjAycHggdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mXG4vLyBgbWluLWAgYW5kIGBtYXgtYCBwcmVmaXhlcyBhbmQgdmlld3BvcnRzIHdpdGggZnJhY3Rpb25hbCB3aWR0aHMuXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL21lZGlhcXVlcmllcy00LyNtcS1taW4tbWF4XG4vLyBVc2VzIDAuMDJweCByYXRoZXIgdGhhbiAwLjAxcHggdG8gd29yayBhcm91bmQgYSBjdXJyZW50IHJvdW5kaW5nIGJ1ZyBpbiBTYWZhcmkuXG4vLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODI2MVxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWF4KG1kLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIDc2Ny45OHB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWF4IGFuZCAkbWF4ID4gMCwgJG1heCAtIC4wMiwgbnVsbCk7XG59XG5cbi8vIFJldHVybnMgYSBibGFuayBzdHJpbmcgaWYgc21hbGxlc3QgYnJlYWtwb2ludCwgb3RoZXJ3aXNlIHJldHVybnMgdGhlIG5hbWUgd2l0aCBhIGRhc2ggaW4gZnJvbnQuXG4vLyBVc2VmdWwgZm9yIG1ha2luZyByZXNwb25zaXZlIHV0aWxpdGllcy5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHhzLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIFwiXCIgIChSZXR1cm5zIGEgYmxhbmsgc3RyaW5nKVxuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiAgYnJlYWtwb2ludC1tYXgoJG5leHQsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuZXh0LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUm93XG4vL1xuLy8gUm93cyBjb250YWluIHlvdXIgY29sdW1ucy5cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLnJvdyB7XG4gICAgQGluY2x1ZGUgbWFrZS1yb3coKTtcblxuICAgID4gKiB7XG4gICAgICBAaW5jbHVkZSBtYWtlLWNvbC1yZWFkeSgpO1xuICAgIH1cbiAgfVxufVxuXG5AaWYgJGVuYWJsZS1jc3NncmlkIHtcbiAgLmdyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQodmFyKC0tI3skcHJlZml4fXJvd3MsIDEpLCAxZnIpO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KHZhcigtLSN7JHByZWZpeH1jb2x1bW5zLCAjeyRncmlkLWNvbHVtbnN9KSwgMWZyKTtcbiAgICBnYXA6IHZhcigtLSN7JHByZWZpeH1nYXAsICN7JGdyaWQtZ3V0dGVyLXdpZHRofSk7XG5cbiAgICBAaW5jbHVkZSBtYWtlLWNzc2dyaWQoKTtcbiAgfVxufVxuXG5cbi8vIENvbHVtbnNcbi8vXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zKCk7XG59XG4iLCIvLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuQG1peGluIG1ha2Utcm93KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICAtLSN7JHByZWZpeH1ndXR0ZXIteDogI3skZ3V0dGVyfTtcbiAgLS0jeyRwcmVmaXh9Z3V0dGVyLXk6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgLy8gVE9ETzogUmV2aXNpdCBjYWxjIG9yZGVyIGFmdGVyIGh0dHBzOi8vZ2l0aHViLmNvbS9yZWFjdC1ib290c3RyYXAvcmVhY3QtYm9vdHN0cmFwL2lzc3Vlcy82MDM5IGlzIGZpeGVkXG4gIG1hcmdpbi10b3A6IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXkpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tbGVmdDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3Rcbn1cblxuQG1peGluIG1ha2UtY29sLXJlYWR5KCkge1xuICAvLyBBZGQgYm94IHNpemluZyBpZiBvbmx5IHRoZSBncmlkIGlzIGxvYWRlZFxuICBib3gtc2l6aW5nOiBpZih2YXJpYWJsZS1leGlzdHMoaW5jbHVkZS1jb2x1bW4tYm94LXNpemluZykgYW5kICRpbmNsdWRlLWNvbHVtbi1ib3gtc2l6aW5nLCBib3JkZXItYm94LCBudWxsKTtcbiAgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gYmVjb21pbmcgdG9vIG5hcnJvdyB3aGVuIGF0IHNtYWxsZXIgZ3JpZCB0aWVycyBieVxuICAvLyBhbHdheXMgc2V0dGluZyBgd2lkdGg6IDEwMCU7YC4gVGhpcyB3b3JrcyBiZWNhdXNlIHdlIHNldCB0aGUgd2lkdGhcbiAgLy8gbGF0ZXIgb24gdG8gb3ZlcnJpZGUgdGhpcyBpbml0aWFsIHdpZHRoLlxuICBmbGV4LXNocmluazogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTsgLy8gUHJldmVudCBgLmNvbC1hdXRvYCwgYC5jb2xgICgmIHJlc3BvbnNpdmUgdmFyaWFudHMpIGZyb20gYnJlYWtpbmcgb3V0IHRoZSBncmlkXG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tI3skcHJlZml4fWd1dHRlci14KSAqIC41KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkgKiAuNSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi10b3A6IHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteSk7XG59XG5cbkBtaXhpbiBtYWtlLWNvbCgkc2l6ZTogZmFsc2UsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gIEBpZiAkc2l6ZSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoZGl2aWRlKCRzaXplLCAkY29sdW1ucykpO1xuXG4gIH0gQGVsc2Uge1xuICAgIGZsZXg6IDEgMSAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxufVxuXG5AbWl4aW4gbWFrZS1jb2wtYXV0bygpIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBhdXRvO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtb2Zmc2V0KCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICAkbnVtOiBkaXZpZGUoJHNpemUsICRjb2x1bW5zKTtcbiAgbWFyZ2luLWxlZnQ6IGlmKCRudW0gPT0gMCwgMCwgcGVyY2VudGFnZSgkbnVtKSk7XG59XG5cbi8vIFJvdyBjb2x1bW5zXG4vL1xuLy8gU3BlY2lmeSBvbiBhIHBhcmVudCBlbGVtZW50KGUuZy4sIC5yb3cpIHRvIGZvcmNlIGltbWVkaWF0ZSBjaGlsZHJlbiBpbnRvIE5OXG4vLyBudW1iZXIgb2YgY29sdW1ucy4gU3VwcG9ydHMgd3JhcHBpbmcgdG8gbmV3IGxpbmVzLCBidXQgZG9lcyBub3QgZG8gYSBNYXNvbnJ5XG4vLyBzdHlsZSBncmlkLlxuQG1peGluIHJvdy1jb2xzKCRjb3VudCkge1xuICA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBkaXZpZGUoMTAwJSwgJGNvdW50KTtcbiAgfVxufVxuXG4vLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXG4vL1xuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxuXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIC8vIFByb3ZpZGUgYmFzaWMgYC5jb2wte2JwfWAgY2xhc3NlcyBmb3IgZXF1YWwtd2lkdGggZmxleGJveCBjb2x1bW5zXG4gICAgICAuY29sI3skaW5maXh9IHtcbiAgICAgICAgZmxleDogMSAwIDAlOyAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIH1cblxuICAgICAgLnJvdy1jb2xzI3skaW5maXh9LWF1dG8gPiAqIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGdyaWQtcm93LWNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1yb3ctY29sdW1ucyB7XG4gICAgICAgICAgLnJvdy1jb2xzI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJvdy1jb2xzKCRpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZVxuICAgICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIiBhbmQgJGkgPT0gMCkgeyAvLyBBdm9pZCBlbWl0dGluZyB1c2VsZXNzIC5vZmZzZXQtMFxuICAgICAgICAgICAgLm9mZnNldCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLW9mZnNldCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBHdXR0ZXJzXG4gICAgICAvL1xuICAgICAgLy8gTWFrZSB1c2Ugb2YgYC5nLSpgLCBgLmd4LSpgIG9yIGAuZ3ktKmAgdXRpbGl0aWVzIHRvIGNoYW5nZSBzcGFjaW5nIGJldHdlZW4gdGhlIGNvbHVtbnMuXG4gICAgICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJGd1dHRlcnMge1xuICAgICAgICAuZyN7JGluZml4fS0jeyRrZXl9LFxuICAgICAgICAuZ3gjeyRpbmZpeH0tI3ska2V5fSB7XG4gICAgICAgICAgLS0jeyRwcmVmaXh9Z3V0dGVyLXg6ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5nI3skaW5maXh9LSN7JGtleX0sXG4gICAgICAgIC5neSN7JGluZml4fS0jeyRrZXl9IHtcbiAgICAgICAgICAtLSN7JHByZWZpeH1ndXR0ZXIteTogI3skdmFsdWV9O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYWtlLWNzc2dyaWQoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmctY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiAkaTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTdGFydCB3aXRoIGAxYCBiZWNhdXNlIGAwYCBpcyBhbmQgaW52YWxpZCB2YWx1ZS5cbiAgICAgICAgLy8gRW5kcyB3aXRoIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZS5cbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAoJGNvbHVtbnMgLSAxKSB7XG4gICAgICAgICAgLmctc3RhcnQjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW4tc3RhcnQ6ICRpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2ljIEJvb3RzdHJhcCB0YWJsZVxuLy9cblxuLnRhYmxlIHtcbiAgLS0jeyRwcmVmaXh9dGFibGUtY29sb3I6ICN7JHRhYmxlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYmc6ICN7JHRhYmxlLWJnfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYm9yZGVyLWNvbG9yOiAjeyR0YWJsZS1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH10YWJsZS1hY2NlbnQtYmc6ICN7JHRhYmxlLWFjY2VudC1iZ307XG4gIC0tI3skcHJlZml4fXRhYmxlLXN0cmlwZWQtY29sb3I6ICN7JHRhYmxlLXN0cmlwZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWJnOiAjeyR0YWJsZS1zdHJpcGVkLWJnfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYWN0aXZlLWNvbG9yOiAjeyR0YWJsZS1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH10YWJsZS1hY3RpdmUtYmc6ICN7JHRhYmxlLWFjdGl2ZS1iZ307XG4gIC0tI3skcHJlZml4fXRhYmxlLWhvdmVyLWNvbG9yOiAjeyR0YWJsZS1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRhYmxlLWhvdmVyLWJnOiAjeyR0YWJsZS1ob3Zlci1iZ307XG5cbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtY29sb3IpO1xuICB2ZXJ0aWNhbC1hbGlnbjogJHRhYmxlLWNlbGwtdmVydGljYWwtYWxpZ247XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRhYmxlLWJvcmRlci1jb2xvcik7XG5cbiAgLy8gVGFyZ2V0IHRoICYgdGRcbiAgLy8gV2UgbmVlZCB0aGUgY2hpbGQgY29tYmluYXRvciB0byBwcmV2ZW50IHN0eWxlcyBsZWFraW5nIHRvIG5lc3RlZCB0YWJsZXMgd2hpY2ggZG9lc24ndCBoYXZlIGEgYC50YWJsZWAgY2xhc3MuXG4gIC8vIFdlIHVzZSB0aGUgdW5pdmVyc2FsIHNlbGVjdG9ycyBoZXJlIHRvIHNpbXBsaWZ5IHRoZSBzZWxlY3RvciAoZWxzZSB3ZSB3b3VsZCBuZWVkIDYgZGlmZmVyZW50IHNlbGVjdG9ycykuXG4gIC8vIEFub3RoZXIgYWR2YW50YWdlIGlzIHRoYXQgdGhpcyBnZW5lcmF0ZXMgbGVzcyBjb2RlIGFuZCBtYWtlcyB0aGUgc2VsZWN0b3IgbGVzcyBzcGVjaWZpYyBtYWtpbmcgaXQgZWFzaWVyIHRvIG92ZXJyaWRlLlxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxuICA+IDpub3QoY2FwdGlvbikgPiAqID4gKiB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy15ICR0YWJsZS1jZWxsLXBhZGRpbmcteDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYmcpO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6ICR0YWJsZS1ib3JkZXItd2lkdGg7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgOTk5OXB4IHZhcigtLSN7JHByZWZpeH10YWJsZS1hY2NlbnQtYmcpO1xuICB9XG5cbiAgPiB0Ym9keSB7XG4gICAgdmVydGljYWwtYWxpZ246IGluaGVyaXQ7XG4gIH1cblxuICA+IHRoZWFkIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICB9XG59XG5cbi50YWJsZS1ncm91cC1kaXZpZGVyIHtcbiAgYm9yZGVyLXRvcDogKCR0YWJsZS1ib3JkZXItd2lkdGggKiAyKSBzb2xpZCAkdGFibGUtZ3JvdXAtc2VwYXJhdG9yLWNvbG9yO1xufVxuXG4vL1xuLy8gQ2hhbmdlIHBsYWNlbWVudCBvZiBjYXB0aW9ucyB3aXRoIGEgY2xhc3Ncbi8vXG5cbi5jYXB0aW9uLXRvcCB7XG4gIGNhcHRpb24tc2lkZTogdG9wO1xufVxuXG5cbi8vXG4vLyBDb25kZW5zZWQgdGFibGUgdy8gaGFsZiBwYWRkaW5nXG4vL1xuXG4udGFibGUtc20ge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxuICA+IDpub3QoY2FwdGlvbikgPiAqID4gKiB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy15LXNtICR0YWJsZS1jZWxsLXBhZGRpbmcteC1zbTtcbiAgfVxufVxuXG5cbi8vIEJvcmRlciB2ZXJzaW9uc1xuLy9cbi8vIEFkZCBvciByZW1vdmUgYm9yZGVycyBhbGwgYXJvdW5kIHRoZSB0YWJsZSBhbmQgYmV0d2VlbiBhbGwgdGhlIGNvbHVtbnMuXG4vL1xuLy8gV2hlbiBib3JkZXJzIGFyZSBhZGRlZCBvbiBhbGwgc2lkZXMgb2YgdGhlIGNlbGxzLCB0aGUgY29ybmVycyBjYW4gcmVuZGVyIG9kZCB3aGVuXG4vLyB0aGVzZSBib3JkZXJzIGRvIG5vdCBoYXZlIHRoZSBzYW1lIGNvbG9yIG9yIGlmIHRoZXkgYXJlIHNlbWktdHJhbnNwYXJlbnQuXG4vLyBUaGVyZWZvciB3ZSBhZGQgdG9wIGFuZCBib3JkZXIgYm90dG9tcyB0byB0aGUgYHRyYHMgYW5kIGxlZnQgYW5kIHJpZ2h0IGJvcmRlcnNcbi8vIHRvIHRoZSBgdGRgcyBvciBgdGhgc1xuXG4udGFibGUtYm9yZGVyZWQge1xuICA+IDpub3QoY2FwdGlvbikgPiAqIHtcbiAgICBib3JkZXItd2lkdGg6ICR0YWJsZS1ib3JkZXItd2lkdGggMDtcblxuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtdW5pdmVyc2FsXG4gICAgPiAqIHtcbiAgICAgIGJvcmRlci13aWR0aDogMCAkdGFibGUtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG4udGFibGUtYm9yZGVybGVzcyB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtdW5pdmVyc2FsXG4gID4gOm5vdChjYXB0aW9uKSA+ICogPiAqIHtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICB9XG5cbiAgPiA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gIH1cbn1cblxuLy8gWmVicmEtc3RyaXBpbmdcbi8vXG4vLyBEZWZhdWx0IHplYnJhLXN0cmlwZSBzdHlsZXMgKGFsdGVybmF0aW5nIGdyYXkgYW5kIHRyYW5zcGFyZW50IGJhY2tncm91bmRzKVxuXG4vLyBGb3Igcm93c1xuLnRhYmxlLXN0cmlwZWQge1xuICA+IHRib2R5ID4gdHI6bnRoLW9mLXR5cGUoI3skdGFibGUtc3RyaXBlZC1vcmRlcn0pID4gKiB7XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtYWNjZW50LWJnOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1iZyk7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yKTtcbiAgfVxufVxuXG4vLyBGb3IgY29sdW1uc1xuLnRhYmxlLXN0cmlwZWQtY29sdW1ucyB7XG4gID4gOm5vdChjYXB0aW9uKSA+IHRyID4gOm50aC1jaGlsZCgjeyR0YWJsZS1zdHJpcGVkLWNvbHVtbnMtb3JkZXJ9KSB7XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtYWNjZW50LWJnOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1iZyk7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yKTtcbiAgfVxufVxuXG4vLyBBY3RpdmUgdGFibGVcbi8vXG4vLyBUaGUgYC50YWJsZS1hY3RpdmVgIGNsYXNzIGNhbiBiZSBhZGRlZCB0byBoaWdobGlnaHQgcm93cyBvciBjZWxsc1xuXG4udGFibGUtYWN0aXZlIHtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYWNjZW50LWJnOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYWN0aXZlLWJnKTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH10YWJsZS1hY3RpdmUtY29sb3IpO1xufVxuXG4vLyBIb3ZlciBlZmZlY3Rcbi8vXG4vLyBQbGFjZWQgaGVyZSBzaW5jZSBpdCBoYXMgdG8gY29tZSBhZnRlciB0aGUgcG90ZW50aWFsIHplYnJhIHN0cmlwaW5nXG5cbi50YWJsZS1ob3ZlciB7XG4gID4gdGJvZHkgPiB0cjpob3ZlciA+ICoge1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWFjY2VudC1iZzogdmFyKC0tI3skcHJlZml4fXRhYmxlLWhvdmVyLWJnKTtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXRhYmxlLWhvdmVyLWNvbG9yKTtcbiAgfVxufVxuXG5cbi8vIFRhYmxlIHZhcmlhbnRzXG4vL1xuLy8gVGFibGUgdmFyaWFudHMgc2V0IHRoZSB0YWJsZSBjZWxsIGJhY2tncm91bmRzLCBib3JkZXIgY29sb3JzXG4vLyBhbmQgdGhlIGNvbG9ycyBvZiB0aGUgc3RyaXBlZCwgaG92ZXJlZCAmIGFjdGl2ZSB0YWJsZXNcblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRhYmxlLXZhcmlhbnRzIHtcbiAgQGluY2x1ZGUgdGFibGUtdmFyaWFudCgkY29sb3IsICR2YWx1ZSk7XG59XG5cbi8vIFJlc3BvbnNpdmUgdGFibGVzXG4vL1xuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAudGFibGUtcmVzcG9uc2l2ZS0qYCBjbGFzc2VzIGZvciBjb25maWd1cmluZyB0aGUgc2NyZWVuXG4vLyBzaXplIG9mIHdoZXJlIHlvdXIgdGFibGUgd2lsbCBvdmVyZmxvdy5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgLnRhYmxlLXJlc3BvbnNpdmUjeyRpbmZpeH0ge1xuICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHNjc3MtZG9jcy1zdGFydCB0YWJsZS12YXJpYW50XG5AbWl4aW4gdGFibGUtdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kKSB7XG4gIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICRjb2xvcjogY29sb3ItY29udHJhc3Qob3BhcXVlKCRib2R5LWJnLCAkYmFja2dyb3VuZCkpO1xuICAgICRob3Zlci1iZzogbWl4KCRjb2xvciwgJGJhY2tncm91bmQsIHBlcmNlbnRhZ2UoJHRhYmxlLWhvdmVyLWJnLWZhY3RvcikpO1xuICAgICRzdHJpcGVkLWJnOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtc3RyaXBlZC1iZy1mYWN0b3IpKTtcbiAgICAkYWN0aXZlLWJnOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtYWN0aXZlLWJnLWZhY3RvcikpO1xuICAgICR0YWJsZS1ib3JkZXItY29sb3I6IG1peCgkY29sb3IsICRiYWNrZ3JvdW5kLCBwZXJjZW50YWdlKCR0YWJsZS1ib3JkZXItZmFjdG9yKSk7XG5cbiAgICAtLSN7JHByZWZpeH10YWJsZS1jb2xvcjogI3skY29sb3J9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWJnOiAjeyRiYWNrZ3JvdW5kfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1ib3JkZXItY29sb3I6ICN7JHRhYmxlLWJvcmRlci1jb2xvcn07XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1iZzogI3skc3RyaXBlZC1iZ307XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1jb2xvcjogI3tjb2xvci1jb250cmFzdCgkc3RyaXBlZC1iZyl9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWFjdGl2ZS1iZzogI3skYWN0aXZlLWJnfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1hY3RpdmUtY29sb3I6ICN7Y29sb3ItY29udHJhc3QoJGFjdGl2ZS1iZyl9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWhvdmVyLWJnOiAjeyRob3Zlci1iZ307XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtaG92ZXItY29sb3I6ICN7Y29sb3ItY29udHJhc3QoJGhvdmVyLWJnKX07XG5cbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXRhYmxlLWNvbG9yKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH10YWJsZS1ib3JkZXItY29sb3IpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIHRhYmxlLXZhcmlhbnRcbiIsIi8vXG4vLyBMYWJlbHNcbi8vXG5cbi5mb3JtLWxhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tbGFiZWwtbWFyZ2luLWJvdHRvbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWxhYmVsLWZvbnQtc2l6ZSk7XG4gIGZvbnQtc3R5bGU6ICRmb3JtLWxhYmVsLWZvbnQtc3R5bGU7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS1sYWJlbC1mb250LXdlaWdodDtcbiAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yO1xufVxuXG4vLyBGb3IgdXNlIHdpdGggaG9yaXpvbnRhbCBhbmQgaW5saW5lIGZvcm1zLCB3aGVuIHlvdSBuZWVkIHRoZSBsYWJlbCAob3IgbGVnZW5kKVxuLy8gdGV4dCB0byBhbGlnbiB3aXRoIHRoZSBmb3JtIGNvbnRyb2xzLlxuLmNvbC1mb3JtLWxhYmVsIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgdGhlIGA8bGVnZW5kPmAgZGVmYXVsdFxuICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7IC8vIE92ZXJyaWRlIHRoZSBgPGxlZ2VuZD5gIGRlZmF1bHRcbiAgZm9udC1zdHlsZTogJGZvcm0tbGFiZWwtZm9udC1zdHlsZTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1sZyB7XG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbn1cblxuLmNvbC1mb3JtLWxhYmVsLXNtIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xufVxuIiwiLy9cbi8vIEZvcm0gdGV4dFxuLy9cblxuLmZvcm0tdGV4dCB7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXRleHQtbWFyZ2luLXRvcDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLXRleHQtZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogJGZvcm0tdGV4dC1mb250LXN0eWxlO1xuICBmb250LXdlaWdodDogJGZvcm0tdGV4dC1mb250LXdlaWdodDtcbiAgY29sb3I6ICRmb3JtLXRleHQtY29sb3I7XG59XG4iLCIvL1xuLy8gR2VuZXJhbCBmb3JtIGNvbnRyb2xzIChwbHVzIGEgZmV3IHNwZWNpZmljIGhpZ2gtbGV2ZWwgaW50ZXJ2ZW50aW9ucylcbi8vXG5cbi5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICBhcHBlYXJhbmNlOiBub25lOyAvLyBGaXggYXBwZWFyYW5jZSBmb3IgZGF0ZSBpbnB1dHMgaW4gU2FmYXJpXG5cbiAgLy8gTm90ZTogVGhpcyBoYXMgbm8gZWZmZWN0IG9uIDxzZWxlY3Q+cyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLCAwKTtcblxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkaW5wdXQtdHJhbnNpdGlvbik7XG5cbiAgJlt0eXBlPVwiZmlsZVwiXSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gcHJldmVudCBwc2V1ZG8gZWxlbWVudCBidXR0b24gb3ZlcmxhcFxuXG4gICAgJjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSkge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxuXG4gIC8vIEN1c3RvbWl6ZSB0aGUgYDpmb2N1c2Agc3RhdGUgdG8gaW1pdGF0ZSBuYXRpdmUgV2ViS2l0IHN0eWxlcy5cbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRpbnB1dC1mb2N1cy1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZm9jdXMtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93LCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAvLyBBZGQgc29tZSBoZWlnaHQgdG8gZGF0ZSBpbnB1dHMgb24gaU9TXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjMzMDdcbiAgLy8gVE9ETzogd2UgY2FuIHJlbW92ZSB0aGlzIHdvcmthcm91bmQgb25jZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk4OTU5IGlzIHJlc29sdmVkXG4gICY6Oi13ZWJraXQtZGF0ZS1hbmQtdGltZS12YWx1ZSB7XG4gICAgLy8gTXVsdGlwbHkgbGluZS1oZWlnaHQgYnkgMWVtIGlmIGl0IGhhcyBubyB1bml0XG4gICAgaGVpZ2h0OiBpZih1bml0KCRpbnB1dC1saW5lLWhlaWdodCkgPT0gXCJcIiwgJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCAkaW5wdXQtbGluZS1oZWlnaHQpO1xuICB9XG5cbiAgLy8gUGxhY2Vob2xkZXJcbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gICAgLy8gT3ZlcnJpZGUgRmlyZWZveCdzIHVudXN1YWwgZGVmYXVsdCBvcGFjaXR5OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjYuXG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIGlucHV0c1xuICAvL1xuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+IGxlZ2VuZDpmaXJzdC1jaGlsZCB3b24ndCBiZVxuICAvLyBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmaWN1bHR5LCB3ZVxuICAvLyBkb24ndCBob25vciB0aGF0IGVkZ2UgY2FzZTsgd2Ugc3R5bGUgdGhlbSBhcyBkaXNhYmxlZCBhbnl3YXkuXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJvcmRlci1jb2xvcjtcbiAgICAvLyBpT1MgZml4IGZvciB1bnJlYWRhYmxlIGRpc2FibGVkIGNvbnRlbnQ7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjU1LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBGaWxlIGlucHV0IGJ1dHRvbnMgdGhlbWluZ1xuICAmOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICAgIG1hcmdpbjogKC0kaW5wdXQtcGFkZGluZy15KSAoLSRpbnB1dC1wYWRkaW5nLXgpO1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAkaW5wdXQtcGFkZGluZy14O1xuICAgIGNvbG9yOiAkZm9ybS1maWxlLWJ1dHRvbi1jb2xvcjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1maWxlLWJ1dHRvbi1iZyk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAwO1xuICAgIGJvcmRlci1pbmxpbmUtZW5kLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYnRuLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgJjpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSk6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1maWxlLWJ1dHRvbi1ob3Zlci1iZztcbiAgfVxufVxuXG4vLyBSZWFkb25seSBjb250cm9scyBhcyBwbGFpbiB0ZXh0XG4vL1xuLy8gQXBwbHkgY2xhc3MgdG8gYSByZWFkb25seSBpbnB1dCB0byBtYWtlIGl0IGFwcGVhciBsaWtlIHJlZ3VsYXIgcGxhaW5cbi8vIHRleHQgKHdpdGhvdXQgYW55IGJvcmRlciwgYmFja2dyb3VuZCBjb2xvciwgZm9jdXMgaW5kaWNhdG9yKVxuXG4uZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAwO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBtYXRjaCBpbnB1dHMgaWYgdGhpcyBjbGFzcyBjb21lcyBvbiBpbnB1dHMgd2l0aCBkZWZhdWx0IG1hcmdpbnNcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1wbGFpbnRleHQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGggMDtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20sXG4gICYuZm9ybS1jb250cm9sLWxnIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXG4vL1xuLy8gQnVpbGQgb24gYC5mb3JtLWNvbnRyb2xgIHdpdGggbW9kaWZpZXIgY2xhc3NlcyB0byBkZWNyZWFzZSBvciBpbmNyZWFzZSB0aGVcbi8vIGhlaWdodCBhbmQgZm9udC1zaXplIG9mIGZvcm0gY29udHJvbHMuXG4vL1xuLy8gUmVwZWF0ZWQgaW4gYF9pbnB1dF9ncm91cC5zY3NzYCB0byBhdm9pZCBTYXNzIGV4dGVuZCBpc3N1ZXMuXG5cbi5mb3JtLWNvbnRyb2wtc20ge1xuICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG5cbiAgJjo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgICBtYXJnaW46ICgtJGlucHV0LXBhZGRpbmcteS1zbSkgKC0kaW5wdXQtcGFkZGluZy14LXNtKTtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgfVxufVxuXG4uZm9ybS1jb250cm9sLWxnIHtcbiAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodC1sZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xuXG4gICY6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gICAgbWFyZ2luOiAoLSRpbnB1dC1wYWRkaW5nLXktbGcpICgtJGlucHV0LXBhZGRpbmcteC1sZyk7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6ICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIH1cbn1cblxuLy8gTWFrZSBzdXJlIHRleHRhcmVhcyBkb24ndCBzaHJpbmsgdG9vIG11Y2ggd2hlbiByZXNpemVkXG4vLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yOTEyNFxuLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG50ZXh0YXJlYSB7XG4gICYuZm9ybS1jb250cm9sIHtcbiAgICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICB9XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20ge1xuICAgIG1pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG4gIH1cblxuICAmLmZvcm0tY29udHJvbC1sZyB7XG4gICAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodC1sZztcbiAgfVxufVxuLy8gc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLmZvcm0tY29udHJvbC1jb2xvciB7XG4gIHdpZHRoOiAkZm9ybS1jb2xvci13aWR0aDtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15O1xuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cblxuICAmOjotbW96LWNvbG9yLXN3YXRjaCB7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmOjotd2Via2l0LWNvbG9yLXN3YXRjaCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmLmZvcm0tY29udHJvbC1zbSB7IGhlaWdodDogJGlucHV0LWhlaWdodC1zbTsgfVxuICAmLmZvcm0tY29udHJvbC1sZyB7IGhlaWdodDogJGlucHV0LWhlaWdodC1sZzsgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA9PSAwIHtcbiAgICAkdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tYmFzZTtcbiAgfVxuXG4gIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID4gMSB7XG4gICAgQGVhY2ggJHZhbHVlIGluICR0cmFuc2l0aW9uIHtcbiAgICAgIEBpZiAkdmFsdWUgPT0gbnVsbCBvciAkdmFsdWUgPT0gbm9uZSB7XG4gICAgICAgIEB3YXJuIFwiVGhlIGtleXdvcmQgJ25vbmUnIG9yICdudWxsJyBtdXN0IGJlIHVzZWQgYXMgYSBzaW5nbGUgYXJndW1lbnQuXCI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAgIEBpZiBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwge1xuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgfVxuXG4gICAgQGlmICRlbmFibGUtcmVkdWNlZC1tb3Rpb24gYW5kIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbnVsbCBhbmQgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBub25lIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBHcmFkaWVudHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYWRpZW50LWJnLW1peGluXG5AbWl4aW4gZ3JhZGllbnQtYmcoJGNvbG9yOiBudWxsKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcblxuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLSN7JHByZWZpeH1ncmFkaWVudCk7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgZ3JhZGllbnQtYmctbWl4aW5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYWRpZW50LW1peGluc1xuLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC14KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG59XG5cbi8vIFZlcnRpY2FsIGdyYWRpZW50LCBmcm9tIHRvcCB0byBib3R0b21cbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXkoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IG51bGwsICRlbmQtcGVyY2VudDogbnVsbCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbn1cblxuQG1peGluIGdyYWRpZW50LWRpcmVjdGlvbmFsKCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRkZWc6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQteC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG59XG5cbkBtaXhpbiBncmFkaWVudC15LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtcmFkaWFsKCRpbm5lci1jb2xvcjogJGdyYXktNzAwLCAkb3V0ZXItY29sb3I6ICRncmF5LTgwMCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG59XG5cbkBtaXhpbiBncmFkaWVudC1zdHJpcGVkKCRjb2xvcjogcmdiYSgkd2hpdGUsIC4xNSksICRhbmdsZTogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBncmFkaWVudC1taXhpbnNcbiIsIi8vIFNlbGVjdFxuLy9cbi8vIFJlcGxhY2VzIHRoZSBicm93c2VyIGRlZmF1bHQgc2VsZWN0IHdpdGggYSBjdXN0b20gb25lLCBtb3N0bHkgcHVsbGVkIGZyb21cbi8vIGh0dHBzOi8vcHJpbWVyLmdpdGh1Yi5pby8uXG5cbi5mb3JtLXNlbGVjdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGZvcm0tc2VsZWN0LXBhZGRpbmcteSAkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcgJGZvcm0tc2VsZWN0LXBhZGRpbmcteSAkZm9ybS1zZWxlY3QtcGFkZGluZy14O1xuICAtbW96LXBhZGRpbmctc3RhcnQ6IHN1YnRyYWN0KCRmb3JtLXNlbGVjdC1wYWRkaW5nLXgsIDNweCk7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzMyNjM2XG4gIGZvbnQtZmFtaWx5OiAkZm9ybS1zZWxlY3QtZm9udC1mYW1pbHk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1zZWxlY3QtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLXNlbGVjdC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRmb3JtLXNlbGVjdC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRmb3JtLXNlbGVjdC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tc2VsZWN0LWJnO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRmb3JtLXNlbGVjdC1pbmRpY2F0b3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZm9ybS1zZWxlY3QtYmctcG9zaXRpb247XG4gIGJhY2tncm91bmQtc2l6ZTogJGZvcm0tc2VsZWN0LWJnLXNpemU7XG4gIGJvcmRlcjogJGZvcm0tc2VsZWN0LWJvcmRlci13aWR0aCBzb2xpZCAkZm9ybS1zZWxlY3QtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzLCAwKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1zZWxlY3QtYm94LXNoYWRvdyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGZvcm0tc2VsZWN0LXRyYW5zaXRpb24pO1xuICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1zZWxlY3QtYm94LXNoYWRvdywgJGZvcm0tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgYm94LXNoYWRvdzogJGZvcm0tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuICB9XG5cbiAgJlttdWx0aXBsZV0sXG4gICZbc2l6ZV06bm90KFtzaXplPVwiMVwiXSkge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkZm9ybS1zZWxlY3QtZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC8vIFJlbW92ZSBvdXRsaW5lIGZyb20gc2VsZWN0IGJveCBpbiBGRlxuICAmOi1tb3otZm9jdXNyaW5nIHtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdGV4dC1zaGFkb3c6IDAgMCAwICRmb3JtLXNlbGVjdC1jb2xvcjtcbiAgfVxufVxuXG4uZm9ybS1zZWxlY3Qtc20ge1xuICBwYWRkaW5nLXRvcDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1zbTtcbiAgcGFkZGluZy1ib3R0b206ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXktc207XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLXNlbGVjdC1mb250LXNpemUtc20pO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLmZvcm0tc2VsZWN0LWxnIHtcbiAgcGFkZGluZy10b3A6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXktbGc7XG4gIHBhZGRpbmctYm90dG9tOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1zZWxlY3QtZm9udC1zaXplLWxnKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG4iLCIvL1xuLy8gQ2hlY2svcmFkaW9cbi8vXG5cbi5mb3JtLWNoZWNrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6ICRmb3JtLWNoZWNrLW1pbi1oZWlnaHQ7XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tY2hlY2stcGFkZGluZy1zdGFydDtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tY2hlY2stbWFyZ2luLWJvdHRvbTtcblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6ICRmb3JtLWNoZWNrLXBhZGRpbmctc3RhcnQgKiAtMTtcbiAgfVxufVxuXG4uZm9ybS1jaGVjay1yZXZlcnNlIHtcbiAgcGFkZGluZy1yaWdodDogJGZvcm0tY2hlY2stcGFkZGluZy1zdGFydDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2stcGFkZGluZy1zdGFydCAqIC0xO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbi5mb3JtLWNoZWNrLWlucHV0IHtcbiAgd2lkdGg6ICRmb3JtLWNoZWNrLWlucHV0LXdpZHRoO1xuICBoZWlnaHQ6ICRmb3JtLWNoZWNrLWlucHV0LXdpZHRoO1xuICBtYXJnaW4tdG9wOiAoJGxpbmUtaGVpZ2h0LWJhc2UgLSAkZm9ybS1jaGVjay1pbnB1dC13aWR0aCkgKiAuNTsgLy8gbGluZS1oZWlnaHQgbWludXMgY2hlY2sgaGVpZ2h0XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWJnO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgYm9yZGVyOiAkZm9ybS1jaGVjay1pbnB1dC1ib3JkZXI7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIHByaW50LWNvbG9yLWFkanVzdDogZXhhY3Q7IC8vIEtlZXAgdGhlbWVkIGFwcGVhcmFuY2UgZm9yIHByaW50XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGZvcm0tY2hlY2stdHJhbnNpdGlvbik7XG5cbiAgJlt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tY2hlY2staW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgIGJvcmRlci1yYWRpdXM6ICRmb3JtLWNoZWNrLXJhZGlvLWJvcmRlci1yYWRpdXM7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgZmlsdGVyOiAkZm9ybS1jaGVjay1pbnB1dC1hY3RpdmUtZmlsdGVyO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1jaGVjay1pbnB1dC1mb2N1cy1ib3JkZXI7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAkZm9ybS1jaGVjay1pbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgJjpjaGVja2VkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1ib3JkZXItY29sb3I7XG5cbiAgICAmW3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctaW1hZ2UpLCB2YXIoLS0jeyRwcmVmaXh9Z3JhZGllbnQpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1pbWFnZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJlt0eXBlPVwicmFkaW9cIl0ge1xuICAgICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1yYWRpby1jaGVja2VkLWJnLWltYWdlKSwgdmFyKC0tI3skcHJlZml4fWdyYWRpZW50KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLXJhZGlvLWNoZWNrZWQtYmctaW1hZ2UpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZbdHlwZT1cImNoZWNrYm94XCJdOmluZGV0ZXJtaW5hdGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjtcblxuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctaW1hZ2UpLCB2YXIoLS0jeyRwcmVmaXh9Z3JhZGllbnQpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWltYWdlKTtcbiAgICB9XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBmaWx0ZXI6IG5vbmU7XG4gICAgb3BhY2l0eTogJGZvcm0tY2hlY2staW5wdXQtZGlzYWJsZWQtb3BhY2l0eTtcbiAgfVxuXG4gIC8vIFVzZSBkaXNhYmxlZCBhdHRyaWJ1dGUgaW4gYWRkaXRpb24gb2YgOmRpc2FibGVkIHBzZXVkby1jbGFzc1xuICAvLyBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjgyNDdcbiAgJltkaXNhYmxlZF0sXG4gICY6ZGlzYWJsZWQge1xuICAgIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgb3BhY2l0eTogJGZvcm0tY2hlY2stbGFiZWwtZGlzYWJsZWQtb3BhY2l0eTtcbiAgICB9XG4gIH1cbn1cblxuLmZvcm0tY2hlY2stbGFiZWwge1xuICBjb2xvcjogJGZvcm0tY2hlY2stbGFiZWwtY29sb3I7XG4gIGN1cnNvcjogJGZvcm0tY2hlY2stbGFiZWwtY3Vyc29yO1xufVxuXG4vL1xuLy8gU3dpdGNoXG4vL1xuXG4uZm9ybS1zd2l0Y2gge1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLXN3aXRjaC1wYWRkaW5nLXN0YXJ0O1xuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICB3aWR0aDogJGZvcm0tc3dpdGNoLXdpZHRoO1xuICAgIG1hcmdpbi1sZWZ0OiAkZm9ybS1zd2l0Y2gtcGFkZGluZy1zdGFydCAqIC0xO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tc3dpdGNoLWJnLWltYWdlKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXN3aXRjaC1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLXN3aXRjaC10cmFuc2l0aW9uKTtcblxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1zd2l0Y2gtZm9jdXMtYmctaW1hZ2UpO1xuICAgIH1cblxuICAgICY6Y2hlY2tlZCB7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1wb3NpdGlvbjtcblxuICAgICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1pbWFnZSksIHZhcigtLSN7JHByZWZpeH1ncmFkaWVudCk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1pbWFnZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5mb3JtLWNoZWNrLXJldmVyc2Uge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLXN3aXRjaC1wYWRkaW5nLXN0YXJ0O1xuICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQgKiAtMTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZm9ybS1jaGVjay1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi1lbmQ7XG59XG5cbi5idG4tY2hlY2sge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICZbZGlzYWJsZWRdLFxuICAmOmRpc2FibGVkIHtcbiAgICArIC5idG4ge1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICBmaWx0ZXI6IG5vbmU7XG4gICAgICBvcGFjaXR5OiAkZm9ybS1jaGVjay1idG4tY2hlY2stZGlzYWJsZWQtb3BhY2l0eTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFJhbmdlXG4vL1xuLy8gU3R5bGUgcmFuZ2UgaW5wdXRzIHRoZSBzYW1lIGFjcm9zcyBicm93c2Vycy4gVmVuZG9yLXNwZWNpZmljIHJ1bGVzIGZvciBwc2V1ZG9cbi8vIGVsZW1lbnRzIGNhbm5vdCBiZSBtaXhlZC4gQXMgc3VjaCwgdGhlcmUgYXJlIG5vIHNoYXJlZCBzdHlsZXMgZm9yIGZvY3VzIG9yXG4vLyBhY3RpdmUgc3RhdGVzIG9uIHByZWZpeGVkIHNlbGVjdG9ycy5cblxuLmZvcm0tcmFuZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhZGQoJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0LCAkZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoICogMik7XG4gIHBhZGRpbmc6IDA7IC8vIE5lZWQgdG8gcmVzZXQgcGFkZGluZ1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuXG4gICAgLy8gUHNldWRvLWVsZW1lbnRzIG11c3QgYmUgc3BsaXQgYWNyb3NzIG11bHRpcGxlIHJ1bGVzZXRzIHRvIGhhdmUgYW4gZWZmZWN0LlxuICAgIC8vIE5vIGJveC1zaGFkb3coKSBtaXhpbiBmb3IgZm9jdXMgYWNjZXNzaWJpbGl0eS5cbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7IGJveC1zaGFkb3c6ICRmb3JtLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgICAmOjotbW96LXJhbmdlLXRodW1iICAgICB7IGJveC1zaGFkb3c6ICRmb3JtLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgfVxuXG4gICY6Oi1tb3otZm9jdXMtb3V0ZXIge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICB3aWR0aDogJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgbWFyZ2luLXRvcDogKCRmb3JtLXJhbmdlLXRyYWNrLWhlaWdodCAtICRmb3JtLXJhbmdlLXRodW1iLWhlaWdodCkgKiAuNTsgLy8gV2Via2l0IHNwZWNpZmljXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLXJhbmdlLXRodW1iLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICB3aWR0aDogJGZvcm0tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkZm9ybS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50OyAvLyBXaHk/XG4gICAgY3Vyc29yOiAkZm9ybS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFuZ2UtdHJhY2stYmc7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICB3aWR0aDogJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLXJhbmdlLXRodW1iLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICAgIHdpZHRoOiAkZm9ybS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRmb3JtLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiAkZm9ybS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFuZ2UtdHJhY2stYmc7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRmlyZWZveCBzcGVjaWZpYz9cbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cblxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG4iLCIuZm9ybS1mbG9hdGluZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQsXG4gID4gLmZvcm0tc2VsZWN0IHtcbiAgICBoZWlnaHQ6ICRmb3JtLWZsb2F0aW5nLWhlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJGZvcm0tZmxvYXRpbmctbGluZS1oZWlnaHQ7XG4gIH1cblxuICA+IGxhYmVsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlOyAvLyBhbGxvdyB0ZXh0YXJlYXNcbiAgICBwYWRkaW5nOiAkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXkgJGZvcm0tZmxvYXRpbmctcGFkZGluZy14O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7IC8vIFJlcXVpcmVkIGZvciBhbGlnbmluZyBsYWJlbCdzIHRleHQgd2l0aCB0aGUgaW5wdXQgYXMgaXQgYWZmZWN0cyBpbm5lciBib3ggbW9kZWxcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1mbG9hdGluZy10cmFuc2l0aW9uKTtcbiAgfVxuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gICAgcGFkZGluZzogJGZvcm0tZmxvYXRpbmctcGFkZGluZy15ICRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteDtcblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICY6bm90KDpwbGFjZWhvbGRlci1zaG93bikge1xuICAgICAgcGFkZGluZy10b3A6ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctdDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAkZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLWI7XG4gICAgfVxuICAgIC8vIER1cGxpY2F0ZWQgYmVjYXVzZSBgOi13ZWJraXQtYXV0b2ZpbGxgIGludmFsaWRhdGVzIG90aGVyIHNlbGVjdG9ycyB3aGVuIGdyb3VwZWRcbiAgICAmOi13ZWJraXQtYXV0b2ZpbGwge1xuICAgICAgcGFkZGluZy10b3A6ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctdDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAkZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLWI7XG4gICAgfVxuICB9XG5cbiAgPiAuZm9ybS1zZWxlY3Qge1xuICAgIHBhZGRpbmctdG9wOiAkZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLXQ7XG4gICAgcGFkZGluZy1ib3R0b206ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctYjtcbiAgfVxuXG4gID4gLmZvcm0tY29udHJvbDpmb2N1cyxcbiAgPiAuZm9ybS1jb250cm9sOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pLFxuICA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LFxuICA+IC5mb3JtLXNlbGVjdCB7XG4gICAgfiBsYWJlbCB7XG4gICAgICBvcGFjaXR5OiAkZm9ybS1mbG9hdGluZy1sYWJlbC1vcGFjaXR5O1xuICAgICAgdHJhbnNmb3JtOiAkZm9ybS1mbG9hdGluZy1sYWJlbC10cmFuc2Zvcm07XG4gICAgfVxuICB9XG4gIC8vIER1cGxpY2F0ZWQgYmVjYXVzZSBgOi13ZWJraXQtYXV0b2ZpbGxgIGludmFsaWRhdGVzIG90aGVyIHNlbGVjdG9ycyB3aGVuIGdyb3VwZWRcbiAgPiAuZm9ybS1jb250cm9sOi13ZWJraXQtYXV0b2ZpbGwge1xuICAgIH4gbGFiZWwge1xuICAgICAgb3BhY2l0eTogJGZvcm0tZmxvYXRpbmctbGFiZWwtb3BhY2l0eTtcbiAgICAgIHRyYW5zZm9ybTogJGZvcm0tZmxvYXRpbmctbGFiZWwtdHJhbnNmb3JtO1xuICAgIH1cbiAgfVxuXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICAgIH4gbGFiZWwge1xuICAgICAgYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoIDA7IC8vIFJlcXVpcmVkIHRvIHByb3Blcmx5IHBvc2l0aW9uIGxhYmVsIHRleHQgLSBhcyBleHBsYWluZWQgYWJvdmVcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmlucHV0LWdyb3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIEZvciBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2tcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHdpZHRoOiAxMDAlO1xuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuZm9ybS1zZWxlY3QsXG4gID4gLmZvcm0tZmxvYXRpbmcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgLy8gRm9yIGZvY3VzIHN0YXRlJ3Mgei1pbmRleFxuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIHdpZHRoOiAxJTtcbiAgICBtaW4td2lkdGg6IDA7IC8vIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzM2MjQ3MTQwL3doeS1kb250LWZsZXgtaXRlbXMtc2hyaW5rLXBhc3QtY29udGVudC1zaXplXG4gIH1cblxuICAvLyBCcmluZyB0aGUgXCJhY3RpdmVcIiBmb3JtIGNvbnRyb2wgdG8gdGhlIHRvcCBvZiBzdXJyb3VuZGluZyBlbGVtZW50c1xuICA+IC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4gID4gLmZvcm0tc2VsZWN0OmZvY3VzLFxuICA+IC5mb3JtLWZsb2F0aW5nOmZvY3VzLXdpdGhpbiB7XG4gICAgei1pbmRleDogNTtcbiAgfVxuXG4gIC8vIEVuc3VyZSBidXR0b25zIGFyZSBhbHdheXMgYWJvdmUgaW5wdXRzIGZvciBtb3JlIHZpc3VhbGx5IHBsZWFzaW5nIGJvcmRlcnMuXG4gIC8vIFRoaXMgaXNuJ3QgbmVlZGVkIGZvciBgLmlucHV0LWdyb3VwLXRleHRgIHNpbmNlIGl0IHNoYXJlcyB0aGUgc2FtZSBib3JkZXItY29sb3JcbiAgLy8gYXMgb3VyIGlucHV0cy5cbiAgLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIHotaW5kZXg6IDU7XG4gICAgfVxuICB9XG59XG5cblxuLy8gVGV4dHVhbCBhZGRvbnNcbi8vXG4vLyBTZXJ2ZXMgYXMgYSBjYXRjaC1hbGwgZWxlbWVudCBmb3IgYW55IHRleHQgb3IgcmFkaW8vY2hlY2tib3ggaW5wdXQgeW91IHdpc2hcbi8vIHRvIHByZXBlbmQgb3IgYXBwZW5kIHRvIGFuIGlucHV0LlxuXG4uaW5wdXQtZ3JvdXAtdGV4dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6ICRpbnB1dC1ncm91cC1hZGRvbi1wYWRkaW5nLXkgJGlucHV0LWdyb3VwLWFkZG9uLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpOyAvLyBNYXRjaCBpbnB1dHNcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1ncm91cC1hZGRvbi1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tYmc7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcbn1cblxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBmb3JtIGNvbnRyb2wgc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyXG4vLyBtYW5pcHVsYXRpb24uXG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1sZyA+IC5idG4ge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1zbSA+IC5idG4ge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLXNlbGVjdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggKyAkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc7XG59XG5cblxuLy8gUm91bmRlZCBjb3JuZXJzXG4vL1xuLy8gVGhlc2UgcnVsZXNldHMgbXVzdCBjb21lIGFmdGVyIHRoZSBzaXppbmcgb25lcyB0byBwcm9wZXJseSBvdmVycmlkZSBzbSBhbmQgbGdcbi8vIGJvcmRlci1yYWRpdXMgdmFsdWVzIHdoZW4gZXh0ZW5kaW5nLiBUaGV5J3JlIG1vcmUgc3BlY2lmaWMgdGhhbiB3ZSdkIGxpa2Vcbi8vIHdpdGggdGhlIGAuaW5wdXQtZ3JvdXAgPmAgcGFydCwgYnV0IHdpdGhvdXQgaXQsIHdlIGNhbm5vdCBvdmVycmlkZSB0aGUgc2l6aW5nLlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuLmlucHV0LWdyb3VwIHtcbiAgJjpub3QoLmhhcy12YWxpZGF0aW9uKSB7XG4gICAgPiA6bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSk6bm90KC5kcm9wZG93bi1tZW51KTpub3QoLmZvcm0tZmxvYXRpbmcpLFxuICAgID4gLmRyb3Bkb3duLXRvZ2dsZTpudGgtbGFzdC1jaGlsZChuICsgMyksXG4gICAgPiAuZm9ybS1mbG9hdGluZzpub3QoOmxhc3QtY2hpbGQpID4gLmZvcm0tY29udHJvbCxcbiAgICA+IC5mb3JtLWZsb2F0aW5nOm5vdCg6bGFzdC1jaGlsZCkgPiAuZm9ybS1zZWxlY3Qge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWVuZC1yYWRpdXMoMCk7XG4gICAgfVxuICB9XG5cbiAgJi5oYXMtdmFsaWRhdGlvbiB7XG4gICAgPiA6bnRoLWxhc3QtY2hpbGQobiArIDMpOm5vdCguZHJvcGRvd24tdG9nZ2xlKTpub3QoLmRyb3Bkb3duLW1lbnUpOm5vdCguZm9ybS1mbG9hdGluZyksXG4gICAgPiAuZHJvcGRvd24tdG9nZ2xlOm50aC1sYXN0LWNoaWxkKG4gKyA0KSxcbiAgICA+IC5mb3JtLWZsb2F0aW5nOm50aC1sYXN0LWNoaWxkKG4gKyAzKSA+IC5mb3JtLWNvbnRyb2wsXG4gICAgPiAuZm9ybS1mbG9hdGluZzpudGgtbGFzdC1jaGlsZChuICsgMykgPiAuZm9ybS1zZWxlY3Qge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWVuZC1yYWRpdXMoMCk7XG4gICAgfVxuICB9XG5cbiAgJHZhbGlkYXRpb24tbWVzc2FnZXM6IFwiXCI7XG4gIEBlYWNoICRzdGF0ZSBpbiBtYXAta2V5cygkZm9ybS12YWxpZGF0aW9uLXN0YXRlcykge1xuICAgICR2YWxpZGF0aW9uLW1lc3NhZ2VzOiAkdmFsaWRhdGlvbi1tZXNzYWdlcyArIFwiOm5vdCguXCIgKyB1bnF1b3RlKCRzdGF0ZSkgKyBcIi10b29sdGlwKVwiICsgXCI6bm90KC5cIiArIHVucXVvdGUoJHN0YXRlKSArIFwiLWZlZWRiYWNrKVwiO1xuICB9XG5cbiAgPiA6bm90KDpmaXJzdC1jaGlsZCk6bm90KC5kcm9wZG93bi1tZW51KSN7JHZhbGlkYXRpb24tbWVzc2FnZXN9IHtcbiAgICBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXN0YXJ0LXJhZGl1cygwKTtcbiAgfVxuXG4gID4gLmZvcm0tZmxvYXRpbmc6bm90KDpmaXJzdC1jaGlsZCkgPiAuZm9ybS1jb250cm9sLFxuICA+IC5mb3JtLWZsb2F0aW5nOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmZvcm0tc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBib3JkZXItc3RhcnQtcmFkaXVzKDApO1xuICB9XG59XG4iLCIvLyBUaGlzIG1peGluIHVzZXMgYW4gYGlmKClgIHRlY2huaXF1ZSB0byBiZSBjb21wYXRpYmxlIHdpdGggRGFydCBTYXNzXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMTg3MyNpc3N1ZWNvbW1lbnQtMTUyMjkzNzI1IGZvciBtb3JlIGRldGFpbHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tdmFsaWRhdGlvbi1taXhpbnNcbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gIEBpZiAoJHN0YXRlID09IFwidmFsaWRcIiBvciAkc3RhdGUgPT0gXCJpbnZhbGlkXCIpIHtcbiAgICAud2FzLXZhbGlkYXRlZCAje2lmKCYsIFwiJlwiLCBcIlwiKX06I3skc3RhdGV9LFxuICAgICN7aWYoJiwgXCImXCIsIFwiXCIpfS5pcy0jeyRzdGF0ZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAje2lmKCYsIFwiJlwiLCBcIlwiKX0uaXMtI3skc3RhdGV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlKFxuICAkc3RhdGUsXG4gICRjb2xvcixcbiAgJGljb24sXG4gICR0b29sdGlwLWNvbG9yOiBjb2xvci1jb250cmFzdCgkY29sb3IpLFxuICAkdG9vbHRpcC1iZy1jb2xvcjogcmdiYSgkY29sb3IsICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eSksXG4gICRmb2N1cy1ib3gtc2hhZG93OiAwIDAgJGlucHV0LWJ0bi1mb2N1cy1ibHVyICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgJGlucHV0LWJ0bi1mb2N1cy1jb2xvci1vcGFjaXR5KVxuKSB7XG4gIC4jeyRzdGF0ZX0tZmVlZGJhY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stZm9udC1zaXplKTtcbiAgICBmb250LXN0eWxlOiAkZm9ybS1mZWVkYmFjay1mb250LXN0eWxlO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgei1pbmRleDogNTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1heC13aWR0aDogMTAwJTsgLy8gQ29udGFpbiB0byBwYXJlbnQgd2hlbiBwb3NzaWJsZVxuICAgIHBhZGRpbmc6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14O1xuICAgIG1hcmdpbi10b3A6IC4xcmVtO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnLWNvbG9yO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRpY29uKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6ICRmb2N1cy1ib3gtc2hhZG93O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbiAgdGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgICY6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pLFxuICAgICAgICAmOm5vdChbbXVsdGlwbGVdKVtzaXplPVwiMVwiXSB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1lbmQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1zZWxlY3QtaW5kaWNhdG9yKSwgZXNjYXBlLXN2ZygkaWNvbik7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGZvcm0tc2VsZWN0LWJnLXBvc2l0aW9uLCAkZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICRmb3JtLXNlbGVjdC1iZy1zaXplLCAkZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogJGZvY3VzLWJveC1zaGFkb3c7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY29udHJvbC1jb2xvciB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHdpZHRoOiBhZGQoJGZvcm0tY29sb3Itd2lkdGgsICRpbnB1dC1oZWlnaHQtaW5uZXIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICAgICAgJjpjaGVja2VkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm94LXNoYWRvdzogJGZvY3VzLWJveC1zaGFkb3c7XG4gICAgICB9XG5cbiAgICAgIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZm9ybS1jaGVjay1pbmxpbmUgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayB7XG4gICAgICBtYXJnaW4tbGVmdDogLjVlbTtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAge1xuICAgID4gLmZvcm0tY29udHJvbDpub3QoOmZvY3VzKSxcbiAgICA+IC5mb3JtLXNlbGVjdDpub3QoOmZvY3VzKSxcbiAgICA+IC5mb3JtLWZsb2F0aW5nOm5vdCg6Zm9jdXMtd2l0aGluKSB7XG4gICAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICAgIEBpZiAkc3RhdGUgPT0gXCJ2YWxpZFwiIHtcbiAgICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICB9IEBlbHNlIGlmICRzdGF0ZSA9PSBcImludmFsaWRcIiB7XG4gICAgICAgICAgei1pbmRleDogNDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXZhbGlkYXRpb24tbWl4aW5zXG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5idG4ge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXg6ICN7JGJ0bi1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1idG4tcGFkZGluZy15OiAjeyRidG4tcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWZvbnQtZmFtaWx5OiAjeyRidG4tZm9udC1mYW1pbHl9O1xuICBAaW5jbHVkZSByZnMoJGJ0bi1mb250LXNpemUsIC0tI3skcHJlZml4fWJ0bi1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1idG4tZm9udC13ZWlnaHQ6ICN7JGJ0bi1mb250LXdlaWdodH07XG4gIC0tI3skcHJlZml4fWJ0bi1saW5lLWhlaWdodDogI3skYnRuLWxpbmUtaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNvbG9yOiAjeyRib2R5LWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJnOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci13aWR0aDogI3skYnRuLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tYm9yZGVyLXJhZGl1czogI3skYnRuLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWJveC1zaGFkb3c6ICN7JGJ0bi1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLW9wYWNpdHk6ICN7JGJ0bi1kaXNhYmxlZC1vcGFjaXR5fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3c6IDAgMCAwICN7JGJ0bi1mb2N1cy13aWR0aH0gcmdiYSh2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLXNoYWRvdy1yZ2IpLCAuNSk7XG4gIC8vIHNjc3MtZG9jcy1lbmQgYnRuLWNzcy12YXJzXG5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9YnRuLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXgpO1xuICBmb250LWZhbWlseTogdmFyKC0tI3skcHJlZml4fWJ0bi1mb250LWZhbWlseSk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9YnRuLWZvbnQtc2l6ZSkpO1xuICBmb250LXdlaWdodDogdmFyKC0tI3skcHJlZml4fWJ0bi1mb250LXdlaWdodCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWxpbmUtaGVpZ2h0KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tY29sb3IpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgd2hpdGUtc3BhY2U6ICRidG4td2hpdGUtc3BhY2U7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGN1cnNvcjogaWYoJGVuYWJsZS1idXR0b24tcG9pbnRlcnMsIHBvaW50ZXIsIG51bGwpO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWJ0bi1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1idG4tYm9yZGVyLXJhZGl1cykpO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZyh2YXIoLS0jeyRwcmVmaXh9YnRuLWJnKSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tI3skcHJlZml4fWJ0bi1ib3gtc2hhZG93KSk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJ0bi10cmFuc2l0aW9uKTtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJvcmRlci1jb2xvcik7XG4gIH1cblxuICAuYnRuLWNoZWNrICsgJjpob3ZlciB7XG4gICAgLy8gb3ZlcnJpZGUgZm9yIHRoZSBjaGVja2JveC9yYWRpbyBidXR0b25zXG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ib3JkZXItY29sb3IpO1xuICB9XG5cbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1jb2xvcik7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1iZykpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1ib3JkZXItY29sb3IpO1xuICAgIG91dGxpbmU6IDA7XG4gICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1ib3gtc2hhZG93KSwgdmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfVxuICB9XG5cbiAgLmJ0bi1jaGVjazpmb2N1cy12aXNpYmxlICsgJiB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJvcmRlci1jb2xvcik7XG4gICAgb3V0bGluZTogMDtcbiAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWJveC1zaGFkb3cpLCB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9XG4gIH1cblxuICAuYnRuLWNoZWNrOmNoZWNrZWQgKyAmLFxuICA6bm90KC5idG4tY2hlY2spICsgJjphY3RpdmUsXG4gICY6Zmlyc3QtY2hpbGQ6YWN0aXZlLFxuICAmLmFjdGl2ZSxcbiAgJi5zaG93IHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJnKTtcbiAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBpZigkZW5hYmxlLWdyYWRpZW50cywgbm9uZSwgbnVsbCk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1ib3JkZXItY29sb3IpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtc2hhZG93KSk7XG5cbiAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tYWN0aXZlLXNoYWRvdyksIHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmOmRpc2FibGVkLFxuICAmLmRpc2FibGVkLFxuICBmaWVsZHNldDpkaXNhYmxlZCAmIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1jb2xvcik7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1iZyk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIG5vbmUsIG51bGwpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3IpO1xuICAgIG9wYWNpdHk6IHZhcigtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtb3BhY2l0eSk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBBbHRlcm5hdGUgYnV0dG9uc1xuLy9cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJ0bi12YXJpYW50LWxvb3BzXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi0jeyRjb2xvcn0ge1xuICAgIEBpZiAkY29sb3IgPT0gXCJsaWdodFwiIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KFxuICAgICAgICAkdmFsdWUsXG4gICAgICAgICR2YWx1ZSxcbiAgICAgICAgJGhvdmVyLWJhY2tncm91bmQ6IHNoYWRlLWNvbG9yKCR2YWx1ZSwgJGJ0bi1ob3Zlci1iZy1zaGFkZS1hbW91bnQpLFxuICAgICAgICAkaG92ZXItYm9yZGVyOiBzaGFkZS1jb2xvcigkdmFsdWUsICRidG4taG92ZXItYm9yZGVyLXNoYWRlLWFtb3VudCksXG4gICAgICAgICRhY3RpdmUtYmFja2dyb3VuZDogc2hhZGUtY29sb3IoJHZhbHVlLCAkYnRuLWFjdGl2ZS1iZy1zaGFkZS1hbW91bnQpLFxuICAgICAgICAkYWN0aXZlLWJvcmRlcjogc2hhZGUtY29sb3IoJHZhbHVlLCAkYnRuLWFjdGl2ZS1ib3JkZXItc2hhZGUtYW1vdW50KVxuICAgICAgKTtcbiAgICB9IEBlbHNlIGlmICRjb2xvciA9PSBcImRhcmtcIiB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudChcbiAgICAgICAgJHZhbHVlLFxuICAgICAgICAkdmFsdWUsXG4gICAgICAgICRob3Zlci1iYWNrZ3JvdW5kOiB0aW50LWNvbG9yKCR2YWx1ZSwgJGJ0bi1ob3Zlci1iZy10aW50LWFtb3VudCksXG4gICAgICAgICRob3Zlci1ib3JkZXI6IHRpbnQtY29sb3IoJHZhbHVlLCAkYnRuLWhvdmVyLWJvcmRlci10aW50LWFtb3VudCksXG4gICAgICAgICRhY3RpdmUtYmFja2dyb3VuZDogdGludC1jb2xvcigkdmFsdWUsICRidG4tYWN0aXZlLWJnLXRpbnQtYW1vdW50KSxcbiAgICAgICAgJGFjdGl2ZS1ib3JkZXI6IHRpbnQtY29sb3IoJHZhbHVlLCAkYnRuLWFjdGl2ZS1ib3JkZXItdGludC1hbW91bnQpXG4gICAgICApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJHZhbHVlLCAkdmFsdWUpO1xuICAgIH1cbiAgfVxufVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi1vdXRsaW5lLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkdmFsdWUpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGJ0bi12YXJpYW50LWxvb3BzXG5cblxuLy9cbi8vIExpbmsgYnV0dG9uc1xuLy9cblxuLy8gTWFrZSBhIGJ1dHRvbiBsb29rIGFuZCBiZWhhdmUgbGlrZSBhIGxpbmtcbi5idG4tbGluayB7XG4gIC0tI3skcHJlZml4fWJ0bi1mb250LXdlaWdodDogI3skZm9udC13ZWlnaHQtbm9ybWFsfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNvbG9yOiAjeyRidG4tbGluay1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1iZzogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItY29sb3I6ICN7JGJ0bi1saW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtY29sb3I6ICN7JGJ0bi1saW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtY29sb3I6ICN7JGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1ib3gtc2hhZG93OiBub25lO1xuICAtLSN7JHByZWZpeH1idG4tZm9jdXMtc2hhZG93LXJnYjogI3t0by1yZ2IobWl4KGNvbG9yLWNvbnRyYXN0KCRwcmltYXJ5KSwgJHByaW1hcnksIDE1JSkpfTtcblxuICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG5cbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1jb2xvcik7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1jb2xvcik7XG4gIH1cblxuICAvLyBObyBuZWVkIGZvciBhbiBhY3RpdmUgc3RhdGUgaGVyZVxufVxuXG5cbi8vXG4vLyBCdXR0b24gU2l6ZXNcbi8vXG5cbi5idG4tbGcge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS1sZywgJGJ0bi1wYWRkaW5nLXgtbGcsICRidG4tZm9udC1zaXplLWxnLCAkYnRuLWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4uYnRuLXNtIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktc20sICRidG4tcGFkZGluZy14LXNtLCAkYnRuLWZvbnQtc2l6ZS1zbSwgJGJ0bi1ib3JkZXItcmFkaXVzLXNtKTtcbn1cbiIsIi8vIEJ1dHRvbiB2YXJpYW50c1xuLy9cbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcbi8vIGFuZCBkaXNhYmxlZCBvcHRpb25zIGZvciBhbGwgYnV0dG9uc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLXZhcmlhbnQtbWl4aW5cbkBtaXhpbiBidXR0b24tdmFyaWFudChcbiAgJGJhY2tncm91bmQsXG4gICRib3JkZXIsXG4gICRjb2xvcjogY29sb3ItY29udHJhc3QoJGJhY2tncm91bmQpLFxuICAkaG92ZXItYmFja2dyb3VuZDogaWYoJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJGJhY2tncm91bmQsICRidG4taG92ZXItYmctc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1ob3Zlci1iZy10aW50LWFtb3VudCkpLFxuICAkaG92ZXItYm9yZGVyOiBpZigkY29sb3IgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCBzaGFkZS1jb2xvcigkYm9yZGVyLCAkYnRuLWhvdmVyLWJvcmRlci1zaGFkZS1hbW91bnQpLCB0aW50LWNvbG9yKCRib3JkZXIsICRidG4taG92ZXItYm9yZGVyLXRpbnQtYW1vdW50KSksXG4gICRob3Zlci1jb2xvcjogY29sb3ItY29udHJhc3QoJGhvdmVyLWJhY2tncm91bmQpLFxuICAkYWN0aXZlLWJhY2tncm91bmQ6IGlmKCRjb2xvciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLWFjdGl2ZS1iZy1zaGFkZS1hbW91bnQpLCB0aW50LWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLWFjdGl2ZS1iZy10aW50LWFtb3VudCkpLFxuICAkYWN0aXZlLWJvcmRlcjogaWYoJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJGJvcmRlciwgJGJ0bi1hY3RpdmUtYm9yZGVyLXNoYWRlLWFtb3VudCksIHRpbnQtY29sb3IoJGJvcmRlciwgJGJ0bi1hY3RpdmUtYm9yZGVyLXRpbnQtYW1vdW50KSksXG4gICRhY3RpdmUtY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRhY3RpdmUtYmFja2dyb3VuZCksXG4gICRkaXNhYmxlZC1iYWNrZ3JvdW5kOiAkYmFja2dyb3VuZCxcbiAgJGRpc2FibGVkLWJvcmRlcjogJGJvcmRlcixcbiAgJGRpc2FibGVkLWNvbG9yOiBjb2xvci1jb250cmFzdCgkZGlzYWJsZWQtYmFja2dyb3VuZClcbikge1xuICAtLSN7JHByZWZpeH1idG4tY29sb3I6ICN7JGNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJnOiAjeyRiYWNrZ3JvdW5kfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1jb2xvcjogI3skYm9yZGVyfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yOiAjeyRob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1iZzogI3skaG92ZXItYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6ICN7JGhvdmVyLWJvcmRlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1mb2N1cy1zaGFkb3ctcmdiOiAje3RvLXJnYihtaXgoJGNvbG9yLCAkYm9yZGVyLCAxNSUpKX07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtY29sb3I6ICN7JGFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYmc6ICN7JGFjdGl2ZS1iYWNrZ3JvdW5kfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1ib3JkZXItY29sb3I6ICN7JGFjdGl2ZS1ib3JkZXJ9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLXNoYWRvdzogI3skYnRuLWFjdGl2ZS1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWNvbG9yOiAjeyRkaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1iZzogI3skZGlzYWJsZWQtYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICN7JGRpc2FibGVkLWJvcmRlcn07XG59XG4vLyBzY3NzLWRvY3MtZW5kIGJ0bi12YXJpYW50LW1peGluXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tb3V0bGluZS12YXJpYW50LW1peGluXG5AbWl4aW4gYnV0dG9uLW91dGxpbmUtdmFyaWFudChcbiAgJGNvbG9yLFxuICAkY29sb3ItaG92ZXI6IGNvbG9yLWNvbnRyYXN0KCRjb2xvciksXG4gICRhY3RpdmUtYmFja2dyb3VuZDogJGNvbG9yLFxuICAkYWN0aXZlLWJvcmRlcjogJGNvbG9yLFxuICAkYWN0aXZlLWNvbG9yOiBjb2xvci1jb250cmFzdCgkYWN0aXZlLWJhY2tncm91bmQpXG4pIHtcbiAgLS0jeyRwcmVmaXh9YnRuLWNvbG9yOiAjeyRjb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItY29sb3I6ICN7JGNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yOiAjeyRjb2xvci1ob3Zlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1iZzogI3skYWN0aXZlLWJhY2tncm91bmR9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yOiAjeyRhY3RpdmUtYm9yZGVyfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWZvY3VzLXNoYWRvdy1yZ2I6ICN7dG8tcmdiKCRjb2xvcil9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWNvbG9yOiAjeyRhY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJnOiAjeyRhY3RpdmUtYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAjeyRhY3RpdmUtYm9yZGVyfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1zaGFkb3c6ICN7JGJ0bi1hY3RpdmUtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1jb2xvcjogI3skY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYmc6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAjeyRjb2xvcn07XG4gIC0tI3skcHJlZml4fWdyYWRpZW50OiBub25lO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tb3V0bGluZS12YXJpYW50LW1peGluXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tc2l6ZS1taXhpblxuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRib3JkZXItcmFkaXVzKSB7XG4gIC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXk6ICN7JHBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXg6ICN7JHBhZGRpbmcteH07XG4gIEBpbmNsdWRlIHJmcygkZm9udC1zaXplLCAtLSN7JHByZWZpeH1idG4tZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1yYWRpdXM6ICN7JGJvcmRlci1yYWRpdXN9O1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tc2l6ZS1taXhpblxuIiwiLmZhZGUge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWZhZGUpO1xuXG4gICY6bm90KC5zaG93KSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sbGFwc2UtY2xhc3Nlc1xuLmNvbGxhcHNlIHtcbiAgJjpub3QoLnNob3cpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5jb2xsYXBzaW5nIHtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWNvbGxhcHNlKTtcblxuICAmLmNvbGxhcHNlLWhvcml6b250YWwge1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWNvbGxhcHNlLXdpZHRoKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBjb2xsYXBzZS1jbGFzc2VzXG4iLCIvLyBUaGUgZHJvcGRvd24gd3JhcHBlciAoYDxkaXY+YClcbi5kcm9wdXAsXG4uZHJvcGVuZCxcbi5kcm9wZG93bixcbi5kcm9wc3RhcnQsXG4uZHJvcHVwLWNlbnRlcixcbi5kcm9wZG93bi1jZW50ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5kcm9wZG93bi10b2dnbGUge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIC8vIEdlbmVyYXRlIHRoZSBjYXJldCBhdXRvbWF0aWNhbGx5XG4gIEBpbmNsdWRlIGNhcmV0KCk7XG59XG5cbi8vIFRoZSBkcm9wZG93biBtZW51XG4uZHJvcGRvd24tbWVudSB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBkcm9wZG93bi1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi16aW5kZXg6ICN7JHppbmRleC1kcm9wZG93bn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLW1pbi13aWR0aDogI3skZHJvcGRvd24tbWluLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tcGFkZGluZy14OiAjeyRkcm9wZG93bi1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1wYWRkaW5nLXk6ICN7JGRyb3Bkb3duLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLXNwYWNlcjogI3skZHJvcGRvd24tc3BhY2VyfTtcbiAgQGluY2x1ZGUgcmZzKCRkcm9wZG93bi1mb250LXNpemUsIC0tI3skcHJlZml4fWRyb3Bkb3duLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWNvbG9yOiAjeyRkcm9wZG93bi1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJnOiAjeyRkcm9wZG93bi1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci1jb2xvcjogI3skZHJvcGRvd24tYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm9yZGVyLXJhZGl1czogI3skZHJvcGRvd24tYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci13aWR0aDogI3skZHJvcGRvd24tYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1czogI3skZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWRpdmlkZXItYmc6ICN7JGRyb3Bkb3duLWRpdmlkZXItYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15OiAjeyRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm94LXNoYWRvdzogI3skZHJvcGRvd24tYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstY29sb3I6ICN7JGRyb3Bkb3duLWxpbmstY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAjeyRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1ob3Zlci1iZzogI3skZHJvcGRvd24tbGluay1ob3Zlci1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAjeyRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAjeyRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICN7JGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLXBhZGRpbmcteDogI3skZHJvcGRvd24taXRlbS1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLXBhZGRpbmcteTogI3skZHJvcGRvd24taXRlbS1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItY29sb3I6ICN7JGRyb3Bkb3duLWhlYWRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXg6ICN7JGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItcGFkZGluZy15OiAjeyRkcm9wZG93bi1oZWFkZXItcGFkZGluZy15fTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBkcm9wZG93bi1jc3MtdmFyc1xuXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLXppbmRleCk7XG4gIGRpc3BsYXk6IG5vbmU7IC8vIG5vbmUgYnkgZGVmYXVsdCwgYnV0IGJsb2NrIG9uIFwib3BlblwiIG9mIHRoZSBtZW51XG4gIG1pbi13aWR0aDogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLW1pbi13aWR0aCk7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1wYWRkaW5nLXgpO1xuICBtYXJnaW46IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgbWFyZ2luIG9mIHVsXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tZm9udC1zaXplKSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tY29sb3IpO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBFbnN1cmVzIHByb3BlciBhbGlnbm1lbnQgaWYgcGFyZW50IGhhcyBpdCBjaGFuZ2VkIChlLmcuLCBtb2RhbCBmb290ZXIpXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm94LXNoYWRvdykpO1xuXG4gICZbZGF0YS1icy1wb3BwZXJdIHtcbiAgICB0b3A6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tc3BhY2VyKTtcbiAgfVxuXG4gIEBpZiAkZHJvcGRvd24tcGFkZGluZy15ID09IDAge1xuICAgID4gLmRyb3Bkb3duLWl0ZW06Zmlyc3QtY2hpbGQsXG4gICAgPiBsaTpmaXJzdC1jaGlsZCAuZHJvcGRvd24taXRlbSB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cykpO1xuICAgIH1cbiAgICA+IC5kcm9wZG93bi1pdGVtOmxhc3QtY2hpbGQsXG4gICAgPiBsaTpsYXN0LWNoaWxkIC5kcm9wZG93bi1pdGVtIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG4gICAgfVxuXG4gIH1cbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHJlc3BvbnNpdmUtYnJlYWtwb2ludHNcbi8vIFdlIGRlbGliZXJhdGVseSBoYXJkY29kZSB0aGUgYGJzLWAgcHJlZml4IGJlY2F1c2Ugd2UgY2hlY2tcbi8vIHRoaXMgY3VzdG9tIHByb3BlcnR5IGluIEpTIHRvIGRldGVybWluZSBQb3BwZXIncyBwb3NpdGlvbmluZ1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZHJvcGRvd24tbWVudSN7JGluZml4fS1zdGFydCB7XG4gICAgICAtLWJzLXBvc2l0aW9uOiBzdGFydDtcblxuICAgICAgJltkYXRhLWJzLXBvcHBlcl0ge1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZHJvcGRvd24tbWVudSN7JGluZml4fS1lbmQge1xuICAgICAgLS1icy1wb3NpdGlvbjogZW5kO1xuXG4gICAgICAmW2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCByZXNwb25zaXZlLWJyZWFrcG9pbnRzXG5cbi8vIEFsbG93IGZvciBkcm9wZG93bnMgdG8gZ28gYm90dG9tIHVwIChha2EsIGRyb3B1cC1tZW51KVxuLy8gSnVzdCBhZGQgLmRyb3B1cCBhZnRlciB0aGUgc3RhbmRhcmQgLmRyb3Bkb3duIGNsYXNzIGFuZCB5b3UncmUgc2V0LlxuLmRyb3B1cCB7XG4gIC5kcm9wZG93bi1tZW51W2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1zcGFjZXIpO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQodXApO1xuICB9XG59XG5cbi5kcm9wZW5kIHtcbiAgLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tc3BhY2VyKTtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KGVuZCk7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wc3RhcnQge1xuICAuZHJvcGRvd24tbWVudVtkYXRhLWJzLXBvcHBlcl0ge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tc3BhY2VyKTtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KHN0YXJ0KTtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cblxuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBgPGhyPmApIHdpdGhpbiB0aGUgZHJvcGRvd25cbi5kcm9wZG93bi1kaXZpZGVyIHtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15KSAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWRpdmlkZXItYmcpO1xuICBvcGFjaXR5OiAxOyAvLyBSZXZpc2l0IGluIHY2IHRvIGRlLWR1cGUgc3R5bGVzIHRoYXQgY29uZmxpY3Qgd2l0aCA8aHI+IGVsZW1lbnRcbn1cblxuLy8gTGlua3MsIGJ1dHRvbnMsIGFuZCBtb3JlIHdpdGhpbiB0aGUgZHJvcGRvd24gbWVudVxuLy9cbi8vIGA8YnV0dG9uPmAtc3BlY2lmaWMgc3R5bGVzIGFyZSBkZW5vdGVkIHdpdGggYC8vIEZvciA8YnV0dG9uPnNgXG4uZHJvcGRvd24taXRlbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWl0ZW0tcGFkZGluZy14KTtcbiAgY2xlYXI6IGJvdGg7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstY29sb3IpO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHNcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBwcmV2ZW50IGxpbmtzIGZyb20gcmFuZG9tbHkgYnJlYWtpbmcgb250byBuZXcgbGluZXNcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBib3JkZXI6IDA7IC8vIEZvciBgPGJ1dHRvbj5gc1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstaG92ZXItYmcpKTtcbiAgfVxuXG4gICYuYWN0aXZlLFxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWFjdGl2ZS1iZykpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yKTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBpZigkZW5hYmxlLWdyYWRpZW50cywgbm9uZSwgbnVsbCk7XG4gIH1cbn1cblxuLmRyb3Bkb3duLW1lbnUuc2hvdyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vLyBEcm9wZG93biBzZWN0aW9uIGhlYWRlcnNcbi5kcm9wZG93bi1oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItcGFkZGluZy14KTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gZm9yIHVzZSB3aXRoIGhlYWRpbmcgZWxlbWVudHNcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtc20pO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWhlYWRlci1jb2xvcik7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIGFzIHdpdGggPiBsaSA+IGFcbn1cblxuLy8gRHJvcGRvd24gdGV4dFxuLmRyb3Bkb3duLWl0ZW0tdGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taXRlbS1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLXBhZGRpbmcteCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1jb2xvcik7XG59XG5cbi8vIERhcmsgZHJvcGRvd25zXG4uZHJvcGRvd24tbWVudS1kYXJrIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IGRyb3Bkb3duLWRhcmstY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1iZzogI3skZHJvcGRvd24tZGFyay1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci1jb2xvcjogI3skZHJvcGRvd24tZGFyay1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1ib3gtc2hhZG93OiAjeyRkcm9wZG93bi1kYXJrLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWNvbG9yOiAjeyRkcm9wZG93bi1kYXJrLWxpbmstY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAjeyRkcm9wZG93bi1kYXJrLWxpbmstaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1kaXZpZGVyLWJnOiAjeyRkcm9wZG93bi1kYXJrLWRpdmlkZXItYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWhvdmVyLWJnOiAjeyRkcm9wZG93bi1kYXJrLWxpbmstaG92ZXItYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogI3skZHJvcGRvd24tZGFyay1saW5rLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAjeyRkcm9wZG93bi1kYXJrLWxpbmstYWN0aXZlLWJnfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogI3skZHJvcGRvd24tZGFyay1saW5rLWRpc2FibGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taGVhZGVyLWNvbG9yOiAjeyRkcm9wZG93bi1kYXJrLWhlYWRlci1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgZHJvcGRvd24tZGFyay1jc3MtdmFyc1xufVxuIiwiLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcmV0LW1peGluc1xuQG1peGluIGNhcmV0LWRvd24ge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtdXAge1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtZW5kIHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZDtcbn1cblxuQG1peGluIGNhcmV0LXN0YXJ0IHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQoJGRpcmVjdGlvbjogZG93bikge1xuICBAaWYgJGVuYWJsZS1jYXJldCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRjYXJldC1zcGFjaW5nO1xuICAgICAgdmVydGljYWwtYWxpZ246ICRjYXJldC12ZXJ0aWNhbC1hbGlnbjtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBAaWYgJGRpcmVjdGlvbiA9PSBkb3duIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtZG93bigpO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHVwIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtdXAoKTtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBlbmQge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1lbmQoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGRpcmVjdGlvbiA9PSBzdGFydCB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkY2FyZXQtc3BhY2luZztcbiAgICAgICAgdmVydGljYWwtYWxpZ246ICRjYXJldC12ZXJ0aWNhbC1hbGlnbjtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtc3RhcnQoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmVtcHR5OjphZnRlciB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgY2FyZXQtbWl4aW5zXG4iLCIvLyBNYWtlIHRoZSBkaXYgYmVoYXZlIGxpa2UgYSBidXR0b25cbi5idG4tZ3JvdXAsXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLy8gbWF0Y2ggLmJ0biBhbGlnbm1lbnQgZ2l2ZW4gZm9udC1zaXplIGhhY2sgYWJvdmVcblxuICA+IC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgfVxuXG4gIC8vIEJyaW5nIHRoZSBob3ZlciwgZm9jdXNlZCwgYW5kIFwiYWN0aXZlXCIgYnV0dG9ucyB0byB0aGUgZnJvbnQgdG8gb3ZlcmxheVxuICAvLyB0aGUgYm9yZGVycyBwcm9wZXJseVxuICA+IC5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4sXG4gID4gLmJ0bi1jaGVjazpmb2N1cyArIC5idG4sXG4gID4gLmJ0bjpob3ZlcixcbiAgPiAuYnRuOmZvY3VzLFxuICA+IC5idG46YWN0aXZlLFxuICA+IC5idG4uYWN0aXZlIHtcbiAgICB6LWluZGV4OiAxO1xuICB9XG59XG5cbi8vIE9wdGlvbmFsOiBHcm91cCBtdWx0aXBsZSBidXR0b24gZ3JvdXBzIHRvZ2V0aGVyIGZvciBhIHRvb2xiYXJcbi5idG4tdG9vbGJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLmJ0bi1ncm91cCB7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJ0bi1ib3JkZXItcmFkaXVzKTtcblxuICAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzIHdoZW4gYnV0dG9ucyBhcmUgbmV4dCB0byBlYWNoIG90aGVyXG4gID4gOm5vdCguYnRuLWNoZWNrOmZpcnN0LWNoaWxkKSArIC5idG4sXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kYnRuLWJvcmRlci13aWR0aDtcbiAgfVxuXG4gIC8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gID4gLmJ0bi5kcm9wZG93bi10b2dnbGUtc3BsaXQ6Zmlyc3QtY2hpbGQsXG4gID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWVuZC1yYWRpdXMoMCk7XG4gIH1cblxuICAvLyBUaGUgbGVmdCByYWRpdXMgc2hvdWxkIGJlIDAgaWYgdGhlIGJ1dHRvbiBpczpcbiAgLy8gLSB0aGUgXCJ0aGlyZCBvciBtb3JlXCIgY2hpbGRcbiAgLy8gLSB0aGUgc2Vjb25kIGNoaWxkIGFuZCB0aGUgcHJldmlvdXMgZWxlbWVudCBpc24ndCBgLmJ0bi1jaGVja2AgKG1ha2luZyBpdCB0aGUgZmlyc3QgY2hpbGQgdmlzdWFsbHkpXG4gIC8vIC0gcGFydCBvZiBhIGJ0bi1ncm91cCB3aGljaCBpc24ndCB0aGUgZmlyc3QgY2hpbGRcbiAgPiAuYnRuOm50aC1jaGlsZChuICsgMyksXG4gID4gOm5vdCguYnRuLWNoZWNrKSArIC5idG4sXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1zdGFydC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgYnV0dG9uIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llciBtYW5pcHVsYXRpb24uXG5cbi5idG4tZ3JvdXAtc20gPiAuYnRuIHsgQGV4dGVuZCAuYnRuLXNtOyB9XG4uYnRuLWdyb3VwLWxnID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1sZzsgfVxuXG5cbi8vXG4vLyBTcGxpdCBidXR0b24gZHJvcGRvd25zXG4vL1xuXG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG5cbiAgJjo6YWZ0ZXIsXG4gIC5kcm9wdXAgJjo6YWZ0ZXIsXG4gIC5kcm9wZW5kICY6OmFmdGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gIC5kcm9wc3RhcnQgJjo6YmVmb3JlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmJ0bi1zbSArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteC1zbSAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteC1zbSAqIC43NTtcbn1cblxuLmJ0bi1sZyArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteC1sZyAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteC1sZyAqIC43NTtcbn1cblxuXG4vLyBUaGUgY2xpY2thYmxlIGJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG1lbnVcbi8vIFNldCB0aGUgc2FtZSBpbnNldCBzaGFkb3cgYXMgdGhlIDphY3RpdmUgc3RhdGVcbi5idG4tZ3JvdXAuc2hvdyAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcblxuICAvLyBTaG93IG5vIHNoYWRvdyBmb3IgYC5idG4tbGlua2Agc2luY2UgaXQgaGFzIG5vIG90aGVyIGJ1dHRvbiBzdHlsZXMuXG4gICYuYnRuLWxpbmsge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gVmVydGljYWwgYnV0dG9uIGdyb3Vwc1xuLy9cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXRvcDogLSRidG4tYm9yZGVyLXdpZHRoO1xuICB9XG5cbiAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4gID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgfVxuXG4gID4gLmJ0biB+IC5idG4sXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gS2lja3N0YXJ0IGFueSBuYXZpZ2F0aW9uIGNvbXBvbmVudCB3aXRoIGEgc2V0IG9mIHN0eWxlIHJlc2V0cy4gV29ya3Mgd2l0aFxuLy8gYDxuYXY+YHMsIGA8dWw+YHMgb3IgYDxvbD5gcy5cblxuLm5hdiB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBuYXYtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstcGFkZGluZy14OiAjeyRuYXYtbGluay1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1wYWRkaW5nLXk6ICN7JG5hdi1saW5rLXBhZGRpbmcteX07XG4gIEBpbmNsdWRlIHJmcygkbmF2LWxpbmstZm9udC1zaXplLCAtLSN7JHByZWZpeH1uYXYtbGluay1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1mb250LXdlaWdodDogI3skbmF2LWxpbmstZm9udC13ZWlnaHR9O1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1jb2xvcjogI3skbmF2LWxpbmstY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1ob3Zlci1jb2xvcjogI3skbmF2LWxpbmstaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1kaXNhYmxlZC1jb2xvcjogI3skbmF2LWxpbmstZGlzYWJsZWQtY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG5hdi1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubmF2LWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLXBhZGRpbmcteCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9bmF2LWxpbmstZm9udC1zaXplKSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9bmF2LWxpbmstZm9udC13ZWlnaHQpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLWNvbG9yKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRuYXYtbGluay10cmFuc2l0aW9uKTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLWhvdmVyLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlIGxpZ2h0ZW5zIHRleHRcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtbGluay1kaXNhYmxlZC1jb2xvcik7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICB9XG59XG5cbi8vXG4vLyBUYWJzXG4vL1xuXG4ubmF2LXRhYnMge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbmF2LXRhYnMtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLXdpZHRoOiAjeyRuYXYtdGFicy1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItY29sb3I6ICN7JG5hdi10YWJzLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci1yYWRpdXM6ICN7JG5hdi10YWJzLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogI3skbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogI3skbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogI3skbmF2LXRhYnMtbGluay1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I6ICN7JG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbmF2LXRhYnMtY3NzLXZhcnNcblxuICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLWNvbG9yKTtcblxuICAubmF2LWxpbmsge1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItd2lkdGgpIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItcmFkaXVzKSk7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgLy8gUHJldmVudHMgYWN0aXZlIC5uYXYtbGluayB0YWIgb3ZlcmxhcHBpbmcgZm9jdXMgb3V0bGluZSBvZiBwcmV2aW91cy9uZXh0IC5uYXYtbGlua1xuICAgICAgaXNvbGF0aW9uOiBpc29sYXRlO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3IpO1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQsXG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLWRpc2FibGVkLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbmsge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWFjdGl2ZS1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICAvLyBNYWtlIGRyb3Bkb3duIGJvcmRlciBvdmVybGFwIHRhYiBib3JkZXJcbiAgICBtYXJnaW4tdG9wOiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIC8vIFJlbW92ZSB0aGUgdG9wIHJvdW5kZWQgY29ybmVycyBoZXJlIHNpbmNlIHRoZXJlIGlzIGEgaGFyZCBlZGdlIGFib3ZlIHRoZSBtZW51XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuXG4vL1xuLy8gUGlsbHNcbi8vXG5cbi5uYXYtcGlsbHMge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbmF2LXBpbGxzLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAjeyRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fW5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogI3skbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAjeyRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmd9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG5hdi1waWxscy1jc3MtdmFyc1xuXG4gIC5uYXYtbGluayB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWJvcmRlci1yYWRpdXMpKTtcblxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtbGluay1kaXNhYmxlZC1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLnNob3cgPiAubmF2LWxpbmsge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh2YXIoLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnKSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gSnVzdGlmaWVkIHZhcmlhbnRzXG4vL1xuXG4ubmF2LWZpbGwge1xuICA+IC5uYXYtbGluayxcbiAgLm5hdi1pdGVtIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLm5hdi1qdXN0aWZpZWQge1xuICA+IC5uYXYtbGluayxcbiAgLm5hdi1pdGVtIHtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLm5hdi1maWxsLFxuLm5hdi1qdXN0aWZpZWQge1xuICAubmF2LWl0ZW0gLm5hdi1saW5rIHtcbiAgICB3aWR0aDogMTAwJTsgLy8gTWFrZSBzdXJlIGJ1dHRvbiB3aWxsIGdyb3dcbiAgfVxufVxuXG5cbi8vIFRhYmJhYmxlIHRhYnNcbi8vXG4vLyBIaWRlIHRhYmJhYmxlIHBhbmVzIHRvIHN0YXJ0LCBzaG93IHRoZW0gd2hlbiBgLmFjdGl2ZWBcblxuLnRhYi1jb250ZW50IHtcbiAgPiAudGFiLXBhbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgPiAuYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuIiwiLy8gTmF2YmFyXG4vL1xuLy8gUHJvdmlkZSBhIHN0YXRpYyBuYXZiYXIgZnJvbSB3aGljaCB3ZSBleHBhbmQgdG8gY3JlYXRlIGZ1bGwtd2lkdGgsIGZpeGVkLCBhbmRcbi8vIG90aGVyIG5hdmJhciB2YXJpYXRpb25zLlxuXG4ubmF2YmFyIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdmJhci1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1uYXZiYXItcGFkZGluZy14OiAje2lmKCRuYXZiYXItcGFkZGluZy14ID09IG51bGwsIDAsICRuYXZiYXItcGFkZGluZy14KX07XG4gIC0tI3skcHJlZml4fW5hdmJhci1wYWRkaW5nLXk6ICN7JG5hdmJhci1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItY29sb3I6ICN7JG5hdmJhci1saWdodC1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1ob3Zlci1jb2xvcjogI3skbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWRpc2FibGVkLWNvbG9yOiAjeyRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYWN0aXZlLWNvbG9yOiAjeyRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLXBhZGRpbmcteTogI3skbmF2YmFyLWJyYW5kLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1tYXJnaW4tZW5kOiAjeyRuYXZiYXItYnJhbmQtbWFyZ2luLWVuZH07XG4gIC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1mb250LXNpemU6ICN7JG5hdmJhci1icmFuZC1mb250LXNpemV9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtY29sb3I6ICN7JG5hdmJhci1saWdodC1icmFuZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1ob3Zlci1jb2xvcjogI3skbmF2YmFyLWxpZ2h0LWJyYW5kLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDogI3skbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLXBhZGRpbmcteTogI3skbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItcGFkZGluZy14OiAjeyRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1mb250LXNpemU6ICN7JG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZX07XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWljb24tYmc6ICN7ZXNjYXBlLXN2ZygkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZyl9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1ib3JkZXItY29sb3I6ICN7JG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXM6ICN7JG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1mb2N1cy13aWR0aDogI3skbmF2YmFyLXRvZ2dsZXItZm9jdXMtd2lkdGh9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci10cmFuc2l0aW9uOiAjeyRuYXZiYXItdG9nZ2xlci10cmFuc2l0aW9ufTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBuYXZiYXItY3NzLXZhcnNcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgLy8gYWxsb3cgdXMgdG8gZG8gdGhlIGxpbmUgYnJlYWsgZm9yIGNvbGxhcHNpbmcgY29udGVudFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IC8vIHNwYWNlIG91dCBicmFuZCBmcm9tIGxvZ29cbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fW5hdmJhci1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1uYXZiYXItcGFkZGluZy14KTtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoKTtcblxuICAvLyBCZWNhdXNlIGZsZXggcHJvcGVydGllcyBhcmVuJ3QgaW5oZXJpdGVkLCB3ZSBuZWVkIHRvIHJlZGVjbGFyZSB0aGVzZSBmaXJzdFxuICAvLyBmZXcgcHJvcGVydGllcyBzbyB0aGF0IGNvbnRlbnQgbmVzdGVkIHdpdGhpbiBiZWhhdmUgcHJvcGVybHkuXG4gIC8vIFRoZSBgZmxleC13cmFwYCBwcm9wZXJ0eSBpcyBpbmhlcml0ZWQgdG8gc2ltcGxpZnkgdGhlIGV4cGFuZGVkIG5hdmJhcnNcbiAgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBpbmhlcml0O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG5cbiAgPiAuY29udGFpbmVyLFxuICA+IC5jb250YWluZXItZmx1aWQge1xuICAgIEBleHRlbmQgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXM7XG4gIH1cblxuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICA+IC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRocyl9IHtcbiAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXM7XG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2YmFyIGJyYW5kXG4vL1xuLy8gVXNlZCBmb3IgYnJhbmQsIHByb2plY3QsIG9yIHNpdGUgbmFtZXMuXG5cbi5uYXZiYXItYnJhbmQge1xuICBwYWRkaW5nLXRvcDogdmFyKC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1wYWRkaW5nLXkpO1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1wYWRkaW5nLXkpO1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtbWFyZ2luLWVuZCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSkpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1jb2xvcik7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1ob3Zlci1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgbmF2XG4vL1xuLy8gQ3VzdG9tIG5hdmJhciBuYXZpZ2F0aW9uIChkb2Vzbid0IHJlcXVpcmUgYC5uYXZgLCBidXQgZG9lcyBtYWtlIHVzZSBvZiBgLm5hdi1saW5rYCkuXG5cbi5uYXZiYXItbmF2IHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdmJhci1uYXYtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstcGFkZGluZy14OiAwO1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1wYWRkaW5nLXk6ICN7JG5hdi1saW5rLXBhZGRpbmcteX07XG4gIEBpbmNsdWRlIHJmcygkbmF2LWxpbmstZm9udC1zaXplLCAtLSN7JHByZWZpeH1uYXYtbGluay1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1mb250LXdlaWdodDogI3skbmF2LWxpbmstZm9udC13ZWlnaHR9O1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1jb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1jb2xvcik7XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLWhvdmVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWhvdmVyLWNvbG9yKTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstZGlzYWJsZWQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItZGlzYWJsZWQtY29sb3IpO1xuICAvLyBzY3NzLWRvY3MtZW5kIG5hdmJhci1uYXYtY3NzLXZhcnNcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyAvLyBjYW5ub3QgdXNlIGBpbmhlcml0YCB0byBnZXQgdGhlIGAubmF2YmFyYHMgdmFsdWVcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIC5zaG93ID4gLm5hdi1saW5rLFxuICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1hY3RpdmUtY29sb3IpO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdGV4dFxuLy9cbi8vXG5cbi5uYXZiYXItdGV4dCB7XG4gIHBhZGRpbmctdG9wOiAkbmF2LWxpbmstcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJG5hdi1saW5rLXBhZGRpbmcteTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItY29sb3IpO1xuXG4gIGEsXG4gIGE6aG92ZXIsXG4gIGE6Zm9jdXMgIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1hY3RpdmUtY29sb3IpO1xuICB9XG59XG5cblxuLy8gUmVzcG9uc2l2ZSBuYXZiYXJcbi8vXG4vLyBDdXN0b20gc3R5bGVzIGZvciByZXNwb25zaXZlIGNvbGxhcHNpbmcgYW5kIHRvZ2dsaW5nIG9mIG5hdmJhciBjb250ZW50cy5cbi8vIFBvd2VyZWQgYnkgdGhlIGNvbGxhcHNlIEJvb3RzdHJhcCBKYXZhU2NyaXB0IHBsdWdpbi5cblxuLy8gV2hlbiBjb2xsYXBzZWQsIHByZXZlbnQgdGhlIHRvZ2dsZWFibGUgbmF2YmFyIGNvbnRlbnRzIGZyb20gYXBwZWFyaW5nIGluXG4vLyB0aGUgZGVmYXVsdCBmbGV4Ym94IHJvdyBvcmllbnRhdGlvbi4gUmVxdWlyZXMgdGhlIHVzZSBvZiBgZmxleC13cmFwOiB3cmFwYFxuLy8gb24gdGhlIGAubmF2YmFyYCBwYXJlbnQuXG4ubmF2YmFyLWNvbGxhcHNlIHtcbiAgZmxleC1iYXNpczogMTAwJTtcbiAgZmxleC1ncm93OiAxO1xuICAvLyBGb3IgYWx3YXlzIGV4cGFuZGVkIG9yIGV4dHJhIGZ1bGwgbmF2YmFycywgZW5zdXJlIGNvbnRlbnQgYWxpZ25zIGl0c2VsZlxuICAvLyBwcm9wZXJseSB2ZXJ0aWNhbGx5LiBDYW4gYmUgZWFzaWx5IG92ZXJyaWRkZW4gd2l0aCBmbGV4IHV0aWxpdGllcy5cbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLy8gQnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbmF2YmFyIHdoZW4gaW4gaXRzIGNvbGxhcHNlZCBzdGF0ZVxuLm5hdmJhci10b2dnbGVyIHtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLXBhZGRpbmcteCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItZm9udC1zaXplKSk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItYm9yZGVyLWNvbG9yKTsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbih2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItdHJhbnNpdGlvbikpO1xuXG4gICY6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIHZhcigtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1mb2N1cy13aWR0aCk7XG4gIH1cbn1cblxuLy8gS2VlcCBhcyBhIHNlcGFyYXRlIGVsZW1lbnQgc28gZm9sa3MgY2FuIGVhc2lseSBvdmVycmlkZSBpdCB3aXRoIGFub3RoZXIgaWNvblxuLy8gb3IgaW1hZ2UgZmlsZSBhcyBuZWVkZWQuXG4ubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEuNWVtO1xuICBoZWlnaHQ6IDEuNWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItaWNvbi1iZyk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xufVxuXG4ubmF2YmFyLW5hdi1zY3JvbGwge1xuICBtYXgtaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9c2Nyb2xsLWhlaWdodCwgNzV2aCk7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItZXhwYW5kLWxvb3Bcbi8vIEdlbmVyYXRlIHNlcmllcyBvZiBgLm5hdmJhci1leHBhbmQtKmAgcmVzcG9uc2l2ZSBjbGFzc2VzIGZvciBjb25maWd1cmluZ1xuLy8gd2hlcmUgeW91ciBuYXZiYXIgY29sbGFwc2VzLlxuLm5hdmJhci1leHBhbmQge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJG5leHQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL3NlbGVjdG9yLW5vLXVuaW9uLWNsYXNzLW5hbWVcbiAgICAmI3skaW5maXh9IHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5leHQpIHtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgICAgICAubmF2YmFyLW5hdiB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tI3skcHJlZml4fW5hdmJhci1uYXYtbGluay1wYWRkaW5nLXgpO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItY29sbGFwc2Uge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci10b2dnbGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLm9mZmNhbnZhcyB7XG4gICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICB6LWluZGV4OiBhdXRvO1xuICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihub25lKTtcbiAgICAgICAgICAvLyBzdHlsZWxpbnQtZW5hYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4gICAgICAgICAgLm9mZmNhbnZhcy1oZWFkZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAub2ZmY2FudmFzLWJvZHkge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBuYXZiYXItZXhwYW5kLWxvb3BcblxuLy8gTmF2YmFyIHRoZW1lc1xuLy9cbi8vIFN0eWxlcyBmb3Igc3dpdGNoaW5nIGJldHdlZW4gbmF2YmFycyB3aXRoIGxpZ2h0IG9yIGRhcmsgYmFja2dyb3VuZC5cblxuLm5hdmJhci1saWdodCB7XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImAubmF2YmFyLWxpZ2h0YFwiLCBcInY1LjIuMFwiLCBcInY2LjAuMFwiLCB0cnVlKTtcbn1cblxuLm5hdmJhci1kYXJrIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdmJhci1kYXJrLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW5hdmJhci1jb2xvcjogI3skbmF2YmFyLWRhcmstY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItaG92ZXItY29sb3I6ICN7JG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWRpc2FibGVkLWNvbG9yOiAjeyRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1hY3RpdmUtY29sb3I6ICN7JG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1jb2xvcjogI3skbmF2YmFyLWRhcmstYnJhbmQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtaG92ZXItY29sb3I6ICN7JG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAjeyRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWljb24tYmc6ICN7ZXNjYXBlLXN2ZygkbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnKX07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLWRhcmstY3NzLXZhcnNcbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmNhcmQge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgY2FyZC1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1jYXJkLXNwYWNlci15OiAjeyRjYXJkLXNwYWNlci15fTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1zcGFjZXIteDogI3skY2FyZC1zcGFjZXIteH07XG4gIC0tI3skcHJlZml4fWNhcmQtdGl0bGUtc3BhY2VyLXk6ICN7JGNhcmQtdGl0bGUtc3BhY2VyLXl9O1xuICAtLSN7JHByZWZpeH1jYXJkLWJvcmRlci13aWR0aDogI3skY2FyZC1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1jYXJkLWJvcmRlci1jb2xvcjogI3skY2FyZC1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1jYXJkLWJvcmRlci1yYWRpdXM6ICN7JGNhcmQtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWNhcmQtYm94LXNoYWRvdzogI3skY2FyZC1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzOiAjeyRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXk6ICN7JGNhcmQtY2FwLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteDogI3skY2FyZC1jYXAtcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1jYXAtYmc6ICN7JGNhcmQtY2FwLWJnfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1jYXAtY29sb3I6ICN7JGNhcmQtY2FwLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1oZWlnaHQ6ICN7JGNhcmQtaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1jb2xvcjogI3skY2FyZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWNhcmQtYmc6ICN7JGNhcmQtYmd9O1xuICAtLSN7JHByZWZpeH1jYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6ICN7JGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZ307XG4gIC0tI3skcHJlZml4fWNhcmQtZ3JvdXAtbWFyZ2luOiAjeyRjYXJkLWdyb3VwLW1hcmdpbn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgY2FyZC1jc3MtdmFyc1xuXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLXdpZHRoOiAwOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjI3NDAjaXNzdWVjb21tZW50LTMwNTg2ODEwNlxuICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1jYXJkLWhlaWdodCk7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtYmcpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IGJvcmRlci1ib3g7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1jYXJkLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3gtc2hhZG93KSk7XG5cbiAgPiBociB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgPiAubGlzdC1ncm91cCB7XG4gICAgYm9yZGVyLXRvcDogaW5oZXJpdDtcbiAgICBib3JkZXItYm90dG9tOiBpbmhlcml0O1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCAge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgICB9XG4gIH1cblxuICAvLyBEdWUgdG8gc3BlY2lmaWNpdHkgb2YgdGhlIGFib3ZlIHNlbGVjdG9yIChgLmNhcmQgPiAubGlzdC1ncm91cGApLCB3ZSBtdXN0XG4gIC8vIHVzZSBhIGNoaWxkIHNlbGVjdG9yIGhlcmUgdG8gcHJldmVudCBkb3VibGUgYm9yZGVycy5cbiAgPiAuY2FyZC1oZWFkZXIgKyAubGlzdC1ncm91cCxcbiAgPiAubGlzdC1ncm91cCArIC5jYXJkLWZvb3RlciB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxufVxuXG4uY2FyZC1ib2R5IHtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIGZvciBkZWNrcyBhbmQgZ3JvdXBzIHNvIHRoYXQgY2FyZCBibG9ja3MgdGFrZSB1cFxuICAvLyBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlLCBlbnN1cmluZyBmb290ZXJzIGFyZSBhbGlnbmVkIHRvIHRoZSBib3R0b20uXG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1zcGFjZXIteSkgdmFyKC0tI3skcHJlZml4fWNhcmQtc3BhY2VyLXgpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtY29sb3IpO1xufVxuXG4uY2FyZC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLSN7JHByZWZpeH1jYXJkLXRpdGxlLXNwYWNlci15KTtcbn1cblxuLmNhcmQtc3VidGl0bGUge1xuICBtYXJnaW4tdG9wOiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1jYXJkLXRpdGxlLXNwYWNlci15KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLXRleHQ6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLWxpbmsge1xuICAmOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgfVxuXG4gICsgLmNhcmQtbGluayB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLSN7JHByZWZpeH1jYXJkLXNwYWNlci14KTtcbiAgfVxufVxuXG4vL1xuLy8gT3B0aW9uYWwgdGV4dHVhbCBjYXBzXG4vL1xuXG4uY2FyZC1oZWFkZXIge1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy14KTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVtb3ZlcyB0aGUgZGVmYXVsdCBtYXJnaW4tYm90dG9tIG9mIDxoTj5cbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1iZyk7XG4gIGJvcmRlci1ib3R0b206IHZhcigtLSN7JHByZWZpeH1jYXJkLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLWNvbG9yKTtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpIHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpIDAgMCk7XG4gIH1cbn1cblxuLmNhcmQtZm9vdGVyIHtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtYmcpO1xuICBib3JkZXItdG9wOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1jYXJkLWJvcmRlci1jb2xvcik7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgMCB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gSGVhZGVyIG5hdnNcbi8vXG5cbi5jYXJkLWhlYWRlci10YWJzIHtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXkpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBib3JkZXItYm90dG9tOiAwO1xuXG4gIC5uYXYtbGluay5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLWJnKTtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1iZyk7XG4gIH1cbn1cblxuLmNhcmQtaGVhZGVyLXBpbGxzIHtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxufVxuXG4vLyBDYXJkIGltYWdlXG4uY2FyZC1pbWctb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy10b3AsXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgd2lkdGg6IDEwMCU7IC8vIFJlcXVpcmVkIGJlY2F1c2Ugd2UgdXNlIGZsZXhib3ggYW5kIHRoaXMgaW5oZXJlbnRseSBhcHBsaWVzIGFsaWduLXNlbGY6IHN0cmV0Y2hcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLXRvcCB7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbn1cblxuXG4vL1xuLy8gQ2FyZCBncm91cHNcbi8vXG5cbi5jYXJkLWdyb3VwIHtcbiAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAvLyB0byBkaXNwbGF5IHByb3Blcmx5LlxuICA+IC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ncm91cC1tYXJnaW4pO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXG4gICAgLy8gdG8gZGlzcGxheSBwcm9wZXJseS5cbiAgICA+IC5jYXJkIHtcbiAgICAgIC8vIEZsZXhidWdzICM0OiBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzI2ZsZXhidWctNFxuICAgICAgZmxleDogMSAwIDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgKyAuY2FyZCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgIH1cblxuICAgICAgLy8gSGFuZGxlIHJvdW5kZWQgY29ybmVyc1xuICAgICAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWVuZC1yYWRpdXMoMCk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhcmQtaW1nLWJvdHRvbSxcbiAgICAgICAgICAuY2FyZC1mb290ZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXN0YXJ0LXJhZGl1cygwKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5hY2NvcmRpb24ge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgYWNjb3JkaW9uLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1jb2xvcjogI3skYWNjb3JkaW9uLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJnOiAjeyRhY2NvcmRpb24tYmd9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tdHJhbnNpdGlvbjogI3skYWNjb3JkaW9uLXRyYW5zaXRpb259O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLWNvbG9yOiAjeyRhY2NvcmRpb24tYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci13aWR0aDogI3skYWNjb3JkaW9uLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItcmFkaXVzOiAjeyRhY2NvcmRpb24tYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1pbm5lci1ib3JkZXItcmFkaXVzOiAjeyRhY2NvcmRpb24taW5uZXItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tcGFkZGluZy14OiAjeyRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tcGFkZGluZy15OiAjeyRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tY29sb3I6ICN7JGFjY29yZGlvbi1idXR0b24tY29sb3J9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWJnOiAjeyRhY2NvcmRpb24tYnV0dG9uLWJnfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uOiAje2VzY2FwZS1zdmcoJGFjY29yZGlvbi1idXR0b24taWNvbil9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24td2lkdGg6ICN7JGFjY29yZGlvbi1pY29uLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXRyYW5zZm9ybTogI3skYWNjb3JkaW9uLWljb24tdHJhbnNmb3JtfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXRyYW5zaXRpb246ICN7JGFjY29yZGlvbi1pY29uLXRyYW5zaXRpb259O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWFjdGl2ZS1pY29uOiAje2VzY2FwZS1zdmcoJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWljb24pfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1mb2N1cy1ib3JkZXItY29sb3I6ICN7JGFjY29yZGlvbi1idXR0b24tZm9jdXMtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1mb2N1cy1ib3gtc2hhZG93OiAjeyRhY2NvcmRpb24tYnV0dG9uLWZvY3VzLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9keS1wYWRkaW5nLXg6ICN7JGFjY29yZGlvbi1ib2R5LXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1ib2R5LXBhZGRpbmcteTogI3skYWNjb3JkaW9uLWJvZHktcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWFjdGl2ZS1jb2xvcjogI3skYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYWN0aXZlLWJnOiAjeyRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1iZ307XG4gIC8vIHNjc3MtZG9jcy1lbmQgYWNjb3JkaW9uLWNzcy12YXJzXG59XG5cbi5hY2NvcmRpb24tYnV0dG9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1wYWRkaW5nLXgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1iYXNlKTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gUmVzZXQgYnV0dG9uIHN0eWxlXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWJnKTtcbiAgYm9yZGVyOiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICBvdmVyZmxvdy1hbmNob3I6IG5vbmU7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24odmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi10cmFuc2l0aW9uKSk7XG5cbiAgJjpub3QoLmNvbGxhcHNlZCkge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWFjdGl2ZS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1hY3RpdmUtYmcpO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXdpZHRoKSkgMCB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci1jb2xvcik7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1hY3RpdmUtaWNvbik7XG4gICAgICB0cmFuc2Zvcm06IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24tdHJhbnNmb3JtKTtcbiAgICB9XG4gIH1cblxuICAvLyBBY2NvcmRpb24gaWNvblxuICAmOjphZnRlciB7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24td2lkdGgpO1xuICAgIGhlaWdodDogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbi13aWR0aCk7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbi13aWR0aCk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbih2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXRyYW5zaXRpb24pKTtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIHotaW5kZXg6IDI7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tZm9jdXMtYm9yZGVyLWNvbG9yKTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICB9XG59XG5cbi5hY2NvcmRpb24taGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmFjY29yZGlvbi1pdGVtIHtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJnKTtcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItY29sb3IpO1xuXG4gICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItcmFkaXVzKSk7XG5cbiAgICAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgICB9XG4gIH1cblxuICAmOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cblxuICAvLyBPbmx5IHNldCBhIGJvcmRlci1yYWRpdXMgb24gdGhlIGxhc3QgaXRlbSBpZiB0aGUgYWNjb3JkaW9uIGlzIGNvbGxhcHNlZFxuICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXModmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItcmFkaXVzKSk7XG5cbiAgICAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICAmLmNvbGxhcHNlZCB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24taW5uZXItYm9yZGVyLXJhZGl1cykpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5hY2NvcmRpb24tY29sbGFwc2Uge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXModmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItcmFkaXVzKSk7XG4gICAgfVxuICB9XG59XG5cbi5hY2NvcmRpb24tYm9keSB7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9keS1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9keS1wYWRkaW5nLXgpO1xufVxuXG5cbi8vIEZsdXNoIGFjY29yZGlvbiBpdGVtc1xuLy9cbi8vIFJlbW92ZSBib3JkZXJzIGFuZCBib3JkZXItcmFkaXVzIHRvIGtlZXAgYWNjb3JkaW9uIGl0ZW1zIGVkZ2UtdG8tZWRnZS5cblxuLmFjY29yZGlvbi1mbHVzaCB7XG4gIC5hY2NvcmRpb24tY29sbGFwc2Uge1xuICAgIGJvcmRlci13aWR0aDogMDtcbiAgfVxuXG4gIC5hY2NvcmRpb24taXRlbSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHsgYm9yZGVyLXRvcDogMDsgfVxuICAgICY6bGFzdC1jaGlsZCB7IGJvcmRlci1ib3R0b206IDA7IH1cblxuICAgIC5hY2NvcmRpb24tYnV0dG9uIHtcbiAgICAgICYsXG4gICAgICAmLmNvbGxhcHNlZCB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuYnJlYWRjcnVtYiB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBicmVhZGNydW1iLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItcGFkZGluZy14OiAjeyRicmVhZGNydW1iLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItcGFkZGluZy15OiAjeyRicmVhZGNydW1iLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTogI3skYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tfTtcbiAgQGluY2x1ZGUgcmZzKCRicmVhZGNydW1iLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLWJnOiAjeyRicmVhZGNydW1iLWJnfTtcbiAgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzOiAjeyRicmVhZGNydW1iLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICN7JGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXg6ICN7JGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLWl0ZW0tYWN0aXZlLWNvbG9yOiAjeyRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgYnJlYWRjcnVtYi1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1wYWRkaW5nLXgpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWZvbnQtc2l6ZSkpO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1iZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItYm9yZGVyLXJhZGl1cykpO1xufVxuXG4uYnJlYWRjcnVtYi1pdGVtIHtcbiAgLy8gVGhlIHNlcGFyYXRvciBiZXR3ZWVuIGJyZWFkY3J1bWJzIChieSBkZWZhdWx0LCBhIGZvcndhcmQtc2xhc2g6IFwiL1wiKVxuICArIC5icmVhZGNydW1iLWl0ZW0ge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXgpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyAvLyBTdXBwcmVzcyBpbmxpbmUgc3BhY2luZ3MgYW5kIHVuZGVybGluaW5nIG9mIHRoZSBzZXBhcmF0b3JcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWl0ZW0tcGFkZGluZy14KTtcbiAgICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yKTtcbiAgICAgIGNvbnRlbnQ6IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWRpdmlkZXIsIGVzY2FwZS1zdmcoJGJyZWFkY3J1bWItZGl2aWRlcikpICN7XCIvKiBydGw6XCJ9IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWRpdmlkZXIsIGVzY2FwZS1zdmcoJGJyZWFkY3J1bWItZGl2aWRlci1mbGlwcGVkKSkgI3tcIiovXCJ9O1xuICAgIH1cbiAgfVxuXG4gICYuYWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItaXRlbS1hY3RpdmUtY29sb3IpO1xuICB9XG59XG4iLCIucGFnaW5hdGlvbiB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBwYWdpbmF0aW9uLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tcGFkZGluZy14OiAjeyRwYWdpbmF0aW9uLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tcGFkZGluZy15OiAjeyRwYWdpbmF0aW9uLXBhZGRpbmcteX07XG4gIEBpbmNsdWRlIHJmcygkcGFnaW5hdGlvbi1mb250LXNpemUsIC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1jb2xvcjogI3skcGFnaW5hdGlvbi1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tYmc6ICN7JHBhZ2luYXRpb24tYmd9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci13aWR0aDogI3skcGFnaW5hdGlvbi1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1jb2xvcjogI3skcGFnaW5hdGlvbi1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1yYWRpdXM6ICN7JHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24taG92ZXItY29sb3I6ICN7JHBhZ2luYXRpb24taG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWhvdmVyLWJnOiAjeyRwYWdpbmF0aW9uLWhvdmVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I6ICN7JHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb2N1cy1jb2xvcjogI3skcGFnaW5hdGlvbi1mb2N1cy1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9jdXMtYmc6ICN7JHBhZ2luYXRpb24tZm9jdXMtYmd9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c6ICN7JHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tYWN0aXZlLWJnOiAjeyRwYWdpbmF0aW9uLWFjdGl2ZS1iZ307XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjogI3skcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogI3skcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICN7JHBhZ2luYXRpb24tZGlzYWJsZWQtYmd9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjogI3skcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHBhZ2luYXRpb24tY3NzLXZhcnNcblxuICBkaXNwbGF5OiBmbGV4O1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XG59XG5cbi5wYWdlLWxpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLXBhZGRpbmcteCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb250LXNpemUpKTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWNvbG9yKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1iZyk7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRwYWdpbmF0aW9uLXRyYW5zaXRpb24pO1xuXG4gICY6aG92ZXIge1xuICAgIHotaW5kZXg6IDI7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWhvdmVyLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ob3Zlci1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3IpO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgei1pbmRleDogMztcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9jdXMtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvY3VzLWJnKTtcbiAgICBvdXRsaW5lOiAkcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lO1xuICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJi5hY3RpdmUsXG4gIC5hY3RpdmUgPiAmIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1hY3RpdmUtY29sb3IpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWFjdGl2ZS1iZykpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcik7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAuZGlzYWJsZWQgPiAmIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3IpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWRpc2FibGVkLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcik7XG4gIH1cbn1cblxuLnBhZ2UtaXRlbSB7XG4gICY6bm90KDpmaXJzdC1jaGlsZCkgLnBhZ2UtbGluayB7XG4gICAgbWFyZ2luLWxlZnQ6ICRwYWdpbmF0aW9uLW1hcmdpbi1zdGFydDtcbiAgfVxuXG4gIEBpZiAkcGFnaW5hdGlvbi1tYXJnaW4tc3RhcnQgPT0gKCRwYWdpbmF0aW9uLWJvcmRlci13aWR0aCAqIC0xKSB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXN0YXJ0LXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzKSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItZW5kLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzKSk7XG4gICAgICB9XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAvLyBBZGQgYm9yZGVyLXJhZGl1cyB0byBhbGwgcGFnZUxpbmtzIGluIGNhc2UgdGhleSBoYXZlIGxlZnQgbWFyZ2luXG4gICAgLnBhZ2UtbGluayB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMpKTtcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gU2l6aW5nXG4vL1xuXG4ucGFnaW5hdGlvbi1sZyB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFnaW5hdGlvbi1wYWRkaW5nLXktbGcsICRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZywgJGZvbnQtc2l6ZS1sZywgJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5wYWdpbmF0aW9uLXNtIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbSwgJHBhZ2luYXRpb24tcGFkZGluZy14LXNtLCAkZm9udC1zaXplLXNtLCAkcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLXNtKTtcbn1cbiIsIi8vIFBhZ2luYXRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBhZ2luYXRpb24tbWl4aW5cbkBtaXhpbiBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGJvcmRlci1yYWRpdXMpIHtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1wYWRkaW5nLXg6ICN7JHBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tcGFkZGluZy15OiAjeyRwYWRkaW5nLXl9O1xuICBAaW5jbHVkZSByZnMoJGZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1yYWRpdXM6ICN7JGJvcmRlci1yYWRpdXN9O1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBwYWdpbmF0aW9uLW1peGluXG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gUmVxdWlyZXMgb25lIG9mIHRoZSBjb250ZXh0dWFsLCBjb2xvciBtb2RpZmllciBjbGFzc2VzIGZvciBgY29sb3JgIGFuZFxuLy8gYGJhY2tncm91bmQtY29sb3JgLlxuXG4uYmFkZ2Uge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgYmFkZ2UtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9YmFkZ2UtcGFkZGluZy14OiAjeyRiYWRnZS1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1iYWRnZS1wYWRkaW5nLXk6ICN7JGJhZGdlLXBhZGRpbmcteX07XG4gIEBpbmNsdWRlIHJmcygkYmFkZ2UtZm9udC1zaXplLCAtLSN7JHByZWZpeH1iYWRnZS1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1iYWRnZS1mb250LXdlaWdodDogI3skYmFkZ2UtZm9udC13ZWlnaHR9O1xuICAtLSN7JHByZWZpeH1iYWRnZS1jb2xvcjogI3skYmFkZ2UtY29sb3J9O1xuICAtLSN7JHByZWZpeH1iYWRnZS1ib3JkZXItcmFkaXVzOiAjeyRiYWRnZS1ib3JkZXItcmFkaXVzfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBiYWRnZS1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWJhZGdlLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWJhZGdlLXBhZGRpbmcteCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9YmFkZ2UtZm9udC1zaXplKSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9YmFkZ2UtZm9udC13ZWlnaHQpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1iYWRnZS1jb2xvcik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1iYWRnZS1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCk7XG5cbiAgLy8gRW1wdHkgYmFkZ2VzIGNvbGxhcHNlIGF1dG9tYXRpY2FsbHlcbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vLyBRdWljayBmaXggZm9yIGJhZGdlcyBpbiBidXR0b25zXG4uYnRuIC5iYWRnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMXB4O1xufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYWxlcnQge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgYWxlcnQtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9YWxlcnQtYmc6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1hbGVydC1wYWRkaW5nLXg6ICN7JGFsZXJ0LXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWFsZXJ0LXBhZGRpbmcteTogI3skYWxlcnQtcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9YWxlcnQtbWFyZ2luLWJvdHRvbTogI3skYWxlcnQtbWFyZ2luLWJvdHRvbX07XG4gIC0tI3skcHJlZml4fWFsZXJ0LWNvbG9yOiBpbmhlcml0O1xuICAtLSN7JHByZWZpeH1hbGVydC1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1hbGVydC1ib3JkZXI6ICN7JGFsZXJ0LWJvcmRlci13aWR0aH0gc29saWQgdmFyKC0tI3skcHJlZml4fWFsZXJ0LWJvcmRlci1jb2xvcik7XG4gIC0tI3skcHJlZml4fWFsZXJ0LWJvcmRlci1yYWRpdXM6ICN7JGFsZXJ0LWJvcmRlci1yYWRpdXN9O1xuICAvLyBzY3NzLWRvY3MtZW5kIGFsZXJ0LWNzcy12YXJzXG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtcGFkZGluZy14KTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fWFsZXJ0LW1hcmdpbi1ib3R0b20pO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWFsZXJ0LWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWFsZXJ0LWJnKTtcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtYm9yZGVyKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9YWxlcnQtYm9yZGVyLXJhZGl1cykpO1xufVxuXG4vLyBIZWFkaW5ncyBmb3IgbGFyZ2VyIGFsZXJ0c1xuLmFsZXJ0LWhlYWRpbmcge1xuICAvLyBTcGVjaWZpZWQgdG8gcHJldmVudCBjb25mbGljdHMgb2YgY2hhbmdpbmcgJGhlYWRpbmdzLWNvbG9yXG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4vLyBQcm92aWRlIGNsYXNzIGZvciBsaW5rcyB0aGF0IG1hdGNoIGFsZXJ0c1xuLmFsZXJ0LWxpbmsge1xuICBmb250LXdlaWdodDogJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ7XG59XG5cblxuLy8gRGlzbWlzc2libGUgYWxlcnRzXG4vL1xuLy8gRXhwYW5kIHRoZSByaWdodCBwYWRkaW5nIGFuZCBhY2NvdW50IGZvciB0aGUgY2xvc2UgYnV0dG9uJ3MgcG9zaXRpb25pbmcuXG5cbi5hbGVydC1kaXNtaXNzaWJsZSB7XG4gIHBhZGRpbmctcmlnaHQ6ICRhbGVydC1kaXNtaXNzaWJsZS1wYWRkaW5nLXI7XG5cbiAgLy8gQWRqdXN0IGNsb3NlIGxpbmsgcG9zaXRpb25cbiAgLmJ0bi1jbG9zZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiAkc3RyZXRjaGVkLWxpbmstei1pbmRleCArIDE7XG4gICAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmcteSAqIDEuMjUgJGFsZXJ0LXBhZGRpbmcteDtcbiAgfVxufVxuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBhbGVydC1tb2RpZmllcnNcbi8vIEdlbmVyYXRlIGNvbnRleHR1YWwgbW9kaWZpZXIgY2xhc3NlcyBmb3IgY29sb3JpemluZyB0aGUgYWxlcnQuXG5cbkBlYWNoICRzdGF0ZSwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAkYWxlcnQtYmFja2dyb3VuZDogc2hpZnQtY29sb3IoJHZhbHVlLCAkYWxlcnQtYmctc2NhbGUpO1xuICAkYWxlcnQtYm9yZGVyOiBzaGlmdC1jb2xvcigkdmFsdWUsICRhbGVydC1ib3JkZXItc2NhbGUpO1xuICAkYWxlcnQtY29sb3I6IHNoaWZ0LWNvbG9yKCR2YWx1ZSwgJGFsZXJ0LWNvbG9yLXNjYWxlKTtcblxuICBAaWYgKGNvbnRyYXN0LXJhdGlvKCRhbGVydC1iYWNrZ3JvdW5kLCAkYWxlcnQtY29sb3IpIDwgJG1pbi1jb250cmFzdC1yYXRpbykge1xuICAgICRhbGVydC1jb2xvcjogbWl4KCR2YWx1ZSwgY29sb3ItY29udHJhc3QoJGFsZXJ0LWJhY2tncm91bmQpLCBhYnMoJGFsZXJ0LWNvbG9yLXNjYWxlKSk7XG4gIH1cbiAgLmFsZXJ0LSN7JHN0YXRlfSB7XG4gICAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCgkYWxlcnQtYmFja2dyb3VuZCwgJGFsZXJ0LWJvcmRlciwgJGFsZXJ0LWNvbG9yKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBhbGVydC1tb2RpZmllcnNcbiIsIi8vIHNjc3MtZG9jcy1zdGFydCBhbGVydC12YXJpYW50LW1peGluXG5AbWl4aW4gYWxlcnQtdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJGNvbG9yKSB7XG4gIC0tI3skcHJlZml4fWFsZXJ0LWNvbG9yOiAjeyRjb2xvcn07XG4gIC0tI3skcHJlZml4fWFsZXJ0LWJnOiAjeyRiYWNrZ3JvdW5kfTtcbiAgLS0jeyRwcmVmaXh9YWxlcnQtYm9yZGVyLWNvbG9yOiAjeyRib3JkZXJ9O1xuXG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tI3skcHJlZml4fWdyYWRpZW50KTtcbiAgfVxuXG4gIC5hbGVydC1saW5rIHtcbiAgICBjb2xvcjogc2hhZGUtY29sb3IoJGNvbG9yLCAyMCUpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGFsZXJ0LXZhcmlhbnQtbWl4aW5cbiIsIi8vIERpc2FibGUgYW5pbWF0aW9uIGlmIHRyYW5zaXRpb25zIGFyZSBkaXNhYmxlZFxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcHJvZ3Jlc3Mta2V5ZnJhbWVzXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIEBrZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICAgIDAlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiAkcHJvZ3Jlc3MtaGVpZ2h0OyB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgcHJvZ3Jlc3Mta2V5ZnJhbWVzXG5cbi5wcm9ncmVzcyB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBwcm9ncmVzcy1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1wcm9ncmVzcy1oZWlnaHQ6ICN7JHByb2dyZXNzLWhlaWdodH07XG4gIEBpbmNsdWRlIHJmcygkcHJvZ3Jlc3MtZm9udC1zaXplLCAtLSN7JHByZWZpeH1wcm9ncmVzcy1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1wcm9ncmVzcy1iZzogI3skcHJvZ3Jlc3MtYmd9O1xuICAtLSN7JHByZWZpeH1wcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAjeyRwcm9ncmVzcy1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYm94LXNoYWRvdzogI3skcHJvZ3Jlc3MtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fXByb2dyZXNzLWJhci1jb2xvcjogI3skcHJvZ3Jlc3MtYmFyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYmFyLWJnOiAjeyRwcm9ncmVzcy1iYXItYmd9O1xuICAtLSN7JHByZWZpeH1wcm9ncmVzcy1iYXItdHJhbnNpdGlvbjogI3skcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb259O1xuICAvLyBzY3NzLWRvY3MtZW5kIHByb2dyZXNzLWNzcy12YXJzXG5cbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtaGVpZ2h0KTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gZm9yY2Ugcm91bmRlZCBjb3JuZXJzIGJ5IGNyb3BwaW5nIGl0XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtZm9udC1zaXplKSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1iZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYm94LXNoYWRvdykpO1xufVxuXG4ucHJvZ3Jlc3MtYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYmFyLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYmFyLWJnKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbih2YXIoLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb24pKTtcbn1cblxuLnByb2dyZXNzLWJhci1zdHJpcGVkIHtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtc3RyaXBlZCgpO1xuICBiYWNrZ3JvdW5kLXNpemU6IHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1oZWlnaHQpIHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1oZWlnaHQpO1xufVxuXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIC5wcm9ncmVzcy1iYXItYW5pbWF0ZWQge1xuICAgIGFuaW1hdGlvbjogJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nIHByb2dyZXNzLWJhci1zdHJpcGVzO1xuXG4gICAgQGlmICRlbmFibGUtcmVkdWNlZC1tb3Rpb24ge1xuICAgICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEVhc2lseSB1c2FibGUgb24gPHVsPiwgPG9sPiwgb3IgPGRpdj4uXG5cbi5saXN0LWdyb3VwIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IGxpc3QtZ3JvdXAtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1jb2xvcjogI3skbGlzdC1ncm91cC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYmc6ICN7JGxpc3QtZ3JvdXAtYmd9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci1jb2xvcjogI3skbGlzdC1ncm91cC1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci13aWR0aDogI3skbGlzdC1ncm91cC1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICN7JGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg6ICN7JGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15OiAjeyRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24tY29sb3I6ICN7JGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6ICN7JGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24taG92ZXItYmc6ICN7JGxpc3QtZ3JvdXAtaG92ZXItYmd9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6ICN7JGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogI3skbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogI3skbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICN7JGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmd9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogI3skbGlzdC1ncm91cC1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1iZzogI3skbGlzdC1ncm91cC1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I6ICN7JGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbGlzdC1ncm91cC1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgLy8gTm8gbmVlZCB0byBzZXQgbGlzdC1zdHlsZTogbm9uZTsgc2luY2UgLmxpc3QtZ3JvdXAtaXRlbSBpcyBibG9jayBsZXZlbFxuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIHJlc2V0IHBhZGRpbmcgYmVjYXVzZSB1bCBhbmQgb2xcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKSk7XG59XG5cbi5saXN0LWdyb3VwLW51bWJlcmVkIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBjb3VudGVyLXJlc2V0OiBzZWN0aW9uO1xuXG4gID4gLmxpc3QtZ3JvdXAtaXRlbTo6YmVmb3JlIHtcbiAgICAvLyBJbmNyZW1lbnRzIG9ubHkgdGhpcyBpbnN0YW5jZSBvZiB0aGUgc2VjdGlvbiBjb3VudGVyXG4gICAgY29udGVudDogY291bnRlcnMoc2VjdGlvbiwgXCIuXCIpIFwiLiBcIjtcbiAgICBjb3VudGVyLWluY3JlbWVudDogc2VjdGlvbjtcbiAgfVxufVxuXG4vLyBJbnRlcmFjdGl2ZSBsaXN0IGl0ZW1zXG4vL1xuLy8gVXNlIGFuY2hvciBvciBidXR0b24gZWxlbWVudHMgaW5zdGVhZCBvZiBgbGlgcyBvciBgZGl2YHMgdG8gY3JlYXRlIGludGVyYWN0aXZlXG4vLyBsaXN0IGl0ZW1zLiBJbmNsdWRlcyBhbiBleHRyYSBgLmFjdGl2ZWAgbW9kaWZpZXIgY2xhc3MgZm9yIHNlbGVjdGVkIGl0ZW1zLlxuXG4ubGlzdC1ncm91cC1pdGVtLWFjdGlvbiB7XG4gIHdpZHRoOiAxMDAlOyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgYmVjb21lIDEwMCUgYnkgZGVmYXVsdCB0aG91Z2gpXG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24tY29sb3IpO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgaW5oZXJpdClcblxuICAvLyBIb3ZlciBzdGF0ZVxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICB6LWluZGV4OiAxOyAvLyBQbGFjZSBob3Zlci9mb2N1cyBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1iZyk7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmcpO1xuICB9XG59XG5cbi8vIEluZGl2aWR1YWwgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBvbiBgbGlgcyBvciBgZGl2YHMgd2l0aGluIHRoZSBgLmxpc3QtZ3JvdXBgIHBhcmVudC5cblxuLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1jb2xvcik7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYmcpO1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yKTtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyhpbmhlcml0KTtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoaW5oZXJpdCk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3IpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWRpc2FibGVkLWJnKTtcbiAgfVxuXG4gIC8vIEluY2x1ZGUgYm90aCBoZXJlIGZvciBgPGE+YHMgYW5kIGA8YnV0dG9uPmBzXG4gICYuYWN0aXZlIHtcbiAgICB6LWluZGV4OiAyOyAvLyBQbGFjZSBhY3RpdmUgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3RpdmUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL3NlbGVjdG9yLW5vLXJlZHVuZGFudC1uZXN0aW5nLXNlbGVjdG9yXG4gICYgKyAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuXG4gICAgJi5hY3RpdmUge1xuICAgICAgbWFyZ2luLXRvcDogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgICAgYm9yZGVyLXRvcC13aWR0aDogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gSG9yaXpvbnRhbFxuLy9cbi8vIENoYW5nZSB0aGUgbGF5b3V0IG9mIGxpc3QgZ3JvdXAgaXRlbXMgZnJvbSB2ZXJ0aWNhbCAoZGVmYXVsdCkgdG8gaG9yaXpvbnRhbC5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCN7JGluZml4fSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICA+IC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgICAgICAmOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tc3RhcnQtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpKTtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLWVuZC1yYWRpdXMoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtZW5kLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKSk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1zdGFydC1yYWRpdXMoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICsgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKTtcbiAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcblxuICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBGbHVzaCBsaXN0IGl0ZW1zXG4vL1xuLy8gUmVtb3ZlIGJvcmRlcnMgYW5kIGJvcmRlci1yYWRpdXMgdG8ga2VlcCBsaXN0IGdyb3VwIGl0ZW1zIGVkZ2UtdG8tZWRnZS4gTW9zdFxuLy8gdXNlZnVsIHdpdGhpbiBvdGhlciBjb21wb25lbnRzIChlLmcuLCBjYXJkcykuXG5cbi5saXN0LWdyb3VwLWZsdXNoIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcblxuICA+IC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci13aWR0aDogMCAwIHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci13aWR0aCk7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbGlzdC1ncm91cC1tb2RpZmllcnNcbi8vIExpc3QgZ3JvdXAgY29udGV4dHVhbCB2YXJpYW50c1xuLy9cbi8vIEFkZCBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0ZXh0IGFuZCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGluZGl2aWR1YWwgaXRlbXMuXG4vLyBPcmdhbml6YXRpb25hbGx5LCB0aGlzIG11c3QgY29tZSBhZnRlciB0aGUgYDpob3ZlcmAgc3RhdGVzLlxuXG5AZWFjaCAkc3RhdGUsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgJGxpc3QtZ3JvdXAtdmFyaWFudC1iZzogc2hpZnQtY29sb3IoJHZhbHVlLCAkbGlzdC1ncm91cC1pdGVtLWJnLXNjYWxlKTtcbiAgJGxpc3QtZ3JvdXAtdmFyaWFudC1jb2xvcjogc2hpZnQtY29sb3IoJHZhbHVlLCAkbGlzdC1ncm91cC1pdGVtLWNvbG9yLXNjYWxlKTtcbiAgQGlmIChjb250cmFzdC1yYXRpbygkbGlzdC1ncm91cC12YXJpYW50LWJnLCAkbGlzdC1ncm91cC12YXJpYW50LWNvbG9yKSA8ICRtaW4tY29udHJhc3QtcmF0aW8pIHtcbiAgICAkbGlzdC1ncm91cC12YXJpYW50LWNvbG9yOiBtaXgoJHZhbHVlLCBjb2xvci1jb250cmFzdCgkbGlzdC1ncm91cC12YXJpYW50LWJnKSwgYWJzKCRsaXN0LWdyb3VwLWl0ZW0tY29sb3Itc2NhbGUpKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRzdGF0ZSwgJGxpc3QtZ3JvdXAtdmFyaWFudC1iZywgJGxpc3QtZ3JvdXAtdmFyaWFudC1jb2xvcik7XG59XG4vLyBzY3NzLWRvY3MtZW5kIGxpc3QtZ3JvdXAtbW9kaWZpZXJzXG4iLCIvLyBMaXN0IEdyb3Vwc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbGlzdC1ncm91cC1taXhpblxuQG1peGluIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQsICRjb2xvcikge1xuICAubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcblxuICAgICYubGlzdC1ncm91cC1pdGVtLWFjdGlvbiB7XG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHNoYWRlLWNvbG9yKCRiYWNrZ3JvdW5kLCAxMCUpO1xuICAgICAgfVxuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGxpc3QtZ3JvdXAtbWl4aW5cbiIsIi8vIFRyYW5zcGFyZW50IGJhY2tncm91bmQgYW5kIGJvcmRlciBwcm9wZXJ0aWVzIGluY2x1ZGVkIGZvciBidXR0b24gdmVyc2lvbi5cbi8vIGlPUyByZXF1aXJlcyB0aGUgYnV0dG9uIGVsZW1lbnQgaW5zdGVhZCBvZiBhbiBhbmNob3IgdGFnLlxuLy8gSWYgeW91IHdhbnQgdGhlIGFuY2hvciB2ZXJzaW9uLCBpdCByZXF1aXJlcyBgaHJlZj1cIiNcImAuXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI1NhZmFyaV9Nb2JpbGVcblxuLmJ0bi1jbG9zZSB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICB3aWR0aDogJGJ0bi1jbG9zZS13aWR0aDtcbiAgaGVpZ2h0OiAkYnRuLWNsb3NlLWhlaWdodDtcbiAgcGFkZGluZzogJGJ0bi1jbG9zZS1wYWRkaW5nLXkgJGJ0bi1jbG9zZS1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkYnRuLWNsb3NlLWNvbG9yO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCBlc2NhcGUtc3ZnKCRidG4tY2xvc2UtYmcpIGNlbnRlciAvICRidG4tY2xvc2Utd2lkdGggYXV0byBuby1yZXBlYXQ7IC8vIGluY2x1ZGUgdHJhbnNwYXJlbnQgZm9yIGJ1dHRvbiBlbGVtZW50c1xuICBib3JkZXI6IDA7IC8vIGZvciBidXR0b24gZWxlbWVudHNcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygpO1xuICBvcGFjaXR5OiAkYnRuLWNsb3NlLW9wYWNpdHk7XG5cbiAgLy8gT3ZlcnJpZGUgPGE+J3MgaG92ZXIgc3R5bGVcbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRidG4tY2xvc2UtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG9wYWNpdHk6ICRidG4tY2xvc2UtaG92ZXItb3BhY2l0eTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogJGJ0bi1jbG9zZS1mb2N1cy1zaGFkb3c7XG4gICAgb3BhY2l0eTogJGJ0bi1jbG9zZS1mb2N1cy1vcGFjaXR5O1xuICB9XG5cbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgb3BhY2l0eTogJGJ0bi1jbG9zZS1kaXNhYmxlZC1vcGFjaXR5O1xuICB9XG59XG5cbi5idG4tY2xvc2Utd2hpdGUge1xuICBmaWx0ZXI6ICRidG4tY2xvc2Utd2hpdGUtZmlsdGVyO1xufVxuIiwiLnRvYXN0IHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHRvYXN0LWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXRvYXN0LXppbmRleDogI3skemluZGV4LXRvYXN0fTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtcGFkZGluZy14OiAjeyR0b2FzdC1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH10b2FzdC1wYWRkaW5nLXk6ICN7JHRvYXN0LXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fXRvYXN0LXNwYWNpbmc6ICN7JHRvYXN0LXNwYWNpbmd9O1xuICAtLSN7JHByZWZpeH10b2FzdC1tYXgtd2lkdGg6ICN7JHRvYXN0LW1heC13aWR0aH07XG4gIEBpbmNsdWRlIHJmcygkdG9hc3QtZm9udC1zaXplLCAtLSN7JHByZWZpeH10b2FzdC1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH10b2FzdC1jb2xvcjogI3skdG9hc3QtY29sb3J9O1xuICAtLSN7JHByZWZpeH10b2FzdC1iZzogI3skdG9hc3QtYmFja2dyb3VuZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci13aWR0aDogI3skdG9hc3QtYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLWNvbG9yOiAjeyR0b2FzdC1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH10b2FzdC1ib3JkZXItcmFkaXVzOiAjeyR0b2FzdC1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtYm94LXNoYWRvdzogI3skdG9hc3QtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fXRvYXN0LWhlYWRlci1jb2xvcjogI3skdG9hc3QtaGVhZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtaGVhZGVyLWJnOiAjeyR0b2FzdC1oZWFkZXItYmFja2dyb3VuZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRvYXN0LWhlYWRlci1ib3JkZXItY29sb3I6ICN7JHRvYXN0LWhlYWRlci1ib3JkZXItY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHRvYXN0LWNzcy12YXJzXG5cbiAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH10b2FzdC1tYXgtd2lkdGgpO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9dG9hc3QtZm9udC1zaXplKSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtY29sb3IpO1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRvYXN0LWJnKTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLWNvbG9yKTtcbiAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fXRvYXN0LWJveC1zaGFkb3cpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH10b2FzdC1ib3JkZXItcmFkaXVzKSk7XG5cbiAgJi5zaG93aW5nIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgJjpub3QoLnNob3cpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi50b2FzdC1jb250YWluZXIge1xuICAtLSN7JHByZWZpeH10b2FzdC16aW5kZXg6ICN7JHppbmRleC10b2FzdH07XG5cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtemluZGV4KTtcbiAgd2lkdGg6IG1heC1jb250ZW50O1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gID4gOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLSN7JHByZWZpeH10b2FzdC1zcGFjaW5nKTtcbiAgfVxufVxuXG4udG9hc3QtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fXRvYXN0LXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fXRvYXN0LXBhZGRpbmcteCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtaGVhZGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRvYXN0LWhlYWRlci1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlci1ib3R0b206IHZhcigtLSN7JHByZWZpeH10b2FzdC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH10b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoY2FsYyh2YXIoLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLXJhZGl1cykgLSB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLXdpZHRoKSkpO1xuXG4gIC5idG4tY2xvc2Uge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtcGFkZGluZy14KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLSN7JHByZWZpeH10b2FzdC1wYWRkaW5nLXgpO1xuICB9XG59XG5cbi50b2FzdC1ib2R5IHtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fXRvYXN0LXBhZGRpbmcteCk7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4vLyAubW9kYWwtb3BlbiAgICAgIC0gYm9keSBjbGFzcyBmb3Iga2lsbGluZyB0aGUgc2Nyb2xsXG4vLyAubW9kYWwgICAgICAgICAgIC0gY29udGFpbmVyIHRvIHNjcm9sbCB3aXRoaW5cbi8vIC5tb2RhbC1kaWFsb2cgICAgLSBwb3NpdGlvbmluZyBzaGVsbCBmb3IgdGhlIGFjdHVhbCBtb2RhbFxuLy8gLm1vZGFsLWNvbnRlbnQgICAtIGFjdHVhbCBtb2RhbCB3LyBiZyBhbmQgY29ybmVycyBhbmQgc3R1ZmZcblxuXG4vLyBDb250YWluZXIgdGhhdCB0aGUgbW9kYWwgc2Nyb2xscyB3aXRoaW5cbi5tb2RhbCB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBtb2RhbC1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1tb2RhbC16aW5kZXg6ICN7JHppbmRleC1tb2RhbH07XG4gIC0tI3skcHJlZml4fW1vZGFsLXdpZHRoOiAjeyRtb2RhbC1tZH07XG4gIC0tI3skcHJlZml4fW1vZGFsLXBhZGRpbmc6ICN7JG1vZGFsLWlubmVyLXBhZGRpbmd9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1tYXJnaW46ICN7JG1vZGFsLWRpYWxvZy1tYXJnaW59O1xuICAtLSN7JHByZWZpeH1tb2RhbC1jb2xvcjogI3skbW9kYWwtY29udGVudC1jb2xvcn07XG4gIC0tI3skcHJlZml4fW1vZGFsLWJnOiAjeyRtb2RhbC1jb250ZW50LWJnfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtYm9yZGVyLWNvbG9yOiAjeyRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW1vZGFsLWJvcmRlci13aWR0aDogI3skbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1ib3JkZXItcmFkaXVzOiAjeyRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1ib3gtc2hhZG93OiAjeyRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHN9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1pbm5lci1ib3JkZXItcmFkaXVzOiAjeyRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZy14OiAjeyRtb2RhbC1oZWFkZXItcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcteTogI3skbW9kYWwtaGVhZGVyLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nOiAjeyRtb2RhbC1oZWFkZXItcGFkZGluZ307IC8vIFRvZG8gaW4gdjY6IFNwbGl0IHRoaXMgcGFkZGluZyBpbnRvIHggYW5kIHlcbiAgLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogI3skbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGg6ICN7JG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1tb2RhbC10aXRsZS1saW5lLWhlaWdodDogI3skbW9kYWwtdGl0bGUtbGluZS1oZWlnaHR9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItZ2FwOiAjeyRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW59O1xuICAtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItYmc6ICN7JG1vZGFsLWZvb3Rlci1iZ307XG4gIC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICN7JG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoOiAjeyRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRofTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBtb2RhbC1jc3MtdmFyc1xuXG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtemluZGV4KTtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICAvLyBQcmV2ZW50IENocm9tZSBvbiBXaW5kb3dzIGZyb20gYWRkaW5nIGEgZm9jdXMgb3V0bGluZS4gRm9yIGRldGFpbHMsIHNlZVxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMDk1MS5cbiAgb3V0bGluZTogMDtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvbid0IHVzZSBgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO2AgZHVlIHRvIGFcbiAgLy8gZ25hcmx5IGlPUyBTYWZhcmkgYnVnOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU4MzQyXG4gIC8vIFNlZSBhbHNvIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTc2OTVcbn1cblxuLy8gU2hlbGwgZGl2IHRvIHBvc2l0aW9uIHRoZSBtb2RhbCB3aXRoIGJvdHRvbSBwYWRkaW5nXG4ubW9kYWwtZGlhbG9nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtbWFyZ2luKTtcbiAgLy8gYWxsb3cgY2xpY2tzIHRvIHBhc3MgdGhyb3VnaCBmb3IgY3VzdG9tIGNsaWNrIGhhbmRsaW5nIHRvIGNsb3NlIG1vZGFsXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gIC8vIFdoZW4gZmFkaW5nIGluIHRoZSBtb2RhbCwgYW5pbWF0ZSBpdCB0byBzbGlkZSBkb3duXG4gIC5tb2RhbC5mYWRlICYge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJG1vZGFsLXRyYW5zaXRpb24pO1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLWZhZGUtdHJhbnNmb3JtO1xuICB9XG4gIC5tb2RhbC5zaG93ICYge1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLXNob3ctdHJhbnNmb3JtO1xuICB9XG5cbiAgLy8gV2hlbiB0cnlpbmcgdG8gY2xvc2UsIGFuaW1hdGUgZm9jdXMgdG8gc2NhbGVcbiAgLm1vZGFsLm1vZGFsLXN0YXRpYyAmIHtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1zY2FsZS10cmFuc2Zvcm07XG4gIH1cbn1cblxuLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtbWFyZ2luKSAqIDIpO1xuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAubW9kYWwtYm9keSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxufVxuXG4ubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogY2FsYygxMDAlIC0gdmFyKC0tI3skcHJlZml4fW1vZGFsLW1hcmdpbikgKiAyKTtcbn1cblxuLy8gQWN0dWFsIG1vZGFsXG4ubW9kYWwtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2lkdGg6IDEwMCU7IC8vIEVuc3VyZSBgLm1vZGFsLWNvbnRlbnRgIGV4dGVuZHMgdGhlIGZ1bGwgd2lkdGggb2YgdGhlIHBhcmVudCBgLm1vZGFsLWRpYWxvZ2BcbiAgLy8gY291bnRlcmFjdCB0aGUgcG9pbnRlci1ldmVudHM6IG5vbmU7IGluIHRoZSAubW9kYWwtZGlhbG9nXG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtY29sb3IpO1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fW1vZGFsLWJnKTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtYm9yZGVyLXJhZGl1cykpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KHZhcigtLSN7JHByZWZpeH1tb2RhbC1ib3gtc2hhZG93KSk7XG4gIC8vIFJlbW92ZSBmb2N1cyBvdXRsaW5lIGZyb20gb3BlbmVkIG1vZGFsXG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIE1vZGFsIGJhY2tncm91bmRcbi5tb2RhbC1iYWNrZHJvcCB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBtb2RhbC1iYWNrZHJvcC1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1iYWNrZHJvcC16aW5kZXg6ICN7JHppbmRleC1tb2RhbC1iYWNrZHJvcH07XG4gIC0tI3skcHJlZml4fWJhY2tkcm9wLWJnOiAjeyRtb2RhbC1iYWNrZHJvcC1iZ307XG4gIC0tI3skcHJlZml4fWJhY2tkcm9wLW9wYWNpdHk6ICN7JG1vZGFsLWJhY2tkcm9wLW9wYWNpdHl9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG1vZGFsLWJhY2tkcm9wLWNzcy12YXJzXG5cbiAgQGluY2x1ZGUgb3ZlcmxheS1iYWNrZHJvcCh2YXIoLS0jeyRwcmVmaXh9YmFja2Ryb3AtemluZGV4KSwgdmFyKC0tI3skcHJlZml4fWJhY2tkcm9wLWJnKSwgdmFyKC0tI3skcHJlZml4fWJhY2tkcm9wLW9wYWNpdHkpKTtcbn1cblxuLy8gTW9kYWwgaGVhZGVyXG4vLyBUb3Agc2VjdGlvbiBvZiB0aGUgbW9kYWwgdy8gdGl0bGUgYW5kIGRpc21pc3Ncbi5tb2RhbC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXNocmluazogMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBQdXQgbW9kYWwgaGVhZGVyIGVsZW1lbnRzICh0aXRsZSBhbmQgZGlzbWlzcykgb24gb3Bwb3NpdGUgZW5kc1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcpO1xuICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xuXG4gIC5idG4tY2xvc2Uge1xuICAgIHBhZGRpbmc6IGNhbGModmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXkpICogLjUpIGNhbGModmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXgpICogLjUpO1xuICAgIG1hcmdpbjogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcteSkpIGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXgpKSBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZy15KSkgYXV0bztcbiAgfVxufVxuXG4vLyBUaXRsZSB0ZXh0IHdpdGhpbiBoZWFkZXJcbi5tb2RhbC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtdGl0bGUtbGluZS1oZWlnaHQpO1xufVxuXG4vLyBNb2RhbCBib2R5XG4vLyBXaGVyZSBhbGwgbW9kYWwgY29udGVudCByZXNpZGVzIChzaWJsaW5nIG9mIC5tb2RhbC1oZWFkZXIgYW5kIC5tb2RhbC1mb290ZXIpXG4ubW9kYWwtYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIHNvIHRoYXQgdGhlIGJvZHkgdGFrZSB1cCBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlXG4gIC8vIHdoZW4gdGhlcmUgc2hvdWxkIGJlIGEgZml4ZWQgaGVpZ2h0IG9uIGAubW9kYWwtZGlhbG9nYC5cbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1tb2RhbC1wYWRkaW5nKTtcbn1cblxuLy8gRm9vdGVyIChmb3IgYWN0aW9ucylcbi5tb2RhbC1mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXNocmluazogMDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyB2ZXJ0aWNhbGx5IGNlbnRlclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyAvLyBSaWdodCBhbGlnbiBidXR0b25zIHdpdGggZmxleCBwcm9wZXJ0eSBiZWNhdXNlIHRleHQtYWxpZ24gZG9lc24ndCB3b3JrIG9uIGZsZXggaXRlbXNcbiAgcGFkZGluZzogY2FsYyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtcGFkZGluZykgLSB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWdhcCkgKiAuNSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItYmcpO1xuICBib3JkZXItdG9wOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xuXG4gIC8vIFBsYWNlIG1hcmdpbiBiZXR3ZWVuIGZvb3RlciBlbGVtZW50c1xuICAvLyBUaGlzIHNvbHV0aW9uIGlzIGZhciBmcm9tIGlkZWFsIGJlY2F1c2Ugb2YgdGhlIHVuaXZlcnNhbCBzZWxlY3RvciB1c2FnZSxcbiAgLy8gYnV0IGlzIG5lZWRlZCB0byBmaXggaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDgwMFxuICA+ICoge1xuICAgIG1hcmdpbjogY2FsYyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWdhcCkgKiAuNSk7IC8vIFRvZG8gaW4gdjY6IHJlcGxhY2Ugd2l0aCBnYXAgb24gcGFyZW50IGNsYXNzXG4gIH1cbn1cblxuLy8gU2NhbGUgdXAgdGhlIG1vZGFsXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gIC5tb2RhbCB7XG4gICAgLS0jeyRwcmVmaXh9bW9kYWwtbWFyZ2luOiAjeyRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXB9O1xuICAgIC0tI3skcHJlZml4fW1vZGFsLWJveC1zaGFkb3c6ICN7JG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cH07XG4gIH1cblxuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIG1heC13aWR0aDogdmFyKC0tI3skcHJlZml4fW1vZGFsLXdpZHRoKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICAubW9kYWwtc20ge1xuICAgIC0tI3skcHJlZml4fW1vZGFsLXdpZHRoOiAjeyRtb2RhbC1zbX07XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAubW9kYWwtbGcsXG4gIC5tb2RhbC14bCB7XG4gICAgLS0jeyRwcmVmaXh9bW9kYWwtd2lkdGg6ICN7JG1vZGFsLWxnfTtcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gIC5tb2RhbC14bCB7XG4gICAgLS0jeyRwcmVmaXh9bW9kYWwtd2lkdGg6ICN7JG1vZGFsLXhsfTtcbiAgfVxufVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbW9kYWwtZnVsbHNjcmVlbi1sb29wXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgJHBvc3RmaXg6IGlmKCRpbmZpeCAhPSBcIlwiLCAkaW5maXggKyBcIi1kb3duXCIsIFwiXCIpO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgIC5tb2RhbC1mdWxsc2NyZWVuI3skcG9zdGZpeH0ge1xuICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgfVxuXG4gICAgICAubW9kYWwtaGVhZGVyLFxuICAgICAgLm1vZGFsLWZvb3RlciB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgICB9XG5cbiAgICAgIC5tb2RhbC1ib2R5IHtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgbW9kYWwtZnVsbHNjcmVlbi1sb29wXG4iLCIvLyBTaGFyZWQgYmV0d2VlbiBtb2RhbHMgYW5kIG9mZmNhbnZhc2VzXG5AbWl4aW4gb3ZlcmxheS1iYWNrZHJvcCgkemluZGV4LCAkYmFja2Ryb3AtYmcsICRiYWNrZHJvcC1vcGFjaXR5KSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4O1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogMTAwdmg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZHJvcC1iZztcblxuICAvLyBGYWRlIGZvciBiYWNrZHJvcFxuICAmLmZhZGUgeyBvcGFjaXR5OiAwOyB9XG4gICYuc2hvdyB7IG9wYWNpdHk6ICRiYWNrZHJvcC1vcGFjaXR5OyB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4udG9vbHRpcCB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCB0b29sdGlwLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXRvb2x0aXAtemluZGV4OiAjeyR6aW5kZXgtdG9vbHRpcH07XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtbWF4LXdpZHRoOiAjeyR0b29sdGlwLW1heC13aWR0aH07XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtcGFkZGluZy14OiAjeyR0b29sdGlwLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtcGFkZGluZy15OiAjeyR0b29sdGlwLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtbWFyZ2luOiAjeyR0b29sdGlwLW1hcmdpbn07XG4gIEBpbmNsdWRlIHJmcygkdG9vbHRpcC1mb250LXNpemUsIC0tI3skcHJlZml4fXRvb2x0aXAtZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9dG9vbHRpcC1jb2xvcjogI3skdG9vbHRpcC1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtYmc6ICN7JHRvb2x0aXAtYmd9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLWJvcmRlci1yYWRpdXM6ICN7JHRvb2x0aXAtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtb3BhY2l0eTogI3skdG9vbHRpcC1vcGFjaXR5fTtcbiAgLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aDogI3skdG9vbHRpcC1hcnJvdy13aWR0aH07XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0OiAjeyR0b29sdGlwLWFycm93LWhlaWdodH07XG4gIC8vIHNjc3MtZG9jcy1lbmQgdG9vbHRpcC1jc3MtdmFyc1xuXG4gIHotaW5kZXg6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLXppbmRleCk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpO1xuICBtYXJnaW46IHZhcigtLSN7JHByZWZpeH10b29sdGlwLW1hcmdpbik7XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImAkdG9vbHRpcC1tYXJnaW5gXCIsIFwidjVcIiwgXCJ2NS54XCIsIHRydWUpO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH10b29sdGlwLWZvbnQtc2l6ZSkpO1xuICAvLyBBbGxvdyBicmVha2luZyB2ZXJ5IGxvbmcgd29yZHMgc28gdGhleSBkb24ndCBvdmVyZmxvdyB0aGUgdG9vbHRpcCdzIGJvdW5kc1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIG9wYWNpdHk6IDA7XG5cbiAgJi5zaG93IHsgb3BhY2l0eTogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtb3BhY2l0eSk7IH1cblxuICAudG9vbHRpcC1hcnJvdyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LXdpZHRoKTtcbiAgICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC10b3AgLnRvb2x0aXAtYXJyb3cge1xuICBib3R0b206IDA7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICB0b3A6IC0xcHg7XG4gICAgYm9yZGVyLXdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpIGNhbGModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpICogLjUpIDA7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYmcpO1xuICB9XG59XG5cbi8qIHJ0bDpiZWdpbjppZ25vcmUgKi9cbi5icy10b29sdGlwLWVuZCAudG9vbHRpcC1hcnJvdyB7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpO1xuICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LXdpZHRoKTtcblxuICAmOjpiZWZvcmUge1xuICAgIHJpZ2h0OiAtMXB4O1xuICAgIGJvcmRlci13aWR0aDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCkgKiAuNSkgdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KSBjYWxjKHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LXdpZHRoKSAqIC41KSAwOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIGJvcmRlci1yaWdodC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYmcpO1xuICB9XG59XG5cbi8qIHJ0bDplbmQ6aWdub3JlICovXG5cbi5icy10b29sdGlwLWJvdHRvbSAudG9vbHRpcC1hcnJvdyB7XG4gIHRvcDogMDtcblxuICAmOjpiZWZvcmUge1xuICAgIGJvdHRvbTogLTFweDtcbiAgICBib3JkZXItd2lkdGg6IDAgY2FsYyh2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCkgKiAuNSkgdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1iZyk7XG4gIH1cbn1cblxuLyogcnRsOmJlZ2luOmlnbm9yZSAqL1xuLmJzLXRvb2x0aXAtc3RhcnQgLnRvb2x0aXAtYXJyb3cge1xuICByaWdodDogMDtcbiAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCk7XG4gIGhlaWdodDogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgbGVmdDogLTFweDtcbiAgICBib3JkZXItd2lkdGg6IGNhbGModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpICogLjUpIDAgY2FsYyh2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCkgKiAuNSkgdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYmcpO1xuICB9XG59XG5cbi8qIHJ0bDplbmQ6aWdub3JlICovXG5cbi5icy10b29sdGlwLWF1dG8ge1xuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJ0b3BcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtdG9wO1xuICB9XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWVuZDtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJib3R0b21cIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtYm90dG9tO1xuICB9XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtc3RhcnQ7XG4gIH1cbn1cblxuLy8gV3JhcHBlciBmb3IgdGhlIHRvb2x0aXAgY29udGVudFxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLW1heC13aWR0aCk7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtcGFkZGluZy14KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1iZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYm9yZGVyLXJhZGl1cykpO1xufVxuIiwiQG1peGluIHJlc2V0LXRleHQge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkbyBOT1QgcmVzZXQgZm9udC1zaXplIG9yIG92ZXJmbG93LXdyYXAgLyB3b3JkLXdyYXAuXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRmFsbGJhY2sgZm9yIHdoZXJlIGBzdGFydGAgaXMgbm90IHN1cHBvcnRlZFxuICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gIGxpbmUtYnJlYWs6IGF1dG87XG59XG4iLCIucG9wb3ZlciB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBwb3BvdmVyLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXBvcG92ZXItemluZGV4OiAjeyR6aW5kZXgtcG9wb3Zlcn07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItbWF4LXdpZHRoOiAjeyRwb3BvdmVyLW1heC13aWR0aH07XG4gIEBpbmNsdWRlIHJmcygkcG9wb3Zlci1mb250LXNpemUsIC0tI3skcHJlZml4fXBvcG92ZXItZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1iZzogI3skcG9wb3Zlci1iZ307XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoOiAjeyRwb3BvdmVyLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLWNvbG9yOiAjeyRwb3BvdmVyLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXJhZGl1czogI3skcG9wb3Zlci1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzOiAjeyRwb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWJveC1zaGFkb3c6ICN7JHBvcG92ZXItYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDogI3skcG9wb3Zlci1oZWFkZXItcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItcGFkZGluZy15OiAjeyRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXl9O1xuICBAaW5jbHVkZSByZnMoJHBvcG92ZXItaGVhZGVyLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItY29sb3I6ICN7JHBvcG92ZXItaGVhZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItYmc6ICN7JHBvcG92ZXItaGVhZGVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1ib2R5LXBhZGRpbmcteDogI3skcG9wb3Zlci1ib2R5LXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYm9keS1wYWRkaW5nLXk6ICN7JHBvcG92ZXItYm9keS1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWJvZHktY29sb3I6ICN7JHBvcG92ZXItYm9keS1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGg6ICN7JHBvcG92ZXItYXJyb3ctd2lkdGh9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodDogI3skcG9wb3Zlci1hcnJvdy1oZWlnaHR9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWJvcmRlcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBwb3BvdmVyLWNzcy12YXJzXG5cbiAgei1pbmRleDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItemluZGV4KTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItbWF4LXdpZHRoKTtcbiAgLy8gT3VyIHBhcmVudCBlbGVtZW50IGNhbiBiZSBhcmJpdHJhcnkgc2luY2UgdG9vbHRpcHMgYXJlIGJ5IGRlZmF1bHQgaW5zZXJ0ZWQgYXMgYSBzaWJsaW5nIG9mIHRoZWlyIHRhcmdldCBlbGVtZW50LlxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxuICBAaW5jbHVkZSByZXNldC10ZXh0KCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1mb250LXNpemUpKTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHBvcG92ZXIncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3gtc2hhZG93KSk7XG5cbiAgLnBvcG92ZXItYXJyb3cge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCk7XG4gICAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci10b3Age1xuICA+IC5wb3BvdmVyLWFycm93IHtcbiAgICBib3R0b206IGNhbGMoLTEgKiAodmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KSkgLSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBib3JkZXItd2lkdGg6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCkgY2FsYyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCkgKiAuNSkgMDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctYm9yZGVyKTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBib3R0b206IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCk7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1iZyk7XG4gICAgfVxuICB9XG59XG5cbi8qIHJ0bDpiZWdpbjppZ25vcmUgKi9cbi5icy1wb3BvdmVyLWVuZCB7XG4gID4gLnBvcG92ZXItYXJyb3cge1xuICAgIGxlZnQ6IGNhbGMoLTEgKiAodmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KSkgLSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICB3aWR0aDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KTtcbiAgICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKTtcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBib3JkZXItd2lkdGg6IGNhbGModmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpICogLjUpIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCkgY2FsYyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCkgKiAuNSkgMDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctYm9yZGVyKTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBsZWZ0OiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1iZyk7XG4gICAgfVxuICB9XG59XG5cbi8qIHJ0bDplbmQ6aWdub3JlICovXG5cbi5icy1wb3BvdmVyLWJvdHRvbSB7XG4gID4gLnBvcG92ZXItYXJyb3cge1xuICAgIHRvcDogY2FsYygtMSAqICh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpKSAtIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvcmRlci13aWR0aDogMCBjYWxjKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKSAqIC41KSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1ib3JkZXIpO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHRvcDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKTtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJnKTtcbiAgICB9XG4gIH1cblxuICAvLyBUaGlzIHdpbGwgcmVtb3ZlIHRoZSBwb3BvdmVyLWhlYWRlcidzIGJvcmRlciBqdXN0IGJlbG93IHRoZSBhcnJvd1xuICAucG9wb3Zlci1oZWFkZXI6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKTtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItYmcpO1xuICB9XG59XG5cbi8qIHJ0bDpiZWdpbjppZ25vcmUgKi9cbi5icy1wb3BvdmVyLXN0YXJ0IHtcbiAgPiAucG9wb3Zlci1hcnJvdyB7XG4gICAgcmlnaHQ6IGNhbGMoLTEgKiAodmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KSkgLSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICB3aWR0aDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KTtcbiAgICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKTtcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBib3JkZXItd2lkdGg6IGNhbGModmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpICogLjUpIDAgY2FsYyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCkgKiAuNSkgdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctYm9yZGVyKTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICByaWdodDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKTtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1iZyk7XG4gICAgfVxuICB9XG59XG5cbi8qIHJ0bDplbmQ6aWdub3JlICovXG5cbi5icy1wb3BvdmVyLWF1dG8ge1xuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJ0b3BcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItdG9wO1xuICB9XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWVuZDtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJib3R0b21cIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItYm90dG9tO1xuICB9XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItc3RhcnQ7XG4gIH1cbn1cblxuLy8gT2Zmc2V0IHRoZSBwb3BvdmVyIHRvIGFjY291bnQgZm9yIHRoZSBwb3BvdmVyIGFycm93XG4ucG9wb3Zlci1oZWFkZXIge1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItcGFkZGluZy14KTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVzZXQgdGhlIGRlZmF1bHQgZnJvbSBSZWJvb3RcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1mb250LXNpemUpKTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1iZyk7XG4gIGJvcmRlci1ib3R0b206IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fXBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1cykpO1xuXG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnBvcG92ZXItYm9keSB7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvZHktcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib2R5LXBhZGRpbmcteCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib2R5LWNvbG9yKTtcbn1cbiIsIi8vIE5vdGVzIG9uIHRoZSBjbGFzc2VzOlxuLy9cbi8vIDEuIC5jYXJvdXNlbC5wb2ludGVyLWV2ZW50IHNob3VsZCBpZGVhbGx5IGJlIHBhbi15ICh0byBhbGxvdyBmb3IgdXNlcnMgdG8gc2Nyb2xsIHZlcnRpY2FsbHkpXG4vLyAgICBldmVuIHdoZW4gdGhlaXIgc2Nyb2xsIGFjdGlvbiBzdGFydGVkIG9uIGEgY2Fyb3VzZWwsIGJ1dCBmb3IgY29tcGF0aWJpbGl0eSAod2l0aCBGaXJlZm94KVxuLy8gICAgd2UncmUgcHJldmVudGluZyBhbGwgYWN0aW9ucyBpbnN0ZWFkXG4vLyAyLiBUaGUgLmNhcm91c2VsLWl0ZW0tc3RhcnQgYW5kIC5jYXJvdXNlbC1pdGVtLWVuZCBpcyB1c2VkIHRvIGluZGljYXRlIHdoZXJlXG4vLyAgICB0aGUgYWN0aXZlIHNsaWRlIGlzIGhlYWRpbmcuXG4vLyAzLiAuYWN0aXZlLmNhcm91c2VsLWl0ZW0gaXMgdGhlIGN1cnJlbnQgc2xpZGUuXG4vLyA0LiAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tc3RhcnQgYW5kIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1lbmQgaXMgdGhlIGN1cnJlbnRcbi8vICAgIHNsaWRlIGluIGl0cyBpbi10cmFuc2l0aW9uIHN0YXRlLiBPbmx5IG9uZSBvZiB0aGVzZSBvY2N1cnMgYXQgYSB0aW1lLlxuLy8gNS4gLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLXN0YXJ0IGFuZCAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tZW5kXG4vLyAgICBpcyB0aGUgdXBjb21pbmcgc2xpZGUgaW4gdHJhbnNpdGlvbi5cblxuLmNhcm91c2VsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY2Fyb3VzZWwucG9pbnRlci1ldmVudCB7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG59XG5cbi5jYXJvdXNlbC1pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG59XG5cbi5jYXJvdXNlbC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBub25lO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtdHJhbnNpdGlvbik7XG59XG5cbi5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbi5jYXJvdXNlbC1pdGVtLW5leHQsXG4uY2Fyb3VzZWwtaXRlbS1wcmV2IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jYXJvdXNlbC1pdGVtLW5leHQ6bm90KC5jYXJvdXNlbC1pdGVtLXN0YXJ0KSxcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1lbmQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG59XG5cbi5jYXJvdXNlbC1pdGVtLXByZXY6bm90KC5jYXJvdXNlbC1pdGVtLWVuZCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tc3RhcnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xufVxuXG5cbi8vXG4vLyBBbHRlcm5hdGUgdHJhbnNpdGlvbnNcbi8vXG5cbi5jYXJvdXNlbC1mYWRlIHtcbiAgLmNhcm91c2VsLWl0ZW0ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAuY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4gIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1zdGFydCxcbiAgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLWVuZCB7XG4gICAgei1pbmRleDogMTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXN0YXJ0LFxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tZW5kIHtcbiAgICB6LWluZGV4OiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IDBzICRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBMZWZ0L3JpZ2h0IGNvbnRyb2xzIGZvciBuYXZcbi8vXG5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYsXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogMTtcbiAgLy8gVXNlIGZsZXggZm9yIGFsaWdubWVudCAoMS0zKVxuICBkaXNwbGF5OiBmbGV4OyAvLyAxLiBhbGxvdyBmbGV4IHN0eWxlc1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyAyLiB2ZXJ0aWNhbGx5IGNlbnRlciBjb250ZW50c1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgLy8gMy4gaG9yaXpvbnRhbGx5IGNlbnRlciBjb250ZW50c1xuICB3aWR0aDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIHBhZGRpbmc6IDA7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbik7XG5cbiAgLy8gSG92ZXIvZm9jdXMgc3RhdGVcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLXByZXYge1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBpZigkZW5hYmxlLWdyYWRpZW50cywgbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKCRibGFjaywgLjI1KSwgcmdiYSgkYmxhY2ssIC4wMDEpKSwgbnVsbCk7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgcmlnaHQ6IDA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGlmKCRlbmFibGUtZ3JhZGllbnRzLCBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCByZ2JhKCRibGFjaywgLjI1KSwgcmdiYSgkYmxhY2ssIC4wMDEpKSwgbnVsbCk7XG59XG5cbi8vIEljb25zIGZvciB3aXRoaW5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGhlaWdodDogJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbn1cblxuLyogcnRsOm9wdGlvbnM6IHtcbiAgXCJhdXRvUmVuYW1lXCI6IHRydWUsXG4gIFwic3RyaW5nTWFwXCI6WyB7XG4gICAgXCJuYW1lXCIgICAgOiBcInByZXYtbmV4dFwiLFxuICAgIFwic2VhcmNoXCIgIDogXCJwcmV2XCIsXG4gICAgXCJyZXBsYWNlXCIgOiBcIm5leHRcIlxuICB9IF1cbn0gKi9cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnKTtcbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnKTtcbn1cblxuLy8gT3B0aW9uYWwgaW5kaWNhdG9yIHBpcHMvY29udHJvbHNcbi8vXG4vLyBBZGQgYSBjb250YWluZXIgKHN1Y2ggYXMgYSBsaXN0KSB3aXRoIHRoZSBmb2xsb3dpbmcgY2xhc3MgYW5kIGFkZCBhbiBpdGVtIChpZGVhbGx5IGEgZm9jdXNhYmxlIGNvbnRyb2wsXG4vLyBsaWtlIGEgYnV0dG9uKSB3aXRoIGRhdGEtYnMtdGFyZ2V0IGZvciBlYWNoIHNsaWRlIHlvdXIgY2Fyb3VzZWwgaG9sZHMuXG5cbi5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMDtcbiAgLy8gVXNlIHRoZSAuY2Fyb3VzZWwtY29udHJvbCdzIHdpZHRoIGFzIG1hcmdpbiBzbyB3ZSBkb24ndCBvdmVybGF5IHRob3NlXG4gIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIG1hcmdpbi1sZWZ0OiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICBbZGF0YS1icy10YXJnZXRdIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogJGNhcm91c2VsLWluZGljYXRvci13aWR0aDtcbiAgICBoZWlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjtcbiAgICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTlweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc7XG4gICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICBib3JkZXI6IDA7XG4gICAgLy8gVXNlIHRyYW5zcGFyZW50IGJvcmRlcnMgdG8gaW5jcmVhc2UgdGhlIGhpdCBhcmVhIGJ5IDEwcHggb24gdG9wIGFuZCBib3R0b20uXG4gICAgYm9yZGVyLXRvcDogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgb3BhY2l0eTogJGNhcm91c2VsLWluZGljYXRvci1vcGFjaXR5O1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLWluZGljYXRvci10cmFuc2l0aW9uKTtcbiAgfVxuXG4gIC5hY3RpdmUge1xuICAgIG9wYWNpdHk6ICRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLW9wYWNpdHk7XG4gIH1cbn1cblxuXG4vLyBPcHRpb25hbCBjYXB0aW9uc1xuLy9cbi8vXG5cbi5jYXJvdXNlbC1jYXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkgKiAuNTtcbiAgYm90dG9tOiAkY2Fyb3VzZWwtY2FwdGlvbi1zcGFjZXI7XG4gIGxlZnQ6ICgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpICogLjU7XG4gIHBhZGRpbmctdG9wOiAkY2Fyb3VzZWwtY2FwdGlvbi1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkY2Fyb3VzZWwtY2FwdGlvbi1wYWRkaW5nLXk7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vLyBEYXJrIG1vZGUgY2Fyb3VzZWxcblxuLmNhcm91c2VsLWRhcmsge1xuICAuY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXG4gIC5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gICAgZmlsdGVyOiAkY2Fyb3VzZWwtZGFyay1jb250cm9sLWljb24tZmlsdGVyO1xuICB9XG5cbiAgLmNhcm91c2VsLWluZGljYXRvcnMgW2RhdGEtYnMtdGFyZ2V0XSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcm91c2VsLWRhcmstaW5kaWNhdG9yLWFjdGl2ZS1iZztcbiAgfVxuXG4gIC5jYXJvdXNlbC1jYXB0aW9uIHtcbiAgICBjb2xvcjogJGNhcm91c2VsLWRhcmstY2FwdGlvbi1jb2xvcjtcbiAgfVxufVxuIiwiLy8gc2Nzcy1kb2NzLXN0YXJ0IGNsZWFyZml4XG5AbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGNsZWFyZml4XG4iLCIvL1xuLy8gUm90YXRpbmcgYm9yZGVyXG4vL1xuXG4uc3Bpbm5lci1ncm93LFxuLnNwaW5uZXItYm9yZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogdmFyKC0tI3skcHJlZml4fXNwaW5uZXItd2lkdGgpO1xuICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1zcGlubmVyLWhlaWdodCk7XG4gIHZlcnRpY2FsLWFsaWduOiB2YXIoLS0jeyRwcmVmaXh9c3Bpbm5lci12ZXJ0aWNhbC1hbGlnbik7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBhbmltYXRpb246IHZhcigtLSN7JHByZWZpeH1zcGlubmVyLWFuaW1hdGlvbi1zcGVlZCkgbGluZWFyIGluZmluaXRlIHZhcigtLSN7JHByZWZpeH1zcGlubmVyLWFuaW1hdGlvbi1uYW1lKTtcbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwaW5uZXItYm9yZGVyLWtleWZyYW1lc1xuQGtleWZyYW1lcyBzcGlubmVyLWJvcmRlciB7XG4gIHRvIHsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKSAje1wiLyogcnRsOmlnbm9yZSAqL1wifTsgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBzcGlubmVyLWJvcmRlci1rZXlmcmFtZXNcblxuLnNwaW5uZXItYm9yZGVyIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwaW5uZXItYm9yZGVyLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXNwaW5uZXItd2lkdGg6ICN7JHNwaW5uZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWhlaWdodDogI3skc3Bpbm5lci1oZWlnaHR9O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLXZlcnRpY2FsLWFsaWduOiAjeyRzcGlubmVyLXZlcnRpY2FsLWFsaWdufTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1ib3JkZXItd2lkdGg6ICN7JHNwaW5uZXItYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tc3BlZWQ6ICN7JHNwaW5uZXItYW5pbWF0aW9uLXNwZWVkfTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tbmFtZTogc3Bpbm5lci1ib3JkZXI7XG4gIC8vIHNjc3MtZG9jcy1lbmQgc3Bpbm5lci1ib3JkZXItY3NzLXZhcnNcblxuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1zcGlubmVyLWJvcmRlci13aWR0aCkgc29saWQgY3VycmVudGNvbG9yO1xuICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uc3Bpbm5lci1ib3JkZXItc20ge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgc3Bpbm5lci1ib3JkZXItc20tY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci13aWR0aDogI3skc3Bpbm5lci13aWR0aC1zbX07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItaGVpZ2h0OiAjeyRzcGlubmVyLWhlaWdodC1zbX07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItYm9yZGVyLXdpZHRoOiAjeyRzcGlubmVyLWJvcmRlci13aWR0aC1zbX07XG4gIC8vIHNjc3MtZG9jcy1lbmQgc3Bpbm5lci1ib3JkZXItc20tY3NzLXZhcnNcbn1cblxuLy9cbi8vIEdyb3dpbmcgY2lyY2xlXG4vL1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc3Bpbm5lci1ncm93LWtleWZyYW1lc1xuQGtleWZyYW1lcyBzcGlubmVyLWdyb3cge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIHNwaW5uZXItZ3Jvdy1rZXlmcmFtZXNcblxuLnNwaW5uZXItZ3JvdyB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBzcGlubmVyLWdyb3ctY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci13aWR0aDogI3skc3Bpbm5lci13aWR0aH07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItaGVpZ2h0OiAjeyRzcGlubmVyLWhlaWdodH07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItdmVydGljYWwtYWxpZ246ICN7JHNwaW5uZXItdmVydGljYWwtYWxpZ259O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWFuaW1hdGlvbi1zcGVlZDogI3skc3Bpbm5lci1hbmltYXRpb24tc3BlZWR9O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWFuaW1hdGlvbi1uYW1lOiBzcGlubmVyLWdyb3c7XG4gIC8vIHNjc3MtZG9jcy1lbmQgc3Bpbm5lci1ncm93LWNzcy12YXJzXG5cbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudGNvbG9yO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc3Bpbm5lci1ncm93LXNtIHtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci13aWR0aDogI3skc3Bpbm5lci13aWR0aC1zbX07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItaGVpZ2h0OiAjeyRzcGlubmVyLWhlaWdodC1zbX07XG59XG5cbkBpZiAkZW5hYmxlLXJlZHVjZWQtbW90aW9uIHtcbiAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAuc3Bpbm5lci1ib3JkZXIsXG4gICAgLnNwaW5uZXItZ3JvdyB7XG4gICAgICAtLSN7JHByZWZpeH1zcGlubmVyLWFuaW1hdGlvbi1zcGVlZDogI3skc3Bpbm5lci1hbmltYXRpb24tc3BlZWQgKiAyfTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4lb2ZmY2FudmFzLWNzcy12YXJzIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG9mZmNhbnZhcy1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtemluZGV4OiAjeyR6aW5kZXgtb2ZmY2FudmFzfTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXdpZHRoOiAjeyRvZmZjYW52YXMtaG9yaXpvbnRhbC13aWR0aH07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1oZWlnaHQ6ICN7JG9mZmNhbnZhcy12ZXJ0aWNhbC1oZWlnaHR9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy14OiAjeyRvZmZjYW52YXMtcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteTogI3skb2ZmY2FudmFzLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1jb2xvcjogI3skb2ZmY2FudmFzLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJnOiAjeyRvZmZjYW52YXMtYmctY29sb3J9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLXdpZHRoOiAjeyRvZmZjYW52YXMtYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci1jb2xvcjogI3skb2ZmY2FudmFzLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3gtc2hhZG93OiAjeyRvZmZjYW52YXMtYm94LXNoYWRvd307XG4gIC8vIHNjc3MtZG9jcy1lbmQgb2ZmY2FudmFzLWNzcy12YXJzXG59XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgLm9mZmNhbnZhcyN7JGluZml4fSB7XG4gICAgQGV4dGVuZCAlb2ZmY2FudmFzLWNzcy12YXJzO1xuICB9XG59XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgLm9mZmNhbnZhcyN7JGluZml4fSB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuZXh0KSB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICBib3R0b206IDA7XG4gICAgICB6LWluZGV4OiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXppbmRleCk7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWNvbG9yKTtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYmcpO1xuICAgICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm94LXNoYWRvdykpO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbih0cmFuc2Zvcm0gJG9mZmNhbnZhcy10cmFuc2l0aW9uLWR1cmF0aW9uIGVhc2UtaW4tb3V0KTtcblxuICAgICAgJi5vZmZjYW52YXMtc3RhcnQge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXdpZHRoKTtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICAgICAgfVxuXG4gICAgICAmLm9mZmNhbnZhcy1lbmQge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB3aWR0aDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy13aWR0aCk7XG4gICAgICAgIGJvcmRlci1sZWZ0OiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gICAgICB9XG5cbiAgICAgICYub2ZmY2FudmFzLXRvcCB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGhlaWdodDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1oZWlnaHQpO1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICAgICAgfVxuXG4gICAgICAmLm9mZmNhbnZhcy1ib3R0b20ge1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWhlaWdodCk7XG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJvcmRlci10b3A6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci1jb2xvcik7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgICAgIH1cblxuICAgICAgJi5zaG93aW5nLFxuICAgICAgJi5zaG93Om5vdCguaGlkaW5nKSB7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJi5zaG93aW5nLFxuICAgICAgJi5oaWRpbmcsXG4gICAgICAmLnNob3cge1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiBub3QgKCRpbmZpeCA9PSBcIlwiKSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuZXh0KSB7XG4gICAgICAgIC0tI3skcHJlZml4fW9mZmNhbnZhcy1oZWlnaHQ6IGF1dG87XG4gICAgICAgIC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItd2lkdGg6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbiAgICAgICAgLm9mZmNhbnZhcy1oZWFkZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAub2ZmY2FudmFzLWJvZHkge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgb3ZlcmZsb3cteTogdmlzaWJsZTtcbiAgICAgICAgICAvLyBSZXNldCBgYmFja2dyb3VuZC1jb2xvcmAgaW4gY2FzZSBgLmJnLSpgIGNsYXNzZXMgYXJlIHVzZWQgaW4gb2ZmY2FudmFzXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ub2ZmY2FudmFzLWJhY2tkcm9wIHtcbiAgQGluY2x1ZGUgb3ZlcmxheS1iYWNrZHJvcCgkemluZGV4LW9mZmNhbnZhcy1iYWNrZHJvcCwgJG9mZmNhbnZhcy1iYWNrZHJvcC1iZywgJG9mZmNhbnZhcy1iYWNrZHJvcC1vcGFjaXR5KTtcbn1cblxuLm9mZmNhbnZhcy1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteCk7XG5cbiAgLmJ0bi1jbG9zZSB7XG4gICAgcGFkZGluZzogY2FsYyh2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteSkgKiAuNSkgY2FsYyh2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteCkgKiAuNSk7XG4gICAgbWFyZ2luLXRvcDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteSkpO1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteCkpO1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXkpKTtcbiAgfVxufVxuXG4ub2ZmY2FudmFzLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6ICRvZmZjYW52YXMtdGl0bGUtbGluZS1oZWlnaHQ7XG59XG5cbi5vZmZjYW52YXMtYm9keSB7XG4gIGZsZXgtZ3JvdzogMTtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy14KTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cbiIsIi5wbGFjZWhvbGRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLWhlaWdodDogMWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjdXJzb3I6IHdhaXQ7XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgb3BhY2l0eTogJHBsYWNlaG9sZGVyLW9wYWNpdHktbWF4O1xuXG4gICYuYnRuOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG5cbi8vIFNpemluZ1xuLnBsYWNlaG9sZGVyLXhzIHtcbiAgbWluLWhlaWdodDogLjZlbTtcbn1cblxuLnBsYWNlaG9sZGVyLXNtIHtcbiAgbWluLWhlaWdodDogLjhlbTtcbn1cblxuLnBsYWNlaG9sZGVyLWxnIHtcbiAgbWluLWhlaWdodDogMS4yZW07XG59XG5cbi8vIEFuaW1hdGlvblxuLnBsYWNlaG9sZGVyLWdsb3cge1xuICAucGxhY2Vob2xkZXIge1xuICAgIGFuaW1hdGlvbjogcGxhY2Vob2xkZXItZ2xvdyAycyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHBsYWNlaG9sZGVyLWdsb3cge1xuICA1MCUge1xuICAgIG9wYWNpdHk6ICRwbGFjZWhvbGRlci1vcGFjaXR5LW1pbjtcbiAgfVxufVxuXG4ucGxhY2Vob2xkZXItd2F2ZSB7XG4gIG1hc2staW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxMzBkZWcsICRibGFjayA1NSUsIHJnYmEoMCwgMCwgMCwgKDEgLSAkcGxhY2Vob2xkZXItb3BhY2l0eS1taW4pKSA3NSUsICRibGFjayA5NSUpO1xuICBtYXNrLXNpemU6IDIwMCUgMTAwJTtcbiAgYW5pbWF0aW9uOiBwbGFjZWhvbGRlci13YXZlIDJzIGxpbmVhciBpbmZpbml0ZTtcbn1cblxuQGtleWZyYW1lcyBwbGFjZWhvbGRlci13YXZlIHtcbiAgMTAwJSB7XG4gICAgbWFzay1wb3NpdGlvbjogLTIwMCUgMCU7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGZ1bmN0aW9uLW5hbWUtY2FzZVxuXG4vLyBBbGwtY2FwcyBgUkdCQSgpYCBmdW5jdGlvbiB1c2VkIGJlY2F1c2Ugb2YgdGhpcyBTYXNzIGJ1ZzogaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvbm9kZS1zYXNzL2lzc3Vlcy8yMjUxXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgJGNvbG9yLXJnYjogdG8tcmdiKCR2YWx1ZSk7XG4gIC50ZXh0LWJnLSN7JGNvbG9yfSB7XG4gICAgY29sb3I6IGNvbG9yLWNvbnRyYXN0KCR2YWx1ZSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBSR0JBKCRjb2xvci1yZ2IsIHZhcigtLSN7JHByZWZpeH1iZy1vcGFjaXR5LCAxKSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgfVxufVxuIiwiQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5saW5rLSN7JGNvbG9yfSB7XG4gICAgY29sb3I6ICR2YWx1ZSAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4gICAgQGlmICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UgIT0gMCB7XG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiBpZihjb2xvci1jb250cmFzdCgkdmFsdWUpID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJHZhbHVlLCAkbGluay1zaGFkZS1wZXJjZW50YWdlKSwgdGludC1jb2xvcigkdmFsdWUsICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UpKSAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQ3JlZGl0OiBOaWNvbGFzIEdhbGxhZ2hlciBhbmQgU1VJVCBDU1MuXG5cbi5yYXRpbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tI3skcHJlZml4fWFzcGVjdC1yYXRpbyk7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gID4gKiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG5AZWFjaCAka2V5LCAkcmF0aW8gaW4gJGFzcGVjdC1yYXRpb3Mge1xuICAucmF0aW8tI3ska2V5fSB7XG4gICAgLS0jeyRwcmVmaXh9YXNwZWN0LXJhdGlvOiAjeyRyYXRpb307XG4gIH1cbn1cbiIsIi8vIFNob3J0aGFuZFxuXG4uZml4ZWQtdG9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4uZml4ZWQtYm90dG9tIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4vLyBSZXNwb25zaXZlIHN0aWNreSB0b3AgYW5kIGJvdHRvbVxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLnN0aWNreSN7JGluZml4fS10b3Age1xuICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHotaW5kZXg6ICR6aW5kZXgtc3RpY2t5O1xuICAgIH1cblxuICAgIC5zdGlja3kjeyRpbmZpeH0tYm90dG9tIHtcbiAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICBib3R0b206IDA7XG4gICAgICB6LWluZGV4OiAkemluZGV4LXN0aWNreTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHNjc3MtZG9jcy1zdGFydCBzdGFja3Ncbi5oc3RhY2sge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xufVxuXG4udnN0YWNrIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMSAxIGF1dG87XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG59XG4vLyBzY3NzLWRvY3MtZW5kIHN0YWNrc1xuIiwiLy9cbi8vIFZpc3VhbGx5IGhpZGRlblxuLy9cblxuLnZpc3VhbGx5LWhpZGRlbixcbi52aXN1YWxseS1oaWRkZW4tZm9jdXNhYmxlOm5vdCg6Zm9jdXMpOm5vdCg6Zm9jdXMtd2l0aGluKSB7XG4gIEBpbmNsdWRlIHZpc3VhbGx5LWhpZGRlbigpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIEhpZGUgY29udGVudCB2aXN1YWxseSB3aGlsZSBrZWVwaW5nIGl0IGFjY2Vzc2libGUgdG8gYXNzaXN0aXZlIHRlY2hub2xvZ2llc1xuLy9cbi8vIFNlZTogaHR0cHM6Ly93d3cuYTExeXByb2plY3QuY29tL3Bvc3RzLzIwMTMtMDEtMTEtaG93LXRvLWhpZGUtY29udGVudC9cbi8vIFNlZTogaHR0cHM6Ly9raXR0eWdpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuXG5AbWl4aW4gdmlzdWFsbHktaGlkZGVuKCkge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogLTFweCAhaW1wb3J0YW50OyAvLyBGaXggZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjU2ODZcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG59XG5cbi8vIFVzZSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZCwgb3Igb25lIG9mIGl0cyBjaGlsZCBlbGVtZW50cyBpcyBmb2N1c2VkXG4vLyAoaS5lLiB3aGVuIGZvY3VzIGlzIHdpdGhpbiB0aGUgZWxlbWVudC9jb250YWluZXIgdGhhdCB0aGUgY2xhc3Mgd2FzIGFwcGxpZWQgdG8pXG4vL1xuLy8gVXNlZnVsIGZvciBcIlNraXAgdG8gbWFpbiBjb250ZW50XCIgbGlua3M7IHNlZSBodHRwczovL3d3dy53My5vcmcvVFIvMjAxMy9OT1RFLVdDQUcyMC1URUNIUy0yMDEzMDkwNS9HMVxuXG5AbWl4aW4gdmlzdWFsbHktaGlkZGVuLWZvY3VzYWJsZSgpIHtcbiAgJjpub3QoOmZvY3VzKTpub3QoOmZvY3VzLXdpdGhpbikge1xuICAgIEBpbmNsdWRlIHZpc3VhbGx5LWhpZGRlbigpO1xuICB9XG59XG4iLCIvL1xuLy8gU3RyZXRjaGVkIGxpbmtcbi8vXG5cbi5zdHJldGNoZWQtbGluayB7XG4gICY6OiN7JHN0cmV0Y2hlZC1saW5rLXBzZXVkby1lbGVtZW50fSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAkc3RyZXRjaGVkLWxpbmstei1pbmRleDtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG4iLCIvL1xuLy8gVGV4dCB0cnVuY2F0aW9uXG4vL1xuXG4udGV4dC10cnVuY2F0ZSB7XG4gIEBpbmNsdWRlIHRleHQtdHJ1bmNhdGUoKTtcbn1cbiIsIi8vIFRleHQgdHJ1bmNhdGVcbi8vIFJlcXVpcmVzIGlubGluZS1ibG9jayBvciBibG9jayBmb3IgcHJvcGVyIHN0eWxpbmdcblxuQG1peGluIHRleHQtdHJ1bmNhdGUoKSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiLnZyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICB3aWR0aDogMXB4O1xuICBtaW4taGVpZ2h0OiAxZW07XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgb3BhY2l0eTogJGhyLW9wYWNpdHk7XG59XG4iLCIvLyBVdGlsaXR5IGdlbmVyYXRvclxuLy8gVXNlZCB0byBnZW5lcmF0ZSB1dGlsaXRpZXMgJiBwcmludCB1dGlsaXRpZXNcbkBtaXhpbiBnZW5lcmF0ZS11dGlsaXR5KCR1dGlsaXR5LCAkaW5maXgsICRpcy1yZnMtbWVkaWEtcXVlcnk6IGZhbHNlKSB7XG4gICR2YWx1ZXM6IG1hcC1nZXQoJHV0aWxpdHksIHZhbHVlcyk7XG5cbiAgLy8gSWYgdGhlIHZhbHVlcyBhcmUgYSBsaXN0IG9yIHN0cmluZywgY29udmVydCBpdCBpbnRvIGEgbWFwXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZXMpID09IFwic3RyaW5nXCIgb3IgdHlwZS1vZihudGgoJHZhbHVlcywgMSkpICE9IFwibGlzdFwiIHtcbiAgICAkdmFsdWVzOiB6aXAoJHZhbHVlcywgJHZhbHVlcyk7XG4gIH1cblxuICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgJHByb3BlcnRpZXM6IG1hcC1nZXQoJHV0aWxpdHksIHByb3BlcnR5KTtcblxuICAgIC8vIE11bHRpcGxlIHByb3BlcnRpZXMgYXJlIHBvc3NpYmxlLCBmb3IgZXhhbXBsZSB3aXRoIHZlcnRpY2FsIG9yIGhvcml6b250YWwgbWFyZ2lucyBvciBwYWRkaW5nc1xuICAgIEBpZiB0eXBlLW9mKCRwcm9wZXJ0aWVzKSA9PSBcInN0cmluZ1wiIHtcbiAgICAgICRwcm9wZXJ0aWVzOiBhcHBlbmQoKCksICRwcm9wZXJ0aWVzKTtcbiAgICB9XG5cbiAgICAvLyBVc2UgY3VzdG9tIGNsYXNzIGlmIHByZXNlbnRcbiAgICAkcHJvcGVydHktY2xhc3M6IGlmKG1hcC1oYXMta2V5KCR1dGlsaXR5LCBjbGFzcyksIG1hcC1nZXQoJHV0aWxpdHksIGNsYXNzKSwgbnRoKCRwcm9wZXJ0aWVzLCAxKSk7XG4gICAgJHByb3BlcnR5LWNsYXNzOiBpZigkcHJvcGVydHktY2xhc3MgPT0gbnVsbCwgXCJcIiwgJHByb3BlcnR5LWNsYXNzKTtcblxuICAgIC8vIFVzZSBjdXN0b20gQ1NTIHZhcmlhYmxlIG5hbWUgaWYgcHJlc2VudCwgb3RoZXJ3aXNlIGRlZmF1bHQgdG8gYGNsYXNzYFxuICAgICRjc3MtdmFyaWFibGUtbmFtZTogaWYobWFwLWhhcy1rZXkoJHV0aWxpdHksIGNzcy12YXJpYWJsZS1uYW1lKSwgbWFwLWdldCgkdXRpbGl0eSwgY3NzLXZhcmlhYmxlLW5hbWUpLCBtYXAtZ2V0KCR1dGlsaXR5LCBjbGFzcykpO1xuXG4gICAgLy8gU3RhdGUgcGFyYW1zIHRvIGdlbmVyYXRlIHBzZXVkby1jbGFzc2VzXG4gICAgJHN0YXRlOiBpZihtYXAtaGFzLWtleSgkdXRpbGl0eSwgc3RhdGUpLCBtYXAtZ2V0KCR1dGlsaXR5LCBzdGF0ZSksICgpKTtcblxuICAgICRpbmZpeDogaWYoJHByb3BlcnR5LWNsYXNzID09IFwiXCIgYW5kIHN0ci1zbGljZSgkaW5maXgsIDEsIDEpID09IFwiLVwiLCBzdHItc2xpY2UoJGluZml4LCAyKSwgJGluZml4KTtcblxuICAgIC8vIERvbid0IHByZWZpeCBpZiB2YWx1ZSBrZXkgaXMgbnVsbCAoZS5nLiB3aXRoIHNoYWRvdyBjbGFzcylcbiAgICAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXI6IGlmKCRrZXksIGlmKCRwcm9wZXJ0eS1jbGFzcyA9PSBcIlwiIGFuZCAkaW5maXggPT0gXCJcIiwgXCJcIiwgXCItXCIpICsgJGtleSwgXCJcIik7XG5cbiAgICBAaWYgbWFwLWdldCgkdXRpbGl0eSwgcmZzKSB7XG4gICAgICAvLyBJbnNpZGUgdGhlIG1lZGlhIHF1ZXJ5XG4gICAgICBAaWYgJGlzLXJmcy1tZWRpYS1xdWVyeSB7XG4gICAgICAgICR2YWw6IHJmcy12YWx1ZSgkdmFsdWUpO1xuXG4gICAgICAgIC8vIERvIG5vdCByZW5kZXIgYW55dGhpbmcgaWYgZmx1aWQgYW5kIG5vbiBmbHVpZCB2YWx1ZXMgYXJlIHRoZSBzYW1lXG4gICAgICAgICR2YWx1ZTogaWYoJHZhbCA9PSByZnMtZmx1aWQtdmFsdWUoJHZhbHVlKSwgbnVsbCwgJHZhbCk7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICR2YWx1ZTogcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJGlzLWNzcy12YXI6IG1hcC1nZXQoJHV0aWxpdHksIGNzcy12YXIpO1xuICAgICRpcy1sb2NhbC12YXJzOiBtYXAtZ2V0KCR1dGlsaXR5LCBsb2NhbC12YXJzKTtcbiAgICAkaXMtcnRsOiBtYXAtZ2V0KCR1dGlsaXR5LCBydGwpO1xuXG4gICAgQGlmICR2YWx1ZSAhPSBudWxsIHtcbiAgICAgIEBpZiAkaXMtcnRsID09IGZhbHNlIHtcbiAgICAgICAgLyogcnRsOmJlZ2luOnJlbW92ZSAqL1xuICAgICAgfVxuXG4gICAgICBAaWYgJGlzLWNzcy12YXIge1xuICAgICAgICAuI3skcHJvcGVydHktY2xhc3MgKyAkaW5maXggKyAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXJ9IHtcbiAgICAgICAgICAtLSN7JHByZWZpeH0jeyRjc3MtdmFyaWFibGUtbmFtZX06ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRwc2V1ZG8gaW4gJHN0YXRlIHtcbiAgICAgICAgICAuI3skcHJvcGVydHktY2xhc3MgKyAkaW5maXggKyAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXJ9LSN7JHBzZXVkb306I3skcHNldWRvfSB7XG4gICAgICAgICAgICAtLSN7JHByZWZpeH0jeyRjc3MtdmFyaWFibGUtbmFtZX06ICN7JHZhbHVlfTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAuI3skcHJvcGVydHktY2xhc3MgKyAkaW5maXggKyAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXJ9IHtcbiAgICAgICAgICBAZWFjaCAkcHJvcGVydHkgaW4gJHByb3BlcnRpZXMge1xuICAgICAgICAgICAgQGlmICRpcy1sb2NhbC12YXJzIHtcbiAgICAgICAgICAgICAgQGVhY2ggJGxvY2FsLXZhciwgJHZhcmlhYmxlIGluICRpcy1sb2NhbC12YXJzIHtcbiAgICAgICAgICAgICAgICAtLSN7JHByZWZpeH0jeyRsb2NhbC12YXJ9OiAjeyR2YXJpYWJsZX07XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICN7JHByb3BlcnR5fTogJHZhbHVlIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJHBzZXVkbyBpbiAkc3RhdGUge1xuICAgICAgICAgIC4jeyRwcm9wZXJ0eS1jbGFzcyArICRpbmZpeCArICRwcm9wZXJ0eS1jbGFzcy1tb2RpZmllcn0tI3skcHNldWRvfTojeyRwc2V1ZG99IHtcbiAgICAgICAgICAgIEBlYWNoICRwcm9wZXJ0eSBpbiAkcHJvcGVydGllcyB7XG4gICAgICAgICAgICAgIEBpZiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgICAgQGVhY2ggJGxvY2FsLXZhciwgJHZhcmlhYmxlIGluICRpcy1sb2NhbC12YXJzIHtcbiAgICAgICAgICAgICAgICAgIC0tI3skcHJlZml4fSN7JGxvY2FsLXZhcn06ICN7JHZhcmlhYmxlfTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgI3skcHJvcGVydHl9OiAkdmFsdWUgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGlmICRpcy1ydGwgPT0gZmFsc2Uge1xuICAgICAgICAvKiBydGw6ZW5kOnJlbW92ZSAqL1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gTG9vcCBvdmVyIGVhY2ggYnJlYWtwb2ludFxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcblxuICAvLyBHZW5lcmF0ZSBtZWRpYSBxdWVyeSBpZiBuZWVkZWRcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLy8gTG9vcCBvdmVyIGVhY2ggdXRpbGl0eSBwcm9wZXJ0eVxuICAgIEBlYWNoICRrZXksICR1dGlsaXR5IGluICR1dGlsaXRpZXMge1xuICAgICAgLy8gVGhlIHV0aWxpdHkgY2FuIGJlIGRpc2FibGVkIHdpdGggYGZhbHNlYCwgdGh1cyBjaGVjayBpZiB0aGUgdXRpbGl0eSBpcyBhIG1hcCBmaXJzdFxuICAgICAgLy8gT25seSBwcm9jZWVkIGlmIHJlc3BvbnNpdmUgbWVkaWEgcXVlcmllcyBhcmUgZW5hYmxlZCBvciBpZiBpdCdzIHRoZSBiYXNlIG1lZGlhIHF1ZXJ5XG4gICAgICBAaWYgdHlwZS1vZigkdXRpbGl0eSkgPT0gXCJtYXBcIiBhbmQgKG1hcC1nZXQoJHV0aWxpdHksIHJlc3BvbnNpdmUpIG9yICRpbmZpeCA9PSBcIlwiKSB7XG4gICAgICAgIEBpbmNsdWRlIGdlbmVyYXRlLXV0aWxpdHkoJHV0aWxpdHksICRpbmZpeCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFJGUyByZXNjYWxpbmdcbkBtZWRpYSAobWluLXdpZHRoOiAkcmZzLW1xLXZhbHVlKSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAaWYgKG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50KSA8ICRyZnMtYnJlYWtwb2ludCkge1xuICAgICAgLy8gTG9vcCBvdmVyIGVhY2ggdXRpbGl0eSBwcm9wZXJ0eVxuICAgICAgQGVhY2ggJGtleSwgJHV0aWxpdHkgaW4gJHV0aWxpdGllcyB7XG4gICAgICAgIC8vIFRoZSB1dGlsaXR5IGNhbiBiZSBkaXNhYmxlZCB3aXRoIGBmYWxzZWAsIHRodXMgY2hlY2sgaWYgdGhlIHV0aWxpdHkgaXMgYSBtYXAgZmlyc3RcbiAgICAgICAgLy8gT25seSBwcm9jZWVkIGlmIHJlc3BvbnNpdmUgbWVkaWEgcXVlcmllcyBhcmUgZW5hYmxlZCBvciBpZiBpdCdzIHRoZSBiYXNlIG1lZGlhIHF1ZXJ5XG4gICAgICAgIEBpZiB0eXBlLW9mKCR1dGlsaXR5KSA9PSBcIm1hcFwiIGFuZCBtYXAtZ2V0KCR1dGlsaXR5LCByZnMpIGFuZCAobWFwLWdldCgkdXRpbGl0eSwgcmVzcG9uc2l2ZSkgb3IgJGluZml4ID09IFwiXCIpIHtcbiAgICAgICAgICBAaW5jbHVkZSBnZW5lcmF0ZS11dGlsaXR5KCR1dGlsaXR5LCAkaW5maXgsIHRydWUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gUHJpbnQgdXRpbGl0aWVzXG5AbWVkaWEgcHJpbnQge1xuICBAZWFjaCAka2V5LCAkdXRpbGl0eSBpbiAkdXRpbGl0aWVzIHtcbiAgICAvLyBUaGUgdXRpbGl0eSBjYW4gYmUgZGlzYWJsZWQgd2l0aCBgZmFsc2VgLCB0aHVzIGNoZWNrIGlmIHRoZSB1dGlsaXR5IGlzIGEgbWFwIGZpcnN0XG4gICAgLy8gVGhlbiBjaGVjayBpZiB0aGUgdXRpbGl0eSBuZWVkcyBwcmludCBzdHlsZXNcbiAgICBAaWYgdHlwZS1vZigkdXRpbGl0eSkgPT0gXCJtYXBcIiBhbmQgbWFwLWdldCgkdXRpbGl0eSwgcHJpbnQpID09IHRydWUge1xuICAgICAgQGluY2x1ZGUgZ2VuZXJhdGUtdXRpbGl0eSgkdXRpbGl0eSwgXCItcHJpbnRcIik7XG4gICAgfVxuICB9XG59XG4iLCJcbi8qLS0tLS0tLS0tLS0tIENPTE9SUyAtLS0tLS0tLS0tLS0gKi9cblxuJGRlZmF1bHQtY29sb3I6IHdoaXRlO1xuJGRlZmF1bHQyLWNvbG9yOiAjZWVlO1xuJGRlZmF1bHQzLWNvbG9yOiBkYXJrZW4oJGRlZmF1bHQtY29sb3IsIDEwJSk7XG4kZGVmYXVsdC10ZXh0LWNvbG9yOiAjNTU1O1xuJGRlZmF1bHQtYm9yZGVyLWNvbG9yOiBsaWdodGVuKCRkZWZhdWx0LXRleHQtY29sb3IsIDQwJSk7XG5cbi8vJHByaW1hcnktY29sb3I6ICM4MTMxZDY7XG4vLyRwcmltYXJ5Mi1jb2xvcjogI2I0NmFmODtcbi8vJHByaW1hcnkzLWNvbG9yOiBkYXJrZW4oJHByaW1hcnktY29sb3IsIDEwJSk7XG4vLyRwcmltYXJ5LXRleHQtY29sb3I6IHdoaXRlO1xuXG4kcHJpbWFyeS1jb2xvcjogIzRiNzBkZiAhZGVmYXVsdDtcbiRwcmltYXJ5Mi1jb2xvcjogIzg1OWRkZSAhZGVmYXVsdDtcbiRwcmltYXJ5My1jb2xvcjogZGFya2VuKCRwcmltYXJ5LWNvbG9yLCAxMCUpICFkZWZhdWx0O1xuJHByaW1hcnktdGV4dC1jb2xvcjogd2hpdGUgIWRlZmF1bHQ7XG5cbi8vJHNlY29uZGFyeS1jb2xvcjogIzZiYmNhOTtcbi8vJHNlY29uZGFyeTItY29sb3I6ICNhMGUwZDA7XG4vLyRzZWNvbmRhcnkzLWNvbG9yOiBkYXJrZW4oJHNlY29uZGFyeS1jb2xvciwgMTAlKTtcbi8vJHNlY29uZGFyeS10ZXh0LWNvbG9yOiAjZmZmO1xuXG4kc2Vjb25kYXJ5LWNvbG9yOiAjZjBmM2Y4O1xuJHNlY29uZGFyeTItY29sb3I6ICNmMGYzZjg7XG4kc2Vjb25kYXJ5My1jb2xvcjogZGFya2VuKCRzZWNvbmRhcnktY29sb3IsIDEwJSk7XG4kc2Vjb25kYXJ5LXRleHQtY29sb3I6ICM1NTU7XG5cbiRpbmZvLWNvbG9yOiAjNGRiYmUyO1xuJGluZm8yLWNvbG9yOiAjOTlkOGY4O1xuJGluZm8zLWNvbG9yOiBkYXJrZW4oJGluZm8tY29sb3IsIDEwJSk7XG4kaW5mby10ZXh0LWNvbG9yOiB3aGl0ZTtcblxuJGRhbmdlci1jb2xvcjogI2VkNTY1NTtcbiRkYW5nZXIyLWNvbG9yOiAjZWQ3ZjY2O1xuJGRhbmdlcjMtY29sb3I6IGRhcmtlbigkZGFuZ2VyLWNvbG9yLCAxMCUpO1xuJGRhbmdlci10ZXh0LWNvbG9yOiB3aGl0ZTtcblxuJHN1Y2Nlc3MtY29sb3I6ICM2NkJCNkE7XG4kc3VjY2VzczItY29sb3I6ICNhZWRjYmM7XG4kc3VjY2VzczMtY29sb3I6IGRhcmtlbigkc3VjY2Vzcy1jb2xvciwgMTAlKTtcbiRzdWNjZXNzLXRleHQtY29sb3I6IHdoaXRlO1xuXG4kd2FybmluZy1jb2xvcjogI2Y2Yjc0ZDtcbiR3YXJuaW5nMi1jb2xvcjogI2Y2ZGY1ZjtcbiR3YXJuaW5nMy1jb2xvcjogZGFya2VuKCR3YXJuaW5nLWNvbG9yLCAxMCUpO1xuJHdhcm5pbmctdGV4dC1jb2xvcjogd2hpdGU7XG5cbiRhY3Rpb24tY29sb3I6ICNlNDQ5ODI7XG4kYWN0aW9uMi1jb2xvcjogI2VlYTFlMTtcbiRhY3Rpb24zLWNvbG9yOiBkYXJrZW4oJGFjdGlvbi1jb2xvciwgMTAlKTtcbiRhY3Rpb24tdGV4dC1jb2xvcjogd2hpdGU7XG5cbiRsaWdodC1jb2xvcjogI2YwZjNmODtcbiRsaWdodDItY29sb3I6ICNmZmY7XG4kbGlnaHQzLWNvbG9yOiBkYXJrZW4oJGxpZ2h0LWNvbG9yLCAzJSk7XG4kbGlnaHQtdGV4dC1jb2xvcjogIzU1NTtcblxuJGRhcmstY29sb3I6ICM1NTU7XG4kZGFyazItY29sb3I6ICM5MjkyOTI7XG4kZGFyazMtY29sb3I6IGRhcmtlbigkZGFyay1jb2xvciwgMTAlKTtcbiRkYXJrLXRleHQtY29sb3I6IHdoaXRlO1xuXG4kbGlnaHRncmV5LWNvbG9yOiAjZjVmNWY1O1xuJGxpZ2h0Z3JleTItY29sb3I6ICNmYWZhZmE7XG4kbGlnaHRncmV5My1jb2xvcjogZGFya2VuKCRsaWdodGdyZXktY29sb3IsIDEwJSk7XG4kbGlnaHRncmV5LXRleHQtY29sb3I6ICM1NTU7XG5cbiRjdXN0b20tY29sb3I6ICNmZmY7XG4kY3VzdG9tMi1jb2xvcjogI2ZmZjtcbiRjdXN0b20zLWNvbG9yOiBkYXJrZW4oJGN1c3RvbS1jb2xvciwgMTAlKTtcbiRjdXN0b20tdGV4dC1jb2xvcjogIzU1NTtcblxuJGVycm9yLWNvbG9yOiByZWQ7XG4kdmFsaWQtY29sb3I6IGdyZWVuO1xuXG4kY29sb3JzOiAoXG4gIFwiZGVmYXVsdFwiOiAgICAoYmFzaXM6ICRkZWZhdWx0LWNvbG9yLCAgIGNvbXBsZW1lbnRhcnk6ICRkZWZhdWx0Mi1jb2xvciwgICAgaG92ZXI6ICRkZWZhdWx0My1jb2xvciwgICAgdGV4dDogJGRlZmF1bHQtdGV4dC1jb2xvciksXG4gIFwicHJpbWFyeVwiOiAgICAoYmFzaXM6ICRwcmltYXJ5LWNvbG9yLCAgIGNvbXBsZW1lbnRhcnk6ICRwcmltYXJ5Mi1jb2xvciwgICAgaG92ZXI6ICRwcmltYXJ5My1jb2xvciwgICAgdGV4dDogJHByaW1hcnktdGV4dC1jb2xvciksXG4gIFwic2Vjb25kYXJ5XCI6ICAoYmFzaXM6ICRzZWNvbmRhcnktY29sb3IsIGNvbXBsZW1lbnRhcnk6ICRzZWNvbmRhcnkyLWNvbG9yLCAgaG92ZXI6ICRzZWNvbmRhcnkzLWNvbG9yLCAgdGV4dDogJHNlY29uZGFyeS10ZXh0LWNvbG9yKSxcbiAgXCJjdXN0b21cIjogICAgIChiYXNpczogJGN1c3RvbS1jb2xvciwgICAgY29tcGxlbWVudGFyeTogJGN1c3RvbTItY29sb3IsICAgICBob3ZlcjogJGN1c3RvbTMtY29sb3IsICAgICB0ZXh0OiAkY3VzdG9tLXRleHQtY29sb3IpLFxuICBcImxpZ2h0XCI6ICAgICAgKGJhc2lzOiAkbGlnaHQtY29sb3IsICAgICBjb21wbGVtZW50YXJ5OiAkbGlnaHQyLWNvbG9yLCAgICAgIGhvdmVyOiAkbGlnaHQzLWNvbG9yLCAgICAgIHRleHQ6ICRsaWdodC10ZXh0LWNvbG9yKSxcbiAgXCJkYXJrXCI6ICAgICAgIChiYXNpczogJGRhcmstY29sb3IsICAgICAgY29tcGxlbWVudGFyeTogJGRhcmsyLWNvbG9yLCAgICAgICBob3ZlcjogJGRhcmszLWNvbG9yLCAgICAgICB0ZXh0OiAkZGFyay10ZXh0LWNvbG9yKSxcbiAgXCJhY3Rpb25cIjogICAgIChiYXNpczogJGFjdGlvbi1jb2xvciwgICAgY29tcGxlbWVudGFyeTogJGFjdGlvbjItY29sb3IsICAgICBob3ZlcjogJGFjdGlvbjMtY29sb3IsICAgICB0ZXh0OiAkYWN0aW9uLXRleHQtY29sb3IpLFxuICBcImluZm9cIjogICAgICAgKGJhc2lzOiAkaW5mby1jb2xvciwgICAgICBjb21wbGVtZW50YXJ5OiAkaW5mbzItY29sb3IsICAgICAgIGhvdmVyOiAkaW5mbzMtY29sb3IsICAgICAgIHRleHQ6ICRpbmZvLXRleHQtY29sb3IpLFxuICBcInN1Y2Nlc3NcIjogICAgKGJhc2lzOiAkc3VjY2Vzcy1jb2xvciwgICBjb21wbGVtZW50YXJ5OiAkc3VjY2VzczItY29sb3IsICAgIGhvdmVyOiAkc3VjY2VzczMtY29sb3IsICAgIHRleHQ6ICRzdWNjZXNzLXRleHQtY29sb3IpLFxuICBcIndhcm5pbmdcIjogICAgKGJhc2lzOiAkd2FybmluZy1jb2xvciwgICBjb21wbGVtZW50YXJ5OiAkd2FybmluZzItY29sb3IsICAgIGhvdmVyOiAkd2FybmluZzMtY29sb3IsICAgIHRleHQ6ICR3YXJuaW5nLXRleHQtY29sb3IpLFxuICBcImRhbmdlclwiOiAgICAgKGJhc2lzOiAkZGFuZ2VyLWNvbG9yLCAgICBjb21wbGVtZW50YXJ5OiAkZGFuZ2VyMi1jb2xvciwgICAgIGhvdmVyOiAkZGFuZ2VyMy1jb2xvciwgICAgIHRleHQ6ICRkYW5nZXItdGV4dC1jb2xvciksXG4gIFwibGlnaHRncmV5XCI6ICAoYmFzaXM6ICRsaWdodGdyZXktY29sb3IsIGNvbXBsZW1lbnRhcnk6ICRsaWdodGdyZXkyLWNvbG9yLCAgaG92ZXI6ICRsaWdodGdyZXkzLWNvbG9yLCAgdGV4dDogJGxpZ2h0Z3JleS10ZXh0LWNvbG9yKVxuKTtcblxuLy8gbGlzdCBpdGVtc1xuJGRlZmF1bHQtYmctbGlzdC1pdGVtLWNvbG9yOiB3aGl0ZTtcbiRkZWZhdWx0LWJvcmRlci1saXN0LWl0ZW0tY29sb3I6ICNiYmI7XG4kZGVmYXVsdC10ZXh0LWxpc3QtaXRlbS1jb2xvcjogJGRlZmF1bHQtdGV4dC1jb2xvcjtcblxuLy8gZGVmYXVsdCBidXR0b25zXG4kYnRuLWJnLWRlZmF1bHQtY29sb3I6IHdoaXRlO1xuJGJ0bi10ZXh0LWRlZmF1bHQtY29sb3I6ICRkZWZhdWx0LXRleHQtY29sb3I7XG5cbi8vIHByaW1hcnkgYnV0dG9uc1xuJGJ0bi1iZy1wcmltYXJ5LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRidG4tdGV4dC1wcmltYXJ5LWNvbG9yOiB3aGl0ZTtcblxuLy8gc2Vjb25kYXJ5IGJ1dHRvbnNcbiRidG4tYmctc2Vjb25kYXJ5LWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuJGJ0bi10ZXh0LXNlY29uZGFyeS1jb2xvcjogJHNlY29uZGFyeS10ZXh0LWNvbG9yO1xuXG4vLyBpbmZvIGJ1dHRvbnNcbiRidG4tYmctaW5mby1jb2xvcjogJGluZm8tY29sb3I7XG4kYnRuLXRleHQtaW5mby1jb2xvcjogd2hpdGU7XG5cbi8vIGRhbmdlciBidXR0b25zXG4kYnRuLWJnLWRhbmdlci1jb2xvcjogJGRhbmdlci1jb2xvcjtcbiRidG4tdGV4dC1kYW5nZXItY29sb3I6IHdoaXRlO1xuXG4vLyBzdWNjZXNzIGJ1dHRvbnNcbiRidG4tYmctc3VjY2Vzcy1jb2xvcjogJHN1Y2Nlc3MtY29sb3I7XG4kYnRuLXRleHQtc3VjY2Vzcy1jb2xvcjogd2hpdGU7XG5cbi8vIHdhcm5pbmcgYnV0dG9uc1xuJGJ0bi1iZy13YXJuaW5nLWNvbG9yOiAkd2FybmluZy1jb2xvcjtcbiRidG4tdGV4dC13YXJuaW5nLWNvbG9yOiB3aGl0ZTtcblxuLy8gYWN0aW9uIGJ1dHRvbnNcbiRidG4tYmctYWN0aW9uLWNvbG9yOiAkYWN0aW9uLWNvbG9yO1xuJGJ0bi10ZXh0LWFjdGlvbi1jb2xvcjogd2hpdGU7XG5cbi8vIGRhcmsgYnV0dG9uc1xuJGJ0bi1iZy1kYXJrLWNvbG9yOiAkZGFyay1jb2xvcjtcbiRidG4tdGV4dC1kYXJrLWNvbG9yOiB3aGl0ZTtcblxuLyotLS0tLS0tLS0tLS0gQlROLUJPUkRFUiAtLS0tLS0tLS0tLS0gKi9cbiRidG4tYm9yZGVyLXdpZHRoOiAxcHg7XG4kYnRuLWJvcmRlci1yYWRpdXM6IC4yNXJlbTtcbi8vJGJ0bi1ib3JkZXItcmFkaXVzOiA1MHJlbTtcblxuLyotLS0tLS0tLS0tLS0gQlROLVNQQUNJTkctQk9UVE9NIC0tLS0tLS0tLS0tLSAqL1xuJGJ0bi1tYXJnaW4tYm90dG9tOiAwO1xuJGJ0bi1wYWRkaW5nLXNpZGVzOiAxcmVtO1xuJGJ0bi1wYWRkaW5nLXRvcGJvdHRvbTogLjNyZW07XG5cbi8qLS0tLS0tLS0tLS0tIEdSQURJRU5UIEFOR0xFIC0tLS0tLS0tLS0tLSAqL1xuJGJ0bi1ncmFkaWVudC1hbmdsZTogNjBkZWc7XG5cbi8qLS0tLS0tLS0tLS0tIEJUTiBTSVpFUyAtLS0tLS0tLS0tLS0gKi9cbiR3ZWJmU2l6ZXM6IChcbiAgXCJkZWZhdWx0XCI6ICAocmF0aW86IDAuOSksICAvLyBBdHRlbnRpb24gaWwgZXN0IGluZGlzcGVuc2FibGUgZGUgY29tbWVuY2VyIHBhciBkZWZhdWx0XG4gIFwieHNtYWxsXCI6ICAgKHJhdGlvOiAwLjYpLFxuICBcInNtYWxsXCI6ICAgIChyYXRpbzogMC43NSksXG4gIFwibGFyZ2VcIjogICAgKHJhdGlvOiAxLjA1KSxcbiAgXCJ4bGFyZ2VcIjogICAocmF0aW86IDEuMiksXG4pO1xuXG4vLyBXaWR0aFxuJG1pbi13aWR0aC1sZzogMTIwMHB4O1xuJG1heC13aWR0aC1tZDogJG1pbi13aWR0aC1sZyAtIDFweDtcbiRtaW4td2lkdGgtbWQ6IDk5MnB4O1xuJG1heC13aWR0aC1zbTogJG1pbi13aWR0aC1tZCAtIDFweDtcbiRtaW4td2lkdGgtc206IDc2OHB4O1xuJG1heC13aWR0aC14czogJG1pbi13aWR0aC1zbSAtIDFweDtcblxuLy8gVmFycyBXZWJmIExpc3QgRW50aXRpZXNcbiRjb2xvci1ib3JkZXItZW50aXR5OiAjRTNFN0VBO1xuJGJhY2tncm91bmQtY29sb3Itc3VjY2VzczogI2RmZjBkODtcbiRib3JkZXItY29sb3Itc3VjY2VzczogI2QwZTljNjtcbiRjb2xvci1zdWNjZXNzOiAjMDA3MzNlO1xuJGJhY2tncm91bmQtY29sb3ItZGFuZ2VyOiAjZjJkZWRlO1xuJGJvcmRlci1jb2xvci1kYW5nZXI6ICNlYmNjY2M7XG4kY29sb3ItZGFuZ2VyOiAjYTk0NDQyO1xuJGJhY2tncm91bmQtY29sb3Itd2FybmluZzogI2ZjZjhlMztcbiRib3JkZXItY29sb3Itd2FybmluZzogI2ZhZjJjYztcbiRjb2xvci13YXJuaW5nOiAjOGE2ZDNiO1xuJHByaW1hcnktYmctY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuXG4vLyBWYXJpYWJsZXMgZGUgcGx1Z2luc1xuJGJhY2tncm91bmRBZ2VuZGFDb2xvcjogI2U4ZWZmMztcbi8vJGJhY2tncm91bmRBZ2VuZGFDb2xvcjogI2ZmZjtcbi8vJGRhdGFncmlkU2VsZWN0aW9uQ29sb3I6IGRhcmtlbigjYjZkNWZmLCAyJSk7XG4kZGF0YWdyaWRTZWxlY3Rpb25Db2xvcjogbGlnaHRlbigkcHJpbWFyeTItY29sb3IsIDEzJSkgIWRlZmF1bHQ7XG4kZHVyYXRpb25NRFRleHRUcmFuc2l0aW9uOiAwLjNzO1xuLy8kZHVyYXRpb25NRFRleHRUcmFuc2l0aW9uOiAzMHM7XG4iLCJAaW1wb3J0IFwiY29tcGFzc1wiO1xuXG4kd2lkdGhDb2xIb3VyczogNDVweDtcblxuLndlYmYtYWdlbmRhLmZ3ZCB7XG4gIC50b3AtY29udGFpbmVyIHtcbiAgICAudGItYWxsZGF5cyB7XG4gICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuXG4gICAgICAudGQtY29sZGF5bmFtZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlM2UzZTM7XG5cbiAgICAgICAgLmRheW5hbWUge1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBwYWRkaW5nOiA0cHg7XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuXG4gICAgICAgICAgLmRheWxpbmsge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC50ZC1wYWRkaW5nIHtcbiAgICAgICAgd2lkdGg6ICR3aWR0aENvbEhvdXJzO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTNlM2UzO1xuICAgICAgfVxuXG4gICAgICAudGQtc2Nyb2xsYmFyLXBhZGRpbmcge1xuICAgICAgICB3aWR0aDogMTRweDsgLy8gbGFyZ2V1ciBkZSBsYSBzY3JvbGxiYXIgY2FsY3VsZSBlbiBqcyBwb3VyIGNocSBkZXZpY2VcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2UzZTNlMztcbiAgICAgIH1cblxuICAgICAgLmFsbGRheXMge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDE0cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiIsIkBpbXBvcnQgXCJjb21wYXNzXCI7XG5AaW1wb3J0IFwiYWdlbmRhL3dlZWtcIjtcblxuLndlYmYtYWdlbmRhLmZ3ZCB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBmb250LWZhbWlseTogYXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcblxuICAuaGVhZGVyIHtcbiAgICBoZWlnaHQ6IDI2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWltYWdlKGxpbmVhci1ncmFkaWVudCh3aGl0ZSwgZGFya2VuKCRzZWNvbmRhcnktY29sb3IsIDYlKSkpO1xuXG4gICAgLndlYmYtYnV0dG9ucy1ncm91cCB7XG4gICAgICBtYXJnaW46IDAgMnB4O1xuICAgIH1cblxuICAgIC5sZWZ0IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgaGVpZ2h0OiAyNnB4O1xuICAgIH1cblxuICAgIC5yaWdodCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICB9XG5cbiAgICAuY2VudGVyIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAtbXMtdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxuICB9XG5cblxuXG5cbiAgLmRheXMge1xuICAgIHBhZGRpbmc6IDEwcHggMCA1cHg7XG4gICAgYmFja2dyb3VuZDogI2U1ZTVlNTtcblxuICAgIC50Yi1kYXlzIHtcbiAgICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgLnRkLWRheSB7XG4gICAgICAgIGEubGluay1kYXlzIHtcbiAgICAgICAgICBjb2xvcjogIzU1NTtcblxuICAgICAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAudGQtaG91cnMge1xuICAgICAgICB3aWR0aDogNDVweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG5cbiAgLnVzZXJzIHtcbiAgICBwYWRkaW5nOiAycHggMDtcbiAgICBiYWNrZ3JvdW5kOiAjZTVlNWU1O1xuXG4gICAgLnRkLWhvdXJzIHtcbiAgICAgIHdpZHRoOiA0NXB4O1xuICAgIH1cblxuICAgIC50Yi11c2VycyB7XG4gICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgIHRkIC51c2VyIHtcbiAgICAgICAgcGFkZGluZzogMCAzcHg7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgbGFiZWwge31cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG5cbiAgLmdyaWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuXG4gICAgLnRiLWdyaWQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuXG4gICAgICAudGQtaG91cnMge1xuICAgICAgICB3aWR0aDogNDVweDtcbiAgICAgICAgYmFja2dyb3VuZDogI2U1ZTVlNTtcblxuICAgICAgICBzcGFuLmhvdXIge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICBtYXJnaW46IDAgNXB4IDAgMDtcbiAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuYm9yZGVyLWJvdHRvbSB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIGJvdHRvbTogMXB4O1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogI2NjYztcbiAgICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnRpbWVzbG90IHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAjZGRkO1xuXG4gICAgICAgICYuaG91ciB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2M7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnRkLWRheS1tb250aCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG5cbiAgICAgICAgJi5kcm9wIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjJmNWZmO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNlbGwtZGF5IHtcbiAgICAgICAgICAubnVtLWRheSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTJlOWZmO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMHB4O1xuICAgICAgICAgICAgbGVmdDogMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGNvbG9yOiAjYWFhO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMXB4O1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgY29sb3I6ICNhYWE7XG5cbiAgICAgICAgICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmN1cnJlbnQge1xuICAgICAgICAgICAgICBjb2xvcjogIzQ0NDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM0NDQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuZXZlbnRzIHtcbiAgICAgICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB0b3A6IDE4cHg7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuXG4gICAgICAgICAgICAuZXZlbnQge1xuICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDJweCAycHggMnB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMxQjYyQzA7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogIzJCNzJEMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IDNweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5maXJzdC1yb3cge1xuICAgICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAubGFzdC1yb3cge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuZmlyc3QtY29sIHtcbiAgICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5sYXN0LWNvbCB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNlbGwtZGF5IHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cblxuICAgIC5hZ2VuZGEge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuXG4gICAgICAudGItYWdlbmRhIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcblxuICAgICAgICAudGQtaG91cnMge1xuICAgICAgICAgIHdpZHRoOiA0NXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnRkLWNvbC1kYXkge1xuICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM4MDgwODA7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuY29sLWRheS1mdWxsIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAgICAgLnRiLXVzZXJzIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcblxuICAgICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggZGFzaGVkICNEM0QzRDM7XG5cbiAgICAgICAgICAgICAgICAuY29sLXVzZXIge1xuICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnRkLWNvbC1kYXkge1xuICAgICAgICAgICYudG9kYXkge1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5jb2wtZGF5LWZ1bGwge1xuICAgICAgICAgICAgLmV2ZW50IHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICM2OEExRTU7XG4gICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgICAgICAmLnRlbXBvcmFyeSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgwLjYpO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMUI2MkMwO1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMkI3MkQwO1xuXG4gICAgICAgICAgICAgICAgJi5kcmFnZ2FibGUge1xuICAgICAgICAgICAgICAgICAgY3Vyc29yOiBtb3ZlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzcHggM3B4IDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIC5oYW5kbGUtcmVzaXphYmxlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAtMnB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogOXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogOHB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBzLXJlc2l6ZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50Yi1hZ2VuZGEtZGF5cyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ud2ViZi1hZ2VuZGEtZHJhZ2dpbmctZXZlbnQge1xuICAudGl0bGUge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBtYXJnaW46IDAgMnB4IDJweCAycHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzFCNjJDMDtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgbWluLWhlaWdodDogMTVweDtcbiAgICBsaW5lLWhlaWdodDogMTVweDtcbiAgICBiYWNrZ3JvdW5kOiAjMkI3MkQwO1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LWluZGVudDogM3B4O1xuICB9XG5cbiAgLndlYmYtc2Nyb2xsYmFyIHtcbiAgICByaWdodDogMnB4O1xuICAgIHdpZHRoOiA2cHg7XG5cbiAgICBhLnJhaWwge1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgd2lkdGg6IDRweDtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgfVxuXG4gICAgYS5oYW5kbGVyIHtcbiAgICAgIHdpZHRoOiA0cHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjNTU1O1xuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICB9XG4gIH1cbn1cblxuLndlYmYtYWdlbmRhLXVzZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi53ZWJmLWFnZW5kYS10b29sdGlwLXVzZXIgLnRyaWFuZ2xlIHtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1ib3R0b206IDZweCBzb2xpZCAjY2NjO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTZweDtcbiAgbWFyZ2luOiBhdXRvO1xuICB6LWluZGV4OiAxMDAwMTtcblxuICAuaW5uZXItdHJpYW5nbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBib3JkZXItYm90dG9tOiA2cHggc29saWQgI2ZmZjtcbiAgICB0b3A6IDFweDtcbiAgICBsZWZ0OiAtNnB4O1xuICB9XG5cbiAgLmNvbnRlbnQge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBjb2xvcjogIzMzMztcbiAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtNnB4O1xuICAgIHotaW5kZXg6IDEwMDAwO1xuICAgIGJveC1zaGFkb3c6IDJweCAycHggNXB4ICNkZGQ7XG4gIH1cbn1cblxuIiwiQGltcG9ydCBcInNoYXJlZFwiO1xuQGltcG9ydCBcIi4uL3V0aWxpdGllcy9nZW5lcmFsL2hhY2tzXCI7XG5AaW1wb3J0IFwiLi4vZnVuY3Rpb25zXCI7XG5cbi8vIEJhY2tncm91bmQgcHJvcGVydHkgc3VwcG9ydCBmb3IgdmVuZG9yIHByZWZpeGluZyB3aXRoaW4gdmFsdWVzLlxuQG1peGluIGJhY2tncm91bmQoXG4gICRiYWNrZ3JvdW5kLTEsXG4gICRiYWNrZ3JvdW5kLTI6IGZhbHNlLFxuICAkYmFja2dyb3VuZC0zOiBmYWxzZSxcbiAgJGJhY2tncm91bmQtNDogZmFsc2UsXG4gICRiYWNrZ3JvdW5kLTU6IGZhbHNlLFxuICAkYmFja2dyb3VuZC02OiBmYWxzZSxcbiAgJGJhY2tncm91bmQtNzogZmFsc2UsXG4gICRiYWNrZ3JvdW5kLTg6IGZhbHNlLFxuICAkYmFja2dyb3VuZC05OiBmYWxzZSxcbiAgJGJhY2tncm91bmQtMTA6IGZhbHNlXG4pIHtcbiAgJGJhY2tncm91bmRzOiBjb21wYWN0KCRiYWNrZ3JvdW5kLTEsICRiYWNrZ3JvdW5kLTIsICRiYWNrZ3JvdW5kLTMsICRiYWNrZ3JvdW5kLTQsICRiYWNrZ3JvdW5kLTUsXG4gICAgICAgICAgICAgICAgICAgICAgICAkYmFja2dyb3VuZC02LCAkYmFja2dyb3VuZC03LCAkYmFja2dyb3VuZC04LCAkYmFja2dyb3VuZC05LCAkYmFja2dyb3VuZC0xMCk7XG4gICRtdWx0LWJnczogLWNvbXBhc3MtbGlzdC1zaXplKCRiYWNrZ3JvdW5kcykgPiAxO1xuICAkYWRkLXBpZS1iZzogcHJlZml4ZWQoLXBpZSwgICAkYmFja2dyb3VuZHMpIG9yICRtdWx0LWJncztcbiAgQGlmICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3Itc3ZnICAgICAgICAgIGFuZCBwcmVmaXhlZCgtc3ZnLCAgICAkYmFja2dyb3VuZHMpIHsgICAgICBiYWNrZ3JvdW5kOiAgICAtc3ZnKCRiYWNrZ3JvdW5kcyk7IH1cbiAgQGlmICRzdXBwb3J0LWZvci1vcmlnaW5hbC13ZWJraXQtZ3JhZGllbnRzIGFuZCBwcmVmaXhlZCgtb3dnLCAgICAkYmFja2dyb3VuZHMpIHsgICAgICBiYWNrZ3JvdW5kOiAgICAtb3dnKCRiYWNrZ3JvdW5kcyk7IH1cbiAgQGlmICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3Itd2Via2l0ICAgICAgIGFuZCBwcmVmaXhlZCgtd2Via2l0LCAkYmFja2dyb3VuZHMpIHsgICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0KCRiYWNrZ3JvdW5kcyk7IH1cbiAgQGlmICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3ItbW96aWxsYSAgICAgIGFuZCBwcmVmaXhlZCgtbW96LCAgICAkYmFja2dyb3VuZHMpIHsgICAgICBiYWNrZ3JvdW5kOiAgICAtbW96KCRiYWNrZ3JvdW5kcyk7IH1cbiAgQGlmICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3Itb3BlcmEgICAgICAgIGFuZCBwcmVmaXhlZCgtbywgICAgICAkYmFja2dyb3VuZHMpIHsgICAgICBiYWNrZ3JvdW5kOiAgICAgIC1vKCRiYWNrZ3JvdW5kcyk7IH1cbiAgQGlmICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3ItcGllICAgICAgICAgIGFuZCAkYWRkLXBpZS1iZyAgICAgICAgICAgICAgICAgICAgIHsgLXBpZS1iYWNrZ3JvdW5kOiAgICAgICAgICRiYWNrZ3JvdW5kcyA7IH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAgICAgICAgICRiYWNrZ3JvdW5kcyA7XG59XG5cbkBtaXhpbiBiYWNrZ3JvdW5kLXdpdGgtY3NzMi1mYWxsYmFjayhcbiAgJGJhY2tncm91bmQtMSxcbiAgJGJhY2tncm91bmQtMjogZmFsc2UsXG4gICRiYWNrZ3JvdW5kLTM6IGZhbHNlLFxuICAkYmFja2dyb3VuZC00OiBmYWxzZSxcbiAgJGJhY2tncm91bmQtNTogZmFsc2UsXG4gICRiYWNrZ3JvdW5kLTY6IGZhbHNlLFxuICAkYmFja2dyb3VuZC03OiBmYWxzZSxcbiAgJGJhY2tncm91bmQtODogZmFsc2UsXG4gICRiYWNrZ3JvdW5kLTk6IGZhbHNlLFxuICAkYmFja2dyb3VuZC0xMDogZmFsc2Vcbikge1xuICAkYmFja2dyb3VuZHM6IGNvbXBhY3QoJGJhY2tncm91bmQtMSwgJGJhY2tncm91bmQtMiwgJGJhY2tncm91bmQtMywgJGJhY2tncm91bmQtNCwgJGJhY2tncm91bmQtNSxcbiAgICAgICAgICAgICAgICAgICAgICAgICRiYWNrZ3JvdW5kLTYsICRiYWNrZ3JvdW5kLTcsICRiYWNrZ3JvdW5kLTgsICRiYWNrZ3JvdW5kLTksICRiYWNrZ3JvdW5kLTEwKTtcbiAgJG11bHQtYmdzOiAtY29tcGFzcy1saXN0LXNpemUoJGJhY2tncm91bmRzKSA+IDE7XG4gICRzaW1wbGUtYmFja2dyb3VuZDogaWYoJG11bHQtYmdzIG9yIHByZWZpeGVkKC1jc3MyLCAkYmFja2dyb3VuZHMpLCAtY3NzMigtY29tcGFzcy1udGgoJGJhY2tncm91bmRzLCBsYXN0KSksIGZhbHNlKTtcbiAgQGlmIG5vdChibGFuaygkc2ltcGxlLWJhY2tncm91bmQpKSB7IGJhY2tncm91bmQ6ICRzaW1wbGUtYmFja2dyb3VuZDsgfVxuICBAaW5jbHVkZSBiYWNrZ3JvdW5kKCRiYWNrZ3JvdW5kLTEsICRiYWNrZ3JvdW5kLTIsICRiYWNrZ3JvdW5kLTMsICRiYWNrZ3JvdW5kLTQsICRiYWNrZ3JvdW5kLTUsXG4gICAgICAgICAgICAgICAgICAgICAgJGJhY2tncm91bmQtNiwgJGJhY2tncm91bmQtNywgJGJhY2tncm91bmQtOCwgJGJhY2tncm91bmQtOSwgJGJhY2tncm91bmQtMTApO1xufVxuXG5cbi8vIEJhY2tncm91bmQgaW1hZ2UgcHJvcGVydHkgc3VwcG9ydCBmb3IgdmVuZG9yIHByZWZpeGluZyB3aXRoaW4gdmFsdWVzLlxuQG1peGluIGJhY2tncm91bmQtaW1hZ2UoXG4gICRpbWFnZS0xLFxuICAkaW1hZ2UtMjogZmFsc2UsXG4gICRpbWFnZS0zOiBmYWxzZSxcbiAgJGltYWdlLTQ6IGZhbHNlLFxuICAkaW1hZ2UtNTogZmFsc2UsXG4gICRpbWFnZS02OiBmYWxzZSxcbiAgJGltYWdlLTc6IGZhbHNlLFxuICAkaW1hZ2UtODogZmFsc2UsXG4gICRpbWFnZS05OiBmYWxzZSxcbiAgJGltYWdlLTEwOiBmYWxzZVxuKSB7XG4gICRpbWFnZXM6IGNvbXBhY3QoJGltYWdlLTEsICRpbWFnZS0yLCAkaW1hZ2UtMywgJGltYWdlLTQsICRpbWFnZS01LCAkaW1hZ2UtNiwgJGltYWdlLTcsICRpbWFnZS04LCAkaW1hZ2UtOSwgJGltYWdlLTEwKTtcbiAgJGFkZC1waWUtYmc6IHByZWZpeGVkKC1waWUsICAgJGltYWdlcykgb3IgLWNvbXBhc3MtbGlzdC1zaXplKCRpbWFnZXMpID4gMTtcblxuICBAaWYgJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci1zdmcgICAgICAgICAgYW5kIHByZWZpeGVkKC1zdmcsICAgICRpbWFnZXMpIHsgYmFja2dyb3VuZC1pbWFnZTogICAgLXN2ZygkaW1hZ2VzKTsgYmFja2dyb3VuZC1zaXplOiAxMDAlOyB9XG4gIEBpZiAkc3VwcG9ydC1mb3Itb3JpZ2luYWwtd2Via2l0LWdyYWRpZW50cyBhbmQgcHJlZml4ZWQoLW93ZywgICAgJGltYWdlcykgeyBiYWNrZ3JvdW5kLWltYWdlOiAgICAtb3dnKCRpbWFnZXMpOyB9XG4gIEBpZiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLXdlYmtpdCAgICAgICBhbmQgcHJlZml4ZWQoLXdlYmtpdCwgJGltYWdlcykgeyBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0KCRpbWFnZXMpOyB9XG4gIEBpZiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLW1vemlsbGEgICAgICBhbmQgcHJlZml4ZWQoLW1veiwgICAgJGltYWdlcykgeyBiYWNrZ3JvdW5kLWltYWdlOiAgICAtbW96KCRpbWFnZXMpOyB9XG4gIEBpZiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLW9wZXJhICAgICAgICBhbmQgcHJlZml4ZWQoLW8sICAgICAgJGltYWdlcykgeyBiYWNrZ3JvdW5kLWltYWdlOiAgICAgIC1vKCRpbWFnZXMpOyB9XG4gIEBpZiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLXBpZSAgICAgICAgICBhbmQgJGFkZC1waWUtYmcgICAgICAgICAgICAgICAgeyBAd2FybiBcIlBJRSBkb2VzIG5vdCBzdXBwb3J0IGJhY2tncm91bmQtaW1hZ2UuIFVzZSBAaW5jbHVkZSBiYWNrZ3JvdW5kKCN7JGltYWdlc30pIGluc3RlYWQuXCIgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogICAgICAgICAkaW1hZ2VzIDtcbn1cblxuLy8gRW1pdCBhIElFLVNwZWNpZmljIGZpbHRlcnMgdGhhdCByZW5kZXJzIGEgc2ltcGxlIGxpbmVhciBncmFkaWVudC5cbi8vIEZvciB1c2UgaW4gSUUgNiAtIDguIEJlc3QgcHJhY3RpY2Ugd291bGQgaGF2ZSB5b3UgYXBwbHkgdGhpcyB2aWEgYVxuLy8gY29uZGl0aW9uYWwgSUUgc3R5bGVzaGVldCwgYnV0IGlmIHlvdSBtdXN0LCB5b3Ugc2hvdWxkIHBsYWNlIHRoaXMgYmVmb3JlXG4vLyBhbnkgYmFja2dyb3VuZC1pbWFnZSBwcm9wZXJ0aWVzIHRoYXQgeW91IGhhdmUgc3BlY2lmaWVkLlxuLy9cbi8vIEZvciB0aGUgYCRvcmllbnRhdGlvbmAgcGFyYW1ldGVyLCB5b3UgY2FuIHBhc3MgYHZlcnRpY2FsYCBvciBgaG9yaXpvbnRhbGAuXG5AbWl4aW4gZmlsdGVyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJGVuZC1jb2xvciwgJG9yaWVudGF0aW9uOiB2ZXJ0aWNhbCkge1xuICBAaW5jbHVkZSBoYXMtbGF5b3V0O1xuICAkZ3JhZGllbnQtdHlwZTogaWYoJG9yaWVudGF0aW9uID09IHZlcnRpY2FsLCAwLCAxKTtcbiAgQGlmICRsZWdhY3ktc3VwcG9ydC1mb3ItaWU2IG9yICRsZWdhY3ktc3VwcG9ydC1mb3ItaWU3IG9yICRsZWdhY3ktc3VwcG9ydC1mb3ItaWU4IHtcbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChncmFkaWVudFR5cGU9I3skZ3JhZGllbnQtdHlwZX0sIHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9Jyk7XG4gIH1cbn1cblxuXG4vLyBCb3JkZXIgaW1hZ2UgcHJvcGVydHkgc3VwcG9ydCBmb3IgdmVuZG9yIHByZWZpeGluZyBwcm9wZXJ0aWVzIGFuZCB2YWx1ZXMuXG5AbWl4aW4gYm9yZGVyLWltYWdlKCR2YWx1ZSkge1xuICBAaWYgJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci1tb3ppbGxhICAgICAgeyAgICAtbW96LWJvcmRlci1pbWFnZTogICAgLW1veihyZWplY3QoLWNvbXBhc3MtbGlzdCgkdmFsdWUpLCBmaWxsKSk7IH1cbiAgQGlmICRzdXBwb3J0LWZvci1vcmlnaW5hbC13ZWJraXQtZ3JhZGllbnRzIHsgLXdlYmtpdC1ib3JkZXItaW1hZ2U6ICAgIC1vd2cocmVqZWN0KC1jb21wYXNzLWxpc3QoJHZhbHVlKSwgZmlsbCkpOyB9XG4gIEBpZiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLXdlYmtpdCAgICAgICB7IC13ZWJraXQtYm9yZGVyLWltYWdlOiAtd2Via2l0KHJlamVjdCgtY29tcGFzcy1saXN0KCR2YWx1ZSksIGZpbGwpKTsgfVxuICBAaWYgJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci1vcGVyYSAgICAgICAgeyAgICAgIC1vLWJvcmRlci1pbWFnZTogICAgICAtbyhyZWplY3QoLWNvbXBhc3MtbGlzdCgkdmFsdWUpLCBmaWxsKSk7IH1cbiAgQGlmICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3Itc3ZnICAgICAgICAgIHsgICAgICAgICBib3JkZXItaW1hZ2U6ICAgIC1zdmcocmVqZWN0KC1jb21wYXNzLWxpc3QoJHZhbHVlKSwgZmlsbCkpOyB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWltYWdlOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR2YWx1ZTtcbn1cblxuLy8gTGlzdCBzdHlsZSBpbWFnZSBwcm9wZXJ0eSBzdXBwb3J0IGZvciB2ZW5kb3IgcHJlZml4aW5nIHdpdGhpbiB2YWx1ZXMuXG5AbWl4aW4gbGlzdC1zdHlsZS1pbWFnZSgkaW1hZ2UpIHtcbiAgQGlmICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3ItbW96aWxsYSAgICAgIGFuZCBwcmVmaXhlZCgtbW96LCAgICAkaW1hZ2UpIHsgbGlzdC1zdHlsZS1pbWFnZTogICAgLW1veigkaW1hZ2UpOyB9XG4gIEBpZiAkc3VwcG9ydC1mb3Itb3JpZ2luYWwtd2Via2l0LWdyYWRpZW50cyBhbmQgcHJlZml4ZWQoLW93ZywgICAgJGltYWdlKSB7IGxpc3Qtc3R5bGUtaW1hZ2U6ICAgIC1vd2coJGltYWdlKTsgfVxuICBAaWYgJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci13ZWJraXQgICAgICAgYW5kIHByZWZpeGVkKC13ZWJraXQsICRpbWFnZSkgeyBsaXN0LXN0eWxlLWltYWdlOiAtd2Via2l0KCRpbWFnZSk7IH1cbiAgQGlmICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3Itb3BlcmEgICAgICAgIGFuZCBwcmVmaXhlZCgtbywgICAgICAkaW1hZ2UpIHsgbGlzdC1zdHlsZS1pbWFnZTogICAgICAtbygkaW1hZ2UpOyB9XG4gIEBpZiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLXN2ZyAgICAgICAgICBhbmQgcHJlZml4ZWQoLXN2ZywgICAgJGltYWdlKSB7IGxpc3Qtc3R5bGUtaW1hZ2U6ICAgIC1zdmcoJGltYWdlKTsgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaXN0LXN0eWxlLWltYWdlOiAgICAgICAgICRpbWFnZSA7XG59XG5cbi8vIExpc3Qgc3R5bGUgcHJvcGVydHkgc3VwcG9ydCBmb3IgdmVuZG9yIHByZWZpeGluZyB3aXRoaW4gdmFsdWVzLlxuQG1peGluIGxpc3Qtc3R5bGUoJHZhbHVlKSB7XG4gICR2YWx1ZTogLWNvbXBhc3MtbGlzdCgkdmFsdWUpO1xuICBAaWYgJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci1tb3ppbGxhICAgICAgYW5kIHByZWZpeGVkKC1tb3osICAgICR2YWx1ZSkgeyBsaXN0LXN0eWxlLWltYWdlOiAgICAtbW96KCR2YWx1ZSk7IH1cbiAgQGlmICRzdXBwb3J0LWZvci1vcmlnaW5hbC13ZWJraXQtZ3JhZGllbnRzIGFuZCBwcmVmaXhlZCgtb3dnLCAgICAkdmFsdWUpIHsgbGlzdC1zdHlsZS1pbWFnZTogICAgLW93ZygkdmFsdWUpOyB9XG4gIEBpZiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLXdlYmtpdCAgICAgICBhbmQgcHJlZml4ZWQoLXdlYmtpdCwgJHZhbHVlKSB7IGxpc3Qtc3R5bGUtaW1hZ2U6IC13ZWJraXQoJHZhbHVlKTsgfVxuICBAaWYgJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci1vcGVyYSAgICAgICAgYW5kIHByZWZpeGVkKC1vLCAgICAgICR2YWx1ZSkgeyBsaXN0LXN0eWxlLWltYWdlOiAgICAgIC1vKCR2YWx1ZSk7IH1cbiAgQGlmICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3Itc3ZnICAgICAgICAgIGFuZCBwcmVmaXhlZCgtc3ZnLCAgICAkdmFsdWUpIHsgbGlzdC1zdHlsZS1pbWFnZTogICAgLXN2ZygkdmFsdWUpOyB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGUtaW1hZ2U6ICAgICAgICAgJHZhbHVlIDtcbn1cblxuLy8gY29udGVudCBwcm9wZXJ0eSBzdXBwb3J0IGZvciB2ZW5kb3IgcHJlZml4aW5nIHdpdGhpbiB2YWx1ZXMuXG5AbWl4aW4gY29udGVudCgkdmFsdWUpIHtcbiAgJHZhbHVlOiAtY29tcGFzcy1saXN0KCR2YWx1ZSk7XG4gIEBpZiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLW1vemlsbGEgICAgICBhbmQgcHJlZml4ZWQoLW1veiwgICAgJHZhbHVlKSB7IGNvbnRlbnQ6ICAgIC1tb3ooJHZhbHVlKTsgfVxuICBAaWYgJHN1cHBvcnQtZm9yLW9yaWdpbmFsLXdlYmtpdC1ncmFkaWVudHMgYW5kIHByZWZpeGVkKC1vd2csICAgICR2YWx1ZSkgeyBjb250ZW50OiAgICAtb3dnKCR2YWx1ZSk7IH1cbiAgQGlmICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3Itd2Via2l0ICAgICAgIGFuZCBwcmVmaXhlZCgtd2Via2l0LCAkdmFsdWUpIHsgY29udGVudDogLXdlYmtpdCgkdmFsdWUpOyB9XG4gIEBpZiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLW9wZXJhICAgICAgICBhbmQgcHJlZml4ZWQoLW8sICAgICAgJHZhbHVlKSB7IGNvbnRlbnQ6ICAgICAgLW8oJHZhbHVlKTsgfVxuICBAaWYgJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci1zdmcgICAgICAgICAgYW5kIHByZWZpeGVkKC1zdmcsICAgICR2YWx1ZSkgeyBjb250ZW50OiAgICAtc3ZnKCR2YWx1ZSk7IH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogICAgICAgICAkdmFsdWUgO1xufVxuIiwiQGltcG9ydCBcInNoYXJlZFwiO1xuXG4vLyBQcm92aWRlcyBjcm9zcy1icm93c2VyIENTUyBvcGFjaXR5LiBUYWtlcyBhIG51bWJlciBiZXR3ZWVuIDAgYW5kIDEgYXMgdGhlIGFyZ3VtZW50LCBlLmcuIDAuNSBmb3IgNTAlIG9wYWNpdHkuXG4vL1xuLy8gICAgIEBwYXJhbSAkb3BhY2l0eVxuLy8gICAgICAgICBBIG51bWJlciBiZXR3ZWVuIDAgYW5kIDEsIHdoZXJlIDAgaXMgdHJhbnNwYXJlbnQgYW5kIDEgaXMgb3BhcXVlLlxuXG5AbWl4aW4gb3BhY2l0eSgkb3BhY2l0eSkge1xuICBAaWYgJGxlZ2FjeS1zdXBwb3J0LWZvci1pZTYgb3IgJGxlZ2FjeS1zdXBwb3J0LWZvci1pZTcgb3IgJGxlZ2FjeS1zdXBwb3J0LWZvci1pZTgge1xuICAgIGZpbHRlcjogdW5xdW90ZShcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5BbHBoYShPcGFjaXR5PSN7cm91bmQoJG9wYWNpdHkgKiAxMDApfSlcIik7XG4gIH1cbiAgb3BhY2l0eTogJG9wYWNpdHk7XG59XG5cbi8vIE1ha2UgYW4gZWxlbWVudCBjb21wbGV0ZWx5IHRyYW5zcGFyZW50LlxuQG1peGluIHRyYW5zcGFyZW50IHsgQGluY2x1ZGUgb3BhY2l0eSgwKTsgfVxuXG4vLyBNYWtlIGFuIGVsZW1lbnQgY29tcGxldGVseSBvcGFxdWUuXG5AbWl4aW4gb3BhcXVlIHsgQGluY2x1ZGUgb3BhY2l0eSgxKTsgfVxuIiwiLndlYmYtaW5wdXQtYnV0dG9uIHtcbiAgLndlYmYtbGFiZWwtaW5wdXQtZmlsZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIGlucHV0W3R5cGU9J2ZpbGUnXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ud2ViZi1kcm9wYXJlYSB7XG5cbn1cbiIsIkBpbXBvcnQgXCJjb21wYXNzXCI7XG5AaW1wb3J0IFwiLi4vbWl4aW5zL2FsZXJ0c1wiO1xuXG4kd2lkdGhBbGVydDogMzYwcHg7XG5cbi53ZWJmLWFsZXJ0LXdyYXBwZXIge1xuICAud2ViZi1hbGVydCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHotaW5kZXg6IDEwMDAwMDtcbiAgICB0b3A6IDA7XG5cbiAgICBtYXJnaW46IDAgMTBweDtcbiAgICB3aWR0aDogJHdpZHRoQWxlcnQ7XG5cbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygwcHggMnB4IDhweCAwcHggbGlnaHRlbigkZGVmYXVsdC10ZXh0LWNvbG9yLCAyMCUpKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG5cbiAgICAmLmNlbnRlciB7XG4gICAgICBqdXN0aWZ5LXNlbGY6IGNlbnRlcjtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtKCR3aWR0aEFsZXJ0LzIpO1xuICAgIH1cblxuICAgICYubGVmdCB7XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cblxuICAgICYucmlnaHQge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkd2lkdGhBbGVydCArIDM1KSB7XG4gICAgICAmLmNlbnRlciwgJi5sZWZ0LCAmLnJpZ2h0IHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1hcmdpbjogMCAxMHB4O1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubWVzc2FnZSB7XG4gICAgICBwYWRkaW5nOiAxNXB4IDMwcHggMTVweCAxNXB4O1xuXG4gICAgICAud2ViZi1idXR0b24ge1xuICAgICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nOiA0cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICByaWdodDogLTIxcHg7XG5cbiAgICAgICAgJiA+IGkuZmFzIHtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEBlYWNoICRuYW1lLCAkaW5mb3NDb2xvciBpbiAkY29sb3JzIHtcbiAgICAgICYud2ViZi1hbGVydC0jeyRuYW1lfSB7XG4gICAgICAgICRiZ0NvbG9yOiBtYXAtZ2V0KCRpbmZvc0NvbG9yLCAnYmFzaXMnKTtcblxuICAgICAgICBAaW5jbHVkZSBhbGVydC10eXBlKCRiZ0NvbG9yKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuIiwiQGltcG9ydCBcIi4uL3N1cHBvcnRcIjtcblxuLy8gVGhpcyBtaXhpbiBwcm92aWRlcyBiYXNpYyBzdXBwb3J0IGZvciBDU1MzIHByb3BlcnRpZXMgYW5kXG4vLyB0aGVpciBjb3JyZXNwb25kaW5nIGV4cGVyaW1lbnRhbCBDU1MyIHByb3BlcnRpZXMgd2hlblxuLy8gdGhlIGltcGxlbWVudGF0aW9ucyBhcmUgaWRlbnRpY2FsIGV4Y2VwdCBmb3IgdGhlIHByb3BlcnR5XG4vLyBwcmVmaXguXG5AbWl4aW4gZXhwZXJpbWVudGFsKCRwcm9wZXJ0eSwgJHZhbHVlLFxuICAkbW96ICAgICAgOiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLW1vemlsbGEsXG4gICR3ZWJraXQgICA6ICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3Itd2Via2l0LFxuICAkbyAgICAgICAgOiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLW9wZXJhLFxuICAkbXMgICAgICAgOiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLW1pY3Jvc29mdCxcbiAgJGtodG1sICAgIDogJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci1raHRtbCxcbiAgJG9mZmljaWFsIDogdHJ1ZVxuKSB7XG4gIEBpZiAkd2Via2l0ICBhbmQgJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci13ZWJraXQgICAgeyAtd2Via2l0LSN7JHByb3BlcnR5fSA6ICR2YWx1ZTsgfVxuICBAaWYgJGtodG1sICAgYW5kICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3Ita2h0bWwgICAgIHsgIC1raHRtbC0jeyRwcm9wZXJ0eX0gOiAkdmFsdWU7IH1cbiAgQGlmICRtb3ogICAgIGFuZCAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLW1vemlsbGEgICB7ICAgIC1tb3otI3skcHJvcGVydHl9IDogJHZhbHVlOyB9XG4gIEBpZiAkbXMgICAgICBhbmQgJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci1taWNyb3NvZnQgeyAgICAgLW1zLSN7JHByb3BlcnR5fSA6ICR2YWx1ZTsgfVxuICBAaWYgJG8gICAgICAgYW5kICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3Itb3BlcmEgICAgIHsgICAgICAtby0jeyRwcm9wZXJ0eX0gOiAkdmFsdWU7IH1cbiAgQGlmICRvZmZpY2lhbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7ICAgICAgICAgI3skcHJvcGVydHl9IDogJHZhbHVlOyB9XG59XG5cbi8vIFNhbWUgYXMgZXhwZXJpbWVudGFsKCksIGJ1dCBmb3IgY2FzZXMgd2hlbiB0aGUgcHJvcGVydHkgaXMgdGhlIHNhbWUgYW5kIHRoZSB2YWx1ZSBpcyB2ZW5kb3JpemVkXG5AbWl4aW4gZXhwZXJpbWVudGFsLXZhbHVlKCRwcm9wZXJ0eSwgJHZhbHVlLFxuICAkbW96ICAgICAgOiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLW1vemlsbGEsXG4gICR3ZWJraXQgICA6ICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3Itd2Via2l0LFxuICAkbyAgICAgICAgOiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLW9wZXJhLFxuICAkbXMgICAgICAgOiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLW1pY3Jvc29mdCxcbiAgJGtodG1sICAgIDogJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci1raHRtbCxcbiAgJG9mZmljaWFsIDogdHJ1ZVxuKSB7XG4gIEBpZiAkd2Via2l0ICBhbmQgJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci13ZWJraXQgICAgeyAjeyRwcm9wZXJ0eX0gOiAtd2Via2l0LSN7JHZhbHVlfTsgfVxuICBAaWYgJGtodG1sICAgYW5kICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3Ita2h0bWwgICAgIHsgI3skcHJvcGVydHl9IDogIC1raHRtbC0jeyR2YWx1ZX07IH1cbiAgQGlmICRtb3ogICAgIGFuZCAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLW1vemlsbGEgICB7ICN7JHByb3BlcnR5fSA6ICAgIC1tb3otI3skdmFsdWV9OyB9XG4gIEBpZiAkbXMgICAgICBhbmQgJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci1taWNyb3NvZnQgeyAjeyRwcm9wZXJ0eX0gOiAgICAgLW1zLSN7JHZhbHVlfTsgfVxuICBAaWYgJG8gICAgICAgYW5kICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3Itb3BlcmEgICAgIHsgI3skcHJvcGVydHl9IDogICAgICAtby0jeyR2YWx1ZX07IH1cbiAgQGlmICRvZmZpY2lhbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7ICN7JHByb3BlcnR5fSA6ICAgICAgICAgI3skdmFsdWV9OyB9XG59XG4iLCIvLyBAZG9jIG9mZlxuLy8gVGhlc2UgZGVmYXVsdHMgbWFrZSB0aGUgYXJndW1lbnRzIG9wdGlvbmFsIGZvciB0aGlzIG1peGluXG4vLyBJZiB5b3UgbGlrZSwgc2V0IGRpZmZlcmVudCBkZWZhdWx0cyBiZWZvcmUgaW1wb3J0aW5nLlxuLy8gQGRvYyBvblxuXG5AaW1wb3J0IFwic2hhcmVkXCI7XG5AaW1wb3J0IFwiLi4vZnVuY3Rpb25zXCI7XG5cbi8vIFRoZSBkZWZhdWx0IGNvbG9yIGZvciBib3ggc2hhZG93c1xuJGRlZmF1bHQtYm94LXNoYWRvdy1jb2xvcjogIzMzMzMzMyAhZGVmYXVsdDtcblxuLy8gVGhlIGRlZmF1bHQgaG9yaXpvbnRhbCBvZmZzZXQuIFBvc2l0aXZlIGlzIHRvIHRoZSByaWdodC5cbiRkZWZhdWx0LWJveC1zaGFkb3ctaC1vZmZzZXQ6IDBweCAhZGVmYXVsdDtcblxuLy8gVGhlIGRlZmF1bHQgdmVydGljYWwgb2Zmc2V0LiBQb3NpdGl2ZSBpcyBkb3duLlxuJGRlZmF1bHQtYm94LXNoYWRvdy12LW9mZnNldDogMHB4ICFkZWZhdWx0O1xuXG4vLyBUaGUgZGVmYXVsdCBibHVyIGxlbmd0aC5cbiRkZWZhdWx0LWJveC1zaGFkb3ctYmx1cjogNXB4ICFkZWZhdWx0O1xuXG4vLyBUaGUgZGVmYXVsdCBzcHJlYWQgbGVuZ3RoLlxuJGRlZmF1bHQtYm94LXNoYWRvdy1zcHJlYWQgOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gVGhlIGRlZmF1bHQgc2hhZG93IGluc2V0OiBpbnNldCBvciBmYWxzZSAoZm9yIHN0YW5kYXJkIHNoYWRvdykuXG4kZGVmYXVsdC1ib3gtc2hhZG93LWluc2V0IDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIFByb3ZpZGVzIGNyb3NzLWJyb3dzZXIgZm9yIFdlYmtpdCwgR2Vja28sIGFuZCBDU1MzIGJveCBzaGFkb3dzIHdoZW4gb25lIG9yIG1vcmUgYm94XG4vLyBzaGFkb3dzIGFyZSBuZWVkZWQuXG4vLyBFYWNoIHNoYWRvdyBhcmd1bWVudCBzaG91bGQgYWRoZXJlIHRvIHRoZSBzdGFuZGFyZCBjc3MzIHN5bnRheCBmb3IgdGhlXG4vLyBib3gtc2hhZG93IHByb3BlcnR5LlxuQG1peGluIGJveC1zaGFkb3coXG4gICRzaGFkb3ctMSA6IGRlZmF1bHQsXG4gICRzaGFkb3ctMiA6IGZhbHNlLFxuICAkc2hhZG93LTMgOiBmYWxzZSxcbiAgJHNoYWRvdy00IDogZmFsc2UsXG4gICRzaGFkb3ctNSA6IGZhbHNlLFxuICAkc2hhZG93LTYgOiBmYWxzZSxcbiAgJHNoYWRvdy03IDogZmFsc2UsXG4gICRzaGFkb3ctOCA6IGZhbHNlLFxuICAkc2hhZG93LTkgOiBmYWxzZSxcbiAgJHNoYWRvdy0xMDogZmFsc2Vcbikge1xuICBAaWYgJHNoYWRvdy0xID09IGRlZmF1bHQge1xuICAgICRzaGFkb3ctMSA6IC1jb21wYXNzLXNwYWNlLWxpc3QoY29tcGFjdChpZigkZGVmYXVsdC1ib3gtc2hhZG93LWluc2V0LCBpbnNldCwgZmFsc2UpLCAkZGVmYXVsdC1ib3gtc2hhZG93LWgtb2Zmc2V0LCAkZGVmYXVsdC1ib3gtc2hhZG93LXYtb2Zmc2V0LCAkZGVmYXVsdC1ib3gtc2hhZG93LWJsdXIsICRkZWZhdWx0LWJveC1zaGFkb3ctc3ByZWFkLCAkZGVmYXVsdC1ib3gtc2hhZG93LWNvbG9yKSk7XG4gIH1cbiAgJHNoYWRvdyA6IGNvbXBhY3QoJHNoYWRvdy0xLCAkc2hhZG93LTIsICRzaGFkb3ctMywgJHNoYWRvdy00LCAkc2hhZG93LTUsICRzaGFkb3ctNiwgJHNoYWRvdy03LCAkc2hhZG93LTgsICRzaGFkb3ctOSwgJHNoYWRvdy0xMCk7XG4gIEBpbmNsdWRlIGV4cGVyaW1lbnRhbChib3gtc2hhZG93LCAkc2hhZG93LFxuICAgIC1tb3osIC13ZWJraXQsIG5vdCgtbyksIG5vdCgtbXMpLCBub3QoLWtodG1sKSwgb2ZmaWNpYWxcbiAgKTtcbn1cblxuLy8gUHJvdmlkZXMgYSBzaW5nbGUgY3Jvc3MtYnJvd3NlciBDU1MgYm94IHNoYWRvdyBmb3IgV2Via2l0LCBHZWNrbywgYW5kIENTUzMuXG4vLyBJbmNsdWRlcyBkZWZhdWx0IGFyZ3VtZW50cyBmb3IgaG9yaXpvbnRhbCBvZmZzZXQsIHZlcnRpY2FsIG9mZnNldCwgYmx1ciBsZW5ndGgsIHNwcmVhZCBsZW5ndGgsIGNvbG9yIGFuZCBpbnNldC5cbkBtaXhpbiBzaW5nbGUtYm94LXNoYWRvdyhcbiAgJGhvZmYgICA6ICRkZWZhdWx0LWJveC1zaGFkb3ctaC1vZmZzZXQsXG4gICR2b2ZmICAgOiAkZGVmYXVsdC1ib3gtc2hhZG93LXYtb2Zmc2V0LFxuICAkYmx1ciAgIDogJGRlZmF1bHQtYm94LXNoYWRvdy1ibHVyLFxuICAkc3ByZWFkIDogJGRlZmF1bHQtYm94LXNoYWRvdy1zcHJlYWQsXG4gICRjb2xvciAgOiAkZGVmYXVsdC1ib3gtc2hhZG93LWNvbG9yLFxuICAkaW5zZXQgIDogJGRlZmF1bHQtYm94LXNoYWRvdy1pbnNldFxuKSB7XG4gIEBpZiBub3QgKCRpbnNldCA9PSB0cnVlIG9yICRpbnNldCA9PSBmYWxzZSBvciAkaW5zZXQgPT0gaW5zZXQpIHtcbiAgICBAd2FybiBcIiRpbnNldCBleHBlY3RlZCB0byBiZSB0cnVlIG9yIHRoZSBpbnNldCBrZXl3b3JkLiBHb3QgI3skaW5zZXR9IGluc3RlYWQuIFVzaW5nOiBpbnNldFwiO1xuICB9XG5cbiAgQGlmICRjb2xvciA9PSBub25lIHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9IEBlbHNlIHtcbiAgICAkZnVsbCAgIDogJGhvZmYgJHZvZmY7XG4gICAgQGlmICRibHVyICAgeyAkZnVsbDogJGZ1bGwgJGJsdXI7ICAgfVxuICAgIEBpZiAkc3ByZWFkIHsgJGZ1bGw6ICRmdWxsICRzcHJlYWQ7IH1cbiAgICBAaWYgJGNvbG9yICB7ICRmdWxsOiAkZnVsbCAkY29sb3I7ICB9XG4gICAgQGlmICRpbnNldCAgeyAkZnVsbDogaW5zZXQgJGZ1bGw7ICAgfVxuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZ1bGwpO1xuICB9XG59XG4iLCJAaW1wb3J0IFwiY29tcGFzc1wiO1xuXG5AbWl4aW4gYWxlcnQtdHlwZSgkY29sb3IpIHtcbiAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICBjb2xvcjogd2hpdGU7XG4gIEBpbmNsdWRlIHRleHQtc2hhZG93KHJnYmEoYmxhY2ssIDAuMzUpIDFweCAxcHggMnB4KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkY29sb3IsIDIlKTtcbn1cblxuIiwiQGltcG9ydCBcInNoYXJlZFwiO1xuQGltcG9ydCBcIi4uL2Z1bmN0aW9uc1wiO1xuXG4vLyBUaGVzZSBkZWZhdWx0cyBtYWtlIHRoZSBhcmd1bWVudHMgb3B0aW9uYWwgZm9yIHRoaXMgbWl4aW5cbi8vIElmIHlvdSBsaWtlLCBzZXQgZGlmZmVyZW50IGRlZmF1bHRzIGluIHlvdXIgcHJvamVjdFxuXG4kZGVmYXVsdC10ZXh0LXNoYWRvdy1jb2xvcjogICAgI2FhYSAhZGVmYXVsdDtcbiRkZWZhdWx0LXRleHQtc2hhZG93LWgtb2Zmc2V0OiAwcHggICFkZWZhdWx0O1xuJGRlZmF1bHQtdGV4dC1zaGFkb3ctdi1vZmZzZXQ6IDBweCAgIWRlZmF1bHQ7XG4kZGVmYXVsdC10ZXh0LXNoYWRvdy1ibHVyOiAgICAgMXB4ICAhZGVmYXVsdDtcbiRkZWZhdWx0LXRleHQtc2hhZG93LXNwcmVhZDogICBmYWxzZSAgIWRlZmF1bHQ7XG5cbi8vIFByb3ZpZGVzIGNyb3NzLWJyb3dzZXIgdGV4dCBzaGFkb3dzIHdoZW4gb25lIG9yIG1vcmUgc2hhZG93cyBhcmUgbmVlZGVkLlxuLy8gRWFjaCBzaGFkb3cgYXJndW1lbnQgc2hvdWxkIGFkaGVyZSB0byB0aGUgc3RhbmRhcmQgY3NzMyBzeW50YXggZm9yIHRoZVxuLy8gdGV4dC1zaGFkb3cgcHJvcGVydHkuXG4vL1xuLy8gTm90ZTogaWYgYW55IHNoYWRvdyBoYXMgYSBzcHJlYWQgcGFyYW1ldGVyLCB0aGlzIHdpbGwgY2F1c2UgdGhlIG1peGluXG4vLyB0byBlbWl0IHRoZSBzaGFkb3cgZGVjbGFyYXRpb24gdHdpY2UsIGZpcnN0IHdpdGhvdXQgdGhlIHNwcmVhZCxcbi8vIHRoZW4gd2l0aCB0aGUgc3ByZWFkIGluY2x1ZGVkLiBUaGlzIGFsbG93cyB5b3UgdG8gcHJvZ3Jlc3NpdmVseVxuLy8gZW5oYW5jZSB0aGUgYnJvd3NlcnMgdGhhdCBkbyBzdXBwb3J0IHRoZSBzcHJlYWQgcGFyYW1ldGVyLlxuQG1peGluIHRleHQtc2hhZG93KFxuICAkc2hhZG93LTEgOiBkZWZhdWx0LFxuICAkc2hhZG93LTIgOiBmYWxzZSxcbiAgJHNoYWRvdy0zIDogZmFsc2UsXG4gICRzaGFkb3ctNCA6IGZhbHNlLFxuICAkc2hhZG93LTUgOiBmYWxzZSxcbiAgJHNoYWRvdy02IDogZmFsc2UsXG4gICRzaGFkb3ctNyA6IGZhbHNlLFxuICAkc2hhZG93LTggOiBmYWxzZSxcbiAgJHNoYWRvdy05IDogZmFsc2UsXG4gICRzaGFkb3ctMTA6IGZhbHNlXG4pIHtcbiAgQGlmICRzaGFkb3ctMSA9PSBkZWZhdWx0IHtcbiAgICAkc2hhZG93LTE6IGNvbXBhY3QoJGRlZmF1bHQtdGV4dC1zaGFkb3ctaC1vZmZzZXQgJGRlZmF1bHQtdGV4dC1zaGFkb3ctdi1vZmZzZXQgJGRlZmF1bHQtdGV4dC1zaGFkb3ctYmx1ciAkZGVmYXVsdC10ZXh0LXNoYWRvdy1zcHJlYWQgJGRlZmF1bHQtdGV4dC1zaGFkb3ctY29sb3IpO1xuICB9XG4gICRzaGFkb3dzLXdpdGhvdXQtc3ByZWFkOiBqb2luKCgpLCgpLGNvbW1hKTtcbiAgJHNoYWRvd3M6IGpvaW4oKCksKCksY29tbWEpO1xuICAkaGFzLXNwcmVhZDogZmFsc2U7XG4gIEBlYWNoICRzaGFkb3cgaW4gY29tcGFjdCgkc2hhZG93LTEsICRzaGFkb3ctMiwgJHNoYWRvdy0zLCAkc2hhZG93LTQsICRzaGFkb3ctNSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICRzaGFkb3ctNiwgJHNoYWRvdy03LCAkc2hhZG93LTgsICRzaGFkb3ctOSwgJHNoYWRvdy0xMCkge1xuICAgIEBpZiBsZW5ndGgoJHNoYWRvdykgPiA0IHtcbiAgICAgICRoYXMtc3ByZWFkOiB0cnVlO1xuICAgICAgJHNoYWRvd3Mtd2l0aG91dC1zcHJlYWQ6IGFwcGVuZCgkc2hhZG93cy13aXRob3V0LXNwcmVhZCwgbnRoKCRzaGFkb3csMSkgbnRoKCRzaGFkb3csMikgbnRoKCRzaGFkb3csMykgbnRoKCRzaGFkb3csNSkpO1xuICAgICAgJHNoYWRvd3M6IGFwcGVuZCgkc2hhZG93cywgJHNoYWRvdyk7XG4gICAgfSBlbHNlIHtcbiAgICAgICRzaGFkb3dzLXdpdGhvdXQtc3ByZWFkOiBhcHBlbmQoJHNoYWRvd3Mtd2l0aG91dC1zcHJlYWQsICRzaGFkb3cpO1xuICAgICAgJHNoYWRvd3M6IGFwcGVuZCgkc2hhZG93cywgJHNoYWRvdyk7XG4gICAgfVxuICB9XG4gIEBpZiAkaGFzLXNwcmVhZCB7XG4gICAgdGV4dC1zaGFkb3c6ICRzaGFkb3dzLXdpdGhvdXQtc3ByZWFkO1xuICB9XG4gIHRleHQtc2hhZG93OiAkc2hhZG93cztcbn1cblxuLy8gUHJvdmlkZXMgYSBzaW5nbGUgY3Jvc3MtYnJvd3NlciBDU1MgdGV4dCBzaGFkb3cuXG4vL1xuLy8gUHJvdmlkZXMgc2Vuc2libGUgZGVmYXVsdHMgZm9yIHRoZSBjb2xvciwgaG9yaXpvbnRhbCBvZmZzZXQsIHZlcnRpY2FsIG9mZnNldCwgYmx1ciwgYW5kIHNwcmVhZFxuLy8gYWNjb3JkaW5nIHRvIHRoZSBjb25maWd1cmF0aW9uIGRlZmF1bHRzIGFib3ZlLlxuQG1peGluIHNpbmdsZS10ZXh0LXNoYWRvdyhcbiAgJGhvZmY6IGZhbHNlLFxuICAkdm9mZjogZmFsc2UsXG4gICRibHVyOiBmYWxzZSxcbiAgJHNwcmVhZDogZmFsc2UsXG4gICRjb2xvcjogZmFsc2Vcbikge1xuICAvLyBBIGxvdCBvZiBwZW9wbGUgdGhpbmsgdGhlIGNvbG9yIGNvbWVzIGZpcnN0LiBJdCBkb2Vzbid0LlxuICBAaWYgdHlwZS1vZigkaG9mZikgPT0gY29sb3Ige1xuICAgICR0ZW1wLWNvbG9yOiAkaG9mZjtcbiAgICAkaG9mZjogJHZvZmY7XG4gICAgJHZvZmY6ICRibHVyO1xuICAgICRibHVyOiAkc3ByZWFkO1xuICAgICRzcHJlYWQ6ICRjb2xvcjtcbiAgICAkY29sb3I6ICR0ZW1wLWNvbG9yO1xuICB9XG4gIC8vIENhbid0IHJlbHkgb24gZGVmYXVsdCBhc3NpZ25tZW50IHdpdGggbXVsdGlwbGUgc3VwcG9ydGVkIGFyZ3VtZW50IG9yZGVycy5cbiAgJGhvZmY6ICAgaWYoJGhvZmYsICAgJGhvZmYsICAgJGRlZmF1bHQtdGV4dC1zaGFkb3ctaC1vZmZzZXQpO1xuICAkdm9mZjogICBpZigkdm9mZiwgICAkdm9mZiwgICAkZGVmYXVsdC10ZXh0LXNoYWRvdy12LW9mZnNldCk7XG4gICRibHVyOiAgIGlmKCRibHVyLCAgICRibHVyLCAgICRkZWZhdWx0LXRleHQtc2hhZG93LWJsdXIgICAgKTtcbiAgJHNwcmVhZDogaWYoJHNwcmVhZCwgJHNwcmVhZCwgJGRlZmF1bHQtdGV4dC1zaGFkb3ctc3ByZWFkICApO1xuICAkY29sb3I6ICBpZigkY29sb3IsICAkY29sb3IsICAkZGVmYXVsdC10ZXh0LXNoYWRvdy1jb2xvciAgICk7XG4gIC8vIFdlIGRvbid0IG5lZWQgZXhwZXJpbWVudGFsIHN1cHBvcnQgZm9yIHRoaXMgcHJvcGVydHkuXG4gIEBpZiAkY29sb3IgPT0gbm9uZSBvciAkaG9mZiA9PSBub25lIHtcbiAgICBAaW5jbHVkZSB0ZXh0LXNoYWRvdyhub25lKTtcbiAgfSBAZWxzZSB7XG4gICAgQGluY2x1ZGUgdGV4dC1zaGFkb3coY29tcGFjdCgkaG9mZiAkdm9mZiAkYmx1ciAkc3ByZWFkICRjb2xvcikpO1xuICB9XG59XG4iLCJAaW1wb3J0IFwiY29tcGFzc1wiO1xuXG4ud2ViZi1saXN0LWF1dG9jb21wbGV0ZSB7XG4gIHdpZHRoOiBhdXRvO1xuXG4gIGxpLndlYmYtbGlzdC1pdGVtLW1vcmUge1xuICAgIGhlaWdodDogMTJweDtcbiAgICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xuXG4gICAgJiA+IGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGhlaWdodDogMTBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMHB4O1xuICAgICAgZm9udC1zaXplOiA5cHg7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZjNmM2YzO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGxpIHtcbiAgICAmLndlYmYtbGlzdC1pdGVtLndlYmYtbGlzdC1pdGVtLW9wdGlvbi5lbmFibGVkIHtcbiAgICAgICYud2ViZi1ub3Jlc3VsdCB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICBjb2xvcjogZ3JleTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiA1cHggMTBweDtcblxuICAgICAgICAmOmhvdmVyLCAmLndlYmYtZm9jdXMge1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLndlYmYtbWQtdGV4dCB7XG4gIC53cmFwcGVyLXdlYmYtYXVjb2NvbXBsZXRlIHtcbiAgICBoZWlnaHQ6IDI4cHg7XG4gIH1cblxuICAmLm91dGxpbmVkIHtcbiAgICAud3JhcHBlci13ZWJmLWF1Y29jb21wbGV0ZSB7XG4gICAgICBoZWlnaHQ6IDE0cHg7XG4gICAgfVxuICB9XG59XG4iLCJAaW1wb3J0IFwic2hhcmVkXCI7XG5cbi8vIFRoZSBkZWZhdWx0IGJveC1zaXppbmcgbW9kZWwgd2hlbiBubyBhcmd1bWVudCBpcyBwcm92aWRlZCB0byB0aGUgYm94LXNpemluZyBtaXhpbjogWyBjb250ZW50LWJveCB8IGJvcmRlci1ib3ggfCBwYWRkaW5nLWJveCBdXG4vL1xuLy8gVGhlIGJyb3dzZXIgZGVmYXVsdCBpcyBjb250ZW50LWJveCwgY29tcGFzcyBkZWZhdWx0cyB0byBib3JkZXItYm94LlxuJGRlZmF1bHQtYm94LXNpemluZzogYm9yZGVyLWJveCAhZGVmYXVsdDtcblxuLy8gQ2hhbmdlIHRoZSBib3ggbW9kZWwgZm9yIE1vemlsbGEsIFdlYmtpdCwgSUU4IGFuZCB0aGUgZnV0dXJlXG4vL1xuLy8gQHBhcmFtICRic1xuLy8gICBbIGNvbnRlbnQtYm94IHwgYm9yZGVyLWJveCBdXG5cbkBtaXhpbiBib3gtc2l6aW5nKCRiczogJGRlZmF1bHQtYm94LXNpemluZykge1xuICAkYnM6IHVucXVvdGUoJGJzKTtcbiAgQGluY2x1ZGUgZXhwZXJpbWVudGFsKGJveC1zaXppbmcsICRicyxcbiAgICAtbW96LCAtd2Via2l0LCBub3QoLW8pLCBub3QoLW1zKSwgbm90KC1raHRtbCksIG9mZmljaWFsXG4gICk7XG59XG4iLCJidXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbn1cblxuLmhpZGRlbiB7XG4gIGRpc3BsYXk6bm9uZSAhaW1wb3J0YW50O1xufVxuXG4ud2ViZi1zZXBhcmF0b3Ige1xuICBiYWNrZ3JvdW5kOiAjZGRkO1xuICBtYXJnaW46IDIwcHggMDtcbiAgaGVpZ2h0OiAxcHg7XG4gIGZvbnQtc2l6ZTogMDtcblxuICAmLnNlY29uZGFyeSB7XG4gICAgbWFyZ2luOiAxMnB4IDA7XG4gICAgYmFja2dyb3VuZDogI2VhZWFlYTtcbiAgfVxufVxuXG4iLCJAaW1wb3J0IFwiY29tcGFzc1wiO1xuQGltcG9ydCBcIi4uL21peGlucy9ib3hlc1wiO1xuXG4ud2ViZi1ib3gge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGVmYXVsdC1jb2xvcjtcbiAgY29sb3I6ICRkZWZhdWx0LXRleHQtY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMC41cmVtKTtcbiAgYm9yZGVyOiAxcHggc29saWQgJGRlZmF1bHQtYm9yZGVyLWNvbG9yO1xuICBib3gtc2hhZG93OiAwIDAuMjVyZW0gMXJlbSByZ2JhKDAsIDAsIDAsIDAuMSkgIWltcG9ydGFudDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuXG4gICYuZm9sZCB7XG4gICAgLmJveC1oZWFkZXIge1xuICAgICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuXG4gICAgICAmLmRyb3Age1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmJveC1ib2R5IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmJveC1oZWFkZXIsXG4gIC5ib3gtYm9keSxcbiAgLmJveC1mb290ZXIge1xuICAgIHBhZGRpbmc6IDAuNnJlbSAxcmVtO1xuICB9XG5cbiAgLmJveC1oZWFkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkZWZhdWx0LWNvbG9yO1xuICAgIGNvbG9yOiAkZGVmYXVsdC10ZXh0LWNvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbSAwLjVyZW0gMCAwO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAvL0BpbmNsdWRlIGNsZWFyZml4O1xuICAgIGZvbnQtZmFtaWx5OiBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RlZTJlNjtcblxuICAgICYgPiAud3JhcHBlciB7XG4gICAgICBtaW4taGVpZ2h0OiAyNXB4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBmb250LXNpemU6IDEuMDVyZW07XG5cbiAgICAgICYgPiBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgICYgPiAud2ViZi1idXR0b24ge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgIHBhZGRpbmctdG9wOiAycHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMnB4O1xuICAgIH1cbiAgfVxuXG4gICYgPiAuYm94LWJvZHkge1xuICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjNyZW07XG4gIH1cblxuICAmID4gLmJveC1mb290ZXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBsaWdodGVuKCRkZWZhdWx0LXRleHQtY29sb3IsIDU2JSk7XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJGluZm9zQ29sb3IgaW4gJGNvbG9ycyB7XG4gICAgJi4jeyRuYW1lfSB7XG4gICAgICAkYmdDb2xvcjogbWFwLWdldCgkaW5mb3NDb2xvciwgJ2Jhc2lzJyk7XG4gICAgICAkdGV4dENvbG9yOiBtYXAtZ2V0KCRpbmZvc0NvbG9yLCAndGV4dCcpO1xuXG4gICAgICBAaW5jbHVkZSBib3gtdHlwZSgkYmdDb2xvciwgJHRleHRDb2xvcik7XG4gICAgfVxuICB9XG5cblxuICAvLyBTbWFsbCBCb3hlc1xuICAmLnNtYWxsIHtcbiAgICBib3gtc2hhZG93OiAwIDAuMjVyZW0gMC4yNXJlbSByZ2JhKDAsIDAsIDAsIDAuMDUpICFpbXBvcnRhbnQ7XG5cbiAgICAuYm94LWhlYWRlciB7XG4gICAgICBwYWRkaW5nOiAwLjJyZW0gMXJlbTtcblxuICAgICAgJiA+IC53cmFwcGVyIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjhyZW07XG4gICAgICAgIG1pbi1oZWlnaHQ6IDE5cHg7XG5cbiAgICAgICAgJiA+IGgzIHtcbiAgICAgICAgICAmID4gYSB7XG4gICAgICAgICAgICBjb2xvcjogIzU1NTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJiA+IC53ZWJmLWJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxcHg7XG4gICAgICAgIHBhZGRpbmc6IDFweCA2cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBlWHRyYSBTbWFsbCBCb3hlc1xuICAmLnhzbWFsbCB7XG4gICAgYm94LXNoYWRvdzogMCAwLjJyZW0gMC4ycmVtIHJnYmEoMCwgMCwgMCwgMC4wNCkgIWltcG9ydGFudDtcblxuICAgIC5ib3gtaGVhZGVyIHtcbiAgICAgIHBhZGRpbmc6IDAuMXJlbSAxcmVtO1xuXG4gICAgICAmID4gLndyYXBwZXIge1xuICAgICAgICBmb250LXNpemU6IDAuN3JlbTtcbiAgICAgICAgbWluLWhlaWdodDogMTdweDtcblxuICAgICAgICAmID4gaDMge1xuICAgICAgICAgICYgPiBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNTU1O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmID4gLndlYmYtYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDFweDtcbiAgICAgICAgcGFkZGluZzogMCA1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG5cbiIsIkBpbXBvcnQgXCJjb21wYXNzXCI7XG5cbkBtaXhpbiBib3gtdHlwZSgkY29sb3IsICR0ZXh0Q29sb3IpIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yO1xuXG4gICYucGxhaW4ge1xuICAgIGJvcmRlci10b3AtY29sb3I6IGRhcmtlbigkY29sb3IsIDE2JSk7XG4gIH1cblxuICAmLnBsYWluID4gLmJveC1oZWFkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICBjb2xvcjogJHRleHRDb2xvcjtcblxuICAgICYgPiAud3JhcHBlciA+IGgzID4gYSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICBjb2xvcjogJHRleHRDb2xvcjtcbiAgICB9XG5cbiAgICAmIC53ZWJmLWJ1dHRvbiB7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgY29sb3I6ICR0ZXh0Q29sb3I7XG5cbiAgICAgICY6aG92ZXIsICY6Zm9jdXMsICY6YWN0aXZlLCAmLndlYmYtYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgICAgIH1cblxuICAgICAgJjphY3RpdmUsICYud2ViZi1hY3RpdmUge1xuICAgICAgICBAaW5jbHVkZSBzaW5nbGUtYm94LXNoYWRvdygwcHgsIDBweCwgNXB4LCAxcHgsIGRhcmtlbigkY29sb3IsMjAlKSwgdHJ1ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaW1wb3J0IFwiY29tcGFzc1wiO1xuQGltcG9ydCBcIi4uL21peGlucy9ncmFkaWVudHMuc2Nzc1wiO1xuXG4ud2ViZi1idXR0b24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgYm9yZGVyLWNvbG9yOiBsaWdodGVuKCRkZWZhdWx0LXRleHQtY29sb3IsIDUwJSk7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogJGJ0bi1ib3JkZXItd2lkdGg7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoICRidG4tYm9yZGVyLXJhZGl1cyApO1xuICBib3gtc2hhZG93OiBub25lO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBtYXJnaW4tYm90dG9tOiAkYnRuLW1hcmdpbi1ib3R0b207IC8vIENlIG4nZXN0IHBhcyBhdSBjb21wb3NhbnQgZGUgZMOpdGVybWluZXIgc2EgbWFyZ2UgZXh0w6lyaWV1cmVcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIG91dGxpbmU6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHRyYW5zaXRpb246XG4gICAgY29sb3IgMzAwbXMgZWFzZS1pbi1vdXQsXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbiAzMDBtcyBlYXNlLWluLW91dCxcbiAgICBiYWNrZ3JvdW5kLWNvbG9yIDIzMG1zIGVhc2UtaW4tb3V0LFxuICAgIGJvcmRlci1jb2xvciAyMzBtcyBlYXNlLWluLW91dCxcbiAgICBib3gtc2hhZG93IDEwMG1zIGVhc2UtaW4tb3V0O1xuICBAaW5jbHVkZSB1c2VyLXNlbGVjdChub25lKTtcblxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoICRkZWZhdWx0LXRleHQtY29sb3IsIDAuMDcgKTtcbiAgfVxuXG4gICY6YWN0aXZlLCAmLndlYmYtYWN0aXZlLCAmLndlYmYtc3RhdGUtYWN0aXZlIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCAkZGVmYXVsdC10ZXh0LWNvbG9yLCAwLjE0ICk7XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJGluZm9zQ29sb3IgaW4gJGNvbG9ycyB7XG4gICAgJGJhc2lzOiBtYXAtZ2V0KCRpbmZvc0NvbG9yLCAnYmFzaXMnKTtcbiAgICAkY29tcGxlbWVudGFyeTogbWFwLWdldCgkaW5mb3NDb2xvciwgJ2NvbXBsZW1lbnRhcnknKTtcbiAgICAkaG92ZXI6IG1hcC1nZXQoJGluZm9zQ29sb3IsICdob3ZlcicpO1xuICAgICR0ZXh0Q29sb3I6IG1hcC1nZXQoJGluZm9zQ29sb3IsICd0ZXh0Jyk7XG4gICAgJGJvcmRlckNvbG9yOiAkYmFzaXM7XG5cbiAgICAmLndlYmYtYnV0dG9uLSN7JG5hbWV9LCAmLiN7JG5hbWV9IHtcbiAgICAgICYsICYud2ViZi1ub3JtYWwge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFzaXM7XG4gICAgICAgIGNvbG9yOiAkdGV4dENvbG9yO1xuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXJDb2xvcjtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgICAgIH1cblxuICAgICAgJjpub3QoLm11dGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgICAgICY6aG92ZXIsICY6YWN0aXZlLCAmLndlYmYtYWN0aXZlLCAmLndlYmYtc3RhdGUtYWN0aXZlIHtcbiAgICAgICAgICBjb2xvcjogJHRleHRDb2xvcjtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRob3ZlcjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAmOmFjdGl2ZSwgJi53ZWJmLWFjdGl2ZSwgJi53ZWJmLXN0YXRlLWFjdGl2ZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRob3ZlciwgMTAlKTtcbiAgICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkaG92ZXIsIDEwJSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi53ZWJmLWJ1dHRvbi1jb2xvcmVkLXNoYWRvdywgJi5jb2xvcmVkLXNoYWRvdyB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMC40cmVtIDJyZW0gMCByZ2JhKCRiYXNpcywgMC4xNSksIDAgMC43cmVtIDFyZW0gLTAuNXJlbSByZ2JhKCRiYXNpcywgMC40KTtcbiAgICAgICAgJjpub3QoLm11dGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgICAgICAgJjpob3ZlciwgJi53ZWJmLWFjdGl2ZSwgJi53ZWJmLXN0YXRlLWFjdGl2ZSB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAuNHJlbSAzcmVtIDAgcmdiYSgkYmFzaXMsIDAuMTUpLCAwIDAuN3JlbSAzcmVtIC0wLjVyZW0gcmdiYSgkYmFzaXMsIDAuNCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6bm90KC5kaXNhYmxlZCkge1xuICAgICAgICAmOnZpc2l0ZWQsICY6Zm9jdXMge1xuICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0Q29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLndlYmYtYnV0dG9uLWNhcmV0IHtcbiAgICAgICAgJi53ZWJmLWJ1dHRvbi1jYXJldC1kb3duIHsgYm9yZGVyLXRvcC1jb2xvcjogJHRleHRDb2xvcjsgfVxuICAgICAgICAmLndlYmYtYnV0dG9uLWNhcmV0LWxlZnQgeyBib3JkZXItcmlnaHQtY29sb3I6ICR0ZXh0Q29sb3I7IH1cbiAgICAgICAgJi53ZWJmLWJ1dHRvbi1jYXJldC1yaWdodCB7IGJvcmRlci1sZWZ0LWNvbG9yOiAkdGV4dENvbG9yOyB9XG4gICAgICAgICYud2ViZi1idXR0b24tY2FyZXQtdXAgeyBib3JkZXItYm90dG9tLWNvbG9yOiAkdGV4dENvbG9yOyB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi53ZWJmLWJ1dHRvbi10ZXh0LSN7JG5hbWV9LCAmLnRleHQtI3skbmFtZX0ge1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiAkYmFzaXM7XG4gICAgICAmOm5vdCgubXV0ZWQpOm5vdCguZGlzYWJsZWQpIHtcbiAgICAgICAgJjpob3ZlciwgJi53ZWJmLWFjdGl2ZSwgJi53ZWJmLXN0YXRlLWFjdGl2ZSB7XG4gICAgICAgICAgY29sb3I6IGRhcmtlbigkYmFzaXMsIDEwJSk7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSggJGJhc2lzLCAwLjA3ICk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmFjdGl2ZSwgJi53ZWJmLWFjdGl2ZSwgJi53ZWJmLXN0YXRlLWFjdGl2ZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSggJGJhc2lzLCAwLjE0ICk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC53ZWJmLWJ1dHRvbi1jYXJldCB7XG4gICAgICAgICYud2ViZi1idXR0b24tY2FyZXQtZG93biB7IGJvcmRlci10b3AtY29sb3I6ICRiYXNpczsgfVxuICAgICAgICAmLndlYmYtYnV0dG9uLWNhcmV0LWxlZnQgeyBib3JkZXItcmlnaHQtY29sb3I6ICRiYXNpczsgfVxuICAgICAgICAmLndlYmYtYnV0dG9uLWNhcmV0LXJpZ2h0IHsgYm9yZGVyLWxlZnQtY29sb3I6ICRiYXNpczsgfVxuICAgICAgICAmLndlYmYtYnV0dG9uLWNhcmV0LXVwIHsgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGJhc2lzOyB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi53ZWJmLWJ1dHRvbi1vdXRsaW5lLSN7JG5hbWV9LCAmLm91dGxpbmUtI3skbmFtZX0ge1xuICAgICAgY29sb3I6ICRiYXNpcztcbiAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlckNvbG9yO1xuICAgICAgJjpub3QoLm11dGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgICAgICY6aG92ZXIsICYud2ViZi1hY3RpdmUsICYud2ViZi1zdGF0ZS1hY3RpdmUge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoICRiYXNpcywgMC4wNyApO1xuICAgICAgICAgIGNvbG9yOiBkYXJrZW4oJGJhc2lzLCAxMCUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjphY3RpdmUsICYud2ViZi1hY3RpdmUsICYud2ViZi1zdGF0ZS1hY3RpdmUge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoICRiYXNpcywgMC4xNCApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLndlYmYtYnV0dG9uLWNvbG9yZWQtc2hhZG93LCAmLmNvbG9yZWQtc2hhZG93IHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwLjRyZW0gMnJlbSAwIHJnYmEoJGJhc2lzLCAwLjE1KSwgMCAwLjdyZW0gMXJlbSAtMC41cmVtIHJnYmEoJGJhc2lzLCAwLjQpO1xuICAgICAgICAmOm5vdCgubXV0ZWQpOm5vdCguZGlzYWJsZWQpIHtcbiAgICAgICAgICAmOmhvdmVyLCAmLndlYmYtYWN0aXZlLCAmLndlYmYtc3RhdGUtYWN0aXZlIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMC40cmVtIDNyZW0gMCByZ2JhKCRiYXNpcywgMC4xNSksIDAgMC43cmVtIDNyZW0gLTAuNXJlbSByZ2JhKCRiYXNpcywgMC40KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC53ZWJmLWJ1dHRvbi1jYXJldCB7XG4gICAgICAgICYud2ViZi1idXR0b24tY2FyZXQtZG93biB7IGJvcmRlci10b3AtY29sb3I6ICRiYXNpczsgfVxuICAgICAgICAmLndlYmYtYnV0dG9uLWNhcmV0LWxlZnQgeyBib3JkZXItcmlnaHQtY29sb3I6ICRiYXNpczsgfVxuICAgICAgICAmLndlYmYtYnV0dG9uLWNhcmV0LXJpZ2h0IHsgYm9yZGVyLWxlZnQtY29sb3I6ICRiYXNpczsgfVxuICAgICAgICAmLndlYmYtYnV0dG9uLWNhcmV0LXVwIHsgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGJhc2lzOyB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi53ZWJmLWJ1dHRvbi1ncmFkaWVudC0jeyRuYW1lfSwgJi5ncmFkaWVudC0jeyRuYW1lfSB7XG4gICAgICAkaG92ZXI6ZGFya2VuKCRob3Zlciw1JSk7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFzaXMgbGluZWFyLWdyYWRpZW50KCRidG4tZ3JhZGllbnQtYW5nbGUsICRob3ZlciAwJSwgJGJhc2lzIDUwJSwgJGNvbXBsZW1lbnRhcnkgMTAwJSk7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDA7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDIwMCU7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBjb2xvcjogJHRleHRDb2xvcjtcbiAgICAgIHBhZGRpbmc6IHVucXVvdGUoXCItbW96LWNhbGMoICN7JGJ0bi1wYWRkaW5nLXRvcGJvdHRvbX0gKyAjeyRidG4tYm9yZGVyLXdpZHRofSApXCIpIHVucXVvdGUoXCJjYWxjKCAjeyRidG4tcGFkZGluZy1zaWRlc30gKyAjeyRidG4tYm9yZGVyLXdpZHRofSApXCIpO1xuICAgICAgcGFkZGluZzogdW5xdW90ZShcIi13ZWJraXQtY2FsYyggI3skYnRuLXBhZGRpbmctdG9wYm90dG9tfSArICN7JGJ0bi1ib3JkZXItd2lkdGh9IClcIikgdW5xdW90ZShcImNhbGMoICN7JGJ0bi1wYWRkaW5nLXNpZGVzfSArICN7JGJ0bi1ib3JkZXItd2lkdGh9IClcIik7XG4gICAgICBwYWRkaW5nOiB1bnF1b3RlKFwiY2FsYyggI3skYnRuLXBhZGRpbmctdG9wYm90dG9tfSArICN7JGJ0bi1ib3JkZXItd2lkdGh9IClcIikgdW5xdW90ZShcImNhbGMoICN7JGJ0bi1wYWRkaW5nLXNpZGVzfSArICN7JGJ0bi1ib3JkZXItd2lkdGh9IClcIik7XG4gICAgICAmOm5vdCgubXV0ZWQpOm5vdCguZGlzYWJsZWQpIHtcbiAgICAgICAgJjpob3ZlciwgJi53ZWJmLWFjdGl2ZSwgJi53ZWJmLXN0YXRlLWFjdGl2ZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi53ZWJmLWJ1dHRvbi1jb2xvcmVkLXNoYWRvdywgJi5jb2xvcmVkLXNoYWRvdyB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMC40cmVtIDJyZW0gMCByZ2JhKCRiYXNpcywgMC4xNSksIDAgMC43cmVtIDFyZW0gLTAuNXJlbSByZ2JhKCRiYXNpcywgMC40KTtcbiAgICAgICAgJjpub3QoLm11dGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgICAgICAgJjpob3ZlciwgJi53ZWJmLWFjdGl2ZSwgJi53ZWJmLXN0YXRlLWFjdGl2ZSB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAuNHJlbSAzcmVtIDAgcmdiYSgkYmFzaXMsIDAuMTUpLCAwIDAuN3JlbSAzcmVtIC0wLjVyZW0gcmdiYSgkYmFzaXMsIDAuNCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi53ZWJmLWJ1dHRvbi1zaGFkb3csICYuc2hhZG93IHtcbiAgICBib3gtc2hhZG93OiAwcHggMXB4IDVweCAwcHggcmdiYSgwLDAsMCwwLjIpLCAwcHggMnB4IDJweCAwcHggcmdiYSgwLDAsMCwwLjE0KSwgMHB4IDNweCAxcHggLTJweCByZ2JhKDAsMCwwLDAuMTIpO1xuICAgICY6bm90KC5tdXRlZCk6bm90KC5kaXNhYmxlZCkge1xuICAgICAgJjpob3ZlciwgJi53ZWJmLWFjdGl2ZSwgJi53ZWJmLXN0YXRlLWFjdGl2ZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCAxcHggMTBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggMnB4IDhweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE0KSwgMHB4IDNweCA1cHggLTJweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYubXV0ZWQge1xuICAgICYsICY6aG92ZXIsICY6YWN0aXZlLCAmOnZpc2l0ZWQge1xuICAgICAgb3BhY2l0eTowLjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIH1cbiAgfVxuXG4gICYuZGlzYWJsZWQge1xuICAgICYsICY6aG92ZXIsICY6YWN0aXZlLCAmOnZpc2l0ZWQge1xuICAgICAgQGluY2x1ZGUgYmFja2dyb3VuZC1pbWFnZShub25lKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkZWZhdWx0LWNvbG9yO1xuICAgICAgYm9yZGVyLWNvbG9yOiBsaWdodGVuKCRkZWZhdWx0LWJvcmRlci1jb2xvciwgMTAlKTtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gICAgICBjb2xvcjogbGlnaHRlbigkZGVmYXVsdC10ZXh0LWNvbG9yLCA0MCUpO1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgIC53ZWJmLWJ1dHRvbi1jYXJldCB7XG4gICAgICAgICYud2ViZi1idXR0b24tY2FyZXQtZG93biB7IGJvcmRlci10b3AtY29sb3I6IGxpZ2h0ZW4oJGRlZmF1bHQtdGV4dC1jb2xvciwgNDAlKTsgfVxuICAgICAgICAmLndlYmYtYnV0dG9uLWNhcmV0LWxlZnQgeyBib3JkZXItcmlnaHQtY29sb3I6IGxpZ2h0ZW4oJGRlZmF1bHQtdGV4dC1jb2xvciwgNDAlKTsgfVxuICAgICAgICAmLndlYmYtYnV0dG9uLWNhcmV0LXJpZ2h0IHsgYm9yZGVyLWxlZnQtY29sb3I6IGxpZ2h0ZW4oJGRlZmF1bHQtdGV4dC1jb2xvciwgNDAlKTsgfVxuICAgICAgICAmLndlYmYtYnV0dG9uLWNhcmV0LXVwIHsgYm9yZGVyLWJvdHRvbS1jb2xvcjogbGlnaHRlbigkZGVmYXVsdC10ZXh0LWNvbG9yLCA0MCUpOyB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi53ZWJmLWJ1dHRvbi1zcXVhcmUsICYuc3F1YXJlIHtcbiAgICAmLCAmOmhvdmVyLCAmOmFjdGl2ZSB7XG4gICAgICBib3JkZXItcmFkaXVzOjAgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAmLndlYmYtYnV0dG9uLXBpbGwsICYucGlsbCB7XG4gICAgJiwgJjpob3ZlciwgJjphY3RpdmUge1xuICAgICAgYm9yZGVyLXJhZGl1czogMTAwcmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgJi53ZWJmLWJ1dHRvbi1ibG9jaywgJi5ibG9jayB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyggJGJ0bi1ib3JkZXItcmFkaXVzKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gICYud2ViZi1idXR0b24tbG9hZCwgJi5sb2FkIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAwO1xuICAgIC53ZWJmLWJ1dHRvbi1tYWludGV4dCB7XG4gICAgICB0cmFuc2l0aW9uOiAwLjNzIGNvbG9yO1xuICAgIH1cbiAgICAud2ViZi1idXR0b24taWNvbi1sb2FkZXIge1xuICAgICAgbGVmdDo1MCU7XG4gICAgICBtYXJnaW4tbGVmdDotMC41ZW07XG4gICAgICBtYXJnaW4tdG9wOi0wLjVlbTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB0b3A6NTAlO1xuICAgICAgdHJhbnNpdGlvbjogMC4zcyBjb2xvcjtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICAgIC53ZWJmLWJ1dHRvbi1wcm9ncmVzc2JhciB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgICBjb250ZW50OiAnICc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogMCU7XG4gICAgICB6LWluZGV4OiAtMTtcbiAgICB9XG4gICAgJi53ZWJmLWJ1dHRvbi1sb2FkLndlYmYtYnV0dG9uLWxvYWRpbmcsXG4gICAgJi5sb2FkLmxvYWRpbmcge1xuICAgICAgLndlYmYtYnV0dG9uLW1haW50ZXh0IHtcbiAgICAgICAgY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgICAud2ViZi1idXR0b24taWNvbi1sb2FkZXIge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AZWFjaCAkc2l6ZSwgJGluZm9zU2l6ZSBpbiAkd2ViZlNpemVzIHtcbiAgJHJhdGlvOiBtYXAtZ2V0KCRpbmZvc1NpemUsICdyYXRpbycpO1xuICAkY2xhc3NTaXplOicnO1xuICAkZGFzaENsYXNzU2l6ZTonJztcblxuICBAaWYgKCRzaXplICE9ICdkZWZhdWx0Jykge1xuICAgICRjbGFzc1NpemU6ICcuJyskc2l6ZTtcbiAgICAkZGFzaENsYXNzU2l6ZTogJy0nKyRzaXplO1xuICB9XG5cbiAgLndlYmYtYnV0dG9uI3skZGFzaENsYXNzU2l6ZX0sIC53ZWJmLWJ1dHRvbiN7JGNsYXNzU2l6ZX0ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoICRidG4tYm9yZGVyLXJhZGl1cyAqICRyYXRpbyApO1xuICAgIGZvbnQtc2l6ZTogJHJhdGlvICogMXJlbTtcbiAgICBwYWRkaW5nOiAkYnRuLXBhZGRpbmctdG9wYm90dG9tKiRyYXRpbyAkYnRuLXBhZGRpbmctc2lkZXMqJHJhdGlvO1xuICAgIC53ZWJmLWJ1dHRvbi1pY29uIHtcbiAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICYud2ViZi1pY29uLWxlZnQgeyBtYXJnaW4tcmlnaHQ6JGJ0bi1wYWRkaW5nLXNpZGVzKiAkcmF0aW8gLyAzOyB9XG4gICAgICAmLndlYmYtaWNvbi1yaWdodCB7IG1hcmdpbi1sZWZ0OiRidG4tcGFkZGluZy1zaWRlcyogJHJhdGlvIC8gMzsgfVxuICAgIH1cbiAgICAud2ViZi1idXR0b24tY2FyZXQge1xuICAgICAgYm9yZGVyOiAwLjM1cmVtICogJHJhdGlvIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRidG4tcGFkZGluZy1zaWRlcyogJHJhdGlvIC8gMztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOmJhc2VsaW5lO1xuICAgICAgd2lkdGg6IDA7XG4gICAgICAmLndlYmYtYnV0dG9uLWNhcmV0LWRvd24geyB0b3A6IDAuMzVyZW0gKiAkcmF0aW8gLzI7IH1cbiAgICAgICYud2ViZi1idXR0b24tY2FyZXQtbGVmdCB7IHJpZ2h0OiAwLjM1cmVtICogJHJhdGlvIC8yOyB9XG4gICAgICAmLndlYmYtYnV0dG9uLWNhcmV0LXJpZ2h0IHsgbGVmdDogMC4zNXJlbSAqICRyYXRpbyAvMjsgfVxuICAgICAgJi53ZWJmLWJ1dHRvbi1jYXJldC11cCB7IGJvdHRvbTogMC4zNXJlbSAqICRyYXRpbyAvMjsgfVxuICAgIH1cbiAgICAmLndlYmYtYnV0dG9uLWljb24tb25seSwgJi5pY29uLW9ubHkge1xuICAgICAgaGVpZ2h0OiAzcmVtICogJHJhdGlvIDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAzcmVtICogJHJhdGlvIDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAud2ViZi1idXR0b24taWNvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtICogJHJhdGlvIDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDNyZW0gKiAkcmF0aW8gO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ud2ViZi1idXR0b25zLWdyb3VwIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gIC53ZWJmLWJ1dHRvbnMtZ3JvdXAsIC53ZWJmLWJ1dHRvbiB7XG4gICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICYsICYgLndlYmYtYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtbGVmdC1yYWRpdXMoMCk7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICYsICYgLndlYmYtYnV0dG9uIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoMCk7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzKDApO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAmLCAmIC53ZWJmLWJ1dHRvbiB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi53ZWJmLWJ1dHRvbi10b2dnbGUge1xuICAmLndlYmYtYnV0dG9uLWFjdGl2ZSB7XG4gICAgLmQtaW5hY3RpdmUgeyBkaXNwbGF5Om5vbmU7IH1cbiAgICAuZC1hY3RpdmUgeyBkaXNwbGF5OmlubGluZS1ibG9jazsgfVxuICB9XG4gIGlucHV0W3R5cGU9Y2hlY2tib3hdLCBpbnB1dFt0eXBlPXJhZGlvXSB7XG4gICAgY2xpcDogcmVjdCgwLDAsMCwwKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuICAuZC1pbmFjdGl2ZSB7IGRpc3BsYXk6aW5saW5lLWJsb2NrOyB9XG4gIC5kLWFjdGl2ZSB7IGRpc3BsYXk6bm9uZTsgfVxufVxuIiwiLy8gVXNlciBJbnRlcmZhY2UgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBUaGlzIGZpbGUgY2FuIGJlIGV4cGFuZGVkIHRvIGhhbmRsZSBhbGwgdGhlIHVzZXIgaW50ZXJmYWNlIHByb3BlcnRpZXMgYXNcbi8vIHRoZXkgYmVjb21lIGF2YWlsYWJsZSBpbiBicm93c2Vyczpcbi8vIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDAvV0QtY3NzMy11c2VyaW50LTIwMDAwMjE2XG5AaW1wb3J0IFwic2hhcmVkXCI7XG5cblxuLy8gVGhpcyBwcm9wZXJ0eSBjb250cm9scyB0aGUgc2VsZWN0aW9uIG1vZGVsIGFuZCBncmFudWxhcml0eSBvZiBhbiBlbGVtZW50LlxuLy9cbi8vIEBwYXJhbSAkc2VsZWN0XG4vLyAgIFsgbm9uZSB8IHRleHQgfCB0b2dnbGUgfCBlbGVtZW50IHwgZWxlbWVudHMgfCBhbGwgfCBpbmhlcml0IF1cbkBtaXhpbiB1c2VyLXNlbGVjdCgkc2VsZWN0KSB7XG4gICRzZWxlY3Q6IHVucXVvdGUoJHNlbGVjdCk7XG4gIEBpbmNsdWRlIGV4cGVyaW1lbnRhbCh1c2VyLXNlbGVjdCwgJHNlbGVjdCxcbiAgICAtbW96LCAtd2Via2l0LCBub3QoLW8pLCAtbXMsIC1raHRtbCwgb2ZmaWNpYWxcbiAgKTtcbn1cblxuLy8gU3R5bGUgdGhlIGh0bWw1IGlucHV0IHBsYWNlaG9sZGVyIGluIGJyb3dzZXJzIHRoYXQgc3VwcG9ydCBpdC5cbi8vXG4vLyBUaGUgc3R5bGVzIGZvciB0aGUgaW5wdXQgcGxhY2Vob2xkZXIgYXJlIHBhc3NlZCBhcyBtaXhpbiBjb250ZW50XG4vLyBhbmQgdGhlIHNlbGVjdG9yIGNvbWVzIGZyb20gdGhlIG1peGluJ3MgY29udGV4dC5cbi8vXG4vLyBGb3IgZXhhbXBsZTpcbi8vXG4vLyAgICAgI3tlbGVtZW50cy1vZi10eXBlKHRleHQtaW5wdXQpfSB7XG4vLyAgICAgICBAaW5jbHVkZSBpbnB1dC1wbGFjZWhvbGRlciB7XG4vLyAgICAgICAgIGNvbG9yOiAjYmZiZmJmO1xuLy8gICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4vLyAgICAgICB9XG4vLyAgICAgfVxuLy9cbi8vIGlmIHlvdSB3YW50IHRvIGFwcGx5IHRoZSBwbGFjZWhvbGRlciBzdHlsZXMgdG8gYWxsIGVsZW1lbnRzIHN1cHBvcnRpbmdcbi8vIHRoZSBgaW5wdXQtcGxhY2Vob2xkZXJgIHBzZXVkbyBjbGFzcyAoYmV3YXJlIG9mIHBlcmZvcm1hbmNlIGltcGFjdHMpOlxuLy9cbi8vICAgICAqIHtcbi8vICAgICAgIEBpbmNsdWRlIGlucHV0LXBsYWNlaG9sZGVyIHtcbi8vICAgICAgICAgY29sb3I6ICNiZmJmYmY7XG4vLyAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbi8vICAgICAgIH1cbi8vICAgICB9XG5AbWl4aW4gaW5wdXQtcGxhY2Vob2xkZXIge1xuICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IEBjb250ZW50OyB9XG4gICY6LW1vei1wbGFjZWhvbGRlciB7IEBjb250ZW50OyB9XG4gICY6Oi1tb3otcGxhY2Vob2xkZXIgeyBAY29udGVudDsgfVxuICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHsgQGNvbnRlbnQ7IH1cbn1cbiIsIi53ZWJmLXdyYXBwZXItY2Fyb3VzZWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cbiAgLndlYmYtdmlld3BvcnQtY2Fyb3VzZWwge1xuICBcdHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgXHRiYWNrZ3JvdW5kOiAjZmZmO1xuICBcdHdpZHRoOiAxMDAlO1xuXG4gICAgLndlYmYtY2Fyb3VzZWwge1xuICAgIFx0bGkud2ViZi1zbGlkZSB7XG4gICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBhLndlYmYtY2Fyb3VzZWwtbmF2IHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDMycHg7XG4gICAgbWFyZ2luLXRvcDogLTE2cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHdpZHRoOiAzMnB4O1xuICAgIHotaW5kZXg6IDk5OTk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9jYXJvdXNlbC9jb250cm9scy5wbmcnKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAmLndlYmYtcHJldiB7XG4gICAgICBsZWZ0OiAxMHB4O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMzJweDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLndlYmYtbmV4dCB7XG4gICAgICByaWdodDogMTBweDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00M3B4IC0zMnB4O1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQzcHggMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuIiwiLndlYmYtY2hlY2tib3h3cmFwcGVyLmNsYXNzaWMge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3JkZXI6IDFweCBzb2xpZCBncmF5O1xuICBjb2xvcjogIzk5OTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG4gIHdpZHRoOiAxcmVtO1xuICBoZWlnaHQ6IDFyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblxuICAmLm1vdXNlZG93biB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcbiAgICBAaW5jbHVkZSBzaW5nbGUtYm94LXNoYWRvdygwcHgsIDBweCwgM3B4LCAwLCAjY2NjLCB0cnVlKTtcbiAgfVxuXG4gIGEuY2hlY2tib3gge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gICYuY2hlY2tlZCB7XG4gICAgYS5jaGVja2JveCB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vaW1hZ2VzL2NoZWNrYm94L2NoZWNrbWFyay5wbmcpO1xuICAgIH1cbiAgfVxuXG4gICYuZGlzYWJsZWQge1xuICAgIGJvcmRlci1jb2xvcjogI2RkZDtcblxuICAgICYuY2hlY2tlZCBhLmNoZWNrYm94IHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi8uLi9pbWFnZXMvY2hlY2tib3gvY2hlY2ttYXJrLWRpc2FibGUucG5nKTtcbiAgICB9XG4gIH1cbn1cblxuIiwiJGhlaWdodFN3aXRjaDogMXJlbTtcbiR3aWR0aFN3aXRjaDogMiAqICRoZWlnaHRTd2l0Y2g7XG4kZ3V0dGVyU3dpdGNoOiAkaGVpZ2h0U3dpdGNoIC8gNDtcbiRjb2xvckNoZWNrOiAkcHJpbWFyeS1jb2xvcjtcbiRjb2xvckRpc2FibGVkOiAkc2Vjb25kYXJ5LWNvbG9yO1xuJGNvbG9yVW5jaGVjazogZGFya2VuKCRsaWdodGdyZXktY29sb3IsIDMwJSk7XG4kd2lkdGhIYW5kbGVyOiAkaGVpZ2h0U3dpdGNoIC0gJGd1dHRlclN3aXRjaDtcblxuLndlYmYtY2hlY2tib3h3cmFwcGVyLnN3aXRjaCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xuICB3aWR0aDogJHdpZHRoU3dpdGNoO1xuICBoZWlnaHQ6ICRoZWlnaHRTd2l0Y2g7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgYS5jaGVja2JveCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRoZWlnaHRTd2l0Y2g7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvclVuY2hlY2s7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyMDBtcywgYm9yZGVyLWNvbG9yIDIwMG1zO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIC8vdG9wOiBjYWxjKCN7JGd1dHRlclN3aXRjaH0gLyAyIC0gMC43NXB4KTtcbiAgICAgIHRvcDogY2FsYygjeyRndXR0ZXJTd2l0Y2h9IC8gMiAtIDFweCk7XG4gICAgICBsZWZ0OiAkZ3V0dGVyU3dpdGNoIC8gMjtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgd2lkdGg6ICRoZWlnaHRTd2l0Y2ggLSAkZ3V0dGVyU3dpdGNoO1xuICAgICAgaGVpZ2h0OiAkaGVpZ2h0U3dpdGNoIC0gJGd1dHRlclN3aXRjaDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvclVuY2hlY2s7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICB0cmFuc2l0aW9uOiBsZWZ0IDIwMG1zLCBiYWNrZ3JvdW5kLWNvbG9yIDIwMG1zO1xuICAgIH1cbiAgfVxuXG4gICYuY2hlY2tlZCB7XG4gICAgYS5jaGVja2JveCB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvckNoZWNrO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQ2hlY2s7XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiBjYWxjKCN7JHdpZHRoU3dpdGNofSAtICN7JHdpZHRoSGFuZGxlcn0gLSAjeyRndXR0ZXJTd2l0Y2h9IC8gMiAtIDJweCk7XG4gICAgICAgIHdpZHRoOiAkd2lkdGhIYW5kbGVyO1xuICAgICAgICBoZWlnaHQ6ICR3aWR0aEhhbmRsZXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5kaXNhYmxlZCB7XG4gICAgYm9yZGVyLWNvbG9yOiAjZGRkO1xuXG4gICAgJi5jaGVja2VkIGEuY2hlY2tib3gge1xuICAgIH1cbiAgfVxufVxuXG4iLCIkc2l6ZUNoZWNrYm94OiAxcmVtO1xuJGNvbG9yQ2hlY2s6ICRwcmltYXJ5LWNvbG9yO1xuJGNvbG9yRGlzYWJsZWQ6ICRzZWNvbmRhcnktY29sb3I7XG4kY29sb3JVbmNoZWNrOiBkYXJrZW4oJGxpZ2h0Z3JleS1jb2xvciwgMzAlKTtcblxuLndlYmYtY2hlY2tib3h3cmFwcGVyLmNoZWNrbWFyayB7XG4gIGEuY2hlY2tib3gge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIHdpZHRoOiAkc2l6ZUNoZWNrYm94O1xuICAgIGhlaWdodDogJHNpemVDaGVja2JveDtcbiAgICBmb250LXNpemU6ICRzaXplQ2hlY2tib3g7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmLmNoZWNrZWQge1xuICAgIGEuY2hlY2tib3gge1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gICYuZGlzYWJsZWQge1xuICAgICYuY2hlY2tlZCBhLmNoZWNrYm94IHtcbiAgICAgIGNvbG9yOiAjZWVlO1xuICAgIH1cbiAgfVxufVxuXG4iLCJAaW1wb3J0IFwiY29tcGFzc1wiO1xuQGltcG9ydCBcIi4vY2hlY2tib3gvY2xhc3NpY1wiO1xuQGltcG9ydCBcIi4vY2hlY2tib3gvc3dpdGNoXCI7XG5AaW1wb3J0IFwiLi9jaGVja2JveC9jaGVja21hcmtcIjtcblxuLndlYmYtY2hlY2tib3h3cmFwcGVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDFyZW07XG4gIGhlaWdodDogMXJlbTtcbiAgZmxleC1zaHJpbms6IDA7XG5cbiAgLmNoZWNrYm94IHtcbiAgICBtaW4taGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbiIsIkBpbXBvcnQgXCJjb21wYXNzXCI7XG5cbi53ZWJmLWNvb2tpZS1jb25zZW50IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1NTU1NTU7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMThweDtcbiAgZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmO1xuICBwYWRkaW5nOiA1cHggMDtcbiAgei1pbmRleDogMTAwMDAwMDAwO1xuXG4gIC5tZXNzYWdlIHtcbiAgICBtYXJnaW46IDVweCA0MHB4IDEwcHg7XG4gIH1cblxuICAuY2xvc2UtYnV0dG9uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA4cHg7XG4gICAgcmlnaHQ6IDhweDtcbiAgICBmb250LXNpemU6IDAuNmVtO1xuICB9XG5cbiAgLmJ1dHRvbnMge1xuICAgIC5jb29raWUtYWNjZXB0LCAuY29va2llLWRlY2xpbmUge1xuICAgICAgbWFyZ2luOiAwIDVweDtcbiAgICB9XG4gIH1cbn1cbiIsIkBpbXBvcnQgXCJjb21wYXNzXCI7XG5cbi53ZWJmLWRpYWxvZy53ZWJmLWNvbmZpcm0ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDYwdmg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAgIGhlaWdodDogMTAwdmg7XG4gIH1cblxuICAud2ViZi1ib3gtY29uZmlybSB7XG4gICAgd2lkdGg6IDUwMHB4O1xuICAgIG1heC13aWR0aDogOTAlO1xuXG4gICAgLmJveC1ib2R5IHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtc2l6ZTogMS4xNXJlbTtcbiAgICAgIHBhZGRpbmc6IDEuNXJlbSAxcmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICB9XG4gIH1cblxuICAmLmNvbmZpcm0tb3BlbmluZyB7XG4gICAgLndlYmYtYm94LWNvbmZpcm0ge1xuICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAzMDBtcztcblxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIGFuaW1hdGlvbi1uYW1lOiBzY2FsZWluO1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkzcHgpIHtcbiAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlaW47XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5jb25maXJtLWNsb3Npbmcge1xuICAgIC53ZWJmLWJveC1jb25maXJtIHtcbiAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMTUwbXM7XG5cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAgICAgICBhbmltYXRpb24tbmFtZTogc2NhbGVvdXQ7XG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTNweCkge1xuICAgICAgICBhbmltYXRpb24tbmFtZTogc2xpZGVvdXQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBrZXlmcmFtZXMgc2NhbGVpbiB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlaW4ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDMwJTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzY2FsZW91dCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlb3V0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMzAlO1xuICB9XG59XG4iLCJAaW1wb3J0IFwiY29tcGFzc1wiO1xuQGltcG9ydCBcIi4uL21peGlucy9hbGVydHNcIjtcblxuLndlYmYtZGF0YWdyaWQge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyOiAxcHggc29saWQgJGRlZmF1bHQtYm9yZGVyLWNvbG9yO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmO1xuICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xuXG4gICYgKiB7XG4gICAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcbiAgfVxuXG4gIC5oZWFkZXIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZC1pbWFnZShsaW5lYXItZ3JhZGllbnQod2hpdGUsIGRhcmtlbigkc2Vjb25kYXJ5LWNvbG9yLCA2JSkpKTtcbiAgICBjb2xvcjogIzQ0NDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogN3B4O1xuICAgIG1pbi1oZWlnaHQ6IDI4cHg7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICYuaGlkZGVuIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJiA+IC50b29sYmFyIHtcbiAgICBmb250LXNpemU6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRsaWdodGdyZXktY29sb3IsIDMlKTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGRlZmF1bHQtYm9yZGVyLWNvbG9yO1xuICAgIGNvbG9yOiAjNDQ0O1xuICAgIHBhZGRpbmc6IDdweDtcblxuICAgICYuaGlkZGVuIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJiA+IC5jb21wb25lbnQge1xuICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuXG4gICAgICAud2ViZi1idXR0b24ge1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIGhlaWdodDogMjdweDtcbiAgICAgIH1cblxuICAgICAgJi5zZWFyY2gge1xuICAgICAgICBmb250LXNpemU6IDA7XG5cbiAgICAgICAgaW5wdXRbdHlwZT0ndGV4dCddIHtcbiAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGRlZmF1bHQtYm9yZGVyLWNvbG9yO1xuICAgICAgICAgIHBhZGRpbmc6IDNweCA1cHg7XG4gICAgICAgICAgaGVpZ2h0OiAyN3B4O1xuICAgICAgICAgIHdpZHRoOiAxODBweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBzZWxlY3Quc2VsZWN0Q29sdW1ucyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY29sdW1ucyB7XG4gICAgLmNvbHVtbiwgLmxhc3QtY29sdW1uIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgLnJlc2l6ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgd2lkdGg6IDdweDtcbiAgICAgICAgY3Vyc29yOiBjb2wtcmVzaXplO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtNHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5sYXN0LWNvbHVtbiB7XG4gICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgfVxuICB9XG5cbiAgLmNvbHVtbnMsIC5mb290ZXIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAmID4gdGFibGUge1xuICAgICAgQGluY2x1ZGUgYmFja2dyb3VuZC1pbWFnZShsaW5lYXItZ3JhZGllbnQobGlnaHRlbigkbGlnaHRncmV5LWNvbG9yLCAzJSksIGRhcmtlbigkbGlnaHRncmV5LWNvbG9yLCA2JSkpKTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZGVmYXVsdC1ib3JkZXItY29sb3I7XG4gICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICAgICAgLy93aWR0aDogMXB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICAgIGJvcmRlci1zcGFjaW5nOiAwO1xuXG4gICAgICB0ciB7XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgdGQge1xuICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRkZWZhdWx0LWJvcmRlci1jb2xvcjtcblxuICAgICAgICAgICYgPiAuY29sLXdyYXBwZXIge1xuICAgICAgICAgICAgJiA+IC5jb2x1bW4tbmFtZSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmID4gLnNvcnQge1xuICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgICAgICAgICBtYXJnaW46IDAgNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuY29sdW1uLWhpZGRlbiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5sYXN0LWNvbHVtbiB7XG4gICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgfVxuICB9XG5cbiAgLmZvb3RlciB7XG4gICAgJiA+IHRhYmxlIHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGRlZmF1bHQtYm9yZGVyLWNvbG9yO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcblxuICAgICAgdHIge1xuICAgICAgICB0ZCB7XG4gICAgICAgICAgYmFja2dyb3VuZDogI2VlZjVlYjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5oc2Nyb2xsLWdyaWQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMHB4O1xuICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47XG5cbiAgICAmID4gZGl2IHtcbiAgICAgIGhlaWdodDogMC4xcHg7XG4gICAgfVxuICB9XG5cbiAgLmdyaWQge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgaGVpZ2h0OiAzMzZweDtcblxuICAgICYuaGFzLWVtcHR5LXJlY29yZHMge1xuICAgICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAgIH1cblxuICAgICYgPiB0YWJsZSB7XG4gICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgICAgIC8vd2lkdGg6IDFweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICB0ci5ncmlkLXNpemUgdGQge1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgIH1cblxuICAgICAgdHIucmVjb3JkIHtcbiAgICAgICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkZGF0YWdyaWRTZWxlY3Rpb25Db2xvciwgMTIlKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuc2VsZWN0ZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXRhZ3JpZFNlbGVjdGlvbkNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zZWxlY3RlZC5pbmFjdGl2ZSB7IC8vIG5vdCBpbXBsZW1lbnRlZCB5ZXRcbiAgICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6ICRpbmFjdGl2ZS1zZWxlY3Rpb24tY29sb3I7XG4gICAgICAgIH1cblxuICAgICAgICB0ZCB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgICAmLmVkaXRhYmxlIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBmb250LXNpemU6IDA7XG5cbiAgICAgICAgICAgIGlucHV0LCB0ZXh0YXJlYSwgc2VsZWN0IHtcbiAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuZWRpdGluZyB7XG4gICAgICAgICAgICAgIGlucHV0LCB0ZXh0YXJlYSwgc2VsZWN0IHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5LWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpO1xuICAgICAgICAgICAgICAgIC8vdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yNXM7XG4gICAgICAgICAgICAgICAgLy90cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgICAgICAgICAgICAgLy90cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgICAgICAgICAgICAgICAvL3RyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmID4gdGV4dGFyZWEge1xuICAgICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICBwYWRkaW5nOiAzcHggNXB4IDJweDtcbiAgICAgICAgICAgICAgcmVzaXplOiBub25lO1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjFweDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgICAgICAgICAmOmZvY3VzLCAmOmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGFiZWwuc2VsZWN0IHtcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDI0cHggMCAxMHB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgICAgICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICAgICAgICAgICAgICY6Zm9jdXMsICY6YWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmVkaXRpbmcge1xuICAgICAgICAgICAgICBsYWJlbC5zZWxlY3Q6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMTA3XCI7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmNlbGwtY2hlY2tib3gge1xuICAgICAgICAgICAgICAud2ViZi1kYXRhZ3JpZC1jaGVja2JveC1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICAgICAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgICAgICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgICAgICAgICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuXG4gICAgICAgICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuY2hlY2ttYXJrIHtcbiAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIycHg7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMjJweDtcbiAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMnM7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaW5wdXQgfiAuY2hlY2ttYXJrIHtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGVmYXVsdC1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxNSU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaW5wdXQ6Zm9jdXMgfiAuY2hlY2ttYXJrLFxuICAgICAgICAgICAgICAgIGlucHV0OmhvdmVyIH4gLmNoZWNrbWFyayB7XG4gICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlucHV0OmNoZWNrZWQgfiAuY2hlY2ttYXJrIHtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlucHV0OmNoZWNrZWQ6Zm9jdXMgfiAuY2hlY2ttYXJrLFxuICAgICAgICAgICAgICAgIGlucHV0OmNoZWNrZWQ6aG92ZXIgfiAuY2hlY2ttYXJrIHtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkcHJpbWFyeS1jb2xvciwgMTAlKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuY2hlY2ttYXJrOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlucHV0OmNoZWNrZWQgfiAuY2hlY2ttYXJrOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5jaGVja21hcms6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgbGVmdDogN3B4O1xuICAgICAgICAgICAgICAgICAgdG9wOiA0cHg7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogNXB4O1xuICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA4cHg7XG4gICAgICAgICAgICAgICAgICAvL2xlZnQ6IDMyJTtcbiAgICAgICAgICAgICAgICAgIC8vdG9wOiAxNiU7XG4gICAgICAgICAgICAgICAgICAvL3dpZHRoOiAzOCU7XG4gICAgICAgICAgICAgICAgICAvL2hlaWdodDogNTUlO1xuICAgICAgICAgICAgICAgICAgYm9yZGVyOiBzb2xpZCB3aGl0ZTtcbiAgICAgICAgICAgICAgICAgIGJvcmRlci13aWR0aDogMCAzcHggM3B4IDA7XG4gICAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYgPiAud2ViZi1kYXRhZ3JpZC1kYXRlLFxuICAgICAgICAgICAgJiA+IC53ZWJmLWRhdGFncmlkLWRhdGV0aW1lLFxuICAgICAgICAgICAgJiA+IC53ZWJmLWRhdGFncmlkLWRhdGVwaWNrZXIsXG4gICAgICAgICAgICAmID4gLndlYmYtZGF0YWdyaWQtZGF0ZXRpbWVwaWNrZXIge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG5cbiAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gICAgICAgICAgICAgIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDNweCA1cHg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRkZWZhdWx0LXRleHQtY29sb3I7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGRlZmF1bHQtYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgICYgPiAud2ViZi1kYXRhZ3JpZC1yZWFkb25seSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzcHggNXB4IDJweDtcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIxcHg7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYubGFzdC1jb2x1bW4ge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuXG4gICAgICAgICAgICAmID4gZGl2IHtcbiAgICAgICAgICAgICAgd2lkdGg6IDdweDtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC03cHg7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5yb3ctaGlkZGVuIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG5cblxuXG5cblxuXG5cblxuXG5cbiIsIkBpbXBvcnQgXCJjb21wYXNzXCI7XG5cbi53ZWJmLWRpYWxvZy53ZWJmLWRpYWxvZy1kYXRldGltZXBpY2tlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwdmg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBtYXJnaW4tdG9wOiA1JTtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgLndlYmYtZGF0ZXRpbWVwaWNrZXIge1xuICAgIHdpZHRoOiA0ODBweDtcbiAgICBtYXgtd2lkdGg6IDkwJTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KDFweCAycHggOHB4IHJnYmEoMCwgMCwgMCwgMC4yKSk7XG5cbiAgICAudG9vbGJhciB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcblxuICAgICAgLndlYmYtYnV0dG9uIHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBoZWlnaHQ6IDJyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAycmVtO1xuICAgICAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgICB9XG5cbiAgICAgIC50aXRsZSB7XG4gICAgICAgIC53ZWJmLWRyb3Bkb3duIHtcbiAgICAgICAgICA+IC53ZWJmLXNlbGVjdCB7XG4gICAgICAgICAgICBoZWlnaHQ6IDJyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMnJlbTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMC41cmVtO1xuXG4gICAgICAgICAgICA+IC5zZWxlY3Qge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDAuOHJlbTtcblxuICAgICAgICAgICAgICA+IC5oYW5kbGUtZG93biB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDJyZW07XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMzBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgd2lkdGg6IDg1cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLndlYmYtZGF0ZXRpbWVwaWNrZXItY2FsZW5kYXIge1xuICAgICAgLndlYmYtdGItd2Vlay1kYXlzLCAud2ViZi10Yi1kYXRlcGlja2VyIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgdGgge1xuICAgICAgICAgIGhlaWdodDogMzlweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMzlweDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuXG4gICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDM5cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDM5cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzlweDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLndlYmYtZHJvcGRvd24tZGF0ZXRpbWVwaWNrZXIge1xuICAmLndlYmYtZGF0ZXRpbWVwaWNrZXIge1xuICAgIG1pbi13aWR0aDogMjUwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMXB4IDJweCA4cHggcmdiYSgwLCAwLCAwLCAwLjIpKTtcbiAgfVxufVxuXG4ud2ViZi1kYXRldGltZXBpY2tlciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHdpZHRoOiAyNTBweDtcbiAgY29sb3I6ICMzMzM7XG4gIGZvbnQtZmFtaWx5OiBBcmlhbCwgaGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuXG4gIC50b29sYmFyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICBcdHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvL2JvcmRlci1ib3R0b206IDFweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZzogNHB4IDNweDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblxuICAgIC50aXRsZSB7XG4gICAgXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgXHRmb250LXdlaWdodDogYm9sZDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICA+IHNwYW4ge1xuICAgICAgICBoZWlnaHQ6IDI3cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyN3B4O1xuICAgICAgfVxuXG4gICAgICAud2ViZi1kcm9wZG93biB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgLy9tYXJnaW46IDAgMnB4O1xuICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgPiAud2ViZi1zZWxlY3Qge1xuICAgICAgICAgIHBhZGRpbmc6IDRweCA4cHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgICAgICBib3JkZXItY29sb3I6IGxpZ2h0ZW4oJGRlZmF1bHQtdGV4dC1jb2xvciwgNTAlKTtcblxuICAgICAgICAgICYub3BlbiB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIHdpZHRoOiAxMTBweDtcblxuICAgICAgICAgID4gLndlYmYtc2VsZWN0IHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIHdpZHRoOiA2NXB4O1xuXG4gICAgICAgICAgPiAud2ViZi1zZWxlY3Qge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC53ZWJmLXNlbGVjdC1kcm9wIHtcbiAgICAgICAgLndlYmYtbGlzdC1pdGVtID4gYSxcbiAgICAgICAgLndlYmYtbGlzdC1pdGVtID4gbGFiZWwge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLndlYmYtYnV0dG9uIHtcbiAgICAgIGhlaWdodDogMjdweDtcbiAgICB9XG4gIH1cblxuICAud2Vlay1kYXlzIHtcbiAgXHRtYXJnaW46IDAgNXB4O1xuICB9XG5cbiAgLndlYmYtdGItd2Vlay1kYXlzLCAud2ViZi10Yi1kYXRlcGlja2VyIHtcbiAgICB3aWR0aDogMjQwcHg7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICAgIC8vYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZGQ7XG5cbiAgICB0aCwgdGQge1xuICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICB9XG5cbiAgICB0ZCB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgdGgge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmb250LXNpemU6IDAuOWVtO1xuICAgICAgLy9ib3JkZXItYm90dG9tOiAxcHggc29saWQgJHByaW1hcnktY29sb3I7XG4gICAgfVxuXG4gICAgdGQge1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDFweDtcbiAgICAgIC8vcGFkZGluZzogMDtcblxuICAgICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgY29sb3I6ICM2NjY7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMzFweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIH1cblxuICAgICAgJi5vdGhlci1tb250aCBhIHtcbiAgICAgICAgY29sb3I6ICNiYmI7XG4gICAgICB9XG5cbiAgICAgICYudG9kYXkgYSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJHByaW1hcnktY29sb3IsIDM1JSk7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgfVxuXG4gICAgICAmLmN1cnJlbnQtZGF0ZSBhIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIH1cblxuICAgICAgJi5jdXItbW9udGguc3VuZGF5Om5vdCguZGlzYWJsZWQpOm5vdCgudG9kYXkpOm5vdCguY3VycmVudC1kYXRlKSB7XG4gICAgICAgIGNvbG9yOiBsaWdodGVuKHJlZCwgMTUlKTtcbiAgICAgIH1cblxuICAgICAgJjpub3QoLmRpc2FibGVkKTpub3QoLnRvZGF5KTpub3QoLmN1cnJlbnQtZGF0ZSkge1xuICAgICAgICAmOm5vdCguc3RhcnQpOm5vdCguZW5kKSB7XG4gICAgICAgICAgYTpob3ZlciB7XG4gICAgICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6ICNlZWYwZjM7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkcHJpbWFyeS1jb2xvciwgNDAlKTtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnN0YXJ0LCAmLmVuZCB7XG4gICAgICAgICAgYTpob3ZlciB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkcHJpbWFyeS1jb2xvciwgMTAlKTtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5oaWRkZW4tZGF5IHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgfVxuXG4gICAgICAmLmRpc2FibGVkIGEge1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIC8vYm9yZGVyLWNvbG9yOiAjZWVlO1xuICAgICAgICBjb2xvcjogc2lsdmVyO1xuICAgICAgfVxuXG4gICAgICAmLnNlbGVjdGVkIGEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRwcmltYXJ5LWNvbG9yLCAzMCUpO1xuICAgICAgICBib3JkZXItY29sb3I6IGxpZ2h0ZW4oJHByaW1hcnktY29sb3IsIDMwJSk7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgJi5zdGFydCwgJi5lbmQge1xuICAgICAgICBhIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICBib3JkZXItY29sb3I6IGJsYWNrO1xuICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC53ZWJmLWRhdGV0aW1lcGlja2VyLWNhbGVuZGFyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgPiB1bC51bC1jYWxlbmRhcnMge1xuICAgICAgd2lkdGg6IDIwMCU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgID4gbGkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudGltZXBpY2tlciB7XG4gICAgcGFkZGluZzogMCAwLjVyZW07XG4gICAgY29sb3I6ICRkZWZhdWx0LXRleHQtY29sb3I7XG5cbiAgICAudGltZXBpY2tlci1zbGlkZXIge1xuICAgIFx0cGFkZGluZzogNXB4IDAgNXB4IDEwcHg7XG5cbiAgICBcdC5ob3VycywgLm1pbnV0ZXMsIC5zZWNvbmRzIHtcbiAgICAgICAgICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgXHR9XG5cbiAgICBcdGxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgfVxuXG4gICAgICAud2ViZi1zbGlkZXIge1xuICAgICAgICBtYXJnaW46IDAgNnB4IDAgNzVweDtcbiAgICAgICAgdG9wOiA1cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRpbWUge1xuICAgIFx0bWFyZ2luOiA1cHggMDtcblxuICAgIFx0LnRleHQge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIFx0fVxuICAgIH1cblxuICAgIC50aW1lcGlja2VyLXNwaW5uZXIge1xuICAgICAgbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA3cHg7XG4gICAgICB9XG5cbiAgICAgIC5zcGlubmVycyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDEwcHggNXB4IDA7XG5cbiAgICAgIFx0LndlYmYtaW5wdXQtdGV4dCB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgXHR9XG5cbiAgICAgICAgLndlYmYtc3Bpbm5lciB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAgICAgICAud2ViZi1pbnB1dC1zcGlubmVyIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGVmYXVsdC1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgICAgICBjb2xvcjogJGRlZmF1bHQtdGV4dC1jb2xvcjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAud2ViZi1zcGluLWJ0biB7XG4gICAgICAgICAgICBjb2xvcjogJGRlZmF1bHQtdGV4dC1jb2xvcjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAud2ViZi1zcGluLWJ0bi51cCB7IGJvcmRlci1ib3R0b206IDA7IH1cbiAgICAgICAgICAud2ViZi1zcGluLWJ0bi5kb3duIHsgYm9yZGVyLXRvcDogMDsgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnRpbWUtc2VwYXJhdG9yIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgIG1hcmdpbjogMCA1cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGltZXBpY2tlci1zZWxlY3Qge1xuICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICBtYXJnaW46IDNweCAwIDAgN3B4O1xuICAgICAgfVxuXG4gICAgICAuc2VsZWN0cyB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgbWFyZ2luOiA1cHggNXB4IDVweCAwO1xuICAgICAgfVxuXG4gICAgICBzZWxlY3Qge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDQ0cHg7XG4gICAgICB9XG5cbiAgICAgIC50aW1lLXNlcGFyYXRvciB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgbWFyZ2luOiAwIDVweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYnV0dG9ucyB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHBhZGRpbmc6IDdweCA1cHg7XG5cbiAgICAud2ViZi1idXR0b24ge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW4tbGVmdDogMC42cmVtO1xuICAgIH1cbiAgfVxufVxuXG4iLCIvLyBAZG9jIG9mZlxuLy8gRXh0ZW5kcyB0aGUgYm90dG9tIG9mIHRoZSBlbGVtZW50IHRvIGVuY2xvc2UgYW55IGZsb2F0cyBpdCBjb250YWlucy5cbi8vIEBkb2Mgb25cblxuQGltcG9ydCBcImhhY2tzXCI7XG5cbi8vIFRoaXMgYmFzaWMgbWV0aG9kIGlzIHByZWZlcnJlZCBmb3IgdGhlIHVzdWFsIGNhc2UsIHdoZW4gcG9zaXRpb25lZFxuLy8gY29udGVudCB3aWxsIG5vdCBzaG93IG91dHNpZGUgdGhlIGJvdW5kcyBvZiB0aGUgY29udGFpbmVyLlxuLy9cbi8vIFJlY29tbWVuZGF0aW9ucyBpbmNsdWRlIHVzaW5nIHRoaXMgaW4gY29uanVuY3Rpb24gd2l0aCBhIHdpZHRoLlxuLy8gQ3JlZGl0OiBbcXVpcmtzbW9kZS5vcmddKGh0dHA6Ly93d3cucXVpcmtzbW9kZS5vcmcvYmxvZy9hcmNoaXZlcy8yMDA1LzAzL2NsZWFyaW5nX2Zsb2F0cy5odG1sKVxuQG1peGluIGNsZWFyZml4IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgaGFzLWxheW91dDtcbn1cblxuLy8gVGhpcyBvbGRlciBtZXRob2QgZnJvbSBQb3NpdGlvbiBJcyBFdmVyeXRoaW5nIGNhbGxlZFxuLy8gW0Vhc3kgQ2xlYXJpbmddKGh0dHA6Ly93d3cucG9zaXRpb25pc2V2ZXJ5dGhpbmcubmV0L2Vhc3ljbGVhcmluZy5odG1sKVxuLy8gaGFzIHRoZSBhZHZhbnRhZ2Ugb2YgYWxsb3dpbmcgcG9zaXRpb25lZCBlbGVtZW50cyB0byBoYW5nXG4vLyBvdXRzaWRlIHRoZSBib3VuZHMgb2YgdGhlIGNvbnRhaW5lciBhdCB0aGUgZXhwZW5zZSBvZiBtb3JlIHRyaWNreSBDU1MuXG5AbWl4aW4gbGVnYWN5LXBpZS1jbGVhcmZpeCB7XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQgICAgOiBcIlxcMDAyMFwiO1xuICAgIGRpc3BsYXkgICAgOiBibG9jaztcbiAgICBoZWlnaHQgICAgIDogMDtcbiAgICBjbGVhciAgICAgIDogYm90aDtcbiAgICBvdmVyZmxvdyAgIDogaGlkZGVuO1xuICAgIHZpc2liaWxpdHkgOiBoaWRkZW47XG4gIH1cbiAgQGluY2x1ZGUgaGFzLWxheW91dDtcbn1cblxuLy8gVGhpcyBpcyBhbiB1cGRhdGVkIHZlcnNpb24gb2YgdGhlIFBJRSBjbGVhcmZpeCBtZXRob2QgdGhhdCByZWR1Y2VzIHRoZSBhbW91bnQgb2YgQ1NTIG91dHB1dC5cbi8vIElmIHlvdSBuZWVkIHRvIHN1cHBvcnQgRmlyZWZveCBiZWZvcmUgMy41IHlvdSBuZWVkIHRvIHVzZSBgbGVnYWN5LXBpZS1jbGVhcmZpeGAgaW5zdGVhZC5cbi8vXG4vLyBBZGFwdGVkIGZyb206IFtBIG5ldyBtaWNybyBjbGVhcmZpeCBoYWNrXShodHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vbWljcm8tY2xlYXJmaXgtaGFjay8pXG5AbWl4aW4gcGllLWNsZWFyZml4IHtcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICBAaW5jbHVkZSBoYXMtbGF5b3V0O1xufVxuIiwiQGltcG9ydCBcIi4uLy4uL3N1cHBvcnRcIjtcblxuLy8gVGhlIGB6b29tYCBhcHByb2FjaCBnZW5lcmF0ZXMgbGVzcyBDU1MgYnV0IGRvZXMgbm90IHZhbGlkYXRlLlxuLy8gU2V0IHRoaXMgdG8gYGJsb2NrYCB0byB1c2UgdGhlIGRpc3BsYXktcHJvcGVydHkgdG8gaGFjayB0aGVcbi8vIGVsZW1lbnQgdG8gZ2FpbiBsYXlvdXQuXG4kZGVmYXVsdC1oYXMtbGF5b3V0LWFwcHJvYWNoOiB6b29tICFkZWZhdWx0O1xuXG4vLyBUaGlzIG1peGluIGNhdXNlcyBhbiBlbGVtZW50IG1hdGNoaW5nIHRoZSBzZWxlY3RvclxuLy8gdG8gZ2FpbiB0aGUgXCJoYXNMYXlvdXRcIiBwcm9wZXJ0eSBpbiBpbnRlcm5ldCBleHBsb3Jlci5cbi8vIE1vcmUgaW5mb3JtYXRpb24gb24gW2hhc0xheW91dF0oaHR0cDovL3JlZmVyZW5jZS5zaXRlcG9pbnQuY29tL2Nzcy9oYXNsYXlvdXQpLlxuQG1peGluIGhhcy1sYXlvdXQoJGFwcHJvYWNoOiAkZGVmYXVsdC1oYXMtbGF5b3V0LWFwcHJvYWNoKSB7XG4gIEBpZiAkbGVnYWN5LXN1cHBvcnQtZm9yLWllIHtcbiAgICBAaWYgJGFwcHJvYWNoID09IHpvb20ge1xuICAgICAgQGluY2x1ZGUgaGFzLWxheW91dC16b29tO1xuICAgIH0gQGVsc2UgaWYgJGFwcHJvYWNoID09IGJsb2NrIHtcbiAgICAgIEBpbmNsdWRlIGhhcy1sYXlvdXQtYmxvY2s7XG4gICAgfSBAZWxzZSB7XG4gICAgICBAd2FybiBcIlVua25vd24gaGFzLWxheW91dCBhcHByb2FjaDogI3skYXBwcm9hY2h9XCI7XG4gICAgICBAaW5jbHVkZSBoYXMtbGF5b3V0LXpvb207XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBoYXMtbGF5b3V0LXpvb20ge1xuICBAaWYgJGxlZ2FjeS1zdXBwb3J0LWZvci1pZTYgb3IgJGxlZ2FjeS1zdXBwb3J0LWZvci1pZTcge1xuICAgICp6b29tOiAxO1xuICB9XG59XG5cbkBtaXhpbiBoYXMtbGF5b3V0LWJsb2NrIHtcbiAgQGlmICRsZWdhY3ktc3VwcG9ydC1mb3ItaWUge1xuICAgIC8vIFRoaXMgbWFrZXMgaWU2IGdldCBsYXlvdXRcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgLy8gYW5kIHRoaXMgcHV0cyBpdCBiYWNrIHRvIGJsb2NrXG4gICAgJiB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gIH1cbn1cblxuLy8gQSBoYWNrIHRvIHN1cHBseSBJRTYgKGFuZCBiZWxvdykgd2l0aCBhIGRpZmZlcmVudCBwcm9wZXJ0eSB2YWx1ZS5cbi8vIFtSZWFkIG1vcmVdKGh0dHA6Ly93d3cuY3NzcG9ydGFsLmNvbS9jc3MtaGFja3MvI2luX2Nzcy1pbXBvcnRhbnQpLlxuQG1peGluIGJhbmctaGFjaygkcHJvcGVydHksICR2YWx1ZSwgJGllNi12YWx1ZSkge1xuICBAaWYgJGxlZ2FjeS1zdXBwb3J0LWZvci1pZTYge1xuICAgICN7JHByb3BlcnR5fTogI3skdmFsdWV9ICFpbXBvcnRhbnQ7XG4gICAgI3skcHJvcGVydHl9OiAjeyRpZTYtdmFsdWV9O1xuICB9XG59XG4iLCJAaW1wb3J0IFwiY29tcGFzc1wiO1xuXG4kd2lkdGgtcmVzaXplLWhhbmRsZXI6IDE0cHg7XG4kaGVpZ2h0LXJlc2l6ZS1oYW5kbGVyOiAxNHB4O1xuJGd1dHRlci1kaWFsb2ctcmVzcG9uc2l2ZTogMjBweDtcbiR3aWR0aC1kaWFsb2ctcmVzcG9uc2l2ZTogJG1pbi13aWR0aC1zbSAtIDIqJGd1dHRlci1kaWFsb2ctcmVzcG9uc2l2ZTtcblxuLndlYmYtb3ZlcmxheS1kaWFsb2cge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLndlYmYtZGlhbG9nIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiA1MDBweDtcbiAgb3V0bGluZTogMDtcblxuICAmLmRpYWxvZy1yZXNwb25zaXZlIHtcbiAgICB3aWR0aDogJHdpZHRoLWRpYWxvZy1yZXNwb25zaXZlO1xuICAgIHRvcDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiBhdXRvO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1pbi13aWR0aC1zbSkge1xuICAgICAgbGVmdDogJGd1dHRlci1kaWFsb2ctcmVzcG9uc2l2ZSAhaW1wb3J0YW50O1xuICAgICAgcmlnaHQ6ICRndXR0ZXItZGlhbG9nLXJlc3BvbnNpdmUgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgJiA+IC53ZWJmLWJveCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gICAgYm9yZGVyOiAwO1xuXG4gICAgLndlYmYtZGlhbG9nLXN1Ym1pdCB7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IC05OTk5cHg7XG4gICAgICBsZWZ0OiAtOTk5OXB4O1xuICAgIH1cblxuICAgIC5ib3gtaGVhZGVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICAgICYuZHJhZ2dhYmxlIHtcbiAgICAgICAgY3Vyc29yOiBtb3ZlO1xuICAgICAgfVxuXG4gICAgICAud3JhcC1idXR0b25zIHtcbiAgICAgICAgLndlYmYtYnV0dG9uIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcblxuICAgICAgICAgIGkud2ViZiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmJveC1mb290ZXIge1xuICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgICAgIC53cmFwcGVyIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuXG4gICAgICAgIC53ZWJmLWJ1dHRvbiB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYubWF4aW1pemVkIHtcbiAgICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIHRvcDogMCAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcblxuICAgIC53ZWJmLWJveCB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuXG4gICAgICAuYm94LWJvZHkge1xuICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgIH1cblxuICAgICAgLmJveC1oZWFkZXIge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgfVxuXG4gICAgICAuYm94LWZvb3RlciB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuIiwiQGltcG9ydCBcImNvbXBhc3NcIjtcblxuLndlYmYtZHJhZ2dhYmxlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXM7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG5cbiAgJi5kcmFnZ2luZyB7XG4gICAgb3BhY2l0eTogMC4zO1xuICB9XG59XG5cbi53ZWJmLWRyb3BwYWJsZSB7XG4gICYuaG92ZXIge1xuICAgIGJvcmRlci1zdHlsZTogZGFzaGVkO1xuICAgIGJvcmRlci1jb2xvcjogYmxhY2s7XG4gIH1cbn1cblxuLndlYmYtZHJhZ2hhbmRsZXIge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgei1pbmRleDogMTAwMDAwMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOGYwZmU7XG4gIGJveC1zaGFkb3c6IDJweCAycHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIGNvbG9yOiAjMTk2N2QyO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIHBhZGRpbmc6IDAgMTBweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHdpZHRoLCBoZWlnaHQ7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDIwMG1zO1xuXG4gICYgPiBzcGFuIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIH1cblxuICAmLnBvc2l0aW9ubmluZyB7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogd2lkdGgsIGhlaWdodCwgdG9wLCBsZWZ0LCB0cmFuc2Zvcm07XG5cbiAgICAmLmZhc3Qge1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTAwbXM7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0b3AsIGxlZnQ7XG5cbiAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5kcmFnZ2luZyB7XG4gICAgLy90cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHdpZHRoOiAyMDBweCAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogNDJweCAhaW1wb3J0YW50O1xuICB9XG59XG4iLCJAaW1wb3J0IFwiY29tcGFzc1wiO1xuXG4ud2ViZi1kcm9wZG93biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcblxuICAud2ViZi1kcm9wZG93bi1tZW51IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIHRvcDogMTAwJTtcbiAgICB6LWluZGV4OiAxMDAwO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRkZWZhdWx0LWJvcmRlci1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cocmdiYSgwLDAsMCwwLjE3NSkgMCAzcHggM3B4KTtcbiAgfVxuXG4gICYuYWxpZ25tZW51LXVwIC53ZWJmLWRyb3Bkb3duLW1lbnUge1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICB0b3A6IGF1dG87XG4gIH1cblxuICAmLmFsaWdubWVudS1yaWdodCAud2ViZi1kcm9wZG93bi1tZW51IHtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG5cbiAgb3ZlcmZsb3cteDogdW5zZXQ7XG4gIC8vbWFyZ2luLWJvdHRvbTogLTZweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAmLm9wZW4ge1xuICAgIG92ZXJmbG93LXg6IHZpc2libGU7XG4gICAgLy9tYXJnaW4tYm90dG9tOiAtMXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAud2ViZi1kcm9wZG93bi1tZW51IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuXG4ud2ViZi1idXR0b25zLWdyb3VwIHtcbiAgLndlYmYtZHJvcGRvd24ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgIC53ZWJmLWRyb3Bkb3duLW1lbnUge1xuICAgICAgbGVmdDogLTFweDtcbiAgICB9XG5cbiAgICAmLmFsaWdubWVudS1yaWdodCAud2ViZi1kcm9wZG93bi1tZW51IHtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIud2ViZi1kcm9wZG93bi1zbGlkZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbiIsIkBpbXBvcnQgXCJjb21wYXNzL2NzczNcIjtcblxuI2dlZCB7XG4gICYuZ3JpZCB7XG4gICAgLmVsZW1lbnRzIHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgyNSUsIDFmcikpO1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgzMyUsIDFmcikpO1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCg1MCUsIDFmcikpO1xuICAgICAgfVxuXG4gICAgICAuZWxlbWVudCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgaGVpZ2h0OiAxMnJlbTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2FkZDhlNjtcbiAgICAgICAgbWFyZ2luOiAwLjI1cmVtO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG5cbiAgICAgICAgLnByZXZpZXcge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICBoZWlnaHQ6IDhyZW07XG4gICAgICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgICAgICAgIGNvbG9yOiAjNjRiNWY2O1xuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLndyYXAtaW5mb3Mge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC1mbG93OiB3cmFwO1xuICAgICAgICAgIGZsZXg6IDEgMSAxMDAlO1xuICAgICAgICAgIG1pbi13aWR0aDogMDtcblxuICAgICAgICAgIC5uYW1lLWVsZW1lbnQge1xuICAgICAgICAgICAgZmxleDogMSAxIDEwMCU7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMC41cmVtO1xuXG4gICAgICAgICAgICAubmFtZSB7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDAuODVyZW07XG4gICAgICAgICAgICAgIG1hcmdpbjogMCAwLjI1cmVtO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwIDRweDtcbiAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmZpbGVzaXplIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMC41cmVtO1xuICAgICAgICAgICAgcmlnaHQ6IDIuM3JlbTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43cmVtO1xuICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmRhdGUtY3JlYXRpb24ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiAwLjVyZW07XG4gICAgICAgICAgICBsZWZ0OiAwLjVyZW07XG4gICAgICAgICAgICBmb250LXNpemU6IDAuN3JlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYWN0aW9ucyB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICBjb2xvcjogIzk5OTtcblxuICAgICAgICAgIC5lbGxpcHNpcyB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuIiwiQGltcG9ydCBcImNvbXBhc3MvY3NzM1wiO1xuXG4jZ2VkIHtcbiAgJi5saXN0IHtcbiAgICAuZWxlbWVudHMge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG5cbiAgICAgIC5lbGVtZW50IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDRyZW07XG5cbiAgICAgICAgLnByZXZpZXcge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICAgICAgICBmbGV4OiAxIDEgNnJlbTtcbiAgICAgICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGNvbG9yOiAjNjRiNWY2O1xuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA5NSU7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAzLjhyZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLndyYXAtaW5mb3Mge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC1mbG93OiB3cmFwO1xuICAgICAgICAgIGZsZXg6IDEgMSAxMDAlO1xuICAgICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMC4zcmVtO1xuXG4gICAgICAgICAgLm5hbWUtZWxlbWVudCB7XG4gICAgICAgICAgICBmbGV4OiAxIDEgMTAwJTtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG5cbiAgICAgICAgICAgIC5uYW1lIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjhyZW07XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDRweDtcbiAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmZpbGVzaXplIHtcbiAgICAgICAgICAgIGZsZXg6IDEgMSAyMHB4O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA0cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuN3JlbTtcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuZGF0ZS1jcmVhdGlvbiB7XG4gICAgICAgICAgICBmbGV4OiAxIDEgMjBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43cmVtO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmFjdGlvbnMge1xuICAgICAgICAgIGNvbG9yOiAjOTk5O1xuXG4gICAgICAgICAgLmVsbGlwc2lzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuIiwiQGltcG9ydCBcImNvbXBhc3NcIjtcblxubmF2LmdlZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgbGluZS1oZWlnaHQ6IDIuNXJlbTtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gIG9sLmJyZWFkY3J1bWIge1xuICAgIGhlaWdodDogMi41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAyLjVyZW07XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIGxpIHtcbiAgICAgIGNvbG9yOiAjZWVlO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb2xvcjogI2RkZDtcbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBjb2xvcjogI2VlZTtcblxuICAgICAgICAmLmhvbWUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYnV0dG9ucy1uYXZiYXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgY29sb3I6ICNmZmY7XG5cbiAgICAuYnRuLWRpc3BsYXksXG4gICAgLmJ0bi1hY3Rpb25zIHtcbiAgICAgIHBhZGRpbmc6IDAgMC44cmVtO1xuICAgICAgbWFyZ2luOiAwIDAuMnJlbTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAuYnRuLWRpc3BsYXkge1xuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oIzQyYTVmNSwgOCUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4iLCJAaW1wb3J0IFwiY29tcGFzcy9jc3MzXCI7XG5cbiNnZWQge1xuICAvKiBXZWJmIFNjcm9sbGJhciAqL1xuICAud3JhcC1lbGVtZW50cyB7XG4gICAgLndlYmYtc2Nyb2xsYm94LWNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAud2ViZi1zY3JvbGxib3gtd3JhcHBlciB7XG4gICAgICAmOmhvdmVyLCAmLmRyYWdnaW5nIHtcbiAgICAgICAgLndlYmYtc2Nyb2xsYmFyIHtcbiAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDAuOCk7XG5cbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgwKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAud2ViZi1zY3JvbGxib3gtd3JhcHBlciB7XG4gICAgICAud2ViZi1zY3JvbGxiYXIueSB7XG4gICAgICAgIHdpZHRoOiA1cHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgIC5oYW5kbGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjMjM3M2Q5O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiIsIkBpbXBvcnQgXCJjb21wYXNzL2NzczNcIjtcblxuI2dlZCB7XG4gICYudGh1bWJuYWlscyB7XG4gICAgLmVsZW1lbnRzIHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgyNSUsIDFmcikpO1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgzMyUsIDFmcikpO1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCg1MCUsIDFmcikpO1xuICAgICAgfVxuXG4gICAgICAuZWxlbWVudCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgaGVpZ2h0OiAzcmVtO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjYWRkOGU2O1xuICAgICAgICBtYXJnaW46IDAuNXJlbSAwLjNyZW07XG4gICAgICAgIG1pbi13aWR0aDogMDtcblxuICAgICAgICAucHJldmlldyB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGZsZXg6IDEgMSAyMHB4O1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIGNvbG9yOiAjNjRiNWY2O1xuICAgICAgICAgIHBhZGRpbmc6IDNweDtcbiAgICAgICAgICBmb250LXNpemU6IDJyZW07XG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAud3JhcC1pbmZvcyB7XG4gICAgICAgICAgZmxleDogMSAxIDUwJTtcbiAgICAgICAgICBmbGV4LWZsb3c6IG5vd3JhcDtcbiAgICAgICAgICBtaW4td2lkdGg6IDA7XG5cbiAgICAgICAgICAubmFtZS1lbGVtZW50IHtcbiAgICAgICAgICAgIGZsZXg6IDEgMSAxMDAlO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblxuICAgICAgICAgICAgLm5hbWUge1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjg1cmVtO1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMC4yNXJlbTtcbiAgICAgICAgICAgICAgcGFkZGluZzogMCA0cHg7XG4gICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5maWxlc2l6ZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5kYXRlLWNyZWF0aW9uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmFjdGlvbnMge1xuICAgICAgICAgIHdpZHRoOiAycmVtO1xuXG4gICAgICAgICAgLmVsbGlwc2lzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICAgICAgICAgICAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiIsIkBpbXBvcnQgXCJjb21wYXNzXCI7XG5AaW1wb3J0IFwiLi9maWxlbWFuYWdlci9ncmlkLWxheW91dC5zY3NzXCI7XG5AaW1wb3J0IFwiLi9maWxlbWFuYWdlci9saXN0LWxheW91dC5zY3NzXCI7XG5AaW1wb3J0IFwiLi9maWxlbWFuYWdlci9uYXYuc2Nzc1wiO1xuQGltcG9ydCBcIi4vZmlsZW1hbmFnZXIvc2Nyb2xsLnNjc3NcIjtcbkBpbXBvcnQgXCIuL2ZpbGVtYW5hZ2VyL3RodW1ibmFpbHMtbGF5b3V0LnNjc3NcIjtcblxuJHNlbGVjdGlvbi1jb2xvcjogI2I2ZDVmZjtcbiRoZWlnaHQtcGFnZS1oZWFkZXI6IDMuNXJlbTtcblxuLndlYmYtZmlsZW1hbmFnZXIge1xuICB3aWR0aDogMTAwJTtcblxuICAuYnRuLW5ldyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAud3JhcC1lbGVtZW50cyB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAjeyRoZWlnaHQtcGFnZS1oZWFkZXJ9IC0gMi41cmVtKTtcblxuICAgIC5lbGVtZW50cyB7XG4gICAgICAuZWxlbWVudCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG5cbiAgICAgICAgLm5hbWUtZWxlbWVudCB7XG4gICAgICAgICAgY29sb3I6ICM1YjYzNmE7XG4gICAgICAgIH1cblxuICAgICAgICAuZmlsZXNpemUge1xuICAgICAgICAgIGNvbG9yOiAjODA4MDgwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmRhdGUtY3JlYXRpb24ge1xuICAgICAgICAgIGNvbG9yOiAjNUY1RjVGO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmOTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuc2VsZWN0ZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFQ0VDRUM7XG5cbiAgICAgICAgICAuZmlsZXNpemUge1xuICAgICAgICAgICAgY29sb3I6ICMzMzM7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmRhdGUtY3JlYXRpb24ge1xuICAgICAgICAgICAgY29sb3I6ICMyMTIxMjE7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLndyYXAtaW5mb3Mge1xuICAgICAgICAgICAgLm5hbWUtZWxlbWVudCB7XG4gICAgICAgICAgICAgIC5uYW1lIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzMzMztcblxuICAgICAgICAgICAgICAgICYuZWRpdGFibGUge1xuICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZjVmNWY1O1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogIzMzMztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOjpzZWxlY3Rpb24gICAgICB7IGJhY2tncm91bmQ6ICNhOGQxZmY7IH1cbiAgICAgICAgICAgICAgICAmOjotbW96LXNlbGVjdGlvbiB7IGJhY2tncm91bmQ6ICNhOGQxZmY7IH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5hY3Rpb25zIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNzc3O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cblxuXG5cblxuXG5cblxuIiwiQGltcG9ydCBcImNvbXBhc3NcIjtcblxuLndlYmYtYWdlbmRhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGZvbnQtZmFtaWx5OiBhcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuXG4gIHRhYmxlIHtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuXG4gICAgdHIge1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIH1cbiAgfVxuXG4gICoge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICB9XG5cbiAgJi5hZ2VuZGEtZGF5IHtcbiAgICAuZGF5cyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC53ZWJmLXNjcm9sbGJveC13cmFwcGVyIC53ZWJmLXNjcm9sbGJhci55IHtcbiAgICB3aWR0aDogOHB4O1xuXG4gICAgJiwgJjpob3ZlciB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB9XG5cbiAgICAuaGFuZGxlciB7XG4gICAgICB3aWR0aDogODAlO1xuICAgICAgYmFja2dyb3VuZDogIzU1NTtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoM3B4KTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMwMDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi53ZWJmLWFnZW5kYSA+IC50b29sYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiA1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kQWdlbmRhQ29sb3I7XG4gIC8vYmFja2dyb3VuZDogcmdiKDI1NSwyNTUsMjU1KTtcbiAgLy9iYWNrZ3JvdW5kOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQRDk0Yld3Z2RtVnljMmx2YmowaU1TNHdJaUEvUGdvOGMzWm5JSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SWdkMmxrZEdnOUlqRXdNQ1VpSUdobGFXZG9kRDBpTVRBd0pTSWdkbWxsZDBKdmVEMGlNQ0F3SURFZ01TSWdjSEpsYzJWeWRtVkJjM0JsWTNSU1lYUnBiejBpYm05dVpTSStDaUFnUEd4cGJtVmhja2R5WVdScFpXNTBJR2xrUFNKbmNtRmtMWFZqWjJjdFoyVnVaWEpoZEdWa0lpQm5jbUZrYVdWdWRGVnVhWFJ6UFNKMWMyVnlVM0JoWTJWUGJsVnpaU0lnZURFOUlqQWxJaUI1TVQwaU1DVWlJSGd5UFNJd0pTSWdlVEk5SWpFd01DVWlQZ29nSUNBZ1BITjBiM0FnYjJabWMyVjBQU0l3SlNJZ2MzUnZjQzFqYjJ4dmNqMGlJMlptWm1abVppSWdjM1J2Y0MxdmNHRmphWFI1UFNJeElpOCtDaUFnSUNBOGMzUnZjQ0J2Wm1aelpYUTlJakV3TUNVaUlITjBiM0F0WTI5c2IzSTlJaU5sTldVMVpUVWlJSE4wYjNBdGIzQmhZMmwwZVQwaU1TSXZQZ29nSUR3dmJHbHVaV0Z5UjNKaFpHbGxiblErQ2lBZ1BISmxZM1FnZUQwaU1DSWdlVDBpTUNJZ2QybGtkR2c5SWpFaUlHaGxhV2RvZEQwaU1TSWdabWxzYkQwaWRYSnNLQ05uY21Ga0xYVmpaMmN0WjJWdVpYSmhkR1ZrS1NJZ0x6NEtQQzl6ZG1jKyk7XG4gIC8vYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjZmZmZmZmIDAlLCAkYmFja2dyb3VuZEFnZW5kYUNvbG9yIDEwMCUpO1xuICAvL2JhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGNvbG9yLXN0b3AoMCUsICNmZmYpLCBjb2xvci1zdG9wKDEwMCUsICRiYWNrZ3JvdW5kQWdlbmRhQ29sb3IpKTtcbiAgLy9iYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICNmZmZmZmYgMCUsICRiYWNrZ3JvdW5kQWdlbmRhQ29sb3IgMTAwJSk7XG4gIC8vYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgI2ZmZmZmZiAwJSwgJGJhY2tncm91bmRBZ2VuZGFDb2xvciAxMDAlKTtcbiAgLy9iYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgI2ZmZmZmZiAwJSwgJGJhY2tncm91bmRBZ2VuZGFDb2xvciAxMDAlKTtcbiAgLy9iYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZmZmZmZmIDAlLCAkYmFja2dyb3VuZEFnZW5kYUNvbG9yIDEwMCUpO1xuICAvL2ZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjZmZmZmZmJywgZW5kQ29sb3JzdHI9JyNlNWU1ZTUnLEdyYWRpZW50VHlwZT0wICk7XG5cbiAgJiA+IC5idXR0b25zIHtcbiAgICBmbGV4LXNocmluazogMDtcblxuICAgIC53ZWJmLWJ1dHRvbiB7XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC4xODc1cmVtO1xuICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgIHBhZGRpbmc6IDAuMjI1cmVtIDAuNzVyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJiA+IC50aXRsZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJiA+IC52aWV3cyB7XG4gICAgZmxleC1zaHJpbms6IDA7XG5cbiAgICAud2ViZi1idXR0b24ge1xuICAgICAgLW1vei1ib3gtc2hhZG93OiBub25lO1xuICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcblxuICAgICAgJi5tb3VzZW92ZXIsICYuZm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICNDQ0NDQ0M7XG4gICAgICB9XG5cbiAgICAgICYuc2VsZWN0ZWQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjY2NjO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGZpbHRlcjogbm9uZTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjYWFhO1xuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjE1KVxuICAgICAgfVxuXG4gICAgICAmLnByZXYtd2VlayxcbiAgICAgICYubmV4dC13ZWVrIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxNHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNHB4O1xuICAgICAgfVxuXG4gICAgICAmLnByZXYtd2VlayB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogOXB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA5cHg7XG4gICAgICB9XG5cbiAgICAgICYubmV4dC13ZWVrIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA5cHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDlweDtcbiAgICAgIH1cblxuICAgICAgJi50b2RheSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIH1cblxuICAgICAgJi5kYXRlcGlja2VyIHtcbiAgICAgICAgPiBzcGFuIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMC42cmVtO1xuXG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ud2ViZi1hZ2VuZGEgLmRheXMge1xuICBwYWRkaW5nOiAxMHB4IDAgNXB4O1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZEFnZW5kYUNvbG9yO1xuXG4gIC50Yi1kYXlzIHtcbiAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC50Yi1kYXlzIC50ZC1kYXkgYS5saW5rLWRheXMge1xuICAgIGNvbG9yOiAjNTU1O1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgfVxuXG4gIC50Yi1kYXlzIC50ZC1kYXkgYS5saW5rLWRheXMuZGlzYWJsZWQge1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgfVxuXG4gIC50Yi1kYXlzIC50ZC1kYXkgYS5saW5rLWRheXMuZGlzYWJsZWQ6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG4ud2ViZi1hZ2VuZGEgLmRheXMgLnRiLWRheXMgLnRkLWhvdXJzLFxuLndlYmYtYWdlbmRhIC51c2VycyAudGItdXNlcnMgLnRkLWhvdXJzIHtcbiAgd2lkdGg6IDQ1cHg7XG59XG5cbi53ZWJmLWFnZW5kYSAudXNlcnMge1xuICBwYWRkaW5nOiAycHggMDtcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmRBZ2VuZGFDb2xvcjtcbn1cblxuLndlYmYtYWdlbmRhIC51c2VycyAudGItdXNlcnMge1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ud2ViZi1hZ2VuZGEgLnVzZXJzIC50Yi11c2VycyB0ZCAudXNlciB7XG4gIHBhZGRpbmc6IDAgM3B4O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuLyogICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsgKi9cbn1cblxuLndlYmYtYWdlbmRhIC51c2VycyAudGItdXNlcnMgdGQgLnVzZXIgbGFiZWwge1xufVxuXG4ud2ViZi1hZ2VuZGEgLmFsbGRheSB7XG4gIG1pbi1oZWlnaHQ6IDI0cHg7XG4vKiAgIGhlaWdodDogMjRweDsgKi9cbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2NjYztcbiAgYmFja2dyb3VuZDogI2NjYztcbiAgYm9yZGVyLWJvdHRvbTogM3B4IGRvdWJsZSAjODA4MDgwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi53ZWJmLWFnZW5kYSB7XG4gIC5hbGxkYXkge1xuICAgIC50Yi1ncmlkIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgIH1cblxuICAgIC50ZC1maXJzdCB7XG4gICAgICB3aWR0aDogNDVweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kQWdlbmRhQ29sb3I7XG4gICAgfVxuXG4gICAgLnRkLWNvbC1kYXlzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMjRweDsgLyogw6AgZMOpdGVybWluZXIgZW4ganMgKi9cbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAudGQtY29sLWRheXMgLnRiLWRheXMge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIC50ZC1jb2wtZGF5cyAudGItZGF5cyAudGQtY29sLWFsbGRheSB7XG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjODA4MDgwO1xuICAgIH1cblxuICAgIC50ZC1jb2wtZGF5cyAudGItZGF5cyAudGQtY29sLWFsbGRheS5ob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiBibGFjaztcbiAgICAgIG9wYWNpdHk6IDAuMDc7XG4gICAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9NSk7XG4gICAgfVxuXG4gICAgLnRkLWNvbC1kYXlzIC50Yi1kYXlzIC50ZC1jb2wtYWxsZGF5Omxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIH1cblxuICAgIC50ZC1jb2wtZGF5cyAudGItZXZlbnRzIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gICAgfVxuXG4gICAgLnRkLWNvbC1kYXlzIC50Yi1ldmVudHMgLmV2ZW50IHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM1Rjk0RDI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjhBMUU1O1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEycHg7XG4gICAgICBwYWRkaW5nOiAxcHggMnB4O1xuICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgbWFyZ2luOiAxcHggMnB4IDFweCAxcHg7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuICB9XG5cbiAgLmdyaWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuXG4gICAgLnRiLWdyaWQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICAgIH1cblxuICAgIC50Yi1ncmlkIC50ZC1ob3VycyB7XG4gICAgICB3aWR0aDogNDVweDtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kQWdlbmRhQ29sb3I7XG4gICAgICAvKiAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYWFhOyAqLyAvKiBjcsOpZSB1biBkw6ljYWxhZ2Ugc3VyIGNocm9tZSEgKi9cbiAgICB9XG5cbiAgICAudGItZ3JpZCAudGQtaG91cnMgc3Bhbi5ob3VyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgbWFyZ2luOiAwIDVweCAwIDA7XG4gICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgfVxuXG4gICAgLnRiLWdyaWQgLnRkLWhvdXJzIC5ib3JkZXItYm90dG9tIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJvdHRvbTogMXB4O1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjY2NjO1xuICAgICAgZm9udC1zaXplOiAwO1xuICAgIH1cblxuICAgIC50Yi1ncmlkIC50aW1lc2xvdCB7XG4gICAgICAvKiAgIGhlaWdodDogMjBweDsgKi9cbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgI2RkZDtcbiAgICB9XG5cbiAgICAudGItZ3JpZCAudGltZXNsb3QuaG91ciB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjYztcbiAgICB9XG5cbiAgICAuYWdlbmRhIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICB9XG5cbiAgICAuYWdlbmRhIC50Yi1hZ2VuZGEge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICAgIH1cblxuICAgIC5hZ2VuZGEgLnRiLWFnZW5kYSAudGQtaG91cnMge1xuICAgICAgd2lkdGg6IDQ1cHg7XG4gICAgfVxuXG4gICAgLmFnZW5kYSAudGItYWdlbmRhIC50ZC1jb2wtZGF5IHtcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM4MDgwODA7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgLmFnZW5kYSAudGItYWdlbmRhIC50ZC1jb2wtZGF5Omxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIH1cblxuICAgIC5hZ2VuZGEgLnRiLWFnZW5kYSAudGQtY29sLWRheSAuY29sLWRheS1mdWxsIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICAuYWdlbmRhIC50Yi1hZ2VuZGEgLnRkLWNvbC1kYXkgLmNvbC1kYXktZnVsbCAuaG91ci1tYXJrZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgei1pbmRleDogMjtcbiAgICB9XG5cbiAgICAuYWdlbmRhIC50Yi1hZ2VuZGEgLnRkLWNvbC1kYXkgLmNvbC1kYXktZnVsbCAudGItdXNlcnMge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICAgIH1cblxuICAgIC5hZ2VuZGEgLnRiLWFnZW5kYSAudGQtY29sLWRheSAuY29sLWRheS1mdWxsIC50Yi11c2VycyB0ZCB7XG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBkYXNoZWQgI0QzRDNEMztcbiAgICB9XG5cbiAgICAuYWdlbmRhIC50Yi1hZ2VuZGEgLnRkLWNvbC1kYXkgLmNvbC1kYXktZnVsbCAudGItdXNlcnMgdGQgLmNvbC11c2VyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAuYWdlbmRhIC50Yi1hZ2VuZGEgLnRkLWNvbC1kYXkgLmNvbC1kYXktZnVsbCAudGItdXNlcnMgdGQ6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuXG5cbiAgICAuYWdlbmRhIC50Yi1hZ2VuZGEgLnRkLWNvbC1kYXkudG9kYXkge1xuICAgIH1cblxuICAgIC5hZ2VuZGEgLnRiLWFnZW5kYSAudGQtY29sLWRheSAuY29sLWRheS1mdWxsIC5ldmVudCB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiAjNjhBMUU1O1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzVmOTRkMjtcbiAgICB9XG5cbiAgICAuYWdlbmRhIC50Yi1hZ2VuZGEgLnRkLWNvbC1kYXkgLmNvbC1kYXktZnVsbCAuZXZlbnQgLnRpdGxlIHtcbiAgICAgIC8qICAgYm9yZGVyOiAxcHggc29saWQgIzFCNjJDMDsgKi9cbiAgICAgIC8qICAgaGVpZ2h0OiAxNXB4OyAqL1xuICAgICAgbWluLWhlaWdodDogMTVweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgLyogICB0ZXh0LWFsaWduOiBjZW50ZXI7ICovXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgYmFja2dyb3VuZDogIzJCNzJEMDtcbiAgICAgIC8qICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgKi9cbiAgICAgIC8qICAgb3ZlcmZsb3c6IGhpZGRlbjsgKi9cbiAgICAgIHRleHQtaW5kZW50OiAycHg7XG4gICAgfVxuXG4gICAgLmFnZW5kYSAudGItYWdlbmRhIC50ZC1jb2wtZGF5IC5jb2wtZGF5LWZ1bGwgLmV2ZW50IC50aXRsZSB7XG4gICAgICAvKiAgIGN1cnNvcjogbW92ZTsgKi9cbiAgICB9XG5cbiAgICAuYWdlbmRhIC50Yi1hZ2VuZGEgLnRiLWFnZW5kYS1kYXlzIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgICB9XG5cbiAgICAuYWdlbmRhIC50Yi1hZ2VuZGEgLnRkLWNvbC1kYXkgLmNvbC1kYXktZnVsbCAuZXZlbnQgLmNvbnRlbnQge1xuICAgICAgLyogICB0ZXh0LWFsaWduOiBjZW50ZXI7ICovXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHBhZGRpbmc6IDNweCAxcHggMDtcbiAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxM3B4O1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzVmOTRkMjtcbiAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAuYWdlbmRhIC50Yi1hZ2VuZGEgLnRkLWNvbC1kYXkgLmNvbC1kYXktZnVsbCAuZXZlbnQgLmhhbmRsZS1yZXNpemFibGUge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IC0ycHg7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZm9udC1zaXplOiA5cHg7XG4gICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICBsaW5lLWhlaWdodDogOHB4O1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIGN1cnNvcjogcy1yZXNpemU7XG4gICAgfVxuICB9XG5cbiAgLmFsbGRheSAudGItZ3JpZCAudGQtY29sLWRheXMgLnRiLWV2ZW50cyAuZXZlbnQudGVtcG9yYXJ5LFxuICAuZ3JpZCAuYWdlbmRhIC50Yi1hZ2VuZGEgLnRkLWNvbC1kYXkgLmNvbC1kYXktZnVsbCAuZXZlbnQudGVtcG9yYXJ5IHtcbiAgICBvcGFjaXR5OiAwLjYgIWltcG9ydGFudDtcbiAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9NjApO1xuICB9XG5cbiAgLnRiLWdyaWQgLnRkLWRheS1tb250aCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgfVxuXG4gIC50Yi1ncmlkIC50ZC1kYXktbW9udGguZHJvcCB7XG4gICAgYmFja2dyb3VuZDogI2YyZjVmZjtcbiAgfVxuXG4gIC50Yi1ncmlkIC50ZC1kYXktbW9udGguZHJvcCAuY2VsbC1kYXkgLm51bS1kYXkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlMmU5ZmY7XG4gIH1cblxuICAudGItZ3JpZCAudGQtZGF5LW1vbnRoLmZpcnN0LXJvdyB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxuXG4gIC50Yi1ncmlkIC50ZC1kYXktbW9udGgubGFzdC1yb3cge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gIH1cblxuICAudGItZ3JpZCAudGQtZGF5LW1vbnRoLmZpcnN0LWNvbCB7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gIH1cblxuICAudGItZ3JpZCAudGQtZGF5LW1vbnRoLmxhc3QtY29sIHtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gIH1cblxuICAudGItZ3JpZCAudGQtZGF5LW1vbnRoIC5jZWxsLWRheSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLnRiLWdyaWQgLnRkLWRheS1tb250aCAuY2VsbC1kYXkgLm51bS1kYXkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kOiAjZjVmNWY1O1xuICAgIGNvbG9yOiAjYWFhO1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgfVxuXG4gIC50Yi1ncmlkIC50ZC1kYXktbW9udGggLmNlbGwtZGF5IC5udW0tZGF5IGEge1xuICAgIGNvbG9yOiAjYWFhO1xuICB9XG5cbiAgLnRiLWdyaWQgLnRkLWRheS1tb250aCAuY2VsbC1kYXkgLm51bS1kYXkgYS5kaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICB9XG5cbiAgLnRiLWdyaWQgLnRkLWRheS1tb250aCAuY2VsbC1kYXkgLm51bS1kYXkgYS5kaXNhYmxlZDpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLnRiLWdyaWQgLnRkLWRheS1tb250aCAuY2VsbC1kYXkgLm51bS1kYXkgc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy1yaWdodDogNHB4O1xuICB9XG5cbiAgLnRiLWdyaWQgLnRkLWRheS1tb250aCAuY2VsbC1kYXkgLm51bS1kYXkuY3VycmVudCB7XG4gICAgY29sb3I6ICM0NDQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cblxuICAudGItZ3JpZCAudGQtZGF5LW1vbnRoIC5jZWxsLWRheSAubnVtLWRheS5jdXJyZW50IGEge1xuICAgIGNvbG9yOiAjNDQ0O1xuICB9XG5cbiAgLnRiLWdyaWQgLnRkLWRheS1tb250aCAuY2VsbC1kYXkgLmV2ZW50cyB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMThweDtcbiAgICBsZWZ0OiAwO1xuICB9XG5cbiAgLnRiLWdyaWQgLnRkLWRheS1tb250aCAuY2VsbC1kYXkgLmV2ZW50cyAuZXZlbnQge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIC8qICAgY3Vyc29yOiBwb2ludGVyOyAqL1xuICB9XG5cbiAgLnRiLWdyaWQgLnRkLWRheS1tb250aCAuY2VsbC1kYXkgLmV2ZW50cyAuZXZlbnQgLnRpdGxlIHtcbiAgICBtYXJnaW46IDAgMnB4IDJweCAycHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzFCNjJDMDtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgbWluLWhlaWdodDogMTVweDtcbiAgICBsaW5lLWhlaWdodDogMTVweDtcbiAgICBiYWNrZ3JvdW5kOiAjMkI3MkQwO1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LWluZGVudDogM3B4O1xuICB9XG5cbiAgLndlYmYtYWdlbmRhIHtcbiAgICAud2ViZi1zY3JvbGxib3gtd3JhcHBlciAud2ViZi1zY3JvbGxiYXIueSB7XG4gICAgICB3aWR0aDogOHB4O1xuXG4gICAgICAmLCAmOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLmhhbmRsZXIge1xuICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjNTU1O1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDNweCk7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogIzAwMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAud2ViZi1hZ2VuZGEtdXNlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLndlYmYtYWdlbmRhLXRvb2x0aXAtdXNlciAudHJpYW5nbGUge1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1ib3R0b206IDZweCBzb2xpZCAjY2NjO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC02cHg7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHotaW5kZXg6IDEwMDAxO1xuICB9XG5cbiAgLndlYmYtYWdlbmRhLXRvb2x0aXAtdXNlciAudHJpYW5nbGUgLmlubmVyLXRyaWFuZ2xlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogNnB4IHNvbGlkICNmZmY7XG4gICAgdG9wOiAxcHg7XG4gICAgbGVmdDogLTZweDtcbiAgfVxuXG4gIC53ZWJmLWFnZW5kYS10b29sdGlwLXVzZXIgLmNvbnRlbnQge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBjb2xvcjogIzMzMztcbiAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtNnB4O1xuICAgIHotaW5kZXg6IDEwMDAwO1xuICAgIGJveC1zaGFkb3c6IDJweCAycHggNXB4ICNkZGQ7XG4gIH1cbn1cblxuXG4ud2ViZi1hZ2VuZGEtZHJhZ2dpbmctZXZlbnQgLnRpdGxlIHtcbiAgbWFyZ2luOiAwIDJweCAycHggMnB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjMUI2MkMwO1xuICBoZWlnaHQ6IDE1cHg7XG4gIG1pbi1oZWlnaHQ6IDE1cHg7XG4gIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICBiYWNrZ3JvdW5kOiAjMkI3MkQwO1xuICBmb250LXNpemU6IDEwcHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtaW5kZW50OiAzcHg7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4iLCJAaW1wb3J0IFwiY29tcGFzc1wiO1xuXG4ud2ViZi1pbWFnZS1jcm9wIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGN1cnNvcjogY3Jvc3NoYWlyO1xuXG4gIC5vdXRlci1zZWxlY3Rpb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kOiAjMDAwO1xuICAgIEBpbmNsdWRlIG9wYWNpdHkoMC4zKTtcblxuICAgICYubncgIHsgdG9wOiAwcHg7IGxlZnQ6IDBweDsgfVxuICAgICYubiAgIHsgdG9wOiAwcHg7IH1cbiAgICAmLm5lICB7IHRvcDogMHB4OyByaWdodDogMHB4OyB9XG4gICAgJi5lICAgeyByaWdodDogMHB4OyB9XG4gICAgJi5zZSAgeyBib3R0b206IDBweDsgcmlnaHQ6IDBweDsgfVxuICAgICYucyAgIHsgYm90dG9tOiAwcHg7IH1cbiAgICAmLnN3ICB7IGJvdHRvbTogMHB4OyBsZWZ0OiAwcHg7IH1cbiAgICAmLncgICB7IGxlZnQ6IDBweDsgfVxuICB9XG5cbiAgLnNlbGVjdGlvbi1ib3JkZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvZ2lmO2Jhc2U2NCxSMGxHT0RsaENBQUlBSkVBQUtxcXF2Ly8vd0FBQUFBQUFDSC9DMDVGVkZORFFWQkZNaTR3QXdFQUFBQWgrUVFKQ2dBQUFDd0FBQUFBQ0FBSUFBQUNEWlFGQ2FkcnpWUk1COUZaNVN3QUlma0VDUW9BQUFBc0FBQUFBQWdBQ0FBQUFnK0VMcUNZYXVkZVc5Q2h5T3lsdFFBQUlma0VDUW9BQUFBc0FBQUFBQWdBQ0FBQUFnOEVoR0tYbStyUVl0QzBXR2w5b0FBQUlma0VDUW9BQUFBc0FBQUFBQWdBQ0FBQUFnK0VoV0tRZXJuYVltakNXTEY3cUFBQUlma0VDUW9BQUFBc0FBQUFBQWdBQ0FBQUFnMkVJU21uYTgxVVRBZlJXZVVzQUNINUJBa0tBQUFBTEFBQUFBQUlBQWdBQUFJUEZBNmltR3JuWGx2UW9janNwYlVBQUNINUJBa0tBQUFBTEFBQUFBQUlBQWdBQUFJUGxJQmdsNXZxMEdMUXRGaHBmYUlBQUNINUJBVUtBQUFBTEFBQUFBQUlBQWdBQUFJUGxJRmdrbnE1Mm1Kb3dsaXhlNmdBQURzPScpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0O1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgJi5uLCAmLnMgeyBoZWlnaHQ6IDFweDsgfVxuICAgICYuZSwgJi53IHsgd2lkdGg6IDFweDsgfVxuICB9XG5cbiAgLnNlbGVjdGVkLWFyZWEge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjdXJzb3I6IG1vdmU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIEBpbmNsdWRlIG9wYWNpdHkoMCk7XG4gIH1cblxuICAuaGFuZGxlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMzMztcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZWVlO1xuICAgIGZvbnQtc2l6ZTogMXB4O1xuICAgIGhlaWdodDogOHB4O1xuICAgIHdpZHRoOiA4cHg7XG4gICAgbWFyZ2luOiAtNHB4O1xuICAgIEBpbmNsdWRlIG9wYWNpdHkoMC42KTtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgJi5udyAgIHsgY3Vyc29yOiBudy1yZXNpemU7IH1cbiAgICAmLm4gICAgeyBjdXJzb3I6IG4tcmVzaXplOyB9XG4gICAgJi5uZSAgIHsgY3Vyc29yOiBuZS1yZXNpemU7IH1cbiAgICAmLmUgICAgeyBjdXJzb3I6IGUtcmVzaXplOyB9XG4gICAgJi5zZSAgIHsgY3Vyc29yOiBzZS1yZXNpemU7IH1cbiAgICAmLnMgICAgeyBjdXJzb3I6IHMtcmVzaXplOyB9XG4gICAgJi5zdyAgIHsgY3Vyc29yOiBzdy1yZXNpemU7IH1cbiAgICAmLncgICAgeyBjdXJzb3I6IHctcmVzaXplOyB9XG4gIH1cbn1cblxuIiwiJHNpemVCdG5OYXY6IDNyZW07XG5cbi53ZWJmLWxpZ2h0Ym94IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IDEwMDAwO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlO1xuXG4gICYuY2xvc2luZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAmLm9wZW4ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgLndlYmYtbGlnaHRib3gtbmF2IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgd2lkdGg6ICRzaXplQnRuTmF2O1xuICAgIGhlaWdodDogJHNpemVCdG5OYXY7XG4gICAgbWFyZ2luLXRvcDogJHNpemVCdG5OYXYgLyAtMjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG9wYWNpdHk6IDAuNDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuNik7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgd2lkdGg6ICRzaXplQnRuTmF2ICogMC43NTtcbiAgICAgIGhlaWdodDogJHNpemVCdG5OYXYgKiAwLjc1O1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgIGZvbnQtc2l6ZTogJHNpemVCdG5OYXYgKiAuODtcblxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHNpemVCdG5OYXYgKiAuOCAqIC43NTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnByZXYge1xuICAgICAgbGVmdDogMnJlbTtcblxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgIGxlZnQ6IDAuNHJlbTtcbiAgICAgIH1cblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxmMDUzXCI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5uZXh0IHtcbiAgICAgIHJpZ2h0OiAycmVtO1xuXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgcmlnaHQ6IDAuNHJlbTtcbiAgICAgIH1cblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxmMDU0XCI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLndlYmYtbGlnaHRib3gtYnV0dG9ucyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC8vYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLDAsMCwwLjgpIDc1JSwgcmdiYSgwLDAsMCwwKSk7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB0b3A6IDA7XG4gICAgcGFkZGluZy1yaWdodDogOHB4O1xuXG4gICAgLndlYmYtbGlnaHRib3gtYnV0dG9uIHtcbiAgICAgIG1hcmdpbjogNXB4IDJweDtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjNzO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzU1NTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLy53ZWJmLWxpZ2h0Ym94LWNsb3NlIHtcbiAgLy8gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgLy8gIHJpZ2h0OiAxMHB4O1xuICAvLyAgdG9wOiAxMHB4O1xuICAvLyAgd2lkdGg6IDQwcHg7XG4gIC8vICBoZWlnaHQ6IDQwcHg7XG4gIC8vICBsaW5lLWhlaWdodDogNDBweDtcbiAgLy8gIGZvbnQtc2l6ZTogMjBweDtcbiAgLy8gIGNvbG9yOiAjZmZmO1xuICAvLyAgYm9yZGVyLXJhZGl1czogNDBweDtcbiAgLy8gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAvLyAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG4gIC8vICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC8vICBjdXJzb3I6IHBvaW50ZXI7XG4gIC8vICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIC8vfVxuXG4gIC53ZWJmLWxpZ2h0Ym94LXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgLndlYmYtbGlnaHRib3gtY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiBjYWxjKHZhcigtLW4pICogMTAwJSk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZShjYWxjKHZhcigtLWksIDApIC8gdmFyKC0tbiwgMCkgKiAtMTAwJSArIHZhcigtLXR4LCAwcHgpKSk7XG5cbiAgICAgICYuc21vb3RoIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIGNhbGModmFyKC0tZiwgMSkgKiB2YXIoLS1kdCwgNTAwbXMpKSBlYXNlLW91dDtcbiAgICAgIH1cblxuICAgICAgLml0ZW0tY29udGFpbmVyIHtcbiAgICAgICAgaGVpZ2h0OiA5NSU7XG4gICAgICAgIG1hcmdpbjogMCBjYWxjKDIuNSUgLyB2YXIoLS1uKSk7XG4gICAgICAgIHdpZHRoOiBjYWxjKDk1JSAvIHZhcigtLW4pKTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmcmFtZSB7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoOTAlIC8gdmFyKC0tbikpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLndlYmYtbGlnaHRib3gtY2FwdGlvbiB7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kOiBibGFjaztcbiAgICAgIGZvbnQtZmFtaWx5OiBoZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG5cbiAgICAgICYgPiAudGV4dCB7XG4gICAgICAgIHBhZGRpbmc6IDAuOHJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAud2ViZi1saWdodGJveC1sb2FkaW5nIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2xpZ2h0Ym94L2xvYWRpbmcuZ2lmKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcbiAgICB3aWR0aDogMzJweDtcbiAgICBoZWlnaHQ6IDMycHg7XG4gICAgbWFyZ2luOiAtMTZweCAwIDAgLTE2cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgfVxuXG4gIGlmcmFtZSB7XG4gICAgd2lkdGg6IDUzMHB4O1xuICAgIGhlaWdodDogOTUlO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICY6bm90KC5vcGVuKSB7XG4gICAgaWZyYW1lIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi53ZWJmLWxpZ2h0Ym94LWltZy1wcmVsb2FkZWQsXG4ud2ViZi1saWdodGJveC1pZnJhbWUtcHJlbG9hZGVkIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHRvcDogLTk5OTk5cHggIWltcG9ydGFudDtcbiAgbGVmdDogLTk5OTk5cHggIWltcG9ydGFudDtcbn1cbiIsIkBpbXBvcnQgXCJjb21wYXNzXCI7XG5cbi53ZWJmLWxpc3QtZW50aXRpZXMge1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcblxuICAud2ViZi1oZWFkLWVudGl0aWVzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuXG4gICAgLndlYmYtaGVhZCB7XG4gICAgICBjb2xvcjogI2I1YjVjMztcbiAgICAgIHBhZGRpbmc6IDAuNHJlbSAwO1xuICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4xcmVtO1xuXG4gICAgICAmLi0tdG9nZ2xlLWRldGFpbHMge1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgd2lkdGg6IDIuNXJlbTtcbiAgICAgICAgcGFkZGluZzogMCAxcmVtO1xuXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgIHdpZHRoOiAxcmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLi0taDUge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgICAgIH1cblxuICAgICAgJi4tLWRhdGUtZW50cmVlIHtcbiAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIH1cblxuICAgICAgJi4tLWJ1dHRvbnMge1xuICAgICAgICB3aWR0aDogMTI1cHg7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmID4gLndlYmYtaGVhZC1lbnRpdGllcyB+IC53ZWJmLWVudGl0eSwgLy8gdHJpY2sgcG91ciDDqW11bGVyIDpmaXJzdC1vZi1jbGFzc1xuICAmID4gLndlYmYtZW50aXR5OmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yLWJvcmRlci1lbnRpdHk7XG4gIH1cblxuICAmID4gLndlYmYtaGVhZC1lbnRpdGllcyB+IC53ZWJmLWVudGl0eSB+IC53ZWJmLWVudGl0eSB7IC8vIHRyaWNrIHBvdXIgw6ltdWxlciA6Zmlyc3Qtb2YtY2xhc3NcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG5cbiAgJiA+IC53ZWJmLWVudGl0eSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICBjb2xvcjogIzU1NTtcbiAgICBmb250LWZhbWlseTogQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvci1ib3JkZXItZW50aXR5O1xuXG4gICAgJiA+IC53ZWJmLWhlYWRlciB7XG4gICAgICBvdmVyZmxvdzogaW5pdGlhbDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWluLWhlaWdodDogNDBweDtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgMjUwbXMsIGJhY2tncm91bmQtY29sb3IgMzAwbXM7XG5cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICAgICAgfVxuXG4gICAgICAmID4gLnRvZ2dsZS1kZXRhaWxzIHtcbiAgICAgICAgd2lkdGg6IDIuNXJlbTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB0cmFuc2l0aW9uOiAzMDBtcyB0cmFuc2Zvcm07XG5cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi51bmZvbGRpbmcge1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5mb2xkaW5nIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYgPiBoNSwgJiA+IGEge1xuICAgICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICAgICAgY29sb3I6ICM1NTU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICAgICAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgfVxuXG4gICAgICAmID4gaDUgPiBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBjb2xvcjogIzU1NTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOWZhZmM7XG4gICAgICB9XG5cbiAgICAgICYgPiBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiBibGFjaztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmID4gLi0tZGF0ZS1lbnRyZWUge1xuICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgfVxuXG4gICAgICAmID4gLndlYmYtYnV0dG9ucy1ncm91cCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgd2lkdGg6IDEyNXB4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IDMwMG1zIG9wYWNpdHk7XG5cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAud2ViZi1idXR0b24ge1xuICAgICAgICAgIHBhZGRpbmc6IDAuM3JlbSAwLjZyZW07XG4gICAgICAgICAgbWluLXdpZHRoOiAzNXB4O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBmb250LXNpemU6IDAuOHJlbTtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgICAgICAmID4gLndlYmYtYnV0dG9uIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGRlZmF1bHQtYm9yZGVyLWNvbG9yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYgPiAud2ViZi1ib2R5IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3ItYm9yZGVyLWVudGl0eTtcblxuICAgICAgJiA+IC53ZWJmLWRldGFpbHMge1xuICAgICAgICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtMC41cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgICAgICAgcGFkZGluZzogMXJlbSAwIDFyZW0gMS41cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHRyYW5zcGFyZW50IDAlLCAjRUFFREYxIDhweCwgdHJhbnNwYXJlbnQgOHB4LCB0cmFuc3BhcmVudCAxMDAlKTtcbiAgICAgIH1cblxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbSAwO1xuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmID4gLndlYmYtZGV0YWlscyB7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5wYWRkaW5nLWJvZHkge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYgPiAud2ViZi1oZWFkZXIsXG4gICAgICAgICYgPiAud2ViZi1kZXRhaWxzID4gLndlYmYtaGVhZGVyIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi51bmZvbGRlZCB7XG4gICAgICAmID4gLndlYmYtaGVhZGVyID4gLnRvZ2dsZS1kZXRhaWxzIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgfVxuXG4gICAgICAmID4gLndlYmYtYm9keSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaGlkZGVuLWJ1dHRvbnMge1xuICAgICAgJiA+IC53ZWJmLWJ1dHRvbnMtZ3JvdXAge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAmID4gLndlYmYtaGVhZGVyID4gLndlYmYtYnV0dG9ucy1ncm91cCB7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgIG9wYWNpdHk6IDAuNzU7XG5cbiAgICAgICAgLndlYmYtYnV0dG9uIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvci1ib3JkZXItZW50aXR5O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuc3VjY2VzcyB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgZGFya2VuKCRiYWNrZ3JvdW5kLWNvbG9yLXN1Y2Nlc3MsIDI1JSk7XG5cbiAgICAgICYgPiAud2ViZi1oZWFkZXIge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQtY29sb3Itc3VjY2VzcywgNSUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJiA+IC50b2dnbGUtZGV0YWlscyB7XG4gICAgICAgICAgY29sb3I6ICRjb2xvci1zdWNjZXNzO1xuICAgICAgICB9XG5cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtY29sb3Itc3VjY2VzcztcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yLXN1Y2Nlc3M7XG4gICAgICAgIGNvbG9yOiAkY29sb3Itc3VjY2VzcztcblxuICAgICAgICAmID4gLndlYmYtYnV0dG9ucy1ncm91cCB7XG4gICAgICAgICAgLndlYmYtYnV0dG9uIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZC1jb2xvci1zdWNjZXNzLCA1JSk7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLWNvbG9yLXN1Y2Nlc3MsIDE1JSk7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXN1Y2Nlc3M7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQtY29sb3Itc3VjY2VzcywgMTUlKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjphY3RpdmUsICYud2ViZi1hY3RpdmUsICYud2ViZi1zdGF0ZS1hY3RpdmUge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBzaW5nbGUtYm94LXNoYWRvdygwcHgsIDBweCwgNXB4LCAycHgsIGRhcmtlbigkYmFja2dyb3VuZC1jb2xvci1zdWNjZXNzLCAzNSUpLCB0cnVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmRhbmdlciB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgZGFya2VuKCRiYWNrZ3JvdW5kLWNvbG9yLWRhbmdlciwgMjUlKTtcblxuICAgICAgJiA+IC53ZWJmLWhlYWRlciB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZC1jb2xvci1kYW5nZXIsIDUlKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYgPiAudG9nZ2xlLWRldGFpbHMge1xuICAgICAgICAgIGNvbG9yOiAkY29sb3ItZGFuZ2VyO1xuICAgICAgICB9XG5cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtY29sb3ItZGFuZ2VyO1xuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3ItZGFuZ2VyO1xuICAgICAgICBjb2xvcjogJGNvbG9yLWRhbmdlcjtcblxuICAgICAgICAmID4gLndlYmYtYnV0dG9ucy1ncm91cCB7XG4gICAgICAgICAgLndlYmYtYnV0dG9uIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZC1jb2xvci1kYW5nZXIsIDUlKTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXItY29sb3ItZGFuZ2VyLCAxNSUpO1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1kYW5nZXI7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQtY29sb3ItZGFuZ2VyLCAxNSUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmFjdGl2ZSwgJi53ZWJmLWFjdGl2ZSwgJi53ZWJmLXN0YXRlLWFjdGl2ZSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHNpbmdsZS1ib3gtc2hhZG93KDBweCwgMHB4LCA1cHgsIDJweCwgZGFya2VuKCRiYWNrZ3JvdW5kLWNvbG9yLWRhbmdlciwgMzUlKSwgdHJ1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi53YXJuaW5nIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBkYXJrZW4oJGJhY2tncm91bmQtY29sb3Itd2FybmluZywgMjUlKTtcblxuICAgICAgJiA+IC53ZWJmLWhlYWRlciB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZC1jb2xvci13YXJuaW5nLCA1JSk7XG4gICAgICAgIH1cblxuICAgICAgICAmID4gLnRvZ2dsZS1kZXRhaWxzIHtcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLXdhcm5pbmc7XG4gICAgICAgIH1cblxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1jb2xvci13YXJuaW5nO1xuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3Itd2FybmluZztcbiAgICAgICAgY29sb3I6ICRjb2xvci13YXJuaW5nO1xuXG4gICAgICAgICYgPiAud2ViZi1idXR0b25zLWdyb3VwIHtcbiAgICAgICAgICAud2ViZi1idXR0b24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLWNvbG9yLXdhcm5pbmcsIDUlKTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXItY29sb3Itd2FybmluZywgMTUlKTtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itd2FybmluZztcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZC1jb2xvci13YXJuaW5nLCAxNSUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmFjdGl2ZSwgJi53ZWJmLWFjdGl2ZSwgJi53ZWJmLXN0YXRlLWFjdGl2ZSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHNpbmdsZS1ib3gtc2hhZG93KDBweCwgMHB4LCA1cHgsIDJweCwgZGFya2VuKCRiYWNrZ3JvdW5kLWNvbG9yLXdhcm5pbmcsIDM1JSksIHRydWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYudW5mb2xkYWJsZSB7XG4gICAgICAmID4gLndlYmYtaGVhZGVyIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaW1wb3J0IFwiY29tcGFzc1wiO1xuQGltcG9ydCBcIi4uL21peGlucy9saXN0c1wiO1xuXG4ud2ViZi1saXN0IHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAxcHggc29saWQgJGRlZmF1bHQtYm9yZGVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBvdXRsaW5lOiBub25lO1xuXG4gIC53ZWJmLWxpc3QtaXRlbSB7XG4gICAgJiA+IGEsXG4gICAgJiA+IGxhYmVsIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgaGVpZ2h0OiAyN3B4O1xuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICAgIHBhZGRpbmc6IDNweCAxMHB4O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBjb2xvcjogJGRlZmF1bHQtdGV4dC1saXN0LWl0ZW0tY29sb3I7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6aG92ZXIsICYud2ViZi1mb2N1cywgJi53ZWJmLWFjdGl2ZSB7XG4gICAgICAmID4gYSB7XG4gICAgICAgIEBpbmNsdWRlIGxpc3QtaXRlbS1hY3RpdmUtdHlwZSgkcHJpbWFyeS1jb2xvciwgdHJhbnNwYXJlbnQsICRkZWZhdWx0LWNvbG9yLCB0cnVlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmRpc2FibGVkIHtcbiAgICAgICYgPiBhLFxuICAgICAgJiA+IGxhYmVsIHtcbiAgICAgICAgY29sb3I6IGxpZ2h0ZW4oJGRlZmF1bHQtdGV4dC1saXN0LWl0ZW0tY29sb3IsIDMwJSk7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLndlYmYtbGlzdC1pdGVtLW9wdGlvbiB7XG4gICAgICAmLmVuYWJsZWQge1xuICAgICAgICAmOmhvdmVyID4gYSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgY29sb3I6ICRkZWZhdWx0LXRleHQtbGlzdC1pdGVtLWNvbG9yO1xuICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmLndlYmYtZm9jdXMge1xuICAgICAgICAgICYgPiBhLFxuICAgICAgICAgICYgPiBsYWJlbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBsaXN0LWl0ZW0tYWN0aXZlLXR5cGUoZGFya2VuKCRkZWZhdWx0LWJnLWxpc3QtaXRlbS1jb2xvciwgNCUpLCB0cmFuc3BhcmVudCwgJGRlZmF1bHQtdGV4dC1saXN0LWl0ZW0tY29sb3IsIHRydWUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYud2ViZi1hY3RpdmUge1xuICAgICAgICAgICYgPiBhLFxuICAgICAgICAgICYgPiBsYWJlbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBsaXN0LWl0ZW0tYWN0aXZlLXR5cGUoJHByaW1hcnktY29sb3IsIHRyYW5zcGFyZW50LCAkZGVmYXVsdC1jb2xvciwgdHJ1ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuZ3JvdXAgPiBhIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xuICAgICAgfVxuXG4gICAgICBzdHJvbmcge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi53ZWJmLWxpc3QtaXRlbS1ncm91cCB7XG4gICAgICAmID4gbGFiZWwge1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBjb2xvcjogIzRhNTA1NjtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAwIDAuM3JlbTtcbiAgICAgICAgYmFja2dyb3VuZDogZGFya2VuKCRkZWZhdWx0LWJnLWxpc3QtaXRlbS1jb2xvciwgNyUpO1xuICAgICAgICBmb250LXNpemU6IDAuNjVyZW07XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmLndlYmYtZm9jdXMge1xuICAgICAgICA+IGxhYmVsIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oJGRlZmF1bHQtYmctbGlzdC1pdGVtLWNvbG9yLCA5JSkgIWltcG9ydGFudDtcbiAgICAgICAgICBjb2xvcjogZGFya2VuKCM0YTUwNTYsIDQlKSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi53ZWJmLWxpc3QtaXRlbS1zZXBhcmF0b3Ige1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDtcbiAgICAgIG1hcmdpbjogNHB4IDA7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICB9XG5cbiAgICAud2ViZi1saXN0LWl0ZW0taWNvbiB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgbWluLWhlaWdodDogMXB4O1xuICAgIH1cbiAgfVxufVxuXG4iLCJAaW1wb3J0IFwiY29tcGFzc1wiO1xuXG5AbWl4aW4gbGlzdC1pdGVtLWFjdGl2ZS10eXBlKCRiZ0NvbG9yLCAkYm9yZGVyQ29sb3IsICR0ZXh0Q29sb3IsICRmbGF0OmZhbHNlKSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyQ29sb3I7XG4gICAgY29sb3I6ICR0ZXh0Q29sb3I7XG5cbiAgICBAaWYgJGZsYXQgPT0gdHJ1ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJnQ29sb3I7XG4gICAgfSBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWltYWdlKGxpbmVhci1ncmFkaWVudChkYXJrZW4oJGJnQ29sb3IsIDQlKSAwJSwgZGFya2VuKCRiZ0NvbG9yLCA4JSkgNTAlLCBkYXJrZW4oJGJnQ29sb3IsIDQlKSAxMDAlKSk7XG4gICAgfVxufVxuIiwiQGltcG9ydCB1cmwoaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PVJvYm90bzo0MDAsMTAwLDEwMGl0YWxpYywzMDAsMzAwaXRhbGljLDQwMGl0YWxpYyw1MDAsNTAwaXRhbGljLDcwMCw3MDBpdGFsaWMsOTAwaXRhbGljLDkwMCk7XG5cbi53ZWJmLW1kLXRleHQge1xuICBsaW5lLWhlaWdodDogMjRweDtcblxuICAmLCAmLmZpbGxlZCB7XG4gICAgaGVpZ2h0OiA1MnB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xuXG4gICAgLndyYXBwZXIge1xuICAgICAgaGVpZ2h0OiAwO1xuICAgIH1cblxuICAgID4gbGFiZWwsXG4gICAgLndyYXBwZXIgPiBsYWJlbCB7XG4gICAgICBmb250LWZhbWlseTogUm9ib3RvLCBzYW5zLXNlcmlmO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGNvbG9yOiBsaWdodGVuKCMwMDAsIDYyJSk7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMCAwIDAgMTJweDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxOHB4KTtcbiAgICAgIGhlaWdodDogMjFweDtcbiAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uTURUZXh0VHJhbnNpdGlvbjtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgZm9udC1zaXplLCBzY2FsZSwgcGFkZGluZy10b3AsIHBhZGRpbmctbGVmdCwgcGFkZGluZy1ib3R0b20sIHBhZGRpbmctcmlnaHQsIGJvcmRlcjtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSwgaW5wdXRbdHlwZT1cImVtYWlsXCJdLCBpbnB1dFt0eXBlPVwiZGF0ZVwiXSwgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLCBpbnB1dFt0eXBlPVwibnVtYmVyXCJdIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICAgICAgcGFkZGluZzogOHB4IDAgOHB4IDlweDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBmb250LWZhbWlseTogUm9ib3RvLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgaGVpZ2h0OiA0M3B4O1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xOHB4KTtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAtbW96LWJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuXG4gICAgJi53aXRoLWljb25zLCAmLndpdGgtbGVmdC1pY29uLCAmLndpdGgtcmlnaHQtaWNvbiB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAud3JhcHBlciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICAuaWNvbiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDhweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgPiBzcGFuIHtcbiAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgIG1pbi13aWR0aDogMjBweDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICA+IGkge1xuICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi53aXRoLWljb25zLCAmLndpdGgtbGVmdC1pY29uIHtcbiAgICAgIC53cmFwcGVyIHtcbiAgICAgICAgPiBsYWJlbCB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgdGV4dGFyZWEsIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLCBpbnB1dFt0eXBlPVwiZW1haWxcIl0sIGlucHV0W3R5cGU9XCJkYXRlXCJdLCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sIGlucHV0W3R5cGU9XCJudW1iZXJcIl0ge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICY6OmFmdGVyLCAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBoZWlnaHQ6IDJweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oIzAwMCwgODUlKTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDApO1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uTURUZXh0VHJhbnNpdGlvbjtcbiAgICB9XG5cbiAgICAmLmlzLWZvY3VzZWQge1xuICAgICAgPiBsYWJlbCxcbiAgICAgIC53cmFwcGVyID4gbGFiZWwge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgc2NhbGUoODAlKTtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEwMCUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaGFzLWxhYmVsIHtcbiAgICAgID4gbGFiZWwsXG4gICAgICAud3JhcHBlciA+IGxhYmVsIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzcHgpIHNjYWxlKDgwJSk7XG4gICAgICB9XG5cbiAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLCBpbnB1dFt0eXBlPVwiZW1haWxcIl0sIGlucHV0W3R5cGU9XCJkYXRlXCJdLCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sIGlucHV0W3R5cGU9XCJudW1iZXJcIl0ge1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDAgMTdweCA5cHg7XG4gICAgICAgIHRvcDogLTRweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLm91dGxpbmVkIHtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgYm9yZGVyOiAycHggc29saWQgbGlnaHRlbigjMDAwLCA4NSUpO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246ICRkdXJhdGlvbk1EVGV4dFRyYW5zaXRpb247XG5cbiAgICAud3JhcHBlciB7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgfVxuXG4gICAgPiBsYWJlbCxcbiAgICA+IC53cmFwcGVyID4gbGFiZWwge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMTBweCk7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl0sIGlucHV0W3R5cGU9XCJlbWFpbFwiXSwgaW5wdXRbdHlwZT1cImRhdGVcIl0sIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSwgaW5wdXRbdHlwZT1cIm51bWJlclwiXSB7XG4gICAgICBoZWlnaHQ6IDM2cHg7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMjhweCk7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICAgIH1cblxuICAgICYud2l0aC1pY29ucywgJi53aXRoLWxlZnQtaWNvbiB7XG4gICAgICAud3JhcHBlciB7XG4gICAgICAgID4gbGFiZWwge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRleHRhcmVhLCBpbnB1dFt0eXBlPVwidGV4dFwiXSwgaW5wdXRbdHlwZT1cImVtYWlsXCJdLCBpbnB1dFt0eXBlPVwiZGF0ZVwiXSwgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLCBpbnB1dFt0eXBlPVwibnVtYmVyXCJdIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOjphZnRlciwgJjo6YmVmb3JlIHtcbiAgICAgIGhlaWdodDogMDtcbiAgICB9XG5cbiAgICAmLmlzLWZvY3VzZWQge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG5cbiAgICAmLmhhcy1sYWJlbCB7XG4gICAgICA+IGxhYmVsLFxuICAgICAgLndyYXBwZXIgPiBsYWJlbCB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTJweCkgc2NhbGUoODAlKTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgcGFkZGluZzogMCA0cHggMCA0cHg7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgNnB4O1xuICAgICAgICBoZWlnaHQ6IDE3cHg7XG4gICAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICAgICAgd29yZC1icmVhazogYnJlYWstYWxsO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB9XG5cbiAgICAgIC8vdGV4dGFyZWEsXG4gICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSwgaW5wdXRbdHlwZT1cImVtYWlsXCJdLCBpbnB1dFt0eXBlPVwiZGF0ZVwiXSwgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLCBpbnB1dFt0eXBlPVwibnVtYmVyXCJdIHtcbiAgICAgICAgaGVpZ2h0OiAyOXB4O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEzcHgpO1xuICAgICAgICBwYWRkaW5nOiAxcHggMCA3cHggOXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgICYud2l0aC1pY29ucywgJi53aXRoLWxlZnQtaWNvbiB7XG4gICAgICAmLmhhcy1sYWJlbCB7XG4gICAgICAgID4gbGFiZWwsXG4gICAgICAgIC53cmFwcGVyID4gbGFiZWwge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0zNnB4LCAtMTFweCkgc2NhbGUoODAlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuaGFzLWVycm9yIHtcbiAgICBib3JkZXItY29sb3I6ICRlcnJvci1jb2xvcjtcblxuICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcbiAgICAgIGNvbG9yOiAkZXJyb3ItY29sb3I7XG4gICAgICBib3JkZXItY29sb3I6ICRlcnJvci1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRlcnJvci1jb2xvcjtcbiAgICB9XG5cbiAgICA+IGxhYmVsLFxuICAgIC53cmFwcGVyID4gbGFiZWwge1xuICAgICAgY29sb3I6ICRlcnJvci1jb2xvcjtcbiAgICB9XG5cbiAgICAmLmlzLWZvY3VzZWQge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkZXJyb3ItY29sb3I7XG4gICAgfVxuXG4gICAgJi53aXRoLWljb25zLCAmLndpdGgtbGVmdC1pY29uLCAmLndpdGgtcmlnaHQtaWNvbiB7XG4gICAgICAuaWNvbiB7XG4gICAgICAgIGNvbG9yOiAkZXJyb3ItY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJiwgJi5maWxsZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkZXJyb3ItY29sb3IsIDQ3JSk7XG4gICAgfVxuXG4gICAgJi5vdXRsaW5lZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICB9XG4gIH1cbn1cblxuLndlYmYtbWQtdGV4dGFyZWEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogYXV0bztcbiAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgcGFkZGluZy1ib3R0b206IDIxLjVweDtcblxuICAmLCAmLmZpbGxlZCB7XG4gICAgPiBsYWJlbCxcbiAgICAud3JhcHBlciA+IGxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAxMnB4IDEycHg7XG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGNlbnRlcjtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246ICRkdXJhdGlvbk1EVGV4dFRyYW5zaXRpb247XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIGZvbnQtc2l6ZSwgc2NhbGUsIHBhZGRpbmctdG9wLCBwYWRkaW5nLWxlZnQsIHBhZGRpbmctYm90dG9tLCBwYWRkaW5nLXJpZ2h0LCBib3JkZXI7XG4gICAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGNvbG9yOiBsaWdodGVuKCMwMDAsIDYyJSk7XG4gICAgICBjdXJzb3I6IHRleHQ7XG4gICAgfVxuXG4gICAgdGV4dGFyZWEge1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIGZvbnQtZmFtaWx5OiBSb2JvdG8sIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDAgOHB4IDVweCA5cHg7XG4gICAgICB0b3A6IDIxLjVweDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAtbW96LWJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIsICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGhlaWdodDogMnB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigjMDAwLCA4NSUpO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cblxuICAgICYuaGFzLWxhYmVsIHtcbiAgICAgID4gbGFiZWwsXG4gICAgICAud3JhcHBlciA+IGxhYmVsIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDRweCAxMnB4O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKSBzY2FsZSg4MCUpO1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGNlbnRlcjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuXG4gICAgICB0ZXh0YXJlYSB7XG4gICAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMjVweCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1mb2N1c2VkIHtcbiAgICAgID4gbGFiZWwsXG4gICAgICAud3JhcHBlciA+IGxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEwMCUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYub3V0bGluZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIGxpZ2h0ZW4oIzAwMCwgODUlKTtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTJweDtcblxuICAgID4gbGFiZWwsXG4gICAgLndyYXBwZXIgPiBsYWJlbCB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgIHBhZGRpbmc6IDZweCAxMnB4IDEycHg7XG4gICAgfVxuXG4gICAgdGV4dGFyZWEge1xuICAgICAgdG9wOiAxMnB4O1xuICAgIH1cblxuICAgICY6OmFmdGVyLCAmOjpiZWZvcmUge1xuICAgICAgaGVpZ2h0OiAwO1xuICAgIH1cblxuICAgICYuaGFzLWxhYmVsIHtcbiAgICAgID4gbGFiZWwsXG4gICAgICAud3JhcHBlciA+IGxhYmVsIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTEycHgpIHNjYWxlKDgwJSk7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgIHBhZGRpbmc6IDNweCA0cHggMCA0cHg7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgNnB4O1xuICAgICAgICBoZWlnaHQ6IDIxcHg7XG4gICAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICAgICAgd29yZC1icmVhazogYnJlYWstYWxsO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLndlYmYtbWQtdGV4dCwgLndlYmYtbWQtdGV4dGFyZWEge1xuICAmLmhhcy1lcnJvciB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZXJyb3ItY29sb3I7XG5cbiAgICAmOmJlZm9yZSwgJjphZnRlciB7XG4gICAgICBjb2xvcjogJGVycm9yLWNvbG9yO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkZXJyb3ItY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZXJyb3ItY29sb3I7XG4gICAgfVxuXG4gICAgPiBsYWJlbCxcbiAgICAud3JhcHBlciA+IGxhYmVsIHtcbiAgICAgIGNvbG9yOiAkZXJyb3ItY29sb3I7XG4gICAgfVxuXG4gICAgJi5pcy1mb2N1c2VkIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGVycm9yLWNvbG9yO1xuICAgIH1cblxuICAgICYud2l0aC1pY29ucywgJi53aXRoLWxlZnQtaWNvbiwgJi53aXRoLXJpZ2h0LWljb24ge1xuICAgICAgLmljb24ge1xuICAgICAgICBjb2xvcjogJGVycm9yLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgICYsICYuZmlsbGVkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGVycm9yLWNvbG9yLCA0NyUpO1xuICAgIH1cblxuICAgICYub3V0bGluZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgfVxuICB9XG5cbiAgJi5pcy12YWxpZCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkdmFsaWQtY29sb3I7XG5cbiAgICAmOmJlZm9yZSwgJjphZnRlciB7XG4gICAgICBjb2xvcjogJHZhbGlkLWNvbG9yO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdmFsaWQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdmFsaWQtY29sb3I7XG4gICAgfVxuXG4gICAgPiBsYWJlbCxcbiAgICAud3JhcHBlciA+IGxhYmVsIHtcbiAgICAgIGNvbG9yOiAkdmFsaWQtY29sb3I7XG4gICAgfVxuXG4gICAgJi5pcy1mb2N1c2VkIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJHZhbGlkLWNvbG9yO1xuICAgIH1cblxuICAgICYud2l0aC1pY29ucywgJi53aXRoLWxlZnQtaWNvbiwgJi53aXRoLXJpZ2h0LWljb24ge1xuICAgICAgLmljb24ge1xuICAgICAgICBjb2xvcjogJHZhbGlkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgICYsICYuZmlsbGVkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJHZhbGlkLWNvbG9yLCA3MCUpO1xuICAgIH1cblxuICAgICYub3V0bGluZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgfVxuICB9XG59XG5cbiIsIkBpbXBvcnQgdXJsKGh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1Sb2JvdG86NDAwLDEwMCwxMDBpdGFsaWMsMzAwLDMwMGl0YWxpYyw0MDBpdGFsaWMsNTAwLDUwMGl0YWxpYyw3MDAsNzAwaXRhbGljLDkwMGl0YWxpYyw5MDApO1xuQGltcG9ydCBcIi4uL21peGlucy9saXN0c1wiO1xuXG4ud2ViZi1tZC1saXN0IHtcbiAgZm9udC1mYW1pbHk6IFJvYm90bywgc2Fucy1zZXJpZjtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgLy9ib3JkZXI6IDFweCBzb2xpZCAkZGVmYXVsdC1ib3JkZXItY29sb3I7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogMCAxcHggM3B4IDAgcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDFweCAxcHggMCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwIDJweCAxcHggLTFweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBvdXRsaW5lOiBub25lO1xuXG4gIC53ZWJmLWxpc3QtaXRlbSB7XG4gICAgJiA+IGEsXG4gICAgJiA+IGxhYmVsIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgcGFkZGluZzogOHB4IDEwcHg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiBibGFjaztcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBoZWlnaHQ6IDM4cHg7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpob3ZlciwgJi53ZWJmLWZvY3VzIHtcbiAgICAgICYgPiBhIHtcbiAgICAgICAgQGluY2x1ZGUgbGlzdC1pdGVtLWFjdGl2ZS10eXBlKGRhcmtlbih3aGl0ZSwgMyUpLCB0cmFuc3BhcmVudCwgJHByaW1hcnktY29sb3IsIHRydWUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYud2ViZi1hY3RpdmUge1xuICAgICAgJiA+IGEge1xuICAgICAgICBAaW5jbHVkZSBsaXN0LWl0ZW0tYWN0aXZlLXR5cGUoZGFya2VuKHdoaXRlLCA1JSksIHRyYW5zcGFyZW50LCAkcHJpbWFyeS1jb2xvciwgdHJ1ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICAmID4gYSxcbiAgICAgICYgPiBsYWJlbCB7XG4gICAgICAgIGNvbG9yOiBsaWdodGVuKCRkZWZhdWx0LXRleHQtbGlzdC1pdGVtLWNvbG9yLCAzMCUpO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi53ZWJmLWxpc3QtaXRlbS1vcHRpb24ge1xuICAgICAgJi5lbmFibGVkIHtcbiAgICAgICAgJjpob3ZlciA+IGEge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgIGNvbG9yOiBibGFjaztcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJi53ZWJmLWZvY3VzIHtcbiAgICAgICAgICAmID4gYSxcbiAgICAgICAgICAmID4gbGFiZWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgbGlzdC1pdGVtLWFjdGl2ZS10eXBlKGRhcmtlbih3aGl0ZSwgMyUpLCB0cmFuc3BhcmVudCwgJHByaW1hcnktY29sb3IsIHRydWUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYud2ViZi1hY3RpdmUge1xuICAgICAgICAgICYgPiBhLFxuICAgICAgICAgICYgPiBsYWJlbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBsaXN0LWl0ZW0tYWN0aXZlLXR5cGUoZGFya2VuKHdoaXRlLCA1JSksIHRyYW5zcGFyZW50LCAkcHJpbWFyeS1jb2xvciwgdHJ1ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuZ3JvdXAgPiBhIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xuICAgICAgfVxuXG4gICAgICBzdHJvbmcge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi53ZWJmLWxpc3QtaXRlbS1ncm91cCB7XG4gICAgICAmID4gbGFiZWwge1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBjb2xvcjogIzRhNTA1NjtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAwIDAuM3JlbTtcbiAgICAgICAgYmFja2dyb3VuZDogZGFya2VuKCRkZWZhdWx0LWJnLWxpc3QtaXRlbS1jb2xvciwgNyUpO1xuICAgICAgICBmb250LXNpemU6IDAuNjVyZW07XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmLndlYmYtZm9jdXMge1xuICAgICAgICA+IGxhYmVsIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBkYXJrZW4od2hpdGUsIDMlKSAhaW1wb3J0YW50O1xuICAgICAgICAgIGNvbG9yOiBkYXJrZW4oIzRhNTA1NiwgNCUpICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLndlYmYtbGlzdC1pdGVtLXNlcGFyYXRvciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkO1xuICAgICAgbWFyZ2luOiA0cHggMDtcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgZm9udC1zaXplOiAwO1xuICAgIH1cblxuICAgIC53ZWJmLWxpc3QtaXRlbS1pY29uIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICBtaW4taGVpZ2h0OiAyMHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgfVxuICB9XG59XG5cbiIsIi53ZWJmLW5hdmlnYXRpb24tZnJhbWUtc2VsZWN0aW9uIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAyMDBweDtcbiAgbGVmdDogMjAwcHg7XG4gIHdpZHRoOiAzMDBweDtcbiAgaGVpZ2h0OiAxMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA4KTtcbiAgYm94LXNoYWRvdzogMCAwIDJweCAwIGdyYXk7XG59XG4iLCJAaW1wb3J0IFwiY29tcGFzc1wiO1xuXG4ud2ViZi1wcm9ncmVzc2JhciB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogMmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAkZGVmYXVsdC1ib3JkZXItY29sb3I7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAuaW5uZXItcHJvZ3Jlc3Mge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDBweDtcbiAgICBsZWZ0OiAwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGZvbnQtc2l6ZTogMHB4O1xuICAgIEBpbmNsdWRlIGJhY2tncm91bmQtaW1hZ2UobGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgbGlnaHRlbigkcHJpbWFyeS1jb2xvciw4JSkgMTAlLCBkYXJrZW4oJHByaW1hcnktY29sb3IsNiUpIDYwJSkpO1xuICB9XG59XG5cbiIsIkBpbXBvcnQgXCJjb21wYXNzXCI7XG5cbiRzaXplOiAxNnB4O1xuJGJvcmRlci1zaXplOiAxcHg7XG5cbi53ZWJmLXJhZGlvd3JhcHBlciB7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdGJvcmRlcjogJGJvcmRlci1zaXplIHNvbGlkICM5OTk7XG5cdGNvbG9yOiAjOTk5O1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTtcblx0d2lkdGg6ICRzaXplO1xuXHRoZWlnaHQ6ICRzaXplO1xuXHRsaW5lLWhlaWdodDogJHNpemU7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRmb250LXNpemU6IDA7XG5cdGJvcmRlci1yYWRpdXM6ICRzaXplLzI7XG5cblx0Ji5tb3VzZWRvd24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMWYxZjE7XG4gICAgQGluY2x1ZGUgc2luZ2xlLWJveC1zaGFkb3coMHB4LCAwcHgsIDNweCwgMCwgI2NjYywgdHJ1ZSk7XG5cdH1cblxuXHRhLnJhZGlvIHtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDFweDtcblx0fVxuXG5cdCYuY2hlY2tlZCB7XG5cdFx0YS5yYWRpbyB7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3JhZGlvL2NoZWNrZWQucG5nKTtcblx0XHR9XG5cdH1cblxuXHQmLmRpc2FibGVkIHtcblx0XHRib3JkZXItY29sb3I6ICNkZGQ7XG5cblx0XHQmLmNoZWNrZWQgYS5yYWRpbyB7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3JhZGlvL2NoZWNrZWQtZGlzYWJsZWQucG5nKTtcblx0XHR9XG5cdH1cbn1cblxuIiwiQGltcG9ydCBcImNvbXBhc3NcIjtcblxuJHdpZHRoLXJlc2l6ZS1oYW5kbGVyOiAxMnB4O1xuJGhlaWdodC1yZXNpemUtaGFuZGxlcjogMTJweDtcblxuLndlYmYtcmVzaXphYmxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5yZXNpemUtaGFuZGxlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvcmRlcjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtc2l6ZTogMDtcblxuICAgICYuY29ybmVyIHtcbiAgICAgIHdpZHRoOiAkd2lkdGgtcmVzaXplLWhhbmRsZXI7XG4gICAgICBoZWlnaHQ6ICRoZWlnaHQtcmVzaXplLWhhbmRsZXI7XG5cbiAgICAgICYubncgeyB0b3A6IC0oJGhlaWdodC1yZXNpemUtaGFuZGxlci8yKTsgbGVmdDogLSgkd2lkdGgtcmVzaXplLWhhbmRsZXIvMik7IGN1cnNvcjogbndzZS1yZXNpemU7IH1cbiAgICAgICYubmUgeyB0b3A6IC0oJGhlaWdodC1yZXNpemUtaGFuZGxlci8yKTsgcmlnaHQ6IC0oJHdpZHRoLXJlc2l6ZS1oYW5kbGVyLzIpOyBjdXJzb3I6IG5lc3ctcmVzaXplOyB9XG4gICAgICAmLnNlIHsgYm90dG9tOiAtKCRoZWlnaHQtcmVzaXplLWhhbmRsZXIvMik7IHJpZ2h0OiAtKCR3aWR0aC1yZXNpemUtaGFuZGxlci8yKTsgY3Vyc29yOiBud3NlLXJlc2l6ZTsgfVxuICAgICAgJi5zdyB7IGJvdHRvbTogLSgkaGVpZ2h0LXJlc2l6ZS1oYW5kbGVyLzIpOyBsZWZ0OiAtKCR3aWR0aC1yZXNpemUtaGFuZGxlci8yKTsgY3Vyc29yOiBuZXN3LXJlc2l6ZTsgfVxuICAgIH1cblxuICAgICYuYm9yZGVyIHtcbiAgICAgICYuaG9yaXpvbnRhbCB7XG4gICAgICAgIGhlaWdodDogJGhlaWdodC1yZXNpemUtaGFuZGxlcjtcbiAgICAgICAgY3Vyc29yOiByb3ctcmVzaXplO1xuXG4gICAgICAgICYubiwgJi5zIHtcbiAgICAgICAgICBsZWZ0OiAtKCR3aWR0aC1yZXNpemUtaGFuZGxlci8yKTsgcmlnaHQ6IC0oJHdpZHRoLXJlc2l6ZS1oYW5kbGVyLzIpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5uIHtcbiAgICAgICAgICB0b3A6IC0oJGhlaWdodC1yZXNpemUtaGFuZGxlci8yKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYucyB7XG4gICAgICAgICAgYm90dG9tOiAtKCRoZWlnaHQtcmVzaXplLWhhbmRsZXIvMik7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi52ZXJ0aWNhbCB7XG4gICAgICAgIHdpZHRoOiAkd2lkdGgtcmVzaXplLWhhbmRsZXI7XG4gICAgICAgIGN1cnNvcjogY29sLXJlc2l6ZTtcblxuICAgICAgICAmLncsICYuZSB7XG4gICAgICAgICAgdG9wOiAtKCRoZWlnaHQtcmVzaXplLWhhbmRsZXIvMik7IGJvdHRvbTogLSgkaGVpZ2h0LXJlc2l6ZS1oYW5kbGVyLzIpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi53IHtcbiAgICAgICAgICBsZWZ0OiAtKCR3aWR0aC1yZXNpemUtaGFuZGxlci8yKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuZSB7XG4gICAgICAgICAgcmlnaHQ6IC0oJHdpZHRoLXJlc2l6ZS1oYW5kbGVyLzIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiIsIi53ZWJmLXJpY2h0ZXh0ZWRpdG9yLWNvbG9yLXNlbGVjdG9yIHtcbiAgcGFkZGluZzogMTBweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcblxuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuXG4gIC5wYWxldHRlIHtcbiAgICBtYXJnaW46IDVweCAwO1xuXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RkZDtcbiAgICB9XG5cbiAgICB0YWJsZSB7XG4gICAgICB3aWR0aDogYXV0bztcblxuICAgICAgdGQge1xuICAgICAgICBhLmNlbGwge1xuICAgICAgICAgIG1hcmdpbjogMXB4O1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XG4gICAgICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICMwMDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiIsIi53ZWJmLXJpY2h0ZXh0ZWRpdG9yLWltYWdlIHtcbiAgI2J0bl91cGxvYWRfaW1hZ2Uge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuIiwiJHNpemVDZWxsOiAyNXB4O1xuXG4ud2ViZi1yaWNodGV4dGVkaXRvci10YWJsZS1zZWxlY3RvciB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHNpbHZlcjtcbiAgd2lkdGg6ICRzaXplQ2VsbCAqIDEwO1xuXG4gIHRhYmxlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuXG4gICAgdGQge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzk5OTtcbiAgICAgIHdpZHRoOiAkc2l6ZUNlbGw7XG4gICAgICBoZWlnaHQ6ICRzaXplQ2VsbDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICYuaG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFlYWVhO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZGlhbG9nLXRhYmxlLXByb3BlcnRpZXMge1xuICB3aWR0aDogODAwcHg7XG5cbiAgZm9ybSB7XG4gICAgbWF4LWhlaWdodDogMjgwcHg7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG5cbiAgICAuZm9ybS1ncm91cCB7XG4gICAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAycHg7XG5cbiAgICAgIGlucHV0IHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmFwZXJjdSB7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgbWF4LWhlaWdodDogMjUwcHg7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgdGFibGUge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzU1NTtcbiAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgICB3aWR0aDogMXB4O1xuICAgICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcblxuICAgICAgdGQge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjNTU1O1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaW1wb3J0IFwiY29tcGFzc1wiO1xuQGltcG9ydCBcIi4vcmljaHRleHRlZGl0b3IvY29sb3Itc2VsZWN0b3Iuc2Nzc1wiO1xuQGltcG9ydCBcIi4vcmljaHRleHRlZGl0b3IvaW1hZ2Uuc2Nzc1wiO1xuQGltcG9ydCBcIi4vcmljaHRleHRlZGl0b3IvdGFibGUtc2VsZWN0b3Iuc2Nzc1wiO1xuXG4kYmFja2dyb3VuZFRvb2xiYXJDb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcblxuLndlYmYtcmljaHRleHRlZGl0b3Ige1xuICBib3JkZXI6IDFweCBzb2xpZCAkZGVmYXVsdC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6IFwiVHJlYnVjaGV0IE1TXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBUYWhvbWEsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTJwdDtcbiAgbGluZS1oZWlnaHQ6IDIycHg7XG4gIGNvbG9yOiAkZGVmYXVsdC10ZXh0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgbWluLWhlaWdodDogNDBweDtcblxuICAud2ViZi1yaWNodGV4dGVkaXRvci10b29sYmFyIHtcbiAgICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kVG9vbGJhckNvbG9yO1xuXG4gICAgLndyYXAtY29udHJvbHMge1xuICAgICAgcGFkZGluZzogNXB4O1xuXG4gICAgICAuY29udHJvbHMge1xuICAgICAgICBsaW5lLWhlaWdodDogMTFweDtcblxuICAgICAgICAucGlwZSB7XG4gICAgICAgICAgbWFyZ2luOiBhdXRvIDNweDtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICAmID4gKiB7XG4gICAgICAgICAgLy9tYXJnaW4tYm90dG9tOiAzcHg7XG4gICAgICAgIH1cblxuICAgICAgICAud2ViZi1kcm9wZG93biB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgLndlYmYtYnV0dG9uIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogM3B4O1xuXG4gICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDhweCAwIDA7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuaGVhZGluZyBsYWJlbCB7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDEwMHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuZm9udG5hbWUgbGFiZWwge1xuICAgICAgICAgICAgbWluLXdpZHRoOiAxNTBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmZvbnRzaXplIGxhYmVsIHtcbiAgICAgICAgICAgIG1pbi13aWR0aDogNTBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuYnRuLXRvb2x0aXAge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwcHg7XG4gICAgICAgICAgICBsZWZ0OiAwcHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMCk7XG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC53ZWJmLXNlbGVjdC1idXR0b24ge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5mb250bmFtZSBsYWJlbCB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5mb3JlY29sb3Ige1xuICAgICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgdGV4dC1zaGFkb3c6IDFweCAxcHggMXB4ICNhYWE7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJiA+IGkud2ViZiB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgdG9wOiA2cHg7XG4gICAgICAgICAgICAgIHJpZ2h0OiA2cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLndlYmYtcmljaHRleHRlZGl0b3ItbGlzdCB7XG4gICAgICAgICAgbWF4LWhlaWdodDogMTkwcHg7XG4gICAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgICAgICAgICYud2ViZi1yaWNodGV4dGVkaXRvci1mb250c2l6ZXB4IHtcbiAgICAgICAgICAgIGxpID4gYSB7XG4gICAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC53ZWJmLWNvbnRlbnQge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgbWluLWhlaWdodDogNTVweDtcblxuICAgICYuZml4ZWQtaGVpZ2h0IHtcbiAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgfVxuXG4gICAgLndlYmYtdGFibGUge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcbiAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG5cbiAgICAgIHRkIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcbiAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgb2wsIHVsIHtcbiAgICAgIG1hcmdpbjogMCAwIDE2cHggMDtcbiAgICAgIHBhZGRpbmc6IDAgMCAwIDMwcHg7XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG59XG5cbi53ZWJmLXJpY2h0ZXh0ZWRpdG9yLXRvb2x0aXAge1xuICAudGV4dCB7XG4gICAgY29sb3I6ICNlZWU7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGZvbnQtZmFtaWx5OiBoZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGJhY2tncm91bmQ6ICMzMzM7XG4gICAgcGFkZGluZzogM3B4IDEwcHg7XG4gIH1cblxuICAudHJpYW5nbGUge1xuICAgIHdpZHRoOiA3cHg7XG4gICAgaGVpZ2h0OiA1cHg7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCguLi9pbWFnZXMvcmljaHRleHRlZGl0b3IvdHJpYW5nbGUtaW52ZXJzZS5wbmcpO1xuICB9XG59XG5cbi53ZWJmLXJpY2h0ZXh0ZWRpdG9yLWRpYWxvZyAud2ViZi1jaGVja2JveHdyYXBwZXIge1xuICBtYXJnaW4tdG9wOiA4cHg7XG59XG5cblxuIiwiQGltcG9ydCBcImNvbXBhc3NcIjtcblxuJGJnQ29sb3I6ICNlZWU7XG4kc2l6ZVNjcm9sbGJhcjogMTRweDtcbiRib3JkZXJSYWRpdXM6ICRzaXplU2Nyb2xsYmFyIC8gMjtcblxuLndlYmYtc2Nyb2xsYm94LXdyYXBwZXIge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgPiAud2ViZi1zY3JvbGxib3gtY29udGFpbmVyIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuXG4gID4gLndlYmYtc2Nyb2xsYmFyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyUmFkaXVzKTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLXByb3BlcnR5KG9wYWNpdHkpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tZHVyYXRpb24oMC4ycyk7XG4gICAgQGluY2x1ZGUgb3BhY2l0eSgwKTtcblxuICAgICYueCwgJi55IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiZ0NvbG9yO1xuXG4gICAgICAuaGFuZGxlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJnQ29sb3IsIDIwJSk7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlclJhZGl1cyk7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiZ0NvbG9yLCAzNSUpOztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgwLjcpO1xuICAgICAgfVxuXG4gICAgICAmLndlYmYtaW52aXNpYmxlIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgfVxuICAgIH1cblxuICAgICYueCB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgaGVpZ2h0OiAkc2l6ZVNjcm9sbGJhcjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAuaGFuZGxlciB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnkge1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB3aWR0aDogJHNpemVTY3JvbGxiYXI7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgIC5oYW5kbGVyIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJjpob3ZlciwgJi5kcmFnZ2luZyB7XG4gICAgLndlYmYtc2Nyb2xsYmFyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgQGluY2x1ZGUgb3BhY2l0eSgwLjQpO1xuICAgIH1cbiAgfVxuXG4gICYuZHJhZ2dpbmcteCB7XG4gICAgLndlYmYtc2Nyb2xsYmFyIHtcbiAgICAgICYueCB7XG4gICAgICAgIC5oYW5kbGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJnQ29sb3IsIDM1JSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmRyYWdnaW5nLXkge1xuICAgIC53ZWJmLXNjcm9sbGJhciB7XG4gICAgICAmLnkge1xuICAgICAgICAuaGFuZGxlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiZ0NvbG9yLCAzNSUpOztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4iLCJAaW1wb3J0IFwic2hhcmVkXCI7XG5AaW1wb3J0IFwiLi4vZnVuY3Rpb25zXCI7XG5cbi8vIENTUyBUcmFuc2l0aW9uc1xuLy8gQ3VycmVudGx5IG9ubHkgd29ya3MgaW4gV2Via2l0LlxuLy9cbi8vICogZXhwZWN0ZWQgaW4gQ1NTMywgRmlyZUZveCAzLjYvNyBhbmQgT3BlcmEgUHJlc3RvIDIuM1xuLy8gKiBXZSdsbCBiZSBwcmVwYXJlZC5cbi8vXG4vLyBJbmNsdWRpbmcgdGhpcyBzdWJtb2R1bGUgc2V0cyBmb2xsb3dpbmcgZGVmYXVsdHMgZm9yIHRoZSBtaXhpbnM6XG4vL1xuLy8gICAgICRkZWZhdWx0LXRyYW5zaXRpb24tcHJvcGVydHkgOiBhbGxcbi8vICAgICAkZGVmYXVsdC10cmFuc2l0aW9uLWR1cmF0aW9uIDogMXNcbi8vICAgICAkZGVmYXVsdC10cmFuc2l0aW9uLWZ1bmN0aW9uIDogZmFsc2Vcbi8vICAgICAkZGVmYXVsdC10cmFuc2l0aW9uLWRlbGF5ICAgIDogZmFsc2Vcbi8vXG4vLyBPdmVycmlkZSB0aGVtIGlmIHlvdSBsaWtlLiBUaW1pbmctZnVuY3Rpb24gYW5kIGRlbGF5IGFyZSBzZXQgdG8gZmFsc2UgZm9yIGJyb3dzZXIgZGVmYXVsdHMgKGVhc2UsIDBzKS5cblxuJGRlZmF1bHQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogYWxsICFkZWZhdWx0O1xuXG4kZGVmYXVsdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAxcyAhZGVmYXVsdDtcblxuJGRlZmF1bHQtdHJhbnNpdGlvbi1mdW5jdGlvbjogZmFsc2UgIWRlZmF1bHQ7XG5cbiRkZWZhdWx0LXRyYW5zaXRpb24tZGVsYXk6IGZhbHNlICFkZWZhdWx0O1xuXG4kdHJhbnNpdGlvbmFibGUtcHJlZml4ZWQtdmFsdWVzOiB0cmFuc2Zvcm0sIHRyYW5zZm9ybS1vcmlnaW4gIWRlZmF1bHQ7XG5cbi8vIE9uZSBvciBtb3JlIHByb3BlcnRpZXMgdG8gdHJhbnNpdGlvblxuLy9cbi8vICogZm9yIG11bHRpcGxlLCB1c2UgYSBjb21tYS1kZWxpbWl0ZWQgbGlzdFxuLy8gKiBhbHNvIGFjY2VwdHMgXCJhbGxcIiBvciBcIm5vbmVcIlxuXG5AbWl4aW4gdHJhbnNpdGlvbi1wcm9wZXJ0eSgkcHJvcGVydHktMTogJGRlZmF1bHQtdHJhbnNpdGlvbi1wcm9wZXJ0eSxcbiAgJHByb3BlcnR5LTIgOiBmYWxzZSxcbiAgJHByb3BlcnR5LTMgOiBmYWxzZSxcbiAgJHByb3BlcnR5LTQgOiBmYWxzZSxcbiAgJHByb3BlcnR5LTUgOiBmYWxzZSxcbiAgJHByb3BlcnR5LTYgOiBmYWxzZSxcbiAgJHByb3BlcnR5LTcgOiBmYWxzZSxcbiAgJHByb3BlcnR5LTggOiBmYWxzZSxcbiAgJHByb3BlcnR5LTkgOiBmYWxzZSxcbiAgJHByb3BlcnR5LTEwOiBmYWxzZVxuKSB7XG4gIEBpZiB0eXBlLW9mKCRwcm9wZXJ0eS0xKSA9PSBzdHJpbmcgeyAkcHJvcGVydHktMTogdW5xdW90ZSgkcHJvcGVydHktMSk7IH1cbiAgJHByb3BlcnRpZXM6IGNvbXBhY3QoJHByb3BlcnR5LTEsICRwcm9wZXJ0eS0yLCAkcHJvcGVydHktMywgJHByb3BlcnR5LTQsICRwcm9wZXJ0eS01LCAkcHJvcGVydHktNiwgJHByb3BlcnR5LTcsICRwcm9wZXJ0eS04LCAkcHJvcGVydHktOSwgJHByb3BlcnR5LTEwKTtcbiAgQGlmICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3Itd2Via2l0ICAgIHsgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5IDogcHJlZml4ZWQtZm9yLXRyYW5zaXRpb24oLXdlYmtpdCwgJHByb3BlcnRpZXMpOyB9XG4gIEBpZiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLW1vemlsbGEgICB7ICAgICAgICAgIC1tb3otdHJhbnNpdGlvbi1wcm9wZXJ0eSA6IHByZWZpeGVkLWZvci10cmFuc2l0aW9uKC1tb3osICAgICRwcm9wZXJ0aWVzKTsgfVxuICBAaWYgJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci1vcGVyYSAgICAgeyAgICAgICAgICAgIC1vLXRyYW5zaXRpb24tcHJvcGVydHkgOiBwcmVmaXhlZC1mb3ItdHJhbnNpdGlvbigtbywgICAgICAkcHJvcGVydGllcyk7IH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5IDogJHByb3BlcnRpZXM7XG59XG5cbi8vIE9uZSBvciBtb3JlIGR1cmF0aW9ucyBpbiBzZWNvbmRzXG4vL1xuLy8gKiBmb3IgbXVsdGlwbGUsIHVzZSBhIGNvbW1hLWRlbGltaXRlZCBsaXN0XG4vLyAqIHRoZXNlIGR1cmF0aW9ucyB3aWxsIGFmZmVjdCB0aGUgcHJvcGVydGllcyBpbiB0aGUgc2FtZSBsaXN0IHBvc2l0aW9uXG5cbkBtaXhpbiB0cmFuc2l0aW9uLWR1cmF0aW9uKCRkdXJhdGlvbi0xOiAkZGVmYXVsdC10cmFuc2l0aW9uLWR1cmF0aW9uLFxuICAkZHVyYXRpb24tMiA6IGZhbHNlLFxuICAkZHVyYXRpb24tMyA6IGZhbHNlLFxuICAkZHVyYXRpb24tNCA6IGZhbHNlLFxuICAkZHVyYXRpb24tNSA6IGZhbHNlLFxuICAkZHVyYXRpb24tNiA6IGZhbHNlLFxuICAkZHVyYXRpb24tNyA6IGZhbHNlLFxuICAkZHVyYXRpb24tOCA6IGZhbHNlLFxuICAkZHVyYXRpb24tOSA6IGZhbHNlLFxuICAkZHVyYXRpb24tMTA6IGZhbHNlXG4pIHtcbiAgQGlmIHR5cGUtb2YoJGR1cmF0aW9uLTEpID09IHN0cmluZyB7ICRkdXJhdGlvbi0xOiB1bnF1b3RlKCRkdXJhdGlvbi0xKTsgfVxuICAkZHVyYXRpb25zOiBjb21wYWN0KCRkdXJhdGlvbi0xLCAkZHVyYXRpb24tMiwgJGR1cmF0aW9uLTMsICRkdXJhdGlvbi00LCAkZHVyYXRpb24tNSwgJGR1cmF0aW9uLTYsICRkdXJhdGlvbi03LCAkZHVyYXRpb24tOCwgJGR1cmF0aW9uLTksICRkdXJhdGlvbi0xMCk7XG4gIEBpbmNsdWRlIGV4cGVyaW1lbnRhbCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkZHVyYXRpb25zLFxuICAgIC1tb3osIC13ZWJraXQsIC1vLCBub3QoLW1zKSwgbm90KC1raHRtbCksIG9mZmljaWFsXG4gICk7XG59XG5cbi8vIE9uZSBvciBtb3JlIHRpbWluZyBmdW5jdGlvbnNcbi8vXG4vLyAqIFsgZWFzZSB8IGxpbmVhciB8IGVhc2UtaW4gfCBlYXNlLW91dCB8IGVhc2UtaW4tb3V0IHwgY3ViaWMtYmV6aWVyKHgxLCB5MSwgeDIsIHkyKV1cbi8vICogRm9yIG11bHRpcGxlLCB1c2UgYSBjb21tYS1kZWxpbWl0ZWQgbGlzdFxuLy8gKiBUaGVzZSBmdW5jdGlvbnMgd2lsbCBlZmZlY3QgdGhlIHByb3BlcnRpZXMgaW4gdGhlIHNhbWUgbGlzdCBwb3NpdGlvblxuXG5AbWl4aW4gdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24oJGZ1bmN0aW9uLTE6ICRkZWZhdWx0LXRyYW5zaXRpb24tZnVuY3Rpb24sXG4gICRmdW5jdGlvbi0yIDogZmFsc2UsXG4gICRmdW5jdGlvbi0zIDogZmFsc2UsXG4gICRmdW5jdGlvbi00IDogZmFsc2UsXG4gICRmdW5jdGlvbi01IDogZmFsc2UsXG4gICRmdW5jdGlvbi02IDogZmFsc2UsXG4gICRmdW5jdGlvbi03IDogZmFsc2UsXG4gICRmdW5jdGlvbi04IDogZmFsc2UsXG4gICRmdW5jdGlvbi05IDogZmFsc2UsXG4gICRmdW5jdGlvbi0xMDogZmFsc2Vcbikge1xuICAkZnVuY3Rpb24tMTogdW5xdW90ZSgkZnVuY3Rpb24tMSk7XG4gICRmdW5jdGlvbnM6IGNvbXBhY3QoJGZ1bmN0aW9uLTEsICRmdW5jdGlvbi0yLCAkZnVuY3Rpb24tMywgJGZ1bmN0aW9uLTQsICRmdW5jdGlvbi01LCAkZnVuY3Rpb24tNiwgJGZ1bmN0aW9uLTcsICRmdW5jdGlvbi04LCAkZnVuY3Rpb24tOSwgJGZ1bmN0aW9uLTEwKTtcbiAgQGluY2x1ZGUgZXhwZXJpbWVudGFsKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCAkZnVuY3Rpb25zLFxuICAgIC1tb3osIC13ZWJraXQsIC1vLCBub3QoLW1zKSwgbm90KC1raHRtbCksIG9mZmljaWFsXG4gICk7XG59XG5cbi8vIE9uZSBvciBtb3JlIHRyYW5zaXRpb24tZGVsYXlzIGluIHNlY29uZHNcbi8vXG4vLyAqIGZvciBtdWx0aXBsZSwgdXNlIGEgY29tbWEtZGVsaW1pdGVkIGxpc3Rcbi8vICogdGhlc2UgZGVsYXlzIHdpbGwgZWZmZWN0IHRoZSBwcm9wZXJ0aWVzIGluIHRoZSBzYW1lIGxpc3QgcG9zaXRpb25cblxuQG1peGluIHRyYW5zaXRpb24tZGVsYXkoJGRlbGF5LTE6ICRkZWZhdWx0LXRyYW5zaXRpb24tZGVsYXksXG4gICRkZWxheS0yIDogZmFsc2UsXG4gICRkZWxheS0zIDogZmFsc2UsXG4gICRkZWxheS00IDogZmFsc2UsXG4gICRkZWxheS01IDogZmFsc2UsXG4gICRkZWxheS02IDogZmFsc2UsXG4gICRkZWxheS03IDogZmFsc2UsXG4gICRkZWxheS04IDogZmFsc2UsXG4gICRkZWxheS05IDogZmFsc2UsXG4gICRkZWxheS0xMDogZmFsc2Vcbikge1xuICBAaWYgdHlwZS1vZigkZGVsYXktMSkgPT0gc3RyaW5nIHsgJGRlbGF5LTE6IHVucXVvdGUoJGRlbGF5LTEpOyB9XG4gICRkZWxheXM6IGNvbXBhY3QoJGRlbGF5LTEsICRkZWxheS0yLCAkZGVsYXktMywgJGRlbGF5LTQsICRkZWxheS01LCAkZGVsYXktNiwgJGRlbGF5LTcsICRkZWxheS04LCAkZGVsYXktOSwgJGRlbGF5LTEwKTtcbiAgQGluY2x1ZGUgZXhwZXJpbWVudGFsKHRyYW5zaXRpb24tZGVsYXksICRkZWxheXMsXG4gICAgLW1veiwgLXdlYmtpdCwgLW8sIG5vdCgtbXMpLCBub3QoLWtodG1sKSwgb2ZmaWNpYWxcbiAgKTtcbn1cblxuLy8gVHJhbnNpdGlvbiBhbGwtaW4tb25lIHNob3J0aGFuZFxuXG5AbWl4aW4gc2luZ2xlLXRyYW5zaXRpb24oXG4gICRwcm9wZXJ0eTogJGRlZmF1bHQtdHJhbnNpdGlvbi1wcm9wZXJ0eSxcbiAgJGR1cmF0aW9uOiAkZGVmYXVsdC10cmFuc2l0aW9uLWR1cmF0aW9uLFxuICAkZnVuY3Rpb246ICRkZWZhdWx0LXRyYW5zaXRpb24tZnVuY3Rpb24sXG4gICRkZWxheTogJGRlZmF1bHQtdHJhbnNpdGlvbi1kZWxheVxuKSB7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oY29tcGFjdCgkcHJvcGVydHkgJGR1cmF0aW9uICRmdW5jdGlvbiAkZGVsYXkpKTtcbn1cblxuQG1peGluIHRyYW5zaXRpb24oXG4gICR0cmFuc2l0aW9uLTEgOiBkZWZhdWx0LFxuICAkdHJhbnNpdGlvbi0yIDogZmFsc2UsXG4gICR0cmFuc2l0aW9uLTMgOiBmYWxzZSxcbiAgJHRyYW5zaXRpb24tNCA6IGZhbHNlLFxuICAkdHJhbnNpdGlvbi01IDogZmFsc2UsXG4gICR0cmFuc2l0aW9uLTYgOiBmYWxzZSxcbiAgJHRyYW5zaXRpb24tNyA6IGZhbHNlLFxuICAkdHJhbnNpdGlvbi04IDogZmFsc2UsXG4gICR0cmFuc2l0aW9uLTkgOiBmYWxzZSxcbiAgJHRyYW5zaXRpb24tMTA6IGZhbHNlXG4pIHtcbiAgQGlmICR0cmFuc2l0aW9uLTEgPT0gZGVmYXVsdCB7XG4gICAgJHRyYW5zaXRpb24tMSA6IGNvbXBhY3QoJGRlZmF1bHQtdHJhbnNpdGlvbi1wcm9wZXJ0eSAkZGVmYXVsdC10cmFuc2l0aW9uLWR1cmF0aW9uICRkZWZhdWx0LXRyYW5zaXRpb24tZnVuY3Rpb24gJGRlZmF1bHQtdHJhbnNpdGlvbi1kZWxheSk7XG4gIH1cbiAgJHRyYW5zaXRpb25zOiBmYWxzZTtcbiAgQGlmIHR5cGUtb2YoJHRyYW5zaXRpb24tMSkgPT0gbGlzdCBhbmQgdHlwZS1vZihudGgoJHRyYW5zaXRpb24tMSwxKSkgPT0gbGlzdCB7XG4gICAgJHRyYW5zaXRpb25zOiBqb2luKCR0cmFuc2l0aW9uLTEsIGNvbXBhY3QoJHRyYW5zaXRpb24tMiwgJHRyYW5zaXRpb24tMywgJHRyYW5zaXRpb24tNCwgJHRyYW5zaXRpb24tNSwgJHRyYW5zaXRpb24tNiwgJHRyYW5zaXRpb24tNywgJHRyYW5zaXRpb24tOCwgJHRyYW5zaXRpb24tOSwgJHRyYW5zaXRpb24tMTApLCBjb21tYSk7XG4gIH0gQGVsc2Uge1xuICAgICR0cmFuc2l0aW9ucyA6IGNvbXBhY3QoJHRyYW5zaXRpb24tMSwgJHRyYW5zaXRpb24tMiwgJHRyYW5zaXRpb24tMywgJHRyYW5zaXRpb24tNCwgJHRyYW5zaXRpb24tNSwgJHRyYW5zaXRpb24tNiwgJHRyYW5zaXRpb24tNywgJHRyYW5zaXRpb24tOCwgJHRyYW5zaXRpb24tOSwgJHRyYW5zaXRpb24tMTApO1xuICB9XG4gICRkZWxheXM6IGNvbW1hLWxpc3QoKTtcbiAgJGhhcy1kZWxheXM6IGZhbHNlO1xuICAkd2Via2l0LXZhbHVlOiBjb21tYS1saXN0KCk7XG4gICRtb3otdmFsdWU6IGNvbW1hLWxpc3QoKTtcbiAgJG8tdmFsdWU6IGNvbW1hLWxpc3QoKTtcblxuICAvLyBUaGlzIGJsb2NrIGNhbiBiZSBtYWRlIGNvbnNpZGVyYWJseSBzaW1wbGVyIGF0IHRoZSBwb2ludCBpbiB0aW1lIHRoYXRcbiAgLy8gd2Ugbm8gbG9uZ2VyIG5lZWQgdG8gZGVhbCB3aXRoIHRoZSBkaWZmZXJlbmNlcyBpbiBob3cgZGVsYXlzIGFyZSB0cmVhdGVkLlxuICBAZWFjaCAkdHJhbnNpdGlvbiBpbiAkdHJhbnNpdGlvbnMge1xuICAgIC8vIEV4dHJhY3QgdGhlIHZhbHVlcyBmcm9tIHRoZSBsaXN0XG4gICAgLy8gKHRoaXMgd291bGQgYmUgY2xlYW5lciBpZiBudGggdG9vayBhIDNyZCBhcmd1bWVudCB0byBwcm92aWRlIGEgZGVmYXVsdCB2YWx1ZSkuXG4gICAgJHByb3BlcnR5OiBudGgoJHRyYW5zaXRpb24sIDEpO1xuICAgICRkdXJhdGlvbjogZmFsc2U7XG4gICAgJHRpbWluZy1mdW5jdGlvbjogZmFsc2U7XG4gICAgJGRlbGF5OiBmYWxzZTtcbiAgICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA+IDEgeyAkZHVyYXRpb246ICAgICAgICBudGgoJHRyYW5zaXRpb24sIDIpOyB9XG4gICAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbikgPiAyIHsgJHRpbWluZy1mdW5jdGlvbjogbnRoKCR0cmFuc2l0aW9uLCAzKTsgfVxuICAgIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID4gMyB7ICRkZWxheTogICAgICAgICAgIG50aCgkdHJhbnNpdGlvbiwgNCk7ICRoYXMtZGVsYXlzOiB0cnVlOyB9XG5cbiAgICAvLyBJZiBhIGRlbGF5IGlzIHByb3ZpZGVkIHdpdGhvdXQgYSB0aW1pbmcgZnVuY3Rpb25cbiAgICBAaWYgaXMtdGltZSgkdGltaW5nLWZ1bmN0aW9uKSBhbmQgbm90KCRkZWxheSkgeyAkZGVsYXk6ICR0aW1pbmctZnVuY3Rpb247ICR0aW1pbmctZnVuY3Rpb246IGZhbHNlOyAkaGFzLWRlbGF5czogdHJ1ZTsgfVxuXG4gICAgLy8gS2VlcCBhIGxpc3Qgb2YgZGVsYXlzIGluIGNhc2Ugb25lIGlzIHNwZWNpZmllZFxuICAgICRkZWxheXM6IGFwcGVuZCgkZGVsYXlzLCBpZigkZGVsYXksICRkZWxheSwgMHMpKTtcblxuICAgICR3ZWJraXQtdmFsdWU6IGFwcGVuZCgkd2Via2l0LXZhbHVlLCBjb21wYWN0KChwcmVmaXhlZC1mb3ItdHJhbnNpdGlvbigtd2Via2l0LCAkcHJvcGVydHkpICRkdXJhdGlvbiAkdGltaW5nLWZ1bmN0aW9uKS4uLikpO1xuICAgICAgICRtb3otdmFsdWU6IGFwcGVuZCggICAkbW96LXZhbHVlLCBjb21wYWN0KChwcmVmaXhlZC1mb3ItdHJhbnNpdGlvbiggICAtbW96LCAkcHJvcGVydHkpICRkdXJhdGlvbiAkdGltaW5nLWZ1bmN0aW9uICRkZWxheSkuLi4pKTtcbiAgICAgICAgICRvLXZhbHVlOiBhcHBlbmQoICAgICAkby12YWx1ZSwgY29tcGFjdCgocHJlZml4ZWQtZm9yLXRyYW5zaXRpb24oICAgICAtbywgJHByb3BlcnR5KSAkZHVyYXRpb24gJHRpbWluZy1mdW5jdGlvbiAkZGVsYXkpLi4uKSk7XG4gIH1cblxuICBAaWYgJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci13ZWJraXQgICAgeyAgICAgICAtd2Via2l0LXRyYW5zaXRpb24gOiAkd2Via2l0LXZhbHVlO1xuICAgIC8vIG9sZCB3ZWJraXQgZG9lc24ndCBzdXBwb3J0IHRoZSBkZWxheSBwYXJhbWV0ZXIgaW4gdGhlIHNob3J0aGFuZCBzbyB3ZSBwcm9ncmVzc2l2ZWx5IGVuaGFuY2UgaXQuXG4gICAgQGlmICRoYXMtZGVsYXlzICAgICAgICAgICAgICAgICAgICAgICB7IC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheSA6ICRkZWxheXM7ICAgICAgIH0gfVxuICBAaWYgJGV4cGVyaW1lbnRhbC1zdXBwb3J0LWZvci1tb3ppbGxhICAgeyAgICAgICAgICAtbW96LXRyYW5zaXRpb24gOiAkbW96LXZhbHVlOyAgICB9XG4gIEBpZiAkZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLW9wZXJhICAgICB7ICAgICAgICAgICAgLW8tdHJhbnNpdGlvbiA6ICRvLXZhbHVlOyAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uIDogJHRyYW5zaXRpb25zO1xufVxuXG4vLyBjb2VyY2UgYSBsaXN0IHRvIGJlIGNvbW1hIGRlbGltaXRlZCBvciBtYWtlIGEgbmV3LCBlbXB0eSBjb21tYSBkZWxpbWl0ZWQgbGlzdC5cbkBmdW5jdGlvbiBjb21tYS1saXN0KCRsaXN0OiAoKSkge1xuICBAcmV0dXJuIGpvaW4oKCksICRsaXN0LCBjb21tYSk7XG59XG5cbi8vIFJldHVybnMgYCRwcm9wZXJ0eWAgd2l0aCB0aGUgZ2l2ZW4gcHJlZml4IGlmIGl0IGlzIGZvdW5kIGluIGAkdHJhbnNpdGlvbmFibGUtcHJlZml4ZWQtdmFsdWVzYC5cbkBmdW5jdGlvbiBwcmVmaXhlZC1mb3ItdHJhbnNpdGlvbigkcHJlZml4LCAkcHJvcGVydHkpIHtcbiAgQGlmIHR5cGUtb2YoJHByb3BlcnR5KSA9PSBsaXN0IHtcbiAgICAkbmV3LWxpc3Q6IGNvbW1hLWxpc3QoKTtcbiAgICBAZWFjaCAkdiBpbiAkcHJvcGVydHkge1xuICAgICAgJG5ldy1saXN0OiBhcHBlbmQoJG5ldy1saXN0LCBwcmVmaXhlZC1mb3ItdHJhbnNpdGlvbigkcHJlZml4LCAkdikpO1xuICAgIH1cbiAgICBAcmV0dXJuICRuZXctbGlzdDtcbiAgfSBAZWxzZSB7XG4gICAgQGlmIGluZGV4KCR0cmFuc2l0aW9uYWJsZS1wcmVmaXhlZC12YWx1ZXMsICRwcm9wZXJ0eSkge1xuICAgICAgQHJldHVybiAjeyRwcmVmaXh9LSN7JHByb3BlcnR5fTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIEByZXR1cm4gJHByb3BlcnR5O1xuICAgIH1cbiAgfVxufVxuXG4vLyBDaGVja3MgaWYgdGhlIHZhbHVlIGdpdmVuIGlzIGEgdW5pdCBvZiB0aW1lLlxuQGZ1bmN0aW9uIGlzLXRpbWUoJHZhbHVlKSB7XG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gbnVtYmVyIHtcbiAgICBAcmV0dXJuIG5vdChub3QoaW5kZXgocyBtcywgdW5pdCgkdmFsdWUpKSkpO1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuIGZhbHNlO1xuICB9XG59XG4iLCJAaW1wb3J0IFwiY29tcGFzc1wiO1xuXG4ud2ViZi1kcm9wZG93bi53ZWJmLXNlbGVjdC1kcm9wZG93biB7XG4gICYub3BlbiB7XG4gICAgLy9tYXJnaW4tYm90dG9tOiAxcHg7XG4gIH1cbn1cblxuLndlYmYtc2VsZWN0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBhZGRpbmc6IDNweCAwIDNweCA4cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIGxpZ2h0ZW4oJGRlZmF1bHQtYm9yZGVyLWNvbG9yLCAxMyUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWltYWdlKGxpbmVhci1ncmFkaWVudCgjZmZmZmZmIDAlLCAjZWVlZWVlIDEwMCUpKTtcbiAgbGluZS1oZWlnaHQ6IDE3cHg7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogMTAwJTtcblxuICAmLm9wZW4ge1xuICAgIEBpbmNsdWRlIGJhY2tncm91bmQtaW1hZ2UobGluZWFyLWdyYWRpZW50KCNlZWVlZWUgMCUsICNmZmZmZmYgMTAwJSkpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cocmdiYSgwLDAsMCwwLjE3NSkgMCAzcHggM3B4KTtcbiAgfVxuXG4gIC5zZWxlY3Qge1xuICAgIGNvbG9yOiAkZGVmYXVsdC10ZXh0LWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuXG4gICAgLnNlbGVjdGVkLWFyZWEge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAuaGFuZGxlLWRvd24ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIHBhZGRpbmc6IDJweCA1cHg7XG4gICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICB9XG59XG5cbi53ZWJmLWRyb3Bkb3duIC53ZWJmLWRyb3Bkb3duLW1lbnUge1xuICAmLndlYmYtc2VsZWN0LWRyb3Age1xuICAgIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgbGlnaHRlbigkZGVmYXVsdC1ib3JkZXItY29sb3IsIDEzJSk7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IC0xcHg7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhyZ2JhKDAsMCwwLDAuMTc1KSAwIDNweCAzcHgpO1xuXG4gICAgJi5tdWx0aXBsZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGRlZmF1bHQtYm9yZGVyLWNvbG9yO1xuICAgIH1cblxuICAgICYuY2hlY2thYmxlIHtcbiAgICAgID4gLndlYmYtbGlzdC5vcHRpb25zIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgIGxpLndlYmYtbGlzdC1pdGVtLW9wdGlvbiB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgJi5zZWxlY3RlZCA+IGEsXG4gICAgICAgICAgJi5zZWxlY3RlZCA+IGxhYmVsIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLnNlbGVjdGVkIC53ZWJmLWNoZWNrYm94d3JhcHBlci5jaGVja2VkIGEuY2hlY2tib3gge1xuICAgICAgICAgICAgY29sb3I6IGxpZ2h0ZW4oJHByaW1hcnktY29sb3IsIDEwJSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJiA+IGEsXG4gICAgICAgICAgJiA+IGxhYmVsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5lbmFibGVkIHtcbiAgICAgICAgICAgID4gYTpob3ZlcixcbiAgICAgICAgICAgID4gbGFiZWw6aG92ZXIge1xuICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLndlYmYtY2hlY2tib3h3cmFwcGVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNXB4O1xuICAgICAgICAgICAgbGVmdDogNnB4O1xuXG4gICAgICAgICAgICAmLmNoZWNrZWQge1xuICAgICAgICAgICAgICBhLmNoZWNrYm94IHtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2FhYTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgLndlYmYtY2hlY2tib3h3cmFwcGVyLmNoZWNrZWQge1xuICAgICAgICAgICAgICBhLmNoZWNrYm94IHtcbiAgICAgICAgICAgICAgICBjb2xvcjogbGlnaHRlbigkcHJpbWFyeS1jb2xvciwgMTAlKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYgPiAuZmlsdGVyIHtcbiAgICAgIHBhZGRpbmc6IDZweCA4cHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgIC5zZWFyY2gge1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiBpbml0aWFsO1xuICAgICAgICAgIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IFJvYm90bywgJ0x1Y2lkYSBHcmFuZGUnLCB2ZXJkYW5hLCBzYW5zLXNlcmlmO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICBjb2xvcjogIzU1NTU1NTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGxpZ2h0ZW4oJGRlZmF1bHQtYm9yZGVyLWNvbG9yLCAxMyUpO1xuICAgICAgICAgIHBhZGRpbmc6IDhweCAzMHB4IDhweCA0cHg7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uLXNlYXJjaCB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGNvbG9yOiAjYTBhYWJiO1xuICAgICAgICAgIHRvcDogOHB4O1xuICAgICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYgPiB1bC5vcHRpb25zIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1heC1oZWlnaHQ6IDIyMHB4O1xuICAgICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAud2ViZi1pdGVtLWhpZGRlbiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4ud2ViZi1zZWxlY3QtZHJvcCB7XG4gIG1heC1oZWlnaHQ6IDI3MHB4O1xuICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICYubXVsdGlwbGUge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0JCQjtcbiAgICBsaW5lLWhlaWdodDogMDtcblxuICAgIC53ZWJmLWxpc3Qge1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cblxuICAgICYgPiB1bCB7XG4gICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gIH1cblxuICAud2ViZi1jaGVja2JveHdyYXBwZXIgLmNoZWNrYm94IHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gIH1cbn1cbiIsIkBpbXBvcnQgXCIuLi9taXhpbnMvbGlzdHNcIjtcblxuLndlYmYtZHJvcGRvd24ud2ViZi1tZC1zZWxlY3Qge1xuICAmLCAmLmZpbGxlZCB7XG4gICAgJi5vcGVuIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLndlYmYtc2VsZWN0LWRyb3Age1xuICAgICAgbWFyZ2luLXRvcDogLThweDtcbiAgICB9XG4gIH1cblxuICAmLm91dGxpbmVkIHtcbiAgICAud2ViZi1zZWxlY3QtZHJvcCB7XG4gICAgICBtYXJnaW4tdG9wOiAtMTJweDtcbiAgICB9XG4gIH1cblxuICAud2ViZi1tZC10ZXh0IGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cblxuICAud2ViZi1tZC1saXN0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3gtc2hhZG93OiBub25lO1xuXG4gICAgLndlYmYtbGlzdC1pdGVtLndlYmYtYWN0aXZlLndlYmYtZm9jdXMgPiBhIHtcbiAgICAgIEBpbmNsdWRlIGxpc3QtaXRlbS1hY3RpdmUtdHlwZShkYXJrZW4od2hpdGUsIDEwJSksIHRyYW5zcGFyZW50LCAkcHJpbWFyeS1jb2xvciwgdHJ1ZSk7XG4gICAgfVxuICB9XG59XG4iLCIkc2l6ZUhhbmRsZXI6IDEuOHJlbSAhZGVmYXVsdDtcbiRoZWlnaHRTbGlkZXI6IDAuNTVyZW0gIWRlZmF1bHQ7XG4kY29sb3JTbGlkZXI6ICNkZGQgIWRlZmF1bHQ7XG4kY29sb3JCb3JkZXJTbGlkZXI6ICNkZGQgIWRlZmF1bHQ7XG4kY29sb3JIYW5kbGVyOiAjNTY1YTVmICFkZWZhdWx0O1xuJGNvbG9yQm9yZGVySGFuZGxlcjogIzU2NWE1ZiAhZGVmYXVsdDtcbiRjb2xvckFjdGl2ZUhhbmRsZXI6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4ud2ViZi1zbGlkZXIge1xuICBiYWNrZ3JvdW5kOiAkY29sb3JTbGlkZXI7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvckJvcmRlclNsaWRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXItcmFkaXVzOiAkaGVpZ2h0U2xpZGVyO1xuXG4gICYgPiBhLmhhbmRsZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAkc2l6ZUhhbmRsZXI7XG4gICAgaGVpZ2h0OiAkc2l6ZUhhbmRsZXI7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgLmlubmVyLWhhbmRsZXIge1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgd2lkdGg6ICRzaXplSGFuZGxlciAqIDIvMztcbiAgICAgIGhlaWdodDogJHNpemVIYW5kbGVyICogMi8zO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9ySGFuZGxlcjtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIC5pbm5lci1oYW5kbGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yQWN0aXZlSGFuZGxlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLndlYmYtc2xpZGVyLWZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yQWN0aXZlSGFuZGxlcjtcbiAgICB9XG4gIH1cblxuICAmLmhvcml6b250YWwge1xuICAgIGhlaWdodDogJGhlaWdodFNsaWRlcjtcblxuICAgICYgPiBhLmhhbmRsZXIge1xuICAgICAgdG9wOiAoJGhlaWdodFNsaWRlciAtICRzaXplSGFuZGxlcikgLyAyO1xuICAgICAgbGVmdDogMDtcbiAgICAgIG1hcmdpbi10b3A6IC0xcHg7XG4gICAgICBtYXJnaW4tbGVmdDogLSgkc2l6ZUhhbmRsZXIgLyAyKTtcbiAgICAgIG1hcmdpbi1yaWdodDogLSgkc2l6ZUhhbmRsZXIgLyAyKTtcbiAgICB9XG4gIH1cblxuICAmLnZlcnRpY2FsIHtcbiAgICB3aWR0aDogJGhlaWdodFNsaWRlcjtcbiAgICBoZWlnaHQ6IDE1MHB4O1xuXG4gICAgJiA+IGEuaGFuZGxlciB7XG4gICAgICBsZWZ0OiAoJGhlaWdodFNsaWRlciAtICRzaXplSGFuZGxlcikgLyAyO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgICBtYXJnaW4tdG9wOiAtKCRzaXplSGFuZGxlciAvIDIpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLSgkc2l6ZUhhbmRsZXIgLyAyKTtcbiAgICB9XG4gIH1cbn1cblxuIiwiLndlYmYtc29ydGFibGUtZ2hvc3Qge1xuICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cblxuLndlYmYtc29ydGFibGUtY2xvbmUge1xuICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDtcbiAgei1pbmRleDogMTAwMDAwICFpbXBvcnRhbnQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xufVxuXG4ubGlzdC1zb3J0YWJsZSAud2ViZi1lbnRpdHkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4ubGlzdC1zb3J0YWJsZS53ZWJmLXNvcnRhYmxlLWRyb3BwYWJsZSB7XG4gIG1pbi1oZWlnaHQ6IDUwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRwcmltYXJ5LWNvbG9yLCAyNSUpO1xufVxuIiwiQGltcG9ydCBcImNvbXBhc3NcIjtcblxuJGJnLWNvbG9yLXNwaW4tYnRuOiAjZWVlO1xuXG4ud2ViZi1zcGlubmVyIHtcbiAgZGlzcGxheTogdGFibGU7XG5cbiAgLndlYmYtaW5wdXQtc3Bpbm5lciB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZzogNHB4IDEycHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAud2ViZi1zcGlubmVyLWJ1dHRvbnMge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgd2lkdGg6IDElO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nOiAwIDE2cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1jb2xvci1zcGluLWJ0bjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuXG4gICAgLndlYmYtc3Bpbi1idG4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBjb2xvcjogIzMzMztcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgJi51cCwgJi5kb3duIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgaS53ZWJmIHtcbiAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJnLWNvbG9yLXNwaW4tYnRuLCA2JSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi51cCB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYm90dG9tOiA1MCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2QwZDBkMDtcblxuICAgICAgICBpLndlYmYge1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5kb3duIHtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGFkYWRhO1xuXG4gICAgICAgIGkud2ViZiB7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYubGVmdCB7XG4gICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgfVxuXG4gICAgJi5yaWdodCB7XG4gICAgICBib3JkZXItbGVmdDogMDtcbiAgICB9XG5cbiAgICAmLmFsb25lIHtcbiAgICAgIC53ZWJmLXNwaW4tYnRuIHtcbiAgICAgICAgJi51cCwgJi5kb3duIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4iLCJAaW1wb3J0IFwiY29tcGFzc1wiO1xuXG4ud2ViZi1zdGlja3liYXIge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDQwcHg7XG4gIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIGJhY2tncm91bmQ6ICNmOGY4Zjg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAwO1xuICBib3gtc2hhZG93OiAwcHggLTFweCA1cHggcmdiYSgwLCAwLCAwLCAwLjMpO1xuXG4gICYudmlzaWJsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAud2ViZi1zdGlja3ktYnV0dG9uIHtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgbWFyZ2luOiAwIDNweDtcbiAgfVxufVxuXG4iLCJAaW5wb3J0IFwiY29tcGFzc1wiO1xuQGltcG9ydCBcIi4uL21peGlucy90YWJzXCI7XG5cbi53ZWJmLXRhYnMtd3JhcHBlciB7XG4gICYud2ViZi1ob3Jpem9udGFsIHtcbiAgICAmID4gLndlYmYtdGFicy53ZWJmLXN0eWxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICAgICBAZWFjaCAkbmFtZSwgJGluZm9zQ29sb3IgaW4gJGNvbG9ycyB7XG4gICAgICAgICYud2ViZi10YWJzLSN7JG5hbWV9IHtcbiAgICAgICAgICAkYmdDb2xvcjogbWFwLWdldCgkaW5mb3NDb2xvciwgJ2Jhc2lzJyk7XG4gICAgICAgICAgJHRleHRDb2xvcjogbWFwLWdldCgkaW5mb3NDb2xvciwgJ3RleHQnKTtcbiAgICAgICAgICAkYWN0aXZlVGV4dENvbG9yOiAkYmdDb2xvcjtcbiAgICAgICAgICBAaWYgKCRuYW1lID09ICdsaWdodGdyZXknKSB7XG4gICAgICAgICAgICAkYWN0aXZlVGV4dENvbG9yOiBkYXJrZW4oJHRleHRDb2xvciwgMTAlKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaW5jbHVkZSB0YWJzLXR5cGUtaG9yaXpvbnRhbCgkYmdDb2xvciwgJHRleHRDb2xvciwgJGFjdGl2ZVRleHRDb2xvcik7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJiA+IGxpLndlYmYtdGFiIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gICAgICAgICYgPiBhIHtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHBhZGRpbmc6IDdweCAxMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJiA+IC53ZWJmLXBhbmVscyB7XG4gICAgICAmID4gLndlYmYtcGFuZWwud2ViZi1zdHlsZSB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGluZm9zQ29sb3IgaW4gJGNvbG9ycyB7XG4gICAgICAgICAgJi53ZWJmLXBhbmVsLSN7JG5hbWV9IHtcbiAgICAgICAgICAgICRiZ0NvbG9yOiBtYXAtZ2V0KCRpbmZvc0NvbG9yLCAnYmFzaXMnKTtcblxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkYmdDb2xvcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLndlYmYtdmVydGljYWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAmID4gLndlYmYtdGFicy53ZWJmLXN0eWxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICAgICBAZWFjaCAkbmFtZSwgJGluZm9zQ29sb3IgaW4gJGNvbG9ycyB7XG4gICAgICAgICYud2ViZi10YWJzLSN7JG5hbWV9IHtcbiAgICAgICAgICAkYmdDb2xvcjogbWFwLWdldCgkaW5mb3NDb2xvciwgJ2Jhc2lzJyk7XG4gICAgICAgICAgJHRleHRDb2xvcjogbWFwLWdldCgkaW5mb3NDb2xvciwgJ3RleHQnKTtcbiAgICAgICAgICAkYWN0aXZlVGV4dENvbG9yOiAkYmdDb2xvcjtcbiAgICAgICAgICBAaWYgKCRuYW1lID09ICdsaWdodGdyZXknKSB7XG4gICAgICAgICAgICAkYWN0aXZlVGV4dENvbG9yOiBkYXJrZW4oJHRleHRDb2xvciwgMTAlKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaW5jbHVkZSB0YWJzLXR5cGUtdmVydGljYWwoJGJnQ29sb3IsICR0ZXh0Q29sb3IsICRhY3RpdmVUZXh0Q29sb3IpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYgPiBsaS53ZWJmLXRhYiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gICAgICAgICYgPiBhIHtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHBhZGRpbmc6IDdweCAxMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJiA+IC53ZWJmLXRhYnMud2ViZi1zdHlsZSB7XG4gICAgICBmbGV4OiAxO1xuICAgIH1cblxuICAgICYgPiAud2ViZi1wYW5lbHMge1xuICAgICAgZmxleDogNDtcblxuICAgICAgJiA+IC53ZWJmLXBhbmVsLndlYmYtc3R5bGUge1xuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbiAgLndlYmYtdGFiLWFjY29yZGlvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICBAZWFjaCAkbmFtZSwgJGluZm9zQ29sb3IgaW4gJGNvbG9ycyB7XG4gICAgICAmLndlYmYtdGFiLSN7JG5hbWV9IHtcbiAgICAgICAgJGJnQ29sb3I6IG1hcC1nZXQoJGluZm9zQ29sb3IsICdiYXNpcycpO1xuICAgICAgICAkdGV4dENvbG9yOiBtYXAtZ2V0KCRpbmZvc0NvbG9yLCAndGV4dCcpO1xuICAgICAgICAkYWN0aXZlVGV4dENvbG9yOiAkYmdDb2xvcjtcbiAgICAgICAgQGlmICgkbmFtZSA9PSAnbGlnaHRncmV5Jykge1xuICAgICAgICAgICRhY3RpdmVUZXh0Q29sb3I6IGRhcmtlbigkdGV4dENvbG9yLCAxMCUpO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgdGFiLWFjY29yZGlvbi10eXBlKCRiZ0NvbG9yLCAkdGV4dENvbG9yLCAkYWN0aXZlVGV4dENvbG9yKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmID4gYSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDdweCAxMnB4O1xuICAgIH1cblxuICAgICY6bm90KDpmaXJzdC1vZi10eXBlKSB7XG4gICAgICBib3JkZXItdG9wOiAwO1xuICAgIH1cblxuICAgICY6bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgJjpub3QoOmZpcnN0LW9mLXR5cGUpOm5vdCg6bGFzdC1vZi10eXBlKSB7XG4gICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIkBpbXBvcnQgXCJjb21wYXNzXCI7XG5cbkBtaXhpbiB0YWJzLXR5cGUtaG9yaXpvbnRhbCgkY29sb3IsICR0ZXh0Q29sb3IsICRhY3RpdmVUZXh0Q29sb3IpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuXG4gICYgPiBsaS53ZWJmLXRhYiB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRlZmF1bHQtY29sb3I7XG5cbiAgICAmID4gYSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICBjb2xvcjogJHRleHRDb2xvcjtcbiAgICAgIEBpbmNsdWRlIHRleHQtc2hhZG93KDAgMXB4IHJnYmEoMCwgMCwgMCwgMC4yKSk7XG4gICAgfVxuXG4gICAgJi53ZWJmLXRhYi1hY3RpdmUgPiBhIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgY29sb3I6ICRhY3RpdmVUZXh0Q29sb3I7XG4gICAgICBAaW5jbHVkZSB0ZXh0LXNoYWRvdyhub25lKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHRhYnMtdHlwZS12ZXJ0aWNhbCgkY29sb3IsICR0ZXh0Q29sb3IsICRhY3RpdmVUZXh0Q29sb3IpIHtcbiAgJiA+IGxpLndlYmYtdGFiIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3I7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkZWZhdWx0LWNvbG9yO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgJiA+IGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICBjb2xvcjogJHRleHRDb2xvcjtcbiAgICAgIEBpbmNsdWRlIHRleHQtc2hhZG93KDAgMXB4IHJnYmEoMCwgMCwgMCwgMC4yKSk7XG4gICAgfVxuXG4gICAgJi53ZWJmLXRhYi1hY3RpdmUgPiBhIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgY29sb3I6ICRhY3RpdmVUZXh0Q29sb3I7XG4gICAgICBAaW5jbHVkZSB0ZXh0LXNoYWRvdyhub25lKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHRhYi1hY2NvcmRpb24tdHlwZSgkY29sb3IsICR0ZXh0Q29sb3IsICRhY3RpdmVUZXh0Q29sb3IpIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGVmYXVsdC1jb2xvcjtcblxuICAmID4gYSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgIGNvbG9yOiAkdGV4dENvbG9yO1xuICAgIEBpbmNsdWRlIHRleHQtc2hhZG93KDAgMXB4IHJnYmEoMCwgMCwgMCwgMC4yKSk7XG4gIH1cblxuICAmLndlYmYtdGFiLWFjdGl2ZSA+IGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIGNvbG9yOiAkYWN0aXZlVGV4dENvbG9yO1xuICAgIEBpbmNsdWRlIHRleHQtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cbiIsIkBpbXBvcnQgXCJjb21wYXNzXCI7XG5cbi53ZWJmLXRhZ3NpbnB1dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgQGluY2x1ZGUgYm94LXNpemluZygnYm9yZGVyLWJveCcpO1xuICBjb2xvcjogIzU1NTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgJGRlZmF1bHQtYm9yZGVyLWNvbG9yO1xuICBwYWRkaW5nOiAzcHggNnB4O1xuICBsaW5lLWhlaWdodDogMjJweDtcbiAgZm9udC1zaXplOiAxM3B4O1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjdXJzb3I6IHRleHQ7XG4gIG91dGxpbmU6IG5vbmU7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xKSBpbnNldCk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMnB4KTtcblxuICAmID4gLndlYmYtdGFnIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICBtYXJnaW46IDAgNHB4IDAgMDtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDVweDtcbiAgICBmb250LXNpemU6IDExLjVweDtcbiAgICBsaW5lLWhlaWdodDogMTBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygzcHgpO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJHByaW1hcnktY29sb3IsIDE2JSk7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cblxuICAgICYgLnJlbW92ZSB7XG4gICAgICBtYXJnaW4tbGVmdDogN3B4O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgIH1cbiAgfVxuXG4gIGlucHV0LndlYmYtdGFnc2lucHV0LXRleHQge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAycHggMDtcbiAgICBtYXgtd2lkdGg6IGluaGVyaXQ7XG5cbiAgICAmLmVtcHR5IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4iLCIud3JhcHBlci13ZWJmLXRleHRhcmVhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsaW5lLWhlaWdodDogMXB4O1xufVxuXG4ud2ViZi10ZXh0YXJlYSB7XG4gIGJvcmRlcjogMCBub25lIHdoaXRlICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICByZXNpemU6IG5vbmUgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ud2ViZi1zaW1wbGUtbGluZSB7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ud2ViZi10ZXh0YXJlYS1taXJyb3Ige1xuICBtaW4taGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG4iLCJAaW1wb3J0IFwiY29tcGFzc1wiO1xuXG4ud2ViZi10aW1lcGlja2VyIHtcbiAgJiAqIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG5cbiAgYm9yZGVyOiAxcHggc29saWQgJGRlZmF1bHQtYm9yZGVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KHJnYmEoMCwgMCwgMCwgMC4xNzUpIDJweCAzcHggM3B4KTtcblxuICB0YWJsZSB7XG4gICAgcGFkZGluZzogM3B4IDVweDtcblxuICAgIHRyIHtcbiAgICAgIHRkIHtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICBwYWRkaW5nOiAwIDRweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIGlucHV0W3R5cGU9J3RleHQnXSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIGNvbG9yOiAjNTU1NTU1O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICBoZWlnaHQ6IDI2cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICB3aWR0aDogMzVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBmb250LXNpemU6IDE5cHg7XG4gICAgICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICAgIHBhZGRpbmc6IDdweCAwO1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2VlZTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGRlZmF1bHQtYm9yZGVyLWNvbG9yO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYudXAge1xuICAgICAgICAgICAgY3Vyc29yOiBuLXJlc2l6ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmRvd24ge1xuICAgICAgICAgICAgY3Vyc29yOiBzLXJlc2l6ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnRkLXNlY29uZHMsICYudGltZS1zZXBhcmF0b3IubWludXRlcy1zZWNvbmRzLFxuICAgICAgICAmLnRkLW1lcmlkaWFuLCAmLnRpbWUtc2VwYXJhdG9yLm1lcmlkaWFuIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5zaG93LXNlY29uZHMge1xuICAgIHRhYmxlIHtcbiAgICAgIHRyIHtcbiAgICAgICAgdGQudGQtc2Vjb25kcyxcbiAgICAgICAgdGQudGltZS1zZXBhcmF0b3IubWludXRlcy1zZWNvbmRzIHtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5zaG93LW1lcmlkaWFuIHtcbiAgICB0YWJsZSB7XG4gICAgICB0ciB7XG4gICAgICAgIHRkLnRkLW1lcmlkaWFuLFxuICAgICAgICB0ZC50aW1lLXNlcGFyYXRvci5tZXJpZGlhbiB7XG4gICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ud2ViZi1kaWFsb2cud2ViZi1kaWFsb2ctdGltZXBpY2tlciB7XG4gIHdpZHRoOiBhdXRvO1xuXG4gIC53ZWJmLXRpbWVwaWNrZXIge1xuICAgIGJvcmRlcjogMDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuXG4gICAgdGFibGUge1xuICAgICAgdHIge1xuICAgICAgICB0ZCB7XG4gICAgICAgICAgcGFkZGluZzogMCA4cHg7XG5cbiAgICAgICAgICBpbnB1dFt0eXBlPSd0ZXh0J10ge1xuICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaW1wb3J0IFwiY29tcGFzc1wiO1xuXG4ud2ViZi10b2FzdC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XG4gIG9wYWNpdHk6IDAuMztcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigyMDBtcyk7XG5cbiAgJi53ZWJmLWVudGVyIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG5vbmUpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAmLndlYmYtbGVhdmUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLndlYmYtdG9hc3Qge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHBhZGRpbmc6IDVweCAxMHB4O1xuICBjb2xvcjogI2RkZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzMztcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygxcHggMXB4IDJweCAwcHggcmdiYSg1MCwgNTAsIDUwLCAxKSk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oMjAwbXMpO1xuXG4gICYuZGlzbWlzc2libGUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIH1cblxuICAmLndlYmYtZW50ZXIge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24obm9uZSk7XG4gICAgQGluY2x1ZGUgdHJhbnNsYXRlWShjYWxjKDEwMCUgKyAxMHB4KSk7XG4gIH1cblxuICAmLndlYmYtbGVhdmUge1xuICAgIEBpbmNsdWRlIHRyYW5zbGF0ZVgoY2FsYygtMTAwJSAtIDEycHgpKTtcbiAgfVxuXG4gIGJ1dHRvbiB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAxMHB4O1xuICB9XG59XG4iLCJAaW1wb3J0IFwic2hhcmVkXCI7XG5cbi8vIEBkb2Mgb2ZmXG4vLyBOb3RlIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFNhZmFyaSwgQ2hyb21lLCBhbmQgRmlyZWZveCBhbGwgc3VwcG9ydCAzRCB0cmFuc2Zvcm1zLiBIb3dldmVyLFxuLy8gb25seSBpbiB0aGUgbW9zdCByZWNlbnQgYnVpbGRzLiBZb3Ugc2hvdWxkIGFsc28gcHJvdmlkZSBmYWxsYmFjayAyZCBzdXBwb3J0IGZvclxuLy8gT3BlcmEgYW5kIElFLiBJRTEwIGlzIHNsYXRlZCB0byBoYXZlIDNkIGVuYWJsZWQsIGJ1dCBpcyBjdXJyZW50bHkgdW5yZWxlYXNlZC5cbi8vIFRvIG1ha2UgdGhhdCBlYXN5LCBhbGwgMkQgdHJhbnNmb3JtcyBpbmNsdWRlIGFuIGJyb3dzZXItdGFyZ2V0aW5nIHRvZ2dsZSAoJG9ubHkzZClcbi8vIHRvIHN3aXRjaCBiZXR3ZWVuIHRoZSB0d28gc3VwcG9ydCBsaXN0cy4gVGhlIHRvZ2dsZSBkZWZhdWx0cyB0byAnZmFsc2UnICgyRCksXG4vLyBhbmQgYWxzbyBhY2NlcHRzICd0cnVlJyAoM0QpLiBDdXJyZW50bHkgdGhlIGxpc3RzIGFyZSBhcyBmb2xsb3dzOlxuLy8gMkQ6IE1vemlsbGEsIFdlYmtpdCwgT3BlcmEsIE9mZmljaWFsXG4vLyAzRDogV2Via2l0LCBGaXJlZm94LlxuXG4vLyBBdmFpbGFibGUgVHJhbnNmb3JtcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIC0gU2NhbGUgKDJkIGFuZCAzZClcbi8vIC0gUm90YXRlICgyZCBhbmQgM2QpXG4vLyAtIFRyYW5zbGF0ZSAoMmQgYW5kIDNkKVxuLy8gLSBTa2V3ICgyZCBvbmx5KVxuXG4vLyBUcmFuc2Zvcm0gUGFyYW1ldGVycyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIC0gVHJhbnNmb3JtIE9yaWdpbiAoMmQgYW5kIDNkKVxuLy8gLSBQZXJzcGVjdGl2ZSAoM2QpXG4vLyAtIFBlcnNwZWN0aXZlIE9yaWdpbiAoM2QpXG4vLyAtIFRyYW5zZm9ybSBTdHlsZSAoM2QpXG4vLyAtIEJhY2tmYWNlIFZpc2liaWxpdHkgKDNkKVxuXG4vLyBNaXhpbnMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIHRyYW5zZm9ybS1vcmlnaW5cbi8vICAtIHNob3J0Y3V0czogIHRyYW5zZm9ybS1vcmlnaW4yZCwgdHJhbnNmb3JtLW9yaWdpbjNkXG4vLyAgLSBoZWxwZXJzOiAgICBhcHBseS1vcmlnaW5cbi8vIHRyYW5zZm9ybVxuLy8gIC0gc2hvcnRjdXRzOiAgdHJhbnNmb3JtMmQsIHRyYW5zZm9ybTNkXG4vLyAgLSBoZWxwZXJzOiAgICBzaW1wbGUtdHJhbnNmb3JtLCBjcmVhdGUtdHJhbnNmb3JtXG4vLyBwZXJzcGVjdGl2ZVxuLy8gIC0gaGVscGVyczogICAgcGVyc3BlY3RpdmUtb3JpZ2luXG4vLyB0cmFuc2Zvcm0tc3R5bGVcbi8vIGJhY2tmYWNlLXZpc2liaWxpdHlcbi8vIHNjYWxlXG4vLyAgLSBzaG9ydGN1dHM6ICBzY2FsZVgsIHNjYWxlWSwgc2NhbGVaLCBzY2FsZTNkXG4vLyByb3RhdGVcbi8vICAtIHNob3J0Y3V0czogIHJvdGF0ZVgsIHJvdGF0ZVksIHJvdGF0ZTNkXG4vLyB0cmFuc2xhdGVcbi8vICAtIHNob3J0Y3V0czogIHRyYW5zbGF0ZVgsIHRyYW5zbGF0ZVksIHRyYW5zbGF0ZVosIHRyYW5zbGF0ZTNkXG4vLyBza2V3XG4vLyAgLSBzaG9ydGN1dHM6ICBza2V3WCwgc2tld1lcblxuLy8gRGVmYXVsdHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBAZG9jIG9uXG5cbi8vIFRoZSBkZWZhdWx0IHgtb3JpZ2luIGZvciB0cmFuc2Zvcm1zXG4kZGVmYXVsdC1vcmlnaW4teCAgICA6IDUwJSAgICAgICAgICAgICAgICAgICAhZGVmYXVsdDtcbi8vIFRoZSBkZWZhdWx0IHktb3JpZ2luIGZvciB0cmFuc2Zvcm1zXG4kZGVmYXVsdC1vcmlnaW4teSAgICA6IDUwJSAgICAgICAgICAgICAgICAgICAhZGVmYXVsdDtcbi8vIFRoZSBkZWZhdWx0IHotb3JpZ2luIGZvciB0cmFuc2Zvcm1zXG4kZGVmYXVsdC1vcmlnaW4teiAgICA6IDUwJSAgICAgICAgICAgICAgICAgICAhZGVmYXVsdDtcblxuXG4vLyBUaGUgZGVmYXVsdCB4LW11bHRpcGxpZXIgZm9yIHNjYWxpbmdcbiRkZWZhdWx0LXNjYWxlLXggICAgIDogMS4yNSAgICAgICAgICAgICAgICAgICFkZWZhdWx0O1xuLy8gVGhlIGRlZmF1bHQgeS1tdWx0aXBsaWVyIGZvciBzY2FsaW5nXG4kZGVmYXVsdC1zY2FsZS15ICAgICA6ICRkZWZhdWx0LXNjYWxlLXggICAgICAhZGVmYXVsdDtcbi8vIFRoZSBkZWZhdWx0IHotbXVsdGlwbGllciBmb3Igc2NhbGluZ1xuJGRlZmF1bHQtc2NhbGUteiAgICAgOiAkZGVmYXVsdC1zY2FsZS14ICAgICAgIWRlZmF1bHQ7XG5cblxuLy8gVGhlIGRlZmF1bHQgYW5nbGUgZm9yIHJvdGF0aW9uc1xuJGRlZmF1bHQtcm90YXRlICAgICAgOiA0NWRlZyAgICAgICAgICAgICAgICAgIWRlZmF1bHQ7XG5cblxuLy8gVGhlIGRlZmF1bHQgeC12ZWN0b3IgZm9yIHRoZSBheGlzIG9mIDNkIHJvdGF0aW9uc1xuJGRlZmF1bHQtdmVjdG9yLXggICAgOiAxICAgICAgICAgICAgICAgICAgICAgIWRlZmF1bHQ7XG4vLyBUaGUgZGVmYXVsdCB5LXZlY3RvciBmb3IgdGhlIGF4aXMgb2YgM2Qgcm90YXRpb25zXG4kZGVmYXVsdC12ZWN0b3IteSAgICA6IDEgICAgICAgICAgICAgICAgICAgICAhZGVmYXVsdDtcbi8vIFRoZSBkZWZhdWx0IHotdmVjdG9yIGZvciB0aGUgYXhpcyBvZiAzZCByb3RhdGlvbnNcbiRkZWZhdWx0LXZlY3Rvci16ICAgIDogMSAgICAgICAgICAgICAgICAgICAgICFkZWZhdWx0O1xuXG5cbi8vIFRoZSBkZWZhdWx0IHgtbGVuZ3RoIGZvciB0cmFuc2xhdGlvbnNcbiRkZWZhdWx0LXRyYW5zbGF0ZS14IDogMWVtICAgICAgICAgICAgICAgICAgICFkZWZhdWx0O1xuLy8gVGhlIGRlZmF1bHQgeS1sZW5ndGggZm9yIHRyYW5zbGF0aW9uc1xuJGRlZmF1bHQtdHJhbnNsYXRlLXkgOiAkZGVmYXVsdC10cmFuc2xhdGUteCAgIWRlZmF1bHQ7XG4vLyBUaGUgZGVmYXVsdCB6LWxlbmd0aCBmb3IgdHJhbnNsYXRpb25zXG4kZGVmYXVsdC10cmFuc2xhdGUteiA6ICRkZWZhdWx0LXRyYW5zbGF0ZS14ICAhZGVmYXVsdDtcblxuXG4vLyBUaGUgZGVmYXVsdCB4LWFuZ2xlIGZvciBza2V3aW5nXG4kZGVmYXVsdC1za2V3LXggICAgICA6IDVkZWcgICAgICAgICAgICAgICAgICAhZGVmYXVsdDtcbi8vIFRoZSBkZWZhdWx0IHktYW5nbGUgZm9yIHNrZXdpbmdcbiRkZWZhdWx0LXNrZXcteSAgICAgIDogNWRlZyAgICAgICAgICAgICAgICAgICFkZWZhdWx0O1xuXG5cbi8vICoqVHJhbnNmb3JtLW9yaWdpbioqXG4vLyBUcmFuc2Zvcm0tb3JpZ2luIHNlbnQgYXMgYSBjb21wbGV0ZSBzdHJpbmdcbi8vXG4vLyAgICAgQGluY2x1ZGUgYXBwbHktb3JpZ2luKCBvcmlnaW4gWywgM0Qtb25seSBdIClcbi8vXG4vLyB3aGVyZSAnb3JpZ2luJyBpcyBhIHNwYWNlIHNlcGFyYXRlZCBsaXN0IGNvbnRhaW5pbmcgMS0zICh4L3kveikgY29vcmRpbmF0ZXNcbi8vIGluIHBlcmNlbnRhZ2VzLCBhYnNvbHV0ZSAocHgsIGNtLCBpbiwgZW0gZXRjLi4pIG9yIHJlbGF0aXZlXG4vLyAobGVmdCwgdG9wLCByaWdodCwgYm90dG9tLCBjZW50ZXIpIHVuaXRzXG4vL1xuLy8gQHBhcmFtIG9ubHkzZCBTZXQgdGhpcyB0byB0cnVlIHRvIG9ubHkgYXBwbHkgdGhpc1xuLy8gbWl4aW4gd2hlcmUgYnJvd3NlcnMgaGF2ZSAzRCBzdXBwb3J0LlxuQG1peGluIGFwcGx5LW9yaWdpbigkb3JpZ2luLCAkb25seTNkKSB7XG4gICRvbmx5M2Q6ICRvbmx5M2Qgb3IgLWNvbXBhc3MtbGlzdC1zaXplKC1jb21wYXNzLWxpc3QoJG9yaWdpbikpID4gMjtcbiAgQGlmICRvbmx5M2Qge1xuICAgIEBpbmNsdWRlIGV4cGVyaW1lbnRhbCh0cmFuc2Zvcm0tb3JpZ2luLCAkb3JpZ2luLFxuICAgICAgLW1veiwgLXdlYmtpdCwgLW8sIC1tcywgbm90KC1raHRtbCksIG9mZmljaWFsXG4gICAgKTtcbiAgfSBAZWxzZSB7XG4gICAgQGluY2x1ZGUgZXhwZXJpbWVudGFsKHRyYW5zZm9ybS1vcmlnaW4sICRvcmlnaW4sXG4gICAgICAtbW96LCAtd2Via2l0LCAtbywgLW1zLCBub3QoLWtodG1sKSwgb2ZmaWNpYWxcbiAgICApO1xuICB9XG59XG5cbi8vIFRyYW5zZm9ybS1vcmlnaW4gc2VudCBhcyBpbmRpdmlkdWFsIGFyZ3VtZW50czpcbi8vXG4vLyAgICAgQGluY2x1ZGUgdHJhbnNmb3JtLW9yaWdpbiggWyBvcmlnaW4teCwgb3JpZ2luLXksIG9yaWdpbi16LCAzRC1vbmx5IF0gKVxuLy9cbi8vIHdoZXJlIHRoZSAzICdvcmlnaW4tJyBhcmd1bWVudHMgcmVwcmVzZW50IHgveS96IGNvb3JkaW5hdGVzLlxuLy9cbi8vICoqTk9URToqKiBzZXR0aW5nIHogY29vcmRpbmF0ZXMgdHJpZ2dlcnMgM0Qgc3VwcG9ydCBsaXN0LCBsZWF2ZSBmYWxzZSBmb3IgMkQgc3VwcG9ydFxuQG1peGluIHRyYW5zZm9ybS1vcmlnaW4oXG4gICRvcmlnaW4teDogJGRlZmF1bHQtb3JpZ2luLXgsXG4gICRvcmlnaW4teTogJGRlZmF1bHQtb3JpZ2luLXksXG4gICRvcmlnaW4tejogZmFsc2UsXG4gICRvbmx5M2Q6ICAgaWYoJG9yaWdpbi16LCB0cnVlLCBmYWxzZSlcbikge1xuICAkb3JpZ2luOiB1bnF1b3RlKCcnKTtcbiAgQGlmICRvcmlnaW4teCBvciAkb3JpZ2luLXkgb3IgJG9yaWdpbi16IHtcbiAgICBAaWYgJG9yaWdpbi14IHsgJG9yaWdpbjogJG9yaWdpbi14OyB9IEBlbHNlIHsgJG9yaWdpbjogNTAlOyB9XG4gICAgQGlmICRvcmlnaW4teSB7ICRvcmlnaW46ICRvcmlnaW4gJG9yaWdpbi15OyB9IEBlbHNlIHsgQGlmICRvcmlnaW4teiB7ICRvcmlnaW46ICRvcmlnaW4gNTAlOyB9fVxuICAgIEBpZiAkb3JpZ2luLXogeyAkb3JpZ2luOiAkb3JpZ2luICRvcmlnaW4tejsgfVxuICAgIEBpbmNsdWRlIGFwcGx5LW9yaWdpbigkb3JpZ2luLCAkb25seTNkKTtcbiAgfVxufVxuXG5cbi8vIFRyYW5zZm9ybSBzZW50IGFzIGEgY29tcGxldGUgc3RyaW5nOlxuLy9cbi8vICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHRyYW5zZm9ybXMgWywgM0Qtb25seSBdIClcbi8vXG4vLyB3aGVyZSAndHJhbnNmb3JtcycgaXMgYSBzcGFjZSBzZXBhcmF0ZWQgbGlzdCBvZiBhbGwgdGhlIHRyYW5zZm9ybXMgdG8gYmUgYXBwbGllZC5cbkBtaXhpbiB0cmFuc2Zvcm0oXG4gICR0cmFuc2Zvcm0sXG4gICRvbmx5M2Q6IGZhbHNlXG4pIHtcbiAgQGlmICRvbmx5M2Qge1xuICAgIEBpbmNsdWRlIGV4cGVyaW1lbnRhbCh0cmFuc2Zvcm0sICR0cmFuc2Zvcm0sXG4gICAgICAtbW96LCAtd2Via2l0LCAtbywgLW1zLCBub3QoLWtodG1sKSwgb2ZmaWNpYWxcbiAgICApO1xuICB9IEBlbHNlIHtcbiAgICBAaW5jbHVkZSBleHBlcmltZW50YWwodHJhbnNmb3JtLCAkdHJhbnNmb3JtLFxuICAgICAgLW1veiwgLXdlYmtpdCwgLW8sIC1tcywgbm90KC1raHRtbCksIG9mZmljaWFsXG4gICAgKTtcbiAgfVxufVxuXG4vLyBTaG9ydGN1dCB0byB0YXJnZXQgYWxsIGJyb3dzZXJzIHdpdGggMkQgdHJhbnNmb3JtIHN1cHBvcnRcbkBtaXhpbiB0cmFuc2Zvcm0yZCgkdHJhbnMpIHtcbiAgQGluY2x1ZGUgdHJhbnNmb3JtKCR0cmFucywgZmFsc2UpO1xufVxuXG4vLyBTaG9ydGN1dCB0byB0YXJnZXQgb25seSBicm93c2VycyB3aXRoIDNEIHRyYW5zZm9ybSBzdXBwb3J0XG5AbWl4aW4gdHJhbnNmb3JtM2QoJHRyYW5zKSB7XG4gIEBpbmNsdWRlIHRyYW5zZm9ybSgkdHJhbnMsIHRydWUpO1xufVxuXG4vLyBAZG9jIG9mZlxuLy8gM0QgUGFyYW1ldGVycyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBAZG9jIG9uXG5cbi8vIFNldCB0aGUgcGVyc3BlY3RpdmUgb2YgM0QgdHJhbnNmb3JtcyBvbiB0aGUgY2hpbGRyZW4gb2YgYW4gZWxlbWVudDpcbi8vXG4vLyAgICAgIEBpbmNsdWRlIHBlcnNwZWN0aXZlKCBwZXJzcGVjdGl2ZSApXG4vL1xuLy8gd2hlcmUgJ3BlcnNwZWN0aXZlJyBpcyBhIHVuaXRsZXNzIG51bWJlciByZXByZXNlbnRpbmcgdGhlIGRlcHRoIG9mIHRoZVxuLy8gei1heGlzLiBUaGUgaGlnaGVyIHRoZSBwZXJzcGVjdGl2ZSwgdGhlIG1vcmUgZXhhZ2dlcmF0ZWQgdGhlIGZvcmVzaG9ydGVuaW5nLlxuLy8gdmFsdWVzIGZyb20gNTAwIHRvIDEwMDAgYXJlIG1vcmUtb3ItbGVzcyBcIm5vcm1hbFwiIC0gYSBnb29kIHN0YXJ0aW5nLXBvaW50LlxuQG1peGluIHBlcnNwZWN0aXZlKCRwKSB7XG4gIEBpbmNsdWRlIGV4cGVyaW1lbnRhbChwZXJzcGVjdGl2ZSwgJHAsXG4gICAgLW1veiwgLXdlYmtpdCwgLW8sIC1tcywgbm90KC1raHRtbCksIG9mZmljaWFsXG4gICk7XG59XG5cbi8vIFNldCB0aGUgb3JpZ2luIHBvc2l0aW9uIGZvciB0aGUgcGVyc3BlY3RpdmVcbi8vXG4vLyAgICAgIEBpbmNsdWRlIHBlcnNwZWN0aXZlLW9yaWdpbihvcmlnaW4teCBbb3JpZ2luLXldKVxuLy9cbi8vIHdoZXJlIHRoZSB0d28gYXJndW1lbnRzIHJlcHJlc2VudCB4L3kgY29vcmRpbmF0ZXNcbkBtaXhpbiBwZXJzcGVjdGl2ZS1vcmlnaW4oJG9yaWdpbjogNTAlKSB7XG4gIEBpbmNsdWRlIGV4cGVyaW1lbnRhbChwZXJzcGVjdGl2ZS1vcmlnaW4sICRvcmlnaW4sXG4gICAgLW1veiwgLXdlYmtpdCwgLW8sIC1tcywgbm90KC1raHRtbCksIG9mZmljaWFsXG4gICk7XG59XG5cbi8vIERldGVybWluZSB3aGV0aGVyIGEgM0Qgb2JqZWN0cyBjaGlsZHJlbiBhbHNvIGxpdmUgaW4gdGhlIGdpdmVuIDNEIHNwYWNlXG4vL1xuLy8gICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0tc3R5bGUoIFsgc3R5bGUgXSApXG4vL1xuLy8gd2hlcmUgYHN0eWxlYCBjYW4gYmUgZWl0aGVyIGBmbGF0YCBvciBgcHJlc2VydmUtM2RgLlxuLy8gQnJvd3NlcnMgZGVmYXVsdCB0byBgZmxhdGAsIG1peGluIGRlZmF1bHRzIHRvIGBwcmVzZXJ2ZS0zZGAuXG5AbWl4aW4gdHJhbnNmb3JtLXN0eWxlKCRzdHlsZTogcHJlc2VydmUtM2QpIHtcbiAgQGluY2x1ZGUgZXhwZXJpbWVudGFsKHRyYW5zZm9ybS1zdHlsZSwgJHN0eWxlLFxuICAgIC1tb3osIC13ZWJraXQsIC1vLCAtbXMsIG5vdCgta2h0bWwpLCBvZmZpY2lhbFxuICApO1xufVxuXG4vLyBEZXRlcm1pbmUgdGhlIHZpc2liaWxpdHkgb2YgYW4gZWxlbWVudCB3aGVuIGl0J3MgYmFjayBpcyB0dXJuZWRcbi8vXG4vLyAgICAgQGluY2x1ZGUgYmFja2ZhY2UtdmlzaWJpbGl0eSggWyB2aXNpYmlsaXR5IF0gKVxuLy9cbi8vIHdoZXJlIGB2aXNpYmlsaXR5YCBjYW4gYmUgZWl0aGVyIGB2aXNpYmxlYCBvciBgaGlkZGVuYC5cbi8vIEJyb3dzZXJzIGRlZmF1bHQgdG8gdmlzaWJsZSwgbWl4aW4gZGVmYXVsdHMgdG8gaGlkZGVuXG5AbWl4aW4gYmFja2ZhY2UtdmlzaWJpbGl0eSgkdmlzaWJpbGl0eTogaGlkZGVuKSB7XG4gIEBpbmNsdWRlIGV4cGVyaW1lbnRhbChiYWNrZmFjZS12aXNpYmlsaXR5LCAkdmlzaWJpbGl0eSxcbiAgICAtbW96LCAtd2Via2l0LCAtbywgLW1zLCBub3QoLWtodG1sKSwgb2ZmaWNpYWxcbiAgKTtcbn1cblxuLy8gQGRvYyBvZmZcbi8vIFRyYW5zZm9ybSBQYXJ0aWFscyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVGhlc2Ugd29yayB3ZWxsIG9uIHRoZWlyIG93biwgYnV0IHRoZXkgZG9uJ3QgYWRkIHRvIGVhY2ggb3RoZXIsIHRoZXkgb3ZlcnJpZGUuXG4vLyBVc2UgYWxvbmcgd2l0aCB0cmFuc2Zvcm0gcGFyYW1ldGVyIG1peGlucyB0byBhZGp1c3Qgb3JpZ2luLCBwZXJzcGVjdGl2ZSBhbmQgc3R5bGVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIFNjYWxlIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQGRvYyBvblxuXG4vLyBTY2FsZSBhbiBvYmplY3QgYWxvbmcgdGhlIHggYW5kIHkgYXhpczpcbi8vXG4vLyAgICAgIEBpbmNsdWRlIHNjYWxlKCBbIHNjYWxlLXgsIHNjYWxlLXksIHBlcnNwZWN0aXZlLCAzRC1vbmx5IF0gKVxuLy9cbi8vIHdoZXJlIHRoZSAnc2NhbGUtJyBhcmd1bWVudHMgYXJlIHVuaXRsZXNzIG11bHRpcGxpZXJzIG9mIHRoZSB4IGFuZCB5IGRpbWVuc2lvbnNcbi8vIGFuZCBwZXJzcGVjdGl2ZSwgd2hpY2ggd29ya3MgdGhlIHNhbWUgYXMgdGhlIHN0YW5kLWFsb25lIHBlcnNwZWN0aXZlIHByb3BlcnR5L21peGluXG4vLyBidXQgYXBwbGllcyB0byB0aGUgaW5kaXZpZHVhbCBlbGVtZW50IChtdWx0aXBsaWVkIHdpdGggYW55IHBhcmVudCBwZXJzcGVjdGl2ZSlcbi8vXG4vLyAqKk5vdGUqKiBUaGlzIG1peGluIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIG90aGVyIHRyYW5zZm9ybSBtaXhpbnMuXG5AbWl4aW4gc2NhbGUoXG4gICRzY2FsZS14OiAgICAgJGRlZmF1bHQtc2NhbGUteCxcbiAgJHNjYWxlLXk6ICAgICAkc2NhbGUteCxcbiAgJHBlcnNwZWN0aXZlOiBmYWxzZSxcbiAgJG9ubHkzZDogICAgICBmYWxzZVxuKSB7XG4gICR0cmFuczogc2NhbGUoJHNjYWxlLXgsICRzY2FsZS15KTtcbiAgQGlmICRwZXJzcGVjdGl2ZSB7ICR0cmFuczogcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSAkdHJhbnM7IH1cbiAgQGluY2x1ZGUgdHJhbnNmb3JtKCR0cmFucywgJG9ubHkzZCk7XG59XG5cbi8vIFNjYWxlIGFuIG9iamVjdCBhbG9uZyB0aGUgeCBheGlzXG4vLyBAaW5jbHVkZSBzY2FsZVgoIFsgc2NhbGUteCwgcGVyc3BlY3RpdmUsIDNELW9ubHkgXSApXG4vL1xuLy8gKipOb3RlKiogVGhpcyBtaXhpbiBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCBvdGhlciB0cmFuc2Zvcm0gbWl4aW5zLlxuQG1peGluIHNjYWxlWChcbiAgJHNjYWxlOiAgICAgICAkZGVmYXVsdC1zY2FsZS14LFxuICAkcGVyc3BlY3RpdmU6IGZhbHNlLFxuICAkb25seTNkOiAgICAgIGZhbHNlXG4pIHtcbiAgJHRyYW5zOiBzY2FsZVgoJHNjYWxlKTtcbiAgQGlmICRwZXJzcGVjdGl2ZSB7ICR0cmFuczogcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSAkdHJhbnM7IH1cbiAgQGluY2x1ZGUgdHJhbnNmb3JtKCR0cmFucywgJG9ubHkzZCk7XG59XG5cbi8vIFNjYWxlIGFuIG9iamVjdCBhbG9uZyB0aGUgeSBheGlzXG4vLyBAaW5jbHVkZSBzY2FsZVkoIFsgc2NhbGUteSwgcGVyc3BlY3RpdmUsIDNELW9ubHkgXSApXG4vL1xuLy8gKipOb3RlKiogVGhpcyBtaXhpbiBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCBvdGhlciB0cmFuc2Zvcm0gbWl4aW5zLlxuQG1peGluIHNjYWxlWShcbiAgJHNjYWxlOiAgICAgICAkZGVmYXVsdC1zY2FsZS15LFxuICAkcGVyc3BlY3RpdmU6IGZhbHNlLFxuICAkb25seTNkOiAgICAgIGZhbHNlXG4pIHtcbiAgJHRyYW5zOiBzY2FsZVkoJHNjYWxlKTtcbiAgQGlmICRwZXJzcGVjdGl2ZSB7ICR0cmFuczogcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSAkdHJhbnM7IH1cbiAgQGluY2x1ZGUgdHJhbnNmb3JtKCR0cmFucywgJG9ubHkzZCk7XG59XG5cbi8vIFNjYWxlIGFuIG9iamVjdCBhbG9uZyB0aGUgeiBheGlzXG4vLyBAaW5jbHVkZSBzY2FsZVooIFsgc2NhbGUteiwgcGVyc3BlY3RpdmUgXSApXG4vL1xuLy8gKipOb3RlKiogVGhpcyBtaXhpbiBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCBvdGhlciB0cmFuc2Zvcm0gbWl4aW5zLlxuQG1peGluIHNjYWxlWihcbiAgJHNjYWxlOiAkZGVmYXVsdC1zY2FsZS16LFxuICAkcGVyc3BlY3RpdmU6IGZhbHNlXG4pIHtcbiAgJHRyYW5zOiBzY2FsZVooJHNjYWxlKTtcbiAgQGlmICRwZXJzcGVjdGl2ZSB7ICR0cmFuczogcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSAkdHJhbnM7IH1cbiAgQGluY2x1ZGUgdHJhbnNmb3JtM2QoJHRyYW5zKTtcbn1cblxuLy8gU2NhbGUgYW5kIG9iamVjdCBhbG9uZyBhbGwgdGhyZWUgYXhpc1xuLy8gQGluY2x1ZGUgc2NhbGUzZCggWyBzY2FsZS14LCBzY2FsZS15LCBzY2FsZS16LCBwZXJzcGVjdGl2ZSBdIClcbi8vXG4vLyAqKk5vdGUqKiBUaGlzIG1peGluIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIG90aGVyIHRyYW5zZm9ybSBtaXhpbnMuXG5AbWl4aW4gc2NhbGUzZChcbiAgJHNjYWxlLXg6ICAgICAkZGVmYXVsdC1zY2FsZS14LFxuICAkc2NhbGUteTogICAgICRkZWZhdWx0LXNjYWxlLXksXG4gICRzY2FsZS16OiAgICAgJGRlZmF1bHQtc2NhbGUteixcbiAgJHBlcnNwZWN0aXZlOiBmYWxzZVxuKSB7XG4gICR0cmFuczogc2NhbGUzZCgkc2NhbGUteCwgJHNjYWxlLXksICRzY2FsZS16KTtcbiAgQGlmICRwZXJzcGVjdGl2ZSB7ICR0cmFuczogcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSAkdHJhbnM7IH1cbiAgQGluY2x1ZGUgdHJhbnNmb3JtM2QoJHRyYW5zKTtcbn1cblxuLy8gQGRvYyBvZmZcbi8vIFJvdGF0ZSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQGRvYyBvblxuXG4vLyBSb3RhdGUgYW4gb2JqZWN0IGFyb3VuZCB0aGUgeiBheGlzICAoMkQpXG4vLyBAaW5jbHVkZSByb3RhdGUoIFsgcm90YXRpb24sIHBlcnNwZWN0aXZlLCAzRC1vbmx5IF0gKVxuLy8gd2hlcmUgJ3JvdGF0aW9uJyBpcyBhbiBhbmdsZSBzZXQgaW4gZGVncmVlcyAoZGVnKSBvciByYWRpYW4gKHJhZCkgdW5pdHNcbi8vXG4vLyAqKk5vdGUqKiBUaGlzIG1peGluIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIG90aGVyIHRyYW5zZm9ybSBtaXhpbnMuXG5AbWl4aW4gcm90YXRlKFxuICAkcm90YXRlOiAgICAgICRkZWZhdWx0LXJvdGF0ZSxcbiAgJHBlcnNwZWN0aXZlOiBmYWxzZSxcbiAgJG9ubHkzZDogICAgICBmYWxzZVxuKSB7XG4gICR0cmFuczogcm90YXRlKCRyb3RhdGUpO1xuICBAaWYgJHBlcnNwZWN0aXZlIHsgJHRyYW5zOiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpICR0cmFuczsgfVxuICBAaW5jbHVkZSB0cmFuc2Zvcm0oJHRyYW5zLCAkb25seTNkKTtcbn1cblxuLy8gQSBsb25nY3V0IGZvciAncm90YXRlJyBpbiBjYXNlIHlvdSBmb3JnZXQgdGhhdCAneicgaXMgaW1wbGllZFxuLy9cbi8vICoqTm90ZSoqIFRoaXMgbWl4aW4gY2Fubm90IGJlIGNvbWJpbmVkIHdpdGggb3RoZXIgdHJhbnNmb3JtIG1peGlucy5cbkBtaXhpbiByb3RhdGVaKFxuICAkcm90YXRlOiAgICAgICRkZWZhdWx0LXJvdGF0ZSxcbiAgJHBlcnNwZWN0aXZlOiBmYWxzZSxcbiAgJG9ubHkzZDogICAgICBmYWxzZVxuKSB7XG4gIEBpbmNsdWRlIHJvdGF0ZSgkcm90YXRlLCAkcGVyc3BlY3RpdmUsICRvbmx5M2QpO1xufVxuXG4vLyBSb3RhdGUgYW4gb2JqZWN0IGFyb3VuZCB0aGUgeCBheGlzICgzRClcbi8vIEBpbmNsdWRlIHJvdGF0ZVgoIFsgcm90YXRpb24sIHBlcnNwZWN0aXZlIF0gKVxuLy9cbi8vICoqTm90ZSoqIFRoaXMgbWl4aW4gY2Fubm90IGJlIGNvbWJpbmVkIHdpdGggb3RoZXIgdHJhbnNmb3JtIG1peGlucy5cbkBtaXhpbiByb3RhdGVYKFxuICAkcm90YXRlOiAkZGVmYXVsdC1yb3RhdGUsXG4gICRwZXJzcGVjdGl2ZTogZmFsc2Vcbikge1xuICAkdHJhbnM6IHJvdGF0ZVgoJHJvdGF0ZSk7XG4gIEBpZiAkcGVyc3BlY3RpdmUgeyAkdHJhbnM6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgJHRyYW5zOyB9XG4gIEBpbmNsdWRlIHRyYW5zZm9ybTNkKCR0cmFucyk7XG59XG5cbi8vIFJvdGF0ZSBhbiBvYmplY3QgYXJvdW5kIHRoZSB5IGF4aXMgKDNEKVxuLy8gQGluY2x1ZGUgcm90YXRlKCBbIHJvdGF0aW9uLCBwZXJzcGVjdGl2ZSBdIClcbi8vXG4vLyAqKk5vdGUqKiBUaGlzIG1peGluIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIG90aGVyIHRyYW5zZm9ybSBtaXhpbnMuXG5AbWl4aW4gcm90YXRlWShcbiAgJHJvdGF0ZTogJGRlZmF1bHQtcm90YXRlLFxuICAkcGVyc3BlY3RpdmU6IGZhbHNlXG4pIHtcbiAgJHRyYW5zOiByb3RhdGVZKCRyb3RhdGUpO1xuICBAaWYgJHBlcnNwZWN0aXZlIHsgJHRyYW5zOiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpICR0cmFuczsgfVxuICBAaW5jbHVkZSB0cmFuc2Zvcm0zZCgkdHJhbnMpO1xufVxuXG4vLyBSb3RhdGUgYW4gb2JqZWN0IGFyb3VuZCBhbiBhcmJpdHJhcnkgYXhpcyAoM0QpXG4vLyBAaW5jbHVkZSByb3RhdGUoIFsgdmVjdG9yLXgsIHZlY3Rvci15LCB2ZWN0b3Iteiwgcm90YXRpb24sIHBlcnNwZWN0aXZlIF0gKVxuLy8gd2hlcmUgdGhlICd2ZWN0b3ItJyBhcmd1bWVudHMgYWNjZXB0IHVuaXRsZXNzIG51bWJlcnMuXG4vLyBUaGVzZSBudW1iZXJzIGFyZSBub3QgaW1wb3J0YW50IG9uIHRoZWlyIG93biwgYnV0IGluIHJlbGF0aW9uIHRvIG9uZSBhbm90aGVyXG4vLyBjcmVhdGluZyBhbiBheGlzIGZyb20geW91ciB0cmFuc2Zvcm0tb3JpZ2luLCBhbG9uZyB0aGUgYXhpcyBvZiBYeCA9IFl5ID0gWnouXG4vL1xuLy8gKipOb3RlKiogVGhpcyBtaXhpbiBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCBvdGhlciB0cmFuc2Zvcm0gbWl4aW5zLlxuQG1peGluIHJvdGF0ZTNkKFxuICAkdmVjdG9yLXg6ICRkZWZhdWx0LXZlY3Rvci14LFxuICAkdmVjdG9yLXk6ICRkZWZhdWx0LXZlY3Rvci15LFxuICAkdmVjdG9yLXo6ICRkZWZhdWx0LXZlY3Rvci16LFxuICAkcm90YXRlOiAkZGVmYXVsdC1yb3RhdGUsXG4gICRwZXJzcGVjdGl2ZTogZmFsc2Vcbikge1xuICAkdHJhbnM6IHJvdGF0ZTNkKCR2ZWN0b3IteCwgJHZlY3Rvci15LCAkdmVjdG9yLXosICRyb3RhdGUpO1xuICBAaWYgJHBlcnNwZWN0aXZlIHsgJHRyYW5zOiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpICR0cmFuczsgfVxuICBAaW5jbHVkZSB0cmFuc2Zvcm0zZCgkdHJhbnMpO1xufVxuXG4vLyBAZG9jIG9mZlxuLy8gVHJhbnNsYXRlIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBAZG9jIG9uXG5cbi8vIE1vdmUgYW4gb2JqZWN0IGFsb25nIHRoZSB4IG9yIHkgYXhpcyAoMkQpXG4vLyBAaW5jbHVkZSB0cmFuc2xhdGUoIFsgdHJhbnNsYXRlLXgsIHRyYW5zbGF0ZS15LCBwZXJzcGVjdGl2ZSwgM0Qtb25seSBdIClcbi8vIHdoZXJlIHRoZSAndHJhbnNsYXRlLScgYXJndW1lbnRzIGFjY2VwdCBhbnkgZGlzdGFuY2UgaW4gcGVyY2VudGFnZXMgb3IgYWJzb2x1dGUgKHB4LCBjbSwgaW4sIGVtIGV0Yy4uKSB1bml0cy5cbi8vXG4vLyAqKk5vdGUqKiBUaGlzIG1peGluIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIG90aGVyIHRyYW5zZm9ybSBtaXhpbnMuXG5AbWl4aW4gdHJhbnNsYXRlKFxuICAkdHJhbnNsYXRlLXg6ICRkZWZhdWx0LXRyYW5zbGF0ZS14LFxuICAkdHJhbnNsYXRlLXk6ICRkZWZhdWx0LXRyYW5zbGF0ZS15LFxuICAkcGVyc3BlY3RpdmU6IGZhbHNlLFxuICAkb25seTNkOiAgICAgIGZhbHNlXG4pIHtcbiAgJHRyYW5zOiB0cmFuc2xhdGUoJHRyYW5zbGF0ZS14LCAkdHJhbnNsYXRlLXkpO1xuICBAaWYgJHBlcnNwZWN0aXZlIHsgJHRyYW5zOiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpICR0cmFuczsgfVxuICBAaW5jbHVkZSB0cmFuc2Zvcm0oJHRyYW5zLCAkb25seTNkKTtcbn1cblxuLy8gTW92ZSBhbiBvYmplY3QgYWxvbmcgdGhlIHggYXhpcyAoMkQpXG4vLyBAaW5jbHVkZSB0cmFuc2xhdGUoIFsgdHJhbnNsYXRlLXgsIHBlcnNwZWN0aXZlLCAzRC1vbmx5IF0gKVxuLy9cbi8vICoqTm90ZSoqIFRoaXMgbWl4aW4gY2Fubm90IGJlIGNvbWJpbmVkIHdpdGggb3RoZXIgdHJhbnNmb3JtIG1peGlucy5cbkBtaXhpbiB0cmFuc2xhdGVYKFxuICAkdHJhbnMteDogICAgICRkZWZhdWx0LXRyYW5zbGF0ZS14LFxuICAkcGVyc3BlY3RpdmU6IGZhbHNlLFxuICAkb25seTNkOiAgICAgIGZhbHNlXG4pIHtcbiAgJHRyYW5zOiB0cmFuc2xhdGVYKCR0cmFucy14KTtcbiAgQGlmICRwZXJzcGVjdGl2ZSB7ICR0cmFuczogcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSAkdHJhbnM7IH1cbiAgQGluY2x1ZGUgdHJhbnNmb3JtKCR0cmFucywgJG9ubHkzZCk7XG59XG5cbi8vIE1vdmUgYW4gb2JqZWN0IGFsb25nIHRoZSB5IGF4aXMgKDJEKVxuLy8gQGluY2x1ZGUgdHJhbnNsYXRlKCBbIHRyYW5zbGF0ZS15LCBwZXJzcGVjdGl2ZSwgM0Qtb25seSBdIClcbi8vXG4vLyAqKk5vdGUqKiBUaGlzIG1peGluIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIG90aGVyIHRyYW5zZm9ybSBtaXhpbnMuXG5AbWl4aW4gdHJhbnNsYXRlWShcbiAgJHRyYW5zLXk6ICAgICAkZGVmYXVsdC10cmFuc2xhdGUteSxcbiAgJHBlcnNwZWN0aXZlOiBmYWxzZSxcbiAgJG9ubHkzZDogICAgICBmYWxzZVxuKSB7XG4gICR0cmFuczogdHJhbnNsYXRlWSgkdHJhbnMteSk7XG4gIEBpZiAkcGVyc3BlY3RpdmUgeyAkdHJhbnM6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgJHRyYW5zOyB9XG4gIEBpbmNsdWRlIHRyYW5zZm9ybSgkdHJhbnMsICRvbmx5M2QpO1xufVxuXG4vLyBNb3ZlIGFuIG9iamVjdCBhbG9uZyB0aGUgeiBheGlzICgzRClcbi8vIEBpbmNsdWRlIHRyYW5zbGF0ZSggWyB0cmFuc2xhdGUteiwgcGVyc3BlY3RpdmUgXSApXG4vL1xuLy8gKipOb3RlKiogVGhpcyBtaXhpbiBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCBvdGhlciB0cmFuc2Zvcm0gbWl4aW5zLlxuQG1peGluIHRyYW5zbGF0ZVooXG4gICR0cmFucy16OiAgICAgJGRlZmF1bHQtdHJhbnNsYXRlLXosXG4gICRwZXJzcGVjdGl2ZTogZmFsc2Vcbikge1xuICAkdHJhbnM6IHRyYW5zbGF0ZVooJHRyYW5zLXopO1xuICBAaWYgJHBlcnNwZWN0aXZlIHsgJHRyYW5zOiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpICR0cmFuczsgfVxuICBAaW5jbHVkZSB0cmFuc2Zvcm0zZCgkdHJhbnMpO1xufVxuXG4vLyBNb3ZlIGFuIG9iamVjdCBhbG9uZyB0aGUgeCwgeSBhbmQgeiBheGlzICgzRClcbi8vIEBpbmNsdWRlIHRyYW5zbGF0ZSggWyB0cmFuc2xhdGUteCwgdHJhbnNsYXRlLXksIHRyYW5zbGF0ZS16LCBwZXJzcGVjdGl2ZSBdIClcbi8vXG4vLyAqKk5vdGUqKiBUaGlzIG1peGluIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIG90aGVyIHRyYW5zZm9ybSBtaXhpbnMuXG5AbWl4aW4gdHJhbnNsYXRlM2QoXG4gICR0cmFuc2xhdGUteDogJGRlZmF1bHQtdHJhbnNsYXRlLXgsXG4gICR0cmFuc2xhdGUteTogJGRlZmF1bHQtdHJhbnNsYXRlLXksXG4gICR0cmFuc2xhdGUtejogJGRlZmF1bHQtdHJhbnNsYXRlLXosXG4gICRwZXJzcGVjdGl2ZTogZmFsc2Vcbikge1xuICAkdHJhbnM6IHRyYW5zbGF0ZTNkKCR0cmFuc2xhdGUteCwgJHRyYW5zbGF0ZS15LCAkdHJhbnNsYXRlLXopO1xuICBAaWYgJHBlcnNwZWN0aXZlIHsgJHRyYW5zOiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpICR0cmFuczsgfVxuICBAaW5jbHVkZSB0cmFuc2Zvcm0zZCgkdHJhbnMpO1xufVxuXG4vLyBAZG9jIG9mZlxuLy8gU2tldyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBAZG9jIG9uXG5cbi8vIFNrZXcgYW4gZWxlbWVudDpcbi8vXG4vLyAgICAgQGluY2x1ZGUgc2tldyggWyBza2V3LXgsIHNrZXcteSwgM0Qtb25seSBdIClcbi8vXG4vLyB3aGVyZSB0aGUgJ3NrZXctJyBhcmd1bWVudHMgYWNjZXB0IGNzcyBhbmdsZXMgaW4gZGVncmVlcyAoZGVnKSBvciByYWRpYW4gKHJhZCkgdW5pdHMuXG4vL1xuLy8gKipOb3RlKiogVGhpcyBtaXhpbiBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCBvdGhlciB0cmFuc2Zvcm0gbWl4aW5zLlxuQG1peGluIHNrZXcoXG4gICRza2V3LXg6ICRkZWZhdWx0LXNrZXcteCxcbiAgJHNrZXcteTogJGRlZmF1bHQtc2tldy15LFxuICAkb25seTNkOiBmYWxzZVxuKSB7XG4gICR0cmFuczogc2tldygkc2tldy14LCAkc2tldy15KTtcbiAgQGluY2x1ZGUgdHJhbnNmb3JtKCR0cmFucywgJG9ubHkzZCk7XG59XG5cbi8vIFNrZXcgYW4gZWxlbWVudCBhbG9uZyB0aGUgeCBheGl6XG4vL1xuLy8gICAgIEBpbmNsdWRlIHNrZXcoIFsgc2tldy14LCAzRC1vbmx5IF0gKVxuLy9cbi8vICoqTm90ZSoqIFRoaXMgbWl4aW4gY2Fubm90IGJlIGNvbWJpbmVkIHdpdGggb3RoZXIgdHJhbnNmb3JtIG1peGlucy5cbkBtaXhpbiBza2V3WChcbiAgJHNrZXcteDogJGRlZmF1bHQtc2tldy14LFxuICAkb25seTNkOiBmYWxzZVxuKSB7XG4gICR0cmFuczogc2tld1goJHNrZXcteCk7XG4gIEBpbmNsdWRlIHRyYW5zZm9ybSgkdHJhbnMsICRvbmx5M2QpO1xufVxuXG4vLyBTa2V3IGFuIGVsZW1lbnQgYWxvbmcgdGhlIHkgYXhpc1xuLy9cbi8vICAgICBAaW5jbHVkZSBza2V3KCBbIHNrZXcteSwgM0Qtb25seSBdIClcbi8vXG4vLyAqKk5vdGUqKiBUaGlzIG1peGluIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIG90aGVyIHRyYW5zZm9ybSBtaXhpbnMuXG5AbWl4aW4gc2tld1koXG4gICRza2V3LXk6ICRkZWZhdWx0LXNrZXcteSxcbiAgJG9ubHkzZDogZmFsc2Vcbikge1xuICAkdHJhbnM6IHNrZXdZKCRza2V3LXkpO1xuICBAaW5jbHVkZSB0cmFuc2Zvcm0oJHRyYW5zLCAkb25seTNkKTtcbn1cblxuXG4vLyBGdWxsIHRyYW5zZm9ybSBtaXhpbnNcbi8vIEZvciBzZXR0aW5ncyBhbnkgY29tYmluYXRpb24gb2YgdHJhbnNmb3JtcyBhcyBhcmd1bWVudHNcbi8vIFRoZXNlIGFyZSBjb21wbGV4IGFuZCBub3QgaGlnaGx5IHJlY29tbWVuZGVkIGZvciBkYWlseSB1c2UuIFRoZXkgYXJlIG1haW5seVxuLy8gaGVyZSBmb3IgYmFja3dhcmQtY29tcGF0aWJpbGl0eSBwdXJwb3Nlcy5cbi8vXG4vLyAqIHRoZXkgaW5jbHVkZSBvcmlnaW4gYWRqdXN0bWVudHNcbi8vICogc2NhbGUgdGFrZXMgYSBtdWx0aXBsaWVyICh1bml0bGVzcyksIHJvdGF0ZSBhbmQgc2tldyB0YWtlIGRlZ3JlZXMgKGRlZylcbi8vXG4vLyAqKk5vdGUqKiBUaGlzIG1peGluIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIG90aGVyIHRyYW5zZm9ybSBtaXhpbnMuXG5AbWl4aW4gY3JlYXRlLXRyYW5zZm9ybShcbiAgJHBlcnNwZWN0aXZlOiBmYWxzZSxcbiAgJHNjYWxlLXg6ICAgICBmYWxzZSxcbiAgJHNjYWxlLXk6ICAgICBmYWxzZSxcbiAgJHNjYWxlLXo6ICAgICBmYWxzZSxcbiAgJHJvdGF0ZS14OiAgICBmYWxzZSxcbiAgJHJvdGF0ZS15OiAgICBmYWxzZSxcbiAgJHJvdGF0ZS16OiAgICBmYWxzZSxcbiAgJHJvdGF0ZTNkOiAgICBmYWxzZSxcbiAgJHRyYW5zLXg6ICAgICBmYWxzZSxcbiAgJHRyYW5zLXk6ICAgICBmYWxzZSxcbiAgJHRyYW5zLXo6ICAgICBmYWxzZSxcbiAgJHNrZXcteDogICAgICBmYWxzZSxcbiAgJHNrZXcteTogICAgICBmYWxzZSxcbiAgJG9yaWdpbi14OiAgICBmYWxzZSxcbiAgJG9yaWdpbi15OiAgICBmYWxzZSxcbiAgJG9yaWdpbi16OiAgICBmYWxzZSxcbiAgJG9ubHkzZDogICAgICBmYWxzZVxuKSB7XG4gICR0cmFuczogdW5xdW90ZShcIlwiKTtcblxuICAvLyBwZXJzcGVjdGl2ZVxuICBAaWYgJHBlcnNwZWN0aXZlIHsgJHRyYW5zOiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpIDsgfVxuXG4gIC8vIHNjYWxlXG4gIEBpZiAkc2NhbGUteCBhbmQgJHNjYWxlLXkge1xuICAgIEBpZiAkc2NhbGUteiB7ICR0cmFuczogJHRyYW5zIHNjYWxlM2QoJHNjYWxlLXgsICRzY2FsZS15LCAkc2NhbGUteik7IH1cbiAgICBAZWxzZSB7ICR0cmFuczogJHRyYW5zIHNjYWxlKCRzY2FsZS14LCAkc2NhbGUteSk7IH1cbiAgfSBAZWxzZSB7XG4gICAgQGlmICRzY2FsZS14IHsgJHRyYW5zOiAkdHJhbnMgc2NhbGVYKCRzY2FsZS14KTsgfVxuICAgIEBpZiAkc2NhbGUteSB7ICR0cmFuczogJHRyYW5zIHNjYWxlWSgkc2NhbGUteSk7IH1cbiAgICBAaWYgJHNjYWxlLXogeyAkdHJhbnM6ICR0cmFucyBzY2FsZVooJHNjYWxlLXopOyB9XG4gIH1cblxuICAvLyByb3RhdGVcbiAgQGlmICRyb3RhdGUteCB7ICR0cmFuczogJHRyYW5zIHJvdGF0ZVgoJHJvdGF0ZS14KTsgfVxuICBAaWYgJHJvdGF0ZS15IHsgJHRyYW5zOiAkdHJhbnMgcm90YXRlWSgkcm90YXRlLXkpOyB9XG4gIEBpZiAkcm90YXRlLXogeyAkdHJhbnM6ICR0cmFucyByb3RhdGVaKCRyb3RhdGUteik7IH1cbiAgQGlmICRyb3RhdGUzZCB7ICR0cmFuczogJHRyYW5zIHJvdGF0ZTNkKCRyb3RhdGUzZCk7IH1cblxuICAvLyB0cmFuc2xhdGVcbiAgQGlmICR0cmFucy14IGFuZCAkdHJhbnMteSB7XG4gICAgQGlmICR0cmFucy16IHsgJHRyYW5zOiAkdHJhbnMgdHJhbnNsYXRlM2QoJHRyYW5zLXgsICR0cmFucy15LCAkdHJhbnMteik7IH1cbiAgICBAZWxzZSB7ICR0cmFuczogJHRyYW5zIHRyYW5zbGF0ZSgkdHJhbnMteCwgJHRyYW5zLXkpOyB9XG4gIH0gQGVsc2Uge1xuICAgIEBpZiAkdHJhbnMteCB7ICR0cmFuczogJHRyYW5zIHRyYW5zbGF0ZVgoJHRyYW5zLXgpOyB9XG4gICAgQGlmICR0cmFucy15IHsgJHRyYW5zOiAkdHJhbnMgdHJhbnNsYXRlWSgkdHJhbnMteSk7IH1cbiAgICBAaWYgJHRyYW5zLXogeyAkdHJhbnM6ICR0cmFucyB0cmFuc2xhdGVaKCR0cmFucy16KTsgfVxuICB9XG5cbiAgLy8gc2tld1xuICBAaWYgJHNrZXcteCBhbmQgJHNrZXcteSB7ICR0cmFuczogJHRyYW5zIHNrZXcoJHNrZXcteCwgJHNrZXcteSk7IH1cbiAgQGVsc2Uge1xuICAgIEBpZiAkc2tldy14IHsgJHRyYW5zOiAkdHJhbnMgc2tld1goJHNrZXcteCk7IH1cbiAgICBAaWYgJHNrZXcteSB7ICR0cmFuczogJHRyYW5zIHNrZXdZKCRza2V3LXkpOyB9XG4gIH1cblxuICAvLyBhcHBseSBpdCFcbiAgQGluY2x1ZGUgdHJhbnNmb3JtKCR0cmFucywgJG9ubHkzZCk7XG4gIEBpbmNsdWRlIHRyYW5zZm9ybS1vcmlnaW4oJG9yaWdpbi14LCAkb3JpZ2luLXksICRvcmlnaW4teiwgJG9ubHkzZCk7XG59XG5cblxuLy8gQSBzaW1wbGlmaWVkIHNldCBvZiBvcHRpb25zXG4vLyBiYWNrd2FyZHMtY29tcGF0aWJsZSB3aXRoIHRoZSBwcmV2aW91cyB2ZXJzaW9uIG9mIHRoZSAndHJhbnNmb3JtJyBtaXhpblxuQG1peGluIHNpbXBsZS10cmFuc2Zvcm0oXG4gICRzY2FsZTogICAgZmFsc2UsXG4gICRyb3RhdGU6ICAgZmFsc2UsXG4gICR0cmFucy14OiAgZmFsc2UsXG4gICR0cmFucy15OiAgZmFsc2UsXG4gICRza2V3LXg6ICAgZmFsc2UsXG4gICRza2V3LXk6ICAgZmFsc2UsXG4gICRvcmlnaW4teDogZmFsc2UsXG4gICRvcmlnaW4teTogZmFsc2Vcbikge1xuICBAaW5jbHVkZSBjcmVhdGUtdHJhbnNmb3JtKFxuICAgIGZhbHNlLFxuICAgICRzY2FsZSwgJHNjYWxlLCBmYWxzZSxcbiAgICBmYWxzZSwgZmFsc2UsICRyb3RhdGUsIGZhbHNlLFxuICAgICR0cmFucy14LCAkdHJhbnMteSwgZmFsc2UsXG4gICAgJHNrZXcteCwgJHNrZXcteSxcbiAgICAkb3JpZ2luLXgsICRvcmlnaW4teSwgZmFsc2UsXG4gICAgZmFsc2VcbiAgKTtcbn1cbiIsIi53ZWJmLXRvb2x0aXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAmID4gLnRvb2x0aXB0ZXh0LFxuICAmID4gbGFiZWwgPiAudG9vbHRpcHRleHQge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBvcGFjaXR5OiAwO1xuXG4gICAgZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMC43cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxcmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuMnJlbTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMTAwMDA7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgYm90dG9tOiBjYWxjKDEwMCUgKyA1cHgpO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiA2MDBtcztcblxuICAgICYgPiAudHJpYW5nbGUge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDEwMCU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBtYXJnaW4tbGVmdDogLTVweDtcbiAgICAgIGJvcmRlci13aWR0aDogNXB4O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgIGJvcmRlci1jb2xvcjogIzMzMyB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAmLmhpZGRlbi10b29sdGlwIHtcbiAgICAgIHRvcDogLTk5OTlweDtcbiAgICAgIGxlZnQ6IC05OTk5cHg7XG4gICAgfVxuICB9XG5cbiAgJjpob3ZlciA+IC50b29sdGlwdGV4dCxcbiAgJjpob3ZlciA+IGxhYmVsID4gLnRvb2x0aXB0ZXh0IHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdG9wOiBhdXRvO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gICYud2ViZi10b29sdGlwLXRvcCB7fVxuXG4gICYud2ViZi10b29sdGlwLWJvdHRvbSB7XG4gICAgJiA+IC50b29sdGlwdGV4dCxcbiAgICAmID4gbGFiZWwgPiAudG9vbHRpcHRleHQge1xuICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgdG9wOiBjYWxjKDEwMCUgKyA1cHgpO1xuXG4gICAgICAmID4gLnRyaWFuZ2xlIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIHRvcDogLTEwcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICAgICAgICBib3JkZXItd2lkdGg6IDVweDtcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMzMzIHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYud2ViZi10b29sdGlwLXRvcC1yaWdodCB7XG4gICAgJiA+IC50b29sdGlwdGV4dCxcbiAgICAmID4gbGFiZWwgPiAudG9vbHRpcHRleHQge1xuICAgICAgbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgcmlnaHQ6IGF1dG87XG5cbiAgICAgICYgPiAudHJpYW5nbGUge1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLndlYmYtdG9vbHRpcC10b3AtbGVmdCB7XG4gICAgJiA+IC50b29sdGlwdGV4dCxcbiAgICAmID4gbGFiZWwgPiAudG9vbHRpcHRleHQge1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHJpZ2h0OiAwO1xuXG4gICAgICAmID4gLnRyaWFuZ2xlIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLndlYmYtdG9vbHRpcC1ib3R0b20tcmlnaHQge1xuICAgICYgPiAudG9vbHRpcHRleHQsXG4gICAgJiA+IGxhYmVsID4gLnRvb2x0aXB0ZXh0IHtcbiAgICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgdG9wOiBjYWxjKDEwMCUgKyA1cHgpO1xuXG4gICAgICAmID4gLnRyaWFuZ2xlIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIHRvcDogLTEwcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICAgICAgICBib3JkZXItd2lkdGg6IDVweDtcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMzMzIHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYud2ViZi10b29sdGlwLWJvdHRvbS1sZWZ0IHtcbiAgICAmID4gLnRvb2x0aXB0ZXh0LFxuICAgICYgPiBsYWJlbCA+IC50b29sdGlwdGV4dCB7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IGF1dG87XG4gICAgICB0b3A6IGNhbGMoMTAwJSArIDVweCk7XG5cbiAgICAgICYgPiAudHJpYW5nbGUge1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICB0b3A6IC0xMHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogLTVweDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiA1cHg7XG4gICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzMzMyB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLndlYmYtdG9vbHRpcC1sZWZ0IHtcbiAgICAmID4gLnRvb2x0aXB0ZXh0LFxuICAgICYgPiBsYWJlbCA+IC50b29sdGlwdGV4dCB7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgcmlnaHQ6IGNhbGMoMTAwJSArIDVweCk7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IGF1dG87XG5cbiAgICAgICYgPiAudHJpYW5nbGUge1xuICAgICAgICBsZWZ0OiBjYWxjKDEwMCUgKyA1cHgpO1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgICAgIGJvcmRlci13aWR0aDogNXB4O1xuICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMzMzM7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi53ZWJmLXRvb2x0aXAtcmlnaHQge1xuICAgICYgPiAudG9vbHRpcHRleHQsXG4gICAgJiA+IGxhYmVsID4gLnRvb2x0aXB0ZXh0IHtcbiAgICAgIGxlZnQ6IGNhbGMoMTAwJSArIDVweCk7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IGF1dG87XG5cbiAgICAgICYgPiAudHJpYW5nbGUge1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IC01cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgICAgIGJvcmRlci13aWR0aDogNXB4O1xuICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMzMzMgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi53ZWJmLXRvb2x0aXAtcmlnaHQtdG9wIHtcbiAgICAmID4gLnRvb2x0aXB0ZXh0LFxuICAgICYgPiBsYWJlbCA+IC50b29sdGlwdGV4dCB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IGNhbGMoMTAwJSArIDVweCk7XG4gICAgICBib3R0b206IDA7XG4gICAgICB0b3A6IGF1dG87XG5cbiAgICAgICYgPiAudHJpYW5nbGUge1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICBsZWZ0OiAtNXB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogLTVweDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiA1cHg7XG4gICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzMzMyB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLndlYmYtdG9vbHRpcC1sZWZ0LWJvdHRvbSB7XG4gICAgJiA+IC50b29sdGlwdGV4dCxcbiAgICAmID4gbGFiZWwgPiAudG9vbHRpcHRleHQge1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHJpZ2h0OiBjYWxjKDEwMCUgKyA1cHgpO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiBhdXRvO1xuXG4gICAgICAmID4gLnRyaWFuZ2xlIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcmlnaHQ6IC01cHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTVweDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiA1cHg7XG4gICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzMzMztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLndlYmYtdG9vbHRpcC1sZWZ0LXRvcCB7XG4gICAgJiA+IC50b29sdGlwdGV4dCxcbiAgICAmID4gbGFiZWwgPiAudG9vbHRpcHRleHQge1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHJpZ2h0OiBjYWxjKDEwMCUgKyA1cHgpO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgdG9wOiBhdXRvO1xuXG4gICAgICAmID4gLnRyaWFuZ2xlIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICByaWdodDogLTVweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtNXB4O1xuICAgICAgICBib3JkZXItd2lkdGg6IDVweDtcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMzMzO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYud2ViZi10b29sdGlwLXJpZ2h0LWJvdHRvbSB7XG4gICAgJiA+IC50b29sdGlwdGV4dCxcbiAgICAmID4gbGFiZWwgPiAudG9vbHRpcHRleHQge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiBjYWxjKDEwMCUgKyA1cHgpO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiBhdXRvO1xuXG4gICAgICAmID4gLnRyaWFuZ2xlIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IC01cHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICAgICAgICBib3JkZXItd2lkdGg6IDVweDtcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMzMzIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGltcG9ydCBcImNvbXBhc3NcIjtcblxuJGR1cmF0aW9uU2xpZGU6IDAuMjVzO1xuJGJnQ29sb3JTZWxlY3RlZDogI2U4ZjBmZTtcbiRiZ0NvbG9ySG92ZXI6ICNmNWY1ZjU7XG5cbi53ZWJmLXRyZWUge1xuICBoZWlnaHQ6IDIwMHB4O1xuICBvdmVyZmxvdzogYXV0bztcbiAgZm9udC1mYW1pbHk6ICdNdWxpJywgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGNvbG9yOiAjOGY4ZjhmO1xuICBvdXRsaW5lOiBub25lO1xuXG4gIC5yb290IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgICAuZ3JvdXAge1xuICAgICAgdHJhbnNpdGlvbjogaGVpZ2h0ICRkdXJhdGlvblNsaWRlIGxpbmVhcjtcblxuICAgICAgLml0ZW0ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICBwYWRkaW5nOiAwLjI4cmVtIDAgMC4yOHJlbSAwLjZyZW07XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwIDNyZW0gM3JlbSAwO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgJi5sZWFmIHtcbiAgICAgICAgICBpLmZhcy5ub2RlIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYgKyAuZ3JvdXAge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgICYub3BlbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnByZXNlbGVjdGVkIHtcbiAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCBkYXJrZW4oJGJnQ29sb3JTZWxlY3RlZCwgMTAlKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmdDb2xvclNlbGVjdGVkO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoLmFjdGl2ZSk6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiZ0NvbG9ySG92ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAuaW5kZW50IHtcbiAgICAgICAgICBtaW4td2lkdGg6IDEuMzVyZW07XG4gICAgICAgIH1cblxuICAgICAgICBpLmZhcyB7XG4gICAgICAgICAgJi53ZWJmLXRyZWUtY2FyZXQge1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRkdXJhdGlvblNsaWRlIGxpbmVhcjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMC41cmVtO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5ub2RlIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMC41cmVtIDAgMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYgPiBzcGFuIHtcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5vcGVuIHtcbiAgICAgICAgICBpLmZhLWNhcmV0LXJpZ2h0IHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLndlYmYtc2Nyb2xsYm94IHtcbiAgICAud2ViZi1zY3JvbGxib3gtY29udGFpbmVyIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxMnB4KTtcbiAgICB9XG5cbiAgICAud2ViZi1zY3JvbGxiYXIueSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDFweDtcblxuICAgICAgLmhhbmRsZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ud2ViZi10cmVlLXRvb2x0aXAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDk1LCA5NSwgOTUsIDAuODUpO1xuICBwYWRkaW5nOiA0cHggMTBweDtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LXNpemU6IDExcHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbn1cbiIsIiRzaXplQ29sSG91cnM6IDI2cHg7XG5cbi53ZWJmLXVzZXItYWdlbmRhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGZvbnQtZmFtaWx5OiBhcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuXG4gIHRhYmxlIHtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuXG4gICAgdHIge1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB9XG4gIH1cblxuICAqIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgfVxuXG4gIC53cmFwLXRvb2xiYXIge1xuICAgIC5zbSB7XG4gICAgICAudGl0bGUge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDAuNHJlbSAxcmVtO1xuXG4gICAgICAgICYudG9kYXkge1xuICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudG9vbGJhciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kQWdlbmRhQ29sb3I7XG5cbiAgICAgIC5idXR0b25zIHtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG5cbiAgICAgICAgLndlYmYtYnV0dG9uIHtcbiAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuMjI1cmVtIDAuNzVyZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC52aWV3cyB7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuXG4gICAgICAgIC53ZWJmLWJ1dHRvbiB7XG4gICAgICAgICAgLW1vei1ib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuXG4gICAgICAgICAgJi5tb3VzZW92ZXIsICYuZm9jdXMge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjQ0NDQ0NDO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuc2VsZWN0ZWQge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2NjYztcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBmaWx0ZXI6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICNhYWE7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjE1KVxuICAgICAgICAgIH1cblxuICAgICAgICAgICYucHJldi13ZWVrLFxuICAgICAgICAgICYubmV4dC13ZWVrIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTRweDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE0cHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5wcmV2LXdlZWsge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA5cHg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA5cHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5uZXh0LXdlZWsge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA5cHg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA5cHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi50b2RheSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5kYXRlcGlja2VyIHtcbiAgICAgICAgICAgID4gc3BhbiB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwLjZyZW07XG5cbiAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAubGcge1xuICAgICAgICAudGl0bGUge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG5cbiAgICAgICAgICAmLnRvZGF5IHtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmRheXMge1xuICAgIHBhZGRpbmc6IDNweCAwIDA7XG4gICAgYmFja2dyb3VuZDogJGJhY2tncm91bmRBZ2VuZGFDb2xvcjtcblxuICAgIC50Yi1kYXlzIHtcbiAgICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgLnRkLWRheSBhLmxpbmstZGF5cyB7XG4gICAgICAgIGNvbG9yOiAjNTU1O1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICAgLm5hbWVXZWVrRGF5LCAubnVtTW9udGhEYXkge1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5uYW1lV2Vla0RheSB7XG4gICAgICAgICAgY29sb3I6ICM5OTk7XG4gICAgICAgIH1cblxuICAgICAgICAubnVtTW9udGhEYXkge1xuICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJi50b2RheSB7XG4gICAgICAgICAgLm51bU1vbnRoRGF5IHtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGEubGluay1kYXlzLmRpc2FibGVkIHtcbiAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnRkLWhvdXJzIHtcbiAgICAgICAgd2lkdGg6ICRzaXplQ29sSG91cnM7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnVzZXJzIHtcbiAgICBwYWRkaW5nOiAycHggMDtcbiAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZEFnZW5kYUNvbG9yO1xuXG4gICAgLnRiLXVzZXJzIHtcbiAgICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgLnRkLWhvdXJzIHtcbiAgICAgICAgd2lkdGg6ICRzaXplQ29sSG91cnM7XG4gICAgICB9XG5cbiAgICAgIHRkIC51c2VyIHtcbiAgICAgICAgcGFkZGluZzogMCAzcHg7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYWxsZGF5IHtcbiAgICAvL21pbi1oZWlnaHQ6IDI0cHg7XG4gICAgLy9wYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAvKiAgIGhlaWdodDogMjRweDsgKi9cbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjY2M7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2M7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAvL2JvcmRlci1ib3R0b206IDNweCBkb3VibGUgIzgwODA4MDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAudGItZ3JpZCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG1pbi1oZWlnaHQ6IDI0cHg7XG4gICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuXG4gICAgICB0cjpsYXN0LWNoaWxkIHtcbiAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgfVxuXG4gICAgICAudGQtZmlyc3Qge1xuICAgICAgICB3aWR0aDogJHNpemVDb2xIb3VycztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmRBZ2VuZGFDb2xvcjtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2NjYztcbiAgICAgIH1cblxuICAgICAgLnRkLWNvbC1kYXlzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgLy9oZWlnaHQ6IDI0cHg7IC8qIMOgIGTDqXRlcm1pbmVyIGVuIGpzICovXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAudGItZGF5cyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgICAudGQtY29sLWFsbGRheSB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjY2NjO1xuXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2NjO1xuICAgICAgICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC50ZC1jb2wtcGFkZGluZy1hbGxkYXkge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2NjYztcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2NjYztcbiAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYW5ub3RhdGlvbiB7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICBtYXJnaW46IDJweCAycHg7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICAgIHBhZGRpbmc6IDJweCA0cHg7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgZGFya2VuKCRwcmltYXJ5LWNvbG9yLCAxMCUpO1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5ncmlkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdzogYXV0bztcblxuICAgIC50Yi1ncmlkIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcblxuICAgICAgLnRkLWhvdXJzIHtcbiAgICAgICAgd2lkdGg6ICRzaXplQ29sSG91cnM7XG4gICAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kQWdlbmRhQ29sb3I7XG4gICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNjY2M7XG5cbiAgICAgICAgc3Bhbi5ob3VyIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgbWFyZ2luOiAtMTBweCAzcHggMCAwO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC53ZWJmLWJvcmRlci1ib3R0b20ge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBib3R0b206IDFweDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgIC8vYmFja2dyb3VuZDogI2NjYztcbiAgICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnRpbWVzbG90IHtcbiAgICAgICAgLyogICBoZWlnaHQ6IDIwcHg7ICovXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgI2RkZDtcblxuICAgICAgICAmLmhvdXIge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC50ZC1kYXktbW9udGgge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuXG4gICAgICAgICYuZHJvcCB7XG4gICAgICAgICAgYmFja2dyb3VuZDogI2YyZjVmZjtcblxuICAgICAgICAgIC5jZWxsLWRheSB7XG4gICAgICAgICAgICAubnVtLWRheSB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlMmU5ZmY7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5maXJzdC1yb3cge1xuICAgICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLmxhc3Qtcm93IHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5maXJzdC1jb2wge1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5sYXN0LWNvbCB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNlbGwtZGF5IHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAubnVtLWRheSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDBweDtcbiAgICAgICAgICAgIGxlZnQ6IDBweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjVmNWY1O1xuICAgICAgICAgICAgY29sb3I6ICNhYWE7XG4gICAgICAgICAgICBmb250LXNpemU6IDExcHg7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBjb2xvcjogI2FhYTtcblxuICAgICAgICAgICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuY3VycmVudCB7XG4gICAgICAgICAgICAgIGNvbG9yOiAjNDQ0O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzQ0NDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5ldmVudHMge1xuICAgICAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHRvcDogMThweDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG5cbiAgICAgICAgICAgIC5ldmVudCB7XG4gICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMnB4IDJweCAycHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzFCNjJDMDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMkI3MkQwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICB0ZXh0LWluZGVudDogM3B4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmFnZW5kYSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG5cbiAgICAgIC50Yi1hZ2VuZGEge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuXG4gICAgICAgIC50ZC1ob3VycyB7XG4gICAgICAgICAgd2lkdGg6ICRzaXplQ29sSG91cnM7XG4gICAgICAgIH1cblxuICAgICAgICAudGQtY29sLWRheSB7XG4gICAgICAgICAgLy9ib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjODA4MDgwO1xuICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNjY2M7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuY29sLWRheS1mdWxsIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAgICAgLmhvdXItbWFya2VyIHtcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmVkO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGItdXNlcnMge1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuXG4gICAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBkYXNoZWQgI0QzRDNEMztcblxuICAgICAgICAgICAgICAgIC5jb2wtdXNlciB7XG4gICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmV2ZW50IHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICM2OEExRTU7XG4gICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgei1pbmRleDogMTtcblxuICAgICAgICAgICAgICAmLnRlbXBvcmFyeSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC42O1xuICAgICAgICAgICAgICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT02MCk7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAudGl0bGUge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMxQjYyQzA7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICMyQjcyRDA7XG5cbiAgICAgICAgICAgICAgICAmLmRyYWdnYWJsZSB7XG4gICAgICAgICAgICAgICAgICBjdXJzb3I6IG1vdmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDNweCAzcHggMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAuaGFuZGxlLXJlc2l6YWJsZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogLTJweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDlweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDhweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcy1yZXNpemU7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50Yi1hZ2VuZGEtZGF5cyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC53ZWJmLXNjcm9sbGJveC13cmFwcGVyIC53ZWJmLXNjcm9sbGJhci55IHtcbiAgICB3aWR0aDogOHB4O1xuXG4gICAgJiwgJjpob3ZlciB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB9XG5cbiAgICAuaGFuZGxlciB7XG4gICAgICB3aWR0aDogODAlO1xuICAgICAgYmFja2dyb3VuZDogIzU1NTtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoM3B4KTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMwMDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4ud2ViZi11c2VyLWFnZW5kYS1kcmFnZ2luZy1ldmVudCB7XG4gIC50aXRsZSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG1hcmdpbjogMCAycHggMnB4IDJweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMUI2MkMwO1xuICAgIGhlaWdodDogMTVweDtcbiAgICBtaW4taGVpZ2h0OiAxNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICAgIGJhY2tncm91bmQ6ICMyQjcyRDA7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtaW5kZW50OiAzcHg7XG4gIH1cbn1cblxuLndlYmYtdXNlci1hZ2VuZGEtdXNlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLndlYmYtdXNlci1hZ2VuZGEtdG9vbHRpcC11c2VyIHtcbiAgLnRyaWFuZ2xlIHtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBib3JkZXItYm90dG9tOiA2cHggc29saWQgI2NjYztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtNnB4O1xuICAgIG1hcmdpbjogYXV0bztcbiAgICB6LWluZGV4OiAxMDAwMTtcblxuICAgIC5pbm5lci10cmlhbmdsZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIGJvcmRlcjogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgIGJvcmRlci1ib3R0b206IDZweCBzb2xpZCAjZmZmO1xuICAgICAgdG9wOiAxcHg7XG4gICAgICBsZWZ0OiAtNnB4O1xuICAgIH1cbiAgfVxuXG4gIC5jb250ZW50IHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgY29sb3I6ICMzMzM7XG4gICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTZweDtcbiAgICB6LWluZGV4OiAxMDAwMDtcbiAgICBib3gtc2hhZG93OiAycHggMnB4IDVweCAjZGRkO1xuICB9XG59XG5cblxuXG4iLCJAaW1wb3J0IHVybCgnaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1MZWFndWUrU3BhcnRhbjp3Z2h0QDMwMDs0MDA7NTAwOzcwMDs5MDAmZmFtaWx5PU9wZW4rU2FuczppdGFsLHdnaHRAMCwzMDA7MCw1MDA7MCw3MDA7MSwzMDA7MSw1MDA7MSw3MDAmZGlzcGxheT1zd2FwJyk7XG5cbiRjb250ZW50LWJnLWNvbG9yOiB3aGl0ZTtcblxuJHJvdWdlOiAjQzExMzFFO1xuJHJvdWdlLWZvbmNlOiAjOEYwRTE3O1xuJHJvdWdlLWFsZXJ0ZTogI0UwODk4RjtcbiRyb3VnZS1iYWNrZ3JvdW5kOiAjRkYwMDEwQzA7XG5cbiRvcmFuZ2U6ICNGRTdEMTk7XG4kb3JhbmdlLWZvbmNlOiAjQ0M2NDE0O1xuJG9yYW5nZS1pbmZvOiAjRkZCRThDO1xuXG4kdmVydDogI0FEREMxRjtcbiR2ZXJ0LWZvbmNlOiAjODRBODE4O1xuJHZlcnQtc3VjY2VzczogI0Q2RUU4RjtcblxuJGdyaXMtZm9uY2U6ICM5Nzk3OTc7XG4kZ3Jpcy1jbGFpcjogI0U4RThFODtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==*/